public function init($uid, $type_place = 0)
 {
     $promoCodes = new PromoCodes();
     $options = array('popup_title' => 'Размещение в Карусели', 'items_title' => 'Параметры объявления', 'payments_exclude' => array(self::PAYMENT_TYPE_BANK), 'price' => pay_place::getPrice(), 'promo_code' => $promoCodes->render(PromoCodes::SERVICE_CARUSEL));
     $this->addWaitMessageForAll();
     $form = new CaruselForm();
     //Если уже размещался то поумолчанию заполняем тексты
     $payPlace = new pay_place($type_place);
     $data = $payPlace->getUserRequest($uid);
     if ($data) {
         $form->setDefaults(array('title' => $data['ad_header'], 'description' => $data['ad_text']));
     }
     $this->setContent($form->render());
     parent::init($options);
     $this->options['payments'][self::PAYMENT_TYPE_PLATIPOTOM]['content_after'] = sprintf($this->options['payments'][self::PAYMENT_TYPE_PLATIPOTOM]['content_after'], 'карусель');
 }
/**
 * Оплата карусели через Плати потом
 * 
 * @param type $type
 * @param type $data
 * @return \xajaxResponse
 */
function quickPaymentCaruselPlatipotom($type, $data)
{
    $uid = get_uid(false);
    $objResponse =& new xajaxResponse();
    $promo = isset($data['promo']) ? $data['promo'] : "";
    $form = new CaruselForm();
    if (!$form->isValid($data)) {
        $params = addslashes(urldecode(http_build_query($form->getAllMessages('<br/>'))));
        $objResponse->script("\n            var qp = window.quick_ext_payment_factory.getQuickPayment('carusel');\n            if(qp) qp.showElementsError('{$params}');\n        ");
        return $objResponse;
    }
    $data = $form->getValues();
    $bill = new billing($uid);
    $bill->setPromoCodes('SERVICE_CARUSEL', $promo);
    $options = array('ad_header' => $data['title'], 'ad_text' => $data['description'], 'num' => $data['num']);
    if ($data['num'] > 1) {
        $options['hours'] = $data['hours'];
    }
    //Каталог
    //@todo: неиспользуется разделение платный мест в картусели
    //$tarif = 73;
    //Главная
    //@todo: сейчас общий раздел для всех
    $tarif = 65;
    //Формируем заказ
    $billReserveId = $bill->addServiceAndCheckout($tarif, $options);
    $payed_sum = $bill->getRealPayedSum();
    $platipotom = new platipotom();
    $html_form = $platipotom->render($payed_sum, $bill->account->id, $billReserveId);
    if ($html_form) {
        $objResponse->script("\n            var qp = window.quick_ext_payment_factory.getQuickPayment('carusel');\n            if (qp) qp.sendPaymentForm('{$html_form}');\n        ");
        //сохранаем в сессию куда перейти при успешной покупке
        $_SESSION[quickPaymentPopup::QPP_REDIRECT] = urldecode($_SESSION['ref_uri']);
    }
    return $objResponse;
}