Commit bca0997a authored by Luke Bennett's avatar Luke Bennett

Fix main form collapse and move direction select to ce

parent 679c7207
......@@ -10,8 +10,9 @@ export default class PushPull {
this.$form = $('.js-mirror-form', this.$container);
this.$urlInput = $('.js-mirror-url', this.$form);
this.$protectedBranchesInput = $('.js-mirror-protected', this.$form);
this.mirrorEndpoint = this.$form.data('projectMirrorEndpoint');
this.$mirrorDirectionSelect = $('.js-mirror-direction', this.$form);
this.$table = $('.js-mirrors-table-body', this.$container);
this.mirrorEndpoint = this.$form.data('projectMirrorEndpoint');
}
init() {
......@@ -21,7 +22,15 @@ export default class PushPull {
}
updateUrl() {
$('.js-mirror-url-hidden', this.$form).val(this.$urlInput.val());
let val = this.$urlInput.val();
const $authMethod = $('.js-auth-method', this.$form);
if ($authMethod.val() === 'password') {
const password = $('.js-password', this.$form).val();
if (password) val = val.replace('@', `:${password}@`);
}
$('.js-mirror-url-hidden', this.$form).val(val);
}
updateProtectedBranches() {
......
......@@ -8,7 +8,6 @@ export default class EEPushPull extends PushPull {
constructor(...args) {
super(...args);
this.$mirrorDirectionSelect = $('.js-mirror-direction', this.$form);
this.$insertionPoint = $('.js-form-insertion-point', this.$form);
this.$repoCount = $('.js-mirrored-repo-count', this.$container);
this.directionFormMap = {
......@@ -18,6 +17,9 @@ export default class EEPushPull extends PushPull {
}
init() {
this.$insertionPoint.collapse({
toggle: false,
});
this.handleUpdate();
super.init();
}
......@@ -26,8 +28,7 @@ export default class EEPushPull extends PushPull {
return this.hideForm()
.then(() => {
this.updateForm();
this.$insertionPoint.collapse('show');
this.showForm();
})
.catch(() => {
Flash(__('Something went wrong on our end.'));
......@@ -36,9 +37,21 @@ export default class EEPushPull extends PushPull {
hideForm() {
return new Promise(resolve => {
if (!this.$insertionPoint.hasClass('in')) return resolve();
if (!this.$insertionPoint.html()) return resolve();
this.$insertionPoint.one('hidden.bs.collapse', () => {
resolve();
});
return this.$insertionPoint.collapse('hide');
});
}
return this.$insertionPoint.collapse('hide').one('hidden.bs.collapse', () => resolve());
showForm() {
return new Promise(resolve => {
this.$insertionPoint.one('shown.bs.collapse', () => {
resolve();
});
this.$insertionPoint.collapse('show');
});
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment