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.
468 lines
11 KiB
468 lines
11 KiB
2 years ago
|
{literal}
|
||
|
<link href="style/css/common.css" rel="stylesheet">
|
||
|
<link href="style/css/common.v2.css" rel="stylesheet">
|
||
|
<script>var _upload_url = "index.php?module=system&action=uploadImg";</script>
|
||
|
<script src="style/js/plupload.full.min.js"></script>
|
||
|
<script type="text/javascript" src="style/js/jquery.js"></script>
|
||
|
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
|
||
|
<script src="style/js/common.js"></script>
|
||
|
<script src="style/js/common.v2.js"></script>
|
||
|
<script>
|
||
|
//添加分组
|
||
|
$('.add-group').live('click', function() {
|
||
|
var group = {
|
||
|
name: '未命名',
|
||
|
is_default: 0
|
||
|
};
|
||
|
saveGroup(group);
|
||
|
});
|
||
|
|
||
|
$('.picker-district').live('click', function() {
|
||
|
$.districtPicker({
|
||
|
success: function(res) {
|
||
|
$('#province_id').val(res.province_id);
|
||
|
$('#city_id').val(res.city_id);
|
||
|
$('#district_id').val(res.district_id);
|
||
|
$('.district-text').val(res.province_name + "-" + res.city_name + "-" + res.district_name);
|
||
|
},
|
||
|
error: function(e) {
|
||
|
console.log(e);
|
||
|
}
|
||
|
});
|
||
|
});
|
||
|
|
||
|
//保存单个分组信息
|
||
|
function saveGroup(group) {
|
||
|
$.ajax({
|
||
|
url: group_img,
|
||
|
dataType: 'json',
|
||
|
type: 'post',
|
||
|
data: {
|
||
|
m: 'save_group',
|
||
|
data: JSON.stringify(group)
|
||
|
},
|
||
|
success: function(res) {
|
||
|
if (res.code == 0) {
|
||
|
file_app.group_list = res.data;
|
||
|
} else {
|
||
|
// $.myAlert({
|
||
|
// content:res.smg
|
||
|
// });
|
||
|
alert(res.msg, {
|
||
|
time: 2000
|
||
|
});
|
||
|
|
||
|
}
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
|
||
|
//选择分组
|
||
|
$('.selected-group').live('click', function(event) {
|
||
|
var text_name = $(this).find(".upload_more").text()
|
||
|
|
||
|
$(this).children(".upload_list").find(".upload_more").addClass("upload_mask")
|
||
|
$(this).siblings(".selected-group").find(".upload_more").removeClass("upload_mask")
|
||
|
|
||
|
if (text_name == "全部") {
|
||
|
console.log(1)
|
||
|
$(this).siblings(".selected-group").find(".upload_setting").css("display", "none")
|
||
|
} else {
|
||
|
$(this).children(".upload_list").find(".upload_setting").css("display", "block")
|
||
|
$(this).siblings(".selected-group").find(".upload_setting").css("display", "none")
|
||
|
}
|
||
|
|
||
|
|
||
|
file_app.selected = $(this).data('index');
|
||
|
$("input[name='checkbox']").prop('checked', false);
|
||
|
file_app.edit_group = -1;
|
||
|
file_app.edit_setting = -1;
|
||
|
getGroupFile();
|
||
|
});
|
||
|
|
||
|
//打开设置
|
||
|
$('.setting-group').live('click', function(event) {
|
||
|
|
||
|
var index = $(this).data('index');
|
||
|
file_app.edit_group = -1;
|
||
|
file_app.selected = index;
|
||
|
if (file_app.edit_setting == index) {
|
||
|
file_app.edit_setting = -1;
|
||
|
} else {
|
||
|
file_app.edit_setting = index;
|
||
|
}
|
||
|
//getGroupFile();
|
||
|
event.stopPropagation();
|
||
|
});
|
||
|
|
||
|
//编辑分组
|
||
|
$('.edit-group').live('click', function(event) {
|
||
|
event.stopPropagation(); //阻止事件冒泡;
|
||
|
var index = $(this).data('index');
|
||
|
file_app.edit_group = -1;
|
||
|
file_app.edit_setting = -1;
|
||
|
file_app.edit_group = index;
|
||
|
});
|
||
|
|
||
|
//删除分组
|
||
|
$('.delete-group').live('click', function(event) {
|
||
|
event.stopPropagation(); //阻止事件冒泡;
|
||
|
var index = $(this).data('index');
|
||
|
file_app.edit_group = -1;
|
||
|
file_app.edit_setting = -1;
|
||
|
file_app.selected = 0;
|
||
|
var group = file_app.group_list[index];
|
||
|
if (group.id) {
|
||
|
group.is_delete = '1';
|
||
|
} else {
|
||
|
file_app.group_list.splice(index, 1);
|
||
|
}
|
||
|
saveGroup(group);
|
||
|
});
|
||
|
|
||
|
//确定修改
|
||
|
$('.save-group').live('click', function(event) {
|
||
|
event.stopPropagation(); //阻止事件冒泡;
|
||
|
var group = file_app.group_list[file_app.edit_group];
|
||
|
group.name = $('.name-group').val();
|
||
|
file_app.edit_group = -1;
|
||
|
file_app.edit_setting = -1;
|
||
|
saveGroup(group);
|
||
|
});
|
||
|
|
||
|
//取消修改
|
||
|
$('.cancel-group').live('click', function(event) {
|
||
|
event.stopPropagation(); //阻止事件冒泡;
|
||
|
file_app.edit_group = -1;
|
||
|
file_app.edit_setting = -1;
|
||
|
});
|
||
|
|
||
|
//阻止冒泡事件
|
||
|
$('.name-group').live('click', function(event) {
|
||
|
event.stopPropagation(); //阻止事件冒泡;
|
||
|
});
|
||
|
|
||
|
//保存
|
||
|
$('.save-group-list').live('click', function() {
|
||
|
|
||
|
if (file_app.file_list.length > 0) {
|
||
|
var item = file_app.file_list[0];
|
||
|
|
||
|
if (typeof _file_select.success === 'function') {
|
||
|
_file_select.success({
|
||
|
name: item.file_url,
|
||
|
url: item.file_url,
|
||
|
});
|
||
|
}
|
||
|
}
|
||
|
|
||
|
file_app.file_list = [];
|
||
|
file_app.list = [];
|
||
|
file_app.selected = 0;
|
||
|
file_app.edit_group = -1;
|
||
|
file_app.edit_setting = -1;
|
||
|
$('#file_select_modal').modal('hide');
|
||
|
});
|
||
|
|
||
|
//取消
|
||
|
$('.cancel-group-list').live('click', function() {
|
||
|
file_app.file_list = [];
|
||
|
file_app.list = [];
|
||
|
file_app.selected = 0;
|
||
|
file_app.edit_group = -1;
|
||
|
file_app.edit_setting = -1;
|
||
|
$('#file_select_modal').modal('hide');
|
||
|
});
|
||
|
|
||
|
//全选图片
|
||
|
$(document).live('change', "input[name='checkbox']", function() {
|
||
|
var list = file_app.list;
|
||
|
file_app.file_list = [];
|
||
|
$(list).each(function(i) {
|
||
|
if ($("input[name='checkbox']:checked").val() == 1) {
|
||
|
list[i].selected = 1;
|
||
|
var file = list[i];
|
||
|
file_app.file_list.push(file);
|
||
|
} else {
|
||
|
list[i].selected = 0;
|
||
|
}
|
||
|
});
|
||
|
addFile()
|
||
|
});
|
||
|
|
||
|
//选择图片
|
||
|
$('#file_select_modal .file-item').live('click', function() {
|
||
|
var index = $(this).data('index');
|
||
|
file_app.file_list = [];
|
||
|
if (file_app.list[index].selected == 1) {
|
||
|
file_app.list[index].selected = 0;
|
||
|
} else {
|
||
|
file_app.list[index].selected = 1;
|
||
|
}
|
||
|
$("input[name='checkbox']").prop('checked', false);
|
||
|
addFile()
|
||
|
});
|
||
|
|
||
|
//选中的图片
|
||
|
function addFile() {
|
||
|
var list = file_app.list;
|
||
|
file_app.file_list = [];
|
||
|
$(list).each(function(i) {
|
||
|
if (list[i].selected == 1) {
|
||
|
var file = list[i];
|
||
|
file_app.file_list.push(file);
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
|
||
|
//删除选中的图片
|
||
|
$('.delete-file-group').live('click', function() {
|
||
|
var file_list = file_app.file_list;
|
||
|
if (file_list.length == 0) {
|
||
|
// $.myAlert({
|
||
|
// content: '请先勾选需要删除的图片'
|
||
|
// });
|
||
|
alert('请先勾选需要删除的图片', {
|
||
|
time: 2000
|
||
|
});
|
||
|
return false;
|
||
|
}
|
||
|
$.ajax({
|
||
|
url: group_img,
|
||
|
dataType: 'json',
|
||
|
type: 'post',
|
||
|
data: {
|
||
|
m: 'delete',
|
||
|
data: JSON.stringify(file_list)
|
||
|
},
|
||
|
success: function(res) {
|
||
|
if (res.code == 0) {
|
||
|
var list = file_app.list;
|
||
|
var new_list = [];
|
||
|
$(list).each(function(i) {
|
||
|
if (list[i].selected != 1) {
|
||
|
new_list.push(list[i]);
|
||
|
}
|
||
|
});
|
||
|
file_app.list = new_list;
|
||
|
file_app.file_list = [];
|
||
|
$("input[name='checkbox']").prop('checked', false);
|
||
|
// $.myAlert({
|
||
|
// content: '删除成功'
|
||
|
// });
|
||
|
alert('删除成功', {
|
||
|
time: 2000
|
||
|
});
|
||
|
} else {
|
||
|
// $.myAlert({
|
||
|
// content: res.msg
|
||
|
// });
|
||
|
alert(res.msg, {
|
||
|
time: 2000
|
||
|
});
|
||
|
}
|
||
|
}
|
||
|
});
|
||
|
});
|
||
|
|
||
|
//移动图片到某个分组
|
||
|
$('.batch-group').live('click', function() {
|
||
|
var file_list = file_app.file_list;
|
||
|
var index = $(this).data('index');
|
||
|
if (file_list.length == 0) {
|
||
|
|
||
|
layer.msg('请先勾选需要删除的图片', {
|
||
|
time: 2000
|
||
|
});
|
||
|
return false;
|
||
|
}
|
||
|
$.ajax({
|
||
|
url: group_img,
|
||
|
dataType: 'json',
|
||
|
type: 'post',
|
||
|
data: {
|
||
|
m: 'move',
|
||
|
data: JSON.stringify(file_list),
|
||
|
group_id: file_app.group_list[index].id
|
||
|
},
|
||
|
success: function(res) {
|
||
|
if (res.code == 0) {
|
||
|
file_app.file_list = [];
|
||
|
$("input[name='checkbox']").prop('checked', false);
|
||
|
file_app.selected = index;
|
||
|
getGroupFile();
|
||
|
// $.myAlert({
|
||
|
// content: '移动成功'
|
||
|
// });
|
||
|
layer.msg('移动成功', {
|
||
|
time: 2000
|
||
|
});
|
||
|
} else {
|
||
|
// $.myAlert({
|
||
|
// content: res.msg
|
||
|
// });
|
||
|
layer.msg(res.msg, {
|
||
|
time: 2000
|
||
|
});
|
||
|
}
|
||
|
}
|
||
|
});
|
||
|
});
|
||
|
|
||
|
//获得分组下的图片
|
||
|
function getGroupFile() {
|
||
|
var more_btn = $('#file_select_modal .file-more');
|
||
|
var loading_block = $('#file_select_modal .file-loading');
|
||
|
var group_id = file_app.group_list[file_app.selected].id;
|
||
|
// var group_id = 1;
|
||
|
loading_block.show();
|
||
|
more_btn.hide();
|
||
|
$.ajax({
|
||
|
url: _upload_file_list_url,
|
||
|
data: {
|
||
|
dataType: 'json',
|
||
|
type: 'image',
|
||
|
page: 1,
|
||
|
group_id: group_id
|
||
|
},
|
||
|
success: function(res) {
|
||
|
more_btn.attr('data-page', 2);
|
||
|
loading_block.hide();
|
||
|
more_btn.show();
|
||
|
file_app.list = res.data.list;
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
|
||
|
//上传图片
|
||
|
$('.upload-group .upload-file-group').live('click', function() {
|
||
|
console.log(12321323)
|
||
|
//分组ID
|
||
|
var group_id = file_app.group_list[file_app.selected].id;
|
||
|
if (group_id <= 0) {
|
||
|
group_id = 0;
|
||
|
}
|
||
|
var btn = $(this);
|
||
|
var group = btn.parents('.upload-group');
|
||
|
var input = group.find('.file-input');
|
||
|
var preview = group.find('.upload-preview');
|
||
|
var preview_img = group.find('.upload-preview-img');
|
||
|
$.upload_file({
|
||
|
url: _upload_url + '&group_id=' + group_id,
|
||
|
accept: group.attr('accept') || 'image/*',
|
||
|
start: function() {
|
||
|
// btn.btnLoading(btn.text());
|
||
|
},
|
||
|
success: function(res) {
|
||
|
btn.btnReset();
|
||
|
if (res.code === 1) {
|
||
|
$.alert({
|
||
|
content: res.msg
|
||
|
});
|
||
|
return;
|
||
|
}
|
||
|
getGroupFile();
|
||
|
},
|
||
|
});
|
||
|
});
|
||
|
String.prototype._trim = function(char, type) {
|
||
|
if (char) {
|
||
|
if (type == 'left') {
|
||
|
return this.replace(new RegExp('^\\' + char + '+', 'g'), '');
|
||
|
} else if (type == 'right') {
|
||
|
return this.replace(new RegExp('\\' + char + '+$', 'g'), '');
|
||
|
}
|
||
|
return this.replace(new RegExp('^\\' + char + '+|\\' + char + '+$', 'g'), '');
|
||
|
}
|
||
|
return this.replace(/^\s+|\s+$/g, '');
|
||
|
};
|
||
|
|
||
|
var pick_link_modal;
|
||
|
$(document).ready(function() {
|
||
|
var pick_link_btn;
|
||
|
|
||
|
pick_link_modal = new Vue({
|
||
|
el: "#pick_link_modal",
|
||
|
data: {
|
||
|
in_array: function(val, arr) {
|
||
|
return $.inArray(val, arr);
|
||
|
},
|
||
|
open_type: [],
|
||
|
selected_link: null,
|
||
|
link_list: null,
|
||
|
is_required: false
|
||
|
}
|
||
|
});
|
||
|
|
||
|
$(".link-list-select").live("change", function() {
|
||
|
var i = $(this).val();
|
||
|
var arr = pick_link_modal.link_list[i].params
|
||
|
if (arr.length) {
|
||
|
if (arr[0].required == 'required') {
|
||
|
pick_link_modal.is_required = true
|
||
|
} else {
|
||
|
pick_link_modal.is_required = false
|
||
|
}
|
||
|
}
|
||
|
|
||
|
if (i == "") {
|
||
|
pick_link_modal.selected_link = null;
|
||
|
return;
|
||
|
}
|
||
|
pick_link_modal.selected_link = pick_link_modal.link_list[i];
|
||
|
});
|
||
|
|
||
|
$(".pick-link-btn").live("click", function() {
|
||
|
pick_link_btn = $(this);
|
||
|
var open_type = $(this).attr("open-type");
|
||
|
if (open_type && open_type != "") {
|
||
|
open_type = open_type.split(",");
|
||
|
} else {
|
||
|
open_type = ["navigate", "switchTab", "wxapp"];
|
||
|
}
|
||
|
pick_link_modal.open_type = open_type;
|
||
|
$.ajax({
|
||
|
url: show_pages,
|
||
|
method: 'get',
|
||
|
dataType: 'json',
|
||
|
success: function(res) {
|
||
|
pick_link_modal.link_list = res;
|
||
|
$(".pick-link-modal").modal("show");
|
||
|
}
|
||
|
})
|
||
|
});
|
||
|
|
||
|
$(".pick-link-confirm").live("click",function() {
|
||
|
if ($('.paramVal').val() == '' && pick_link_modal.is_required) {
|
||
|
console.log($('.paramVal').val())
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
var selected_link = pick_link_modal.selected_link;
|
||
|
if (!selected_link) {
|
||
|
$(".pick-link-modal").modal("hide");
|
||
|
return;
|
||
|
}
|
||
|
var link_input = pick_link_btn.parents(".page-link-input").find(".link-input");
|
||
|
var open_type_input = pick_link_btn.parents(".page-link-input").find(".link-open-type");
|
||
|
var params = "";
|
||
|
if (selected_link.params && selected_link.params.length > 0) {
|
||
|
for (var i in selected_link.params) {
|
||
|
params += selected_link.params[i].key + "=" + encodeURIComponent(selected_link.params[i].value) + "&";
|
||
|
}
|
||
|
}
|
||
|
var link = selected_link.link;
|
||
|
link += "?" + params;
|
||
|
link = link._trim("&");
|
||
|
link = link._trim("?");
|
||
|
link_input.val(link).change();
|
||
|
open_type_input.val(selected_link.open_type).change();
|
||
|
$(".pick-link-modal").modal("hide");
|
||
|
|
||
|
});
|
||
|
|
||
|
});
|
||
|
</script>
|
||
|
|
||
|
{/literal}
|