<?php

/********************************************************
	JobExpert v1.0
	powered by Script Developers Group (SD-Group)
	email: info@sd-group.org.ua
	url: http://sd-group.org.ua/
	Copyright 2010-2015 (c) SD-Group
	All rights reserved
=========================================================
	Выполнение рассылки объявлений в соответствии с подписками пользователей
********************************************************/
/**
* @package
* @todo
*/
!defined('SDG') ? die('Triple protection!') : null;
$subscription = new subscription();
$arrSubscr = $subscription->getSubscriptions("(TO_DAYS(NOW())-TO_DAYS(date_lastsend))>=period AND token IN ('active')", false, false, false);
if ($arrSubscr) {
    foreach ($arrSubscr as $value) {
        $subscription->runSubscription($value);
    }
}
         $subscription->delSubscriptionsById(array_keys($_POST['subscr']));
         messages::messageChangeSaved(MESSAGE_CHANGE_SAVED, false, CONF_ADMIN_FILE . '?m=manager&s=subscriptions&action=payment');
     } elseif ('activate' === $_POST['action'] && !empty($_POST['subscr'])) {
         $subscription->updateSubscriptions(array('token' => 'active', 'token_datetime' => ''), array_keys($_POST['subscr']));
         messages::messageChangeSaved(MESSAGE_CHANGE_SAVED, false, CONF_ADMIN_FILE . '?m=manager&s=subscriptions&action=payment');
     }
 }
 // инициируем "Наименование страницы" отображаемое в форме
 $arrNamePage[] = array('name' => MENU_MANAGER_SUBSCRIPTIONS, 'link' => CONF_ADMIN_FILE . '?m=manager&amp;s=subscriptions');
 $arrNamePage[] = array('name' => MENU_ACTION_PAYMENT, 'link' => false);
 $offset = isset($_GET['offset']) ? (int) abs($_GET['offset']) : 0;
 //смещение, всегда 0 (затем берется из $_GET)
 //текущий обработанный URL
 $path = CONF_ADMIN_FILE . '?m=manager&amp;s=subscriptions&amp;action=payment&amp;';
 $arrLimit = array('strLimit' => $offset . ',' . CONF_SUBSCRIPTIONS_STRINGS_PERPAGE_ADMIN_PANEL, 'calcRows' => true);
 $arrSubscr = $subscription->getSubscriptions("token IN ('payment')", false, $arrLimit, false);
 // формируем страницы
 $allRecords = $subscription->cntSubscriptions();
 // получаем общее количество
 $strPages = strings::generatePage($allRecords, $offset, CONF_SUBSCRIPTIONS_STRINGS_PERPAGE_ADMIN_PANEL, $path, true);
 // формируем странциы
 $smarty->assignByRef('arrSubscr', $arrSubscr);
 $smarty->assignByRef('allRecords', $allRecords);
 //передаем в шаблон общее количество записей
 $smarty->assignByRef('strPages', $strPages);
 //передаем в шаблон строку сформированных страниц
 /**
  * РАБОТА СО СЛОВАРЯМИ
  */
 // инициализация списка разделов
 $sections = new sections();
     } elseif ('pay' === $_POST['action'] && isset($_POST['subscr'])) {
         // проверяем, чтобы в масиве была только одна подписка и получаем ее
         if (count($_POST['subscr']) === 1 && ($ps = each($_POST['subscr']))) {
             $_SESSION['payment'] = array('service' => 'subscr_' . $ps['value'], 'id' => $ps['key']);
             die('<script type="text/javascript">window.location="' . chpu::createChpuUrl(CONF_SCRIPT_URL . 'index.php?ut=' . $_SESSION['sd_user'][DB_PREFIX . 'conf']['user_type'] . '&amp;do=payments') . '";</script>');
         } else {
             messages::messageChangeSaved(MESSAGE_WARNING_PAYMENT_NO_MORE_THAN_ONE_RECORD, false, chpu::createChpuUrl(CONF_SCRIPT_URL . 'index.php?ut=' . $_SESSION['sd_user'][DB_PREFIX . 'conf']['user_type'] . '&amp;do=subscription'), 5000);
         }
     }
     messages::messageChangeSaved(MESSAGE_WARNING_NOT_SELECT_RECORDS, false, chpu::createChpuUrl(CONF_SCRIPT_URL . 'index.php?ut=' . $_SESSION['sd_user'][DB_PREFIX . 'conf']['user_type'] . '&amp;do=subscription'));
 }
 /**
  * ФОРМИРУЕМ СПИСКИ ПОДПИСОК
  */
 // передаем массив активных подписок
 $arrSubscr = $subscription->getSubscriptions("id_user IN (" . secure::escQuoteData($_SESSION['sd_user']['data']['id']) . ") AND token IN ('active')", false, false, false) or $arrSubscr = array();
 $statData['allSubscr'] = $subscription->cntSubscriptions();
 $smarty->assignByRef('subscriptions', $arrSubscr);
 $smarty->assignByRef('allRecords', $statData['allSubscr']);
 // проверяем, включены ли платные подписки
 // и получаем массив подписок ожидающих оплаты
 $arrPaySubscr = $arrPayments['subscr_vacancy'] || $arrPayments['subscr_resume'] ? $subscription->getSubscriptions("id_user IN (" . secure::escQuoteData($_SESSION['sd_user']['data']['id']) . ") AND token IN ('payment')", false, false, false) : false;
 // передаем массив подписок ожидающих оплаты
 $smarty->assign('paySubscr', $arrPaySubscr);
 /*		 * * ПОЛУЧАЕМ СТАТИСТИЧЕСКИЕ ДАННЫЕ О ПОДПИСКАХ ** */
 $freeAddedR = $freeAddedV = 0;
 // собираем количество бесплатных, активных, подписок на вакансии и резюме
 if (!empty($arrSubscr)) {
     foreach ($arrSubscr as $value) {
         if (empty($value['id_announce']) && 'no' == $value['payment']) {
             'vacancy' == $value['type_subscription'] ? $freeAddedV++ : $freeAddedR++;