get('/tools/set_invisible_for_expired_jobs', function(){ $jobs_mapper = new JobsMapper($this->get(PDO::class)); $jobs_mapper->setExpiredJobAsInvisible(); }); $app->get('/tools/email_notify_ready_expired_jobs_to_owner', function(){ $IS_DEBUG = false; if(!$IS_DEBUG and $_SERVER['REMOTE_ADDR']!==$_SERVER['SERVER_ADDR']){ die('---'); } $jobs_mapper = new JobsMapper($this->get(PDO::class)); $user_mapper = new UserMapper($this->get(PDO::class)); $ary_jobs = $jobs_mapper->getReadyExpiredJobs(NOTIFY_READY_EXPIRED_JOB_AFTER_DAYS); if($IS_DEBUG){ echo NOTIFY_READY_EXPIRED_JOB_AFTER_DAYS.'
'; foreach($ary_jobs as$v){ echo $v->getId() . '@' . $v->getDateExpired().'
'; } exit();#debug } send_ready_expired_job_to_owner_email($ary_jobs, $user_mapper); echo'Done'; }); $app->get('/tools/email_notify_expired_jobs_to_owner', function(){ if($_SERVER['REMOTE_ADDR']!==$_SERVER['SERVER_ADDR']){ die('---'); } # get "recently" expired jobs $jobs_mapper = new JobsMapper($this->get(PDO::class)); $jobhistory_mapper = new JobHIstoryMapper($this->get(PDO::class)); $ary_jobs = $jobs_mapper->getRecentlyExpiredJobs(1); # send notify_email to jobs owner $user_mapper = new UserMapper($this->get(PDO::class)); foreach($ary_jobs as$job){ $user_id = $job->get_owener_id(); $user = $user_mapper->getUserById($user_id); $user_email = $user->getEmail(); send_notify_expired_jobs_to_owner_email($user_email, $job, $jobhistory_mapper); $jobs_mapper->updateSysAutoEmailNotify4Expired($job->getId()); echo'updateSysAutoEmailNotify4Expired='.$job->getId(); var_dump($job->getId()); } }); $app->get('/tools/jobs_html', function ($request, $response, $args) { $sql = get_job_sql_query(); $Paginator = new Paginator($this->get(PDO::class), $sql); $limit = 999999;# ( isset( $params['limit'] ) ) ? $params['limit']+0 : 5; $page = 1; #( isset( $params['page'] ) ) ? $params['page']+0 : 1; $links = 1; #( isset( $params['links'] ) ) ? $params['links']+0 : 7; $results = $Paginator->getData( $limit, $page, $links, "JobsEntity" ); $jobs = $results->data; $response = $this->get(View::class)->render($response, TOOLS_VIEW_PATH."jobs_html.phtml", [ 'jobs'=>$jobs, 'debug'=>get_job_sql_query(), 'path'=>$request->getUri()->getPath(), 'url'=>$request->getUri()->getQuery(), 'base_url'=>$request->getUri()->getScheme() . '://' .$request->getUri()->getHost()]); return $response; }); $app->post('/tools/jobs_html', function ($request, $response, $args) { $ary_postdata = $request->getParsedBody(); $jobs_mapper = new JobsMapper($this->get(PDO::class)); $jobs = $jobs_mapper->getJobsByIds($ary_postdata['jobs']); $response = $this->get(View::class)->render($response, TOOLS_VIEW_PATH."jobs_html.phtml", [ 'is_postback'=>true, 'jobs'=>$jobs, 'path'=>$request->getUri()->getPath(), 'url'=>$request->getUri()->getQuery(), 'base_url'=>$request->getUri()->getScheme() . '://' .$request->getUri()->getHost()]); return $response; });