Вход Регистрация
Файл: InstantSocial/uploud/components/banners/model.php
Строк: 143
<?php
/******************************************************************************/
//                                                                            //
//                             InstantCMS v1.9                                //
//                        http://www.instantcms.ru/                           //
//                                                                            //
//                   written by InstantCMS Team, 2007-2011                    //
//                produced by InstantSoft, (www.instantsoft.ru)               //
//                                                                            //
//                        LICENSED BY GNU/GPL v2                              //
//                                                                            //
/******************************************************************************/

if(!defined('VALID_CMS')) { die('ACCESS DENIED'); }

class 
cms_model_banners{

    private 
$inDB;

    function 
__construct(){
        
$this->inDB cmsDatabase::getInstance();
    }

/* ==================================================================================================== */
/* ==================================================================================================== */

    
public function getBanner($id){
        
$sql    "SELECT * FROM cms_banners WHERE id = $id LIMIT 1";
        
$result $this->inDB->query($sql);

        if (
$this->inDB->num_rows($result)){
            
$banner     $this->inDB->fetch_assoc($result);
            
$banner     cmsCore::callEvent('GET_BANNER'$banner);
            return 
$banner;
        } else {
            return 
false;
        }
    }

/* ==================================================================================================== */
/* ==================================================================================================== */

    
public function getBannerHTML($position) {

        if (!
$position) { return false; }

        
$html '';

        
//get active banners with enough hits
        
$sql "SELECT *
                FROM cms_banners
                WHERE position = '
$position' AND published = 1 AND ((maxhits > hits) OR (maxhits = 0))
                ORDER BY RAND()
                LIMIT 1"
;

        
$rs $this->inDB->query($sql);

        if (
$this->inDB->num_rows($rs)==1){

            
$banner $this->inDB->fetch_assoc($rs);

            if (
$banner['typeimg']=='image'){
                
$html '<a href="/gobanner'.$banner['id'].'" title="'.$banner['title'].'" target="_blank"><img src="/images/banners/'.$banner['fileurl'].'" border="0" alt="'.$banner['title'].'"/></a>';
            }

            if (
$banner['typeimg']=='swf'){
                
$html '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="468" height="60">'."n".
                            
'<param name="movie" value="/images/banners/'.$banner['fileurl'].'?banner_id='.$banner['id'].'" />'."n".
                            
'<param name="quality" value="high" />'."n".
                            
'<param name="FlashVars" value="banner_id='.$banner['id'].'" />'."n".
                            
'<embed src="/images/banners/'.$banner['fileurl'].'?banner_id='.$banner['id'].'" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="468" height="60">'."n".
                            
'</embed>'."n".
                        
'</object>';
            }

            if (
$html) { $this->inDB->query("UPDATE cms_banners SET hits = hits + 1 WHERE id=".$banner['id']);    }

        }

        return 
$html;

    }

/* ==================================================================================================== */
/* ==================================================================================================== */

    //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    /**
     * Возвращает элементы <option> для списка баннерных позиций
     * @param int $selected
     * @return html
     */
    
public function getBannersListHTML($selected=0){
        
$html '';
        for(
$bp=1$bp<=30$bp++){
            if (@
$selected==$bp){
                
$s 'selected';
            } else {
                
$s '';
            }
            
$html .= '<option value="banner'.$bp.'" '.$s.'>banner'.$bp.'</option>'."n";
        }
        return 
$html;
    }
    
/* ==================================================================================================== */
/* ==================================================================================================== */

    
public function clickBanner($id){
        
$update_sql "UPDATE cms_banners SET clicks = clicks + 1 WHERE id=$id";
        
$this->inDB->query($update_sql);
        
cmsCore::callEvent('CLICK_BANNER'$id);
        return 
true;
    }

}
Онлайн: 0
Реклама