Finish building out schedule management functionality

This commit is contained in:
Dane Everitt 2020-03-22 13:56:15 -07:00
parent 4ac6507b69
commit 1e0d630e1f
No known key found for this signature in database
GPG key ID: EEA66103B3D71F53
16 changed files with 510 additions and 79 deletions

View file

@ -3,6 +3,8 @@
namespace Pterodactyl\Helpers;
use Exception;
use Carbon\Carbon;
use Cron\CronExpression;
use Illuminate\Support\Facades\Log;
class Utilities
@ -32,4 +34,20 @@ class Utilities
return $string;
}
/**
* Converts schedule cron data into a carbon object.
*
* @param string $minute
* @param string $hour
* @param string $dayOfMonth
* @param string $dayOfWeek
* @return \Carbon\Carbon
*/
public static function getScheduleNextRunDate(string $minute, string $hour, string $dayOfMonth, string $dayOfWeek)
{
return Carbon::instance(CronExpression::factory(
sprintf('%s %s %s * %s', $minute, $hour, $dayOfMonth, $dayOfWeek)
)->getNextRunDate());
}
}