浏览代码

style: use btn-list for buttons

Cat 2 年之前
父节点
当前提交
2f7da88d8a
共有 2 个文件被更改,包括 119 次插入102 次删除
  1. 99 85
      resources/views/tabler/user/index.tpl
  2. 20 17
      src/Command/Job.php

+ 99 - 85
resources/views/tabler/user/index.tpl

@@ -178,14 +178,16 @@
                                                 <p>
                                                     通用订阅(clash):<code>{$getUniversalSub}/clash</code>
                                                 </p>
-                                                <a data-clipboard-text="{$getUniversalSub}/json"
-                                                    class="copy btn btn-primary ms-auto">
-                                                    复制通用订阅(json)
-                                                </a>
-                                                <a data-clipboard-text="{$getUniversalSub}/clash"
-                                                    class="copy btn btn-primary ms-auto">
-                                                    复制通用订阅(clash)
-                                                </a>
+                                                <div class="btn-list justify-content-start">
+                                                    <a data-clipboard-text="{$getUniversalSub}/json"
+                                                        class="copy btn btn-primary">
+                                                        复制通用订阅(json)
+                                                    </a>
+                                                    <a data-clipboard-text="{$getUniversalSub}/clash"
+                                                        class="copy btn btn-primary">
+                                                        复制通用订阅(clash)
+                                                    </a>
+                                                </div>
                                             </div>
                                         </div>
                                         <div class="tab-pane show" id="traditional-sub">
@@ -199,26 +201,28 @@
                                                 <p>
                                                     传统订阅(Trojan):<code>{$getTraditionalSub}?sub=4</code>
                                                 </p>
-                                                <a data-clipboard-text="{$getTraditionalSub}?sub=2"
-                                                    class="copy btn btn-primary ms-auto">
-                                                    复制传统订阅(Shadowsocks)
-                                                </a>
-                                                <a data-clipboard-text="{$getTraditionalSub}?sub=3"
-                                                    class="copy btn btn-primary ms-auto">
-                                                    复制传统订阅(V2Ray)
-                                                </a>
-                                                <a data-clipboard-text="{$getTraditionalSub}?sub=4"
-                                                    class="copy btn btn-primary ms-auto">
-                                                    复制传统订阅(Trojan)
-                                                </a>
-                                                <a href="/clients/v2rayN-Core.zip"
-                                                    class="btn btn-primary ms-auto">
-                                                    下载 v2rayN(Windows)
-                                                </a>
-                                                <a href="/clients/v2rayNG.apk"
-                                                    class="btn btn-primary ms-auto">
-                                                    下载 v2rayNG(Android)
-                                                </a>
+                                                <div class="btn-list justify-content-start">
+                                                    <a data-clipboard-text="{$getTraditionalSub}?sub=2"
+                                                        class="copy btn btn-primary">
+                                                        复制传统订阅(Shadowsocks)
+                                                    </a>
+                                                    <a data-clipboard-text="{$getTraditionalSub}?sub=3"
+                                                        class="copy btn btn-primary">
+                                                        复制传统订阅(V2Ray)
+                                                    </a>
+                                                    <a data-clipboard-text="{$getTraditionalSub}?sub=4"
+                                                        class="copy btn btn-primary">
+                                                        复制传统订阅(Trojan)
+                                                    </a>
+                                                    <a href="/clients/v2rayN-Core.zip"
+                                                        class="btn btn-primary">
+                                                        下载 v2rayN(Windows)
+                                                    </a>
+                                                    <a href="/clients/v2rayNG.apk"
+                                                        class="btn btn-primary">
+                                                        下载 v2rayNG(Android)
+                                                    </a>
+                                                </div>
                                             </div>
                                         </div>
                                         <div class="tab-pane" id="windows">
@@ -226,53 +230,59 @@
                                                 <p>
                                                     适用于 Clash 的订阅:<code>{$getUniversalSub}/clash</code>
                                                 </p>
+                                                <div class="btn-list justify-content-start">
+                                                    <a data-clipboard-text="{$getUniversalSub}/clash"
+                                                        class="copy btn btn-primary">
+                                                        复制 Clash
+                                                    </a>
+                                                    <a href="/clients/Clash-Windows.exe"
+                                                        class="btn btn-primary">
+                                                        下载 Clash for Windows
+                                                    </a>
+                                                    <a href="clash://install-config?url={$getUniversalSub}/clash&name={$config['appName']}"
+                                                        class="btn btn-primary">
+                                                        导入 Clash
+                                                    </a>
+                                                </div>
+                                            </div>
+                                        </div>
+                                        <div class="tab-pane" id="macos">
+                                            <p>
+                                                适用于 Clash 的订阅:<code>{$getUniversalSub}/clash</code>
+                                            </p>
+                                            <div class="btn-list justify-content-start">
                                                 <a data-clipboard-text="{$getUniversalSub}/clash"
-                                                    class="copy btn btn-primary ms-auto">
+                                                    class="copy btn btn-primary">
                                                     复制 Clash
                                                 </a>
-                                                <a href="/clients/Clash-Windows.exe"
-                                                    class="btn btn-primary ms-auto">
+                                                <a href="/clients/Clash-Windows.dmg"
+                                                    class="btn btn-primary">
                                                     下载 Clash for Windows
                                                 </a>
                                                 <a href="clash://install-config?url={$getUniversalSub}/clash&name={$config['appName']}"
-                                                    class="btn btn-primary ms-auto my-2">
+                                                    class="btn btn-primary">
                                                     导入 Clash
                                                 </a>
                                             </div>
                                         </div>
-                                        <div class="tab-pane" id="macos">
-                                            <p>
-                                                适用于 Clash 的订阅:<code>{$getUniversalSub}/clash</code>
-                                            </p>
-                                            <a data-clipboard-text="{$getUniversalSub}/clash"
-                                                class="copy btn btn-primary ms-auto my-2">
-                                                复制 Clash
-                                            </a>
-                                            <a href="/clients/Clash-Windows.dmg"
-                                                class="btn btn-primary ms-auto">
-                                                下载 Clash for Windows
-                                            </a>
-                                            <a href="clash://install-config?url={$getUniversalSub}/clash&name={$config['appName']}"
-                                                class="btn btn-primary ms-auto my-2">
-                                                导入 Clash
-                                            </a>
-                                        </div>
                                         <div class="tab-pane" id="android">
                                             <p>
                                                 适用于 Clash 的订阅:<code>{$getUniversalSub}/clash</code>
                                             </p>
-                                            <a data-clipboard-text="{$getUniversalSub}/clash"
-                                                class="copy btn btn-primary ms-auto">
-                                                复制 Clash
-                                            </a>
-                                            <a href="/clients/Clash-Android.apk"
-                                                class="btn btn-primary ms-auto">
-                                                下载 Clash for Android
-                                            </a>
-                                            <a href="clash://install-config?url={$getUniversalSub}/clash&name={$config['appName']}"
-                                                class="btn btn-primary ms-auto my-2">
-                                                导入 Clash
-                                            </a>
+                                            <div class="btn-list justify-content-start">
+                                                <a data-clipboard-text="{$getUniversalSub}/clash"
+                                                    class="copy btn btn-primary">
+                                                    复制 Clash
+                                                </a>
+                                                <a href="/clients/Clash-Android.apk"
+                                                    class="btn btn-primary">
+                                                    下载 Clash for Android
+                                                </a>
+                                                <a href="clash://install-config?url={$getUniversalSub}/clash&name={$config['appName']}"
+                                                    class="btn btn-primary">
+                                                    导入 Clash
+                                                </a>
+                                            </div>
                                         </div>
                                         <div class="tab-pane" id="ios">
                                             <p>
@@ -285,35 +295,39 @@
                                             <p style="color: red;">
                                                 如若提示无法打开,是因为需要先安装对应 APP,然后才能导入
                                             </p>
-                                            <a href="https://apps.apple.com/us/app/shadowrocket/id932747118"
-                                                class="btn btn-primary ms-auto">
-                                                购买 Shadowrocket
-                                            </a>
-                                            <a data-clipboard-text="{$getUniversalSub}/clash"
-                                                class="copy btn btn-primary ms-auto">
-                                                复制 Shadowrocket
-                                            </a>
-                                            <a href="sub://{base64_encode('{$getUniversalSub}/clash')}"
-                                                class="btn btn-primary ms-auto">
-                                                导入 Shadowrocket
-                                            </a>
+                                            <div class="btn-list justify-content-start">
+                                                <a href="https://apps.apple.com/us/app/shadowrocket/id932747118"
+                                                    class="btn btn-primary">
+                                                    购买 Shadowrocket
+                                                </a>
+                                                <a data-clipboard-text="{$getUniversalSub}/clash"
+                                                    class="copy btn btn-primary">
+                                                    复制 Shadowrocket
+                                                </a>
+                                                <a href="sub://{base64_encode('{$getUniversalSub}/clash')}"
+                                                    class="btn btn-primary">
+                                                    导入 Shadowrocket
+                                                </a>
+                                            </div>
                                         </div>
                                         <div class="tab-pane" id="linux">
                                             <p>
                                                 适用于 Clash 的订阅:<code>{$getUniversalSub}/clash</code>
                                             </p>
-                                            <a data-clipboard-text="{$getUniversalSub}/clash"
-                                                class="copy btn btn-primary ms-auto">
-                                                复制 Clash
-                                            </a>
-                                            <a href="/clients/Clash-Windows.tar.gz"
-                                                class="btn btn-primary ms-auto">
-                                                下载 Clash for Windows
-                                            </a>
-                                            <a href="clash://install-config?url={$getUniversalSub}/clash&name={$config['appName']}"
-                                                class="btn btn-primary ms-auto my-2">
-                                                导入 Clash
-                                            </a>
+                                            <div class="btn-list justify-content-start">
+                                                <a data-clipboard-text="{$getUniversalSub}/clash"
+                                                    class="copy btn btn-primary">
+                                                    复制 Clash
+                                                </a>
+                                                <a href="/clients/Clash-Windows.tar.gz"
+                                                    class="btn btn-primary">
+                                                    下载 Clash for Windows
+                                                </a>
+                                                <a href="clash://install-config?url={$getUniversalSub}/clash&name={$config['appName']}"
+                                                    class="btn btn-primary">
+                                                    导入 Clash
+                                                </a>
+                                            </div>
                                         </div>
                                         <div class="tab-pane" id="config">
                                             <p>您的连接信息:</p>

+ 20 - 17
src/Command/Job.php

@@ -74,7 +74,7 @@ EOL;
         EmailQueue::where('time', '<', \time() - 86400 * 3)->delete();
         PasswordReset::where('expire_time', '<', \time() - 86400 * 3)->delete();
         Ip::where('datetime', '<', \time() - 300)->delete();
-        StreamMedia::where('created_at', '<', \time() - 86400 * 30)->delete();
+        StreamMedia::where('created_at', '<', \time() - 86400 * 3)->delete();
         TelegramSession::where('datetime', '<', \time() - 900)->delete();
         // ------- 清理各表记录
 
@@ -83,6 +83,24 @@ EOL;
         Tools::resetAutoIncrement($db, 'node_online_log');
         // ------- 重置自增 ID
 
+        // ------- 用户每日流量报告
+        $users = User::all();
+
+        $ann_latest_raw = Ann::orderBy('date', 'desc')->first();
+        $ann_latest = $ann_latest_raw->content . '<br><br>';
+
+        $lastday_total = 0;
+
+        foreach ($users as $user) {
+            // 将用户日流量加到统计中
+            $lastday_total += $user->u + $user->d - $user->last_day_t;
+            $user->sendDailyNotification($ann_latest);
+            // 覆盖用户 last_day_t 值,为下一个周期的流量重置做准备
+            $user->last_day_t = $user->u + $user->d;
+            $user->save();
+        }
+        // ------- 用户每日流量报告
+
         // ------- 付费用户流量重置
         // 取消已下架的商品不支持重置的限制,因为目前没有库存限制
         $shopid = Shop::where('content->reset', '<>', 0)->where('content->reset_value', '<>', 0)->where('content->reset_exp', '<>', 0)->pluck('id')->toArray();
@@ -122,14 +140,11 @@ EOL;
         // ------- 付费用户流量重置
 
         // ------- 免费用户流量重置
-        $users = User::all();
         foreach ($users as $user) {
-            /** @var User $user */
-            $user->last_day_t = $user->u + $user->d;
-            $user->save();
             if (\in_array($user->id, $bought_users)) {
                 continue;
             }
+
             if (date('d') === $user->auto_reset_day) {
                 $user->u = 0;
                 $user->d = 0;
@@ -149,18 +164,6 @@ EOL;
         }
         // ------- 免费用户流量重置
 
-        // ------- 用户每日流量报告
-        $ann_latest_raw = Ann::orderBy('date', 'desc')->first();
-        $ann_latest = $ann_latest_raw->content . '<br><br>';
-
-        $lastday_total = 0;
-
-        foreach ($users as $user) {
-            $lastday_total += $user->u + $user->d - $user->last_day_t;
-            $user->sendDailyNotification($ann_latest);
-        }
-        // ------- 用户每日流量报告
-
         // ------- 发送系统运行状况通知
         $sts = new Analytics();
         if (Setting::obtain('telegram_diary')) {