]> scripts.mit.edu Git - autoinstalls/wordpress.git/blobdiff - wp-includes/js/tinymce/plugins/wpgallery/editor_plugin.js
WordPress 3.8
[autoinstalls/wordpress.git] / wp-includes / js / tinymce / plugins / wpgallery / editor_plugin.js
index bdb6b7c71bd6b85ce3fdb11bf2d79ca31de73726..cd426627b295905a57af652d4d11c289bc94483d 100644 (file)
@@ -1,174 +1 @@
-\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.editor=a,c._createButtons(),a.addCommand("WP_Gallery",function(){tinymce.isIE&&a.selection.moveToBookmark(a.wpGalleryBookmark);var b,c=a.selection.getNode(),d=wp.media.gallery;"undefined"!=typeof wp&&wp.media&&wp.media.gallery&&"IMG"==c.nodeName&&-1!=a.dom.getAttrib(c,"class").indexOf("wp-gallery")&&(b=d.edit("["+a.dom.getAttrib(c,"title")+"]"),b.state("gallery-edit").on("update",function(b){var e=d.shortcode(b).string().slice(1,-1);a.dom.setAttrib(c,"title",e)}))}),a.onInit.add(function(a){"ontouchstart"in window&&a.dom.events.add(a.getBody(),"touchstart",function(b){var c=b.target;"IMG"==c.nodeName&&a.dom.hasClass(c,"wp-gallery")&&(a.selection.select(c),a.dom.events.cancel(b),a.plugins.wordpress._hideButtons(),a.plugins.wordpress._showButtons(c,"wp_gallerybtns"))})}),a.onMouseDown.add(function(a,b){"IMG"==b.target.nodeName&&a.dom.hasClass(b.target,"wp-gallery")&&(a.plugins.wordpress._hideButtons(),a.plugins.wordpress._showButtons(b.target,"wp_gallerybtns"))}),a.onBeforeSetContent.add(function(a,b){b.content=c._do_gallery(b.content)}),a.onPostProcess.add(function(a,b){b.get&&(b.content=c._get_gallery(b.content))})},_do_gallery:function(a){return a.replace(/\[gallery([^\]]*)\]/g,function(a,b){return'<img src="'+tinymce.baseURL+'/plugins/wpgallery/img/t.gif" class="wp-gallery mceItem" title="gallery'+tinymce.DOM.encode(b)+'" />'})},_get_gallery:function(a){function b(a,b){return b=new RegExp(b+'="([^"]+)"',"g").exec(a),b?tinymce.DOM.decode(b[1]):""}return a.replace(/(?:<p[^>]*>)*(<img[^>]+>)(?:<\/p>)*/g,function(a,c){var d=b(c,"class");return-1!=d.indexOf("wp-gallery")?"<p>["+tinymce.trim(b(c,"title"))+"]</p>":a})},_createButtons:function(){var a,b,c,d=this,e=tinymce.activeEditor,f=tinymce.DOM;f.get("wp_gallerybtns")||(c=window.devicePixelRatio&&window.devicePixelRatio>1||window.matchMedia&&window.matchMedia("(min-resolution:130dpi)").matches,f.add(document.body,"div",{id:"wp_gallerybtns",style:"display:none;"}),a=f.add("wp_gallerybtns","img",{src:c?d.url+"/img/edit-2x.png":d.url+"/img/edit.png",id:"wp_editgallery",width:"24",height:"24",title:e.getLang("wordpress.editgallery")}),tinymce.dom.Event.add(a,"mousedown",function(){var a=tinymce.activeEditor;a.wpGalleryBookmark=a.selection.getBookmark("simple"),a.execCommand("WP_Gallery"),a.plugins.wordpress._hideButtons()}),b=f.add("wp_gallerybtns","img",{src:c?d.url+"/img/delete-2x.png":d.url+"/img/delete.png",id:"wp_delgallery",width:"24",height:"24",title:e.getLang("wordpress.delgallery")}),tinymce.dom.Event.add(b,"mousedown",function(a){var b=tinymce.activeEditor,c=b.selection.getNode();"IMG"==c.nodeName&&b.dom.hasClass(c,"wp-gallery")&&(b.dom.remove(c),b.execCommand("mceRepaint"),b.dom.events.cancel(a)),b.plugins.wordpress._hideButtons()}))},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