diff --git a/e107_handlers/e_parse_class.php b/e107_handlers/e_parse_class.php index 4f3897b1e..1bd1497a7 100644 --- a/e107_handlers/e_parse_class.php +++ b/e107_handlers/e_parse_class.php @@ -3864,6 +3864,10 @@ class e_parser $parm['srcset'] = $tp->thumbSrcSet($file, $srcSetParm); } + elseif(strpos($file,'http')===0) + { + $path = $file; + } elseif($file[0] == '{') // Legacy v1.x path. Example: {e_PLUGIN}myplugin/images/fixedimage.png { $path = $tp->replaceConstants($file,'abs'); @@ -3891,6 +3895,8 @@ class e_parser $path = $file; } + + $id = (!empty($parm['id'])) ? "id=\"".$parm['id']."\" " : "" ; $class = (!empty($parm['class'])) ? $parm['class'] : "img-responsive"; $alt = (!empty($parm['alt'])) ? $tp->toAttribute($parm['alt']) : basename($file); diff --git a/e107_plugins/banner/admin_banner.php b/e107_plugins/banner/admin_banner.php index 45b524327..ac7f96cbc 100644 --- a/e107_plugins/banner/admin_banner.php +++ b/e107_plugins/banner/admin_banner.php @@ -32,6 +32,13 @@ $e_sub_cat = 'banner'; e107::lan('banner',false,'front'); e107::lan('banner',true,true); +e107::css('inline', " + +.banner-image .tab-content { padding-top:15px;} + + +"); + e107::js('footer-inline',' $("#banner-campaign-sel").on("change", function() { @@ -119,7 +126,7 @@ class banner_ui extends e_admin_ui 'banner_clientname' => array ( 'title' => BANNERLAN_22, 'type' => 'method', 'tab'=>1, 'data' => 'str', 'width' => 'auto', 'filter' => true, 'help' => '', 'readParms' => '', 'writeParms' => '', 'class' => 'left', 'thclass' => 'left', ), 'banner_clientlogin' => array ( 'title' => BNRLAN_12, 'type' => 'method', 'tab'=>1, 'data' => 'str', 'width' => 'auto', 'help' => '', 'readParms' => '', 'writeParms' => '', 'class' => 'center', 'thclass' => 'center', ), 'banner_clientpassword' => array ( 'title' => LAN_PASSWORD, 'type' => 'text', 'tab'=>1,'data' => 'str', 'width' => 'auto', 'help' => '', 'readParms' => '', 'writeParms' => 'strength=1&password=1&required=0&generate=1&nomask=1', 'class' => 'center', 'thclass' => 'center', ), - 'banner_image' => array ( 'title' => LAN_IMAGE, 'type' => 'image', 'data' => 'str', 'width' => 'auto', 'help' => '', 'readParms' => 'thumb=0x50&legacyPath={e_IMAGE}banners', 'writeParms' => 'media=banner&w=600&legacyPath={e_IMAGE}banners', 'class' => 'left', 'thclass' => 'left', ), + 'banner_image' => array ( 'title' => LAN_IMAGE, 'type' => 'method', 'data' => 'str', 'width' => 'auto', 'help' => '', 'readParms' => 'thumb=0x50&legacyPath={e_IMAGE}banners', 'writeParms' => 'media=banner&w=600&legacyPath={e_IMAGE}banners', 'class' => 'left', 'thclass' => 'left', ), 'banner_clickurl' => array ( 'title' => BNRLAN_15, 'type' => 'text', 'data' => 'str', 'width' => 'auto', 'inline' => true, 'help' => '', 'readParms' => '', 'writeParms' => 'size=xxlarge&required=1', 'class' => 'left', 'thclass' => 'left', ), 'banner_impurchased' => array ( 'title' => BNRLAN_16, 'type' => 'number', 'data' => 'int', 'width' => 'auto', 'inline' => true, 'readParms' => '', 'writeParms' => '', 'class' => 'center', 'thclass' => 'center', 'help'=>'0 = unlimited' ), 'banner_tooltip' => array ( 'title' => LAN_TOOLTIP, 'type' => 'text', 'data' => 'str', 'width' => 'auto', 'help' => '', 'readParms' => '', 'writeParms' => array('size'=>'xxlarge'), 'class' => 'center', 'thclass' => 'center', ), @@ -129,7 +136,7 @@ class banner_ui extends e_admin_ui 'banner_startdate' => array ( 'title' => LAN_START, 'type' => 'datestamp', 'tab'=>1,'data' => 'int', 'width' => 'auto', 'filter' => true, 'help' => '', 'readParms' => '', 'writeParms' => '', 'class' => 'center', 'thclass' => 'center', ), 'banner_enddate' => array ( 'title' => LAN_END, 'type' => 'datestamp', 'tab'=>1, 'data' => 'int', 'width' => 'auto', 'filter' => true, 'help' => '', 'readParms' => '', 'writeParms' => '', 'class' => 'center', 'thclass' => 'center', ), - 'banner_active' => array ( 'title' => LAN_VISIBILITY, 'type' => 'userclass', 'data' => 'int', 'width' => 'auto', 'filter' => true, 'inline' => true, 'help' => '', 'readParms' => '', 'writeParms' => '', 'class' => 'left', 'thclass' => 'left', ), + 'banner_active' => array ( 'title' => LAN_VISIBILITY, 'type' => 'userclass', 'data' => 'int', 'width' => 'auto', 'filter' => true, 'batch'=>true, 'inline' => true, 'help' => '', 'readParms' => '', 'writeParms' => '', 'class' => 'left', 'thclass' => 'left', ), 'banner_clicks' => array ( 'title' => BANNERLAN_24, 'type' => 'number', 'noedit'=>true, 'readonly'=>2, 'data' => 'int', 'width' => 'auto', 'help' => '', 'readParms' => '', 'writeParms' => '', 'class' => 'center', 'thclass' => 'center', ), 'click_percentage' => array ( 'title' => BANNERLAN_25, 'type' => 'method', 'noedit'=>true, 'data' => false, 'width' => 'auto', 'help' => '', 'readParms' => '', 'writeParms' => '', 'class' => 'center', 'thclass' => 'center', ), @@ -176,6 +183,11 @@ class banner_ui extends e_admin_ui $new_data['banner_campaign'] = $new_data['banner_campaign_sel']; } + + if(!empty($new_data['banner_image_remote'])) + { + $new_data['banner_image'] = $new_data['banner_image_remote']; + } return $new_data; } @@ -208,6 +220,11 @@ class banner_ui extends e_admin_ui { $new_data['banner_campaign'] = $new_data['banner_campaign_sel']; } + + if(!empty($new_data['banner_image_remote'])) + { + $new_data['banner_image'] = $new_data['banner_image_remote']; + } return $new_data; } @@ -425,6 +442,76 @@ class banner_form_ui extends e_admin_form_ui } + function banner_image($curVal,$mode) + { + $frm = e107::getForm(); + + switch($mode) + { + case 'read': // List Page + return e107::getParser()->toImage($curVal); + break; + + case 'write': // Edit Page + + $opts = 'media=banner&w=600&legacyPath={e_IMAGE}banners'; + + if(strpos($curVal,'http') === 0) + { + $val1 = null; + $val2 = $curVal; + } + else + { + $val1 = $curVal; + $val2 = null; + } + + $tab1 = $this->imagepicker('banner_image',$val1, null, $opts); + + + $tab2 = "
". $this->text('banner_image_remote',$val2, 255, array('size'=>'xxlarge', 'placeholder'=>'eg. http://some-website.com/banner-image.jpg', 'title'=>'This will override any local image you have set.'))."
"; + + if(!empty($val2)) + { + $tab2 .= e107::getParser()->toImage($val2); + } + + $tabText = array( + 'local' => array('caption'=>BNRLAN_50, 'text'=>$tab1), + 'remote' => array('caption'=>BNRLAN_51, 'text'=>$tab2), + ); + + return " "; + // return $frm->text('banner_clientname',$curVal); + break; + + case 'filter': + case 'batch': + return $this->clients; + break; + } + } + + + + + + + + + + + + + + + + + + + + // Custom Method/Function function banner_clientname($curVal,$mode) diff --git a/e107_plugins/banner/e_shortcode.php b/e107_plugins/banner/e_shortcode.php index 9200adf5b..d40778695 100644 --- a/e107_plugins/banner/e_shortcode.php +++ b/e107_plugins/banner/e_shortcode.php @@ -82,19 +82,9 @@ class banner_shortcodes extends e_shortcode break; default: - if($row['banner_image'][0] == '{') - { - $src = $row['banner_image']; - $style = ''; - } - else - { - $src = e_IMAGE_ABS.'banners/'.$row['banner_image']; - $style = "'border:0'"; - } - // Somehow, can't use vartrue core function when referencing $parm['class'], gives bug... + $class = empty($parm['class']) ? "e-banner img-responsive" : $parm['class']; - $ban_ret = $tp->toImage($src, array('class'=> $class , 'alt'=>$row['banner_clickurl'], 'style'=>$style)); + $ban_ret = $tp->toImage($row['banner_image'], array('class'=> $class , 'alt'=>$row['banner_clickurl'], 'legacy'=>'{e_IMAGE}banners')); break; } diff --git a/e107_plugins/banner/languages/English_admin.php b/e107_plugins/banner/languages/English_admin.php index 21b229d23..88d03715e 100644 --- a/e107_plugins/banner/languages/English_admin.php +++ b/e107_plugins/banner/languages/English_admin.php @@ -67,7 +67,9 @@ define("BNRLAN_46", "All selected campaigns rendered in one single menu"); // BA define("BNRLAN_47", "All selected campaigns rendered in separate menus"); // BANNER_MENU_L14 define("BNRLAN_48", "All selected campaigns (no box rendering)"); -//define("BNRLAN_49", "Tooltip");//LAN_TOOLTIP Linkwords also +//define("BNRLAN_49", "Tooltip");//LAN_TOOLTIP Linkwords also \ +define("BNRLAN_50", "Local"); +define("BNRLAN_51", "Remote"); define("BNRLAN_HELP_01", "Banner Help"); define("BNRLAN_HELP_02", "Use this plugin to manage advertising on your website.