mirror of
https://github.com/e107inc/e107.git
synced 2025-01-17 12:48:24 +01:00
Issue #1257 More work on SEF Thumb URLs.
This commit is contained in:
parent
27c2a07d25
commit
0c3125a11e
@ -1310,10 +1310,10 @@ class media_admin_ui extends e_admin_ui
|
|||||||
$br = (E107_DEBUG_LEVEL > 0) ? "<br />" : "";
|
$br = (E107_DEBUG_LEVEL > 0) ? "<br />" : "";
|
||||||
|
|
||||||
$text .= "
|
$text .= "
|
||||||
".$br."<input title='bbcode' type='{$type}' readonly='readonly' class='span11' id='bbcode_holder' name='bbcode_holder' value='' />
|
".$br."<input title='bbcode' type='{$type}' readonly='readonly' class='span11 col-md-11' id='bbcode_holder' name='bbcode_holder' value='' />
|
||||||
".$br."<input title='html/wysiwyg' type='{$type}' class='span11' readonly='readonly' id='html_holder' name='html_holder' value='' />
|
".$br."<input title='html/wysiwyg' type='{$type}' class='span11 col-md-11' readonly='readonly' id='html_holder' name='html_holder' value='' />
|
||||||
".$br."<input title='(preview) src' type='{$type}' class='span11' readonly='readonly' id='src' name='src' value='' />
|
".$br."<input title='(preview) src' type='{$type}' class='span11 col-md-11' readonly='readonly' id='src' name='src' value='' />
|
||||||
".$br."<input title='path (saved to db)' type='{$type}' class='span11' readonly='readonly' id='path' name='path' value='' />
|
".$br."<input title='path (saved to db)' type='{$type}' class='span11 col-md-11' readonly='readonly' id='path' name='path' value='' />
|
||||||
";
|
";
|
||||||
|
|
||||||
return $text;
|
return $text;
|
||||||
|
@ -42,8 +42,8 @@ class bb_img extends e_bb_base
|
|||||||
|
|
||||||
// Replace the bbcode path with a real one.
|
// Replace the bbcode path with a real one.
|
||||||
$code_text = str_replace('{e_MEDIA}images/','{e_MEDIA_IMAGE}',$code_text); //BC 0.8 fix.
|
$code_text = str_replace('{e_MEDIA}images/','{e_MEDIA_IMAGE}',$code_text); //BC 0.8 fix.
|
||||||
$code_text = str_replace('{e_MEDIA_IMAGE}', e_HTTP."thumb.php?src=e_MEDIA_IMAGE/", $code_text);
|
// $code_text = str_replace('{e_MEDIA_IMAGE}', e_HTTP."thumb.php?src=e_MEDIA_IMAGE/", $code_text);
|
||||||
$code_text = str_replace('{e_THEME}', e_HTTP."thumb.php?src=e_THEME/", $code_text);
|
// $code_text = str_replace('{e_THEME}', e_HTTP."thumb.php?src=e_THEME/", $code_text);
|
||||||
$imgParms = $this->processParm($code_text, $parm);
|
$imgParms = $this->processParm($code_text, $parm);
|
||||||
|
|
||||||
$figcaption = false;
|
$figcaption = false;
|
||||||
@ -60,25 +60,22 @@ class bb_img extends e_bb_base
|
|||||||
// $parmStr .= " ".$k.'="'.$v.'"';
|
// $parmStr .= " ".$k.'="'.$v.'"';
|
||||||
$p[] = $tp->toAttribute($k).'="'.$tp->toAttribute($v).'"';
|
$p[] = $tp->toAttribute($k).'="'.$tp->toAttribute($v).'"';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// $w = e107::getBB()->resizeWidth(); // varies depending on the class set by external script. see admin->media-manager->prefs
|
|
||||||
|
|
||||||
|
|
||||||
$w = vartrue($imgParms['width']) ? intval($imgParms['width']) : vartrue(e107::getBB()->resizeWidth(),0);
|
$w = vartrue($imgParms['width']) ? intval($imgParms['width']) : vartrue(e107::getBB()->resizeWidth(),0);
|
||||||
// $h = vartrue($imgParms['height']) ? intval($imgParms['height']) : e107::getBB()->resizeHeight();
|
// $h = vartrue($imgParms['height']) ? intval($imgParms['height']) : e107::getBB()->resizeHeight();
|
||||||
|
|
||||||
$resize = "&w=".$w; // Always resize - otherwise the thumbnailer returns nothing.
|
$resize = "&w=".$w; // Always resize - otherwise the thumbnailer returns nothing.
|
||||||
$parmStr = implode(" ",$p);
|
$parmStr = implode(" ",$p);
|
||||||
|
|
||||||
// print_a($imgParms);
|
// print_a($imgParms);
|
||||||
// print_a($parmStr);
|
// print_a($parmStr);
|
||||||
|
|
||||||
|
$url = e107::getParser()->thumbUrl($code_text, $resize);
|
||||||
|
|
||||||
if(!empty($figcaption))
|
if(!empty($figcaption))
|
||||||
{
|
{
|
||||||
$html = "<figure>\n";
|
$html = "<figure>\n";
|
||||||
$html .= "<img src=\"".$code_text.$resize."\" {$parmStr} />\n";
|
$html .= "<img src=\"".$url."\" {$parmStr} />";
|
||||||
$html .= "<figcaption>".e107::getParser()->filter($figcaption,'str')."</figcaption>\n";
|
$html .= "<figcaption>".e107::getParser()->filter($figcaption,'str')."</figcaption>\n";
|
||||||
$html .= "</figure>";
|
$html .= "</figure>";
|
||||||
|
|
||||||
@ -86,7 +83,7 @@ class bb_img extends e_bb_base
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return "<img src=\"".$code_text.$resize."\" {$parmStr} />";
|
return "<img src=\"".$url."\" {$parmStr} />";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
if(empty($_POST['content']) && empty($_GET['debug']))
|
if(empty($_POST['content']) && empty($_GET['debug']) && !defined('TINYMCE_DEBUG'))
|
||||||
{
|
{
|
||||||
header('Content-Length: 0');
|
header('Content-Length: 0');
|
||||||
exit;
|
exit;
|
||||||
@ -17,7 +17,11 @@ if(empty($_POST['content']) && empty($_GET['debug']))
|
|||||||
$_E107['no_online'] = true;
|
$_E107['no_online'] = true;
|
||||||
$_E107['no_menus'] = true;
|
$_E107['no_menus'] = true;
|
||||||
$_E107['no_forceuserupdate'] = true;
|
$_E107['no_forceuserupdate'] = true;
|
||||||
require_once("../../../../class2.php");
|
|
||||||
|
if(!defined('TINYMCE_DEBUG'))
|
||||||
|
{
|
||||||
|
require_once("../../../../class2.php");
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Two Modes supported below going to and from the Tinymce wysiwyg editor.
|
* Two Modes supported below going to and from the Tinymce wysiwyg editor.
|
||||||
@ -29,7 +33,7 @@ require_once("../../../../class2.php");
|
|||||||
class e107TinyMceParser
|
class e107TinyMceParser
|
||||||
{
|
{
|
||||||
|
|
||||||
protected $gzipCompression = true;
|
protected $gzipCompression = false;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
@ -38,6 +42,11 @@ class e107TinyMceParser
|
|||||||
{
|
{
|
||||||
$html = '';
|
$html = '';
|
||||||
|
|
||||||
|
if(defined('TINYMCE_DEBUG'))
|
||||||
|
{
|
||||||
|
$this->gzipCompression = false;
|
||||||
|
}
|
||||||
|
|
||||||
if(!empty($_GET['debug']) && getperms('0'))
|
if(!empty($_GET['debug']) && getperms('0'))
|
||||||
{
|
{
|
||||||
$debug = true; // For future use.
|
$debug = true; // For future use.
|
||||||
@ -213,8 +222,42 @@ TEMPL;
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Split a thumb.php url into an array which can be parsed back into the thumbUrl method. .
|
||||||
|
* @param $src
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
function thumbUrlDecode($src)
|
||||||
|
{
|
||||||
|
list($url,$qry) = explode("?",$src);
|
||||||
|
|
||||||
|
$ret = array();
|
||||||
|
|
||||||
|
if(strstr($url,"thumb.php") && !empty($qry)) // Regular
|
||||||
|
{
|
||||||
|
parse_str($qry,$val);
|
||||||
|
$ret = $val;
|
||||||
|
}
|
||||||
|
elseif(preg_match('/media\/img\/(a)?([\d]*)x(a)?([\d]*)\/(.*)/',$url,$match)) // SEF
|
||||||
|
{
|
||||||
|
$wKey = $match[1].'w';
|
||||||
|
$hKey = $match[3].'h';
|
||||||
|
|
||||||
|
$ret = array(
|
||||||
|
'src'=> 'e_MEDIA_IMAGE/'.$match[5],
|
||||||
|
$wKey => $match[2],
|
||||||
|
$hKey => $match[4]
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
return $ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Rebuld <img> tags with modified thumbnail size.
|
* Rebuld <img> tags with modified thumbnail size.
|
||||||
|
* @param $text
|
||||||
|
* @return mixed
|
||||||
*/
|
*/
|
||||||
function updateImg($text)
|
function updateImg($text)
|
||||||
{
|
{
|
||||||
@ -235,34 +278,29 @@ TEMPL;
|
|||||||
$alt = vartrue($img['alt']) ? ' alt="'.$img['alt'].'"' : '';
|
$alt = vartrue($img['alt']) ? ' alt="'.$img['alt'].'"' : '';
|
||||||
$title = vartrue($img['title']) ? ' title="'.$img['title'].'"' : '';
|
$title = vartrue($img['title']) ? ' title="'.$img['title'].'"' : '';
|
||||||
|
|
||||||
list($url,$qry) = explode("?",$img['src']);
|
$qr = $this->thumbUrlDecode($img['src']);
|
||||||
|
|
||||||
parse_str($qry,$qr);
|
if(substr($qr['src'],0,4)!=='http' && empty($qr['w']) && empty($qr['aw']))
|
||||||
|
|
||||||
if(substr($url,0,4)!=='http' && empty($qr['w']) && empty($qr['aw']))
|
|
||||||
{
|
{
|
||||||
$qr['w'] = $img['width'];
|
$qr['w'] = $img['width'];
|
||||||
$qr['h'] = $img['height'];
|
$qr['h'] = $img['height'];
|
||||||
}
|
}
|
||||||
|
|
||||||
$src = $url."?".urldecode(http_build_query($qr));
|
$src = e107::getParser()->thumbUrl($qr['src'],$qr);
|
||||||
|
|
||||||
$replacement = '<img'.$class.$style.' src="'.$src.'"'.$width.$height.$alt.$title.' />';
|
$replacement = '<img src="'.$src.'" '.$style.$alt.$title.$class.$width.$height.' />';
|
||||||
|
|
||||||
$text = preg_replace($regexp, $replacement, $text);
|
$text = preg_replace($regexp, $replacement, $text);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return $text;
|
return $text;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
new e107TinyMceParser();
|
$mce = new e107TinyMceParser();
|
||||||
|
|
||||||
|
|
||||||
?>
|
?>
|
Loading…
x
Reference in New Issue
Block a user