<?php

require dirname(dirname(__FILE__)) . '/general.config.php';
bff::sessionStart('u');
require PATH_CORE . 'init.php';
$oBff = bff::i()->init(true);
error_reporting(E_ALL & ~E_DEPRICATED);
ini_set('display_errors', 1);
set_time_limit(0);
ignore_user_abort(true);
/*
* Период выполнения: каждые 15 минут
*/
$log = new CFileLogger(PATH_BASE . 'files/logs/', 'cron.log');
$log->log('bbs.items.comments.enotify: started...');
$oBff->GetModule('bbs');
//echo "start\r\n";
$oDb->execute('START TRANSACTION');
$aNotify = $oDb->select('SELECT EN.*
    FROM ' . TABLE_BBS_ITEMS_COMMENTS_ENOTIFY . ' EN
    WHERE EN.sended = 0
    ORDER BY EN.created
    LIMIT 100 
    FOR UPDATE');
// <- lock пока не разошлём письма (100)
if (!empty($aNotify)) {
    $mail = new CMail();
    $tpl = $oBff->Sendmail_getMailTemplate('bbs_comments_notify');
    foreach ($aNotify as $v) {
        try {
            $mail->From = BFF_EMAIL_NOREPLY;
Esempio n. 2
0
<?php

require dirname(dirname(__FILE__)) . '/general.config.php';
bff::sessionStart('u');
require PATH_CORE . 'init.php';
$oBff = bff::i()->init(true);
error_reporting(E_ALL & ~E_DEPRICATED);
ini_set('display_errors', 1);
set_time_limit(0);
ignore_user_abort(true);
/*
* Период выполнения: ежедневно, 2 раза в сутки
*/
$log = new CFileLogger(PATH_BASE . 'files/logs/', 'cron.log');
$log->log('bbs.items.counters: started...');
$oBff->GetModule('bbs');
$oDb->execute('START TRANSACTION');
# Выполняем пересчет счетчиков:
// Категории первого уровня
$oDb->execute('UPDATE ' . TABLE_BBS_CATEGORIES . ' C 
       LEFT JOIN (SELECT I.cat1_id as id, COUNT(I.id) as items
                    FROM ' . TABLE_BBS_ITEMS . ' I
                        LEFT JOIN ' . TABLE_USERS . ' U ON I.user_id = U.user_id
                    WHERE I.status = ' . BBS_STATUS_PUBLICATED . ' AND (U.user_id IS NULL OR U.blocked = 0) AND I.cat1_id!=0
                    GROUP BY I.cat1_id) as X ON C.id = X.id
        SET C.items = IF(X.id IS NOT NULL, X.items, 0)
    WHERE C.numlevel = 1
');
// Категории второго уровня
$oDb->execute('UPDATE ' . TABLE_BBS_CATEGORIES . ' C 
       LEFT JOIN (SELECT I.cat2_id as id, COUNT(I.id) as items
Esempio n. 3
0
<?php

require dirname(dirname(__FILE__)) . '/general.config.php';
bff::sessionStart('u');
require PATH_CORE . 'init.php';
$oBff = bff::i()->init(true);
error_reporting(E_ALL & ~E_DEPRICATED);
ini_set('display_errors', 1);
set_time_limit(0);
ignore_user_abort(true);
/*
* Период выполнения: ежедневно, каждые 3 часа
*/
$log = new CFileLogger(PATH_BASE . 'files/logs/', 'cron.log');
$log->log('bbs.items.status: started...');
$oBff->GetModule('bbs', false);
$oBff->GetModule('services');
$oDb->execute('START TRANSACTION');
$sqlNOW = $oDb->getNOW();
$sqlEmptyDate = $oDb->str2sql('0000-00-00 00:00:00');
//снимаем с публикации ОБ, у которых закончился срок публикации
$oDb->execute('UPDATE ' . TABLE_BBS_ITEMS . ' SET 
                    status_prev = status, status = ' . BBS_STATUS_PUBLICATED_OUT . ',
                    svc = 0, premium_to = ' . $sqlEmptyDate . ', marked_to = ' . $sqlEmptyDate . ' 
               WHERE status = ' . BBS_STATUS_PUBLICATED . ' AND publicated_to<=' . $sqlNOW);
// снимаем статус "Премиум", и изменяем на "Выделенные" (+ изменяем порядок публикации, чтобы не упали вниз)
$oDb->execute('UPDATE ' . TABLE_BBS_ITEMS . ' SET 
                    svc = ' . Services::typeMark . ', publicated_order = ' . $sqlNOW . ', premium_to = ' . $sqlEmptyDate . '
               WHERE svc = ' . Services::typePremium . ' AND premium_to<=' . $sqlNOW);
// снимаем статус "Выделенных"
// выполняем после снятия "Премиум" ^, т.к. "Выделенные", получившиеся из "Премиум", также возможно необходимо снять с публикации
Esempio n. 4
0
<?php

require '..' . DIRECTORY_SEPARATOR . 'func.php';
require '..' . DIRECTORY_SEPARATOR . 'input.php';
require 'file.logs.php';
$aParams = CInputCleaner::i()->postm(array('e' => TYPE_STR, 'f' => TYPE_STR, 'l' => TYPE_STR));
$logger = new CFileLogger('..' . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . 'files' . DIRECTORY_SEPARATOR . 'logs', 'js.log');
$logger->log(join('; ', array_values($aParams)));
echo 1;
exit;