stump-cli 0.1.3 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +1 -0
- data/README.md +9 -5
- data/bin/stump-cli +77 -27
- data/lib/{wp/.gitignore → .gitignore.erb} +2 -2
- data/lib/stump-cli/version.rb +1 -1
- data/lib/style.erb +11 -0
- data/stump-cli.gemspec +2 -0
- metadata +56 -1268
- data/lib/wp/Movefile-example +0 -62
- data/lib/wp/README.md +0 -25
- data/lib/wp/index.php +0 -17
- data/lib/wp/license.txt +0 -385
- data/lib/wp/readme.html +0 -96
- data/lib/wp/wp-activate.php +0 -131
- data/lib/wp/wp-admin/about.php +0 -193
- data/lib/wp/wp-admin/admin-ajax.php +0 -98
- data/lib/wp/wp-admin/admin-footer.php +0 -99
- data/lib/wp/wp-admin/admin-functions.php +0 -15
- data/lib/wp/wp-admin/admin-header.php +0 -243
- data/lib/wp/wp-admin/admin-post.php +0 -71
- data/lib/wp/wp-admin/admin.php +0 -347
- data/lib/wp/wp-admin/async-upload.php +0 -114
- data/lib/wp/wp-admin/comment.php +0 -299
- data/lib/wp/wp-admin/credits.php +0 -192
- data/lib/wp/wp-admin/css/about-rtl.css +0 -446
- data/lib/wp/wp-admin/css/about.css +0 -446
- data/lib/wp/wp-admin/css/admin-menu-rtl.css +0 -917
- data/lib/wp/wp-admin/css/admin-menu.css +0 -917
- data/lib/wp/wp-admin/css/color-picker-rtl.css +0 -127
- data/lib/wp/wp-admin/css/color-picker-rtl.min.css +0 -1
- data/lib/wp/wp-admin/css/color-picker.css +0 -127
- data/lib/wp/wp-admin/css/color-picker.min.css +0 -1
- data/lib/wp/wp-admin/css/colors/_admin.scss +0 -525
- data/lib/wp/wp-admin/css/colors/_mixins.scss +0 -43
- data/lib/wp/wp-admin/css/colors/_variables.scss +0 -58
- data/lib/wp/wp-admin/css/colors/blue/colors-rtl.css +0 -341
- data/lib/wp/wp-admin/css/colors/blue/colors-rtl.min.css +0 -1
- data/lib/wp/wp-admin/css/colors/blue/colors.css +0 -341
- data/lib/wp/wp-admin/css/colors/blue/colors.min.css +0 -1
- data/lib/wp/wp-admin/css/colors/blue/colors.scss +0 -11
- data/lib/wp/wp-admin/css/colors/coffee/colors-rtl.css +0 -341
- data/lib/wp/wp-admin/css/colors/coffee/colors-rtl.min.css +0 -1
- data/lib/wp/wp-admin/css/colors/coffee/colors.css +0 -341
- data/lib/wp/wp-admin/css/colors/coffee/colors.min.css +0 -1
- data/lib/wp/wp-admin/css/colors/coffee/colors.scss +0 -7
- data/lib/wp/wp-admin/css/colors/ectoplasm/colors-rtl.css +0 -341
- data/lib/wp/wp-admin/css/colors/ectoplasm/colors-rtl.min.css +0 -1
- data/lib/wp/wp-admin/css/colors/ectoplasm/colors.css +0 -341
- data/lib/wp/wp-admin/css/colors/ectoplasm/colors.min.css +0 -1
- data/lib/wp/wp-admin/css/colors/ectoplasm/colors.scss +0 -8
- data/lib/wp/wp-admin/css/colors/light/colors-rtl.css +0 -349
- data/lib/wp/wp-admin/css/colors/light/colors-rtl.min.css +0 -1
- data/lib/wp/wp-admin/css/colors/light/colors.css +0 -349
- data/lib/wp/wp-admin/css/colors/light/colors.min.css +0 -1
- data/lib/wp/wp-admin/css/colors/light/colors.scss +0 -38
- data/lib/wp/wp-admin/css/colors/midnight/colors-rtl.css +0 -341
- data/lib/wp/wp-admin/css/colors/midnight/colors-rtl.min.css +0 -1
- data/lib/wp/wp-admin/css/colors/midnight/colors.css +0 -341
- data/lib/wp/wp-admin/css/colors/midnight/colors.min.css +0 -1
- data/lib/wp/wp-admin/css/colors/midnight/colors.scss +0 -5
- data/lib/wp/wp-admin/css/colors/ocean/colors-rtl.css +0 -341
- data/lib/wp/wp-admin/css/colors/ocean/colors-rtl.min.css +0 -1
- data/lib/wp/wp-admin/css/colors/ocean/colors.css +0 -341
- data/lib/wp/wp-admin/css/colors/ocean/colors.min.css +0 -1
- data/lib/wp/wp-admin/css/colors/ocean/colors.scss +0 -8
- data/lib/wp/wp-admin/css/colors/sunrise/colors-rtl.css +0 -341
- data/lib/wp/wp-admin/css/colors/sunrise/colors-rtl.min.css +0 -1
- data/lib/wp/wp-admin/css/colors/sunrise/colors.css +0 -341
- data/lib/wp/wp-admin/css/colors/sunrise/colors.min.css +0 -1
- data/lib/wp/wp-admin/css/colors/sunrise/colors.scss +0 -6
- data/lib/wp/wp-admin/css/common-rtl.css +0 -3212
- data/lib/wp/wp-admin/css/common.css +0 -3212
- data/lib/wp/wp-admin/css/customize-controls-rtl.css +0 -889
- data/lib/wp/wp-admin/css/customize-controls-rtl.min.css +0 -1
- data/lib/wp/wp-admin/css/customize-controls.css +0 -889
- data/lib/wp/wp-admin/css/customize-controls.min.css +0 -1
- data/lib/wp/wp-admin/css/customize-widgets-rtl.css +0 -603
- data/lib/wp/wp-admin/css/customize-widgets-rtl.min.css +0 -1
- data/lib/wp/wp-admin/css/customize-widgets.css +0 -603
- data/lib/wp/wp-admin/css/customize-widgets.min.css +0 -1
- data/lib/wp/wp-admin/css/dashboard-rtl.css +0 -1116
- data/lib/wp/wp-admin/css/dashboard.css +0 -1116
- data/lib/wp/wp-admin/css/deprecated-media-rtl.css +0 -371
- data/lib/wp/wp-admin/css/deprecated-media-rtl.min.css +0 -1
- data/lib/wp/wp-admin/css/deprecated-media.css +0 -371
- data/lib/wp/wp-admin/css/deprecated-media.min.css +0 -1
- data/lib/wp/wp-admin/css/edit-rtl.css +0 -1501
- data/lib/wp/wp-admin/css/edit.css +0 -1501
- data/lib/wp/wp-admin/css/farbtastic-rtl.css +0 -41
- data/lib/wp/wp-admin/css/farbtastic.css +0 -41
- data/lib/wp/wp-admin/css/forms-rtl.css +0 -992
- data/lib/wp/wp-admin/css/forms.css +0 -992
- data/lib/wp/wp-admin/css/ie-rtl.css +0 -785
- data/lib/wp/wp-admin/css/ie-rtl.min.css +0 -1
- data/lib/wp/wp-admin/css/ie.css +0 -785
- data/lib/wp/wp-admin/css/ie.min.css +0 -1
- data/lib/wp/wp-admin/css/install-rtl.css +0 -389
- data/lib/wp/wp-admin/css/install-rtl.min.css +0 -1
- data/lib/wp/wp-admin/css/install.css +0 -389
- data/lib/wp/wp-admin/css/install.min.css +0 -1
- data/lib/wp/wp-admin/css/l10n-rtl.css +0 -101
- data/lib/wp/wp-admin/css/l10n.css +0 -101
- data/lib/wp/wp-admin/css/list-tables-rtl.css +0 -1875
- data/lib/wp/wp-admin/css/list-tables.css +0 -1875
- data/lib/wp/wp-admin/css/login-rtl.css +0 -269
- data/lib/wp/wp-admin/css/login-rtl.min.css +0 -1
- data/lib/wp/wp-admin/css/login.css +0 -269
- data/lib/wp/wp-admin/css/login.min.css +0 -1
- data/lib/wp/wp-admin/css/media-rtl.css +0 -1196
- data/lib/wp/wp-admin/css/media.css +0 -1196
- data/lib/wp/wp-admin/css/nav-menus-rtl.css +0 -857
- data/lib/wp/wp-admin/css/nav-menus.css +0 -857
- data/lib/wp/wp-admin/css/press-this-rtl.css +0 -458
- data/lib/wp/wp-admin/css/press-this.css +0 -458
- data/lib/wp/wp-admin/css/revisions-rtl.css +0 -574
- data/lib/wp/wp-admin/css/revisions.css +0 -574
- data/lib/wp/wp-admin/css/themes-rtl.css +0 -1732
- data/lib/wp/wp-admin/css/themes.css +0 -1732
- data/lib/wp/wp-admin/css/widgets-rtl.css +0 -577
- data/lib/wp/wp-admin/css/widgets.css +0 -577
- data/lib/wp/wp-admin/css/wp-admin-rtl.css +0 -14
- data/lib/wp/wp-admin/css/wp-admin-rtl.min.css +0 -1
- data/lib/wp/wp-admin/css/wp-admin.css +0 -14
- data/lib/wp/wp-admin/css/wp-admin.min.css +0 -1
- data/lib/wp/wp-admin/custom-background.php +0 -482
- data/lib/wp/wp-admin/custom-header.php +0 -1366
- data/lib/wp/wp-admin/customize.php +0 -278
- data/lib/wp/wp-admin/edit-comments.php +0 -254
- data/lib/wp/wp-admin/edit-form-advanced.php +0 -636
- data/lib/wp/wp-admin/edit-form-comment.php +0 -160
- data/lib/wp/wp-admin/edit-link-form.php +0 -150
- data/lib/wp/wp-admin/edit-tag-form.php +0 -204
- data/lib/wp/wp-admin/edit-tags.php +0 -591
- data/lib/wp/wp-admin/edit.php +0 -330
- data/lib/wp/wp-admin/export.php +0 -243
- data/lib/wp/wp-admin/freedoms.php +0 -57
- data/lib/wp/wp-admin/images/align-center-2x.png +0 -0
- data/lib/wp/wp-admin/images/align-center.png +0 -0
- data/lib/wp/wp-admin/images/align-left-2x.png +0 -0
- data/lib/wp/wp-admin/images/align-left.png +0 -0
- data/lib/wp/wp-admin/images/align-none-2x.png +0 -0
- data/lib/wp/wp-admin/images/align-none.png +0 -0
- data/lib/wp/wp-admin/images/align-right-2x.png +0 -0
- data/lib/wp/wp-admin/images/align-right.png +0 -0
- data/lib/wp/wp-admin/images/arrows-2x.png +0 -0
- data/lib/wp/wp-admin/images/arrows.png +0 -0
- data/lib/wp/wp-admin/images/bubble_bg-2x.gif +0 -0
- data/lib/wp/wp-admin/images/bubble_bg.gif +0 -0
- data/lib/wp/wp-admin/images/comment-grey-bubble-2x.png +0 -0
- data/lib/wp/wp-admin/images/comment-grey-bubble.png +0 -0
- data/lib/wp/wp-admin/images/date-button-2x.gif +0 -0
- data/lib/wp/wp-admin/images/date-button.gif +0 -0
- data/lib/wp/wp-admin/images/generic.png +0 -0
- data/lib/wp/wp-admin/images/icons32-2x.png +0 -0
- data/lib/wp/wp-admin/images/icons32-vs-2x.png +0 -0
- data/lib/wp/wp-admin/images/icons32-vs.png +0 -0
- data/lib/wp/wp-admin/images/icons32.png +0 -0
- data/lib/wp/wp-admin/images/imgedit-icons-2x.png +0 -0
- data/lib/wp/wp-admin/images/imgedit-icons.png +0 -0
- data/lib/wp/wp-admin/images/list-2x.png +0 -0
- data/lib/wp/wp-admin/images/list.png +0 -0
- data/lib/wp/wp-admin/images/loading.gif +0 -0
- data/lib/wp/wp-admin/images/marker.png +0 -0
- data/lib/wp/wp-admin/images/mask.png +0 -0
- data/lib/wp/wp-admin/images/media-button-2x.png +0 -0
- data/lib/wp/wp-admin/images/media-button-image.gif +0 -0
- data/lib/wp/wp-admin/images/media-button-music.gif +0 -0
- data/lib/wp/wp-admin/images/media-button-other.gif +0 -0
- data/lib/wp/wp-admin/images/media-button-video.gif +0 -0
- data/lib/wp/wp-admin/images/media-button.png +0 -0
- data/lib/wp/wp-admin/images/menu-2x.png +0 -0
- data/lib/wp/wp-admin/images/menu-vs-2x.png +0 -0
- data/lib/wp/wp-admin/images/menu-vs.png +0 -0
- data/lib/wp/wp-admin/images/menu.png +0 -0
- data/lib/wp/wp-admin/images/no.png +0 -0
- data/lib/wp/wp-admin/images/post-formats-vs.png +0 -0
- data/lib/wp/wp-admin/images/post-formats.png +0 -0
- data/lib/wp/wp-admin/images/post-formats32-vs.png +0 -0
- data/lib/wp/wp-admin/images/post-formats32.png +0 -0
- data/lib/wp/wp-admin/images/resize-2x.gif +0 -0
- data/lib/wp/wp-admin/images/resize-rtl-2x.gif +0 -0
- data/lib/wp/wp-admin/images/resize-rtl.gif +0 -0
- data/lib/wp/wp-admin/images/resize.gif +0 -0
- data/lib/wp/wp-admin/images/se.png +0 -0
- data/lib/wp/wp-admin/images/sort-2x.gif +0 -0
- data/lib/wp/wp-admin/images/sort.gif +0 -0
- data/lib/wp/wp-admin/images/spinner-2x.gif +0 -0
- data/lib/wp/wp-admin/images/spinner.gif +0 -0
- data/lib/wp/wp-admin/images/stars-2x.png +0 -0
- data/lib/wp/wp-admin/images/stars.png +0 -0
- data/lib/wp/wp-admin/images/w-logo-blue.png +0 -0
- data/lib/wp/wp-admin/images/w-logo-white.png +0 -0
- data/lib/wp/wp-admin/images/wheel.png +0 -0
- data/lib/wp/wp-admin/images/wordpress-logo-white.svg +0 -1
- data/lib/wp/wp-admin/images/wordpress-logo.png +0 -0
- data/lib/wp/wp-admin/images/wordpress-logo.svg +0 -1
- data/lib/wp/wp-admin/images/wpspin_light-2x.gif +0 -0
- data/lib/wp/wp-admin/images/wpspin_light.gif +0 -0
- data/lib/wp/wp-admin/images/xit-2x.gif +0 -0
- data/lib/wp/wp-admin/images/xit.gif +0 -0
- data/lib/wp/wp-admin/images/yes.png +0 -0
- data/lib/wp/wp-admin/import.php +0 -132
- data/lib/wp/wp-admin/includes/admin.php +0 -74
- data/lib/wp/wp-admin/includes/ajax-actions.php +0 -2762
- data/lib/wp/wp-admin/includes/bookmark.php +0 -305
- data/lib/wp/wp-admin/includes/class-ftp-pure.php +0 -190
- data/lib/wp/wp-admin/includes/class-ftp-sockets.php +0 -250
- data/lib/wp/wp-admin/includes/class-ftp.php +0 -907
- data/lib/wp/wp-admin/includes/class-pclzip.php +0 -5687
- data/lib/wp/wp-admin/includes/class-wp-comments-list-table.php +0 -637
- data/lib/wp/wp-admin/includes/class-wp-filesystem-base.php +0 -815
- data/lib/wp/wp-admin/includes/class-wp-filesystem-direct.php +0 -384
- data/lib/wp/wp-admin/includes/class-wp-filesystem-ftpext.php +0 -415
- data/lib/wp/wp-admin/includes/class-wp-filesystem-ftpsockets.php +0 -352
- data/lib/wp/wp-admin/includes/class-wp-filesystem-ssh2.php +0 -392
- data/lib/wp/wp-admin/includes/class-wp-importer.php +0 -302
- data/lib/wp/wp-admin/includes/class-wp-links-list-table.php +0 -207
- data/lib/wp/wp-admin/includes/class-wp-list-table.php +0 -1080
- data/lib/wp/wp-admin/includes/class-wp-media-list-table.php +0 -574
- data/lib/wp/wp-admin/includes/class-wp-ms-sites-list-table.php +0 -402
- data/lib/wp/wp-admin/includes/class-wp-ms-themes-list-table.php +0 -459
- data/lib/wp/wp-admin/includes/class-wp-ms-users-list-table.php +0 -303
- data/lib/wp/wp-admin/includes/class-wp-plugin-install-list-table.php +0 -490
- data/lib/wp/wp-admin/includes/class-wp-plugins-list-table.php +0 -605
- data/lib/wp/wp-admin/includes/class-wp-posts-list-table.php +0 -1306
- data/lib/wp/wp-admin/includes/class-wp-terms-list-table.php +0 -466
- data/lib/wp/wp-admin/includes/class-wp-theme-install-list-table.php +0 -431
- data/lib/wp/wp-admin/includes/class-wp-themes-list-table.php +0 -279
- data/lib/wp/wp-admin/includes/class-wp-upgrader-skins.php +0 -767
- data/lib/wp/wp-admin/includes/class-wp-upgrader.php +0 -2676
- data/lib/wp/wp-admin/includes/class-wp-users-list-table.php +0 -459
- data/lib/wp/wp-admin/includes/comment.php +0 -171
- data/lib/wp/wp-admin/includes/continents-cities.php +0 -493
- data/lib/wp/wp-admin/includes/dashboard.php +0 -1333
- data/lib/wp/wp-admin/includes/deprecated.php +0 -1190
- data/lib/wp/wp-admin/includes/export.php +0 -508
- data/lib/wp/wp-admin/includes/file.php +0 -1152
- data/lib/wp/wp-admin/includes/image-edit.php +0 -828
- data/lib/wp/wp-admin/includes/image.php +0 -598
- data/lib/wp/wp-admin/includes/import.php +0 -206
- data/lib/wp/wp-admin/includes/list-table.php +0 -113
- data/lib/wp/wp-admin/includes/media.php +0 -3012
- data/lib/wp/wp-admin/includes/menu.php +0 -322
- data/lib/wp/wp-admin/includes/meta-boxes.php +0 -1119
- data/lib/wp/wp-admin/includes/misc.php +0 -845
- data/lib/wp/wp-admin/includes/ms-deprecated.php +0 -78
- data/lib/wp/wp-admin/includes/ms.php +0 -814
- data/lib/wp/wp-admin/includes/nav-menu.php +0 -1328
- data/lib/wp/wp-admin/includes/plugin-install.php +0 -550
- data/lib/wp/wp-admin/includes/plugin.php +0 -1899
- data/lib/wp/wp-admin/includes/post.php +0 -1661
- data/lib/wp/wp-admin/includes/revision.php +0 -228
- data/lib/wp/wp-admin/includes/schema.php +0 -1038
- data/lib/wp/wp-admin/includes/screen.php +0 -1179
- data/lib/wp/wp-admin/includes/taxonomy.php +0 -284
- data/lib/wp/wp-admin/includes/template.php +0 -2157
- data/lib/wp/wp-admin/includes/theme-install.php +0 -205
- data/lib/wp/wp-admin/includes/theme.php +0 -474
- data/lib/wp/wp-admin/includes/translation-install.php +0 -240
- data/lib/wp/wp-admin/includes/update-core.php +0 -1186
- data/lib/wp/wp-admin/includes/update.php +0 -432
- data/lib/wp/wp-admin/includes/upgrade.php +0 -2218
- data/lib/wp/wp-admin/includes/user.php +0 -442
- data/lib/wp/wp-admin/includes/widgets.php +0 -245
- data/lib/wp/wp-admin/index.php +0 -131
- data/lib/wp/wp-admin/install-helper.php +0 -199
- data/lib/wp/wp-admin/install.php +0 -305
- data/lib/wp/wp-admin/js/accordion.js +0 -143
- data/lib/wp/wp-admin/js/accordion.min.js +0 -1
- data/lib/wp/wp-admin/js/color-picker.js +0 -155
- data/lib/wp/wp-admin/js/color-picker.min.js +0 -1
- data/lib/wp/wp-admin/js/comment.js +0 -50
- data/lib/wp/wp-admin/js/comment.min.js +0 -1
- data/lib/wp/wp-admin/js/common.js +0 -804
- data/lib/wp/wp-admin/js/common.min.js +0 -1
- data/lib/wp/wp-admin/js/custom-background.js +0 -75
- data/lib/wp/wp-admin/js/custom-background.min.js +0 -1
- data/lib/wp/wp-admin/js/custom-header.js +0 -61
- data/lib/wp/wp-admin/js/customize-controls.js +0 -1305
- data/lib/wp/wp-admin/js/customize-controls.min.js +0 -1
- data/lib/wp/wp-admin/js/customize-widgets.js +0 -1882
- data/lib/wp/wp-admin/js/customize-widgets.min.js +0 -1
- data/lib/wp/wp-admin/js/dashboard.js +0 -190
- data/lib/wp/wp-admin/js/dashboard.min.js +0 -1
- data/lib/wp/wp-admin/js/edit-comments.js +0 -625
- data/lib/wp/wp-admin/js/edit-comments.min.js +0 -1
- data/lib/wp/wp-admin/js/editor-expand.js +0 -705
- data/lib/wp/wp-admin/js/editor-expand.min.js +0 -1
- data/lib/wp/wp-admin/js/editor.js +0 -324
- data/lib/wp/wp-admin/js/editor.min.js +0 -1
- data/lib/wp/wp-admin/js/farbtastic.js +0 -276
- data/lib/wp/wp-admin/js/gallery.js +0 -237
- data/lib/wp/wp-admin/js/gallery.min.js +0 -1
- data/lib/wp/wp-admin/js/image-edit.js +0 -633
- data/lib/wp/wp-admin/js/image-edit.min.js +0 -1
- data/lib/wp/wp-admin/js/inline-edit-post.js +0 -359
- data/lib/wp/wp-admin/js/inline-edit-post.min.js +0 -1
- data/lib/wp/wp-admin/js/inline-edit-tax.js +0 -142
- data/lib/wp/wp-admin/js/inline-edit-tax.min.js +0 -1
- data/lib/wp/wp-admin/js/iris.min.js +0 -4
- data/lib/wp/wp-admin/js/language-chooser.js +0 -26
- data/lib/wp/wp-admin/js/language-chooser.min.js +0 -1
- data/lib/wp/wp-admin/js/link.js +0 -69
- data/lib/wp/wp-admin/js/link.min.js +0 -1
- data/lib/wp/wp-admin/js/media-gallery.js +0 -26
- data/lib/wp/wp-admin/js/media-gallery.min.js +0 -1
- data/lib/wp/wp-admin/js/media-upload.js +0 -69
- data/lib/wp/wp-admin/js/media-upload.min.js +0 -1
- data/lib/wp/wp-admin/js/media.js +0 -111
- data/lib/wp/wp-admin/js/media.min.js +0 -1
- data/lib/wp/wp-admin/js/nav-menu.js +0 -1205
- data/lib/wp/wp-admin/js/nav-menu.min.js +0 -1
- data/lib/wp/wp-admin/js/password-strength-meter.js +0 -75
- data/lib/wp/wp-admin/js/password-strength-meter.min.js +0 -1
- data/lib/wp/wp-admin/js/plugin-install.js +0 -76
- data/lib/wp/wp-admin/js/plugin-install.min.js +0 -1
- data/lib/wp/wp-admin/js/post.js +0 -1094
- data/lib/wp/wp-admin/js/post.min.js +0 -1
- data/lib/wp/wp-admin/js/postbox.js +0 -199
- data/lib/wp/wp-admin/js/postbox.min.js +0 -1
- data/lib/wp/wp-admin/js/revisions.js +0 -1110
- data/lib/wp/wp-admin/js/revisions.min.js +0 -1
- data/lib/wp/wp-admin/js/set-post-thumbnail.js +0 -24
- data/lib/wp/wp-admin/js/set-post-thumbnail.min.js +0 -1
- data/lib/wp/wp-admin/js/svg-painter.js +0 -240
- data/lib/wp/wp-admin/js/svg-painter.min.js +0 -1
- data/lib/wp/wp-admin/js/tags.js +0 -72
- data/lib/wp/wp-admin/js/tags.min.js +0 -1
- data/lib/wp/wp-admin/js/theme.js +0 -1691
- data/lib/wp/wp-admin/js/theme.min.js +0 -1
- data/lib/wp/wp-admin/js/updates.js +0 -65
- data/lib/wp/wp-admin/js/updates.min.js +0 -1
- data/lib/wp/wp-admin/js/user-profile.js +0 -127
- data/lib/wp/wp-admin/js/user-profile.min.js +0 -1
- data/lib/wp/wp-admin/js/user-suggest.js +0 -30
- data/lib/wp/wp-admin/js/user-suggest.min.js +0 -1
- data/lib/wp/wp-admin/js/widgets.js +0 -494
- data/lib/wp/wp-admin/js/widgets.min.js +0 -1
- data/lib/wp/wp-admin/js/word-count.js +0 -44
- data/lib/wp/wp-admin/js/word-count.min.js +0 -1
- data/lib/wp/wp-admin/js/wp-fullscreen.js +0 -704
- data/lib/wp/wp-admin/js/wp-fullscreen.min.js +0 -1
- data/lib/wp/wp-admin/js/xfn.js +0 -17
- data/lib/wp/wp-admin/js/xfn.min.js +0 -1
- data/lib/wp/wp-admin/link-add.php +0 -29
- data/lib/wp/wp-admin/link-manager.php +0 -99
- data/lib/wp/wp-admin/link-parse-opml.php +0 -84
- data/lib/wp/wp-admin/link.php +0 -117
- data/lib/wp/wp-admin/load-scripts.php +0 -162
- data/lib/wp/wp-admin/load-styles.php +0 -153
- data/lib/wp/wp-admin/maint/repair.php +0 -124
- data/lib/wp/wp-admin/media-new.php +0 -84
- data/lib/wp/wp-admin/media-upload.php +0 -100
- data/lib/wp/wp-admin/media.php +0 -146
- data/lib/wp/wp-admin/menu-header.php +0 -227
- data/lib/wp/wp-admin/menu.php +0 -255
- data/lib/wp/wp-admin/moderation.php +0 -12
- data/lib/wp/wp-admin/ms-admin.php +0 -13
- data/lib/wp/wp-admin/ms-delete-site.php +0 -91
- data/lib/wp/wp-admin/ms-edit.php +0 -13
- data/lib/wp/wp-admin/ms-options.php +0 -12
- data/lib/wp/wp-admin/ms-sites.php +0 -13
- data/lib/wp/wp-admin/ms-themes.php +0 -13
- data/lib/wp/wp-admin/ms-upgrade-network.php +0 -13
- data/lib/wp/wp-admin/ms-users.php +0 -13
- data/lib/wp/wp-admin/my-sites.php +0 -145
- data/lib/wp/wp-admin/nav-menus.php +0 -798
- data/lib/wp/wp-admin/network.php +0 -561
- data/lib/wp/wp-admin/network/about.php +0 -16
- data/lib/wp/wp-admin/network/admin.php +0 -32
- data/lib/wp/wp-admin/network/credits.php +0 -16
- data/lib/wp/wp-admin/network/edit.php +0 -42
- data/lib/wp/wp-admin/network/freedoms.php +0 -16
- data/lib/wp/wp-admin/network/index.php +0 -79
- data/lib/wp/wp-admin/network/menu.php +0 -63
- data/lib/wp/wp-admin/network/plugin-editor.php +0 -16
- data/lib/wp/wp-admin/network/plugin-install.php +0 -19
- data/lib/wp/wp-admin/network/plugins.php +0 -16
- data/lib/wp/wp-admin/network/profile.php +0 -16
- data/lib/wp/wp-admin/network/settings.php +0 -347
- data/lib/wp/wp-admin/network/setup.php +0 -16
- data/lib/wp/wp-admin/network/site-info.php +0 -178
- data/lib/wp/wp-admin/network/site-new.php +0 -153
- data/lib/wp/wp-admin/network/site-settings.php +0 -173
- data/lib/wp/wp-admin/network/site-themes.php +0 -185
- data/lib/wp/wp-admin/network/site-users.php +0 -319
- data/lib/wp/wp-admin/network/sites.php +0 -275
- data/lib/wp/wp-admin/network/theme-editor.php +0 -16
- data/lib/wp/wp-admin/network/theme-install.php +0 -19
- data/lib/wp/wp-admin/network/themes.php +0 -291
- data/lib/wp/wp-admin/network/update-core.php +0 -16
- data/lib/wp/wp-admin/network/update.php +0 -19
- data/lib/wp/wp-admin/network/upgrade.php +0 -120
- data/lib/wp/wp-admin/network/user-edit.php +0 -16
- data/lib/wp/wp-admin/network/user-new.php +0 -106
- data/lib/wp/wp-admin/network/users.php +0 -296
- data/lib/wp/wp-admin/options-discussion.php +0 -273
- data/lib/wp/wp-admin/options-general.php +0 -355
- data/lib/wp/wp-admin/options-head.php +0 -18
- data/lib/wp/wp-admin/options-media.php +0 -136
- data/lib/wp/wp-admin/options-permalink.php +0 -289
- data/lib/wp/wp-admin/options-reading.php +0 -184
- data/lib/wp/wp-admin/options-writing.php +0 -194
- data/lib/wp/wp-admin/options.php +0 -265
- data/lib/wp/wp-admin/plugin-editor.php +0 -279
- data/lib/wp/wp-admin/plugin-install.php +0 -134
- data/lib/wp/wp-admin/plugins.php +0 -474
- data/lib/wp/wp-admin/post-new.php +0 -74
- data/lib/wp/wp-admin/post.php +0 -318
- data/lib/wp/wp-admin/press-this.php +0 -691
- data/lib/wp/wp-admin/profile.php +0 -18
- data/lib/wp/wp-admin/revision.php +0 -221
- data/lib/wp/wp-admin/setup-config.php +0 -345
- data/lib/wp/wp-admin/theme-editor.php +0 -243
- data/lib/wp/wp-admin/theme-install.php +0 -278
- data/lib/wp/wp-admin/themes.php +0 -374
- data/lib/wp/wp-admin/tools.php +0 -75
- data/lib/wp/wp-admin/update-core.php +0 -653
- data/lib/wp/wp-admin/update.php +0 -272
- data/lib/wp/wp-admin/upgrade-functions.php +0 -12
- data/lib/wp/wp-admin/upgrade.php +0 -116
- data/lib/wp/wp-admin/upload.php +0 -292
- data/lib/wp/wp-admin/user-edit.php +0 -557
- data/lib/wp/wp-admin/user-new.php +0 -439
- data/lib/wp/wp-admin/user/about.php +0 -13
- data/lib/wp/wp-admin/user/admin.php +0 -32
- data/lib/wp/wp-admin/user/credits.php +0 -13
- data/lib/wp/wp-admin/user/freedoms.php +0 -13
- data/lib/wp/wp-admin/user/index.php +0 -12
- data/lib/wp/wp-admin/user/menu.php +0 -22
- data/lib/wp/wp-admin/user/profile.php +0 -12
- data/lib/wp/wp-admin/user/user-edit.php +0 -12
- data/lib/wp/wp-admin/users.php +0 -460
- data/lib/wp/wp-admin/widgets.php +0 -442
- data/lib/wp/wp-blog-header.php +0 -18
- data/lib/wp/wp-comments-post.php +0 -164
- data/lib/wp/wp-config-sample.php +0 -80
- data/lib/wp/wp-content/index.php +0 -2
- data/lib/wp/wp-content/plugins/hello.php +0 -82
- data/lib/wp/wp-content/plugins/index.php +0 -2
- data/lib/wp/wp-content/themes/index.php +0 -2
- data/lib/wp/wp-content/themes/stump/.editorconfig +0 -11
- data/lib/wp/wp-content/themes/stump/.jshintrc +0 -16
- data/lib/wp/wp-content/themes/stump/404.php +0 -13
- data/lib/wp/wp-content/themes/stump/CHANGELOG.md +0 -333
- data/lib/wp/wp-content/themes/stump/CONTRIBUTING.md +0 -121
- data/lib/wp/wp-content/themes/stump/Gruntfile.js +0 -151
- data/lib/wp/wp-content/themes/stump/LICENSE.md +0 -19
- data/lib/wp/wp-content/themes/stump/assets/coffee/build/.gitkeep +0 -0
- data/lib/wp/wp-content/themes/stump/assets/css/editor-style.css +0 -548
- data/lib/wp/wp-content/themes/stump/assets/fonts/glyphicons-halflings-regular.eot +0 -0
- data/lib/wp/wp-content/themes/stump/assets/fonts/glyphicons-halflings-regular.svg +0 -229
- data/lib/wp/wp-content/themes/stump/assets/fonts/glyphicons-halflings-regular.ttf +0 -0
- data/lib/wp/wp-content/themes/stump/assets/fonts/glyphicons-halflings-regular.woff +0 -0
- data/lib/wp/wp-content/themes/stump/assets/img/.gitignore +0 -0
- data/lib/wp/wp-content/themes/stump/assets/js/_main.js +0 -63
- data/lib/wp/wp-content/themes/stump/assets/js/plugins/bootstrap/affix.js +0 -137
- data/lib/wp/wp-content/themes/stump/assets/js/plugins/bootstrap/alert.js +0 -88
- data/lib/wp/wp-content/themes/stump/assets/js/plugins/bootstrap/button.js +0 -107
- data/lib/wp/wp-content/themes/stump/assets/js/plugins/bootstrap/carousel.js +0 -205
- data/lib/wp/wp-content/themes/stump/assets/js/plugins/bootstrap/collapse.js +0 -170
- data/lib/wp/wp-content/themes/stump/assets/js/plugins/bootstrap/dropdown.js +0 -147
- data/lib/wp/wp-content/themes/stump/assets/js/plugins/bootstrap/modal.js +0 -243
- data/lib/wp/wp-content/themes/stump/assets/js/plugins/bootstrap/popover.js +0 -110
- data/lib/wp/wp-content/themes/stump/assets/js/plugins/bootstrap/scrollspy.js +0 -153
- data/lib/wp/wp-content/themes/stump/assets/js/plugins/bootstrap/tab.js +0 -125
- data/lib/wp/wp-content/themes/stump/assets/js/plugins/bootstrap/tooltip.js +0 -399
- data/lib/wp/wp-content/themes/stump/assets/js/plugins/bootstrap/transition.js +0 -48
- data/lib/wp/wp-content/themes/stump/assets/js/scripts.min.js +0 -1
- data/lib/wp/wp-content/themes/stump/assets/js/vendor/jquery-1.11.0.min.js +0 -4
- data/lib/wp/wp-content/themes/stump/assets/js/vendor/modernizr-2.7.0.min.js +0 -4
- data/lib/wp/wp-content/themes/stump/assets/sass/app.scss +0 -9
- data/lib/wp/wp-content/themes/stump/assets/sass/core/_variables.scss +0 -1
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_alerts.scss +0 -67
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_badges.scss +0 -55
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_bootstrap.scss +0 -49
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_breadcrumbs.scss +0 -26
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_button-groups.scss +0 -226
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_buttons.scss +0 -159
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_carousel.scss +0 -232
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_close.scss +0 -35
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_code.scss +0 -63
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_component-animations.scss +0 -29
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_dropdowns.scss +0 -213
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_forms.scss +0 -436
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_glyphicons.scss +0 -233
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_grid.scss +0 -84
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_input-groups.scss +0 -162
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_jumbotron.scss +0 -44
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_labels.scss +0 -64
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_list-group.scss +0 -110
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_media.scss +0 -56
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_mixins.scss +0 -947
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_modals.scss +0 -139
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_navbar.scss +0 -620
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_navs.scss +0 -242
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_normalize.scss +0 -423
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_pager.scss +0 -55
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_pagination.scss +0 -88
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_panels.scss +0 -241
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_popovers.scss +0 -133
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_print.scss +0 -101
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_progress-bars.scss +0 -80
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_responsive-utilities.scss +0 -74
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_scaffolding.scss +0 -134
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_tables.scss +0 -233
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_theme.scss +0 -247
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_thumbnails.scss +0 -38
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_tooltip.scss +0 -95
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_type.scss +0 -284
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_utilities.scss +0 -56
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_variables.scss +0 -833
- data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_wells.scss +0 -29
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/_bourbon-deprecated-upcoming.scss +0 -13
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/_bourbon.scss +0 -59
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/addons/_button.scss +0 -273
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/addons/_clearfix.scss +0 -29
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/addons/_font-family.scss +0 -5
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/addons/_hide-text.scss +0 -5
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/addons/_html5-input-types.scss +0 -56
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/addons/_position.scss +0 -42
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/addons/_prefixer.scss +0 -49
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/addons/_retina-image.scss +0 -32
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/addons/_size.scss +0 -44
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/addons/_timing-functions.scss +0 -32
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/addons/_triangle.scss +0 -45
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_animation.scss +0 -52
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_appearance.scss +0 -3
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_backface-visibility.scss +0 -6
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_background-image.scss +0 -48
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_background.scss +0 -103
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_border-image.scss +0 -55
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_border-radius.scss +0 -22
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_box-sizing.scss +0 -4
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_columns.scss +0 -47
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_flex-box.scss +0 -52
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_font-face.scss +0 -23
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_hidpi-media-query.scss +0 -10
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_image-rendering.scss +0 -13
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_inline-block.scss +0 -8
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_keyframes.scss +0 -43
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_linear-gradient.scss +0 -41
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_perspective.scss +0 -8
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_placeholder.scss +0 -29
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_radial-gradient.scss +0 -44
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_transform.scss +0 -15
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_transition.scss +0 -34
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_user-select.scss +0 -3
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/functions/_compact.scss +0 -11
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/functions/_flex-grid.scss +0 -39
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/functions/_grid-width.scss +0 -13
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/functions/_linear-gradient.scss +0 -13
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/functions/_modular-scale.scss +0 -40
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/functions/_px-to-em.scss +0 -8
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/functions/_radial-gradient.scss +0 -23
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/functions/_tint-shade.scss +0 -9
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/functions/_transition-property-name.scss +0 -22
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/helpers/_deprecated-webkit-gradient.scss +0 -39
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/helpers/_gradient-positions-parser.scss +0 -13
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/helpers/_linear-positions-parser.scss +0 -61
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/helpers/_radial-arg-parser.scss +0 -69
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/helpers/_radial-positions-parser.scss +0 -18
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/helpers/_render-gradients.scss +0 -26
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/helpers/_shape-size-stripper.scss +0 -10
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/manhattan.sass +0 -11
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/manhattan/_grid.sass +0 -161
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/manhattan/_mixins.sass +0 -63
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/manhattan/_utilities.sass +0 -24
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/manhattan/_variables.sass +0 -42
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/_neat-helpers.scss +0 -8
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/_neat.scss +0 -21
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/functions/_new-breakpoint.scss +0 -16
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/functions/_private.scss +0 -107
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/functions/_px-to-em.scss +0 -3
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/grid/_fill-parent.scss +0 -7
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/grid/_grid.scss +0 -5
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/grid/_media.scss +0 -51
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/grid/_omega.scss +0 -79
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/grid/_outer-container.scss +0 -8
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/grid/_pad.scss +0 -8
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/grid/_private.scss +0 -50
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/grid/_reset.scss +0 -12
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/grid/_row.scss +0 -17
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/grid/_shift.scss +0 -9
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/grid/_span-columns.scss +0 -38
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/grid/_to-deprecate.scss +0 -57
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/grid/_visual-grid.scss +0 -41
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/settings/_grid.scss +0 -7
- data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/settings/_visual-grid.scss +0 -5
- data/lib/wp/wp-content/themes/stump/base.php +0 -36
- data/lib/wp/wp-content/themes/stump/functions.php +0 -19
- data/lib/wp/wp-content/themes/stump/index.php +0 -21
- data/lib/wp/wp-content/themes/stump/lang/ar.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/ar.po +0 -270
- data/lib/wp/wp-content/themes/stump/lang/bg_BG.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/bg_BG.po +0 -338
- data/lib/wp/wp-content/themes/stump/lang/ca.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/ca.po +0 -517
- data/lib/wp/wp-content/themes/stump/lang/da_DK.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/da_DK.po +0 -305
- data/lib/wp/wp-content/themes/stump/lang/de_DE.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/de_DE.po +0 -271
- data/lib/wp/wp-content/themes/stump/lang/el.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/el.po +0 -319
- data/lib/wp/wp-content/themes/stump/lang/es_ES.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/es_ES.po +0 -270
- data/lib/wp/wp-content/themes/stump/lang/et.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/et.po +0 -262
- data/lib/wp/wp-content/themes/stump/lang/fa_IR.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/fa_IR.po +0 -273
- data/lib/wp/wp-content/themes/stump/lang/fi_FI.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/fi_FI.po +0 -367
- data/lib/wp/wp-content/themes/stump/lang/fr_FR.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/fr_FR.po +0 -336
- data/lib/wp/wp-content/themes/stump/lang/he_IL.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/he_IL.po +0 -336
- data/lib/wp/wp-content/themes/stump/lang/hu_HU.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/hu_HU.po +0 -271
- data/lib/wp/wp-content/themes/stump/lang/id_ID.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/id_ID.po +0 -278
- data/lib/wp/wp-content/themes/stump/lang/it_IT.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/it_IT.po +0 -269
- data/lib/wp/wp-content/themes/stump/lang/ja.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/ja.po +0 -267
- data/lib/wp/wp-content/themes/stump/lang/ko_KR.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/ko_KR.po +0 -282
- data/lib/wp/wp-content/themes/stump/lang/mk_MK.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/mk_MK.po +0 -297
- data/lib/wp/wp-content/themes/stump/lang/ms_MY.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/ms_MY.po +0 -342
- data/lib/wp/wp-content/themes/stump/lang/nb_NO.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/nb_NO.po +0 -517
- data/lib/wp/wp-content/themes/stump/lang/nl_NL.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/nl_NL.po +0 -261
- data/lib/wp/wp-content/themes/stump/lang/nn_NO.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/nn_NO.po +0 -517
- data/lib/wp/wp-content/themes/stump/lang/pl_PL.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/pl_PL.po +0 -283
- data/lib/wp/wp-content/themes/stump/lang/pt_BR.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/pt_BR.po +0 -394
- data/lib/wp/wp-content/themes/stump/lang/ro_RO.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/ro_RO.po +0 -271
- data/lib/wp/wp-content/themes/stump/lang/roots.pot +0 -244
- data/lib/wp/wp-content/themes/stump/lang/ru_RU.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/ru_RU.po +0 -255
- data/lib/wp/wp-content/themes/stump/lang/sk_SK.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/sk_SK.po +0 -267
- data/lib/wp/wp-content/themes/stump/lang/sr_RS.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/sr_RS.pot +0 -261
- data/lib/wp/wp-content/themes/stump/lang/sv_SE.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/sv_SE.po +0 -323
- data/lib/wp/wp-content/themes/stump/lang/tr_TR.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/tr_TR.po +0 -405
- data/lib/wp/wp-content/themes/stump/lang/vi_VN.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/vi_VN.po +0 -516
- data/lib/wp/wp-content/themes/stump/lang/zh_CN.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/zh_CN.po +0 -329
- data/lib/wp/wp-content/themes/stump/lang/zh_TW.mo +0 -0
- data/lib/wp/wp-content/themes/stump/lang/zh_TW.po +0 -261
- data/lib/wp/wp-content/themes/stump/lib/activation.php +0 -215
- data/lib/wp/wp-content/themes/stump/lib/cleanup.php +0 -261
- data/lib/wp/wp-content/themes/stump/lib/comments.php +0 -52
- data/lib/wp/wp-content/themes/stump/lib/config.php +0 -79
- data/lib/wp/wp-content/themes/stump/lib/custom.php +0 -4
- data/lib/wp/wp-content/themes/stump/lib/gallery.php +0 -130
- data/lib/wp/wp-content/themes/stump/lib/init.php +0 -25
- data/lib/wp/wp-content/themes/stump/lib/nav.php +0 -93
- data/lib/wp/wp-content/themes/stump/lib/relative-urls.php +0 -50
- data/lib/wp/wp-content/themes/stump/lib/scripts.php +0 -67
- data/lib/wp/wp-content/themes/stump/lib/sidebar.php +0 -43
- data/lib/wp/wp-content/themes/stump/lib/titles.php +0 -37
- data/lib/wp/wp-content/themes/stump/lib/utils.php +0 -14
- data/lib/wp/wp-content/themes/stump/lib/widgets.php +0 -133
- data/lib/wp/wp-content/themes/stump/lib/wrapper.php +0 -49
- data/lib/wp/wp-content/themes/stump/package.json +0 -32
- data/lib/wp/wp-content/themes/stump/page.php +0 -2
- data/lib/wp/wp-content/themes/stump/screenshot.png +0 -0
- data/lib/wp/wp-content/themes/stump/single.php +0 -1
- data/lib/wp/wp-content/themes/stump/style.css +0 -11
- data/lib/wp/wp-content/themes/stump/template-custom.php +0 -8
- data/lib/wp/wp-content/themes/stump/templates/comment.php +0 -14
- data/lib/wp/wp-content/themes/stump/templates/comments.php +0 -80
- data/lib/wp/wp-content/themes/stump/templates/content-page.php +0 -4
- data/lib/wp/wp-content/themes/stump/templates/content-single.php +0 -15
- data/lib/wp/wp-content/themes/stump/templates/content.php +0 -9
- data/lib/wp/wp-content/themes/stump/templates/entry-meta.php +0 -2
- data/lib/wp/wp-content/themes/stump/templates/footer.php +0 -8
- data/lib/wp/wp-content/themes/stump/templates/head.php +0 -12
- data/lib/wp/wp-content/themes/stump/templates/header-top-navbar.php +0 -21
- data/lib/wp/wp-content/themes/stump/templates/header.php +0 -14
- data/lib/wp/wp-content/themes/stump/templates/page-header.php +0 -5
- data/lib/wp/wp-content/themes/stump/templates/searchform.php +0 -9
- data/lib/wp/wp-content/themes/stump/templates/sidebar.php +0 -1
- data/lib/wp/wp-cron.php +0 -115
- data/lib/wp/wp-includes/ID3/getid3.lib.php +0 -1376
- data/lib/wp/wp-includes/ID3/getid3.php +0 -1796
- data/lib/wp/wp-includes/ID3/license.commercial.txt +0 -27
- data/lib/wp/wp-includes/ID3/license.txt +0 -29
- data/lib/wp/wp-includes/ID3/module.audio-video.asf.php +0 -2013
- data/lib/wp/wp-includes/ID3/module.audio-video.flv.php +0 -745
- data/lib/wp/wp-includes/ID3/module.audio-video.matroska.php +0 -1751
- data/lib/wp/wp-includes/ID3/module.audio-video.quicktime.php +0 -2246
- data/lib/wp/wp-includes/ID3/module.audio-video.riff.php +0 -2586
- data/lib/wp/wp-includes/ID3/module.audio.ac3.php +0 -474
- data/lib/wp/wp-includes/ID3/module.audio.dts.php +0 -291
- data/lib/wp/wp-includes/ID3/module.audio.flac.php +0 -443
- data/lib/wp/wp-includes/ID3/module.audio.mp3.php +0 -2012
- data/lib/wp/wp-includes/ID3/module.audio.ogg.php +0 -756
- data/lib/wp/wp-includes/ID3/module.tag.apetag.php +0 -371
- data/lib/wp/wp-includes/ID3/module.tag.id3v1.php +0 -360
- data/lib/wp/wp-includes/ID3/module.tag.id3v2.php +0 -3424
- data/lib/wp/wp-includes/ID3/module.tag.lyrics3.php +0 -294
- data/lib/wp/wp-includes/ID3/readme.txt +0 -604
- data/lib/wp/wp-includes/SimplePie/Author.php +0 -157
- data/lib/wp/wp-includes/SimplePie/Cache.php +0 -133
- data/lib/wp/wp-includes/SimplePie/Cache/Base.php +0 -114
- data/lib/wp/wp-includes/SimplePie/Cache/DB.php +0 -137
- data/lib/wp/wp-includes/SimplePie/Cache/File.php +0 -173
- data/lib/wp/wp-includes/SimplePie/Cache/Memcache.php +0 -183
- data/lib/wp/wp-includes/SimplePie/Cache/MySQL.php +0 -438
- data/lib/wp/wp-includes/SimplePie/Caption.php +0 -210
- data/lib/wp/wp-includes/SimplePie/Category.php +0 -157
- data/lib/wp/wp-includes/SimplePie/Content/Type/Sniffer.php +0 -332
- data/lib/wp/wp-includes/SimplePie/Copyright.php +0 -130
- data/lib/wp/wp-includes/SimplePie/Core.php +0 -57
- data/lib/wp/wp-includes/SimplePie/Credit.php +0 -156
- data/lib/wp/wp-includes/SimplePie/Decode/HTML/Entities.php +0 -617
- data/lib/wp/wp-includes/SimplePie/Enclosure.php +0 -1380
- data/lib/wp/wp-includes/SimplePie/Exception.php +0 -52
- data/lib/wp/wp-includes/SimplePie/File.php +0 -292
- data/lib/wp/wp-includes/SimplePie/HTTP/Parser.php +0 -500
- data/lib/wp/wp-includes/SimplePie/IRI.php +0 -1238
- data/lib/wp/wp-includes/SimplePie/Item.php +0 -2964
- data/lib/wp/wp-includes/SimplePie/Locator.php +0 -372
- data/lib/wp/wp-includes/SimplePie/Misc.php +0 -2247
- data/lib/wp/wp-includes/SimplePie/Net/IPv6.php +0 -276
- data/lib/wp/wp-includes/SimplePie/Parse/Date.php +0 -983
- data/lib/wp/wp-includes/SimplePie/Parser.php +0 -407
- data/lib/wp/wp-includes/SimplePie/Rating.php +0 -129
- data/lib/wp/wp-includes/SimplePie/Registry.php +0 -225
- data/lib/wp/wp-includes/SimplePie/Restriction.php +0 -155
- data/lib/wp/wp-includes/SimplePie/Sanitize.php +0 -554
- data/lib/wp/wp-includes/SimplePie/Source.php +0 -611
- data/lib/wp/wp-includes/SimplePie/XML/Declaration/Parser.php +0 -362
- data/lib/wp/wp-includes/SimplePie/gzdecode.php +0 -371
- data/lib/wp/wp-includes/Text/Diff.php +0 -450
- data/lib/wp/wp-includes/Text/Diff/Engine/native.php +0 -436
- data/lib/wp/wp-includes/Text/Diff/Engine/shell.php +0 -162
- data/lib/wp/wp-includes/Text/Diff/Engine/string.php +0 -248
- data/lib/wp/wp-includes/Text/Diff/Engine/xdiff.php +0 -64
- data/lib/wp/wp-includes/Text/Diff/Renderer.php +0 -235
- data/lib/wp/wp-includes/Text/Diff/Renderer/inline.php +0 -206
- data/lib/wp/wp-includes/admin-bar.php +0 -870
- data/lib/wp/wp-includes/atomlib.php +0 -352
- data/lib/wp/wp-includes/author-template.php +0 -471
- data/lib/wp/wp-includes/bookmark-template.php +0 -298
- data/lib/wp/wp-includes/bookmark.php +0 -416
- data/lib/wp/wp-includes/cache.php +0 -704
- data/lib/wp/wp-includes/canonical.php +0 -586
- data/lib/wp/wp-includes/capabilities.php +0 -1539
- data/lib/wp/wp-includes/category-template.php +0 -1407
- data/lib/wp/wp-includes/category.php +0 -343
- data/lib/wp/wp-includes/certificates/ca-bundle.crt +0 -3785
- data/lib/wp/wp-includes/class-IXR.php +0 -1100
- data/lib/wp/wp-includes/class-feed.php +0 -140
- data/lib/wp/wp-includes/class-http.php +0 -2245
- data/lib/wp/wp-includes/class-json.php +0 -936
- data/lib/wp/wp-includes/class-oembed.php +0 -579
- data/lib/wp/wp-includes/class-phpass.php +0 -260
- data/lib/wp/wp-includes/class-phpmailer.php +0 -3265
- data/lib/wp/wp-includes/class-pop3.php +0 -652
- data/lib/wp/wp-includes/class-simplepie.php +0 -3119
- data/lib/wp/wp-includes/class-smtp.php +0 -943
- data/lib/wp/wp-includes/class-snoopy.php +0 -1256
- data/lib/wp/wp-includes/class-wp-admin-bar.php +0 -517
- data/lib/wp/wp-includes/class-wp-ajax-response.php +0 -199
- data/lib/wp/wp-includes/class-wp-customize-control.php +0 -1124
- data/lib/wp/wp-includes/class-wp-customize-manager.php +0 -1272
- data/lib/wp/wp-includes/class-wp-customize-panel.php +0 -200
- data/lib/wp/wp-includes/class-wp-customize-section.php +0 -196
- data/lib/wp/wp-includes/class-wp-customize-setting.php +0 -554
- data/lib/wp/wp-includes/class-wp-customize-widgets.php +0 -1556
- data/lib/wp/wp-includes/class-wp-editor.php +0 -1435
- data/lib/wp/wp-includes/class-wp-embed.php +0 -373
- data/lib/wp/wp-includes/class-wp-error.php +0 -276
- data/lib/wp/wp-includes/class-wp-http-ixr-client.php +0 -97
- data/lib/wp/wp-includes/class-wp-image-editor-gd.php +0 -459
- data/lib/wp/wp-includes/class-wp-image-editor-imagick.php +0 -512
- data/lib/wp/wp-includes/class-wp-image-editor.php +0 -475
- data/lib/wp/wp-includes/class-wp-theme.php +0 -1235
- data/lib/wp/wp-includes/class-wp-walker.php +0 -471
- data/lib/wp/wp-includes/class-wp-xmlrpc-server.php +0 -5984
- data/lib/wp/wp-includes/class-wp.php +0 -782
- data/lib/wp/wp-includes/class.wp-dependencies.php +0 -509
- data/lib/wp/wp-includes/class.wp-scripts.php +0 -247
- data/lib/wp/wp-includes/class.wp-styles.php +0 -210
- data/lib/wp/wp-includes/comment-template.php +0 -2286
- data/lib/wp/wp-includes/comment.php +0 -2606
- data/lib/wp/wp-includes/compat.php +0 -125
- data/lib/wp/wp-includes/cron.php +0 -469
- data/lib/wp/wp-includes/css/admin-bar-rtl.css +0 -1099
- data/lib/wp/wp-includes/css/admin-bar-rtl.min.css +0 -1
- data/lib/wp/wp-includes/css/admin-bar.css +0 -1099
- data/lib/wp/wp-includes/css/admin-bar.min.css +0 -1
- data/lib/wp/wp-includes/css/buttons-rtl.css +0 -364
- data/lib/wp/wp-includes/css/buttons-rtl.min.css +0 -1
- data/lib/wp/wp-includes/css/buttons.css +0 -364
- data/lib/wp/wp-includes/css/buttons.min.css +0 -1
- data/lib/wp/wp-includes/css/dashicons.css +0 -893
- data/lib/wp/wp-includes/css/dashicons.min.css +0 -1
- data/lib/wp/wp-includes/css/editor-rtl.css +0 -1993
- data/lib/wp/wp-includes/css/editor-rtl.min.css +0 -1
- data/lib/wp/wp-includes/css/editor.css +0 -1993
- data/lib/wp/wp-includes/css/editor.min.css +0 -1
- data/lib/wp/wp-includes/css/jquery-ui-dialog-rtl.css +0 -343
- data/lib/wp/wp-includes/css/jquery-ui-dialog-rtl.min.css +0 -19
- data/lib/wp/wp-includes/css/jquery-ui-dialog.css +0 -343
- data/lib/wp/wp-includes/css/jquery-ui-dialog.min.css +0 -19
- data/lib/wp/wp-includes/css/media-views-rtl.css +0 -2568
- data/lib/wp/wp-includes/css/media-views-rtl.min.css +0 -1
- data/lib/wp/wp-includes/css/media-views.css +0 -2568
- data/lib/wp/wp-includes/css/media-views.min.css +0 -1
- data/lib/wp/wp-includes/css/wp-auth-check-rtl.css +0 -100
- data/lib/wp/wp-includes/css/wp-auth-check-rtl.min.css +0 -1
- data/lib/wp/wp-includes/css/wp-auth-check.css +0 -100
- data/lib/wp/wp-includes/css/wp-auth-check.min.css +0 -1
- data/lib/wp/wp-includes/css/wp-pointer-rtl.css +0 -212
- data/lib/wp/wp-includes/css/wp-pointer-rtl.min.css +0 -1
- data/lib/wp/wp-includes/css/wp-pointer.css +0 -212
- data/lib/wp/wp-includes/css/wp-pointer.min.css +0 -1
- data/lib/wp/wp-includes/date.php +0 -475
- data/lib/wp/wp-includes/default-constants.php +0 -323
- data/lib/wp/wp-includes/default-filters.php +0 -307
- data/lib/wp/wp-includes/default-widgets.php +0 -1423
- data/lib/wp/wp-includes/deprecated.php +0 -3501
- data/lib/wp/wp-includes/feed-atom-comments.php +0 -115
- data/lib/wp/wp-includes/feed-atom.php +0 -87
- data/lib/wp/wp-includes/feed-rdf.php +0 -81
- data/lib/wp/wp-includes/feed-rss.php +0 -46
- data/lib/wp/wp-includes/feed-rss2-comments.php +0 -97
- data/lib/wp/wp-includes/feed-rss2.php +0 -115
- data/lib/wp/wp-includes/feed.php +0 -659
- data/lib/wp/wp-includes/fonts/dashicons.eot +0 -0
- data/lib/wp/wp-includes/fonts/dashicons.svg +0 -250
- data/lib/wp/wp-includes/fonts/dashicons.ttf +0 -0
- data/lib/wp/wp-includes/fonts/dashicons.woff +0 -0
- data/lib/wp/wp-includes/formatting.php +0 -4006
- data/lib/wp/wp-includes/functions.php +0 -4631
- data/lib/wp/wp-includes/functions.wp-scripts.php +0 -258
- data/lib/wp/wp-includes/functions.wp-styles.php +0 -245
- data/lib/wp/wp-includes/general-template.php +0 -2982
- data/lib/wp/wp-includes/http.php +0 -551
- data/lib/wp/wp-includes/images/admin-bar-sprite-2x.png +0 -0
- data/lib/wp/wp-includes/images/admin-bar-sprite.png +0 -0
- data/lib/wp/wp-includes/images/arrow-pointer-blue-2x.png +0 -0
- data/lib/wp/wp-includes/images/arrow-pointer-blue.png +0 -0
- data/lib/wp/wp-includes/images/blank.gif +0 -0
- data/lib/wp/wp-includes/images/crystal/archive.png +0 -0
- data/lib/wp/wp-includes/images/crystal/audio.png +0 -0
- data/lib/wp/wp-includes/images/crystal/code.png +0 -0
- data/lib/wp/wp-includes/images/crystal/default.png +0 -0
- data/lib/wp/wp-includes/images/crystal/document.png +0 -0
- data/lib/wp/wp-includes/images/crystal/interactive.png +0 -0
- data/lib/wp/wp-includes/images/crystal/license.txt +0 -9
- data/lib/wp/wp-includes/images/crystal/spreadsheet.png +0 -0
- data/lib/wp/wp-includes/images/crystal/text.png +0 -0
- data/lib/wp/wp-includes/images/crystal/video.png +0 -0
- data/lib/wp/wp-includes/images/down_arrow-2x.gif +0 -0
- data/lib/wp/wp-includes/images/down_arrow.gif +0 -0
- data/lib/wp/wp-includes/images/icon-pointer-flag-2x.png +0 -0
- data/lib/wp/wp-includes/images/icon-pointer-flag.png +0 -0
- data/lib/wp/wp-includes/images/media/archive.png +0 -0
- data/lib/wp/wp-includes/images/media/audio.png +0 -0
- data/lib/wp/wp-includes/images/media/code.png +0 -0
- data/lib/wp/wp-includes/images/media/default.png +0 -0
- data/lib/wp/wp-includes/images/media/document.png +0 -0
- data/lib/wp/wp-includes/images/media/interactive.png +0 -0
- data/lib/wp/wp-includes/images/media/spreadsheet.png +0 -0
- data/lib/wp/wp-includes/images/media/text.png +0 -0
- data/lib/wp/wp-includes/images/media/video.png +0 -0
- data/lib/wp/wp-includes/images/rss-2x.png +0 -0
- data/lib/wp/wp-includes/images/rss.png +0 -0
- data/lib/wp/wp-includes/images/smilies/icon_arrow.gif +0 -0
- data/lib/wp/wp-includes/images/smilies/icon_biggrin.gif +0 -0
- data/lib/wp/wp-includes/images/smilies/icon_confused.gif +0 -0
- data/lib/wp/wp-includes/images/smilies/icon_cool.gif +0 -0
- data/lib/wp/wp-includes/images/smilies/icon_cry.gif +0 -0
- data/lib/wp/wp-includes/images/smilies/icon_eek.gif +0 -0
- data/lib/wp/wp-includes/images/smilies/icon_evil.gif +0 -0
- data/lib/wp/wp-includes/images/smilies/icon_exclaim.gif +0 -0
- data/lib/wp/wp-includes/images/smilies/icon_idea.gif +0 -0
- data/lib/wp/wp-includes/images/smilies/icon_lol.gif +0 -0
- data/lib/wp/wp-includes/images/smilies/icon_mad.gif +0 -0
- data/lib/wp/wp-includes/images/smilies/icon_mrgreen.gif +0 -0
- data/lib/wp/wp-includes/images/smilies/icon_neutral.gif +0 -0
- data/lib/wp/wp-includes/images/smilies/icon_question.gif +0 -0
- data/lib/wp/wp-includes/images/smilies/icon_razz.gif +0 -0
- data/lib/wp/wp-includes/images/smilies/icon_redface.gif +0 -0
- data/lib/wp/wp-includes/images/smilies/icon_rolleyes.gif +0 -0
- data/lib/wp/wp-includes/images/smilies/icon_sad.gif +0 -0
- data/lib/wp/wp-includes/images/smilies/icon_smile.gif +0 -0
- data/lib/wp/wp-includes/images/smilies/icon_surprised.gif +0 -0
- data/lib/wp/wp-includes/images/smilies/icon_twisted.gif +0 -0
- data/lib/wp/wp-includes/images/smilies/icon_wink.gif +0 -0
- data/lib/wp/wp-includes/images/spinner-2x.gif +0 -0
- data/lib/wp/wp-includes/images/spinner.gif +0 -0
- data/lib/wp/wp-includes/images/toggle-arrow-2x.png +0 -0
- data/lib/wp/wp-includes/images/toggle-arrow.png +0 -0
- data/lib/wp/wp-includes/images/uploader-icons-2x.png +0 -0
- data/lib/wp/wp-includes/images/uploader-icons.png +0 -0
- data/lib/wp/wp-includes/images/wlw/wp-comments.png +0 -0
- data/lib/wp/wp-includes/images/wlw/wp-icon.png +0 -0
- data/lib/wp/wp-includes/images/wlw/wp-watermark.png +0 -0
- data/lib/wp/wp-includes/images/wpicons-2x.png +0 -0
- data/lib/wp/wp-includes/images/wpicons.png +0 -0
- data/lib/wp/wp-includes/images/wpspin-2x.gif +0 -0
- data/lib/wp/wp-includes/images/wpspin.gif +0 -0
- data/lib/wp/wp-includes/images/xit-2x.gif +0 -0
- data/lib/wp/wp-includes/images/xit.gif +0 -0
- data/lib/wp/wp-includes/js/admin-bar.js +0 -365
- data/lib/wp/wp-includes/js/admin-bar.min.js +0 -1
- data/lib/wp/wp-includes/js/autosave.js +0 -589
- data/lib/wp/wp-includes/js/autosave.min.js +0 -1
- data/lib/wp/wp-includes/js/backbone.min.js +0 -1
- data/lib/wp/wp-includes/js/colorpicker.js +0 -707
- data/lib/wp/wp-includes/js/colorpicker.min.js +0 -1
- data/lib/wp/wp-includes/js/comment-reply.js +0 -47
- data/lib/wp/wp-includes/js/comment-reply.min.js +0 -1
- data/lib/wp/wp-includes/js/crop/cropper.css +0 -165
- data/lib/wp/wp-includes/js/crop/cropper.js +0 -516
- data/lib/wp/wp-includes/js/crop/marqueeHoriz.gif +0 -0
- data/lib/wp/wp-includes/js/crop/marqueeVert.gif +0 -0
- data/lib/wp/wp-includes/js/customize-base.js +0 -617
- data/lib/wp/wp-includes/js/customize-base.min.js +0 -1
- data/lib/wp/wp-includes/js/customize-loader.js +0 -246
- data/lib/wp/wp-includes/js/customize-loader.min.js +0 -1
- data/lib/wp/wp-includes/js/customize-models.js +0 -247
- data/lib/wp/wp-includes/js/customize-models.min.js +0 -1
- data/lib/wp/wp-includes/js/customize-preview-widgets.js +0 -129
- data/lib/wp/wp-includes/js/customize-preview-widgets.min.js +0 -1
- data/lib/wp/wp-includes/js/customize-preview.js +0 -154
- data/lib/wp/wp-includes/js/customize-preview.min.js +0 -1
- data/lib/wp/wp-includes/js/customize-views.js +0 -231
- data/lib/wp/wp-includes/js/customize-views.min.js +0 -1
- data/lib/wp/wp-includes/js/heartbeat.js +0 -738
- data/lib/wp/wp-includes/js/heartbeat.min.js +0 -1
- data/lib/wp/wp-includes/js/hoverIntent.js +0 -115
- data/lib/wp/wp-includes/js/hoverIntent.min.js +0 -1
- data/lib/wp/wp-includes/js/imgareaselect/border-anim-h.gif +0 -0
- data/lib/wp/wp-includes/js/imgareaselect/border-anim-v.gif +0 -0
- data/lib/wp/wp-includes/js/imgareaselect/imgareaselect.css +0 -41
- data/lib/wp/wp-includes/js/imgareaselect/jquery.imgareaselect.js +0 -1205
- data/lib/wp/wp-includes/js/imgareaselect/jquery.imgareaselect.min.js +0 -1
- data/lib/wp/wp-includes/js/jcrop/Jcrop.gif +0 -0
- data/lib/wp/wp-includes/js/jcrop/jquery.Jcrop.min.css +0 -29
- data/lib/wp/wp-includes/js/jcrop/jquery.Jcrop.min.js +0 -22
- data/lib/wp/wp-includes/js/jquery/jquery-migrate.js +0 -521
- data/lib/wp/wp-includes/js/jquery/jquery-migrate.min.js +0 -2
- data/lib/wp/wp-includes/js/jquery/jquery.color.min.js +0 -2
- data/lib/wp/wp-includes/js/jquery/jquery.form.js +0 -1193
- data/lib/wp/wp-includes/js/jquery/jquery.form.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/jquery.hotkeys.js +0 -134
- data/lib/wp/wp-includes/js/jquery/jquery.hotkeys.min.js +0 -1
- data/lib/wp/wp-includes/js/jquery/jquery.js +0 -5
- data/lib/wp/wp-includes/js/jquery/jquery.masonry.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/jquery.query.js +0 -11
- data/lib/wp/wp-includes/js/jquery/jquery.schedule.js +0 -36
- data/lib/wp/wp-includes/js/jquery/jquery.serialize-object.js +0 -31
- data/lib/wp/wp-includes/js/jquery/jquery.table-hotkeys.js +0 -99
- data/lib/wp/wp-includes/js/jquery/jquery.table-hotkeys.min.js +0 -1
- data/lib/wp/wp-includes/js/jquery/jquery.ui.touch-punch.js +0 -11
- data/lib/wp/wp-includes/js/jquery/suggest.js +0 -316
- data/lib/wp/wp-includes/js/jquery/suggest.min.js +0 -1
- data/lib/wp/wp-includes/js/jquery/ui/accordion.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/autocomplete.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/button.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/core.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/datepicker.min.js +0 -12
- data/lib/wp/wp-includes/js/jquery/ui/dialog.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/draggable.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/droppable.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/effect-blind.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/effect-bounce.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/effect-clip.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/effect-drop.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/effect-explode.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/effect-fade.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/effect-fold.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/effect-highlight.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/effect-puff.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/effect-pulsate.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/effect-scale.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/effect-shake.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/effect-size.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/effect-slide.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/effect-transfer.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/effect.min.js +0 -21
- data/lib/wp/wp-includes/js/jquery/ui/menu.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/mouse.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/position.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/progressbar.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/resizable.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/selectable.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/selectmenu.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/slider.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/sortable.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/spinner.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/tabs.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/tooltip.min.js +0 -11
- data/lib/wp/wp-includes/js/jquery/ui/widget.min.js +0 -11
- data/lib/wp/wp-includes/js/json2.js +0 -480
- data/lib/wp/wp-includes/js/json2.min.js +0 -1
- data/lib/wp/wp-includes/js/masonry.min.js +0 -1
- data/lib/wp/wp-includes/js/mce-view.js +0 -829
- data/lib/wp/wp-includes/js/mce-view.min.js +0 -1
- data/lib/wp/wp-includes/js/media-audiovideo.js +0 -831
- data/lib/wp/wp-includes/js/media-audiovideo.min.js +0 -1
- data/lib/wp/wp-includes/js/media-editor.js +0 -1114
- data/lib/wp/wp-includes/js/media-editor.min.js +0 -1
- data/lib/wp/wp-includes/js/media-grid.js +0 -732
- data/lib/wp/wp-includes/js/media-grid.min.js +0 -1
- data/lib/wp/wp-includes/js/media-models.js +0 -1362
- data/lib/wp/wp-includes/js/media-models.min.js +0 -1
- data/lib/wp/wp-includes/js/media-views.js +0 -7484
- data/lib/wp/wp-includes/js/media-views.min.js +0 -3
- data/lib/wp/wp-includes/js/mediaelement/background.png +0 -0
- data/lib/wp/wp-includes/js/mediaelement/bigplay.png +0 -0
- data/lib/wp/wp-includes/js/mediaelement/bigplay.svg +0 -1
- data/lib/wp/wp-includes/js/mediaelement/controls.png +0 -0
- data/lib/wp/wp-includes/js/mediaelement/controls.svg +0 -1
- data/lib/wp/wp-includes/js/mediaelement/flashmediaelement.swf +0 -0
- data/lib/wp/wp-includes/js/mediaelement/loading.gif +0 -0
- data/lib/wp/wp-includes/js/mediaelement/mediaelement-and-player.min.js +0 -181
- data/lib/wp/wp-includes/js/mediaelement/mediaelementplayer.min.css +0 -1
- data/lib/wp/wp-includes/js/mediaelement/silverlightmediaelement.xap +0 -0
- data/lib/wp/wp-includes/js/mediaelement/wp-mediaelement.css +0 -274
- data/lib/wp/wp-includes/js/mediaelement/wp-mediaelement.js +0 -34
- data/lib/wp/wp-includes/js/mediaelement/wp-playlist.js +0 -175
- data/lib/wp/wp-includes/js/plupload/handlers.js +0 -488
- data/lib/wp/wp-includes/js/plupload/handlers.min.js +0 -1
- data/lib/wp/wp-includes/js/plupload/license.txt +0 -339
- data/lib/wp/wp-includes/js/plupload/plupload.flash.swf +0 -0
- data/lib/wp/wp-includes/js/plupload/plupload.full.min.js +0 -28
- data/lib/wp/wp-includes/js/plupload/plupload.silverlight.xap +0 -0
- data/lib/wp/wp-includes/js/plupload/wp-plupload.js +0 -376
- data/lib/wp/wp-includes/js/plupload/wp-plupload.min.js +0 -1
- data/lib/wp/wp-includes/js/quicktags.js +0 -652
- data/lib/wp/wp-includes/js/quicktags.min.js +0 -1
- data/lib/wp/wp-includes/js/shortcode.js +0 -356
- data/lib/wp/wp-includes/js/shortcode.min.js +0 -1
- data/lib/wp/wp-includes/js/swfobject.js +0 -4
- data/lib/wp/wp-includes/js/swfupload/handlers.js +0 -376
- data/lib/wp/wp-includes/js/swfupload/handlers.min.js +0 -1
- data/lib/wp/wp-includes/js/swfupload/license.txt +0 -32
- data/lib/wp/wp-includes/js/swfupload/plugins/swfupload.cookies.js +0 -53
- data/lib/wp/wp-includes/js/swfupload/plugins/swfupload.queue.js +0 -98
- data/lib/wp/wp-includes/js/swfupload/plugins/swfupload.speed.js +0 -342
- data/lib/wp/wp-includes/js/swfupload/plugins/swfupload.swfobject.js +0 -105
- data/lib/wp/wp-includes/js/swfupload/swfupload.js +0 -980
- data/lib/wp/wp-includes/js/swfupload/swfupload.swf +0 -0
- data/lib/wp/wp-includes/js/thickbox/loadingAnimation.gif +0 -0
- data/lib/wp/wp-includes/js/thickbox/macFFBgHack.png +0 -0
- data/lib/wp/wp-includes/js/thickbox/thickbox.css +0 -138
- data/lib/wp/wp-includes/js/thickbox/thickbox.js +0 -314
- data/lib/wp/wp-includes/js/tinymce/langs/wp-langs-en.js +0 -519
- data/lib/wp/wp-includes/js/tinymce/license.txt +0 -504
- data/lib/wp/wp-includes/js/tinymce/plugins/charmap/plugin.js +0 -370
- data/lib/wp/wp-includes/js/tinymce/plugins/charmap/plugin.min.js +0 -1
- data/lib/wp/wp-includes/js/tinymce/plugins/colorpicker/plugin.js +0 -112
- data/lib/wp/wp-includes/js/tinymce/plugins/colorpicker/plugin.min.js +0 -1
- data/lib/wp/wp-includes/js/tinymce/plugins/compat3x/css/dialog.css +0 -212
- data/lib/wp/wp-includes/js/tinymce/plugins/compat3x/plugin.js +0 -304
- data/lib/wp/wp-includes/js/tinymce/plugins/compat3x/plugin.min.js +0 -1
- data/lib/wp/wp-includes/js/tinymce/plugins/directionality/plugin.js +0 -64
- data/lib/wp/wp-includes/js/tinymce/plugins/directionality/plugin.min.js +0 -1
- data/lib/wp/wp-includes/js/tinymce/plugins/fullscreen/plugin.js +0 -136
- data/lib/wp/wp-includes/js/tinymce/plugins/fullscreen/plugin.min.js +0 -1
- data/lib/wp/wp-includes/js/tinymce/plugins/hr/plugin.js +0 -30
- data/lib/wp/wp-includes/js/tinymce/plugins/hr/plugin.min.js +0 -1
- data/lib/wp/wp-includes/js/tinymce/plugins/image/plugin.js +0 -450
- data/lib/wp/wp-includes/js/tinymce/plugins/image/plugin.min.js +0 -1
- data/lib/wp/wp-includes/js/tinymce/plugins/lists/plugin.js +0 -786
- data/lib/wp/wp-includes/js/tinymce/plugins/lists/plugin.min.js +0 -1
- data/lib/wp/wp-includes/js/tinymce/plugins/media/moxieplayer.swf +0 -0
- data/lib/wp/wp-includes/js/tinymce/plugins/media/plugin.js +0 -774
- data/lib/wp/wp-includes/js/tinymce/plugins/media/plugin.min.js +0 -1
- data/lib/wp/wp-includes/js/tinymce/plugins/paste/plugin.js +0 -1553
- data/lib/wp/wp-includes/js/tinymce/plugins/paste/plugin.min.js +0 -1
- data/lib/wp/wp-includes/js/tinymce/plugins/tabfocus/plugin.js +0 -125
- data/lib/wp/wp-includes/js/tinymce/plugins/tabfocus/plugin.min.js +0 -1
- data/lib/wp/wp-includes/js/tinymce/plugins/textcolor/plugin.js +0 -272
- data/lib/wp/wp-includes/js/tinymce/plugins/textcolor/plugin.min.js +0 -1
- data/lib/wp/wp-includes/js/tinymce/plugins/wordpress/plugin.js +0 -513
- data/lib/wp/wp-includes/js/tinymce/plugins/wordpress/plugin.min.js +0 -1
- data/lib/wp/wp-includes/js/tinymce/plugins/wpautoresize/plugin.js +0 -207
- data/lib/wp/wp-includes/js/tinymce/plugins/wpautoresize/plugin.min.js +0 -1
- data/lib/wp/wp-includes/js/tinymce/plugins/wpdialogs/plugin.js +0 -92
- data/lib/wp/wp-includes/js/tinymce/plugins/wpdialogs/plugin.min.js +0 -1
- data/lib/wp/wp-includes/js/tinymce/plugins/wpeditimage/plugin.js +0 -1035
- data/lib/wp/wp-includes/js/tinymce/plugins/wpeditimage/plugin.min.js +0 -1
- data/lib/wp/wp-includes/js/tinymce/plugins/wpfullscreen/plugin.js +0 -78
- data/lib/wp/wp-includes/js/tinymce/plugins/wpfullscreen/plugin.min.js +0 -1
- data/lib/wp/wp-includes/js/tinymce/plugins/wpgallery/plugin.js +0 -130
- data/lib/wp/wp-includes/js/tinymce/plugins/wpgallery/plugin.min.js +0 -1
- data/lib/wp/wp-includes/js/tinymce/plugins/wplink/plugin.js +0 -63
- data/lib/wp/wp-includes/js/tinymce/plugins/wplink/plugin.min.js +0 -1
- data/lib/wp/wp-includes/js/tinymce/plugins/wpview/plugin.js +0 -694
- data/lib/wp/wp-includes/js/tinymce/plugins/wpview/plugin.min.js +0 -1
- data/lib/wp/wp-includes/js/tinymce/skins/lightgray/content.inline.min.css +0 -1
- data/lib/wp/wp-includes/js/tinymce/skins/lightgray/content.min.css +0 -1
- data/lib/wp/wp-includes/js/tinymce/skins/lightgray/fonts/readme.md +0 -1
- data/lib/wp/wp-includes/js/tinymce/skins/lightgray/fonts/tinymce-small.eot +0 -0
- data/lib/wp/wp-includes/js/tinymce/skins/lightgray/fonts/tinymce-small.svg +0 -62
- data/lib/wp/wp-includes/js/tinymce/skins/lightgray/fonts/tinymce-small.ttf +0 -0
- data/lib/wp/wp-includes/js/tinymce/skins/lightgray/fonts/tinymce-small.woff +0 -0
- data/lib/wp/wp-includes/js/tinymce/skins/lightgray/fonts/tinymce.eot +0 -0
- data/lib/wp/wp-includes/js/tinymce/skins/lightgray/fonts/tinymce.svg +0 -63
- data/lib/wp/wp-includes/js/tinymce/skins/lightgray/fonts/tinymce.ttf +0 -0
- data/lib/wp/wp-includes/js/tinymce/skins/lightgray/fonts/tinymce.woff +0 -0
- data/lib/wp/wp-includes/js/tinymce/skins/lightgray/img/anchor.gif +0 -0
- data/lib/wp/wp-includes/js/tinymce/skins/lightgray/img/loader.gif +0 -0
- data/lib/wp/wp-includes/js/tinymce/skins/lightgray/img/object.gif +0 -0
- data/lib/wp/wp-includes/js/tinymce/skins/lightgray/img/trans.gif +0 -0
- data/lib/wp/wp-includes/js/tinymce/skins/lightgray/skin.ie7.min.css +0 -1
- data/lib/wp/wp-includes/js/tinymce/skins/lightgray/skin.min.css +0 -1
- data/lib/wp/wp-includes/js/tinymce/skins/wordpress/images/audio.png +0 -0
- data/lib/wp/wp-includes/js/tinymce/skins/wordpress/images/dashicon-edit.png +0 -0
- data/lib/wp/wp-includes/js/tinymce/skins/wordpress/images/dashicon-no-alt.png +0 -0
- data/lib/wp/wp-includes/js/tinymce/skins/wordpress/images/embedded.png +0 -0
- data/lib/wp/wp-includes/js/tinymce/skins/wordpress/images/gallery-2x.png +0 -0
- data/lib/wp/wp-includes/js/tinymce/skins/wordpress/images/gallery.png +0 -0
- data/lib/wp/wp-includes/js/tinymce/skins/wordpress/images/more-2x.png +0 -0
- data/lib/wp/wp-includes/js/tinymce/skins/wordpress/images/more.png +0 -0
- data/lib/wp/wp-includes/js/tinymce/skins/wordpress/images/pagebreak-2x.png +0 -0
- data/lib/wp/wp-includes/js/tinymce/skins/wordpress/images/pagebreak.png +0 -0
- data/lib/wp/wp-includes/js/tinymce/skins/wordpress/images/playlist-audio.png +0 -0
- data/lib/wp/wp-includes/js/tinymce/skins/wordpress/images/playlist-video.png +0 -0
- data/lib/wp/wp-includes/js/tinymce/skins/wordpress/images/video.png +0 -0
- data/lib/wp/wp-includes/js/tinymce/skins/wordpress/wp-content.css +0 -618
- data/lib/wp/wp-includes/js/tinymce/themes/modern/theme.js +0 -617
- data/lib/wp/wp-includes/js/tinymce/themes/modern/theme.min.js +0 -1
- data/lib/wp/wp-includes/js/tinymce/tiny_mce_popup.js +0 -539
- data/lib/wp/wp-includes/js/tinymce/tinymce.min.js +0 -11
- data/lib/wp/wp-includes/js/tinymce/utils/editable_selects.js +0 -70
- data/lib/wp/wp-includes/js/tinymce/utils/form_utils.js +0 -210
- data/lib/wp/wp-includes/js/tinymce/utils/mctabs.js +0 -164
- data/lib/wp/wp-includes/js/tinymce/utils/validate.js +0 -252
- data/lib/wp/wp-includes/js/tinymce/wp-mce-help.php +0 -145
- data/lib/wp/wp-includes/js/tinymce/wp-tinymce.js.gz +0 -0
- data/lib/wp/wp-includes/js/tinymce/wp-tinymce.php +0 -39
- data/lib/wp/wp-includes/js/tw-sack.js +0 -193
- data/lib/wp/wp-includes/js/tw-sack.min.js +0 -1
- data/lib/wp/wp-includes/js/underscore.min.js +0 -1
- data/lib/wp/wp-includes/js/utils.js +0 -197
- data/lib/wp/wp-includes/js/utils.min.js +0 -1
- data/lib/wp/wp-includes/js/wp-ajax-response.js +0 -64
- data/lib/wp/wp-includes/js/wp-ajax-response.min.js +0 -1
- data/lib/wp/wp-includes/js/wp-auth-check.js +0 -112
- data/lib/wp/wp-includes/js/wp-auth-check.min.js +0 -1
- data/lib/wp/wp-includes/js/wp-backbone.js +0 -386
- data/lib/wp/wp-includes/js/wp-backbone.min.js +0 -1
- data/lib/wp/wp-includes/js/wp-list-revisions.js +0 -24
- data/lib/wp/wp-includes/js/wp-list-revisions.min.js +0 -1
- data/lib/wp/wp-includes/js/wp-lists.js +0 -469
- data/lib/wp/wp-includes/js/wp-lists.min.js +0 -1
- data/lib/wp/wp-includes/js/wp-pointer.js +0 -282
- data/lib/wp/wp-includes/js/wp-pointer.min.js +0 -1
- data/lib/wp/wp-includes/js/wp-util.js +0 -106
- data/lib/wp/wp-includes/js/wp-util.min.js +0 -1
- data/lib/wp/wp-includes/js/wpdialog.js +0 -19
- data/lib/wp/wp-includes/js/wpdialog.min.js +0 -1
- data/lib/wp/wp-includes/js/wplink.js +0 -615
- data/lib/wp/wp-includes/js/wplink.min.js +0 -1
- data/lib/wp/wp-includes/js/zxcvbn-async.js +0 -18
- data/lib/wp/wp-includes/js/zxcvbn-async.min.js +0 -1
- data/lib/wp/wp-includes/js/zxcvbn.min.js +0 -47
- data/lib/wp/wp-includes/kses.php +0 -1526
- data/lib/wp/wp-includes/l10n.php +0 -908
- data/lib/wp/wp-includes/link-template.php +0 -3141
- data/lib/wp/wp-includes/load.php +0 -828
- data/lib/wp/wp-includes/locale.php +0 -368
- data/lib/wp/wp-includes/media-template.php +0 -1235
- data/lib/wp/wp-includes/media.php +0 -3329
- data/lib/wp/wp-includes/meta.php +0 -1221
- data/lib/wp/wp-includes/ms-blogs.php +0 -939
- data/lib/wp/wp-includes/ms-default-constants.php +0 -153
- data/lib/wp/wp-includes/ms-default-filters.php +0 -82
- data/lib/wp/wp-includes/ms-deprecated.php +0 -347
- data/lib/wp/wp-includes/ms-files.php +0 -82
- data/lib/wp/wp-includes/ms-functions.php +0 -2476
- data/lib/wp/wp-includes/ms-load.php +0 -458
- data/lib/wp/wp-includes/ms-settings.php +0 -213
- data/lib/wp/wp-includes/nav-menu-template.php +0 -678
- data/lib/wp/wp-includes/nav-menu.php +0 -895
- data/lib/wp/wp-includes/option.php +0 -1440
- data/lib/wp/wp-includes/pluggable-deprecated.php +0 -192
- data/lib/wp/wp-includes/pluggable.php +0 -2283
- data/lib/wp/wp-includes/plugin.php +0 -920
- data/lib/wp/wp-includes/pomo/entry.php +0 -78
- data/lib/wp/wp-includes/pomo/mo.php +0 -262
- data/lib/wp/wp-includes/pomo/po.php +0 -384
- data/lib/wp/wp-includes/pomo/streams.php +0 -209
- data/lib/wp/wp-includes/pomo/translations.php +0 -275
- data/lib/wp/wp-includes/post-formats.php +0 -243
- data/lib/wp/wp-includes/post-template.php +0 -1766
- data/lib/wp/wp-includes/post-thumbnail-template.php +0 -142
- data/lib/wp/wp-includes/post.php +0 -5842
- data/lib/wp/wp-includes/query.php +0 -4666
- data/lib/wp/wp-includes/registration-functions.php +0 -7
- data/lib/wp/wp-includes/registration.php +0 -7
- data/lib/wp/wp-includes/revision.php +0 -657
- data/lib/wp/wp-includes/rewrite.php +0 -2180
- data/lib/wp/wp-includes/rss-functions.php +0 -9
- data/lib/wp/wp-includes/rss.php +0 -936
- data/lib/wp/wp-includes/script-loader.php +0 -1045
- data/lib/wp/wp-includes/session.php +0 -430
- data/lib/wp/wp-includes/shortcodes.php +0 -410
- data/lib/wp/wp-includes/taxonomy.php +0 -4006
- data/lib/wp/wp-includes/template-loader.php +0 -76
- data/lib/wp/wp-includes/template.php +0 -505
- data/lib/wp/wp-includes/theme-compat/comments-popup.php +0 -128
- data/lib/wp/wp-includes/theme-compat/comments.php +0 -101
- data/lib/wp/wp-includes/theme-compat/footer.php +0 -30
- data/lib/wp/wp-includes/theme-compat/header.php +0 -49
- data/lib/wp/wp-includes/theme-compat/sidebar.php +0 -83
- data/lib/wp/wp-includes/theme.php +0 -2014
- data/lib/wp/wp-includes/update.php +0 -674
- data/lib/wp/wp-includes/user.php +0 -2292
- data/lib/wp/wp-includes/vars.php +0 -144
- data/lib/wp/wp-includes/version.php +0 -35
- data/lib/wp/wp-includes/widgets.php +0 -1514
- data/lib/wp/wp-includes/wlwmanifest.xml +0 -43
- data/lib/wp/wp-includes/wp-db.php +0 -2190
- data/lib/wp/wp-includes/wp-diff.php +0 -523
- data/lib/wp/wp-links-opml.php +0 -80
- data/lib/wp/wp-load.php +0 -73
- data/lib/wp/wp-login.php +0 -952
- data/lib/wp/wp-mail.php +0 -260
- data/lib/wp/wp-settings.php +0 -374
- data/lib/wp/wp-signup.php +0 -749
- data/lib/wp/wp-trackback.php +0 -127
- data/lib/wp/xmlrpc.php +0 -101
@@ -1 +0,0 @@
|
|
1
|
-
!function(a,b){var c=wp.customize;c.Setting=c.Value.extend({initialize:function(a,b,d){c.Value.prototype.initialize.call(this,b,d),this.id=a,this.transport=this.transport||"refresh",this.bind(this.preview)},preview:function(){switch(this.transport){case"refresh":return this.previewer.refresh();case"postMessage":return this.previewer.send("setting",[this.id,this()])}}}),c.Control=c.Class.extend({initialize:function(a,d){var e,f,g,h=this;this.params={},b.extend(this,d||{}),this.id=a,this.selector="#customize-control-"+a.replace(/\]/g,"").replace(/\[/g,"-"),this.container=b(this.selector),this.active=new c.Value(this.params.active),g=b.map(this.params.settings,function(a){return a}),c.apply(c,g.concat(function(){var a;h.settings={};for(a in h.params.settings)h.settings[a]=c(h.params.settings[a]);h.setting=h.settings["default"]||null,h.ready()})),h.elements=[],e=this.container.find("[data-customize-setting-link]"),f={},e.each(function(){var a,d=b(this);if(d.is(":radio")){if(a=d.prop("name"),f[a])return;f[a]=!0,d=e.filter('[name="'+a+'"]')}c(d.data("customizeSettingLink"),function(a){var b=new c.Element(d);h.elements.push(b),b.sync(a),b.set(a())})}),h.active.bind(function(a){h.toggle(a)}),h.toggle(h.active())},ready:function(){},toggle:function(a){a?this.container.slideDown():this.container.slideUp()},dropdownInit:function(){var a=this,b=this.container.find(".dropdown-status"),c=this.params,d=!1,e=function(a){"string"==typeof a&&c.statuses&&c.statuses[a]?b.html(c.statuses[a]).show():b.hide()};this.container.on("click keydown",".dropdown",function(b){("keydown"!==b.type||13===b.which)&&(b.preventDefault(),d||a.container.toggleClass("open"),a.container.hasClass("open")&&a.container.parent().parent().find("li.library-selected").focus(),d=!0,setTimeout(function(){d=!1},400))}),this.setting.bind(e),e(this.setting())}}),c.ColorControl=c.Control.extend({ready:function(){var a=this,b=this.container.find(".color-picker-hex");b.val(a.setting()).wpColorPicker({change:function(){a.setting.set(b.wpColorPicker("color"))},clear:function(){a.setting.set(!1)}})}}),c.UploadControl=c.Control.extend({ready:function(){var a=this;this.params.removed=this.params.removed||"",this.success=b.proxy(this.success,this),this.uploader=b.extend({container:this.container,browser:this.container.find(".upload"),dropzone:this.container.find(".upload-dropzone"),success:this.success,plupload:{},params:{}},this.uploader||{}),a.params.extensions&&(a.uploader.plupload.filters=[{title:c.l10n.allowedFiles,extensions:a.params.extensions}]),a.params.context&&(a.uploader.params["post_data[context]"]=this.params.context),c.settings.theme.stylesheet&&(a.uploader.params["post_data[theme]"]=c.settings.theme.stylesheet),this.uploader=new wp.Uploader(this.uploader),this.remover=this.container.find(".remove"),this.remover.on("click keydown",function(b){("keydown"!==b.type||13===b.which)&&(a.setting.set(a.params.removed),b.preventDefault())}),this.removerVisibility=b.proxy(this.removerVisibility,this),this.setting.bind(this.removerVisibility),this.removerVisibility(this.setting.get())},success:function(a){this.setting.set(a.get("url"))},removerVisibility:function(a){this.remover.toggle(a!=this.params.removed)}}),c.ImageControl=c.UploadControl.extend({ready:function(){var a,d=this;this.uploader={init:function(){var a,b;this.supports.dragdrop||(a=d.container.find(".upload-fallback"),b=a.children().detach(),this.browser.detach().empty().append(b),a.append(this.browser).show())}},c.UploadControl.prototype.ready.call(this),this.thumbnail=this.container.find(".preview-thumbnail img"),this.thumbnailSrc=b.proxy(this.thumbnailSrc,this),this.setting.bind(this.thumbnailSrc),this.library=this.container.find(".library"),this.tabs={},a=this.library.find(".library-content"),this.library.children("ul").children("li").each(function(){var c=b(this),e=c.data("customizeTab"),f=a.filter('[data-customize-tab="'+e+'"]');d.tabs[e]={both:c.add(f),link:c,panel:f}}),this.library.children("ul").on("click keydown","li",function(a){if("keydown"!==a.type||13===a.which){var c=b(this).data("customizeTab"),e=d.tabs[c];a.preventDefault(),e.link.hasClass("library-selected")||(d.selected.both.removeClass("library-selected"),d.selected=e,d.selected.both.addClass("library-selected"))}}),this.library.on("click keydown","a",function(a){if("keydown"!==a.type||13===a.which){var c=b(this).data("customizeImageValue");c&&(d.setting.set(c),a.preventDefault())}}),this.tabs.uploaded&&(this.tabs.uploaded.target=this.library.find(".uploaded-target"),this.tabs.uploaded.panel.find(".thumbnail").length||this.tabs.uploaded.both.addClass("hidden")),a.each(function(){var a=d.tabs[b(this).data("customizeTab")];return a.link.hasClass("hidden")?void 0:(d.selected=a,a.both.addClass("library-selected"),!1)}),this.dropdownInit()},success:function(a){c.UploadControl.prototype.success.call(this,a),this.tabs.uploaded&&this.tabs.uploaded.target.length&&(this.tabs.uploaded.both.removeClass("hidden"),a.element=b('<a href="#" class="thumbnail"></a>').data("customizeImageValue",a.get("url")).append('<img src="'+a.get("url")+'" />').appendTo(this.tabs.uploaded.target))},thumbnailSrc:function(a){/^(https?:)?\/\//.test(a)?this.thumbnail.prop("src",a).show():this.thumbnail.hide()}}),c.HeaderControl=c.Control.extend({ready:function(){this.btnRemove=b("#customize-control-header_image .actions .remove"),this.btnNew=b("#customize-control-header_image .actions .new"),_.bindAll(this,"openMedia","removeImage"),this.btnNew.on("click",this.openMedia),this.btnRemove.on("click",this.removeImage),c.HeaderTool.currentHeader=new c.HeaderTool.ImageModel,new c.HeaderTool.CurrentView({model:c.HeaderTool.currentHeader,el:".current .container"}),new c.HeaderTool.ChoiceListView({collection:c.HeaderTool.UploadsList=new c.HeaderTool.ChoiceList,el:".choices .uploaded .list"}),new c.HeaderTool.ChoiceListView({collection:c.HeaderTool.DefaultsList=new c.HeaderTool.DefaultsList,el:".choices .default .list"}),c.HeaderTool.combinedList=c.HeaderTool.CombinedList=new c.HeaderTool.CombinedList([c.HeaderTool.UploadsList,c.HeaderTool.DefaultsList])},calculateImageSelectOptions:function(a,b){var d,e,f,g,h,i,j=parseInt(_wpCustomizeHeader.data.width,10),k=parseInt(_wpCustomizeHeader.data.height,10),l=!!parseInt(_wpCustomizeHeader.data["flex-width"],10),m=!!parseInt(_wpCustomizeHeader.data["flex-height"],10);return h=a.get("width"),g=a.get("height"),this.headerImage=new c.HeaderTool.ImageModel,this.headerImage.set({themeWidth:j,themeHeight:k,themeFlexWidth:l,themeFlexHeight:m,imageWidth:h,imageHeight:g}),b.set("canSkipCrop",!this.headerImage.shouldBeCropped()),d=j/k,e=h,f=g,e/f>d?(k=f,j=k*d):(j=e,k=j/d),i={handles:!0,keys:!0,instance:!0,persistent:!0,imageWidth:h,imageHeight:g,x1:0,y1:0,x2:j,y2:k},m===!1&&l===!1&&(i.aspectRatio=j+":"+k),m===!1&&(i.maxHeight=k),l===!1&&(i.maxWidth=j),i},openMedia:function(a){var b=_wpMediaViewsL10n;a.preventDefault(),this.frame=wp.media({button:{text:b.selectAndCrop,close:!1},states:[new wp.media.controller.Library({title:b.chooseImage,library:wp.media.query({type:"image"}),multiple:!1,priority:20,suggestedWidth:_wpCustomizeHeader.data.width,suggestedHeight:_wpCustomizeHeader.data.height}),new wp.media.controller.Cropper({imgSelectOptions:this.calculateImageSelectOptions})]}),this.frame.on("select",this.onSelect,this),this.frame.on("cropped",this.onCropped,this),this.frame.on("skippedcrop",this.onSkippedCrop,this),this.frame.open()},onSelect:function(){this.frame.setState("cropper")},onCropped:function(a){var b=a.post_content,c=a.attachment_id,d=a.width,e=a.height;this.setImageFromURL(b,c,d,e)},onSkippedCrop:function(a){var b=a.get("url"),c=a.get("width"),d=a.get("height");this.setImageFromURL(b,a.id,c,d)},setImageFromURL:function(a,b,d,e){var f,g={};g.url=a,g.thumbnail_url=a,g.timestamp=_.now(),b&&(g.attachment_id=b),d&&(g.width=d),e&&(g.height=e),f=new c.HeaderTool.ImageModel({header:g,choice:a.split("/").pop()}),c.HeaderTool.UploadsList.add(f),c.HeaderTool.currentHeader.set(f.toJSON()),f.save(),f.importImage()},removeImage:function(){c.HeaderTool.currentHeader.trigger("hide"),c.HeaderTool.CombinedList.trigger("control:removeImage")}}),c.defaultConstructor=c.Setting,c.control=new c.Values({defaultConstructor:c.Control}),c.PreviewFrame=c.Messenger.extend({sensitivity:2e3,initialize:function(a,d){var e=b.Deferred();e.promise(this),this.container=a.container,this.signature=a.signature,b.extend(a,{channel:c.PreviewFrame.uuid()}),c.Messenger.prototype.initialize.call(this,a,d),this.add("previewUrl",a.previewUrl),this.query=b.extend(a.query||{},{customize_messenger_channel:this.channel()}),this.run(e)},run:function(a){var d=this,e=!1,f=!1;this._ready&&this.unbind("ready",this._ready),this._ready=function(){f=!0,e&&a.resolveWith(d)},this.bind("ready",this._ready),this.bind("ready",function(a){a&&a.activeControls&&b.each(a.activeControls,function(a,b){var d=c.control(a);d&&d.active(b)})}),this.request=b.ajax(this.previewUrl(),{type:"POST",data:this.query,xhrFields:{withCredentials:!0}}),this.request.fail(function(){a.rejectWith(d,["request failure"])}),this.request.done(function(c){var g,h=d.request.getResponseHeader("Location"),i=d.signature;return h&&h!=d.previewUrl()?void a.rejectWith(d,["redirect",h]):"0"===c?void d.login(a):"-1"===c?void a.rejectWith(d,["cheatin"]):(g=c.lastIndexOf(i),-1===g||g<c.lastIndexOf("</html>")?void a.rejectWith(d,["unsigned"]):(c=c.slice(0,g)+c.slice(g+i.length),d.iframe=b("<iframe />").appendTo(d.container),d.iframe.one("load",function(){e=!0,f?a.resolveWith(d):setTimeout(function(){a.rejectWith(d,["ready timeout"])},d.sensitivity)}),d.targetWindow(d.iframe[0].contentWindow),d.targetWindow().document.open(),d.targetWindow().document.write(c),void d.targetWindow().document.close()))})},login:function(a){var d,e=this;return d=function(){a.rejectWith(e,["logged out"])},this.triedLogin?d():void b.get(c.settings.url.ajax,{action:"logged-in"}).fail(d).done(function(c){var f;"1"!==c&&d(),f=b('<iframe src="'+e.previewUrl()+'" />').hide(),f.appendTo(e.container),f.load(function(){e.triedLogin=!0,f.remove(),e.run(a)})})},destroy:function(){c.Messenger.prototype.destroy.call(this),this.request.abort(),this.iframe&&this.iframe.remove(),delete this.request,delete this.iframe,delete this.targetWindow}}),function(){var a=0;c.PreviewFrame.uuid=function(){return"preview-"+a++}}(),c.Previewer=c.Messenger.extend({refreshBuffer:250,initialize:function(a,d){var e=this,f=/^https?/;b.extend(this,d||{}),this.refresh=function(a){var b,c=a.refresh,d=function(){b=null,c.call(a)};return function(){if("number"!=typeof b){if(!a.loading)return d();a.abort()}clearTimeout(b),b=setTimeout(d,a.refreshBuffer)}}(this),this.container=c.ensure(a.container),this.allowedUrls=a.allowedUrls,this.signature=a.signature,a.url=window.location.href,c.Messenger.prototype.initialize.call(this,a),this.add("scheme",this.origin()).link(this.origin).setter(function(a){var b=a.match(f);return b?b[0]:""}),this.add("previewUrl",a.previewUrl).setter(function(a){var c;return/\/wp-admin(\/|$)/.test(a.replace(/[#?].*$/,""))?null:(b.each([a.replace(f,e.scheme()),a],function(a,d){return b.each(e.allowedUrls,function(a,b){var e;return b=b.replace(/\/+$/,""),e=d.replace(b,""),0===d.indexOf(b)&&/^([/#?]|$)/.test(e)?(c=d,!1):void 0}),c?!1:void 0}),c?c:null)}),this.previewUrl.bind(this.refresh),this.scroll=0,this.bind("scroll",function(a){this.scroll=a}),this.bind("url",this.previewUrl)},query:function(){},abort:function(){this.loading&&(this.loading.destroy(),delete this.loading)},refresh:function(){var a=this;this.abort(),this.loading=new c.PreviewFrame({url:this.url(),previewUrl:this.previewUrl(),query:this.query()||{},container:this.container,signature:this.signature}),this.loading.done(function(){this.bind("synced",function(){a.preview&&a.preview.destroy(),a.preview=this,delete a.loading,a.targetWindow(this.targetWindow()),a.channel(this.channel()),a.send("active")}),this.send("sync",{scroll:a.scroll,settings:c.get()})}),this.loading.fail(function(b,c){"redirect"===b&&c&&a.previewUrl(c),"logged out"===b&&(a.preview&&(a.preview.destroy(),delete a.preview),a.login().done(a.refresh)),"cheatin"===b&&a.cheatin()})},login:function(){var a,d,e,f=this;return this._login?this._login:(a=b.Deferred(),this._login=a.promise(),d=new c.Messenger({channel:"login",url:c.settings.url.login}),e=b('<iframe src="'+c.settings.url.login+'" />').appendTo(this.container),d.targetWindow(e[0].contentWindow),d.bind("login",function(){e.remove(),d.destroy(),delete f._login,a.resolve()}),this._login)},cheatin:function(){b(document.body).empty().addClass("cheatin").append("<p>"+c.l10n.cheatin+"</p>")}}),c.controlConstructor={color:c.ColorControl,upload:c.UploadControl,image:c.ImageControl,header:c.HeaderControl},b(function(){if(c.settings=window._wpCustomizeSettings,c.l10n=window._wpCustomizeControlsL10n,c.settings){if(!b.support.postMessage||!b.support.cors&&c.settings.isCrossDomain)return window.location=c.settings.url.fallback;var a,d,e=b(document.body),f=e.children(".wp-full-overlay"),g=b("#customize-info .theme-name.site-title"),h=b(".customize-controls-close"),i=b("#save");b("#customize-controls").on("keydown",function(a){var c=13===a.which,d=b(a.target);c&&(d.is("input:not([type=button])")||d.is("select"))&&a.preventDefault()}),c.previewer=new c.Previewer({container:"#customize-preview",form:"#customize-controls",previewUrl:c.settings.url.preview,allowedUrls:c.settings.url.allowed,signature:"WP_CUSTOMIZER_SIGNATURE"},{nonce:c.settings.nonce,query:function(){return{wp_customize:"on",theme:c.settings.theme.stylesheet,customized:JSON.stringify(c.get()),nonce:this.nonce.preview}},save:function(){var a,d,f=this,g=b.extend(this.query(),{action:"customize_save",nonce:this.nonce.save}),h=c.state("processing");e.addClass("saving"),d=function(){var a=b.post(c.settings.url.ajax,g);c.trigger("save",a),a.always(function(){e.removeClass("saving")}),a.done(function(a){return"0"===a?(f.preview.iframe.hide(),void f.login().done(function(){f.save(),f.preview.iframe.show()})):"-1"===a?void f.cheatin():void c.trigger("saved")})},0===h()?d():(a=function(){0===h()&&(c.state.unbind("change",a),d())},c.state.bind("change",a))}}),c.previewer.bind("nonce",function(a){b.extend(this.nonce,a)}),b.each(c.settings.settings,function(a,b){c.create(a,a,b.value,{transport:b.transport,previewer:c.previewer})}),b.each(c.settings.controls,function(a,b){var d,e=c.controlConstructor[b.type]||c.Control;d=c.control.add(a,new e(a,{params:b,previewer:c.previewer}))}),c.previewer.previewUrl()?c.previewer.refresh():c.previewer.previewUrl(c.settings.url.home),function(){var a=new c.Values,b=a.create("saved"),d=a.create("activated"),e=a.create("processing");a.bind("change",function(){d()?b()?(i.val(c.l10n.saved).prop("disabled",!0),h.find(".screen-reader-text").text(c.l10n.close)):(i.val(c.l10n.save).prop("disabled",!1),h.find(".screen-reader-text").text(c.l10n.cancel)):(i.val(c.l10n.activate).prop("disabled",!1),h.find(".screen-reader-text").text(c.l10n.cancel))}),b(!0),d(c.settings.theme.active),e(0),c.bind("change",function(){a("saved").set(!1)}),c.bind("saved",function(){a("saved").set(!0),a("activated").set(!0)}),d.bind(function(a){a&&c.trigger("activated")}),c.state=a}(),i.click(function(a){c.previewer.save(),a.preventDefault()}).keydown(function(a){9!==a.which&&(13===a.which&&c.previewer.save(),a.preventDefault())}),h.keydown(function(a){9!==a.which&&(13===a.which&&this.click(),a.preventDefault())}),b(".upload-dropzone a.upload").keydown(function(a){13===a.which&&this.click()}),b(".collapse-sidebar").on("click keydown",function(a){("keydown"!==a.type||13===a.which)&&(f.toggleClass("collapsed").toggleClass("expanded"),a.preventDefault())}),g.length&&b("#customize-control-blogname input").on("input",function(){g.text(this.value)}),a=new c.Messenger({url:c.settings.url.parent,channel:"loader"}),a.bind("back",function(){h.on("click.customize-controls-close",function(b){b.preventDefault(),a.send("close")})}),b(window).on("beforeunload",function(){return c.state("saved")()?void 0:c.l10n.saveAlert}),b.each(["saved","change"],function(b,d){c.bind(d,function(){a.send(d)})}),c.bind("activated",function(){a.targetWindow()?a.send("activated",c.settings.url.activated):c.settings.url.activated&&(window.location=c.settings.url.activated)}),a.send("ready"),b.each({background_image:{controls:["background_repeat","background_position_x","background_attachment"],callback:function(a){return!!a}},show_on_front:{controls:["page_on_front","page_for_posts"],callback:function(a){return"page"===a}},header_textcolor:{controls:["header_textcolor"],callback:function(a){return"blank"!==a}}},function(a,d){c(a,function(a){b.each(d.controls,function(b,e){c.control(e,function(b){var c=function(a){b.container.toggle(d.callback(a))};c(a.get()),a.bind(c)})})})}),c.control("display_header_text",function(a){var b="";a.elements[0].unsync(c("header_textcolor")),a.element=new c.Element(a.container.find("input")),a.element.set("blank"!==a.setting()),a.element.bind(function(d){d||(b=c("header_textcolor").get()),a.setting.set(d?b:"blank")}),a.setting.bind(function(b){a.element.set("blank"!==b)})}),c.trigger("ready"),d=h,d.focus(),setTimeout(function(){d.focus()},200)}})}(wp,jQuery);
|
@@ -1,1882 +0,0 @@
|
|
1
|
-
/* global _wpCustomizeWidgetsSettings */
|
2
|
-
(function( wp, $ ){
|
3
|
-
|
4
|
-
if ( ! wp || ! wp.customize ) { return; }
|
5
|
-
|
6
|
-
// Set up our namespace...
|
7
|
-
var api = wp.customize,
|
8
|
-
l10n;
|
9
|
-
|
10
|
-
api.Widgets = api.Widgets || {};
|
11
|
-
|
12
|
-
// Link settings
|
13
|
-
api.Widgets.data = _wpCustomizeWidgetsSettings || {};
|
14
|
-
l10n = api.Widgets.data.l10n;
|
15
|
-
delete api.Widgets.data.l10n;
|
16
|
-
|
17
|
-
/**
|
18
|
-
* wp.customize.Widgets.WidgetModel
|
19
|
-
*
|
20
|
-
* A single widget model.
|
21
|
-
*
|
22
|
-
* @constructor
|
23
|
-
* @augments Backbone.Model
|
24
|
-
*/
|
25
|
-
api.Widgets.WidgetModel = Backbone.Model.extend({
|
26
|
-
id: null,
|
27
|
-
temp_id: null,
|
28
|
-
classname: null,
|
29
|
-
control_tpl: null,
|
30
|
-
description: null,
|
31
|
-
is_disabled: null,
|
32
|
-
is_multi: null,
|
33
|
-
multi_number: null,
|
34
|
-
name: null,
|
35
|
-
id_base: null,
|
36
|
-
transport: 'refresh',
|
37
|
-
params: [],
|
38
|
-
width: null,
|
39
|
-
height: null,
|
40
|
-
search_matched: true
|
41
|
-
});
|
42
|
-
|
43
|
-
/**
|
44
|
-
* wp.customize.Widgets.WidgetCollection
|
45
|
-
*
|
46
|
-
* Collection for widget models.
|
47
|
-
*
|
48
|
-
* @constructor
|
49
|
-
* @augments Backbone.Model
|
50
|
-
*/
|
51
|
-
api.Widgets.WidgetCollection = Backbone.Collection.extend({
|
52
|
-
model: api.Widgets.WidgetModel,
|
53
|
-
|
54
|
-
// Controls searching on the current widget collection
|
55
|
-
// and triggers an update event
|
56
|
-
doSearch: function( value ) {
|
57
|
-
|
58
|
-
// Don't do anything if we've already done this search
|
59
|
-
// Useful because the search handler fires multiple times per keystroke
|
60
|
-
if ( this.terms === value ) {
|
61
|
-
return;
|
62
|
-
}
|
63
|
-
|
64
|
-
// Updates terms with the value passed
|
65
|
-
this.terms = value;
|
66
|
-
|
67
|
-
// If we have terms, run a search...
|
68
|
-
if ( this.terms.length > 0 ) {
|
69
|
-
this.search( this.terms );
|
70
|
-
}
|
71
|
-
|
72
|
-
// If search is blank, show all themes
|
73
|
-
// Useful for resetting the views when you clean the input
|
74
|
-
if ( this.terms === '' ) {
|
75
|
-
this.each( function ( widget ) {
|
76
|
-
widget.set( 'search_matched', true );
|
77
|
-
} );
|
78
|
-
}
|
79
|
-
},
|
80
|
-
|
81
|
-
// Performs a search within the collection
|
82
|
-
// @uses RegExp
|
83
|
-
search: function( term ) {
|
84
|
-
var match, haystack;
|
85
|
-
|
86
|
-
// Escape the term string for RegExp meta characters
|
87
|
-
term = term.replace( /[-\/\\^$*+?.()|[\]{}]/g, '\\$&' );
|
88
|
-
|
89
|
-
// Consider spaces as word delimiters and match the whole string
|
90
|
-
// so matching terms can be combined
|
91
|
-
term = term.replace( / /g, ')(?=.*' );
|
92
|
-
match = new RegExp( '^(?=.*' + term + ').+', 'i' );
|
93
|
-
|
94
|
-
this.each( function ( data ) {
|
95
|
-
haystack = [ data.get( 'name' ), data.get( 'id' ), data.get( 'description' ) ].join( ' ' );
|
96
|
-
data.set( 'search_matched', match.test( haystack ) );
|
97
|
-
} );
|
98
|
-
}
|
99
|
-
});
|
100
|
-
api.Widgets.availableWidgets = new api.Widgets.WidgetCollection( api.Widgets.data.availableWidgets );
|
101
|
-
|
102
|
-
/**
|
103
|
-
* wp.customize.Widgets.SidebarModel
|
104
|
-
*
|
105
|
-
* A single sidebar model.
|
106
|
-
*
|
107
|
-
* @constructor
|
108
|
-
* @augments Backbone.Model
|
109
|
-
*/
|
110
|
-
api.Widgets.SidebarModel = Backbone.Model.extend({
|
111
|
-
after_title: null,
|
112
|
-
after_widget: null,
|
113
|
-
before_title: null,
|
114
|
-
before_widget: null,
|
115
|
-
'class': null,
|
116
|
-
description: null,
|
117
|
-
id: null,
|
118
|
-
name: null,
|
119
|
-
is_rendered: false
|
120
|
-
});
|
121
|
-
|
122
|
-
/**
|
123
|
-
* wp.customize.Widgets.SidebarCollection
|
124
|
-
*
|
125
|
-
* Collection for sidebar models.
|
126
|
-
*
|
127
|
-
* @constructor
|
128
|
-
* @augments Backbone.Collection
|
129
|
-
*/
|
130
|
-
api.Widgets.SidebarCollection = Backbone.Collection.extend({
|
131
|
-
model: api.Widgets.SidebarModel
|
132
|
-
});
|
133
|
-
api.Widgets.registeredSidebars = new api.Widgets.SidebarCollection( api.Widgets.data.registeredSidebars );
|
134
|
-
|
135
|
-
/**
|
136
|
-
* wp.customize.Widgets.AvailableWidgetsPanelView
|
137
|
-
*
|
138
|
-
* View class for the available widgets panel.
|
139
|
-
*
|
140
|
-
* @constructor
|
141
|
-
* @augments wp.Backbone.View
|
142
|
-
* @augments Backbone.View
|
143
|
-
*/
|
144
|
-
api.Widgets.AvailableWidgetsPanelView = wp.Backbone.View.extend({
|
145
|
-
|
146
|
-
el: '#available-widgets',
|
147
|
-
|
148
|
-
events: {
|
149
|
-
'input #widgets-search': 'search',
|
150
|
-
'keyup #widgets-search': 'search',
|
151
|
-
'change #widgets-search': 'search',
|
152
|
-
'search #widgets-search': 'search',
|
153
|
-
'focus .widget-tpl' : 'focus',
|
154
|
-
'click .widget-tpl' : '_submit',
|
155
|
-
'keypress .widget-tpl' : '_submit',
|
156
|
-
'keydown' : 'keyboardAccessible'
|
157
|
-
},
|
158
|
-
|
159
|
-
// Cache current selected widget
|
160
|
-
selected: null,
|
161
|
-
|
162
|
-
// Cache sidebar control which has opened panel
|
163
|
-
currentSidebarControl: null,
|
164
|
-
$search: null,
|
165
|
-
|
166
|
-
initialize: function() {
|
167
|
-
var self = this;
|
168
|
-
|
169
|
-
this.$search = $( '#widgets-search' );
|
170
|
-
|
171
|
-
_.bindAll( this, 'close' );
|
172
|
-
|
173
|
-
this.listenTo( this.collection, 'change', this.updateList );
|
174
|
-
|
175
|
-
this.updateList();
|
176
|
-
|
177
|
-
// If the available widgets panel is open and the customize controls are
|
178
|
-
// interacted with (i.e. available widgets panel is blurred) then close the
|
179
|
-
// available widgets panel.
|
180
|
-
$( '#customize-controls' ).on( 'click keydown', function( e ) {
|
181
|
-
var isAddNewBtn = $( e.target ).is( '.add-new-widget, .add-new-widget *' );
|
182
|
-
if ( $( 'body' ).hasClass( 'adding-widget' ) && ! isAddNewBtn ) {
|
183
|
-
self.close();
|
184
|
-
}
|
185
|
-
} );
|
186
|
-
|
187
|
-
// Close the panel if the URL in the preview changes
|
188
|
-
api.previewer.bind( 'url', this.close );
|
189
|
-
},
|
190
|
-
|
191
|
-
// Performs a search and handles selected widget
|
192
|
-
search: function( event ) {
|
193
|
-
var firstVisible;
|
194
|
-
|
195
|
-
this.collection.doSearch( event.target.value );
|
196
|
-
|
197
|
-
// Remove a widget from being selected if it is no longer visible
|
198
|
-
if ( this.selected && ! this.selected.is( ':visible' ) ) {
|
199
|
-
this.selected.removeClass( 'selected' );
|
200
|
-
this.selected = null;
|
201
|
-
}
|
202
|
-
|
203
|
-
// If a widget was selected but the filter value has been cleared out, clear selection
|
204
|
-
if ( this.selected && ! event.target.value ) {
|
205
|
-
this.selected.removeClass( 'selected' );
|
206
|
-
this.selected = null;
|
207
|
-
}
|
208
|
-
|
209
|
-
// If a filter has been entered and a widget hasn't been selected, select the first one shown
|
210
|
-
if ( ! this.selected && event.target.value ) {
|
211
|
-
firstVisible = this.$el.find( '> .widget-tpl:visible:first' );
|
212
|
-
if ( firstVisible.length ) {
|
213
|
-
this.select( firstVisible );
|
214
|
-
}
|
215
|
-
}
|
216
|
-
},
|
217
|
-
|
218
|
-
// Changes visibility of available widgets
|
219
|
-
updateList: function() {
|
220
|
-
this.collection.each( function( widget ) {
|
221
|
-
var widgetTpl = $( '#widget-tpl-' + widget.id );
|
222
|
-
widgetTpl.toggle( widget.get( 'search_matched' ) && ! widget.get( 'is_disabled' ) );
|
223
|
-
if ( widget.get( 'is_disabled' ) && widgetTpl.is( this.selected ) ) {
|
224
|
-
this.selected = null;
|
225
|
-
}
|
226
|
-
} );
|
227
|
-
},
|
228
|
-
|
229
|
-
// Highlights a widget
|
230
|
-
select: function( widgetTpl ) {
|
231
|
-
this.selected = $( widgetTpl );
|
232
|
-
this.selected.siblings( '.widget-tpl' ).removeClass( 'selected' );
|
233
|
-
this.selected.addClass( 'selected' );
|
234
|
-
},
|
235
|
-
|
236
|
-
// Highlights a widget on focus
|
237
|
-
focus: function( event ) {
|
238
|
-
this.select( $( event.currentTarget ) );
|
239
|
-
},
|
240
|
-
|
241
|
-
// Submit handler for keypress and click on widget
|
242
|
-
_submit: function( event ) {
|
243
|
-
// Only proceed with keypress if it is Enter or Spacebar
|
244
|
-
if ( event.type === 'keypress' && ( event.which !== 13 && event.which !== 32 ) ) {
|
245
|
-
return;
|
246
|
-
}
|
247
|
-
|
248
|
-
this.submit( $( event.currentTarget ) );
|
249
|
-
},
|
250
|
-
|
251
|
-
// Adds a selected widget to the sidebar
|
252
|
-
submit: function( widgetTpl ) {
|
253
|
-
var widgetId, widget;
|
254
|
-
|
255
|
-
if ( ! widgetTpl ) {
|
256
|
-
widgetTpl = this.selected;
|
257
|
-
}
|
258
|
-
|
259
|
-
if ( ! widgetTpl || ! this.currentSidebarControl ) {
|
260
|
-
return;
|
261
|
-
}
|
262
|
-
|
263
|
-
this.select( widgetTpl );
|
264
|
-
|
265
|
-
widgetId = $( this.selected ).data( 'widget-id' );
|
266
|
-
widget = this.collection.findWhere( { id: widgetId } );
|
267
|
-
if ( ! widget ) {
|
268
|
-
return;
|
269
|
-
}
|
270
|
-
|
271
|
-
this.currentSidebarControl.addWidget( widget.get( 'id_base' ) );
|
272
|
-
|
273
|
-
this.close();
|
274
|
-
},
|
275
|
-
|
276
|
-
// Opens the panel
|
277
|
-
open: function( sidebarControl ) {
|
278
|
-
this.currentSidebarControl = sidebarControl;
|
279
|
-
|
280
|
-
// Wide widget controls appear over the preview, and so they need to be collapsed when the panel opens
|
281
|
-
_( this.currentSidebarControl.getWidgetFormControls() ).each( function( control ) {
|
282
|
-
if ( control.params.is_wide ) {
|
283
|
-
control.collapseForm();
|
284
|
-
}
|
285
|
-
} );
|
286
|
-
|
287
|
-
$( 'body' ).addClass( 'adding-widget' );
|
288
|
-
|
289
|
-
this.$el.find( '.selected' ).removeClass( 'selected' );
|
290
|
-
|
291
|
-
// Reset search
|
292
|
-
this.collection.doSearch( '' );
|
293
|
-
|
294
|
-
this.$search.focus();
|
295
|
-
},
|
296
|
-
|
297
|
-
// Closes the panel
|
298
|
-
close: function( options ) {
|
299
|
-
options = options || {};
|
300
|
-
|
301
|
-
if ( options.returnFocus && this.currentSidebarControl ) {
|
302
|
-
this.currentSidebarControl.container.find( '.add-new-widget' ).focus();
|
303
|
-
}
|
304
|
-
|
305
|
-
this.currentSidebarControl = null;
|
306
|
-
this.selected = null;
|
307
|
-
|
308
|
-
$( 'body' ).removeClass( 'adding-widget' );
|
309
|
-
|
310
|
-
this.$search.val( '' );
|
311
|
-
},
|
312
|
-
|
313
|
-
// Add keyboard accessiblity to the panel
|
314
|
-
keyboardAccessible: function( event ) {
|
315
|
-
var isEnter = ( event.which === 13 ),
|
316
|
-
isEsc = ( event.which === 27 ),
|
317
|
-
isDown = ( event.which === 40 ),
|
318
|
-
isUp = ( event.which === 38 ),
|
319
|
-
isTab = ( event.which === 9 ),
|
320
|
-
isShift = ( event.shiftKey ),
|
321
|
-
selected = null,
|
322
|
-
firstVisible = this.$el.find( '> .widget-tpl:visible:first' ),
|
323
|
-
lastVisible = this.$el.find( '> .widget-tpl:visible:last' ),
|
324
|
-
isSearchFocused = $( event.target ).is( this.$search ),
|
325
|
-
isLastWidgetFocused = $( event.target ).is( '.widget-tpl:visible:last' );
|
326
|
-
|
327
|
-
if ( isDown || isUp ) {
|
328
|
-
if ( isDown ) {
|
329
|
-
if ( isSearchFocused ) {
|
330
|
-
selected = firstVisible;
|
331
|
-
} else if ( this.selected && this.selected.nextAll( '.widget-tpl:visible' ).length !== 0 ) {
|
332
|
-
selected = this.selected.nextAll( '.widget-tpl:visible:first' );
|
333
|
-
}
|
334
|
-
} else if ( isUp ) {
|
335
|
-
if ( isSearchFocused ) {
|
336
|
-
selected = lastVisible;
|
337
|
-
} else if ( this.selected && this.selected.prevAll( '.widget-tpl:visible' ).length !== 0 ) {
|
338
|
-
selected = this.selected.prevAll( '.widget-tpl:visible:first' );
|
339
|
-
}
|
340
|
-
}
|
341
|
-
|
342
|
-
this.select( selected );
|
343
|
-
|
344
|
-
if ( selected ) {
|
345
|
-
selected.focus();
|
346
|
-
} else {
|
347
|
-
this.$search.focus();
|
348
|
-
}
|
349
|
-
|
350
|
-
return;
|
351
|
-
}
|
352
|
-
|
353
|
-
// If enter pressed but nothing entered, don't do anything
|
354
|
-
if ( isEnter && ! this.$search.val() ) {
|
355
|
-
return;
|
356
|
-
}
|
357
|
-
|
358
|
-
if ( isEnter ) {
|
359
|
-
this.submit();
|
360
|
-
} else if ( isEsc ) {
|
361
|
-
this.close( { returnFocus: true } );
|
362
|
-
}
|
363
|
-
|
364
|
-
if ( isTab && ( isShift && isSearchFocused || ! isShift && isLastWidgetFocused ) ) {
|
365
|
-
this.currentSidebarControl.container.find( '.add-new-widget' ).focus();
|
366
|
-
event.preventDefault();
|
367
|
-
}
|
368
|
-
}
|
369
|
-
});
|
370
|
-
|
371
|
-
/**
|
372
|
-
* Handlers for the widget-synced event, organized by widget ID base.
|
373
|
-
* Other widgets may provide their own update handlers by adding
|
374
|
-
* listeners for the widget-synced event.
|
375
|
-
*/
|
376
|
-
api.Widgets.formSyncHandlers = {
|
377
|
-
|
378
|
-
/**
|
379
|
-
* @param {jQuery.Event} e
|
380
|
-
* @param {jQuery} widget
|
381
|
-
* @param {String} newForm
|
382
|
-
*/
|
383
|
-
rss: function( e, widget, newForm ) {
|
384
|
-
var oldWidgetError = widget.find( '.widget-error:first' ),
|
385
|
-
newWidgetError = $( '<div>' + newForm + '</div>' ).find( '.widget-error:first' );
|
386
|
-
|
387
|
-
if ( oldWidgetError.length && newWidgetError.length ) {
|
388
|
-
oldWidgetError.replaceWith( newWidgetError );
|
389
|
-
} else if ( oldWidgetError.length ) {
|
390
|
-
oldWidgetError.remove();
|
391
|
-
} else if ( newWidgetError.length ) {
|
392
|
-
widget.find( '.widget-content:first' ).prepend( newWidgetError );
|
393
|
-
}
|
394
|
-
}
|
395
|
-
};
|
396
|
-
|
397
|
-
/**
|
398
|
-
* wp.customize.Widgets.WidgetControl
|
399
|
-
*
|
400
|
-
* Customizer control for widgets.
|
401
|
-
* Note that 'widget_form' must match the WP_Widget_Form_Customize_Control::$type
|
402
|
-
*
|
403
|
-
* @constructor
|
404
|
-
* @augments wp.customize.Control
|
405
|
-
*/
|
406
|
-
api.Widgets.WidgetControl = api.Control.extend({
|
407
|
-
/**
|
408
|
-
* Set up the control
|
409
|
-
*/
|
410
|
-
ready: function() {
|
411
|
-
this._setupModel();
|
412
|
-
this._setupWideWidget();
|
413
|
-
this._setupControlToggle();
|
414
|
-
this._setupWidgetTitle();
|
415
|
-
this._setupReorderUI();
|
416
|
-
this._setupHighlightEffects();
|
417
|
-
this._setupUpdateUI();
|
418
|
-
this._setupRemoveUI();
|
419
|
-
},
|
420
|
-
|
421
|
-
/**
|
422
|
-
* Handle changes to the setting
|
423
|
-
*/
|
424
|
-
_setupModel: function() {
|
425
|
-
var self = this, rememberSavedWidgetId;
|
426
|
-
|
427
|
-
api.Widgets.savedWidgetIds = api.Widgets.savedWidgetIds || [];
|
428
|
-
|
429
|
-
// Remember saved widgets so we know which to trash (move to inactive widgets sidebar)
|
430
|
-
rememberSavedWidgetId = function() {
|
431
|
-
api.Widgets.savedWidgetIds[self.params.widget_id] = true;
|
432
|
-
};
|
433
|
-
api.bind( 'ready', rememberSavedWidgetId );
|
434
|
-
api.bind( 'saved', rememberSavedWidgetId );
|
435
|
-
|
436
|
-
this._updateCount = 0;
|
437
|
-
this.isWidgetUpdating = false;
|
438
|
-
this.liveUpdateMode = true;
|
439
|
-
|
440
|
-
// Update widget whenever model changes
|
441
|
-
this.setting.bind( function( to, from ) {
|
442
|
-
if ( ! _( from ).isEqual( to ) && ! self.isWidgetUpdating ) {
|
443
|
-
self.updateWidget( { instance: to } );
|
444
|
-
}
|
445
|
-
} );
|
446
|
-
},
|
447
|
-
|
448
|
-
/**
|
449
|
-
* Add special behaviors for wide widget controls
|
450
|
-
*/
|
451
|
-
_setupWideWidget: function() {
|
452
|
-
var self = this, $widgetInside, $widgetForm, $customizeSidebar,
|
453
|
-
$themeControlsContainer, positionWidget;
|
454
|
-
|
455
|
-
if ( ! this.params.is_wide ) {
|
456
|
-
return;
|
457
|
-
}
|
458
|
-
|
459
|
-
$widgetInside = this.container.find( '.widget-inside' );
|
460
|
-
$widgetForm = $widgetInside.find( '> .form' );
|
461
|
-
$customizeSidebar = $( '.wp-full-overlay-sidebar-content:first' );
|
462
|
-
this.container.addClass( 'wide-widget-control' );
|
463
|
-
|
464
|
-
this.container.find( '.widget-content:first' ).css( {
|
465
|
-
'max-width': this.params.width,
|
466
|
-
'min-height': this.params.height
|
467
|
-
} );
|
468
|
-
|
469
|
-
/**
|
470
|
-
* Keep the widget-inside positioned so the top of fixed-positioned
|
471
|
-
* element is at the same top position as the widget-top. When the
|
472
|
-
* widget-top is scrolled out of view, keep the widget-top in view;
|
473
|
-
* likewise, don't allow the widget to drop off the bottom of the window.
|
474
|
-
* If a widget is too tall to fit in the window, don't let the height
|
475
|
-
* exceed the window height so that the contents of the widget control
|
476
|
-
* will become scrollable (overflow:auto).
|
477
|
-
*/
|
478
|
-
positionWidget = function() {
|
479
|
-
var offsetTop = self.container.offset().top,
|
480
|
-
windowHeight = $( window ).height(),
|
481
|
-
formHeight = $widgetForm.outerHeight(),
|
482
|
-
top;
|
483
|
-
$widgetInside.css( 'max-height', windowHeight );
|
484
|
-
top = Math.max(
|
485
|
-
0, // prevent top from going off screen
|
486
|
-
Math.min(
|
487
|
-
Math.max( offsetTop, 0 ), // distance widget in panel is from top of screen
|
488
|
-
windowHeight - formHeight // flush up against bottom of screen
|
489
|
-
)
|
490
|
-
);
|
491
|
-
$widgetInside.css( 'top', top );
|
492
|
-
};
|
493
|
-
|
494
|
-
$themeControlsContainer = $( '#customize-theme-controls' );
|
495
|
-
this.container.on( 'expand', function() {
|
496
|
-
positionWidget();
|
497
|
-
$customizeSidebar.on( 'scroll', positionWidget );
|
498
|
-
$( window ).on( 'resize', positionWidget );
|
499
|
-
$themeControlsContainer.on( 'expanded collapsed', positionWidget );
|
500
|
-
} );
|
501
|
-
this.container.on( 'collapsed', function() {
|
502
|
-
$customizeSidebar.off( 'scroll', positionWidget );
|
503
|
-
$( window ).off( 'resize', positionWidget );
|
504
|
-
$themeControlsContainer.off( 'expanded collapsed', positionWidget );
|
505
|
-
} );
|
506
|
-
|
507
|
-
// Reposition whenever a sidebar's widgets are changed
|
508
|
-
api.each( function( setting ) {
|
509
|
-
if ( 0 === setting.id.indexOf( 'sidebars_widgets[' ) ) {
|
510
|
-
setting.bind( function() {
|
511
|
-
if ( self.container.hasClass( 'expanded' ) ) {
|
512
|
-
positionWidget();
|
513
|
-
}
|
514
|
-
} );
|
515
|
-
}
|
516
|
-
} );
|
517
|
-
},
|
518
|
-
|
519
|
-
/**
|
520
|
-
* Show/hide the control when clicking on the form title, when clicking
|
521
|
-
* the close button
|
522
|
-
*/
|
523
|
-
_setupControlToggle: function() {
|
524
|
-
var self = this, $closeBtn;
|
525
|
-
|
526
|
-
this.container.find( '.widget-top' ).on( 'click', function( e ) {
|
527
|
-
e.preventDefault();
|
528
|
-
var sidebarWidgetsControl = self.getSidebarWidgetsControl();
|
529
|
-
if ( sidebarWidgetsControl.isReordering ) {
|
530
|
-
return;
|
531
|
-
}
|
532
|
-
self.toggleForm();
|
533
|
-
} );
|
534
|
-
|
535
|
-
$closeBtn = this.container.find( '.widget-control-close' );
|
536
|
-
$closeBtn.on( 'click', function( e ) {
|
537
|
-
e.preventDefault();
|
538
|
-
self.collapseForm();
|
539
|
-
self.container.find( '.widget-top .widget-action:first' ).focus(); // keyboard accessibility
|
540
|
-
} );
|
541
|
-
},
|
542
|
-
|
543
|
-
/**
|
544
|
-
* Update the title of the form if a title field is entered
|
545
|
-
*/
|
546
|
-
_setupWidgetTitle: function() {
|
547
|
-
var self = this, updateTitle;
|
548
|
-
|
549
|
-
updateTitle = function() {
|
550
|
-
var title = self.setting().title,
|
551
|
-
inWidgetTitle = self.container.find( '.in-widget-title' );
|
552
|
-
|
553
|
-
if ( title ) {
|
554
|
-
inWidgetTitle.text( ': ' + title );
|
555
|
-
} else {
|
556
|
-
inWidgetTitle.text( '' );
|
557
|
-
}
|
558
|
-
};
|
559
|
-
this.setting.bind( updateTitle );
|
560
|
-
updateTitle();
|
561
|
-
},
|
562
|
-
|
563
|
-
/**
|
564
|
-
* Set up the widget-reorder-nav
|
565
|
-
*/
|
566
|
-
_setupReorderUI: function() {
|
567
|
-
var self = this, selectSidebarItem, $moveWidgetArea,
|
568
|
-
$reorderNav, updateAvailableSidebars;
|
569
|
-
|
570
|
-
/**
|
571
|
-
* select the provided sidebar list item in the move widget area
|
572
|
-
*
|
573
|
-
* @param {jQuery} li
|
574
|
-
*/
|
575
|
-
selectSidebarItem = function( li ) {
|
576
|
-
li.siblings( '.selected' ).removeClass( 'selected' );
|
577
|
-
li.addClass( 'selected' );
|
578
|
-
var isSelfSidebar = ( li.data( 'id' ) === self.params.sidebar_id );
|
579
|
-
self.container.find( '.move-widget-btn' ).prop( 'disabled', isSelfSidebar );
|
580
|
-
};
|
581
|
-
|
582
|
-
/**
|
583
|
-
* Add the widget reordering elements to the widget control
|
584
|
-
*/
|
585
|
-
this.container.find( '.widget-title-action' ).after( $( api.Widgets.data.tpl.widgetReorderNav ) );
|
586
|
-
$moveWidgetArea = $(
|
587
|
-
_.template( api.Widgets.data.tpl.moveWidgetArea, {
|
588
|
-
sidebars: _( api.Widgets.registeredSidebars.toArray() ).pluck( 'attributes' )
|
589
|
-
} )
|
590
|
-
);
|
591
|
-
this.container.find( '.widget-top' ).after( $moveWidgetArea );
|
592
|
-
|
593
|
-
/**
|
594
|
-
* Update available sidebars when their rendered state changes
|
595
|
-
*/
|
596
|
-
updateAvailableSidebars = function() {
|
597
|
-
var $sidebarItems = $moveWidgetArea.find( 'li' ), selfSidebarItem;
|
598
|
-
|
599
|
-
selfSidebarItem = $sidebarItems.filter( function(){
|
600
|
-
return $( this ).data( 'id' ) === self.params.sidebar_id;
|
601
|
-
} );
|
602
|
-
|
603
|
-
$sidebarItems.each( function() {
|
604
|
-
var li = $( this ),
|
605
|
-
sidebarId,
|
606
|
-
sidebar;
|
607
|
-
|
608
|
-
sidebarId = li.data( 'id' );
|
609
|
-
sidebar = api.Widgets.registeredSidebars.get( sidebarId );
|
610
|
-
|
611
|
-
li.toggle( sidebar.get( 'is_rendered' ) );
|
612
|
-
|
613
|
-
if ( li.hasClass( 'selected' ) && ! sidebar.get( 'is_rendered' ) ) {
|
614
|
-
selectSidebarItem( selfSidebarItem );
|
615
|
-
}
|
616
|
-
} );
|
617
|
-
};
|
618
|
-
|
619
|
-
updateAvailableSidebars();
|
620
|
-
api.Widgets.registeredSidebars.on( 'change:is_rendered', updateAvailableSidebars );
|
621
|
-
|
622
|
-
/**
|
623
|
-
* Handle clicks for up/down/move on the reorder nav
|
624
|
-
*/
|
625
|
-
$reorderNav = this.container.find( '.widget-reorder-nav' );
|
626
|
-
$reorderNav.find( '.move-widget, .move-widget-down, .move-widget-up' ).each( function() {
|
627
|
-
$( this ).prepend( self.container.find( '.widget-title' ).text() + ': ' );
|
628
|
-
} ).on( 'click keypress', function( event ) {
|
629
|
-
if ( event.type === 'keypress' && ( event.which !== 13 && event.which !== 32 ) ) {
|
630
|
-
return;
|
631
|
-
}
|
632
|
-
$( this ).focus();
|
633
|
-
|
634
|
-
if ( $( this ).is( '.move-widget' ) ) {
|
635
|
-
self.toggleWidgetMoveArea();
|
636
|
-
} else {
|
637
|
-
var isMoveDown = $( this ).is( '.move-widget-down' ),
|
638
|
-
isMoveUp = $( this ).is( '.move-widget-up' ),
|
639
|
-
i = self.getWidgetSidebarPosition();
|
640
|
-
|
641
|
-
if ( ( isMoveUp && i === 0 ) || ( isMoveDown && i === self.getSidebarWidgetsControl().setting().length - 1 ) ) {
|
642
|
-
return;
|
643
|
-
}
|
644
|
-
|
645
|
-
if ( isMoveUp ) {
|
646
|
-
self.moveUp();
|
647
|
-
} else {
|
648
|
-
self.moveDown();
|
649
|
-
}
|
650
|
-
|
651
|
-
$( this ).focus(); // re-focus after the container was moved
|
652
|
-
}
|
653
|
-
} );
|
654
|
-
|
655
|
-
/**
|
656
|
-
* Handle selecting a sidebar to move to
|
657
|
-
*/
|
658
|
-
this.container.find( '.widget-area-select' ).on( 'click keypress', 'li', function( e ) {
|
659
|
-
if ( event.type === 'keypress' && ( event.which !== 13 && event.which !== 32 ) ) {
|
660
|
-
return;
|
661
|
-
}
|
662
|
-
e.preventDefault();
|
663
|
-
selectSidebarItem( $( this ) );
|
664
|
-
} );
|
665
|
-
|
666
|
-
/**
|
667
|
-
* Move widget to another sidebar
|
668
|
-
*/
|
669
|
-
this.container.find( '.move-widget-btn' ).click( function() {
|
670
|
-
self.getSidebarWidgetsControl().toggleReordering( false );
|
671
|
-
|
672
|
-
var oldSidebarId = self.params.sidebar_id,
|
673
|
-
newSidebarId = self.container.find( '.widget-area-select li.selected' ).data( 'id' ),
|
674
|
-
oldSidebarWidgetsSetting, newSidebarWidgetsSetting,
|
675
|
-
oldSidebarWidgetIds, newSidebarWidgetIds, i;
|
676
|
-
|
677
|
-
oldSidebarWidgetsSetting = api( 'sidebars_widgets[' + oldSidebarId + ']' );
|
678
|
-
newSidebarWidgetsSetting = api( 'sidebars_widgets[' + newSidebarId + ']' );
|
679
|
-
oldSidebarWidgetIds = Array.prototype.slice.call( oldSidebarWidgetsSetting() );
|
680
|
-
newSidebarWidgetIds = Array.prototype.slice.call( newSidebarWidgetsSetting() );
|
681
|
-
|
682
|
-
i = self.getWidgetSidebarPosition();
|
683
|
-
oldSidebarWidgetIds.splice( i, 1 );
|
684
|
-
newSidebarWidgetIds.push( self.params.widget_id );
|
685
|
-
|
686
|
-
oldSidebarWidgetsSetting( oldSidebarWidgetIds );
|
687
|
-
newSidebarWidgetsSetting( newSidebarWidgetIds );
|
688
|
-
|
689
|
-
self.focus();
|
690
|
-
} );
|
691
|
-
},
|
692
|
-
|
693
|
-
/**
|
694
|
-
* Highlight widgets in preview when interacted with in the customizer
|
695
|
-
*/
|
696
|
-
_setupHighlightEffects: function() {
|
697
|
-
var self = this;
|
698
|
-
|
699
|
-
// Highlight whenever hovering or clicking over the form
|
700
|
-
this.container.on( 'mouseenter click', function() {
|
701
|
-
self.setting.previewer.send( 'highlight-widget', self.params.widget_id );
|
702
|
-
} );
|
703
|
-
|
704
|
-
// Highlight when the setting is updated
|
705
|
-
this.setting.bind( function() {
|
706
|
-
self.setting.previewer.send( 'highlight-widget', self.params.widget_id );
|
707
|
-
} );
|
708
|
-
},
|
709
|
-
|
710
|
-
/**
|
711
|
-
* Set up event handlers for widget updating
|
712
|
-
*/
|
713
|
-
_setupUpdateUI: function() {
|
714
|
-
var self = this, $widgetRoot, $widgetContent,
|
715
|
-
$saveBtn, updateWidgetDebounced, formSyncHandler;
|
716
|
-
|
717
|
-
$widgetRoot = this.container.find( '.widget:first' );
|
718
|
-
$widgetContent = $widgetRoot.find( '.widget-content:first' );
|
719
|
-
|
720
|
-
// Configure update button
|
721
|
-
$saveBtn = this.container.find( '.widget-control-save' );
|
722
|
-
$saveBtn.val( l10n.saveBtnLabel );
|
723
|
-
$saveBtn.attr( 'title', l10n.saveBtnTooltip );
|
724
|
-
$saveBtn.removeClass( 'button-primary' ).addClass( 'button-secondary' );
|
725
|
-
$saveBtn.on( 'click', function( e ) {
|
726
|
-
e.preventDefault();
|
727
|
-
self.updateWidget( { disable_form: true } ); // @todo disable_form is unused?
|
728
|
-
} );
|
729
|
-
|
730
|
-
updateWidgetDebounced = _.debounce( function() {
|
731
|
-
self.updateWidget();
|
732
|
-
}, 250 );
|
733
|
-
|
734
|
-
// Trigger widget form update when hitting Enter within an input
|
735
|
-
$widgetContent.on( 'keydown', 'input', function( e ) {
|
736
|
-
if ( 13 === e.which ) { // Enter
|
737
|
-
e.preventDefault();
|
738
|
-
self.updateWidget( { ignoreActiveElement: true } );
|
739
|
-
}
|
740
|
-
} );
|
741
|
-
|
742
|
-
// Handle widgets that support live previews
|
743
|
-
$widgetContent.on( 'change input propertychange', ':input', function( e ) {
|
744
|
-
if ( self.liveUpdateMode ) {
|
745
|
-
if ( e.type === 'change' ) {
|
746
|
-
self.updateWidget();
|
747
|
-
} else if ( this.checkValidity && this.checkValidity() ) {
|
748
|
-
updateWidgetDebounced();
|
749
|
-
}
|
750
|
-
}
|
751
|
-
} );
|
752
|
-
|
753
|
-
// Remove loading indicators when the setting is saved and the preview updates
|
754
|
-
this.setting.previewer.channel.bind( 'synced', function() {
|
755
|
-
self.container.removeClass( 'previewer-loading' );
|
756
|
-
} );
|
757
|
-
|
758
|
-
api.previewer.bind( 'widget-updated', function( updatedWidgetId ) {
|
759
|
-
if ( updatedWidgetId === self.params.widget_id ) {
|
760
|
-
self.container.removeClass( 'previewer-loading' );
|
761
|
-
}
|
762
|
-
} );
|
763
|
-
|
764
|
-
formSyncHandler = api.Widgets.formSyncHandlers[ this.params.widget_id_base ];
|
765
|
-
if ( formSyncHandler ) {
|
766
|
-
$( document ).on( 'widget-synced', function( e, widget ) {
|
767
|
-
if ( $widgetRoot.is( widget ) ) {
|
768
|
-
formSyncHandler.apply( document, arguments );
|
769
|
-
}
|
770
|
-
} );
|
771
|
-
}
|
772
|
-
},
|
773
|
-
|
774
|
-
/**
|
775
|
-
* Update widget control to indicate whether it is currently rendered.
|
776
|
-
*
|
777
|
-
* Overrides api.Control.toggle()
|
778
|
-
*
|
779
|
-
* @param {Boolean} active
|
780
|
-
*/
|
781
|
-
toggle: function ( active ) {
|
782
|
-
this.container.toggleClass( 'widget-rendered', active );
|
783
|
-
},
|
784
|
-
|
785
|
-
/**
|
786
|
-
* Set up event handlers for widget removal
|
787
|
-
*/
|
788
|
-
_setupRemoveUI: function() {
|
789
|
-
var self = this, $removeBtn, replaceDeleteWithRemove;
|
790
|
-
|
791
|
-
// Configure remove button
|
792
|
-
$removeBtn = this.container.find( 'a.widget-control-remove' );
|
793
|
-
$removeBtn.on( 'click', function( e ) {
|
794
|
-
e.preventDefault();
|
795
|
-
|
796
|
-
// Find an adjacent element to add focus to when this widget goes away
|
797
|
-
var $adjacentFocusTarget;
|
798
|
-
if ( self.container.next().is( '.customize-control-widget_form' ) ) {
|
799
|
-
$adjacentFocusTarget = self.container.next().find( '.widget-action:first' );
|
800
|
-
} else if ( self.container.prev().is( '.customize-control-widget_form' ) ) {
|
801
|
-
$adjacentFocusTarget = self.container.prev().find( '.widget-action:first' );
|
802
|
-
} else {
|
803
|
-
$adjacentFocusTarget = self.container.next( '.customize-control-sidebar_widgets' ).find( '.add-new-widget:first' );
|
804
|
-
}
|
805
|
-
|
806
|
-
self.container.slideUp( function() {
|
807
|
-
var sidebarsWidgetsControl = api.Widgets.getSidebarWidgetControlContainingWidget( self.params.widget_id ),
|
808
|
-
sidebarWidgetIds, i;
|
809
|
-
|
810
|
-
if ( ! sidebarsWidgetsControl ) {
|
811
|
-
return;
|
812
|
-
}
|
813
|
-
|
814
|
-
sidebarWidgetIds = sidebarsWidgetsControl.setting().slice();
|
815
|
-
i = _.indexOf( sidebarWidgetIds, self.params.widget_id );
|
816
|
-
if ( -1 === i ) {
|
817
|
-
return;
|
818
|
-
}
|
819
|
-
|
820
|
-
sidebarWidgetIds.splice( i, 1 );
|
821
|
-
sidebarsWidgetsControl.setting( sidebarWidgetIds );
|
822
|
-
|
823
|
-
$adjacentFocusTarget.focus(); // keyboard accessibility
|
824
|
-
} );
|
825
|
-
} );
|
826
|
-
|
827
|
-
replaceDeleteWithRemove = function() {
|
828
|
-
$removeBtn.text( l10n.removeBtnLabel ); // wp_widget_control() outputs the link as "Delete"
|
829
|
-
$removeBtn.attr( 'title', l10n.removeBtnTooltip );
|
830
|
-
};
|
831
|
-
|
832
|
-
if ( this.params.is_new ) {
|
833
|
-
api.bind( 'saved', replaceDeleteWithRemove );
|
834
|
-
} else {
|
835
|
-
replaceDeleteWithRemove();
|
836
|
-
}
|
837
|
-
},
|
838
|
-
|
839
|
-
/**
|
840
|
-
* Find all inputs in a widget container that should be considered when
|
841
|
-
* comparing the loaded form with the sanitized form, whose fields will
|
842
|
-
* be aligned to copy the sanitized over. The elements returned by this
|
843
|
-
* are passed into this._getInputsSignature(), and they are iterated
|
844
|
-
* over when copying sanitized values over to the the form loaded.
|
845
|
-
*
|
846
|
-
* @param {jQuery} container element in which to look for inputs
|
847
|
-
* @returns {jQuery} inputs
|
848
|
-
* @private
|
849
|
-
*/
|
850
|
-
_getInputs: function( container ) {
|
851
|
-
return $( container ).find( ':input[name]' );
|
852
|
-
},
|
853
|
-
|
854
|
-
/**
|
855
|
-
* Iterate over supplied inputs and create a signature string for all of them together.
|
856
|
-
* This string can be used to compare whether or not the form has all of the same fields.
|
857
|
-
*
|
858
|
-
* @param {jQuery} inputs
|
859
|
-
* @returns {string}
|
860
|
-
* @private
|
861
|
-
*/
|
862
|
-
_getInputsSignature: function( inputs ) {
|
863
|
-
var inputsSignatures = _( inputs ).map( function( input ) {
|
864
|
-
var $input = $( input ), signatureParts;
|
865
|
-
|
866
|
-
if ( $input.is( ':checkbox, :radio' ) ) {
|
867
|
-
signatureParts = [ $input.attr( 'id' ), $input.attr( 'name' ), $input.prop( 'value' ) ];
|
868
|
-
} else {
|
869
|
-
signatureParts = [ $input.attr( 'id' ), $input.attr( 'name' ) ];
|
870
|
-
}
|
871
|
-
|
872
|
-
return signatureParts.join( ',' );
|
873
|
-
} );
|
874
|
-
|
875
|
-
return inputsSignatures.join( ';' );
|
876
|
-
},
|
877
|
-
|
878
|
-
/**
|
879
|
-
* Get the property that represents the state of an input.
|
880
|
-
*
|
881
|
-
* @param {jQuery|DOMElement} input
|
882
|
-
* @returns {string}
|
883
|
-
* @private
|
884
|
-
*/
|
885
|
-
_getInputStatePropertyName: function( input ) {
|
886
|
-
var $input = $( input );
|
887
|
-
|
888
|
-
if ( $input.is( ':radio, :checkbox' ) ) {
|
889
|
-
return 'checked';
|
890
|
-
} else {
|
891
|
-
return 'value';
|
892
|
-
}
|
893
|
-
},
|
894
|
-
|
895
|
-
/***********************************************************************
|
896
|
-
* Begin public API methods
|
897
|
-
**********************************************************************/
|
898
|
-
|
899
|
-
/**
|
900
|
-
* @return {wp.customize.controlConstructor.sidebar_widgets[]}
|
901
|
-
*/
|
902
|
-
getSidebarWidgetsControl: function() {
|
903
|
-
var settingId, sidebarWidgetsControl;
|
904
|
-
|
905
|
-
settingId = 'sidebars_widgets[' + this.params.sidebar_id + ']';
|
906
|
-
sidebarWidgetsControl = api.control( settingId );
|
907
|
-
|
908
|
-
if ( ! sidebarWidgetsControl ) {
|
909
|
-
return;
|
910
|
-
}
|
911
|
-
|
912
|
-
return sidebarWidgetsControl;
|
913
|
-
},
|
914
|
-
|
915
|
-
/**
|
916
|
-
* Submit the widget form via Ajax and get back the updated instance,
|
917
|
-
* along with the new widget control form to render.
|
918
|
-
*
|
919
|
-
* @param {object} [args]
|
920
|
-
* @param {Object|null} [args.instance=null] When the model changes, the instance is sent here; otherwise, the inputs from the form are used
|
921
|
-
* @param {Function|null} [args.complete=null] Function which is called when the request finishes. Context is bound to the control. First argument is any error. Following arguments are for success.
|
922
|
-
* @param {Boolean} [args.ignoreActiveElement=false] Whether or not updating a field will be deferred if focus is still on the element.
|
923
|
-
*/
|
924
|
-
updateWidget: function( args ) {
|
925
|
-
var self = this, instanceOverride, completeCallback, $widgetRoot, $widgetContent,
|
926
|
-
updateNumber, params, data, $inputs, processing, jqxhr, isChanged;
|
927
|
-
|
928
|
-
args = $.extend( {
|
929
|
-
instance: null,
|
930
|
-
complete: null,
|
931
|
-
ignoreActiveElement: false
|
932
|
-
}, args );
|
933
|
-
|
934
|
-
instanceOverride = args.instance;
|
935
|
-
completeCallback = args.complete;
|
936
|
-
|
937
|
-
this._updateCount += 1;
|
938
|
-
updateNumber = this._updateCount;
|
939
|
-
|
940
|
-
$widgetRoot = this.container.find( '.widget:first' );
|
941
|
-
$widgetContent = $widgetRoot.find( '.widget-content:first' );
|
942
|
-
|
943
|
-
// Remove a previous error message
|
944
|
-
$widgetContent.find( '.widget-error' ).remove();
|
945
|
-
|
946
|
-
this.container.addClass( 'widget-form-loading' );
|
947
|
-
this.container.addClass( 'previewer-loading' );
|
948
|
-
processing = api.state( 'processing' );
|
949
|
-
processing( processing() + 1 );
|
950
|
-
|
951
|
-
if ( ! this.liveUpdateMode ) {
|
952
|
-
this.container.addClass( 'widget-form-disabled' );
|
953
|
-
}
|
954
|
-
|
955
|
-
params = {};
|
956
|
-
params.action = 'update-widget';
|
957
|
-
params.wp_customize = 'on';
|
958
|
-
params.nonce = api.Widgets.data.nonce;
|
959
|
-
params.theme = api.settings.theme.stylesheet;
|
960
|
-
|
961
|
-
data = $.param( params );
|
962
|
-
$inputs = this._getInputs( $widgetContent );
|
963
|
-
|
964
|
-
// Store the value we're submitting in data so that when the response comes back,
|
965
|
-
// we know if it got sanitized; if there is no difference in the sanitized value,
|
966
|
-
// then we do not need to touch the UI and mess up the user's ongoing editing.
|
967
|
-
$inputs.each( function() {
|
968
|
-
var input = $( this ),
|
969
|
-
property = self._getInputStatePropertyName( this );
|
970
|
-
input.data( 'state' + updateNumber, input.prop( property ) );
|
971
|
-
} );
|
972
|
-
|
973
|
-
if ( instanceOverride ) {
|
974
|
-
data += '&' + $.param( { 'sanitized_widget_setting': JSON.stringify( instanceOverride ) } );
|
975
|
-
} else {
|
976
|
-
data += '&' + $inputs.serialize();
|
977
|
-
}
|
978
|
-
data += '&' + $widgetContent.find( '~ :input' ).serialize();
|
979
|
-
|
980
|
-
jqxhr = $.post( wp.ajax.settings.url, data );
|
981
|
-
|
982
|
-
jqxhr.done( function( r ) {
|
983
|
-
var message, sanitizedForm, $sanitizedInputs, hasSameInputsInResponse,
|
984
|
-
isLiveUpdateAborted = false;
|
985
|
-
|
986
|
-
// Check if the user is logged out.
|
987
|
-
if ( '0' === r ) {
|
988
|
-
api.previewer.preview.iframe.hide();
|
989
|
-
api.previewer.login().done( function() {
|
990
|
-
self.updateWidget( args );
|
991
|
-
api.previewer.preview.iframe.show();
|
992
|
-
} );
|
993
|
-
return;
|
994
|
-
}
|
995
|
-
|
996
|
-
// Check for cheaters.
|
997
|
-
if ( '-1' === r ) {
|
998
|
-
api.previewer.cheatin();
|
999
|
-
return;
|
1000
|
-
}
|
1001
|
-
|
1002
|
-
if ( r.success ) {
|
1003
|
-
sanitizedForm = $( '<div>' + r.data.form + '</div>' );
|
1004
|
-
$sanitizedInputs = self._getInputs( sanitizedForm );
|
1005
|
-
hasSameInputsInResponse = self._getInputsSignature( $inputs ) === self._getInputsSignature( $sanitizedInputs );
|
1006
|
-
|
1007
|
-
// Restore live update mode if sanitized fields are now aligned with the existing fields
|
1008
|
-
if ( hasSameInputsInResponse && ! self.liveUpdateMode ) {
|
1009
|
-
self.liveUpdateMode = true;
|
1010
|
-
self.container.removeClass( 'widget-form-disabled' );
|
1011
|
-
self.container.find( 'input[name="savewidget"]' ).hide();
|
1012
|
-
}
|
1013
|
-
|
1014
|
-
// Sync sanitized field states to existing fields if they are aligned
|
1015
|
-
if ( hasSameInputsInResponse && self.liveUpdateMode ) {
|
1016
|
-
$inputs.each( function( i ) {
|
1017
|
-
var $input = $( this ),
|
1018
|
-
$sanitizedInput = $( $sanitizedInputs[i] ),
|
1019
|
-
property = self._getInputStatePropertyName( this ),
|
1020
|
-
submittedState, sanitizedState, canUpdateState;
|
1021
|
-
|
1022
|
-
submittedState = $input.data( 'state' + updateNumber );
|
1023
|
-
sanitizedState = $sanitizedInput.prop( property );
|
1024
|
-
$input.data( 'sanitized', sanitizedState );
|
1025
|
-
|
1026
|
-
canUpdateState = ( submittedState !== sanitizedState && ( args.ignoreActiveElement || ! $input.is( document.activeElement ) ) );
|
1027
|
-
if ( canUpdateState ) {
|
1028
|
-
$input.prop( property, sanitizedState );
|
1029
|
-
}
|
1030
|
-
} );
|
1031
|
-
|
1032
|
-
$( document ).trigger( 'widget-synced', [ $widgetRoot, r.data.form ] );
|
1033
|
-
|
1034
|
-
// Otherwise, if sanitized fields are not aligned with existing fields, disable live update mode if enabled
|
1035
|
-
} else if ( self.liveUpdateMode ) {
|
1036
|
-
self.liveUpdateMode = false;
|
1037
|
-
self.container.find( 'input[name="savewidget"]' ).show();
|
1038
|
-
isLiveUpdateAborted = true;
|
1039
|
-
|
1040
|
-
// Otherwise, replace existing form with the sanitized form
|
1041
|
-
} else {
|
1042
|
-
$widgetContent.html( r.data.form );
|
1043
|
-
|
1044
|
-
self.container.removeClass( 'widget-form-disabled' );
|
1045
|
-
|
1046
|
-
$( document ).trigger( 'widget-updated', [ $widgetRoot ] );
|
1047
|
-
}
|
1048
|
-
|
1049
|
-
/**
|
1050
|
-
* If the old instance is identical to the new one, there is nothing new
|
1051
|
-
* needing to be rendered, and so we can preempt the event for the
|
1052
|
-
* preview finishing loading.
|
1053
|
-
*/
|
1054
|
-
isChanged = ! isLiveUpdateAborted && ! _( self.setting() ).isEqual( r.data.instance );
|
1055
|
-
if ( isChanged ) {
|
1056
|
-
self.isWidgetUpdating = true; // suppress triggering another updateWidget
|
1057
|
-
self.setting( r.data.instance );
|
1058
|
-
self.isWidgetUpdating = false;
|
1059
|
-
} else {
|
1060
|
-
// no change was made, so stop the spinner now instead of when the preview would updates
|
1061
|
-
self.container.removeClass( 'previewer-loading' );
|
1062
|
-
}
|
1063
|
-
|
1064
|
-
if ( completeCallback ) {
|
1065
|
-
completeCallback.call( self, null, { noChange: ! isChanged, ajaxFinished: true } );
|
1066
|
-
}
|
1067
|
-
} else {
|
1068
|
-
// General error message
|
1069
|
-
message = l10n.error;
|
1070
|
-
|
1071
|
-
if ( r.data && r.data.message ) {
|
1072
|
-
message = r.data.message;
|
1073
|
-
}
|
1074
|
-
|
1075
|
-
if ( completeCallback ) {
|
1076
|
-
completeCallback.call( self, message );
|
1077
|
-
} else {
|
1078
|
-
$widgetContent.prepend( '<p class="widget-error"><strong>' + message + '</strong></p>' );
|
1079
|
-
}
|
1080
|
-
}
|
1081
|
-
} );
|
1082
|
-
|
1083
|
-
jqxhr.fail( function( jqXHR, textStatus ) {
|
1084
|
-
if ( completeCallback ) {
|
1085
|
-
completeCallback.call( self, textStatus );
|
1086
|
-
}
|
1087
|
-
} );
|
1088
|
-
|
1089
|
-
jqxhr.always( function() {
|
1090
|
-
self.container.removeClass( 'widget-form-loading' );
|
1091
|
-
|
1092
|
-
$inputs.each( function() {
|
1093
|
-
$( this ).removeData( 'state' + updateNumber );
|
1094
|
-
} );
|
1095
|
-
|
1096
|
-
processing( processing() - 1 );
|
1097
|
-
} );
|
1098
|
-
},
|
1099
|
-
|
1100
|
-
/**
|
1101
|
-
* Expand the accordion section containing a control
|
1102
|
-
*/
|
1103
|
-
expandControlSection: function() {
|
1104
|
-
var $section = this.container.closest( '.accordion-section' );
|
1105
|
-
|
1106
|
-
if ( ! $section.hasClass( 'open' ) ) {
|
1107
|
-
$section.find( '.accordion-section-title:first' ).trigger( 'click' );
|
1108
|
-
}
|
1109
|
-
},
|
1110
|
-
|
1111
|
-
/**
|
1112
|
-
* Expand the widget form control
|
1113
|
-
*/
|
1114
|
-
expandForm: function() {
|
1115
|
-
this.toggleForm( true );
|
1116
|
-
},
|
1117
|
-
|
1118
|
-
/**
|
1119
|
-
* Collapse the widget form control
|
1120
|
-
*/
|
1121
|
-
collapseForm: function() {
|
1122
|
-
this.toggleForm( false );
|
1123
|
-
},
|
1124
|
-
|
1125
|
-
/**
|
1126
|
-
* Expand or collapse the widget control
|
1127
|
-
*
|
1128
|
-
* @param {boolean|undefined} [showOrHide] If not supplied, will be inverse of current visibility
|
1129
|
-
*/
|
1130
|
-
toggleForm: function( showOrHide ) {
|
1131
|
-
var self = this, $widget, $inside, complete;
|
1132
|
-
|
1133
|
-
$widget = this.container.find( 'div.widget:first' );
|
1134
|
-
$inside = $widget.find( '.widget-inside:first' );
|
1135
|
-
if ( typeof showOrHide === 'undefined' ) {
|
1136
|
-
showOrHide = ! $inside.is( ':visible' );
|
1137
|
-
}
|
1138
|
-
|
1139
|
-
// Already expanded or collapsed, so noop
|
1140
|
-
if ( $inside.is( ':visible' ) === showOrHide ) {
|
1141
|
-
return;
|
1142
|
-
}
|
1143
|
-
|
1144
|
-
if ( showOrHide ) {
|
1145
|
-
// Close all other widget controls before expanding this one
|
1146
|
-
api.control.each( function( otherControl ) {
|
1147
|
-
if ( self.params.type === otherControl.params.type && self !== otherControl ) {
|
1148
|
-
otherControl.collapseForm();
|
1149
|
-
}
|
1150
|
-
} );
|
1151
|
-
|
1152
|
-
complete = function() {
|
1153
|
-
self.container.removeClass( 'expanding' );
|
1154
|
-
self.container.addClass( 'expanded' );
|
1155
|
-
self.container.trigger( 'expanded' );
|
1156
|
-
};
|
1157
|
-
|
1158
|
-
if ( self.params.is_wide ) {
|
1159
|
-
$inside.fadeIn( 'fast', complete );
|
1160
|
-
} else {
|
1161
|
-
$inside.slideDown( 'fast', complete );
|
1162
|
-
}
|
1163
|
-
|
1164
|
-
self.container.trigger( 'expand' );
|
1165
|
-
self.container.addClass( 'expanding' );
|
1166
|
-
} else {
|
1167
|
-
complete = function() {
|
1168
|
-
self.container.removeClass( 'collapsing' );
|
1169
|
-
self.container.removeClass( 'expanded' );
|
1170
|
-
self.container.trigger( 'collapsed' );
|
1171
|
-
};
|
1172
|
-
|
1173
|
-
self.container.trigger( 'collapse' );
|
1174
|
-
self.container.addClass( 'collapsing' );
|
1175
|
-
|
1176
|
-
if ( self.params.is_wide ) {
|
1177
|
-
$inside.fadeOut( 'fast', complete );
|
1178
|
-
} else {
|
1179
|
-
$inside.slideUp( 'fast', function() {
|
1180
|
-
$widget.css( { width:'', margin:'' } );
|
1181
|
-
complete();
|
1182
|
-
} );
|
1183
|
-
}
|
1184
|
-
}
|
1185
|
-
},
|
1186
|
-
|
1187
|
-
/**
|
1188
|
-
* Expand the containing sidebar section, expand the form, and focus on
|
1189
|
-
* the first input in the control
|
1190
|
-
*/
|
1191
|
-
focus: function() {
|
1192
|
-
this.expandControlSection();
|
1193
|
-
this.expandForm();
|
1194
|
-
this.container.find( '.widget-content :focusable:first' ).focus();
|
1195
|
-
},
|
1196
|
-
|
1197
|
-
/**
|
1198
|
-
* Get the position (index) of the widget in the containing sidebar
|
1199
|
-
*
|
1200
|
-
* @returns {Number}
|
1201
|
-
*/
|
1202
|
-
getWidgetSidebarPosition: function() {
|
1203
|
-
var sidebarWidgetIds, position;
|
1204
|
-
|
1205
|
-
sidebarWidgetIds = this.getSidebarWidgetsControl().setting();
|
1206
|
-
position = _.indexOf( sidebarWidgetIds, this.params.widget_id );
|
1207
|
-
|
1208
|
-
if ( position === -1 ) {
|
1209
|
-
return;
|
1210
|
-
}
|
1211
|
-
|
1212
|
-
return position;
|
1213
|
-
},
|
1214
|
-
|
1215
|
-
/**
|
1216
|
-
* Move widget up one in the sidebar
|
1217
|
-
*/
|
1218
|
-
moveUp: function() {
|
1219
|
-
this._moveWidgetByOne( -1 );
|
1220
|
-
},
|
1221
|
-
|
1222
|
-
/**
|
1223
|
-
* Move widget up one in the sidebar
|
1224
|
-
*/
|
1225
|
-
moveDown: function() {
|
1226
|
-
this._moveWidgetByOne( 1 );
|
1227
|
-
},
|
1228
|
-
|
1229
|
-
/**
|
1230
|
-
* @private
|
1231
|
-
*
|
1232
|
-
* @param {Number} offset 1|-1
|
1233
|
-
*/
|
1234
|
-
_moveWidgetByOne: function( offset ) {
|
1235
|
-
var i, sidebarWidgetsSetting, sidebarWidgetIds, adjacentWidgetId;
|
1236
|
-
|
1237
|
-
i = this.getWidgetSidebarPosition();
|
1238
|
-
|
1239
|
-
sidebarWidgetsSetting = this.getSidebarWidgetsControl().setting;
|
1240
|
-
sidebarWidgetIds = Array.prototype.slice.call( sidebarWidgetsSetting() ); // clone
|
1241
|
-
adjacentWidgetId = sidebarWidgetIds[i + offset];
|
1242
|
-
sidebarWidgetIds[i + offset] = this.params.widget_id;
|
1243
|
-
sidebarWidgetIds[i] = adjacentWidgetId;
|
1244
|
-
|
1245
|
-
sidebarWidgetsSetting( sidebarWidgetIds );
|
1246
|
-
},
|
1247
|
-
|
1248
|
-
/**
|
1249
|
-
* Toggle visibility of the widget move area
|
1250
|
-
*
|
1251
|
-
* @param {Boolean} [showOrHide]
|
1252
|
-
*/
|
1253
|
-
toggleWidgetMoveArea: function( showOrHide ) {
|
1254
|
-
var self = this, $moveWidgetArea;
|
1255
|
-
|
1256
|
-
$moveWidgetArea = this.container.find( '.move-widget-area' );
|
1257
|
-
|
1258
|
-
if ( typeof showOrHide === 'undefined' ) {
|
1259
|
-
showOrHide = ! $moveWidgetArea.hasClass( 'active' );
|
1260
|
-
}
|
1261
|
-
|
1262
|
-
if ( showOrHide ) {
|
1263
|
-
// reset the selected sidebar
|
1264
|
-
$moveWidgetArea.find( '.selected' ).removeClass( 'selected' );
|
1265
|
-
|
1266
|
-
$moveWidgetArea.find( 'li' ).filter( function() {
|
1267
|
-
return $( this ).data( 'id' ) === self.params.sidebar_id;
|
1268
|
-
} ).addClass( 'selected' );
|
1269
|
-
|
1270
|
-
this.container.find( '.move-widget-btn' ).prop( 'disabled', true );
|
1271
|
-
}
|
1272
|
-
|
1273
|
-
$moveWidgetArea.toggleClass( 'active', showOrHide );
|
1274
|
-
},
|
1275
|
-
|
1276
|
-
/**
|
1277
|
-
* Highlight the widget control and section
|
1278
|
-
*/
|
1279
|
-
highlightSectionAndControl: function() {
|
1280
|
-
var $target;
|
1281
|
-
|
1282
|
-
if ( this.container.is( ':hidden' ) ) {
|
1283
|
-
$target = this.container.closest( '.control-section' );
|
1284
|
-
} else {
|
1285
|
-
$target = this.container;
|
1286
|
-
}
|
1287
|
-
|
1288
|
-
$( '.highlighted' ).removeClass( 'highlighted' );
|
1289
|
-
$target.addClass( 'highlighted' );
|
1290
|
-
|
1291
|
-
setTimeout( function() {
|
1292
|
-
$target.removeClass( 'highlighted' );
|
1293
|
-
}, 500 );
|
1294
|
-
}
|
1295
|
-
} );
|
1296
|
-
|
1297
|
-
/**
|
1298
|
-
* wp.customize.Widgets.SidebarControl
|
1299
|
-
*
|
1300
|
-
* Customizer control for widgets.
|
1301
|
-
* Note that 'sidebar_widgets' must match the WP_Widget_Area_Customize_Control::$type
|
1302
|
-
*
|
1303
|
-
* @constructor
|
1304
|
-
* @augments wp.customize.Control
|
1305
|
-
*/
|
1306
|
-
api.Widgets.SidebarControl = api.Control.extend({
|
1307
|
-
/**
|
1308
|
-
* Set up the control
|
1309
|
-
*/
|
1310
|
-
ready: function() {
|
1311
|
-
this.$controlSection = this.container.closest( '.control-section' );
|
1312
|
-
this.$sectionContent = this.container.closest( '.accordion-section-content' );
|
1313
|
-
|
1314
|
-
this._setupModel();
|
1315
|
-
this._setupSortable();
|
1316
|
-
this._setupAddition();
|
1317
|
-
this._applyCardinalOrderClassNames();
|
1318
|
-
},
|
1319
|
-
|
1320
|
-
/**
|
1321
|
-
* Update ordering of widget control forms when the setting is updated
|
1322
|
-
*/
|
1323
|
-
_setupModel: function() {
|
1324
|
-
var self = this,
|
1325
|
-
registeredSidebar = api.Widgets.registeredSidebars.get( this.params.sidebar_id );
|
1326
|
-
|
1327
|
-
this.setting.bind( function( newWidgetIds, oldWidgetIds ) {
|
1328
|
-
var widgetFormControls, $sidebarWidgetsAddControl, finalControlContainers, removedWidgetIds;
|
1329
|
-
|
1330
|
-
removedWidgetIds = _( oldWidgetIds ).difference( newWidgetIds );
|
1331
|
-
|
1332
|
-
// Filter out any persistent widget IDs for widgets which have been deactivated
|
1333
|
-
newWidgetIds = _( newWidgetIds ).filter( function( newWidgetId ) {
|
1334
|
-
var parsedWidgetId = parseWidgetId( newWidgetId );
|
1335
|
-
|
1336
|
-
return !! api.Widgets.availableWidgets.findWhere( { id_base: parsedWidgetId.id_base } );
|
1337
|
-
} );
|
1338
|
-
|
1339
|
-
widgetFormControls = _( newWidgetIds ).map( function( widgetId ) {
|
1340
|
-
var widgetFormControl = api.Widgets.getWidgetFormControlForWidget( widgetId );
|
1341
|
-
|
1342
|
-
if ( ! widgetFormControl ) {
|
1343
|
-
widgetFormControl = self.addWidget( widgetId );
|
1344
|
-
}
|
1345
|
-
|
1346
|
-
return widgetFormControl;
|
1347
|
-
} );
|
1348
|
-
|
1349
|
-
// Sort widget controls to their new positions
|
1350
|
-
widgetFormControls.sort( function( a, b ) {
|
1351
|
-
var aIndex = _.indexOf( newWidgetIds, a.params.widget_id ),
|
1352
|
-
bIndex = _.indexOf( newWidgetIds, b.params.widget_id );
|
1353
|
-
|
1354
|
-
if ( aIndex === bIndex ) {
|
1355
|
-
return 0;
|
1356
|
-
}
|
1357
|
-
|
1358
|
-
return aIndex < bIndex ? -1 : 1;
|
1359
|
-
} );
|
1360
|
-
|
1361
|
-
// Append the controls to put them in the right order
|
1362
|
-
finalControlContainers = _( widgetFormControls ).map( function( widgetFormControls ) {
|
1363
|
-
return widgetFormControls.container[0];
|
1364
|
-
} );
|
1365
|
-
|
1366
|
-
$sidebarWidgetsAddControl = self.$sectionContent.find( '.customize-control-sidebar_widgets' );
|
1367
|
-
$sidebarWidgetsAddControl.before( finalControlContainers );
|
1368
|
-
|
1369
|
-
// Re-sort widget form controls (including widgets form other sidebars newly moved here)
|
1370
|
-
self._applyCardinalOrderClassNames();
|
1371
|
-
|
1372
|
-
// If the widget was dragged into the sidebar, make sure the sidebar_id param is updated
|
1373
|
-
_( widgetFormControls ).each( function( widgetFormControl ) {
|
1374
|
-
widgetFormControl.params.sidebar_id = self.params.sidebar_id;
|
1375
|
-
} );
|
1376
|
-
|
1377
|
-
// Cleanup after widget removal
|
1378
|
-
_( removedWidgetIds ).each( function( removedWidgetId ) {
|
1379
|
-
|
1380
|
-
// Using setTimeout so that when moving a widget to another sidebar, the other sidebars_widgets settings get a chance to update
|
1381
|
-
setTimeout( function() {
|
1382
|
-
var removedControl, wasDraggedToAnotherSidebar, inactiveWidgets, removedIdBase,
|
1383
|
-
widget, isPresentInAnotherSidebar = false;
|
1384
|
-
|
1385
|
-
// Check if the widget is in another sidebar
|
1386
|
-
api.each( function( otherSetting ) {
|
1387
|
-
if ( otherSetting.id === self.setting.id || 0 !== otherSetting.id.indexOf( 'sidebars_widgets[' ) || otherSetting.id === 'sidebars_widgets[wp_inactive_widgets]' ) {
|
1388
|
-
return;
|
1389
|
-
}
|
1390
|
-
|
1391
|
-
var otherSidebarWidgets = otherSetting(), i;
|
1392
|
-
|
1393
|
-
i = _.indexOf( otherSidebarWidgets, removedWidgetId );
|
1394
|
-
if ( -1 !== i ) {
|
1395
|
-
isPresentInAnotherSidebar = true;
|
1396
|
-
}
|
1397
|
-
} );
|
1398
|
-
|
1399
|
-
// If the widget is present in another sidebar, abort!
|
1400
|
-
if ( isPresentInAnotherSidebar ) {
|
1401
|
-
return;
|
1402
|
-
}
|
1403
|
-
|
1404
|
-
removedControl = api.Widgets.getWidgetFormControlForWidget( removedWidgetId );
|
1405
|
-
|
1406
|
-
// Detect if widget control was dragged to another sidebar
|
1407
|
-
wasDraggedToAnotherSidebar = removedControl && $.contains( document, removedControl.container[0] ) && ! $.contains( self.$sectionContent[0], removedControl.container[0] );
|
1408
|
-
|
1409
|
-
// Delete any widget form controls for removed widgets
|
1410
|
-
if ( removedControl && ! wasDraggedToAnotherSidebar ) {
|
1411
|
-
api.control.remove( removedControl.id );
|
1412
|
-
removedControl.container.remove();
|
1413
|
-
}
|
1414
|
-
|
1415
|
-
// Move widget to inactive widgets sidebar (move it to trash) if has been previously saved
|
1416
|
-
// This prevents the inactive widgets sidebar from overflowing with throwaway widgets
|
1417
|
-
if ( api.Widgets.savedWidgetIds[removedWidgetId] ) {
|
1418
|
-
inactiveWidgets = api.value( 'sidebars_widgets[wp_inactive_widgets]' )().slice();
|
1419
|
-
inactiveWidgets.push( removedWidgetId );
|
1420
|
-
api.value( 'sidebars_widgets[wp_inactive_widgets]' )( _( inactiveWidgets ).unique() );
|
1421
|
-
}
|
1422
|
-
|
1423
|
-
// Make old single widget available for adding again
|
1424
|
-
removedIdBase = parseWidgetId( removedWidgetId ).id_base;
|
1425
|
-
widget = api.Widgets.availableWidgets.findWhere( { id_base: removedIdBase } );
|
1426
|
-
if ( widget && ! widget.get( 'is_multi' ) ) {
|
1427
|
-
widget.set( 'is_disabled', false );
|
1428
|
-
}
|
1429
|
-
} );
|
1430
|
-
|
1431
|
-
} );
|
1432
|
-
} );
|
1433
|
-
|
1434
|
-
// Update the model with whether or not the sidebar is rendered
|
1435
|
-
self.active.bind( function ( active ) {
|
1436
|
-
registeredSidebar.set( 'is_rendered', active );
|
1437
|
-
} );
|
1438
|
-
},
|
1439
|
-
|
1440
|
-
/**
|
1441
|
-
* Show the sidebar section when it becomes visible.
|
1442
|
-
*
|
1443
|
-
* Overrides api.Control.toggle()
|
1444
|
-
*
|
1445
|
-
* @param {Boolean} active
|
1446
|
-
*/
|
1447
|
-
toggle: function ( active ) {
|
1448
|
-
var $section, sectionSelector;
|
1449
|
-
|
1450
|
-
sectionSelector = '#accordion-section-sidebar-widgets-' + this.params.sidebar_id;
|
1451
|
-
$section = $( sectionSelector );
|
1452
|
-
|
1453
|
-
if ( active ) {
|
1454
|
-
$section.stop().slideDown( function() {
|
1455
|
-
$( this ).css( 'height', 'auto' ); // so that the .accordion-section-content won't overflow
|
1456
|
-
} );
|
1457
|
-
|
1458
|
-
} else {
|
1459
|
-
// Make sure that hidden sections get closed first
|
1460
|
-
if ( $section.hasClass( 'open' ) ) {
|
1461
|
-
// it would be nice if accordionSwitch() in accordion.js was public
|
1462
|
-
$section.find( '.accordion-section-title' ).trigger( 'click' );
|
1463
|
-
}
|
1464
|
-
|
1465
|
-
$section.stop().slideUp();
|
1466
|
-
}
|
1467
|
-
},
|
1468
|
-
|
1469
|
-
/**
|
1470
|
-
* Allow widgets in sidebar to be re-ordered, and for the order to be previewed
|
1471
|
-
*/
|
1472
|
-
_setupSortable: function() {
|
1473
|
-
var self = this;
|
1474
|
-
|
1475
|
-
this.isReordering = false;
|
1476
|
-
|
1477
|
-
/**
|
1478
|
-
* Update widget order setting when controls are re-ordered
|
1479
|
-
*/
|
1480
|
-
this.$sectionContent.sortable( {
|
1481
|
-
items: '> .customize-control-widget_form',
|
1482
|
-
handle: '.widget-top',
|
1483
|
-
axis: 'y',
|
1484
|
-
connectWith: '.accordion-section-content:has(.customize-control-sidebar_widgets)',
|
1485
|
-
update: function() {
|
1486
|
-
var widgetContainerIds = self.$sectionContent.sortable( 'toArray' ), widgetIds;
|
1487
|
-
|
1488
|
-
widgetIds = $.map( widgetContainerIds, function( widgetContainerId ) {
|
1489
|
-
return $( '#' + widgetContainerId ).find( ':input[name=widget-id]' ).val();
|
1490
|
-
} );
|
1491
|
-
|
1492
|
-
self.setting( widgetIds );
|
1493
|
-
}
|
1494
|
-
} );
|
1495
|
-
|
1496
|
-
/**
|
1497
|
-
* Expand other customizer sidebar section when dragging a control widget over it,
|
1498
|
-
* allowing the control to be dropped into another section
|
1499
|
-
*/
|
1500
|
-
this.$controlSection.find( '.accordion-section-title' ).droppable({
|
1501
|
-
accept: '.customize-control-widget_form',
|
1502
|
-
over: function() {
|
1503
|
-
if ( ! self.$controlSection.hasClass( 'open' ) ) {
|
1504
|
-
self.$controlSection.addClass( 'open' );
|
1505
|
-
self.$sectionContent.toggle( false ).slideToggle( 150, function() {
|
1506
|
-
self.$sectionContent.sortable( 'refreshPositions' );
|
1507
|
-
} );
|
1508
|
-
}
|
1509
|
-
}
|
1510
|
-
});
|
1511
|
-
|
1512
|
-
/**
|
1513
|
-
* Keyboard-accessible reordering
|
1514
|
-
*/
|
1515
|
-
this.container.find( '.reorder-toggle' ).on( 'click keydown', function( event ) {
|
1516
|
-
if ( event.type === 'keydown' && ! ( event.which === 13 || event.which === 32 ) ) { // Enter or Spacebar
|
1517
|
-
return;
|
1518
|
-
}
|
1519
|
-
|
1520
|
-
self.toggleReordering( ! self.isReordering );
|
1521
|
-
} );
|
1522
|
-
},
|
1523
|
-
|
1524
|
-
/**
|
1525
|
-
* Set up UI for adding a new widget
|
1526
|
-
*/
|
1527
|
-
_setupAddition: function() {
|
1528
|
-
var self = this;
|
1529
|
-
|
1530
|
-
this.container.find( '.add-new-widget' ).on( 'click keydown', function( event ) {
|
1531
|
-
if ( event.type === 'keydown' && ! ( event.which === 13 || event.which === 32 ) ) { // Enter or Spacebar
|
1532
|
-
return;
|
1533
|
-
}
|
1534
|
-
|
1535
|
-
if ( self.$sectionContent.hasClass( 'reordering' ) ) {
|
1536
|
-
return;
|
1537
|
-
}
|
1538
|
-
|
1539
|
-
if ( ! $( 'body' ).hasClass( 'adding-widget' ) ) {
|
1540
|
-
api.Widgets.availableWidgetsPanel.open( self );
|
1541
|
-
} else {
|
1542
|
-
api.Widgets.availableWidgetsPanel.close();
|
1543
|
-
}
|
1544
|
-
} );
|
1545
|
-
},
|
1546
|
-
|
1547
|
-
/**
|
1548
|
-
* Add classes to the widget_form controls to assist with styling
|
1549
|
-
*/
|
1550
|
-
_applyCardinalOrderClassNames: function() {
|
1551
|
-
this.$sectionContent.find( '.customize-control-widget_form' )
|
1552
|
-
.removeClass( 'first-widget' )
|
1553
|
-
.removeClass( 'last-widget' )
|
1554
|
-
.find( '.move-widget-down, .move-widget-up' ).prop( 'tabIndex', 0 );
|
1555
|
-
|
1556
|
-
this.$sectionContent.find( '.customize-control-widget_form:first' )
|
1557
|
-
.addClass( 'first-widget' )
|
1558
|
-
.find( '.move-widget-up' ).prop( 'tabIndex', -1 );
|
1559
|
-
|
1560
|
-
this.$sectionContent.find( '.customize-control-widget_form:last' )
|
1561
|
-
.addClass( 'last-widget' )
|
1562
|
-
.find( '.move-widget-down' ).prop( 'tabIndex', -1 );
|
1563
|
-
},
|
1564
|
-
|
1565
|
-
|
1566
|
-
/***********************************************************************
|
1567
|
-
* Begin public API methods
|
1568
|
-
**********************************************************************/
|
1569
|
-
|
1570
|
-
/**
|
1571
|
-
* Enable/disable the reordering UI
|
1572
|
-
*
|
1573
|
-
* @param {Boolean} showOrHide to enable/disable reordering
|
1574
|
-
*/
|
1575
|
-
toggleReordering: function( showOrHide ) {
|
1576
|
-
showOrHide = Boolean( showOrHide );
|
1577
|
-
|
1578
|
-
if ( showOrHide === this.$sectionContent.hasClass( 'reordering' ) ) {
|
1579
|
-
return;
|
1580
|
-
}
|
1581
|
-
|
1582
|
-
this.isReordering = showOrHide;
|
1583
|
-
this.$sectionContent.toggleClass( 'reordering', showOrHide );
|
1584
|
-
|
1585
|
-
if ( showOrHide ) {
|
1586
|
-
_( this.getWidgetFormControls() ).each( function( formControl ) {
|
1587
|
-
formControl.collapseForm();
|
1588
|
-
} );
|
1589
|
-
|
1590
|
-
this.$sectionContent.find( '.first-widget .move-widget' ).focus();
|
1591
|
-
this.$sectionContent.find( '.add-new-widget' ).prop( 'tabIndex', -1 );
|
1592
|
-
} else {
|
1593
|
-
this.$sectionContent.find( '.add-new-widget' ).prop( 'tabIndex', 0 );
|
1594
|
-
}
|
1595
|
-
},
|
1596
|
-
|
1597
|
-
/**
|
1598
|
-
* @return {wp.customize.controlConstructor.widget_form[]}
|
1599
|
-
*/
|
1600
|
-
getWidgetFormControls: function() {
|
1601
|
-
var formControls;
|
1602
|
-
|
1603
|
-
formControls = _( this.setting() ).map( function( widgetId ) {
|
1604
|
-
var settingId = widgetIdToSettingId( widgetId ),
|
1605
|
-
formControl = api.control( settingId );
|
1606
|
-
|
1607
|
-
if ( ! formControl ) {
|
1608
|
-
return;
|
1609
|
-
}
|
1610
|
-
|
1611
|
-
return formControl;
|
1612
|
-
} );
|
1613
|
-
|
1614
|
-
return formControls;
|
1615
|
-
},
|
1616
|
-
|
1617
|
-
/**
|
1618
|
-
* @param {string} widgetId or an id_base for adding a previously non-existing widget
|
1619
|
-
* @returns {object|false} widget_form control instance, or false on error
|
1620
|
-
*/
|
1621
|
-
addWidget: function( widgetId ) {
|
1622
|
-
var self = this, controlHtml, $widget, controlType = 'widget_form', $control, controlConstructor,
|
1623
|
-
parsedWidgetId = parseWidgetId( widgetId ),
|
1624
|
-
widgetNumber = parsedWidgetId.number,
|
1625
|
-
widgetIdBase = parsedWidgetId.id_base,
|
1626
|
-
widget = api.Widgets.availableWidgets.findWhere( {id_base: widgetIdBase} ),
|
1627
|
-
settingId, isExistingWidget, widgetFormControl, sidebarWidgets, settingArgs;
|
1628
|
-
|
1629
|
-
if ( ! widget ) {
|
1630
|
-
return false;
|
1631
|
-
}
|
1632
|
-
|
1633
|
-
if ( widgetNumber && ! widget.get( 'is_multi' ) ) {
|
1634
|
-
return false;
|
1635
|
-
}
|
1636
|
-
|
1637
|
-
// Set up new multi widget
|
1638
|
-
if ( widget.get( 'is_multi' ) && ! widgetNumber ) {
|
1639
|
-
widget.set( 'multi_number', widget.get( 'multi_number' ) + 1 );
|
1640
|
-
widgetNumber = widget.get( 'multi_number' );
|
1641
|
-
}
|
1642
|
-
|
1643
|
-
controlHtml = $.trim( $( '#widget-tpl-' + widget.get( 'id' ) ).html() );
|
1644
|
-
if ( widget.get( 'is_multi' ) ) {
|
1645
|
-
controlHtml = controlHtml.replace( /<[^<>]+>/g, function( m ) {
|
1646
|
-
return m.replace( /__i__|%i%/g, widgetNumber );
|
1647
|
-
} );
|
1648
|
-
} else {
|
1649
|
-
widget.set( 'is_disabled', true ); // Prevent single widget from being added again now
|
1650
|
-
}
|
1651
|
-
|
1652
|
-
$widget = $( controlHtml );
|
1653
|
-
|
1654
|
-
$control = $( '<li/>' )
|
1655
|
-
.addClass( 'customize-control' )
|
1656
|
-
.addClass( 'customize-control-' + controlType )
|
1657
|
-
.append( $widget );
|
1658
|
-
|
1659
|
-
// Remove icon which is visible inside the panel
|
1660
|
-
$control.find( '> .widget-icon' ).remove();
|
1661
|
-
|
1662
|
-
if ( widget.get( 'is_multi' ) ) {
|
1663
|
-
$control.find( 'input[name="widget_number"]' ).val( widgetNumber );
|
1664
|
-
$control.find( 'input[name="multi_number"]' ).val( widgetNumber );
|
1665
|
-
}
|
1666
|
-
|
1667
|
-
widgetId = $control.find( '[name="widget-id"]' ).val();
|
1668
|
-
|
1669
|
-
$control.hide(); // to be slid-down below
|
1670
|
-
|
1671
|
-
settingId = 'widget_' + widget.get( 'id_base' );
|
1672
|
-
if ( widget.get( 'is_multi' ) ) {
|
1673
|
-
settingId += '[' + widgetNumber + ']';
|
1674
|
-
}
|
1675
|
-
$control.attr( 'id', 'customize-control-' + settingId.replace( /\]/g, '' ).replace( /\[/g, '-' ) );
|
1676
|
-
|
1677
|
-
this.container.after( $control );
|
1678
|
-
|
1679
|
-
// Only create setting if it doesn't already exist (if we're adding a pre-existing inactive widget)
|
1680
|
-
isExistingWidget = api.has( settingId );
|
1681
|
-
if ( ! isExistingWidget ) {
|
1682
|
-
settingArgs = {
|
1683
|
-
transport: 'refresh',
|
1684
|
-
previewer: this.setting.previewer
|
1685
|
-
};
|
1686
|
-
api.create( settingId, settingId, {}, settingArgs );
|
1687
|
-
}
|
1688
|
-
|
1689
|
-
controlConstructor = api.controlConstructor[controlType];
|
1690
|
-
widgetFormControl = new controlConstructor( settingId, {
|
1691
|
-
params: {
|
1692
|
-
settings: {
|
1693
|
-
'default': settingId
|
1694
|
-
},
|
1695
|
-
sidebar_id: self.params.sidebar_id,
|
1696
|
-
widget_id: widgetId,
|
1697
|
-
widget_id_base: widget.get( 'id_base' ),
|
1698
|
-
type: controlType,
|
1699
|
-
is_new: ! isExistingWidget,
|
1700
|
-
width: widget.get( 'width' ),
|
1701
|
-
height: widget.get( 'height' ),
|
1702
|
-
is_wide: widget.get( 'is_wide' )
|
1703
|
-
},
|
1704
|
-
previewer: self.setting.previewer
|
1705
|
-
} );
|
1706
|
-
api.control.add( settingId, widgetFormControl );
|
1707
|
-
|
1708
|
-
// Make sure widget is removed from the other sidebars
|
1709
|
-
api.each( function( otherSetting ) {
|
1710
|
-
if ( otherSetting.id === self.setting.id ) {
|
1711
|
-
return;
|
1712
|
-
}
|
1713
|
-
|
1714
|
-
if ( 0 !== otherSetting.id.indexOf( 'sidebars_widgets[' ) ) {
|
1715
|
-
return;
|
1716
|
-
}
|
1717
|
-
|
1718
|
-
var otherSidebarWidgets = otherSetting().slice(),
|
1719
|
-
i = _.indexOf( otherSidebarWidgets, widgetId );
|
1720
|
-
|
1721
|
-
if ( -1 !== i ) {
|
1722
|
-
otherSidebarWidgets.splice( i );
|
1723
|
-
otherSetting( otherSidebarWidgets );
|
1724
|
-
}
|
1725
|
-
} );
|
1726
|
-
|
1727
|
-
// Add widget to this sidebar
|
1728
|
-
sidebarWidgets = this.setting().slice();
|
1729
|
-
if ( -1 === _.indexOf( sidebarWidgets, widgetId ) ) {
|
1730
|
-
sidebarWidgets.push( widgetId );
|
1731
|
-
this.setting( sidebarWidgets );
|
1732
|
-
}
|
1733
|
-
|
1734
|
-
$control.slideDown( function() {
|
1735
|
-
if ( isExistingWidget ) {
|
1736
|
-
widgetFormControl.expandForm();
|
1737
|
-
widgetFormControl.updateWidget( {
|
1738
|
-
instance: widgetFormControl.setting(),
|
1739
|
-
complete: function( error ) {
|
1740
|
-
if ( error ) {
|
1741
|
-
throw error;
|
1742
|
-
}
|
1743
|
-
widgetFormControl.focus();
|
1744
|
-
}
|
1745
|
-
} );
|
1746
|
-
} else {
|
1747
|
-
widgetFormControl.focus();
|
1748
|
-
}
|
1749
|
-
} );
|
1750
|
-
|
1751
|
-
$( document ).trigger( 'widget-added', [ $widget ] );
|
1752
|
-
|
1753
|
-
return widgetFormControl;
|
1754
|
-
}
|
1755
|
-
} );
|
1756
|
-
|
1757
|
-
/**
|
1758
|
-
* Extends wp.customizer.controlConstructor with control constructor for
|
1759
|
-
* widget_form and sidebar_widgets.
|
1760
|
-
*/
|
1761
|
-
$.extend( api.controlConstructor, {
|
1762
|
-
widget_form: api.Widgets.WidgetControl,
|
1763
|
-
sidebar_widgets: api.Widgets.SidebarControl
|
1764
|
-
});
|
1765
|
-
|
1766
|
-
/**
|
1767
|
-
* Init Customizer for widgets.
|
1768
|
-
*/
|
1769
|
-
api.bind( 'ready', function() {
|
1770
|
-
// Set up the widgets panel
|
1771
|
-
api.Widgets.availableWidgetsPanel = new api.Widgets.AvailableWidgetsPanelView({
|
1772
|
-
collection: api.Widgets.availableWidgets
|
1773
|
-
});
|
1774
|
-
|
1775
|
-
// Highlight widget control
|
1776
|
-
api.previewer.bind( 'highlight-widget-control', api.Widgets.highlightWidgetFormControl );
|
1777
|
-
|
1778
|
-
// Open and focus widget control
|
1779
|
-
api.previewer.bind( 'focus-widget-control', api.Widgets.focusWidgetFormControl );
|
1780
|
-
} );
|
1781
|
-
|
1782
|
-
/**
|
1783
|
-
* Highlight a widget control.
|
1784
|
-
*
|
1785
|
-
* @param {string} widgetId
|
1786
|
-
*/
|
1787
|
-
api.Widgets.highlightWidgetFormControl = function( widgetId ) {
|
1788
|
-
var control = api.Widgets.getWidgetFormControlForWidget( widgetId );
|
1789
|
-
|
1790
|
-
if ( control ) {
|
1791
|
-
control.highlightSectionAndControl();
|
1792
|
-
}
|
1793
|
-
},
|
1794
|
-
|
1795
|
-
/**
|
1796
|
-
* Focus a widget control.
|
1797
|
-
*
|
1798
|
-
* @param {string} widgetId
|
1799
|
-
*/
|
1800
|
-
api.Widgets.focusWidgetFormControl = function( widgetId ) {
|
1801
|
-
var control = api.Widgets.getWidgetFormControlForWidget( widgetId );
|
1802
|
-
|
1803
|
-
if ( control ) {
|
1804
|
-
control.focus();
|
1805
|
-
}
|
1806
|
-
},
|
1807
|
-
|
1808
|
-
/**
|
1809
|
-
* Given a widget control, find the sidebar widgets control that contains it.
|
1810
|
-
* @param {string} widgetId
|
1811
|
-
* @return {object|null}
|
1812
|
-
*/
|
1813
|
-
api.Widgets.getSidebarWidgetControlContainingWidget = function( widgetId ) {
|
1814
|
-
var foundControl = null;
|
1815
|
-
|
1816
|
-
// @todo this can use widgetIdToSettingId(), then pass into wp.customize.control( x ).getSidebarWidgetsControl()
|
1817
|
-
api.control.each( function( control ) {
|
1818
|
-
if ( control.params.type === 'sidebar_widgets' && -1 !== _.indexOf( control.setting(), widgetId ) ) {
|
1819
|
-
foundControl = control;
|
1820
|
-
}
|
1821
|
-
} );
|
1822
|
-
|
1823
|
-
return foundControl;
|
1824
|
-
};
|
1825
|
-
|
1826
|
-
/**
|
1827
|
-
* Given a widget ID for a widget appearing in the preview, get the widget form control associated with it.
|
1828
|
-
*
|
1829
|
-
* @param {string} widgetId
|
1830
|
-
* @return {object|null}
|
1831
|
-
*/
|
1832
|
-
api.Widgets.getWidgetFormControlForWidget = function( widgetId ) {
|
1833
|
-
var foundControl = null;
|
1834
|
-
|
1835
|
-
// @todo We can just use widgetIdToSettingId() here
|
1836
|
-
api.control.each( function( control ) {
|
1837
|
-
if ( control.params.type === 'widget_form' && control.params.widget_id === widgetId ) {
|
1838
|
-
foundControl = control;
|
1839
|
-
}
|
1840
|
-
} );
|
1841
|
-
|
1842
|
-
return foundControl;
|
1843
|
-
};
|
1844
|
-
|
1845
|
-
/**
|
1846
|
-
* @param {String} widgetId
|
1847
|
-
* @returns {Object}
|
1848
|
-
*/
|
1849
|
-
function parseWidgetId( widgetId ) {
|
1850
|
-
var matches, parsed = {
|
1851
|
-
number: null,
|
1852
|
-
id_base: null
|
1853
|
-
};
|
1854
|
-
|
1855
|
-
matches = widgetId.match( /^(.+)-(\d+)$/ );
|
1856
|
-
if ( matches ) {
|
1857
|
-
parsed.id_base = matches[1];
|
1858
|
-
parsed.number = parseInt( matches[2], 10 );
|
1859
|
-
} else {
|
1860
|
-
// likely an old single widget
|
1861
|
-
parsed.id_base = widgetId;
|
1862
|
-
}
|
1863
|
-
|
1864
|
-
return parsed;
|
1865
|
-
}
|
1866
|
-
|
1867
|
-
/**
|
1868
|
-
* @param {String} widgetId
|
1869
|
-
* @returns {String} settingId
|
1870
|
-
*/
|
1871
|
-
function widgetIdToSettingId( widgetId ) {
|
1872
|
-
var parsed = parseWidgetId( widgetId ), settingId;
|
1873
|
-
|
1874
|
-
settingId = 'widget_' + parsed.id_base;
|
1875
|
-
if ( parsed.number ) {
|
1876
|
-
settingId += '[' + parsed.number + ']';
|
1877
|
-
}
|
1878
|
-
|
1879
|
-
return settingId;
|
1880
|
-
}
|
1881
|
-
|
1882
|
-
})( window.wp, jQuery );
|