<?
// оплата услуг и товаров магазина с личного счета
class Payment
{
   var $shop; // object
   var $params; // array

   function Payment(&$shop) // constructor
   {
      $this->shop = &$shop;
      // load order

      if (!$shop->OrderID && $_GET["Order_IDP"])
            { $this->shop->LoadOrder($_GET["Order_IDP"]); }

   }

   // создание формы на формирование счета
   function create_bill()
   {
     global $current_user,$db;
     $shop = &$this->shop;
     $inv_id = $shop->OrderID;              // номер заказа
     $out_summ = $shop->CartSum();          // сумма заказа

     if ($out_summ<=$current_user['Account'])             // проверка наличия средств
       {
         // списываем деньги со счета
         $nc_auth = nc_Auth::get_object();
         $nc_auth->pa_deduct ( $out_summ, $current_user['User_ID'], iconv("windows-1251","utf-8","Оплата заказа $inv_id"));

                              // записать факт в комменты, изменить статус
         $payinfo = iconv("windows-1251","utf-8", sprintf("Оплата бонусами: Дата: %s, сумма: %s\n",
                               date("d.m.y H:i:s"),
                               iconv("utf-8","windows-1251",$this->shop->FormatCurrency($out_summ,"",1))
                             ));

         $newordstatus=3; // Заказ оплачен, меняем статус и коммент к заказу
         if (intval($inv_id)>0) q("UPDATE Message{$this->shop->order_table}
            SET PaymentInfo=concat(COALESCE(PaymentInfo,''), '".mysql_escape_string($payinfo)."'), status=$newordstatus
            WHERE Message_ID = ".intval($inv_id));


         if ($newordstatus==3) // если оплачен...
           {
            // здесь выполняем необходимые действия с заказом - отправляем
            // ему оплаченную информацию, продляем тарифный план или просто
            // отправляем письмо плательшику и администратору.
            // Данный обработчик заказов (продление тарифа, отгрузка продукции, оплата размещения баннера и тд)
            // Вы можете заказать у нас:
            // Студия Вэлпис,г.Новосибирск info@welpis.ru, http://welpis.ru
          }
          echo iconv("windows-1251","utf-8","Оплата успешно произведена.<br /><a href='/profile/'>Вернуться в личный кабинет</a><br />");
        }
     else
        {
         echo iconv("windows-1251","utf-8","Недостаточно средств на счете.<br />");
        }

   }


   // заглушка "Платеж прошел"
   function success()
   {

   }

   // заглушка "платеж не прошел"
   function failed()
   {

   }

}

?>