master
ブランチ master
LittleBeast / view / admin / cron.maron
3.3 KB、66行 生 Blame 履歴
1{@ include(common/header) @}
2{@ include(admin/nav) @}
3 <h1 class="paragraph">Cron</h1>
4{@ if (!$enabled) @}
5 <p class="paragraph">CRON_ENABLEDが無効です。config.phpでtrueにして、システムのcrontabにcron.phpを追加して下さい(READMEを参照)。</p>
6{@ else @}
7{@ if ($stale) @}
8 <p class="admin-warn">Cron(cron.php)が{{ $tick === null ? 'まだ実行されていません' : '最近実行されていません(前回:'.$tick.')' }}。システムのcrontabに追加して下さい:<code>* * * * * php {{ ROOT }}/cron.php</code></p>
9{@ else @}
10 <p class="paragraph">前回の実行:{{ $tick }}</p>
11{@ endif @}
12{@ if (empty($jobs)) @}
13 <p class="paragraph">ジョブは有りません。</p>
14{@ else @}
15 <div class="admin-scroll">
16 <table class="admin-table">
17 <thead><tr><th>ID</th><th>予定・タスク</th><th>次回</th><th>前回</th><th>エラー</th><th></th></tr></thead>
18 <tbody>
19{@ foreach ($jobs as $j) @}
20 <tr{{{ $j['active'] ? '' : ' class="admin-off"' }}}>
21 <td>{{ $j['id'] }}</td>
22 <td>
23 <form method="post" action="/admin/cron" class="admin-row">
24 <input type="hidden" name="csrf_token" value="{{ $csrf }}" />
25 <input type="hidden" name="id" value="{{ $j['id'] }}" />
26 <input type="text" name="schedule" value="{{ $j['schedule'] }}" size="14" />
27 <input type="text" name="task" value="{{ $j['task'] }}" size="12" list="admin-tasks" />
28 <button name="do" value="edit">変更</button>
29 </form>
30{@ if (!$j['registered']) @}
31 <small class="admin-warn">未登録のタスク</small>
32{@ endif @}
33 </td>
34 <td>{{ $j['next'] }}</td>
35 <td>{{ $j['last'] }}</td>
36 <td>{{ $j['error'] }}</td>
37 <td>
38 <form method="post" action="/admin/cron" class="admin-row">
39 <input type="hidden" name="csrf_token" value="{{ $csrf }}" />
40 <input type="hidden" name="id" value="{{ $j['id'] }}" />
41 <button name="do" value="toggle">{{ $j['active'] ? '無効にする' : '有効にする' }}</button>
42 <button name="do" value="run">今すぐ実行</button>
43 <button name="do" value="delete" class="danger">削除</button>
44 </form>
45 </td>
46 </tr>
47{@ endforeach @}
48 </tbody>
49 </table>
50 </div>
51{@ endif @}
52 <h2 class="paragraph">ジョブを追加</h2>
53 <form method="post" action="/admin/cron" class="admin-row">
54 <input type="hidden" name="csrf_token" value="{{ $csrf }}" />
55 <input type="text" name="schedule" placeholder="*/10 * * * *" required="required" size="14" />
56 <input type="text" name="task" placeholder="タスク" required="required" size="12" list="admin-tasks" />
57 <button name="do" value="add">追加</button>
58 </form>
59 <p class="paragraph"><small>予定は「分 時 日 月 曜日」又は@yearly・@monthly・@weekly・@daily・@hourly。登録されたタスク:{{ empty($tasks) ? '無し' : implode('、', $tasks) }}</small></p>
60 <datalist id="admin-tasks">
61{@ foreach ($tasks as $t) @}
62 <option value="{{ $t }}"></option>
63{@ endforeach @}
64 </datalist>
65{@ endif @}
66{@ include(common/footer) @}