123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646 |
- var delFiles = []; //用于删除图片
- var filesContainer= {}; //存储最终要上传的图片
- var files ; //存储选择图片的数量
- var fContainer= {}; //用于传父级传变量,格式 parent.fContainer
- var depositImg =[];//用于存放弹窗图片
- layui.use(['form','layer','laydate','table','laytpl','layedit','upload'],function(){
- var form = layui.form,
- // layer = parent.layer === undefined ? layui.layer : top.layer,
- layer = layui.layer,
- $ = layui.jquery,
- laydate = layui.laydate,
- laytpl = layui.laytpl,
- table = layui.table,
- layedit = layui.layedit
- ,upload = layui.upload;
- var tableIds = 'newsList';
- //楼盘列表
- var tableIns = table.render({
- elem: '#'+tableIds,
- url : '/news/newsform',
- cellMinWidth : 95,
- method:'post',
- page : true,
- height : 600,
- limit : 20,
- id:'tablerReload',
- cols : [[
- {type: "checkbox", width:50},
- {type:'numbers'},
- {field: 'id', title: 'ID', width:80, align:"center",sort: true},
- {field: 'subject', title: '标题',align:'center',templet:function(d){
- return '<a href="http://www.yigouf.com/news/details/'+d.id+'/" target="_blank">'+d.subject+'</a>'
- }},
- {field: 'house_name', title: '楼盘',width:100, align:'center'},
- {field: 'city_name', title: '区域',width:100, align:'center'},
- {field: 'news_name', title: '栏目',width:120, align:'center'},
- {field: 'clicks', title: '点击数',width:100, edit: 'text',align:'center',clicks: true,templet:"#clicksBox"},
- {field: 'true_click', title: '真实点击数',width:120, align:'center',sort: true},
- {field: 'create_at', title: '添加时间',width:120, event:'sortData', align:'center',sort: true},
- {field: 'state', title: '审核',width:75, event:'housesNews', align:'center',templet:function (d) {
- if(d.state === 'N'){
- return '<input type="checkbox" value="'+d.id+'" name="open" lay-skin="switch" lay-filter="switchTest" lay-text="|">'
- } else {
- return '<input type="checkbox" checked value="'+d.id+'" name="open" lay-skin="switch" lay-filter="switchTest" lay-text="|">'
- }
- }},
- {field: 'author', title: '作者',width:100, align:'center'},
- {title: '操作', width:100, templet:'#housesListBar',fixed:"right",align:"center"}
- ]]
- });
-
- table.reload('tablerReload'); //重新加载
- // 日期
- laydate.render({
- elem: '#EventDate'
- });
- laydate.render({
- elem: '#ModificationDate'
- });
- //表格头部操作菜单
- var $ = layui.$, active = {
- addData: function(){ //获取选中数据
- var index = layui.layer.open({
- title : "添加资讯",
- type : 2,
- area:['80%','100%'],
- maxmin: true,
- content : "/news/add",
- })
- layui.layer.full(index);
- //改变窗口大小时,重置弹窗的宽高,防止超出可视区域(如F12调出debug的操作)
- $(window).on("resize",function(){
- layui.layer.full(index);
- })
- },
- reload:function () {
- var form = pfgs_serialize($('form'));
- var name = '';
- var id = '';
- var author = '';
- if(form.input_house == 'name'){
- name = form.input_house_text;
- } else if(form.input_house == 'id'){
- id = form.input_house_text;
- } else if(form.input_house == 'author'){
- author = form.input_house_text;
- }
- table.reload('tablerReload',{
- where:{
- sort:form.input_sort,
- id:id,
- name:name,
- author:author,
- news:form.input_news,
- city:form.input_city
- }
- })
- },batch_sync:function () {
- var checkStatus = table.checkStatus('tablerReload');
- if(typeof checkStatus.data[0] == 'object'){
- var nid = '';
- $.each(checkStatus.data,function (key,val) {
- nid += val.id +',';
- })
- var index = layui.layer.open({
- title : "批量操作",
- type : 2,
- area:['50%','100%'],
- maxmin: true,
- content : "/news/batchsync?nid="+nid,
- })
- return false;
- }
- layer.msg('请选择需要同步的资讯');
- }
- };
- //同步资料
- form.on('submit(batch_sync_submit)',function (data) {
- var index = layer.msg('数据提交中,请稍候',{icon: 16,time:false,shade:0.8}); //数据提交提示
- $.ajax({
- cache : true,
- type : "post",
- url : "/news/confirmsync",
- data : data.field, // 你的formid
- success : function(data) {
- if (data.code == 200) {
- layer.msg(data.msg);
- parent.layui.table.reload('tablerReload');
- TableClose();
- } else if(data.code == 300){
- layer.msg(data.msg)
- }
- }
- });
- return false;
- })
- //监听指定开关
- form.on('switch(switchTest)', function(data){
- layer.confirm('确定要修改此操作吗?',{btn: ['确定', '取消']},function () {
- $.post('/house/housesortedit',{id:data.value,examineid:1},function (data) {
- if(data.code == 200)
- {
- layer.msg(data.msg);
- table.reload('tablerReload');
- } else if(data.code == 300 ) {
- layer.msg(data.msg);
- }
- })
- },function (aa) {
- table.reload('tablerReload'); //重新加载
- })
- });
- $('.demoTable .layui-btn').on('click', function(){
- var type = $(this).data('type');
- active[type] ? active[type].call(this) : '';
- });
- /* 列表操作 edit 修改后执行 2018.7.24*/
- table.on('edit('+tableIds+')', function(obj){
- var data = obj.data;
- $.post('/news/editclicks',{id:data.id,type:'clicks',clicks:data.clicks},function (data) {
- if(data.code == 200)
- {
- layer.msg(data.msg);
- // obj.update({
- // sort: data.sort
- // });
- // TableClose();
- } else if(data.code == 300 ) {
- layer.msg(data.msg);
- }
- })
- })
- // if(obj.event === 'clicksData'){
- // layer.prompt({
- // formType: 2
- // ,title: '点击数'
- // ,value: data.clicks
- // }, function(value, index){
- // $.post('/news/editclicks',{id:data.id,type:'clicks',clicks:value},function (data) {
- // layer.msg(data.msg);
- // layer.close(index);
- // table.reload('tablerReload');
- // })
- // });
- // } else
- //表格右边操作栏目
- table.on('tool('+tableIds+')', function(obj){
- var data = obj.data;
- if(obj.event === 'del'){ //删除操作
- layer.confirm('确定要删除吗?',{btn: ['确定', '取消']},function () {
- $.post('/news/newsdel',{id:data.id},function (data) {
- if(data.code == 200)
- {
- layer.msg(data.msg);
- table.reload('tablerReload');
- } else if(data.code == 300 ) {
- layer.msg(data.msg);
- }
- })
- })
- } else if(obj.event === 'edit'){ //编辑操作
- var index = layui.layer.open({
- title : "编辑资讯",
- type : 2,
- area:['','100%'],
- maxmin: true,
- content : "/news/newsedit?id="+data.id
- })
- layui.layer.full(index);
- //改变窗口大小时,重置弹窗的宽高,防止超出可视区域(如F12调出debug的操作)
- $(window).on("resize",function(){
- layui.layer.full(index);
- })
- }else if(obj.event === 'sortData'){ //修改排序
- layer.prompt({
- formType: 2
- ,title: '修改'
- ,value: data.sort
- }, function(value, index){
- $.post('/house/housesortedit',{id:data.id,sort:value},function (data) {
- if(data.code == 200)
- {
- layer.msg(data.msg);
- layer.close(index);
- obj.update({
- sort: value
- });
- // TableClose();
- } else if(data.code == 300 ) {
- layer.msg(data.msg);
- }
- })
- });
- }
- });
- //监听指定开关
- form.on('switch(switchTest)', function(data){
- layer.confirm('确定要修改此操作吗?',{btn: ['确定', '取消']},function () {
- $.post('/news/newsviewcontrol',{id:data.value},function (data) {
- if(data.code == 200)
- {
- layer.msg(data.msg);
- table.reload('tablerReload');
- } else if(data.code == 300 ) {
- layer.msg(data.msg);
- }
- })
- },function (aa) {
- table.reload('tablerReload');
- })
- });
- //添加and修改图片
- upload.render({
- elem: '#upload_edit',
- url: '/news/newseditform'
- ,data:{token:csrfToken}
- ,multiple: true
- ,number:3
- ,auto:false
- ,size:1000 //限制上传图片的大小,单位为KB
- ,exts: 'png|jpg|jpeg' //只允许上传压缩文件
- ,bindAction:'#addcity'
- ,choose: function(obj){
- //将每次选择的文件追加到文件队列
- files = obj.pushFile();
- //预读本地文件,如果是多文件,则会遍历。(不支持ie8/9)
- obj.preview(function(index, file, result){
- depositImg.push({src:result,data:file});
- filesContainer[index] = file;
- $('#popup_1_imgBox').append('<div class="layui-upload-img"><div class="delete-list" id="delimg"><i class="layui-icon fa-trash-o" ></i></div><img delIdentification="'+index+'" src="'+ result +'" alt="'+ file.name +'"></div>');
- });
- }
- });
- layer.photos({
- photos: '#demo2'
- ,anim: 5 //0-6的选择,指定弹出图片动画类型,默认随机(请注意,3.0之前的版本用shift参数)
- });
- // 正文上传事件
- $('#popup_2').on('click','.layui-upload-img',function(){
- // 处理选中与取消
- $(this).find('.layui_w_triangle').toggle('30',function(){
- $(this).parent().attr('data-id','pitch')
- if($(this).is(":hidden")){
- $(this).parent().removeAttr('data-id');
- var _fsrc = $(this).parents('.layui-upload-img').find('img.pitch_img').attr('src');
- for(i in depositImg){
- if(depositImg[i] == _fsrc){
- depositImg.splice(i, 1); //取消选择时,从数组中删除
- }
- }
- }else{
- $(this).parent().attr('data-id','pitch')
- var _fsrc = $(this).parents('.layui-upload-img').find('img.pitch_img').attr('src');
- depositImg.push(_fsrc); //选中的图片,把src地址存入数组
- }
- });
- })
- // 封面图功能
- $('.upload_box').on('click',function(){
- var txtData = UE.getEditor('editor_content').getContent();
- var imgReg = /<img.*?(?:>|\/>)/gi; //匹配图片(g表示匹配所有结果i表示区分大小写)
- var srcReg = /src=[\'\"]?([^\'\"]*)[\'\"]?/i; //匹配src属性
- var txtImg = txtData.match(imgReg);
- var index = layer.open({
- type: 2,
- title:'选择封面',
- skin: 'layui-layer-rim', //加上边框
- area: ['650px', '500px'], //宽高
- content : "/news/popup",
- success: function(layero, index){
- var poupBody = layer.getChildFrame('body', index); //获取当前弹窗的doc
- for(i in txtImg){
- var _src = txtImg[i].match(srcReg)[0];
- poupBody.find('#popup_2').append('<div class="layui-upload-img"><div class="layui_w_triangle"><img src="/static/images/triangle.png" alt="" /></div><img class="pitch_img" '+_src+'/></div>');
- }
- }
- })
- })
- $('#layui_confirm').on('click',function(){
- var doc = $('#demo2', window.parent.document); //JQ获取弹窗父层doc
- var index = parent.layer.getFrameIndex(window.name); //获取窗口索引
- if(depositImg.length > 3){
- layer.msg('封面图只能选择3张!!',{time:1000,shade:0.5})
- return false;
- }
- var _leng = doc.find('.layui-upload-img').length;
- if(_leng < 3){
- for(i in depositImg){
- if(typeof depositImg[i] == "object"){
- doc.append('<div class="layui-upload-img"><div class="delete-list" id="delimg"><i class="layui-icon fa-trash-o" ></i></div><img src="'+ depositImg[i].src +'" ></div>');
- parent.fContainer[i]=depositImg[i].data
- }else{
- doc.append('<div class="layui-upload-img"><div class="delete-list" id="delimg"><i class="layui-icon fa-trash-o" ></i></div><img src="'+ depositImg[i] +'" ></div>')
- parent.fContainer[i]=depositImg[i];
- }
- }
- }else if(_leng >3){
- layer.msg('封面图只能选择3张!!',{time:1000,shade:0.5})
- }
- parent.layer.close(index); //关闭iframe页面
-
- })
-
- delImg ("popup_1_imgBox","delimg"); // 删除图片
-
- layer.photos({
- photos: '#demo2'
- ,closeBtn: 1
- ,anim: 5 //0-6的选择,指定弹出图片动画类型,默认随机(请注意,3.0之前的版本用shift参数)
- });
- //添加
- form.on('submit(tijiao)',function (data) {
- var index = layer.msg('数据提交中,请稍候',{icon: 16,time:false,shade:0.8}); //数据提交提示
- var formData = new FormData($( "#signupForm" )[0]);
- for(i in fContainer){
- formData.append('img[]',fContainer[i]);
- }
- $.ajax({
- cache : true,
- type : "post",
- url : "/news/addform",
- data : formData, // 你的formid
- // async : false, //async 默认为true异步,修改为false为同步,
- contentType: false, //jax 中 contentType 设置为 false 是为了避免 JQuery 对其操作,从而失去分界符,而使服务器不能正常解析文件
- processData: false, //当设置为true的时候,jquery ajax 提交的时候不会序列化 data,而是直接使用data
- error : function(request) {
- layer.close(index);
- layer.alert("网络超时");
- },
- success : function(data) {
- if (data.code == 200) {
- layer.msg(data.msg);
- parent.layui.table.reload('tablerReload');
- TableClose();
- } else if(data.code == 300){
- layer.msg(data.msg)
- layer.msg(ReturnInfo(data.data),{icon:5});
- }
- }
- });
- return false;
- })
-
- // 大图复选框监听事件
- form.on('checkbox(thumb_size)', function(data){
- // console.log(data.elem.checked); //是否被选中,true或者false
- // console.log(data.elem)
- if(data.elem.checked){
- $('.xm_xcxqTc_button[name="thumb_size"]').val('2')
- }else{
- $('.xm_xcxqTc_button[name="thumb_size"]').val('1');
- }
- });
- // 水印复选框监听事件
- // form.on('checkbox(thumb_watermark)', function(data){
- // console.log(data.elem.checked); //是否被选中,true或者false
- // });
- //修改
- form.on('submit(edit)',function (data) {
- var index = layer.msg('数据提交中,请稍候',{icon: 16,time:false,shade:0.8}); //数据提交提示
- var formData = new FormData($( "#signupForm" )[0]);
- // $.each(filesContainer,function (k,v) {
- // if(v != null){
- // formData.append('img[]',v);
- // }
- // })
- for(i in fContainer){
- formData.append('img[]',fContainer[i]);
- }
- //需要删除的图片
- if(delFiles.length > 0){
- $.each(delFiles,function (k,v) {
- formData.append('delimg[]',v);
- })
- }
- // 修改大图后把数据提交
- formData.append('thumb_size',$('.xm_xcxqTc_button[name="thumb_size"]').val());
- $.ajax({
- cache : true,
- type : "post",
- url : "/news/newseditform",
- data : formData, // 你的formid
- contentType: false, //jax 中 contentType 设置为 false 是为了避免 JQuery 对其操作,从而失去分界符,而使服务器不能正常解析文件
- processData: false, //当设置为true的时候,jquery ajax 提交的时候不会序列化 data,而是直接使用data
- error : function(request) {
- layer.close(index); //关闭数据提交信息
- layer.alert("网络超时");
- },
- success : function(data) {
- if (data.code == 200) {
- layer.msg(data.msg);
- parent.layui.table.reload('tablerReload');
- TableClose();
- } else {
- layer.msg(data.msg)
- layer.msg(ReturnInfo(data.data),{icon:5});
- }
- }
- });
- return false;
- })
- //批量删除
- form.on('submit(del_alls_news)',function (data) {
- var checkStatus = table.checkStatus('tablerReload');
- if(typeof checkStatus.data[0] == 'object'){
- layer.confirm('您确定要删除吗?',{btn:['确认','取消']},function(){
- var index = layer.msg('数据提交中,请稍候',{icon: 16,time:false,shade:0.8}); //数据提交提示
- var formdat = new FormData();
- $.each(checkStatus.data,function (key,val) {
- formdat.append('id[]',val.id);
- })
- $.ajax({
- cache : true,
- type : "post",
- url : "/news/newsdel",
- data : formdat, // 你的formid
- contentType: false, //jax 中 contentType 设置为 false 是为了避免 JQuery 对其操作,从而失去分界符,而使服务器不能正常解析文件
- processData: false, //当设置为true的时候,jquery ajax 提交的时候不会序列化 data,而是直接使用data
- error : function(request) {
- layer.close(index); //关闭数据提交信息
- layer.alert("网络超时");
- },
- success : function(data) {
- if (data.code == 200) {
- layer.msg(data.msg);
- table.reload('tablerReload')
- } else {
- layer.msg(data.msg);
- }
- }
- });
- })
- return false;
- }
- layer.msg('请选择需要删除的资讯',{icon:5});
- return false;
- })
- //检测关键词
- form.on('submit(check_words)',function (data) {
- var content=UE.getEditor('editor_content').getContentTxt();
- var centhtml = UE.getEditor('editor_content').getContent();
- $.ajax({
- //cache : false,
- type : "post",
- url : "/sensitivewords/checkword",
- data:{content:content}, // 你的formid
- //contentType: false, //jax 中 contentType 设置为 false 是为了避免 JQuery 对其操作,从而失去分界符,而使服务器不能正常解析文件
- //processData: false, //当设置为true的时候,jquery ajax 提交的时候不会序列化 data,而是直接使用data
- error : function(request) {
- layer.close(index);
- layer.alert("网络超时");
- },
- success : function(data) {
- if(data.data!=null){
- var index=layer.open({
- type: 1,
- // skin: 'layui-layer-rim', //加上边框
- title:'违禁词信息',
- area: ['420px', '240px'], //宽高
- content: '<div style="color:red;">'+data.data+'</div>'
- });
- for(var i=0;i<data.data.length;i++){
- centhtml = centhtml.replace(data.data[i],"<span style='color: rgb(255, 0, 0);'>"+data.data[i]+"</span>");
- }
- UE.getEditor('editor_content').setContent(centhtml);
- layer.msg(data.msg)
- }else{
- layer.msg(data.msg)
- }
- }
- });
- return false;
- })
- });
- //删除图片
- $('#demo2').on("click","#delimg",function () {
- var name = $(this).next().attr("imgname");
- var delIdentification = $(this).next().attr("delIdentification");
- if(typeof(delIdentification) != 'undefined'){
- delete filesContainer[delIdentification];
- delete files[delIdentification] ;
- }
- if(typeof(name) != 'undefined'){
- delFiles.push(name);
- }
- $(this).parent().remove();
- })
- function RestrictImgNum() {
- var imgNum = $('.layui-w-img').children('img').length;
- if(imgNum >3 || imgNum== 3){
- return false;
- }
- }
- $(function(){
- // 动态添加批量删除按钮
- var _btn = '<div class="layui-inline " style="float:left;position:relative;left:10px;bottom:35px">'
- + '<a class="layui-btn layui-btn-danger search_btn layui_w_btn" style="height:30px;line-height:30px;font-size:14px;" lay-submit="" lay-filter="del_alls_news">批量删除</a>'
- + '</div>'
- $('.layui-form').append(_btn)
- })
- //判断是否需要编辑,需要才加载
- var verdict = $('#editor_content').html();
- if(typeof verdict == "string"){
- var ue = UE.getEditor('editor_content'); //编辑器
- }
- // 选择封面图弹窗选择项卡
- $('.layui-tab-title .site-demo-active').on('click', function(){
- $(this).addClass('layui-this').siblings().removeClass('layui-this');
- var lay_id = $(this).attr('lay-id');
- $('.layui-tab-item').removeClass('layui-show')
- $('.layui-tab-content #'+lay_id).addClass('layui-show')
- });
- // 弹窗本地选择图片删除功能
- function delImg (oid,delId){
- $('#' +oid).on("click","#"+delId,function () {
-
- var name = $(this).next().attr("imgname");
- var delIdentification = $(this).next().attr("delIdentification");
- if(typeof(delIdentification) != 'undefined'){
- delete filesContainer[delIdentification];
- delete files[delIdentification] ;
- }
- if(typeof(name) != 'undefined'){
- delFiles.push(name);
- }
- var _ksrc = $(this).parents('.layui-upload-img').find('img').attr('src');
- for(i in depositImg){
- if(typeof depositImg[i] == "object"){
- if(depositImg[i].src == _ksrc){
- depositImg.splice(i, 1); //取消选择时,从数组中删除
- }
- }else if(depositImg[i] == _ksrc){
- depositImg.splice(i, 1); //取消选择时,从数组中删除
- }
-
- }
- $(this).parent().remove();
- })
- }
|