2020-01-01 13:17:19 +08:00
|
|
|
|
/**
|
|
|
|
|
|
|
|
|
|
@Name: 用户模块
|
|
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
layui.define(['laypage', 'fly', 'element', 'flow'], function(exports){
|
|
|
|
|
|
|
|
|
|
var $ = layui.jquery;
|
|
|
|
|
var layer = layui.layer;
|
|
|
|
|
var util = layui.util;
|
|
|
|
|
var laytpl = layui.laytpl;
|
|
|
|
|
var form = layui.form;
|
|
|
|
|
var laypage = layui.laypage;
|
|
|
|
|
var fly = layui.fly;
|
|
|
|
|
var flow = layui.flow;
|
|
|
|
|
var element = layui.element;
|
|
|
|
|
var upload = layui.upload;
|
|
|
|
|
|
|
|
|
|
var gather = {}, dom = {
|
|
|
|
|
mine: $('#LAY_mine')
|
|
|
|
|
,mineview: $('.mine-view')
|
|
|
|
|
,minemsg: $('#LAY_minemsg')
|
|
|
|
|
,infobtn: $('#LAY_btninfo')
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2020-03-28 21:48:35 +08:00
|
|
|
|
|
2020-01-01 13:17:19 +08:00
|
|
|
|
//我的相关数据
|
|
|
|
|
var elemUC = $('#LAY_uc'), elemUCM = $('#LAY_ucm');
|
|
|
|
|
gather.minelog = {};
|
2020-03-28 21:48:35 +08:00
|
|
|
|
/*
|
2020-01-01 13:17:19 +08:00
|
|
|
|
gather.mine = function(index, type, url){
|
|
|
|
|
var tpl = [
|
|
|
|
|
//求解
|
|
|
|
|
'{{# for(var i = 0; i < d.rows.length; i++){ }}\
|
|
|
|
|
<li>\
|
|
|
|
|
{{# if(d.rows[i].collection_time){ }}\
|
|
|
|
|
<a class="jie-title" href="/jie/{{d.rows[i].id}}/" target="_blank">{{= d.rows[i].title}}</a>\
|
|
|
|
|
<i>{{ d.rows[i].collection_time }} 收藏</i>\
|
|
|
|
|
{{# } else { }}\
|
|
|
|
|
{{# if(d.rows[i].status == 1){ }}\
|
|
|
|
|
<span class="fly-jing layui-hide-xs">精</span>\
|
|
|
|
|
{{# } }}\
|
|
|
|
|
{{# if(d.rows[i].accept >= 0){ }}\
|
|
|
|
|
<span class="jie-status jie-status-ok">已结</span>\
|
|
|
|
|
{{# } else { }}\
|
|
|
|
|
<span class="jie-status">未结</span>\
|
|
|
|
|
{{# } }}\
|
|
|
|
|
{{# if(d.rows[i].status == -1){ }}\
|
|
|
|
|
<span class="jie-status">审核中</span>\
|
|
|
|
|
{{# } }}\
|
|
|
|
|
<a class="jie-title" href="/jie/{{d.rows[i].id}}/" target="_blank">{{= d.rows[i].title}}</a>\
|
|
|
|
|
<i class="layui-hide-xs">{{ layui.util.timeAgo(d.rows[i].time, 1) }}</i>\
|
|
|
|
|
{{# if(d.rows[i].accept == -1){ }}\
|
|
|
|
|
<a class="mine-edit layui-hide-xs" href="/jie/edit/{{d.rows[i].id}}" target="_blank">编辑</a>\
|
|
|
|
|
{{# } }}\
|
|
|
|
|
<em class="layui-hide-xs">{{d.rows[i].hits}}阅/{{d.rows[i].comment}}答</em>\
|
|
|
|
|
{{# } }}\
|
|
|
|
|
</li>\
|
|
|
|
|
{{# } }}'
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
var view = function(res){
|
|
|
|
|
var html = laytpl(tpl[0]).render(res);
|
|
|
|
|
dom.mine.children().eq(index).find('span').html(res.count);
|
|
|
|
|
elemUCM.children().eq(index).find('ul').html(res.rows.length === 0 ? '<div class="fly-msg">没有相关数据</div>' : html);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
var page = function(now){
|
|
|
|
|
var curr = now || 1;
|
|
|
|
|
if(gather.minelog[type + '-page-' + curr]){
|
|
|
|
|
view(gather.minelog[type + '-page-' + curr]);
|
|
|
|
|
} else {
|
|
|
|
|
//我收藏的帖
|
|
|
|
|
if(type === 'collection'){
|
|
|
|
|
var nums = 10; //每页出现的数据量
|
|
|
|
|
fly.json(url, {}, function(res){
|
|
|
|
|
res.count = res.rows.length;
|
|
|
|
|
|
|
|
|
|
var rows = layui.sort(res.rows, 'collection_timestamp', 'desc')
|
|
|
|
|
,render = function(curr){
|
|
|
|
|
var data = []
|
|
|
|
|
,start = curr*nums - nums
|
|
|
|
|
,last = start + nums - 1;
|
|
|
|
|
|
|
|
|
|
if(last >= rows.length){
|
|
|
|
|
last = curr > 1 ? start + (rows.length - start - 1) : rows.length - 1;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
for(var i = start; i <= last; i++){
|
|
|
|
|
data.push(rows[i]);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
res.rows = data;
|
|
|
|
|
|
|
|
|
|
view(res);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
render(curr)
|
|
|
|
|
gather.minelog['collect-page-' + curr] = res;
|
|
|
|
|
|
|
|
|
|
now || laypage.render({
|
|
|
|
|
elem: 'LAY_page1'
|
|
|
|
|
,count: rows.length
|
|
|
|
|
,curr: curr
|
|
|
|
|
,jump: function(e, first){
|
|
|
|
|
if(!first){
|
|
|
|
|
render(e.curr);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
} else {
|
|
|
|
|
fly.json('/api/'+ type +'/', {
|
|
|
|
|
page: curr
|
|
|
|
|
}, function(res){
|
|
|
|
|
view(res);
|
|
|
|
|
gather.minelog['mine-jie-page-' + curr] = res;
|
|
|
|
|
now || laypage.render({
|
|
|
|
|
elem: 'LAY_page'
|
|
|
|
|
,count: res.count
|
|
|
|
|
,curr: curr
|
|
|
|
|
,jump: function(e, first){
|
|
|
|
|
if(!first){
|
|
|
|
|
page(e.curr);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
if(!gather.minelog[type]){
|
|
|
|
|
page();
|
|
|
|
|
}
|
|
|
|
|
};
|
2020-03-28 21:48:35 +08:00
|
|
|
|
*/
|
2020-01-01 13:17:19 +08:00
|
|
|
|
if(elemUC[0]){
|
|
|
|
|
layui.each(dom.mine.children(), function(index, item){
|
|
|
|
|
var othis = $(item)
|
|
|
|
|
gather.mine(index, othis.data('type'), othis.data('url'));
|
|
|
|
|
});
|
|
|
|
|
}
|
2020-03-28 21:48:35 +08:00
|
|
|
|
|
2020-01-01 13:17:19 +08:00
|
|
|
|
//显示当前tab
|
|
|
|
|
if(location.hash){
|
|
|
|
|
element.tabChange('user', location.hash.replace(/^#/, ''));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
element.on('tab(user)', function(){
|
|
|
|
|
var othis = $(this), layid = othis.attr('lay-id');
|
|
|
|
|
if(layid){
|
|
|
|
|
location.hash = layid;
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
//根据ip获取城市
|
|
|
|
|
if($('#L_city').val() === ''){
|
|
|
|
|
$.getScript('http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js', function(){
|
|
|
|
|
$('#L_city').val(remote_ip_info.city||'');
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//上传图片
|
|
|
|
|
if($('.upload-img')[0]){
|
|
|
|
|
layui.use('upload', function(upload){
|
|
|
|
|
var avatarAdd = $('.avatar-add');
|
|
|
|
|
|
|
|
|
|
upload.render({
|
|
|
|
|
elem: '.upload-img'
|
|
|
|
|
,url: '/index/user/uploadHeadImg/'
|
|
|
|
|
,size: 300
|
|
|
|
|
,before: function(){
|
|
|
|
|
avatarAdd.find('.loading').show();
|
|
|
|
|
}
|
|
|
|
|
,done: function(res){
|
|
|
|
|
if(res.status == 0){
|
|
|
|
|
$.post('/index/user/set/', {
|
|
|
|
|
avatar: res.url
|
|
|
|
|
}, function(res){
|
|
|
|
|
location.reload();
|
|
|
|
|
});
|
|
|
|
|
} else {
|
|
|
|
|
layer.msg(res.msg, {icon: 5});
|
|
|
|
|
}
|
|
|
|
|
avatarAdd.find('.loading').hide();
|
|
|
|
|
}
|
|
|
|
|
,error: function(){
|
|
|
|
|
avatarAdd.find('.loading').hide();
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//合作平台
|
|
|
|
|
if($('#LAY_coop')[0]){
|
|
|
|
|
|
|
|
|
|
//资源上传
|
|
|
|
|
$('#LAY_coop .uploadRes').each(function(index, item){
|
|
|
|
|
var othis = $(this);
|
|
|
|
|
upload.render({
|
|
|
|
|
elem: item
|
|
|
|
|
,url: '/api/upload/cooperation/?filename='+ othis.data('filename')
|
|
|
|
|
,accept: 'file'
|
|
|
|
|
,exts: 'zip'
|
|
|
|
|
,size: 30*1024
|
|
|
|
|
,before: function(){
|
|
|
|
|
layer.msg('正在上传', {
|
|
|
|
|
icon: 16
|
|
|
|
|
,time: -1
|
|
|
|
|
,shade: 0.7
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
,done: function(res){
|
|
|
|
|
if(res.code == 0){
|
|
|
|
|
layer.msg(res.msg, {icon: 6})
|
|
|
|
|
} else {
|
|
|
|
|
layer.msg(res.msg)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
//成效展示
|
|
|
|
|
var effectTpl = ['{{# layui.each(d.data, function(index, item){ }}'
|
|
|
|
|
,'<tr>'
|
|
|
|
|
,'<td><a href="/u/{{ item.uid }}" target="_blank" style="color: #01AAED;">{{ item.uid }}</a></td>'
|
|
|
|
|
,'<td>{{ item.authProduct }}</td>'
|
|
|
|
|
,'<td>¥{{ item.rmb }}</td>'
|
|
|
|
|
,'<td>{{ item.create_time }}</td>'
|
|
|
|
|
,'</tr>'
|
|
|
|
|
,'{{# }); }}'].join('');
|
|
|
|
|
|
|
|
|
|
var effectView = function(res){
|
|
|
|
|
var html = laytpl(effectTpl).render(res);
|
|
|
|
|
$('#LAY_coop_effect').html(html);
|
|
|
|
|
$('#LAY_effect_count').html('你共有 <strong style="color: #FF5722;">'+ (res.count||0) +'</strong> 笔合作授权订单');
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
var effectShow = function(page){
|
|
|
|
|
fly.json('/cooperation/effect', {
|
|
|
|
|
page: page||1
|
|
|
|
|
}, function(res){
|
|
|
|
|
effectView(res);
|
|
|
|
|
laypage.render({
|
|
|
|
|
elem: 'LAY_effect_page'
|
|
|
|
|
,count: res.count
|
|
|
|
|
,curr: page
|
|
|
|
|
,jump: function(e, first){
|
|
|
|
|
if(!first){
|
|
|
|
|
effectShow(e.curr);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
effectShow();
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//提交成功后刷新
|
|
|
|
|
fly.form['set-mine'] = function(data, required){
|
|
|
|
|
layer.msg('修改成功', {
|
|
|
|
|
icon: 1
|
|
|
|
|
,time: 1000
|
|
|
|
|
,shade: 0.1
|
|
|
|
|
}, function(){
|
|
|
|
|
location.reload();
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//帐号绑定
|
|
|
|
|
$('.acc-unbind').on('click', function(){
|
|
|
|
|
var othis = $(this), type = othis.attr('type');
|
|
|
|
|
layer.confirm('整的要解绑'+ ({
|
|
|
|
|
qq_id: 'QQ'
|
|
|
|
|
,weibo_id: '微博'
|
|
|
|
|
})[type] + '吗?', {icon: 5}, function(){
|
|
|
|
|
fly.json('/api/unbind', {
|
|
|
|
|
type: type
|
|
|
|
|
}, function(res){
|
|
|
|
|
if(res.status === 0){
|
|
|
|
|
layer.alert('已成功解绑。', {
|
|
|
|
|
icon: 1
|
|
|
|
|
,end: function(){
|
|
|
|
|
location.reload();
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
} else {
|
|
|
|
|
layer.msg(res.msg);
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//我的消息
|
|
|
|
|
gather.minemsg = function(){
|
|
|
|
|
var delAll = $('#LAY_delallmsg')
|
|
|
|
|
,tpl = '{{# var len = d.rows.length;\
|
|
|
|
|
if(len === 0){ }}\
|
|
|
|
|
<div class="fly-none">您暂时没有最新消息</div>\
|
|
|
|
|
{{# } else { }}\
|
|
|
|
|
<ul class="mine-msg">\
|
|
|
|
|
{{# for(var i = 0; i < len; i++){ }}\
|
|
|
|
|
<li data-id="{{d.rows[i].id}}">\
|
2020-03-31 23:01:00 +08:00
|
|
|
|
{{# if(d.rows[i].type == 1){ }}\
|
|
|
|
|
<blockquote class="layui-elem-quote"><a href="/index/jump?name={{ d.rows[i].name}}" target="_blank"><cite>{{ d.rows[i].name}}</cite></a>回答了您的帖子<a target="_blank" class="art-title" id-data="{{ d.rows[i].id}}" href="{{ d.rows[i].link}}"><cite>{{ d.rows[i].title}}</cite></a> <span class="float:right">{{ d.rows[i].read}}</span></blockquote>\
|
|
|
|
|
{{# } else { }}\
|
|
|
|
|
<blockquote class="layui-elem-quote">系统消息:<a class="sys-title" id-data="{{ d.rows[i].id}}" href="javascript:;"><cite>{{ d.rows[i].title}}</cite></a> <span class="float:right">{{ d.rows[i].read}}</span></blockquote>\
|
|
|
|
|
{{# } }}\
|
2020-01-01 13:17:19 +08:00
|
|
|
|
<p><span>{{d.rows[i].time}}</span><a href="javascript:;" class="layui-btn layui-btn-sm layui-btn-danger fly-delete">删除</a></p>\
|
|
|
|
|
</li>\
|
|
|
|
|
{{# } }}\
|
|
|
|
|
</ul>\
|
|
|
|
|
{{# } }}'
|
|
|
|
|
,delEnd = function(clear){
|
|
|
|
|
if(clear || dom.minemsg.find('.mine-msg li').length === 0){
|
|
|
|
|
dom.minemsg.html('<div class="fly-none">您暂时没有最新消息</div>');
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
2020-03-28 21:48:35 +08:00
|
|
|
|
fly.json('/index/message/find/', {}, function(res){
|
2020-01-01 13:17:19 +08:00
|
|
|
|
var html = laytpl(tpl).render(res);
|
|
|
|
|
dom.minemsg.html(html);
|
|
|
|
|
if(res.rows.length > 0){
|
|
|
|
|
delAll.removeClass('layui-hide');
|
2020-03-28 21:48:35 +08:00
|
|
|
|
} else {
|
|
|
|
|
delAll.addClass('layui-hide');
|
|
|
|
|
}
|
2020-01-01 13:17:19 +08:00
|
|
|
|
});
|
2020-03-28 21:48:35 +08:00
|
|
|
|
|
2020-01-01 13:17:19 +08:00
|
|
|
|
|
|
|
|
|
//阅读后删除
|
|
|
|
|
dom.minemsg.on('click', '.mine-msg li .fly-delete', function(){
|
|
|
|
|
var othis = $(this).parents('li'), id = othis.data('id');
|
|
|
|
|
fly.json('/index/message/remove/', {
|
|
|
|
|
id: id
|
|
|
|
|
}, function(res){
|
|
|
|
|
if(res.status === 0){
|
|
|
|
|
othis.remove();
|
|
|
|
|
delEnd();
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
//删除全部
|
|
|
|
|
$('#LAY_delallmsg').on('click', function(){
|
|
|
|
|
var othis = $(this);
|
|
|
|
|
layer.confirm('确定清空吗?', function(index){
|
|
|
|
|
fly.json('/index/message/remove/', {
|
2020-03-28 21:48:35 +08:00
|
|
|
|
id: true
|
2020-01-01 13:17:19 +08:00
|
|
|
|
}, function(res){
|
|
|
|
|
if(res.status === 0){
|
|
|
|
|
layer.close(index);
|
|
|
|
|
othis.addClass('layui-hide');
|
|
|
|
|
delEnd(true);
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
dom.minemsg[0] && gather.minemsg();
|
|
|
|
|
|
|
|
|
|
exports('user', null);
|
|
|
|
|
|
|
|
|
|
});
|