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.
83 lines
2.9 KiB
83 lines
2.9 KiB
$(document).on('turbolinks:load', function() {
|
|
if ($('body.cooperative-laboratory-subjects-index-page').length > 0) {
|
|
var $searchForm = $('.laboratory-subject-list-form .search-form');
|
|
|
|
// ************** 学校选择 *************
|
|
$searchForm.find('.school-select').select2({
|
|
theme: 'bootstrap4',
|
|
placeholder: '请选择创建者单位',
|
|
allowClear: true,
|
|
minimumInputLength: 1,
|
|
ajax: {
|
|
delay: 500,
|
|
url: '/api/schools/search.json',
|
|
dataType: 'json',
|
|
data: function (params) {
|
|
return {keyword: params.term};
|
|
},
|
|
processResults: function (data) {
|
|
return {results: data.schools}
|
|
}
|
|
},
|
|
templateResult: function (item) {
|
|
if (!item.id || item.id === '') return item.text;
|
|
return item.name;
|
|
},
|
|
templateSelection: function (item) {
|
|
if (item.id) {
|
|
}
|
|
return item.name || item.text;
|
|
}
|
|
});
|
|
|
|
// 上传图片
|
|
$('.modal.cooperative-upload-file-modal').on('upload:success', function (e, data) {
|
|
var $imageElement = $('.subject-image-' + data.source_id);
|
|
if($imageElement.length === 0) return;
|
|
$imageElement.attr('src', data.url);
|
|
$imageElement.show();
|
|
$imageElement.next().html('重新上传');
|
|
});
|
|
|
|
// 定义状态切换监听事件
|
|
var defineStatusChangeFunc = function (doElement, undoElement, url, callback) {
|
|
$('.laboratory-subject-list-container').on('click', doElement, function () {
|
|
var $doAction = $(this);
|
|
var $undoAction = $doAction.siblings(undoElement);
|
|
|
|
var laboratorySubjectId = $doAction.data('id');
|
|
customConfirm({
|
|
content: '确认进行该操作吗?',
|
|
ok: function () {
|
|
$.ajax({
|
|
url: '/cooperative/laboratory_subjects/' + laboratorySubjectId + url,
|
|
method: 'POST',
|
|
dataType: 'json',
|
|
success: function () {
|
|
show_success_flash();
|
|
$doAction.hide();
|
|
$undoAction.show();
|
|
if (callback && typeof callback === "function") {
|
|
callback(laboratorySubjectId, url);
|
|
}
|
|
}
|
|
});
|
|
}
|
|
});
|
|
});
|
|
}
|
|
|
|
// 首页展示与取消首页展示
|
|
var homepageShowCallback = function (laboratoryShixunId, url) {
|
|
var $laboratoryShixunItem = $('.laboratory-subject-list-container').find('.laboratory-subject-item-' + laboratoryShixunId);
|
|
|
|
if (url === '/homepage') {
|
|
$laboratoryShixunItem.find('.homepage-badge').show();
|
|
} else {
|
|
$laboratoryShixunItem.find('.homepage-badge').hide();
|
|
}
|
|
}
|
|
defineStatusChangeFunc('.homepage-show-action', '.homepage-hide-action', '/homepage', homepageShowCallback);
|
|
defineStatusChangeFunc('.homepage-hide-action', '.homepage-show-action', '/cancel_homepage', homepageShowCallback);
|
|
}
|
|
}) |