diff --git a/e107_handlers/bbcode_handler.php b/e107_handlers/bbcode_handler.php
index 1d5dc426b..5333c1f2e 100644
--- a/e107_handlers/bbcode_handler.php
+++ b/e107_handlers/bbcode_handler.php
@@ -413,8 +413,30 @@ class e_bbcode
{
return;
}
+
+ if(substr(ltrim($text),0,6) == '[html]' && $type == 'img') // support for html img tags inside [html] bbcode.
+ {
+ $tmp = e107::getParser()->getTags($text,'img');
+
+ if(!empty($tmp['img']))
+ {
+ $mtch = array();
+ foreach($tmp['img'] as $k)
+ {
+ $mtch[1][] = str_replace('"','',trim($k['src']));
+ // echo $k['src']."
";
+ }
+
+ }
+
+ }
+ else // regular bbcode;
+ {
+ preg_match_all("/\[".$type."(?:[^\]]*)?]([^\[]*)(?:\[\/".$type."])/im",$text,$mtch);
+ }
+
- preg_match_all("/\[".$type."(?:[^\]]*)?]([^\[]*)(?:\[\/".$type."])/im",$text,$mtch);
+
$ret = array();
@@ -423,6 +445,7 @@ class e_bbcode
$tp = e107::getParser();
foreach($mtch[1] as $i)
{
+
if(substr($i,0,4)=='http')
{
$ret[] = $i;
@@ -572,7 +595,7 @@ class e_bbcode
$doc->loadHTML($html);
$tmp = $doc->getElementsByTagName($tag);
-
+
$var = array();
$attributes = array('class','style','width','height','src','alt','href');
diff --git a/e107_plugins/banner/admin_banner.php b/e107_plugins/banner/admin_banner.php
index 836f5e1b9..f8b74e293 100644
--- a/e107_plugins/banner/admin_banner.php
+++ b/e107_plugins/banner/admin_banner.php
@@ -44,7 +44,7 @@ class banner_admin extends e_admin_dispatcher
'ui' => 'banner_form_ui',
'uipath' => null
),
-
+
);
@@ -69,7 +69,7 @@ class banner_admin extends e_admin_dispatcher
-
+
class banner_ui extends e_admin_ui
{
@@ -88,29 +88,30 @@ class banner_ui extends e_admin_ui
protected $listOrder = 'banner_id DESC';
- protected $fields = array (
+ protected $fields = array (
'checkboxes' => array ( 'title' => '', 'type' => null, 'data' => null, 'width' => '5%', 'thclass' => 'center', 'forced' => '1', 'class' => 'center', 'toggle' => 'e-multiselect', ),
'banner_id' => array ( 'title' => LAN_ID, 'data' => 'int', 'width' => '2%', 'help' => '', 'readParms' => '', 'writeParms' => '', 'class' => 'left', 'thclass' => 'left', ),
'banner_campaign' => array ( 'title' => 'Campaign', 'type' => 'method', 'data' => 'str', 'width' => 'auto', 'filter' => true, 'help' => '', 'readParms' => '', 'writeParms' => '', 'class' => 'left', 'thclass' => 'left', ),
-
+
'banner_clientname' => array ( 'title' => 'Clientname', 'type' => 'method', 'data' => 'str', 'width' => 'auto', 'filter' => true, 'help' => '', 'readParms' => '', 'writeParms' => '', 'class' => 'left', 'thclass' => 'left', ),
'banner_clientlogin' => array ( 'title' => BNRLAN_12, 'type' => 'method', 'data' => 'str', 'width' => 'auto', 'help' => '', 'readParms' => '', 'writeParms' => '', 'class' => 'center', 'thclass' => 'center', ),
'banner_clientpassword' => array ( 'title' => BNRLAN_13, 'type' => 'text', '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' => BNRLAN_14, 'type' => 'image', 'data' => 'str', 'width' => 'auto', 'help' => '', 'readParms' => 'thumb=0x50', 'writeParms' => 'media=banner&w=600', '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, 'help' => '', 'readParms' => '', 'writeParms' => '', 'class' => 'center', 'thclass' => 'center', ),
-
+ 'banner_impurchased' => array ( 'title' => BNRLAN_16, 'type' => 'number', 'data' => 'int', 'width' => 'auto', 'inline' => true, 'readParms' => '', 'writeParms' => '', 'class' => 'center', 'thclass' => 'center', 'help'=>'0 = unlimited' ),
+ 'banner_description' => array ( 'title' => BNRLAN_49, 'type' => 'textarea', 'data' => 'str', 'width' => 'auto', 'filter' => true, 'help' => '', 'readParms' => '', 'writeParms' => '', 'class' => 'center', 'thclass' => 'center', ),
+
'banner_startdate' => array ( 'title' => BNRLAN_17, 'type' => 'datestamp', 'data' => 'int', 'width' => 'auto', 'filter' => true, 'help' => '', 'readParms' => '', 'writeParms' => '', 'class' => 'center', 'thclass' => 'center', ),
'banner_enddate' => array ( 'title' => BNRLAN_18, 'type' => 'datestamp', '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_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', ),
-
- 'banner_impressions' => array ( 'title' => 'Impressions', 'type' => 'method', 'noedit'=>true, 'data' => 'int', 'width' => '12%', 'help' => '', 'readParms' => '', 'writeParms' => '', 'class' => 'left', 'thclass' => 'left', ),
+
+ 'banner_impressions' => array ( 'title' => 'Impressions', 'type' => 'method', 'noedit'=>true, 'data' => 'int', 'width' => '12%', 'readParms' => '', 'writeParms' => '', 'class' => 'left', 'thclass' => 'left', ),
'banner_ip' => array ( 'title' => LAN_IP, 'type' => 'hidden', 'noedit'=>true, 'data' => 'str', 'width' => 'auto', 'help' => '', 'readParms' => '', 'writeParms' => '', 'class' => 'left', 'thclass' => 'left', ),
'options' => array ( 'title' => LAN_OPTIONS, 'type' => null, 'data' => null, 'width' => '10%', 'thclass' => 'center last', 'class' => 'center last', 'forced' => '1', ),
- );
+ );
protected $fieldpref = array('banner_id', 'banner_campaign', 'banner_image', 'banner_clickurl', 'banner_clicks', 'banner_active', 'click_percentage', 'banner_impressions' );
@@ -124,7 +125,7 @@ class banner_ui extends e_admin_ui
public function init()
{
-
+
if (!empty($_POST['update_menu']))
{
$this->menuPageSave();
diff --git a/e107_plugins/banner/banner_menu.php b/e107_plugins/banner/banner_menu.php
index e787a70ef..3475f4861 100644
--- a/e107_plugins/banner/banner_menu.php
+++ b/e107_plugins/banner/banner_menu.php
@@ -140,7 +140,7 @@ if(!empty($menu_pref['banner_campaign']) && !empty($menu_pref['banner_amount']))
$query .= " AND banner_active IN (".USERCLASS_LIST.") ORDER BY RAND($seed) LIMIT ".intval($menu_pref['banner_amount']);
- if($data = $sql->retrieve('banner', 'banner_id, banner_image, banner_clickurl,banner_campaign', $query,true))
+ if($data = $sql->retrieve('banner', 'banner_id, banner_image, banner_clickurl,banner_campaign, banner_description', $query,true))
{
foreach($data as $k=>$row)
{
diff --git a/e107_plugins/banner/banner_sql.php b/e107_plugins/banner/banner_sql.php
index 965124a6f..6469658e3 100644
--- a/e107_plugins/banner/banner_sql.php
+++ b/e107_plugins/banner/banner_sql.php
@@ -4,7 +4,7 @@ CREATE TABLE banner (
banner_clientlogin varchar(20) NOT NULL default '',
banner_clientpassword varchar(50) NOT NULL default '',
banner_image varchar(150) NOT NULL default '',
- banner_clickurl varchar(150) NOT NULL default '',
+ banner_clickurl varchar(250) NOT NULL default '',
banner_impurchased int(10) unsigned NOT NULL default '0',
banner_startdate int(10) unsigned NOT NULL default '0',
banner_enddate int(10) unsigned NOT NULL default '0',
@@ -12,6 +12,7 @@ CREATE TABLE banner (
banner_clicks int(10) unsigned NOT NULL default '0',
banner_impressions int(10) unsigned NOT NULL default '0',
banner_ip text NOT NULL,
+ banner_description text NOT NULL,
banner_campaign varchar(150) NOT NULL default '',
PRIMARY KEY (banner_id)
) ENGINE=MyISAM;
\ No newline at end of file
diff --git a/e107_plugins/banner/e_shortcode.php b/e107_plugins/banner/e_shortcode.php
index 8734bb138..e13454e03 100644
--- a/e107_plugins/banner/e_shortcode.php
+++ b/e107_plugins/banner/e_shortcode.php
@@ -42,10 +42,10 @@ class banner_shortcodes extends e_shortcode
AND banner_active IN (".USERCLASS_LIST.")
ORDER BY RAND($seed) LIMIT 1";
- if($sql->select('banner', 'banner_id, banner_image, banner_clickurl', $query))
+ if($sql->select('banner', 'banner_id, banner_image, banner_clickurl, banner_description', $query))
{
$row = $sql->fetch();
- return $this->renderBanner($row);
+ return $this->renderBanner($row);
}
else
@@ -59,7 +59,7 @@ class banner_shortcodes extends e_shortcode
{
$sql = e107::getDb('banner');
$tp = e107::getParser();
-
+
if(!$row['banner_image'])
{
return "no image assigned to this banner";
@@ -97,7 +97,7 @@ class banner_shortcodes extends e_shortcode
break;
}
- return "".$ban_ret.'';
+ return "toAttribute($row['banner_description'])."\">".$ban_ret.'';
}
diff --git a/e107_plugins/banner/languages/English_admin.php b/e107_plugins/banner/languages/English_admin.php
index 742af21b2..caa6fbf05 100644
--- a/e107_plugins/banner/languages/English_admin.php
+++ b/e107_plugins/banner/languages/English_admin.php
@@ -63,4 +63,6 @@ define("BNRLAN_45", "One campaign rendered in a single menu"); // BANNER_MENU_L1
define("BNRLAN_46", "All selected campaigns rendered in one single menu"); // BANNER_MENU_L13
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", "Description/Tooltip");
?>
\ No newline at end of file
diff --git a/e107_plugins/tinymce4/e_footer.php b/e107_plugins/tinymce4/e_footer.php
index bc06be782..bd85e5e3b 100644
--- a/e107_plugins/tinymce4/e_footer.php
+++ b/e107_plugins/tinymce4/e_footer.php
@@ -17,7 +17,8 @@ if((e107::wysiwyg() === true && check_class($pref['post_html'])) || strpos(e_SEL
{
if(e_PAGE != 'image.php')
{
- e107::js('footer', "https://tinymce.cachefly.net/4.2/tinymce.min.js");
+ // e107::js('footer', "https://tinymce.cachefly.net/4.2/tinymce.min.js");
+ e107::js('footer', "//cdn.tinymce.com/4/tinymce.min.js");
e107::js('footer',e_PLUGIN.'tinymce4/wysiwyg.php','jquery',5);
// Add to e107_config.php to view hidden content when TinyMce not saving correctly
@@ -113,7 +114,7 @@ if((e107::wysiwyg() === true && check_class($pref['post_html'])) || strpos(e_SEL
var s = $('#bbcode_holder').val();
- alert(s);
+ // alert(s);
var p = $.ajax({
type: 'POST',