PATH:
home
/
centosnipponia
/
public_html
/
ticketing.nipponia.com
/
include
<?php /********************************************************************* class.cron.php Nothing special...just a central location for all cron calls. Peter Rotich <peter@osticket.com> Copyright (c) 2006-2013 osTicket http://www.osticket.com Released under the GNU General Public License WITHOUT ANY WARRANTY. See LICENSE.TXT for details. TODO: The plan is to make cron jobs db based. vim: expandtab sw=4 ts=4 sts=4: **********************************************************************/ //TODO: Make it DB based! require_once INCLUDE_DIR.'class.signal.php'; class Cron { static function MailFetcher() { require_once(INCLUDE_DIR.'class.email.php'); osTicket\Mail\Fetcher::run(); //Fetch mail..frequency is limited by email account setting. } static function TicketMonitor() { require_once(INCLUDE_DIR.'class.ticket.php'); Ticket::checkOverdue(); //Make stale tickets overdue // Cleanup any expired locks require_once(INCLUDE_DIR.'class.lock.php'); Lock::cleanup(); } static function PurgeLogs() { global $ost; // Once a day on a 5-minute cron if (rand(1,300) == 42) if($ost) $ost->purgeLogs(); } static function PurgeDrafts() { require_once(INCLUDE_DIR.'class.draft.php'); Draft::cleanup(); } static function CleanOrphanedFiles() { require_once(INCLUDE_DIR.'class.file.php'); AttachmentFile::deleteOrphans(); } static function CleanExpiredSessions() { require_once(INCLUDE_DIR.'class.ostsession.php'); osTicketSession::cleanup(); } static function CleanPwResets() { require_once(INCLUDE_DIR.'class.config.php'); ConfigItem::cleanPwResets(); } static function MaybeOptimizeTables() { // Once a week on a 5-minute cron $chance = rand(1,2000); switch ($chance) { case 42: @db_query('OPTIMIZE TABLE `'.LOCK_TABLE.'`'); break; case 242: @db_query('OPTIMIZE TABLE '.SYSLOG_TABLE); break; case 442: @db_query('OPTIMIZE TABLE '.DRAFT_TABLE); break; // Start optimizing core ticket tables when we have an archiving // system available case 142: #@db_query('OPTIMIZE TABLE '.TICKET_TABLE); break; case 542: #@db_query('OPTIMIZE TABLE '.FORM_ENTRY_TABLE); break; case 642: #@db_query('OPTIMIZE TABLE '.FORM_ANSWER_TABLE); break; case 342: #@db_query('OPTIMIZE TABLE '.FILE_TABLE); # XXX: Please do not add an OPTIMIZE for the file_chunk table! break; // Start optimizing user tables when we have a user directory // sporting deletes case 742: #@db_query('OPTIMIZE TABLE '.USER_TABLE); break; case 842: #@db_query('OPTIMIZE TABLE '.USER_EMAIL_TABLE); break; } } static function run(){ //called by outside cron NOT autocron global $ost; if (!$ost || $ost->isUpgradePending()) return; self::MailFetcher(); self::TicketMonitor(); self::PurgeLogs(); self::CleanExpiredSessions(); self::CleanPwResets(); // Run file purging about every 10 cron runs if (mt_rand(1, 9) == 4) self::CleanOrphanedFiles(); self::PurgeDrafts(); self::MaybeOptimizeTables(); $data = array('autocron'=>false); Signal::send('cron', null, $data); } } ?>
[+]
..
[-] class.model.php
[edit]
[-] ajax.i18n.php
[edit]
[-] class.json.php
[edit]
[-] class.mime.php
[edit]
[-] class.orm.php
[edit]
[-] class.dept.php
[edit]
[-] ajax.filter.php
[edit]
[-] api.tickets.php
[edit]
[-] ajax.note.php
[edit]
[-] class.2fa.php
[edit]
[-] class.setup.php
[edit]
[-] ajax.orgs.php
[edit]
[-] class.format.php
[edit]
[-] class.message.php
[edit]
[-] class.xml.php
[edit]
[-] class.priority.php
[edit]
[-] class.app.php
[edit]
[-] index.php
[edit]
[-] ajax.forms.php
[edit]
[-] ajax.config.php
[edit]
[-] ajax.tickets.php
[edit]
[-] ajax.content.php
[edit]
[-] class.file.php
[edit]
[-] ajax.email.php
[edit]
[-] class.cli.php
[edit]
[-] class.company.php
[edit]
[-] class.mailer.php
[edit]
[-] class.list.php
[edit]
[-] class.canned.php
[edit]
[-] class.client.php
[edit]
[+]
upgrader
[-] class.csrf.php
[edit]
[-] ost-sampleconfig.php
[edit]
[-] class.http.php
[edit]
[-] ajax.staff.php
[edit]
[-] class.search.php
[edit]
[-] JSON.php
[edit]
[-] class.avatar.php.bak
[edit]
[-] class.error.php
[edit]
[-] class.mail.php
[edit]
[-] class.sla.php
[edit]
[-] class.draft.php
[edit]
[-] class.dispatcher.php
[edit]
[-] class.note.php
[edit]
[-] class.mailparse.php
[edit]
[-] class.filter_action.php
[edit]
[-] class.queue.php
[edit]
[-] class.i18n.php
[edit]
[-] class.osticket.php
[edit]
[-] ajax.users.php
[edit]
[-] class.staff.php
[edit]
[+]
fpdf
[-] class.crypto.php
[edit]
[+]
laminas-mail
[-] class.misc.php
[edit]
[-] class.auth.php
[edit]
[-] html2text.php
[edit]
[-] class.translation.php
[edit]
[-] class.util.php
[edit]
[-] class.schedule.php
[edit]
[-] class.banlist.php
[edit]
[-] class.config.php
[edit]
[-] ajax.upgrader.php
[edit]
[+]
mpdf
[-] class.email.php
[edit]
[-] ajax.admin.php
[edit]
[+]
config
[-] ajax.thread.php
[edit]
[-] class.user.php
[edit]
[-] class.passwd.php
[edit]
[-] class.import.php
[edit]
[+]
client
[-] ajax.tips.php
[edit]
[-] tnef_decoder.php
[edit]
[-] class.oauth2.php
[edit]
[-] class.plugin.php
[edit]
[-] class.timezone.php
[edit]
[-] class.ticket.php
[edit]
[-] class.nav.php
[edit]
[-] class.category.php
[edit]
[-] class.charset.php
[edit]
[+]
cli
[-] class.cron.php
[edit]
[-] class.captcha.php
[edit]
[-] class.dynamic_forms.php
[edit]
[-] class.faq.php
[edit]
[+]
plugins
[-] class.pdf.php
[edit]
[-] ajax.schedule.php
[edit]
[-] class.usersession.php
[edit]
[-] class.topic.php
[edit]
[-] class.base32.php
[edit]
[-] htmLawed.php
[edit]
[-] ajax.sequence.php
[edit]
[+]
i18n
[-] class.signal.php
[edit]
[-] class.mailfetch.php
[edit]
[-] UniversalClassLoader.php
[edit]
[-] class.sequence.php
[edit]
[-] class.businesshours.php
[edit]
[-] class.role.php
[edit]
[+]
pear
[-] class.yaml.php
[edit]
[-] Spyc.php
[edit]
[-] mysqli.php
[edit]
[-] class.thread_actions.php
[edit]
[-] class.export.php
[edit]
[-] ajax.plugins.php
[edit]
[-] class.collaborator.php
[edit]
[-] class.ostsession.php
[edit]
[+]
staff
[-] class.attachment.php
[edit]
[-] class.template.php
[edit]
[-] class.filter.php
[edit]
[-] class.controller.php
[edit]
[-] class.team.php
[edit]
[-] class.session.php
[edit]
[-] class.avatar.php
[edit]
[-] ajax.kbase.php
[edit]
[-] class.variable.php
[edit]
[-] class.validator.php
[edit]
[-] ajax.tasks.php
[edit]
[-] class.upgrader.php
[edit]
[-] class.page.php
[edit]
[-] ajax.export.php
[edit]
[-] ajax.search.php
[edit]
[-] PasswordHash.php
[edit]
[-] class.report.php
[edit]
[-] class.forms.php
[edit]
[-] class.task.php
[edit]
[-] class.migrater.php
[edit]
[-] class.lock.php
[edit]
[-] class.organization.php
[edit]
[-] class.pagenate.php
[edit]
[-] api.cron.php
[edit]
[-] class.api.php
[edit]
[-] class.thread.php
[edit]
[-] class.knowledgebase.php
[edit]
[-] .MANIFEST
[edit]
[-] class.log.php
[edit]
[-] ajax.draft.php
[edit]
[-] class.ajax.php
[edit]
[-] ost-config.php
[edit]
[-] txets.php
[edit]
[-] .htaccess.disabled
[edit]