summaryrefslogtreecommitdiff
path: root/app/assets/javascripts
diff options
context:
space:
mode:
authorJose Ivan Vargas <jvargas@gitlab.com>2017-05-09 10:09:20 -0500
committerJose Ivan Vargas <jvargas@gitlab.com>2017-05-22 12:55:01 -0500
commit42604d4c33e6098ba696d464c9a7b3d16656bf54 (patch)
tree49ce5e49ff2778ed6b996cdadf1f19d98b288782 /app/assets/javascripts
parent18a6d9c5326bc2b90a1f0cc8664d638a39885924 (diff)
downloadgitlab-ce-42604d4c33e6098ba696d464c9a7b3d16656bf54.tar.gz
Prevent project transfer if a new group is not selected
Diffstat (limited to 'app/assets/javascripts')
-rw-r--r--app/assets/javascripts/dispatcher.js4
-rw-r--r--app/assets/javascripts/project_edit.js16
2 files changed, 20 insertions, 0 deletions
diff --git a/app/assets/javascripts/dispatcher.js b/app/assets/javascripts/dispatcher.js
index a27abee5431..2112342aebe 100644
--- a/app/assets/javascripts/dispatcher.js
+++ b/app/assets/javascripts/dispatcher.js
@@ -40,6 +40,7 @@ import Group from './group';
import GroupName from './group_name';
import GroupsList from './groups_list';
import ProjectsList from './projects_list';
+import ProjectEdit from './project_edit';
import MiniPipelineGraph from './mini_pipeline_graph_dropdown';
import BlobLinePermalinkUpdater from './blob/blob_line_permalink_updater';
import Landing from './landing';
@@ -264,6 +265,9 @@ import ShortcutsBlob from './shortcuts_blob';
new BlobViewer();
}
break;
+ case 'projects:edit':
+ new ProjectEdit();
+ break;
case 'projects:pipelines:builds':
case 'projects:pipelines:failures':
case 'projects:pipelines:show':
diff --git a/app/assets/javascripts/project_edit.js b/app/assets/javascripts/project_edit.js
new file mode 100644
index 00000000000..042ec8e4494
--- /dev/null
+++ b/app/assets/javascripts/project_edit.js
@@ -0,0 +1,16 @@
+export default class ProjectEdit {
+ constructor() {
+ this.transferForm = $('.js-project-transfer-form');
+ this.selectNamespace = $('.js-project-transfer-form').find('.select2');
+
+ this.selectNamespaceChangedWrapper = this.selectNamespaceChanged.bind(this);
+ this.selectNamespace.on('change', this.selectNamespaceChangedWrapper);
+ this.selectNamespaceChanged();
+ }
+
+ selectNamespaceChanged() {
+ const selectedNamespaceValue = this.selectNamespace.val();
+
+ this.transferForm.find(':submit').prop('disabled', !selectedNamespaceValue);
+ }
+}