Вход Регистрация
Файл: InstantSocial/uploud/components/reklama/frontend.php
Строк: 599
<?php
function reklama(){

    
$inCore cmsCore::getInstance();
    
$inPage cmsPage::getInstance();
    
$inDB   cmsDatabase::getInstance();
    
$inUser cmsUser::getInstance();
    global 
$_CFG;

    
$inCore->loadModel('reklama');
    
$model = new cms_model_reklama();

    
define('IS_BILLING'$inCore->isComponentInstalled('billing'));
    if (
IS_BILLING) { $inCore->loadClass('billing'); }

    global 
$_LANG;

    
$id $inCore->request('id''int'0);
    
$do $inCore->request('do''str''view');

    
$inPage->addHeadCSS('templates/'.$_CFG['template'].'/css/modconfig.css');
    
$inPage->addHeadCSS('templates/'.$_CFG['template'].'/css/nyromodal.css');
    
$inPage->addHeadJS('templates/'.$_CFG['template'].'/js/nyromodal.js');
    
$config $model->getConfig();

    if (
$do == 'view'){

        
$head_title 'Реклама';
        
$config $model->getConfig();

        
$smarty $inCore->initSmarty('components''com_reklama_view.tpl');
        
$smarty->assign('config'$config);
        
$smarty->assign('size_xy'$config['width']+6);
        
$smarty->assign('folder_number'$config['width']);
        
$smarty->assign('max_text'$model->maxText($config['width']));
        
$smarty->assign('witdh_class'$model->widthClass($config['width']));
        
$smarty->assign('head_title'$head_title);
        
$smarty->assign('is_user'$inUser->id);

        
$smarty->display('com_reklama_view.tpl');


        return;

    }

    if (
$do == 'add'){
        
$inPage->addHeadJS('components/reklama/js/text.js');
        if (
$inUser->id){
        
$config $model->getConfig();
        
$head_title 'Новое объявление';
        if (
$_POST){

            
$inCore->includeGraphics();
            
$msg false;
            if (!empty(
$_REQUEST['text'])) {
                
$text $_REQUEST['text'];
            } else { 
$msg truecmsCore::addSessionMessage('Не указан текст объявления.''error'); }
//            if (!empty($_REQUEST['gourl'])) {
                
$gourl $_REQUEST['gourl'];
//                if(!preg_match("/^(?:http://)?[-0-9a-z._]*.w{2,4}[:0-9]*$/", $gourl)){
//                  $msg = true; cmsCore::addSessionMessage('Не правильно указан URL объявления.', 'error');
//                }

//            } else {
//                $msg = true; cmsCore::addSessionMessage('Не указан URL объявления.', 'error');
//            }
            
$text1      $_REQUEST['text1'];
            
$max        $_REQUEST['max'];
            
$day        $_REQUEST['day'];
            
$sutki      $_REQUEST['sutki'];
            
$published  1;
            
$bannertext $text.'<br>'.$text1;


            if(
$msg){$inCore->redirect('/reklama/ads.html');}
            
$uploaddir $_SERVER['DOCUMENT_ROOT'].'/images/tizers/';

            if (!
is_dir($uploaddir)) { @mkdir($uploaddir); }

            
$realfile $_FILES['img']['name'];
            
            
$path_parts     pathinfo($realfile);
            
$ext            strtolower($path_parts['extension']);

            if (
$ext == 'jpg' || $ext == 'jpeg' || $ext == 'gif' || $ext == 'bmp' || $ext == 'png'){
                
$filename $realfile;
                
$uploadfile $uploaddir $realfile;


                if (@
move_uploaded_file($_FILES['img']['tmp_name'], $uploadfile)) {

                    @
img_resize($_SERVER['DOCUMENT_ROOT']."/images/tizers/$filename"$_SERVER['DOCUMENT_ROOT']."/images/tizers/small80/$filename"80801);
                    @
img_resize($_SERVER['DOCUMENT_ROOT']."/images/tizers/$filename"$_SERVER['DOCUMENT_ROOT']."/images/tizers/small90/$filename"90901);
                    @
img_resize($_SERVER['DOCUMENT_ROOT']."/images/tizers/$filename"$_SERVER['DOCUMENT_ROOT']."/images/tizers/small100/$filename"1001001);
                    @
img_resize($_SERVER['DOCUMENT_ROOT']."/images/tizers/$filename"$_SERVER['DOCUMENT_ROOT']."/images/tizers/small110/$filename"1101101);
                    @
img_resize($_SERVER['DOCUMENT_ROOT']."/images/tizers/$filename"$_SERVER['DOCUMENT_ROOT']."/images/tizers/small120/$filename"1201201);
                    @
img_resize($_SERVER['DOCUMENT_ROOT']."/images/tizers/$filename"$_SERVER['DOCUMENT_ROOT']."/images/tizers/smallcfg/$filename"$config['img_w'], $config['img_h'], 1);
                    @
chmod($_SERVER['DOCUMENT_ROOT']."/images/tizers/small80/$filename"0777);
                    @
chmod($_SERVER['DOCUMENT_ROOT']."/images/tizers/small90/$filename"0777);
                    @
chmod($_SERVER['DOCUMENT_ROOT']."/images/tizers/small100/$filename"0777);
                    @
chmod($_SERVER['DOCUMENT_ROOT']."/images/tizers/small110/$filename"0777);
                    @
chmod($_SERVER['DOCUMENT_ROOT']."/images/tizers/small120/$filename"0777);
                    @
chmod($_SERVER['DOCUMENT_ROOT']."/images/tizers/smallcfg/$filename"0777);

                        
$sql "INSERT INTO cms_reklama (user_id,
                                                         img,
                                                         max,
                                                         day,
                                                         sutki,
                                                         hity,
                                                         clics,
                                                         pubdate,
                                                         text,
                                                         gourl,
                                                         published,
                                                         bal,
                                                         blocking)
                                VALUES ('
$inUser->id',
                                        '
$filename',
                                        '
$max',
                                        '
$day',
                                        '
$sutki',
                                         0,
                                         0,
                                         NOW(),
                                        '
$bannertext',
                                        '
$gourl',
                                        '
$published',
                                        0,
                                        1)"
;
                        
$inDB->query($sql);
                    
cmsCore::addSessionMessage('Ваше обьявление создано.''info');
                    
cmsUser::sendMessage(11'Компонент "Реклама". Принято обьявление на модерацию.');
                } else { 
cmsCore::addSessionMessage('Ошибка загрузки, картинка обьявления не загружена!''error'); }
            } else {
                
cmsCore::addSessionMessage('Формат файла не поддерживается. Допустимые форматы (jpg, jpeg, gif, bmp, png).''error');

            }



            
$sql "SELECT * FROM cms_reklama_balans WHERE user_id = {$inUser->id}";
            
$result $model->inDB->query($sql);
            if (!
$model->inDB->num_rows($result)){
                if(
$config['poochrenie']){
                    
$model->inDB->query("INSERT INTO cms_reklama_balans (user_id, balans) VALUES ({$inUser->id}, '{$config['poochrenie']}')");
                    
$last_id $model->lastId();
                    
$model->inDB->query("UPDATE cms_reklama SET bal=1 WHERE id=$last_id");
                    
cmsCore::addSessionMessage('Система начислила Вам '.$config['poochrenie'].' пробных показов''info');
                }else{
                    
$model->inDB->query("INSERT INTO cms_reklama_balans (user_id, balans) VALUES ({$inUser->id}, 0)");
                }
            }else{
            
$usbal $inDB->fetch_assoc($result);
                if(
$usbal['balans'] > 0){
                    
$model->inDB->query("UPDATE cms_reklama SET bal = 1 WHERE user_id = {$inUser->id}");
                }
            }
            
$inCore->redirect('/reklama/ads.html');
        }

        
        
$smarty $inCore->initSmarty('components''com_reklama_add.tpl');

        
$smarty->assign('head_title'$head_title);
        
$smarty->assign('size_xy'$config['width']+6);
        
$smarty->assign('witdh_class'$model->widthClass($config['width']));
        
$smarty->assign('folder_number'$config['width']);
        
$smarty->assign('max_text'$config['simbols']);
        
$smarty->assign('messages'cmsCore::getSessionMessages());
        
$smarty->assign('moybalans'$model->getBalans($inUser->id));

        
$smarty->display('com_reklama_add.tpl');

         } else {

            echo 
'Доступ запрещен! <a href="/login">Авторизуйтесь</a> пожалуйста или <a href="/registration">зарегистрируйтесь</a>.';

        }

        return;

    }
    if (
$do == 'edititem'){
        
$inPage->addHeadJS('components/reklama/js/text.js');
        if (
$inUser->id){
        
$config $model->getConfig();
        
$item $model->getItem($id$inUser->id);
        
$head_title 'Редактирование';

        
$texts explode("<br>"$item['text']);


        if (
$_POST){

            
$inCore->includeGraphics();
            
$msg false;
            if (!empty(
$_REQUEST['text'])) {
                
$text $_REQUEST['text'];
            } else { 
$msg truecmsCore::addSessionMessage('Не указан текст объявления.''error'); }
            if (!empty(
$_REQUEST['gourl'])) {
                
$gourl $_REQUEST['gourl'];
                if(!
preg_match("#http://[-a-z0-9_.]+[-a-z0-9_:@&?=+,.!/~*'%$]*.(html?|php|pl|cgi|ru)#i"$gourl)){
                  
$msg truecmsCore::addSessionMessage('Не правильно указан URL объявления.''error');
                }

            } else {
                
$msg truecmsCore::addSessionMessage('Не указан URL объявления.''error');
            }
            
$text1      $_REQUEST['text1'];
            
$max        $_REQUEST['max'];
            
$day        $_REQUEST['day'];
            
$sutki      $_REQUEST['sutki'];
            
$bannertext $text.'<br>'.$text1;

            if(
$msg){$inCore->redirect('/reklama/ads.html');}


            
$uploaddir $_SERVER['DOCUMENT_ROOT'].'/images/tizers/';
            if (!
is_dir($uploaddir)) { @mkdir($uploaddir); }

            
$realfile $_FILES['img']['name'];
            
$path_parts     pathinfo($realfile);
            
$ext            strtolower($path_parts['extension']);


                
$filename $realfile;
                
$uploadfile $uploaddir $realfile;
                
$img '';
                if (
$_FILES['img']['size'] > 0){
                    if (
$ext == 'jpg' || $ext == 'jpeg' || $ext == 'gif' || $ext == 'bmp' || $ext == 'png'){
                    @
move_uploaded_file($_FILES['img']['tmp_name'], $uploadfile);
                    @
img_resize($_SERVER['DOCUMENT_ROOT']."/images/tizers/$filename"$_SERVER['DOCUMENT_ROOT']."/images/tizers/small80/$filename"80801);
                    @
img_resize($_SERVER['DOCUMENT_ROOT']."/images/tizers/$filename"$_SERVER['DOCUMENT_ROOT']."/images/tizers/small90/$filename"90901);
                    @
img_resize($_SERVER['DOCUMENT_ROOT']."/images/tizers/$filename"$_SERVER['DOCUMENT_ROOT']."/images/tizers/small100/$filename"1001001);
                    @
img_resize($_SERVER['DOCUMENT_ROOT']."/images/tizers/$filename"$_SERVER['DOCUMENT_ROOT']."/images/tizers/small110/$filename"1101101);
                    @
img_resize($_SERVER['DOCUMENT_ROOT']."/images/tizers/$filename"$_SERVER['DOCUMENT_ROOT']."/images/tizers/small120/$filename"1201201);
                    @
img_resize($_SERVER['DOCUMENT_ROOT']."/images/tizers/$filename"$_SERVER['DOCUMENT_ROOT']."/images/tizers/smallcfg/$filename"$config['img_w'], $config['img_h'], 1);
                    @
chmod($_SERVER['DOCUMENT_ROOT']."/images/tizers/small80/$filename"0777);
                    @
chmod($_SERVER['DOCUMENT_ROOT']."/images/tizers/small90/$filename"0777);
                    @
chmod($_SERVER['DOCUMENT_ROOT']."/images/tizers/small100/$filename"0777);
                    @
chmod($_SERVER['DOCUMENT_ROOT']."/images/tizers/small110/$filename"0777);
                    @
chmod($_SERVER['DOCUMENT_ROOT']."/images/tizers/small120/$filename"0777);
                    @
chmod($_SERVER['DOCUMENT_ROOT']."/images/tizers/smallcfg/$filename"0777);
                    
$img $filename;
                    } else {
                       
$msg truecmsCore::addSessionMessage('Формат файла не поддерживается. Допустимые форматы (jpg, jpeg, gif, bmp, png).''error');
                    }
                }else{
                    
$img $item['img'];
                }


            if (!
$msg){

            
$sql "UPDATE cms_reklama SET
                        img='
{$img}',
                        max='
{$max}',
                        day='
{$day}',
                        sutki='
{$sutki}',
                        text='
{$bannertext}',
                        gourl='
{$gourl}',
                        blocking=1 WHERE id=
$id LIMIT 1";

                    
$inDB->query($sql);
            
$itempro $model->getItem($id$inUser->id);
            if (
$itempro['hity'] >= $itempro['max']){
                 
$inDB->query("UPDATE cms_reklama SET maxlimit = 1 WHERE id = {$id}");
             }else{
                 
$inDB->query("UPDATE cms_reklama SET maxlimit = 0 WHERE id = {$id}");
             }

            
$datehit date('Y-m-d');
             
$sql "SELECT hity FROM cms_reklama_hits WHERE reklama_id = {$id} AND hitdate = '{$datehit}'";
             
$result $inDB->query($sql);
             
$hit $inDB->fetch_assoc($result);
             if(
$itempro['day'] == 0){
                 
$inDB->query("UPDATE cms_reklama SET daylimit = 0 WHERE id = {$id}");
             }else{
                 if (
$hit['hity'] >= $itempro['day']){
                     
$inDB->query("UPDATE cms_reklama SET daylimit = 1 WHERE id = {$id}");
                 }else{
                     
$inDB->query("UPDATE cms_reklama SET daylimit = 0 WHERE id = {$id}");
                 }
             }

            
cmsCore::addSessionMessage('Ваше обьявление отредактировано.''info');
            
cmsUser::sendMessage(11'Компонент "Реклама". Принято обьявление на модерацию.');
            }
            
$inCore->redirect('/reklama/ads.html');
        }


        
$smarty $inCore->initSmarty('components''com_reklama_edit.tpl');
        
$smarty->assign('head_title'$head_title);
        
$smarty->assign('item'$item);
        
$smarty->assign('size_xy'$config['width']+6);
        
$smarty->assign('folder_number'$config['width']);
        
$smarty->assign('max_text'$model->maxText($config['width']));
        
$smarty->assign('witdh_class'$model->widthClass($config['width']));
        
$smarty->assign('text1'$texts[0]);
        
$smarty->assign('text2'$texts[1]);
        
$smarty->assign('messages'cmsCore::getSessionMessages());
        
$smarty->assign('moybalans'$model->getBalans($inUser->id));

        
$smarty->display('com_reklama_edit.tpl');


         } else {

            echo 
'Доступ запрещен! <a href="/login">Авторизуйтесь</a> пожалуйста или <a href="/registration">зарегистрируйтесь</a>.';

        }
    }

    if (
$do == 'ads'){
         if (
$inUser->id){

        
$head_title 'Мои обьявления';

             
$itemid $_POST['itemid'];

             if (
$_POST['vikluchit']){
                 
$model->inDB->query("UPDATE cms_reklama SET published = 0 WHERE id = $itemid");
             }
             if (
$_POST['vkluchit']){
                 
$model->inDB->query("UPDATE cms_reklama SET published = 1 WHERE id = $itemid");
             }
             if (
$_POST['delete']){
                 
$model->inDB->query("DELETE FROM cms_reklama WHERE id = $itemid");
                 
$model->inDB->query("DELETE FROM cms_reklama_hits WHERE reklama_id = $itemid");
             }


             
$sql "SELECT * FROM cms_reklama WHERE user_id = '$inUser->id'";
             
$result $model->inDB->query($sql);
                     if (
$model->inDB->num_rows($result)){
                        while(
$item $model->inDB->fetch_assoc($result)){

                            
$item['vsego_hity']  = $item['hity'];
                            
$item['vsego_click'] = $item['clics'];
                            
$item['vsego_ctr'] = round((($item['clics']/$item['hity']) * 100), 2).'%';
                            
$item['seg_hity'] = $model->segHits($item['id']);
                            
$item['seg_click'] = $model->segClick($item['id']);
                            
$item['seg_ctr'] = round((($item['seg_click']/$item['seg_hity']) * 100), 2).'%';

                            
$item['vchera_hity'] = $model->vcheraHits($item['id']);
                            
$item['vchera_click'] = $model->vcheraClick($item['id']);
                            
$item['vchera_ctr'] = round((($item['vchera_click']/$item['vchera_hity']) * 100), 2).'%';

                            
$items[] = $item;
                        }
                     }
             foreach(
$items as $item){}

        
$smarty $inCore->initSmarty('components''com_reklama_ads.tpl');

        
$smarty->assign('head_title'$head_title);
        
$smarty->assign('items'$items);
        
$smarty->assign('size_xy'$config['width']+6);
        
$smarty->assign('folder_number'$config['width']);
        
$smarty->assign('witdh_class'$model->widthClass($config['width']));
        
$smarty->assign('messages'cmsCore::getSessionMessages());
        
$smarty->assign('moybalans'$model->getBalans($inUser->id));

        
$smarty->display('com_reklama_ads.tpl');


        } else {

            echo 
'Доступ запрещен! <a href="/login">Авторизуйтесь</a> пожалуйста или <a href="/registration">зарегистрируйтесь</a>.';

        }

        return;

    }


    if (
$do=='click'){

        
$banner_id $inCore->request('id''int'0);

        if (!
$banner_id) { $inCore->halt(); }

        
$banner     $model->getBanner($banner_id);

        if (
$banner){
            
$model->clickBanner($banner_id);
            
$inCore->redirect($banner['gourl']);
        } else {
            
$inCore->halt('BANNER NOT FOUND');
        }

    }

    if (
$do=='statistic'){


        include_once 
'graph/open_flash_chart_object.php';
        
$baseURL "http://".$_SERVER['HTTP_HOST'].'/graph/';
        
open_flash_chart_object800500$baseURL.'chart-data.php?id='.$idfalse$baseURL );

        
$inCore->halt();

    }

    if (
$do=='balans'){
    if (
$inUser->id){

        
$head_title 'Мой баланс';

        
$sql "SELECT * FROM cms_reklama_balans WHERE user_id = {$inUser->id}";
        
$result $model->inDB->query($sql);
                     if (!
$model->inDB->num_rows($result)){
                         
$model->inDB->query("INSERT INTO cms_reklama_balans (user_id, balans) VALUES ({$inUser->id}, 0)");
                     }else{
                         
$balans $model->getBalans($inUser->id);
                     }
        if (
IS_BILLING) {
        
$price_bill cmsBilling::getAction('reklama''add_pokazi');
                      foreach(
$price_bill['point_cost'] as $key=>$price){
                          if(
$inUser->group_id == $key){
                          
$price_billing $price;
                          }
                      }
        }
        
$smarty $inCore->initSmarty('components''com_reklama_balans.tpl');

        
$smarty->assign('head_title'$head_title);
        
$config $model->getConfig();
        
$smarty->assign('config'$config);
        
$smarty->assign('price_billing'$price_billing);
        
$smarty->assign('balans'$balans);
        
$smarty->assign('moybalans'$model->getBalans($inUser->id));

        
$smarty->display('com_reklama_balans.tpl');


    } else {

            echo 
'Доступ запрещен! <a href="/login">Авторизуйтесь</a> пожалуйста или <a href="/registration">зарегистрируйтесь</a>.';

    }

    }
    if (
$do=='billing'){

        if (
$inUser->id){
        
$user_balans cmsBilling::getBalance($inUser->id);

        
$pokazi $inCore->request('pokazi''str');

        if(
$pokazi 0){
              
$price_bill cmsBilling::getAction('reklama''add_pokazi');
              foreach(
$price_bill['point_cost'] as $key=>$price){
                  if(
$inUser->group_id == $key){
                  
$price_billing $price;
                  }
              }
              
$summ $price_billing $pokazi;

              if(
$user_balans $summ){
                  echo 
'<h1 class="con_heading">Произошла ошибка при оплате!</h1>';
                  echo 
'Не достаточно средств на баллансе! <br>';
                  echo 
'<input type="submit" value="Пополнить баланс" onclick="location.href='/billing'">';
                  echo 
'<input type="submit" value="Продолжить &#187;" onclick="location.href='/reklama'">';
                  
$success false;
              }else{

                  
$success true;
              }
        }else{
            echo 
'<h1 class="con_heading">Произошла ошибка при оплате!</h1>';
            echo 
'Сума указана не верно! <br>';
            echo 
'<input type="submit" value="Продолжить &#187;" onclick="location.href='/reklama'">';
            
$success false;
        }


              if (
$success){

                  if (
IS_BILLING) {
                      
cmsBilling::process('reklama''add_pokazi'$summ);
                  }
                  
$points $pokazi 1000;
                   
$bal $model->inDB->get_field('cms_reklama_balans''user_id = '.$inUser->id'balans');
                   
$balans $bal $points;
                   
$model->inDB->query("UPDATE cms_reklama_balans SET balans={$balans} WHERE user_id = {$inUser->id}");
                   
$model->inDB->query("UPDATE cms_reklama SET bal = 1 WHERE user_id = {$inUser->id}");

              echo 
'<h1 class="con_heading">Оплата произведена успешно</h1>';
              echo 
'С вшего баланса списано '.$summ.' баллов. <br>';
              echo 
'Вам начислено '.$points.' показов. <br>';
              echo 
'<input type="submit" value="Продолжить &#187;" onclick="location.href='/reklama'">';
              }
        } else {

            echo 
'Доступ запрещен! <a href="/login">Авторизуйтесь</a> пожалуйста или <a href="/registration">зарегистрируйтесь</a>.';

        }


        }

    if(
$do == 'webmoney'){
        if (
$inUser->id){

            
$config $model->getConfig();

            
$type_mw $inCore->request('type_wm''str');
            
$pokazi $inCore->request('pokazi''int');

            
$kurs $config[$type_mw];
            
$summ $pokazi*$config['price'];
            
$summ_pokazi =  $pokazi*1000;
            if(
$type_mw == 'wm_kurs_z'){
                
$pay_purse $config['wmz'];
                
$summa round($summ/$kurs2);
                
$type_summ 'WMZ';
            }elseif(
$type_mw == 'wm_kurs_u'){
                
$pay_purse $config['wmu'];
                
$summa round($summ/$kurs2);
                
$type_summ 'WMU';
            }elseif(
$type_mw == 'wm_kurs_r'){
                
$pay_purse $config['wmr'];
                
$summa round($summ*$kurs2);
                
$type_summ 'WMR';
            }
            
$summa str_replace(',','.',$summa);
            
$reklama_pay['user_id'] = $inUser->id;
            
$reklama_pay['secret_key'] = md5(session_id());
            
$reklama_pay['summ'] = $summa;
            
$reklama_pay['purse'] = $pay_purse;
            
$reklama_pay['type_wm'] = $type_mw;
            
$reklama_pay['pokazi'] = $summ_pokazi;

            
$model->deleteExpiredReklamaPay(session_id());

            
$reklama_pay['id'] = $model->addReklamaPay($reklama_pay);

            
$numberpay $reklama_pay['id'];

            echo 
'<h1 class="con_heading">Покупка показов с помощью Webmoney</h1>';
            if (!
$summa){ echo'<div style="color:red;">Не выбрано количество показов! <input name="back" type="button" id="back" value="Назад" onclick="window.history.back();"/></div>'; return;}
            echo 
'Подтверждение оплаты рекламных показов на сумму <strong>'.$summa.' '.$type_summ.'</strong>';

            echo
'<form method="POST" action="'.$config['url_pay'].'">
                      <input type="hidden" name="LMI_PAYMENT_AMOUNT" value="'
.$summa.'">
                      <input type="hidden" name="LMI_PAYMENT_DESC" value="Пополнение баланса показов рекламы">
                      <input type="hidden" name="LMI_PAYMENT_NO" value="'
.$numberpay.'">
                      <input type="hidden" name="LMI_PAYEE_PURSE" value="'
.$pay_purse.'">
                      <input type="hidden" name="LMI_SIM_MODE" value="'
.$config['sim_mode'].'">
                      <input type="hidden" name="user_id" value="'
.$inUser->id.'">
                      <input type="hidden" name="secr" value="'
.$reklama_pay['secret_key'].'" />
                      <input type="submit" value="Пополнить">
                </form>'
;


        } else {

        echo 
'Доступ запрещен! <a href="/login">Авторизуйтесь</a> пожалуйста или <a href="/registration">зарегистрируйтесь</a>.';

        }
    }

    if(
$do == 'webmoney_result'){

        
$reklama_pay $model->getReklamaPay($_POST['LMI_PAYMENT_NO']);

        if(
$_POST['LMI_PREREQUEST']==1) {

        if(!
$reklama_pay['id'] or $reklama_pay['id']=="") {
            
$err=1;
            echo 
"ERR: НЕТ ТАКОГО ТОВАРА";
            exit;
        }

        if(
trim($reklama_pay['summ'])!=trim($_POST['LMI_PAYMENT_AMOUNT'])) {
            
$err=1;
            echo 
"ERR: НЕВЕРНАЯ СУММА ".$_POST['LMI_PAYMENT_AMOUNT'];
            exit;
        }

        if(
trim($_POST['LMI_PAYEE_PURSE'])!=$reklama_pay['purse']) {
            
$err=1;
            echo 
"ERR: НЕВЕРНЫЙ КОШЕЛЕК ПОЛУЧАТЕЛЯ ".$_POST['LMI_PAYEE_PURSE'];
            exit;
        }

        if(!
$err)
            echo 
"YES";
        }else{
          
$config $model->getConfig();

          
$secret_key $config['secret_key'];
          
// Склеиваем строку параметров
          
$common_string $_POST['LMI_PAYEE_PURSE'].$_POST['LMI_PAYMENT_AMOUNT'].$_POST['LMI_PAYMENT_NO'].
             
$_POST['LMI_MODE'].$_POST['LMI_SYS_INVS_NO'].$_POST['LMI_SYS_TRANS_NO'].
             
$_POST['LMI_SYS_TRANS_DATE'].$secret_key.$_POST['LMI_PAYER_PURSE'].$_POST['LMI_PAYER_WM'];
          
// Шифруем полученную строку в MD5 и переводим ее в верхний регистр
          
$hash strtoupper(md5($common_string));
          
// Прерываем работу скрипта, если контрольные суммы не совпадают
          
if($hash!=$_POST['LMI_HASH']) return 'ERR: Контрольные суммы не совпали';

           
$bal     $inDB->get_field('cms_reklama_balans''user_id = '.$reklama_pay['user_id'], 'balans');
           
$kurs $config[$reklama_pay['type_wm']];
           
$summ $_POST['LMI_PAYMENT_AMOUNT'];
           if(
$reklama_pay['type_wm'] == 'wm_kurs_z'){
               
$type 'Webmoney Z';
               
$summa round($summ*$kurs2);
           }elseif(
$reklama_pay['type_wm'] == 'wm_kurs_u'){
               
$type 'Webmoney U';
               
$summa round($summ*$kurs2);
           }elseif(
$reklama_pay['type_wm'] == 'wm_kurs_r'){
               
$type 'Webmoney R';
               
$summa round($summ2);
           }


           
$count $summa/$config['price'];
           
$points $reklama_pay['pokazi'];
           
$balans $bal $points;

           
$model->inDB->query("UPDATE cms_reklama_balans SET balans={$balans} WHERE user_id = {$reklama_pay['user_id']}");
           
$model->inDB->query("UPDATE cms_reklama SET bal = 1 WHERE user_id = {$reklama_pay['user_id']}");
           
$model->inDB->query("INSERT INTO cms_reklama_psys_stat (user_id, pay_sys, price, pubdate) VALUES ({$reklama_pay['user_id']}, '{$type}', {$_POST['LMI_PAYMENT_AMOUNT']}, NOW())");

        }



    }

        if (
$do=='robokassa'){
        if (
$inUser->id){

                        if(
$_POST){
                            
$config $model->getConfig();
                            
$money $inCore->request('money''str');



                            
$login $config['mon_login'];
                            
$amount floatval($money);
                            
$idd $inUser->id;
                            
$pwd1 $config['mon_pwd1'];
                            
$signature md5($login ":" $amount ":" $idd ":" $pwd1);
                            
$inv_desc $config['mon_desc'];


                            echo 
'<h1 class="con_heading">Покупка показов с помощью Robokassa</h1>';
                            if (
$money<$config['price']){ echo'<div style="color:red;">Не выбрано количество показов! <input name="back" type="button" id="back" value="Назад" onclick="window.history.back();"/></div>'; return;}
                            echo 
'Подтверждение оплаты рекламных показов на сумму <strong>'.$amount.' руб.</strong>';

                            echo 
'<form method="post" action="'.$config['mon_url'].'">';
                            echo 
'<input type="hidden" name="MrchLogin" value="'.$login.'" />';
                            echo 
'<input type="hidden" name="OutSum" value="'.$amount.'" />';
                            echo 
'<input type="hidden" name="InvId" value="'.$idd.'" />';
                            echo 
'<input type="hidden" name="Desc" value="'.$inv_desc.'" />';
                            echo 
'<input type="hidden" name="SignatureValue" value="'.$signature.'" />';

                            echo 
'<input type="submit" value="Подтвердить" />';

                            echo 
'</form>';


                        }
            } else {

            echo 
'Доступ запрещен! <a href="/login">Авторизуйтесь</a> пожалуйста или <a href="/registration">зарегистрируйтесь</a>.';

            }



    }

    if (
$do=='result_robokasa'){

        
$config $model->getConfig();
        
$id intval($_POST['InvId']); // получаем номер транзакции
        
$pwd2 $config['mon_pwd2'];;

        if ( 
strtolower($_POST['SignatureValue']) != strtolower(md5($_POST['OutSum'] . ":" $id ":" $pwd2)) ) {
         
// не совпадает подпись
         
echo "ERR: invalid signature";
         exit();
        }

        
// и если все нормально:
        // принимаем платеж, помечаем у себя в базе его, как выполненный
        // и выводим положительный ответ Робокассе
         
$bal     $model->inDB->get_field('cms_reklama_balans''user_id = '.$id'balans');
         
$count $_POST['OutSum']/$config['price'];
         
$points 1000 $count;
         
$balans $bal $points;
         
$model->inDB->query("UPDATE cms_reklama_balans SET balans={$balans} WHERE user_id = {$id}");
         
$model->inDB->query("UPDATE cms_reklama SET bal = 1 WHERE user_id = {$id}");
         
$model->inDB->query("INSERT INTO cms_reklama_psys_stat (user_id, pay_sys, price, pubdate) VALUES ({$id}, 'RoboKassa', {$_POST['OutSum']}, NOW())");

        echo 
"OK";
        exit();

    }

    if (
$do == 'pay_success') {
        if (
$inUser->id){

        
$balans $model->getBalans($inUser->id);

        echo 
'<h1 class="con_heading">Оплата успешо произведена!</h1>';

        echo 
'<div>У вас на балансе <strong>'.$balans['balans'].'</strong> показов</div>';
        } else {

            echo 
'Доступ запрещен! <a href="/login">Авторизуйтесь</a> пожалуйста или <a href="/registration">зарегистрируйтесь</a>.';

        }
    }

    if (
$do == 'pay_fail') {
        if (
$inUser->id){


        echo 
'<h1 class="con_heading">Произошла ошибка при оплате!</h1>';
        echo 
'<input type="submit" value="Продолжить &#187;" onclick="location.href='/reklama'">';

        } else {

            echo 
'Доступ запрещен! <a href="/login">Авторизуйтесь</a> пожалуйста или <a href="/registration">зарегистрируйтесь</a>.';
        }
    }

}
?>
Онлайн: 1
Реклама