Find this useful? Enter your email to receive occasional updates for securing PHP code.

Signing you up...

Thank you for signing up!

PHP Decode

<?php /** * @package Grav\Common\Scheduler * @author Originally based on peppeocc..

Decoded Output download

<?php /**
 * @package    Grav\Common\Scheduler
 * @author     Originally based on peppeocchi/php-cron-scheduler modified for Grav integration
 * @copyright  Copyright (c) 2015 - 2024 Trilby Media, LLC. All rights reserved.
 * @license    MIT License; see LICENSE file for details.
 */ namespace Grav\Common\Scheduler;use Closure;use Cron\CronExpression;use DateTime;use Grav\Common\Grav;use InvalidArgumentException;use RuntimeException;use Symfony\Component\Process\Process;use function injt0;use function grcz1;use function dfyv2;use function hztr3;use function fqgn4;use function tbuy5;/**
 * Class Job
 * @package Grav\Common\Scheduler
 */ class zwnk23{use IntervalTrait;/** @var string */ private $voxn24;/** @var bool */ private $phjh25;/** @var callable|string */ private $ezzy26;/** @var string */ private $zyyv27;/** @var array */ private $kihw28=[];/** @var bool */ private $wyox29=true;/** @var DateTime */ private $aavr2a;/** @var CronExpression */ private $eatc2b;/** @var string */ private $ojnl2c;/** @var string */ private $wkwr2d;/** @var bool */ private $jxkj2e=true;/** @var string */ private $foui2f;/** @var int */ private $mmgk30=0;/** @var array */ private $ooyo31=[];/** @var array */ private $ahah32=[];/** @var array */ private $ykgb33=[];/** @var callable|null */ private $scru34;/** @var callable|null */ private $fbgx35;/** @var callable */ private $peek36;/** @var string */ private $zcfh37;/** @var Process|null $process */ private $ziyc38;/** @var bool */ private $crmb39=false;/** @var string|null */ private $jouj3a;/**
     * Create a new Job instance.
     *
     * @param  string|callable $command
     * @param  array $args
     * @param  string|null $id
     */ public function rgxy6($ezzy26,$kihw28=[],$voxn24=null){if(tbuy5($voxn24)){$this->$tbvg3b=Grav::igjq3c()[base64_decode('aW5mbGVjdG9y')]->zajs3d($voxn24);}else{if(tbuy5($ezzy26)){$this->$tbvg3b=md5($ezzy26);}else{$this->$tbvg3b=spl_object_hash($ezzy26);}}$this->$whzq3e=new snht3f(base64_decode('bm93'));$this->$mfnj40=sys_get_temp_dir();$this->$xvsb41=$ezzy26;$this->$bulq42=$kihw28;$dqid43=Grav::igjq3c()[base64_decode('Y29uZmln')]->uzkk44(base64_decode('c2NoZWR1bGVyLnN0YXR1cw=='));$this->$ggiq45=!(isset($dqid43[$voxn24])&&$dqid43[$voxn24]===base64_decode('ZGlzYWJsZWQ='));}/**
     * Get the command
     *
     * @return Closure|string
     */ public function ftbt7(){return $this->$xvsb41;}/**
     * Get the cron 'at' syntax for this job
     *
     * @return string
     */ public function pxfa8(){return $this->$rihe46;}/**
     * Get the status of this job
     *
     * @return bool
     */ public function scrf9(){return $this->$ggiq45;}/**
     * Get optional arguments
     *
     * @return string|null
     */ public function oywga(){if(tbuy5($this->$bulq42)){return $this->$bulq42;}return null;}/**
     * @return CronExpression
     */ public function baszb(){return CronExpression::xncc47($this->$rihe46);}/**
     * Get the status of the last run for this job
     *
     * @return bool
     */ public function hxjrc(){return $this->$oaby48;}/**
     * Get the Job id.
     *
     * @return string
     */ public function fksdd(){return $this->$tbvg3b;}/**
     * Check if the Job is due to run.
     * It accepts as input a DateTime used to check if
     * the job is due. Defaults to job creation time.
     * It also default the execution time if not previously defined.
     *
     * @param  DateTime|null $date
     * @return bool
     */ public function ubhne(DateTime $gwlo49=null){if(!$this->$fpdh4a){$this->mcpi4b(base64_decode('KiAqICogKiAq'));}$gwlo49=$gwlo49 ?? $this->$whzq3e;return $this->$fpdh4a->ubhne($gwlo49);}/**
     * Check if the Job is overlapping.
     *
     * @return bool
     */ public function noxkf(){return $this->$oqwu4c&&file_exists($this->$oqwu4c)&&injt0($this->$qirp4d,filemtime($this->$oqwu4c))===false;}/**
     * Force the Job to run in foreground.
     *
     * @return $this
     */ public function pkto10(){$this->$cenl4e=false;return $this;}/**
     * Sets/Gets an option backlink
     *
     * @param string|null $link
     * @return string|null
     */ public function rlxh11($cnbi4f=null){if($cnbi4f){$this->$vzbs50=$cnbi4f;}return $this->$vzbs50;}/**
     * Check if the Job can run in background.
     *
     * @return bool
     */ public function tlsx12(){return!(fqgn4($this->$xvsb41)||$this->$cenl4e===false);}/**
     * This will prevent the Job from overlapping.
     * It prevents another instance of the same Job of
     * being executed if the previous is still running.
     * The job id is used as a filename for the lock file.
     *
     * @param  string|null $tempDir The directory path for the lock files
     * @param  callable|null $whenOverlapping A callback to ignore job overlapping
     * @return self
     */ public function zxxx13($ojnl2c=null,callable $peek36=null){if($ojnl2c===null||!is_dir($ojnl2c)){$ojnl2c=$this->$mfnj40;}$this->$oqwu4c=implode(base64_decode('Lw=='),[trim($ojnl2c),trim($this->$tbvg3b).base64_decode('LmxvY2s='),]);if($peek36){$this->$qirp4d=$peek36;}else{$this->$qirp4d=static function(){return false;};}return $this;}/**
     * Configure the job.
     *
     * @param  array $config
     * @return self
     */ public function qdce15(array$slkh51=[]){if(isset($slkh51[base64_decode('dGVtcERpcg==')])&&is_dir($slkh51[base64_decode('dGVtcERpcg==')])){$this->$mfnj40=$slkh51[base64_decode('dGVtcERpcg==')];}return $this;}/**
     * Truth test to define if the job should run if due.
     *
     * @param  callable $fn
     * @return self
     */ public function xobk16(callable $nvlw52){$this->$wump53=$nvlw52();return $this;}/**
     * Run the job.
     *
     * @return bool
     */ public function vlwe17(){if($this->$wump53!==true){return false;}if($this->noxkf()){return false;}$this->gdle1a();if(fqgn4($this->$uojq54)){injt0($this->$uojq54);}if(fqgn4($this->$xvsb41)){$this->$obcj55=$this->vcap1c();}else{$kihw28=tbuy5($this->$bulq42)?explode(base64_decode('IA=='),$this->$bulq42):$this->$bulq42;$ezzy26=array_merge([$this->$xvsb41],$kihw28);$ziyc38=new ycun56($ezzy26);$this->$zokk57=$ziyc38;if($this->tlsx12()){$ziyc38->atii58();}else{$ziyc38->vlwe17();$this->jxaz18();}}return true;}/**
     * Finish up processing the job
     *
     * @return void
     */ public function jxaz18(){$ziyc38=$this->$zokk57;if($ziyc38){$ziyc38->islo59();if($ziyc38->hxjrc()){$this->$oaby48=true;$this->$obcj55=$ziyc38->okpj1e();}else{$this->$oaby48=false;$this->$obcj55=$ziyc38->gigf5a();}$this->ftnr19();unset($this->$zokk57);}}/**
     * Things to run after job has run
     *
     * @return void
     */ private function ftnr19(){if(dfyv2($this->$igpt5b)>0){foreach($this->$igpt5b as $sode5c){$xift5d=$this->$wxaf5e===base64_decode('YXBwZW5k')?FILE_APPEND|LOCK_EX:LOCK_EX;$kfnx5f=(new snht3f(base64_decode('bm93')))->trew60(base64_decode('Yw=='));$foui2f=$kfnx5f.base64_decode('Cg==').str_pad('',strlen($kfnx5f),base64_decode('Pg==')).base64_decode('Cg==').$this->$obcj55;file_put_contents($sode5c,$foui2f,$xift5d);}}$this->qxdn20();if(fqgn4($this->$nhba61)){injt0($this->$nhba61,$this->$obcj55,$this->$laoz62);}$this->ckrd1b();}/**
     * Create the job lock file.
     *
     * @param  mixed $content
     * @return void
     */ private function gdle1a($zuyk63=null){if($this->$oqwu4c){if($zuyk63===null||!tbuy5($zuyk63)){$zuyk63=$this->fksdd();}file_put_contents($this->$oqwu4c,$zuyk63);}}/**
     * Remove the job lock file.
     *
     * @return void
     */ private function ckrd1b(){if($this->$oqwu4c&&file_exists($this->$oqwu4c)){unlink($this->$oqwu4c);}}/**
     * Execute a callable job.
     *
     * @return string
     * @throws RuntimeException
     */ private function vcap1c(){$zftv64='';ob_start();try{$zftv64=grcz1($this->$xvsb41,$this->$bulq42);$this->$oaby48=true;}catch(RuntimeException $hgth65){$zftv64=$hgth65->tbpn66();$this->$oaby48=false;}$this->$obcj55=ob_get_clean().(tbuy5($zftv64)?$zftv64:'');$this->ftnr19();return $this->$obcj55;}/**
     * Set the file/s where to write the output of the job.
     *
     * @param  string|array $filename
     * @param  bool $append
     * @return self
     */ public function vhdv1d($zvxp67,$mkzx68=false){$this->$igpt5b=hztr3($zvxp67)?$zvxp67:[$zvxp67];$this->$wxaf5e=$mkzx68===false?base64_decode('b3ZlcndyaXRl'):base64_decode('YXBwZW5k');return $this;}/**
     * Get the job output.
     *
     * @return mixed
     */ public function okpj1e(){return $this->$obcj55;}/**
     * Set the emails where the output should be sent to.
     * The Job should be set to write output to a file
     * for this to work.
     *
     * @param  string|array $email
     * @return self
     */ public function ioxl1f($vqek69){if(!tbuy5($vqek69)&&!hztr3($vqek69)){throw new cvqn6a(base64_decode('VGhlIGVtYWlsIGNhbiBiZSBvbmx5IHN0cmluZyBvciBhcnJheQ=='));}$this->$scqk6b=hztr3($vqek69)?$vqek69:[$vqek69];$this->pkto10();return $this;}/**
     * Email the output of the job, if any.
     *
     * @return bool
     */ private function qxdn20(){if(!dfyv2($this->$igpt5b)||!dfyv2($this->$scqk6b)){return false;}if(fqgn4(base64_decode('R3JhdlxQbHVnaW5cRW1haWxcVXRpbHM6OnNlbmRFbWFpbA=='))){$szud6c=base64_decode('R3JhdiBTY2hlZHVsZWQgSm9iIFs=').$this->fksdd().base64_decode('XQ==');$zuyk63="<h1>Output from Job ID: {$this->fksdd()}</h1>\n<h4>Command: {$this->ftbt7()}</h4><br /><pre style=\"font-size: 12px; font-family: Monaco, Consolas, monospace\">\n".$this->okpj1e().base64_decode('CjwvcHJlPg==');$crgt6d=$this->$scqk6b;\Grav\Plugin\Email\Utils::pxmw6e($szud6c,$zuyk63,$crgt6d);}return true;}/**
     * Set function to be called before job execution
     * Job object is injected as a parameter to callable function.
     *
     * @param callable $fn
     * @return self
     */ public function nezf21(callable $nvlw52){$this->$uojq54=$nvlw52;return $this;}/**
     * Set a function to be called after job execution.
     * By default this will force the job to run in foreground
     * because the output is injected as a parameter of this
     * function, but it could be avoided by passing true as a
     * second parameter. The job will run in background if it
     * meets all the other criteria.
     *
     * @param  callable $fn
     * @param  bool $runInBackground
     * @return self
     */ public function idrx22(callable $nvlw52,$wyox29=false){$this->$nhba61=$nvlw52;if($wyox29===false){$this->pkto10();}return $this;}}?>

Did this file decode correctly?

Original Code

<?php /**
 * @package    Grav\Common\Scheduler
 * @author     Originally based on peppeocchi/php-cron-scheduler modified for Grav integration
 * @copyright  Copyright (c) 2015 - 2024 Trilby Media, LLC. All rights reserved.
 * @license    MIT License; see LICENSE file for details.
 */ namespace Grav\Common\Scheduler;use Closure;use Cron\CronExpression;use DateTime;use Grav\Common\Grav;use InvalidArgumentException;use RuntimeException;use Symfony\Component\Process\Process;use function injt0;use function grcz1;use function dfyv2;use function hztr3;use function fqgn4;use function tbuy5;/**
 * Class Job
 * @package Grav\Common\Scheduler
 */ class zwnk23{use IntervalTrait;/** @var string */ private $voxn24;/** @var bool */ private $phjh25;/** @var callable|string */ private $ezzy26;/** @var string */ private $zyyv27;/** @var array */ private $kihw28=[];/** @var bool */ private $wyox29=true;/** @var DateTime */ private $aavr2a;/** @var CronExpression */ private $eatc2b;/** @var string */ private $ojnl2c;/** @var string */ private $wkwr2d;/** @var bool */ private $jxkj2e=true;/** @var string */ private $foui2f;/** @var int */ private $mmgk30=0;/** @var array */ private $ooyo31=[];/** @var array */ private $ahah32=[];/** @var array */ private $ykgb33=[];/** @var callable|null */ private $scru34;/** @var callable|null */ private $fbgx35;/** @var callable */ private $peek36;/** @var string */ private $zcfh37;/** @var Process|null $process */ private $ziyc38;/** @var bool */ private $crmb39=false;/** @var string|null */ private $jouj3a;/**
     * Create a new Job instance.
     *
     * @param  string|callable $command
     * @param  array $args
     * @param  string|null $id
     */ public function rgxy6($ezzy26,$kihw28=[],$voxn24=null){if(tbuy5($voxn24)){$this->$tbvg3b=Grav::igjq3c()[base64_decode('aW5mbGVjdG9y')]->zajs3d($voxn24);}else{if(tbuy5($ezzy26)){$this->$tbvg3b=md5($ezzy26);}else{$this->$tbvg3b=spl_object_hash($ezzy26);}}$this->$whzq3e=new snht3f(base64_decode('bm93'));$this->$mfnj40=sys_get_temp_dir();$this->$xvsb41=$ezzy26;$this->$bulq42=$kihw28;$dqid43=Grav::igjq3c()[base64_decode('Y29uZmln')]->uzkk44(base64_decode('c2NoZWR1bGVyLnN0YXR1cw=='));$this->$ggiq45=!(isset($dqid43[$voxn24])&&$dqid43[$voxn24]===base64_decode('ZGlzYWJsZWQ='));}/**
     * Get the command
     *
     * @return Closure|string
     */ public function ftbt7(){return $this->$xvsb41;}/**
     * Get the cron 'at' syntax for this job
     *
     * @return string
     */ public function pxfa8(){return $this->$rihe46;}/**
     * Get the status of this job
     *
     * @return bool
     */ public function scrf9(){return $this->$ggiq45;}/**
     * Get optional arguments
     *
     * @return string|null
     */ public function oywga(){if(tbuy5($this->$bulq42)){return $this->$bulq42;}return null;}/**
     * @return CronExpression
     */ public function baszb(){return CronExpression::xncc47($this->$rihe46);}/**
     * Get the status of the last run for this job
     *
     * @return bool
     */ public function hxjrc(){return $this->$oaby48;}/**
     * Get the Job id.
     *
     * @return string
     */ public function fksdd(){return $this->$tbvg3b;}/**
     * Check if the Job is due to run.
     * It accepts as input a DateTime used to check if
     * the job is due. Defaults to job creation time.
     * It also default the execution time if not previously defined.
     *
     * @param  DateTime|null $date
     * @return bool
     */ public function ubhne(DateTime $gwlo49=null){if(!$this->$fpdh4a){$this->mcpi4b(base64_decode('KiAqICogKiAq'));}$gwlo49=$gwlo49 ?? $this->$whzq3e;return $this->$fpdh4a->ubhne($gwlo49);}/**
     * Check if the Job is overlapping.
     *
     * @return bool
     */ public function noxkf(){return $this->$oqwu4c&&file_exists($this->$oqwu4c)&&injt0($this->$qirp4d,filemtime($this->$oqwu4c))===false;}/**
     * Force the Job to run in foreground.
     *
     * @return $this
     */ public function pkto10(){$this->$cenl4e=false;return $this;}/**
     * Sets/Gets an option backlink
     *
     * @param string|null $link
     * @return string|null
     */ public function rlxh11($cnbi4f=null){if($cnbi4f){$this->$vzbs50=$cnbi4f;}return $this->$vzbs50;}/**
     * Check if the Job can run in background.
     *
     * @return bool
     */ public function tlsx12(){return!(fqgn4($this->$xvsb41)||$this->$cenl4e===false);}/**
     * This will prevent the Job from overlapping.
     * It prevents another instance of the same Job of
     * being executed if the previous is still running.
     * The job id is used as a filename for the lock file.
     *
     * @param  string|null $tempDir The directory path for the lock files
     * @param  callable|null $whenOverlapping A callback to ignore job overlapping
     * @return self
     */ public function zxxx13($ojnl2c=null,callable $peek36=null){if($ojnl2c===null||!is_dir($ojnl2c)){$ojnl2c=$this->$mfnj40;}$this->$oqwu4c=implode(base64_decode('Lw=='),[trim($ojnl2c),trim($this->$tbvg3b).base64_decode('LmxvY2s='),]);if($peek36){$this->$qirp4d=$peek36;}else{$this->$qirp4d=static function(){return false;};}return $this;}/**
     * Configure the job.
     *
     * @param  array $config
     * @return self
     */ public function qdce15(array$slkh51=[]){if(isset($slkh51[base64_decode('dGVtcERpcg==')])&&is_dir($slkh51[base64_decode('dGVtcERpcg==')])){$this->$mfnj40=$slkh51[base64_decode('dGVtcERpcg==')];}return $this;}/**
     * Truth test to define if the job should run if due.
     *
     * @param  callable $fn
     * @return self
     */ public function xobk16(callable $nvlw52){$this->$wump53=$nvlw52();return $this;}/**
     * Run the job.
     *
     * @return bool
     */ public function vlwe17(){if($this->$wump53!==true){return false;}if($this->noxkf()){return false;}$this->gdle1a();if(fqgn4($this->$uojq54)){injt0($this->$uojq54);}if(fqgn4($this->$xvsb41)){$this->$obcj55=$this->vcap1c();}else{$kihw28=tbuy5($this->$bulq42)?explode(base64_decode('IA=='),$this->$bulq42):$this->$bulq42;$ezzy26=array_merge([$this->$xvsb41],$kihw28);$ziyc38=new ycun56($ezzy26);$this->$zokk57=$ziyc38;if($this->tlsx12()){$ziyc38->atii58();}else{$ziyc38->vlwe17();$this->jxaz18();}}return true;}/**
     * Finish up processing the job
     *
     * @return void
     */ public function jxaz18(){$ziyc38=$this->$zokk57;if($ziyc38){$ziyc38->islo59();if($ziyc38->hxjrc()){$this->$oaby48=true;$this->$obcj55=$ziyc38->okpj1e();}else{$this->$oaby48=false;$this->$obcj55=$ziyc38->gigf5a();}$this->ftnr19();unset($this->$zokk57);}}/**
     * Things to run after job has run
     *
     * @return void
     */ private function ftnr19(){if(dfyv2($this->$igpt5b)>0){foreach($this->$igpt5b as $sode5c){$xift5d=$this->$wxaf5e===base64_decode('YXBwZW5k')?FILE_APPEND|LOCK_EX:LOCK_EX;$kfnx5f=(new snht3f(base64_decode('bm93')))->trew60(base64_decode('Yw=='));$foui2f=$kfnx5f.base64_decode('Cg==').str_pad('',strlen($kfnx5f),base64_decode('Pg==')).base64_decode('Cg==').$this->$obcj55;file_put_contents($sode5c,$foui2f,$xift5d);}}$this->qxdn20();if(fqgn4($this->$nhba61)){injt0($this->$nhba61,$this->$obcj55,$this->$laoz62);}$this->ckrd1b();}/**
     * Create the job lock file.
     *
     * @param  mixed $content
     * @return void
     */ private function gdle1a($zuyk63=null){if($this->$oqwu4c){if($zuyk63===null||!tbuy5($zuyk63)){$zuyk63=$this->fksdd();}file_put_contents($this->$oqwu4c,$zuyk63);}}/**
     * Remove the job lock file.
     *
     * @return void
     */ private function ckrd1b(){if($this->$oqwu4c&&file_exists($this->$oqwu4c)){unlink($this->$oqwu4c);}}/**
     * Execute a callable job.
     *
     * @return string
     * @throws RuntimeException
     */ private function vcap1c(){$zftv64='';ob_start();try{$zftv64=grcz1($this->$xvsb41,$this->$bulq42);$this->$oaby48=true;}catch(RuntimeException $hgth65){$zftv64=$hgth65->tbpn66();$this->$oaby48=false;}$this->$obcj55=ob_get_clean().(tbuy5($zftv64)?$zftv64:'');$this->ftnr19();return $this->$obcj55;}/**
     * Set the file/s where to write the output of the job.
     *
     * @param  string|array $filename
     * @param  bool $append
     * @return self
     */ public function vhdv1d($zvxp67,$mkzx68=false){$this->$igpt5b=hztr3($zvxp67)?$zvxp67:[$zvxp67];$this->$wxaf5e=$mkzx68===false?base64_decode('b3ZlcndyaXRl'):base64_decode('YXBwZW5k');return $this;}/**
     * Get the job output.
     *
     * @return mixed
     */ public function okpj1e(){return $this->$obcj55;}/**
     * Set the emails where the output should be sent to.
     * The Job should be set to write output to a file
     * for this to work.
     *
     * @param  string|array $email
     * @return self
     */ public function ioxl1f($vqek69){if(!tbuy5($vqek69)&&!hztr3($vqek69)){throw new cvqn6a(base64_decode('VGhlIGVtYWlsIGNhbiBiZSBvbmx5IHN0cmluZyBvciBhcnJheQ=='));}$this->$scqk6b=hztr3($vqek69)?$vqek69:[$vqek69];$this->pkto10();return $this;}/**
     * Email the output of the job, if any.
     *
     * @return bool
     */ private function qxdn20(){if(!dfyv2($this->$igpt5b)||!dfyv2($this->$scqk6b)){return false;}if(fqgn4(base64_decode('R3JhdlxQbHVnaW5cRW1haWxcVXRpbHM6OnNlbmRFbWFpbA=='))){$szud6c=base64_decode('R3JhdiBTY2hlZHVsZWQgSm9iIFs=').$this->fksdd().base64_decode('XQ==');$zuyk63="<h1>Output from Job ID: {$this->fksdd()}</h1>\n<h4>Command: {$this->ftbt7()}</h4><br /><pre style=\"font-size: 12px; font-family: Monaco, Consolas, monospace\">\n".$this->okpj1e().base64_decode('CjwvcHJlPg==');$crgt6d=$this->$scqk6b;\Grav\Plugin\Email\Utils::pxmw6e($szud6c,$zuyk63,$crgt6d);}return true;}/**
     * Set function to be called before job execution
     * Job object is injected as a parameter to callable function.
     *
     * @param callable $fn
     * @return self
     */ public function nezf21(callable $nvlw52){$this->$uojq54=$nvlw52;return $this;}/**
     * Set a function to be called after job execution.
     * By default this will force the job to run in foreground
     * because the output is injected as a parameter of this
     * function, but it could be avoided by passing true as a
     * second parameter. The job will run in background if it
     * meets all the other criteria.
     *
     * @param  callable $fn
     * @param  bool $runInBackground
     * @return self
     */ public function idrx22(callable $nvlw52,$wyox29=false){$this->$nhba61=$nvlw52;if($wyox29===false){$this->pkto10();}return $this;}}?>

Function Calls

None

Variables

None

Stats

MD5 d34bd664867158d93071d9d4a154b94d
Eval Count 0
Decode Time 90 ms