规范化

This commit is contained in:
tao 2021-12-15 15:46:04 +08:00
parent 002d647e04
commit 641e2400e6
46 changed files with 1042 additions and 1202 deletions

View File

@ -9,10 +9,11 @@ use app\admin\model\AuthRule as AuthRuleModel;
class AuthRule extends AdminController
{
//权限列表
/**
* 菜单列表
*/
public function index()
{
//获取权限列表
if(Request::isAjax()){
$rule = new AuthRuleModel();
@ -34,15 +35,15 @@ class AuthRule extends AdminController
}
//权限树
/**
*权限树
* 支持获取三级菜单
*/
public function tree()
{
//$res = $this->treeTr($this->getMenus());
//var_dump($res);
/*
支持获取三级菜单
*/
$result = $this->getMenus(1);
$count = count($result);
@ -72,10 +73,7 @@ class AuthRule extends AdminController
$children[] = ['id'=>$j['id'],'title'=>$j['title'],'pid'=>$j['pid'],'children'=>$chichi]; //子数据
}
}
$data[] = ['id'=>$v['id'],'title'=>$v['title'],'pid'=>$v['pid'],'children'=>$children];
}
//构造一个顶级菜单pid=0的数组。把权限放入顶级菜单下子权限中
@ -88,7 +86,6 @@ class AuthRule extends AdminController
//添加权限
public function add()
{
//
if(Request::isAjax()){
$data = Request::param();
$plevel = Db::name('auth_rule')->field('level')->find($data['pid']);
@ -106,6 +103,7 @@ class AuthRule extends AdminController
return json(['code'=>-1,'msg'=>'添加权限失败']);
}
}
$rule = new AuthRuleModel();
$auth_rules = $rule->authRuleTree();
View::assign('AuthRule',$auth_rules);

View File

@ -164,20 +164,16 @@ class Index extends AdminController
//动态信息
public function news()
{
$page = Request::param('page');
$url = $this->api.'/v1/news?'.Request::query();
$news = Cache::get('news'.$page);
if(is_null($news)){
$data = Request::only(['page', 'limit']);
$url = $this->api.'/v1/news?'.'page='.$data['page'].'&'.'limit='.$data['limit'];
$news = Cache::get('news'.$data['page'].'_'.$data['limit']);
if(empty($news)){
$news = Api::urlGet($url);
Cache::set('news'.$page,$news,600);
if($news->code == 0){
Cache::set('news'.$data['page'].'_'.$data['limit'],$news,600);
}
}
if($news){
return $news;
}else{
return json(['code'=>-1,'msg'=>'稍后获取内容...']);
}
}
//提交反馈

View File

@ -1,6 +1,5 @@
<?php
return [
app\middleware\AdminLoginCookie::class,
app\middleware\Auth::class,
];

View File

@ -16,13 +16,20 @@ class AuthRule extends Model
{
$query->where('id', $value );
}
//登陆校验
/**
* 权限树
*/
public function authRuleTree()
{
$authRules = $this->order('sort asc')->select();
return $this->sort($authRules);
//return $this->sort($authRules);
return $authRules;
}
/**
* idpid,菜单排序
* @var $data 数据
* @var $pid 父级id
*/
public function sort($data,$pid=0)
{
static $arr = array();

View File

@ -22,14 +22,14 @@
<script type="text/html" id="toolbar">
<div class="layui-btn-group" style="padding-bottom: 10px;">
<button class="layui-btn layui-btn-sm layuiadmin-btn-admin" data-type="add">离线安装</button>
</div>
<div class="layui-btn-group" style="padding-bottom: 10px;">
<button type="button" class="layui-btn layui-btn-sm" lay-event="installed">已安装</button>
<button type="button" class="layui-btn layui-btn-sm" lay-event="onlineAddons">在线</button>
<button type="button" class="layui-btn layui-btn-sm" lay-event="installed">已安装</button>
<button type="button" class="layui-btn layui-btn-sm" lay-event="freeAddons">免费</button>
<button type="button" class="layui-btn layui-btn-sm" lay-event="payAddons">付费</button>
</div>
<div class="layui-btn-group" style="padding-bottom: 10px;">
<button class="layui-btn layui-btn-sm layuiadmin-btn-admin" data-type="add">离线安装</button>
</div>
</script>
<script type="text/html" id="addons-installed-tool">

View File

@ -58,23 +58,23 @@
</script>
<script type="text/html" id="buttonTpl">
{{# if(d.top == 1){ }}
<button class="layui-btn layui-btn-xs">置顶</button>
<button class="layui-btn layui-btn-xs"></button>
{{# } else { }}
<button class="layui-btn layui-btn-primary layui-btn-xs">正常</button>
<button class="layui-btn layui-btn-primary layui-btn-xs"></button>
{{# } }}
</script>
<script type="text/html" id="buttonHot">
{{# if(d.hot == 1){ }}
<button class="layui-btn layui-btn-xs">加精</button>
<button class="layui-btn layui-btn-xs"></button>
{{# } else { }}
<button class="layui-btn layui-btn-primary layui-btn-xs">正常</button>
<button class="layui-btn layui-btn-primary layui-btn-xs"></button>
{{# } }}
</script>
<script type="text/html" id="buttonReply">
{{# if(d.reply == 1){ }}
<button class="layui-btn layui-btn-primary layui-btn-xs">正常</button>
<button class="layui-btn layui-btn-primary layui-btn-xs"></button>
{{# } else { }}
<button class="layui-btn layui-btn-xs"></button>
<button class="layui-btn layui-btn-xs"></button>
{{# } }}
</script>
<script type="text/html" id="buttonCheck">

View File

@ -10,6 +10,7 @@
<div class="layui-card-header"><i class="layui-icon layui-icon-voice"></i><a id="up_version" lay-href="{:url('Upgrade/index')}"></a></div>
</div>
</div>
<div class="layui-col-md6">
<div class="layui-card">
<div class="layui-card-header">快捷方式</div>
@ -74,6 +75,7 @@
</div>
</div>
</div>
<div class="layui-col-md6">
<div class="layui-card">
<div class="layui-card-header">待办事项</div>
@ -120,6 +122,7 @@
</div>
</div>
</div>
<div class="layui-col-md12">
<div class="layui-card">
<div class="layui-card-header">数据概览</div>
@ -267,7 +270,6 @@
</script>
</td>
</tr>
</tbody>
</table>
</div>

View File

@ -93,8 +93,6 @@
form.render();
//回车登陆
$(document).keydown(function(e){
if(e.keyCode == 13){
@ -108,7 +106,7 @@
//请求登入接口
admin.req({
type: "post"
,url: '{:url('login/index')}' //实际使用请改成服务端真实接口
,url: "{:url('login/index')}" //实际使用请改成服务端真实接口
,data: obj.field
,success: function(res){
if(res.code == 0){
@ -128,12 +126,7 @@
location.href = "{:url('index/index')}"; //后台主页
});
} else {
layer.open({
title:'登陆失败',
content:res.msg,
icon:5,
anim:6
});
layer.open({title:'登陆失败', content:res.msg, icon:5, anim:6});
layui.jquery('#LAY-user-get-vercode').attr('src', '{:captcha_src()}?'+Math.random());
}
@ -141,7 +134,6 @@
});
return false;
});
});
</script>

View File

@ -18,10 +18,13 @@ use think\facade\Lang;
*/
class AdminController extends \app\BaseController
{
// 初始化
/**
* 初始化菜单
*/
protected function initialize()
{
//权限auth检查
$this->aid = Session::get('admin_id');
//$this->checkAuth();
$this->getMenu();
//系统配置
@ -47,7 +50,7 @@ class AdminController extends \app\BaseController
}
$menu = !empty($menu) ? array2tree($menu) : [];
return View::assign('menu', $menu);
View::assign('menu', $menu);
}
/**

View File

@ -15,7 +15,9 @@ use app\BaseController as BaseCtrl;
*/
class BaseController extends BaseCtrl
{
// 初始化
/**
* 初始化系统,导航,用户
*/
protected function initialize()
{
$this->uid = Session::get('user_id');
@ -23,6 +25,7 @@ class BaseController extends BaseCtrl
$this->showSystem();
//显示分类导航
$this->showNav();
//用户
$this->showUser($this->uid);
}

View File

@ -1,33 +0,0 @@
<?php
namespace app\middleware;
use think\facade\Session;
use think\facade\Cookie;
use think\facade\Db;
use think\facade\Config;
class AdminLoginCookie
{
public function handle($request, \Closure $next)
{
//登陆前获取加密的Cookie
$cooAuth = Cookie::get('adminAuth');
if(!empty($cooAuth)){
$resArr = explode(':',$cooAuth);
$userId = end($resArr);
//检验用户
$user = Db::name('admin')->where('id',$userId)->find();
if(!is_null($user)){
//验证cookie
$salt = Config::get('taoler.salt');
$auth = md5($user['username'].$salt).":".$userId;
if($auth==$cooAuth){
Session::set('admin_name',$user['username']);
Session::set('admin_id',$userId);
}
}
}
return $next($request);
}
}

View File

@ -5,6 +5,9 @@ namespace app\middleware;
use taoser\think\Auth as UserAuth;
use think\facade\Session;
use think\facade\Cookie;
use think\facade\Db;
use think\facade\Config;
class Auth
{
@ -17,8 +20,28 @@ class Auth
*/
public function handle($request, \Closure $next)
{
//访问路径
$path = app('http')->getName().'/'.stristr($request->pathinfo(),".html",true);
//var_dump($path);
//登陆前获取加密的Cookie
$cooAuth = Cookie::get('adminAuth');
if(!empty($cooAuth)){
$resArr = explode(':',$cooAuth);
$userId = end($resArr);
//检验用户
$user = Db::name('admin')->where('id',$userId)->find();
if(!empty($user)){
//验证cookie
$salt = Config::get('taoler.salt');
$auth = md5($user['username'].$salt).":".$userId;
if($auth==$cooAuth){
Session::set('admin_name',$user['username']);
Session::set('admin_id',$userId);
}
}
}
//没有登录及当前非登录页重定向登录页
if(!Session::has('admin_id') && $path !== 'admin/login/index' && !stristr($request->pathinfo(),"captcha.html") )
{

View File

@ -29,8 +29,8 @@ return [
'deny_app_list' => [],
// 异常页面的模板文件
//'exception_tmpl' => app()->getThinkPath() . 'tpl/think_exception.tpl',
'exception_tmpl' => app()->getAppPath() . '404.html',
'exception_tmpl' => app()->getThinkPath() . 'tpl/think_exception.tpl',
//'exception_tmpl' => app()->getAppPath() . '404.html',
// 错误显示信息,非调试模式有效
'error_message' => '页面错误!请稍后再试~',

View File

@ -16,13 +16,13 @@ return [
// 数据库类型
'type' => 'mysql',
// 服务器地址
'hostname' => '',
'hostname' => '127.0.0.1',
// 数据库名
'database' => '',
'database' => 'taoler',
// 用户名
'username' => '',
'username' => 'taoler',
// 密码
'password' => '',
'password' => 'taoler2022',
// 端口
'hostport' => '3306',
// 数据库连接参数
@ -30,7 +30,7 @@ return [
// 数据库编码默认采用utf8
'charset' => 'utf8',
// 数据库表前缀
'prefix' => '',
'prefix' => 'tao_',
// 数据库部署方式:0 集中式(单一服务器),1 分布式(主从服务器)
'deploy' => 0,
// 数据库读写是否分离 主从式有效

View File

@ -1,219 +1,264 @@
//网站app版本发布
layui.define(['table', 'form','upload'], function(exports){
var $ = layui.jquery
,table = layui.table
,form = layui.form
,upload = layui.upload;
layui.define(["table", "form", "upload"], function (exports) {
var $ = layui.jquery,
table = layui.table,
form = layui.form,
upload = layui.upload;
function addList(type)
{
function addList(type) {
$.ajax({
type: 'post',
url: addonsList ,
data: {type:type},
dataType: 'json',
type: "post",
url: addonsList,
data: { type: type },
dataType: "json",
success: function (res) {
//渲染表格
table.render({
elem: '#addons-list',
toolbar: '#toolbar',
elem: "#addons-list",
toolbar: "#toolbar",
defaultToolbar: [],
url: addonsList + '?type='+ type,
cols: [
res['col']
]
, page: true
, limit: 10
, height: 'full-220'
, text: '对不起,加载出现异常!'
url: addonsList + "?type=" + type,
cols: [res["col"]],
page: true,
limit: 10,
height: "full-220",
text: "对不起,加载出现异常!",
});
},
});
}
});
}
addList('installed');
addList("onlineAddons");
//头工具栏事件
table.on('toolbar(addons-list)', function(obj){
table.on("toolbar(addons-list)", function (obj) {
var checkStatus = table.checkStatus(obj.config.id);
switch(obj.event){
case 'installed':
switch (obj.event) {
case "installed":
addList("installed");
break;
case 'onlineAddons':
case "onlineAddons":
addList("onlineAddons");
break;
}
});
//监听工具条
table.on('tool(addons-list)', function(obj){
//监听工具条
table.on("tool(addons-list)", function (obj) {
var data = obj.data;
if(obj.event === 'del'){
layer.prompt({
formType: 1
,title: '敏感操作,请验证口令'
}, function(value, index){
if (obj.event === "del") {
layer.prompt(
{
formType: 1,
title: "敏感操作,请验证口令",
},
function (value, index) {
layer.close(index);
layer.confirm('真的删除行么', function(index){
$.post(addonsDelete,{name:data.name},function (res) {
layer.confirm("真的删除行么", function (index) {
$.post(addonsDelete, { name: data.name }, function (res) {
if (res.code == 0) {
layer.msg(res.msg,{icon:6,time:2000});
layer.msg(res.msg, { icon: 6, time: 2000 });
} else {
layer.open({tiele:'修改失败',content:res.msg,icon:5,anim:6});
layer.open({
tiele: "修改失败",
content: res.msg,
icon: 5,
anim: 6,
});
}
});
table.reload('addons-list');
table.reload("addons-list");
layer.close(index);
});
});
} else if(obj.event === 'edit'){
}
);
} else if (obj.event === "edit") {
var tr = $(obj.tr);
layer.open({
type: 2
,title: '编辑插件'
,content: addonsEdit + '?id='+ data.id
,maxmin: true
,area: ['400px', '620px']
,btn: ['确定', '取消']
,yes: function(index, layero){
var iframeWindow = window['layui-layer-iframe'+ index]
,submitID = 'LAY-addons-submit'
,submit = layero.find('iframe').contents().find('#'+ submitID);
type: 2,
title: "编辑插件",
content: addonsEdit + "?id=" + data.id,
maxmin: true,
area: ["400px", "620px"],
btn: ["确定", "取消"],
yes: function (index, layero) {
var iframeWindow = window["layui-layer-iframe" + index],
submitID = "LAY-addons-submit",
submit = layero
.find("iframe")
.contents()
.find("#" + submitID);
//监听提交
iframeWindow.layui.form.on('submit('+ submitID +')', function(data){
iframeWindow.layui.form.on(
"submit(" + submitID + ")",
function (data) {
var field = data.field; //获取提交的字段
//提交 Ajax 成功后,静态更新表格中的数据
$.ajax({
type:"post",
url:addonsEdit,
data:field,
daType:"json",
success:function (res){
type: "post",
url: addonsEdit,
data: field,
daType: "json",
success: function (res) {
if (res.code == 0) {
layer.msg(res.msg,{icon:6,time:2000});
layer.msg(res.msg, { icon: 6, time: 2000 });
} else {
layer.open({tiele:'修改失败',content:res.msg,icon:5,anim:6});
}
}
});
table.reload('addons-list'); //数据刷新
layer.close(index); //关闭弹层
});
submit.trigger('click');
}
,success: function(layero, index){
}
});
} else if (obj.event === 'start'){
//提交 Ajax 成功后,静态更新表格中的数据
$.ajax({
type:"post",
url:addonsStart,
data:{name:data.name},
daType:"json",
success:function (res){
if (res.code == 0) {
layer.msg(res.msg,{icon:6,time:2000});
} else {
layer.open({tiele:'修改失败',content:res.msg,icon:5,anim:6});
}
}
});
} else if(obj.event === 'shutdown'){
//提交 Ajax 成功后,静态更新表格中的数据
$.ajax({
type:"post",
url:addonsShut,
data:{name:data.name},
daType:"json",
success:function (res){
if (res.code == 0) {
layer.msg(res.msg,{icon:6,time:2000});
} else {
layer.open({tiele:'修改失败',content:res.msg,icon:5,anim:6});
}
}
});
} else if(obj.event === 'install'){
//安装插件
$.post(addonsInstall,{name:data.name,version:data.version},function (res) {
if (res.code == 0) {
layer.msg(res.msg,{icon:6,time:2000});
} else {
layer.open({tiele:'修改失败',content:res.msg,icon:5,anim:6});
}
});
} else if(obj.event === 'config'){
layer.open({
type: 2
,title: '配置插件'
,content: addonsConfig + '?name='+ data.name
,maxmin: true
,area: ['780px', '90%']
,btn: ['确定', '取消']
,yes: function(index, layero){
var iframeWindow = window['layui-layer-iframe'+ index]
,submitID = 'LAY-addons-config-submit'
,submit = layero.find('iframe').contents().find('#'+ submitID);
tiele: "修改失败",
content: res.msg,
icon: 5,
anim: 6,
});
}
},
});
table.reload("addons-list"); //数据刷新
layer.close(index); //关闭弹层
}
);
submit.trigger("click");
},
success: function (layero, index) {},
});
} else if (obj.event === "start") {
//提交 Ajax 成功后,静态更新表格中的数据
$.ajax({
type: "post",
url: addonsStart,
data: { name: data.name },
daType: "json",
success: function (res) {
if (res.code == 0) {
layer.msg(res.msg, { icon: 6, time: 2000 });
} else {
layer.open({
tiele: "修改失败",
content: res.msg,
icon: 5,
anim: 6,
});
}
},
});
} else if (obj.event === "shutdown") {
//提交 Ajax 成功后,静态更新表格中的数据
$.ajax({
type: "post",
url: addonsShut,
data: { name: data.name },
daType: "json",
success: function (res) {
if (res.code == 0) {
layer.msg(res.msg, { icon: 6, time: 2000 });
} else {
layer.open({
tiele: "修改失败",
content: res.msg,
icon: 5,
anim: 6,
});
}
},
});
} else if (obj.event === "install") {
//安装插件
$.post(
addonsInstall,
{ name: data.name, version: data.version },
function (res) {
if (res.code == 0) {
layer.msg(res.msg, { icon: 6, time: 2000 });
} else {
layer.open({
tiele: "修改失败",
content: res.msg,
icon: 5,
anim: 6,
});
}
}
);
} else if (obj.event === "config") {
layer.open({
type: 2,
title: "配置插件",
content: addonsConfig + "?name=" + data.name,
maxmin: true,
area: ["780px", "90%"],
btn: ["确定", "取消"],
yes: function (index, layero) {
var iframeWindow = window["layui-layer-iframe" + index],
submitID = "LAY-addons-config-submit",
submit = layero
.find("iframe")
.contents()
.find("#" + submitID);
//监听提交
iframeWindow.layui.form.on('submit('+ submitID +')', function(data){
iframeWindow.layui.form.on(
"submit(" + submitID + ")",
function (data) {
var field = data.field; //获取提交的字段
$.ajax({
type:"post",
url:addonsConfig,
data:field,
daType:"json",
success:function (res){
type: "post",
url: addonsConfig,
data: field,
daType: "json",
success: function (res) {
if (res.code == 0) {
layer.msg(res.msg,{icon:6,time:2000});
layer.msg(res.msg, { icon: 6, time: 2000 });
} else {
layer.open({tiele:'修改失败',content:res.msg,icon:5,anim:6});
}
layer.open({
tiele: "修改失败",
content: res.msg,
icon: 5,
anim: 6,
});
}
},
});
layer.close(index); //关闭弹层
});
submit.trigger('click');
}
,success: function(layero, index){
var forms = layero.find('iframe').contents().find('.layui-form');
var button = forms.find('button');
);
submit.trigger("click");
},
success: function (layero, index) {
var forms = layero.find("iframe").contents().find(".layui-form");
var button = forms.find("button");
//事件委托
forms.on('click','button',function (data) {
var even = this.getAttribute('lay-event');
forms.on("click", "button", function (data) {
var even = this.getAttribute("lay-event");
var names = this.dataset.name;
if(even == 'addInput'){
var html = '<div class="layui-form-item"><label class="layui-form-label"></label><div class="layui-input-inline">\n' +
if (even == "addInput") {
var html = '<div class="layui-form-item">\n' +
'<label class="layui-form-label"></label>\n' +
'<div class="layui-input-inline">\n' +
' <input type="text" name="'+ names +'[key][]" value="" placeholder="key" autocomplete="off" class="layui-input input-double-width">\n' +
' </div><div class="layui-input-inline">\n' +
'</div>\n' +
'<div class="layui-input-inline">\n' +
' <input type="text" name="'+ names +'[value][]" value="" placeholder="value" autocomplete="off" class="layui-input input-double-width">\n' +
' </div>\n' +
' <button data-name="'+ names +'" type="button" class="layui-btn layui-btn-danger layui-btn-sm removeInupt" lay-event="removeInupt">\n' +
'</div>\n' +
'<button data-name="'+ names +'" type="button" class="layui-btn layui-btn-danger layui-btn-sm removeInupt" lay-event="removeInupt">\n' +
' <i class="layui-icon"></i>\n' +
' </button>\n' +
' </div>';
'</button>\n' +
'</div>';
$(this).parent().parent().append(html);
} else {
$(this).parent().remove();
}
});
},
});
}
table.reload("addons-list"); //数据刷新
});
}
table.reload('addons-list'); //数据刷新
});
exports('addons', {})
exports("addons", {});
});

View File

@ -1,12 +1,3 @@
/**
@NamelayuiAdmin 社区系统
@Authorstar1029
@Sitehttp://www.layui.com/admin/
@LicenseLPPL
*/
layui.define(['table', 'form'], function(exports){
var $ = layui.$
@ -26,8 +17,8 @@ layui.define(['table', 'form'], function(exports){
,{field: 'content', title: '内容', mWidth: 200}
,{field: 'posttime', title: '时间',width: 120, sort: true}
,{field: 'top', title: '置顶', templet: '#buttonTpl', width: 80, align: 'center'}
,{field: 'hot', title: '', templet: '#buttonHot', width: 80, align: 'center'}
,{field: 'reply', title: '论状态', templet: '#buttonReply', width: 80, align: 'center'}
,{field: 'hot', title: '精', templet: '#buttonHot', width: 80, align: 'center'}
,{field: 'reply', title: '评', templet: '#buttonReply', width: 80, align: 'center'}
,{field: 'check', title: '审帖', templet: '#buttonCheck', width: 100, align: 'center'}
,{title: '操作', width: 60, align: 'center', toolbar: '#table-forum-list'}
]]
@ -116,7 +107,6 @@ layui.define(['table', 'form'], function(exports){
}
});
table.reload('LAY-app-forum-list'); //数据刷新
layer.close(index); //关闭弹层
});
@ -143,7 +133,7 @@ layui.define(['table', 'form'], function(exports){
,{field: 'content', title: '评论', minWidth: 200}
,{field: 'replytime', title: '回复时间', width: 120, sort: true}
,{field: 'check', title: '审核', templet: '#buttonCheck', width: 100}
,{title: '操作', width: 85, align: 'center', toolbar: '#table-forum-replys'}
,{title: '操作', width: 60, align: 'center', toolbar: '#table-forum-replys'}
]]
,page: true
,limit: 15
@ -216,15 +206,14 @@ layui.define(['table', 'form'], function(exports){
elem: '#LAY-app-content-tags'
,url: forumTags //帖子分类接口
,cols: [[
{type: 'numbers', fixed: 'left'}
,{field: 'sort', title: '排序', width: 80, sort: true}
{field: 'sort', title: '排序', width: 80, sort: true}
,{field: 'id', title: 'ID',width: 60}
,{field: 'tags', title: '分类名', minWidth: 100}
,{field: 'ename', title: 'EN别名', minWidth: 100}
,{field: 'tags', title: '分类名', width: 100}
,{field: 'ename', title: 'EN别名', width: 100}
,{field: 'detpl',title: '模板', align: 'center',width: 100,templet: '#inputSel'}
,{title: '图标', align: 'center',width: 50,templet: '<p><i class="layui-icon {{d.icon}}"></i></p>'}
,{field: 'is_hot', title: '热门', align: 'center',width: 50, templet: '#buttonHot'}
,{field: 'desc', title: '描述', minWidth: 100}
,{field: 'desc', title: '描述', minWidth: 200}
,{title: '操作', width: 100, align: 'center', toolbar: '#layuiadmin-app-cont-tagsbar'}
]]
,text: '对不起,加载出现异常!'

View File

@ -32,7 +32,7 @@
{/if}
<div class="que-body">
<h2>
<a href="{:url('article/detail',['id' => $art.id])}" style="color:{$art.title_color};">{$art.title}</a>
<a href="{:url('article/detail',['id' => $art.id])}" style="color:'{$art.title_color}';">{$art.title}</a>
</h2>
<div class="que-user-info">
<a href="{:url('user/home',['id'=>$art.user.id])}" class="que-avatar">
@ -77,7 +77,7 @@
</div>
<div class="fly-panel-main">
{volist name="ad_comm" id="vo"}
<a href="{$vo.slid_href}" target="_blank" rel="nofollow" class="fly-zanzhu" style="background-color: {$vo.slid_color};">{$vo.slid_name}</a>
<a href="{$vo.slid_href}" target="_blank" rel="nofollow" class="fly-zanzhu" style="background-color: '{$vo.slid_color};'">{$vo.slid_name}</a>
{/volist}
</div>
</div>

View File

@ -12,7 +12,7 @@
<div class="fly-panel detail-box">
{//标题}
<div class="title layui-clear">
<h1 style="color:{$article.title_color};">{$article.title}</h1>
<h1 style="color:'{$article.title_color}';">{$article.title}</h1>
{if ($article.jie == 0)}
<span class="layui-btn layui-btn-xs" style="background-color: #FF5722;">{:lang('no finished')}</span>
{else /}
@ -149,7 +149,7 @@
</div>
<div class="fly-panel-main">
{volist name="ad_comm" id="vo"}
<a href="{$vo.slid_href}" target="_blank" rel="nofollow" class="fly-zanzhu" style="background-color: {$vo.slid_color};">{$vo.slid_name}</a>
<a href="{$vo.slid_href}" target="_blank" rel="nofollow" class="fly-zanzhu" style="background-color: '{$vo.slid_color}';">{$vo.slid_name}</a>
{/volist}
</div>
</div>
@ -180,6 +180,7 @@
<script>
var collectionFind = "{:url('Collection/find')}",
collection = "{:url('collection/')}",
articleJieset = "{:url('Article/jieset')}",
articleDelete = "{:url('Article/delete')}",
commentJiedaZan = "{:url('Comment/jiedaZan')}",
@ -189,7 +190,6 @@ var collectionFind = "{:url('Collection/find')}",
commentJiedaDelete = "{:url('Comment/jiedaDelete')}",
langCollection = "{:lang('collection')}",
langCancelCollection = "{:lang('cancel collection')}";
var collection = "{:url('collection/')}";
layui.use(['fly', 'face','colorpicker','plyr'], function(){
var $ = layui.jquery
@ -235,7 +235,7 @@ layui.use(['fly', 'face','colorpicker','plyr'], function(){
,done: function(color){
//改变标题颜色
$('h1').css("color", color);
var id = {$article.id};
var id = "{$article.id}";
$.ajax({
type:'post',
url:"{:url('Article/titleColor')}",
@ -272,7 +272,7 @@ layui.use(['fly', 'face','colorpicker','plyr'], function(){
layer.msg(data.msg,{icon:6,time:2000},function () {
location.reload(true);
});
}else {
} else {
layer.open({title:'评论失败',content:data.msg,icon:5,anim:6});
}
}

View File

@ -22,7 +22,6 @@
<div class="layui-input-block">
<select lay-verify="required" name="cate_id" lay-filter="column">
<option></option>
{volist name="cateList" id="cate"}
<option value="{$cate.id}" {if $article.cate_id == $cate.id}selected{/if}>{:cookie('think_lang') == 'en-us' ? $cate.ename : $cate.catename}</option>
{/volist}
@ -167,7 +166,7 @@
//指定允许上传的文件类型
upload.render({
elem: '#zip-button'
,url: '{:url('article/uploads')}' //改成您自己的上传接口
,url: "{:url('article/uploads')}" //改成您自己的上传接口
,accept: 'file' //普通文件
,done: function(res){
if(res.status == 0){

View File

@ -17,7 +17,7 @@
</a>
<h2>
{if config('taoler.config.cate_show') == 1}<a class="layui-badge">{:cookie('think_lang') == 'en-us' ? $art.cate.ename : $art.cate.catename}</a>{/if}
<a href="{:url('article/detail',['id' => $art.id])}" style="color:{$art.title_color};">{$art.title}</a>
<a href="{:url('article/detail',['id' => $art.id])}" style="color:'{$art.title_color}';">{$art.title}</a>
</h2>
<div class="fly-list-info">
<a href="{:url('user/home',['id'=>$art.user.id])}" link>
@ -69,7 +69,7 @@
</div>
<div class="fly-panel-main">
{volist name="ad_comm" id="vo"}
<a href="{$vo.slid_href}" target="_blank" rel="nofollow" class="fly-zanzhu" style="background-color: {$vo.slid_color};">{$vo.slid_name}</a>
<a href="{$vo.slid_href}" target="_blank" rel="nofollow" class="fly-zanzhu" style="background-color: '{$vo.slid_color}';">{$vo.slid_name}</a>
{/volist}
</div>
</div>

View File

@ -11,7 +11,7 @@
<div class="layui-col-md9 content detail">
<div class="fly-panel detail-box">
{//标题}
<h1 style="color:{$article.title_color};">{$article.title}</h1>
<h1 style="color:'{$article.title_color}';">{$article.title}</h1>
<div class="detail_qrcode layui-hide-xs" onclick="PhoneDown();" id="mobile"></div>
{//图标}
<div class="fly-detail-info">
@ -139,7 +139,7 @@
</div>
<div class="fly-panel-main">
{volist name="ad_comm" id="vo"}
<a href="{$vo.slid_href}" target="_blank" rel="nofollow" class="fly-zanzhu" style="background-color: {$vo.slid_color};">{$vo.slid_name}</a>
<a href="{$vo.slid_href}" target="_blank" rel="nofollow" class="fly-zanzhu" style="background-color: '{$vo.slid_color}';">{$vo.slid_name}</a>
{/volist}
</div>
</div>
@ -169,6 +169,7 @@
{block name="script"}
<script>
var collectionFind = "{:url('Collection/find')}",
collection = "{:url('collection/')}",
articleJieset = "{:url('Article/jieset')}",
articleDelete = "{:url('Article/delete')}",
commentJiedaZan = "{:url('Comment/jiedaZan')}",
@ -178,7 +179,6 @@ var collectionFind = "{:url('Collection/find')}",
commentJiedaDelete = "{:url('Comment/jiedaDelete')}",
langCollection = "{:lang('collection')}",
langCancelCollection = "{:lang('cancel collection')}";
var collection = "{:url('collection/')}";
layui.use(['fly', 'face','colorpicker','plyr'], function(){
var $ = layui.jquery
@ -212,7 +212,7 @@ layui.use(['fly', 'face','colorpicker','plyr'], function(){
,done: function(color){
//改变标题颜色
$('h1').css("color", color);
var id = {$article.id};
var id = "{$article.id}";
$.ajax({
type:'post',
url:"{:url('Article/titleColor')}",
@ -285,8 +285,8 @@ layui.use(['fly', 'face','colorpicker','plyr'], function(){
{:hook('markdownhook')}
<script>
//扫码阅读
$("#rdown").hover(function(){
//扫码阅读
$("#rdown").hover(function(){
$("#phonedl").show().stop();
},function(){
$("#phonedl").hide().stop();
@ -305,8 +305,8 @@ $("#rdown").hover(function(){
content: "<img src='/qrcode/?text={$Request.domain}{:url('article/detail',['id' => $article.id])}&size=230'>"
});
}
//推送百度收录服务
(function(){
//推送百度收录服务
(function(){
var bp = document.createElement('script');
var curProtocol = window.location.protocol.split(':')[0];
if (curProtocol === 'https') {
@ -317,7 +317,7 @@ $("#rdown").hover(function(){
}
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(bp, s);
})();
})();
</script>
{/block}

View File

@ -75,7 +75,7 @@
</div>
<div class="fly-panel-main" style="padding: 13px 15px;">
{volist name="ad_index" id="vo"}
<a href="{$vo.slid_href}" target="_blank" rel="nofollow" class="fly-zanzhu" style="background-color: {$vo.slid_color};">{$vo.slid_name}</a>
<a href="{$vo.slid_href}" target="_blank" rel="nofollow" class="fly-zanzhu" style="background-color: '{$vo.slid_color}';">{$vo.slid_name}</a>
{/volist}
<!--a href="/" target="_blank" rel="nofollow" class="fly-zanzhu fly-zanzhu-img" ><img src="//11886.png" alt="topjui"></a-->
</div>
@ -135,6 +135,7 @@
});
return false;
});
});
</script>
{/block}

View File

@ -56,7 +56,7 @@
</div>
<div class="fly-panel-main" style="padding: 13px 15px;">
{volist name="ad_index" id="vo"}
<a href="{$vo.slid_href}" target="_blank" rel="nofollow" class="fly-zanzhu" style="background-color: {$vo.slid_color};">{$vo.slid_name}</a>
<a href="{$vo.slid_href}" target="_blank" rel="nofollow" class="fly-zanzhu" style="background-color: '{$vo.slid_color}';">{$vo.slid_name}</a>
{/volist}
</div>
</div>

View File

@ -49,11 +49,9 @@
<input type="text" id="L_vercode" name="captcha" required lay-verify="required" placeholder="{:lang('please input the captcha')}" autocomplete="off" class="layui-input">
</div>
<div class="layui-form-mid">
<span style="color: #c00;">
<div >
<img id="captcha" src="{:captcha_src()}" onclick="this.src='{:captcha_src()}?'+Math.random();" style="float:left; cursor:pointer;" alt="captcha" />
<div class="layui-form-mid layui-word-aux" style="padding-top: 0px !important;">
<img id="captcha" src="{:captcha_src()}" style="float:left; cursor:pointer;" id="captcha" alt="captcha" />
</div>
</span>
</div>
</div>
<div class="layui-form-item">

View File

@ -31,8 +31,8 @@
<div class="layui-input-inline">
<input type="text" id="L_vercode" name="captcha" required lay-verify="required" placeholder="{:lang('please input the captcha')}" autocomplete="off" class="layui-input">
</div>
<div >
<img src="{:captcha_src()}" onclick="this.src='{:captcha_src()}?'+Math.random();" style="float:left; cursor:pointer;" id="captcha" alt="captcha" />
<div class="layui-form-mid layui-word-aux" style="padding-top: 0px !important;">
<img src="{:captcha_src()}" style="float:left; cursor:pointer;" id="captcha" alt="captcha" />
</div>
</div>
<div class="layui-form-item">
@ -57,9 +57,8 @@
{block name="script"}
<script>
$(function() {
$(function() {
$('#login').click(function() {
$.ajax({
type:"post",
url:"{:url('login/index')}",
@ -67,25 +66,17 @@ $(function() {
daType:"json",
success:function (data){
if (data.code == 0) {
layer.msg(data.msg,{
icon:6,
time:2000
}, function(){
layer.msg(data.msg,{icon:6,time:2000}, function(){
location.href = data.url;
});
} else {
layer.open({
title:'登陆失败',
content:data.msg,
icon:5,
anim:6
});
layer.open({title:'登陆失败',content:data.msg,icon:5,anim:6});
layui.jquery('#captcha').attr('src', '{:captcha_src()}?'+Math.random());
}
}
});
return false;
});
});
});
</script>
{/block}

View File

@ -47,7 +47,7 @@
<div >
<span style="color: #c00;">
<div>
<img id="captcha" src="{:captcha_src()}" onclick="this.src='{:captcha_src()}?'+Math.random();" style="float:left; cursor:pointer;" alt="captcha" />
<img id="captcha" src="{:captcha_src()}" style="float:left; cursor:pointer;" alt="captcha" />
</div>
</span>
</div>
@ -78,9 +78,7 @@ var layer = layui.layer;
//注册
form.on('submit(user-register)', function(data){
var field = data.field;
var loading = layer.load(2, {
shade: [0.2, '#000']
});
var loading = layer.load(2, {shade: [0.2, '#000']});
$.ajax({
type:'post',
url:"{:url('Login/reg')}",
@ -102,4 +100,5 @@ var layer = layui.layer;
});
});
</script>
{/block}

View File

@ -4,8 +4,8 @@
<meta charset="utf-8">
<title>{block name="title"}标题{/block}</title>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<meta name="keywords" content="{block name="keywords"}关键词{/block}">
<meta name="description" content="{block name="description"}描述{/block}">
<meta name="keywords" content="{block name='keywords'}关键词{/block}">
<meta name="description" content="{block name='description'}描述{/block}">
<link rel="stylesheet" href="/static/layui/css/layui.css" charset="utf-8">
<link rel="stylesheet" href="/static/res/css/global.css" charset="utf-8">
{block name="link"}{/block}
@ -35,11 +35,11 @@
<script>
layui.cache.page = '{$jspage}';
layui.cache.user = {
username: '{$user.name??'游客'}'
,uid: '{$user.id ?? -1}'
,avatar: '{$user['user_img'] ?? '/static/res/images/avatar/00.jpg'}'
,experience: '{$user.point ?? ''}'
,sex: '{$user.sex ? '女':'男'}'
username: "{$user.name??'游客'}"
,uid: "{$user.id ?? -1}"
,avatar: "{$user['user_img'] ?? '/static/res/images/avatar/00.jpg'}"
,experience: "{$user.point ?? ''}"
,sex: "{$user.sex ? '女':'男'}"
};
layui.config({
version: "3.0.0"

View File

@ -1,7 +1,10 @@
<h3 class="fly-panel-title">{:lang('friendly link')}</h3>
<dl class="fly-panel-main">
{volist name="flinks" id="vo"}
<dd><a href="{$vo.slid_href}" target="_blank">{$vo.slid_name}</a><dd>
{/volist}
<dd><a href="javascript:void(0)" id="friend-link" class="fly-link">申请友链</a><dd>
{volist name="flinks" id="vo"}
<dd><a href="{$vo.slid_href}" target="_blank">{$vo.slid_name}</a></dd>
<dd>{/volist}</dd>
<dd>
<a href="javascript:void(0)" id="friend-link" class="fly-link">申请友链</a>
</dd>
<dd></dd>
</dl>

View File

@ -1,17 +1,20 @@
<div class="fly-footer html5plus-hide">
<p> Copyright &copy; {:date('Y')}{$sysInfo.copyright|raw}v{:config('taoler.version')}</p>
<p>
{$sysInfo.showlist|raw}
{volist name="footlinks" id="vo"}
Copyright &copy; {:date('Y')}{$sysInfo.copyright|raw}v{:config('taoler.version')}
</p>
<p>
{$sysInfo.showlist|raw} {volist name="footlinks" id="vo"}
<a href="{$vo.slid_href}" target="_blank">{$vo.slid_name}</a>
{/volist}
<a href="https://beian.miit.gov.cn/#/Integrated/recordQuery" target="_blank">{$sysInfo.icp}</a>
<a href="https://beian.miit.gov.cn/#/Integrated/recordQuery" target="_blank"
>{$sysInfo.icp}</a
>
</p>
</div>
<script src="/static/layui/jquery.min.js" charset="utf-8"></script>
<script src="/static/layui/layui.js" charset="utf-8"></script>
<script>
var messageNums = "{:url('message/nums')}",
var messageNums = "{:url('message/nums')}",
messageRead = "{:url('Message/read')}",
userMessage = "{:url('User/message')}",
login = "{:url('Login/index')}",
@ -20,5 +23,5 @@ var messageNums = "{:url('message/nums')}",
searchUrl = "{:url('index/search')}",
langUrl = "{:url('index/language')}",
replyNum = "{:lang('replies')}";
var jumpUrl = "{:url('/jump/index/')}";
var jumpUrl = "{:url('/jump/index/')}";
</script>

View File

@ -62,7 +62,6 @@
<a href="" onclick="layer.msg('正在通过微博登入', {icon:16, shade: 0.1, time:0})" title="微博登入" class="iconfont icon-weibo"></a>
</li-->
{/if}
</ul>
</div>
</div>

View File

@ -4,7 +4,7 @@
</a>
<h2>
{if config('taoler.config.cate_show') == 1}<a class="layui-badge">{:cookie('think_lang') == 'en-us' ? $art.cate.ename : $art.cate.catename}</a>{/if}
<a href="{:url('article/detail',['id' => $art.id])}" style="color:{$art.title_color};">{$art.title}</a>
<a href="{:url('article/detail',['id' => $art.id])}" style="color:'{$art.title_color}';">{$art.title}</a>
</h2>
<div class="fly-list-info">
<a href="{:url('user/home',['id'=>$art.user.id])}" link>

View File

@ -1,9 +1,11 @@
<div class="layui-row fly-panel-main" style="padding: 15px;">
<div class="layui-carousel fly-topline" id="FLY_topline" >
<div class="layui-row fly-panel-main" style="padding: 15px">
<div class="layui-carousel fly-topline" id="FLY_topline">
<div carousel-item="">
{volist name="slider" id="vo"}
<div time-limit="" >
<a href="{$vo.slid_href}" target="_blank" rel="nofollow"> <img src="{$vo.slid_img}" alt="{$vo.slid_name}" /> </a>
<div time-limit="">
<a href="{$vo.slid_href}" target="_blank" rel="nofollow">
<img src="{$vo.slid_img}" alt="{$vo.slid_name}" />
</a>
</div>
{/volist}
</div>

View File

@ -4,7 +4,7 @@
</a>
<h2>
{if config('taoler.config.cate_show') == 1}<a class="layui-badge">{:cookie('think_lang') == 'en-us' ? $top.cate.ename : $top.cate.catename}</a>{/if}
<a href="{:url('article/detail',['id' => $top.id])}" style="color:{$top.title_color};">{$top.title}</a>
<a href="{:url('article/detail',['id' => $top.id])}" style="color:'{$top.title_color}';">{$top.title}</a>
</h2>
<div class="fly-list-info">
<a href="{:url('user/home',['id'=>$top.user_id])}" link>

View File

@ -1,60 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>{block name="title"}这是title{/block}</title>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<meta name="keywords" content="fly,layui,前端社区">
<meta name="description" content="Fly社区是模块化前端UI框架Layui的官网社区致力于为web开发提供强劲动力">
<link rel="stylesheet" href="/static/res/layui/css/layui.css">
<link rel="stylesheet" href="/static/res/css/global.css" charset="utf-8">
{include file="public/js" /}
</head>
<body>
{include file="public/header" /}
{block name="column"}
{include file="/public/column" /}
{/block}
{block name="content"}
<!--
* $msg 待提示的消息
* $url 待跳转的链接
* $time 弹出维持时间(单位秒)
* icon 这里主要有两个layer的表情5和6代表哭和笑
-->
<script type="text/javascript">
(function(){
var msg = '<?php echo(strip_tags($msg));?>';
var iurl = '<?php echo($url);?>';
var wait = '<?php echo($wait);?>';
<?php
switch ($code) {
case 1:
?>
layer.msg(msg,{icon:"6",time:wait*1000});
<?php
break;
case 0:
?>
layer.msg(msg,{icon:"5",time:wait*1000});
<?php
break;
}
?>
setTimeout(function(){
location.href=iurl;
},1000)
})();
</script>
{/block}
{include file="public/footer" /}
{block name="script"}
{/block}
</body>
</html>

View File

@ -1,79 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>用户中心</title>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<meta name="keywords" content="fly,layui,前端社区">
<meta name="description" content="TaoLer社区是模块化前端UI框架Layui的开发产品致力于为web开发提供强劲动力">
<link rel="stylesheet" href="/static/res/layui/css/layui.css">
<link rel="stylesheet" href="/static/res/css/global.css">
</head>
<body>
{include file="public/header" /}
<div class="layui-container fly-marginTop fly-user-main">
{include file="public/nav" /}
<div class="fly-panel fly-panel-user" pad20>
{__CONTENT__}
</div>
</div>
{include file="public/footer" /}
{include file="public/js" /}
<script Content-Type: text/html>
layui.use('upload', function(){
var $ = layui.jquery
var upload = layui.upload;
var uploadInst = upload.render({
elem: '#test1'
,url: '{:url('index/user/upload1')}'
,field: 'file'
,accept: 'images'
,acceptMime: 'image/*'
,exts: 'jpg|png|gif|bmp|jpeg'
,auto:true
,before: function(obj) {
obj.preview(function(index, file, result){
$('#demo1').attr('src', result); //图片链接base64
});
layer.msg("图片上传中...",{
time: 3000,
});
}
,done: function(res){
//如果上传失败
if(res.code > 0){
return layer.msg(res['msg']);
}
//上传成功
return layer.msg(res['msg']);
}
,error: function(){
//演示失败状态,并实现重传
}
});
});
</script>
<script>
layui.cache.page = 'user';
layui.cache.user = {
username: '游客'
,uid: -1
,avatar: '/static/res/images/avatar/00.jpg'
,experience: 83
,sex: '男'
};
layui.config({
version: "3.0.0"
,base: '/static/res/mods/'
}).extend({
fly: 'index'
}).use('fly');
</script>
</body>
</html>

View File

@ -1,3 +1,2 @@
<link rel="stylesheet" href="/static/res/layui/css/layui.css">
<link rel="stylesheet" href="/static/res/css/global.css">

View File

@ -23,13 +23,13 @@
{:lang('my message')}
</a>
</li>
<li class="layui-nav-item {if($Request.action=='key')}layui-this{/if}" >
<li class="layui-nav-item {if($Request.action=='key')}layui-this{/if}">
<a href="{:url('Api/key')}">
<i class="layui-icon layui-icon-vercode"></i>
{:lang('my auth')}
</a>
</li>
<li class="layui-nav-item " >
<li class="layui-nav-item">
<a href="{:url('user/home',['id'=>session('user_id')])}">
<i class="layui-icon layui-icon-home"></i>
{:lang('my page')}

View File

@ -32,11 +32,11 @@
layui.cache.page = 'user';
layui.cache.user = {
username: '{$user.name??'游客'}'
,uid: '{$user.id ?? -1}'
,avatar: '{$user['user_img'] ?? '/static/res/images/avatar/00.jpg'}'
,experience: '{$user.point ?? ''}'
,sex: '{$user.sex ? '女':'男'}'
username: "{$user.name??'游客'}"
,uid: "{$user.id ?? -1}"
,avatar: "{$user['user_img'] ?? '/static/res/images/avatar/00.jpg'}"
,experience: "{$user.point ?? ''}"
,sex: "{$user.sex ? '女':'男'}"
};
layui.config({
version: "3.0.0"

View File

@ -1,45 +1,41 @@
{extend name="public/user" /}
<!--{layout name="public:layout" /} -->
{block name="content"}
<div class="layui-tab layui-tab-brief" lay-filter="user">
<div class="layui-tab layui-tab-brief" lay-filter="user">
<ul class="layui-tab-title">
<li class="layui-this">
激活邮箱
</li>
<li class="layui-this">激活邮箱</li>
</ul>
<div class="layui-tab-content" id="LAY_ucm" style="padding: 20px 0;">
<div class="layui-tab-content" id="LAY_ucm" style="padding: 20px 0">
<ul class="layui-form">
<li class="layui-form-li">
<label for="activate">您的邮箱:</label>
<span class="layui-form-text">{$user.email}
{if ($user.active == 1)}
<em style="color:#999;">(已成功激活)</em>
<span class="layui-form-text">{$user.email} {if ($user.active == 1)}
<em style="color: #999">(已成功激活)</em>
{else /}
<em style="color:#c00;">(尚未激活)</em>
<em style="color: #c00">(尚未激活)</em>
{/if}
</span>
</li>
{if($user.active == 0)}
<li class="layui-form-li" style="margin-top: 20px; line-height: 26px;">
<li class="layui-form-li" style="margin-top: 20px; line-height: 26px">
<div>
1. 如果您未收到邮件,或激活链接失效,您可以
<a class="layui-form-a" style="color:#4f99cf;" id="LAY-activate" href="javascript:;" email="{$user.email}">重新发送邮件</a>,或者
<a class="layui-form-a" style="color:#4f99cf;" href="set.html">更换邮箱</a>
<a class="layui-form-a" style="color: #4f99cf" id="LAY-activate" href="javascript:;" email="{$user.email}">重新发送邮件</a>,或者
<a class="layui-form-a" style="color: #4f99cf" href="set.html">更换邮箱</a>
</div>
<div>
2. 如果您始终没有收到发送的邮件,请注意查看您邮箱中的垃圾邮件;
</div>
<div>
3. 如果你实在无法激活邮件,您还可以联系管理员{$adminEmail}
3. 如果你实在无法激活邮件,您还可以联系管理员: {$adminEmail}
</div>
</li>
{/if}
</ul>
</div>
</div>
{/block}
{block name="script"}
</div>
{/block} {block name="script"}
<script>
var actvateEmaiUrl = "{:url('User/active')}";
var actvateEmaiUrl = "{:url('User/active')}";
</script>
{/block}

View File

@ -1,58 +1,57 @@
{extend name="public/user" /}
{block name="content"}
<div class="layui-tab layui-tab-brief" lay-filter="user" id="LAY_msg" style="margin-top: 15px;">
<button class="layui-btn layui-btn-danger" id="LAY_delallmsg">清空全部消息</button>
<div id="LAY_minemsg" style="margin-top: 10px;"></div>
</div>
{/block}
{block name="script"}
{extend name="public/user" /} {block name="content"}
<div class="layui-tab layui-tab-brief" lay-filter="user" id="LAY_msg" style="margin-top: 15px">
<button class="layui-btn layui-btn-danger" id="LAY_delallmsg">
清空全部消息
</button>
<div id="LAY_minemsg" style="margin-top: 10px"></div>
</div>
{/block} {block name="script"}
<script>
var messageFind = "{:url('index/Message/find')}",
messageRemove = "{:url('index/Message/remove')}",
userNameJump = "{:url('index/Index/jump')}";
//点开标题改变帖子已读状态
$('#LAY_minemsg').on('click','.art-title', function(){
var id = $(this).attr('id-data');
$("#LAY_minemsg").on("click", ".art-title", function () {
var id = $(this).attr("id-data");
var othis = $(this);
$.ajax({
type:"post",
url:"{:url('message/read')}",
data:{"id":id},
daType:"json",
success:function (res){
if(res.status == 0){
othis.next().html('已读');
type: "post",
url: "{:url('message/read')}",
data: { id: id },
daType: "json",
success: function (res) {
if (res.status == 0) {
othis.next().html("已读");
//location.reload();
//othis.append('<span class="float:right">已读</span>');
}
}
},
});
});
//读消息
$('#LAY_minemsg').on('click','.sys-title', function(){
var id = $(this).attr('id-data');
$("#LAY_minemsg").on("click", ".sys-title", function () {
var id = $(this).attr("id-data");
var othis = $(this);
$.ajax({
type:"post",
url:"{:url('message/read')}",
data:{"id":id},
daType:"json",
success:function (res){
if(res.status == 0){
type: "post",
url: "{:url('message/read')}",
data: { id: id },
daType: "json",
success: function (res) {
if (res.status == 0) {
layer.open({
type: 1,
skin: 'layui-layer-rim', //加上边框
area: ['400px', '350px'], //宽高
content: '<div class="layui-form" style="padding: 10px 20px 0 20px;"> '+ res.content +'</div>'
skin: "layui-layer-rim", //加上边框
area: ["400px", "350px"], //宽高
content:
'<div class="layui-form" style="padding: 10px 20px 0 20px;"> ' + res.content + "</div>",
}),
othis.next().html('已读');
}
othis.next().html("已读");
}
},
});
});
</script>
{/block}

View File

@ -103,7 +103,6 @@
<i class="iconfont icon-qq"></i>
<span>已成功绑定您可以使用QQ帐号直接登录Fly社区当然您也可以</span>
<a href="javascript:;" class="acc-unbind" type="qq_id">解除绑定</a>
<!-- <a href="" onclick="layer.msg('正在绑定微博QQ', {icon:16, shade: 0.1, time:0})" class="acc-bind" type="qq_id">立即绑定</a>
<span>即可使用QQ帐号登录Fly社区</span> -->
</li>
@ -111,7 +110,6 @@
<i class="iconfont icon-weibo"></i>
<!-- <span>已成功绑定您可以使用微博直接登录Fly社区当然您也可以</span>
<a href="javascript:;" class="acc-unbind" type="weibo_id">解除绑定</a> -->
<a href="" class="acc-weibo" type="weibo_id" onclick="layer.msg('正在绑定微博', {icon:16, shade: 0.1, time:0})" >立即绑定</a>
<span>即可使用微博帐号登录Fly社区</span>
</li>
@ -123,9 +121,9 @@
{block name="script"}
<script>
layui.use(function(){
var $ = layui.jquery;
var form = layui.form;
layui.use(function(){
var $ = layui.jquery;
var form = layui.form;
//设置资料
form.on('submit(user-set-info)', function(data){
var field = data.field;
@ -164,8 +162,7 @@ var form = layui.form;
});
return false;
});
});
});
</script>
{/block}

View File

@ -1,31 +0,0 @@
{layout name="public:layout" /}
<div class="layui-tab layui-tab-brief" lay-filter="user">
<ul class="layui-tab-title" id="LAY_mine">
<li class="layui-this" lay-id="avatar">头像</li>
</ul>
<div class="layui-tab-content" style="padding: 20px 0;">
<div class="layui-form layui-form-pane layui-tab-item">
<div class="layui-form-item">
<div class="avatar-add">
<p>建议尺寸168*168支持jpg、png、gif最大不能超过50KB</p>
<div class="layui-upload ">
<div align="center">
<button type="button" class="layui-btn" id="test1"><i class="layui-icon">&#xe67c;</i>上传图片</button>
</div>
<div class="layui-upload-list">
<img class="layui-upload-img" id="demo1">
<p id="demoText"></p>
</div>
</div>
<img class="layui-upload-img" src="/uploads/{$userHead.user_img}" id="headimg">
<span class="loading"></span>
</div>
</div>
</div>
</div>
</div>