Upload
This commit is contained in:
parent
7aabf94069
commit
1c5cc9bc57
40
app/Http/Controllers/Console/Dashboard.php
Normal file
40
app/Http/Controllers/Console/Dashboard.php
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
<?php
|
||||||
|
/*
|
||||||
|
* Copyright © 2016 - 2023 筱锋xiao_lfeng. All Rights Reserved.
|
||||||
|
* 开发开源遵循 MIT 许可,若需商用请联系开发者
|
||||||
|
* https://www.x-lf.com/
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace App\Http\Controllers\Console;
|
||||||
|
|
||||||
|
use App\Http\Controllers\Controller;
|
||||||
|
use Illuminate\Contracts\Foundation\Application;
|
||||||
|
use Illuminate\Contracts\View\Factory;
|
||||||
|
use Illuminate\Contracts\View\View;
|
||||||
|
use Illuminate\Support\Facades\Auth;
|
||||||
|
use Illuminate\Support\Facades\DB;
|
||||||
|
|
||||||
|
class Dashboard extends Controller
|
||||||
|
{
|
||||||
|
protected array $data;
|
||||||
|
|
||||||
|
public function __construct()
|
||||||
|
{
|
||||||
|
$this->data = [
|
||||||
|
'userName' => Auth::user()->username,
|
||||||
|
'userEmail' => Auth::user()->email,
|
||||||
|
'userLinkId' => Auth::user()->linkId,
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function ViewDashboard(): Factory|View|Application
|
||||||
|
{
|
||||||
|
$dataMarge = [
|
||||||
|
'blogFriendsTotal' => DB::table('blog_link')->whereNotIn('blog_link.blogLocation', [0,7])->count(),
|
||||||
|
'blogFriendsCheck' => DB::table('blog_link')->where('blog_link.blogLocation', 0)->count(),
|
||||||
|
'blogFriendsBest' => DB::table('blog_link')->where('blog_link.blogLocation',2)->count(),
|
||||||
|
];
|
||||||
|
$this->data = array_merge($this->data,$dataMarge);
|
||||||
|
return view('console.dashboard',$this->data);
|
||||||
|
}
|
||||||
|
}
|
@ -56,7 +56,7 @@
|
|||||||
| users are actually retrieved out of your database or other storage
|
| users are actually retrieved out of your database or other storage
|
||||||
| mechanisms used by this application to persist your user's data.
|
| mechanisms used by this application to persist your user's data.
|
||||||
|
|
|
|
||||||
| If you have multiple user tables or models you may configure multiple
|
| If you have multiple user tables or modules you may configure multiple
|
||||||
| sources which represent each model / table. These sources may then
|
| sources which represent each model / table. These sources may then
|
||||||
| be assigned to any extra authentication guards you have defined.
|
| be assigned to any extra authentication guards you have defined.
|
||||||
|
|
|
|
||||||
|
@ -19,7 +19,8 @@ class UpdateUsersTable extends Migration
|
|||||||
public function up()
|
public function up()
|
||||||
{
|
{
|
||||||
Schema::table('users', function (Blueprint $table) {
|
Schema::table('users', function (Blueprint $table) {
|
||||||
$table->rememberToken();
|
$table->rememberToken()->after('password');
|
||||||
|
$table->integer('linkId')->unique()->nullable()->default(null)->after('remember_token');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -0,0 +1,48 @@
|
|||||||
|
<?php
|
||||||
|
/*
|
||||||
|
* Copyright © 2016 - 2023 筱锋xiao_lfeng. All Rights Reserved.
|
||||||
|
* 开发开源遵循 MIT 许可,若需商用请联系开发者
|
||||||
|
* https://www.x-lf.com/
|
||||||
|
*/
|
||||||
|
|
||||||
|
use Illuminate\Database\Migrations\Migration;
|
||||||
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
|
||||||
|
class CreateBlogLinkTable extends Migration
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Run the migrations.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function up()
|
||||||
|
{
|
||||||
|
Schema::create('blog_link', function (Blueprint $table) {
|
||||||
|
$table->id();
|
||||||
|
$table->string('blogName',40);
|
||||||
|
$table->string('blogUrl');
|
||||||
|
$table->string('blogDescription');
|
||||||
|
$table->string('blogOwnEmail',100)->nullable();
|
||||||
|
$table->text('blogIcon');
|
||||||
|
$table->boolean('blogRssJudge')->default(0);
|
||||||
|
$table->text('blogRSS')->nullable();
|
||||||
|
$table->string('blogServerHost')->nullable();
|
||||||
|
$table->boolean('blogAdvJudge')->default(0);
|
||||||
|
$table->boolean('blogSecurityJudge')->default(1);
|
||||||
|
$table->unsignedInteger('blogLocation')->default(0);
|
||||||
|
$table->unsignedInteger('blogSetColor')->default(0);
|
||||||
|
$table->timestamps();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reverse the migrations.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function down()
|
||||||
|
{
|
||||||
|
Schema::dropIfExists('blog_link');
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,37 @@
|
|||||||
|
<?php
|
||||||
|
/*
|
||||||
|
* Copyright © 2016 - 2023 筱锋xiao_lfeng. All Rights Reserved.
|
||||||
|
* 开发开源遵循 MIT 许可,若需商用请联系开发者
|
||||||
|
* https://www.x-lf.com/
|
||||||
|
*/
|
||||||
|
|
||||||
|
use Illuminate\Database\Migrations\Migration;
|
||||||
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
|
||||||
|
class UpdateBlogLinkTable extends Migration
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Run the migrations.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function up()
|
||||||
|
{
|
||||||
|
Schema::table('blog_link', function (Blueprint $table) {
|
||||||
|
$table->boolean('blogAddType')->default(0)->after('blogLocation');
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reverse the migrations.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function down()
|
||||||
|
{
|
||||||
|
Schema::table('blog_link', function (Blueprint $table) {
|
||||||
|
//
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
File diff suppressed because it is too large
Load Diff
2
public/js/jquery.js
vendored
2
public/js/jquery.js
vendored
@ -6822,7 +6822,7 @@ function boxModelAdjustment( elem, dimension, box, isBorderBox, styles, computed
|
|||||||
|
|
||||||
for ( ; i < 4; i += 2 ) {
|
for ( ; i < 4; i += 2 ) {
|
||||||
|
|
||||||
// Both box models exclude margin
|
// Both box modules exclude margin
|
||||||
if ( box === "margin" ) {
|
if ( box === "margin" ) {
|
||||||
delta += jQuery.css( elem, box + cssExpand[ i ], true, styles );
|
delta += jQuery.css( elem, box + cssExpand[ i ], true, styles );
|
||||||
}
|
}
|
||||||
|
@ -4,6 +4,7 @@
|
|||||||
* https://www.x-lf.com/
|
* https://www.x-lf.com/
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@import url("https://npm.akass.cn/bootstrap-icons@1.10.0/font/bootstrap-icons.css");
|
||||||
@tailwind base;
|
@tailwind base;
|
||||||
@tailwind components;
|
@tailwind components;
|
||||||
@tailwind utilities;
|
@tailwind utilities;
|
||||||
|
2
resources/js/jquery.js
vendored
2
resources/js/jquery.js
vendored
@ -6822,7 +6822,7 @@ function boxModelAdjustment( elem, dimension, box, isBorderBox, styles, computed
|
|||||||
|
|
||||||
for ( ; i < 4; i += 2 ) {
|
for ( ; i < 4; i += 2 ) {
|
||||||
|
|
||||||
// Both box models exclude margin
|
// Both box modules exclude margin
|
||||||
if ( box === "margin" ) {
|
if ( box === "margin" ) {
|
||||||
delta += jQuery.css( elem, box + cssExpand[ i ], true, styles );
|
delta += jQuery.css( elem, box + cssExpand[ i ], true, styles );
|
||||||
}
|
}
|
||||||
|
@ -20,186 +20,61 @@ class="inline-flex items-center p-2 mt-2 ml-3 text-sm text-gray-500 rounded-lg s
|
|||||||
</svg>
|
</svg>
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
<aside id="sidebar-multi-level-sidebar"
|
@extends('console.modules.aside')
|
||||||
class="fixed top-0 left-0 z-40 w-64 h-screen transition-transform -translate-x-full sm:translate-x-0"
|
|
||||||
aria-label="Sidebar">
|
|
||||||
<div class="h-full px-3 py-4 overflow-y-auto bg-gray-50 dark:bg-gray-800">
|
|
||||||
<ul class="space-y-2 font-medium">
|
|
||||||
<li>
|
|
||||||
<a href="#"
|
|
||||||
class="flex items-center p-2 text-gray-900 rounded-lg dark:text-white hover:bg-gray-100 dark:hover:bg-gray-700">
|
|
||||||
<svg aria-hidden="true"
|
|
||||||
class="w-6 h-6 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white"
|
|
||||||
fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
|
|
||||||
<path d="M2 10a8 8 0 018-8v8h8a8 8 0 11-16 0z"></path>
|
|
||||||
<path d="M12 2.252A8.014 8.014 0 0117.748 8H12V2.252z"></path>
|
|
||||||
</svg>
|
|
||||||
<span class="ml-3">Dashboard</span>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<button type="button"
|
|
||||||
class="flex items-center w-full p-2 text-gray-900 transition duration-75 rounded-lg group hover:bg-gray-100 dark:text-white dark:hover:bg-gray-700"
|
|
||||||
aria-controls="dropdown-example" data-collapse-toggle="dropdown-example">
|
|
||||||
<svg aria-hidden="true"
|
|
||||||
class="flex-shrink-0 w-6 h-6 text-gray-500 transition duration-75 group-hover:text-gray-900 dark:text-gray-400 dark:group-hover:text-white"
|
|
||||||
fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
|
|
||||||
<path fill-rule="evenodd"
|
|
||||||
d="M10 2a4 4 0 00-4 4v1H5a1 1 0 00-.994.89l-1 9A1 1 0 004 18h12a1 1 0 00.994-1.11l-1-9A1 1 0 0015 7h-1V6a4 4 0 00-4-4zm2 5V6a2 2 0 10-4 0v1h4zm-6 3a1 1 0 112 0 1 1 0 01-2 0zm7-1a1 1 0 100 2 1 1 0 000-2z"
|
|
||||||
clip-rule="evenodd"></path>
|
|
||||||
</svg>
|
|
||||||
<span class="flex-1 ml-3 text-left whitespace-nowrap" sidebar-toggle-item>E-commerce</span>
|
|
||||||
<svg sidebar-toggle-item class="w-6 h-6" fill="currentColor" viewBox="0 0 20 20"
|
|
||||||
xmlns="http://www.w3.org/2000/svg">
|
|
||||||
<path fill-rule="evenodd"
|
|
||||||
d="M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z"
|
|
||||||
clip-rule="evenodd"></path>
|
|
||||||
</svg>
|
|
||||||
</button>
|
|
||||||
<ul id="dropdown-example" class="hidden py-2 space-y-2">
|
|
||||||
<li>
|
|
||||||
<a href="#"
|
|
||||||
class="flex items-center w-full p-2 text-gray-900 transition duration-75 rounded-lg pl-11 group hover:bg-gray-100 dark:text-white dark:hover:bg-gray-700">Products</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href="#"
|
|
||||||
class="flex items-center w-full p-2 text-gray-900 transition duration-75 rounded-lg pl-11 group hover:bg-gray-100 dark:text-white dark:hover:bg-gray-700">Billing</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href="#"
|
|
||||||
class="flex items-center w-full p-2 text-gray-900 transition duration-75 rounded-lg pl-11 group hover:bg-gray-100 dark:text-white dark:hover:bg-gray-700">Invoice</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href="#"
|
|
||||||
class="flex items-center p-2 text-gray-900 rounded-lg dark:text-white hover:bg-gray-100 dark:hover:bg-gray-700">
|
|
||||||
<svg aria-hidden="true"
|
|
||||||
class="flex-shrink-0 w-6 h-6 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white"
|
|
||||||
fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
|
|
||||||
<path
|
|
||||||
d="M5 3a2 2 0 00-2 2v2a2 2 0 002 2h2a2 2 0 002-2V5a2 2 0 00-2-2H5zM5 11a2 2 0 00-2 2v2a2 2 0 002 2h2a2 2 0 002-2v-2a2 2 0 00-2-2H5zM11 5a2 2 0 012-2h2a2 2 0 012 2v2a2 2 0 01-2 2h-2a2 2 0 01-2-2V5zM11 13a2 2 0 012-2h2a2 2 0 012 2v2a2 2 0 01-2 2h-2a2 2 0 01-2-2v-2z"></path>
|
|
||||||
</svg>
|
|
||||||
<span class="flex-1 ml-3 whitespace-nowrap">Kanban</span>
|
|
||||||
<span
|
|
||||||
class="inline-flex items-center justify-center px-2 ml-3 text-sm font-medium text-gray-800 bg-gray-200 rounded-full dark:bg-gray-700 dark:text-gray-300">Pro</span>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href="#"
|
|
||||||
class="flex items-center p-2 text-gray-900 rounded-lg dark:text-white hover:bg-gray-100 dark:hover:bg-gray-700">
|
|
||||||
<svg aria-hidden="true"
|
|
||||||
class="flex-shrink-0 w-6 h-6 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white"
|
|
||||||
fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
|
|
||||||
<path
|
|
||||||
d="M8.707 7.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l2-2a1 1 0 00-1.414-1.414L11 7.586V3a1 1 0 10-2 0v4.586l-.293-.293z"></path>
|
|
||||||
<path
|
|
||||||
d="M3 5a2 2 0 012-2h1a1 1 0 010 2H5v7h2l1 2h4l1-2h2V5h-1a1 1 0 110-2h1a2 2 0 012 2v10a2 2 0 01-2 2H5a2 2 0 01-2-2V5z"></path>
|
|
||||||
</svg>
|
|
||||||
<span class="flex-1 ml-3 whitespace-nowrap">Inbox</span>
|
|
||||||
<span
|
|
||||||
class="inline-flex items-center justify-center w-3 h-3 p-3 ml-3 text-sm font-medium text-blue-800 bg-blue-100 rounded-full dark:bg-blue-900 dark:text-blue-300">3</span>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href="#"
|
|
||||||
class="flex items-center p-2 text-gray-900 rounded-lg dark:text-white hover:bg-gray-100 dark:hover:bg-gray-700">
|
|
||||||
<svg aria-hidden="true"
|
|
||||||
class="flex-shrink-0 w-6 h-6 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white"
|
|
||||||
fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
|
|
||||||
<path fill-rule="evenodd" d="M10 9a3 3 0 100-6 3 3 0 000 6zm-7 9a7 7 0 1114 0H3z"
|
|
||||||
clip-rule="evenodd"></path>
|
|
||||||
</svg>
|
|
||||||
<span class="flex-1 ml-3 whitespace-nowrap">Users</span>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href="#"
|
|
||||||
class="flex items-center p-2 text-gray-900 rounded-lg dark:text-white hover:bg-gray-100 dark:hover:bg-gray-700">
|
|
||||||
<svg aria-hidden="true"
|
|
||||||
class="flex-shrink-0 w-6 h-6 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white"
|
|
||||||
fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
|
|
||||||
<path fill-rule="evenodd"
|
|
||||||
d="M10 2a4 4 0 00-4 4v1H5a1 1 0 00-.994.89l-1 9A1 1 0 004 18h12a1 1 0 00.994-1.11l-1-9A1 1 0 0015 7h-1V6a4 4 0 00-4-4zm2 5V6a2 2 0 10-4 0v1h4zm-6 3a1 1 0 112 0 1 1 0 01-2 0zm7-1a1 1 0 100 2 1 1 0 000-2z"
|
|
||||||
clip-rule="evenodd"></path>
|
|
||||||
</svg>
|
|
||||||
<span class="flex-1 ml-3 whitespace-nowrap">Products</span>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href="#"
|
|
||||||
class="flex items-center p-2 text-gray-900 rounded-lg dark:text-white hover:bg-gray-100 dark:hover:bg-gray-700">
|
|
||||||
<svg aria-hidden="true"
|
|
||||||
class="flex-shrink-0 w-6 h-6 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white"
|
|
||||||
fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
|
|
||||||
<path fill-rule="evenodd"
|
|
||||||
d="M3 3a1 1 0 00-1 1v12a1 1 0 102 0V4a1 1 0 00-1-1zm10.293 9.293a1 1 0 001.414 1.414l3-3a1 1 0 000-1.414l-3-3a1 1 0 10-1.414 1.414L14.586 9H7a1 1 0 100 2h7.586l-1.293 1.293z"
|
|
||||||
clip-rule="evenodd"></path>
|
|
||||||
</svg>
|
|
||||||
<span class="flex-1 ml-3 whitespace-nowrap">Sign In</span>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a href="#"
|
|
||||||
class="flex items-center p-2 text-gray-900 rounded-lg dark:text-white hover:bg-gray-100 dark:hover:bg-gray-700">
|
|
||||||
<svg aria-hidden="true"
|
|
||||||
class="flex-shrink-0 w-6 h-6 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white"
|
|
||||||
fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
|
|
||||||
<path fill-rule="evenodd"
|
|
||||||
d="M5 4a3 3 0 00-3 3v6a3 3 0 003 3h10a3 3 0 003-3V7a3 3 0 00-3-3H5zm-1 9v-1h5v2H5a1 1 0 01-1-1zm7 1h4a1 1 0 001-1v-1h-5v2zm0-4h5V8h-5v2zM9 8H4v2h5V8z"
|
|
||||||
clip-rule="evenodd"></path>
|
|
||||||
</svg>
|
|
||||||
<span class="flex-1 ml-3 whitespace-nowrap">Sign Up</span>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</aside>
|
|
||||||
|
|
||||||
<div class="p-4 sm:ml-64">
|
<div class="p-4 sm:ml-64">
|
||||||
<div class="p-4 border-2 border-gray-200 border-dashed rounded-lg dark:border-gray-700">
|
<div class="p-4 border-gray-200 border-dashed rounded-lg dark:border-gray-700">
|
||||||
|
<div class="grid grid-cols-1 gap-4 mb-4">
|
||||||
|
<div class="text-2xl text-gray-400 dark:text-gray-500"><i class="bi bi-person"></i> 个人信息</div>
|
||||||
|
</div>
|
||||||
|
<div class="flex h-48 mb-4 rounded bg-gray-50 dark:bg-gray-800 shadow">
|
||||||
|
<p class="text-2xl text-gray-400 dark:text-gray-500 m-5"><i class="bi bi-emoji-smile"></i> 你好:<b class="text-black dark:text-white">{{ $userName ?? '' }}</b></p>
|
||||||
|
</div>
|
||||||
|
<div class="grid grid-cols-1 gap-4 mb-4">
|
||||||
|
<div class="text-2xl text-gray-400 dark:text-gray-500"><i class="bi bi-link-45deg"></i> 友链概况</div>
|
||||||
|
</div>
|
||||||
<div class="grid grid-cols-3 gap-4 mb-4">
|
<div class="grid grid-cols-3 gap-4 mb-4">
|
||||||
<div class="flex items-center justify-center h-24 rounded bg-gray-50 dark:bg-gray-800">
|
<div class="flex items-center justify-center h-24 rounded bg-gray-50 dark:bg-gray-800 shadow">
|
||||||
<p class="text-2xl text-gray-400 dark:text-gray-500">+</p>
|
<p class="text-2xl text-gray-400 dark:text-gray-500"><i class="bi bi-person-check"></i> 当前友链 <b class="text-black dark:text-white">{{ $blogFriendsTotal }}</b> 条</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center justify-center h-24 rounded bg-gray-50 dark:bg-gray-800">
|
<div class="flex items-center justify-center h-24 rounded bg-gray-50 dark:bg-gray-800 shadow">
|
||||||
<p class="text-2xl text-gray-400 dark:text-gray-500">+</p>
|
<p class="text-2xl text-gray-400 dark:text-gray-500"><i class="bi bi-person-check-fill"></i> 待审友链 <b class="text-black dark:text-white">{{ $blogFriendsCheck }}</b> 条</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center justify-center h-24 rounded bg-gray-50 dark:bg-gray-800">
|
<div class="flex items-center justify-center h-24 rounded bg-gray-50 dark:bg-gray-800 shadow">
|
||||||
<p class="text-2xl text-gray-400 dark:text-gray-500">+</p>
|
<p class="text-2xl text-gray-400 dark:text-gray-500"><i class="bi bi-person-hearts"></i> 超级友链 <b class="text-black dark:text-white">{{ $blogFriendsBest }}</b> 条</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center justify-center h-48 mb-4 rounded bg-gray-50 dark:bg-gray-800">
|
<div class="grid grid-cols-1 gap-4 mb-4">
|
||||||
<p class="text-2xl text-gray-400 dark:text-gray-500">+</p>
|
<div class="text-2xl text-gray-400 dark:text-gray-500"><i class="bi bi-link-45deg"></i> 赞助概况</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="grid grid-cols-2 gap-4 mb-4">
|
<div class="grid grid-cols-2 gap-4 mb-4">
|
||||||
<div class="flex items-center justify-center rounded bg-gray-50 h-28 dark:bg-gray-800">
|
<div class="flex items-center justify-center rounded bg-gray-50 h-28 dark:bg-gray-800 shadow">
|
||||||
<p class="text-2xl text-gray-400 dark:text-gray-500">+</p>
|
<p class="text-2xl text-gray-400 dark:text-gray-500">+</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center justify-center rounded bg-gray-50 h-28 dark:bg-gray-800">
|
<div class="flex items-center justify-center rounded bg-gray-50 h-28 dark:bg-gray-800 shadow">
|
||||||
<p class="text-2xl text-gray-400 dark:text-gray-500">+</p>
|
<p class="text-2xl text-gray-400 dark:text-gray-500">+</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center justify-center rounded bg-gray-50 h-28 dark:bg-gray-800">
|
<div class="flex items-center justify-center rounded bg-gray-50 h-28 dark:bg-gray-800 shadow">
|
||||||
<p class="text-2xl text-gray-400 dark:text-gray-500">+</p>
|
<p class="text-2xl text-gray-400 dark:text-gray-500">+</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center justify-center rounded bg-gray-50 h-28 dark:bg-gray-800">
|
<div class="flex items-center justify-center rounded bg-gray-50 h-28 dark:bg-gray-800 shadow">
|
||||||
<p class="text-2xl text-gray-400 dark:text-gray-500">+</p>
|
<p class="text-2xl text-gray-400 dark:text-gray-500">+</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center justify-center h-48 mb-4 rounded bg-gray-50 dark:bg-gray-800">
|
<div class="flex items-center justify-center h-48 mb-4 rounded bg-gray-50 dark:bg-gray-800 shadow">
|
||||||
<p class="text-2xl text-gray-400 dark:text-gray-500">+</p>
|
<p class="text-2xl text-gray-400 dark:text-gray-500">+</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="grid grid-cols-2 gap-4">
|
<div class="grid grid-cols-2 gap-4">
|
||||||
<div class="flex items-center justify-center rounded bg-gray-50 h-28 dark:bg-gray-800">
|
<div class="flex items-center justify-center rounded bg-gray-50 h-28 dark:bg-gray-800 shadow">
|
||||||
<p class="text-2xl text-gray-400 dark:text-gray-500">+</p>
|
<p class="text-2xl text-gray-400 dark:text-gray-500">+</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center justify-center rounded bg-gray-50 h-28 dark:bg-gray-800">
|
<div class="flex items-center justify-center rounded bg-gray-50 h-28 dark:bg-gray-800 shadow">
|
||||||
<p class="text-2xl text-gray-400 dark:text-gray-500">+</p>
|
<p class="text-2xl text-gray-400 dark:text-gray-500">+</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center justify-center rounded bg-gray-50 h-28 dark:bg-gray-800">
|
<div class="flex items-center justify-center rounded bg-gray-50 h-28 dark:bg-gray-800 shadow">
|
||||||
<p class="text-2xl text-gray-400 dark:text-gray-500">+</p>
|
<p class="text-2xl text-gray-400 dark:text-gray-500">+</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center justify-center rounded bg-gray-50 h-28 dark:bg-gray-800">
|
<div class="flex items-center justify-center rounded bg-gray-50 h-28 dark:bg-gray-800 shadow">
|
||||||
<p class="text-2xl text-gray-400 dark:text-gray-500">+</p>
|
<p class="text-2xl text-gray-400 dark:text-gray-500">+</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -209,6 +84,5 @@ class="flex-shrink-0 w-6 h-6 text-gray-500 transition duration-75 dark:text-gray
|
|||||||
</body>
|
</body>
|
||||||
|
|
||||||
<script src="{{ asset('js/app.js') }}"></script>
|
<script src="{{ asset('js/app.js') }}"></script>
|
||||||
<script src="{{ asset('js/flowbite.js') }}"></script>
|
|
||||||
<script src="{{ asset('js/jquery.js') }}"></script>
|
<script src="{{ asset('js/jquery.js') }}"></script>
|
||||||
</html>
|
</html>
|
||||||
|
98
resources/views/console/modules/aside.blade.php
Normal file
98
resources/views/console/modules/aside.blade.php
Normal file
@ -0,0 +1,98 @@
|
|||||||
|
<aside id="sidebar-multi-level-sidebar"
|
||||||
|
class="fixed top-0 left-0 z-40 w-64 h-screen transition-transform -translate-x-full sm:translate-x-0"
|
||||||
|
aria-label="Sidebar">
|
||||||
|
<div class="h-full px-3 py-4 overflow-y-auto bg-gray-50 dark:bg-gray-800">
|
||||||
|
<ul class="space-y-2 font-medium">
|
||||||
|
<li>
|
||||||
|
<a href="#"
|
||||||
|
class="flex items-center p-2 text-gray-900 rounded-lg dark:text-white hover:bg-gray-100 dark:hover:bg-gray-700">
|
||||||
|
<i class="bi bi-house"></i>
|
||||||
|
<span class="ml-3">返回主页</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="#"
|
||||||
|
class="flex items-center p-2 text-gray-900 rounded-lg dark:text-white hover:bg-gray-100 dark:hover:bg-gray-700">
|
||||||
|
<i class="bi bi-layout-sidebar-inset"></i>
|
||||||
|
<span class="ml-3">概况</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<button type="button"
|
||||||
|
class="flex items-center w-full p-2 text-gray-900 transition duration-75 rounded-lg group hover:bg-gray-100 dark:text-white dark:hover:bg-gray-700"
|
||||||
|
aria-controls="dropdown-example" data-collapse-toggle="dropdown-example">
|
||||||
|
<i class="bi bi-person-check"></i>
|
||||||
|
<span class="flex-1 ml-3 text-left whitespace-nowrap" sidebar-toggle-item>友链管理</span>
|
||||||
|
<i class="bi bi-caret-down-fill"></i>
|
||||||
|
</button>
|
||||||
|
<ul id="dropdown-example" class="hidden py-2 space-y-2">
|
||||||
|
<li>
|
||||||
|
<a href="#"
|
||||||
|
class="flex items-center w-full p-2 text-gray-900 transition duration-75 rounded-lg pl-11 group hover:bg-gray-100 dark:text-white dark:hover:bg-gray-700">Products</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="#"
|
||||||
|
class="flex items-center w-full p-2 text-gray-900 transition duration-75 rounded-lg pl-11 group hover:bg-gray-100 dark:text-white dark:hover:bg-gray-700">Billing</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="#"
|
||||||
|
class="flex items-center w-full p-2 text-gray-900 transition duration-75 rounded-lg pl-11 group hover:bg-gray-100 dark:text-white dark:hover:bg-gray-700">Invoice</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="#"
|
||||||
|
class="flex items-center p-2 text-gray-900 rounded-lg dark:text-white hover:bg-gray-100 dark:hover:bg-gray-700">
|
||||||
|
<i class="bi bi-piggy-bank"></i>
|
||||||
|
<span class="flex-1 ml-3 whitespace-nowrap">赞助管理</span>
|
||||||
|
<span
|
||||||
|
class="inline-flex items-center justify-center px-2 ml-3 text-sm font-medium text-gray-800 bg-gray-200 rounded-full dark:bg-gray-700 dark:text-gray-300">Pro</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="#"
|
||||||
|
class="flex items-center p-2 text-gray-900 rounded-lg dark:text-white hover:bg-gray-100 dark:hover:bg-gray-700">
|
||||||
|
<svg aria-hidden="true"
|
||||||
|
class="flex-shrink-0 w-6 h-6 text-gray-500 transition duration-75 dark:text-gray-400 group-hover:text-gray-900 dark:group-hover:text-white"
|
||||||
|
fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path
|
||||||
|
d="M8.707 7.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l2-2a1 1 0 00-1.414-1.414L11 7.586V3a1 1 0 10-2 0v4.586l-.293-.293z"></path>
|
||||||
|
<path
|
||||||
|
d="M3 5a2 2 0 012-2h1a1 1 0 010 2H5v7h2l1 2h4l1-2h2V5h-1a1 1 0 110-2h1a2 2 0 012 2v10a2 2 0 01-2 2H5a2 2 0 01-2-2V5z"></path>
|
||||||
|
</svg>
|
||||||
|
<span class="flex-1 ml-3 whitespace-nowrap">Inbox</span>
|
||||||
|
<span
|
||||||
|
class="inline-flex items-center justify-center w-3 h-3 p-3 ml-3 text-sm font-medium text-blue-800 bg-blue-100 rounded-full dark:bg-blue-900 dark:text-blue-300">3</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="#"
|
||||||
|
class="flex items-center p-2 text-gray-900 rounded-lg dark:text-white hover:bg-gray-100 dark:hover:bg-gray-700">
|
||||||
|
<i class="bi bi-card-list"></i>
|
||||||
|
<span class="flex-1 ml-3 whitespace-nowrap">主页设置</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="#"
|
||||||
|
class="flex items-center p-2 text-gray-900 rounded-lg dark:text-white hover:bg-gray-100 dark:hover:bg-gray-700">
|
||||||
|
<i class="bi bi-person-vcard"></i>
|
||||||
|
<span class="flex-1 ml-3 whitespace-nowrap">账户管理</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="#"
|
||||||
|
class="flex items-center p-2 text-gray-900 rounded-lg dark:text-white hover:bg-gray-100 dark:hover:bg-gray-700">
|
||||||
|
<i class="bi bi-gear-fill"></i>
|
||||||
|
<span class="flex-1 ml-3 whitespace-nowrap">系统设置</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="{{ route('logout') }}"
|
||||||
|
class="flex items-center p-2 text-gray-900 rounded-lg dark:text-white hover:bg-gray-100 dark:hover:bg-gray-700">
|
||||||
|
<i class="bi bi-box-arrow-left"></i>
|
||||||
|
<span class="flex-1 ml-3 whitespace-nowrap">登出</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</aside>
|
@ -5,6 +5,7 @@
|
|||||||
* https://www.x-lf.com/
|
* https://www.x-lf.com/
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
use App\Http\Controllers\Console\Dashboard;
|
||||||
use Illuminate\Support\Facades\Auth;
|
use Illuminate\Support\Facades\Auth;
|
||||||
use Illuminate\Support\Facades\Response;
|
use Illuminate\Support\Facades\Response;
|
||||||
use Illuminate\Support\Facades\Route;
|
use Illuminate\Support\Facades\Route;
|
||||||
@ -25,9 +26,7 @@
|
|||||||
})->name('home');
|
})->name('home');
|
||||||
|
|
||||||
Route::prefix('console')->middleware('auth')->group(function () {
|
Route::prefix('console')->middleware('auth')->group(function () {
|
||||||
Route::get('dashboard', function () {
|
Route::get('dashboard', [Dashboard::class,'ViewDashboard'])->name('console.dashboard');
|
||||||
return view('console.dashboard');
|
|
||||||
})->name('console.dashboard');
|
|
||||||
});
|
});
|
||||||
|
|
||||||
Route::prefix('auth')->group(function () {
|
Route::prefix('auth')->group(function () {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user