You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
86 lines
2.7 KiB
86 lines
2.7 KiB
$(document).on('turbolinks:load', function() {
|
|
if ($('body.admins-laboratory-settings-show-page, body.admins-laboratory-settings-update-page').length > 0) {
|
|
var $container = $('.edit-laboratory-setting-container');
|
|
var $form = $container.find('.edit_laboratory');
|
|
|
|
$('.logo-item-left, .banner-item-bottom').on("change", 'input[type="file"]', function () {
|
|
var $fileInput = $(this);
|
|
var file = this.files[0];
|
|
var imageType = /image.*/;
|
|
if (file && file.type.match(imageType)) {
|
|
var reader = new FileReader();
|
|
reader.onload = function () {
|
|
var $box = $fileInput.parent();
|
|
$box.find('img').attr('src', reader.result).css('display', 'block');
|
|
$box.addClass('has-img');
|
|
};
|
|
reader.readAsDataURL(file);
|
|
} else {
|
|
}
|
|
});
|
|
|
|
createMDEditor('laboratory-footer-editor', { height: 200, placeholder: '请输入备案信息' });
|
|
|
|
$form.validate({
|
|
errorElement: 'span',
|
|
errorClass: 'danger text-danger',
|
|
errorPlacement:function(error,element){
|
|
if(element.parent().hasClass("input-group")){
|
|
element.parent().after(error);
|
|
}else{
|
|
element.after(error)
|
|
}
|
|
},
|
|
rules: {
|
|
identifier: {
|
|
required: true,
|
|
checkSite: true
|
|
},
|
|
name: {
|
|
required: true
|
|
}
|
|
}
|
|
});
|
|
$.validator.addMethod("checkSite",function(value,element,params){
|
|
var checkSite = /^(?=^.{3,255}$)[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+$/;
|
|
return this.optional(element)||(checkSite.test(value + '.educoder.com'));
|
|
},"域名不合法!");
|
|
|
|
$form.on('click', '.submit-btn', function(){
|
|
$form.find('.submit-btn').attr('disabled', 'disabled');
|
|
$form.find('.error').html('');
|
|
var valid = $form.valid();
|
|
|
|
$('input[name="navbar[][name]"]').each(function(_, e){
|
|
var $ele = $(e);
|
|
if($ele.val() === undefined || $ele.val().length === 0){
|
|
$ele.addClass('danger text-danger');
|
|
valid = false;
|
|
} else {
|
|
$ele.removeClass('danger text-danger');
|
|
}
|
|
});
|
|
|
|
if(!valid) return;
|
|
$.ajax({
|
|
method: 'PATCH',
|
|
dataType: 'json',
|
|
url: $form.attr('action'),
|
|
data: new FormData($form[0]),
|
|
processData: false,
|
|
contentType: false,
|
|
success: function(data){
|
|
$.notify({ message: '保存成功' });
|
|
window.location.reload();
|
|
},
|
|
error: function(res){
|
|
var data = res.responseJSON;
|
|
$form.find('.error').html(data.message);
|
|
},
|
|
complete: function(){
|
|
$form.find('.submit-btn').attr('disabled', false);
|
|
}
|
|
});
|
|
})
|
|
}
|
|
}); |