From 6769436f3b43074d7d5895b36927eddf37b0ba8d Mon Sep 17 00:00:00 2001 From: Fabio Comuni Date: Fri, 21 Oct 2011 16:26:29 +0200 Subject: [PATCH 1/2] oembed. fix html2bbcode when oembed html contains span and utf8 chars --- include/oembed.php | 24 ++++++++++++------- .../plugins/bbcode/editor_plugin_src.js | 17 ++++++++----- 2 files changed, 26 insertions(+), 15 deletions(-) diff --git a/include/oembed.php b/include/oembed.php index 06f71a3b3..a8f6636ff 100644 --- a/include/oembed.php +++ b/include/oembed.php @@ -81,16 +81,22 @@ function oembed_format_object($j){ }; break; case "rich": { // not so safe.. - $ret.= "
".$j->html."
"; + $ret.= $j->html; }; break; } - $embedlink = (isset($j->title))?$j->title:$embedurl; - $ret .= "$embedlink"; - if (isset($j->author_name)) $ret.=" by ".$j->author_name; - if (isset($j->provider_name)) $ret.=" on ".$j->provider_name; + // add link to source if not present in "rich" type + if ( $j->type!='rich' || !strpos($ret,$embedurl) ){ + $embedlink = (isset($j->title))?$j->title:$embedurl; + $ret .= "$embedlink"; + if (isset($j->author_name)) $ret.=" by ".$j->author_name; + if (isset($j->provider_name)) $ret.=" on ".$j->provider_name; + } else { + // add for html2bbcode conversion + $ret .= ""; + } $ret.="
"; - return $ret; + return mb_convert_encoding($ret, 'HTML-ENTITIES', mb_detect_encoding($ret)); } function oembed_bbcode2html($text){ @@ -136,8 +142,8 @@ function oembed_html2bbcode($text) { $xattr = oe_build_xpath("class","oembed"); $entries = $xpath->query("//span[$xattr]"); - - $xattr = oe_build_xpath("rel","oembed"); + + $xattr = "@rel='oembed'";//oe_build_xpath("rel","oembed"); foreach($entries as $e) { $href = $xpath->evaluate("a[$xattr]/@href", $e)->item(0)->nodeValue; if(!is_null($href)) $e->parentNode->replaceChild(new DOMText("[embed]".$href."[/embed]"), $e); @@ -148,4 +154,4 @@ function oembed_html2bbcode($text) { } } -?> \ No newline at end of file +?> diff --git a/library/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin_src.js b/library/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin_src.js index 789e75c39..9e680e104 100644 --- a/library/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin_src.js +++ b/library/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin_src.js @@ -53,19 +53,24 @@ /* oembed */ function _h2b_cb(match) { - text = bin2hex(match); function s_h2b(data) { match = data; - } - $.ajax({ - url: 'oembed/h2b?text=' + text, + } + $.ajax({ + type:"POST", + url: 'oembed/h2b', + data: {text: match}, async: false, success: s_h2b, dataType: 'html' }); return match; } - s = s.replace(//gi, _h2b_cb); + if (s.indexOf('class="oembed')>=0){ + //alert("request oembed html2bbcode"); + s = _h2b_cb(s); + } + /* /oembed */ @@ -154,4 +159,4 @@ // Register plugin tinymce.PluginManager.add('bbcode', tinymce.plugins.BBCodePlugin); -})(); \ No newline at end of file +})(); From d80c0da3c0bf2ab599f5d013d5c947823d917363 Mon Sep 17 00:00:00 2001 From: Fabio Comuni Date: Fri, 21 Oct 2011 16:26:57 +0200 Subject: [PATCH 2/2] add custom style to object tag in tinymce --- images/plugin.png | Bin 0 -> 2043 bytes view/custom_tinymce.css | 6 ++++++ 2 files changed, 6 insertions(+) create mode 100644 images/plugin.png diff --git a/images/plugin.png b/images/plugin.png new file mode 100644 index 0000000000000000000000000000000000000000..08b09e0601fd5527c202739ea6031b0a0e692169 GIT binary patch literal 2043 zcmVPx#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2ipo2 z4ihI=At18=00(@;cGrb*SNaVRZK zLW)%(fz*Op36&RKc&G{wAn|~Z0P#{NY9x?A2u0$BHUWwX&9zR_G_BeswLNx7>bQ0? z7tf4m=G^9-vw299CN$Ub2sGvi#vDj9IA=Pi_1praU-mga4V>S{X&Rm_w3no z?pDRy+S^gQo}t}ecl@4rVc3_nDZ z2Mz9PFmB;y&`Nt0_lYNhDiPmh-xBsyou@^jJEb zK9I>|N&u-;DruVLk2OX9F5MT7ZW(JQv3`W|zys7)+=b{GMAI7x@{39A$}^^Ew#Q$ zbLn(CUn~~a2_asM8Nnl8+7wm4^+Y3&ZZf&(=~wb)YbSp95Jn=2s4O8%`3(Y|GEMWC znog(x7?0F8Zr>>Q!kR@oyEIArSHKT zT1Oaf1yD4h7(vDF#);m=nTr$jrHXuW^&F2nS>gtKnDxlT9>Pfs5-H_qp8J3`L7u4U zvjl`v;p_#2*Nz56RLR<5|AzTSF-!f#0rYp@KvwdEfCdmMjl_D#$!0sKF8qW3#5qP< z6qa0#la*Dx!y2l^kp6`?SzG&vF1^nAtNxGWX-rH<$(Cz8o^{!BcY%>s^-BH;)=ZvV0LshH$w70L?II>>8t1XlJtUcPh^Nba%piZ7x%%C+Mhr#41gt$@t{= zN-0qk1pq%(nO=yqv`=L|=df*~&tSjCy(x#cj=sjiyL*VtpGR{o5TA6fUHy+0RU_WM z7CYL;xy9G{*U3XT(x=}Mbn6oJQZ1yER4Ns!)ha_nLzK(qOX~=-6_dZ7&{-%{dEhRW zrRqGzx8{i~C?G$rd)oB`B^vKSi+q)%hoabSh@!Wke%y7bRAP2^mV)KsH20tf9!XUr z^y}1WHNr5&@(hm7Bse}@CXgXjTf64fpK8Ey9BkVr8jW7r(2W?;#2{{|1b}VZoH=ub zY&MIG8H5|QlJDO@#I;FIA3@KYph;D+Z5!8h38l(%&A2q8|EMjcL`r!{30JRP-RpVY z)>EfW(cIijYisM3g9{4_SeC`vvuBx{oW!vztX*v|G6GI_D}@ysD7AkMJJCf$tPxSl z5eYqXUB~x*T-QZh^>QgC^?DuKwvkeXz%F%WX68UToj&Gy-q_^iWK*$Nq_3|JUDuhO zo@QcVfR;~Jtq9`4?TyFhkH0I{!n46np{b(0kMyuREFiUrj zab2bJo4YAC58}j97@?1{v`FB&IF5tkIJmBhlyVMuCYQ^7-?FR=*Z6_i*;zM}$-H_s z8n$gytCo3ieTtRIDMtEyJm9TDii@I^vG#eM(*HvI!^6xw2}&)ah-e(Qm`7baOTAp6 zTrLxaVHNn1s;W51&T}Gp~w>KxH+_C=N zO*D0^rD&Oyi%TT9$UwYC;5xjKU%?yU7*)!G&%Z;PQ=qcEjA0lrWHOl-YPDMR zM&?DknX?JQuynOjs_mO8Eu}b_-ABKDnx3vpN_q0VgG3fj)9E^x1b81aU)S~JTe&Cg zPJEtFRLs;GoQ5`L^81*2`w(_mCAnBeadZ@+-mxjwK8urWXzZYFJi(ve%%Nye0^%q) zP`X=%a?=+J5ds`PejLYfuG!O#7=hYGAeyd`S>N|57K@iISCsI-YCzMpy}<6NsVR2t z+QrPw%+2^hu~_8%`SVn(Re;~u>-F8Y9P91C^zg$Ej{`3Q?W3ckJoeaQG&D4@d-raH z5Y%clmX?+-tK3l`#CH!IIB@i~cy+t8+PrylixA>hz}HRFWZSlF9654?LZNVZJafPc z2M-?HeMiK;Q_@_Gh7bZNWfk~|s;a-(w{M?wr}up(>VAyI&x8