Биллинговая система Nodeny
29 Апреля 2024, 16:09:20 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Прекращена поддержка версии Nodeny 49
 
   Начало   Помощь Поиск Войти Регистрация  
Страниц: [1]
  Печать  
Автор Тема: Смена тарифа не более, чем раз в n часов/дней/месяцев  (Прочитано 3717 раз)
smallcms
NoDeny
Старожил
*

Карма: 64
Offline Offline

Сообщений: 279



Просмотр профиля WWW
« : 04 Сентября 2011, 19:28:23 »

Код:
*** Ssetpacket.pl.old	2010-12-16 23:51:00.000000000 +0200
--- Ssetpacket.pl 2011-09-04 20:28:02.751302995 +0300
***************
*** 161,166 ****
--- 161,171 ----
  {
   {
    defined $F{paket} or last;
+   
+   $p=&sql_select_line($dbh,"SELECT COUNT(*) AS n FROM pays WHERE mid=$Mid AND type=50 AND category=432 AND time>($ut-3600*24*30)");
+   $p && $p->{n}>=$Max_paket_sets && !$Adm{id} && &Error('Вы превысили лимит заказов смены тарифного плана. '.
+      "Не разшешается осуществлять заказ смены тарифного плана чаще одного раза в месяц.",$EOUT); 
+   
    $Plan_flags[$paket]=~/b/ && &Error('Ваш текущий тарифный план не позволяет самостоятельно менять его на иной. Это может сделать только администратор.',$EOUT);
    (!$Fpaket || !&Check_Packet($Fpaket,1)) && &Error('Смена тарифного плана не выполнена - присланные вами данные неверны.',$EOUT);
    $F{balance}!=$balance && &Error('Обнаружено изменение вашего баланса. Возможно вы уже сменили тарифный план либо параллельно были проведены финансовые операции. '.
***************
*** 331,336 ****
--- 336,345 ----
  {
   {
    defined($F{paket}) or last;
+   
+   $p=&sql_select_line($dbh,"SELECT COUNT(*) AS n FROM pays WHERE mid=$Mid AND type=50 AND category=433 AND time>($ut-3600*24*30)");
+   $p && $p->{n}>=$Max_paket_sets && !$Adm{id} && &Error('Вы превысили лимит заказов смены тарифного плана. '.
+      "Не разшешается осуществлять заказ смены тарифного плана чаще одного раза в месяц.",$EOUT); 
 
    $Plans3{$Fpaket}{usr_grp_ask}!~/,$grp,/ && &Error('Смена тарифного плана не выполнена - неразрешенный пакет.',$EOUT);
    $Plans3{$Fpaket}{price_change}==0 && &Error('Смена тарифного плана не выполнена - на данный пакет не разрешено переключаться в середине месяца.',$EOUT);



Через админку ошибку не видно, т.к. !$Adm{id}. Только через stat.pl клиента. Можно вынести в админку параметр...
Записан

poxy.
NoDeny
Спец
*

Карма: 10
Offline Offline

Сообщений: 844



Просмотр профиля
« Ответ #1 : 07 Сентября 2011, 11:38:35 »

+1 к карме, Спасибо  Улыбающийся
Записан
Страниц: [1]
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.20 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!