-\r
-(function() {\r
- tinymce.create('tinymce.plugins.wpGallery', {\r
-\r
- init : function(ed, url) {\r
- var t = this;\r
-\r
- t.url = url;\r
- t._createButtons();\r
-\r
- // Register the command so that it can be invoked by using tinyMCE.activeEditor.execCommand('...');\r
- ed.addCommand('WP_Gallery', function() {\r
- var el = ed.selection.getNode(), vp = tinymce.DOM.getViewPort(), W = ( 720 < vp.w ) ? 720 : vp.w;\r
-\r
- if ( el.nodeName != 'IMG' ) return;\r
- if ( ed.dom.getAttrib(el, 'class').indexOf('wpGallery') == -1 ) return;\r
-\r
- var post_id = tinymce.DOM.get('post_ID').value;\r
- tb_show('', tinymce.documentBaseURL + '/media-upload.php?post_id='+post_id+'&tab=gallery&TB_iframe=true');\r
-\r
- tinymce.DOM.setStyle( ['TB_overlay','TB_window','TB_load'], 'z-index', '999999' );\r
- });\r
-\r
- ed.onInit.add(function(ed) {\r
- tinymce.dom.Event.add(ed.getWin(), 'scroll', function(e) {\r
- ed.plugins.wpgallery.hideButtons();\r
- });\r
- });\r
-\r
- ed.onBeforeExecCommand.add(function(ed, cmd, ui, val) {\r
- ed.plugins.wpgallery.hideButtons();\r
- });\r
-\r
- ed.onSaveContent.add(function(ed, o) {\r
- ed.plugins.wpgallery.hideButtons();\r
- });\r
-\r
- ed.onMouseUp.add(function(ed, e) {\r
- if ( tinymce.isOpera ) {\r
- if ( e.target.nodeName == 'IMG' )\r
- ed.plugins.wpgallery.showButtons(e.target);\r
- }\r
-\r
- });\r
-\r
- ed.onMouseDown.add(function(ed, e) {\r
- if ( tinymce.isOpera || e.target.nodeName != 'IMG' ) {\r
- t.hideButtons();\r
- return;\r
- }\r
- ed.plugins.wpgallery.showButtons(e.target);\r
- });\r
-\r
- ed.onBeforeSetContent.add(function(ed, o) {\r
- o.content = t._do_gallery(o.content);\r
- });\r
-\r
- ed.onPostProcess.add(function(ed, o) {\r
- if (o.get)\r
- o.content = t._get_gallery(o.content);\r
- });\r
- },\r
-\r
- _do_gallery : function(co) {\r
- return co.replace(/\[gallery([^\]]*)\]/g, function(a,b){\r
- return '<img src="'+tinymce.baseURL+'/plugins/wpgallery/img/t.gif" class="wpGallery mceItem" title="gallery'+tinymce.DOM.encode(b)+'" />';\r
- });\r
- },\r
-\r
- _get_gallery : function(co) {\r
-\r
- function getAttr(s, n) {\r
- n = new RegExp(n + '=\"([^\"]+)\"', 'g').exec(s);\r
- return n ? tinymce.DOM.decode(n[1]) : '';\r
- };\r
-\r
- return co.replace(/(?:<p[^>]*>)*(<img[^>]+>)(?:<\/p>)*/g, function(a,im) {\r
- var cls = getAttr(im, 'class');\r
-\r
- if ( cls.indexOf('wpGallery') != -1 )\r
- return '<p>['+tinymce.trim(getAttr(im, 'title'))+']</p>';\r
-\r
- return a;\r
- });\r
- },\r
-\r
- showButtons : function(n) {\r
- var t = this, ed = tinyMCE.activeEditor, p1, p2, vp, DOM = tinymce.DOM, X, Y;\r
-\r
- if (ed.dom.getAttrib(n, 'class').indexOf('wpGallery') == -1)\r
- return;\r
-\r
- vp = ed.dom.getViewPort(ed.getWin());\r
- p1 = DOM.getPos(ed.getContentAreaContainer());\r
- p2 = ed.dom.getPos(n);\r
-\r
- X = Math.max(p2.x - vp.x, 0) + p1.x;\r
- Y = Math.max(p2.y - vp.y, 0) + p1.y;\r
-\r
- DOM.setStyles('wp_gallerybtns', {\r
- 'top' : Y+5+'px',\r
- 'left' : X+5+'px',\r
- 'display' : 'block'\r
- });\r
-\r
- t.btnsTout = window.setTimeout( function(){ed.plugins.wpgallery.hideButtons();}, 5000 );\r
- },\r
-\r
- hideButtons : function() {\r
- if ( tinymce.DOM.isHidden('wp_gallerybtns') ) return;\r
-\r
- tinymce.DOM.hide('wp_gallerybtns');\r
- window.clearTimeout(this.btnsTout);\r
- },\r
-\r
- _createButtons : function() {\r
- var t = this, ed = tinyMCE.activeEditor, DOM = tinymce.DOM;\r
-\r
- DOM.remove('wp_gallerybtns');\r
-\r
- var wp_gallerybtns = DOM.add(document.body, 'div', {\r
- id : 'wp_gallerybtns',\r
- style : 'display:none;'\r
- });\r
-\r
- var wp_editgallery = DOM.add('wp_gallerybtns', 'img', {\r
- src : t.url+'/img/edit.png',\r
- id : 'wp_editgallery',\r
- width : '24',\r
- height : '24',\r
- title : ed.getLang('wordpress.editgallery')\r
- });\r
-\r
- wp_editgallery.onmousedown = function(e) {\r
- var ed = tinyMCE.activeEditor;\r
- ed.windowManager.bookmark = ed.selection.getBookmark('simple');\r
- ed.execCommand("WP_Gallery");\r
- this.parentNode.style.display = 'none';\r
- };\r
-\r
- var wp_delgallery = DOM.add('wp_gallerybtns', 'img', {\r
- src : t.url+'/img/delete.png',\r
- id : 'wp_delgallery',\r
- width : '24',\r
- height : '24',\r
- title : ed.getLang('wordpress.delgallery')\r
- });\r
-\r
- wp_delgallery.onmousedown = function(e) {\r
- var ed = tinyMCE.activeEditor, el = ed.selection.getNode();\r
-\r
- if ( el.nodeName == 'IMG' && ed.dom.getAttrib(el, 'class').indexOf('wpGallery') != -1 ) {\r
- ed.dom.remove(el);\r
-\r
- this.parentNode.style.display = 'none';\r
- ed.execCommand('mceRepaint');\r
- return false;\r
- }\r
- };\r
- },\r
-\r
- getInfo : function() {\r
- return {\r
- longname : 'Gallery Settings',\r
- author : 'WordPress',\r
- authorurl : 'http://wordpress.org',\r
- infourl : '',\r
- version : "1.0"\r
- };\r
- }\r
- });\r
-\r
- tinymce.PluginManager.add('wpgallery', tinymce.plugins.wpGallery);\r
-})();\r
+(function(){tinymce.create("tinymce.plugins.wpGallery",{init:function(a,b){var c=this;c.url=b;c._createButtons();a.addCommand("WP_Gallery",function(){var h=a.selection.getNode(),f,e=tinymce.DOM.getViewPort(),g=e.h-80,d=(640<e.w)?640:e.w;if(h.nodeName!="IMG"){return}if(a.dom.getAttrib(h,"class").indexOf("wpGallery")==-1){return}f=tinymce.DOM.get("post_ID").value;tb_show("",tinymce.documentBaseURL+"/media-upload.php?post_id="+f+"&tab=gallery&TB_iframe=true&width="+d+"&height="+g);tinymce.DOM.setStyle(["TB_overlay","TB_window","TB_load"],"z-index","999999")});a.onInit.add(function(d){tinymce.dom.Event.add(d.getWin(),"scroll",function(f){d.plugins.wpgallery.hideButtons()})});a.onBeforeExecCommand.add(function(d,f,e,g){d.plugins.wpgallery.hideButtons()});a.onSaveContent.add(function(d,e){d.plugins.wpgallery.hideButtons()});a.onMouseUp.add(function(d,f){if(tinymce.isOpera){if(f.target.nodeName=="IMG"){d.plugins.wpgallery.showButtons(f.target)}}});a.onMouseDown.add(function(d,f){if(tinymce.isOpera||f.target.nodeName!="IMG"){c.hideButtons();return}d.plugins.wpgallery.showButtons(f.target)});a.onBeforeSetContent.add(function(d,e){e.content=c._do_gallery(e.content)});a.onPostProcess.add(function(d,e){if(e.get){e.content=c._get_gallery(e.content)}})},_do_gallery:function(a){return a.replace(/\[gallery([^\]]*)\]/g,function(d,c){return'<img src="'+tinymce.baseURL+'/plugins/wpgallery/img/t.gif" class="wpGallery mceItem" title="gallery'+tinymce.DOM.encode(c)+'" />'})},_get_gallery:function(b){function a(c,d){d=new RegExp(d+'="([^"]+)"',"g").exec(c);return d?tinymce.DOM.decode(d[1]):""}return b.replace(/(?:<p[^>]*>)*(<img[^>]+>)(?:<\/p>)*/g,function(e,d){var c=a(d,"class");if(c.indexOf("wpGallery")!=-1){return"<p>["+tinymce.trim(a(d,"title"))+"]</p>"}return e})},showButtons:function(d){var i=this,e=tinyMCE.activeEditor,g,f,a,h=tinymce.DOM,c,b;if(e.dom.getAttrib(d,"class").indexOf("wpGallery")==-1){return}a=e.dom.getViewPort(e.getWin());g=h.getPos(e.getContentAreaContainer());f=e.dom.getPos(d);c=Math.max(f.x-a.x,0)+g.x;b=Math.max(f.y-a.y,0)+g.y;h.setStyles("wp_gallerybtns",{top:b+5+"px",left:c+5+"px",display:"block"});i.btnsTout=window.setTimeout(function(){e.plugins.wpgallery.hideButtons()},5000)},hideButtons:function(){if(tinymce.DOM.isHidden("wp_gallerybtns")){return}tinymce.DOM.hide("wp_gallerybtns");window.clearTimeout(this.btnsTout)},_createButtons:function(){var d=this,b=tinyMCE.activeEditor,e=tinymce.DOM,c,f,a;e.remove("wp_gallerybtns");c=e.add(document.body,"div",{id:"wp_gallerybtns",style:"display:none;"});f=e.add("wp_gallerybtns","img",{src:d.url+"/img/edit.png",id:"wp_editgallery",width:"24",height:"24",title:b.getLang("wordpress.editgallery")});f.onmousedown=function(h){var g=tinyMCE.activeEditor;g.windowManager.bookmark=g.selection.getBookmark("simple");g.execCommand("WP_Gallery");this.parentNode.style.display="none"};a=e.add("wp_gallerybtns","img",{src:d.url+"/img/delete.png",id:"wp_delgallery",width:"24",height:"24",title:b.getLang("wordpress.delgallery")});a.onmousedown=function(i){var g=tinyMCE.activeEditor,h=g.selection.getNode();if(h.nodeName=="IMG"&&g.dom.getAttrib(h,"class").indexOf("wpGallery")!=-1){g.dom.remove(h);this.parentNode.style.display="none";g.execCommand("mceRepaint");return false}}},getInfo:function(){return{longname:"Gallery Settings",author:"WordPress",authorurl:"http://wordpress.org",infourl:"",version:"1.0"}}});tinymce.PluginManager.add("wpgallery",tinymce.plugins.wpGallery)})();
\ No newline at end of file