Files
@ f43d1a4680a9
Branch filter:
Location: hot67beta/modules/mod_banners/helper.php
f43d1a4680a9
3.9 KiB
text/x-php
menubar 0 to 10
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 | <?php
/**
* @version $Id: helper.php 10554 2008-07-15 17:15:19Z ircmaxell $
* @package Joomla
* @copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
* @license GNU/GPL, see LICENSE.php
* Joomla! is free software. This version may have been modified pursuant
* to the GNU General Public License, and as distributed it includes or
* is derivative of works licensed under the GNU General Public License or
* other free or open source software licenses.
* See COPYRIGHT.php for copyright notices and details.
*/
// no direct access
defined('_JEXEC') or die('Restricted access');
require_once(JPATH_ADMINISTRATOR.DS.'components'.DS.'com_banners'.DS.'helpers'.DS.'banner.php');
class modBannersHelper
{
function getList(&$params)
{
$model = modBannersHelper::getModel();
// Model Variables
$vars['cid'] = (int) $params->get( 'cid' );
$vars['catid'] = (int) $params->get( 'catid' );
$vars['limit'] = (int) $params->get( 'count', 1 );
$vars['ordering'] = $params->get( 'ordering' );
if ($params->get( 'tag_search' ))
{
$document =& JFactory::getDocument();
$keywords = $document->getMetaData( 'keywords' );
$vars['tag_search'] = BannerHelper::getKeywords( $keywords );
}
$banners = $model->getList( $vars );
$model->impress( $banners );
return $banners;
}
function getModel()
{
if (!class_exists( 'BannersModelBanner' ))
{
// Build the path to the model based upon a supplied base path
$path = JPATH_SITE.DS.'components'.DS.'com_banners'.DS.'models'.DS.'banner.php';
$false = false;
// If the model file exists include it and try to instantiate the object
if (file_exists( $path )) {
require_once( $path );
if (!class_exists( 'BannersModelBanner' )) {
JError::raiseWarning( 0, 'Model class BannersModelBanner not found in file.' );
return $false;
}
} else {
JError::raiseWarning( 0, 'Model BannersModelBanner not supported. File not found.' );
return $false;
}
}
$model = new BannersModelBanner();
return $model;
}
function renderBanner($params, &$item)
{
$link = JRoute::_( 'index.php?option=com_banners&task=click&bid='. $item->bid );
$baseurl = JURI::base();
$html = '';
if (trim($item->custombannercode))
{
// template replacements
$html = str_replace( '{CLICKURL}', $link, $item->custombannercode );
$html = str_replace( '{NAME}', $item->name, $html );
}
else if (BannerHelper::isImage( $item->imageurl ))
{
$image = '<img src="'.$baseurl.'images/banners/'.$item->imageurl.'" alt="'.JText::_('Banner').'" />';
if ($item->clickurl)
{
switch ($params->get( 'target', 1 ))
{
// cases are slightly different
case 1:
// open in a new window
$a = '<a href="'. $link .'" target="_blank">';
break;
case 2:
// open in a popup window
$a = "<a href=\"javascript:void window.open('". $link ."', '', 'toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=780,height=550'); return false\">";
break;
default: // formerly case 2
// open in parent window
$a = '<a href="'. $link .'">';
break;
}
$html = $a . $image . '</a>';
}
else
{
$html = $image;
}
}
else if (BannerHelper::isFlash( $item->imageurl ))
{
//echo $item->params;
$banner_params = new JParameter( $item->params );
$width = $banner_params->get( 'width');
$height = $banner_params->get( 'height');
$imageurl = $baseurl."images/banners/".$item->imageurl;
$html = "<object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" codebase=\"http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0\" border=\"0\" width=\"$width\" height=\"$height\">
<param name=\"movie\" value=\"$imageurl\"><embed src=\"$imageurl\" loop=\"false\" pluginspage=\"http://www.macromedia.com/go/get/flashplayer\" type=\"application/x-shockwave-flash\" width=\"$width\" height=\"$height\"></embed>
</object>";
}
return $html;
}
}
|