diff --git a/app/Http/Admin/Views/setting/site.volt b/app/Http/Admin/Views/setting/site.volt index 11b91cb5..5067bfc6 100644 --- a/app/Http/Admin/Views/setting/site.volt +++ b/app/Http/Admin/Views/setting/site.volt @@ -31,6 +31,32 @@ +
+
+ +
+ +
+
+
+
+ +
+
+
+
+
+ +
+ +
+
+
+
+ +
+
+
@@ -120,10 +146,11 @@ diff --git a/app/Http/Home/Controllers/ErrorController.php b/app/Http/Home/Controllers/ErrorController.php index a0155342..dfa6f7e1 100644 --- a/app/Http/Home/Controllers/ErrorController.php +++ b/app/Http/Home/Controllers/ErrorController.php @@ -2,6 +2,8 @@ namespace App\Http\Home\Controllers; +use App\Models\User as UserModel; +use App\Services\Auth\Home as HomeAuth; use App\Services\Service as AppService; use App\Traits\Response as ResponseTrait; @@ -11,8 +13,27 @@ use App\Traits\Response as ResponseTrait; class ErrorController extends \Phalcon\Mvc\Controller { + /** + * @var array + */ + protected $siteInfo; + + /** + * @var UserModel + */ + protected $authUser; + use ResponseTrait; + public function initialize() + { + $this->siteInfo = $this->getSiteInfo(); + $this->authUser = $this->getAuthUser(); + + $this->view->setVar('site_info', $this->siteInfo); + $this->view->setVar('auth_user', $this->authUser); + } + /** * @Get("/400", name="home.error.400") */ @@ -82,4 +103,21 @@ class ErrorController extends \Phalcon\Mvc\Controller $this->view->setVar('message', $siteInfo['closed_tips']); } + protected function getSiteInfo() + { + $appService = new AppService(); + + return $appService->getSettings('site'); + } + + protected function getAuthUser() + { + /** + * @var HomeAuth $auth + */ + $auth = $this->getDI()->get('auth'); + + return $auth->getCurrentUser(); + } + } diff --git a/app/Http/Home/Controllers/LayerController.php b/app/Http/Home/Controllers/LayerController.php index 2d15d84b..7a57aacf 100644 --- a/app/Http/Home/Controllers/LayerController.php +++ b/app/Http/Home/Controllers/LayerController.php @@ -4,6 +4,7 @@ namespace App\Http\Home\Controllers; use App\Models\User as UserModel; use App\Services\Auth\Home as HomeAuth; +use App\Services\Service as AppService; use App\Traits\Response as ResponseTrait; use App\Traits\Security as SecurityTrait; use Phalcon\Mvc\Dispatcher; @@ -11,6 +12,11 @@ use Phalcon\Mvc\Dispatcher; class LayerController extends \Phalcon\Mvc\Controller { + /** + * @var array + */ + protected $siteInfo; + /** * @var UserModel */ @@ -33,11 +39,20 @@ class LayerController extends \Phalcon\Mvc\Controller public function initialize() { + $this->siteInfo = $this->getSiteInfo(); $this->authUser = $this->getAuthUser(); + $this->view->setVar('site_info', $this->siteInfo); $this->view->setVar('auth_user', $this->authUser); } + protected function getSiteInfo() + { + $appService = new AppService(); + + return $appService->getSettings('site'); + } + protected function getAuthUser() { /** diff --git a/app/Http/Home/Views/partials/header.volt b/app/Http/Home/Views/partials/header.volt index fbb2232b..8300003c 100644 --- a/app/Http/Home/Views/partials/header.volt +++ b/app/Http/Home/Views/partials/header.volt @@ -1,4 +1,10 @@ - +
    @@ -21,7 +27,7 @@ {% set s_query = request.get('query',['trim','striptags'],'') %} {% set s_url = url({'for':'home.search.index'}) %} -
    +
    • 搜索 diff --git a/app/Http/Home/Views/templates/error.volt b/app/Http/Home/Views/templates/error.volt index 72c38285..97bc86a7 100644 --- a/app/Http/Home/Views/templates/error.volt +++ b/app/Http/Home/Views/templates/error.volt @@ -4,8 +4,12 @@ - 出错啦 - {{ icon_link("favicon.ico") }} + 出错啦 - {{ site_info.title }} + {% if site_info.favicon %} + {{ icon_link(site_info.favicon,false) }} + {% else %} + {{ icon_link('favicon.ico') }} + {% endif %} {{ css_link("lib/layui/css/layui.css") }} {{ css_link("home/css/error.css") }} diff --git a/app/Http/Home/Views/templates/layer.volt b/app/Http/Home/Views/templates/layer.volt index 76533493..2ab29e47 100644 --- a/app/Http/Home/Views/templates/layer.volt +++ b/app/Http/Home/Views/templates/layer.volt @@ -5,8 +5,12 @@ - 酷瓜云课堂 - {{ icon_link('favicon.ico') }} + {{ site_info.title }} + {% if site_info.favicon %} + {{ icon_link(site_info.favicon,false) }} + {% else %} + {{ icon_link('favicon.ico') }} + {% endif %} {{ css_link('lib/layui/css/layui.css') }} {{ css_link('home/css/common.css') }} {% block link_css %}{% endblock %} diff --git a/app/Http/Home/Views/templates/main.volt b/app/Http/Home/Views/templates/main.volt index a7e06fc3..3f9a6253 100644 --- a/app/Http/Home/Views/templates/main.volt +++ b/app/Http/Home/Views/templates/main.volt @@ -8,7 +8,11 @@ {{ seo.getTitle() }} - {{ icon_link('favicon.ico') }} + {% if site_info.favicon %} + {{ icon_link(site_info.favicon,false) }} + {% else %} + {{ icon_link('favicon.ico') }} + {% endif %} {{ css_link('lib/layui/css/layui.css') }} {{ css_link('home/css/common.css') }} {% block link_css %}{% endblock %} diff --git a/app/Library/Utils/FileInfo.php b/app/Library/Utils/FileInfo.php index ac179386..694cb521 100644 --- a/app/Library/Utils/FileInfo.php +++ b/app/Library/Utils/FileInfo.php @@ -77,6 +77,7 @@ class FileInfo 'png' => 'image/png', 'webp' => 'image/webp', 'bmp' => 'image/bmp', + 'ico' => 'image/x-icon', 'tif' => 'image/tiff', 'tiff' => 'image/tiff', 'svg' => 'image/svg+xml', diff --git a/db/migrations/20210105024511_data_202101051130.php b/db/migrations/20210105024511_data_202101051130.php new file mode 100644 index 00000000..40d613b5 --- /dev/null +++ b/db/migrations/20210105024511_data_202101051130.php @@ -0,0 +1,37 @@ + 'site', + 'item_key' => 'logo', + 'item_value' => '', + ], + [ + 'section' => 'site', + 'item_key' => 'favicon', + 'item_value' => '', + ], + ]; + + $this->table('kg_setting')->insert($rows)->save(); + } + + public function down() + { + $this->getQueryBuilder() + ->delete('kg_setting') + ->where(['section' => 'site', 'item_key' => 'logo']) + ->execute(); + + $this->getQueryBuilder() + ->delete('kg_setting') + ->where(['section' => 'site', 'item_key' => 'favicon']) + ->execute(); + } + +} diff --git a/public/static/home/css/common.css b/public/static/home/css/common.css index 30ba9113..012b786f 100644 --- a/public/static/home/css/common.css +++ b/public/static/home/css/common.css @@ -127,8 +127,21 @@ font-size: 12px; } +#header .logo { + top: 0; + left: 0; + position: absolute; + line-height: 60px; +} + .top-nav { - margin-left: 100px; + margin-left: 185px; +} + +#header .user { + top: 0; + right: 0; + position: absolute; } .layer-search input { diff --git a/public/static/logo.png b/public/static/logo.png new file mode 100644 index 00000000..a94ca4b4 Binary files /dev/null and b/public/static/logo.png differ