debian-mirror-gitlab/app/assets/javascripts/project_new.js

49 lines
1.3 KiB
JavaScript
Raw Normal View History

2016-09-13 17:45:13 +05:30
(function() {
var bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; };
this.ProjectNew = (function() {
function ProjectNew() {
this.toggleSettings = bind(this.toggleSettings, this);
2016-09-29 09:46:39 +05:30
this.$selects = $('.features select');
2016-09-13 17:45:13 +05:30
$('.project-edit-container').on('ajax:before', (function(_this) {
return function() {
$('.project-edit-container').hide();
return $('.save-project-loader').show();
};
})(this));
this.toggleSettings();
this.toggleSettingsOnclick();
}
ProjectNew.prototype.toggleSettings = function() {
2016-09-29 09:46:39 +05:30
var self = this;
this.$selects.each(function () {
var $select = $(this),
className = $select.data('field').replace(/_/g, '-')
.replace('access-level', 'feature');
self._showOrHide($select, '.' + className);
});
2016-09-13 17:45:13 +05:30
};
ProjectNew.prototype.toggleSettingsOnclick = function() {
2016-09-29 09:46:39 +05:30
this.$selects.on('change', this.toggleSettings);
2016-09-13 17:45:13 +05:30
};
ProjectNew.prototype._showOrHide = function(checkElement, container) {
2016-09-29 09:46:39 +05:30
var $container = $(container);
if ($(checkElement).val() !== '0') {
2016-09-13 17:45:13 +05:30
return $container.show();
} else {
return $container.hide();
}
};
return ProjectNew;
})();
}).call(this);