<?php
/**
 * 插件模型
 * @Copyright (C) 2016 汉潮 All rights reserved.
 * @License http://www.hanchao9999.com
 * @Author xiaoq <xiaoq@570035208.com>
 */
 
namespace Admin\Model;
use Think\Model;
/**
 * 插件模型
 * @date    2016-12-31 11:31:21
 */
class CronModel extends Model {
    /* 自动验证规则 */
    protected $_validate = array(
        array('name', 'checktimes', '间隔时间需不小于10秒', self::MUST_VALIDATE, 'callback', self::MODEL_BOTH),
    );
    /**
     * 文件模型自动完成
     * @var array
     */
    protected $_auto = array(
        array('start_time', 'strtotime', self::MODEL_BOTH,'function'),
    );
    /**
     * 获取计划任务标识列表
     * @param string $cron_dir
     */
    public function load_file($cron_dir){
        if(!$cron_dir)$cron_dir="Cron";
        $dir = new \Common\Vendor\Dir;
        $filelist=$dir->getList(APP_PATH.'/Common/Vendor/'.$cron_dir);
		$dirlist=array_slice($filelist,2);
        foreach($dirlist as $k => $v){
            $item = explode(".",$v);
            $filelists[$item[0]]= $item[0];
        }
        return $filelists;
	}
    /**
     * 检测计划任务的间隔执行时间 不小于10秒
     */
    public function checktimes(){
        $data = I('post.');
        $times = intval($data['execute_time']) * intval($data['interval_time']);
        if($times>9)return true;
        return false;
	}
}