mirror of
https://github.com/overleaf/overleaf.git
synced 2024-12-29 13:52:48 +00:00
38 lines
No EOL
991 B
CoffeeScript
38 lines
No EOL
991 B
CoffeeScript
define [
|
|
"base"
|
|
], (App) ->
|
|
App.controller 'CloneProjectModalController', ($scope, $modalInstance, $timeout, $http, ide) ->
|
|
$scope.inputs =
|
|
projectName: ide.$scope.project.name + " (Copy)"
|
|
$scope.state =
|
|
inflight: false
|
|
error: false
|
|
|
|
$modalInstance.opened.then () ->
|
|
$timeout () ->
|
|
$scope.$broadcast "open"
|
|
, 200
|
|
|
|
cloneProject = (cloneName) ->
|
|
$http.post("/project/#{ide.$scope.project._id}/clone", {
|
|
_csrf: window.csrfToken
|
|
projectName: cloneName
|
|
})
|
|
|
|
$scope.clone = () ->
|
|
$scope.state.inflight = true
|
|
$scope.state.error = false
|
|
cloneProject($scope.inputs.projectName)
|
|
.then (response) ->
|
|
{ data } = response
|
|
window.location = "/project/#{data.project_id}"
|
|
.catch (response) ->
|
|
{ data, status } = response
|
|
$scope.state.inflight = false
|
|
if status == 400
|
|
$scope.state.error = { message: data }
|
|
else
|
|
$scope.state.error = true
|
|
|
|
$scope.cancel = () ->
|
|
$modalInstance.dismiss('cancel') |