/** * @output wp-admin/js/gallery.js */ /* global unescape, getUserSetting, setUserSetting, wpgallery, tinymce */ jQuery( function($) { var gallerySortable, gallerySortableInit, sortIt, clearAll, w, desc = false; gallerySortableInit = function() { gallerySortable = $('#media-items').sortable( { items: 'div.media-item', placeholder: 'sorthelper', axis: 'y', distance: 2, handle: 'div.filename', stop: function() { // When an update has occurred, adjust the order for each item. var all = $('#media-items').sortable('toArray'), len = all.length; $.each(all, function(i, id) { var order = desc ? (len - i) : (1 + i); $('#' + id + ' .menu_order input').val(order); }); } } ); }; sortIt = function() { var all = $('.menu_order_input'), len = all.length; all.each(function(i){ var order = desc ? (len - i) : (1 + i); $(this).val(order); }); }; clearAll = function(c) { c = c || 0; $('.menu_order_input').each( function() { if ( this.value === '0' || c ) { this.value = ''; } }); }; $('#asc').on( 'click', function( e ) { e.preventDefault(); desc = false; sortIt(); }); $('#desc').on( 'click', function( e ) { e.preventDefault(); desc = true; sortIt(); }); $('#clear').on( 'click', function( e ) { e.preventDefault(); clearAll(1); }); $('#showall').on( 'click', function( e ) { e.preventDefault(); $('#sort-buttons span a').toggle(); $('a.describe-toggle-on').hide(); $('a.describe-toggle-off, table.slidetoggle').show(); $('img.pinkynail').toggle(false); }); $('#hideall').on( 'click', function( e ) { e.preventDefault(); $('#sort-buttons span a').toggle(); $('a.describe-toggle-on').show(); $('a.describe-toggle-off, table.slidetoggle').hide(); $('img.pinkynail').toggle(true); }); // Initialize sortable. gallerySortableInit(); clearAll(); if ( $('#media-items>*').length > 1 ) { w = wpgallery.getWin(); $('#save-all, #gallery-settings').show(); if ( typeof w.tinyMCE !== 'undefined' && w.tinyMCE.activeEditor && ! w.tinyMCE.activeEditor.isHidden() ) { wpgallery.mcemode = true; wpgallery.init(); } else { $('#insert-gallery').show(); } } }); /* gallery settings */ window.tinymce = null; window.wpgallery = { mcemode : false, editor : {}, dom : {}, is_update : false, el : {}, I : function(e) { return document.getElementById(e); }, init: function() { var t = this, li, q, i, it, w = t.getWin(); if ( ! t.mcemode ) { return; } li = ('' + document.location.search).replace(/^\?/, '').split('&'); q = {}; for (i=0; i<li.length; i++) { it = li[i].split('='); q[unescape(it[0])] = unescape(it[1]); } if ( q.mce_rdomain ) { document.domain = q.mce_rdomain; } // Find window & API. window.tinymce = w.tinymce; window.tinyMCE = w.tinyMCE; t.editor = tinymce.EditorManager.activeEditor; t.setup(); }, getWin : function() { return window.dialogArguments || opener || parent || top; }, setup : function() { var t = this, a, ed = t.editor, g, columns, link, order, orderby; if ( ! t.mcemode ) { return; } t.el = ed.selection.getNode(); if ( t.el.nodeName !== 'IMG' || ! ed.dom.hasClass(t.el, 'wpGallery') ) { if ( ( g = ed.dom.select('img.wpGallery') ) && g[0] ) { t.el = g[0]; } else { if ( getUserSetting('galfile') === '1' ) { t.I('linkto-file').checked = 'checked'; } if ( getUserSetting('galdesc') === '1' ) { t.I('order-desc').checked = 'checked'; } if ( getUserSetting('galcols') ) { t.I('columns').value = getUserSetting('galcols'); } if ( getUserSetting('galord') ) { t.I('orderby').value = getUserSetting('galord'); } jQuery('#insert-gallery').show(); return; } } a = ed.dom.getAttrib(t.el, 'title'); a = ed.dom.decode(a); if ( a ) { jQuery('#update-gallery').show(); t.is_update = true; columns = a.match(/columns=['"]([0-9]+)['"]/); link = a.match(/link=['"]([^'"]+)['"]/i); order = a.match(/order=['"]([^'"]+)['"]/i); orderby = a.match(/orderby=['"]([^'"]+)['"]/i); if ( link && link[1] ) { t.I('linkto-file').checked = 'checked'; } if ( order && order[1] ) { t.I('order-desc').checked = 'checked'; } if ( columns && columns[1] ) { t.I('columns').value = '' + columns[1]; } if ( orderby && orderby[1] ) { t.I('orderby').value = orderby[1]; } } else { jQuery('#insert-gallery').show(); } }, update : function() { var t = this, ed = t.editor, all = '', s; if ( ! t.mcemode || ! t.is_update ) { s = '[gallery' + t.getSettings() + ']'; t.getWin().send_to_editor(s); return; } if ( t.el.nodeName !== 'IMG' ) { return; } all = ed.dom.decode( ed.dom.getAttrib( t.el, 'title' ) ); all = all.replace(/\s*(order|link|columns|orderby)=['"]([^'"]+)['"]/gi, ''); all += t.getSettings(); ed.dom.setAttrib(t.el, 'title', all); t.getWin().tb_remove(); }, getSettings : function() { var I = this.I, s = ''; if ( I('linkto-file').checked ) { s += ' link="file"'; setUserSetting('galfile', '1'); } if ( I('order-desc').checked ) { s += ' order="DESC"'; setUserSetting('galdesc', '1'); } if ( I('columns').value !== 3 ) { s += ' columns="' + I('columns').value + '"'; setUserSetting('galcols', I('columns').value); } if ( I('orderby').value !== 'menu_order' ) { s += ' orderby="' + I('orderby').value + '"'; setUserSetting('galord', I('orderby').value); } return s; } };
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
widgets | Folder | 0755 |
|
|
accordion.js | File | 2.86 KB | 0644 |
|
accordion.min.js | File | 758 B | 0644 |
|
application-passwords.js | File | 6.24 KB | 0644 |
|
application-passwords.min.js | File | 2.95 KB | 0644 |
|
auth-app.js | File | 5.66 KB | 0644 |
|
auth-app.min.js | File | 2.04 KB | 0644 |
|
code-editor.js | File | 11.32 KB | 0644 |
|
code-editor.min.js | File | 3.01 KB | 0644 |
|
color-picker.js | File | 9.54 KB | 0644 |
|
color-picker.min.js | File | 3.4 KB | 0644 |
|
comment.js | File | 2.85 KB | 0644 |
|
comment.min.js | File | 1.28 KB | 0644 |
|
common.js | File | 60.79 KB | 0644 |
|
common.min.js | File | 22.95 KB | 0644 |
|
custom-background.js | File | 3.35 KB | 0644 |
|
custom-background.min.js | File | 1.18 KB | 0644 |
|
custom-header.js | File | 1.98 KB | 0644 |
|
customize-controls.js | File | 287.18 KB | 0644 |
|
customize-controls.min.js | File | 108.98 KB | 0644 |
|
customize-nav-menus.js | File | 109.7 KB | 0644 |
|
customize-nav-menus.min.js | File | 46.2 KB | 0644 |
|
customize-widgets.js | File | 70.05 KB | 0644 |
|
customize-widgets.min.js | File | 27.41 KB | 0644 |
|
dashboard.js | File | 26.92 KB | 0644 |
|
dashboard.min.js | File | 8.59 KB | 0644 |
|
edit-comments.js | File | 36.67 KB | 0644 |
|
edit-comments.min.js | File | 15.01 KB | 0644 |
|
editor-expand.js | File | 41.61 KB | 0644 |
|
editor-expand.min.js | File | 13.14 KB | 0644 |
|
editor.js | File | 43.98 KB | 0644 |
|
editor.min.js | File | 12.76 KB | 0644 |
|
farbtastic.js | File | 7.67 KB | 0644 |
|
gallery.js | File | 5.41 KB | 0644 |
|
gallery.min.js | File | 3.65 KB | 0644 |
|
image-edit.js | File | 39.98 KB | 0644 |
|
image-edit.min.js | File | 15.15 KB | 0644 |
|
inline-edit-post.js | File | 20.17 KB | 0644 |
|
inline-edit-post.min.js | File | 9.41 KB | 0644 |
|
inline-edit-tax.js | File | 7.61 KB | 0644 |
|
inline-edit-tax.min.js | File | 2.93 KB | 0644 |
|
iris.min.js | File | 23.09 KB | 0644 |
|
language-chooser.js | File | 890 B | 0644 |
|
language-chooser.min.js | File | 423 B | 0644 |
|
link.js | File | 3.89 KB | 0644 |
|
link.min.js | File | 1.7 KB | 0644 |
|
media-gallery.js | File | 1.27 KB | 0644 |
|
media-gallery.min.js | File | 611 B | 0644 |
|
media-upload.js | File | 3.38 KB | 0644 |
|
media-upload.min.js | File | 1.13 KB | 0644 |
|
media.js | File | 6.61 KB | 0644 |
|
media.min.js | File | 2.38 KB | 0644 |
|
nav-menu.js | File | 58.73 KB | 0644 |
|
nav-menu.min.js | File | 29.17 KB | 0644 |
|
password-strength-meter.js | File | 4.14 KB | 0644 |
|
password-strength-meter.min.js | File | 1.1 KB | 0644 |
|
password-toggle.js | File | 1.31 KB | 0644 |
|
password-toggle.min.js | File | 847 B | 0644 |
|
plugin-install.js | File | 6.92 KB | 0644 |
|
plugin-install.min.js | File | 2.35 KB | 0644 |
|
post.js | File | 38.64 KB | 0644 |
|
post.min.js | File | 18.38 KB | 0644 |
|
postbox.js | File | 18.4 KB | 0644 |
|
postbox.min.js | File | 6.55 KB | 0644 |
|
privacy-tools.js | File | 10.67 KB | 0644 |
|
privacy-tools.min.js | File | 5.03 KB | 0644 |
|
revisions.js | File | 33.92 KB | 0644 |
|
revisions.min.js | File | 17.97 KB | 0644 |
|
set-post-thumbnail.js | File | 876 B | 0644 |
|
set-post-thumbnail.min.js | File | 620 B | 0644 |
|
site-health.js | File | 13.15 KB | 0644 |
|
site-health.min.js | File | 6.13 KB | 0644 |
|
site-icon.js | File | 6.1 KB | 0644 |
|
site-icon.min.js | File | 2.2 KB | 0644 |
|
svg-painter.js | File | 3.2 KB | 0644 |
|
svg-painter.min.js | File | 1.53 KB | 0644 |
|
tags-box.js | File | 10.88 KB | 0644 |
|
tags-box.min.js | File | 3 KB | 0644 |
|
tags-suggest.js | File | 5.64 KB | 0644 |
|
tags-suggest.min.js | File | 2.22 KB | 0644 |
|
tags.js | File | 4.77 KB | 0644 |
|
tags.min.js | File | 1.96 KB | 0644 |
|
theme-plugin-editor.js | File | 24.79 KB | 0644 |
|
theme-plugin-editor.min.js | File | 11.46 KB | 0644 |
|
theme.js | File | 54.65 KB | 0644 |
|
theme.min.js | File | 26.4 KB | 0644 |
|
updates.js | File | 109.29 KB | 0644 |
|
updates.min.js | File | 47.23 KB | 0644 |
|
user-profile.js | File | 15 KB | 0644 |
|
user-profile.min.js | File | 6.7 KB | 0644 |
|
user-suggest.js | File | 2.25 KB | 0644 |
|
user-suggest.min.js | File | 676 B | 0644 |
|
widgets.js | File | 22.56 KB | 0644 |
|
widgets.min.js | File | 12.31 KB | 0644 |
|
word-count.js | File | 7.52 KB | 0644 |
|
word-count.min.js | File | 1.49 KB | 0644 |
|
xfn.js | File | 740 B | 0644 |
|
xfn.min.js | File | 458 B | 0644 |
|