From c247d4d108e172115b7a444fe8c80f8fe797d7b6 Mon Sep 17 00:00:00 2001
From: Karson <karsonzhang@163.com>
Date: Fri, 3 Nov 2017 17:33:15 +0800
Subject: [PATCH] 修改登录失败时未出现提示的BUG 新增自动记录__PUBLIC__和__ROOT__,可在视图模板中使用 修复后台点击首页时不正确的BUG

---
 application/admin/behavior/AdminLog.php   |  2 --
 application/admin/view/common/header.html |  2 +-
 application/common/behavior/Common.php    | 18 ++++++++++++++----
 application/common/model/Category.php     |  5 +++++
 application/config.php                    |  6 +++---
 public/assets/js/require-backend.min.js   | 11 +++++------
 public/assets/js/require-form.js          | 10 +++++-----
 public/assets/js/require-table.js         |  1 -
 8 files changed, 33 insertions(+), 22 deletions(-)

diff --git a/application/admin/behavior/AdminLog.php b/application/admin/behavior/AdminLog.php
index 26d4e6d..48e6222 100644
--- a/application/admin/behavior/AdminLog.php
+++ b/application/admin/behavior/AdminLog.php
@@ -2,8 +2,6 @@
 
 namespace app\admin\behavior;
 
-use think\Config;
-
 class AdminLog
 {
 
diff --git a/application/admin/view/common/header.html b/application/admin/view/common/header.html
index 6348e67..485ce99 100644
--- a/application/admin/view/common/header.html
+++ b/application/admin/view/common/header.html
@@ -22,7 +22,7 @@
         <ul class="nav navbar-nav">
 
             <li>
-                <a href="{:url('index/index/index')}" target="_blank"><i class="fa fa-home" style="font-size:14px;"></i></a>
+                <a href="__PUBLIC__" target="_blank"><i class="fa fa-home" style="font-size:14px;"></i></a>
             </li>
 
             <li class="dropdown notifications-menu">
diff --git a/application/common/behavior/Common.php b/application/common/behavior/Common.php
index 9f6b74c..d63f4c2 100644
--- a/application/common/behavior/Common.php
+++ b/application/common/behavior/Common.php
@@ -13,21 +13,31 @@ class Common
         mb_internal_encoding("UTF-8");
 
         // 如果修改了index.php入口地址,则需要手动修改cdnurl的值
-        $cdnurl = preg_replace("/\/(\w+)\.php$/i", '', $request->root());
+        $url = preg_replace("/\/(\w+)\.php$/i", '', $request->root());
         // 如果未设置__CDN__则自动匹配得出
         if (!Config::get('view_replace_str.__CDN__'))
         {
-            Config::set('view_replace_str.__CDN__', $cdnurl);
+            Config::set('view_replace_str.__CDN__', $url);
+        }
+        // 如果未设置__PUBLIC__则自动匹配得出
+        if (!Config::get('view_replace_str.__PUBLIC__'))
+        {
+            Config::set('view_replace_str.__PUBLIC__', $url . '/');
+        }
+        // 如果未设置__ROOT__则自动匹配得出
+        if (!Config::get('view_replace_str.__ROOT__'))
+        {
+            Config::set('view_replace_str.__ROOT__', preg_replace("/\/public\/$/", '', $url . '/'));
         }
         // 如果未设置cdnurl则自动匹配得出
         if (!Config::get('site.cdnurl'))
         {
-            Config::set('site.cdnurl', $cdnurl);
+            Config::set('site.cdnurl', $url);
         }
         // 如果未设置cdnurl则自动匹配得出
         if (!Config::get('upload.cdnurl'))
         {
-            Config::set('upload.cdnurl', $cdnurl);
+            Config::set('upload.cdnurl', $url);
         }
         if (Config::get('app_debug'))
         {
diff --git a/application/common/model/Category.php b/application/common/model/Category.php
index f1c68e9..5f491d4 100644
--- a/application/common/model/Category.php
+++ b/application/common/model/Category.php
@@ -21,6 +21,11 @@ class Category Extends Model
         'flag_text',
     ];
 
+    public function setFlagAttr($value, $data)
+    {
+        return is_array($value) ? implode(',', $value) : $value;
+    }
+
     /**
      * 读取分类类型
      * @return array
diff --git a/application/config.php b/application/config.php
index a9cc906..a7d835e 100755
--- a/application/config.php
+++ b/application/config.php
@@ -132,10 +132,10 @@ return [
         'taglib_end'   => '}',
         'tpl_cache'    => true,
     ],
-    // 视图输出字符串内容替换
+    // 视图输出字符串内容替换,留空则会自动进行计算
     'view_replace_str'       => [
-        '__PUBLIC__' => '/public/',
-        '__ROOT__'   => '/',
+        '__PUBLIC__' => '',
+        '__ROOT__'   => '',
         '__CDN__'    => '',
     ],
     // 默认跳转页面对应的模板文件
diff --git a/public/assets/js/require-backend.min.js b/public/assets/js/require-backend.min.js
index ff3e577..6a6c2ad 100644
--- a/public/assets/js/require-backend.min.js
+++ b/public/assets/js/require-backend.min.js
@@ -9585,7 +9585,6 @@ define('table',['jquery', 'bootstrap', 'moment', 'moment/locale/zh-cn', 'bootstr
                 // 导入按钮事件
                 if ($(Table.config.importbtn, toolbar).size() > 0) {
                     require(['upload'], function (Upload) {
-                        console.log($(Table.config.importbtn, toolbar));
                         Upload.api.plupload($(Table.config.importbtn, toolbar), function (data, ret) {
                             Fast.api.ajax({
                                 url: options.extend.import_url,
@@ -12557,7 +12556,7 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator'], function ($, undef
                             that.holdSubmit(false);
                             submitBtn.removeClass("disabled");
                             if (typeof success === 'function') {
-                                if (!success.call($(this), data, ret)) {
+                                if (false === success.call($(this), data, ret)) {
                                     return false;
                                 }
                             }
@@ -12571,7 +12570,7 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator'], function ($, undef
                             that.holdSubmit(false);
                             submitBtn.removeClass("disabled");
                             if (typeof error === 'function') {
-                                if (!error.call($(this), data, ret)) {
+                                if (false === error.call($(this), data, ret)) {
                                     return false;
                                 }
                             }
@@ -12728,7 +12727,7 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator'], function ($, undef
                 if (form.size() === 0)
                     return Toastr.error("表单未初始化完成,无法提交");
                 if (typeof submit === 'function') {
-                    if (!submit.call(form)) {
+                    if (false === submit.call(form)) {
                         return false;
                     }
                 }
@@ -12774,7 +12773,7 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator'], function ($, undef
                         }
                     }
                     if (typeof success === 'function') {
-                        if (!success.call(form, data, ret)) {
+                        if (false === success.call(form, data, ret)) {
                             return false;
                         }
                     }
@@ -12783,7 +12782,7 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator'], function ($, undef
                         $("input[name='__token__']", form).val(data.token);
                     }
                     if (typeof error === 'function') {
-                        if (!error.call(form, data, ret)) {
+                        if (false === error.call(form, data, ret)) {
                             return false;
                         }
                     }
diff --git a/public/assets/js/require-form.js b/public/assets/js/require-form.js
index 5c9e04a..3dce566 100755
--- a/public/assets/js/require-form.js
+++ b/public/assets/js/require-form.js
@@ -34,7 +34,7 @@ define(['jquery', 'bootstrap', 'upload', 'validator'], function ($, undefined, U
                             that.holdSubmit(false);
                             submitBtn.removeClass("disabled");
                             if (typeof success === 'function') {
-                                if (!success.call($(this), data, ret)) {
+                                if (false === success.call($(this), data, ret)) {
                                     return false;
                                 }
                             }
@@ -48,7 +48,7 @@ define(['jquery', 'bootstrap', 'upload', 'validator'], function ($, undefined, U
                             that.holdSubmit(false);
                             submitBtn.removeClass("disabled");
                             if (typeof error === 'function') {
-                                if (!error.call($(this), data, ret)) {
+                                if (false === error.call($(this), data, ret)) {
                                     return false;
                                 }
                             }
@@ -205,7 +205,7 @@ define(['jquery', 'bootstrap', 'upload', 'validator'], function ($, undefined, U
                 if (form.size() === 0)
                     return Toastr.error("表单未初始化完成,无法提交");
                 if (typeof submit === 'function') {
-                    if (!submit.call(form)) {
+                    if (false === submit.call(form)) {
                         return false;
                     }
                 }
@@ -251,7 +251,7 @@ define(['jquery', 'bootstrap', 'upload', 'validator'], function ($, undefined, U
                         }
                     }
                     if (typeof success === 'function') {
-                        if (!success.call(form, data, ret)) {
+                        if (false === success.call(form, data, ret)) {
                             return false;
                         }
                     }
@@ -260,7 +260,7 @@ define(['jquery', 'bootstrap', 'upload', 'validator'], function ($, undefined, U
                         $("input[name='__token__']", form).val(data.token);
                     }
                     if (typeof error === 'function') {
-                        if (!error.call(form, data, ret)) {
+                        if (false === error.call(form, data, ret)) {
                             return false;
                         }
                     }
diff --git a/public/assets/js/require-table.js b/public/assets/js/require-table.js
index 599042d..fc14db4 100644
--- a/public/assets/js/require-table.js
+++ b/public/assets/js/require-table.js
@@ -161,7 +161,6 @@ define(['jquery', 'bootstrap', 'moment', 'moment/locale/zh-cn', 'bootstrap-table
                 // 导入按钮事件
                 if ($(Table.config.importbtn, toolbar).size() > 0) {
                     require(['upload'], function (Upload) {
-                        console.log($(Table.config.importbtn, toolbar));
                         Upload.api.plupload($(Table.config.importbtn, toolbar), function (data, ret) {
                             Fast.api.ajax({
                                 url: options.extend.import_url,
--
libgit2 0.24.0