120 lines
5.7 KiB
HTML
120 lines
5.7 KiB
HTML
|
<style type="text/css">
|
|||
|
#schedulepicker {
|
|||
|
padding-top: 7px;
|
|||
|
}
|
|||
|
|
|||
|
#schedulepicker h5 {
|
|||
|
line-height: 30px;
|
|||
|
}
|
|||
|
|
|||
|
#schedulepicker .list-group {
|
|||
|
margin-bottom: 0;
|
|||
|
}
|
|||
|
</style>
|
|||
|
<style data-render="darktheme">
|
|||
|
body.darktheme #schedulepicker pre {
|
|||
|
background-color: #4c4c4c;
|
|||
|
border-color: #262626;
|
|||
|
color: #ccc;
|
|||
|
}
|
|||
|
</style>
|
|||
|
<form id="add-form" class="form-horizontal" role="form" data-toggle="validator" method="POST" action="">
|
|||
|
<div class="form-group">
|
|||
|
<label for="title" class="control-label col-xs-12 col-sm-2">{:__('Title')}:</label>
|
|||
|
<div class="col-xs-12 col-sm-8">
|
|||
|
<input type="text" class="form-control" id="title" name="row[title]" value="" data-rule="required"/>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div class="form-group">
|
|||
|
<label for="type" class="control-label col-xs-12 col-sm-2">{:__('Type')}:</label>
|
|||
|
<div class="col-xs-12 col-sm-8">
|
|||
|
{:build_select('row[type]', $typeList, null, ['class'=>'form-control', 'data-rule'=>'required'])}
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div class="form-group">
|
|||
|
<label for="c-content" class="control-label col-xs-12 col-sm-2">{:__('Content')}:</label>
|
|||
|
<div class="col-xs-12 col-sm-8">
|
|||
|
<textarea name="row[content]" id="c-content" cols="30" rows="5" class="form-control" data-rule="required"></textarea>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div class="form-group">
|
|||
|
<label for="schedule" class="control-label col-xs-12 col-sm-2">{:__('Schedule')}:</label>
|
|||
|
<div class="col-xs-12 col-sm-8">
|
|||
|
<div class="input-group margin-bottom-sm">
|
|||
|
<input type="text" class="form-control" id="schedule" style="font-size:12px;font-family: Verdana;word-spacing:23px;" name="row[schedule]" value="* * * * *" data-rule="required; remote(general/crontab/check_schedule)"/>
|
|||
|
<span class="input-group-btn">
|
|||
|
<a href="https://www.fastadmin.net/store/crontab.html" target="_blank" class="btn btn-default"><i class="fa fa-info-circle"></i> {:__('Crontab rules')}</a>
|
|||
|
</span>
|
|||
|
<span class="msg-box n-right"></span>
|
|||
|
</div>
|
|||
|
<div id="schedulepicker">
|
|||
|
<pre><code>* * * * *
|
|||
|
- - - - -
|
|||
|
| | | | +--- day of week (0 - 7) (Sunday=0 or 7)
|
|||
|
| | | +-------- month (1 - 12)
|
|||
|
| | +------------- day of month (1 - 31)
|
|||
|
| +------------------ hour (0 - 23)
|
|||
|
+----------------------- min (0 - 59)</code></pre>
|
|||
|
|
|||
|
|
|||
|
<pre><code>minute hour day month week
|
|||
|
|
|||
|
minute:表示分钟,可以是0~59的任意整数。
|
|||
|
hour:表示小时,可以是2~23的任意整数
|
|||
|
day:表示日期,可以是1~31的任意整数
|
|||
|
month:表示月份,可以是1~12的任意整数
|
|||
|
week:表示星期几,可以是0~7之间的整数,0或者7表示星期天</code></pre>
|
|||
|
|
|||
|
|
|||
|
<pre><code>星号(*):表示所有可能的值,`* * * * * `表示为每分钟都执行。
|
|||
|
逗号(,):表示一个列表范围,如`1,2,3,5,10 * * * *`表示每天每小时的第一、第二、第三、第五、第十分钟执行。
|
|||
|
中杠(-):表示一个数值范围,如`1-15 * * * *`表示每天每小时的1到15分钟执行。
|
|||
|
正斜线(/):表示间隔频率,如`0 10-12/3 * * *`表示每天的10点到12点间隔3小时执行,`/`也可以配合`*`使用,如:`*/5 * * * * *`表示每隔5分钟执行。</code></pre>
|
|||
|
|
|||
|
<pre><code>
|
|||
|
使用前准备工作
|
|||
|
|
|||
|
Linux下使用crontab -e -u 用户名添加一条记录
|
|||
|
|
|||
|
* * * * * /usr/bin/php /www/yoursite/public/index.php /addons/crontab/autotask/index > /dev/null 2>&1 &</code></pre>
|
|||
|
|
|||
|
<h5>{:__('The next %s times the execution time', '<input type="number" id="pickdays" class="form-control text-center" value="7" style="display: inline-block;width:80px;">')}</h5>
|
|||
|
<ol id="scheduleresult" class="list-group">
|
|||
|
</ol>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div class="form-group">
|
|||
|
<label for="maximums" class="control-label col-xs-12 col-sm-2">{:__('Maximums')}:</label>
|
|||
|
<div class="col-xs-12 col-sm-4">
|
|||
|
<input type="number" class="form-control" id="maximums" name="row[maximums]" value="0" data-rule="required" size="6" data-tip="0表示无限制"/>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div class="form-group">
|
|||
|
<label for="begintime" class="control-label col-xs-12 col-sm-2">{:__('Begin time')}:</label>
|
|||
|
<div class="col-xs-12 col-sm-4">
|
|||
|
<input type="text" class="form-control datetimepicker" id="begintime" name="row[begintime]" value="" data-rule="{:__('Begin time')}:required" size="6"/>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div class="form-group">
|
|||
|
<label for="endtime" class="control-label col-xs-12 col-sm-2">{:__('End time')}:</label>
|
|||
|
<div class="col-xs-12 col-sm-4">
|
|||
|
<input type="text" class="form-control datetimepicker" id="endtime" name="row[endtime]" value="" data-rule="{:__('End time')}:required;match(gte, row[begintime], datetime)" size="6"/>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div class="form-group">
|
|||
|
<label class="control-label col-xs-12 col-sm-2">{:__('Status')}:</label>
|
|||
|
<div class="col-xs-12 col-sm-8">
|
|||
|
{:build_radios('row[status]', ['normal'=>__('Normal'), 'hidden'=>__('Hidden')])}
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div class="form-group hide layer-footer">
|
|||
|
<label class="control-label col-xs-12 col-sm-2"></label>
|
|||
|
<div class="col-xs-12 col-sm-8">
|
|||
|
<button type="submit" class="btn btn-primary btn-embossed disabled">{:__('OK')}</button>
|
|||
|
<button type="reset" class="btn btn-default btn-embossed">{:__('Reset')}</button>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
|
|||
|
</form>
|