Media Library Assistant - Version 2.77

Version Description

  • Fix: Preserve current term assignments for checklist-style taxonomies when opening the Media/Assistant Quick Edit area. This defect was introduced in v2.76.
Download this release

Release Info

Developer dglingren
Plugin Icon 128x128 Media Library Assistant
Version 2.77
Comparing to
See all releases

Code changes from version 2.75 to 2.77

Files changed (105) hide show
  1. css/mla-style-rtl.css +0 -4
  2. css/mla-style.css +0 -4
  3. examples/plugins/alexa-paige-plugin.php +8 -4
  4. examples/plugins/buddypress-hooks-example.php +4 -4
  5. examples/plugins/get-post-galleries-example.php +4 -4
  6. examples/plugins/mla-a-z-cloud-example.php +4 -4
  7. examples/plugins/mla-acf-checkbox-example.php +4 -4
  8. examples/plugins/mla-advanced-custom-fields-example.php +6 -6
  9. examples/plugins/mla-audio-shortcode-example.php +4 -4
  10. examples/plugins/mla-bulk-edit-remap-example.php +4 -4
  11. examples/plugins/mla-child-term-hooks-example.php +4 -4
  12. examples/plugins/mla-cloud-hooks-example.php +4 -4
  13. examples/plugins/mla-copy-item-example/mla-copy-item-example.php +4 -4
  14. examples/plugins/mla-current-user-example.php +3 -3
  15. examples/plugins/mla-custom-feed-example/mla-custom-feed-example.php +5 -5
  16. examples/plugins/mla-custom-field-search-example.php +4 -4
  17. examples/plugins/mla-custom-nolink-example.php +4 -4
  18. examples/plugins/mla-custom-taxonomy-example.php +3 -3
  19. examples/plugins/mla-custom-view-example.php +4 -4
  20. examples/plugins/mla-default-featured-image-example.php +3 -3
  21. examples/plugins/mla-dynamic-references-example.php +4 -4
  22. examples/plugins/mla-featured-field-shortcode.php +4 -4
  23. examples/plugins/mla-file-name-mapping-hooks-example.php +4 -4
  24. examples/plugins/mla-file-size-example.php +3 -3
  25. examples/plugins/mla-fixed-values-example.php +3 -3
  26. examples/plugins/mla-hierarchical-mapping-example.php +4 -4
  27. examples/plugins/mla-hooks-example.php +4 -4
  28. examples/plugins/mla-image-source-control-example.php +4 -4
  29. examples/plugins/mla-insert-fixit.php +4 -4
  30. examples/plugins/mla-item-transfer-pretty-links.php +4 -4
  31. examples/plugins/mla-javascript-example/mla-javascript-example.php +4 -4
  32. examples/plugins/mla-jhdean-mapping-hooks-example.php +4 -4
  33. examples/plugins/mla-list-table-extranav-example.php +4 -4
  34. examples/plugins/mla-list-table-hooks-example.php +4 -4
  35. examples/plugins/mla-login-filtered-gallery-example.php +4 -4
  36. examples/plugins/mla-mapping-hooks-example.php +4 -4
  37. examples/plugins/mla-mapping-parent-data-example.php +4 -4
  38. examples/plugins/mla-media-modal-hooks-example.php +4 -4
  39. examples/plugins/mla-media-tagger-example.php +4 -4
  40. examples/plugins/mla-metabox-hooks-example.php +4 -4
  41. examples/plugins/mla-metadata-mapping-hooks-example.php +4 -4
  42. examples/plugins/mla-multi-search-example.php +4 -4
  43. examples/plugins/mla-multi-wp-query-example.php +4 -4
  44. examples/plugins/mla-multisite-extensions.php +4 -4
  45. examples/plugins/mla-not-featured-view-example.php +4 -4
  46. examples/plugins/mla-parent-category-mapping-example.php +4 -4
  47. examples/plugins/mla-parent-search-example.php +4 -4
  48. examples/plugins/mla-parent-wp-query-example.php +4 -4
  49. examples/plugins/mla-path-mapping-example/mla-path-mapping-example.php +5 -5
  50. examples/plugins/mla-project-slug-example.php +3 -3
  51. examples/plugins/mla-random-galleries-example.php +4 -4
  52. examples/plugins/mla-regenerate-thumbnails-example.php +4 -4
  53. examples/plugins/mla-simple-mapping-hooks-example.php +4 -4
  54. examples/plugins/mla-subscriber-media-access-example.php +4 -4
  55. examples/plugins/mla-substitution-parameter-hooks-example.php +4 -4
  56. examples/plugins/mla-tax-query-example.php +4 -4
  57. examples/plugins/mla-taxonomy-hooks-example.php +4 -4
  58. examples/plugins/mla-term-links-example.php +4 -4
  59. examples/plugins/mla-term-list-hooks-example.php +4 -4
  60. examples/plugins/mla-ui-elements-example.php +4 -4
  61. examples/plugins/mla-unattached-fixit.php +4 -4
  62. examples/plugins/mla-upload-bulk-edit-example.php +4 -4
  63. examples/plugins/mla-uploaded-on-example.php +4 -4
  64. examples/plugins/mla-usp-novo-map-example/admin-settings-page.tpl +360 -0
  65. examples/plugins/mla-usp-novo-map-example/mla-usp-novo-map-example.php +1238 -0
  66. examples/plugins/mla-viewer-replacement-example.php +3 -3
  67. examples/plugins/mla-yoast-seo-example.php +4 -4
  68. examples/plugins/mla-zip-archive-example.php +4 -4
  69. examples/plugins/mqtranslate-example.php +4 -4
  70. examples/plugins/posts-per-page-example.php +4 -4
  71. examples/plugins/random-feature.php +4 -4
  72. examples/plugins/smart-media-categories/admin/includes/class-smc-settings-support.php +1 -1
  73. examples/plugins/smart-media-categories/public/class-smart-media-categories.php +1 -1
  74. examples/plugins/smart-media-categories/smart-media-categories.php +3 -3
  75. examples/plugins/woofixit.php +279 -253
  76. examples/themes/twentytwelve-mla/style.css +4 -4
  77. includes/class-mla-core-options.php +3 -1
  78. includes/class-mla-core.php +18 -1
  79. includes/class-mla-data-source.php +10 -0
  80. includes/class-mla-edit-media.php +54 -9
  81. includes/class-mla-list-table.php +6 -4
  82. includes/class-mla-main.php +65 -18
  83. includes/class-mla-options.php +15 -3
  84. includes/class-mla-settings-documentation-tab.php +1 -1
  85. includes/class-mla-settings.php +2 -13
  86. includes/class-mla-shortcode-support.php +84 -7
  87. index.php +6 -6
  88. js/mla-add-new-bulk-edit-scripts.js +97 -4
  89. js/mla-add-new-bulk-edit-scripts.min.js +1 -1
  90. js/mla-add-term-scripts.js +744 -0
  91. js/mla-add-term-scripts.min.js +1 -0
  92. js/mla-edit-media-scripts.js +9 -17
  93. js/mla-edit-media-scripts.min.js +1 -1
  94. js/mla-inline-edit-scripts.js +146 -29
  95. js/mla-inline-edit-scripts.min.js +1 -1
  96. js/mla-set-parent-scripts.js +1 -0
  97. js/mla-terms-search-scripts.js +7 -0
  98. languages/media-library-assistant-en_US - References.pot +1126 -1099
  99. languages/media-library-assistant-en_US.po +28 -27
  100. readme.txt +29 -26
  101. tpls/admin-display-settings-page.tpl +0 -12
  102. tpls/admin-inline-edit-form.tpl +54 -8
  103. tpls/documentation-settings-tab.tpl +7 -4
  104. tpls/mla-add-new-bulk-edit.tpl +37 -9
  105. tpls/mla-option-templates.tpl +6 -0
css/mla-style-rtl.css CHANGED
@@ -334,10 +334,6 @@ div.mla_errors {
334
  * MLA Settings page
335
  */
336
 
337
- #donate-button-div {
338
- margin-top: 5px;
339
- }
340
-
341
  #wpbody-content .optiontable th {
342
  padding-left: 10px;
343
  }
334
  * MLA Settings page
335
  */
336
 
 
 
 
 
337
  #wpbody-content .optiontable th {
338
  padding-left: 10px;
339
  }
css/mla-style.css CHANGED
@@ -364,10 +364,6 @@ div.mla_errors {
364
  * MLA Settings page
365
  */
366
 
367
- #donate-button-div {
368
- margin-top: 5px;
369
- }
370
-
371
  #wpbody-content .optiontable th {
372
  padding-right: 10px;
373
  }
364
  * MLA Settings page
365
  */
366
 
 
 
 
 
367
  #wpbody-content .optiontable th {
368
  padding-right: 10px;
369
  }
examples/plugins/alexa-paige-plugin.php CHANGED
@@ -18,17 +18,21 @@
18
  * - The "single_query()" and "double_query()" functions provide simplified, higher-performance
19
  * alternatives to the standard WordPress tax_query.
20
  *
 
 
 
 
21
  * @package Alexa Paige Plugin for BuddyPress & rtMedia
22
- * @version 1.03
23
  */
24
 
25
  /*
26
  Plugin Name: Alexa Paige Plugin for BuddyPress & rtMedia
27
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
28
  Description: Supports BuddyPress URLs and multi-taxonomy and term checkbox queries
29
  Author: David Lingren
30
- Version: 1.03
31
- Author URI: http://fairtradejudaica.org/our-story/staff/
32
 
33
  Copyright 2014 David Lingren
34
 
18
  * - The "single_query()" and "double_query()" functions provide simplified, higher-performance
19
  * alternatives to the standard WordPress tax_query.
20
  *
21
+ * Created for support topic "REALLY Slow Queries........ Help! :)"
22
+ * opened on 8/16/2014 by "alexapaige".
23
+ * https://wordpress.org/support/topic/really-slow-queries-help/
24
+ *
25
  * @package Alexa Paige Plugin for BuddyPress & rtMedia
26
+ * @version 1.04
27
  */
28
 
29
  /*
30
  Plugin Name: Alexa Paige Plugin for BuddyPress & rtMedia
31
+ Plugin URI: http://davidlingren.com/
32
  Description: Supports BuddyPress URLs and multi-taxonomy and term checkbox queries
33
  Author: David Lingren
34
+ Version: 1.04
35
+ Author URI: http://davidlingren.com/
36
 
37
  Copyright 2014 David Lingren
38
 
examples/plugins/buddypress-hooks-example.php CHANGED
@@ -39,16 +39,16 @@
39
  * https://wordpress.org/support/topic/display-rtmedia-gallery-with-a-query-on-the-title-or-media_id-2/
40
  *
41
  * @package MLA BuddyPress & rtMedia Example
42
- * @version 1.08
43
  */
44
 
45
  /*
46
  Plugin Name: MLA BuddyPress & rtMedia Example
47
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
48
  Description: Provides [mla_gallery] parameters to filter items, generate rtMedia URLs and substitute cover art
49
  Author: David Lingren
50
- Version: 1.08
51
- Author URI: http://fairtradejudaica.org/our-story/staff/
52
 
53
  Copyright 2013 - 2017 David Lingren
54
 
39
  * https://wordpress.org/support/topic/display-rtmedia-gallery-with-a-query-on-the-title-or-media_id-2/
40
  *
41
  * @package MLA BuddyPress & rtMedia Example
42
+ * @version 1.09
43
  */
44
 
45
  /*
46
  Plugin Name: MLA BuddyPress & rtMedia Example
47
+ Plugin URI: http://davidlingren.com/
48
  Description: Provides [mla_gallery] parameters to filter items, generate rtMedia URLs and substitute cover art
49
  Author: David Lingren
50
+ Version: 1.09
51
+ Author URI: http://davidlingren.com/
52
 
53
  Copyright 2013 - 2017 David Lingren
54
 
examples/plugins/get-post-galleries-example.php CHANGED
@@ -18,16 +18,16 @@
18
  * https://wordpress.org/support/topic/lazy-load-and-masonry-layout/
19
  *
20
  * @package Get Post Galleries Example
21
- * @version 1.00
22
  */
23
 
24
  /*
25
  Plugin Name: Get Post Galleries Example
26
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
27
  Description: Hooks a WordPress filter to supply a list of the items returned from [mla_gallery] shortcodes
28
  Author: David Lingren
29
- Version: 1.00
30
- Author URI: http://fairtradejudaica.org/our-story/staff/
31
 
32
  Copyright 2016 David Lingren
33
 
18
  * https://wordpress.org/support/topic/lazy-load-and-masonry-layout/
19
  *
20
  * @package Get Post Galleries Example
21
+ * @version 1.01
22
  */
23
 
24
  /*
25
  Plugin Name: Get Post Galleries Example
26
+ Plugin URI: http://davidlingren.com/
27
  Description: Hooks a WordPress filter to supply a list of the items returned from [mla_gallery] shortcodes
28
  Author: David Lingren
29
+ Version: 1.01
30
+ Author URI: http://davidlingren.com/
31
 
32
  Copyright 2016 David Lingren
33
 
examples/plugins/mla-a-z-cloud-example.php CHANGED
@@ -21,16 +21,16 @@
21
  * https://wordpress.org/support/topic/alphabetical-pagination-2
22
  *
23
  * @package MLA A-Z Cloud and Collapse-o-Matic Example
24
- * @version 1.02
25
  */
26
 
27
  /*
28
  Plugin Name: MLA A-Z Cloud and Collapse-o-Matic Example
29
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
30
  Description: Provides an "A-Z cloud/pagination" and expandable gallery example
31
  Author: David Lingren
32
- Version: 1.02
33
- Author URI: http://fairtradejudaica.org/our-story/staff/
34
 
35
  Copyright 2015 David Lingren
36
 
21
  * https://wordpress.org/support/topic/alphabetical-pagination-2
22
  *
23
  * @package MLA A-Z Cloud and Collapse-o-Matic Example
24
+ * @version 1.03
25
  */
26
 
27
  /*
28
  Plugin Name: MLA A-Z Cloud and Collapse-o-Matic Example
29
+ Plugin URI: http://davidlingren.com/
30
  Description: Provides an "A-Z cloud/pagination" and expandable gallery example
31
  Author: David Lingren
32
+ Version: 1.03
33
+ Author URI: http://davidlingren.com/
34
 
35
  Copyright 2015 David Lingren
36
 
examples/plugins/mla-acf-checkbox-example.php CHANGED
@@ -15,16 +15,16 @@
15
  *
16
  *
17
  * @package MLA ACF Checkbox Example
18
- * @version 1.01
19
  */
20
 
21
  /*
22
  Plugin Name: MLA ACF Checkbox Example
23
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
24
  Description: Provides an example of hooking the filters provided by the MLA_List_Table class
25
  Author: David Lingren
26
- Version: 1.01
27
- Author URI: http://fairtradejudaica.org/our-story/staff/
28
 
29
  Copyright 2014 - 2015 David Lingren
30
 
15
  *
16
  *
17
  * @package MLA ACF Checkbox Example
18
+ * @version 1.02
19
  */
20
 
21
  /*
22
  Plugin Name: MLA ACF Checkbox Example
23
+ Plugin URI: http://davidlingren.com/
24
  Description: Provides an example of hooking the filters provided by the MLA_List_Table class
25
  Author: David Lingren
26
+ Version: 1.02
27
+ Author URI: http://davidlingren.com/
28
 
29
  Copyright 2014 - 2015 David Lingren
30
 
examples/plugins/mla-advanced-custom-fields-example.php CHANGED
@@ -19,17 +19,17 @@
19
  * three boxes for MLA Column, Quick Edit and Bulk Edit support.
20
  *
21
  *
22
- * @package MLA ACF Checkbox Example
23
- * @version 1.02
24
  */
25
 
26
  /*
27
  Plugin Name: MLA Advanced Custom Fields Example
28
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
29
  Description: Supports an ACF checkbox and "where-used" in an ACF repeater
30
  Author: David Lingren
31
- Version: 1.02
32
- Author URI: http://fairtradejudaica.org/our-story/staff/
33
 
34
  Copyright 2014 - 2015 David Lingren
35
 
@@ -53,7 +53,7 @@ Copyright 2014 - 2015 David Lingren
53
  * Call it anything you want, but give it an unlikely and hopefully unique name. Hiding everything
54
  * else inside a class means this is the only name you have to worry about.
55
  *
56
- * @package MLA ACF Checkbox Example
57
  * @since 1.00
58
  */
59
  class MLAACFExample {
19
  * three boxes for MLA Column, Quick Edit and Bulk Edit support.
20
  *
21
  *
22
+ * @package MLA Advanced Custom Fields Example
23
+ * @version 1.03
24
  */
25
 
26
  /*
27
  Plugin Name: MLA Advanced Custom Fields Example
28
+ Plugin URI: http://davidlingren.com/
29
  Description: Supports an ACF checkbox and "where-used" in an ACF repeater
30
  Author: David Lingren
31
+ Version: 1.03
32
+ Author URI: http://davidlingren.com/
33
 
34
  Copyright 2014 - 2015 David Lingren
35
 
53
  * Call it anything you want, but give it an unlikely and hopefully unique name. Hiding everything
54
  * else inside a class means this is the only name you have to worry about.
55
  *
56
+ * @package MLA Advanced Custom Fields Example
57
  * @since 1.00
58
  */
59
  class MLAACFExample {
examples/plugins/mla-audio-shortcode-example.php CHANGED
@@ -6,16 +6,16 @@
6
  * by the WordPress [audio] shortcode.
7
  *
8
  * @package MLA Audio Shortcode Example
9
- * @version 1.00
10
  */
11
 
12
  /*
13
  Plugin Name: MLA Audio Shortcode Example
14
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
15
  Description: Provides an example of hooking the filters provided by the [mla_gallery] shortcode
16
  Author: David Lingren
17
- Version: 1.00
18
- Author URI: http://fairtradejudaica.org/our-story/staff/
19
 
20
  Copyright 2013, 2014 David Lingren
21
 
6
  * by the WordPress [audio] shortcode.
7
  *
8
  * @package MLA Audio Shortcode Example
9
+ * @version 1.01
10
  */
11
 
12
  /*
13
  Plugin Name: MLA Audio Shortcode Example
14
+ Plugin URI: http://davidlingren.com/
15
  Description: Provides an example of hooking the filters provided by the [mla_gallery] shortcode
16
  Author: David Lingren
17
+ Version: 1.01
18
+ Author URI: http://davidlingren.com/
19
 
20
  Copyright 2013, 2014 David Lingren
21
 
examples/plugins/mla-bulk-edit-remap-example.php CHANGED
@@ -11,16 +11,16 @@
11
  * https://wordpress.org/support/topic/sorting-based-on-taxonomy-terms/
12
  *
13
  * @package MLA Bulk Edit Remap Example
14
- * @version 1.00
15
  */
16
 
17
  /*
18
  Plugin Name: MLA Bulk Edit Remap Example
19
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
20
  Description: Performs IPTC/EXIF and Custom Field mapping at the conclusion of a Bulk Edit action, so data sources like "terms:" are properly applied.
21
  Author: David Lingren
22
- Version: 1.00
23
- Author URI: http://fairtradejudaica.org/our-story/staff/
24
 
25
  Copyright 2016 David Lingren
26
 
11
  * https://wordpress.org/support/topic/sorting-based-on-taxonomy-terms/
12
  *
13
  * @package MLA Bulk Edit Remap Example
14
+ * @version 1.01
15
  */
16
 
17
  /*
18
  Plugin Name: MLA Bulk Edit Remap Example
19
+ Plugin URI: http://davidlingren.com/
20
  Description: Performs IPTC/EXIF and Custom Field mapping at the conclusion of a Bulk Edit action, so data sources like "terms:" are properly applied.
21
  Author: David Lingren
22
+ Version: 1.01
23
+ Author URI: http://davidlingren.com/
24
 
25
  Copyright 2016 David Lingren
26
 
examples/plugins/mla-child-term-hooks-example.php CHANGED
@@ -16,16 +16,16 @@
16
  * https://wordpress.org/support/topic/automatic-hierarchical-display-for-hierarchical-taxonomies
17
  *
18
  * @package MLA Child Term Hooks Example
19
- * @version 1.02
20
  */
21
 
22
  /*
23
  Plugin Name: MLA Child Term Hooks Example
24
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
25
  Description: Creates a term-specific gallery of images assigned to child terms.
26
  Author: David Lingren
27
- Version: 1.02
28
- Author URI: http://fairtradejudaica.org/our-story/staff/
29
 
30
  Copyright 2014 David Lingren
31
 
16
  * https://wordpress.org/support/topic/automatic-hierarchical-display-for-hierarchical-taxonomies
17
  *
18
  * @package MLA Child Term Hooks Example
19
+ * @version 1.03
20
  */
21
 
22
  /*
23
  Plugin Name: MLA Child Term Hooks Example
24
+ Plugin URI: http://davidlingren.com/
25
  Description: Creates a term-specific gallery of images assigned to child terms.
26
  Author: David Lingren
27
+ Version: 1.03
28
+ Author URI: http://davidlingren.com/
29
 
30
  Copyright 2014 David Lingren
31
 
examples/plugins/mla-cloud-hooks-example.php CHANGED
@@ -7,16 +7,16 @@
7
  * available in the [mla_tag_cloud] shortcode.
8
  *
9
  * @package MLA Tag Cloud Hooks Example
10
- * @version 1.02
11
  */
12
 
13
  /*
14
  Plugin Name: MLA Tag Cloud Hooks Example
15
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
16
  Description: Provides an example of hooking the filters provided by the [mla_tag_cloud] shortcode
17
  Author: David Lingren
18
- Version: 1.02
19
- Author URI: http://fairtradejudaica.org/our-story/staff/
20
 
21
  Copyright 2013-2016 David Lingren
22
 
7
  * available in the [mla_tag_cloud] shortcode.
8
  *
9
  * @package MLA Tag Cloud Hooks Example
10
+ * @version 1.03
11
  */
12
 
13
  /*
14
  Plugin Name: MLA Tag Cloud Hooks Example
15
+ Plugin URI: http://davidlingren.com/
16
  Description: Provides an example of hooking the filters provided by the [mla_tag_cloud] shortcode
17
  Author: David Lingren
18
+ Version: 1.03
19
+ Author URI: http://davidlingren.com/
20
 
21
  Copyright 2013-2016 David Lingren
22
 
examples/plugins/mla-copy-item-example/mla-copy-item-example.php CHANGED
@@ -13,16 +13,16 @@
13
  * https://wordpress.org/support/topic/option-to-copy-an-image/
14
  *
15
  * @package MLA Copy Item Example
16
- * @version 1.00
17
  */
18
 
19
  /*
20
  Plugin Name: MLA Copy Item Example
21
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
22
  Description: Adds "Copy" action to Media/Assistant submenu Bulk Actions dropdown
23
  Author: David Lingren
24
- Version: 1.00
25
- Author URI: http://fairtradejudaica.org/our-story/staff/
26
 
27
  Copyright 2016 David Lingren
28
 
13
  * https://wordpress.org/support/topic/option-to-copy-an-image/
14
  *
15
  * @package MLA Copy Item Example
16
+ * @version 1.01
17
  */
18
 
19
  /*
20
  Plugin Name: MLA Copy Item Example
21
+ Plugin URI: http://davidlingren.com/
22
  Description: Adds "Copy" action to Media/Assistant submenu Bulk Actions dropdown
23
  Author: David Lingren
24
+ Version: 1.01
25
+ Author URI: http://davidlingren.com/
26
 
27
  Copyright 2016 David Lingren
28
 
examples/plugins/mla-current-user-example.php CHANGED
@@ -1,11 +1,11 @@
1
  <?php
2
  /*
3
  Plugin Name: MLA Current User Example
4
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
5
  Description: Uses the current logged in user to supply an "Author" parameter for the query
6
  Author: David Lingren
7
- Version: 1.01
8
- Author URI: http://fairtradejudaica.org/our-story/staff/
9
 
10
  Copyright 2016 David Lingren
11
 
1
  <?php
2
  /*
3
  Plugin Name: MLA Current User Example
4
+ Plugin URI: http://davidlingren.com/
5
  Description: Uses the current logged in user to supply an "Author" parameter for the query
6
  Author: David Lingren
7
+ Version: 1.03
8
+ Author URI: http://davidlingren.com/
9
 
10
  Copyright 2016 David Lingren
11
 
examples/plugins/mla-custom-feed-example/mla-custom-feed-example.php CHANGED
@@ -18,16 +18,16 @@
18
  * https://wordpress.org/support/topic/create-a-feed-out-of-the-media-library/
19
  *
20
  * @package MLA Custom Feed Example
21
- * @version 1.10
22
  */
23
 
24
  /*
25
  Plugin Name: MLA Custom Feed Example
26
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
27
  Description: Configures and processes custom RSS2 feeds for Media Library items
28
  Author: David Lingren
29
- Version: 1.10
30
- Author URI: http://fairtradejudaica.org/our-story/staff/
31
 
32
  Copyright 2017 David Lingren
33
 
@@ -60,7 +60,7 @@ class MLACustomFeedExample {
60
  *
61
  * @var string
62
  */
63
- const CURRENT_VERSION = '1.10';
64
 
65
  /**
66
  * Slug prefix for registering and enqueueing submenu pages, style sheets, scripts and settings
18
  * https://wordpress.org/support/topic/create-a-feed-out-of-the-media-library/
19
  *
20
  * @package MLA Custom Feed Example
21
+ * @version 1.11
22
  */
23
 
24
  /*
25
  Plugin Name: MLA Custom Feed Example
26
+ Plugin URI: http://davidlingren.com/
27
  Description: Configures and processes custom RSS2 feeds for Media Library items
28
  Author: David Lingren
29
+ Version: 1.11
30
+ Author URI: http://davidlingren.com/
31
 
32
  Copyright 2017 David Lingren
33
 
60
  *
61
  * @var string
62
  */
63
+ const CURRENT_VERSION = '1.11';
64
 
65
  /**
66
  * Slug prefix for registering and enqueueing submenu pages, style sheets, scripts and settings
examples/plugins/mla-custom-field-search-example.php CHANGED
@@ -24,16 +24,16 @@
24
  * https://wordpress.org/support/topic/searching-on-custom-fields/
25
  *
26
  * @package MLA Custom Field Search Example
27
- * @version 1.04
28
  */
29
 
30
  /*
31
  Plugin Name: MLA Custom Field Search Example
32
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
33
  Description: Extends the Media/Assistant "Search Media" box to custom field values
34
  Author: David Lingren
35
- Version: 1.04
36
- Author URI: http://fairtradejudaica.org/our-story/staff/
37
 
38
  Copyright 2014 - 2015 David Lingren
39
 
24
  * https://wordpress.org/support/topic/searching-on-custom-fields/
25
  *
26
  * @package MLA Custom Field Search Example
27
+ * @version 1.05
28
  */
29
 
30
  /*
31
  Plugin Name: MLA Custom Field Search Example
32
+ Plugin URI: http://davidlingren.com/
33
  Description: Extends the Media/Assistant "Search Media" box to custom field values
34
  Author: David Lingren
35
+ Version: 1.05
36
+ Author URI: http://davidlingren.com/
37
 
38
  Copyright 2014 - 2015 David Lingren
39
 
examples/plugins/mla-custom-nolink-example.php CHANGED
@@ -3,16 +3,16 @@
3
  * Replaces gallery item hyperlinks with simple <img> tags when nolink=true
4
  *
5
  * @package MLA Custom Nolink Example
6
- * @version 1.01
7
  */
8
 
9
  /*
10
  Plugin Name: MLA Custom Nolink Example
11
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
12
  Description: Replaces gallery item hyperlinks with simple <img> tags when nolink=true
13
  Author: David Lingren
14
- Version: 1.01
15
- Author URI: http://fairtradejudaica.org/our-story/staff/
16
 
17
  Copyright 2014 - 2015 David Lingren
18
 
3
  * Replaces gallery item hyperlinks with simple <img> tags when nolink=true
4
  *
5
  * @package MLA Custom Nolink Example
6
+ * @version 1.02
7
  */
8
 
9
  /*
10
  Plugin Name: MLA Custom Nolink Example
11
+ Plugin URI: http://davidlingren.com/
12
  Description: Replaces gallery item hyperlinks with simple <img> tags when nolink=true
13
  Author: David Lingren
14
+ Version: 1.02
15
+ Author URI: http://davidlingren.com/
16
 
17
  Copyright 2014 - 2015 David Lingren
18
 
examples/plugins/mla-custom-taxonomy-example.php CHANGED
@@ -1,11 +1,11 @@
1
  <?php
2
  /*
3
  Plugin Name: MLA Custom Taxonomy Example
4
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
5
  Description: Defines custom taxonomies for support topic opened on 4/15/2016 by "direys"
6
  Author: David Lingren
7
- Version: 1.03
8
- Author URI: http://fairtradejudaica.org/our-story/staff/
9
 
10
  Copyright 2016 David Lingren
11
 
1
  <?php
2
  /*
3
  Plugin Name: MLA Custom Taxonomy Example
4
+ Plugin URI: http://davidlingren.com/
5
  Description: Defines custom taxonomies for support topic opened on 4/15/2016 by "direys"
6
  Author: David Lingren
7
+ Version: 1.04
8
+ Author URI: http://davidlingren.com/
9
 
10
  Copyright 2016 David Lingren
11
 
examples/plugins/mla-custom-view-example.php CHANGED
@@ -10,16 +10,16 @@
10
  * https://wordpress.org/support/topic/filter-by-post-status/
11
  *
12
  * @package MLA Custom View Example
13
- * @version 1.01
14
  */
15
 
16
  /*
17
  Plugin Name:MLA Custom View Example
18
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
19
  Description: Adds a Media/Assistant submenu table view for items attached to non-published parent posts/pages.
20
  Author: David Lingren
21
- Version: 1.01
22
- Author URI: http://fairtradejudaica.org/our-story/staff/
23
 
24
  Copyright 2014 - 2015 David Lingren
25
 
10
  * https://wordpress.org/support/topic/filter-by-post-status/
11
  *
12
  * @package MLA Custom View Example
13
+ * @version 1.02
14
  */
15
 
16
  /*
17
  Plugin Name:MLA Custom View Example
18
+ Plugin URI: http://davidlingren.com/
19
  Description: Adds a Media/Assistant submenu table view for items attached to non-published parent posts/pages.
20
  Author: David Lingren
21
+ Version: 1.02
22
+ Author URI: http://davidlingren.com/
23
 
24
  Copyright 2014 - 2015 David Lingren
25
 
examples/plugins/mla-default-featured-image-example.php CHANGED
@@ -1,11 +1,11 @@
1
  <?php
2
  /*
3
  Plugin Name: MLA Default Featured Image Example
4
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
5
  Description: Supplies a default "Featured Image" thumbnail based on item's file extension
6
  Author: David Lingren
7
- Version: 1.00
8
- Author URI: http://fairtradejudaica.org/our-story/staff/
9
 
10
  Copyright 2015 David Lingren
11
 
1
  <?php
2
  /*
3
  Plugin Name: MLA Default Featured Image Example
4
+ Plugin URI: http://davidlingren.com/
5
  Description: Supplies a default "Featured Image" thumbnail based on item's file extension
6
  Author: David Lingren
7
+ Version: 1.01
8
+ Author URI: http://davidlingren.com/
9
 
10
  Copyright 2015 David Lingren
11
 
examples/plugins/mla-dynamic-references-example.php CHANGED
@@ -3,16 +3,16 @@
3
  * Updates custom field(s) "where-used" inserted-in and featured-image when an item is edited
4
  *
5
  * @package MLA Dynamic References Example
6
- * @version 1.03
7
  */
8
 
9
  /*
10
  Plugin Name: MLA Dynamic References Example
11
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
12
  Description: Updates custom field(s) "where-used" inserted-in and featured-image when an item is edited
13
  Author: David Lingren
14
- Version: 1.03
15
- Author URI: http://fairtradejudaica.org/our-story/staff/
16
 
17
  Copyright 2014 - 2015 David Lingren
18
 
3
  * Updates custom field(s) "where-used" inserted-in and featured-image when an item is edited
4
  *
5
  * @package MLA Dynamic References Example
6
+ * @version 1.04
7
  */
8
 
9
  /*
10
  Plugin Name: MLA Dynamic References Example
11
+ Plugin URI: http://davidlingren.com/
12
  Description: Updates custom field(s) "where-used" inserted-in and featured-image when an item is edited
13
  Author: David Lingren
14
+ Version: 1.04
15
+ Author URI: http://davidlingren.com/
16
 
17
  Copyright 2014 - 2015 David Lingren
18
 
examples/plugins/mla-featured-field-shortcode.php CHANGED
@@ -10,16 +10,16 @@
10
  * Code [mla_featured_field field_name="Archive Date"] to return, for example, the "Archive Date" custom field.
11
  *
12
  * @package MLA Featured Field Shortcode
13
- * @version 1.00
14
  */
15
 
16
  /*
17
  Plugin Name: MLA Featured Field Shortcode Example
18
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
19
  Description: Inserts custom field content from a post/page Featured Image
20
  Author: David Lingren
21
- Version: 1.00
22
- Author URI: http://fairtradejudaica.org/our-story/staff/
23
 
24
  Copyright 2015 David Lingren
25
 
10
  * Code [mla_featured_field field_name="Archive Date"] to return, for example, the "Archive Date" custom field.
11
  *
12
  * @package MLA Featured Field Shortcode
13
+ * @version 1.01
14
  */
15
 
16
  /*
17
  Plugin Name: MLA Featured Field Shortcode Example
18
+ Plugin URI: http://davidlingren.com/
19
  Description: Inserts custom field content from a post/page Featured Image
20
  Author: David Lingren
21
+ Version: 1.01
22
+ Author URI: http://davidlingren.com/
23
 
24
  Copyright 2015 David Lingren
25
 
examples/plugins/mla-file-name-mapping-hooks-example.php CHANGED
@@ -3,16 +3,16 @@
3
  * Replaces the Title by a cleaned up version of the file name.
4
  *
5
  * @package MLA File Name Mapping Hooks Example
6
- * @version 1.00
7
  */
8
 
9
  /*
10
  Plugin Name: MLA File Name Mapping Hooks Example
11
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
12
  Description: Replace Title, Caption and ALT Text with re-formatted file name
13
  Author: David Lingren
14
- Version: 1.02
15
- Author URI: http://fairtradejudaica.org/our-story/staff/
16
 
17
  Copyright 2014 - 2016 David Lingren
18
 
3
  * Replaces the Title by a cleaned up version of the file name.
4
  *
5
  * @package MLA File Name Mapping Hooks Example
6
+ * @version 1.03
7
  */
8
 
9
  /*
10
  Plugin Name: MLA File Name Mapping Hooks Example
11
+ Plugin URI: http://davidlingren.com/
12
  Description: Replace Title, Caption and ALT Text with re-formatted file name
13
  Author: David Lingren
14
+ Version: 1.03
15
+ Author URI: http://davidlingren.com/
16
 
17
  Copyright 2014 - 2016 David Lingren
18
 
examples/plugins/mla-file-size-example.php CHANGED
@@ -1,11 +1,11 @@
1
  <?php
2
  /*
3
  Plugin Name: MLA File Size Example
4
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
5
  Description: Adds File Size in KB/MB to the caption
6
  Author: David Lingren
7
- Version: 1.00
8
- Author URI: http://fairtradejudaica.org/our-story/staff/
9
 
10
  Copyright 2015 David Lingren
11
 
1
  <?php
2
  /*
3
  Plugin Name: MLA File Size Example
4
+ Plugin URI: http://davidlingren.com/
5
  Description: Adds File Size in KB/MB to the caption
6
  Author: David Lingren
7
+ Version: 1.01
8
+ Author URI: http://davidlingren.com/
9
 
10
  Copyright 2015 David Lingren
11
 
examples/plugins/mla-fixed-values-example.php CHANGED
@@ -1,11 +1,11 @@
1
  <?php
2
  /*
3
  Plugin Name: MLA Fixed Values Example
4
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
5
  Description: Provides an example of hooking the filters provided by the [mla_gallery] shortcode
6
  Author: David Lingren
7
- Version: 1.02
8
- Author URI: http://fairtradejudaica.org/our-story/staff/
9
 
10
  Copyright 2014, 2015 David Lingren
11
 
1
  <?php
2
  /*
3
  Plugin Name: MLA Fixed Values Example
4
+ Plugin URI: http://davidlingren.com/
5
  Description: Provides an example of hooking the filters provided by the [mla_gallery] shortcode
6
  Author: David Lingren
7
+ Version: 1.03
8
+ Author URI: http://davidlingren.com/
9
 
10
  Copyright 2014, 2015 David Lingren
11
 
examples/plugins/mla-hierarchical-mapping-example.php CHANGED
@@ -3,16 +3,16 @@
3
  * Maps taxonomy terms from "template:([+xmp:lr.hierarchicalSubject+])" in EXIF/Template rule.
4
  *
5
  * @package MLA Hierarchical Mapping Example
6
- * @version 1.00
7
  */
8
 
9
  /*
10
  Plugin Name: MLA Hierarchical Mapping Example
11
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
12
  Description: Maps taxonomy terms from "template:([+xmp:lr.hierarchicalSubject+])" in EXIF/Template rule
13
  Author: David Lingren
14
- Version: 1.00
15
- Author URI: http://fairtradejudaica.org/our-story/staff/
16
 
17
  Copyright 2016 David Lingren
18
 
3
  * Maps taxonomy terms from "template:([+xmp:lr.hierarchicalSubject+])" in EXIF/Template rule.
4
  *
5
  * @package MLA Hierarchical Mapping Example
6
+ * @version 1.01
7
  */
8
 
9
  /*
10
  Plugin Name: MLA Hierarchical Mapping Example
11
+ Plugin URI: http://davidlingren.com/
12
  Description: Maps taxonomy terms from "template:([+xmp:lr.hierarchicalSubject+])" in EXIF/Template rule
13
  Author: David Lingren
14
+ Version: 1.01
15
+ Author URI: http://davidlingren.com/
16
 
17
  Copyright 2016 David Lingren
18
 
examples/plugins/mla-hooks-example.php CHANGED
@@ -16,16 +16,16 @@
16
  * and illustrates some of the techniques you can use to customize the gallery display.
17
  *
18
  * @package MLA Gallery Hooks Example
19
- * @version 1.14
20
  */
21
 
22
  /*
23
  Plugin Name: MLA Gallery Hooks Example
24
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
25
  Description: Provides examples of hooking the filters provided by the [mla_gallery] shortcode
26
  Author: David Lingren
27
- Version: 1.14
28
- Author URI: http://fairtradejudaica.org/our-story/staff/
29
 
30
  Copyright 2013 - 2017 David Lingren
31
 
16
  * and illustrates some of the techniques you can use to customize the gallery display.
17
  *
18
  * @package MLA Gallery Hooks Example
19
+ * @version 1.15
20
  */
21
 
22
  /*
23
  Plugin Name: MLA Gallery Hooks Example
24
+ Plugin URI: http://davidlingren.com/
25
  Description: Provides examples of hooking the filters provided by the [mla_gallery] shortcode
26
  Author: David Lingren
27
+ Version: 1.15
28
+ Author URI: http://davidlingren.com/
29
 
30
  Copyright 2013 - 2017 David Lingren
31
 
examples/plugins/mla-image-source-control-example.php CHANGED
@@ -6,16 +6,16 @@
6
  * It is a good example of tailoring custom field handling in the Media/Assistant submenu table.
7
  *
8
  * @package MLA Image Source Control Example
9
- * @version 1.01
10
  */
11
 
12
  /*
13
  Plugin Name: MLA Image Source Control Example
14
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
15
  Description: Provides an example of hooking the filters provided by the MLA_List_Table class
16
  Author: David Lingren
17
- Version: 1.01
18
- Author URI: http://fairtradejudaica.org/our-story/staff/
19
 
20
  Copyright 2014 David Lingren
21
 
6
  * It is a good example of tailoring custom field handling in the Media/Assistant submenu table.
7
  *
8
  * @package MLA Image Source Control Example
9
+ * @version 1.02
10
  */
11
 
12
  /*
13
  Plugin Name: MLA Image Source Control Example
14
+ Plugin URI: http://davidlingren.com/
15
  Description: Provides an example of hooking the filters provided by the MLA_List_Table class
16
  Author: David Lingren
17
+ Version: 1.02
18
+ Author URI: http://davidlingren.com/
19
 
20
  Copyright 2014 David Lingren
21
 
examples/plugins/mla-insert-fixit.php CHANGED
@@ -33,16 +33,16 @@
33
  * https://wordpress.org/support/topic/mla-shortcode-to-show-images-of-all-posts-of-a-wp-category
34
  *
35
  * @package Insert Fixit
36
- * @version 1.09
37
  */
38
 
39
  /*
40
  Plugin Name: MLA Insert Fixit
41
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
42
  Description: Synchronizes Media Library values to and from post/page inserted/featured/attached images
43
  Author: David Lingren
44
- Version: 1.09
45
- Author URI: http://fairtradejudaica.org/our-story/staff/
46
 
47
  Copyright 2015-2018 David Lingren
48
 
33
  * https://wordpress.org/support/topic/mla-shortcode-to-show-images-of-all-posts-of-a-wp-category
34
  *
35
  * @package Insert Fixit
36
+ * @version 1.10
37
  */
38
 
39
  /*
40
  Plugin Name: MLA Insert Fixit
41
+ Plugin URI: http://davidlingren.com/
42
  Description: Synchronizes Media Library values to and from post/page inserted/featured/attached images
43
  Author: David Lingren
44
+ Version: 1.10
45
+ Author URI: http://davidlingren.com/
46
 
47
  Copyright 2015-2018 David Lingren
48
 
examples/plugins/mla-item-transfer-pretty-links.php CHANGED
@@ -10,17 +10,17 @@
10
  * https://wordpress.org/support/topic/how-about-mla_gallery-listmask/
11
  *
12
  * @package MLA Item Transfer Pretty Links
13
- * @version 1.00
14
  */
15
 
16
  /*
17
  Plugin Name: MLA Item Transfer Pretty Links
18
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
19
  Description: Converts "Transfer by Item Name" links to pretty links, adds URL rewrite rule to convert them back.
20
  Author: David Lingren
21
- Version: 1.00
22
 
23
- Author URI: http://fairtradejudaica.org/our-story/staff/
24
 
25
  Copyright 2014 - 2017 David Lingren
26
 
10
  * https://wordpress.org/support/topic/how-about-mla_gallery-listmask/
11
  *
12
  * @package MLA Item Transfer Pretty Links
13
+ * @version 1.01
14
  */
15
 
16
  /*
17
  Plugin Name: MLA Item Transfer Pretty Links
18
+ Plugin URI: http://davidlingren.com/
19
  Description: Converts "Transfer by Item Name" links to pretty links, adds URL rewrite rule to convert them back.
20
  Author: David Lingren
21
+ Version: 1.01
22
 
23
+ Author URI: http://davidlingren.com/
24
 
25
  Copyright 2014 - 2017 David Lingren
26
 
examples/plugins/mla-javascript-example/mla-javascript-example.php CHANGED
@@ -14,16 +14,16 @@
14
  * https://wordpress.org/support/topic/limit-caption-length/
15
  *
16
  * @package MLA JavaScript Example
17
- * @version 1.00
18
  */
19
 
20
  /*
21
  Plugin Name: MLA JavaScript Example
22
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
23
  Description: Enqueues a JavaScript file with some WP Featherlight plugin enhancements
24
  Author: David Lingren
25
- Version: 1.00
26
- Author URI: http://fairtradejudaica.org/our-story/staff/
27
 
28
  Copyright 2018 David Lingren
29
 
14
  * https://wordpress.org/support/topic/limit-caption-length/
15
  *
16
  * @package MLA JavaScript Example
17
+ * @version 1.01
18
  */
19
 
20
  /*
21
  Plugin Name: MLA JavaScript Example
22
+ Plugin URI: http://davidlingren.com/
23
  Description: Enqueues a JavaScript file with some WP Featherlight plugin enhancements
24
  Author: David Lingren
25
+ Version: 1.01
26
+ Author URI: http://davidlingren.com/
27
 
28
  Copyright 2018 David Lingren
29
 
examples/plugins/mla-jhdean-mapping-hooks-example.php CHANGED
@@ -15,16 +15,16 @@
15
  * https://wordpress.org/support/topic/exiftemplate-value-editing
16
  *
17
  * @package MLA jhdean Mapping Hooks Example
18
- * @version 1.04
19
  */
20
 
21
  /*
22
  Plugin Name: MLA jhdean Mapping Hooks Example
23
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
24
  Description: Add or remove Title hyperlink, replace JIG Link; for Jeff Dean.
25
  Author: David Lingren
26
- Version: 1.04
27
- Author URI: http://fairtradejudaica.org/our-story/staff/
28
 
29
  Copyright 2014 - 2017 David Lingren
30
 
15
  * https://wordpress.org/support/topic/exiftemplate-value-editing
16
  *
17
  * @package MLA jhdean Mapping Hooks Example
18
+ * @version 1.05
19
  */
20
 
21
  /*
22
  Plugin Name: MLA jhdean Mapping Hooks Example
23
+ Plugin URI: http://davidlingren.com/
24
  Description: Add or remove Title hyperlink, replace JIG Link; for Jeff Dean.
25
  Author: David Lingren
26
+ Version: 1.05
27
+ Author URI: http://davidlingren.com/
28
 
29
  Copyright 2014 - 2017 David Lingren
30
 
examples/plugins/mla-list-table-extranav-example.php CHANGED
@@ -3,16 +3,16 @@
3
  * Adds an "author" dropdown control to the "extra tablenav" area of the Media/Assistant submenu
4
  *
5
  * @package MLA Extra Nav Hooks Example
6
- * @version 1.01
7
  */
8
 
9
  /*
10
  Plugin Name: MLA Extra Nav Hooks Example
11
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
12
  Description: Adds an "author" dropdown control to the "extra tablenav" area of the Media/Assistant submenu
13
  Author: David Lingren
14
- Version: 1.01
15
- Author URI: http://fairtradejudaica.org/our-story/staff/
16
 
17
  Copyright 2014 - 2015 David Lingren
18
 
3
  * Adds an "author" dropdown control to the "extra tablenav" area of the Media/Assistant submenu
4
  *
5
  * @package MLA Extra Nav Hooks Example
6
+ * @version 1.02
7
  */
8
 
9
  /*
10
  Plugin Name: MLA Extra Nav Hooks Example
11
+ Plugin URI: http://davidlingren.com/
12
  Description: Adds an "author" dropdown control to the "extra tablenav" area of the Media/Assistant submenu
13
  Author: David Lingren
14
+ Version: 1.02
15
+ Author URI: http://davidlingren.com/
16
 
17
  Copyright 2014 - 2015 David Lingren
18
 
examples/plugins/mla-list-table-hooks-example.php CHANGED
@@ -3,16 +3,16 @@
3
  * Provides an example of hooking the filters provided by the MLA_List_Table class
4
  *
5
  * @package MLA List Table Hooks Example
6
- * @version 1.09
7
  */
8
 
9
  /*
10
  Plugin Name: MLA List Table Hooks Example
11
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
12
  Description: Provides an example of hooking the filters provided by the MLA_List_Table class
13
  Author: David Lingren
14
- Version: 1.09
15
- Author URI: http://fairtradejudaica.org/our-story/staff/
16
 
17
  Copyright 2014 - 2017 David Lingren
18
 
3
  * Provides an example of hooking the filters provided by the MLA_List_Table class
4
  *
5
  * @package MLA List Table Hooks Example
6
+ * @version 1.10
7
  */
8
 
9
  /*
10
  Plugin Name: MLA List Table Hooks Example
11
+ Plugin URI: http://davidlingren.com/
12
  Description: Provides an example of hooking the filters provided by the MLA_List_Table class
13
  Author: David Lingren
14
+ Version: 1.10
15
+ Author URI: http://davidlingren.com/
16
 
17
  Copyright 2014 - 2017 David Lingren
18
 
examples/plugins/mla-login-filtered-gallery-example.php CHANGED
@@ -19,16 +19,16 @@
19
  * https://wordpress.org/support/topic/multiple-calls-to-a-smaller-amount
20
  *
21
  * @package MLA Login-filtered Gallery Example
22
- * @version 1.01
23
  */
24
 
25
  /*
26
  Plugin Name: MLA Login-filtered Gallery Example
27
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
28
  Description: Restricts items to logged-in users based on an Att. Categories term
29
  Author: David Lingren
30
- Version: 1.01
31
- Author URI: http://fairtradejudaica.org/our-story/staff/
32
 
33
  Copyright 2017 David Lingren
34
 
19
  * https://wordpress.org/support/topic/multiple-calls-to-a-smaller-amount
20
  *
21
  * @package MLA Login-filtered Gallery Example
22
+ * @version 1.02
23
  */
24
 
25
  /*
26
  Plugin Name: MLA Login-filtered Gallery Example
27
+ Plugin URI: http://davidlingren.com/
28
  Description: Restricts items to logged-in users based on an Att. Categories term
29
  Author: David Lingren
30
+ Version: 1.02
31
+ Author URI: http://davidlingren.com/
32
 
33
  Copyright 2017 David Lingren
34
 
examples/plugins/mla-mapping-hooks-example.php CHANGED
@@ -9,16 +9,16 @@
9
  * a supporting function "_export_this_item" and the "mla_end_mapping" action.
10
  *
11
  * @package MLA Mapping Hooks Example
12
- * @version 1.03
13
  */
14
 
15
  /*
16
  Plugin Name: MLA Mapping Hooks Example
17
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
18
  Description: Provides an example of the filters provided by the IPTC/EXIF and Custom Field mapping features
19
  Author: David Lingren
20
- Version: 1.03
21
- Author URI: http://fairtradejudaica.org/our-story/staff/
22
 
23
  Copyright 2014 David Lingren
24
 
9
  * a supporting function "_export_this_item" and the "mla_end_mapping" action.
10
  *
11
  * @package MLA Mapping Hooks Example
12
+ * @version 1.04
13
  */
14
 
15
  /*
16
  Plugin Name: MLA Mapping Hooks Example
17
+ Plugin URI: http://davidlingren.com/
18
  Description: Provides an example of the filters provided by the IPTC/EXIF and Custom Field mapping features
19
  Author: David Lingren
20
+ Version: 1.04
21
+ Author URI: http://davidlingren.com/
22
 
23
  Copyright 2014 David Lingren
24
 
examples/plugins/mla-mapping-parent-data-example.php CHANGED
@@ -5,16 +5,16 @@
5
  * Provides an example of the filters provided by the IPTC/EXIF and Custom Field mapping features
6
  *
7
  * @package MLA Mapping Parent Data Example
8
- * @version 1.01
9
  */
10
 
11
  /*
12
  Plugin Name: MLA Mapping Parent Data Example
13
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
14
  Description: Copies a custom field value from the parent post/page to all attached Media Library items.
15
  Author: David Lingren
16
- Version: 1.01
17
- Author URI: http://fairtradejudaica.org/our-story/staff/
18
 
19
  Copyright 2015 David Lingren
20
 
5
  * Provides an example of the filters provided by the IPTC/EXIF and Custom Field mapping features
6
  *
7
  * @package MLA Mapping Parent Data Example
8
+ * @version 1.02
9
  */
10
 
11
  /*
12
  Plugin Name: MLA Mapping Parent Data Example
13
+ Plugin URI: http://davidlingren.com/
14
  Description: Copies a custom field value from the parent post/page to all attached Media Library items.
15
  Author: David Lingren
16
+ Version: 1.02
17
+ Author URI: http://davidlingren.com/
18
 
19
  Copyright 2015 David Lingren
20
 
examples/plugins/mla-media-modal-hooks-example.php CHANGED
@@ -7,16 +7,16 @@
7
  * - items assigned to a taxonomy term can be excluded from the "Query Attachments" results
8
  *
9
  * @package MLA Media Modal Hooks Example
10
- * @version 1.01
11
  */
12
 
13
  /*
14
  Plugin Name: MLA Media Modal Hooks Example
15
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
16
  Description: Provides examples of the filters provided by the "Media Manager Enhancements" feature
17
  Author: David Lingren
18
- Version: 1.01
19
- Author URI: http://fairtradejudaica.org/our-story/staff/
20
 
21
  Copyright 2014-2015 David Lingren
22
 
7
  * - items assigned to a taxonomy term can be excluded from the "Query Attachments" results
8
  *
9
  * @package MLA Media Modal Hooks Example
10
+ * @version 1.02
11
  */
12
 
13
  /*
14
  Plugin Name: MLA Media Modal Hooks Example
15
+ Plugin URI: http://davidlingren.com/
16
  Description: Provides examples of the filters provided by the "Media Manager Enhancements" feature
17
  Author: David Lingren
18
+ Version: 1.02
19
+ Author URI: http://davidlingren.com/
20
 
21
  Copyright 2014-2015 David Lingren
22
 
examples/plugins/mla-media-tagger-example.php CHANGED
@@ -13,16 +13,16 @@
13
  * that are required for the current task have been retained in this plugin.
14
  *
15
  * @package MLA Media Tagger Example
16
- * @version 1.00
17
  */
18
 
19
  /*
20
  Plugin Name: MLA Media Tagger Example
21
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
22
  Description: Shows how to use a Custom Field mapping filter to accomplish item-specific database updates.
23
  Author: David Lingren
24
- Version: 1.00
25
- Author URI: http://fairtradejudaica.org/our-story/staff/
26
 
27
  Copyright 2014 David Lingren
28
 
13
  * that are required for the current task have been retained in this plugin.
14
  *
15
  * @package MLA Media Tagger Example
16
+ * @version 1.01
17
  */
18
 
19
  /*
20
  Plugin Name: MLA Media Tagger Example
21
+ Plugin URI: http://davidlingren.com/
22
  Description: Shows how to use a Custom Field mapping filter to accomplish item-specific database updates.
23
  Author: David Lingren
24
+ Version: 1.01
25
+ Author URI: http://davidlingren.com/
26
 
27
  Copyright 2014 David Lingren
28
 
examples/plugins/mla-metabox-hooks-example.php CHANGED
@@ -6,16 +6,16 @@
6
  * All of the action takes place in the "mla_inserted_in_meta_box" filter.
7
  *
8
  * @package MLA Meta Box Hooks Example
9
- * @version 1.00
10
  */
11
 
12
  /*
13
  Plugin Name: MLA Meta Box Hooks Example
14
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
15
  Description: Provides an example of the filters provided by the "Edit Media additional meta boxes" feature
16
  Author: David Lingren
17
- Version: 1.00
18
- Author URI: http://fairtradejudaica.org/our-story/staff/
19
 
20
  Copyright 2014 David Lingren
21
 
6
  * All of the action takes place in the "mla_inserted_in_meta_box" filter.
7
  *
8
  * @package MLA Meta Box Hooks Example
9
+ * @version 1.01
10
  */
11
 
12
  /*
13
  Plugin Name: MLA Meta Box Hooks Example
14
+ Plugin URI: http://davidlingren.com/
15
  Description: Provides an example of the filters provided by the "Edit Media additional meta boxes" feature
16
  Author: David Lingren
17
+ Version: 1.01
18
+ Author URI: http://davidlingren.com/
19
 
20
  Copyright 2014 David Lingren
21
 
examples/plugins/mla-metadata-mapping-hooks-example.php CHANGED
@@ -8,16 +8,16 @@
8
  * file do the actual work.
9
  *
10
  * @package MLA Metadata Mapping Hooks Example
11
- * @version 1.03
12
  */
13
 
14
  /*
15
  Plugin Name: MLA Metadata Mapping Hooks Example
16
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
17
  Description: Provides an advanced example of the filters provided by the IPTC/EXIF and Custom Field mapping features
18
  Author: David Lingren
19
- Version: 1.03
20
- Author URI: http://fairtradejudaica.org/our-story/staff/
21
 
22
  Copyright 2014-2016 David Lingren
23
 
8
  * file do the actual work.
9
  *
10
  * @package MLA Metadata Mapping Hooks Example
11
+ * @version 1.04
12
  */
13
 
14
  /*
15
  Plugin Name: MLA Metadata Mapping Hooks Example
16
+ Plugin URI: http://davidlingren.com/
17
  Description: Provides an advanced example of the filters provided by the IPTC/EXIF and Custom Field mapping features
18
  Author: David Lingren
19
+ Version: 1.04
20
+ Author URI: http://davidlingren.com/
21
 
22
  Copyright 2014-2016 David Lingren
23
 
examples/plugins/mla-multi-search-example.php CHANGED
@@ -20,16 +20,16 @@
20
  * https://wordpress.org/support/topic/gallery-layout-with-thumbnails/
21
  *
22
  * @package MLA Multi-search Example
23
- * @version 1.00
24
  */
25
 
26
  /*
27
  Plugin Name: MLA Multi-search Example
28
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
29
  Description: Adds custom field search(es) to the [mla_gallery] keyword(s) search results
30
  Author: David Lingren
31
- Version: 1.00
32
- Author URI: http://fairtradejudaica.org/our-story/staff/
33
 
34
  Copyright 2016 David Lingren
35
 
20
  * https://wordpress.org/support/topic/gallery-layout-with-thumbnails/
21
  *
22
  * @package MLA Multi-search Example
23
+ * @version 1.01
24
  */
25
 
26
  /*
27
  Plugin Name: MLA Multi-search Example
28
+ Plugin URI: http://davidlingren.com/
29
  Description: Adds custom field search(es) to the [mla_gallery] keyword(s) search results
30
  Author: David Lingren
31
+ Version: 1.01
32
+ Author URI: http://davidlingren.com/
33
 
34
  Copyright 2016 David Lingren
35
 
examples/plugins/mla-multi-wp-query-example.php CHANGED
@@ -19,16 +19,16 @@
19
  * https://wordpress.org/support/topic/mla-gallery-with-latest-image-from-four-categories
20
  *
21
  * @package MLA Multiple WP Query Example
22
- * @version 1.00
23
  */
24
 
25
  /*
26
  Plugin Name: MLA Multiple WP Query Example
27
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
28
  Description: Provides an [mla_gallery] parameter to combine items from each of multiple "taxonomy=term" queries.
29
  Author: David Lingren
30
- Version: 1.00
31
- Author URI: http://fairtradejudaica.org/our-story/staff/
32
 
33
  Copyright 2016 David Lingren
34
 
19
  * https://wordpress.org/support/topic/mla-gallery-with-latest-image-from-four-categories
20
  *
21
  * @package MLA Multiple WP Query Example
22
+ * @version 1.01
23
  */
24
 
25
  /*
26
  Plugin Name: MLA Multiple WP Query Example
27
+ Plugin URI: http://davidlingren.com/
28
  Description: Provides an [mla_gallery] parameter to combine items from each of multiple "taxonomy=term" queries.
29
  Author: David Lingren
30
+ Version: 1.01
31
+ Author URI: http://davidlingren.com/
32
 
33
  Copyright 2016 David Lingren
34
 
examples/plugins/mla-multisite-extensions.php CHANGED
@@ -13,16 +13,16 @@
13
  * https://wordpress.org/support/topic/using-shortcodes-to-retrieve-media-from-another-sites-media-library/
14
  *
15
  * @package MLA Multisite Extensions
16
- * @version 1.03
17
  */
18
 
19
  /*
20
  Plugin Name: MLA Multisite Extensions
21
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
22
  Description: Adds Multisite filters to MLA shortcodes
23
  Author: David Lingren
24
- Version: 1.03
25
- Author URI: http://fairtradejudaica.org/our-story/staff/
26
 
27
  Copyright 2017 David Lingren
28
 
13
  * https://wordpress.org/support/topic/using-shortcodes-to-retrieve-media-from-another-sites-media-library/
14
  *
15
  * @package MLA Multisite Extensions
16
+ * @version 1.04
17
  */
18
 
19
  /*
20
  Plugin Name: MLA Multisite Extensions
21
+ Plugin URI: http://davidlingren.com/
22
  Description: Adds Multisite filters to MLA shortcodes
23
  Author: David Lingren
24
+ Version: 1.04
25
+ Author URI: http://davidlingren.com/
26
 
27
  Copyright 2017 David Lingren
28
 
examples/plugins/mla-not-featured-view-example.php CHANGED
@@ -10,16 +10,16 @@
10
  * https://wordpress.org/support/topic/filter-by-post-status/
11
  *
12
  * @package MLA Not Featured View Example
13
- * @version 1.00
14
  */
15
 
16
  /*
17
  Plugin Name:MLA Not Featured View Example
18
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
19
  Description: Adds a Media/Assistant submenu table view for items NOT featured in any posts/pages.
20
  Author: David Lingren
21
- Version: 1.00
22
- Author URI: http://fairtradejudaica.org/our-story/staff/
23
 
24
  Copyright 2014 - 2015 David Lingren
25
 
10
  * https://wordpress.org/support/topic/filter-by-post-status/
11
  *
12
  * @package MLA Not Featured View Example
13
+ * @version 1.01
14
  */
15
 
16
  /*
17
  Plugin Name:MLA Not Featured View Example
18
+ Plugin URI: http://davidlingren.com/
19
  Description: Adds a Media/Assistant submenu table view for items NOT featured in any posts/pages.
20
  Author: David Lingren
21
+ Version: 1.01
22
+ Author URI: http://davidlingren.com/
23
 
24
  Copyright 2014 - 2015 David Lingren
25
 
examples/plugins/mla-parent-category-mapping-example.php CHANGED
@@ -7,16 +7,16 @@
7
  * https://wordpress.org/support/topic/all-category-links-working-but-one/
8
  *
9
  * @package MLA Parent Category Mapping Example
10
- * @version 1.00
11
  */
12
 
13
  /*
14
  Plugin Name: MLA Parent Category Mapping Example
15
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
16
  Description: Assigns parent term when child term(s) are assigned
17
  Author: David Lingren
18
- Version: 1.00
19
- Author URI: http://fairtradejudaica.org/our-story/staff/
20
 
21
  Copyright 2017 David Lingren
22
 
7
  * https://wordpress.org/support/topic/all-category-links-working-but-one/
8
  *
9
  * @package MLA Parent Category Mapping Example
10
+ * @version 1.01
11
  */
12
 
13
  /*
14
  Plugin Name: MLA Parent Category Mapping Example
15
+ Plugin URI: http://davidlingren.com/
16
  Description: Assigns parent term when child term(s) are assigned
17
  Author: David Lingren
18
+ Version: 1.01
19
+ Author URI: http://davidlingren.com/
20
 
21
  Copyright 2017 David Lingren
22
 
examples/plugins/mla-parent-search-example.php CHANGED
@@ -15,16 +15,16 @@
15
  * https://wordpress.org/support/topic/search-wordpress-media-library-by-attached-post-title/
16
  *
17
  * @package MLA Parent Search Example
18
- * @version 1.00
19
  */
20
 
21
  /*
22
  Plugin Name: MLA Parent Search Example
23
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
24
  Description: Extends the Media/Assistant "Search Media" box to custom field values
25
  Author: David Lingren
26
- Version: 1.00
27
- Author URI: http://fairtradejudaica.org/our-story/staff/
28
 
29
  Copyright 2018 David Lingren
30
 
15
  * https://wordpress.org/support/topic/search-wordpress-media-library-by-attached-post-title/
16
  *
17
  * @package MLA Parent Search Example
18
+ * @version 1.01
19
  */
20
 
21
  /*
22
  Plugin Name: MLA Parent Search Example
23
+ Plugin URI: http://davidlingren.com/
24
  Description: Extends the Media/Assistant "Search Media" box to custom field values
25
  Author: David Lingren
26
+ Version: 1.01
27
+ Author URI: http://davidlingren.com/
28
 
29
  Copyright 2018 David Lingren
30
 
examples/plugins/mla-parent-wp-query-example.php CHANGED
@@ -20,16 +20,16 @@
20
  * https://wordpress.org/support/topic/create-gallery-of-all-images-attached-to-a-list-of-posts/
21
  *
22
  * @package MLA Parent WP_Query Example
23
- * @version 1.00
24
  */
25
 
26
  /*
27
  Plugin Name: MLA Parent WP_Query Example
28
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
29
  Description: Selects items attached to parents assigned to a taxonomy term
30
  Author: David Lingren
31
- Version: 1.00
32
- Author URI: http://fairtradejudaica.org/our-story/staff/
33
 
34
  Copyright 2016 David Lingren
35
 
20
  * https://wordpress.org/support/topic/create-gallery-of-all-images-attached-to-a-list-of-posts/
21
  *
22
  * @package MLA Parent WP_Query Example
23
+ * @version 1.01
24
  */
25
 
26
  /*
27
  Plugin Name: MLA Parent WP_Query Example
28
+ Plugin URI: http://davidlingren.com/
29
  Description: Selects items attached to parents assigned to a taxonomy term
30
  Author: David Lingren
31
+ Version: 1.01
32
+ Author URI: http://davidlingren.com/
33
 
34
  Copyright 2016 David Lingren
35
 
examples/plugins/mla-path-mapping-example/mla-path-mapping-example.php CHANGED
@@ -14,16 +14,16 @@
14
  * https://wordpress.org/support/topic/help-with-custom-taxonomy/
15
  *
16
  * @package MLA Path Mapping Example
17
- * @version 1.00
18
  */
19
 
20
  /*
21
  Plugin Name: MLA Path Mapping Example
22
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
23
  Description: Adds hierarchical path specification to the IPTC/EXIF taxonomy mapping features
24
  Author: David Lingren
25
- Version: 1.00
26
- Author URI: http://fairtradejudaica.org/our-story/staff/
27
 
28
  Copyright 2018 David Lingren
29
 
@@ -58,7 +58,7 @@ class MLAPathMappingExample {
58
  *
59
  * @var string
60
  */
61
- const CURRENT_VERSION = '1.00';
62
 
63
  /**
64
  * Slug prefix for registering and enqueueing submenu pages, style sheets, scripts and settings
14
  * https://wordpress.org/support/topic/help-with-custom-taxonomy/
15
  *
16
  * @package MLA Path Mapping Example
17
+ * @version 1.01
18
  */
19
 
20
  /*
21
  Plugin Name: MLA Path Mapping Example
22
+ Plugin URI: http://davidlingren.com/
23
  Description: Adds hierarchical path specification to the IPTC/EXIF taxonomy mapping features
24
  Author: David Lingren
25
+ Version: 1.01
26
+ Author URI: http://davidlingren.com/
27
 
28
  Copyright 2018 David Lingren
29
 
58
  *
59
  * @var string
60
  */
61
+ const CURRENT_VERSION = '1.01';
62
 
63
  /**
64
  * Slug prefix for registering and enqueueing submenu pages, style sheets, scripts and settings
examples/plugins/mla-project-slug-example.php CHANGED
@@ -8,11 +8,11 @@
8
 
9
  /*
10
  Plugin Name: MLA Project Slug Example
11
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
12
  Description: Provides examples of hooking the filters provided by the [mla_gallery] shortcode
13
  Author: David Lingren
14
- Version: 1.00
15
- Author URI: http://fairtradejudaica.org/our-story/staff/
16
 
17
  Copyright 2014-2016 David Lingren
18
 
8
 
9
  /*
10
  Plugin Name: MLA Project Slug Example
11
+ Plugin URI: http://davidlingren.com/
12
  Description: Provides examples of hooking the filters provided by the [mla_gallery] shortcode
13
  Author: David Lingren
14
+ Version: 1.01
15
+ Author URI: http://davidlingren.com/
16
 
17
  Copyright 2014-2016 David Lingren
18
 
examples/plugins/mla-random-galleries-example.php CHANGED
@@ -19,16 +19,16 @@
19
  * https://wordpress.org/support/topic/multiple-calls-to-a-smaller-amount
20
  *
21
  * @package MLA Random Galleries Example
22
- * @version 1.00
23
  */
24
 
25
  /*
26
  Plugin Name: MLA Random Galleries Example
27
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
28
  Description: High performance queries for random items from a list of Att. Categories
29
  Author: David Lingren
30
- Version: 1.00
31
- Author URI: http://fairtradejudaica.org/our-story/staff/
32
 
33
  Copyright 2016 David Lingren
34
 
19
  * https://wordpress.org/support/topic/multiple-calls-to-a-smaller-amount
20
  *
21
  * @package MLA Random Galleries Example
22
+ * @version 1.01
23
  */
24
 
25
  /*
26
  Plugin Name: MLA Random Galleries Example
27
+ Plugin URI: http://davidlingren.com/
28
  Description: High performance queries for random items from a list of Att. Categories
29
  Author: David Lingren
30
+ Version: 1.01
31
+ Author URI: http://davidlingren.com/
32
 
33
  Copyright 2016 David Lingren
34
 
examples/plugins/mla-regenerate-thumbnails-example.php CHANGED
@@ -14,16 +14,16 @@
14
  * https://wordpress.org/support/topic/how-to-add-a-regenerate-thumbnails-plugin-action-to-mla-interface
15
  *
16
  * @package MLA Regenerate Thumbnails Example
17
- * @version 1.00
18
  */
19
 
20
  /*
21
  Plugin Name: MLA Regenerate Thumbnails Example
22
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
23
  Description: Adds "Regenerate Thumbnails" actions to rollover actions and Bulk Edit dropdown
24
  Author: David Lingren
25
- Version: 1.00
26
- Author URI: http://fairtradejudaica.org/our-story/staff/
27
 
28
  Copyright 2016 David Lingren
29
 
14
  * https://wordpress.org/support/topic/how-to-add-a-regenerate-thumbnails-plugin-action-to-mla-interface
15
  *
16
  * @package MLA Regenerate Thumbnails Example
17
+ * @version 1.01
18
  */
19
 
20
  /*
21
  Plugin Name: MLA Regenerate Thumbnails Example
22
+ Plugin URI: http://davidlingren.com/
23
  Description: Adds "Regenerate Thumbnails" actions to rollover actions and Bulk Edit dropdown
24
  Author: David Lingren
25
+ Version: 1.01
26
+ Author URI: http://davidlingren.com/
27
 
28
  Copyright 2016 David Lingren
29
 
examples/plugins/mla-simple-mapping-hooks-example.php CHANGED
@@ -22,16 +22,16 @@
22
  * https://wordpress.org/support/topic/replacing-sort-order-attribute
23
  *
24
  * @package MLA Simple Mapping Hooks Example
25
- * @version 1.02
26
  */
27
 
28
  /*
29
  Plugin Name: MLA Simple Mapping Hooks Example
30
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
31
  Description: Populates custom fields based on a regular expression; updates menu_order; cleans up Title and ALT Text
32
  Author: David Lingren
33
- Version: 1.02
34
- Author URI: http://fairtradejudaica.org/our-story/staff/
35
 
36
  Copyright 2014 - 2016 David Lingren
37
 
22
  * https://wordpress.org/support/topic/replacing-sort-order-attribute
23
  *
24
  * @package MLA Simple Mapping Hooks Example
25
+ * @version 1.03
26
  */
27
 
28
  /*
29
  Plugin Name: MLA Simple Mapping Hooks Example
30
+ Plugin URI: http://davidlingren.com/
31
  Description: Populates custom fields based on a regular expression; updates menu_order; cleans up Title and ALT Text
32
  Author: David Lingren
33
+ Version: 1.03
34
+ Author URI: http://davidlingren.com/
35
 
36
  Copyright 2014 - 2016 David Lingren
37
 
examples/plugins/mla-subscriber-media-access-example.php CHANGED
@@ -7,16 +7,16 @@
7
  * https://wordpress.org/support/topic/limiting-users-to-their-own-uploaded-media/
8
  *
9
  * @package MLA Subscriber Media Access Example
10
- * @version 1.00
11
  */
12
 
13
  /*
14
  Plugin Name: MLA Subscriber Media Access Example
15
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
16
  Description: Allows "owner only" access to the Media Library for the Subscriber role
17
  Author: David Lingren
18
- Version: 1.00
19
- Author URI: http://fairtradejudaica.org/our-story/staff/
20
 
21
  Copyright 2017 David Lingren
22
 
7
  * https://wordpress.org/support/topic/limiting-users-to-their-own-uploaded-media/
8
  *
9
  * @package MLA Subscriber Media Access Example
10
+ * @version 1.01
11
  */
12
 
13
  /*
14
  Plugin Name: MLA Subscriber Media Access Example
15
+ Plugin URI: http://davidlingren.com/
16
  Description: Allows "owner only" access to the Media Library for the Subscriber role
17
  Author: David Lingren
18
+ Version: 1.01
19
+ Author URI: http://davidlingren.com/
20
 
21
  Copyright 2017 David Lingren
22
 
examples/plugins/mla-substitution-parameter-hooks-example.php CHANGED
@@ -45,16 +45,16 @@
45
  * https://wordpress.org/support/topic/sorting-items-in-tag-cloud-by-parent-child/
46
  *
47
  * @package MLA Substitution Parameter Hooks Example
48
- * @version 1.11
49
  */
50
 
51
  /*
52
  Plugin Name: MLA Substitution Parameter Hooks Example
53
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
54
  Description: Adds "parent_terms:", "page_terms:", "parent:", "author:", "conditional:", "wp_query_vars" and "current_term" Field-level Substitution Parameters
55
  Author: David Lingren
56
- Version: 1.11
57
- Author URI: http://fairtradejudaica.org/our-story/staff/
58
 
59
  Copyright 2016-2018 David Lingren
60
 
45
  * https://wordpress.org/support/topic/sorting-items-in-tag-cloud-by-parent-child/
46
  *
47
  * @package MLA Substitution Parameter Hooks Example
48
+ * @version 1.12
49
  */
50
 
51
  /*
52
  Plugin Name: MLA Substitution Parameter Hooks Example
53
+ Plugin URI: http://davidlingren.com/
54
  Description: Adds "parent_terms:", "page_terms:", "parent:", "author:", "conditional:", "wp_query_vars" and "current_term" Field-level Substitution Parameters
55
  Author: David Lingren
56
+ Version: 1.12
57
+ Author URI: http://davidlingren.com/
58
 
59
  Copyright 2016-2018 David Lingren
60
 
examples/plugins/mla-tax-query-example.php CHANGED
@@ -54,16 +54,16 @@
54
  * https://wordpress.org/support/topic/504-time-out-issue/
55
  *
56
  * @package MLA tax query Example
57
- * @version 1.08
58
  */
59
 
60
  /*
61
  Plugin Name: MLA tax query Example
62
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
63
  Description: Replaces the WP_Query tax_query with a more efficient, direct SQL query
64
  Author: David Lingren
65
- Version: 1.08
66
- Author URI: http://fairtradejudaica.org/our-story/staff/
67
 
68
  Copyright 2013 - 2017 David Lingren
69
 
54
  * https://wordpress.org/support/topic/504-time-out-issue/
55
  *
56
  * @package MLA tax query Example
57
+ * @version 1.09
58
  */
59
 
60
  /*
61
  Plugin Name: MLA tax query Example
62
+ Plugin URI: http://davidlingren.com/
63
  Description: Replaces the WP_Query tax_query with a more efficient, direct SQL query
64
  Author: David Lingren
65
+ Version: 1.09
66
+ Author URI: http://davidlingren.com/
67
 
68
  Copyright 2013 - 2017 David Lingren
69
 
examples/plugins/mla-taxonomy-hooks-example.php CHANGED
@@ -7,16 +7,16 @@
7
  * https://wordpress.org/support/topic/attachment_category-rewrite/
8
  *
9
  * @package MLA Taxonomy Hooks Example
10
- * @version 1.00
11
  */
12
 
13
  /*
14
  Plugin Name: MLA Taxonomy Hooks Example
15
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
16
  Description: Documents the hooks provided for registering the Att. Categories and Att. Tags taxonomies
17
  Author: David Lingren
18
- Version: 1.00
19
- Author URI: http://fairtradejudaica.org/our-story/staff/
20
 
21
  Copyright 2017 David Lingren
22
 
7
  * https://wordpress.org/support/topic/attachment_category-rewrite/
8
  *
9
  * @package MLA Taxonomy Hooks Example
10
+ * @version 1.01
11
  */
12
 
13
  /*
14
  Plugin Name: MLA Taxonomy Hooks Example
15
+ Plugin URI: http://davidlingren.com/
16
  Description: Documents the hooks provided for registering the Att. Categories and Att. Tags taxonomies
17
  Author: David Lingren
18
+ Version: 1.01
19
+ Author URI: http://davidlingren.com/
20
 
21
  Copyright 2017 David Lingren
22
 
examples/plugins/mla-term-links-example.php CHANGED
@@ -19,16 +19,16 @@
19
  * https://wordpress.org/support/topic/tag-cloud-clickable-tags-in-mla_caption-area/
20
  *
21
  * @package MLA Term Links Example
22
- * @version 1.01
23
  */
24
 
25
  /*
26
  Plugin Name: MLA Term Links Example
27
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
28
  Description: Adds "term_links:" Field-level Substitution Parameter prefix
29
  Author: David Lingren
30
- Version: 1.01
31
- Author URI: http://fairtradejudaica.org/our-story/staff/
32
 
33
  Copyright 2017 David Lingren
34
 
19
  * https://wordpress.org/support/topic/tag-cloud-clickable-tags-in-mla_caption-area/
20
  *
21
  * @package MLA Term Links Example
22
+ * @version 1.02
23
  */
24
 
25
  /*
26
  Plugin Name: MLA Term Links Example
27
+ Plugin URI: http://davidlingren.com/
28
  Description: Adds "term_links:" Field-level Substitution Parameter prefix
29
  Author: David Lingren
30
+ Version: 1.02
31
+ Author URI: http://davidlingren.com/
32
 
33
  Copyright 2017 David Lingren
34
 
examples/plugins/mla-term-list-hooks-example.php CHANGED
@@ -6,16 +6,16 @@
6
  * shortcode parameter is present. The example documents ALL the filters available in the shortcode.
7
  *
8
  * @package MLA Term List Hooks Example
9
- * @version 1.00
10
  */
11
 
12
  /*
13
  Plugin Name: MLA Term List Hooks Example
14
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
15
  Description: Provides an example of hooking the filters provided by the [mla_term_list] shortcode
16
  Author: David Lingren
17
- Version: 1.00
18
- Author URI: http://fairtradejudaica.org/our-story/staff/
19
 
20
  Copyright 2013-2016 David Lingren
21
 
6
  * shortcode parameter is present. The example documents ALL the filters available in the shortcode.
7
  *
8
  * @package MLA Term List Hooks Example
9
+ * @version 1.01
10
  */
11
 
12
  /*
13
  Plugin Name: MLA Term List Hooks Example
14
+ Plugin URI: http://davidlingren.com/
15
  Description: Provides an example of hooking the filters provided by the [mla_term_list] shortcode
16
  Author: David Lingren
17
+ Version: 1.01
18
+ Author URI: http://davidlingren.com/
19
 
20
  Copyright 2013-2016 David Lingren
21
 
examples/plugins/mla-ui-elements-example.php CHANGED
@@ -65,16 +65,16 @@
65
  * https://wordpress.org/support/topic/shortcode-456/
66
  *
67
  * @package MLA UI Elements Example
68
- * @version 1.09
69
  */
70
 
71
  /*
72
  Plugin Name: MLA UI Elements Example
73
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
74
  Description: Provides shortcodes to improve user experience for [mla_term_list], [mla_tag_cloud] and [mla_gallery] shortcodes
75
  Author: David Lingren
76
- Version: 1.09
77
- Author URI: http://fairtradejudaica.org/our-story/staff/
78
 
79
  Copyright 2016-2018 David Lingren
80
 
65
  * https://wordpress.org/support/topic/shortcode-456/
66
  *
67
  * @package MLA UI Elements Example
68
+ * @version 1.10
69
  */
70
 
71
  /*
72
  Plugin Name: MLA UI Elements Example
73
+ Plugin URI: http://davidlingren.com/
74
  Description: Provides shortcodes to improve user experience for [mla_term_list], [mla_tag_cloud] and [mla_gallery] shortcodes
75
  Author: David Lingren
76
+ Version: 1.10
77
+ Author URI: http://davidlingren.com/
78
 
79
  Copyright 2016-2018 David Lingren
80
 
examples/plugins/mla-unattached-fixit.php CHANGED
@@ -5,16 +5,16 @@
5
  * Adds a Tools/Unattached Fixit submenu with buttons to perform the operations.
6
  *
7
  * @package Unattached Fixit
8
- * @version 1.01
9
  */
10
 
11
  /*
12
  Plugin Name: MLA Unattached Fixit
13
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
14
  Description: Removes Unattached items from the Media Library
15
  Author: David Lingren
16
- Version: 1.01
17
- Author URI: http://fairtradejudaica.org/our-story/staff/
18
 
19
  Copyright 2015 David Lingren
20
 
5
  * Adds a Tools/Unattached Fixit submenu with buttons to perform the operations.
6
  *
7
  * @package Unattached Fixit
8
+ * @version 1.02
9
  */
10
 
11
  /*
12
  Plugin Name: MLA Unattached Fixit
13
+ Plugin URI: http://davidlingren.com/
14
  Description: Removes Unattached items from the Media Library
15
  Author: David Lingren
16
+ Version: 1.02
17
+ Author URI: http://davidlingren.com/
18
 
19
  Copyright 2015 David Lingren
20
 
examples/plugins/mla-upload-bulk-edit-example.php CHANGED
@@ -11,16 +11,16 @@
11
  * https://wordpress.org/support/topic/counter-in-title-for-multiple-upload-images/
12
  *
13
  * @package MLA Upload Bulk Edit Example
14
- * @version 1.00
15
  */
16
 
17
  /*
18
  Plugin Name: MLA Upload Bulk Edit Example
19
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
20
  Description: Updates the Title/post_title value entered in the bulk edit area
21
  Author: David Lingren
22
- Version: 1.00
23
- Author URI: http://fairtradejudaica.org/our-story/staff/
24
 
25
  Copyright 2014 - 2015 David Lingren
26
 
11
  * https://wordpress.org/support/topic/counter-in-title-for-multiple-upload-images/
12
  *
13
  * @package MLA Upload Bulk Edit Example
14
+ * @version 1.01
15
  */
16
 
17
  /*
18
  Plugin Name: MLA Upload Bulk Edit Example
19
+ Plugin URI: http://davidlingren.com/
20
  Description: Updates the Title/post_title value entered in the bulk edit area
21
  Author: David Lingren
22
+ Version: 1.01
23
+ Author URI: http://davidlingren.com/
24
 
25
  Copyright 2014 - 2015 David Lingren
26
 
examples/plugins/mla-uploaded-on-example.php CHANGED
@@ -13,16 +13,16 @@
13
  * https://wordpress.org/support/topic/sorting-a-gallery-once-again/
14
  *
15
  * @package MLA Uploaded on Example
16
- * @version 1.00
17
  */
18
 
19
  /*
20
  Plugin Name: MLA Uploaded on Example
21
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
22
  Description: Reformats Media/Assistant column display for Uploaded on and Modified dates
23
  Author: David Lingren
24
- Version: 1.00
25
- Author URI: http://fairtradejudaica.org/our-story/staff/
26
 
27
  Copyright 2018 David Lingren
28
 
13
  * https://wordpress.org/support/topic/sorting-a-gallery-once-again/
14
  *
15
  * @package MLA Uploaded on Example
16
+ * @version 1.01
17
  */
18
 
19
  /*
20
  Plugin Name: MLA Uploaded on Example
21
+ Plugin URI: http://davidlingren.com/
22
  Description: Reformats Media/Assistant column display for Uploaded on and Modified dates
23
  Author: David Lingren
24
+ Version: 1.01
25
+ Author URI: http://davidlingren.com/
26
 
27
  Copyright 2018 David Lingren
28
 
examples/plugins/mla-usp-novo-map-example/admin-settings-page.tpl ADDED
@@ -0,0 +1,360 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!-- template="page" -->
2
+ <a name="backtotop"></a>
3
+ &nbsp;
4
+ <div class="wrap">
5
+ <h1 class="wp-heading-inline">MLA USP Novo-Map Example [+version+] Settings</h1>
6
+ [+messages+]
7
+ [+tablist+]
8
+ [+tab_content+]
9
+ </div><!-- wrap -->
10
+
11
+ <!-- template="tablist" -->
12
+ <h2 class="nav-tab-wrapper">
13
+ [+tablist+]
14
+ </h2>
15
+ <!-- template="tablist-item" -->
16
+ <a data-tab-id="[+data-tab-id+]" class="nav-tab [+nav-tab-active+]" href="?page=[+settings-page+]&amp;mla_tab=[+data-tab-id+]">[+title+]</a>
17
+
18
+ <!-- template="messages" -->
19
+ <div class="[+mla_messages_class+]">
20
+ <p>
21
+ [+messages+]
22
+ </p>
23
+ [+dismiss_button+]
24
+ </div>
25
+
26
+ <!-- template="page-level-options" -->
27
+ <tr valign="top">
28
+ <td class="textright">
29
+ <input name="mla_usp_novo_map_options[process_usp_posts]" id="mla_usp_novo_map_process_usp_posts" type="checkbox" [+process_usp_posts_checked+] value="1" />
30
+ </td>
31
+ <td>
32
+ &nbsp;<strong>Process User Submitted Posts</strong>
33
+ <div class="mla-settings-help">&nbsp;&nbsp;Check this option to process the Content Templates, Term Assignments and Featured Images for User Submitted Posts.</div>
34
+ </td>
35
+ </tr>
36
+ <tr valign="top">
37
+ <td class="textright">
38
+ <input name="mla_usp_novo_map_options[assign_usp_categories]" id="mla_usp_novo_map_assign_usp_categories" type="checkbox" [+assign_usp_categories_checked+] value="1" />
39
+ </td>
40
+ <td>
41
+ &nbsp;<strong>Assign USP Post Categories</strong>
42
+ <div class="mla-settings-help">&nbsp;&nbsp;Check this option to assign categories to the USP Post.</div>
43
+ </td>
44
+ </tr>
45
+ <tr valign="top">
46
+ <td class="textright">
47
+ <strong>USP Post Category Slug(s)</strong>
48
+ </td>
49
+ <td>
50
+ <textarea rows="[+usp_categories_rows+]" cols="[+usp_categories_cols+]" name="mla_usp_novo_map_options[usp_category_slugs]" id="mla_usp_novo_map_usp_category_slugs">[+usp_category_slugs+]</textarea>
51
+ <div class="mla-settings-help">&nbsp;&nbsp;Enter one or more Category <strong>slug</strong> values, separated by commas.</div>
52
+ </td>
53
+ </tr>
54
+ <tr valign="top">
55
+ <td class="textright">
56
+ <input name="mla_usp_novo_map_options[assign_usp_tags]" id="mla_usp_novo_map_assign_usp_tags" type="checkbox" [+assign_usp_tags_checked+] value="1" />
57
+ </td>
58
+ <td>
59
+ &nbsp;<strong>Assign USP Post Tags</strong>
60
+ <div class="mla-settings-help">&nbsp;&nbsp;Check this option to assign tags to the USP Post.</div>
61
+ </td>
62
+ </tr>
63
+ <tr valign="top">
64
+ <td class="textright">
65
+ <strong>USP Post Tag Slug(s)</strong>
66
+ </td>
67
+ <td>
68
+ <textarea rows="[+usp_tags_rows+]" cols="[+usp_tags_cols+]" name="mla_usp_novo_map_options[usp_tag_slugs]" id="mla_usp_novo_map_usp_tag_slugs">[+usp_tag_slugs+]</textarea>
69
+ <div class="mla-settings-help">&nbsp;&nbsp;Enter one or more Post Tag <strong>slug</strong> values, separated by commas.</div>
70
+ </td>
71
+ </tr>
72
+ <tr valign="top">
73
+ <td class="textright">
74
+ <input name="mla_usp_novo_map_options[create_usp_title]" id="mla_usp_novo_map_create_usp_title" type="checkbox" [+create_usp_title_checked+] value="1" />
75
+ </td>
76
+ <td>
77
+ &nbsp;<strong>Populate the USP Post Title</strong>
78
+ <div class="mla-settings-help">&nbsp;&nbsp;Check this option to replace the Title value of the USP Post.</div>
79
+ </td>
80
+ </tr>
81
+ <tr valign="top">
82
+ <td class="textright">
83
+ <strong>USP Post Title Template</strong>
84
+ </td>
85
+ <td>
86
+ <textarea rows="[+usp_title_rows+]" cols="[+usp_title_cols+]" name="mla_usp_novo_map_options[usp_title_template]" id="mla_usp_novo_map_title_template">[+usp_title_template+]</textarea>
87
+ <div class="mla-settings-help">&nbsp;&nbsp;Enter the Content Template for the Post Title (without the enclosing [+template: ... +] delimiters.</div>
88
+ </td>
89
+ </tr>
90
+ <tr valign="top">
91
+ <td class="textright">
92
+ <input name="mla_usp_novo_map_options[create_usp_excerpt]" id="mla_usp_novo_map_create_usp_excerpt" type="checkbox" [+create_usp_excerpt_checked+] value="1" />
93
+ </td>
94
+ <td>
95
+ &nbsp;<strong>Populate the USP Post Excerpt</strong>
96
+ <div class="mla-settings-help">&nbsp;&nbsp;Check this option to replace the Excerpt value of the USP Post.</div>
97
+ </td>
98
+ </tr>
99
+ <tr valign="top">
100
+ <td class="textright">
101
+ <strong>USP Post Excerpt Template</strong>
102
+ </td>
103
+ <td>
104
+ <textarea rows="[+usp_excerpt_rows+]" cols="[+usp_excerpt_cols+]" name="mla_usp_novo_map_options[usp_excerpt_template]" id="mla_usp_novo_map_usp_excerpt_template">[+usp_excerpt_template+]</textarea>
105
+ <div class="mla-settings-help">&nbsp;&nbsp;Enter the Content Template for the Post Excerpt (without the enclosing [+template: ... +] delimiters.</div>
106
+ </td>
107
+ </tr>
108
+ <tr valign="top">
109
+ <td class="textright">
110
+ <input name="mla_usp_novo_map_options[create_usp_content]" id="mla_usp_novo_map_create_usp_content" type="checkbox" [+create_usp_content_checked+] value="1" />
111
+ </td>
112
+ <td>
113
+ &nbsp;<strong>Populate the USP Post Content</strong>
114
+ <div class="mla-settings-help">&nbsp;&nbsp;Check this option to replace the Content value of the USP Post.</div>
115
+ </td>
116
+ </tr>
117
+ <tr valign="top">
118
+ <td class="textright">
119
+ <strong>USP Post Content Template</strong>
120
+ </td>
121
+ <td>
122
+ <textarea rows="[+usp_content_rows+]" cols="[+usp_content_cols+]" name="mla_usp_novo_map_options[usp_content_template]" id="mla_usp_novo_map_usp_content_template">[+usp_content_template+]</textarea>
123
+ <div class="mla-settings-help">&nbsp;&nbsp;Enter the Content Template for the Post Content (without the enclosing [+template: ... +] delimiters.</div>
124
+ </td>
125
+ </tr>
126
+ <tr valign="top">
127
+ <td class="textright">
128
+ <input name="mla_usp_novo_map_options[create_novo_map_marker]" id="mla_usp_novo_map_create_novo_map_marker" type="checkbox" [+create_novo_map_marker_checked+] value="1" />
129
+ </td>
130
+ <td>
131
+ &nbsp;<strong>Create Novo Map Marker</strong>
132
+ <div class="mla-settings-help">&nbsp;&nbsp;Check this option to automatically create the Novo Map marker.</div>
133
+ </td>
134
+ </tr>
135
+ <tr valign="top">
136
+ <td class="textright">
137
+ <strong>Novo Map Infobox Template</strong>
138
+ </td>
139
+ <td>
140
+ <textarea rows="[+novo_map_infobox_rows+]" cols="[+novo_map_infobox_cols+]" name="mla_usp_novo_map_options[novo_map_infobox_template]" id="mla_usp_novo_map_novo_map_infobox_template">[+novo_map_infobox_template+]</textarea>
141
+ <div class="mla-settings-help">&nbsp;&nbsp;Enter the Content Template for the Novo Map Infobox (without the enclosing [+template: ... +] delimiters.</div>
142
+ </td>
143
+ </tr>
144
+ <tr valign="top">
145
+ <td class="textright">
146
+ <strong>Select a marker image</strong>
147
+ </td>
148
+ <td>
149
+ <textarea rows="[+usp_marker_rows+]" cols="[+usp_marker_cols+]" name="mla_usp_novo_map_options[usp_marker_index]" id="mla_usp_novo_map_marker_index">[+usp_marker_index+]</textarea>
150
+ <div class="mla-settings-help">&nbsp;&nbsp;Enter the number (1 - 9) of the default marker image.</div>
151
+ </td>
152
+ </tr>
153
+
154
+ <!-- template="general-tab" -->
155
+ <style type='text/css'>
156
+ .mla-settings-help {
157
+ font-size: 8pt;
158
+ padding-bottom: 5px
159
+ }
160
+
161
+ .mla-page-level-options-form {
162
+ margin-left: 0px;
163
+ margin-top: 10px;
164
+ padding-bottom: 10px;
165
+ border-bottom:thin solid #888888;
166
+ }
167
+
168
+ span.submit.mla-settings-submit,
169
+ p.submit.mla-settings-submit {
170
+ padding-bottom: 0px
171
+ }
172
+ </style>
173
+ <h2>Plugin Options</h2>
174
+ <p>In this tab you can activate the processing of User Submitted Posts and decide which elements of the new posts will be populated from information in the Featured Image uploaded to the post.</p>
175
+ <p>You can find more information about using the features of this plugin in the Documentation tab on this screen.</p>
176
+ <div class="mla-page-level-options-form">
177
+ <form action="[+form_url+]" method="post" class="mla-display-settings-page" id="mla-display-settings-path-mapping-tab">
178
+ <table class="optiontable">
179
+ <tbody>
180
+ [+options_list+]
181
+ </tbody>
182
+ </table>
183
+ <span class="submit mla-settings-submit">
184
+ <input name="mla-path-mapping-options-save" class="button-primary" id="mla-path-mapping-options-save" type="submit" value="Save Changes" />
185
+ </span>
186
+ [+_wpnonce+]
187
+ </form>
188
+ </div>
189
+
190
+ <!-- template="documentation-tab" -->
191
+ <style type='text/css'>
192
+ .mla-doc-toc-list {
193
+ list-style-position:inside;
194
+ list-style:disc;
195
+ line-height: 15px;
196
+ padding-left: 20px
197
+ }
198
+
199
+ .mla-doc-hook-label {
200
+ text-align: right;
201
+ padding: 0 1em 2em 0;
202
+ vertical-align: top;
203
+ font-weight:bold
204
+ }
205
+
206
+ .mla-doc-hook-definition {
207
+ vertical-align: top;
208
+ }
209
+
210
+ .mla-doc-table-label {
211
+ text-align: right;
212
+ padding-right: 10px;
213
+ vertical-align: top;
214
+ font-weight:bold
215
+ }
216
+
217
+ .mla-doc-table-sublabel {
218
+ padding-right: 10px;
219
+ vertical-align: top
220
+ }
221
+
222
+ .mla-doc-table-reverse {
223
+ text-align: right;
224
+ padding-right: 10px;
225
+ vertical-align:top
226
+ }
227
+
228
+ .mla-doc-table-definition {
229
+ vertical-align: top;
230
+ }
231
+
232
+ .mla-doc-bold-link {
233
+ font-size:14px;
234
+ font-weight:bold
235
+ }
236
+ </style>
237
+ <h2>Plugin Documentation. In this tab, jump to:</h2>
238
+ <div class="mla-display-settings-page" id="mla-display-settings-documentation-tab" style="width:700px">
239
+ <ul class="mla-doc-toc-list">
240
+ <li><a href="#introduction"><strong>Introduction</strong></a></li>
241
+ <li><a href="#process-usp"><strong>Process User Submitted Posts</strong></a></li>
242
+ <li><a href="#assign-categories"><strong>Assign USP Post Categories</strong></a></li>
243
+ <li><a href="#assign-tags"><strong>Assign USP Post Tags</strong></a></li>
244
+ <li><a href="#populate-title"><strong>Populate the USP Post Title</strong></a></li>
245
+ <li><a href="#populate-excerpt"><strong>Populate the USP Post Excerpt</strong></a></li>
246
+ <li><a href="#populate-content"><strong>Populate the USP Post Content</strong></a></li>
247
+ <li><a href="#generate-marker"><strong>Create Novo Map Marker</strong></a></li>
248
+ </ul>
249
+ <p>
250
+ &nbsp;
251
+ <a name="introduction"></a>
252
+ </p>
253
+ <p>
254
+ <a href="#backtotop">Go to Top</a>
255
+ </p>
256
+ <h3>Introduction</h3>
257
+ <p>
258
+ The current MLA version provides mapping rules to assign taxonomy terms to Media Library items from IPTC, EXIF and XMP metadata values embedded in the image files. For hierarchical taxonomies, the current version allows new terms to be added under a specified &ldquo;Parent&rdquo; term, but does not support more general mapping of terms within multiple levels.
259
+ </p>
260
+ <p>
261
+ The current version allows the specification of &ldquo;Delimiters&rdquo; (including a space character) to separate multiple terms within a metadata value. This example plugin adds a &ldquo;Path Delimiter&rdquo; that allows term parent and higher-level ancestor values to be specified, more precisely placing a term in the hierarchy. For example, a value such as &ldquo;/grand parent/parent/child&rdquo; denotes a specific term within a three-level hierarchy. In this example the delimiter at the start of the value means that &ldquo;grand parent&rdquo; must be a root term, i.e., it appears at the highest level and has no ancestors. This is an absolute path specification. A path such as &ldquo;parent/child&rdquo; is a relative path specification, starting wherever &ldquo;parent&rdquo; appears in the hierarchy.
262
+ <a name="process-usp"></a>
263
+ </p>
264
+ <p>
265
+ <a href="#backtotop">Go to Top</a>
266
+ </p>
267
+ <h3>Process User Submitted Posts</h3>
268
+ <p>
269
+ This is the "master on/off switch" for the plugin. When the box is unchecked the plugin does not perform any actions. When the box is checked the plugin will use hooks (actions and filters) provided by the User Submitted Posts plugin to populate the new post with information extracted from the Featured Image uploaded to the post. You can also generate a Novo Map "Marker" entry based on location information contained in the Featured Image.
270
+ <a name="assign-categories"></a>
271
+ </p>
272
+ <p>
273
+ <a href="#backtotop">Go to Top</a>
274
+ </p>
275
+ <h3>Assign USP Post Categories</h3>
276
+ <p>
277
+ You can assign terms in the WordPress Categories taxonomy be entering one or more <strong>slug</strong> values in the text box, separated by commas. Slug values can be found in the Posts/Categories admin submenu table. Any term values entered here will be appended to terms already assigned to the Post.
278
+ <a name="assign-tags"></a>
279
+ </p>
280
+ <p>
281
+ <a href="#backtotop">Go to Top</a>
282
+ </p>
283
+ <h3>Assign USP Post Tags</h3>
284
+ <p>
285
+ You can assign terms in the WordPress Tags taxonomy be entering one or more <strong>slug</strong> values in the text box, separated by commas. Slug values can be found in the Posts/Tags admin submenu table. Any term values entered here will be appended to terms already assigned to the Post.
286
+ <a name="populate-title"></a>
287
+ </p>
288
+ <p>
289
+ <a href="#backtotop">Go to Top</a>
290
+ </p>
291
+ <h3>Populate the USP Post Title</h3>
292
+ <p>
293
+ You can update the Title be entering a Content Template in the text box (without the <code>template:</code> prefix). You can access the existing Post values with the <code>usp:</code> prefix, e.g., <code>[+usp:post_title+]</code> to access the current Title value. See the "Content" section below for additional information.
294
+ <a name="populate-excerpt"></a>
295
+ </p>
296
+ <p>
297
+ <a href="#backtotop">Go to Top</a>
298
+ </p>
299
+ <h3>Populate the USP Post Excerpt</h3>
300
+ <p>
301
+ You can update the Excerpt by entering a Content Template in the text box (without the <code>template:</code> prefix). You can access the existing Post values with the <code>usp:</code> prefix, e.g., <code>[+usp:post_excerpt+]</code> to access the current Excerpt value. See the "Content" section below for additional information.
302
+ </p>
303
+ <a name="populate-content"></a>
304
+ </p>
305
+ <p>
306
+ <a href="#backtotop">Go to Top</a>
307
+ </p>
308
+ <h3>Populate the USP Post Content</h3>
309
+ <p>
310
+ <p>
311
+ You can update the Content by entering a Content Template in the text box (without the <code>template:</code> prefix). You can access the existing Post values with the <code>usp:</code> prefix, e.g., <code>[+usp:post_content+]</code> to access the current Content value. The <code>usp:</code> prefix gives you access to all of the Post's current values:
312
+ </p>
313
+ <ul class="mla-doc-toc-list">
314
+ <li>ID</li>
315
+ <li>post_author</li>
316
+ <li>post_date</li>
317
+ <li>post_date_gmt</li>
318
+ <li>post_content</li>
319
+ <li>post_title</li>
320
+ <li>post_excerpt</li>
321
+ <li>post_status</li>
322
+ <li>comment_status</li>
323
+ <li>ping_status</li>
324
+ <li>post_name</li>
325
+ <li>post_modified</li>
326
+ <li>post_modified_gmt</li>
327
+ <li>post_content_filtered</li>
328
+ <li>post_parent</li>
329
+ <li>guid</li>
330
+ <li>menu_order</li>
331
+ <li>post_mime_type</li>
332
+ <li>comment_count</li>
333
+ </ul>
334
+ <p>
335
+ You can access any of the "Field-level data sources" for the Post's Featured Image as well. A complete list can be found in the Settings/Media Library Assistant Documenttation tab.
336
+ </p>
337
+ <p>
338
+ You can access the terms assigned to the Post with the <code>usp_terms:</code> prefix, e.g., <code>[+usp_terms:post_tag+]</code> or <code>[+usp_terms:category+]</code> to access the current Tags or Categories.
339
+ <a name="generate-marker"></a>
340
+ </p>
341
+ <p>
342
+ <a href="#backtotop">Go to Top</a>
343
+ </p>
344
+ <h3>Create Novo Map Marker</h3>
345
+ <p>
346
+ Check this box to generate a Novo Map "Marker" entry based on location information contained in the Featured Image:
347
+ </p>
348
+ <ul class="mla-doc-toc-list">
349
+ <li>The "Title of the Marker" will be filled from the Title of the User Submitted Post.</li>
350
+ <li>The Latitude will be filled from the <code>[+exif:GPS.LatitudeSDD+]</code> value in the Featured Image, if present.</li>
351
+ <li>The Longitude will be filled from the <code>[+exif:GPS.LongitudeSDD+]</code> value in the Featured Image, if present.</li>
352
+ <li>The Text description of the Infobox will be filled from the Novo Map Infobox Template, applied to the Featured Image.</li>
353
+ </ul>
354
+ <p>
355
+ The marker will be generated and added to the Novo Map dtabase. You can update or delete the marker by editing the new post and scrolling down to the Novo Map infobox.
356
+ </p>
357
+ <p>
358
+ In the "Select a marker image" text box you can choose from the nine default marker images provided by Novo Map. The markers are numbered 1 to 9, from left to right when viewed in the "Select" popup window in the Novo Map metabox on the Edit Media screen. For example, the red bulls-eye is number 1, the green "guitar pick" is number two, and the "push pin" is number 8. Enter the number of the marker you want in the text box.
359
+ </p>
360
+ </div>
examples/plugins/mla-usp-novo-map-example/mla-usp-novo-map-example.php ADDED
@@ -0,0 +1,1238 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Fills posts created by the "User Submitted Posts" plugin with information for the "Novo Map" plugin
4
+ *
5
+ * Much more information is in the Settings/MLA USP Novo-Map Documentation tab.
6
+ *
7
+ * Created for by support topic "GPS field(s)"
8
+ * opened on 8/7/2018 by "jrpmedia".
9
+ * https://wordpress.org/support/topic/gps-fields/
10
+ *
11
+ * @package MLA USP Novo-Map Example
12
+ * @version 1.02
13
+ */
14
+
15
+ /*
16
+ Plugin Name: MLA USP Novo-Map Example
17
+ Plugin URI: http://davidlingren.com/
18
+ Description: Fills posts created by the "User Submitted Posts" plugin with information for the "Novo Map" plugin
19
+ Author: David Lingren
20
+ Version: 1.02
21
+ Author URI: http://davidlingren.com/
22
+
23
+ Copyright 2018 David Lingren
24
+
25
+ This program is free software; you can redistribute it and/or modify
26
+ it under the terms of the GNU General Public License as published by
27
+ the Free Software Foundation; either version 2 of the License, or
28
+ (at your option) any later version.
29
+
30
+ This program is distributed in the hope that it will be useful,
31
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
32
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
33
+ GNU General Public License for more details.
34
+
35
+ You can get a copy of the GNU General Public License by writing to the
36
+ Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110, USA
37
+ */
38
+
39
+ /**
40
+ * Class MLA USP Novo-Map Example hooks one of the filters provided by the IPTC/EXIF and Custom Field mapping features
41
+ *
42
+ * Call it anything you want, but give it an unlikely and hopefully unique name. Hiding everything
43
+ * else inside a class means this is the only name you have to worry about.
44
+ *
45
+ * @package MLA USP Novo-Map Example
46
+ * @since 1.00
47
+ */
48
+ class MLAUSPNovoMapExample {
49
+ /**
50
+ * Current version number
51
+ *
52
+ * @since 1.00
53
+ *
54
+ * @var string
55
+ */
56
+ const CURRENT_VERSION = '1.02';
57
+
58
+ /**
59
+ * Slug prefix for registering and enqueueing submenu pages, style sheets, scripts and settings
60
+ *
61
+ * @since 1.00
62
+ *
63
+ * @var string
64
+ */
65
+ const SLUG_PREFIX = 'mlauspnovomap';
66
+
67
+ /**
68
+ * Initialization function, similar to __construct()
69
+ *
70
+ * Installs filters and actions that handle the MLA hooks for uploading and mapping.
71
+ *
72
+ * @since 1.00
73
+ *
74
+ * @return void
75
+ */
76
+ public static function initialize() {
77
+ //error_log( __LINE__ . " MLAUSPNovoMapExample:initialize _REQUEST = " . var_export( $_REQUEST, true ), 0 );
78
+
79
+ // The admin_menu action is only useful in the admin section; other filters are for the "front-end" posts/pages.
80
+ if ( is_admin() ) {
81
+ // Add submenu page in the "Settings" section
82
+ add_action( 'admin_menu', 'MLAUSPNovoMapExample::admin_menu' );
83
+ return;
84
+ }
85
+
86
+ // We only care about USP submissions when the Process option is set
87
+ if ( isset( $_REQUEST['usp-nonce'] ) && self::_get_plugin_option('process_usp_posts') ) {
88
+ self::$usp_values['usp-nonce'] = $_REQUEST['usp-nonce'];
89
+ } else {
90
+ return;
91
+ }
92
+ //error_log( __LINE__ . " MLAUSPNovoMapExample:initialize _REQUEST = " . var_export( $_REQUEST, true ), 0 );
93
+
94
+ // user-submitted-posts.php
95
+ // function usp_checkForPublicSubmission() {
96
+ // do_action('usp_submit_success', $redirect);
97
+ // do_action('usp_submit_error', $redirect);
98
+
99
+ // function usp_attach_images($post_id, $newPost, $files, $file_count) {
100
+ // do_action('usp_files_before', $files);
101
+ // $append = apply_filters('usp_filename_append', $append);
102
+ // $upload_dir = apply_filters('usp_upload_directory', wp_upload_dir());
103
+ // $params = apply_filters('wp_handle_upload', array('file' => $file, 'url' => $guid, 'type' => $file_type));
104
+ // $attachment = apply_filters('usp_insert_attachment_data', $attachment);
105
+ // do_action('usp_files_after', $attach_ids);
106
+ add_action( 'usp_files_before', 'MLAUSPNovoMapExample::usp_files_before', 10, 1 );
107
+ add_filter( 'usp_insert_attachment_data', 'MLAUSPNovoMapExample::usp_insert_attachment_data', 10, 1 );
108
+ add_action( 'usp_files_after', 'MLAUSPNovoMapExample::usp_files_after', 10, 1 );
109
+
110
+ // function usp_prepare_post($title, $content, $author_id, $author, $ip) {
111
+ // $postData['post_status'] = apply_filters('usp_post_status', 'pending');
112
+ // $postData['post_type'] = apply_filters('usp_post_type', $postType);
113
+ // $postData['post_status'] = apply_filters('usp_post_publish', 'publish');
114
+ // $postData['post_status'] = apply_filters('usp_post_moderate', 'pending');
115
+ // $postData['post_status'] = apply_filters('usp_post_draft', 'draft');
116
+ // $posts = get_posts(array('post_status' => 'publish', 'meta_key' => 'user_submit_name', 'meta_value' => $author));
117
+ // if ($counter >= $numberApproved) $postData['post_status'] = apply_filters('usp_post_approve', 'publish
118
+ // return apply_filters('usp_post_data', $postData);
119
+ add_filter( 'usp_post_data', 'MLAUSPNovoMapExample::usp_post_data', 10, 1 );
120
+
121
+ // function usp_createPublicSubmission($title, $files, $ip, $author, $url, $email, $tags, $captcha, $verify, $content, $category, $custom, $checkbox) {
122
+ // do_action('usp_insert_before', $postData);
123
+ // do_action('usp_insert_after', $newPost);
124
+ // return apply_filters('usp_new_post', $newPost);
125
+ add_action( 'usp_insert_before', 'MLAUSPNovoMapExample::usp_insert_before', 10, 1 );
126
+ add_action( 'usp_insert_after', 'MLAUSPNovoMapExample::usp_insert_after', 10, 1 );
127
+ add_filter( 'usp_new_post', 'MLAUSPNovoMapExample::usp_new_post', 10, 1 );
128
+
129
+ // Supplies substitution parameter values for the "usp:" prefix
130
+ add_filter( 'mla_expand_custom_prefix', 'MLAUSPNovoMapExample::mla_expand_custom_prefix', 10, 8 );
131
+
132
+ }
133
+
134
+ /**
135
+ * Add submenu page in the "Settings" section
136
+ *
137
+ * @since 1.00
138
+ */
139
+ public static function admin_menu( ) {
140
+ /*
141
+ * We need a tab-specific page ID to manage the screen options on the General tab.
142
+ * Use the URL suffix, if present. If the URL doesn't have a tab suffix, use '-general'.
143
+ * This hack is required to pass the WordPress "referer" validation.
144
+ */
145
+ if ( isset( $_REQUEST['page'] ) && is_string( $_REQUEST['page'] ) && ( self::SLUG_PREFIX . '-settings-' == substr( $_REQUEST['page'], 0, strlen( self::SLUG_PREFIX . '-settings-' ) ) ) ) {
146
+ $tab = substr( $_REQUEST['page'], strlen( self::SLUG_PREFIX . '-settings-' ) );
147
+ } else {
148
+ $tab = 'general';
149
+ }
150
+
151
+ $tab = self::_get_options_tablist( $tab ) ? '-' . $tab : '-general';
152
+ add_submenu_page( 'options-general.php', 'MLA USP Novo-Map Example', 'MLA USP Novo-Map', 'manage_options', self::SLUG_PREFIX . '-settings' . $tab, 'MLAUSPNovoMapExample::add_submenu_page' );
153
+ add_filter( 'plugin_action_links', 'MLAUSPNovoMapExample::plugin_action_links', 10, 2 );
154
+ }
155
+
156
+ /**
157
+ * Add the "Settings" and "Guide" links to the Plugins section entry
158
+ *
159
+ * @since 1.00
160
+ *
161
+ * @param array array of links for the Plugin, e.g., "Activate"
162
+ * @param string Directory and name of the plugin Index file
163
+ *
164
+ * @return array Updated array of links for the Plugin
165
+ */
166
+ public static function plugin_action_links( $links, $file ) {
167
+ if ( $file == 'mla-usp-novo-map-example/mla-usp-novo-map-example.php' ) {
168
+ $settings_link = sprintf( '<a href="%s">%s</a>', admin_url( 'options-general.php?page=' . self::SLUG_PREFIX . '-settings-documentation&mla_tab=documentation' ), 'Guide' );
169
+ array_unshift( $links, $settings_link );
170
+ $settings_link = sprintf( '<a href="%s">%s</a>', admin_url( 'options-general.php?page=' . self::SLUG_PREFIX . '-settings-general' ), 'Settings' );
171
+ array_unshift( $links, $settings_link );
172
+ }
173
+
174
+ return $links;
175
+ }
176
+
177
+ /**
178
+ * Render (echo) the "MLA USP Novo-Map" submenu in the Settings section
179
+ *
180
+ * @since 1.00
181
+ *
182
+ * @return void Echoes HTML markup for the submenu page
183
+ */
184
+ public static function add_submenu_page() {
185
+ //error_log( __LINE__ . " MLAUSPNovoMapExample:add_submenu_page _REQUEST = " . var_export( $_REQUEST, true ), 0 );
186
+
187
+ if ( !current_user_can( 'manage_options' ) ) {
188
+ echo "<h2>MLA USP Novo-Map Example - Error</h2>\n";
189
+ wp_die( 'You do not have permission to manage plugin settings.' );
190
+ }
191
+
192
+ // Load template array and initialize page-level values.
193
+ self::$page_template_array = MLACore::mla_load_template( dirname( __FILE__ ) . '/admin-settings-page.tpl', 'path' );
194
+ $current_tab_slug = isset( $_REQUEST['mla_tab'] ) ? $_REQUEST['mla_tab']: 'general';
195
+ $current_tab = self::_get_options_tablist( $current_tab_slug );
196
+ $page_values = array(
197
+ 'version' => 'v' . self::CURRENT_VERSION,
198
+ 'messages' => '',
199
+ 'tablist' => self::_compose_settings_tabs( $current_tab_slug ),
200
+ 'tab_content' => '',
201
+ );
202
+
203
+ // Compose tab content
204
+ if ( $current_tab ) {
205
+ if ( isset( $current_tab['render'] ) ) {
206
+ $handler = $current_tab['render'];
207
+ $page_content = call_user_func( $handler );
208
+ } else {
209
+ $page_content = array( 'message' => 'ERROR: Cannot render content tab', 'body' => '' );
210
+ }
211
+ } else {
212
+ $page_content = array( 'message' => 'ERROR: Unknown content tab', 'body' => '' );
213
+ }
214
+
215
+ if ( ! empty( $page_content['message'] ) ) {
216
+ if ( false !== strpos( $page_content['message'], 'ERROR' ) ) {
217
+ $messages_class = 'updated error';
218
+ $dismiss_button = '';
219
+ } else {
220
+ $messages_class = 'updated notice is-dismissible';
221
+ $dismiss_button = " <button class=\"notice-dismiss\" type=\"button\"><span class=\"screen-reader-text\">[+dismiss_text+].</span></button>\n";
222
+ }
223
+
224
+ $page_values['messages'] = MLAData::mla_parse_template( self::$page_template_array['messages'], array(
225
+ 'mla_messages_class' => $messages_class ,
226
+ 'messages' => $page_content['message'],
227
+ 'dismiss_button' => $dismiss_button,
228
+ 'dismiss_text' => 'Dismiss this notice',
229
+ ) );
230
+ }
231
+
232
+ $page_values['tab_content'] = $page_content['body'];
233
+ echo MLAData::mla_parse_template( self::$page_template_array['page'], $page_values );
234
+ }
235
+
236
+ /**
237
+ * Template file for the Settings page(s) and parts
238
+ *
239
+ * This array contains all of the template parts for the Settings page(s). The array is built once
240
+ * each page load and cached for subsequent use.
241
+ *
242
+ * @since 1.00
243
+ *
244
+ * @var array
245
+ */
246
+ public static $page_template_array = NULL;
247
+
248
+ /**
249
+ * Definitions for Settings page tab ids, titles and handlers
250
+ * Each tab is defined by an array with the following elements:
251
+ *
252
+ * array key => HTML id/name attribute and option database key (OMIT MLA_OPTION_PREFIX)
253
+ *
254
+ * title => tab label / heading text
255
+ * render => rendering function for tab messages and content. Usage:
256
+ * $tab_content = ['render']( );
257
+ *
258
+ * @since 1.00
259
+ *
260
+ * @var array
261
+ */
262
+ private static $mla_tablist = array(
263
+ 'general' => array( 'title' => 'General', 'render' => array( 'MLAUSPNovoMapExample', '_compose_general_tab' ) ),
264
+ 'documentation' => array( 'title' => 'Documentation', 'render' => array( 'MLAUSPNovoMapExample', '_compose_documentation_tab' ) ),
265
+ );
266
+
267
+ /**
268
+ * Retrieve the list of options tabs or a specific tab value
269
+ *
270
+ * @since 1.00
271
+ *
272
+ * @param string Tab slug, to retrieve a single entry
273
+ *
274
+ * @return array|false The entire tablist ( $tab = NULL ), a single tab entry or false if not found/not allowed
275
+ */
276
+ private static function _get_options_tablist( $tab = NULL ) {
277
+ if ( is_string( $tab ) ) {
278
+ if ( isset( self::$mla_tablist[ $tab ] ) ) {
279
+ $results = self::$mla_tablist[ $tab ];
280
+ } else {
281
+ $results = false;
282
+ }
283
+ } else {
284
+ $results = self::$mla_tablist;
285
+ }
286
+
287
+ return $results;
288
+ }
289
+
290
+ /**
291
+ * Compose the navigation tabs for the Settings subpage
292
+ *
293
+ * @since 1.00
294
+ * @uses $page_template_array contains tablist and tablist-item templates
295
+ *
296
+ * @param string Optional data-tab-id value for the active tab, default 'general'
297
+ *
298
+ * @return string HTML markup for the Settings subpage navigation tabs
299
+ */
300
+ private static function _compose_settings_tabs( $active_tab = 'general' ) {
301
+ $tablist_item = self::$page_template_array['tablist-item'];
302
+ $tabs = '';
303
+ foreach ( self::_get_options_tablist() as $key => $item ) {
304
+ $item_values = array(
305
+ 'data-tab-id' => $key,
306
+ 'nav-tab-active' => ( $active_tab == $key ) ? 'nav-tab-active' : '',
307
+ 'settings-page' => self::SLUG_PREFIX . '-settings-' . $key,
308
+ 'title' => $item['title']
309
+ );
310
+
311
+ $tabs .= MLAData::mla_parse_template( $tablist_item, $item_values );
312
+ } // foreach $item
313
+
314
+ $tablist_values = array( 'tablist' => $tabs );
315
+ return MLAData::mla_parse_template( self::$page_template_array['tablist'], $tablist_values );
316
+ }
317
+
318
+ /**
319
+ * Compose the General tab content for the Settings subpage
320
+ *
321
+ * @since 1.00
322
+ * @uses $page_template_array contains tab content template(s)
323
+ *
324
+ * @return array 'message' => status/error messages, 'body' => tab content
325
+ */
326
+ private static function _compose_general_tab( ) {
327
+ $page_content = array( 'message' => '', 'body' => '' );
328
+
329
+ // Initialize page messages and content, check for page-level Save Changes
330
+ if ( !empty( $_REQUEST['mla-path-mapping-options-save'] ) ) {
331
+ check_admin_referer( MLACore::MLA_ADMIN_NONCE_ACTION, MLACore::MLA_ADMIN_NONCE_NAME );
332
+ $page_content = self::_save_setting_changes( );
333
+ }
334
+
335
+ if ( !empty( $page_content['body'] ) ) {
336
+ return $page_content;
337
+ }
338
+
339
+ // Display the General tab
340
+ $_SERVER['REQUEST_URI'] = remove_query_arg( array(
341
+ 'mla_usp_novo_map_options',
342
+ '_wpnonce',
343
+ '_wp_http_referer',
344
+ 'mla-path-mapping-options-save',
345
+ ), $_SERVER['REQUEST_URI'] );
346
+
347
+ // Compose page-level options
348
+ $usp_category_slugs = self::_get_plugin_option('usp_category_slugs');
349
+ if ( empty( $usp_category_slugs ) ) {
350
+ $usp_category_slugs = self::$_default_settings['usp_category_slugs'];
351
+ }
352
+
353
+ $usp_tag_slugs = self::_get_plugin_option('usp_tag_slugs');
354
+ if ( empty( $usp_tag_slugs ) ) {
355
+ $usp_tag_slugs = self::$_default_settings['usp_tag_slugs'];
356
+ }
357
+
358
+ $usp_title_template = self::_get_plugin_option('usp_title_template');
359
+ if ( empty( $usp_title_template ) ) {
360
+ $usp_title_template = self::$_default_settings['usp_title_template'];
361
+ }
362
+
363
+ $usp_excerpt_template = self::_get_plugin_option('usp_excerpt_template');
364
+ if ( empty( $usp_excerpt_template ) ) {
365
+ $usp_excerpt_template = self::$_default_settings['usp_excerpt_template'];
366
+ }
367
+
368
+ $usp_content_template = self::_get_plugin_option('usp_content_template');
369
+ if ( empty( $usp_content_template ) ) {
370
+ $usp_content_template = self::$_default_settings['usp_content_template'];
371
+ }
372
+
373
+ $infobox_template = self::_get_plugin_option('novo_map_infobox_template');
374
+ if ( empty( $infobox_template ) ) {
375
+ $infobox_template = self::$_default_settings['novo_map_infobox_template'];
376
+ }
377
+
378
+ $usp_marker_index = self::_get_plugin_option('usp_marker_index');
379
+ if ( empty( $usp_marker_index ) ) {
380
+ $usp_marker_index = self::$_default_settings['usp_marker_index'];
381
+ }
382
+
383
+ $page_values = array(
384
+ 'process_usp_posts_checked' => self::_get_plugin_option('process_usp_posts') ? 'checked="checked" ' : '',
385
+
386
+ 'assign_usp_categories_checked' => self::_get_plugin_option('assign_usp_categories') ? 'checked="checked" ' : '',
387
+ 'usp_categories_rows' => '1',
388
+ 'usp_categories_cols' => '80',
389
+ 'usp_category_slugs' => $usp_category_slugs,
390
+
391
+ 'assign_usp_tags_checked' => self::_get_plugin_option('assign_usp_tags') ? 'checked="checked" ' : '',
392
+ 'usp_tags_rows' => '1',
393
+ 'usp_tags_cols' => '80',
394
+ 'usp_tag_slugs' => $usp_tag_slugs,
395
+
396
+ 'create_usp_title_checked' => self::_get_plugin_option('create_usp_title') ? 'checked="checked" ' : '',
397
+ 'usp_title_rows' => '1',
398
+ 'usp_title_cols' => '80',
399
+ 'usp_title_template' => $usp_title_template,
400
+
401
+ 'create_usp_excerpt_checked' => self::_get_plugin_option('create_usp_excerpt') ? 'checked="checked" ' : '',
402
+ 'usp_excerpt_rows' => '3',
403
+ 'usp_excerpt_cols' => '80',
404
+ 'usp_excerpt_template' => $usp_excerpt_template,
405
+
406
+ 'create_usp_content_checked' => self::_get_plugin_option('create_usp_content') ? 'checked="checked" ' : '',
407
+ 'usp_content_rows' => '5',
408
+ 'usp_content_cols' => '80',
409
+ 'usp_content_template' => $usp_content_template,
410
+
411
+ 'create_novo_map_marker_checked' => self::_get_plugin_option('create_novo_map_marker') ? 'checked="checked" ' : '',
412
+ 'novo_map_infobox_rows' => '5',
413
+ 'novo_map_infobox_cols' => '80',
414
+ 'novo_map_infobox_template' => $infobox_template,
415
+
416
+ 'usp_marker_rows' => '1',
417
+ 'usp_marker_cols' => '1',
418
+ 'usp_marker_index' => $usp_marker_index,
419
+ );
420
+ $options_list = MLAData::mla_parse_template( self::$page_template_array['page-level-options'], $page_values );
421
+
422
+ $form_arguments = '?page=' . self::SLUG_PREFIX . '-settings-general&mla_tab=general';
423
+
424
+ $page_values = array(
425
+ 'form_url' => admin_url( 'options-general.php' ) . $form_arguments,
426
+ '_wpnonce' => wp_nonce_field( MLACore::MLA_ADMIN_NONCE_ACTION, MLACore::MLA_ADMIN_NONCE_NAME, true, false ),
427
+ 'options_list' => $options_list,
428
+ );
429
+
430
+ $page_content['body'] .= MLAData::mla_parse_template( self::$page_template_array['general-tab'], $page_values );
431
+
432
+ return $page_content;
433
+ }
434
+
435
+ /**
436
+ * Compose the General tab content for the Settings subpage
437
+ *
438
+ * @since 1.00
439
+ * @uses $page_template_array contains tab content template(s)
440
+ *
441
+ * @return array 'message' => status/error messages, 'body' => tab content
442
+ */
443
+ private static function _compose_documentation_tab( ) {
444
+ $page_content = array( 'message' => '', 'body' => '' );
445
+ $page_values = array(
446
+ );
447
+
448
+ $page_content['body'] = MLAData::mla_parse_template( self::$page_template_array['documentation-tab'], $page_values );
449
+ return $page_content;
450
+ }
451
+
452
+ /**
453
+ * Save settings as a WordPress wp_options entry
454
+ *
455
+ * @since 1.00
456
+ *
457
+ * @return array 'message' => status/error messages, 'body' => tab content
458
+ */
459
+ private static function _save_setting_changes() {
460
+ $page_content = array( 'message' => 'Settings unchanged.', 'body' => '' );
461
+
462
+ $changed = self::_update_plugin_option( 'process_usp_posts', isset( $_REQUEST[ 'mla_usp_novo_map_options' ]['process_usp_posts'] ) );
463
+
464
+ $changed |= self::_update_plugin_option( 'assign_usp_categories', isset( $_REQUEST[ 'mla_usp_novo_map_options' ]['assign_usp_categories'] ) );
465
+ $changed |= self::_update_plugin_option( 'usp_category_slugs', stripslashes( $_REQUEST[ 'mla_usp_novo_map_options' ]['usp_category_slugs'] ) );
466
+
467
+ $changed |= self::_update_plugin_option( 'assign_usp_tags', isset( $_REQUEST[ 'mla_usp_novo_map_options' ]['assign_usp_tags'] ) );
468
+ $changed |= self::_update_plugin_option( 'usp_tag_slugs', stripslashes( $_REQUEST[ 'mla_usp_novo_map_options' ]['usp_tag_slugs'] ) );
469
+
470
+ $changed |= self::_update_plugin_option( 'create_usp_title', isset( $_REQUEST[ 'mla_usp_novo_map_options' ]['create_usp_title'] ) );
471
+ $changed |= self::_update_plugin_option( 'usp_title_template', stripslashes( $_REQUEST[ 'mla_usp_novo_map_options' ]['usp_title_template'] ) );
472
+
473
+ $changed |= self::_update_plugin_option( 'create_usp_excerpt', isset( $_REQUEST[ 'mla_usp_novo_map_options' ]['create_usp_excerpt'] ) );
474
+ $changed |= self::_update_plugin_option( 'usp_excerpt_template', stripslashes( $_REQUEST[ 'mla_usp_novo_map_options' ]['usp_excerpt_template'] ) );
475
+
476
+ $changed |= self::_update_plugin_option( 'create_usp_content', isset( $_REQUEST[ 'mla_usp_novo_map_options' ]['create_usp_content'] ) );
477
+ $changed |= self::_update_plugin_option( 'usp_content_template', stripslashes( $_REQUEST[ 'mla_usp_novo_map_options' ]['usp_content_template'] ) );
478
+
479
+ $changed |= self::_update_plugin_option( 'create_novo_map_marker', isset( $_REQUEST[ 'mla_usp_novo_map_options' ]['create_novo_map_marker'] ) );
480
+ $changed |= self::_update_plugin_option( 'novo_map_infobox_template', stripslashes( $_REQUEST[ 'mla_usp_novo_map_options' ]['novo_map_infobox_template'] ) );
481
+
482
+ $usp_marker_index = absint( $_REQUEST[ 'mla_usp_novo_map_options' ]['usp_marker_index'] );
483
+ if ( 9 < $usp_marker_index || 1 > $usp_marker_index ) {
484
+ $usp_marker_index = self::$_default_settings['usp_marker_index'];
485
+ }
486
+ $changed |= self::_update_plugin_option( 'usp_marker_index', $usp_marker_index );
487
+
488
+ if ( $changed ) {
489
+ // No reason to save defaults in the database
490
+ if ( self::$_settings === self::$_default_settings ) {
491
+ delete_option( self::SLUG_PREFIX . '-settings' );
492
+ } else {
493
+ $changed = update_option( self::SLUG_PREFIX . '-settings', self::$_settings, false );
494
+ }
495
+
496
+ if ( $changed ) {
497
+ $page_content['message'] = "Settings have been updated.";
498
+ } else {
499
+ $page_content['message'] = "Settings updated failed.";
500
+ }
501
+ }
502
+
503
+ return $page_content;
504
+ } // _save_setting_changes
505
+
506
+ /**
507
+ * Assemble the in-memory representation of the custom feed settings
508
+ *
509
+ * @since 1.00
510
+ *
511
+ * @param boolean $force_refresh Optional. Force a reload of rules. Default false.
512
+ * @return boolean Success (true) or failure (false) of the operation
513
+ */
514
+ private static function _get_plugin_option_settings( $force_refresh = false ) {
515
+ if ( false == $force_refresh && NULL != self::$_settings ) {
516
+ return true;
517
+ }
518
+
519
+ // Update the plugin options from the wp_options table or set defaults
520
+ self::$_settings = get_option( self::SLUG_PREFIX . '-settings' );
521
+ if ( !is_array( self::$_settings ) ) {
522
+ self::$_settings = self::$_default_settings;
523
+ }
524
+
525
+ return true;
526
+ }
527
+
528
+ /**
529
+ * In-memory representation of the option settings
530
+ *
531
+ * @since 1.00
532
+ *
533
+ * @var array $_settings {
534
+ * @type boolean $process_usp_posts Process the Featured Images for User Submitted Posts
535
+ *
536
+ * @type boolean $assign_usp_categories Assign USP Post Category terms
537
+ * @type string $usp_category_slugs Slug(s) for the USP Post Category term(s)
538
+ *
539
+ * @type boolean $assign_usp_tags Assign USP Post Tag terms
540
+ * @type string $usp_tag_slugs Slug(s) for the USP Post Tag term(s)
541
+ *
542
+ * @type boolean $create_usp_title Automatically populate the USP Post Title
543
+ * @type string $usp_title_template Content Template for the USP Post Title
544
+ *
545
+ * @type boolean $create_usp_excerpt Automatically populate the USP Post Excerpt
546
+ * @type string $usp_excerpt_template Content Template for the USP Post Excerpt
547
+ *
548
+ * @type boolean $create_usp_content Automatically populate the USP Post Content
549
+ * @type string $usp_content_template Content Template for the USP Post Content
550
+ *
551
+ * @type boolean $create_novo_map_marker Automatically create the Novo Map marker
552
+ * @type string $novo_map_infobox_template Content Template for the Novo Map Infobox
553
+ * @type integer $usp_marker_index Content Template for the Novo Map Infobox
554
+ * }
555
+ */
556
+ private static $_settings = NULL;
557
+
558
+ /**
559
+ * Default processing options
560
+ *
561
+ * @since 1.00
562
+ *
563
+ * @var array
564
+ */
565
+ private static $_default_settings = array (
566
+ 'process_usp_posts' => false,
567
+
568
+ 'assign_usp_categories' => false,
569
+ 'usp_category_slugs' => '',
570
+
571
+ 'assign_usp_tags' => false,
572
+ 'usp_tag_slugs' => '',
573
+
574
+ 'create_usp_title' => false,
575
+ 'usp_title_template' => '',
576
+
577
+ 'create_usp_excerpt' => false,
578
+ 'usp_excerpt_template' => '',
579
+
580
+ 'create_usp_content' => false,
581
+ 'usp_content_template' => '',
582
+
583
+ 'create_novo_map_marker' => false,
584
+ 'novo_map_infobox_template' => '(Location: [+exif:GPS.LatitudeDM+], [+exif:GPS.LongitudeDM+])',
585
+ 'usp_marker_index' => 2
586
+ );
587
+
588
+ /**
589
+ * Get a custom feed option setting
590
+ *
591
+ * @since 1.00
592
+ *
593
+ * @param string $name Option name
594
+ *
595
+ * @return mixed Option value, if it exists else NULL
596
+ */
597
+ private static function _get_plugin_option( $name ) {
598
+ if ( !self::_get_plugin_option_settings() ) {
599
+ return NULL;
600
+ }
601
+
602
+ if ( !isset( self::$_settings[ $name ] ) ) {
603
+ return NULL;
604
+ }
605
+
606
+ return self::$_settings[ $name ];
607
+ }
608
+
609
+ /**
610
+ * Update a custom feed option setting
611
+ *
612
+ * @since 1.00
613
+ *
614
+ * @param string $name Option name
615
+ * @param mixed $new_value Option value
616
+ *
617
+ * @return mixed True if option value changed, false if value unchanged, NULL if failure
618
+ */
619
+ private static function _update_plugin_option( $name, $new_value ) {
620
+ if ( !self::_get_plugin_option_settings() ) {
621
+ return NULL;
622
+ }
623
+
624
+ $old_value = isset( self::$_settings[ $name ] ) ? self::$_settings[ $name ] : NULL;
625
+
626
+ if ( $new_value === $old_value ) {
627
+ return false;
628
+ }
629
+
630
+ self::$_settings[ $name ] = $new_value;
631
+ return true;
632
+ }
633
+
634
+ /**
635
+ * Accumulate the USP values
636
+ *
637
+ * @since 1.00
638
+ *
639
+ * @var array
640
+ */
641
+ private static $usp_values = array();
642
+
643
+ /**
644
+ * Evaluate parent_terms: or page_terms: values
645
+ *
646
+ * @since 1.01
647
+ *
648
+ * @param mixed String or array - initial value
649
+ * @param integer The Post ID of the new/updated attachment
650
+ * @param string Taxonomy slug
651
+ * @param string Field name in term object
652
+ * @param string Format/option; text,single,export,unpack,array
653
+ *
654
+ * @return mixed String or array
655
+ */
656
+ private static function _evaluate_terms( $custom_value, $post_id, $taxonomy, $qualifier, $option ) {
657
+ if ( 0 == $post_id ) {
658
+ return $custom_value;
659
+ }
660
+
661
+ if ( empty( $qualifier ) ) {
662
+ $qualifier = 'name';
663
+ }
664
+
665
+ $terms = get_object_term_cache( $post_id, $taxonomy );
666
+ if ( false === $terms ) {
667
+ $terms = wp_get_object_terms( $post_id, $taxonomy );
668
+ wp_cache_add( $post_id, $terms, $taxonomy . '_relationships' );
669
+ }
670
+
671
+ if ( 'array' == $option ) {
672
+ $custom_value = array();
673
+ } else {
674
+ $custom_value = '';
675
+ }
676
+
677
+ if ( is_wp_error( $terms ) ) {
678
+ $custom_value = implode( ',', $terms->get_error_messages() );
679
+ } elseif ( ! empty( $terms ) ) {
680
+ if ( 'single' == $option || 1 == count( $terms ) ) {
681
+ reset( $terms );
682
+ $term = current( $terms );
683
+ $fields = get_object_vars( $term );
684
+ $custom_value = isset( $fields[ $qualifier ] ) ? $fields[ $qualifier ] : $fields['name'];
685
+ $custom_value = sanitize_term_field( $qualifier, $custom_value, $term->term_id, $taxonomy, 'display' );
686
+ } elseif ( ( 'export' == $option ) || ( 'unpack' == $option ) ) {
687
+ $custom_value = sanitize_text_field( var_export( $terms, true ) );
688
+ } else {
689
+ foreach ( $terms as $term ) {
690
+ $fields = get_object_vars( $term );
691
+ $field_value = isset( $fields[ $qualifier ] ) ? $fields[ $qualifier ] : $fields['name'];
692
+ $field_value = sanitize_term_field( $qualifier, $field_value, $term->term_id, $taxonomy, 'display' );
693
+
694
+ if ( 'array' == $option ) {
695
+ $custom_value[] = $field_value;
696
+ } else {
697
+ $custom_value .= strlen( $custom_value ) ? ', ' . $field_value : $field_value;
698
+ }
699
+ }
700
+ }
701
+ }
702
+
703
+ return $custom_value;
704
+ } // _evaluate_terms
705
+
706
+ /**
707
+ * MLA Expand Custom Prefix Filter
708
+ *
709
+ * Gives you an opportunity to generate your custom data value when a parameter's prefix value is not recognized.
710
+ *
711
+ * @since 1.01
712
+ *
713
+ * @param string $custom_value NULL, indicating that by default, no custom value is available
714
+ * @param string $key the data-source name
715
+ * @param array $value data-source components; prefix (empty), value, option, format and args (if present)
716
+ * @param array $query values from the query, if any, e.g. shortcode parameters
717
+ * @param array $markup_values item-level markup template values, if any
718
+ * @param integer $post_id attachment ID for attachment-specific values
719
+ * @param boolean $keep_existing for option 'multi', retain existing values
720
+ * @param string $default_option default option value
721
+ */
722
+ public static function mla_expand_custom_prefix( $custom_value, $key, $value, $query, $markup_values, $post_id, $keep_existing, $default_option ) {
723
+ static $parent_cache = array(), $author_cache = array();
724
+
725
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::mla_expand_custom_prefix( {$key}, {$post_id}, {$keep_existing}, {$default_option} ) value = " . var_export( $value, true ), 0 );
726
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::mla_expand_custom_prefix( {$key}, {$post_id} ) query = " . var_export( $query, true ), 0 );
727
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::mla_expand_custom_prefix( {$key}, {$post_id} ) markup_values = " . var_export( $markup_values, true ), 0 );
728
+
729
+ // Look for field/value qualifier
730
+ $match_count = preg_match( '/^(.+)\((.+)\)/', $value['value'], $matches );
731
+ if ( $match_count ) {
732
+ $field = $matches[1];
733
+ $qualifier = $matches[2];
734
+ } else {
735
+ $field = $value['value'];
736
+ $qualifier = '';
737
+ }
738
+
739
+ if ( 0 == absint( $post_id ) ) {
740
+ return $custom_value;
741
+ }
742
+
743
+ if ( 'usp_terms' == $value['prefix'] ) {
744
+ if ( isset( $markup_values['parent'] ) ) {
745
+ $post_parent = absint( $markup_values['parent'] );
746
+ } else {
747
+ $item = get_post( $post_id );
748
+ $post_parent = absint( $item->post_parent );
749
+ }
750
+
751
+ $custom_value = self::_evaluate_terms( $custom_value, $post_parent, $field, $qualifier, $value['option'] );
752
+ } elseif ( 'usp' == $value['prefix'] ) {
753
+ if ( isset( $markup_values['parent'] ) ) {
754
+ $parent_id = absint( $markup_values['parent'] );
755
+ } else {
756
+ $item = get_post( $post_id );
757
+ $parent_id = absint( $item->post_parent );
758
+ }
759
+
760
+ if ( 0 == $parent_id ) {
761
+ return $custom_value;
762
+ }
763
+
764
+ if ( isset( $parent_cache[ $parent_id ] ) ) {
765
+ $parent = $parent_cache[ $parent_id ];
766
+ } else {
767
+ $parent = get_post( $parent_id );
768
+
769
+ if ( $parent instanceof WP_Post && $parent->ID == $parent_id ) {
770
+ $parent_cache[ $parent_id ] = $parent;
771
+ } else {
772
+ return $custom_value;
773
+ }
774
+ }
775
+
776
+ if ( property_exists( $parent, $value['value'] ) ) {
777
+ $custom_value = $parent->{$value['value']};
778
+ } elseif ( 'permalink' == $value['value'] ) {
779
+ $custom_value = get_permalink( $parent );
780
+ } else {
781
+ // Look for a custom field match
782
+ $meta_value = get_metadata( 'post', $parent_id, $value['value'], false );
783
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::mla_expand_custom_prefix( {$key}, {$post_id}, {$parent_id} ) meta_value = " . var_export( $meta_value, true ), 0 );
784
+ if ( !empty( $meta_value ) ) {
785
+ $custom_value = $meta_value;
786
+ }
787
+ }
788
+
789
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::mla_expand_custom_prefix( {$key}, {$post_id}, {$parent_id} ) custom_value = " . var_export( $custom_value, true ), 0 );
790
+
791
+ if ( is_array( $custom_value ) ) {
792
+ if ( 'single' == $value['option'] || 1 == count( $custom_value ) ) {
793
+ $custom_value = sanitize_text_field( reset( $custom_value ) );
794
+ } elseif ( ( 'export' == $value['option'] ) || ( 'unpack' == $value['option'] ) ) {
795
+ $custom_value = sanitize_text_field( var_export( $custom_value, true ) );
796
+ } else {
797
+ if ( 'array' == $value['option'] ) {
798
+ $new_value = array();
799
+ } else {
800
+ $new_value = '';
801
+ }
802
+
803
+ foreach ( $custom_value as $element ) {
804
+ $field_value = sanitize_text_field( $element );
805
+
806
+ if ( 'array' == $value['option'] ) {
807
+ $new_value[] = $field_value;
808
+ } else {
809
+ $new_value .= strlen( $custom_value ) ? ', ' . $field_value : $field_value;
810
+ }
811
+ }
812
+
813
+ $custom_value = $new_value;
814
+ }
815
+ }
816
+ }
817
+
818
+ return $custom_value;
819
+ } // mla_expand_custom_prefix
820
+
821
+ /**
822
+ * USP Files Before Action
823
+ *
824
+ * @since 1.00
825
+ *
826
+ * @param array $files List of files
827
+ */
828
+ public static function usp_files_before( $files ) {
829
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::usp_files_before files = " . var_export( $files, true ), 0 );
830
+ self::$usp_values['usp_files_before'] = $files;
831
+ } // usp_files_before
832
+
833
+ /**
834
+ * USP Insert Attachment Data Filter
835
+ *
836
+ * @since 1.00
837
+ *
838
+ * @param array $attachment Attachment data values
839
+ */
840
+ public static function usp_insert_attachment_data( $attachment ) {
841
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::usp_insert_attachment_data attachment = " . var_export( $attachment, true ), 0 );
842
+ self::$usp_values['usp_insert_attachment_data'] = $attachment;
843
+
844
+ return $attachment;
845
+ } // usp_insert_attachment_data
846
+
847
+ /**
848
+ * USP Files After Action
849
+ *
850
+ * @since 1.00
851
+ *
852
+ * @param array $attach_ids List of attachment IDs
853
+ */
854
+ public static function usp_files_after( $attach_ids ) {
855
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::usp_files_after attach_ids = " . var_export( $attach_ids, true ), 0 );
856
+ self::$usp_values['usp_insert_attachment_data']['id'] = reset( $attach_ids );
857
+ } // usp_files_after
858
+
859
+ /**
860
+ * USP Post Data Filter
861
+ *
862
+ * @since 1.00
863
+ *
864
+ * @param array $postData Post data values
865
+ */
866
+ public static function usp_post_data( $postData ) {
867
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::usp_post_data postData = " . var_export( $postData, true ), 0 );
868
+ self::$usp_values['usp_post_data'] = $postData;
869
+
870
+ return $postData;
871
+ } // usp_post_data
872
+
873
+ /**
874
+ * USP Insert (Post) Before Action
875
+ *
876
+ * @since 1.00
877
+ *
878
+ * @param array $postData Post data values
879
+ */
880
+ public static function usp_insert_before( $postData ) {
881
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::usp_insert_before postData = " . var_export( $postData, true ), 0 );
882
+ } // usp_insert_before
883
+
884
+ /**
885
+ * USP Insert (Post) After Action
886
+ *
887
+ * @since 1.00
888
+ *
889
+ * @param array $newPost New Post ['id']
890
+ */
891
+ public static function usp_insert_after( $newPost ) {
892
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::usp_insert_after newPost = " . var_export( $newPost, true ), 0 );
893
+ if (isset($newPost['error'][0]) && empty($newPost['error'][0])) {
894
+ self::$usp_values['usp_post_data']['id'] = $newPost['id'];
895
+ }
896
+ } // usp_insert_after
897
+
898
+ /**
899
+ * USP Post Category Slug(s) - append categories to the USP Post
900
+ *
901
+ * @since 1.01
902
+ *
903
+ * @uses self::$usp_values ['usp_post_data']
904
+ */
905
+ private static function _post_category_slugs() {
906
+ $usp_category_slugs = self::_get_plugin_option('usp_category_slugs');
907
+ if ( empty( $usp_category_slugs ) ) {
908
+ $usp_category_slugs = self::$_default_settings['usp_category_slugs'];
909
+ }
910
+
911
+ if ( empty( $usp_category_slugs ) ) {
912
+ return;
913
+ }
914
+
915
+ if ( isset( self::$usp_values['usp_post_data']['id'] ) ) {
916
+ $post_id = self::$usp_values['usp_post_data']['id'];
917
+ } else {
918
+ return;
919
+ }
920
+
921
+ $usp_category_slugs = explode( ',', $usp_category_slugs );
922
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::_post_category_slugs usp_category_slugs = " . var_export( $usp_category_slugs, true ), 0 );
923
+ $term_taxonomy_ids = wp_set_object_terms( $post_id, $usp_category_slugs, 'category', true );
924
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::_post_category_slugs term_taxonomy_ids = " . var_export( $term_taxonomy_ids, true ), 0 );
925
+ } // _post_category_slugs
926
+
927
+ /**
928
+ * USP Post Tag Slug(s) - append tagss to the USP Post
929
+ *
930
+ * @since 1.01
931
+ *
932
+ * @uses self::$usp_values ['usp_post_data']
933
+ */
934
+ private static function _post_tag_slugs() {
935
+ $usp_tag_slugs = self::_get_plugin_option('usp_tag_slugs');
936
+ if ( empty( $usp_tag_slugs ) ) {
937
+ $usp_tag_slugs = self::$_default_settings['usp_tag_slugs'];
938
+ }
939
+
940
+ if ( empty( $usp_tag_slugs ) ) {
941
+ return;
942
+ }
943
+
944
+ if ( isset( self::$usp_values['usp_post_data']['id'] ) ) {
945
+ $post_id = self::$usp_values['usp_post_data']['id'];
946
+ } else {
947
+ return;
948
+ }
949
+
950
+ $usp_tag_slugs = explode( ',', $usp_tag_slugs );
951
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::_post_tag_slugs usp_tag_slugs = " . var_export( $usp_tag_slugs, true ), 0 );
952
+ $term_taxonomy_ids = wp_set_object_terms( $post_id, $usp_tag_slugs, 'post_tag', true );
953
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::_post_tag_slugs term_taxonomy_ids = " . var_export( $term_taxonomy_ids, true ), 0 );
954
+ } // _post_tag_slugs
955
+
956
+ /**
957
+ * USP Post Title Template - return new value for post_title
958
+ *
959
+ * @since 1.01
960
+ *
961
+ * @uses self::$usp_values ['usp_post_data'], ['usp_insert_attachment_data']
962
+ *
963
+ * @return string New value for post_title else empty string
964
+ */
965
+ private static function _apply_post_title_template() {
966
+ $usp_title_template = self::_get_plugin_option('usp_title_template');
967
+ if ( empty( $usp_title_template ) ) {
968
+ $usp_title_template = self::$_default_settings['usp_title_template'];
969
+ }
970
+
971
+ if ( empty( $usp_title_template ) ) {
972
+ return '';
973
+ }
974
+
975
+ if ( isset( self::$usp_values['usp_post_data']['id'] ) ) {
976
+ $post_id = self::$usp_values['usp_post_data']['id'];
977
+ } else {
978
+ return '';
979
+ }
980
+
981
+ if ( isset( self::$usp_values['usp_insert_attachment_data']['id'] ) ) {
982
+ $attachment_id = self::$usp_values['usp_insert_attachment_data']['id'];
983
+ } else {
984
+ return '';
985
+ }
986
+
987
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::_apply_post_title_template( $post_id, $attachment_id ) usp_title_template = " . var_export( $usp_title_template, true ), 0 );
988
+
989
+ $data_source = array(
990
+ 'data_source' => 'template',
991
+ 'meta_name' => $usp_title_template,
992
+ 'option' => 'text',
993
+ 'format' => 'raw',
994
+ );
995
+ $usp_title_value = MLAShortcodes::mla_get_data_source( $attachment_id, 'single_attachment_mapping', $data_source, NULL );
996
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::_apply_post_title_template( $post_id, $attachment_id ) usp_title_value = " . var_export( $usp_title_value, true ), 0 );
997
+
998
+ return $usp_title_value;
999
+ } // _apply_post_title_template
1000
+
1001
+ /**
1002
+ * USP Post Excerpt Template - return new value for post_excerpt
1003
+ *
1004
+ * @since 1.01
1005
+ *
1006
+ * @uses self::$usp_values ['usp_post_data'], ['usp_insert_attachment_data']
1007
+ *
1008
+ * @return string New value for post_excerpt else empty string
1009
+ */
1010
+ private static function _apply_post_excerpt_template() {
1011
+ $usp_excerpt_template = self::_get_plugin_option('usp_excerpt_template');
1012
+ if ( empty( $usp_excerpt_template ) ) {
1013
+ $usp_excerpt_template = self::$_default_settings['usp_excerpt_template'];
1014
+ }
1015
+
1016
+ if ( empty( $usp_excerpt_template ) ) {
1017
+ return '';
1018
+ }
1019
+
1020
+ if ( isset( self::$usp_values['usp_post_data']['id'] ) ) {
1021
+ $post_id = self::$usp_values['usp_post_data']['id'];
1022
+ } else {
1023
+ return '';
1024
+ }
1025
+
1026
+ if ( isset( self::$usp_values['usp_insert_attachment_data']['id'] ) ) {
1027
+ $attachment_id = self::$usp_values['usp_insert_attachment_data']['id'];
1028
+ } else {
1029
+ return '';
1030
+ }
1031
+
1032
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::_apply_post_excerpt_template( $post_id, $attachment_id ) usp_excerpt_template = " . var_export( $usp_excerpt_template, true ), 0 );
1033
+
1034
+ $data_source = array(
1035
+ 'data_source' => 'template',
1036
+ 'meta_name' => $usp_excerpt_template,
1037
+ 'option' => 'text',
1038
+ 'format' => 'raw',
1039
+ );
1040
+ $usp_excerpt_value = MLAShortcodes::mla_get_data_source( $attachment_id, 'single_attachment_mapping', $data_source, NULL );
1041
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::_apply_post_excerpt_template( $post_id, $attachment_id ) usp_excerpt_value = " . var_export( $usp_excerpt_value, true ), 0 );
1042
+
1043
+ return $usp_excerpt_value;
1044
+ } // _apply_post_excerpt_template
1045
+
1046
+ /**
1047
+ * USP Post Content Template - return new value for post_content
1048
+ *
1049
+ * @since 1.01
1050
+ *
1051
+ * @uses self::$usp_values ['usp_post_data'], ['usp_insert_attachment_data']
1052
+ *
1053
+ * @return string New value for post_content else empty string
1054
+ */
1055
+ private static function _apply_post_content_template() {
1056
+ $usp_content_template = self::_get_plugin_option('usp_content_template');
1057
+ if ( empty( $usp_content_template ) ) {
1058
+ $usp_content_template = self::$_default_settings['usp_content_template'];
1059
+ }
1060
+
1061
+ if ( empty( $usp_content_template ) ) {
1062
+ return '';
1063
+ }
1064
+
1065
+ if ( isset( self::$usp_values['usp_post_data']['id'] ) ) {
1066
+ $post_id = self::$usp_values['usp_post_data']['id'];
1067
+ } else {
1068
+ return '';
1069
+ }
1070
+
1071
+ if ( isset( self::$usp_values['usp_insert_attachment_data']['id'] ) ) {
1072
+ $attachment_id = self::$usp_values['usp_insert_attachment_data']['id'];
1073
+ } else {
1074
+ return '';
1075
+ }
1076
+
1077
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::_apply_post_excerpt_template( $post_id, $attachment_id ) usp_content_template = " . var_export( $usp_content_template, true ), 0 );
1078
+
1079
+ $data_source = array(
1080
+ 'data_source' => 'template',
1081
+ 'meta_name' => $usp_content_template,
1082
+ 'option' => 'text',
1083
+ 'format' => 'raw',
1084
+ );
1085
+ $usp_content_value = MLAShortcodes::mla_get_data_source( $attachment_id, 'single_attachment_mapping', $data_source, NULL );
1086
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::_apply_post_excerpt_template( $post_id, $attachment_id ) usp_content_value = " . var_export( $usp_content_value, true ), 0 );
1087
+
1088
+ return $usp_content_value;
1089
+ } // _apply_post_content_template
1090
+
1091
+ /**
1092
+ * Create Novo Map Marker
1093
+ *
1094
+ * @since 1.01
1095
+ *
1096
+ * @uses self::$usp_values ['usp_insert_attachment_data']
1097
+ */
1098
+ private static function _create_novomap_marker() {
1099
+ global $wpdb;
1100
+
1101
+ $data_source = array(
1102
+ 'data_source' => 'template',
1103
+ 'meta_name' => '([+exif:GPS.LatitudeSDD+])',
1104
+ 'option' => 'text',
1105
+ 'format' => 'raw',
1106
+ );
1107
+ $LatitudeSDD = MLAShortcodes::mla_get_data_source( self::$usp_values['usp_insert_attachment_data']['id'], 'single_attachment_mapping', $data_source, NULL );
1108
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::_create_novomap_marker data_value = " . var_export( $LatitudeSDD, true ), 0 );
1109
+
1110
+ $data_source = array(
1111
+ 'data_source' => 'template',
1112
+ 'meta_name' => '([+exif:GPS.LongitudeSDD+])',
1113
+ 'option' => 'text',
1114
+ 'format' => 'raw',
1115
+ );
1116
+ $LongitudeSDD = MLAShortcodes::mla_get_data_source( self::$usp_values['usp_insert_attachment_data']['id'], 'single_attachment_mapping', $data_source, NULL );
1117
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::_create_novomap_marker data_value = " . var_export( $LongitudeSDD, true ), 0 );
1118
+
1119
+ $infobox_template = self::_get_plugin_option('novo_map_infobox_template');
1120
+ if ( empty( $infobox_template ) ) {
1121
+ $infobox_template = self::$_default_settings['novo_map_infobox_template'];
1122
+ }
1123
+
1124
+ $data_source = array(
1125
+ 'data_source' => 'template',
1126
+ 'meta_name' => $infobox_template,
1127
+ 'option' => 'text',
1128
+ 'format' => 'raw',
1129
+ );
1130
+ $infobox_value = MLAShortcodes::mla_get_data_source( self::$usp_values['usp_insert_attachment_data']['id'], 'single_attachment_mapping', $data_source, NULL );
1131
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::_create_novomap_marker infobox_value = " . var_export( $infobox_value, true ), 0 );
1132
+
1133
+ $usp_marker_index = self::_get_plugin_option('usp_marker_index');
1134
+ if ( empty( $usp_marker_index ) ) {
1135
+ $usp_marker_index = self::$_default_settings['usp_marker_index'];
1136
+ }
1137
+
1138
+ // Load the Novo Map parts we need
1139
+ $dir = plugin_dir_path( __DIR__ );
1140
+ require_once $dir . 'novo-map/admin/helpers/admin-helpers.php';
1141
+ require_once $dir . 'novo-map/includes/class-novo-map-marker.php';
1142
+ require_once $dir . 'novo-map/includes/class-novo-map-marker-manager.php';
1143
+ $marker_manager = new Marker_manager( $wpdb );
1144
+
1145
+ $novo_post = array (
1146
+ 'novo-map-marker-title' => self::$usp_values['usp_post_data']['post_title'],
1147
+ 'novo-map-marker-marker_logo_id' => (string) $usp_marker_index,
1148
+ 'novo-map-marker-latitude' => $LatitudeSDD,
1149
+ 'novo-map-marker-longitude' => $LongitudeSDD,
1150
+ 'novo-map-marker-infobox_image' => self::$usp_values['usp_insert_attachment_data']['id'],
1151
+ 'novo-map-marker-infobox_description' => $infobox_value,
1152
+ 'novo-map-marker-categories' => get_post_categories_name_list( self::$usp_values['usp_post_data']['id'] ),
1153
+ 'novo-map-marker-tags' => get_post_tags_name_list( self::$usp_values['usp_post_data']['id'] ),
1154
+ 'novo-map-marker-post_id' => self::$usp_values['usp_post_data']['id'],
1155
+ );
1156
+
1157
+ $marker = new Marker( $novo_post );
1158
+ $marker_id = $marker_manager->add( $marker );
1159
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::_create_novomap_marker marker_id = " . var_export( $marker_id, true ), 0 );
1160
+ } // _create_novomap_marker
1161
+
1162
+ /**
1163
+ * USP New Post Filter
1164
+ *
1165
+ * @since 1.00
1166
+ *
1167
+ * @param array $newPost Post data values
1168
+ */
1169
+ public static function usp_new_post( $newPost ) {
1170
+ global $wpdb;
1171
+
1172
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::usp_new_post newPost = " . var_export( $newPost, true ), 0 );
1173
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::usp_new_post self::usp_values = " . var_export( self::$usp_values, true ), 0 );
1174
+
1175
+ // Nothing to do if we don't have a Featured Image
1176
+ if ( empty( self::$usp_values['usp_insert_attachment_data'] ) ) {
1177
+ return $newPost;
1178
+ }
1179
+
1180
+ // At this point we have everything we need/will get
1181
+
1182
+ //Start by adding term assignments so they are available for later template processing
1183
+ if ( self::_get_plugin_option('assign_usp_categories') ) {
1184
+ self::_post_category_slugs();
1185
+ }
1186
+
1187
+ if ( self::_get_plugin_option('assign_usp_tags') ) {
1188
+ self::_post_tag_slugs();
1189
+ }
1190
+
1191
+ // Accumulate changes to apply all at once
1192
+ $usp_post_updates = array();
1193
+
1194
+ if ( self::_get_plugin_option('create_usp_title') ) {
1195
+ $post_title = self::_apply_post_title_template();
1196
+ if ( !empty( $post_title ) ) {
1197
+ $usp_post_updates['post_title'] = $post_title;
1198
+ }
1199
+ }
1200
+
1201
+ if ( self::_get_plugin_option('create_usp_excerpt') ) {
1202
+ $post_excerpt = self::_apply_post_excerpt_template();
1203
+ if ( !empty( $post_excerpt ) ) {
1204
+ $usp_post_updates['post_excerpt'] = $post_excerpt;
1205
+ }
1206
+ }
1207
+
1208
+ if ( self::_get_plugin_option('create_usp_content') ) {
1209
+ $post_content = self::_apply_post_content_template();
1210
+ if ( !empty( $post_content ) ) {
1211
+ $usp_post_updates['post_content'] = $post_content;
1212
+ }
1213
+ }
1214
+
1215
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::usp_new_post usp_post_updates = " . var_export( $usp_post_updates, true ), 0 );
1216
+ // Apply changes, if any
1217
+ if ( !empty( $usp_post_updates ) ) {
1218
+ if ( isset( self::$usp_values['usp_post_data']['id'] ) ) {
1219
+ $usp_post_updates['ID'] = self::$usp_values['usp_post_data']['id'];
1220
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::usp_new_post usp_post_updates = " . var_export( $usp_post_updates, true ), 0 );
1221
+ $result = wp_update_post( $usp_post_updates );
1222
+ //error_log( __LINE__ . " MLAUSPNovoMapExample::usp_new_post result = " . var_export( $result, true ), 0 );
1223
+ }
1224
+ }
1225
+
1226
+ if ( self::_get_plugin_option('create_novo_map_marker') ) {
1227
+ self::_create_novomap_marker();
1228
+ }
1229
+
1230
+ return $newPost;
1231
+ } // usp_new_post
1232
+ } //MLAUSPNovoMapExample
1233
+
1234
+ /*
1235
+ * Install the filters at an early opportunity
1236
+ */
1237
+ add_action('init', 'MLAUSPNovoMapExample::initialize');
1238
+ ?>
examples/plugins/mla-viewer-replacement-example.php CHANGED
@@ -1,11 +1,11 @@
1
  <?php
2
  /*
3
  Plugin Name: MLA Viewer Replacement Example
4
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
5
  Description: Provides selective mla_caption replacement for PDF documents, etc.
6
  Author: David Lingren
7
- Version: 1.00
8
- Author URI: http://fairtradejudaica.org/our-story/staff/
9
 
10
  Copyright 2014, 2015 David Lingren
11
 
1
  <?php
2
  /*
3
  Plugin Name: MLA Viewer Replacement Example
4
+ Plugin URI: http://davidlingren.com/
5
  Description: Provides selective mla_caption replacement for PDF documents, etc.
6
  Author: David Lingren
7
+ Version: 1.01
8
+ Author URI: http://davidlingren.com/
9
 
10
  Copyright 2014, 2015 David Lingren
11
 
examples/plugins/mla-yoast-seo-example.php CHANGED
@@ -3,16 +3,16 @@
3
  * Supports WordPress SEO by Yoast Page Analysis and XMP Sitemap generation
4
  *
5
  * @package MLA Yoast SEO Example
6
- * @version 1.10
7
  */
8
 
9
  /*
10
  Plugin Name: MLA Yoast SEO Example
11
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
12
  Description: Supports WordPress SEO by Yoast Page Analysis and XMP Sitemap generation
13
  Author: David Lingren
14
- Version: 1.10
15
- Author URI: http://fairtradejudaica.org/our-story/staff/
16
 
17
  Copyright 2014 - 2015 David Lingren
18
 
3
  * Supports WordPress SEO by Yoast Page Analysis and XMP Sitemap generation
4
  *
5
  * @package MLA Yoast SEO Example
6
+ * @version 1.11
7
  */
8
 
9
  /*
10
  Plugin Name: MLA Yoast SEO Example
11
+ Plugin URI: http://davidlingren.com/
12
  Description: Supports WordPress SEO by Yoast Page Analysis and XMP Sitemap generation
13
  Author: David Lingren
14
+ Version: 1.11
15
+ Author URI: http://davidlingren.com/
16
 
17
  Copyright 2014 - 2015 David Lingren
18
 
examples/plugins/mla-zip-archive-example.php CHANGED
@@ -7,16 +7,16 @@
7
  * https://wordpress.org/support/topic/att-categories-menu-returns-404-error
8
  *
9
  * @package MLA Download ZIP Example
10
- * @version 1.01
11
  */
12
 
13
  /*
14
  Plugin Name: MLA Download ZIP Example
15
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
16
  Description: Creates a "Download" Bulk Action that downloads one or more Media Library files as a ZIP archive
17
  Author: David Lingren
18
- Version: 1.01
19
- Author URI: http://fairtradejudaica.org/our-story/staff/
20
 
21
  Copyright 2014, 2018 David Lingren
22
 
7
  * https://wordpress.org/support/topic/att-categories-menu-returns-404-error
8
  *
9
  * @package MLA Download ZIP Example
10
+ * @version 1.02
11
  */
12
 
13
  /*
14
  Plugin Name: MLA Download ZIP Example
15
+ Plugin URI: http://davidlingren.com/
16
  Description: Creates a "Download" Bulk Action that downloads one or more Media Library files as a ZIP archive
17
  Author: David Lingren
18
+ Version: 1.02
19
+ Author URI: http://davidlingren.com/
20
 
21
  Copyright 2014, 2018 David Lingren
22
 
examples/plugins/mqtranslate-example.php CHANGED
@@ -6,16 +6,16 @@
6
  * added to the site_url value.
7
  *
8
  * @package MLA mqTranslate Example
9
- * @version 1.01
10
  */
11
 
12
  /*
13
  Plugin Name: MLA mqTranslate Example
14
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
15
  Description: Provides an example of hooking the filters provided by the [mla_tag_cloud] shortcode
16
  Author: David Lingren
17
- Version: 1.01
18
- Author URI: http://fairtradejudaica.org/our-story/staff/
19
 
20
  Copyright 2014 David Lingren
21
 
6
  * added to the site_url value.
7
  *
8
  * @package MLA mqTranslate Example
9
+ * @version 1.02
10
  */
11
 
12
  /*
13
  Plugin Name: MLA mqTranslate Example
14
+ Plugin URI: http://davidlingren.com/
15
  Description: Provides an example of hooking the filters provided by the [mla_tag_cloud] shortcode
16
  Author: David Lingren
17
+ Version: 1.02
18
+ Author URI: http://davidlingren.com/
19
 
20
  Copyright 2014 David Lingren
21
 
examples/plugins/posts-per-page-example.php CHANGED
@@ -15,16 +15,16 @@
15
  * https://wordpress.org/support/topic/dealing-with-posts_per_page-posts_per_archive_page/
16
  *
17
  * @package Posts Per Page Example
18
- * @version 1.00
19
  */
20
 
21
  /*
22
  Plugin Name: Posts Per Page Example
23
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
24
  Description: Adjusts the [mla_gallery] posts_per_page value based on WordPress conditional functions
25
  Author: David Lingren
26
- Version: 1.00
27
- Author URI: http://fairtradejudaica.org/our-story/staff/
28
 
29
  Copyright 2016 David Lingren
30
 
15
  * https://wordpress.org/support/topic/dealing-with-posts_per_page-posts_per_archive_page/
16
  *
17
  * @package Posts Per Page Example
18
+ * @version 1.01
19
  */
20
 
21
  /*
22
  Plugin Name: Posts Per Page Example
23
+ Plugin URI: http://davidlingren.com/
24
  Description: Adjusts the [mla_gallery] posts_per_page value based on WordPress conditional functions
25
  Author: David Lingren
26
+ Version: 1.01
27
+ Author URI: http://davidlingren.com/
28
 
29
  Copyright 2016 David Lingren
30
 
examples/plugins/random-feature.php CHANGED
@@ -7,16 +7,16 @@
7
  * for the post.
8
  *
9
  * @package Random Featured Image
10
- * @version 1.01
11
  */
12
 
13
  /*
14
  Plugin Name: Random Featured Image
15
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
16
  Description: Assigns a random image as the "post thumbnail"/"featured image".
17
  Author: David Lingren
18
- Version: 1.01
19
- Author URI: http://fairtradejudaica.org/our-story/staff/
20
 
21
  Copyright 2015 David Lingren
22
 
7
  * for the post.
8
  *
9
  * @package Random Featured Image
10
+ * @version 1.02
11
  */
12
 
13
  /*
14
  Plugin Name: Random Featured Image
15
+ Plugin URI: http://davidlingren.com/
16
  Description: Assigns a random image as the "post thumbnail"/"featured image".
17
  Author: David Lingren
18
+ Version: 1.02
19
+ Author URI: http://davidlingren.com/
20
 
21
  Copyright 2015 David Lingren
22
 
examples/plugins/smart-media-categories/admin/includes/class-smc-settings-support.php CHANGED
@@ -308,7 +308,7 @@ class SMC_Settings_Support {
308
  * @return void echoes HTML markup for the section description
309
  */
310
  public static function render_automatic_options_section() {
311
- echo '<p>' . __( "You can find some User Interface notes and more information about the rules in this PDF document: ", 'smart-media-categories' ) . "<a href=\"http://fairtradejudaica.org/wp-content/uploads/Smart-Media-Categories-v07.pdf\" target=\"_blank\">Smart-Media-Categories-v07.pdf</a></p>\n";
312
  echo '<p>' . __( "Check the box of each automatic rule you want to apply.", 'smart-media-categories' ) . "</p>\n";
313
  }
314
 
308
  * @return void echoes HTML markup for the section description
309
  */
310
  public static function render_automatic_options_section() {
311
+ echo '<p>' . __( "You can find some User Interface notes and more information about the rules in this PDF document: ", 'smart-media-categories' ) . "<a href=\"http://davidlingren.com/assets/Smart-Media-Categories-v07.pdf\" target=\"_blank\">Smart-Media-Categories-v07.pdf</a></p>\n";
312
  echo '<p>' . __( "Check the box of each automatic rule you want to apply.", 'smart-media-categories' ) . "</p>\n";
313
  }
314
 
examples/plugins/smart-media-categories/public/class-smart-media-categories.php CHANGED
@@ -25,7 +25,7 @@ class Smart_Media_Categories {
25
  *
26
  * @var string
27
  */
28
- const VERSION = '1.1.2';
29
 
30
  /**
31
  * Unique identifier for your plugin.
25
  *
26
  * @var string
27
  */
28
+ const VERSION = '1.1.3';
29
 
30
  /**
31
  * Unique identifier for your plugin.
examples/plugins/smart-media-categories/smart-media-categories.php CHANGED
@@ -12,11 +12,11 @@
12
  *
13
  * @wordpress-plugin
14
  * Plugin Name: Smart Media Categories
15
- * Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
16
  * Description: Assigns taxonomy terms to Media Library items based on the terms of their parent post/page.
17
- * Version: 1.1.2
18
  * Author: David Lingren
19
- * Author URI: http://fairtradejudaica.org/our-story/staff/
20
  * Text Domain: smart-media-categories
21
  * License: GPL-2.0+
22
  * License URI: http://www.gnu.org/licenses/gpl-2.0.txt
12
  *
13
  * @wordpress-plugin
14
  * Plugin Name: Smart Media Categories
15
+ * Plugin URI: http://davidlingren.com/
16
  * Description: Assigns taxonomy terms to Media Library items based on the terms of their parent post/page.
17
+ * Version: 1.1.3
18
  * Author: David Lingren
19
+ * Author URI: http://davidlingren.com/
20
  * Text Domain: smart-media-categories
21
  * License: GPL-2.0+
22
  * License URI: http://www.gnu.org/licenses/gpl-2.0.txt
examples/plugins/woofixit.php CHANGED
@@ -9,6 +9,7 @@
9
  * - Delete ALL Title fields for Product Image/Product Gallery items.
10
  * - Fill empty item Title field with re-formatted file name.
11
  * - Replace ALL item Title fields with re-formatted file name.
 
12
  *
13
  * - Delete ALL ALT Text fields for Product Image/Product Gallery items.
14
  * - Fill empty ALT Text field with first top-level Product Category.
@@ -71,19 +72,23 @@
71
  * opened on 2/21/2017 by "bueyfx".
72
  * https://wordpress.org/support/topic/regenerate-bulk-alt-text-with-product-name-product-category-keyword/
73
  *
 
 
 
 
74
  * @package WooCommerce Fixit
75
- * @version 2.02
76
  */
77
 
78
  /*
79
  Plugin Name: WooCommerce Fixit
80
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
81
  Description: Adds "product:" and "product_terms:" custom substitution prefixes and adds a Tools/Woo Fixit submenu with buttons to perform a variety of MLA/WooCommerce repair and enhancement operations.
82
  Author: David Lingren
83
- Version: 2.02
84
- Author URI: http://fairtradejudaica.org/our-story/staff/
85
 
86
- Copyright 2014-2017 David Lingren
87
 
88
  This program is free software; you can redistribute it and/or modify
89
  it under the terms of the GNU General Public License as published by
@@ -113,7 +118,7 @@ class Woo_Fixit {
113
  *
114
  * @var string
115
  */
116
- const CURRENT_VERSION = '2.02';
117
 
118
  /**
119
  * Slug prefix for registering and enqueueing submenu pages, style sheets and scripts
@@ -144,6 +149,26 @@ class Woo_Fixit {
144
  private static $last_product = '';
145
  const INPUT_LAST_PRODUCT = 'upper';
146
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
147
  /**
148
  * Content Template for Product Image/Product Gallery Images
149
  *
@@ -161,7 +186,7 @@ class Woo_Fixit {
161
  *
162
  * @var boolean
163
  */
164
- private static $process_category = true;
165
  const INPUT_PROCESS_CATEGORY = 'category';
166
 
167
  /**
@@ -171,7 +196,7 @@ class Woo_Fixit {
171
  *
172
  * @var boolean
173
  */
174
- private static $process_tag = true;
175
  const INPUT_PROCESS_TAG = 'tag';
176
 
177
  /**
@@ -240,7 +265,7 @@ class Woo_Fixit {
240
  if ( empty( $products ) ) {
241
  return $custom_value;
242
  }
243
-
244
  if ( is_scalar( $products ) ) {
245
  $products = array( absint( $products ) => absint( $products ) );
246
  }
@@ -258,14 +283,14 @@ class Woo_Fixit {
258
  return implode( ',', $terms->get_error_messages() );
259
  }
260
  //error_log( __LINE__ . " Woo_Fixit::_evaluate_terms( {$product}, {$taxonomy}, {$qualifier}, {$option} ) terms = " . var_export( $terms, true ), 0 );
261
-
262
  wp_cache_add( $product, $terms, $taxonomy . '_relationships' );
263
  }
264
 
265
  $all_terms = array_merge( $all_terms, $terms );
266
  }
267
  //error_log( __LINE__ . " Woo_Fixit::_evaluate_terms( {$product}, {$taxonomy}, {$qualifier}, {$option} ) all_terms = " . var_export( $all_terms, true ), 0 );
268
-
269
  if ( 'array' == $option ) {
270
  $custom_value = array();
271
  } else {
@@ -295,7 +320,7 @@ class Woo_Fixit {
295
  }
296
  }
297
  }
298
-
299
  //error_log( __LINE__ . " Woo_Fixit::_evaluate_terms( {$product}, {$taxonomy}, {$qualifier}, {$option} ) custom_value = " . var_export( $custom_value, true ), 0 );
300
  return $custom_value;
301
  } // _evaluate_terms
@@ -316,7 +341,7 @@ class Woo_Fixit {
316
  */
317
  public static function mla_expand_custom_prefix( $custom_value, $key, $value, $query, $markup_values, $post_id, $keep_existing, $default_option ) {
318
  static $product_cache = array();
319
-
320
  //error_log( __LINE__ . " Woo_Fixit::mla_expand_custom_prefix( {$key}, {$post_id}, {$keep_existing}, {$default_option} ) value = " . var_export( $value, true ), 0 );
321
  //error_log( __LINE__ . " Woo_Fixit::mla_expand_custom_prefix( {$key}, {$post_id} ) query = " . var_export( $query, true ), 0 );
322
  //error_log( __LINE__ . " Woo_Fixit::mla_expand_custom_prefix( {$key}, {$post_id} ) markup_values = " . var_export( $markup_values, true ), 0 );
@@ -339,7 +364,7 @@ class Woo_Fixit {
339
  if ( empty( self::$attachment_products ) ) {
340
  self::_build_product_attachments( true );
341
  }
342
-
343
  // What product(s) are associated with this item?
344
  $products = array();
345
  if ( isset( self::$attachment_products[ $post_id ] ) ) {
@@ -348,7 +373,7 @@ class Woo_Fixit {
348
  $products[ $product ] = $product;
349
  }
350
  }
351
-
352
  if ( !empty( self::$attachment_products[ $post_id ]['_product_image_gallery'] ) ) {
353
  foreach ( self::$attachment_products[ $post_id ]['_product_image_gallery'] as $product ) {
354
  $products[ $product ] = $product;
@@ -368,14 +393,14 @@ class Woo_Fixit {
368
  $product = $product_cache[ $product_id ];
369
  } else {
370
  $product = get_post( $product_id );
371
-
372
  if ( $product instanceof WP_Post && $product->ID == $product_id ) {
373
  $product_cache[ $product_id ] = $product;
374
  } else {
375
  continue;
376
  }
377
  }
378
-
379
  if ( property_exists( $product, $value['value'] ) ) {
380
  $custom_value[] = $product->{$value['value']};
381
  } elseif ( 'permalink' == $value['value'] ) {
@@ -409,14 +434,14 @@ class Woo_Fixit {
409
 
410
  foreach ( $custom_value as $element ) {
411
  $field_value = sanitize_text_field( $element );
412
-
413
  if ( 'array' == $value['option'] ) {
414
  $new_value[] = $field_value;
415
  } else {
416
  $new_value .= strlen( $new_value ) ? ', ' . $field_value : $field_value;
417
  }
418
  } // foreach element
419
-
420
  $custom_value = $new_value;
421
  }
422
  }
@@ -479,13 +504,18 @@ class Woo_Fixit {
479
  echo "WooCommerce Fixit - Error</h2>\n";
480
  wp_die( 'You do not have permission to manage plugin settings.' );
481
  }
482
-
483
  /*
484
  * Extract relevant query arguments
485
  */
486
  self::$first_product = isset( $_REQUEST[ self::SLUG_PREFIX . self::INPUT_FIRST_PRODUCT ] ) ? $_REQUEST[ self::SLUG_PREFIX . self::INPUT_FIRST_PRODUCT ] : '';
487
  self::$last_product = isset( $_REQUEST[ self::SLUG_PREFIX . self::INPUT_LAST_PRODUCT ] ) ? $_REQUEST[ self::SLUG_PREFIX . self::INPUT_LAST_PRODUCT ] : '';
488
 
 
 
 
 
 
489
  self::$content_template = isset( $_REQUEST[ self::SLUG_PREFIX . self::INPUT_CONTENT_TEMPLATE ] ) ? trim( $_REQUEST[ self::SLUG_PREFIX . self::INPUT_CONTENT_TEMPLATE ] ) : self::$content_template;
490
 
491
  self::$process_category = isset( $_REQUEST[ self::SLUG_PREFIX . self::INPUT_PROCESS_CATEGORY ] ) ? true : false;
@@ -502,7 +532,7 @@ class Woo_Fixit {
502
  'warning' => array( 'handler' => '', 'comment' => '<strong>These tools make permanent updates to your database.</strong> Make a backup before you use the tools so you can restore your old values if you don&rsquo;t like the results.' ),
503
 
504
  'c0' => array( 'handler' => '', 'comment' => '<h3>Operations on ALL Media Library Images</h3>' ),
505
- 'warning2' => array( 'handler' => '', 'comment' => 'The tools in this section <strong>are not restricted</strong> by the First &amp; Last Product IDs above. They operate on <strong>ALL</strong> of the items in your Media Library.' ),
506
  'Clear Title' => array( 'handler' => '_clear_title',
507
  'comment' => '<strong>Delete ALL</strong> item Title fields.' ),
508
  'c1' => array( 'handler' => '', 'comment' => '<hr>' ),
@@ -510,6 +540,18 @@ class Woo_Fixit {
510
  'comment' => 'Fill empty item Title field with re-formatted file name.' ),
511
  'Replace Title' => array( 'handler' => '_replace_title',
512
  'comment' => '<strong>Replace ALL</strong> item Title fields with re-formatted file name.' ),
 
 
 
 
 
 
 
 
 
 
 
 
513
 
514
  'c2' => array( 'handler' => '', 'comment' => '<h3>Operations on Product Image/Product Gallery Images</h3>' ),
515
  'Clear ALT Text' => array( 'handler' => '_clear_alt_text',
@@ -615,7 +657,7 @@ class Woo_Fixit {
615
  'Assign Terms' => array( 'handler' => '_copy_term_assignments',
616
  'comment' => 'Copy product_category and/or product_tag term assignments to Media Library items for items used as Product Image or in the Product Gallery.' ),
617
  );
618
-
619
  echo '<div class="wrap">' . "\n";
620
  echo "\t\t" . '<div id="icon-tools" class="icon32"><br/></div>' . "\n";
621
  echo "\t\t" . '<h2>WooCommerce Fixit Tools v' . self::CURRENT_VERSION . '</h2>' . "\n";
@@ -635,7 +677,7 @@ class Woo_Fixit {
635
  } else {
636
  $messages_class = 'updated notice is-dismissible';
637
  }
638
-
639
  echo " <div class=\"{$messages_class}\" id=\"message\"><p>\n";
640
  echo ' ' . $message . "\n";
641
  echo " </p>\n";
@@ -665,11 +707,11 @@ class Woo_Fixit {
665
  echo "\t\t" . ' <tr valign="top"><th valign="middle" style="text-align: right;" scope="row">First Product</th><td style="text-align: left;">' . "\n";
666
  echo "\t\t" . ' <input name="' . self::SLUG_PREFIX . self::INPUT_FIRST_PRODUCT . '" type="text" size="5" value="' . self::$first_product . '">' . "\n";
667
  echo "\t\t" . ' </td></tr>' . "\n";
668
-
669
  echo "\t\t" . ' <tr valign="top"><th valign="middle" style="text-align: right;" scope="row">Last Product</th><td style="text-align: left;">' . "\n";
670
  echo "\t\t" . ' <input name="' . self::SLUG_PREFIX . self::INPUT_LAST_PRODUCT . '" type="text" size="5" value="' . self::$last_product . '">' . "\n";
671
  echo "\t\t" . ' </td></tr>' . "\n";
672
-
673
  foreach ( $setting_actions as $label => $action ) {
674
  if ( isset( $action['open'] ) ) {
675
  echo "\t\t" . ' <tr><td colspan=2 style="padding: 2px 0px;">' . "\n";
@@ -691,7 +733,7 @@ class Woo_Fixit {
691
  }
692
  }
693
  }
694
-
695
  echo "\t\t" . ' </table>' . "\n";
696
  echo "\t\t" . ' </p>' . "\n";
697
  echo "\t\t" . '</form>' . "\n";
@@ -728,7 +770,7 @@ class Woo_Fixit {
728
  */
729
  private static function _build_product_attachments( $build_pa = true ) {
730
  global $wpdb;
731
-
732
  if ( ! empty( self::$first_product ) ) {
733
  $lower_bound = (integer) self::$first_product;
734
  } else {
@@ -755,7 +797,7 @@ class Woo_Fixit {
755
  self::$product_attachments[ $result->post_id ]['post_title'] = trim( $result->post_title );
756
  self::$product_attachments[ $result->post_id ][ $result->meta_key ] = trim( $result->meta_value );
757
  }
758
-
759
  if ( '_thumbnail_id' == $result->meta_key ) {
760
  $key = (integer) $result->meta_value;
761
  if ( isset( self::$attachment_products[ $key ] ) ) {
@@ -787,7 +829,7 @@ class Woo_Fixit {
787
  */
788
  private static function _clear_title() {
789
  global $wpdb;
790
-
791
  $results = $wpdb->query( "UPDATE {$wpdb->posts} SET post_title = '' WHERE post_type = 'attachment'" );
792
  return "_clear_title() performed {$results} update(s).\n";
793
  } // _clear_title
@@ -801,10 +843,10 @@ class Woo_Fixit {
801
  */
802
  private static function _fill_title() {
803
  global $wpdb;
804
-
805
  $query = sprintf( 'SELECT m.post_id, m.meta_value FROM %1$s as m INNER JOIN %2$s as p ON m.post_id = p.ID WHERE ( p.post_title = \'\' ) AND ( p.post_type = \'attachment\' ) AND ( m.meta_key IN ( \'_wp_attached_file\' ) )', $wpdb->postmeta, $wpdb->posts );
806
  $results = $wpdb->get_results( $query );
807
-
808
  $update_count = 0;
809
  $select_bits = '';
810
  $where_bits = array();
@@ -814,10 +856,8 @@ class Woo_Fixit {
814
  $new_title = str_replace( array( '-', '_', '.' ), ' ', $path_info['filename'] );
815
  $select_bits .= " WHEN ID = {$result->post_id} THEN '{$new_title}'";
816
  $where_bits[] = $result->post_id;
817
-
818
- /*
819
- * Run an update when the chunk is full
820
- */
821
  if ( 25 <= ++$chunk_count ) {
822
  $where_bits = implode( ',', $where_bits );
823
  $update_query = "UPDATE {$wpdb->posts} SET post_title = CASE{$select_bits} ELSE post_title END WHERE ID IN ( {$where_bits} )";
@@ -828,10 +868,8 @@ class Woo_Fixit {
828
  $chunk_count = 0;
829
  }
830
  }
831
-
832
- /*
833
- * Run a final update if the chunk is partially filled
834
- */
835
  if ( $chunk_count ) {
836
  $where_bits = implode( ',', $where_bits );
837
  $update_query = "UPDATE {$wpdb->posts} SET post_title = CASE{$select_bits} ELSE post_title END WHERE ID IN ( {$where_bits} )";
@@ -851,10 +889,10 @@ class Woo_Fixit {
851
  */
852
  private static function _replace_title() {
853
  global $wpdb;
854
-
855
  $query = sprintf( 'SELECT m.post_id, m.meta_value FROM %1$s as m INNER JOIN %2$s as p ON m.post_id = p.ID WHERE ( p.post_mime_type LIKE \'%3$s\' ) AND ( p.post_type = \'attachment\' ) AND ( m.meta_key IN ( \'_wp_attached_file\' ) )', $wpdb->postmeta, $wpdb->posts, 'image/%' );
856
  $results = $wpdb->get_results( $query );
857
-
858
  $update_count = 0;
859
  $select_bits = '';
860
  $where_bits = array();
@@ -864,10 +902,8 @@ class Woo_Fixit {
864
  $new_title = str_replace( array( '-', '_', '.' ), ' ', $path_info['filename'] );
865
  $select_bits .= " WHEN ID = {$result->post_id} THEN '{$new_title}'";
866
  $where_bits[] = $result->post_id;
867
-
868
- /*
869
- * Run an update when the chunk is full
870
- */
871
  if ( 25 <= ++$chunk_count ) {
872
  $where_bits = implode( ',', $where_bits );
873
  $update_query = "UPDATE {$wpdb->posts} SET post_title = CASE{$select_bits} ELSE post_title END WHERE ID IN ( {$where_bits} )";
@@ -878,10 +914,8 @@ class Woo_Fixit {
878
  $chunk_count = 0;
879
  }
880
  }
881
-
882
- /*
883
- * Run a final update if the chunk is partially filled
884
- */
885
  if ( $chunk_count ) {
886
  $where_bits = implode( ',', $where_bits );
887
  $update_query = "UPDATE {$wpdb->posts} SET post_title = CASE{$select_bits} ELSE post_title END WHERE ID IN ( {$where_bits} )";
@@ -892,6 +926,66 @@ class Woo_Fixit {
892
  return "_replace_title() performed {$update_count} update(s).\n";
893
  } // _replace_title
894
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
895
  /**
896
  * Empty ALT Text field in all Product Image/Product Gallery items
897
  *
@@ -901,7 +995,7 @@ class Woo_Fixit {
901
  */
902
  private static function _clear_alt_text() {
903
  global $wpdb;
904
-
905
  self::_build_product_attachments();
906
  ksort( self::$attachment_products );
907
  $update_count = 0;
@@ -911,7 +1005,7 @@ class Woo_Fixit {
911
  $query_result = $wpdb->query( $delete_query );
912
  $update_count += $query_result;
913
  }
914
-
915
  return "_clear_alt_text() performed {$update_count} delete(s).\n";
916
  } // _clear_alt_text
917
 
@@ -924,7 +1018,7 @@ class Woo_Fixit {
924
  */
925
  private static function _fill_alt_text() {
926
  global $wpdb;
927
-
928
  self::_build_product_attachments();
929
  $delete_count = 0;
930
  $insert_count = 0;
@@ -934,16 +1028,12 @@ class Woo_Fixit {
934
  if ( empty( $terms ) ) {
935
  continue;
936
  }
937
-
938
- /*
939
- * Build an array of "first product category" names
940
- */
941
  $product_terms = array();
942
  foreach ( $terms as $term ) {
943
  if ( isset( $product_terms[ $term->object_id ] ) ) {
944
- /*
945
- * The first top-level term wins
946
- */
947
  if ( 0 == $product_terms[ $term->object_id ]['parent'] ) {
948
  continue;
949
  } elseif ( ( (integer) $term->parent ) < $product_terms[ $term->object_id ]['parent'] ) {
@@ -954,9 +1044,7 @@ class Woo_Fixit {
954
  }
955
  }
956
 
957
- /*
958
- * Assign the names to each attachment
959
- */
960
  $attachment_values = array();
961
  foreach ( $chunk as $key => $value ) {
962
  if ( empty( $product_terms[ $key ] ) ) {
@@ -966,7 +1054,7 @@ class Woo_Fixit {
966
  if ( ! empty( $value['_thumbnail_id'] ) ) {
967
  $attachment_values[ $value['_thumbnail_id'] ] = $product_terms[ $key ]['name'];
968
  }
969
-
970
  if ( ! empty( $value['_product_image_gallery'] ) ) {
971
  $ids = explode( ',', $value['_product_image_gallery'] );
972
  foreach( $ids as $id ) {
@@ -975,9 +1063,7 @@ class Woo_Fixit {
975
  }
976
  }
977
 
978
- /*
979
- * Find the existing ALT Text values and remove them from the update
980
- */
981
  $keys = implode( ',', array_keys( $attachment_values ) );
982
  $select_query = "SELECT post_id, meta_value FROM {$wpdb->postmeta} WHERE ( post_id IN ( {$keys} ) ) AND ( meta_key = '_wp_attachment_image_alt' )";
983
  $empty_values = array();
@@ -989,20 +1075,16 @@ class Woo_Fixit {
989
  }
990
  unset( $attachment_values[ (integer) $existing_value->post_id ] );
991
  }
992
-
993
- /*
994
- * Delete empty ALT Text values
995
- */
996
  if ( ! empty( $empty_values ) ) {
997
  $keys = implode( ',', $empty_values );
998
  $delete_query = "DELETE FROM {$wpdb->postmeta} WHERE ( post_id IN ( {$keys} ) ) AND ( meta_key = '_wp_attachment_image_alt' )";
999
  $query_result = $wpdb->query( $delete_query );
1000
  $delete_count += $query_result;
1001
  }
1002
-
1003
- /*
1004
- * Insert the new values
1005
- */
1006
  foreach ( $attachment_values as $attachment => $text ) {
1007
  $insert_query = "INSERT INTO {$wpdb->postmeta} ( `post_id`,`meta_key`,`meta_value` )
1008
  VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
@@ -1010,7 +1092,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1010
  $insert_count += $query_result;
1011
  }
1012
  }
1013
-
1014
  return "_fill_alt_text() performed {$delete_count} delete(s), {$insert_count} inserts(s).\n";
1015
  } // _fill_alt_text
1016
 
@@ -1023,7 +1105,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1023
  */
1024
  private static function _replace_alt_text() {
1025
  global $wpdb;
1026
-
1027
  self::_build_product_attachments();
1028
  $delete_count = 0;
1029
  $insert_count = 0;
@@ -1034,15 +1116,11 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1034
  continue;
1035
  }
1036
 
1037
- /*
1038
- * Build an array of "first product category" names
1039
- */
1040
  $product_terms = array();
1041
  foreach ( $terms as $term ) {
1042
  if ( isset( $product_terms[ $term->object_id ] ) ) {
1043
- /*
1044
- * The first top-level term wins
1045
- */
1046
  if ( 0 == $product_terms[ $term->object_id ]['parent'] ) {
1047
  continue;
1048
  } elseif ( ( (integer) $term->parent ) < $product_terms[ $term->object_id ]['parent'] ) {
@@ -1053,15 +1131,13 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1053
  }
1054
  }
1055
 
1056
- /*
1057
- * Assign the names to each attachment
1058
- */
1059
  $attachment_values = array();
1060
  foreach ( $chunk as $key => $value ) {
1061
  if ( isset( $value['_thumbnail_id'] ) ) {
1062
  $attachment_values[ $value['_thumbnail_id'] ] = $product_terms[ $key ]['name'];
1063
  }
1064
-
1065
  if ( !empty( $value['_product_image_gallery'] ) ) {
1066
  $ids = explode( ',', $value['_product_image_gallery'] );
1067
  foreach( $ids as $id ) {
@@ -1070,17 +1146,13 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1070
  }
1071
  }
1072
 
1073
- /*
1074
- * Remove the old ALT Text values
1075
- */
1076
  $keys = implode( ',', array_keys( $attachment_values ) );
1077
  $delete_query = "DELETE FROM {$wpdb->postmeta} WHERE ( post_id IN ( {$keys} ) ) AND ( meta_key = '_wp_attachment_image_alt' )";
1078
  $query_result = $wpdb->query( $delete_query );
1079
  $delete_count += $query_result;
1080
-
1081
- /*
1082
- * Insert the new values
1083
- */
1084
  foreach ( $attachment_values as $attachment => $text ) {
1085
  $insert_query = "INSERT INTO {$wpdb->postmeta} ( `post_id`,`meta_key`,`meta_value` )
1086
  VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
@@ -1088,7 +1160,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1088
  $insert_count += $query_result;
1089
  }
1090
  }
1091
-
1092
  return "_replace_alt_text() performed {$delete_count} delete(s), {$insert_count} inserts(s).\n";
1093
  } // _replace_alt_text
1094
 
@@ -1101,20 +1173,18 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1101
  */
1102
  private static function _fill_alt_text_t() {
1103
  global $wpdb;
1104
-
1105
  self::_build_product_attachments();
1106
  $delete_count = 0;
1107
  $insert_count = 0;
1108
  foreach ( array_chunk( self::$product_attachments, 25, true ) as $chunk ) {
1109
- /*
1110
- * Assign the Product Title to each attachment
1111
- */
1112
  $attachment_values = array();
1113
  foreach ( $chunk as $key => $value ) {
1114
  if ( ! empty( $value['_thumbnail_id'] ) ) {
1115
  $attachment_values[ $value['_thumbnail_id'] ] = $value['post_title'];
1116
  }
1117
-
1118
  if ( ! empty( $value['_product_image_gallery'] ) ) {
1119
  $ids = explode( ',', $value['_product_image_gallery'] );
1120
  foreach( $ids as $id ) {
@@ -1123,9 +1193,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1123
  }
1124
  }
1125
 
1126
- /*
1127
- * Find the existing ALT Text values and remove them from the update
1128
- */
1129
  $keys = implode( ',', array_keys( $attachment_values ) );
1130
  $select_query = "SELECT post_id, meta_value FROM {$wpdb->postmeta} WHERE ( post_id IN ( {$keys} ) ) AND ( meta_key = '_wp_attachment_image_alt' )";
1131
  $empty_values = array();
@@ -1137,20 +1205,16 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1137
  }
1138
  unset( $attachment_values[ (integer) $existing_value->post_id ] );
1139
  }
1140
-
1141
- /*
1142
- * Delete empty ALT Text values
1143
- */
1144
  if ( ! empty( $empty_values ) ) {
1145
  $keys = implode( ',', $empty_values );
1146
  $delete_query = "DELETE FROM {$wpdb->postmeta} WHERE ( post_id IN ( {$keys} ) ) AND ( meta_key = '_wp_attachment_image_alt' )";
1147
  $query_result = $wpdb->query( $delete_query );
1148
  $delete_count += $query_result;
1149
  }
1150
-
1151
- /*
1152
- * Insert the new values
1153
- */
1154
  foreach ( $attachment_values as $attachment => $text ) {
1155
  $insert_query = "INSERT INTO {$wpdb->postmeta} ( `post_id`,`meta_key`,`meta_value` )
1156
  VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
@@ -1158,7 +1222,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1158
  $insert_count += $query_result;
1159
  }
1160
  }
1161
-
1162
  return "_fill_alt_text_t() performed {$delete_count} delete(s), {$insert_count} inserts(s).\n";
1163
  } // _fill_alt_text_t
1164
 
@@ -1171,20 +1235,18 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1171
  */
1172
  private static function _replace_alt_text_t() {
1173
  global $wpdb;
1174
-
1175
  self::_build_product_attachments();
1176
  $delete_count = 0;
1177
  $insert_count = 0;
1178
  foreach ( array_chunk( self::$product_attachments, 25, true ) as $chunk ) {
1179
- /*
1180
- * Assign the Product Title to each attachment
1181
- */
1182
  $attachment_values = array();
1183
  foreach ( $chunk as $key => $value ) {
1184
  if ( isset( $value['_thumbnail_id'] ) ) {
1185
  $attachment_values[ $value['_thumbnail_id'] ] = $value['post_title'];
1186
  }
1187
-
1188
  if ( !empty( $value['_product_image_gallery'] ) ) {
1189
  $ids = explode( ',', $value['_product_image_gallery'] );
1190
  foreach( $ids as $id ) {
@@ -1193,17 +1255,13 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1193
  }
1194
  }
1195
 
1196
- /*
1197
- * Remove the old ALT Text values
1198
- */
1199
  $keys = implode( ',', array_keys( $attachment_values ) );
1200
  $delete_query = "DELETE FROM {$wpdb->postmeta} WHERE ( post_id IN ( {$keys} ) ) AND ( meta_key = '_wp_attachment_image_alt' )";
1201
  $query_result = $wpdb->query( $delete_query );
1202
  $delete_count += $query_result;
1203
-
1204
- /*
1205
- * Insert the new values
1206
- */
1207
  foreach ( $attachment_values as $attachment => $text ) {
1208
  $insert_query = "INSERT INTO {$wpdb->postmeta} ( `post_id`,`meta_key`,`meta_value` )
1209
  VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
@@ -1211,7 +1269,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1211
  $insert_count += $query_result;
1212
  }
1213
  }
1214
-
1215
  return "_replace_alt_text_t() performed {$delete_count} delete(s), {$insert_count} inserts(s).\n";
1216
  } // _replace_alt_text_t
1217
 
@@ -1224,19 +1282,17 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1224
  */
1225
  private static function _fill_title_t() {
1226
  global $wpdb;
1227
-
1228
  self::_build_product_attachments();
1229
  $update_count = 0;
1230
  foreach ( array_chunk( self::$product_attachments, 25, true ) as $chunk ) {
1231
- /*
1232
- * Assign the Product Title to each attachment
1233
- */
1234
  $attachment_values = array();
1235
  foreach ( $chunk as $key => $value ) {
1236
  if ( ! empty( $value['_thumbnail_id'] ) ) {
1237
  $attachment_values[ $value['_thumbnail_id'] ] = $value['post_title'];
1238
  }
1239
-
1240
  if ( ! empty( $value['_product_image_gallery'] ) ) {
1241
  $ids = explode( ',', $value['_product_image_gallery'] );
1242
  foreach( $ids as $id ) {
@@ -1245,9 +1301,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1245
  }
1246
  }
1247
 
1248
- /*
1249
- * Find the non-empty Title values and remove them from the update
1250
- */
1251
  $keys = implode( ',', array_keys( $attachment_values ) );
1252
  $select_query = "SELECT ID, post_title FROM {$wpdb->posts} WHERE ( ID IN ( {$keys} ) )";
1253
  //error_log( __LINE__ . ' Woo_Fixit::_fill_title_t() $select_query = ' . var_export( $select_query, true ), 0 );
@@ -1258,27 +1312,25 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1258
  unset( $attachment_values[ (integer) $existing_value->ID ] );
1259
  }
1260
  }
1261
-
1262
- /*
1263
- * Update with new values, if any
1264
- */
1265
  if ( empty( $attachment_values ) ) {
1266
  continue;
1267
  }
1268
-
1269
  $select_bits = '';
1270
  $where_bits = array();
1271
  foreach ( $attachment_values as $attachment => $text ) {
1272
  $select_bits .= " WHEN ID = {$attachment} THEN '{$text}'";
1273
  $where_bits[] = $attachment;
1274
  }
1275
-
1276
  $where_bits = implode( ',', $where_bits );
1277
  $update_query = "UPDATE {$wpdb->posts} SET post_title = CASE{$select_bits} ELSE post_title END WHERE ID IN ( {$where_bits} )";
1278
  $query_result = $wpdb->query( $update_query );
1279
  $update_count += absint( $query_result );
1280
  } // foreach $chunk
1281
-
1282
  return "_fill_title_t() performed performed {$update_count} update(s).\n";
1283
  } // _fill_title_t
1284
 
@@ -1291,19 +1343,17 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1291
  */
1292
  private static function _replace_title_t() {
1293
  global $wpdb;
1294
-
1295
  self::_build_product_attachments();
1296
  $update_count = 0;
1297
  foreach ( array_chunk( self::$product_attachments, 25, true ) as $chunk ) {
1298
- /*
1299
- * Assign the Product Title to each attachment
1300
- */
1301
  $attachment_values = array();
1302
  foreach ( $chunk as $key => $value ) {
1303
  if ( isset( $value['_thumbnail_id'] ) ) {
1304
  $attachment_values[ $value['_thumbnail_id'] ] = $value['post_title'];
1305
  }
1306
-
1307
  if ( !empty( $value['_product_image_gallery'] ) ) {
1308
  $ids = explode( ',', $value['_product_image_gallery'] );
1309
  foreach( $ids as $id ) {
@@ -1312,9 +1362,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1312
  }
1313
  }
1314
 
1315
- /*
1316
- * Update with new values, if any
1317
- */
1318
  if ( empty( $attachment_values ) ) {
1319
  continue;
1320
  }
@@ -1324,13 +1372,13 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1324
  $select_bits .= " WHEN ID = {$attachment} THEN '{$text}'";
1325
  $where_bits[] = $attachment;
1326
  }
1327
-
1328
  $where_bits = implode( ',', $where_bits );
1329
  $update_query = "UPDATE {$wpdb->posts} SET post_title = CASE{$select_bits} ELSE post_title END WHERE ID IN ( {$where_bits} )";
1330
  $query_result = $wpdb->query( $update_query );
1331
  $update_count += absint( $query_result );
1332
  } // foreach $chunk
1333
-
1334
  return "_replace_title_t() performed {$update_count} update(s).\n";
1335
  } // _replace_title_t
1336
 
@@ -1348,7 +1396,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1348
  global $wpdb;
1349
 
1350
  $results = array( 'error' => '', 'delete_count' => 0, 'insert_count' => 0 );
1351
-
1352
  $content_template = self::$content_template;
1353
  if ( 'template:' == substr( $content_template, 0, 9 ) ) {
1354
  $content_template = substr( $content_template, 9 );
@@ -1378,19 +1426,19 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1378
  foreach ( $chunk as $key => $value ) {
1379
  if ( ! empty( $value['_thumbnail_id'] ) ) {
1380
  $all_values[] = $id = $value['_thumbnail_id'];
1381
-
1382
  // Evaluate the template for the Product Image
1383
  $template_value = trim( MLAOptions::mla_get_data_source( $id, 'single_attachment_mapping', $my_setting, NULL ) );
1384
  if ( !empty( $template_value ) ) {
1385
  $replace_values[ $id ] = $template_value;
1386
  }
1387
  }
1388
-
1389
  if ( ! empty( $value['_product_image_gallery'] ) ) {
1390
  $ids = explode( ',', $value['_product_image_gallery'] );
1391
  foreach( $ids as $id ) {
1392
  $all_values[] = $id;
1393
-
1394
  // Evaluate the template for a Product Gallery Image
1395
  $template_value = trim( MLAOptions::mla_get_data_source( $id, 'single_attachment_mapping', $my_setting, NULL ) );
1396
  if ( !empty( $template_value ) ) {
@@ -1417,20 +1465,16 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1417
  // Delete all of the existing values
1418
  $delete_values = $all_values;
1419
  }
1420
-
1421
- /*
1422
- * Delete ALT Text values that are empty or will be replaced
1423
- */
1424
  if ( ! empty( $delete_values ) ) {
1425
  $keys = implode( ',', $delete_values );
1426
  $delete_query = "DELETE FROM {$wpdb->postmeta} WHERE ( post_id IN ( {$keys} ) ) AND ( meta_key = '_wp_attachment_image_alt' )";
1427
  $query_result = $wpdb->query( $delete_query );
1428
  $delete_count += $query_result;
1429
  }
1430
-
1431
- /*
1432
- * Insert the new values
1433
- */
1434
  foreach ( $replace_values as $attachment => $text ) {
1435
  $insert_query = "INSERT INTO {$wpdb->postmeta} ( `post_id`,`meta_key`,`meta_value` )
1436
  VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
@@ -1438,7 +1482,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1438
  $insert_count += $query_result;
1439
  }
1440
  } // each chunk
1441
-
1442
  $results['delete_count'] = $delete_count;
1443
  $results['insert_count'] = $insert_count;
1444
  return $results;
@@ -1489,7 +1533,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1489
  */
1490
  private static function _remove_feature() {
1491
  global $wpdb;
1492
-
1493
  self::_build_product_attachments();
1494
 
1495
  $update_count = 0;
@@ -1500,11 +1544,11 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1500
  if ( empty( $result['_thumbnail_id'] ) ) {
1501
  continue;
1502
  }
1503
-
1504
  $feature = (integer) $result['_thumbnail_id'];
1505
  $gallery = array();
1506
  $feature_found = false;
1507
-
1508
  if ( ! empty( $result['_product_image_gallery'] ) ) {
1509
  foreach ( explode( ',', $result['_product_image_gallery'] ) as $item ) {
1510
  if ( $feature == (integer) $item ) {
@@ -1514,15 +1558,13 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1514
  }
1515
  } // foreach gallery item
1516
  }
1517
-
1518
  if ( $feature_found ) {
1519
  $new_gallery = implode( ',', $gallery );
1520
  $select_bits .= " WHEN post_id = {$post_id} THEN '{$new_gallery}'";
1521
  $where_bits[] = $post_id;
1522
-
1523
- /*
1524
- * Run an update when the chunk is full
1525
- */
1526
  if ( 25 <= ++$chunk_count ) {
1527
  $where_bits = implode( ',', $where_bits );
1528
  $update_query = "UPDATE {$wpdb->postmeta} SET meta_value = CASE{$select_bits} ELSE meta_value END WHERE post_id IN ( {$where_bits} ) AND meta_key = '_product_image_gallery'";
@@ -1534,10 +1576,8 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1534
  }
1535
  } // feature removed
1536
  } // foreach product
1537
-
1538
- /*
1539
- * Run a final update if the chunk is partially filled
1540
- */
1541
  if ( $chunk_count ) {
1542
  $where_bits = implode( ',', $where_bits );
1543
  $update_query = "UPDATE {$wpdb->postmeta} SET meta_value = CASE{$select_bits} ELSE meta_value END WHERE post_id IN ( {$where_bits} ) AND meta_key = '_product_image_gallery'";
@@ -1557,7 +1597,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1557
  */
1558
  private static function _restore_feature() {
1559
  global $wpdb;
1560
-
1561
  self::_build_product_attachments();
1562
 
1563
  $update_count = 0;
@@ -1568,7 +1608,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1568
  if ( empty( $result['_thumbnail_id'] ) ) {
1569
  continue;
1570
  }
1571
-
1572
  $feature = (integer) $result['_thumbnail_id'];
1573
  $gallery = array();
1574
  $feature_found = false;
@@ -1581,20 +1621,18 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1581
  }
1582
  } // foreach gallery item
1583
  }
1584
-
1585
  if ( ! $feature_found ) {
1586
  if ( count( $gallery ) ) {
1587
  $new_gallery = implode( ',', $gallery ) . ',' . $feature;
1588
  } else {
1589
  $new_gallery = (string) $feature;
1590
  }
1591
-
1592
  $select_bits .= " WHEN post_id = {$post_id} THEN '{$new_gallery}'";
1593
  $where_bits[] = $post_id;
1594
-
1595
- /*
1596
- * Run an update when the chunk is full
1597
- */
1598
  if ( 25 <= ++$chunk_count ) {
1599
  $where_bits = implode( ',', $where_bits );
1600
  $update_query = "UPDATE {$wpdb->postmeta} SET meta_value = CASE{$select_bits} ELSE meta_value END WHERE post_id IN ( {$where_bits} ) AND meta_key = '_product_image_gallery'";
@@ -1606,10 +1644,8 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1606
  }
1607
  } // feature restored
1608
  } // foreach product
1609
-
1610
- /*
1611
- * Run a final update if the chunk is partially filled
1612
- */
1613
  if ( $chunk_count ) {
1614
  $where_bits = implode( ',', $where_bits );
1615
  $update_query = "UPDATE {$wpdb->postmeta} SET meta_value = CASE{$select_bits} ELSE meta_value END WHERE post_id IN ( {$where_bits} ) AND meta_key = '_product_image_gallery'";
@@ -1629,7 +1665,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1629
  */
1630
  private static function _reverse_gallery() {
1631
  global $wpdb;
1632
-
1633
  self::_build_product_attachments();
1634
 
1635
  $update_count = 0;
@@ -1642,15 +1678,13 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1642
  } else {
1643
  $gallery = explode( ',', $result['_product_image_gallery'] );
1644
  }
1645
-
1646
  if ( 1 < count( $gallery ) ) {
1647
  $new_gallery = implode( ',', array_reverse( $gallery ) );
1648
  $select_bits .= " WHEN post_id = {$post_id} THEN '{$new_gallery}'";
1649
  $where_bits[] = $post_id;
1650
-
1651
- /*
1652
- * Run an update when the chunk is full
1653
- */
1654
  if ( 25 <= ++$chunk_count ) {
1655
  $where_bits = implode( ',', $where_bits );
1656
  $update_query = "UPDATE {$wpdb->postmeta} SET meta_value = CASE{$select_bits} ELSE meta_value END WHERE post_id IN ( {$where_bits} ) AND meta_key = '_product_image_gallery'";
@@ -1662,10 +1696,8 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1662
  }
1663
  } // gallery reversed
1664
  } // foreach product
1665
-
1666
- /*
1667
- * Run a final update if the chunk is partially filled
1668
- */
1669
  if ( $chunk_count ) {
1670
  $where_bits = implode( ',', $where_bits );
1671
  $update_query = "UPDATE {$wpdb->postmeta} SET meta_value = CASE{$select_bits} ELSE meta_value END WHERE post_id IN ( {$where_bits} ) AND meta_key = '_product_image_gallery'";
@@ -1705,16 +1737,14 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1705
  } else {
1706
  $thumbnails = $result['_thumbnail_id'];
1707
  }
1708
-
1709
  if ( empty( $result['_product_image_gallery'] ) ) {
1710
  $galleries = array();
1711
  } else {
1712
  $galleries = $result['_product_image_gallery'];
1713
  }
1714
 
1715
- /*
1716
- * Compose references
1717
- */
1718
  $references = '';
1719
  $thumbnail_text = '';
1720
  foreach ( $thumbnails as $thumbnail ) {
@@ -1723,7 +1753,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1723
  if ( !empty( $thumbnail_text ) ) {
1724
  $references .= 'Thumbnails: ' . $thumbnail_text;
1725
  }
1726
-
1727
  $gallery_text = '';
1728
  foreach ( $galleries as $gallery ) {
1729
  $gallery_text .= sprintf( '(%1$d) %2$s,', $gallery, self::$product_attachments[ $gallery ]['post_title'] );
@@ -1735,14 +1765,12 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1735
 
1736
  $references .= 'Galleries: ' . $gallery_text;
1737
  }
1738
-
1739
  if ( !empty( $references ) ) {
1740
  $thumbnail_count += count( $thumbnails );
1741
  $gallery_count += count( $galleries );
1742
 
1743
- /*
1744
- * Insert the new values
1745
- */
1746
  $insert_query = "INSERT INTO {$wpdb->postmeta} ( `post_id`,`meta_key`,`meta_value` )
1747
  VALUES ( {$post_id},'Woo Used In','{$references}' )";
1748
  $query_result = $wpdb->query( $insert_query );
@@ -1811,7 +1839,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1811
  */
1812
  private static function _update_product_tags( $action ) {
1813
  global $wpdb;
1814
-
1815
  self::_build_product_attachments();
1816
 
1817
  $update_count = 0;
@@ -1832,7 +1860,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1832
  if ( count( $products ) == 0 ) {
1833
  continue;
1834
  }
1835
-
1836
  switch ( $action ) {
1837
  case 'clear':
1838
  case 'fill':
@@ -1840,7 +1868,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1840
  $ids = implode( ',', array_keys( $products ) );
1841
  $query = sprintf( 'SELECT DISTINCT tr.object_id FROM %1$s as tr INNER JOIN %2$s as tt ON tr.term_taxonomy_id = tt.term_taxonomy_id WHERE ( tr.object_id IN ( %3$s ) AND tt.taxonomy = \'product_tag\' ) ', $wpdb->term_relationships, $wpdb->term_taxonomy, $ids );
1842
  $assignments = $wpdb->get_col( $query );
1843
-
1844
  if ( 'clear' == $action ) {
1845
  foreach ( $assignments as $assignment ) {
1846
  wp_delete_object_term_relationships( $assignment, 'product_tag' );
@@ -1849,10 +1877,10 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1849
  } else {
1850
  // Find the products that have no assignments
1851
  $assignments = array_diff_key( $products, array_flip( $assignments ) );
1852
-
1853
  foreach ( $assignments as $product_id => $assignment ) {
1854
  $attachment_tags = wp_get_object_terms( $assignment, 'attachment_tag', array( 'orderby' => 'none', 'fields' => 'names' ) );
1855
-
1856
  if ( ! empty( $attachment_tags ) ) {
1857
  $term_taxonomy_ids = wp_set_object_terms( $product_id, $attachment_tags, 'product_tag' );
1858
  $terms_added += count( $term_taxonomy_ids );
@@ -1865,7 +1893,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1865
  case 'replace':
1866
  foreach ( $products as $product_id => $assignment ) {
1867
  $attachment_tags = wp_get_object_terms( $assignment, 'attachment_tag', array( 'orderby' => 'none', 'fields' => 'names' ) );
1868
-
1869
  if ( 'append' == $action ) {
1870
  if ( ! empty( $attachment_tags ) ) {
1871
  $old_term_taxonomy_ids = wp_get_object_terms( $product_id, 'product_tag', array( 'orderby' => 'none', 'fields' => 'tt_ids' ) );
@@ -1886,7 +1914,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1886
  }
1887
  } else {
1888
  $term_taxonomy_ids = wp_get_object_terms( $product_id, 'product_tag', array( 'orderby' => 'none', 'fields' => 'tt_ids' ) );
1889
-
1890
  $old_terms = count( $term_taxonomy_ids );
1891
  if ( 0 < $old_terms ) {
1892
  $terms_removed += $old_terms;
@@ -1898,7 +1926,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1898
  } // each assignment
1899
  } // action
1900
  } // each chunk
1901
-
1902
  switch ( $action ) {
1903
  case 'clear':
1904
  return "_clear_product_tags() cleared {$update_count} Product(s).\n";
@@ -1912,7 +1940,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1912
  case 'replace':
1913
  return "_replace_product_tags() replaced {$terms_added} term(s) in {$update_count} Product(s), and deleted {$terms_removed} term(s) from {$delete_count} Product(s).\n";
1914
  }
1915
-
1916
  return "ERROR: Unknown _update_product_tags action: {$action}";
1917
  } // _update_product_tags
1918
 
@@ -1974,7 +2002,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1974
  */
1975
  private static function _update_product_categories( $action ) {
1976
  global $wpdb;
1977
-
1978
  self::_build_product_attachments();
1979
 
1980
  if ( 'clear' != $action ) {
@@ -2002,7 +2030,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
2002
  if ( count( $products ) == 0 ) {
2003
  continue;
2004
  }
2005
-
2006
  switch ( $action ) {
2007
  case 'clear':
2008
  case 'fill':
@@ -2010,7 +2038,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
2010
  $ids = implode( ',', array_keys( $products ) );
2011
  $query = sprintf( 'SELECT DISTINCT tr.object_id FROM %1$s as tr INNER JOIN %2$s as tt ON tr.term_taxonomy_id = tt.term_taxonomy_id WHERE ( tr.object_id IN ( %3$s ) AND tt.taxonomy = \'product_cat\' ) ', $wpdb->term_relationships, $wpdb->term_taxonomy, $ids );
2012
  $assignments = $wpdb->get_col( $query );
2013
-
2014
  if ( 'clear' == $action ) {
2015
  foreach ( $assignments as $assignment ) {
2016
  wp_delete_object_term_relationships( $assignment, 'product_cat' );
@@ -2019,11 +2047,11 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
2019
  } else {
2020
  // Find the products that have no assignments
2021
  $assignments = array_diff_key( $products, array_flip( $assignments ) );
2022
-
2023
  foreach ( $assignments as $product_id => $assignment ) {
2024
  $attachment_tags = wp_get_object_terms( $assignment, 'attachment_tag', array( 'orderby' => 'none', 'fields' => 'names' ) );
2025
  $common_terms = array_keys( array_intersect( $product_categories, $attachment_tags ) );
2026
-
2027
  if ( ! empty( $common_terms ) ) {
2028
  $term_taxonomy_ids = wp_set_object_terms( $product_id, $common_terms, 'product_cat' );
2029
  $terms_added += count( $term_taxonomy_ids );
@@ -2037,7 +2065,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
2037
  foreach ( $products as $product_id => $assignment ) {
2038
  $attachment_tags = wp_get_object_terms( $assignment, 'attachment_tag', array( 'orderby' => 'none', 'fields' => 'names' ) );
2039
  $common_terms = array_keys( array_intersect( $product_categories, $attachment_tags ) );
2040
-
2041
  if ( 'append' == $action ) {
2042
  if ( ! empty( $common_terms ) ) {
2043
  $old_term_taxonomy_ids = wp_get_object_terms( $product_id, 'product_cat', array( 'orderby' => 'none', 'fields' => 'tt_ids' ) );
@@ -2058,7 +2086,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
2058
  }
2059
  } else {
2060
  $term_taxonomy_ids = wp_get_object_terms( $product_id, 'product_cat', array( 'orderby' => 'none', 'fields' => 'tt_ids' ) );
2061
-
2062
  $old_terms = count( $term_taxonomy_ids );
2063
  if ( 0 < $old_terms ) {
2064
  $terms_removed += $old_terms;
@@ -2070,7 +2098,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
2070
  } // each assignment
2071
  } // action
2072
  } // each chunk
2073
-
2074
  switch ( $action ) {
2075
  case 'clear':
2076
  return "_clear_product_categories() cleared {$update_count} Product(s).\n";
@@ -2084,7 +2112,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
2084
  case 'replace':
2085
  return "_replace_product_categories() replaced {$terms_added} term(s) in {$update_count} Product(s), and deleted {$terms_removed} term(s) from {$delete_count} Product(s).\n";
2086
  }
2087
-
2088
  return "ERROR: Unknown _update_product_categories action: {$action}";
2089
  } // _update_product_categories
2090
 
@@ -2097,11 +2125,11 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
2097
  */
2098
  private static function _clear_attachment_categories() {
2099
  global $wpdb;
2100
-
2101
  $update_count = 0;
2102
  $offset = 0;
2103
  $limit = 25;
2104
-
2105
  do {
2106
  // Select a chunk of attachment IDs
2107
  $query = sprintf( 'SELECT p.ID FROM %1$s as p WHERE ( p.post_type = \'attachment\' ) ORDER BY p.ID LIMIT %2$d, %3$d', $wpdb->posts, $offset, $limit );
@@ -2120,10 +2148,10 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
2120
  } else {
2121
  $results = array();
2122
  }
2123
-
2124
  $offset += $limit;
2125
  } while ( count( $results ) == $limit );
2126
-
2127
  return "_clear_attachment_categories() cleared {$update_count} items(s).\n";
2128
  } // _clear_attachment_categories
2129
 
@@ -2137,7 +2165,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
2137
  */
2138
  private static function _fill_attachment_categories() {
2139
  global $wpdb;
2140
-
2141
  // Get the array of the Att. Category term objects for comparison
2142
  $attachment_categories = MLAQuery::mla_wp_get_terms( 'attachment_category', array( 'orderby' => 'none', 'hide_empty' => 0, 'fields' => 'id=>name' ) );
2143
 
@@ -2145,7 +2173,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
2145
  $terms_added = 0;
2146
  $offset = 0;
2147
  $limit = 25;
2148
-
2149
  do {
2150
  // Select a chunk of attachment IDs
2151
  $query = sprintf( 'SELECT p.ID FROM %1$s as p WHERE ( p.post_type = \'attachment\' ) ORDER BY p.ID LIMIT %2$d, %3$d', $wpdb->posts, $offset, $limit );
@@ -2156,7 +2184,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
2156
  $ids = implode( ',', $results );
2157
  $query = sprintf( 'SELECT DISTINCT tr.object_id FROM %1$s as tr INNER JOIN %2$s as tt ON tr.term_taxonomy_id = tt.term_taxonomy_id WHERE ( tr.object_id IN ( %3$s ) AND tt.taxonomy = \'attachment_category\' ) ', $wpdb->term_relationships, $wpdb->term_taxonomy, $ids );
2158
  $assignments = $wpdb->get_col( $query );
2159
-
2160
  // find the attachments that have no assignments
2161
  $assignments = array_diff( $results, $assignments );
2162
 
@@ -2172,7 +2200,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
2172
  } else {
2173
  $results = array();
2174
  }
2175
-
2176
  $offset += $limit;
2177
  } while ( count( $results ) == $limit );
2178
 
@@ -2189,7 +2217,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
2189
  */
2190
  private static function _append_attachment_categories() {
2191
  global $wpdb;
2192
-
2193
  // Get the array of the Att. Category term objects for comparison
2194
  $attachment_categories = MLAQuery::mla_wp_get_terms( 'attachment_category', array( 'orderby' => 'none', 'hide_empty' => 0, 'fields' => 'id=>name' ) );
2195
 
@@ -2197,7 +2225,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
2197
  $terms_added = 0;
2198
  $offset = 0;
2199
  $limit = 25;
2200
-
2201
  do {
2202
  // Select a chunk of attachment IDs
2203
  $query = sprintf( 'SELECT p.ID FROM %1$s as p WHERE ( p.post_type = \'attachment\' ) ORDER BY p.ID LIMIT %2$d, %3$d', $wpdb->posts, $offset, $limit );
@@ -2208,7 +2236,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
2208
  $ids = implode( ',', $results );
2209
  $query = sprintf( 'SELECT DISTINCT tr.object_id FROM %1$s as tr INNER JOIN %2$s as tt ON tr.term_taxonomy_id = tt.term_taxonomy_id WHERE ( tr.object_id IN ( %3$s ) AND tt.taxonomy = \'attachment_tag\' ) ', $wpdb->term_relationships, $wpdb->term_taxonomy, $ids );
2210
  $assignments = $wpdb->get_col( $query );
2211
-
2212
  foreach ( $assignments as $assignment ) {
2213
  $attachment_tags = wp_get_object_terms( $assignment, 'attachment_tag', array( 'orderby' => 'none', 'fields' => 'names' ) );
2214
  $common_terms = array_keys( array_intersect( $attachment_categories, $attachment_tags ) );
@@ -2226,7 +2254,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
2226
  } else {
2227
  $results = array();
2228
  }
2229
-
2230
  $offset += $limit;
2231
  } while ( count( $results ) == $limit );
2232
 
@@ -2243,7 +2271,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
2243
  */
2244
  private static function _replace_attachment_categories() {
2245
  global $wpdb;
2246
-
2247
  // Get the array of the Att. Category term objects for comparison
2248
  $attachment_categories = MLAQuery::mla_wp_get_terms( 'attachment_category', array( 'orderby' => 'none', 'hide_empty' => 0, 'fields' => 'id=>name' ) );
2249
 
@@ -2254,7 +2282,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
2254
 
2255
  $offset = 0;
2256
  $limit = 25;
2257
-
2258
  do {
2259
  // Select a chunk of attachment IDs
2260
  $query = sprintf( 'SELECT p.ID FROM %1$s as p WHERE ( p.post_type = \'attachment\' ) ORDER BY p.ID LIMIT %2$d, %3$d', $wpdb->posts, $offset, $limit );
@@ -2285,7 +2313,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
2285
  } else {
2286
  $results = array();
2287
  }
2288
-
2289
  $offset += $limit;
2290
  } while ( count( $results ) == $limit );
2291
 
@@ -2302,7 +2330,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
2302
  */
2303
  private static function _clear_term_assignments() {
2304
  self::_build_product_attachments( false );
2305
-
2306
  $item_count = 0;
2307
  $cat_count = 0;
2308
  $cat_removed = 0;
@@ -2311,7 +2339,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
2311
 
2312
  foreach ( self::$attachment_products as $ID => $used_in ) {
2313
  $item_count++;
2314
-
2315
  if ( self::$process_category ) {
2316
  $term_taxonomy_ids = wp_get_object_terms( $ID, 'product_cat', array( 'orderby' => 'none', 'fields' => 'tt_ids' ) );
2317
  $old_terms = count( $term_taxonomy_ids );
@@ -2321,7 +2349,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
2321
  $term_taxonomy_ids = wp_set_object_terms( $ID, NULL, 'product_cat' );
2322
  }
2323
  }
2324
-
2325
  if ( self::$process_tag ) {
2326
  $term_taxonomy_ids = wp_get_object_terms( $ID, 'product_tag', array( 'orderby' => 'none', 'fields' => 'tt_ids' ) );
2327
  $old_terms = count( $term_taxonomy_ids );
@@ -2332,7 +2360,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
2332
  }
2333
  }
2334
  } // foreach ID
2335
-
2336
  $cat_text = ( 1 == $cat_removed ) ? 'category' : 'categories';
2337
  $tag_text = ( 1 == $tag_removed ) ? 'tag' : 'tags';
2338
  return "_clear_term_assignments() processed {$item_count} item(s), deleted {$cat_removed} {$cat_text} from {$cat_count} item(s), and deleted {$tag_removed} {$tag_text} from {$tag_count} item(s).\n";
@@ -2348,7 +2376,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
2348
  */
2349
  private static function _copy_term_assignments() {
2350
  self::_build_product_attachments( false );
2351
-
2352
  $item_count = 0;
2353
  $cat_count = 0;
2354
  $cat_added = 0;
@@ -2368,7 +2396,7 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
2368
  if ( self::$process_tag ) {
2369
  $current_product_tag = wp_get_object_terms( $ID, 'product_tag', array( 'orderby' => 'none', 'fields' => 'tt_ids' ) );
2370
  }
2371
-
2372
  $new_product_cat = array();
2373
  $new_product_tag = array();
2374
 
@@ -2380,45 +2408,43 @@ VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
2380
  if ( in_array( $new_cat, $current_product_cat ) ) {
2381
  continue;
2382
  }
2383
-
2384
  $new_product_cat[ $new_cat ] = $new_cat;
2385
  }
2386
  }
2387
-
2388
  if ( self::$process_tag ) {
2389
  $term_taxonomy_ids = wp_get_object_terms( $product_id, 'product_tag', array( 'orderby' => 'none', 'fields' => 'tt_ids' ) );
2390
  foreach( $term_taxonomy_ids as $new_tag ) {
2391
  if ( in_array( $new_tag, $current_product_tag ) ) {
2392
  continue;
2393
  }
2394
-
2395
  $new_product_tag[ $new_tag ] = $new_tag;
2396
  }
2397
  }
2398
  } // foreach product_id
2399
  } // foreach usage
2400
-
2401
  if ( 0 < ( $new_terms = count( $new_product_cat ) ) ) {
2402
  $cat_added += $new_terms;
2403
  $cat_count++;
2404
  $term_taxonomy_ids = wp_set_object_terms( $ID, $new_product_cat, 'product_cat', true );
2405
  }
2406
-
2407
  if ( 0 < ( $new_terms = count( $new_product_tag ) ) ) {
2408
  $tag_added += $new_terms;
2409
  $tag_count++;
2410
  $term_taxonomy_ids = wp_set_object_terms( $ID, $new_product_tag, 'product_tag', true );
2411
  }
2412
  } // foreach ID
2413
-
2414
  $cat_text = ( 1 == $cat_added ) ? 'category' : 'categories';
2415
  $tag_text = ( 1 == $tag_added ) ? 'tag' : 'tags';
2416
  return "_copy_term_assignments() processed {$item_count} item(s), added {$cat_added} {$cat_text} to {$cat_count} item(s), and added {$tag_added} {$tag_text} to {$tag_count} item(s).\n";
2417
  } // _copy_term_assignments
2418
  } //Woo_Fixit
2419
 
2420
- /*
2421
- * Install the submenu at an early opportunity
2422
- */
2423
  add_action('init', 'Woo_Fixit::initialize');
2424
  ?>
9
  * - Delete ALL Title fields for Product Image/Product Gallery items.
10
  * - Fill empty item Title field with re-formatted file name.
11
  * - Replace ALL item Title fields with re-formatted file name.
12
+ * - Replace ALL item Name/Slug fields with (unique) file name.
13
  *
14
  * - Delete ALL ALT Text fields for Product Image/Product Gallery items.
15
  * - Fill empty ALT Text field with first top-level Product Category.
72
  * opened on 2/21/2017 by "bueyfx".
73
  * https://wordpress.org/support/topic/regenerate-bulk-alt-text-with-product-name-product-category-keyword/
74
  *
75
+ * Enhanced for support topic "WC Fixit Tools: Replace ALL item Name/Slug"
76
+ * opened on 10/18/2018 by "alx359".
77
+ * https://wordpress.org/support/topic/wc-fixit-tools-replace-all-item-name-slug/
78
+ *
79
  * @package WooCommerce Fixit
80
+ * @version 2.04
81
  */
82
 
83
  /*
84
  Plugin Name: WooCommerce Fixit
85
+ Plugin URI: http://davidlingren.com/
86
  Description: Adds "product:" and "product_terms:" custom substitution prefixes and adds a Tools/Woo Fixit submenu with buttons to perform a variety of MLA/WooCommerce repair and enhancement operations.
87
  Author: David Lingren
88
+ Version: 2.04
89
+ Author URI: http://davidlingren.com/
90
 
91
+ Copyright 2014-2018 David Lingren
92
 
93
  This program is free software; you can redistribute it and/or modify
94
  it under the terms of the GNU General Public License as published by
118
  *
119
  * @var string
120
  */
121
+ const CURRENT_VERSION = '2.04';
122
 
123
  /**
124
  * Slug prefix for registering and enqueueing submenu pages, style sheets and scripts
149
  private static $last_product = '';
150
  const INPUT_LAST_PRODUCT = 'upper';
151
 
152
+ /**
153
+ * Append Item ID to make file name slug unique
154
+ *
155
+ * @since 2.04
156
+ *
157
+ * @var boolean
158
+ */
159
+ private static $append_item_id = false;
160
+ const APPEND_ITEM_ID = 'append-item-id';
161
+
162
+ /**
163
+ * Use WordPress unique slug function
164
+ *
165
+ * @since 2.04
166
+ *
167
+ * @var boolean
168
+ */
169
+ private static $check_unique_slug = false;
170
+ const CHECK_UNIQUE_SLUG = 'check-unique-slug';
171
+
172
  /**
173
  * Content Template for Product Image/Product Gallery Images
174
  *
186
  *
187
  * @var boolean
188
  */
189
+ private static $process_category = false;
190
  const INPUT_PROCESS_CATEGORY = 'category';
191
 
192
  /**
196
  *
197
  * @var boolean
198
  */
199
+ private static $process_tag = false;
200
  const INPUT_PROCESS_TAG = 'tag';
201
 
202
  /**
265
  if ( empty( $products ) ) {
266
  return $custom_value;
267
  }
268
+
269
  if ( is_scalar( $products ) ) {
270
  $products = array( absint( $products ) => absint( $products ) );
271
  }
283
  return implode( ',', $terms->get_error_messages() );
284
  }
285
  //error_log( __LINE__ . " Woo_Fixit::_evaluate_terms( {$product}, {$taxonomy}, {$qualifier}, {$option} ) terms = " . var_export( $terms, true ), 0 );
286
+
287
  wp_cache_add( $product, $terms, $taxonomy . '_relationships' );
288
  }
289
 
290
  $all_terms = array_merge( $all_terms, $terms );
291
  }
292
  //error_log( __LINE__ . " Woo_Fixit::_evaluate_terms( {$product}, {$taxonomy}, {$qualifier}, {$option} ) all_terms = " . var_export( $all_terms, true ), 0 );
293
+
294
  if ( 'array' == $option ) {
295
  $custom_value = array();
296
  } else {
320
  }
321
  }
322
  }
323
+
324
  //error_log( __LINE__ . " Woo_Fixit::_evaluate_terms( {$product}, {$taxonomy}, {$qualifier}, {$option} ) custom_value = " . var_export( $custom_value, true ), 0 );
325
  return $custom_value;
326
  } // _evaluate_terms
341
  */
342
  public static function mla_expand_custom_prefix( $custom_value, $key, $value, $query, $markup_values, $post_id, $keep_existing, $default_option ) {
343
  static $product_cache = array();
344
+
345
  //error_log( __LINE__ . " Woo_Fixit::mla_expand_custom_prefix( {$key}, {$post_id}, {$keep_existing}, {$default_option} ) value = " . var_export( $value, true ), 0 );
346
  //error_log( __LINE__ . " Woo_Fixit::mla_expand_custom_prefix( {$key}, {$post_id} ) query = " . var_export( $query, true ), 0 );
347
  //error_log( __LINE__ . " Woo_Fixit::mla_expand_custom_prefix( {$key}, {$post_id} ) markup_values = " . var_export( $markup_values, true ), 0 );
364
  if ( empty( self::$attachment_products ) ) {
365
  self::_build_product_attachments( true );
366
  }
367
+
368
  // What product(s) are associated with this item?
369
  $products = array();
370
  if ( isset( self::$attachment_products[ $post_id ] ) ) {
373
  $products[ $product ] = $product;
374
  }
375
  }
376
+
377
  if ( !empty( self::$attachment_products[ $post_id ]['_product_image_gallery'] ) ) {
378
  foreach ( self::$attachment_products[ $post_id ]['_product_image_gallery'] as $product ) {
379
  $products[ $product ] = $product;
393
  $product = $product_cache[ $product_id ];
394
  } else {
395
  $product = get_post( $product_id );
396
+
397
  if ( $product instanceof WP_Post && $product->ID == $product_id ) {
398
  $product_cache[ $product_id ] = $product;
399
  } else {
400
  continue;
401
  }
402
  }
403
+
404
  if ( property_exists( $product, $value['value'] ) ) {
405
  $custom_value[] = $product->{$value['value']};
406
  } elseif ( 'permalink' == $value['value'] ) {
434
 
435
  foreach ( $custom_value as $element ) {
436
  $field_value = sanitize_text_field( $element );
437
+
438
  if ( 'array' == $value['option'] ) {
439
  $new_value[] = $field_value;
440
  } else {
441
  $new_value .= strlen( $new_value ) ? ', ' . $field_value : $field_value;
442
  }
443
  } // foreach element
444
+
445
  $custom_value = $new_value;
446
  }
447
  }
504
  echo "WooCommerce Fixit - Error</h2>\n";
505
  wp_die( 'You do not have permission to manage plugin settings.' );
506
  }
507
+
508
  /*
509
  * Extract relevant query arguments
510
  */
511
  self::$first_product = isset( $_REQUEST[ self::SLUG_PREFIX . self::INPUT_FIRST_PRODUCT ] ) ? $_REQUEST[ self::SLUG_PREFIX . self::INPUT_FIRST_PRODUCT ] : '';
512
  self::$last_product = isset( $_REQUEST[ self::SLUG_PREFIX . self::INPUT_LAST_PRODUCT ] ) ? $_REQUEST[ self::SLUG_PREFIX . self::INPUT_LAST_PRODUCT ] : '';
513
 
514
+ self::$append_item_id = isset( $_REQUEST[ self::SLUG_PREFIX . self::APPEND_ITEM_ID ] ) ? true : false;
515
+ $append_item_id_attr = self::$append_item_id ? ' checked="checked" ' : ' ';
516
+ self::$check_unique_slug = isset( $_REQUEST[ self::SLUG_PREFIX . self::CHECK_UNIQUE_SLUG ] ) ? true : false;
517
+ $check_unique_slug_attr = self::$check_unique_slug ? ' checked="checked" ' : ' ';
518
+
519
  self::$content_template = isset( $_REQUEST[ self::SLUG_PREFIX . self::INPUT_CONTENT_TEMPLATE ] ) ? trim( $_REQUEST[ self::SLUG_PREFIX . self::INPUT_CONTENT_TEMPLATE ] ) : self::$content_template;
520
 
521
  self::$process_category = isset( $_REQUEST[ self::SLUG_PREFIX . self::INPUT_PROCESS_CATEGORY ] ) ? true : false;
532
  'warning' => array( 'handler' => '', 'comment' => '<strong>These tools make permanent updates to your database.</strong> Make a backup before you use the tools so you can restore your old values if you don&rsquo;t like the results.' ),
533
 
534
  'c0' => array( 'handler' => '', 'comment' => '<h3>Operations on ALL Media Library Images</h3>' ),
535
+ 'warning2' => array( 'handler' => '', 'comment' => '<strong>The tools in this section are not restricted</strong> by the First &amp; Last Product IDs above. They operate on <strong>ALL</strong> of the items in your Media Library.' ),
536
  'Clear Title' => array( 'handler' => '_clear_title',
537
  'comment' => '<strong>Delete ALL</strong> item Title fields.' ),
538
  'c1' => array( 'handler' => '', 'comment' => '<hr>' ),
540
  'comment' => 'Fill empty item Title field with re-formatted file name.' ),
541
  'Replace Title' => array( 'handler' => '_replace_title',
542
  'comment' => '<strong>Replace ALL</strong> item Title fields with re-formatted file name.' ),
543
+ 'c1a' => array( 'handler' => '', 'comment' => '<hr>' ),
544
+ 't0301' => array( 'open' => '<table><tr>' ),
545
+ 't0302' => array( 'continue' => ' <td style="text-align: right; padding-right: 5px" valign="middle"><input name="' . self::SLUG_PREFIX . self::APPEND_ITEM_ID . '" type="checkbox"' . $append_item_id_attr . 'value="' . self::APPEND_ITEM_ID . '"></td>' ),
546
+ 't0303' => array( 'continue' => ' <td style="text-align: left; padding-right: 5px" valign="middle">Append Item ID</td>' ),
547
+ 't0304' => array( 'continue' => ' <td style="text-align: right; padding-right: 5px" valign="middle"><input name="' . self::SLUG_PREFIX . self::CHECK_UNIQUE_SLUG . '" type="checkbox"' . $check_unique_slug_attr . 'value="' . self::CHECK_UNIQUE_SLUG . '"></td>' ),
548
+ 't0305' => array( 'continue' => ' <td style="text-align: left; padding-right: 5px" valign="middle">Ensure Unique Slug</td>' ),
549
+ 't0306' => array( 'continue' => ' <td colspan=2 style="text-align: right; padding-right: 5px" valign="middle">&nbsp;</td>' ),
550
+ 't0307' => array( 'continue' => '</tr><tr>' ),
551
+ 't0308' => array( 'continue' => '<td>&nbsp;</td><td colspan="5">Check Append Item ID to add the ID to the slug value for uniqueness.<br>Check Ensure Unique Slug to activate WordPress slug validation (may be slow).</td>' ),
552
+ 't0309' => array( 'close' => '</tr></table>&nbsp;<br>' ),
553
+ 'Replace Name/Slug' => array( 'handler' => '_replace_slug',
554
+ 'comment' => '<strong>Replace ALL</strong> item Name/Slug fields with file name.' ),
555
 
556
  'c2' => array( 'handler' => '', 'comment' => '<h3>Operations on Product Image/Product Gallery Images</h3>' ),
557
  'Clear ALT Text' => array( 'handler' => '_clear_alt_text',
657
  'Assign Terms' => array( 'handler' => '_copy_term_assignments',
658
  'comment' => 'Copy product_category and/or product_tag term assignments to Media Library items for items used as Product Image or in the Product Gallery.' ),
659
  );
660
+
661
  echo '<div class="wrap">' . "\n";
662
  echo "\t\t" . '<div id="icon-tools" class="icon32"><br/></div>' . "\n";
663
  echo "\t\t" . '<h2>WooCommerce Fixit Tools v' . self::CURRENT_VERSION . '</h2>' . "\n";
677
  } else {
678
  $messages_class = 'updated notice is-dismissible';
679
  }
680
+
681
  echo " <div class=\"{$messages_class}\" id=\"message\"><p>\n";
682
  echo ' ' . $message . "\n";
683
  echo " </p>\n";
707
  echo "\t\t" . ' <tr valign="top"><th valign="middle" style="text-align: right;" scope="row">First Product</th><td style="text-align: left;">' . "\n";
708
  echo "\t\t" . ' <input name="' . self::SLUG_PREFIX . self::INPUT_FIRST_PRODUCT . '" type="text" size="5" value="' . self::$first_product . '">' . "\n";
709
  echo "\t\t" . ' </td></tr>' . "\n";
710
+
711
  echo "\t\t" . ' <tr valign="top"><th valign="middle" style="text-align: right;" scope="row">Last Product</th><td style="text-align: left;">' . "\n";
712
  echo "\t\t" . ' <input name="' . self::SLUG_PREFIX . self::INPUT_LAST_PRODUCT . '" type="text" size="5" value="' . self::$last_product . '">' . "\n";
713
  echo "\t\t" . ' </td></tr>' . "\n";
714
+
715
  foreach ( $setting_actions as $label => $action ) {
716
  if ( isset( $action['open'] ) ) {
717
  echo "\t\t" . ' <tr><td colspan=2 style="padding: 2px 0px;">' . "\n";
733
  }
734
  }
735
  }
736
+
737
  echo "\t\t" . ' </table>' . "\n";
738
  echo "\t\t" . ' </p>' . "\n";
739
  echo "\t\t" . '</form>' . "\n";
770
  */
771
  private static function _build_product_attachments( $build_pa = true ) {
772
  global $wpdb;
773
+
774
  if ( ! empty( self::$first_product ) ) {
775
  $lower_bound = (integer) self::$first_product;
776
  } else {
797
  self::$product_attachments[ $result->post_id ]['post_title'] = trim( $result->post_title );
798
  self::$product_attachments[ $result->post_id ][ $result->meta_key ] = trim( $result->meta_value );
799
  }
800
+
801
  if ( '_thumbnail_id' == $result->meta_key ) {
802
  $key = (integer) $result->meta_value;
803
  if ( isset( self::$attachment_products[ $key ] ) ) {
829
  */
830
  private static function _clear_title() {
831
  global $wpdb;
832
+
833
  $results = $wpdb->query( "UPDATE {$wpdb->posts} SET post_title = '' WHERE post_type = 'attachment'" );
834
  return "_clear_title() performed {$results} update(s).\n";
835
  } // _clear_title
843
  */
844
  private static function _fill_title() {
845
  global $wpdb;
846
+
847
  $query = sprintf( 'SELECT m.post_id, m.meta_value FROM %1$s as m INNER JOIN %2$s as p ON m.post_id = p.ID WHERE ( p.post_title = \'\' ) AND ( p.post_type = \'attachment\' ) AND ( m.meta_key IN ( \'_wp_attached_file\' ) )', $wpdb->postmeta, $wpdb->posts );
848
  $results = $wpdb->get_results( $query );
849
+
850
  $update_count = 0;
851
  $select_bits = '';
852
  $where_bits = array();
856
  $new_title = str_replace( array( '-', '_', '.' ), ' ', $path_info['filename'] );
857
  $select_bits .= " WHEN ID = {$result->post_id} THEN '{$new_title}'";
858
  $where_bits[] = $result->post_id;
859
+
860
+ // Run an update when the chunk is full
 
 
861
  if ( 25 <= ++$chunk_count ) {
862
  $where_bits = implode( ',', $where_bits );
863
  $update_query = "UPDATE {$wpdb->posts} SET post_title = CASE{$select_bits} ELSE post_title END WHERE ID IN ( {$where_bits} )";
868
  $chunk_count = 0;
869
  }
870
  }
871
+
872
+ // Run a final update if the chunk is partially filled
 
 
873
  if ( $chunk_count ) {
874
  $where_bits = implode( ',', $where_bits );
875
  $update_query = "UPDATE {$wpdb->posts} SET post_title = CASE{$select_bits} ELSE post_title END WHERE ID IN ( {$where_bits} )";
889
  */
890
  private static function _replace_title() {
891
  global $wpdb;
892
+
893
  $query = sprintf( 'SELECT m.post_id, m.meta_value FROM %1$s as m INNER JOIN %2$s as p ON m.post_id = p.ID WHERE ( p.post_mime_type LIKE \'%3$s\' ) AND ( p.post_type = \'attachment\' ) AND ( m.meta_key IN ( \'_wp_attached_file\' ) )', $wpdb->postmeta, $wpdb->posts, 'image/%' );
894
  $results = $wpdb->get_results( $query );
895
+
896
  $update_count = 0;
897
  $select_bits = '';
898
  $where_bits = array();
902
  $new_title = str_replace( array( '-', '_', '.' ), ' ', $path_info['filename'] );
903
  $select_bits .= " WHEN ID = {$result->post_id} THEN '{$new_title}'";
904
  $where_bits[] = $result->post_id;
905
+
906
+ // Run an update when the chunk is full
 
 
907
  if ( 25 <= ++$chunk_count ) {
908
  $where_bits = implode( ',', $where_bits );
909
  $update_query = "UPDATE {$wpdb->posts} SET post_title = CASE{$select_bits} ELSE post_title END WHERE ID IN ( {$where_bits} )";
914
  $chunk_count = 0;
915
  }
916
  }
917
+
918
+ // Run a final update if the chunk is partially filled
 
 
919
  if ( $chunk_count ) {
920
  $where_bits = implode( ',', $where_bits );
921
  $update_query = "UPDATE {$wpdb->posts} SET post_title = CASE{$select_bits} ELSE post_title END WHERE ID IN ( {$where_bits} )";
926
  return "_replace_title() performed {$update_count} update(s).\n";
927
  } // _replace_title
928
 
929
+ /**
930
+ * Replace ALL item Name/Slug fields with file name
931
+ *
932
+ * @since 2.04
933
+ *
934
+ * @return string HTML markup for results/messages
935
+ */
936
+ private static function _replace_slug() {
937
+ global $wpdb;
938
+ //error_log( __LINE__ . " Woo_Fixit::_replace_slug append_item_id = " . var_export( self::$append_item_id, true ), 0 );
939
+ //error_log( __LINE__ . " Woo_Fixit::_replace_slug check_unique_slug = " . var_export( self::$check_unique_slug, true ), 0 );
940
+
941
+ $query = sprintf( 'SELECT m.post_id, m.meta_value, p.post_status FROM %1$s as m INNER JOIN %2$s as p ON m.post_id = p.ID WHERE ( p.post_mime_type LIKE \'%3$s\' ) AND ( p.post_type = \'attachment\' ) AND ( m.meta_key IN ( \'_wp_attached_file\' ) )', $wpdb->postmeta, $wpdb->posts, 'image/%' );
942
+ $results = $wpdb->get_results( $query );
943
+
944
+ $update_count = 0;
945
+ $select_bits = '';
946
+ $where_bits = array();
947
+ $chunk_count = 0;
948
+ foreach( $results as $result ) {
949
+ //error_log( __LINE__ . " Woo_Fixit::_replace_slug result = " . var_export( $result, true ), 0 );
950
+ $path_info = pathinfo( $result->meta_value );
951
+ $new_slug = sanitize_title( $path_info['filename'] );
952
+
953
+ if ( self::$append_item_id ) {
954
+ $new_slug .= '-' . $result->post_id;
955
+ }
956
+
957
+ if ( self::$check_unique_slug ) {
958
+ $new_slug = wp_unique_post_slug( $new_slug, $result->post_id, $result->post_status, 'attachment', 0 );
959
+ }
960
+
961
+ $select_bits .= " WHEN ID = {$result->post_id} THEN '{$new_slug}'";
962
+ $where_bits[] = $result->post_id;
963
+
964
+ // Run an update when the chunk is full
965
+ if ( 25 <= ++$chunk_count ) {
966
+ $where_bits = implode( ',', $where_bits );
967
+ $update_query = "UPDATE {$wpdb->posts} SET post_name = CASE{$select_bits} ELSE post_name END WHERE ID IN ( {$where_bits} )";
968
+ //error_log( __LINE__ . " Woo_Fixit::_replace_slug update_query = " . var_export( $update_query, true ), 0 );
969
+ $query_result = $wpdb->query( $update_query );
970
+ $update_count += $chunk_count;
971
+ $select_bits = '';
972
+ $where_bits = array();
973
+ $chunk_count = 0;
974
+ }
975
+ }
976
+
977
+ // Run a final update if the chunk is partially filled
978
+ if ( $chunk_count ) {
979
+ $where_bits = implode( ',', $where_bits );
980
+ $update_query = "UPDATE {$wpdb->posts} SET post_name = CASE{$select_bits} ELSE post_name END WHERE ID IN ( {$where_bits} )";
981
+ //error_log( __LINE__ . " Woo_Fixit::_replace_slug update_query = " . var_export( $update_query, true ), 0 );
982
+ $query_result = $wpdb->query( $update_query );
983
+ $update_count += $chunk_count;
984
+ }
985
+
986
+ return "_replace_slug() performed {$update_count} update(s).\n";
987
+ } // _replace_slug
988
+
989
  /**
990
  * Empty ALT Text field in all Product Image/Product Gallery items
991
  *
995
  */
996
  private static function _clear_alt_text() {
997
  global $wpdb;
998
+
999
  self::_build_product_attachments();
1000
  ksort( self::$attachment_products );
1001
  $update_count = 0;
1005
  $query_result = $wpdb->query( $delete_query );
1006
  $update_count += $query_result;
1007
  }
1008
+
1009
  return "_clear_alt_text() performed {$update_count} delete(s).\n";
1010
  } // _clear_alt_text
1011
 
1018
  */
1019
  private static function _fill_alt_text() {
1020
  global $wpdb;
1021
+
1022
  self::_build_product_attachments();
1023
  $delete_count = 0;
1024
  $insert_count = 0;
1028
  if ( empty( $terms ) ) {
1029
  continue;
1030
  }
1031
+
1032
+ // Build an array of "first product category" names
 
 
1033
  $product_terms = array();
1034
  foreach ( $terms as $term ) {
1035
  if ( isset( $product_terms[ $term->object_id ] ) ) {
1036
+ // The first top-level term wins
 
 
1037
  if ( 0 == $product_terms[ $term->object_id ]['parent'] ) {
1038
  continue;
1039
  } elseif ( ( (integer) $term->parent ) < $product_terms[ $term->object_id ]['parent'] ) {
1044
  }
1045
  }
1046
 
1047
+ // Assign the names to each attachment
 
 
1048
  $attachment_values = array();
1049
  foreach ( $chunk as $key => $value ) {
1050
  if ( empty( $product_terms[ $key ] ) ) {
1054
  if ( ! empty( $value['_thumbnail_id'] ) ) {
1055
  $attachment_values[ $value['_thumbnail_id'] ] = $product_terms[ $key ]['name'];
1056
  }
1057
+
1058
  if ( ! empty( $value['_product_image_gallery'] ) ) {
1059
  $ids = explode( ',', $value['_product_image_gallery'] );
1060
  foreach( $ids as $id ) {
1063
  }
1064
  }
1065
 
1066
+ // Find the existing ALT Text values and remove them from the update
 
 
1067
  $keys = implode( ',', array_keys( $attachment_values ) );
1068
  $select_query = "SELECT post_id, meta_value FROM {$wpdb->postmeta} WHERE ( post_id IN ( {$keys} ) ) AND ( meta_key = '_wp_attachment_image_alt' )";
1069
  $empty_values = array();
1075
  }
1076
  unset( $attachment_values[ (integer) $existing_value->post_id ] );
1077
  }
1078
+
1079
+ // Delete empty ALT Text values
 
 
1080
  if ( ! empty( $empty_values ) ) {
1081
  $keys = implode( ',', $empty_values );
1082
  $delete_query = "DELETE FROM {$wpdb->postmeta} WHERE ( post_id IN ( {$keys} ) ) AND ( meta_key = '_wp_attachment_image_alt' )";
1083
  $query_result = $wpdb->query( $delete_query );
1084
  $delete_count += $query_result;
1085
  }
1086
+
1087
+ // Insert the new values
 
 
1088
  foreach ( $attachment_values as $attachment => $text ) {
1089
  $insert_query = "INSERT INTO {$wpdb->postmeta} ( `post_id`,`meta_key`,`meta_value` )
1090
  VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1092
  $insert_count += $query_result;
1093
  }
1094
  }
1095
+
1096
  return "_fill_alt_text() performed {$delete_count} delete(s), {$insert_count} inserts(s).\n";
1097
  } // _fill_alt_text
1098
 
1105
  */
1106
  private static function _replace_alt_text() {
1107
  global $wpdb;
1108
+
1109
  self::_build_product_attachments();
1110
  $delete_count = 0;
1111
  $insert_count = 0;
1116
  continue;
1117
  }
1118
 
1119
+ // Build an array of "first product category" names
 
 
1120
  $product_terms = array();
1121
  foreach ( $terms as $term ) {
1122
  if ( isset( $product_terms[ $term->object_id ] ) ) {
1123
+ // The first top-level term wins
 
 
1124
  if ( 0 == $product_terms[ $term->object_id ]['parent'] ) {
1125
  continue;
1126
  } elseif ( ( (integer) $term->parent ) < $product_terms[ $term->object_id ]['parent'] ) {
1131
  }
1132
  }
1133
 
1134
+ // Assign the names to each attachment
 
 
1135
  $attachment_values = array();
1136
  foreach ( $chunk as $key => $value ) {
1137
  if ( isset( $value['_thumbnail_id'] ) ) {
1138
  $attachment_values[ $value['_thumbnail_id'] ] = $product_terms[ $key ]['name'];
1139
  }
1140
+
1141
  if ( !empty( $value['_product_image_gallery'] ) ) {
1142
  $ids = explode( ',', $value['_product_image_gallery'] );
1143
  foreach( $ids as $id ) {
1146
  }
1147
  }
1148
 
1149
+ // Remove the old ALT Text values
 
 
1150
  $keys = implode( ',', array_keys( $attachment_values ) );
1151
  $delete_query = "DELETE FROM {$wpdb->postmeta} WHERE ( post_id IN ( {$keys} ) ) AND ( meta_key = '_wp_attachment_image_alt' )";
1152
  $query_result = $wpdb->query( $delete_query );
1153
  $delete_count += $query_result;
1154
+
1155
+ // Insert the new values
 
 
1156
  foreach ( $attachment_values as $attachment => $text ) {
1157
  $insert_query = "INSERT INTO {$wpdb->postmeta} ( `post_id`,`meta_key`,`meta_value` )
1158
  VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1160
  $insert_count += $query_result;
1161
  }
1162
  }
1163
+
1164
  return "_replace_alt_text() performed {$delete_count} delete(s), {$insert_count} inserts(s).\n";
1165
  } // _replace_alt_text
1166
 
1173
  */
1174
  private static function _fill_alt_text_t() {
1175
  global $wpdb;
1176
+
1177
  self::_build_product_attachments();
1178
  $delete_count = 0;
1179
  $insert_count = 0;
1180
  foreach ( array_chunk( self::$product_attachments, 25, true ) as $chunk ) {
1181
+ // Assign the Product Title to each attachment
 
 
1182
  $attachment_values = array();
1183
  foreach ( $chunk as $key => $value ) {
1184
  if ( ! empty( $value['_thumbnail_id'] ) ) {
1185
  $attachment_values[ $value['_thumbnail_id'] ] = $value['post_title'];
1186
  }
1187
+
1188
  if ( ! empty( $value['_product_image_gallery'] ) ) {
1189
  $ids = explode( ',', $value['_product_image_gallery'] );
1190
  foreach( $ids as $id ) {
1193
  }
1194
  }
1195
 
1196
+ // Find the existing ALT Text values and remove them from the update
 
 
1197
  $keys = implode( ',', array_keys( $attachment_values ) );
1198
  $select_query = "SELECT post_id, meta_value FROM {$wpdb->postmeta} WHERE ( post_id IN ( {$keys} ) ) AND ( meta_key = '_wp_attachment_image_alt' )";
1199
  $empty_values = array();
1205
  }
1206
  unset( $attachment_values[ (integer) $existing_value->post_id ] );
1207
  }
1208
+
1209
+ // Delete empty ALT Text values
 
 
1210
  if ( ! empty( $empty_values ) ) {
1211
  $keys = implode( ',', $empty_values );
1212
  $delete_query = "DELETE FROM {$wpdb->postmeta} WHERE ( post_id IN ( {$keys} ) ) AND ( meta_key = '_wp_attachment_image_alt' )";
1213
  $query_result = $wpdb->query( $delete_query );
1214
  $delete_count += $query_result;
1215
  }
1216
+
1217
+ // Insert the new values
 
 
1218
  foreach ( $attachment_values as $attachment => $text ) {
1219
  $insert_query = "INSERT INTO {$wpdb->postmeta} ( `post_id`,`meta_key`,`meta_value` )
1220
  VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1222
  $insert_count += $query_result;
1223
  }
1224
  }
1225
+
1226
  return "_fill_alt_text_t() performed {$delete_count} delete(s), {$insert_count} inserts(s).\n";
1227
  } // _fill_alt_text_t
1228
 
1235
  */
1236
  private static function _replace_alt_text_t() {
1237
  global $wpdb;
1238
+
1239
  self::_build_product_attachments();
1240
  $delete_count = 0;
1241
  $insert_count = 0;
1242
  foreach ( array_chunk( self::$product_attachments, 25, true ) as $chunk ) {
1243
+ // Assign the Product Title to each attachment
 
 
1244
  $attachment_values = array();
1245
  foreach ( $chunk as $key => $value ) {
1246
  if ( isset( $value['_thumbnail_id'] ) ) {
1247
  $attachment_values[ $value['_thumbnail_id'] ] = $value['post_title'];
1248
  }
1249
+
1250
  if ( !empty( $value['_product_image_gallery'] ) ) {
1251
  $ids = explode( ',', $value['_product_image_gallery'] );
1252
  foreach( $ids as $id ) {
1255
  }
1256
  }
1257
 
1258
+ // Remove the old ALT Text values
 
 
1259
  $keys = implode( ',', array_keys( $attachment_values ) );
1260
  $delete_query = "DELETE FROM {$wpdb->postmeta} WHERE ( post_id IN ( {$keys} ) ) AND ( meta_key = '_wp_attachment_image_alt' )";
1261
  $query_result = $wpdb->query( $delete_query );
1262
  $delete_count += $query_result;
1263
+
1264
+ // Insert the new values
 
 
1265
  foreach ( $attachment_values as $attachment => $text ) {
1266
  $insert_query = "INSERT INTO {$wpdb->postmeta} ( `post_id`,`meta_key`,`meta_value` )
1267
  VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1269
  $insert_count += $query_result;
1270
  }
1271
  }
1272
+
1273
  return "_replace_alt_text_t() performed {$delete_count} delete(s), {$insert_count} inserts(s).\n";
1274
  } // _replace_alt_text_t
1275
 
1282
  */
1283
  private static function _fill_title_t() {
1284
  global $wpdb;
1285
+
1286
  self::_build_product_attachments();
1287
  $update_count = 0;
1288
  foreach ( array_chunk( self::$product_attachments, 25, true ) as $chunk ) {
1289
+ // Assign the Product Title to each attachment
 
 
1290
  $attachment_values = array();
1291
  foreach ( $chunk as $key => $value ) {
1292
  if ( ! empty( $value['_thumbnail_id'] ) ) {
1293
  $attachment_values[ $value['_thumbnail_id'] ] = $value['post_title'];
1294
  }
1295
+
1296
  if ( ! empty( $value['_product_image_gallery'] ) ) {
1297
  $ids = explode( ',', $value['_product_image_gallery'] );
1298
  foreach( $ids as $id ) {
1301
  }
1302
  }
1303
 
1304
+ // Find the non-empty Title values and remove them from the update
 
 
1305
  $keys = implode( ',', array_keys( $attachment_values ) );
1306
  $select_query = "SELECT ID, post_title FROM {$wpdb->posts} WHERE ( ID IN ( {$keys} ) )";
1307
  //error_log( __LINE__ . ' Woo_Fixit::_fill_title_t() $select_query = ' . var_export( $select_query, true ), 0 );
1312
  unset( $attachment_values[ (integer) $existing_value->ID ] );
1313
  }
1314
  }
1315
+
1316
+ // Update with new values, if any
 
 
1317
  if ( empty( $attachment_values ) ) {
1318
  continue;
1319
  }
1320
+
1321
  $select_bits = '';
1322
  $where_bits = array();
1323
  foreach ( $attachment_values as $attachment => $text ) {
1324
  $select_bits .= " WHEN ID = {$attachment} THEN '{$text}'";
1325
  $where_bits[] = $attachment;
1326
  }
1327
+
1328
  $where_bits = implode( ',', $where_bits );
1329
  $update_query = "UPDATE {$wpdb->posts} SET post_title = CASE{$select_bits} ELSE post_title END WHERE ID IN ( {$where_bits} )";
1330
  $query_result = $wpdb->query( $update_query );
1331
  $update_count += absint( $query_result );
1332
  } // foreach $chunk
1333
+
1334
  return "_fill_title_t() performed performed {$update_count} update(s).\n";
1335
  } // _fill_title_t
1336
 
1343
  */
1344
  private static function _replace_title_t() {
1345
  global $wpdb;
1346
+
1347
  self::_build_product_attachments();
1348
  $update_count = 0;
1349
  foreach ( array_chunk( self::$product_attachments, 25, true ) as $chunk ) {
1350
+ // Assign the Product Title to each attachment
 
 
1351
  $attachment_values = array();
1352
  foreach ( $chunk as $key => $value ) {
1353
  if ( isset( $value['_thumbnail_id'] ) ) {
1354
  $attachment_values[ $value['_thumbnail_id'] ] = $value['post_title'];
1355
  }
1356
+
1357
  if ( !empty( $value['_product_image_gallery'] ) ) {
1358
  $ids = explode( ',', $value['_product_image_gallery'] );
1359
  foreach( $ids as $id ) {
1362
  }
1363
  }
1364
 
1365
+ // Update with new values, if any
 
 
1366
  if ( empty( $attachment_values ) ) {
1367
  continue;
1368
  }
1372
  $select_bits .= " WHEN ID = {$attachment} THEN '{$text}'";
1373
  $where_bits[] = $attachment;
1374
  }
1375
+
1376
  $where_bits = implode( ',', $where_bits );
1377
  $update_query = "UPDATE {$wpdb->posts} SET post_title = CASE{$select_bits} ELSE post_title END WHERE ID IN ( {$where_bits} )";
1378
  $query_result = $wpdb->query( $update_query );
1379
  $update_count += absint( $query_result );
1380
  } // foreach $chunk
1381
+
1382
  return "_replace_title_t() performed {$update_count} update(s).\n";
1383
  } // _replace_title_t
1384
 
1396
  global $wpdb;
1397
 
1398
  $results = array( 'error' => '', 'delete_count' => 0, 'insert_count' => 0 );
1399
+
1400
  $content_template = self::$content_template;
1401
  if ( 'template:' == substr( $content_template, 0, 9 ) ) {
1402
  $content_template = substr( $content_template, 9 );
1426
  foreach ( $chunk as $key => $value ) {
1427
  if ( ! empty( $value['_thumbnail_id'] ) ) {
1428
  $all_values[] = $id = $value['_thumbnail_id'];
1429
+
1430
  // Evaluate the template for the Product Image
1431
  $template_value = trim( MLAOptions::mla_get_data_source( $id, 'single_attachment_mapping', $my_setting, NULL ) );
1432
  if ( !empty( $template_value ) ) {
1433
  $replace_values[ $id ] = $template_value;
1434
  }
1435
  }
1436
+
1437
  if ( ! empty( $value['_product_image_gallery'] ) ) {
1438
  $ids = explode( ',', $value['_product_image_gallery'] );
1439
  foreach( $ids as $id ) {
1440
  $all_values[] = $id;
1441
+
1442
  // Evaluate the template for a Product Gallery Image
1443
  $template_value = trim( MLAOptions::mla_get_data_source( $id, 'single_attachment_mapping', $my_setting, NULL ) );
1444
  if ( !empty( $template_value ) ) {
1465
  // Delete all of the existing values
1466
  $delete_values = $all_values;
1467
  }
1468
+
1469
+ // Delete ALT Text values that are empty or will be replaced
 
 
1470
  if ( ! empty( $delete_values ) ) {
1471
  $keys = implode( ',', $delete_values );
1472
  $delete_query = "DELETE FROM {$wpdb->postmeta} WHERE ( post_id IN ( {$keys} ) ) AND ( meta_key = '_wp_attachment_image_alt' )";
1473
  $query_result = $wpdb->query( $delete_query );
1474
  $delete_count += $query_result;
1475
  }
1476
+
1477
+ // Insert the new values
 
 
1478
  foreach ( $replace_values as $attachment => $text ) {
1479
  $insert_query = "INSERT INTO {$wpdb->postmeta} ( `post_id`,`meta_key`,`meta_value` )
1480
  VALUES ( {$attachment},'_wp_attachment_image_alt','{$text}' )";
1482
  $insert_count += $query_result;
1483
  }
1484
  } // each chunk
1485
+
1486
  $results['delete_count'] = $delete_count;
1487
  $results['insert_count'] = $insert_count;
1488
  return $results;
1533
  */
1534
  private static function _remove_feature() {
1535
  global $wpdb;
1536
+
1537
  self::_build_product_attachments();
1538
 
1539
  $update_count = 0;
1544
  if ( empty( $result['_thumbnail_id'] ) ) {
1545
  continue;
1546
  }
1547
+
1548
  $feature = (integer) $result['_thumbnail_id'];
1549
  $gallery = array();
1550
  $feature_found = false;
1551
+
1552
  if ( ! empty( $result['_product_image_gallery'] ) ) {
1553
  foreach ( explode( ',', $result['_product_image_gallery'] ) as $item ) {
1554
  if ( $feature == (integer) $item ) {
1558
  }
1559
  } // foreach gallery item
1560
  }
1561
+
1562
  if ( $feature_found ) {
1563
  $new_gallery = implode( ',', $gallery );
1564
  $select_bits .= " WHEN post_id = {$post_id} THEN '{$new_gallery}'";
1565
  $where_bits[] = $post_id;
1566
+
1567
+ // Run an update when the chunk is full
 
 
1568
  if ( 25 <= ++$chunk_count ) {
1569
  $where_bits = implode( ',', $where_bits );
1570
  $update_query = "UPDATE {$wpdb->postmeta} SET meta_value = CASE{$select_bits} ELSE meta_value END WHERE post_id IN ( {$where_bits} ) AND meta_key = '_product_image_gallery'";
1576
  }
1577
  } // feature removed
1578
  } // foreach product
1579
+
1580
+ // Run a final update if the chunk is partially filled
 
 
1581
  if ( $chunk_count ) {
1582
  $where_bits = implode( ',', $where_bits );
1583
  $update_query = "UPDATE {$wpdb->postmeta} SET meta_value = CASE{$select_bits} ELSE meta_value END WHERE post_id IN ( {$where_bits} ) AND meta_key = '_product_image_gallery'";
1597
  */
1598
  private static function _restore_feature() {
1599
  global $wpdb;
1600
+
1601
  self::_build_product_attachments();
1602
 
1603
  $update_count = 0;
1608
  if ( empty( $result['_thumbnail_id'] ) ) {
1609
  continue;
1610
  }
1611
+
1612
  $feature = (integer) $result['_thumbnail_id'];
1613
  $gallery = array();
1614
  $feature_found = false;
1621
  }
1622
  } // foreach gallery item
1623
  }
1624
+
1625
  if ( ! $feature_found ) {
1626
  if ( count( $gallery ) ) {
1627
  $new_gallery = implode( ',', $gallery ) . ',' . $feature;
1628
  } else {
1629
  $new_gallery = (string) $feature;
1630
  }
1631
+
1632
  $select_bits .= " WHEN post_id = {$post_id} THEN '{$new_gallery}'";
1633
  $where_bits[] = $post_id;
1634
+
1635
+ // Run an update when the chunk is full
 
 
1636
  if ( 25 <= ++$chunk_count ) {
1637
  $where_bits = implode( ',', $where_bits );
1638
  $update_query = "UPDATE {$wpdb->postmeta} SET meta_value = CASE{$select_bits} ELSE meta_value END WHERE post_id IN ( {$where_bits} ) AND meta_key = '_product_image_gallery'";
1644
  }
1645
  } // feature restored
1646
  } // foreach product
1647
+
1648
+ // Run a final update if the chunk is partially filled
 
 
1649
  if ( $chunk_count ) {
1650
  $where_bits = implode( ',', $where_bits );
1651
  $update_query = "UPDATE {$wpdb->postmeta} SET meta_value = CASE{$select_bits} ELSE meta_value END WHERE post_id IN ( {$where_bits} ) AND meta_key = '_product_image_gallery'";
1665
  */
1666
  private static function _reverse_gallery() {
1667
  global $wpdb;
1668
+
1669
  self::_build_product_attachments();
1670
 
1671
  $update_count = 0;
1678
  } else {
1679
  $gallery = explode( ',', $result['_product_image_gallery'] );
1680
  }
1681
+
1682
  if ( 1 < count( $gallery ) ) {
1683
  $new_gallery = implode( ',', array_reverse( $gallery ) );
1684
  $select_bits .= " WHEN post_id = {$post_id} THEN '{$new_gallery}'";
1685
  $where_bits[] = $post_id;
1686
+
1687
+ // Run an update when the chunk is full
 
 
1688
  if ( 25 <= ++$chunk_count ) {
1689
  $where_bits = implode( ',', $where_bits );
1690
  $update_query = "UPDATE {$wpdb->postmeta} SET meta_value = CASE{$select_bits} ELSE meta_value END WHERE post_id IN ( {$where_bits} ) AND meta_key = '_product_image_gallery'";
1696
  }
1697
  } // gallery reversed
1698
  } // foreach product
1699
+
1700
+ // Run a final update if the chunk is partially filled
 
 
1701
  if ( $chunk_count ) {
1702
  $where_bits = implode( ',', $where_bits );
1703
  $update_query = "UPDATE {$wpdb->postmeta} SET meta_value = CASE{$select_bits} ELSE meta_value END WHERE post_id IN ( {$where_bits} ) AND meta_key = '_product_image_gallery'";
1737
  } else {
1738
  $thumbnails = $result['_thumbnail_id'];
1739
  }
1740
+
1741
  if ( empty( $result['_product_image_gallery'] ) ) {
1742
  $galleries = array();
1743
  } else {
1744
  $galleries = $result['_product_image_gallery'];
1745
  }
1746
 
1747
+ // Compose references
 
 
1748
  $references = '';
1749
  $thumbnail_text = '';
1750
  foreach ( $thumbnails as $thumbnail ) {
1753
  if ( !empty( $thumbnail_text ) ) {
1754
  $references .= 'Thumbnails: ' . $thumbnail_text;
1755
  }
1756
+
1757
  $gallery_text = '';
1758
  foreach ( $galleries as $gallery ) {
1759
  $gallery_text .= sprintf( '(%1$d) %2$s,', $gallery, self::$product_attachments[ $gallery ]['post_title'] );
1765
 
1766
  $references .= 'Galleries: ' . $gallery_text;
1767
  }
1768
+
1769
  if ( !empty( $references ) ) {
1770
  $thumbnail_count += count( $thumbnails );
1771
  $gallery_count += count( $galleries );
1772
 
1773
+ // Insert the new values
 
 
1774
  $insert_query = "INSERT INTO {$wpdb->postmeta} ( `post_id`,`meta_key`,`meta_value` )
1775
  VALUES ( {$post_id},'Woo Used In','{$references}' )";
1776
  $query_result = $wpdb->query( $insert_query );
1839
  */
1840
  private static function _update_product_tags( $action ) {
1841
  global $wpdb;
1842
+
1843
  self::_build_product_attachments();
1844
 
1845
  $update_count = 0;
1860
  if ( count( $products ) == 0 ) {
1861
  continue;
1862
  }
1863
+
1864
  switch ( $action ) {
1865
  case 'clear':
1866
  case 'fill':
1868
  $ids = implode( ',', array_keys( $products ) );
1869
  $query = sprintf( 'SELECT DISTINCT tr.object_id FROM %1$s as tr INNER JOIN %2$s as tt ON tr.term_taxonomy_id = tt.term_taxonomy_id WHERE ( tr.object_id IN ( %3$s ) AND tt.taxonomy = \'product_tag\' ) ', $wpdb->term_relationships, $wpdb->term_taxonomy, $ids );
1870
  $assignments = $wpdb->get_col( $query );
1871
+
1872
  if ( 'clear' == $action ) {
1873
  foreach ( $assignments as $assignment ) {
1874
  wp_delete_object_term_relationships( $assignment, 'product_tag' );
1877
  } else {
1878
  // Find the products that have no assignments
1879
  $assignments = array_diff_key( $products, array_flip( $assignments ) );
1880
+
1881
  foreach ( $assignments as $product_id => $assignment ) {
1882
  $attachment_tags = wp_get_object_terms( $assignment, 'attachment_tag', array( 'orderby' => 'none', 'fields' => 'names' ) );
1883
+
1884
  if ( ! empty( $attachment_tags ) ) {
1885
  $term_taxonomy_ids = wp_set_object_terms( $product_id, $attachment_tags, 'product_tag' );
1886
  $terms_added += count( $term_taxonomy_ids );
1893
  case 'replace':
1894
  foreach ( $products as $product_id => $assignment ) {
1895
  $attachment_tags = wp_get_object_terms( $assignment, 'attachment_tag', array( 'orderby' => 'none', 'fields' => 'names' ) );
1896
+
1897
  if ( 'append' == $action ) {
1898
  if ( ! empty( $attachment_tags ) ) {
1899
  $old_term_taxonomy_ids = wp_get_object_terms( $product_id, 'product_tag', array( 'orderby' => 'none', 'fields' => 'tt_ids' ) );
1914
  }
1915
  } else {
1916
  $term_taxonomy_ids = wp_get_object_terms( $product_id, 'product_tag', array( 'orderby' => 'none', 'fields' => 'tt_ids' ) );
1917
+
1918
  $old_terms = count( $term_taxonomy_ids );
1919
  if ( 0 < $old_terms ) {
1920
  $terms_removed += $old_terms;
1926
  } // each assignment
1927
  } // action
1928
  } // each chunk
1929
+
1930
  switch ( $action ) {
1931
  case 'clear':
1932
  return "_clear_product_tags() cleared {$update_count} Product(s).\n";
1940
  case 'replace':
1941
  return "_replace_product_tags() replaced {$terms_added} term(s) in {$update_count} Product(s), and deleted {$terms_removed} term(s) from {$delete_count} Product(s).\n";
1942
  }
1943
+
1944
  return "ERROR: Unknown _update_product_tags action: {$action}";
1945
  } // _update_product_tags
1946
 
2002
  */
2003
  private static function _update_product_categories( $action ) {
2004
  global $wpdb;
2005
+
2006
  self::_build_product_attachments();
2007
 
2008
  if ( 'clear' != $action ) {
2030
  if ( count( $products ) == 0 ) {
2031
  continue;
2032
  }
2033
+
2034
  switch ( $action ) {
2035
  case 'clear':
2036
  case 'fill':
2038
  $ids = implode( ',', array_keys( $products ) );
2039
  $query = sprintf( 'SELECT DISTINCT tr.object_id FROM %1$s as tr INNER JOIN %2$s as tt ON tr.term_taxonomy_id = tt.term_taxonomy_id WHERE ( tr.object_id IN ( %3$s ) AND tt.taxonomy = \'product_cat\' ) ', $wpdb->term_relationships, $wpdb->term_taxonomy, $ids );
2040
  $assignments = $wpdb->get_col( $query );
2041
+
2042
  if ( 'clear' == $action ) {
2043
  foreach ( $assignments as $assignment ) {
2044
  wp_delete_object_term_relationships( $assignment, 'product_cat' );
2047
  } else {
2048
  // Find the products that have no assignments
2049
  $assignments = array_diff_key( $products, array_flip( $assignments ) );
2050
+
2051
  foreach ( $assignments as $product_id => $assignment ) {
2052
  $attachment_tags = wp_get_object_terms( $assignment, 'attachment_tag', array( 'orderby' => 'none', 'fields' => 'names' ) );
2053
  $common_terms = array_keys( array_intersect( $product_categories, $attachment_tags ) );
2054
+
2055
  if ( ! empty( $common_terms ) ) {
2056
  $term_taxonomy_ids = wp_set_object_terms( $product_id, $common_terms, 'product_cat' );
2057
  $terms_added += count( $term_taxonomy_ids );
2065
  foreach ( $products as $product_id => $assignment ) {
2066
  $attachment_tags = wp_get_object_terms( $assignment, 'attachment_tag', array( 'orderby' => 'none', 'fields' => 'names' ) );
2067
  $common_terms = array_keys( array_intersect( $product_categories, $attachment_tags ) );
2068
+
2069
  if ( 'append' == $action ) {
2070
  if ( ! empty( $common_terms ) ) {
2071
  $old_term_taxonomy_ids = wp_get_object_terms( $product_id, 'product_cat', array( 'orderby' => 'none', 'fields' => 'tt_ids' ) );
2086
  }
2087
  } else {
2088
  $term_taxonomy_ids = wp_get_object_terms( $product_id, 'product_cat', array( 'orderby' => 'none', 'fields' => 'tt_ids' ) );
2089
+
2090
  $old_terms = count( $term_taxonomy_ids );
2091
  if ( 0 < $old_terms ) {
2092
  $terms_removed += $old_terms;
2098
  } // each assignment
2099
  } // action
2100
  } // each chunk
2101
+
2102
  switch ( $action ) {
2103
  case 'clear':
2104
  return "_clear_product_categories() cleared {$update_count} Product(s).\n";
2112
  case 'replace':
2113
  return "_replace_product_categories() replaced {$terms_added} term(s) in {$update_count} Product(s), and deleted {$terms_removed} term(s) from {$delete_count} Product(s).\n";
2114
  }
2115
+
2116
  return "ERROR: Unknown _update_product_categories action: {$action}";
2117
  } // _update_product_categories
2118
 
2125
  */
2126
  private static function _clear_attachment_categories() {
2127
  global $wpdb;
2128
+
2129
  $update_count = 0;
2130
  $offset = 0;
2131
  $limit = 25;
2132
+
2133
  do {
2134
  // Select a chunk of attachment IDs
2135
  $query = sprintf( 'SELECT p.ID FROM %1$s as p WHERE ( p.post_type = \'attachment\' ) ORDER BY p.ID LIMIT %2$d, %3$d', $wpdb->posts, $offset, $limit );
2148
  } else {
2149
  $results = array();
2150
  }
2151
+
2152
  $offset += $limit;
2153
  } while ( count( $results ) == $limit );
2154
+
2155
  return "_clear_attachment_categories() cleared {$update_count} items(s).\n";
2156
  } // _clear_attachment_categories
2157
 
2165
  */
2166
  private static function _fill_attachment_categories() {
2167
  global $wpdb;
2168
+
2169
  // Get the array of the Att. Category term objects for comparison
2170
  $attachment_categories = MLAQuery::mla_wp_get_terms( 'attachment_category', array( 'orderby' => 'none', 'hide_empty' => 0, 'fields' => 'id=>name' ) );
2171
 
2173
  $terms_added = 0;
2174
  $offset = 0;
2175
  $limit = 25;
2176
+
2177
  do {
2178
  // Select a chunk of attachment IDs
2179
  $query = sprintf( 'SELECT p.ID FROM %1$s as p WHERE ( p.post_type = \'attachment\' ) ORDER BY p.ID LIMIT %2$d, %3$d', $wpdb->posts, $offset, $limit );
2184
  $ids = implode( ',', $results );
2185
  $query = sprintf( 'SELECT DISTINCT tr.object_id FROM %1$s as tr INNER JOIN %2$s as tt ON tr.term_taxonomy_id = tt.term_taxonomy_id WHERE ( tr.object_id IN ( %3$s ) AND tt.taxonomy = \'attachment_category\' ) ', $wpdb->term_relationships, $wpdb->term_taxonomy, $ids );
2186
  $assignments = $wpdb->get_col( $query );
2187
+
2188
  // find the attachments that have no assignments
2189
  $assignments = array_diff( $results, $assignments );
2190
 
2200
  } else {
2201
  $results = array();
2202
  }
2203
+
2204
  $offset += $limit;
2205
  } while ( count( $results ) == $limit );
2206
 
2217
  */
2218
  private static function _append_attachment_categories() {
2219
  global $wpdb;
2220
+
2221
  // Get the array of the Att. Category term objects for comparison
2222
  $attachment_categories = MLAQuery::mla_wp_get_terms( 'attachment_category', array( 'orderby' => 'none', 'hide_empty' => 0, 'fields' => 'id=>name' ) );
2223
 
2225
  $terms_added = 0;
2226
  $offset = 0;
2227
  $limit = 25;
2228
+
2229
  do {
2230
  // Select a chunk of attachment IDs
2231
  $query = sprintf( 'SELECT p.ID FROM %1$s as p WHERE ( p.post_type = \'attachment\' ) ORDER BY p.ID LIMIT %2$d, %3$d', $wpdb->posts, $offset, $limit );
2236
  $ids = implode( ',', $results );
2237
  $query = sprintf( 'SELECT DISTINCT tr.object_id FROM %1$s as tr INNER JOIN %2$s as tt ON tr.term_taxonomy_id = tt.term_taxonomy_id WHERE ( tr.object_id IN ( %3$s ) AND tt.taxonomy = \'attachment_tag\' ) ', $wpdb->term_relationships, $wpdb->term_taxonomy, $ids );
2238
  $assignments = $wpdb->get_col( $query );
2239
+
2240
  foreach ( $assignments as $assignment ) {
2241
  $attachment_tags = wp_get_object_terms( $assignment, 'attachment_tag', array( 'orderby' => 'none', 'fields' => 'names' ) );
2242
  $common_terms = array_keys( array_intersect( $attachment_categories, $attachment_tags ) );
2254
  } else {
2255
  $results = array();
2256
  }
2257
+
2258
  $offset += $limit;
2259
  } while ( count( $results ) == $limit );
2260
 
2271
  */
2272
  private static function _replace_attachment_categories() {
2273
  global $wpdb;
2274
+
2275
  // Get the array of the Att. Category term objects for comparison
2276
  $attachment_categories = MLAQuery::mla_wp_get_terms( 'attachment_category', array( 'orderby' => 'none', 'hide_empty' => 0, 'fields' => 'id=>name' ) );
2277
 
2282
 
2283
  $offset = 0;
2284
  $limit = 25;
2285
+
2286
  do {
2287
  // Select a chunk of attachment IDs
2288
  $query = sprintf( 'SELECT p.ID FROM %1$s as p WHERE ( p.post_type = \'attachment\' ) ORDER BY p.ID LIMIT %2$d, %3$d', $wpdb->posts, $offset, $limit );
2313
  } else {
2314
  $results = array();
2315
  }
2316
+
2317
  $offset += $limit;
2318
  } while ( count( $results ) == $limit );
2319
 
2330
  */
2331
  private static function _clear_term_assignments() {
2332
  self::_build_product_attachments( false );
2333
+
2334
  $item_count = 0;
2335
  $cat_count = 0;
2336
  $cat_removed = 0;
2339
 
2340
  foreach ( self::$attachment_products as $ID => $used_in ) {
2341
  $item_count++;
2342
+
2343
  if ( self::$process_category ) {
2344
  $term_taxonomy_ids = wp_get_object_terms( $ID, 'product_cat', array( 'orderby' => 'none', 'fields' => 'tt_ids' ) );
2345
  $old_terms = count( $term_taxonomy_ids );
2349
  $term_taxonomy_ids = wp_set_object_terms( $ID, NULL, 'product_cat' );
2350
  }
2351
  }
2352
+
2353
  if ( self::$process_tag ) {
2354
  $term_taxonomy_ids = wp_get_object_terms( $ID, 'product_tag', array( 'orderby' => 'none', 'fields' => 'tt_ids' ) );
2355
  $old_terms = count( $term_taxonomy_ids );
2360
  }
2361
  }
2362
  } // foreach ID
2363
+
2364
  $cat_text = ( 1 == $cat_removed ) ? 'category' : 'categories';
2365
  $tag_text = ( 1 == $tag_removed ) ? 'tag' : 'tags';
2366
  return "_clear_term_assignments() processed {$item_count} item(s), deleted {$cat_removed} {$cat_text} from {$cat_count} item(s), and deleted {$tag_removed} {$tag_text} from {$tag_count} item(s).\n";
2376
  */
2377
  private static function _copy_term_assignments() {
2378
  self::_build_product_attachments( false );
2379
+
2380
  $item_count = 0;
2381
  $cat_count = 0;
2382
  $cat_added = 0;
2396
  if ( self::$process_tag ) {
2397
  $current_product_tag = wp_get_object_terms( $ID, 'product_tag', array( 'orderby' => 'none', 'fields' => 'tt_ids' ) );
2398
  }
2399
+
2400
  $new_product_cat = array();
2401
  $new_product_tag = array();
2402
 
2408
  if ( in_array( $new_cat, $current_product_cat ) ) {
2409
  continue;
2410
  }
2411
+
2412
  $new_product_cat[ $new_cat ] = $new_cat;
2413
  }
2414
  }
2415
+
2416
  if ( self::$process_tag ) {
2417
  $term_taxonomy_ids = wp_get_object_terms( $product_id, 'product_tag', array( 'orderby' => 'none', 'fields' => 'tt_ids' ) );
2418
  foreach( $term_taxonomy_ids as $new_tag ) {
2419
  if ( in_array( $new_tag, $current_product_tag ) ) {
2420
  continue;
2421
  }
2422
+
2423
  $new_product_tag[ $new_tag ] = $new_tag;
2424
  }
2425
  }
2426
  } // foreach product_id
2427
  } // foreach usage
2428
+
2429
  if ( 0 < ( $new_terms = count( $new_product_cat ) ) ) {
2430
  $cat_added += $new_terms;
2431
  $cat_count++;
2432
  $term_taxonomy_ids = wp_set_object_terms( $ID, $new_product_cat, 'product_cat', true );
2433
  }
2434
+
2435
  if ( 0 < ( $new_terms = count( $new_product_tag ) ) ) {
2436
  $tag_added += $new_terms;
2437
  $tag_count++;
2438
  $term_taxonomy_ids = wp_set_object_terms( $ID, $new_product_tag, 'product_tag', true );
2439
  }
2440
  } // foreach ID
2441
+
2442
  $cat_text = ( 1 == $cat_added ) ? 'category' : 'categories';
2443
  $tag_text = ( 1 == $tag_added ) ? 'tag' : 'tags';
2444
  return "_copy_term_assignments() processed {$item_count} item(s), added {$cat_added} {$cat_text} to {$cat_count} item(s), and added {$tag_added} {$tag_text} to {$tag_count} item(s).\n";
2445
  } // _copy_term_assignments
2446
  } //Woo_Fixit
2447
 
2448
+ // Install the submenu at an early opportunity
 
 
2449
  add_action('init', 'Woo_Fixit::initialize');
2450
  ?>
examples/themes/twentytwelve-mla/style.css CHANGED
@@ -5,18 +5,18 @@
5
  *
6
  * @package Media Library Assistant
7
  * @subpackage MLA_Child_Theme
8
- * @version 1.02
9
  * @since MLA 1.80
10
  */
11
 
12
  /*
13
  Theme Name: MLA Child for Twenty Twelve
14
- Theme URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
15
  Description: Enhancements to the baseline theme, generated in response to MLA support forum topics.
16
  Author: David Lingren
17
- Author URI: http://fairtradejudaica.org/our-story/staff/
18
  Template: twentytwelve
19
- Version: 1.02
20
  Tags: attachment, attachments, documents, gallery, image, images, media, library, media library, media-tags, media tags, tags, media categories, categories, IPTC, EXIF, GPS, PDF, meta, metadata, photo, photos, photograph, photographs, photoblog, photo albums, lightroom, photoshop, MIME, mime-type, icon, upload, file extensions
21
  Text Domain: mla-child-theme
22
  Domain Path: /languages
5
  *
6
  * @package Media Library Assistant
7
  * @subpackage MLA_Child_Theme
8
+ * @version 1.03
9
  * @since MLA 1.80
10
  */
11
 
12
  /*
13
  Theme Name: MLA Child for Twenty Twelve
14
+ Theme URI: http://davidlingren.com/
15
  Description: Enhancements to the baseline theme, generated in response to MLA support forum topics.
16
  Author: David Lingren
17
+ Author URI: http://davidlingren.com/
18
  Template: twentytwelve
19
+ Version: 1.03
20
  Tags: attachment, attachments, documents, gallery, image, images, media, library, media library, media-tags, media tags, tags, media categories, categories, IPTC, EXIF, GPS, PDF, meta, metadata, photo, photos, photograph, photographs, photoblog, photo albums, lightroom, photoshop, MIME, mime-type, icon, upload, file extensions
21
  Text Domain: mla-child-theme
22
  Domain Path: /languages
includes/class-mla-core-options.php CHANGED
@@ -507,7 +507,8 @@ class MLACoreOptions {
507
  . '<br>' .
508
  __( 'Check the "<strong>Checklist</strong>" box to enable the checklist-style meta box for a flat taxonomy.', 'media-library-assistant' ) . '&nbsp;' .
509
  __( 'You must also check the <strong>"Enable enhanced checklist taxonomies"</strong> box below to enable this feature.', 'media-library-assistant' ) . '<br>' .
510
- __( 'Check the "<strong>Checked On Top</strong>" box to moved checked terms to the top of the checklist-style meta box.', 'media-library-assistant' ) . '<br>' .
 
511
  __( 'Use the "<strong>List Filter</strong>" option to select the taxonomy (or custom field) on which to filter the Assistant table listing.', 'media-library-assistant' ) . '<br>' .
512
  __( 'To <strong>filter on a custom field</strong>, enter the field name and select ASC (Ascending) or DESC (Descending) order.', 'media-library-assistant' ),
513
  'std' => array (
@@ -525,6 +526,7 @@ class MLACoreOptions {
525
  ),
526
  'tax_flat_checklist' => array(),
527
  'tax_checked_on_top' => NULL, // default "true", handled in mla_initialize_tax_checked_on_top
 
528
  'tax_filter' => 'attachment_category',
529
  'tax_metakey_sort' => 'ASC',
530
  'tax_metakey' => '',
507
  . '<br>' .
508
  __( 'Check the "<strong>Checklist</strong>" box to enable the checklist-style meta box for a flat taxonomy.', 'media-library-assistant' ) . '&nbsp;' .
509
  __( 'You must also check the <strong>"Enable enhanced checklist taxonomies"</strong> box below to enable this feature.', 'media-library-assistant' ) . '<br>' .
510
+ __( 'Check the "<strong>Checked On Top</strong>" box to move checked terms to the top of the checklist-style meta box.', 'media-library-assistant' ) . '<br>' .
511
+ __( 'Check the "<strong>Inline Add Term</strong>" box to support adding terms in the Quick Edit and Bulk Edit areas.', 'media-library-assistant' ) . '<br>' .
512
  __( 'Use the "<strong>List Filter</strong>" option to select the taxonomy (or custom field) on which to filter the Assistant table listing.', 'media-library-assistant' ) . '<br>' .
513
  __( 'To <strong>filter on a custom field</strong>, enter the field name and select ASC (Ascending) or DESC (Descending) order.', 'media-library-assistant' ),
514
  'std' => array (
526
  ),
527
  'tax_flat_checklist' => array(),
528
  'tax_checked_on_top' => NULL, // default "true", handled in mla_initialize_tax_checked_on_top
529
+ 'tax_checklist_add_term' => array(),
530
  'tax_filter' => 'attachment_category',
531
  'tax_metakey_sort' => 'ASC',
532
  'tax_metakey' => '',
includes/class-mla-core.php CHANGED
@@ -21,7 +21,7 @@ class MLACore {
21
  *
22
  * @var string
23
  */
24
- const CURRENT_MLA_VERSION = '2.75';
25
 
26
  /**
27
  * Slug for registering and enqueueing plugin style sheets (moved from class-mla-main.php)
@@ -985,6 +985,15 @@ class MLACore {
985
 
986
  $tax_checked_on_top = isset( $tax_options['tax_checked_on_top'] ) ? $tax_options['tax_checked_on_top'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_checked_on_top'];
987
  return array_key_exists( $tax_name, $tax_checked_on_top );
 
 
 
 
 
 
 
 
 
988
  case 'filter':
989
  $tax_filter = isset( $tax_options['tax_filter'] ) ? $tax_options['tax_filter'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_filter'];
990
  if ( '' == $tax_name ) {
@@ -1074,6 +1083,14 @@ class MLACore {
1074
  }
1075
 
1076
  return array_keys( isset( $tax_options['tax_checked_on_top'] ) ? $tax_options['tax_checked_on_top'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_checked_on_top'] );
 
 
 
 
 
 
 
 
1077
  case 'filter':
1078
  if ( !empty( $_REQUEST['mla-general-options-save'] ) ) {
1079
  return isset( $_REQUEST['tax_filter'] ) ? (array) $_REQUEST['tax_filter'] : array();
21
  *
22
  * @var string
23
  */
24
+ const CURRENT_MLA_VERSION = '2.77';
25
 
26
  /**
27
  * Slug for registering and enqueueing plugin style sheets (moved from class-mla-main.php)
985
 
986
  $tax_checked_on_top = isset( $tax_options['tax_checked_on_top'] ) ? $tax_options['tax_checked_on_top'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_checked_on_top'];
987
  return array_key_exists( $tax_name, $tax_checked_on_top );
988
+ case 'checklist-add-term':
989
+ if ( !empty( $_REQUEST['mla-general-options-save'] ) ) {
990
+ return isset( $_REQUEST['tax_checklist_add_term'][ $tax_name ] );
991
+ } elseif ( !empty( $_REQUEST['mla-general-options-reset'] ) ) {
992
+ return array_key_exists( $tax_name, MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_checklist_add_term'] );
993
+ }
994
+
995
+ $tax_checklist_add_term = isset( $tax_options['tax_checklist_add_term'] ) ? $tax_options['tax_checklist_add_term'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_checklist_add_term'];
996
+ return array_key_exists( $tax_name, $tax_checklist_add_term );
997
  case 'filter':
998
  $tax_filter = isset( $tax_options['tax_filter'] ) ? $tax_options['tax_filter'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_filter'];
999
  if ( '' == $tax_name ) {
1083
  }
1084
 
1085
  return array_keys( isset( $tax_options['tax_checked_on_top'] ) ? $tax_options['tax_checked_on_top'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_checked_on_top'] );
1086
+ case 'checklist-add-term':
1087
+ if ( !empty( $_REQUEST['mla-general-options-save'] ) ) {
1088
+ return isset( $_REQUEST['tax_checklist_add_term'] ) ? array_keys( $_REQUEST['tax_checklist_add_term'] ) : array();
1089
+ } elseif ( !empty( $_REQUEST['mla-general-options-reset'] ) ) {
1090
+ return array_keys( MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_checklist_add_term'] );
1091
+ }
1092
+
1093
+ return array_keys( isset( $tax_options['tax_checklist_add_term'] ) ? $tax_options['tax_checklist_add_term'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_checklist_add_term'] );
1094
  case 'filter':
1095
  if ( !empty( $_REQUEST['mla-general-options-save'] ) ) {
1096
  return isset( $_REQUEST['tax_filter'] ) ? (array) $_REQUEST['tax_filter'] : array();
includes/class-mla-data-source.php CHANGED
@@ -148,6 +148,16 @@ class MLAData_Source {
148
  * @return string|array data source value
149
  */
150
  public static function mla_get_data_source( $post_id, $category, $data_value, $attachment_metadata = NULL ) {
 
 
 
 
 
 
 
 
 
 
151
  $default_arguments = array(
152
  'data_source' => 'none',
153
  'keep_existing' => true,
148
  * @return string|array data source value
149
  */
150
  public static function mla_get_data_source( $post_id, $category, $data_value, $attachment_metadata = NULL ) {
151
+ if ( !class_exists( 'MLAQuery' ) ) {
152
+ require_once( MLA_PLUGIN_PATH . 'includes/class-mla-data-query.php' );
153
+ MLAQuery::initialize();
154
+ }
155
+
156
+ if ( !class_exists( 'MLAData' ) ) {
157
+ require_once( MLA_PLUGIN_PATH . 'includes/class-mla-data.php' );
158
+ MLAData::initialize();
159
+ }
160
+
161
  $default_arguments = array(
162
  'data_source' => 'none',
163
  'keep_existing' => true,
includes/class-mla-edit-media.php CHANGED
@@ -153,9 +153,7 @@ class MLAEdit {
153
 
154
  $suffix = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '' : '.min';
155
 
156
- /*
157
- * Add New Bulk Edit Area
158
- */
159
  if ( 'media-new.php' == $page_hook && ( 'checked' == MLACore::mla_get_option( MLACoreOptions::MLA_ADD_NEW_BULK_EDIT ) ) ) {
160
  if ( $wp_locale->is_rtl() ) {
161
  wp_register_style( 'mla-add-new-bulk-edit', MLA_PLUGIN_URL . 'css/mla-add-new-bulk-edit-rtl.css', false, MLACore::CURRENT_MLA_VERSION );
@@ -172,6 +170,11 @@ class MLAEdit {
172
  wp_enqueue_script( 'mla-add-new-bulk-edit-scripts', MLA_PLUGIN_URL . "js/mla-add-new-bulk-edit-scripts{$suffix}.js",
173
  array( 'suggest', 'jquery' ), MLACore::CURRENT_MLA_VERSION, false );
174
 
 
 
 
 
 
175
  wp_enqueue_script( 'mla-add-new-bulk-edit-scripts' . '-set-parent', MLA_PLUGIN_URL . "js/mla-set-parent-scripts{$suffix}.js",
176
  array( 'mla-add-new-bulk-edit-scripts', 'jquery' ), MLACore::CURRENT_MLA_VERSION, false );
177
 
@@ -334,13 +337,34 @@ class MLAEdit {
334
  $tax_checklist = ob_get_contents();
335
  ob_end_clean();
336
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
337
  $page_values = array(
338
- 'tax_html' => esc_html( $tax_object->labels->name ),
339
- 'tax_attr' => esc_attr( $tax_name ),
340
- 'tax_checklist' => $tax_checklist,
341
- 'Add' => __( 'Add', 'media-library-assistant' ),
342
- 'Remove' => __( 'Remove', 'media-library-assistant' ),
343
- 'Replace' => __( 'Replace', 'media-library-assistant' ),
 
 
 
 
344
  );
345
  $category_block = MLAData::mla_parse_template( $page_template_array['category_block'], $page_values );
346
  $taxonomy_options = MLAData::mla_parse_template( $page_template_array['taxonomy_options'], $page_values );
@@ -369,10 +393,31 @@ class MLAEdit {
369
  $tax_checklist = ob_get_contents();
370
  ob_end_clean();
371
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
372
  $page_values = array(
373
  'tax_html' => esc_html( $tax_object->labels->name ),
374
  'tax_attr' => esc_attr( $tax_name ),
375
  'tax_checklist' => $tax_checklist,
 
 
 
 
376
  'Add' => __( 'Add', 'media-library-assistant' ),
377
  'Remove' => __( 'Remove', 'media-library-assistant' ),
378
  'Replace' => __( 'Replace', 'media-library-assistant' ),
153
 
154
  $suffix = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '' : '.min';
155
 
156
+ // Add New Bulk Edit Area
 
 
157
  if ( 'media-new.php' == $page_hook && ( 'checked' == MLACore::mla_get_option( MLACoreOptions::MLA_ADD_NEW_BULK_EDIT ) ) ) {
158
  if ( $wp_locale->is_rtl() ) {
159
  wp_register_style( 'mla-add-new-bulk-edit', MLA_PLUGIN_URL . 'css/mla-add-new-bulk-edit-rtl.css', false, MLACore::CURRENT_MLA_VERSION );
170
  wp_enqueue_script( 'mla-add-new-bulk-edit-scripts', MLA_PLUGIN_URL . "js/mla-add-new-bulk-edit-scripts{$suffix}.js",
171
  array( 'suggest', 'jquery' ), MLACore::CURRENT_MLA_VERSION, false );
172
 
173
+ if ( MLACore::mla_supported_taxonomies( 'checklist-add-term' ) ) {
174
+ wp_enqueue_script( 'mla-add-new-bulk-edit-scripts' . '-add-term', MLA_PLUGIN_URL . "js/mla-add-term-scripts{$suffix}.js",
175
+ array( 'wp-ajax-response', 'jquery', 'mla-add-new-bulk-edit-scripts' ), MLACore::CURRENT_MLA_VERSION, false );
176
+ }
177
+
178
  wp_enqueue_script( 'mla-add-new-bulk-edit-scripts' . '-set-parent', MLA_PLUGIN_URL . "js/mla-set-parent-scripts{$suffix}.js",
179
  array( 'mla-add-new-bulk-edit-scripts', 'jquery' ), MLACore::CURRENT_MLA_VERSION, false );
180
 
337
  $tax_checklist = ob_get_contents();
338
  ob_end_clean();
339
 
340
+ if ( MLACore::mla_taxonomy_support( $tax_name, 'checklist-add-term' ) ) {
341
+ $page_values = array(
342
+ 'tax_attr' => esc_attr( $tax_name ),
343
+ 'Add New Term' => __( '+&nbsp;Add&nbsp;New&nbsp;Term', 'media-library-assistant' ),
344
+ 'Add Reader' => __( 'Add New', 'media-library-assistant' ) . ' ' . esc_html( $tax_object->labels->singular_name ),
345
+ 'tax_parents' => wp_dropdown_categories( array( 'taxonomy' => $tax_name, 'hide_empty' => 0, 'name' => "new{$tax_name}_parent", 'orderby' => 'name', 'hierarchical' => 1, 'show_option_none' => '&mdash; ' . $tax_object->labels->parent_item . ' &mdash;', 'echo' => 0 ) ),
346
+ 'Add Button' => esc_html( $tax_object->labels->add_new_item ),
347
+ 'ajax_nonce_field' => wp_nonce_field( 'add-'.$tax_name, '_ajax_nonce-add-'.$tax_name, false ),
348
+ );
349
+
350
+ $category_add_link = MLAData::mla_parse_template( $page_template_array['category_add_link'], $page_values );
351
+ $category_adder = MLAData::mla_parse_template( $page_template_array['category_adder'], $page_values );
352
+ } else {
353
+ $category_add_link = '';
354
+ $category_adder = '';
355
+ }
356
+
357
  $page_values = array(
358
+ 'tax_html' => esc_html( $tax_object->labels->name ),
359
+ 'tax_attr' => esc_attr( $tax_name ),
360
+ 'tax_checklist' => $tax_checklist,
361
+ 'category_add_link' => $category_add_link,
362
+ 'Search' => __( '?&nbsp;Search', 'media-library-assistant' ),
363
+ 'category_adder' => $category_adder,
364
+ 'Search Reader' => __( 'Search', 'media-library-assistant' ) . ' ' . esc_html( $tax_object->labels->name ),
365
+ 'Add' => __( 'Add', 'media-library-assistant' ),
366
+ 'Remove' => __( 'Remove', 'media-library-assistant' ),
367
+ 'Replace' => __( 'Replace', 'media-library-assistant' ),
368
  );
369
  $category_block = MLAData::mla_parse_template( $page_template_array['category_block'], $page_values );
370
  $taxonomy_options = MLAData::mla_parse_template( $page_template_array['taxonomy_options'], $page_values );
393
  $tax_checklist = ob_get_contents();
394
  ob_end_clean();
395
 
396
+ if ( MLACore::mla_taxonomy_support( $tax_name, 'checklist-add-term' ) ) {
397
+ $page_values = array(
398
+ 'tax_attr' => esc_attr( $tax_name ),
399
+ 'Add New Term' => __( '+&nbsp;Add&nbsp;New&nbsp;Term', 'media-library-assistant' ),
400
+ 'Add Reader' => __( 'Add New', 'media-library-assistant' ) . ' ' . esc_html( $tax_object->labels->singular_name ),
401
+ 'tax_parents' => "<input type='hidden' name='new{$tax_name}_parent' id='new{$tax_name}_parent' value='-1' />",
402
+ 'Add Button' => esc_html( $tax_object->labels->add_new_item ),
403
+ 'ajax_nonce_field' => wp_nonce_field( 'add-'.$tax_name, '_ajax_nonce-add-'.$tax_name, false ),
404
+ );
405
+
406
+ $category_add_link = MLAData::mla_parse_template( $page_template_array['category_add_link'], $page_values );
407
+ $category_adder = MLAData::mla_parse_template( $page_template_array['category_adder'], $page_values );
408
+ } else {
409
+ $category_add_link = '';
410
+ $category_adder = '';
411
+ }
412
+
413
  $page_values = array(
414
  'tax_html' => esc_html( $tax_object->labels->name ),
415
  'tax_attr' => esc_attr( $tax_name ),
416
  'tax_checklist' => $tax_checklist,
417
+ 'category_add_link' => $category_add_link,
418
+ 'Search' => __( '?&nbsp;Search', 'media-library-assistant' ),
419
+ 'category_adder' => $category_adder,
420
+ 'Search Reader' => __( 'Search', 'media-library-assistant' ) . ' ' . esc_html( $tax_object->labels->name ),
421
  'Add' => __( 'Add', 'media-library-assistant' ),
422
  'Remove' => __( 'Remove', 'media-library-assistant' ),
423
  'Replace' => __( 'Replace', 'media-library-assistant' ),
includes/class-mla-list-table.php CHANGED
@@ -318,8 +318,10 @@ class MLA_List_Table extends WP_List_Table {
318
  }
319
 
320
  if ( isset( $_REQUEST['orderby'] ) ) {
321
- if ( array_key_exists( $_REQUEST['orderby'], MLAQuery::$default_sortable_columns ) ) {
322
- $submenu_arguments['orderby'] = urlencode( $_REQUEST['orderby'] );
 
 
323
  }
324
  }
325
 
@@ -1048,10 +1050,10 @@ class MLA_List_Table extends WP_List_Table {
1048
  'heading_suffix' => urlencode( __( 'Parent', 'media-library-assistant' ) . ': ' . $parent_title )
1049
  ), self::mla_submenu_arguments( false ) ), 'upload.php' ) ), (string) $item->post_parent );
1050
  } else {// $item->post_parent
1051
- $parent = __( 'Parent', 'media-library-assistant' ) . ':0';
1052
  }
1053
 
1054
- $content = sprintf( '%1$s<br><span style="color:silver">%2$s</span>', /*%1$s*/ $item->ID, /*%2$s*/ $parent );
1055
  return $this->_handle_primary_column( $item, 'ID_parent', $content );
1056
  }
1057
 
318
  }
319
 
320
  if ( isset( $_REQUEST['orderby'] ) ) {
321
+ foreach ( MLAQuery::$default_sortable_columns as $sortable_column ) {
322
+ if ( $sortable_column[0] == $_REQUEST['orderby'] ) {
323
+ $submenu_arguments['orderby'] = urlencode( $_REQUEST['orderby'] );
324
+ }
325
  }
326
  }
327
 
1050
  'heading_suffix' => urlencode( __( 'Parent', 'media-library-assistant' ) . ': ' . $parent_title )
1051
  ), self::mla_submenu_arguments( false ) ), 'upload.php' ) ), (string) $item->post_parent );
1052
  } else {// $item->post_parent
1053
+ $parent = '<span style="color:silver">' . __( 'Parent', 'media-library-assistant' ) . ':0</span>';
1054
  }
1055
 
1056
+ $content = sprintf( '%1$s<br>%2$s', /*%1$s*/ $item->ID, /*%2$s*/ $parent );
1057
  return $this->_handle_primary_column( $item, 'ID_parent', $content );
1058
  }
1059
 
includes/class-mla-main.php CHANGED
@@ -417,6 +417,11 @@ class MLA {
417
  wp_enqueue_script( MLACore::JAVASCRIPT_INLINE_EDIT_SLUG, MLA_PLUGIN_URL . "js/mla-inline-edit-scripts{$suffix}.js",
418
  array( 'wp-lists', 'suggest', 'jquery' ), MLACore::CURRENT_MLA_VERSION, false );
419
 
 
 
 
 
 
420
  wp_enqueue_script( MLACore::JAVASCRIPT_INLINE_EDIT_SLUG . '-set-parent', MLA_PLUGIN_URL . "js/mla-set-parent-scripts{$suffix}.js",
421
  array( 'wp-lists', 'suggest', 'jquery', MLACore::JAVASCRIPT_INLINE_EDIT_SLUG ), MLACore::CURRENT_MLA_VERSION, false );
422
 
@@ -2050,24 +2055,45 @@ class MLA {
2050
 
2051
  foreach ( $hierarchical_taxonomies as $tax_name => $tax_object ) {
2052
  if ( current_user_can( $tax_object->cap->assign_terms ) ) {
2053
- ob_start();
2054
- wp_terms_checklist( NULL, array( 'taxonomy' => $tax_name, 'popular_cats' => array(), ) );
2055
- $tax_checklist = ob_get_contents();
2056
- ob_end_clean();
2057
-
2058
- $page_values = array(
2059
- 'tax_html' => esc_html( $tax_object->labels->name ),
2060
- 'tax_attr' => esc_attr( $tax_name ),
2061
- 'tax_checklist' => $tax_checklist,
2062
- 'Add' => __( 'Add', 'media-library-assistant' ),
2063
- 'Remove' => __( 'Remove', 'media-library-assistant' ),
2064
- 'Replace' => __( 'Replace', 'media-library-assistant' ),
2065
- );
2066
- $category_block = MLAData::mla_parse_template( $page_template_array['category_block'], $page_values );
2067
- $taxonomy_options = MLAData::mla_parse_template( $page_template_array['taxonomy_options'], $page_values );
2068
-
2069
- $quick_category_blocks .= $category_block;
2070
- $bulk_category_blocks .= $category_block . $taxonomy_options;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2071
  } // current_user_can
2072
  } // foreach $hierarchical_taxonomies
2073
 
@@ -2098,10 +2124,31 @@ class MLA {
2098
  $tax_checklist = ob_get_contents();
2099
  ob_end_clean();
2100
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2101
  $page_values = array(
2102
  'tax_html' => esc_html( $tax_object->labels->name ),
2103
  'tax_attr' => esc_attr( $tax_name ),
2104
  'tax_checklist' => $tax_checklist,
 
 
 
 
2105
  'Add' => __( 'Add', 'media-library-assistant' ),
2106
  'Remove' => __( 'Remove', 'media-library-assistant' ),
2107
  'Replace' => __( 'Replace', 'media-library-assistant' ),
417
  wp_enqueue_script( MLACore::JAVASCRIPT_INLINE_EDIT_SLUG, MLA_PLUGIN_URL . "js/mla-inline-edit-scripts{$suffix}.js",
418
  array( 'wp-lists', 'suggest', 'jquery' ), MLACore::CURRENT_MLA_VERSION, false );
419
 
420
+ if ( MLACore::mla_supported_taxonomies( 'checklist-add-term' ) ) {
421
+ wp_enqueue_script( MLACore::JAVASCRIPT_INLINE_EDIT_SLUG . '-add-term', MLA_PLUGIN_URL . "js/mla-add-term-scripts{$suffix}.js",
422
+ array( 'wp-ajax-response', 'jquery', MLACore::JAVASCRIPT_INLINE_EDIT_SLUG ), MLACore::CURRENT_MLA_VERSION, false );
423
+ }
424
+
425
  wp_enqueue_script( MLACore::JAVASCRIPT_INLINE_EDIT_SLUG . '-set-parent', MLA_PLUGIN_URL . "js/mla-set-parent-scripts{$suffix}.js",
426
  array( 'wp-lists', 'suggest', 'jquery', MLACore::JAVASCRIPT_INLINE_EDIT_SLUG ), MLACore::CURRENT_MLA_VERSION, false );
427
 
2055
 
2056
  foreach ( $hierarchical_taxonomies as $tax_name => $tax_object ) {
2057
  if ( current_user_can( $tax_object->cap->assign_terms ) ) {
2058
+ ob_start();
2059
+ wp_terms_checklist( NULL, array( 'taxonomy' => $tax_name, 'popular_cats' => array(), ) );
2060
+ $tax_checklist = ob_get_contents();
2061
+ ob_end_clean();
2062
+
2063
+ if ( MLACore::mla_taxonomy_support( $tax_name, 'checklist-add-term' ) ) {
2064
+ $page_values = array(
2065
+ 'tax_attr' => esc_attr( $tax_name ),
2066
+ 'Add New Term' => __( '+&nbsp;Add&nbsp;New&nbsp;Term', 'media-library-assistant' ),
2067
+ 'Add Reader' => __( 'Add New', 'media-library-assistant' ) . ' ' . esc_html( $tax_object->labels->singular_name ),
2068
+ 'tax_parents' => wp_dropdown_categories( array( 'taxonomy' => $tax_name, 'hide_empty' => 0, 'name' => "new{$tax_name}_parent", 'orderby' => 'name', 'hierarchical' => 1, 'show_option_none' => '&mdash; ' . $tax_object->labels->parent_item . ' &mdash;', 'echo' => 0 ) ),
2069
+ 'Add Button' => esc_html( $tax_object->labels->add_new_item ),
2070
+ 'ajax_nonce_field' => wp_nonce_field( 'add-'.$tax_name, '_ajax_nonce-add-'.$tax_name, false ),
2071
+ );
2072
+
2073
+ $category_add_link = MLAData::mla_parse_template( $page_template_array['category_add_link'], $page_values );
2074
+ $category_adder = MLAData::mla_parse_template( $page_template_array['category_adder'], $page_values );
2075
+ } else {
2076
+ $category_add_link = '';
2077
+ $category_adder = '';
2078
+ }
2079
+
2080
+ $page_values = array(
2081
+ 'tax_html' => esc_html( $tax_object->labels->name ),
2082
+ 'tax_attr' => esc_attr( $tax_name ),
2083
+ 'tax_checklist' => $tax_checklist,
2084
+ 'category_add_link' => $category_add_link,
2085
+ 'Search' => __( '?&nbsp;Search', 'media-library-assistant' ),
2086
+ 'category_adder' => $category_adder,
2087
+ 'Search Reader' => __( 'Search', 'media-library-assistant' ) . ' ' . esc_html( $tax_object->labels->name ),
2088
+ 'Add' => __( 'Add', 'media-library-assistant' ),
2089
+ 'Remove' => __( 'Remove', 'media-library-assistant' ),
2090
+ 'Replace' => __( 'Replace', 'media-library-assistant' ),
2091
+ );
2092
+ $category_block = MLAData::mla_parse_template( $page_template_array['category_block'], $page_values );
2093
+ $taxonomy_options = MLAData::mla_parse_template( $page_template_array['taxonomy_options'], $page_values );
2094
+
2095
+ $quick_category_blocks .= $category_block;
2096
+ $bulk_category_blocks .= $category_block . $taxonomy_options;
2097
  } // current_user_can
2098
  } // foreach $hierarchical_taxonomies
2099
 
2124
  $tax_checklist = ob_get_contents();
2125
  ob_end_clean();
2126
 
2127
+ if ( MLACore::mla_taxonomy_support( $tax_name, 'checklist-add-term' ) ) {
2128
+ $page_values = array(
2129
+ 'tax_attr' => esc_attr( $tax_name ),
2130
+ 'Add New Term' => __( '+&nbsp;Add&nbsp;New&nbsp;Term', 'media-library-assistant' ),
2131
+ 'Add Reader' => __( 'Add New', 'media-library-assistant' ) . ' ' . esc_html( $tax_object->labels->singular_name ),
2132
+ 'tax_parents' => "<input type='hidden' name='new{$tax_name}_parent' id='new{$tax_name}_parent' value='-1' />",
2133
+ 'Add Button' => esc_html( $tax_object->labels->add_new_item ),
2134
+ 'ajax_nonce_field' => wp_nonce_field( 'add-'.$tax_name, '_ajax_nonce-add-'.$tax_name, false ),
2135
+ );
2136
+
2137
+ $category_add_link = MLAData::mla_parse_template( $page_template_array['category_add_link'], $page_values );
2138
+ $category_adder = MLAData::mla_parse_template( $page_template_array['category_adder'], $page_values );
2139
+ } else {
2140
+ $category_add_link = '';
2141
+ $category_adder = '';
2142
+ }
2143
+
2144
  $page_values = array(
2145
  'tax_html' => esc_html( $tax_object->labels->name ),
2146
  'tax_attr' => esc_attr( $tax_name ),
2147
  'tax_checklist' => $tax_checklist,
2148
+ 'category_add_link' => $category_add_link,
2149
+ 'Search' => __( '?&nbsp;Search', 'media-library-assistant' ),
2150
+ 'category_adder' => $category_adder,
2151
+ 'Search Reader' => __( 'Search', 'media-library-assistant' ) . ' ' . esc_html( $tax_object->labels->name ),
2152
  'Add' => __( 'Add', 'media-library-assistant' ),
2153
  'Remove' => __( 'Remove', 'media-library-assistant' ),
2154
  'Replace' => __( 'Replace', 'media-library-assistant' ),
includes/class-mla-options.php CHANGED
@@ -243,6 +243,7 @@ class MLAOptions {
243
  $tax_term_search = isset( $current_values['tax_term_search'] ) ? $current_values['tax_term_search'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_term_search'];
244
  $tax_flat_checklist = isset( $current_values['tax_flat_checklist'] ) ? $current_values['tax_flat_checklist'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_flat_checklist'];
245
  $tax_checked_on_top = isset( $current_values['tax_checked_on_top'] ) ? $current_values['tax_checked_on_top'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_checked_on_top'];
 
246
  $tax_filter = isset( $current_values['tax_filter'] ) ? $current_values['tax_filter'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_filter'];
247
  $tax_metakey_sort = isset( $current_values['tax_metakey_sort'] ) ? $current_values['tax_metakey_sort'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_metakey_sort'];
248
  $tax_metakey = isset( $current_values['tax_metakey'] ) ? $current_values['tax_metakey'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_metakey'];
@@ -296,6 +297,7 @@ class MLAOptions {
296
  'flat_checklist_disabled' => '',
297
  'flat_checklist_value' => 'checked',
298
  'checked_on_top_checked' => array_key_exists( $tax_name, $tax_checked_on_top ) ? 'checked=checked' : '',
 
299
  'filter_checked' => ( $tax_name == $tax_filter ) ? 'checked=checked' : ''
300
  );
301
 
@@ -308,9 +310,7 @@ class MLAOptions {
308
  $row .= MLAData::mla_parse_template( $taxonomy_row, $option_values );
309
  }
310
 
311
- /*
312
- * Add the "filter on custom field" row
313
- */
314
  $selected = empty( $tax_metakey ) ? 'none' : $tax_metakey;
315
  $tax_metakey_options = MLAOptions::mla_compose_custom_field_option_list( $selected, array() );
316
 
@@ -333,6 +333,7 @@ class MLAOptions {
333
  'Term Search' => __( 'Term Search', 'media-library-assistant' ),
334
  'Checklist' => __( 'Checklist', 'media-library-assistant' ),
335
  'Checked On Top' => __( 'Checked On Top', 'media-library-assistant' ),
 
336
  'List Filter' => __( 'List Filter', 'media-library-assistant' ),
337
  'Taxonomy' => __( 'Taxonomy', 'media-library-assistant' ),
338
  'taxonomy_rows' => $row,
@@ -347,6 +348,7 @@ class MLAOptions {
347
  $tax_term_search = isset( $args['tax_term_search'] ) ? $args['tax_term_search'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_term_search'];
348
  $tax_flat_checklist = isset( $args['tax_flat_checklist'] ) ? $args['tax_flat_checklist'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_flat_checklist'];
349
  $tax_checked_on_top = isset( $args['tax_checked_on_top'] ) ? $args['tax_checked_on_top'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_checked_on_top'];
 
350
  $tax_filter = isset( $args['tax_filter'] ) ? $args['tax_filter'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_filter'];
351
  $tax_metakey_sort = isset( $args['tax_metakey_sort'] ) ? $args['tax_metakey_sort'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_metakey_sort'];
352
  $tax_metakey = isset( $args['tax_metakey'] ) ? stripslashes( $args['tax_metakey'] ) : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_metakey'];
@@ -393,12 +395,22 @@ class MLAOptions {
393
  }
394
  }
395
 
 
 
 
 
 
 
 
 
 
396
  $value = array (
397
  'tax_support' => $tax_support,
398
  'tax_quick_edit' => $tax_quick_edit,
399
  'tax_term_search' => $tax_term_search,
400
  'tax_flat_checklist' => $tax_flat_checklist,
401
  'tax_checked_on_top' => $tax_checked_on_top,
 
402
  'tax_filter' => $tax_filter,
403
  'tax_metakey_sort' => $tax_metakey_sort,
404
  'tax_metakey' => $tax_metakey,
243
  $tax_term_search = isset( $current_values['tax_term_search'] ) ? $current_values['tax_term_search'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_term_search'];
244
  $tax_flat_checklist = isset( $current_values['tax_flat_checklist'] ) ? $current_values['tax_flat_checklist'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_flat_checklist'];
245
  $tax_checked_on_top = isset( $current_values['tax_checked_on_top'] ) ? $current_values['tax_checked_on_top'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_checked_on_top'];
246
+ $tax_checklist_add_term = isset( $current_values['tax_checklist_add_term'] ) ? $current_values['tax_checklist_add_term'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_checklist_add_term'];
247
  $tax_filter = isset( $current_values['tax_filter'] ) ? $current_values['tax_filter'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_filter'];
248
  $tax_metakey_sort = isset( $current_values['tax_metakey_sort'] ) ? $current_values['tax_metakey_sort'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_metakey_sort'];
249
  $tax_metakey = isset( $current_values['tax_metakey'] ) ? $current_values['tax_metakey'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_metakey'];
297
  'flat_checklist_disabled' => '',
298
  'flat_checklist_value' => 'checked',
299
  'checked_on_top_checked' => array_key_exists( $tax_name, $tax_checked_on_top ) ? 'checked=checked' : '',
300
+ 'checklist_add_term_checked' => array_key_exists( $tax_name, $tax_checklist_add_term ) ? 'checked=checked' : '',
301
  'filter_checked' => ( $tax_name == $tax_filter ) ? 'checked=checked' : ''
302
  );
303
 
310
  $row .= MLAData::mla_parse_template( $taxonomy_row, $option_values );
311
  }
312
 
313
+ // Add the "filter on custom field" row
 
 
314
  $selected = empty( $tax_metakey ) ? 'none' : $tax_metakey;
315
  $tax_metakey_options = MLAOptions::mla_compose_custom_field_option_list( $selected, array() );
316
 
333
  'Term Search' => __( 'Term Search', 'media-library-assistant' ),
334
  'Checklist' => __( 'Checklist', 'media-library-assistant' ),
335
  'Checked On Top' => __( 'Checked On Top', 'media-library-assistant' ),
336
+ 'Inline Add Term' => __( 'Inline Add Term', 'media-library-assistant' ),
337
  'List Filter' => __( 'List Filter', 'media-library-assistant' ),
338
  'Taxonomy' => __( 'Taxonomy', 'media-library-assistant' ),
339
  'taxonomy_rows' => $row,
348
  $tax_term_search = isset( $args['tax_term_search'] ) ? $args['tax_term_search'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_term_search'];
349
  $tax_flat_checklist = isset( $args['tax_flat_checklist'] ) ? $args['tax_flat_checklist'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_flat_checklist'];
350
  $tax_checked_on_top = isset( $args['tax_checked_on_top'] ) ? $args['tax_checked_on_top'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_checked_on_top'];
351
+ $tax_checklist_add_term = isset( $args['tax_checklist_add_term'] ) ? $args['tax_checklist_add_term'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_checklist_add_term'];
352
  $tax_filter = isset( $args['tax_filter'] ) ? $args['tax_filter'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_filter'];
353
  $tax_metakey_sort = isset( $args['tax_metakey_sort'] ) ? $args['tax_metakey_sort'] : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_metakey_sort'];
354
  $tax_metakey = isset( $args['tax_metakey'] ) ? stripslashes( $args['tax_metakey'] ) : MLACoreOptions::$mla_option_definitions[ MLACoreOptions::MLA_TAXONOMY_SUPPORT ]['std']['tax_metakey'];
395
  }
396
  }
397
 
398
+
399
+ foreach ( $tax_checklist_add_term as $tax_name => $tax_value ) {
400
+ if ( !array_key_exists( $tax_name, $tax_support ) ) {
401
+ /* translators: 1: taxonomy name */
402
+ $msg .= '<br>' . sprintf( __( 'Inline Add Term ignored; %1$s not supported.', 'media-library-assistant' ), $tax_name ) . "\r\n";
403
+ unset( $tax_checklist_add_term[ $tax_name ] );
404
+ }
405
+ }
406
+
407
  $value = array (
408
  'tax_support' => $tax_support,
409
  'tax_quick_edit' => $tax_quick_edit,
410
  'tax_term_search' => $tax_term_search,
411
  'tax_flat_checklist' => $tax_flat_checklist,
412
  'tax_checked_on_top' => $tax_checked_on_top,
413
+ 'tax_checklist_add_term' => $tax_checklist_add_term,
414
  'tax_filter' => $tax_filter,
415
  'tax_metakey_sort' => $tax_metakey_sort,
416
  'tax_metakey' => $tax_metakey,
includes/class-mla-settings-documentation-tab.php CHANGED
@@ -328,7 +328,7 @@ class MLASettings_Documentation {
328
  $page_values = array(
329
  'example_url' => MLACore::mla_nonce_url( '?page=mla-settings-menu-documentation&mla_tab=documentation&mla-example-search=Search', MLACore::MLA_ADMIN_NONCE_ACTION, MLACore::MLA_ADMIN_NONCE_NAME ),
330
  'translate_url' => MLA_PLUGIN_URL . 'languages/MLA Internationalization Guide.pdf',
331
- 'phpDocs_url' => 'http://fairtradejudaica.org/wp-content/uploads/' . 'phpDocs/index.html',
332
  );
333
 
334
  $page_content['body'] = MLAData::mla_parse_template( $page_template['documentation-tab'], $page_values );
328
  $page_values = array(
329
  'example_url' => MLACore::mla_nonce_url( '?page=mla-settings-menu-documentation&mla_tab=documentation&mla-example-search=Search', MLACore::MLA_ADMIN_NONCE_ACTION, MLACore::MLA_ADMIN_NONCE_NAME ),
330
  'translate_url' => MLA_PLUGIN_URL . 'languages/MLA Internationalization Guide.pdf',
331
+ 'phpDocs_url' => 'http://davidlingren.com/assets/phpDocs/index.html',
332
  );
333
 
334
  $page_content['body'] = MLAData::mla_parse_template( $page_template['documentation-tab'], $page_values );
includes/class-mla-settings.php CHANGED
@@ -1067,11 +1067,6 @@ class MLASettings {
1067
  '_wp_http_referer' => wp_referer_field( false ),
1068
  'Go to Top' => __( 'Go to Top', 'media-library-assistant' ),
1069
  'Go to Bottom' => __( 'Go to Bottom', 'media-library-assistant' ),
1070
- 'Support Our Work' => __( 'Support Our Work', 'media-library-assistant' ),
1071
- 'Donate to FTJ' => __( 'Donate to FTJ', 'media-library-assistant' ),
1072
- 'Donate' => __( 'Donate', 'media-library-assistant' ),
1073
- /* translators: 1: donation hyperlink */
1074
- 'This plugin was' => sprintf( __( 'This plugin was inspired by my work on the WordPress web site for our nonprofit, Fair Trade Judaica. If you find the Media Library Assistant plugin useful and would like to support a great cause, consider a %1$s to our work. Thank you!', 'media-library-assistant' ), '<a href="http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/" title="' . __( 'Donate to FTJ', 'media-library-assistant' ) . '" target="_blank" style="font-weight:bold">' . __( 'tax-deductible donation', 'media-library-assistant' ) . '</a>' ),
1075
  'shortcode_list' => '',
1076
  'form_url' => admin_url( 'options-general.php' ) . '?page=mla-settings-menu-general&mla_tab=general',
1077
  'options_list' => '',
@@ -1458,17 +1453,13 @@ class MLASettings {
1458
  wp_die( __( 'You do not have permission to manage plugin settings.', 'media-library-assistant' ) );
1459
  }
1460
 
1461
- /*
1462
- * Load template array and initialize page-level values.
1463
- */
1464
  $development_version = MLA::MLA_DEVELOPMENT_VERSION;
1465
  $development_version = ( ! empty( $development_version ) ) ? ' (' . $development_version . ')' : '';
1466
  self::$page_template_array = MLACore::mla_load_template( 'admin-display-settings-page.tpl' );
1467
  $current_tab_slug = isset( $_REQUEST['mla_tab'] ) ? $_REQUEST['mla_tab']: 'general';
1468
  $current_tab = self::_get_options_tablist( $current_tab_slug );
1469
  $page_values = array(
1470
- 'Support Our Work' => __( 'Support Our Work', 'media-library-assistant' ),
1471
- 'Donate' => __( 'Donate', 'media-library-assistant' ),
1472
  'version' => 'v' . MLACore::CURRENT_MLA_VERSION,
1473
  'development' => $development_version,
1474
  'messages' => '',
@@ -1479,9 +1470,7 @@ class MLASettings {
1479
  );
1480
  //error_log( __LINE__ . " mla_render_settings_page( {$current_tab_slug} ) REQUEST = " . var_export( $_REQUEST, true ), 0 );
1481
 
1482
- /*
1483
- * Compose tab content
1484
- */
1485
  if ( $current_tab ) {
1486
  if ( isset( $current_tab['render'] ) ) {
1487
  $handler = $current_tab['render'];
1067
  '_wp_http_referer' => wp_referer_field( false ),
1068
  'Go to Top' => __( 'Go to Top', 'media-library-assistant' ),
1069
  'Go to Bottom' => __( 'Go to Bottom', 'media-library-assistant' ),
 
 
 
 
 
1070
  'shortcode_list' => '',
1071
  'form_url' => admin_url( 'options-general.php' ) . '?page=mla-settings-menu-general&mla_tab=general',
1072
  'options_list' => '',
1453
  wp_die( __( 'You do not have permission to manage plugin settings.', 'media-library-assistant' ) );
1454
  }
1455
 
1456
+ // Load template array and initialize page-level values.
 
 
1457
  $development_version = MLA::MLA_DEVELOPMENT_VERSION;
1458
  $development_version = ( ! empty( $development_version ) ) ? ' (' . $development_version . ')' : '';
1459
  self::$page_template_array = MLACore::mla_load_template( 'admin-display-settings-page.tpl' );
1460
  $current_tab_slug = isset( $_REQUEST['mla_tab'] ) ? $_REQUEST['mla_tab']: 'general';
1461
  $current_tab = self::_get_options_tablist( $current_tab_slug );
1462
  $page_values = array(
 
 
1463
  'version' => 'v' . MLACore::CURRENT_MLA_VERSION,
1464
  'development' => $development_version,
1465
  'messages' => '',
1470
  );
1471
  //error_log( __LINE__ . " mla_render_settings_page( {$current_tab_slug} ) REQUEST = " . var_export( $_REQUEST, true ), 0 );
1472
 
1473
+ // Compose tab content
 
 
1474
  if ( $current_tab ) {
1475
  if ( isset( $current_tab['render'] ) ) {
1476
  $handler = $current_tab['render'];
includes/class-mla-shortcode-support.php CHANGED
@@ -167,6 +167,61 @@ class MLAShortcode_Support {
167
  return $image;
168
  }
169
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
170
  /**
171
  * Make sure $attr is an array, repair line-break damage, merge with $content
172
  *
@@ -579,6 +634,7 @@ class MLAShortcode_Support {
579
  // Look for Photonic-enhanced gallery; use the [gallery] shortcode if found
580
  global $photonic;
581
 
 
582
  if ( is_object( $photonic ) && ! empty( $arguments['style'] ) && empty( $arguments['mla_alt_shortcode'] ) ) {
583
  if ( 'default' != strtolower( $arguments['type'] ) ) {
584
  return '<p>' . __( '<strong>Photonic-enhanced [mla_gallery]</strong> type must be <strong>default</strong>, query = ', 'media-library-assistant' ) . var_export( $attr, true ) . '</p>';
@@ -589,6 +645,7 @@ class MLAShortcode_Support {
589
  }
590
 
591
  $arguments['mla_alt_shortcode'] = 'gallery';
 
592
  }
593
 
594
  // Look for user-specified alternate gallery shortcode
@@ -644,12 +701,23 @@ class MLAShortcode_Support {
644
 
645
  // Execute the alternate gallery shortcode with the new parameters
646
  $content = apply_filters( 'mla_gallery_final_content', $content );
 
 
 
 
 
 
647
  if ( ! empty( $content ) ) {
648
  $output .= do_shortcode( sprintf( '[%1$s %2$s %3$s]%4$s[/%1$s]', $arguments['mla_alt_shortcode'], $mla_alt_shortcode_ids, $mla_alt_shortcode_args, $content ) );
649
  } else {
650
  $output .= do_shortcode( sprintf( '[%1$s %2$s %3$s]', $arguments['mla_alt_shortcode'], $mla_alt_shortcode_ids, $mla_alt_shortcode_args ) );
651
  }
652
 
 
 
 
 
 
653
  do_action( 'mla_gallery_end_alt_shortcode' );
654
  return $output;
655
  } // is_null( $mla_alt_ids_value )
@@ -716,9 +784,22 @@ class MLAShortcode_Support {
716
  $arguments['mla_viewer_extensions'] = array();
717
  }
718
 
719
- // convert limit (in MB) to float
720
  $arguments['mla_viewer_limit'] = abs( 0.0 + $arguments['mla_viewer_limit'] );
721
 
 
 
 
 
 
 
 
 
 
 
 
 
 
722
  $arguments['mla_viewer_width'] = absint( $arguments['mla_viewer_width'] );
723
  $arguments['mla_viewer_height'] = absint( $arguments['mla_viewer_height'] );
724
  $arguments['mla_viewer_page'] = absint( $arguments['mla_viewer_page'] );
@@ -1079,9 +1160,7 @@ class MLAShortcode_Support {
1079
  }
1080
  } // has parent
1081
 
1082
- /*
1083
- * Add attachment-specific field-level substitution parameters
1084
- */
1085
  $new_text = isset( $item_template ) ? $item_template : '';
1086
  foreach( $mla_item_specific_arguments as $index => $value ) {
1087
  $new_text .= str_replace( '{+', '[+', str_replace( '+}', '+]', $arguments[ $index ] ) );
@@ -1397,9 +1476,7 @@ class MLAShortcode_Support {
1397
  $item_values['thumbnail_url'] = '';
1398
 
1399
  if ( ( 'none' !== $arguments['size'] ) && ( 'checked' == MLACore::mla_get_option( 'enable_featured_image' ) ) ) {
1400
- /*
1401
- * Look for the "Featured Image" as an alternate thumbnail for PDFs, etc.
1402
- */
1403
  $feature = get_the_post_thumbnail( $attachment->ID, $size, array( 'class' => 'attachment-thumbnail' ) );
1404
  $feature = apply_filters( 'mla_gallery_featured_image', $feature, $attachment, $size, $item_values );
1405
 
167
  return $image;
168
  }
169
 
170
+ /**
171
+ * Removes MIME type restriction from Photonic Gallery query
172
+ *
173
+ * @since 2.76
174
+ *
175
+ * @param object $wp_query Current WP_Query object
176
+ */
177
+ public static function _photonic_pre_get_posts( $wp_query ) {
178
+ // This has already been applied in MLA's database query
179
+ $wp_query->set( 'post_mime_type', '' );
180
+ }
181
+
182
+ /**
183
+ * Filters the image src result, returning the "Featured Image" to represent a non-image attachment.
184
+ *
185
+ * @since 2.76
186
+ *
187
+ * @param array|false $image Either array with src, width & height, icon src, or false.
188
+ * @param int $attachment_id Image attachment ID.
189
+ * @param string|array $size Size of image. Image size or array of width and height values
190
+ * (in that order). Default 'thumbnail'.
191
+ * @param bool $icon Whether the image should be treated as an icon. Default false.
192
+ */
193
+ public static function _get_attachment_featured_image( $image, $attachment_id, $size, $icon ) {
194
+ if ( $image ) {
195
+ return $image;
196
+ }
197
+
198
+ if ( 'checked' == MLACore::mla_get_option( 'enable_featured_image' ) ) {
199
+ // Look for the "Featured Image" as an alternate thumbnail for PDFs, etc.
200
+ $feature = get_the_post_thumbnail( $attachment_id, $size, array( 'class' => 'attachment-thumbnail' ) );
201
+ if ( ! empty( $feature ) ) {
202
+ $match_count = preg_match_all( '# width=\"([^\"]+)\" height=\"([^\"]+)\" src=\"([^\"]+)\" #', $feature, $matches, PREG_OFFSET_CAPTURE );
203
+ if ( ! ( ( $match_count == false ) || ( $match_count == 0 ) ) ) {
204
+ $image = array( $matches[3][0][0], $matches[1][0][0], $matches[2][0][0] );
205
+ return $image;
206
+ }
207
+ }
208
+ } // enable_featured_image
209
+
210
+ if ( $src = wp_mime_type_icon( $attachment_id ) ) {
211
+ /** This filter is documented in wp-includes/post.php */
212
+ $icon_dir = apply_filters( 'icon_dir', ABSPATH . WPINC . '/images/media' );
213
+
214
+ $src_file = $icon_dir . '/' . wp_basename( $src );
215
+ @list( $width, $height ) = getimagesize( $src_file );
216
+ }
217
+
218
+ if ( $src && $width && $height ) {
219
+ $image = array( $src, $width, $height );
220
+ }
221
+
222
+ return $image;
223
+ }
224
+
225
  /**
226
  * Make sure $attr is an array, repair line-break damage, merge with $content
227
  *
634
  // Look for Photonic-enhanced gallery; use the [gallery] shortcode if found
635
  global $photonic;
636
 
637
+ $is_photonic = false;
638
  if ( is_object( $photonic ) && ! empty( $arguments['style'] ) && empty( $arguments['mla_alt_shortcode'] ) ) {
639
  if ( 'default' != strtolower( $arguments['type'] ) ) {
640
  return '<p>' . __( '<strong>Photonic-enhanced [mla_gallery]</strong> type must be <strong>default</strong>, query = ', 'media-library-assistant' ) . var_export( $attr, true ) . '</p>';
645
  }
646
 
647
  $arguments['mla_alt_shortcode'] = 'gallery';
648
+ $is_photonic = true;
649
  }
650
 
651
  // Look for user-specified alternate gallery shortcode
701
 
702
  // Execute the alternate gallery shortcode with the new parameters
703
  $content = apply_filters( 'mla_gallery_final_content', $content );
704
+
705
+ if ( $is_photonic ) {
706
+ add_filter( 'pre_get_posts', 'MLAShortcode_Support::_photonic_pre_get_posts', 10, 4 );
707
+ add_filter( 'wp_get_attachment_image_src', 'MLAShortcode_Support::_get_attachment_featured_image', 10, 4 );
708
+ }
709
+
710
  if ( ! empty( $content ) ) {
711
  $output .= do_shortcode( sprintf( '[%1$s %2$s %3$s]%4$s[/%1$s]', $arguments['mla_alt_shortcode'], $mla_alt_shortcode_ids, $mla_alt_shortcode_args, $content ) );
712
  } else {
713
  $output .= do_shortcode( sprintf( '[%1$s %2$s %3$s]', $arguments['mla_alt_shortcode'], $mla_alt_shortcode_ids, $mla_alt_shortcode_args ) );
714
  }
715
 
716
+ if ( $is_photonic ) {
717
+ remove_filter( 'wp_get_attachment_image_src', 'MLAShortcode_Support::_get_attachment_featured_image' );
718
+ remove_filter( 'pre_get_posts', 'MLAShortcode_Support::_photonic_pre_get_posts' );
719
+ }
720
+
721
  do_action( 'mla_gallery_end_alt_shortcode' );
722
  return $output;
723
  } // is_null( $mla_alt_ids_value )
784
  $arguments['mla_viewer_extensions'] = array();
785
  }
786
 
787
+ // Convert limit (in MB) to float
788
  $arguments['mla_viewer_limit'] = abs( 0.0 + $arguments['mla_viewer_limit'] );
789
 
790
+ // Fill width and/or height from explicit intermediate size
791
+ if ( ( empty( $attr['mla_viewer_width'] ) && empty( $attr['mla_viewer_height'] ) ) && !empty( $attr['size'] ) ) {
792
+ $registered_dimensions = self::_registered_dimensions();
793
+ if ( isset( $registered_dimensions[ $attr['size'] ] ) ) {
794
+ $arguments['mla_viewer_width'] = absint( $registered_dimensions[ $attr['size'] ][0] );
795
+ $arguments['mla_viewer_height'] = absint( $registered_dimensions[ $attr['size'] ][1] );
796
+
797
+ if ( empty( $attr['mla_viewer_best_fit'] ) ) {
798
+ $arguments['mla_viewer_best_fit'] = 'true';
799
+ }
800
+ }
801
+ }
802
+
803
  $arguments['mla_viewer_width'] = absint( $arguments['mla_viewer_width'] );
804
  $arguments['mla_viewer_height'] = absint( $arguments['mla_viewer_height'] );
805
  $arguments['mla_viewer_page'] = absint( $arguments['mla_viewer_page'] );
1160
  }
1161
  } // has parent
1162
 
1163
+ // Add attachment-specific field-level substitution parameters
 
 
1164
  $new_text = isset( $item_template ) ? $item_template : '';
1165
  foreach( $mla_item_specific_arguments as $index => $value ) {
1166
  $new_text .= str_replace( '{+', '[+', str_replace( '+}', '+]', $arguments[ $index ] ) );
1476
  $item_values['thumbnail_url'] = '';
1477
 
1478
  if ( ( 'none' !== $arguments['size'] ) && ( 'checked' == MLACore::mla_get_option( 'enable_featured_image' ) ) ) {
1479
+ // Look for the "Featured Image" as an alternate thumbnail for PDFs, etc.
 
 
1480
  $feature = get_the_post_thumbnail( $attachment->ID, $size, array( 'class' => 'attachment-thumbnail' ) );
1481
  $feature = apply_filters( 'mla_gallery_featured_image', $feature, $attachment, $size, $item_values );
1482
 
index.php CHANGED
@@ -6,20 +6,20 @@
6
  * will the rest of the plugin be loaded and run.
7
  *
8
  * @package Media Library Assistant
9
- * @version 2.75
10
  */
11
 
12
  /*
13
  Plugin Name: Media Library Assistant
14
- Plugin URI: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
15
  Description: Enhances the Media Library; powerful [mla_gallery] [mla_tag_cloud] [mla_term_list], taxonomy support, IPTC/EXIF/XMP/PDF processing, bulk/quick edit.
16
- Author: David Lingren, Fair Trade Judaica
17
  Text Domain: media-library-assistant
18
  Domain Path: /languages
19
- Version: 2.75
20
- Author URI: http://fairtradejudaica.org/our-story/staff/
21
 
22
- Copyright 2011-2018 David Lingren
23
 
24
  This program is free software; you can redistribute it and/or modify
25
  it under the terms of the GNU General Public License as published by
6
  * will the rest of the plugin be loaded and run.
7
  *
8
  * @package Media Library Assistant
9
+ * @version 2.77
10
  */
11
 
12
  /*
13
  Plugin Name: Media Library Assistant
14
+ Plugin URI: http://davidlingren.com/#two
15
  Description: Enhances the Media Library; powerful [mla_gallery] [mla_tag_cloud] [mla_term_list], taxonomy support, IPTC/EXIF/XMP/PDF processing, bulk/quick edit.
16
+ Author: David Lingren
17
  Text Domain: media-library-assistant
18
  Domain Path: /languages
19
+ Version: 2.77
20
+ Author URI: http://davidlingren.com/
21
 
22
+ Copyright 2011-2019 David Lingren
23
 
24
  This program is free software; you can redistribute it and/or modify
25
  it under the terms of the GNU General Public License as published by
js/mla-add-new-bulk-edit-scripts.js CHANGED
@@ -21,6 +21,91 @@ var jQuery,
21
  var id = jQuery( o ).closest( 'tr' ).attr( 'id' ),
22
  parts = id.split( '-' );
23
  return parts[ parts.length - 1 ];
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
24
  }
25
  },
26
 
@@ -30,9 +115,7 @@ var jQuery,
30
  };
31
 
32
  ( function( $ ) {
33
- /**
34
- * Localized settings and strings
35
- */
36
  mla.settings = typeof mla_add_new_bulk_edit_vars === 'undefined' ? {} : mla_add_new_bulk_edit_vars;
37
  mla_add_new_bulk_edit_vars = void 0; // delete won't work on Globals
38
 
@@ -46,13 +129,18 @@ var jQuery,
46
  bypass = $( '.upload-flash-bypass' ), title = $( '#wpbody .wrap' ).children ( 'h1, h2' ),
47
  uploadContent, uploadDiv = $( '#mla-add-new-bulk-edit-div' ).hide(); // Start with area closed up
48
 
 
 
 
 
 
49
  $( '#bulk-edit-set-parent', uploadDiv ).on( 'click', function(){
50
  return mla.addNewBulkEdit.parentOpen();
51
  });
52
 
53
  // Move the blank content out of the form so it won't pollute the serialize() results
54
  blankContent = $('#mla-blank-add-new-bulk-edit-div').detach();
55
- $( '#file-form' ).before( blankContent );
56
 
57
  // Move the Open/Close Bulk Edit area toggleButton to save space on the page
58
  toggleButton = $( '#bulk-edit-toggle', uploadDiv ).detach();
@@ -113,6 +201,11 @@ var jQuery,
113
  $('.inline-edit-tags', bulkDiv ).html( blankTags ),
114
  $('.inline-edit-fields', bulkDiv ).html( blankFields );
115
 
 
 
 
 
 
116
  $('#bulk-edit-set-parent', bulkDiv).on( 'click', function(){
117
  return mla.addNewBulkEdit.parentOpen();
118
  });
21
  var id = jQuery( o ).closest( 'tr' ).attr( 'id' ),
22
  parts = id.split( '-' );
23
  return parts[ parts.length - 1 ];
24
+ },
25
+
26
+ attachSearch : function( rowId ) {
27
+ jQuery( rowId + ' .categorydiv' ).each( function(){
28
+ var this_id = jQuery(this).attr('id'), taxonomyParts, taxonomy;
29
+
30
+ taxonomyParts = this_id.split('-');
31
+ taxonomyParts.shift(); // taxonomy-
32
+ taxonomy = taxonomyParts.join('-');
33
+
34
+ jQuery.extend( jQuery.expr[":"], {
35
+ "matchTerms": function( elem, i, match, array ) {
36
+ return ( elem.textContent || elem.innerText || "" ).toLowerCase().indexOf( ( match[3] || "" ).toLowerCase() ) >= 0;
37
+ }
38
+ });
39
+
40
+ jQuery( rowId + ' #' + taxonomy + '-searcher' ).addClass( 'wp-hidden-children' );
41
+ jQuery( rowId + ' #' + taxonomy + 'checklist li' ).show();
42
+
43
+ jQuery( rowId + ' #search-' + taxonomy ).off();
44
+
45
+ jQuery( rowId + ' #search-' + taxonomy ).keydown( function( event ){
46
+
47
+ if( 13 === event.keyCode ) {
48
+ event.preventDefault();
49
+ jQuery( rowId + ' #search-' + taxonomy ).val( '' );
50
+ jQuery( rowId + ' #' + taxonomy + '-searcher' ).addClass( 'wp-hidden-children' );
51
+
52
+ jQuery( rowId + ' #' + taxonomy + 'checklist li' ).show();
53
+ return false;
54
+ }
55
+
56
+ } );
57
+
58
+ jQuery( rowId + ' #search-' + taxonomy ).keypress( function( event ){
59
+
60
+ if( 13 === event.keyCode ) {
61
+ event.preventDefault();
62
+ jQuery( rowId + ' #search-' + taxonomy ).val( '' );
63
+ jQuery( rowId + ' #' + taxonomy + '-searcher' ).addClass( 'wp-hidden-children' );
64
+
65
+ jQuery( rowId + ' #' + taxonomy + 'checklist li' ).show();
66
+ return;
67
+ }
68
+
69
+ } );
70
+
71
+ jQuery( rowId + ' #search-' + taxonomy ).keyup( function( event ){
72
+ var searchValue, termList, matchingTerms;
73
+
74
+ if( 13 === event.keyCode ) {
75
+ event.preventDefault();
76
+ jQuery( rowId + ' #' + taxonomy + '-search-toggle' ).focus();
77
+ return;
78
+ }
79
+
80
+ searchValue = jQuery( rowId + ' #search-' + taxonomy ).val();
81
+ termList = jQuery( rowId + ' #' + taxonomy + 'checklist li' );
82
+
83
+ if ( 0 < searchValue.length ) {
84
+ termList.hide();
85
+ } else {
86
+ termList.show();
87
+ }
88
+
89
+ matchingTerms = jQuery( rowId + ' #' + taxonomy + "checklist label:matchTerms('" + searchValue + "')");
90
+ matchingTerms.closest( 'li' ).find( 'li' ).andSelf().show();
91
+ matchingTerms.parents( rowId + ' #' + taxonomy + 'checklist li' ).show();
92
+ } );
93
+
94
+ jQuery( rowId + ' #' + taxonomy + '-search-toggle' ).off();
95
+
96
+ jQuery( rowId + ' #' + taxonomy + '-search-toggle' ).click( function() {
97
+ jQuery( rowId + ' #' + taxonomy + '-adder ').addClass( 'wp-hidden-children' );
98
+ jQuery( rowId + ' #' + taxonomy + '-searcher' ).toggleClass( 'wp-hidden-children' );
99
+ jQuery( rowId + ' #' + taxonomy + 'checklist li' ).show();
100
+
101
+ if ( false === jQuery( rowId + ' #' + taxonomy + '-searcher' ).hasClass( 'wp-hidden-children' ) ) {
102
+ jQuery( rowId + ' #search-' + taxonomy ).val( '' ).removeClass( 'form-input-tip' );
103
+ jQuery( rowId + ' #search-' + taxonomy ).focus();
104
+ }
105
+
106
+ return false;
107
+ });
108
+ }); // .categorydiv.each,
109
  }
110
  },
111
 
115
  };
116
 
117
  ( function( $ ) {
118
+ // Localized settings and strings
 
 
119
  mla.settings = typeof mla_add_new_bulk_edit_vars === 'undefined' ? {} : mla_add_new_bulk_edit_vars;
120
  mla_add_new_bulk_edit_vars = void 0; // delete won't work on Globals
121
 
129
  bypass = $( '.upload-flash-bypass' ), title = $( '#wpbody .wrap' ).children ( 'h1, h2' ),
130
  uploadContent, uploadDiv = $( '#mla-add-new-bulk-edit-div' ).hide(); // Start with area closed up
131
 
132
+ if ( typeof mla.addTerm !== 'undefined' ) {
133
+ mla.addTerm.init( '#mla-add-new-bulk-edit-div' );
134
+ }
135
+ mla.utility.attachSearch( '#mla-add-new-bulk-edit-div' );
136
+
137
  $( '#bulk-edit-set-parent', uploadDiv ).on( 'click', function(){
138
  return mla.addNewBulkEdit.parentOpen();
139
  });
140
 
141
  // Move the blank content out of the form so it won't pollute the serialize() results
142
  blankContent = $('#mla-blank-add-new-bulk-edit-div').detach();
143
+ $( '#file-form' ).after( blankContent );
144
 
145
  // Move the Open/Close Bulk Edit area toggleButton to save space on the page
146
  toggleButton = $( '#bulk-edit-toggle', uploadDiv ).detach();
201
  $('.inline-edit-tags', bulkDiv ).html( blankTags ),
202
  $('.inline-edit-fields', bulkDiv ).html( blankFields );
203
 
204
+ if ( typeof mla.addTerm !== 'undefined' ) {
205
+ mla.addTerm.init( '#mla-add-new-bulk-edit-div' );
206
+ }
207
+ mla.utility.attachSearch( '#mla-add-new-bulk-edit-div' );
208
+
209
  $('#bulk-edit-set-parent', bulkDiv).on( 'click', function(){
210
  return mla.addNewBulkEdit.parentOpen();
211
  });
js/mla-add-new-bulk-edit-scripts.min.js CHANGED
@@ -1 +1 @@
1
- var jQuery,mla_add_new_bulk_edit_vars,mla={settings:{},utility:{getId:function(b){var c=jQuery(b).closest("tr").attr("id"),a=c.split("-");return a[a.length-1]}},addNewBulkEdit:null,setParent:null};(function(a){mla.settings=typeof mla_add_new_bulk_edit_vars==="undefined"?{}:mla_add_new_bulk_edit_vars;mla_add_new_bulk_edit_vars=void 0;if(typeof mla.settings.areaOnTop==="undefined"){mla.settings.areaOnTop=false}mla.addNewBulkEdit={init:function(){var d,e,c,g=a(".upload-flash-bypass"),f=a("#wpbody .wrap").children("h1, h2"),b,h=a("#mla-add-new-bulk-edit-div").hide();a("#bulk-edit-set-parent",h).on("click",function(){return mla.addNewBulkEdit.parentOpen()});d=a("#mla-blank-add-new-bulk-edit-div").detach();a("#file-form").before(d);e=a("#bulk-edit-toggle",h).detach();c=a("#bulk-edit-reset",h).detach();if(mla.settings.areaOnTop){e.appendTo(f);c.appendTo(f);b=h.detach();a("#media-upload-notice").before(b)}else{e.appendTo(g);c.appendTo(g)}e.siblings("a").on("click",function(){e.attr("title",mla.settings.toggleOpen);e.attr("value",mla.settings.toggleOpen);c.hide();h.hide()});e.on("click",function(){return mla.addNewBulkEdit.formToggle()});c.on("click",function(){return mla.addNewBulkEdit.doReset()});if(mla.settings.areaOpen){mla.addNewBulkEdit.formToggle()}a("textarea.mla_tags",h).each(function(){var i=a(this).attr("name").replace("]","").replace("tax_input[","");a(this).suggest(ajaxurl+"?action=ajax-tag-search&tax="+i,{delay:500,minchars:2,multiple:true,multipleSep:mla.settings.comma+" "})});uploader.bind("BeforeUpload",function(i,j){var k=a("#file-form").serialize();i.settings.multipart_params.mlaAddNewBulkEditFormString=k})},doReset:function(){var e=a("#mla-add-new-bulk-edit-div"),d=a("#mla-blank-add-new-bulk-edit-div"),b=a(".inline-edit-categories",d).html(),f=a(".inline-edit-tags",d).html(),c=a(".inline-edit-fields",d).html();a(".inline-edit-categories",e).html(b),a(".inline-edit-tags",e).html(f),a(".inline-edit-fields",e).html(c);a("#bulk-edit-set-parent",e).on("click",function(){return mla.addNewBulkEdit.parentOpen()});return false},formToggle:function(){var d=a("#bulk-edit-toggle"),b=a("#bulk-edit-reset"),c=a("#mla-add-new-bulk-edit-div");if("none"===c.css("display")){d.attr("title",mla.settings.toggleClose);d.attr("value",mla.settings.toggleClose);b.show()}else{d.attr("title",mla.settings.toggleOpen);d.attr("value",mla.settings.toggleOpen);b.hide()}c.slideToggle("slow")},parentOpen:function(){var d,b,c;b=-1;c=mla.settings.uploadTitle;d=a('#mla-add-new-bulk-edit-div :input[name="post_parent"]').val()||-1;mla.setParent.open(d,b,c);a("#mla-set-parent-submit").on("click",function(e){e.preventDefault();mla.addNewBulkEdit.parentSave();return false})},parentSave:function(){var c=a("#mla-set-parent-response-div input:checked").closest("tr"),d,b;if(c.length){d=a(":radio",c).val()||"";b=a('#mla-add-new-bulk-edit-div :input[name="post_parent"]').clone(true).val(d);a('#mla-add-new-bulk-edit-div :input[name="post_parent"]').replaceWith(b)}mla.setParent.close();a("#mla-set-parent-submit").off("click")}};a(document).ready(function(){mla.addNewBulkEdit.init()})})(jQuery);
1
+ var jQuery,mla_add_new_bulk_edit_vars,mla={settings:{},utility:{getId:function(b){var c=jQuery(b).closest("tr").attr("id"),a=c.split("-");return a[a.length-1]},attachSearch:function(a){jQuery(a+" .categorydiv").each(function(){var d=jQuery(this).attr("id"),c,b;c=d.split("-");c.shift();b=c.join("-");jQuery.extend(jQuery.expr[":"],{matchTerms:function(g,f,e,h){return(g.textContent||g.innerText||"").toLowerCase().indexOf((e[3]||"").toLowerCase())>=0}});jQuery(a+" #"+b+"-searcher").addClass("wp-hidden-children");jQuery(a+" #"+b+"checklist li").show();jQuery(a+" #search-"+b).off();jQuery(a+" #search-"+b).keydown(function(e){if(13===e.keyCode){e.preventDefault();jQuery(a+" #search-"+b).val("");jQuery(a+" #"+b+"-searcher").addClass("wp-hidden-children");jQuery(a+" #"+b+"checklist li").show();return false}});jQuery(a+" #search-"+b).keypress(function(e){if(13===e.keyCode){e.preventDefault();jQuery(a+" #search-"+b).val("");jQuery(a+" #"+b+"-searcher").addClass("wp-hidden-children");jQuery(a+" #"+b+"checklist li").show();return}});jQuery(a+" #search-"+b).keyup(function(f){var h,g,e;if(13===f.keyCode){f.preventDefault();jQuery(a+" #"+b+"-search-toggle").focus();return}h=jQuery(a+" #search-"+b).val();g=jQuery(a+" #"+b+"checklist li");if(0<h.length){g.hide()}else{g.show()}e=jQuery(a+" #"+b+"checklist label:matchTerms('"+h+"')");e.closest("li").find("li").andSelf().show();e.parents(a+" #"+b+"checklist li").show()});jQuery(a+" #"+b+"-search-toggle").off();jQuery(a+" #"+b+"-search-toggle").click(function(){jQuery(a+" #"+b+"-adder ").addClass("wp-hidden-children");jQuery(a+" #"+b+"-searcher").toggleClass("wp-hidden-children");jQuery(a+" #"+b+"checklist li").show();if(false===jQuery(a+" #"+b+"-searcher").hasClass("wp-hidden-children")){jQuery(a+" #search-"+b).val("").removeClass("form-input-tip");jQuery(a+" #search-"+b).focus()}return false})})}},addNewBulkEdit:null,setParent:null};(function(a){mla.settings=typeof mla_add_new_bulk_edit_vars==="undefined"?{}:mla_add_new_bulk_edit_vars;mla_add_new_bulk_edit_vars=void 0;if(typeof mla.settings.areaOnTop==="undefined"){mla.settings.areaOnTop=false}mla.addNewBulkEdit={init:function(){var d,e,c,g=a(".upload-flash-bypass"),f=a("#wpbody .wrap").children("h1, h2"),b,h=a("#mla-add-new-bulk-edit-div").hide();if(typeof mla.addTerm!=="undefined"){mla.addTerm.init("#mla-add-new-bulk-edit-div")}mla.utility.attachSearch("#mla-add-new-bulk-edit-div");a("#bulk-edit-set-parent",h).on("click",function(){return mla.addNewBulkEdit.parentOpen()});d=a("#mla-blank-add-new-bulk-edit-div").detach();a("#file-form").after(d);e=a("#bulk-edit-toggle",h).detach();c=a("#bulk-edit-reset",h).detach();if(mla.settings.areaOnTop){e.appendTo(f);c.appendTo(f);b=h.detach();a("#media-upload-notice").before(b)}else{e.appendTo(g);c.appendTo(g)}e.siblings("a").on("click",function(){e.attr("title",mla.settings.toggleOpen);e.attr("value",mla.settings.toggleOpen);c.hide();h.hide()});e.on("click",function(){return mla.addNewBulkEdit.formToggle()});c.on("click",function(){return mla.addNewBulkEdit.doReset()});if(mla.settings.areaOpen){mla.addNewBulkEdit.formToggle()}a("textarea.mla_tags",h).each(function(){var i=a(this).attr("name").replace("]","").replace("tax_input[","");a(this).suggest(ajaxurl+"?action=ajax-tag-search&tax="+i,{delay:500,minchars:2,multiple:true,multipleSep:mla.settings.comma+" "})});uploader.bind("BeforeUpload",function(i,j){var k=a("#file-form").serialize();i.settings.multipart_params.mlaAddNewBulkEditFormString=k})},doReset:function(){var e=a("#mla-add-new-bulk-edit-div"),d=a("#mla-blank-add-new-bulk-edit-div"),b=a(".inline-edit-categories",d).html(),f=a(".inline-edit-tags",d).html(),c=a(".inline-edit-fields",d).html();a(".inline-edit-categories",e).html(b),a(".inline-edit-tags",e).html(f),a(".inline-edit-fields",e).html(c);if(typeof mla.addTerm!=="undefined"){mla.addTerm.init("#mla-add-new-bulk-edit-div")}mla.utility.attachSearch("#mla-add-new-bulk-edit-div");a("#bulk-edit-set-parent",e).on("click",function(){return mla.addNewBulkEdit.parentOpen()});return false},formToggle:function(){var d=a("#bulk-edit-toggle"),b=a("#bulk-edit-reset"),c=a("#mla-add-new-bulk-edit-div");if("none"===c.css("display")){d.attr("title",mla.settings.toggleClose);d.attr("value",mla.settings.toggleClose);b.show()}else{d.attr("title",mla.settings.toggleOpen);d.attr("value",mla.settings.toggleOpen);b.hide()}c.slideToggle("slow")},parentOpen:function(){var d,b,c;b=-1;c=mla.settings.uploadTitle;d=a('#mla-add-new-bulk-edit-div :input[name="post_parent"]').val()||-1;mla.setParent.open(d,b,c);a("#mla-set-parent-submit").on("click",function(e){e.preventDefault();mla.addNewBulkEdit.parentSave();return false})},parentSave:function(){var c=a("#mla-set-parent-response-div input:checked").closest("tr"),d,b;if(c.length){d=a(":radio",c).val()||"";b=a('#mla-add-new-bulk-edit-div :input[name="post_parent"]').clone(true).val(d);a('#mla-add-new-bulk-edit-div :input[name="post_parent"]').replaceWith(b)}mla.setParent.close();a("#mla-set-parent-submit").off("click")}};a(document).ready(function(){mla.addNewBulkEdit.init()})})(jQuery);
js/mla-add-term-scripts.js ADDED
@@ -0,0 +1,744 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* global ajaxurl, mla */
2
+
3
+ var jQuery;
4
+
5
+ /*
6
+ * This script requires the global "mla" object to be defined and include the following:
7
+ *
8
+ * properties:
9
+ * mla.settings.useDashicons
10
+ *
11
+ * components:
12
+ * mla.addTerm
13
+ * mla.mlaList
14
+ */
15
+
16
+ ( function( $ ) {
17
+ /**
18
+ * addTerm opens an area beneath a "checklist-style" taxonomy in the
19
+ * Media/Assistant Bulk Edit area and Media/Add New Bulk Edit area.
20
+ * It allows the user to add a term to the associated taxonomy.
21
+ */
22
+ mla.addTerm = {
23
+ /**
24
+ * Attach new term functions to each taxonomy in the appropriate context
25
+ *
26
+ * @param {string} contextId a CSS "id=" selector, i.e. starting with "#"
27
+ */
28
+ init: function( contextId ) {
29
+ /*
30
+ * contextId must be unique on the page, e.g., a <div> around the Bulk Edit or Quick Edit area.
31
+ * Each taxonomy's '.categorydiv' must appear just once within the context.
32
+ */
33
+ var context = $( contextId );
34
+
35
+ $( '.categorydiv', context ).each( function(){
36
+ var this_id = $(this).attr('id'), catAddBefore, catAddAfter, taxonomyParts, taxonomy;
37
+
38
+ taxonomyParts = this_id.split('-');
39
+ taxonomyParts.shift(); // taxonomy-
40
+ taxonomy = taxonomyParts.join('-');
41
+
42
+ // Add category button controls.
43
+ $( '#new' + taxonomy, context ).one( 'focus', function() {
44
+ $( this ).val( '' ).removeClass( 'form-input-tip' );
45
+ });
46
+
47
+ // On [enter] submit the taxonomy.
48
+ $( '#new' + taxonomy, context ).keypress( function(event){
49
+ if( 13 === event.keyCode ) {
50
+ event.preventDefault();
51
+ $( '#' + taxonomy + '-add-submit', context ).click();
52
+ }
53
+ });
54
+
55
+ // After submitting a new taxonomy, re-focus the input field.
56
+ $( '#' + taxonomy + '-add-submit', context ).click( function() {
57
+ $( '#new' + taxonomy, context ).focus();
58
+ });
59
+
60
+ /**
61
+ * Before adding a new taxonomy, disable submit button.
62
+ *
63
+ * @param {Object} s Taxonomy object which will be added.
64
+ *
65
+ * @returns {Object}
66
+ */
67
+ catAddBefore = function( s ) {
68
+ if ( !$( '#new' + taxonomy, context ).val() ) {
69
+ return false;
70
+ }
71
+
72
+ s.data += '&' + $( ':checked', '#' + taxonomy +'-checklist', context ).serialize();
73
+ $( '#' + taxonomy + '-add-submit', context ).prop( 'disabled', true );
74
+ return s;
75
+ };
76
+
77
+ /**
78
+ * Re-enable submit button after a taxonomy has been added.
79
+ *
80
+ * Re-enable submit button.
81
+ * If the taxonomy has a parent place the taxonomy underneath the parent.
82
+ *
83
+ * @param {Object} r Response.
84
+ * @param {Object} s Taxonomy data.
85
+ *
86
+ * @returns void
87
+ */
88
+ catAddAfter = function( r, s ) {
89
+ var sup;
90
+
91
+ $( '#' + taxonomy + '-add-submit', context ).prop( 'disabled', false );
92
+
93
+ // Update the "Parent Term" dropdown control(s)
94
+ if ( 'undefined' != s.parsed.responses[0] && (sup = s.parsed.responses[0].supplemental.newcat_parent) ) {
95
+ $( '.edit-fields-div' ).each( function(){
96
+ var drop = $( '#new' + taxonomy + '_parent', $(this) );
97
+
98
+ drop.before(sup);
99
+ drop.remove();
100
+ });
101
+ }
102
+ };
103
+
104
+ mla.mlaList.settings.context = context;
105
+ $( '#' + taxonomy + 'checklist', context ).mlaList({
106
+ alt: '',
107
+ context: context,
108
+ // response: taxonomy + '-ajax-response',
109
+ response: 'add-term-ajax-response',
110
+ addBefore: catAddBefore,
111
+ addAfter: catAddAfter
112
+ });
113
+
114
+ $( '#' + taxonomy + '-add-toggle', context ).off();
115
+
116
+ // Add new taxonomy button toggles input form visibility.
117
+ $( '#' + taxonomy + '-add-toggle', context ).click( function( e ) {
118
+ e.preventDefault();
119
+ $( '#' + taxonomy + '-adder', context ).toggleClass( 'wp-hidden-children' );
120
+ $( '#new' + taxonomy, context ).focus();
121
+ // Hide the "? Search" text box when displaying the "+ Add New ..." text box
122
+ $( '#' + taxonomy + '-searcher', context ).addClass( 'wp-hidden-children' );
123
+ return false;
124
+ });
125
+ }); // .categorydiv.each,
126
+ }
127
+ }; // mla.addTerm
128
+
129
+ /**
130
+ * mlaList adapts the WordPress wpList object found in wp-includes/js/wp-lists.js
131
+ * It handles the case where more than one instance of a taxonomy "metabox" occurs
132
+ * on a page, e.g., the Bulk and Quick edit areas on the Media/Assistant admin page.
133
+ */
134
+ mla.mlaList = {
135
+
136
+ /**
137
+ * @member {object}
138
+ */
139
+ settings: {
140
+
141
+ /**
142
+ * URL for Ajax requests.
143
+ *
144
+ * @member {string}
145
+ */
146
+ url: ajaxurl,
147
+
148
+ /**
149
+ * The HTTP method to use for Ajax requests.
150
+ *
151
+ * @member {string}
152
+ */
153
+ type: 'POST',
154
+
155
+ /**
156
+ * jQuery context of the taxonomy's HTML elements.
157
+ *
158
+ * @member {object}
159
+ */
160
+ context: null,
161
+
162
+ /**
163
+ * ID of the element the parsed Ajax response will be stored in.
164
+ *
165
+ * @member {string}
166
+ */
167
+ response: 'ajax-response',
168
+
169
+ /**
170
+ * The type of list.
171
+ *
172
+ * @member {string}
173
+ */
174
+ what: '',
175
+
176
+ /**
177
+ * CSS class name for alternate styling.
178
+ *
179
+ * @member {string}
180
+ */
181
+ alt: 'alternate',
182
+
183
+ /**
184
+ * Offset to start alternate styling from.
185
+ *
186
+ * @member {number}
187
+ */
188
+ altOffset: 0,
189
+
190
+ /**
191
+ * Color used in animation when adding an element.
192
+ *
193
+ * Can be 'none' to disable the animation.
194
+ *
195
+ * @member {string}
196
+ */
197
+ addColor: '#ffff33',
198
+
199
+ /**
200
+ * Callback that's run before a request is made.
201
+ *
202
+ * @callback mlaList~confirm
203
+ * @param {object} this
204
+ * @param {HTMLElement} list The list DOM element.
205
+ * @param {object} settings Settings for the current list.
206
+ * @param {string} action The type of action to perform: 'add', 'delete', or 'dim'.
207
+ * @param {string} backgroundColor Background color of the list's DOM element.
208
+ * @returns {boolean} Whether to proceed with the action or not.
209
+ */
210
+ confirm: null,
211
+
212
+ /**
213
+ * Callback that's run before an item gets added to the list.
214
+ *
215
+ * Allows to cancel the request.
216
+ *
217
+ * @callback mlaList~addBefore
218
+ * @param {object} settings Settings for the Ajax request.
219
+ * @returns {object|boolean} Settings for the Ajax request or false to abort.
220
+ */
221
+ addBefore: null,
222
+
223
+ /**
224
+ * Callback that's run after an item got added to the list.
225
+ *
226
+ * @callback mlaList~addAfter
227
+ * @param {XML} returnedResponse Raw response returned from the server.
228
+ * @param {object} settings Settings for the Ajax request.
229
+ * @param {jqXHR} settings.xml jQuery XMLHttpRequest object.
230
+ * @param {string} settings.status Status of the request: 'success', 'notmodified', 'nocontent', 'error',
231
+ * 'timeout', 'abort', or 'parsererror'.
232
+ * @param {object} settings.parsed Parsed response object.
233
+ */
234
+ addAfter: null
235
+ },
236
+
237
+ /**
238
+ * Finds a nonce.
239
+ *
240
+ * 1. Nonce in settings.
241
+ * 2. `_ajax_nonce` value in element's href attribute.
242
+ * 3. `_ajax_nonce` input field that is a descendant of element.
243
+ * 4. `_wpnonce` value in element's href attribute.
244
+ * 5. `_wpnonce` input field that is a descendant of element.
245
+ * 6. 0 if none can be found.
246
+ *
247
+ * @param {jQuery} element Element that triggered the request.
248
+ * @param {object} settings Settings for the Ajax request.
249
+ * @returns {string|number} Nonce
250
+ */
251
+ nonce: function( element, settings ) {
252
+ var url = wpAjax.unserialize( element.attr( 'href' ) ),
253
+ $element = $( '#' + settings.element, mla.mlaList.settings.context );
254
+
255
+ return settings.nonce || url._ajax_nonce || $element.find( 'input[name="_ajax_nonce"]' ).val() || url._wpnonce || $element.find( 'input[name="_wpnonce"]' ).val() || 0;
256
+ },
257
+
258
+ /**
259
+ * Extract list item data from a DOM element.
260
+ *
261
+ * Example 1: data-wp-lists="delete:the-comment-list:comment-{comment_ID}:66cc66:unspam=1"
262
+ * Example 2: data-wp-lists="dim:the-comment-list:comment-{comment_ID}:unapproved:e7e7d3:e7e7d3:new=approved"
263
+ *
264
+ * Returns an unassociated array with the following data:
265
+ * data[0] - Data identifier: 'list', 'add', 'delete', or 'dim'.
266
+ * data[1] - ID of the corresponding list. If data[0] is 'list', the type of list ('comment', 'category', etc).
267
+ * data[2] - ID of the parent element of all inputs necessary for the request.
268
+ * data[3] - Hex color to be used in this request. If data[0] is 'dim', dim class.
269
+ * data[4] - Additional arguments in query syntax that are added to the request. Example: 'post_id=1234'.
270
+ * If data[0] is 'dim', dim add color.
271
+ * data[5] - Only available if data[0] is 'dim', dim delete color.
272
+ * data[6] - Only available if data[0] is 'dim', additional arguments in query syntax that are added to the request.
273
+ *
274
+ * Result for Example 1:
275
+ * data[0] - delete
276
+ * data[1] - the-comment-list
277
+ * data[2] - comment-{comment_ID}
278
+ * data[3] - 66cc66
279
+ * data[4] - unspam=1
280
+ *
281
+ * @param {HTMLElement} element The DOM element.
282
+ * @param {string} type The type of data to look for: 'list', 'add', 'delete', or 'dim'.
283
+ * @returns {Array} Extracted list item data.
284
+ */
285
+ parseData: function( element, type ) {
286
+ var data = [], mlaListsData;
287
+
288
+ try {
289
+ mlaListsData = $( element ).data( 'wp-lists' ) || '';
290
+ mlaListsData = mlaListsData.match( new RegExp( type + ':[\\S]+' ) );
291
+
292
+ if ( mlaListsData ) {
293
+ data = mlaListsData[0].split( ':' );
294
+ }
295
+ } catch ( error ) {}
296
+
297
+ return data;
298
+ },
299
+
300
+ /**
301
+ * Calls a confirm callback to verify the action that is about to be performed.
302
+ *
303
+ * @param {HTMLElement} list The DOM element.
304
+ * @param {object} settings Settings for this list.
305
+ * @param {string} action The type of action to perform: 'add', 'delete', or 'dim'.
306
+ * @returns {object|boolean} Settings if confirmed, false if not.
307
+ */
308
+ pre: function( list, settings, action ) {
309
+ var $element, backgroundColor, confirmed;
310
+
311
+ settings = $.extend( {}, this.mlaList.settings, {
312
+ element: null,
313
+ nonce: 0,
314
+ target: list.get( 0 )
315
+ }, settings || {} );
316
+
317
+ if ( $.isFunction( settings.confirm ) ) {
318
+ $element = $( '#' + settings.element, mla.mlaList.settings.context );
319
+
320
+ if ( 'add' !== action ) {
321
+ backgroundColor = $element.css( 'backgroundColor' );
322
+ $element.css( 'backgroundColor', '#ff9966' );
323
+ }
324
+
325
+ confirmed = settings.confirm.call( this, list, settings, action, backgroundColor );
326
+
327
+ if ( 'add' !== action ) {
328
+ $element.css( 'backgroundColor', backgroundColor );
329
+ }
330
+
331
+ if ( ! confirmed ) {
332
+ return false;
333
+ }
334
+ }
335
+
336
+ return settings;
337
+ },
338
+
339
+ /**
340
+ * Adds an item to the list via AJAX.
341
+ *
342
+ * @param {HTMLElement} element The DOM element.
343
+ * @param {object} settings Settings for this list.
344
+ * @returns {boolean} Whether the item was added.
345
+ */
346
+ ajaxAdd: function( element, settings ) {
347
+ var list = this,
348
+ $element = $( element, mla.mlaList.settings.context ),
349
+ data = mla.mlaList.parseData( $element, 'add' ),
350
+ formValues, formData, parsedResponse, returnedResponse;
351
+
352
+ settings = settings || {};
353
+ settings = mla.mlaList.pre.call( list, $element, settings, 'add' );
354
+
355
+ settings.element = data[2] || $element.prop( 'id' ) || settings.element || null;
356
+ settings.addColor = data[3] ? '#' + data[3] : settings.addColor;
357
+
358
+ if ( ! settings ) {
359
+ return false;
360
+ }
361
+
362
+ if ( ! $element.is( '[id="' + settings.element + '-submit"]', mla.mlaList.settings.context ) ) {
363
+ return ! mla.mlaList.add.call( list, $element, settings );
364
+ }
365
+
366
+ if ( ! settings.element ) {
367
+ return true;
368
+ }
369
+
370
+ settings.action = 'add-' + settings.what;
371
+ settings.nonce = mla.mlaList.nonce( $element, settings );
372
+
373
+ if ( ! wpAjax.validateForm( mla.mlaList.settings.context.selector + ' #' + settings.element ) ) {
374
+ return false;
375
+ }
376
+
377
+ settings.data = $.param( $.extend( {
378
+ _ajax_nonce: settings.nonce,
379
+ action: settings.action
380
+ }, wpAjax.unserialize( data[4] || '' ) ) );
381
+
382
+ formValues = $( '#' + settings.element + ' :input', mla.mlaList.settings.context ).not( '[name="_ajax_nonce"], [name="_wpnonce"], [name="action"]' );
383
+ formData = $.isFunction( formValues.fieldSerialize ) ? formValues.fieldSerialize() : formValues.serialize();
384
+
385
+ if ( formData ) {
386
+ settings.data += '&' + formData;
387
+ }
388
+
389
+ if ( $.isFunction( settings.addBefore ) ) {
390
+ settings = settings.addBefore( settings );
391
+
392
+ if ( ! settings ) {
393
+ return true;
394
+ }
395
+ }
396
+
397
+ if ( ! settings.data.match( /_ajax_nonce=[a-f0-9]+/ ) ) {
398
+ return true;
399
+ }
400
+
401
+ settings.success = function( response ) {
402
+ var contextId = mla.mlaList.settings.context.selector.substring(1);
403
+
404
+ parsedResponse = wpAjax.parseAjaxResponse( response, contextId + ' #' + settings.response, settings.element );
405
+ returnedResponse = response;
406
+
407
+ if ( ! parsedResponse || parsedResponse.errors ) {
408
+ return false;
409
+ }
410
+
411
+ if ( true === parsedResponse ) {
412
+ return true;
413
+ }
414
+
415
+ // Add the new term, checked/selected, to the list
416
+ $.each( parsedResponse.responses, function() {
417
+ mla.mlaList.add.call( list, this.data, $.extend( {}, settings, { // this.firstChild.nodevalue
418
+ position: this.position || 0,
419
+ id: this.id || 0,
420
+ oldId: this.oldId || null
421
+ } ) );
422
+ } );
423
+
424
+ list.mlaList.recolor();
425
+ $( list ).trigger( 'mlaListAddEnd', [ settings, list.mlaList ] );
426
+ mla.mlaList.clear.call( list, '#' + settings.element );
427
+ };
428
+
429
+ // The addAfter function uses the supplemental data to update the "Parent Term" dropdown ontrol
430
+ settings.complete = function( jqXHR, status ) {
431
+ if ( $.isFunction( settings.addAfter ) ) {
432
+ settings.addAfter( returnedResponse, $.extend( {
433
+ xml: jqXHR,
434
+ status: status,
435
+ parsed: parsedResponse
436
+ }, settings ) );
437
+ }
438
+ };
439
+
440
+ $.ajax( settings );
441
+
442
+ return false;
443
+ },
444
+
445
+ /**
446
+ * Returns the background color of the passed element.
447
+ *
448
+ * @param {jQuery|string} element Element to check.
449
+ * @returns {string} Background color value in HEX. Default: '#ffffff'.
450
+ */
451
+ getColor: function( element ) {
452
+ return $( element ).css( 'backgroundColor' ) || '#ffffff';
453
+ },
454
+
455
+ /**
456
+ * Adds a new item to all other taxonomy checklists on the page.
457
+ *
458
+ * @param {HTMLElement} element A DOM element containing new item data.
459
+ * @param {object} $list jQuery object for the current list.
460
+ * @param {object} settings Settings for this list.
461
+ */
462
+ addToOtherLists: function( element, $list, settings ) {
463
+ $( '.edit-fields-div' ).each( function() {
464
+ var $thisDiv = $( this ),
465
+ thisId = $thisDiv.attr( 'id' ),
466
+ targetId = settings.context.selector.substring(1),
467
+ $checklist, $element, old, position, reference;
468
+
469
+ if ( targetId !== thisId ) {
470
+ $checklist = $( '.' + $list.attr('id'), $thisDiv );
471
+ $element = $( element );
472
+ old = false;
473
+
474
+ $( 'input', $element ).removeAttr( 'checked' )
475
+
476
+ if ( settings.oldId ) {
477
+ old = $( '#' + settings.what + '-' + settings.oldId, $checklist );
478
+ }
479
+
480
+ if ( settings.id && ( settings.id !== settings.oldId || ! old || ! old.length ) ) {
481
+ $( '#' + settings.what + '-' + settings.id, $checklist ).remove();
482
+ }
483
+
484
+ if ( old && old.length ) {
485
+ old.before( $element );
486
+ old.remove();
487
+
488
+ } else if ( isNaN( settings.position ) ) {
489
+ position = 'after';
490
+
491
+ if ( '-' === settings.position.substr( 0, 1 ) ) {
492
+ settings.position = settings.position.substr( 1 );
493
+ position = 'before';
494
+ }
495
+
496
+ reference = $checklist.find( '#' + settings.position );
497
+
498
+ if ( 1 === reference.length ) {
499
+ reference[position]( $element );
500
+ } else {
501
+ $checklist.append( $element );
502
+ }
503
+
504
+ } else if ( 'comment' !== settings.what || 0 === $( '#' + settings.element, $checklist ).length ) {
505
+ if ( settings.position < 0 ) {
506
+ $checklist.prepend( $element );
507
+ } else {
508
+ $checklist.append( $element );
509
+ }
510
+ }
511
+ }
512
+ });
513
+ },
514
+
515
+ /**
516
+ * Adds a new item to the enclosing list.
517
+ *
518
+ * @param {HTMLElement} element A DOM element containing item data.
519
+ * @param {object} settings Settings for this list.
520
+ * @returns {boolean} Whether the item was added.
521
+ */
522
+ add: function( element, settings ) {
523
+ var $list = $( this ),
524
+ $element = $( element ),
525
+ old = false,
526
+ position, reference;
527
+
528
+ if ( 'string' === typeof settings ) {
529
+ settings = { what: settings };
530
+ }
531
+
532
+ settings = $.extend( { position: 0, id: 0, oldId: null }, this.mlaList.settings, settings );
533
+
534
+ if ( ! $element.length || ! settings.what ) {
535
+ return false;
536
+ }
537
+
538
+ mla.mlaList.addToOtherLists( element, $list, settings );
539
+
540
+ if ( settings.oldId ) {
541
+ old = $( '#' + settings.what + '-' + settings.oldId, settings.context );
542
+ }
543
+
544
+ if ( settings.id && ( settings.id !== settings.oldId || ! old || ! old.length ) ) {
545
+ $( '#' + settings.what + '-' + settings.id, settings.context ).remove();
546
+ }
547
+
548
+ if ( old && old.length ) {
549
+ old.before( $element );
550
+ old.remove();
551
+
552
+ } else if ( isNaN( settings.position ) ) {
553
+ position = 'after';
554
+
555
+ if ( '-' === settings.position.substr( 0, 1 ) ) {
556
+ settings.position = settings.position.substr( 1 );
557
+ position = 'before';
558
+ }
559
+
560
+ reference = $list.find( '#' + settings.position );
561
+
562
+ if ( 1 === reference.length ) {
563
+ reference[position]( $element );
564
+ } else {
565
+ $list.append( $element );
566
+ }
567
+
568
+ } else if ( 'comment' !== settings.what || 0 === $( '#' + settings.element, mla.mlaList.settings.context ).length ) {
569
+ if ( settings.position < 0 ) {
570
+ $list.prepend( $element );
571
+ } else {
572
+ $list.append( $element );
573
+ }
574
+ }
575
+
576
+ if ( settings.alt ) {
577
+ $element.toggleClass( settings.alt, ( $list.children( ':visible' ).index( $element[0] ) + settings.altOffset ) % 2 );
578
+ }
579
+
580
+ if ( 'none' !== settings.addColor ) {
581
+ $element.css( 'backgroundColor', settings.addColor ).animate( { backgroundColor: mla.mlaList.getColor( $element ) }, {
582
+ complete: function() {
583
+ $( this ).css( 'backgroundColor', '' );
584
+ }
585
+ } );
586
+ }
587
+
588
+ // Add event handlers.
589
+ $list.each( function( index, list ) {
590
+ list.mlaList.process( $element );
591
+ } );
592
+
593
+ return $element;
594
+ },
595
+
596
+ /**
597
+ * Clears all input fields within the element passed.
598
+ *
599
+ * @param {string} elementId ID of the element to check, including leading #.
600
+ */
601
+ clear: function( elementId ) {
602
+ var list = this,
603
+ $element = $( elementId ),
604
+ type, tagName;
605
+
606
+ // Bail if we're within the list.
607
+ if ( list.mlaList && $element.parents( '#' + list.id ).length ) {
608
+ return;
609
+ }
610
+
611
+ // Check each input field.
612
+ $element.find( ':input' ).each( function( index, input ) {
613
+
614
+ // Bail if the form was marked to not to be cleared.
615
+ if ( $( input ).parents( '.form-no-clear' ).length ) {
616
+ return;
617
+ }
618
+
619
+ type = input.type.toLowerCase();
620
+ tagName = input.tagName.toLowerCase();
621
+
622
+ if ( 'text' === type || 'password' === type || 'textarea' === tagName ) {
623
+ input.value = '';
624
+
625
+ } else if ( 'checkbox' === type || 'radio' === type ) {
626
+ input.checked = false;
627
+
628
+ } else if ( 'select' === tagName ) {
629
+ input.selectedIndex = null;
630
+ }
631
+ } );
632
+ },
633
+
634
+ /**
635
+ * Registers event handlers to add, delete, and dim items.
636
+ *
637
+ * @param {string} elementId
638
+ */
639
+ process: function( elementId ) {
640
+ var list = this,
641
+ $element = $( elementId || document );
642
+
643
+ $element.on( 'submit', 'form[data-wp-lists^="add:' + list.id + ':"]', function() {
644
+ return list.mlaList.add( this );
645
+ } );
646
+
647
+ $element.on( 'click', 'a[data-wp-lists^="add:' + list.id + ':"], input[data-wp-lists^="add:' + list.id + ':"]', function() {
648
+ return list.mlaList.add( this );
649
+ } );
650
+ },
651
+
652
+ /**
653
+ * Updates list item background colors.
654
+ */
655
+ recolor: function() {
656
+ var list = this,
657
+ evenOdd = [':even', ':odd'],
658
+ items;
659
+
660
+ // Bail if there is no alternate class name specified.
661
+ if ( ! list.mlaList.settings.alt ) {
662
+ return;
663
+ }
664
+
665
+ items = $( '.list-item:visible', list );
666
+
667
+ if ( ! items.length ) {
668
+ items = $( list ).children( ':visible' );
669
+ }
670
+
671
+ if ( list.mlaList.settings.altOffset % 2 ) {
672
+ evenOdd.reverse();
673
+ }
674
+
675
+ items.filter( evenOdd[0] ).addClass( list.mlaList.settings.alt ).end();
676
+ items.filter( evenOdd[1] ).removeClass( list.mlaList.settings.alt );
677
+ },
678
+
679
+ /**
680
+ * Sets up `process()` and `recolor()` functions.
681
+ */
682
+ init: function() {
683
+ var $list = this;
684
+
685
+ $list.mlaList.process = function( element ) {
686
+ $list.each( function() {
687
+ this.mlaList.process( element );
688
+ } );
689
+ };
690
+
691
+ $list.mlaList.recolor = function() {
692
+ $list.each( function() {
693
+ this.mlaList.recolor();
694
+ } );
695
+ };
696
+ }
697
+ };
698
+
699
+ var functions = {
700
+ add: 'ajaxAdd',
701
+ process: 'process',
702
+ recolor: 'recolor'
703
+ };
704
+
705
+ /**
706
+ * Initializes mlaList object.
707
+ *
708
+ * @param {Object} settings
709
+ * @param {string} settings.url URL for ajax calls. Default: ajaxurl.
710
+ * @param {string} settings.type The HTTP method to use for Ajax requests. Default: 'POST'.
711
+ * @param {string} settings.response ID of the element the parsed ajax response will be stored in.
712
+ * Default: 'ajax-response'.
713
+ *
714
+ * @param {string} settings.what Default: ''.
715
+ * @param {string} settings.alt CSS class name for alternate styling. Default: 'alternate'.
716
+ * @param {number} settings.altOffset Offset to start alternate styling from. Default: 0.
717
+ * @param {string} settings.addColor Hex code or 'none' to disable animation. Default: '#ffff33'.
718
+ *
719
+ * @param {mlaList~confirm} settings.confirm Callback that's run before a request is made. Default: null.
720
+ * @param {mlaList~addBefore} settings.addBefore Callback that's run before an item gets added to the list.
721
+ * Default: null.
722
+ * @param {mlaList~addAfter} settings.addAfter Callback that's run after an item got added to the list.
723
+ * Default: null.
724
+ * @returns {$.fn} mlaList API function.
725
+ */
726
+ $.fn.mlaList = function( settings ) {
727
+ this.each( function( index, list ) {
728
+ list.mlaList = {
729
+ settings: $.extend( {}, mla.mlaList.settings, { what: mla.mlaList.parseData( list, 'list' )[1] || '' }, settings )
730
+ };
731
+
732
+ $.each( functions, function( func, callback ) {
733
+ list.mlaList[func] = function( element, setting ) {
734
+ return mla.mlaList[callback].call( list, element, setting );
735
+ };
736
+ } );
737
+ } );
738
+
739
+ mla.mlaList.init.call( this );
740
+ this.mlaList.process( settings.context );
741
+
742
+ return this;
743
+ };
744
+ })( jQuery );
js/mla-add-term-scripts.min.js ADDED
@@ -0,0 +1 @@
 
1
+ var jQuery;(function(a){mla.addTerm={init:function(c){var d=a(c);a(".categorydiv",d).each(function(){var h=a(this).attr("id"),g,i,f,e;f=h.split("-");f.shift();e=f.join("-");a("#new"+e,d).one("focus",function(){a(this).val("").removeClass("form-input-tip")});a("#new"+e,d).keypress(function(j){if(13===j.keyCode){j.preventDefault();a("#"+e+"-add-submit",d).click()}});a("#"+e+"-add-submit",d).click(function(){a("#new"+e,d).focus()});g=function(j){if(!a("#new"+e,d).val()){return false}j.data+="&"+a(":checked","#"+e+"-checklist",d).serialize();a("#"+e+"-add-submit",d).prop("disabled",true);return j};i=function(l,k){var j;a("#"+e+"-add-submit",d).prop("disabled",false);if("undefined"!=k.parsed.responses[0]&&(j=k.parsed.responses[0].supplemental.newcat_parent)){a(".edit-fields-div").each(function(){var m=a("#new"+e+"_parent",a(this));m.before(j);m.remove()})}};mla.mlaList.settings.context=d;a("#"+e+"checklist",d).mlaList({alt:"",context:d,response:"add-term-ajax-response",addBefore:g,addAfter:i});a("#"+e+"-add-toggle",d).off();a("#"+e+"-add-toggle",d).click(function(j){j.preventDefault();a("#"+e+"-adder",d).toggleClass("wp-hidden-children");a("#new"+e,d).focus();a("#"+e+"-searcher",d).addClass("wp-hidden-children");return false})})}};mla.mlaList={settings:{url:ajaxurl,type:"POST",context:null,response:"ajax-response",what:"",alt:"alternate",altOffset:0,addColor:"#ffff33",delColor:"#faafaa",dimAddColor:"#ffff33",dimDelColor:"#ff3333",confirm:null,addBefore:null,addAfter:null,dimBefore:null,dimAfter:null},nonce:function(e,f){var d=wpAjax.unserialize(e.attr("href")),c=a("#"+f.element,mla.mlaList.settings.context);return f.nonce||d._ajax_nonce||c.find('input[name="_ajax_nonce"]').val()||d._wpnonce||c.find('input[name="_wpnonce"]').val()||0},parseData:function(d,e){var g=[],f;try{f=a(d).data("wp-lists")||"";f=f.match(new RegExp(e+":[\\S]+"));if(f){g=f[0].split(":")}}catch(c){}return g},pre:function(g,e,f){var c,d,h;e=a.extend({},this.mlaList.settings,{element:null,nonce:0,target:g.get(0)},e||{});if(a.isFunction(e.confirm)){c=a("#"+e.element,mla.mlaList.settings.context);if("add"!==f){d=c.css("backgroundColor");c.css("backgroundColor","#ff9966")}h=e.confirm.call(this,g,e,f,d);if("add"!==f){c.css("backgroundColor",d)}if(!h){return false}}return e},ajaxAdd:function(g,e){var j=this,k=a(g,mla.mlaList.settings.context),f=mla.mlaList.parseData(k,"add"),i,c,h,d;e=e||{};e=mla.mlaList.pre.call(j,k,e,"add");e.element=f[2]||k.prop("id")||e.element||null;e.addColor=f[3]?"#"+f[3]:e.addColor;if(!e){return false}if(!k.is('[id="'+e.element+'-submit"]',mla.mlaList.settings.context)){return !mla.mlaList.add.call(j,k,e)}if(!e.element){return true}e.action="add-"+e.what;e.nonce=mla.mlaList.nonce(k,e);if(!wpAjax.validateForm(mla.mlaList.settings.context.selector+" #"+e.element)){return false}e.data=a.param(a.extend({_ajax_nonce:e.nonce,action:e.action},wpAjax.unserialize(f[4]||"")));i=a("#"+e.element+" :input",mla.mlaList.settings.context).not('[name="_ajax_nonce"], [name="_wpnonce"], [name="action"]');c=a.isFunction(i.fieldSerialize)?i.fieldSerialize():i.serialize();if(c){e.data+="&"+c}if(a.isFunction(e.addBefore)){e=e.addBefore(e);if(!e){return true}}if(!e.data.match(/_ajax_nonce=[a-f0-9]+/)){return true}e.success=function(m){var l=mla.mlaList.settings.context.selector.substring(1);h=wpAjax.parseAjaxResponse(m,l+" #"+e.response,e.element);d=m;if(!h||h.errors){return false}if(true===h){return true}a.each(h.responses,function(){mla.mlaList.add.call(j,this.data,a.extend({},e,{position:this.position||0,id:this.id||0,oldId:this.oldId||null}))});j.mlaList.recolor();a(j).trigger("mlaListAddEnd",[e,j.mlaList]);mla.mlaList.clear.call(j,"#"+e.element)};e.complete=function(m,l){if(a.isFunction(e.addAfter)){e.addAfter(d,a.extend({xml:m,status:l,parsed:h},e))}};a.ajax(e);return false},ajaxDel:function(e,f){var i=this,c=a(e),h=mla.mlaList.parseData(c,"delete"),d,g,j;f=f||{};f=mla.mlaList.pre.call(i,c,f,"delete");f.element=h[2]||f.element||null;f.delColor=h[3]?"#"+h[3]:f.delColor;if(!f||!f.element){return false}f.action="delete-"+f.what;f.nonce=mla.mlaList.nonce(c,f);f.data=a.extend({_ajax_nonce:f.nonce,action:f.action,id:f.element.split("-").pop()},wpAjax.unserialize(h[4]||""));if(a.isFunction(f.delBefore)){f=f.delBefore(f,i);if(!f){return true}}if(!f.data._ajax_nonce){return true}d=a("#"+f.element,mla.mlaList.settings.context);if("none"!==f.delColor){d.css("backgroundColor",f.delColor).fadeOut(350,function(){i.mlaList.recolor();a(i).trigger("mlaListDelEnd",[f,i.mlaList])})}else{i.mlaList.recolor();a(i).trigger("mlaListDelEnd",[f,i.mlaList])}f.success=function(l){var k=mla.mlaList.settings.context.selector.substring(1);g=wpAjax.parseAjaxResponse(l,k+" #"+f.response,f.element);j=l;if(!g||g.errors){d.stop().stop().css("backgroundColor","#faa").show().queue(function(){i.mlaList.recolor();a(this).dequeue()});return false}};f.complete=function(l,k){if(a.isFunction(f.delAfter)){d.queue(function(){f.delAfter(j,a.extend({xml:l,status:k,parsed:g},f))}).dequeue()}};a.ajax(f);return false},ajaxDim:function(i,e){var k=this,o=a(i),h=mla.mlaList.parseData(o,"dim"),l,c,g,m,j,d,f,n;if("none"===o.parent().css("display")){return false}e=e||{};e=mla.mlaList.pre.call(k,o,e,"dim");e.element=h[2]||e.element||null;e.dimClass=h[3]||e.dimClass||null;e.dimAddColor=h[4]?"#"+h[4]:e.dimAddColor;e.dimDelColor=h[5]?"#"+h[5]:e.dimDelColor;if(!e||!e.element||!e.dimClass){return true}e.action="dim-"+e.what;e.nonce=mla.mlaList.nonce(o,e);e.data=a.extend({_ajax_nonce:e.nonce,action:e.action,id:e.element.split("-").pop(),dimClass:e.dimClass},wpAjax.unserialize(h[6]||""));if(a.isFunction(e.dimBefore)){e=e.dimBefore(e);if(!e){return true}}l=a("#"+e.element,mla.mlaList.settings.context);c=l.toggleClass(e.dimClass).is("."+e.dimClass);g=mla.mlaList.getColor(l);m=c?e.dimAddColor:e.dimDelColor;l.toggleClass(e.dimClass);if("none"!==m){l.animate({backgroundColor:m},"fast").queue(function(){l.toggleClass(e.dimClass);a(this).dequeue()}).animate({backgroundColor:g},{complete:function(){a(this).css("backgroundColor","");a(k).trigger("mlaListDimEnd",[e,k.mlaList])}})}else{a(k).trigger("mlaListDimEnd",[e,k.mlaList])}if(!e.data._ajax_nonce){return true}e.success=function(q){var p=mla.mlaList.settings.context.selector.substring(1);j=wpAjax.parseAjaxResponse(q,p+" #"+e.response,e.element);d=q;if(true===j){return true}if(!j||j.errors){l.stop().stop().css("backgroundColor","#ff3333")[c?"removeClass":"addClass"](e.dimClass).show().queue(function(){k.mlaList.recolor();a(this).dequeue()});return false}if("undefined"!==typeof j.responses[0].supplemental.comment_link){f=o.find(".submitted-on");n=f.find("a");if(""!==j.responses[0].supplemental.comment_link){f.html(a("<a></a>").text(f.text()).prop("href",j.responses[0].supplemental.comment_link))}else{if(n.length){f.text(n.text())}}}};e.complete=function(q,p){if(a.isFunction(e.dimAfter)){l.queue(function(){e.dimAfter(d,a.extend({xml:q,status:p,parsed:j},e))}).dequeue()}};a.ajax(e);return false},getColor:function(c){return a(c).css("backgroundColor")||"#ffffff"},addToOtherLists:function(d,c,e){a(".edit-fields-div").each(function(){var m=a(this),i=m.attr("id"),l=e.context.selector.substring(1),h,k,j,g,f;if(l!==i){h=a("."+c.attr("id"),m);k=a(d);j=false;a("input",k).removeAttr("checked");if(e.oldId){j=a("#"+e.what+"-"+e.oldId,h)}if(e.id&&(e.id!==e.oldId||!j||!j.length)){a("#"+e.what+"-"+e.id,h).remove()}if(j&&j.length){j.before(k);j.remove()}else{if(isNaN(e.position)){g="after";if("-"===e.position.substr(0,1)){e.position=e.position.substr(1);g="before"}f=h.find("#"+e.position);if(1===f.length){f[g](k)}else{h.append(k)}}else{if("comment"!==e.what||0===a("#"+e.element,h).length){if(e.position<0){h.prepend(k)}else{h.append(k)}}}}}})},add:function(h,i){var g=a(this),f=a(h),e=false,d,c;if("string"===typeof i){i={what:i}}i=a.extend({position:0,id:0,oldId:null},this.mlaList.settings,i);if(!f.length||!i.what){return false}mla.mlaList.addToOtherLists(h,g,i);if(i.oldId){e=a("#"+i.what+"-"+i.oldId,i.context)}if(i.id&&(i.id!==i.oldId||!e||!e.length)){a("#"+i.what+"-"+i.id,i.context).remove()}if(e&&e.length){e.before(f);e.remove()}else{if(isNaN(i.position)){d="after";if("-"===i.position.substr(0,1)){i.position=i.position.substr(1);d="before"}c=g.find("#"+i.position);if(1===c.length){c[d](f)}else{g.append(f)}}else{if("comment"!==i.what||0===a("#"+i.element,mla.mlaList.settings.context).length){if(i.position<0){g.prepend(f)}else{g.append(f)}}}}if(i.alt){f.toggleClass(i.alt,(g.children(":visible").index(f[0])+i.altOffset)%2)}if("none"!==i.addColor){f.css("backgroundColor",i.addColor).animate({backgroundColor:mla.mlaList.getColor(f)},{complete:function(){a(this).css("backgroundColor","")}})}g.each(function(j,k){k.mlaList.process(f)});return f},clear:function(d){var g=this,c=a(d),f,e;if(g.mlaList&&c.parents("#"+g.id).length){return}c.find(":input").each(function(i,h){if(a(h).parents(".form-no-clear").length){return}f=h.type.toLowerCase();e=h.tagName.toLowerCase();if("text"===f||"password"===f||"textarea"===e){h.value=""}else{if("checkbox"===f||"radio"===f){h.checked=false}else{if("select"===e){h.selectedIndex=null}}}})},process:function(d){var e=this,c=a(d||document);c.on("submit",'form[data-wp-lists^="add:'+e.id+':"]',function(){return e.mlaList.add(this)});c.on("click",'a[data-wp-lists^="add:'+e.id+':"], input[data-wp-lists^="add:'+e.id+':"]',function(){return e.mlaList.add(this)})},recolor:function(){var d=this,e=[":even",":odd"],c;if(!d.mlaList.settings.alt){return}c=a(".list-item:visible",d);if(!c.length){c=a(d).children(":visible")}if(d.mlaList.settings.altOffset%2){e.reverse()}c.filter(e[0]).addClass(d.mlaList.settings.alt).end();c.filter(e[1]).removeClass(d.mlaList.settings.alt)},init:function(){var c=this;c.mlaList.process=function(d){c.each(function(){this.mlaList.process(d)})};c.mlaList.recolor=function(){c.each(function(){this.mlaList.recolor()})}}};var b={add:"ajaxAdd",del:"ajaxDel",dim:"ajaxDim",process:"process",recolor:"recolor"};a.fn.mlaList=function(c){this.each(function(d,e){e.mlaList={settings:a.extend({},mla.mlaList.settings,{what:mla.mlaList.parseData(e,"list")[1]||""},c)};a.each(b,function(f,g){e.mlaList[f]=function(h,i){return mla.mlaList[g].call(e,h,i)}})});mla.mlaList.init.call(this);this.mlaList.process(c.context);return this}})(jQuery);
js/mla-edit-media-scripts.js CHANGED
@@ -2,6 +2,8 @@ var jQuery,
2
  mla_edit_media_vars,
3
  mla = {
4
  // Properties
 
 
5
  settings: {},
6
 
7
  // Utility functions
@@ -14,9 +16,7 @@ var jQuery,
14
  };
15
 
16
  ( function( $ ) {
17
- /**
18
- * Localized settings and strings
19
- */
20
  mla.settings = typeof mla_edit_media_vars === 'undefined' ? {} : mla_edit_media_vars;
21
  mla_edit_media_vars = void 0; // delete won't work on Globals
22
 
@@ -33,14 +33,11 @@ var jQuery,
33
  });
34
 
35
  $('.categorydiv').each( function(){
36
- var this_id = $(this).attr('id'), taxonomyParts, taxonomy, settingName;
37
 
38
  taxonomyParts = this_id.split('-');
39
  taxonomyParts.shift(); // taxonomy-
40
  taxonomy = taxonomyParts.join('-');
41
- settingName = taxonomy + '_tab';
42
- if ( taxonomy == 'category' )
43
- settingName = 'cats';
44
 
45
  $.extend( $.expr[":"], {
46
  "matchTerms": function( elem, i, match, array ) {
@@ -107,18 +104,14 @@ var jQuery,
107
  return false;
108
  });
109
 
110
- /*
111
- * Supplement the click logic in wp-admin/js/post.js
112
- */
113
  $( '#' + taxonomy + '-add-toggle' ).click( function() {
114
  $( '#' + taxonomy + '-searcher' ).addClass( 'wp-hidden-children' );
115
  return false;
116
  });
117
  }); // .categorydiv.each,
118
 
119
- /*
120
- * Save Post box (#submitdiv), for Uploaded on and Last modified dates
121
- */
122
  if ( $('#submitdiv').length ) {
123
  mla.mlaEditAttachment.uploadtimestamp = $('#upload-timestamp').html();
124
  mla.mlaEditAttachment.$uploaddiv = $('#timestampdiv');
@@ -180,9 +173,8 @@ var jQuery,
180
  postId = $( '#post_ID' ).val() || '';
181
  postTitle = $( '#title' ).val() || '';
182
  mla.setParent.open( parentId, postId, postTitle );
183
- /*
184
- * Grab the "Update" button
185
- */
186
  $( '#mla-set-parent-submit' ).on( 'click', function( event ){
187
  event.preventDefault();
188
  mla.mlaEditAttachment.setParentSave();
@@ -207,7 +199,7 @@ var jQuery,
207
  $( '#mla-set-parent-submit' ).off( 'click' );
208
  },
209
 
210
- /**
211
  * Make sure all Uploaded on or Last Modified labels represent the current settings.
212
  *
213
  * @returns {boolean} False when an invalid timestamp has been selected, otherwise True.
2
  mla_edit_media_vars,
3
  mla = {
4
  // Properties
5
+ // mla.settings.uploadLabel
6
+ // mla.settings.modifyLabel
7
  settings: {},
8
 
9
  // Utility functions
16
  };
17
 
18
  ( function( $ ) {
19
+ // Localized settings and strings
 
 
20
  mla.settings = typeof mla_edit_media_vars === 'undefined' ? {} : mla_edit_media_vars;
21
  mla_edit_media_vars = void 0; // delete won't work on Globals
22
 
33
  });
34
 
35
  $('.categorydiv').each( function(){
36
+ var this_id = $(this).attr('id'), taxonomyParts, taxonomy;
37
 
38
  taxonomyParts = this_id.split('-');
39
  taxonomyParts.shift(); // taxonomy-
40
  taxonomy = taxonomyParts.join('-');
 
 
 
41
 
42
  $.extend( $.expr[":"], {
43
  "matchTerms": function( elem, i, match, array ) {
104
  return false;
105
  });
106
 
107
+ // Supplement the click logic in wp-admin/js/post.js
 
 
108
  $( '#' + taxonomy + '-add-toggle' ).click( function() {
109
  $( '#' + taxonomy + '-searcher' ).addClass( 'wp-hidden-children' );
110
  return false;
111
  });
112
  }); // .categorydiv.each,
113
 
114
+ // Save Post box (#submitdiv), for Uploaded on and Last modified dates
 
 
115
  if ( $('#submitdiv').length ) {
116
  mla.mlaEditAttachment.uploadtimestamp = $('#upload-timestamp').html();
117
  mla.mlaEditAttachment.$uploaddiv = $('#timestampdiv');
173
  postId = $( '#post_ID' ).val() || '';
174
  postTitle = $( '#title' ).val() || '';
175
  mla.setParent.open( parentId, postId, postTitle );
176
+
177
+ // Grab the "Update" button
 
178
  $( '#mla-set-parent-submit' ).on( 'click', function( event ){
179
  event.preventDefault();
180
  mla.mlaEditAttachment.setParentSave();
199
  $( '#mla-set-parent-submit' ).off( 'click' );
200
  },
201
 
202
+ /*
203
  * Make sure all Uploaded on or Last Modified labels represent the current settings.
204
  *
205
  * @returns {boolean} False when an invalid timestamp has been selected, otherwise True.
js/mla-edit-media-scripts.min.js CHANGED
@@ -1 +1 @@
1
- var jQuery,mla_edit_media_vars,mla={settings:{},utility:{},setParent:null,mlaEditAttachment:null};(function(a){mla.settings=typeof mla_edit_media_vars==="undefined"?{}:mla_edit_media_vars;mla_edit_media_vars=void 0;mla.mlaEditAttachment={$uploaddiv:null,uploadtimestamp:"",$modifydiv:null,modifytimestamp:"",init:function(){a("#mla_set_parent").on("click",function(){return mla.mlaEditAttachment.setParentOpen()});a(".categorydiv").each(function(){var e=a(this).attr("id"),d,b,c;d=e.split("-");d.shift();b=d.join("-");c=b+"_tab";if(b=="category"){c="cats"}a.extend(a.expr[":"],{matchTerms:function(h,g,f,j){return(h.textContent||h.innerText||"").toLowerCase().indexOf((f[3]||"").toLowerCase())>=0}});a("#search-"+b).keypress(function(f){if(13===f.keyCode){f.preventDefault();a("#search-"+b).val("");a("#"+b+"-searcher").addClass("wp-hidden-children");a("#"+b+"checklist li").show();a("#"+b+"checklist-pop li").show();return}});a("#search-"+b).keyup(function(h){var j,i,k,g,f;if(13===h.keyCode){h.preventDefault();a("#"+b+"-search-toggle").focus();return}j=a("#search-"+b).val();i=a("#"+b+"checklist li");k=a("#"+b+"checklist-pop li");if(0<j.length){i.hide();k.hide()}else{i.show();k.show()}g=a("#"+b+"checklist label:matchTerms('"+j+"')");g.closest("li").find("li").andSelf().show();g.parents("#"+b+"checklist li").show();f=a("#"+b+"checklist-pop label:matchTerms('"+j+"')");f.closest("li").find("li").andSelf().show();f.parents("#"+b+"checklist li").show()});a("#"+b+"-search-toggle").click(function(){a("#"+b+"-adder ").addClass("wp-hidden-children");a("#"+b+"-searcher").toggleClass("wp-hidden-children");a('a[href="#'+b+'-all"]',"#"+b+"-tabs").click();a("#"+b+"checklist li").show();a("#"+b+"checklist-pop li").show();if(false===a("#"+b+"-searcher").hasClass("wp-hidden-children")){a("#search-"+b).val("").removeClass("form-input-tip");a("#search-"+b).focus()}return false});a("#"+b+"-add-toggle").click(function(){a("#"+b+"-searcher").addClass("wp-hidden-children");return false})});if(a("#submitdiv").length){mla.mlaEditAttachment.uploadtimestamp=a("#upload-timestamp").html();mla.mlaEditAttachment.$uploaddiv=a("#timestampdiv");mla.mlaEditAttachment.$uploaddiv.siblings("a.edit-timestamp").click(function(b){if(mla.mlaEditAttachment.$uploaddiv.is(":hidden")){mla.mlaEditAttachment.$uploaddiv.slideDown("fast",function(){a("input, select",mla.mlaEditAttachment.$uploaddiv.find(".timestamp-wrap")).first().focus()});a(this).hide()}b.preventDefault()});mla.mlaEditAttachment.$uploaddiv.find(".cancel-timestamp").click(function(b){mla.mlaEditAttachment.$uploaddiv.slideUp("fast").siblings("a.edit-timestamp").show().focus();a("#mm",mla.mlaEditAttachment.$uploaddiv).val(a("#hidden_mm",mla.mlaEditAttachment.$uploaddiv).val());a("#jj",mla.mlaEditAttachment.$uploaddiv).val(a("#hidden_jj",mla.mlaEditAttachment.$uploaddiv).val());a("#aa",mla.mlaEditAttachment.$uploaddiv).val(a("#hidden_aa",mla.mlaEditAttachment.$uploaddiv).val());a("#hh",mla.mlaEditAttachment.$uploaddiv).val(a("#hidden_hh",mla.mlaEditAttachment.$uploaddiv).val());a("#mn",mla.mlaEditAttachment.$uploaddiv).val(a("#hidden_mn",mla.mlaEditAttachment.$uploaddiv).val());mla.mlaEditAttachment.updateText(mla.mlaEditAttachment.$uploaddiv,mla.mlaEditAttachment.uploadtimestamp,"#upload-timestamp");b.preventDefault()});mla.mlaEditAttachment.$uploaddiv.find(".save-timestamp").click(function(b){if(mla.mlaEditAttachment.updateText(mla.mlaEditAttachment.$uploaddiv,mla.mlaEditAttachment.uploadtimestamp,"#upload-timestamp")){mla.mlaEditAttachment.$uploaddiv.slideUp("fast");mla.mlaEditAttachment.$uploaddiv.siblings("a.edit-timestamp").show().focus()}b.preventDefault()});a("#post").on("submit",function(b){if(!mla.mlaEditAttachment.updateText(mla.mlaEditAttachment.$uploaddiv,mla.mlaEditAttachment.uploadtimestamp,"#upload-timestamp")){b.preventDefault();mla.mlaEditAttachment.$uploaddiv.show();if(wp.autosave){wp.autosave.enableButtons()}a("#publishing-action .spinner").removeClass("is-active")}})}},setParentOpen:function(){var d,b,c;d=a("#mla_post_parent").val()||"";b=a("#post_ID").val()||"";c=a("#title").val()||"";mla.setParent.open(d,b,c);a("#mla-set-parent-submit").on("click",function(e){e.preventDefault();mla.mlaEditAttachment.setParentSave();return false})},setParentSave:function(){var d=a("#mla-set-parent-response-div input:checked").closest("tr"),f,c,b,e;if(d.length){f=a(":radio",d).val()||"";c=a("label",d).html()||"";b=a("#mla_post_parent").clone(true).val(f);e=a("#mla_parent_info").clone(true).val(c);a("#mla_post_parent").replaceWith(b);a("#mla_parent_info").replaceWith(e);mla.setParent.close()}a("#mla-set-parent-submit").off("click")},updateText:function(k,c,h){if(!k.length){return true}var j,l,d,b=a("#aa",k).val(),g=a("#mm",k).val(),i=a("#jj",k).val(),f=a("#hh",k).val(),e=a("#mn",k).val();j=new Date(b,g-1,i,f,e);l=new Date(a("#hidden_aa",k).val(),a("#hidden_mm",k).val()-1,a("#hidden_jj",k).val(),a("#hidden_hh",k).val(),a("#hidden_mn",k).val());d=new Date(a("#cur_aa",k).val(),a("#cur_mm",k).val()-1,a("#cur_jj",k).val(),a("#cur_hh",k).val(),a("#cur_mn",k).val());if(j.getFullYear()!=b||(1+j.getMonth())!=g||j.getDate()!=i||j.getMinutes()!=e){k.find(".timestamp-wrap").addClass("form-invalid");return false}else{k.find(".timestamp-wrap").removeClass("form-invalid")}if(l.toUTCString()==j.toUTCString()){a(h).html(c)}else{label="#upload-timestamp"==h?mla.settings.uploadLabel:mla.settings.modifyLabel;a(h).html(label+"<b>"+postL10n.dateFormat.replace("%1$s",a('option[value="'+g+'"]',"#mm").attr("data-text")).replace("%2$s",parseInt(i,10)).replace("%3$s",b).replace("%4$s",("00"+f).slice(-2)).replace("%5$s",("00"+e).slice(-2))+"</b> ")}return true}};a(document).ready(function(){mla.mlaEditAttachment.init()})})(jQuery);
1
+ var jQuery,mla_edit_media_vars,mla={settings:{},utility:{},setParent:null,mlaEditAttachment:null};(function(a){mla.settings=typeof mla_edit_media_vars==="undefined"?{}:mla_edit_media_vars;mla_edit_media_vars=void 0;mla.mlaEditAttachment={$uploaddiv:null,uploadtimestamp:"",$modifydiv:null,modifytimestamp:"",init:function(){a("#mla_set_parent").on("click",function(){return mla.mlaEditAttachment.setParentOpen()});a(".categorydiv").each(function(){var d=a(this).attr("id"),c,b;c=d.split("-");c.shift();b=c.join("-");a.extend(a.expr[":"],{matchTerms:function(g,f,e,h){return(g.textContent||g.innerText||"").toLowerCase().indexOf((e[3]||"").toLowerCase())>=0}});a("#search-"+b).keypress(function(e){if(13===e.keyCode){e.preventDefault();a("#search-"+b).val("");a("#"+b+"-searcher").addClass("wp-hidden-children");a("#"+b+"checklist li").show();a("#"+b+"checklist-pop li").show();return}});a("#search-"+b).keyup(function(g){var i,h,j,f,e;if(13===g.keyCode){g.preventDefault();a("#"+b+"-search-toggle").focus();return}i=a("#search-"+b).val();h=a("#"+b+"checklist li");j=a("#"+b+"checklist-pop li");if(0<i.length){h.hide();j.hide()}else{h.show();j.show()}f=a("#"+b+"checklist label:matchTerms('"+i+"')");f.closest("li").find("li").andSelf().show();f.parents("#"+b+"checklist li").show();e=a("#"+b+"checklist-pop label:matchTerms('"+i+"')");e.closest("li").find("li").andSelf().show();e.parents("#"+b+"checklist li").show()});a("#"+b+"-search-toggle").click(function(){a("#"+b+"-adder ").addClass("wp-hidden-children");a("#"+b+"-searcher").toggleClass("wp-hidden-children");a('a[href="#'+b+'-all"]',"#"+b+"-tabs").click();a("#"+b+"checklist li").show();a("#"+b+"checklist-pop li").show();if(false===a("#"+b+"-searcher").hasClass("wp-hidden-children")){a("#search-"+b).val("").removeClass("form-input-tip");a("#search-"+b).focus()}return false});a("#"+b+"-add-toggle").click(function(){a("#"+b+"-searcher").addClass("wp-hidden-children");return false})});if(a("#submitdiv").length){mla.mlaEditAttachment.uploadtimestamp=a("#upload-timestamp").html();mla.mlaEditAttachment.$uploaddiv=a("#timestampdiv");mla.mlaEditAttachment.$uploaddiv.siblings("a.edit-timestamp").click(function(b){if(mla.mlaEditAttachment.$uploaddiv.is(":hidden")){mla.mlaEditAttachment.$uploaddiv.slideDown("fast",function(){a("input, select",mla.mlaEditAttachment.$uploaddiv.find(".timestamp-wrap")).first().focus()});a(this).hide()}b.preventDefault()});mla.mlaEditAttachment.$uploaddiv.find(".cancel-timestamp").click(function(b){mla.mlaEditAttachment.$uploaddiv.slideUp("fast").siblings("a.edit-timestamp").show().focus();a("#mm",mla.mlaEditAttachment.$uploaddiv).val(a("#hidden_mm",mla.mlaEditAttachment.$uploaddiv).val());a("#jj",mla.mlaEditAttachment.$uploaddiv).val(a("#hidden_jj",mla.mlaEditAttachment.$uploaddiv).val());a("#aa",mla.mlaEditAttachment.$uploaddiv).val(a("#hidden_aa",mla.mlaEditAttachment.$uploaddiv).val());a("#hh",mla.mlaEditAttachment.$uploaddiv).val(a("#hidden_hh",mla.mlaEditAttachment.$uploaddiv).val());a("#mn",mla.mlaEditAttachment.$uploaddiv).val(a("#hidden_mn",mla.mlaEditAttachment.$uploaddiv).val());mla.mlaEditAttachment.updateText(mla.mlaEditAttachment.$uploaddiv,mla.mlaEditAttachment.uploadtimestamp,"#upload-timestamp");b.preventDefault()});mla.mlaEditAttachment.$uploaddiv.find(".save-timestamp").click(function(b){if(mla.mlaEditAttachment.updateText(mla.mlaEditAttachment.$uploaddiv,mla.mlaEditAttachment.uploadtimestamp,"#upload-timestamp")){mla.mlaEditAttachment.$uploaddiv.slideUp("fast");mla.mlaEditAttachment.$uploaddiv.siblings("a.edit-timestamp").show().focus()}b.preventDefault()});a("#post").on("submit",function(b){if(!mla.mlaEditAttachment.updateText(mla.mlaEditAttachment.$uploaddiv,mla.mlaEditAttachment.uploadtimestamp,"#upload-timestamp")){b.preventDefault();mla.mlaEditAttachment.$uploaddiv.show();if(wp.autosave){wp.autosave.enableButtons()}a("#publishing-action .spinner").removeClass("is-active")}})}},setParentOpen:function(){var d,b,c;d=a("#mla_post_parent").val()||"";b=a("#post_ID").val()||"";c=a("#title").val()||"";mla.setParent.open(d,b,c);a("#mla-set-parent-submit").on("click",function(e){e.preventDefault();mla.mlaEditAttachment.setParentSave();return false})},setParentSave:function(){var d=a("#mla-set-parent-response-div input:checked").closest("tr"),f,c,b,e;if(d.length){f=a(":radio",d).val()||"";c=a("label",d).html()||"";b=a("#mla_post_parent").clone(true).val(f);e=a("#mla_parent_info").clone(true).val(c);a("#mla_post_parent").replaceWith(b);a("#mla_parent_info").replaceWith(e);mla.setParent.close()}a("#mla-set-parent-submit").off("click")},updateText:function(k,c,h){if(!k.length){return true}var j,l,d,b=a("#aa",k).val(),g=a("#mm",k).val(),i=a("#jj",k).val(),f=a("#hh",k).val(),e=a("#mn",k).val();j=new Date(b,g-1,i,f,e);l=new Date(a("#hidden_aa",k).val(),a("#hidden_mm",k).val()-1,a("#hidden_jj",k).val(),a("#hidden_hh",k).val(),a("#hidden_mn",k).val());d=new Date(a("#cur_aa",k).val(),a("#cur_mm",k).val()-1,a("#cur_jj",k).val(),a("#cur_hh",k).val(),a("#cur_mn",k).val());if(j.getFullYear()!=b||(1+j.getMonth())!=g||j.getDate()!=i||j.getMinutes()!=e){k.find(".timestamp-wrap").addClass("form-invalid");return false}else{k.find(".timestamp-wrap").removeClass("form-invalid")}if(l.toUTCString()==j.toUTCString()){a(h).html(c)}else{label="#upload-timestamp"==h?mla.settings.uploadLabel:mla.settings.modifyLabel;a(h).html(label+"<b>"+postL10n.dateFormat.replace("%1$s",a('option[value="'+g+'"]',"#mm").attr("data-text")).replace("%2$s",parseInt(i,10)).replace("%3$s",b).replace("%4$s",("00"+f).slice(-2)).replace("%5$s",("00"+e).slice(-2))+"</b> ")}return true}};a(document).ready(function(){mla.mlaEditAttachment.init()})})(jQuery);
js/mla-inline-edit-scripts.js CHANGED
@@ -3,7 +3,26 @@
3
  var jQuery,
4
  mla_inline_edit_vars,
5
  mla = {
6
- // Properties
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7
  settings: {},
8
  bulkEdit: {
9
  inProcess: false,
@@ -16,6 +35,91 @@ var jQuery,
16
  var id = jQuery( o ).closest( 'tr' ).attr( 'id' ),
17
  parts = id.split( '-' );
18
  return parts[ parts.length - 1 ];
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
19
  }
20
  },
21
 
@@ -25,9 +129,7 @@ var jQuery,
25
  };
26
 
27
  ( function( $ ) {
28
- /**
29
- * Localized settings and strings
30
- */
31
  mla.settings = typeof mla_inline_edit_vars === 'undefined' ? {} : mla_inline_edit_vars;
32
  mla_inline_edit_vars = void 0; // delete won't work on Globals
33
 
@@ -67,6 +169,11 @@ var jQuery,
67
  return mla.inlineEditAttachment.quickSave(this);
68
  });
69
 
 
 
 
 
 
70
  $('#bulk-edit-set-parent', bulkRow).on( 'click', function(){
71
  return mla.inlineEditAttachment.bulkParentOpen();
72
  });
@@ -132,9 +239,9 @@ var jQuery,
132
  * in WP 4.2+ to maintain zebra striping.
133
  */
134
  if ( mla.settings.useSpinnerClass ) {
135
- $('table.widefat tbody').prepend( $('#bulk-edit') ).prepend('<tr class="hidden"></tr>');
136
  } else {
137
- $('table.widefat tbody').prepend( $('#bulk-edit') );
138
  }
139
 
140
  $('#bulk-edit').addClass('inline-editor').show();
@@ -155,7 +262,7 @@ var jQuery,
155
  $('#bulk-titles a').click(function(){
156
  var id = $(this).attr('id').substr(1);
157
 
158
- $('table.widefat input[value="' + id + '"]').prop('checked', false);
159
  $('#ttle'+id).remove();
160
  });
161
 
@@ -220,7 +327,7 @@ var jQuery,
220
  this.revert();
221
 
222
  $('#bulk-progress td').attr('colspan', $( 'th:visible, td:visible', '.widefat:first thead' ).length);
223
- $('table.widefat tbody').prepend( $('#bulk-progress') );
224
  $('#bulk-progress').addClass('inline-editor').show();
225
  $('#cb-select-all-1' ).removeAttr( 'checked' );
226
  $('#cb-select-all-2' ).removeAttr( 'checked' );
@@ -243,7 +350,7 @@ var jQuery,
243
  $('#bulk-progress-waiting a').click(function(){
244
  var id = $(this).attr('id').substr(1);
245
 
246
- $('table.widefat input[value="' + id + '"]').prop('checked', false);
247
  $('#ttle'+id).remove();
248
  });
249
 
@@ -255,7 +362,7 @@ var jQuery,
255
 
256
  bulkPost : function() {
257
  var params, chunk, cIndex, item, statusMessage,
258
- spinner = $('table.widefat .inline-edit-save .spinner'),
259
  results = $( '#bulk-progress .inline-edit-save .error' ),
260
  waiting = $( '#bulk-progress-waiting' ),
261
  running = $( '#bulk-progress-running' );
@@ -443,16 +550,15 @@ var jQuery,
443
 
444
  // hierarchical taxonomies
445
  $('.mla_category', rowData).each(function(){
446
- var term_ids = $(this).text(), taxname, checkedLabels, checkedTerms;
447
 
448
  if ( term_ids ) {
449
- taxname = $(this).attr('id').replace('_'+id, '');
450
- $('ul.'+taxname+'-checklist :checkbox', editRow).val(term_ids.split(','));
451
 
452
  if ( -1 !== checkedOnTop.indexOf( taxname ) ) {
453
- checkedLabels = $('ul.'+taxname+'-checklist li :checked', editRow ).parents( 'label' ).remove().toArray().reverse();
454
  checkedTerms = $( '<li></li>' ).html( checkedLabels );
455
- $('ul.'+taxname+'-checklist', editRow ).prepend( checkedTerms );
456
  }
457
  }
458
  });
@@ -484,6 +590,12 @@ var jQuery,
484
  $('.ptitle', editRow).focus();
485
  $( 'html, body' ).animate( { scrollTop: rowData }, 'fast' );
486
 
 
 
 
 
 
 
487
  return false;
488
  },
489
 
@@ -495,9 +607,9 @@ var jQuery,
495
  }
496
 
497
  if ( mla.settings.useSpinnerClass ) {
498
- $('table.widefat .inline-edit-save .spinner').addClass("is-active");
499
  } else {
500
- $('table.widefat .inline-edit-save .spinner').show();
501
  }
502
 
503
  params = {
@@ -516,9 +628,9 @@ var jQuery,
516
  $.post( ajaxurl, params,
517
  function( response ) {
518
  if ( mla.settings.useSpinnerClass ) {
519
- $('table.widefat .inline-edit-save .spinner').removeClass("is-active");
520
  } else {
521
- $('table.widefat .inline-edit-save .spinner').hide();
522
  }
523
 
524
  if ( response ) {
@@ -667,8 +779,8 @@ var jQuery,
667
  },
668
 
669
  doReset : function(){
670
- var id = $('table.widefat tr.inline-editor').attr('id'),
671
- bulkRow = $('table.widefat #bulk-edit'),
672
  blankRow = $('#inlineedit #blank-bulk-edit'),
673
  blankCategories = $('.inline-edit-categories', blankRow ).html(),
674
  blankTags = $('.inline-edit-tags', blankRow ).html(),
@@ -676,9 +788,9 @@ var jQuery,
676
 
677
  if ( id ) {
678
  if ( mla.settings.useSpinnerClass ) {
679
- $('table.widefat .inline-edit-save .spinner').removeClass("is-active");
680
  } else {
681
- $('table.widefat .inline-edit-save .spinner').hide();
682
  }
683
 
684
  if ( 'bulk-edit' == id ) {
@@ -696,6 +808,11 @@ var jQuery,
696
  }
697
  }
698
 
 
 
 
 
 
699
  $('#bulk-edit-set-parent', bulkRow).on( 'click', function(){
700
  return mla.inlineEditAttachment.bulkParentOpen();
701
  });
@@ -706,27 +823,27 @@ var jQuery,
706
  },
707
 
708
  revert : function(){
709
- var id = $('table.widefat tr.inline-editor').attr('id');
710
 
711
  if ( id ) {
712
  if ( mla.settings.useSpinnerClass ) {
713
- $('table.widefat .inline-edit-save .spinner').removeClass("is-active");
714
  } else {
715
- $('table.widefat .inline-edit-save .spinner').hide();
716
  }
717
 
718
  if ( 'bulk-edit' == id ) {
719
  if ( mla.settings.useSpinnerClass ) {
720
- $('table.widefat #bulk-edit').removeClass('inline-editor').hide().siblings('tr.hidden').remove();
721
  } else {
722
- $('table.widefat #bulk-edit').removeClass('inline-editor').hide();
723
  }
724
 
725
  $('#bulk-titles').html('');
726
  $('#inlineedit').append( $('#bulk-edit') );
727
  } else {
728
  if ( 'bulk-progress' == id ) {
729
- $('table.widefat #bulk-progress').removeClass('inline-editor').hide();
730
  $('#bulk-progress-waiting').html('');
731
  $('#inlineedit').append( $('#bulk-progress') );
732
  } else {
3
  var jQuery,
4
  mla_inline_edit_vars,
5
  mla = {
6
+ // Properties (for mla-set-parent-scripts, too)
7
+ // mla.settings.noTitle
8
+ // mla.settings.ntdelTitle
9
+ // mla.settings.quickTagsInit
10
+ // mla.settings.bulkChunkSize
11
+ // mla.settings.ajax_action
12
+ // mla.settings.ajax_nonce
13
+ // mla.settings.bulkWaiting
14
+ // mla.settings.bulkComplete
15
+ // mla.settings.bulkSuccess
16
+ // mla.settings.bulkFailure
17
+ // mla.settings.error
18
+ // mla.settings.bulkCanceled
19
+ // mla.settings.fields
20
+ // mla.settings.bulkTitle
21
+ // mla.settings.comma for flat taxonomy suggest
22
+ // mla.settings.ajaxFailError for setParent
23
+ // mla.settings.ajaxDoneError for setParent
24
+ // mla.settings.useDashicons for setParent
25
+ // mla.settings.useSpinnerClass for setParent
26
  settings: {},
27
  bulkEdit: {
28
  inProcess: false,
35
  var id = jQuery( o ).closest( 'tr' ).attr( 'id' ),
36
  parts = id.split( '-' );
37
  return parts[ parts.length - 1 ];
38
+ },
39
+
40
+ attachSearch : function( rowId ) {
41
+ jQuery( rowId + ' .categorydiv').each( function(){
42
+ var this_id = jQuery(this).attr('id'), taxonomyParts, taxonomy;
43
+
44
+ taxonomyParts = this_id.split('-');
45
+ taxonomyParts.shift(); // taxonomy-
46
+ taxonomy = taxonomyParts.join('-');
47
+
48
+ jQuery.extend( jQuery.expr[":"], {
49
+ "matchTerms": function( elem, i, match, array ) {
50
+ return ( elem.textContent || elem.innerText || "" ).toLowerCase().indexOf( ( match[3] || "" ).toLowerCase() ) >= 0;
51
+ }
52
+ });
53
+
54
+ jQuery( rowId + ' #' + taxonomy + '-searcher' ).addClass( 'wp-hidden-children' );
55
+ jQuery( rowId + ' #' + taxonomy + 'checklist li' ).show();
56
+
57
+ jQuery( rowId + ' #search-' + taxonomy ).off();
58
+
59
+ jQuery( rowId + ' #search-' + taxonomy ).keydown( function( event ){
60
+
61
+ if( 13 === event.keyCode ) {
62
+ event.preventDefault();
63
+ jQuery( rowId + ' #search-' + taxonomy ).val( '' );
64
+ jQuery( rowId + ' #' + taxonomy + '-searcher' ).addClass( 'wp-hidden-children' );
65
+
66
+ jQuery( rowId + ' #' + taxonomy + 'checklist li' ).show();
67
+ return false;
68
+ }
69
+
70
+ } );
71
+
72
+ jQuery( rowId + ' #search-' + taxonomy ).keypress( function( event ){
73
+
74
+ if( 13 === event.keyCode ) {
75
+ event.preventDefault();
76
+ jQuery( rowId + ' #search-' + taxonomy ).val( '' );
77
+ jQuery( rowId + ' #' + taxonomy + '-searcher' ).addClass( 'wp-hidden-children' );
78
+
79
+ jQuery( rowId + ' #' + taxonomy + 'checklist li' ).show();
80
+ return;
81
+ }
82
+
83
+ } );
84
+
85
+ jQuery( rowId + ' #search-' + taxonomy ).keyup( function( event ){
86
+ var searchValue, termList, matchingTerms;
87
+
88
+ if( 13 === event.keyCode ) {
89
+ event.preventDefault();
90
+ jQuery( rowId + ' #' + taxonomy + '-search-toggle' ).focus();
91
+ return;
92
+ }
93
+
94
+ searchValue = jQuery( rowId + ' #search-' + taxonomy ).val();
95
+ termList = jQuery( rowId + ' #' + taxonomy + 'checklist li' );
96
+
97
+ if ( 0 < searchValue.length ) {
98
+ termList.hide();
99
+ } else {
100
+ termList.show();
101
+ }
102
+
103
+ matchingTerms = jQuery( rowId + ' #' + taxonomy + "checklist label:matchTerms('" + searchValue + "')");
104
+ matchingTerms.closest( 'li' ).find( 'li' ).andSelf().show();
105
+ matchingTerms.parents( rowId + ' #' + taxonomy + 'checklist li' ).show();
106
+ } );
107
+
108
+ jQuery( rowId + ' #' + taxonomy + '-search-toggle' ).off();
109
+
110
+ jQuery( rowId + ' #' + taxonomy + '-search-toggle' ).click( function() {
111
+ jQuery( rowId + ' #' + taxonomy + '-adder ').addClass( 'wp-hidden-children' );
112
+ jQuery( rowId + ' #' + taxonomy + '-searcher' ).toggleClass( 'wp-hidden-children' );
113
+ jQuery( rowId + ' #' + taxonomy + 'checklist li' ).show();
114
+
115
+ if ( false === jQuery( rowId + ' #' + taxonomy + '-searcher' ).hasClass( 'wp-hidden-children' ) ) {
116
+ jQuery( rowId + ' #search-' + taxonomy ).val( '' ).removeClass( 'form-input-tip' );
117
+ jQuery( rowId + ' #search-' + taxonomy ).focus();
118
+ }
119
+
120
+ return false;
121
+ });
122
+ }); // .categorydiv.each,
123
  }
124
  },
125
 
129
  };
130
 
131
  ( function( $ ) {
132
+ // Localized settings and strings
 
 
133
  mla.settings = typeof mla_inline_edit_vars === 'undefined' ? {} : mla_inline_edit_vars;
134
  mla_inline_edit_vars = void 0; // delete won't work on Globals
135
 
169
  return mla.inlineEditAttachment.quickSave(this);
170
  });
171
 
172
+ if ( typeof mla.addTerm !== 'undefined' ) {
173
+ mla.addTerm.init( '#bulk-edit-fields-div' );
174
+ }
175
+ mla.utility.attachSearch( '#bulk-edit-fields-div' );
176
+
177
  $('#bulk-edit-set-parent', bulkRow).on( 'click', function(){
178
  return mla.inlineEditAttachment.bulkParentOpen();
179
  });
239
  * in WP 4.2+ to maintain zebra striping.
240
  */
241
  if ( mla.settings.useSpinnerClass ) {
242
+ $('table.wp-list-table tbody').prepend( $('#bulk-edit') ).prepend('<tr class="hidden"></tr>');
243
  } else {
244
+ $('table.wp-list-table tbody').prepend( $('#bulk-edit') );
245
  }
246
 
247
  $('#bulk-edit').addClass('inline-editor').show();
262
  $('#bulk-titles a').click(function(){
263
  var id = $(this).attr('id').substr(1);
264
 
265
+ $('table.wp-list-table input[value="' + id + '"]').prop('checked', false);
266
  $('#ttle'+id).remove();
267
  });
268
 
327
  this.revert();
328
 
329
  $('#bulk-progress td').attr('colspan', $( 'th:visible, td:visible', '.widefat:first thead' ).length);
330
+ $('table.wp-list-table tbody').prepend( $('#bulk-progress') );
331
  $('#bulk-progress').addClass('inline-editor').show();
332
  $('#cb-select-all-1' ).removeAttr( 'checked' );
333
  $('#cb-select-all-2' ).removeAttr( 'checked' );
350
  $('#bulk-progress-waiting a').click(function(){
351
  var id = $(this).attr('id').substr(1);
352
 
353
+ $('table.wp-list-table input[value="' + id + '"]').prop('checked', false);
354
  $('#ttle'+id).remove();
355
  });
356
 
362
 
363
  bulkPost : function() {
364
  var params, chunk, cIndex, item, statusMessage,
365
+ spinner = $('table.wp-list-table .inline-edit-save .spinner'),
366
  results = $( '#bulk-progress .inline-edit-save .error' ),
367
  waiting = $( '#bulk-progress-waiting' ),
368
  running = $( '#bulk-progress-running' );
550
 
551
  // hierarchical taxonomies
552
  $('.mla_category', rowData).each(function(){
553
+ var term_ids = $(this).text(), taxname = $(this).attr('id').replace('_'+id, ''), checkedLabels, checkedTerms;
554
 
555
  if ( term_ids ) {
556
+ $('ul.'+taxname+'checklist :checkbox', editRow).val(term_ids.split(','));
 
557
 
558
  if ( -1 !== checkedOnTop.indexOf( taxname ) ) {
559
+ checkedLabels = $('ul.'+taxname+'checklist li :checked', editRow ).parents( 'label' ).remove().toArray().reverse();
560
  checkedTerms = $( '<li></li>' ).html( checkedLabels );
561
+ $('ul.'+taxname+'checklist', editRow ).prepend( checkedTerms );
562
  }
563
  }
564
  });
590
  $('.ptitle', editRow).focus();
591
  $( 'html, body' ).animate( { scrollTop: rowData }, 'fast' );
592
 
593
+ // Make the edit-fields-div id unique again
594
+ $( '#inline-edit-fields-div', editRow ).attr( 'id', 'inline-edit-fields-div-active' );
595
+ if ( typeof mla.addTerm !== 'undefined' ) {
596
+ mla.addTerm.init( '#inline-edit-fields-div-active' );
597
+ }
598
+ mla.utility.attachSearch( '#inline-edit-fields-div-active' );
599
  return false;
600
  },
601
 
607
  }
608
 
609
  if ( mla.settings.useSpinnerClass ) {
610
+ $('table.wp-list-table .inline-edit-save .spinner').addClass("is-active");
611
  } else {
612
+ $('table.wp-list-table .inline-edit-save .spinner').show();
613
  }
614
 
615
  params = {
628
  $.post( ajaxurl, params,
629
  function( response ) {
630
  if ( mla.settings.useSpinnerClass ) {
631
+ $('table.wp-list-table .inline-edit-save .spinner').removeClass("is-active");
632
  } else {
633
+ $('table.wp-list-table .inline-edit-save .spinner').hide();
634
  }
635
 
636
  if ( response ) {
779
  },
780
 
781
  doReset : function(){
782
+ var id = $('table.wp-list-table tr.inline-editor').attr('id'),
783
+ bulkRow = $('table.wp-list-table #bulk-edit'),
784
  blankRow = $('#inlineedit #blank-bulk-edit'),
785
  blankCategories = $('.inline-edit-categories', blankRow ).html(),
786
  blankTags = $('.inline-edit-tags', blankRow ).html(),
788
 
789
  if ( id ) {
790
  if ( mla.settings.useSpinnerClass ) {
791
+ $('table.wp-list-table .inline-edit-save .spinner').removeClass("is-active");
792
  } else {
793
+ $('table.wp-list-table .inline-edit-save .spinner').hide();
794
  }
795
 
796
  if ( 'bulk-edit' == id ) {
808
  }
809
  }
810
 
811
+ if ( typeof mla.addTerm !== 'undefined' ) {
812
+ mla.addTerm.init( '#bulk-edit-fields-div' );
813
+ }
814
+ mla.utility.attachSearch( '#bulk-edit-fields-div' );
815
+
816
  $('#bulk-edit-set-parent', bulkRow).on( 'click', function(){
817
  return mla.inlineEditAttachment.bulkParentOpen();
818
  });
823
  },
824
 
825
  revert : function(){
826
+ var id = $('table.wp-list-table tr.inline-editor').attr('id');
827
 
828
  if ( id ) {
829
  if ( mla.settings.useSpinnerClass ) {
830
+ $('table.wp-list-table .inline-edit-save .spinner').removeClass("is-active");
831
  } else {
832
+ $('table.wp-list-table .inline-edit-save .spinner').hide();
833
  }
834
 
835
  if ( 'bulk-edit' == id ) {
836
  if ( mla.settings.useSpinnerClass ) {
837
+ $('table.wp-list-table #bulk-edit').removeClass('inline-editor').hide().siblings('tr.hidden').remove();
838
  } else {
839
+ $('table.wp-list-table #bulk-edit').removeClass('inline-editor').hide();
840
  }
841
 
842
  $('#bulk-titles').html('');
843
  $('#inlineedit').append( $('#bulk-edit') );
844
  } else {
845
  if ( 'bulk-progress' == id ) {
846
+ $('table.wp-list-table #bulk-progress').removeClass('inline-editor').hide();
847
  $('#bulk-progress-waiting').html('');
848
  $('#inlineedit').append( $('#bulk-progress') );
849
  } else {
js/mla-inline-edit-scripts.min.js CHANGED
@@ -1 +1 @@
1
- var jQuery,mla_inline_edit_vars,mla={settings:{},bulkEdit:{inProcess:false,doCancel:false},utility:{getId:function(b){var c=jQuery(b).closest("tr").attr("id"),a=c.split("-");return a[a.length-1]}},setParent:null,inlineEditAttachment:null};(function(a){mla.settings=typeof mla_inline_edit_vars==="undefined"?{}:mla_inline_edit_vars;mla_inline_edit_vars=void 0;mla.inlineEditAttachment={init:function(){var d=this,e=a("#inline-edit"),c=a("#bulk-edit"),b=a("#bulk-progress");d.type="attachment";d.what="#attachment-";e.keyup(function(f){if(f.which==27){return mla.inlineEditAttachment.revert()}});c.keyup(function(f){if(f.which==27){return mla.inlineEditAttachment.revert()}});b.keyup(function(f){if(f.which==27){return mla.inlineEditAttachment.revert()}});a("#inline-edit-post-set-parent",e).on("click",function(){return mla.inlineEditAttachment.inlineParentOpen(this)});a("a.cancel",e).click(function(){return mla.inlineEditAttachment.revert()});a("a.save",e).click(function(){return mla.inlineEditAttachment.quickSave(this)});a("td",e).keydown(function(f){if(f.which==13){return mla.inlineEditAttachment.quickSave(this)}});a("#bulk-edit-set-parent",c).on("click",function(){return mla.inlineEditAttachment.bulkParentOpen()});a("a.cancel",c).click(function(){return mla.inlineEditAttachment.revert()});a("a.reset",c).click(function(){return mla.inlineEditAttachment.doReset()});a('input[type="submit"]',c).click(function(f){f.preventDefault();return mla.inlineEditAttachment.bulkSave(f)});a("a.cancel",b).click(function(){if(mla.bulkEdit.inProcess){mla.bulkEdit.doCancel=true;return false}else{return mla.inlineEditAttachment.revert()}});a("#bulk_refresh",b).click(function(){a("#bulk-progress a").prop("disabled",true);a("#bulk-progress").css("opacity","0.5")});a("#the-list").on("click","a.editinline",function(){mla.inlineEditAttachment.quickEdit(this);return false});a('select[name="_status"] option[value="future"]',c).remove();a("#doaction, #doaction2").click(function(f){var g=a(this).attr("id").substr(2);if(a('select[name="'+g+'"]').val()=="edit"){f.preventDefault();d.bulkEdit()}else{if(a("form#posts-filter tr.inline-editor").length>0){d.revert()}}});a("#post-query-submit").mousedown(function(){d.revert();a('select[name^="action"]').val("-1")})},bulkEdit:function(){var b="",d=true;this.revert();a("#bulk-edit td").attr("colspan",a("th:visible, td:visible",".widefat:first thead").length);if(mla.settings.useSpinnerClass){a("table.widefat tbody").prepend(a("#bulk-edit")).prepend('<tr class="hidden"></tr>')}else{a("table.widefat tbody").prepend(a("#bulk-edit"))}a("#bulk-edit").addClass("inline-editor").show();a('tbody th.check-column input[type="checkbox"]').each(function(){if(a(this).prop("checked")){d=false;var e=a(this).val(),c;c=a("#inline_"+e+" .post_title").text()||mla.settings.noTitle;b+='<div id="ttle'+e+'"><a id="_'+e+'" class="ntdelbutton" title="'+mla.settings.ntdelTitle+'">X</a>'+c+"</div>"}});if(d){return this.revert()}a("#bulk-titles").html(b);a("#bulk-titles a").click(function(){var c=a(this).attr("id").substr(1);a('table.widefat input[value="'+c+'"]').prop("checked",false);a("#ttle"+c).remove()});a("textarea.mla_tags").each(function(){var c=a(this).attr("name").replace("]","").replace("tax_input[","");a(this).suggest(ajaxurl+"?action=ajax-tag-search&tax="+c,{delay:500,minchars:2,multiple:true,multipleSep:mla.settings.comma+" "})});a("html, body").animate({scrollTop:0},"fast");if((typeof quicktags!=="undefined")&&(typeof mla.settings.quickTagsInit!=="undefined")){for(id in mla.settings.quickTagsInit){quicktags(mla.settings.quickTagsInit[id]);if(mla.settings.quickTagsInit[id]["active"]){window.wpActiveEditor=id}}}},bulkSave:function(c){var b;mla.bulkEdit={inProcess:false,doCancel:false,chunkSize:0,targetName:"",fields:"",ids:[],idsCount:0,offset:0,waiting:0,running:0,complete:0,unchanged:0,success:0,failure:0};mla.bulkEdit.chunkSize=+mla.settings.bulkChunkSize;mla.bulkEdit.targetName=c.target.name;mla.bulkEdit.fields=a("#bulk-edit :input").serialize();b=a('tbody th.check-column input[type="checkbox"]').serializeArray();a.each(b,function(d,e){mla.bulkEdit.ids[d]=+e.value});mla.bulkEdit.idsCount=mla.bulkEdit.waiting=mla.bulkEdit.ids.length;mla.inlineEditAttachment.bulkProgressOpen();mla.inlineEditAttachment.bulkPost();return false},bulkProgressOpen:function(){var b="",d=true;this.revert();a("#bulk-progress td").attr("colspan",a("th:visible, td:visible",".widefat:first thead").length);a("table.widefat tbody").prepend(a("#bulk-progress"));a("#bulk-progress").addClass("inline-editor").show();a("#cb-select-all-1").removeAttr("checked");a("#cb-select-all-2").removeAttr("checked");a('tbody th.check-column input[type="checkbox"]').each(function(){if(a(this).prop("checked")){d=false;var e=a(this).val(),c;c=a("#inline_"+e+" .post_title").text()||mla.settings.noTitle;b+='<div id="ttle'+e+'"><a id="_'+e+'" class="ntdelbutton" title="'+mla.settings.ntdelTitle+'">X</a>'+c+"</div>"}});if(d){return this.revert()}a("#bulk-progress-running").html("");a("#bulk-progress-complete").html("");a("#bulk-progress-waiting").html(b);a("#bulk-progress-waiting a").click(function(){var c=a(this).attr("id").substr(1);a('table.widefat input[value="'+c+'"]').prop("checked",false);a("#ttle"+c).remove()});a("#bulk-progress .inline-edit-save .error").html("");a("#bulk_refresh").prop("disabled",true).css("opacity","0.5");a("html, body").animate({scrollTop:0},"fast")},bulkPost:function(){var b,g,f,i,c,h=a("table.widefat .inline-edit-save .spinner"),d=a("#bulk-progress .inline-edit-save .error"),j=a("#bulk-progress-waiting"),e=a("#bulk-progress-running");g=mla.bulkEdit.ids.slice(mla.bulkEdit.offset,mla.bulkEdit.offset+mla.bulkEdit.chunkSize);for(f=0;f<g.length;f++){i=a("#ttle"+g[f],j).remove();a("a",i).hide();e.append(i)}mla.bulkEdit.waiting-=g.length;mla.bulkEdit.running=g.length;b={action:mla.settings.ajax_action,mla_admin_nonce:mla.settings.ajax_nonce,bulk_action:mla.bulkEdit.targetName,cb_offset:mla.bulkEdit.offset,cb_count:mla.bulkEdit.idsCount,cb_attachment:g};mla.bulkEdit.offset+=mla.bulkEdit.chunkSize;b=a.param(b)+"&"+mla.bulkEdit.fields;mla.bulkEdit.inProcess=true;if(mla.settings.useSpinnerClass){h.addClass("is-active")}else{h.show()}c=mla.settings.bulkWaiting+": "+mla.bulkEdit.waiting+", "+mla.settings.bulkComplete+": "+mla.bulkEdit.complete+", "+mla.settings.bulkUnchanged+": "+mla.bulkEdit.unchanged+", "+mla.settings.bulkSuccess+": "+mla.bulkEdit.success+", "+mla.settings.bulkFailure+": "+mla.bulkEdit.failure;d.html(c).show();a.ajax(ajaxurl,{type:"POST",data:b,dataType:"json"}).always(function(){if(mla.settings.useSpinnerClass){h.removeClass("is-active")}else{h.hide()}}).done(function(n,l){var o="no response.data",k,m;if(mla.settings.useSpinnerClass){h.removeClass("is-active")}else{h.hide()}if(n){if(!n.success){if(n.responseData){o=n.data}d.html(JSON.stringify(n)).show();mla.bulkEdit.offset=mla.bulkEdit.idsCount}else{m=a("#bulk-progress-running div").remove();a.each(m,function(){var p,q=a(this).html(),r=a(this).attr("id").substr(4);if("string"===typeof(n.data.item_results[r]["result"])){p=n.data.item_results[r]["result"];a(this).html(q+" ("+r+") - "+p)}a("#attachment-"+r).remove()});a("#bulk-progress-complete").append(m);mla.bulkEdit.complete+=mla.bulkEdit.running;mla.bulkEdit.running=0;mla.bulkEdit.unchanged+=n.data.unchanged;mla.bulkEdit.success+=n.data.success;mla.bulkEdit.failure+=n.data.failure;k=mla.settings.bulkWaiting+": "+mla.bulkEdit.waiting+", "+mla.settings.bulkComplete+": "+mla.bulkEdit.complete+", "+mla.settings.bulkUnchanged+": "+mla.bulkEdit.unchanged+", "+mla.settings.bulkSuccess+": "+mla.bulkEdit.success+", "+mla.settings.bulkFailure+": "+mla.bulkEdit.failure;d.html(k).show()}}else{d.html(mla.settings.error).show();mla.bulkEdit.offset=mla.bulkEdit.idsCount}if(mla.bulkEdit.doCancel){d.html(mla.settings.bulkCanceled+". "+k).show()}else{if(mla.bulkEdit.offset<mla.bulkEdit.idsCount){mla.inlineEditAttachment.bulkPost();return}}a("#bulk_refresh").prop("disabled",false).css("opacity","1.0");mla.bulkEdit.inProcess=false}).fail(function(l,k){if(200==l.status){d.text("("+k+") "+l.responseText)}else{d.text(mla.settings.ajaxFailError+" ("+k+"), jqXHR( "+l.status+", "+l.statusText+", "+l.responseText+")")}})},quickEdit:function(i){var d=this,b,c,f,h=[],e,g;d.revert();if(typeof(i)=="object"){i=mla.utility.getId(i)}b=mla.settings.fields;c=a("#inline-edit").clone(true);a("td",c).attr("colspan",a("th:visible, td:visible",".widefat:first thead").length);if(mla.settings.useSpinnerClass){a(d.what+i).hide().after(c).after('<tr class="hidden"></tr>')}else{if(a(d.what+i).hasClass("alternate")){a(c).addClass("alternate")}a(d.what+i).hide().after(c)}f=a("#inline_"+i);e=a(".item_thumbnail",f).html();if(e.length){a("#item_thumbnail",c).html(e)}if(!a(':input[name="post_author"] option[value="'+a(".post_author",f).text()+'"]',c).val()){a(':input[name="post_author"]',c).prepend('<option value="'+a(".post_author",f).text()+'">'+a("#"+d.type+"-"+i+" .author").text()+"</option>")}if(a(':input[name="post_author"] option',c).length==1){a("label.inline-edit-author",c).hide()}for(g=0;g<b.length;g++){a(':input[name="'+b[g]+'"]',c).val(a("."+b[g],f).text())}if(a(".image_alt",f).length===0){a("label.inline-edit-image-alt",c).hide()}a(".checked_on_top",f).each(function(){h[h.length]=a(this).attr("id").replace("_"+i,"")});a(".mla_category",f).each(function(){var l=a(this).text(),m,k,j;if(l){m=a(this).attr("id").replace("_"+i,"");a("ul."+m+"-checklist :checkbox",c).val(l.split(","));if(-1!==h.indexOf(m)){k=a("ul."+m+"-checklist li :checked",c).parents("label").remove().toArray().reverse();j=a("<li></li>").html(k);a("ul."+m+"-checklist",c).prepend(j)}}});a(".mla_tags",f).each(function(){var m=a(this).text(),n=a(this).attr("id").replace("_"+i,""),l=a("textarea.tax_input_"+n,c),j=mla.settings.comma,k;if(m){if(","!==j){m=m.replace(/,/g,j)}l.val(m)}k=a(".lang",f).text();if(0<k.length){k="&lang="+k}else{k=""}l.suggest(ajaxurl+"?action=ajax-tag-search&tax="+n+"&preview_id="+i+k,{delay:500,minchars:2,multiple:true,multipleSep:mla.settings.comma+" "})});f=a(c).attr("id","edit-"+i).addClass("inline-editor").show().position().top;a(".ptitle",c).focus();a("html, body").animate({scrollTop:f},"fast");return false},quickSave:function(e){var d,b,c=a(".post_status_page").val()||"";if(typeof(e)=="object"){e=mla.utility.getId(e)}if(mla.settings.useSpinnerClass){a("table.widefat .inline-edit-save .spinner").addClass("is-active")}else{a("table.widefat .inline-edit-save .spinner").show()}d={action:mla.settings.ajax_action,mla_admin_nonce:mla.settings.ajax_nonce,post_type:"attachment",post_ID:e,edit_date:"true",post_status:c};b=a("#edit-"+e+" :input").serialize();d=b+"&"+a.param(d);a.post(ajaxurl,d,function(f){if(mla.settings.useSpinnerClass){a("table.widefat .inline-edit-save .spinner").removeClass("is-active")}else{a("table.widefat .inline-edit-save .spinner").hide()}if(f){if(-1!=f.indexOf("<tr")){if(mla.settings.useSpinnerClass){a(mla.inlineEditAttachment.what+e).siblings("tr.hidden").addBack().remove()}else{a(mla.inlineEditAttachment.what+e).remove()}a("#edit-"+e).before(f).remove();a(mla.inlineEditAttachment.what+e).hide().fadeIn()}else{f=f.replace(/<.[^<>]*?>/g,"");a("#edit-"+e+" .inline-edit-save .error").html(f).show()}}else{a("#edit-"+e+" .inline-edit-save .error").html(mla.settings.error).show()}},"html");return false},inlineParentOpen:function(e){var d,b,c;if(typeof(e)=="object"){b=mla.utility.getId(e);d=a("#edit-"+b+' :input[name="post_parent"]').val()||"";c=a("#edit-"+b+' :input[name="post_title"]').val()||"";mla.setParent.open(d,b,c);a("#mla-set-parent-submit").on("click",function(f){f.preventDefault();mla.inlineEditAttachment.inlineParentSave(b);return false})}},inlineParentSave:function(b){var f=a("#mla-set-parent-response-div input:checked").closest("tr"),h,e,c=a("#edit-"+b),d,g;if(f.length){h=a(":radio",f).val()||"";e=a("label",f).html()||"";d=a(':input[name="post_parent"]',c).clone(true).val(h);g=a(':input[name="post_parent_title"]',c).clone(true).val(e);a(':input[name="post_parent"]',c).replaceWith(d);a(':input[name="post_parent_title"]',c).replaceWith(g)}mla.setParent.close();a("#mla-set-parent-submit").off("click")},bulkParentOpen:function(){var d,b,c;b=-1;c=mla.settings.bulkTitle;d=a('#bulk-edit :input[name="post_parent"]').val()||-1;mla.setParent.open(d,b,c);a("#mla-set-parent-submit").on("click",function(e){e.preventDefault();mla.inlineEditAttachment.bulkParentSave();return false})},bulkParentSave:function(){var c=a("#mla-set-parent-response-div input:checked").closest("tr"),d,b;if(c.length){d=a(":radio",c).val()||"";b=a('#bulk-edit :input[name="post_parent"]').clone(true).val(d);a('#bulk-edit :input[name="post_parent"]').replaceWith(b)}mla.setParent.close();a("#mla-set-parent-submit").off("click")},tableParentOpen:function(d,b,c){mla.setParent.open(d,b,c);a("#mla-set-parent-submit").on("click",function(e){e.preventDefault();mla.inlineEditAttachment.tableParentSave(b);return false})},tableParentSave:function(b){var d=a("#mla-set-parent-response-div input:checked").closest("tr"),f=a(":radio",d).val()||"-1",c,e=a("#attachment-"+b+" td.attached_to").clone(true);if(d.length&&(f>=0)){e=a("#attachment-"+b+" td.attached_to").clone(true);e.html('<span class="spinner"></span>');a("#attachment-"+b+" td.attached_to").replaceWith(e);if(mla.settings.useSpinnerClass){a("#attachment-"+b+" td.attached_to .spinner").addClass("is-active")}else{a("#attachment-"+b+" td.attached_to .spinner").show()}c=a.param({action:mla.settings.ajax_action+"-set-parent",mla_admin_nonce:mla.settings.ajax_nonce,post_ID:b,post_parent:f});a.post(ajaxurl,c,function(g){if(g){if(-1==g.indexOf("tableParentOpen(")){g=g.replace(/<.[^<>]*?>/g,"")}}else{g=mla.settings.ajaxFailError}a("#attachment-"+b).before(g).remove();a("#attachment-"+b).hide().fadeIn()},"html")}else{e.html(mla.settings.error);a("#attachment-"+b+" td.attached_to").replaceWith(e)}a("#mla-set-parent-submit").off("click");mla.setParent.close()},doReset:function(){var g=a("table.widefat tr.inline-editor").attr("id"),d=a("table.widefat #bulk-edit"),c=a("#inlineedit #blank-bulk-edit"),b=a(".inline-edit-categories",c).html(),f=a(".inline-edit-tags",c).html(),e=a(".inline-edit-fields",c).html();if(g){if(mla.settings.useSpinnerClass){a("table.widefat .inline-edit-save .spinner").removeClass("is-active")}else{a("table.widefat .inline-edit-save .spinner").hide()}if("bulk-edit"==g){a(".inline-edit-categories",d).html(b),a(".inline-edit-tags",d).html(f),a(".inline-edit-fields",d).html(e);if((typeof quicktags!=="undefined")&&(typeof mla.settings.quickTagsInit!=="undefined")){for(g in mla.settings.quickTagsInit){quicktags(mla.settings.quickTagsInit[g]);if(mla.settings.quickTagsInit[g]["active"]){window.wpActiveEditor=g}}}a("#bulk-edit-set-parent",d).on("click",function(){return mla.inlineEditAttachment.bulkParentOpen()})}}return false},revert:function(){var b=a("table.widefat tr.inline-editor").attr("id");if(b){if(mla.settings.useSpinnerClass){a("table.widefat .inline-edit-save .spinner").removeClass("is-active")}else{a("table.widefat .inline-edit-save .spinner").hide()}if("bulk-edit"==b){if(mla.settings.useSpinnerClass){a("table.widefat #bulk-edit").removeClass("inline-editor").hide().siblings("tr.hidden").remove()}else{a("table.widefat #bulk-edit").removeClass("inline-editor").hide()}a("#bulk-titles").html("");a("#inlineedit").append(a("#bulk-edit"))}else{if("bulk-progress"==b){a("table.widefat #bulk-progress").removeClass("inline-editor").hide();a("#bulk-progress-waiting").html("");a("#inlineedit").append(a("#bulk-progress"))}else{if(mla.settings.useSpinnerClass){a("#"+b).siblings("tr.hidden").addBack().remove()}else{a("#"+b).remove()}b=b.substr(b.lastIndexOf("-")+1);a(this.what+b).show()}}}return false}};a(document).ready(function(){mla.inlineEditAttachment.init()})})(jQuery);
1
+ var jQuery,mla_inline_edit_vars,mla={settings:{},bulkEdit:{inProcess:false,doCancel:false},utility:{getId:function(b){var c=jQuery(b).closest("tr").attr("id"),a=c.split("-");return a[a.length-1]},attachSearch:function(a){jQuery(a+" .categorydiv").each(function(){var d=jQuery(this).attr("id"),c,b;c=d.split("-");c.shift();b=c.join("-");jQuery.extend(jQuery.expr[":"],{matchTerms:function(g,f,e,h){return(g.textContent||g.innerText||"").toLowerCase().indexOf((e[3]||"").toLowerCase())>=0}});jQuery(a+" #"+b+"-searcher").addClass("wp-hidden-children");jQuery(a+" #"+b+"checklist li").show();jQuery(a+" #search-"+b).off();jQuery(a+" #search-"+b).keydown(function(e){if(13===e.keyCode){e.preventDefault();jQuery(a+" #search-"+b).val("");jQuery(a+" #"+b+"-searcher").addClass("wp-hidden-children");jQuery(a+" #"+b+"checklist li").show();return false}});jQuery(a+" #search-"+b).keypress(function(e){if(13===e.keyCode){e.preventDefault();jQuery(a+" #search-"+b).val("");jQuery(a+" #"+b+"-searcher").addClass("wp-hidden-children");jQuery(a+" #"+b+"checklist li").show();return}});jQuery(a+" #search-"+b).keyup(function(f){var h,g,e;if(13===f.keyCode){f.preventDefault();jQuery(a+" #"+b+"-search-toggle").focus();return}h=jQuery(a+" #search-"+b).val();g=jQuery(a+" #"+b+"checklist li");if(0<h.length){g.hide()}else{g.show()}e=jQuery(a+" #"+b+"checklist label:matchTerms('"+h+"')");e.closest("li").find("li").andSelf().show();e.parents(a+" #"+b+"checklist li").show()});jQuery(a+" #"+b+"-search-toggle").off();jQuery(a+" #"+b+"-search-toggle").click(function(){jQuery(a+" #"+b+"-adder ").addClass("wp-hidden-children");jQuery(a+" #"+b+"-searcher").toggleClass("wp-hidden-children");jQuery(a+" #"+b+"checklist li").show();if(false===jQuery(a+" #"+b+"-searcher").hasClass("wp-hidden-children")){jQuery(a+" #search-"+b).val("").removeClass("form-input-tip");jQuery(a+" #search-"+b).focus()}return false})})}},setParent:null,inlineEditAttachment:null};(function(a){mla.settings=typeof mla_inline_edit_vars==="undefined"?{}:mla_inline_edit_vars;mla_inline_edit_vars=void 0;mla.inlineEditAttachment={init:function(){var d=this,e=a("#inline-edit"),c=a("#bulk-edit"),b=a("#bulk-progress");d.type="attachment";d.what="#attachment-";e.keyup(function(f){if(f.which==27){return mla.inlineEditAttachment.revert()}});c.keyup(function(f){if(f.which==27){return mla.inlineEditAttachment.revert()}});b.keyup(function(f){if(f.which==27){return mla.inlineEditAttachment.revert()}});a("#inline-edit-post-set-parent",e).on("click",function(){return mla.inlineEditAttachment.inlineParentOpen(this)});a("a.cancel",e).click(function(){return mla.inlineEditAttachment.revert()});a("a.save",e).click(function(){return mla.inlineEditAttachment.quickSave(this)});a("td",e).keydown(function(f){if(f.which==13){return mla.inlineEditAttachment.quickSave(this)}});if(typeof mla.addTerm!=="undefined"){mla.addTerm.init("#bulk-edit-fields-div")}mla.utility.attachSearch("#bulk-edit-fields-div");a("#bulk-edit-set-parent",c).on("click",function(){return mla.inlineEditAttachment.bulkParentOpen()});a("a.cancel",c).click(function(){return mla.inlineEditAttachment.revert()});a("a.reset",c).click(function(){return mla.inlineEditAttachment.doReset()});a('input[type="submit"]',c).click(function(f){f.preventDefault();return mla.inlineEditAttachment.bulkSave(f)});a("a.cancel",b).click(function(){if(mla.bulkEdit.inProcess){mla.bulkEdit.doCancel=true;return false}else{return mla.inlineEditAttachment.revert()}});a("#bulk_refresh",b).click(function(){a("#bulk-progress a").prop("disabled",true);a("#bulk-progress").css("opacity","0.5")});a("#the-list").on("click","a.editinline",function(){mla.inlineEditAttachment.quickEdit(this);return false});a('select[name="_status"] option[value="future"]',c).remove();a("#doaction, #doaction2").click(function(f){var g=a(this).attr("id").substr(2);if(a('select[name="'+g+'"]').val()=="edit"){f.preventDefault();d.bulkEdit()}else{if(a("form#posts-filter tr.inline-editor").length>0){d.revert()}}});a("#post-query-submit").mousedown(function(){d.revert();a('select[name^="action"]').val("-1")})},bulkEdit:function(){var b="",d=true;this.revert();a("#bulk-edit td").attr("colspan",a("th:visible, td:visible",".widefat:first thead").length);if(mla.settings.useSpinnerClass){a("table.wp-list-table tbody").prepend(a("#bulk-edit")).prepend('<tr class="hidden"></tr>')}else{a("table.wp-list-table tbody").prepend(a("#bulk-edit"))}a("#bulk-edit").addClass("inline-editor").show();a('tbody th.check-column input[type="checkbox"]').each(function(){if(a(this).prop("checked")){d=false;var e=a(this).val(),c;c=a("#inline_"+e+" .post_title").text()||mla.settings.noTitle;b+='<div id="ttle'+e+'"><a id="_'+e+'" class="ntdelbutton" title="'+mla.settings.ntdelTitle+'">X</a>'+c+"</div>"}});if(d){return this.revert()}a("#bulk-titles").html(b);a("#bulk-titles a").click(function(){var c=a(this).attr("id").substr(1);a('table.wp-list-table input[value="'+c+'"]').prop("checked",false);a("#ttle"+c).remove()});a("textarea.mla_tags").each(function(){var c=a(this).attr("name").replace("]","").replace("tax_input[","");a(this).suggest(ajaxurl+"?action=ajax-tag-search&tax="+c,{delay:500,minchars:2,multiple:true,multipleSep:mla.settings.comma+" "})});a("html, body").animate({scrollTop:0},"fast");if((typeof quicktags!=="undefined")&&(typeof mla.settings.quickTagsInit!=="undefined")){for(id in mla.settings.quickTagsInit){quicktags(mla.settings.quickTagsInit[id]);if(mla.settings.quickTagsInit[id]["active"]){window.wpActiveEditor=id}}}},bulkSave:function(c){var b;mla.bulkEdit={inProcess:false,doCancel:false,chunkSize:0,targetName:"",fields:"",ids:[],idsCount:0,offset:0,waiting:0,running:0,complete:0,unchanged:0,success:0,failure:0};mla.bulkEdit.chunkSize=+mla.settings.bulkChunkSize;mla.bulkEdit.targetName=c.target.name;mla.bulkEdit.fields=a("#bulk-edit :input").serialize();b=a('tbody th.check-column input[type="checkbox"]').serializeArray();a.each(b,function(d,e){mla.bulkEdit.ids[d]=+e.value});mla.bulkEdit.idsCount=mla.bulkEdit.waiting=mla.bulkEdit.ids.length;mla.inlineEditAttachment.bulkProgressOpen();mla.inlineEditAttachment.bulkPost();return false},bulkProgressOpen:function(){var b="",d=true;this.revert();a("#bulk-progress td").attr("colspan",a("th:visible, td:visible",".widefat:first thead").length);a("table.wp-list-table tbody").prepend(a("#bulk-progress"));a("#bulk-progress").addClass("inline-editor").show();a("#cb-select-all-1").removeAttr("checked");a("#cb-select-all-2").removeAttr("checked");a('tbody th.check-column input[type="checkbox"]').each(function(){if(a(this).prop("checked")){d=false;var e=a(this).val(),c;c=a("#inline_"+e+" .post_title").text()||mla.settings.noTitle;b+='<div id="ttle'+e+'"><a id="_'+e+'" class="ntdelbutton" title="'+mla.settings.ntdelTitle+'">X</a>'+c+"</div>"}});if(d){return this.revert()}a("#bulk-progress-running").html("");a("#bulk-progress-complete").html("");a("#bulk-progress-waiting").html(b);a("#bulk-progress-waiting a").click(function(){var c=a(this).attr("id").substr(1);a('table.wp-list-table input[value="'+c+'"]').prop("checked",false);a("#ttle"+c).remove()});a("#bulk-progress .inline-edit-save .error").html("");a("#bulk_refresh").prop("disabled",true).css("opacity","0.5");a("html, body").animate({scrollTop:0},"fast")},bulkPost:function(){var b,g,f,i,c,h=a("table.wp-list-table .inline-edit-save .spinner"),d=a("#bulk-progress .inline-edit-save .error"),j=a("#bulk-progress-waiting"),e=a("#bulk-progress-running");g=mla.bulkEdit.ids.slice(mla.bulkEdit.offset,mla.bulkEdit.offset+mla.bulkEdit.chunkSize);for(f=0;f<g.length;f++){i=a("#ttle"+g[f],j).remove();a("a",i).hide();e.append(i)}mla.bulkEdit.waiting-=g.length;mla.bulkEdit.running=g.length;b={action:mla.settings.ajax_action,mla_admin_nonce:mla.settings.ajax_nonce,bulk_action:mla.bulkEdit.targetName,cb_offset:mla.bulkEdit.offset,cb_count:mla.bulkEdit.idsCount,cb_attachment:g};mla.bulkEdit.offset+=mla.bulkEdit.chunkSize;b=a.param(b)+"&"+mla.bulkEdit.fields;mla.bulkEdit.inProcess=true;if(mla.settings.useSpinnerClass){h.addClass("is-active")}else{h.show()}c=mla.settings.bulkWaiting+": "+mla.bulkEdit.waiting+", "+mla.settings.bulkComplete+": "+mla.bulkEdit.complete+", "+mla.settings.bulkUnchanged+": "+mla.bulkEdit.unchanged+", "+mla.settings.bulkSuccess+": "+mla.bulkEdit.success+", "+mla.settings.bulkFailure+": "+mla.bulkEdit.failure;d.html(c).show();a.ajax(ajaxurl,{type:"POST",data:b,dataType:"json"}).always(function(){if(mla.settings.useSpinnerClass){h.removeClass("is-active")}else{h.hide()}}).done(function(n,l){var o="no response.data",k,m;if(mla.settings.useSpinnerClass){h.removeClass("is-active")}else{h.hide()}if(n){if(!n.success){if(n.responseData){o=n.data}d.html(JSON.stringify(n)).show();mla.bulkEdit.offset=mla.bulkEdit.idsCount}else{m=a("#bulk-progress-running div").remove();a.each(m,function(){var p,q=a(this).html(),r=a(this).attr("id").substr(4);if("string"===typeof(n.data.item_results[r]["result"])){p=n.data.item_results[r]["result"];a(this).html(q+" ("+r+") - "+p)}a("#attachment-"+r).remove()});a("#bulk-progress-complete").append(m);mla.bulkEdit.complete+=mla.bulkEdit.running;mla.bulkEdit.running=0;mla.bulkEdit.unchanged+=n.data.unchanged;mla.bulkEdit.success+=n.data.success;mla.bulkEdit.failure+=n.data.failure;k=mla.settings.bulkWaiting+": "+mla.bulkEdit.waiting+", "+mla.settings.bulkComplete+": "+mla.bulkEdit.complete+", "+mla.settings.bulkUnchanged+": "+mla.bulkEdit.unchanged+", "+mla.settings.bulkSuccess+": "+mla.bulkEdit.success+", "+mla.settings.bulkFailure+": "+mla.bulkEdit.failure;d.html(k).show()}}else{d.html(mla.settings.error).show();mla.bulkEdit.offset=mla.bulkEdit.idsCount}if(mla.bulkEdit.doCancel){d.html(mla.settings.bulkCanceled+". "+k).show()}else{if(mla.bulkEdit.offset<mla.bulkEdit.idsCount){mla.inlineEditAttachment.bulkPost();return}}a("#bulk_refresh").prop("disabled",false).css("opacity","1.0");mla.bulkEdit.inProcess=false}).fail(function(l,k){if(200==l.status){d.text("("+k+") "+l.responseText)}else{d.text(mla.settings.ajaxFailError+" ("+k+"), jqXHR( "+l.status+", "+l.statusText+", "+l.responseText+")")}})},quickEdit:function(i){var d=this,b,c,f,h=[],e,g;d.revert();if(typeof(i)=="object"){i=mla.utility.getId(i)}b=mla.settings.fields;c=a("#inline-edit").clone(true);a("td",c).attr("colspan",a("th:visible, td:visible",".widefat:first thead").length);if(mla.settings.useSpinnerClass){a(d.what+i).hide().after(c).after('<tr class="hidden"></tr>')}else{if(a(d.what+i).hasClass("alternate")){a(c).addClass("alternate")}a(d.what+i).hide().after(c)}f=a("#inline_"+i);e=a(".item_thumbnail",f).html();if(e.length){a("#item_thumbnail",c).html(e)}if(!a(':input[name="post_author"] option[value="'+a(".post_author",f).text()+'"]',c).val()){a(':input[name="post_author"]',c).prepend('<option value="'+a(".post_author",f).text()+'">'+a("#"+d.type+"-"+i+" .author").text()+"</option>")}if(a(':input[name="post_author"] option',c).length==1){a("label.inline-edit-author",c).hide()}for(g=0;g<b.length;g++){a(':input[name="'+b[g]+'"]',c).val(a("."+b[g],f).text())}if(a(".image_alt",f).length===0){a("label.inline-edit-image-alt",c).hide()}a(".checked_on_top",f).each(function(){h[h.length]=a(this).attr("id").replace("_"+i,"")});a(".mla_category",f).each(function(){var l=a(this).text(),m=a(this).attr("id").replace("_"+i,""),k,j;if(l){a("ul."+m+"checklist :checkbox",c).val(l.split(","));if(-1!==h.indexOf(m)){k=a("ul."+m+"checklist li :checked",c).parents("label").remove().toArray().reverse();j=a("<li></li>").html(k);a("ul."+m+"checklist",c).prepend(j)}}});a(".mla_tags",f).each(function(){var m=a(this).text(),n=a(this).attr("id").replace("_"+i,""),l=a("textarea.tax_input_"+n,c),j=mla.settings.comma,k;if(m){if(","!==j){m=m.replace(/,/g,j)}l.val(m)}k=a(".lang",f).text();if(0<k.length){k="&lang="+k}else{k=""}l.suggest(ajaxurl+"?action=ajax-tag-search&tax="+n+"&preview_id="+i+k,{delay:500,minchars:2,multiple:true,multipleSep:mla.settings.comma+" "})});f=a(c).attr("id","edit-"+i).addClass("inline-editor").show().position().top;a(".ptitle",c).focus();a("html, body").animate({scrollTop:f},"fast");a("#inline-edit-fields-div",c).attr("id","inline-edit-fields-div-active");if(typeof mla.addTerm!=="undefined"){mla.addTerm.init("#inline-edit-fields-div-active")}mla.utility.attachSearch("#inline-edit-fields-div-active");return false},quickSave:function(e){var d,b,c=a(".post_status_page").val()||"";if(typeof(e)=="object"){e=mla.utility.getId(e)}if(mla.settings.useSpinnerClass){a("table.wp-list-table .inline-edit-save .spinner").addClass("is-active")}else{a("table.wp-list-table .inline-edit-save .spinner").show()}d={action:mla.settings.ajax_action,mla_admin_nonce:mla.settings.ajax_nonce,post_type:"attachment",post_ID:e,edit_date:"true",post_status:c};b=a("#edit-"+e+" :input").serialize();d=b+"&"+a.param(d);a.post(ajaxurl,d,function(f){if(mla.settings.useSpinnerClass){a("table.wp-list-table .inline-edit-save .spinner").removeClass("is-active")}else{a("table.wp-list-table .inline-edit-save .spinner").hide()}if(f){if(-1!=f.indexOf("<tr")){if(mla.settings.useSpinnerClass){a(mla.inlineEditAttachment.what+e).siblings("tr.hidden").addBack().remove()}else{a(mla.inlineEditAttachment.what+e).remove()}a("#edit-"+e).before(f).remove();a(mla.inlineEditAttachment.what+e).hide().fadeIn()}else{f=f.replace(/<.[^<>]*?>/g,"");a("#edit-"+e+" .inline-edit-save .error").html(f).show()}}else{a("#edit-"+e+" .inline-edit-save .error").html(mla.settings.error).show()}},"html");return false},inlineParentOpen:function(e){var d,b,c;if(typeof(e)=="object"){b=mla.utility.getId(e);d=a("#edit-"+b+' :input[name="post_parent"]').val()||"";c=a("#edit-"+b+' :input[name="post_title"]').val()||"";mla.setParent.open(d,b,c);a("#mla-set-parent-submit").on("click",function(f){f.preventDefault();mla.inlineEditAttachment.inlineParentSave(b);return false})}},inlineParentSave:function(b){var f=a("#mla-set-parent-response-div input:checked").closest("tr"),h,e,c=a("#edit-"+b),d,g;if(f.length){h=a(":radio",f).val()||"";e=a("label",f).html()||"";d=a(':input[name="post_parent"]',c).clone(true).val(h);g=a(':input[name="post_parent_title"]',c).clone(true).val(e);a(':input[name="post_parent"]',c).replaceWith(d);a(':input[name="post_parent_title"]',c).replaceWith(g)}mla.setParent.close();a("#mla-set-parent-submit").off("click")},bulkParentOpen:function(){var d,b,c;b=-1;c=mla.settings.bulkTitle;d=a('#bulk-edit :input[name="post_parent"]').val()||-1;mla.setParent.open(d,b,c);a("#mla-set-parent-submit").on("click",function(e){e.preventDefault();mla.inlineEditAttachment.bulkParentSave();return false})},bulkParentSave:function(){var c=a("#mla-set-parent-response-div input:checked").closest("tr"),d,b;if(c.length){d=a(":radio",c).val()||"";b=a('#bulk-edit :input[name="post_parent"]').clone(true).val(d);a('#bulk-edit :input[name="post_parent"]').replaceWith(b)}mla.setParent.close();a("#mla-set-parent-submit").off("click")},tableParentOpen:function(d,b,c){mla.setParent.open(d,b,c);a("#mla-set-parent-submit").on("click",function(e){e.preventDefault();mla.inlineEditAttachment.tableParentSave(b);return false})},tableParentSave:function(b){var d=a("#mla-set-parent-response-div input:checked").closest("tr"),f=a(":radio",d).val()||"-1",c,e=a("#attachment-"+b+" td.attached_to").clone(true);if(d.length&&(f>=0)){e=a("#attachment-"+b+" td.attached_to").clone(true);e.html('<span class="spinner"></span>');a("#attachment-"+b+" td.attached_to").replaceWith(e);if(mla.settings.useSpinnerClass){a("#attachment-"+b+" td.attached_to .spinner").addClass("is-active")}else{a("#attachment-"+b+" td.attached_to .spinner").show()}c=a.param({action:mla.settings.ajax_action+"-set-parent",mla_admin_nonce:mla.settings.ajax_nonce,post_ID:b,post_parent:f});a.post(ajaxurl,c,function(g){if(g){if(-1==g.indexOf("tableParentOpen(")){g=g.replace(/<.[^<>]*?>/g,"")}}else{g=mla.settings.ajaxFailError}a("#attachment-"+b).before(g).remove();a("#attachment-"+b).hide().fadeIn()},"html")}else{e.html(mla.settings.error);a("#attachment-"+b+" td.attached_to").replaceWith(e)}a("#mla-set-parent-submit").off("click");mla.setParent.close()},doReset:function(){var g=a("table.wp-list-table tr.inline-editor").attr("id"),d=a("table.wp-list-table #bulk-edit"),c=a("#inlineedit #blank-bulk-edit"),b=a(".inline-edit-categories",c).html(),f=a(".inline-edit-tags",c).html(),e=a(".inline-edit-fields",c).html();if(g){if(mla.settings.useSpinnerClass){a("table.wp-list-table .inline-edit-save .spinner").removeClass("is-active")}else{a("table.wp-list-table .inline-edit-save .spinner").hide()}if("bulk-edit"==g){a(".inline-edit-categories",d).html(b),a(".inline-edit-tags",d).html(f),a(".inline-edit-fields",d).html(e);if((typeof quicktags!=="undefined")&&(typeof mla.settings.quickTagsInit!=="undefined")){for(g in mla.settings.quickTagsInit){quicktags(mla.settings.quickTagsInit[g]);if(mla.settings.quickTagsInit[g]["active"]){window.wpActiveEditor=g}}}if(typeof mla.addTerm!=="undefined"){mla.addTerm.init("#bulk-edit-fields-div")}mla.utility.attachSearch("#bulk-edit-fields-div");a("#bulk-edit-set-parent",d).on("click",function(){return mla.inlineEditAttachment.bulkParentOpen()})}}return false},revert:function(){var b=a("table.wp-list-table tr.inline-editor").attr("id");if(b){if(mla.settings.useSpinnerClass){a("table.wp-list-table .inline-edit-save .spinner").removeClass("is-active")}else{a("table.wp-list-table .inline-edit-save .spinner").hide()}if("bulk-edit"==b){if(mla.settings.useSpinnerClass){a("table.wp-list-table #bulk-edit").removeClass("inline-editor").hide().siblings("tr.hidden").remove()}else{a("table.wp-list-table #bulk-edit").removeClass("inline-editor").hide()}a("#bulk-titles").html("");a("#inlineedit").append(a("#bulk-edit"))}else{if("bulk-progress"==b){a("table.wp-list-table #bulk-progress").removeClass("inline-editor").hide();a("#bulk-progress-waiting").html("");a("#inlineedit").append(a("#bulk-progress"))}else{if(mla.settings.useSpinnerClass){a("#"+b).siblings("tr.hidden").addBack().remove()}else{a("#"+b).remove()}b=b.substr(b.lastIndexOf("-")+1);a(this.what+b).show()}}}return false}};a(document).ready(function(){mla.inlineEditAttachment.init()})})(jQuery);
js/mla-set-parent-scripts.js CHANGED
@@ -7,6 +7,7 @@ var jQuery;
7
  *
8
  * properties:
9
  * mla.settings.useDashicons
 
10
  * mla.settings.ajaxDoneError
11
  * mla.settings.ajaxFailError
12
  *
7
  *
8
  * properties:
9
  * mla.settings.useDashicons
10
+ * mla.settings.useSpinnerClass
11
  * mla.settings.ajaxDoneError
12
  * mla.settings.ajaxFailError
13
  *
js/mla-terms-search-scripts.js CHANGED
@@ -1,5 +1,12 @@
1
  /* global ajaxurl */
2
 
 
 
 
 
 
 
 
3
  var jQuery, wpAjax,
4
  mla_terms_search_vars,
5
  mlaTaxonomy = {
1
  /* global ajaxurl */
2
 
3
+ /*
4
+ * This script requires the global "mla" object to be defined and include the following:
5
+ *
6
+ * properties:
7
+ * mla.settings.useSpinnerClass
8
+ */
9
+
10
  var jQuery, wpAjax,
11
  mla_terms_search_vars,
12
  mlaTaxonomy = {
languages/media-library-assistant-en_US - References.pot CHANGED
@@ -2,7 +2,7 @@
2
  msgid ""
3
  msgstr ""
4
  "Project-Id-Version: Media Library Assistant\n"
5
- "POT-Creation-Date: 2018-03-25 15:55-0700\n"
6
  "PO-Revision-Date: 2015-08-21 21:38-0800\n"
7
  "Last-Translator: David Lingren <david@fairtradejudaica.org>\n"
8
  "Language-Team: David Lingren <david@fairtradejudaica.org>\n"
@@ -20,139 +20,156 @@ msgstr ""
20
  "X-Poedit-SearchPath-1: tests\n"
21
  "X-Poedit-SearchPath-2: index.php\n"
22
 
23
- #: includes/class-mla-admin-columns-pro-support.php:178
24
- #: includes/class-mla-ajax.php:259 includes/class-mla-edit-media.php:936
25
- #: includes/class-mla-list-table.php:632
 
26
  msgid "Draft"
27
  msgstr ""
28
 
29
- #: includes/class-mla-admin-columns-pro-support.php:181
30
- #: includes/class-mla-ajax.php:253 includes/class-mla-edit-media.php:930
31
- #: includes/class-mla-list-table.php:635
 
32
  msgid "Scheduled"
33
  msgstr ""
34
 
35
- #: includes/class-mla-admin-columns-pro-support.php:184
36
- #: includes/class-mla-edit-media.php:933 includes/class-mla-list-table.php:638
 
37
  msgctxt "post state"
38
  msgid "Pending"
39
  msgstr ""
40
 
41
- #: includes/class-mla-admin-columns-pro-support.php:187
42
- #: includes/class-mla-list-table.php:641
 
43
  #: includes/class-mla-thumbnail-generation.php:645
44
  msgid "Trash"
45
  msgstr ""
46
 
47
- #: includes/class-mla-admin-columns-pro-support.php:395
 
48
  #: includes/class-mla-data-references.php:310
49
  #: includes/class-mla-data-references.php:656
50
- #: includes/class-mla-list-table.php:1067
51
  msgid "NO REFERENCE TESTS"
52
  msgstr ""
53
 
54
- #: includes/class-mla-admin-columns-pro-support.php:592
55
- #: includes/class-mla-admin-columns-pro-support.php:654
56
- #: includes/class-mla-admin-columns-pro-support.php:721
57
- #: includes/class-mla-admin-columns-pro-support.php:783
 
 
 
 
58
  #: includes/class-mla-core-options.php:447
59
  #: includes/class-mla-core-options.php:457
60
  #: includes/class-mla-core-options.php:467
61
  #: includes/class-mla-core-options.php:477
62
- #: includes/class-mla-list-table.php:1147
63
- #: includes/class-mla-list-table.php:1192
64
- #: includes/class-mla-list-table.php:1242
65
- #: includes/class-mla-list-table.php:1287
66
  msgid "Disabled"
67
  msgstr ""
68
 
69
- #: includes/class-mla-admin-columns-pro-support.php:611
70
- #: includes/class-mla-admin-columns-pro-support.php:677
71
- #: includes/class-mla-admin-columns-pro-support.php:740
72
- #: includes/class-mla-admin-columns-pro-support.php:802
73
- #: includes/class-mla-edit-media.php:1018
74
- #: includes/class-mla-edit-media.php:1056
75
- #: includes/class-mla-edit-media.php:1092
76
- #: includes/class-mla-edit-media.php:1127
77
- #: includes/class-mla-list-table.php:1165
78
- #: includes/class-mla-list-table.php:1214
79
- #: includes/class-mla-list-table.php:1260
80
- #: includes/class-mla-list-table.php:1305
 
 
 
 
81
  msgid "PARENT"
82
  msgstr ""
83
 
84
- #: includes/class-mla-admin-columns-pro-support.php:1027
85
- #: includes/class-mla-core-options.php:603
86
- #: includes/class-mla-core-options.php:860
87
- #: includes/class-mla-core-options.php:891
88
- #: includes/class-mla-core-options.php:905
89
- #: includes/class-mla-list-table.php:490 includes/class-mla-list-table.php:1400
 
90
  #: includes/class-mla-settings-shortcodes-tab.php:629
91
  msgid "None"
92
  msgstr ""
93
 
94
- #: includes/class-mla-admin-columns-pro-support.php:1117
95
- #: includes/class-mla-list-table.php:1539
 
96
  msgid "(Private post)"
97
  msgstr ""
98
 
99
- #: includes/class-mla-admin-columns-pro-support.php:1121
100
- #: includes/class-mla-ajax.php:269 includes/class-mla-list-table.php:1450
101
- #: includes/class-mla-list-table.php:1479
102
- #: includes/class-mla-list-table.php:1543
 
103
  msgid "Y/m/d"
104
  msgstr ""
105
 
106
- #: includes/class-mla-admin-columns-pro-support.php:1134
107
- #: includes/class-mla-core-options.php:1307
108
- #: includes/class-mla-list-table.php:1556
 
109
  msgctxt "table_view_singular"
110
  msgid "Unattached"
111
  msgstr ""
112
 
113
  #: includes/class-mla-admin-columns-support-deprecated.php:33
114
- #: includes/class-mla-admin-columns-support.php:28
115
- #: includes/class-mla-core-options.php:553 includes/class-mla-settings.php:429
116
- #: includes/class-mla-settings.php:1457 includes/class-mla-settings.php:1477
117
  #: index.php:48
118
  msgid "Media Library Assistant"
119
  msgstr ""
120
 
121
  #: includes/class-mla-admin-columns-support-deprecated.php:34
122
- #: includes/class-mla-admin-columns-support.php:29
123
- #: includes/class-mla-core-options.php:562
124
  msgid "Assistant"
125
  msgstr ""
126
 
127
- #: includes/class-mla-ajax.php:240 includes/class-mla-core-options.php:1183
128
- #: includes/class-mla-data.php:3959 includes/class-mla-edit-media.php:428
129
- #: includes/class-mla-main.php:1896 includes/class-mla-main.php:2145
130
- #: includes/class-mla-objects.php:348 includes/class-mla-options.php:453
131
  #: includes/mla-main-search-box-template.php:47
132
  #: includes/mla-media-modal-js-template.php:40
133
  msgid "Title"
134
  msgstr ""
135
 
136
- #: includes/class-mla-ajax.php:240 includes/class-mla-main.php:1897
137
  #: includes/class-mla-thumbnail-generation.php:637
138
  msgid "Type"
139
  msgstr ""
140
 
141
- #: includes/class-mla-ajax.php:240 includes/class-mla-main.php:1898
142
  msgid "Date"
143
  msgstr ""
144
 
145
- #: includes/class-mla-ajax.php:240 includes/class-mla-main.php:1899
146
  #: includes/class-mla-settings-custom-fields-tab.php:503
147
  #: includes/class-mla-settings-custom-fields-tab.php:803
148
  #: includes/class-mla-settings-iptc-exif-tab.php:511
149
  #: includes/class-mla-settings-iptc-exif-tab.php:885
150
- #: includes/class-mla-settings-upload-tab.php:552
151
  msgid "Status"
152
  msgstr ""
153
 
154
- #: includes/class-mla-ajax.php:244 includes/class-mla-list-table.php:876
155
- #: includes/class-mla-list-table.php:1041 includes/class-mla-main.php:430
156
  #: includes/class-mla-polylang-support.php:363
157
  #: includes/class-mla-thumbnail-generation.php:97
158
  msgid "(no title)"
@@ -168,8 +185,8 @@ msgstr ""
168
 
169
  #: includes/class-mla-ajax.php:298 includes/class-mla-ajax.php:305
170
  #: includes/class-mla-ajax.php:314 includes/class-mla-core.php:845
171
- #: includes/class-mla-core.php:863 includes/class-mla-core.php:1271
172
- #: includes/class-mla-core.php:1277 includes/class-mla-core.php:1281
173
  #: includes/class-mla-data-pdf.php:216 includes/class-mla-data-pdf.php:517
174
  #: includes/class-mla-data-pdf.php:519 includes/class-mla-data-pdf.php:565
175
  #: includes/class-mla-data-pdf.php:749 includes/class-mla-data-query.php:695
@@ -184,40 +201,40 @@ msgstr ""
184
  #: includes/class-mla-data.php:3700 includes/class-mla-data.php:3722
185
  #: includes/class-mla-data.php:3936 includes/class-mla-data.php:3982
186
  #: includes/class-mla-data.php:4015 includes/class-mla-data.php:4031
187
- #: includes/class-mla-data.php:4284 includes/class-mla-edit-media.php:318
188
- #: includes/class-mla-edit-media.php:842 includes/class-mla-edit-media.php:884
189
- #: includes/class-mla-main.php:651 includes/class-mla-main.php:783
190
- #: includes/class-mla-main.php:785 includes/class-mla-main.php:788
191
- #: includes/class-mla-main.php:1190 includes/class-mla-main.php:1246
192
- #: includes/class-mla-main.php:1271 includes/class-mla-main.php:1402
193
- #: includes/class-mla-main.php:1452 includes/class-mla-main.php:1548
194
- #: includes/class-mla-main.php:1577 includes/class-mla-main.php:1715
195
- #: includes/class-mla-main.php:1722 includes/class-mla-main.php:1882
196
- #: includes/class-mla-main.php:2006 includes/class-mla-main.php:2277
197
- #: includes/class-mla-main.php:2285 includes/class-mla-main.php:2309
198
- #: includes/class-mla-main.php:2317 includes/class-mla-main.php:2349
199
- #: includes/class-mla-main.php:2357 includes/class-mla-media-modal.php:600
200
- #: includes/class-mla-mime-types.php:789 includes/class-mla-mime-types.php:1181
201
- #: includes/class-mla-mime-types.php:1269
202
- #: includes/class-mla-mime-types.php:1415
203
- #: includes/class-mla-mime-types.php:1438
204
- #: includes/class-mla-mime-types.php:2237
205
- #: includes/class-mla-mime-types.php:2248
206
- #: includes/class-mla-mime-types.php:2261
207
- #: includes/class-mla-mime-types.php:2269
208
- #: includes/class-mla-mime-types.php:2274
209
- #: includes/class-mla-mime-types.php:2317
210
- #: includes/class-mla-mime-types.php:2336
211
- #: includes/class-mla-mime-types.php:2387
212
- #: includes/class-mla-mime-types.php:2421
213
- #: includes/class-mla-mime-types.php:2506
214
- #: includes/class-mla-mime-types.php:2585
215
- #: includes/class-mla-mime-types.php:2594
216
- #: includes/class-mla-mime-types.php:2626 includes/class-mla-objects.php:245
217
- #: includes/class-mla-options.php:217 includes/class-mla-options.php:421
218
- #: includes/class-mla-options.php:502 includes/class-mla-options.php:557
219
- #: includes/class-mla-options.php:1072 includes/class-mla-options.php:1913
220
- #: includes/class-mla-options.php:2139
221
  #: includes/class-mla-settings-custom-fields-tab.php:173
222
  #: includes/class-mla-settings-custom-fields-tab.php:238
223
  #: includes/class-mla-settings-custom-fields-tab.php:242
@@ -231,10 +248,10 @@ msgstr ""
231
  #: includes/class-mla-settings-custom-fields-tab.php:928
232
  #: includes/class-mla-settings-custom-fields-tab.php:932
233
  #: includes/class-mla-settings-custom-fields-tab.php:956
234
- #: includes/class-mla-settings-custom-fields-tab.php:2029
235
- #: includes/class-mla-settings-documentation-tab.php:97
236
- #: includes/class-mla-settings-documentation-tab.php:291
237
- #: includes/class-mla-settings-documentation-tab.php:1260
238
  #: includes/class-mla-settings-iptc-exif-tab.php:175
239
  #: includes/class-mla-settings-iptc-exif-tab.php:241
240
  #: includes/class-mla-settings-iptc-exif-tab.php:245
@@ -248,7 +265,7 @@ msgstr ""
248
  #: includes/class-mla-settings-iptc-exif-tab.php:1000
249
  #: includes/class-mla-settings-iptc-exif-tab.php:1004
250
  #: includes/class-mla-settings-iptc-exif-tab.php:1028
251
- #: includes/class-mla-settings-iptc-exif-tab.php:2259
252
  #: includes/class-mla-settings-shortcodes-tab.php:79
253
  #: includes/class-mla-settings-shortcodes-tab.php:90
254
  #: includes/class-mla-settings-shortcodes-tab.php:94
@@ -258,12 +275,12 @@ msgstr ""
258
  #: includes/class-mla-settings-shortcodes-tab.php:210
259
  #: includes/class-mla-settings-shortcodes-tab.php:214
260
  #: includes/class-mla-settings-shortcodes-tab.php:503
261
- #: includes/class-mla-settings-shortcodes-tab.php:1627
262
  #: includes/class-mla-settings-upload-tab.php:301
263
  #: includes/class-mla-settings-upload-tab.php:353
264
- #: includes/class-mla-settings-upload-tab.php:432
265
- #: includes/class-mla-settings-upload-tab.php:594
266
- #: includes/class-mla-settings-upload-tab.php:605
267
  #: includes/class-mla-settings-view-tab.php:166
268
  #: includes/class-mla-settings-view-tab.php:198
269
  #: includes/class-mla-settings-view-tab.php:275
@@ -271,21 +288,21 @@ msgstr ""
271
  #: includes/class-mla-settings-view-tab.php:447
272
  #: includes/class-mla-settings.php:589 includes/class-mla-settings.php:727
273
  #: includes/class-mla-settings.php:764 includes/class-mla-settings.php:904
274
- #: includes/class-mla-settings.php:1318 includes/class-mla-settings.php:1369
275
- #: includes/class-mla-settings.php:1457 includes/class-mla-settings.php:1490
276
- #: includes/class-mla-settings.php:1493 includes/class-mla-settings.php:1497
277
- #: includes/class-mla-settings.php:1790 includes/class-mla-settings.php:1794
278
- #: includes/class-mla-settings.php:1805 includes/class-mla-settings.php:1812
279
- #: includes/class-mla-settings.php:1821 includes/class-mla-settings.php:1858
280
- #: includes/class-mla-settings.php:1866 includes/class-mla-settings.php:1875
281
- #: includes/class-mla-shortcode-support.php:2059
282
- #: includes/class-mla-shortcode-support.php:2150
283
- #: includes/class-mla-shortcode-support.php:3416
284
- #: includes/class-mla-shortcode-support.php:3543
285
- #: includes/class-mla-shortcode-support.php:3575
286
- #: includes/class-mla-shortcode-support.php:4609
287
- #: includes/class-mla-shortcode-support.php:5013
288
- #: includes/class-mla-shortcode-support.php:5050
289
  #: includes/class-mla-thumbnail-generation.php:428
290
  #: includes/class-mla-thumbnail-generation.php:440
291
  #: includes/class-mla-thumbnail-generation.php:452
@@ -293,16 +310,16 @@ msgstr ""
293
  msgid "ERROR"
294
  msgstr ""
295
 
296
- #: includes/class-mla-ajax.php:298 includes/class-mla-main.php:1715
297
  msgid "No post ID found"
298
  msgstr ""
299
 
300
- #: includes/class-mla-ajax.php:305 includes/class-mla-main.php:1722
301
  #: includes/class-mla-polylang-support.php:260
302
  msgid "You are not allowed to edit this Attachment."
303
  msgstr ""
304
 
305
- #: includes/class-mla-core-options.php:408 includes/class-mla-options.php:255
306
  msgid "Attachment Categories"
307
  msgstr ""
308
 
@@ -310,7 +327,7 @@ msgstr ""
310
  msgid "Check this option to add support for Attachment Categories."
311
  msgstr ""
312
 
313
- #: includes/class-mla-core-options.php:416 includes/class-mla-options.php:270
314
  msgid "Attachment Tags"
315
  msgstr ""
316
 
@@ -335,7 +352,7 @@ msgid "Where-used database access tuning"
335
  msgstr ""
336
 
337
  #: includes/class-mla-core-options.php:442
338
- #: includes/class-mla-edit-media.php:777 includes/class-mla-edit-media.php:1029
339
  msgid "Featured in"
340
  msgstr ""
341
 
@@ -349,7 +366,7 @@ msgid "Search database posts and pages for Featured Image attachments."
349
  msgstr ""
350
 
351
  #: includes/class-mla-core-options.php:452
352
- #: includes/class-mla-edit-media.php:781 includes/class-mla-edit-media.php:1068
353
  msgid "Inserted in"
354
  msgstr ""
355
 
@@ -365,8 +382,8 @@ msgid ""
365
  msgstr ""
366
 
367
  #: includes/class-mla-core-options.php:462
368
- #: includes/class-mla-edit-media.php:785 includes/class-mla-edit-media.php:1103
369
- #: includes/class-mla-settings.php:1571
370
  msgid "Gallery in"
371
  msgstr ""
372
 
@@ -376,7 +393,7 @@ msgid "Dynamic"
376
  msgstr ""
377
 
378
  #: includes/class-mla-core-options.php:467
379
- #: includes/class-mla-core-options.php:477 includes/class-mla-main.php:2180
380
  #: includes/class-mla-settings-custom-fields-tab.php:733
381
  #: includes/class-mla-settings-iptc-exif-tab.php:814
382
  msgid "Refresh"
@@ -395,8 +412,8 @@ msgid ""
395
  msgstr ""
396
 
397
  #: includes/class-mla-core-options.php:472
398
- #: includes/class-mla-edit-media.php:789 includes/class-mla-edit-media.php:1138
399
- #: includes/class-mla-settings.php:1581
400
  msgid "MLA Gallery in"
401
  msgstr ""
402
 
@@ -451,14 +468,14 @@ msgid ""
451
  msgstr ""
452
 
453
  #: includes/class-mla-core-options.php:506
454
- #: includes/class-mla-core-options.php:742 includes/class-mla-settings.php:1093
455
- #: includes/class-mla-settings.php:1094 includes/class-mla-settings.php:1095
456
  msgid "For complete documentation"
457
  msgstr ""
458
 
459
  #: includes/class-mla-core-options.php:506
460
- #: includes/class-mla-core-options.php:742 includes/class-mla-settings.php:1093
461
- #: includes/class-mla-settings.php:1094 includes/class-mla-settings.php:1095
462
  msgid "click here"
463
  msgstr ""
464
 
@@ -476,51 +493,57 @@ msgstr ""
476
 
477
  #: includes/class-mla-core-options.php:510
478
  msgid ""
479
- "Check the \"<strong>Checked On Top</strong>\" box to moved checked terms to "
480
  "the top of the checklist-style meta box."
481
  msgstr ""
482
 
483
  #: includes/class-mla-core-options.php:511
484
  msgid ""
 
 
 
 
 
 
485
  "Use the \"<strong>List Filter</strong>\" option to select the taxonomy (or "
486
  "custom field) on which to filter the Assistant table listing."
487
  msgstr ""
488
 
489
- #: includes/class-mla-core-options.php:512
490
  msgid ""
491
  "To <strong>filter on a custom field</strong>, enter the field name and "
492
  "select ASC (Ascending) or DESC (Descending) order."
493
  msgstr ""
494
 
495
- #: includes/class-mla-core-options.php:540
496
  msgid "Media/Assistant Screen Options"
497
  msgstr ""
498
 
499
- #: includes/class-mla-core-options.php:545
500
  msgid "Admin Menu Options"
501
  msgstr ""
502
 
503
- #: includes/class-mla-core-options.php:550
504
  msgid "Page Title"
505
  msgstr ""
506
 
507
- #: includes/class-mla-core-options.php:555
508
  msgid "Enter the title for the Media/Assistant submenu page"
509
  msgstr ""
510
 
511
- #: includes/class-mla-core-options.php:559
512
  msgid "Menu Title"
513
  msgstr ""
514
 
515
- #: includes/class-mla-core-options.php:564
516
  msgid "Enter the title for the Media/Assistant submenu entry"
517
  msgstr ""
518
 
519
- #: includes/class-mla-core-options.php:568
520
  msgid "Submenu Order"
521
  msgstr ""
522
 
523
- #: includes/class-mla-core-options.php:573
524
  msgid ""
525
  "Enter the position of the Media/Assistant submenu entry.<br>&nbsp;&nbsp;0 = "
526
  "natural order (at bottom),&nbsp;&nbsp;&nbsp;&nbsp;1 - 4 = at top<br>&nbsp;"
@@ -528,304 +551,304 @@ msgid ""
528
  "\""
529
  msgstr ""
530
 
531
- #: includes/class-mla-core-options.php:577
532
  msgid "Display Media/Library"
533
  msgstr ""
534
 
535
- #: includes/class-mla-core-options.php:581
536
  msgid ""
537
  "Check/uncheck this option to display/remove the WordPress Media/Library "
538
  "submenu entry."
539
  msgstr ""
540
 
541
- #: includes/class-mla-core-options.php:585
542
  msgid "Display Media/Assistant list/grid view switcher"
543
  msgstr ""
544
 
545
- #: includes/class-mla-core-options.php:589
546
  msgid ""
547
  "Check/uncheck this option to display/remove the \"list/grid\" view switcher "
548
  "on the Media/Assistant submenu."
549
  msgstr ""
550
 
551
- #: includes/class-mla-core-options.php:593
552
  msgid "Table Defaults"
553
  msgstr ""
554
 
555
- #: includes/class-mla-core-options.php:598
556
  msgid "Order By"
557
  msgstr ""
558
 
559
- #: includes/class-mla-core-options.php:603
560
  msgid "ID/Parent"
561
  msgstr ""
562
 
563
- #: includes/class-mla-core-options.php:604
564
  msgid "Select the column for the sort order of the Assistant table listing."
565
  msgstr ""
566
 
567
- #: includes/class-mla-core-options.php:608
568
  msgid "Order"
569
  msgstr ""
570
 
571
- #: includes/class-mla-core-options.php:613
572
  msgid "Ascending"
573
  msgstr ""
574
 
575
- #: includes/class-mla-core-options.php:613
576
  msgid "Descending"
577
  msgstr ""
578
 
579
- #: includes/class-mla-core-options.php:614
580
- #: includes/class-mla-core-options.php:870
581
  msgid "Choose the sort order."
582
  msgstr ""
583
 
584
- #: includes/class-mla-core-options.php:618 includes/class-mla-main.php:572
585
  msgid "Entries per page"
586
  msgstr ""
587
 
588
- #: includes/class-mla-core-options.php:622
589
  msgid "Enter the number of Media/Assistant submenu table items per page."
590
  msgstr ""
591
 
592
- #: includes/class-mla-core-options.php:631
593
  msgid "Views Width"
594
  msgstr ""
595
 
596
- #: includes/class-mla-core-options.php:636
597
  msgid "Enter the width for the views list, in pixels (px) or percent (%)"
598
  msgstr ""
599
 
600
- #: includes/class-mla-core-options.php:640
601
  msgid "Icon Size"
602
  msgstr ""
603
 
604
- #: includes/class-mla-core-options.php:645
605
  msgid "Enter the size of the thumbnail/icon images, in pixels"
606
  msgstr ""
607
 
608
- #: includes/class-mla-core-options.php:649
609
  msgid "Show Primary Column File Name"
610
  msgstr ""
611
 
612
- #: includes/class-mla-core-options.php:653
613
  msgid ""
614
  "Check/uncheck this option to show/omit the file name from the primary column."
615
  msgstr ""
616
 
617
- #: includes/class-mla-core-options.php:657
618
  msgid "QuickTags editor for bulk description"
619
  msgstr ""
620
 
621
- #: includes/class-mla-core-options.php:661
622
  msgid ""
623
  "Check this option to use the QuickTags editor for the Description field in "
624
  "the Bulk Edit area."
625
  msgstr ""
626
 
627
- #: includes/class-mla-core-options.php:665
628
  msgid "Bulk Chunk Size"
629
  msgstr ""
630
 
631
- #: includes/class-mla-core-options.php:670
632
  msgid "Enter the size of the Bulk Edit and Map All processing chunks"
633
  msgstr ""
634
 
635
- #: includes/class-mla-core-options.php:674
636
  msgid "Taxonomy Filter parameters"
637
  msgstr ""
638
 
639
- #: includes/class-mla-core-options.php:679
640
  msgid "Maximum Depth"
641
  msgstr ""
642
 
643
- #: includes/class-mla-core-options.php:684
644
  msgid ""
645
  "Enter the number of levels displayed for hierarchial taxonomies; enter zero "
646
  "for no limit."
647
  msgstr ""
648
 
649
- #: includes/class-mla-core-options.php:688
650
  msgid "Include Children"
651
  msgstr ""
652
 
653
- #: includes/class-mla-core-options.php:692
654
  msgid ""
655
  "Check/uncheck this option to include/exclude children for hierarchical "
656
  "taxonomies."
657
  msgstr ""
658
 
659
- #: includes/class-mla-core-options.php:696
660
  msgid "Search Media Defaults"
661
  msgstr ""
662
 
663
- #: includes/class-mla-core-options.php:701
664
  msgid "Display Search Controls"
665
  msgstr ""
666
 
667
- #: includes/class-mla-core-options.php:705
668
- #: includes/class-mla-core-options.php:831
669
  msgid ""
670
  "Check/uncheck this option to display/hide the and/or connector and search "
671
  "fields controls."
672
  msgstr ""
673
 
674
- #: includes/class-mla-core-options.php:709
675
  msgid ""
676
  "Use these controls to set defaults for the and/or connector and search "
677
  "fields controls.<br>These defaults will be used for the Search Media boxes "
678
  "on both the Media/Assistant submenu<br>and the Media Manager Modal Window."
679
  msgstr ""
680
 
681
- #: includes/class-mla-core-options.php:723
682
  msgid "Media/Edit Media Enhancements"
683
  msgstr ""
684
 
685
- #: includes/class-mla-core-options.php:728
686
  msgid "Enable &quot;enhanced checklist&quot; taxonomies"
687
  msgstr ""
688
 
689
- #: includes/class-mla-core-options.php:732
690
  msgid ""
691
  "Check this option to enable the \"? Search\" feature for hierarchical "
692
  "taxonomies, e.g., Att. Categories.<br>&nbsp;&nbsp;This option also enables "
693
  "the \"checklist-style\" support for flat taxonomies, e.g., Att. Tags."
694
  msgstr ""
695
 
696
- #: includes/class-mla-core-options.php:736
697
  msgid "Enable Edit Media additional meta boxes"
698
  msgstr ""
699
 
700
- #: includes/class-mla-core-options.php:740
701
  msgid ""
702
  "Check this option to add \"Parent Info\", \"Menu Order\", \"Attachment "
703
  "Metadata\" and four \"where-used\" meta boxes to the Edit Media screen."
704
  msgstr ""
705
 
706
- #: includes/class-mla-core-options.php:741
707
  msgid "You can also use Filters to customize the meta boxes."
708
  msgstr ""
709
 
710
- #: includes/class-mla-core-options.php:746
711
  msgid "Media/Add New Enhancements"
712
  msgstr ""
713
 
714
- #: includes/class-mla-core-options.php:751
715
  msgid "Enable &quot;bulk edit&quot; area"
716
  msgstr ""
717
 
718
- #: includes/class-mla-core-options.php:755
719
  msgid ""
720
  "Check this option to enable the \"Bulk Edit area\" feature on the Media/Add "
721
  "New screen."
722
  msgstr ""
723
 
724
- #: includes/class-mla-core-options.php:759
725
  msgid "&quot;bulk edit&quot; area on top"
726
  msgstr ""
727
 
728
- #: includes/class-mla-core-options.php:763
729
  msgid ""
730
  "Check this option to move the \"Bulk Edit area\" to the top of the Media/Add "
731
  "New screen."
732
  msgstr ""
733
 
734
- #: includes/class-mla-core-options.php:767
735
  msgid "&quot;bulk edit&quot; area initially open"
736
  msgstr ""
737
 
738
- #: includes/class-mla-core-options.php:770
739
  msgid ""
740
  "Check this option to automatically open the \"Bulk Edit area\" when the "
741
  "Media/Add New screen is displayed."
742
  msgstr ""
743
 
744
- #: includes/class-mla-core-options.php:774
745
  msgid "Media Manager/Media Grid Enhancements"
746
  msgstr ""
747
 
748
- #: includes/class-mla-core-options.php:779
749
  msgid "Enable Media Grid Enhancements"
750
  msgstr ""
751
 
752
- #: includes/class-mla-core-options.php:782
753
  msgid ""
754
  "Check/uncheck this option to enable/disable Media Library Grid View "
755
  "Enhancements."
756
  msgstr ""
757
 
758
- #: includes/class-mla-core-options.php:786
759
  msgid "Enable Media Manager Enhancements"
760
  msgstr ""
761
 
762
- #: includes/class-mla-core-options.php:789
763
  msgid ""
764
  "Check/uncheck this option to enable/disable Media Manager Modal Window "
765
  "Enhancements."
766
  msgstr ""
767
 
768
- #: includes/class-mla-core-options.php:793
769
  msgid "Media Manager Enhanced MIME Type filter"
770
  msgstr ""
771
 
772
- #: includes/class-mla-core-options.php:796
773
  msgid ""
774
  "Check this option to filter by more MIME Types, e.g., text, applications."
775
  msgstr ""
776
 
777
- #: includes/class-mla-core-options.php:800
778
  msgid "Media Manager Month and Year filter"
779
  msgstr ""
780
 
781
- #: includes/class-mla-core-options.php:803
782
  msgid "Check this option to filter by month and year uploaded."
783
  msgstr ""
784
 
785
- #: includes/class-mla-core-options.php:807
786
  msgid "Media Manager Category/Tag filter"
787
  msgstr ""
788
 
789
- #: includes/class-mla-core-options.php:810
790
  msgid "Check this option to filter by taxonomy terms."
791
  msgstr ""
792
 
793
- #: includes/class-mla-core-options.php:814
794
  msgid "Media Manager Terms Search popup"
795
  msgstr ""
796
 
797
- #: includes/class-mla-core-options.php:817
798
  msgid "Check this option to enable the \"Terms Search\" popup window."
799
  msgstr ""
800
 
801
- #: includes/class-mla-core-options.php:821
802
  msgid "Media Manager Enhanced Search Media box"
803
  msgstr ""
804
 
805
- #: includes/class-mla-core-options.php:824
806
  msgid "Check this option to enable search box enhancements."
807
  msgstr ""
808
 
809
- #: includes/class-mla-core-options.php:828
810
  msgid "Media Manager Enhanced Search Media Controls"
811
  msgstr ""
812
 
813
- #: includes/class-mla-core-options.php:835
814
  msgid "Media Manager Checklist meta boxes"
815
  msgstr ""
816
 
817
- #: includes/class-mla-core-options.php:838
818
  msgid ""
819
  "Check this option to enable MLA-enhanced meta boxes in the \"ATTACHMENT "
820
  "DETAILS\" pane.<br>&nbsp;&nbsp;This option is for any taxonomy that uses a "
821
  "<strong>\"checklist-style\"</strong> meta box."
822
  msgstr ""
823
 
824
- #: includes/class-mla-core-options.php:842
825
  msgid "Media Manager Flat meta boxes"
826
  msgstr ""
827
 
828
- #: includes/class-mla-core-options.php:845
829
  msgid ""
830
  "Check this option to enable MLA-enhanced meta boxes in the \"ATTACHMENT "
831
  "DETAILS\" pane.<br>&nbsp;&nbsp;This option is for <strong>flat taxonomies</"
@@ -833,211 +856,211 @@ msgid ""
833
  "style\" meta box."
834
  msgstr ""
835
 
836
- #: includes/class-mla-core-options.php:849
837
  msgid "Media Manager auto-fill meta boxes"
838
  msgstr ""
839
 
840
- #: includes/class-mla-core-options.php:852
841
  msgid ""
842
  "Check this option to automatically fill MLA-enhanced meta boxes in the "
843
  "\"ATTACHMENT DETAILS\" pane<br>&nbsp;&nbsp;when the item is selected."
844
  msgstr ""
845
 
846
- #: includes/class-mla-core-options.php:856
847
  msgid "Media Manager Order By"
848
  msgstr ""
849
 
850
- #: includes/class-mla-core-options.php:860
851
- #: includes/class-mla-core-options.php:869
852
- #: includes/class-mla-core-options.php:891
853
- #: includes/class-mla-core-options.php:905
854
- #: includes/class-mla-core-options.php:919 includes/class-mla-settings.php:1144
855
  msgid "Media Manager Default"
856
  msgstr ""
857
 
858
- #: includes/class-mla-core-options.php:860
859
  msgid "Title/Name"
860
  msgstr ""
861
 
862
- #: includes/class-mla-core-options.php:861
863
  msgid ""
864
  "If you want to override the Media Manager default,<br>&nbsp;&nbsp;select a "
865
  "column for the sort order of the Media Library listing."
866
  msgstr ""
867
 
868
- #: includes/class-mla-core-options.php:865
869
  msgid "Media Manager Order"
870
  msgstr ""
871
 
872
- #: includes/class-mla-core-options.php:874
873
  msgid "Attachment Display Settings"
874
  msgstr ""
875
 
876
- #: includes/class-mla-core-options.php:879
877
  msgid "Media Manager Apply Display Settings"
878
  msgstr ""
879
 
880
- #: includes/class-mla-core-options.php:882
881
  msgid ""
882
  "Check this option to always start with the Attachment Display Settings set "
883
  "here,<br>&nbsp;&nbsp;overriding browser-/cookie-based defaults."
884
  msgstr ""
885
 
886
- #: includes/class-mla-core-options.php:886
887
  #: includes/class-mla-core-options.php:888
 
888
  msgid "Alignment"
889
  msgstr ""
890
 
891
- #: includes/class-mla-core-options.php:888
892
- #: includes/class-mla-core-options.php:902
893
- #: includes/class-mla-core-options.php:916
894
  #, php-format
895
  msgid ""
896
  "Select a value for the default %1$s option in the Attachment Display "
897
  "Settings."
898
  msgstr ""
899
 
900
- #: includes/class-mla-core-options.php:891
901
  msgid "Left"
902
  msgstr ""
903
 
904
- #: includes/class-mla-core-options.php:891
905
  msgid "Center"
906
  msgstr ""
907
 
908
- #: includes/class-mla-core-options.php:891
909
  msgid "Right"
910
  msgstr ""
911
 
912
- #: includes/class-mla-core-options.php:900
913
  #: includes/class-mla-core-options.php:902
 
914
  msgid "Link To"
915
  msgstr ""
916
 
917
- #: includes/class-mla-core-options.php:905
918
  msgid "Media File"
919
  msgstr ""
920
 
921
- #: includes/class-mla-core-options.php:905
922
  msgid "Attachment Page"
923
  msgstr ""
924
 
925
- #: includes/class-mla-core-options.php:905
926
  msgid "Custom URL"
927
  msgstr ""
928
 
929
- #: includes/class-mla-core-options.php:914
930
  #: includes/class-mla-core-options.php:916
 
931
  msgid "Size"
932
  msgstr ""
933
 
934
- #: includes/class-mla-core-options.php:919
935
  #: includes/class-mla-thumbnail-generation.php:582
936
  #: includes/class-mla-thumbnail-generation.php:648
937
  msgid "Thumbnail"
938
  msgstr ""
939
 
940
- #: includes/class-mla-core-options.php:919
941
  msgid "Medium"
942
  msgstr ""
943
 
944
- #: includes/class-mla-core-options.php:919
945
  msgid "Large"
946
  msgstr ""
947
 
948
- #: includes/class-mla-core-options.php:919
949
  msgid "Full Size"
950
  msgstr ""
951
 
952
- #: includes/class-mla-core-options.php:928
953
  msgid "Uninstall (Delete) Plugin Settings"
954
  msgstr ""
955
 
956
- #: includes/class-mla-core-options.php:933
957
  msgid "Delete Option Settings"
958
  msgstr ""
959
 
960
- #: includes/class-mla-core-options.php:936
961
  msgid ""
962
  "Check this option to remove all MLA option settings from the database when "
963
  "the plugin is deleted.<br>&nbsp;&nbsp;<strong>You can make a backup copy</"
964
  "strong> of your settings below by clicking \""
965
  msgstr ""
966
 
967
- #: includes/class-mla-core-options.php:936 includes/class-mla-settings.php:1064
968
  msgid "Export ALL Settings"
969
  msgstr ""
970
 
971
- #: includes/class-mla-core-options.php:940
972
  msgid "Delete Option Settings Backups"
973
  msgstr ""
974
 
975
- #: includes/class-mla-core-options.php:943
976
  msgid ""
977
  "Check this option to remove the <code>/wp-content/mla-backup</code> "
978
  "directory and its contents when the plugin is deleted."
979
  msgstr ""
980
 
981
- #: includes/class-mla-core-options.php:947
982
  msgid "Default [mla_gallery] Templates and Settings"
983
  msgstr ""
984
 
985
- #: includes/class-mla-core-options.php:952
986
- #: includes/class-mla-core-options.php:958
987
- #: includes/class-mla-core-options.php:996
988
- #: includes/class-mla-core-options.php:1002
989
  msgid "Style Template"
990
  msgstr ""
991
 
992
- #: includes/class-mla-core-options.php:958
993
- #: includes/class-mla-core-options.php:968
994
- #: includes/class-mla-core-options.php:1002
995
- #: includes/class-mla-core-options.php:1012
996
  #, php-format
997
  msgid "Select the default %1$s for your %2$s shortcodes."
998
  msgstr ""
999
 
1000
- #: includes/class-mla-core-options.php:962
1001
- #: includes/class-mla-core-options.php:1006
1002
  msgid "Markup Template"
1003
  msgstr ""
1004
 
1005
- #: includes/class-mla-core-options.php:968
1006
- #: includes/class-mla-core-options.php:1012
1007
  #: includes/class-mla-settings-shortcodes-tab.php:85
1008
  msgid "markup template"
1009
  msgstr ""
1010
 
1011
- #: includes/class-mla-core-options.php:972
1012
- #: includes/class-mla-core-options.php:1016
1013
  msgid "Default columns"
1014
  msgstr ""
1015
 
1016
- #: includes/class-mla-core-options.php:976
1017
  msgid ""
1018
  "Enter the number of [mla_tag_cloud] columns; must be a positive integer."
1019
  msgstr ""
1020
 
1021
- #: includes/class-mla-core-options.php:980
1022
- #: includes/class-mla-core-options.php:1024
1023
  msgid "Default mla_margin"
1024
  msgstr ""
1025
 
1026
- #: includes/class-mla-core-options.php:984
1027
- #: includes/class-mla-core-options.php:1028
1028
  msgid ""
1029
  "Enter the CSS \"margin\" property value, in length (px, em, pt, etc.), "
1030
  "percent (%), \"auto\" or \"inherit\".<br>&nbsp;&nbsp;Enter \"none\" to "
1031
  "remove the property entirely."
1032
  msgstr ""
1033
 
1034
- #: includes/class-mla-core-options.php:988
1035
- #: includes/class-mla-core-options.php:1032
1036
  msgid "Default mla_itemwidth"
1037
  msgstr ""
1038
 
1039
- #: includes/class-mla-core-options.php:992
1040
- #: includes/class-mla-core-options.php:1036
1041
  msgid ""
1042
  "Enter the CSS \"width\" property value, in length (px, em, pt, etc.), "
1043
  "percent (%), \"auto\" or \"inherit\".<br>&nbsp;&nbsp;Enter \"calculate"
@@ -1047,19 +1070,19 @@ msgid ""
1047
  "the property entirely."
1048
  msgstr ""
1049
 
1050
- #: includes/class-mla-core-options.php:1020
1051
  msgid "Enter the number of [mla_gallery] columns; must be a positive integer."
1052
  msgstr ""
1053
 
1054
- #: includes/class-mla-core-options.php:1040
1055
  msgid "Thumbnail Substitution Support, mla_viewer"
1056
  msgstr ""
1057
 
1058
- #: includes/class-mla-core-options.php:1045
1059
  msgid "Enable thumbnail substitution"
1060
  msgstr ""
1061
 
1062
- #: includes/class-mla-core-options.php:1048
1063
  msgid ""
1064
  "Check this option to allow the \"mla_viewer\" to generate thumbnail images "
1065
  "for PDF documents. Thumbnails are generated dynamically, each time the item "
@@ -1068,32 +1091,32 @@ msgid ""
1068
  "strong>"
1069
  msgstr ""
1070
 
1071
- #: includes/class-mla-core-options.php:1052
1072
  msgid "Enable Featured Images"
1073
  msgstr ""
1074
 
1075
- #: includes/class-mla-core-options.php:1055
1076
  msgid ""
1077
  "Check this option to extend Featured Image support to all Media Library "
1078
  "items. The Featured Image can be used as a thumbnail image for the item in "
1079
  "an [mla_gallery] display."
1080
  msgstr ""
1081
 
1082
- #: includes/class-mla-core-options.php:1059
1083
  msgid "Enable Featured Image Generation"
1084
  msgstr ""
1085
 
1086
- #: includes/class-mla-core-options.php:1062
1087
  msgid ""
1088
  "Check this option to enable the \"Thumbnail\" generation action in the Media/"
1089
  "Assistant submenu Bulk Actions dropdown."
1090
  msgstr ""
1091
 
1092
- #: includes/class-mla-core-options.php:1066
1093
  msgid "Enable explicit Ghostscript check"
1094
  msgstr ""
1095
 
1096
- #: includes/class-mla-core-options.php:1069
1097
  msgid ""
1098
  "Check this option to enable the explicit check for Ghostscript support "
1099
  "required for thumbnail generation. If your Ghostscript software is in a non-"
@@ -1102,37 +1125,37 @@ msgid ""
1102
  "leave this option checked unless you know it is safe to turn it off."
1103
  msgstr ""
1104
 
1105
- #: includes/class-mla-core-options.php:1073
1106
  msgid "Ghostscript path"
1107
  msgstr ""
1108
 
1109
- #: includes/class-mla-core-options.php:1077
1110
  msgid ""
1111
  "If your &ldquo;gs&rdquo; executable is in a non-standard location, enter the "
1112
  "full path and filename here, e.g., &ldquo;/usr/bin/gs&rdquo;. It will "
1113
  "override the search for Ghostscript in other places."
1114
  msgstr ""
1115
 
1116
- #: includes/class-mla-core-options.php:1097
1117
  msgid "Enable custom field mapping"
1118
  msgstr ""
1119
 
1120
- #: includes/class-mla-core-options.php:1100
1121
- #: includes/class-mla-core-options.php:1107
1122
- #: includes/class-mla-core-options.php:1114
1123
- #: includes/class-mla-core-options.php:1131
1124
  msgid "See Help menu."
1125
  msgstr ""
1126
 
1127
- #: includes/class-mla-core-options.php:1104
1128
  msgid "Enable custom field mapping when adding new media"
1129
  msgstr ""
1130
 
1131
- #: includes/class-mla-core-options.php:1111
1132
  msgid "Enable custom field mapping when updating media metadata"
1133
  msgstr ""
1134
 
1135
- #: includes/class-mla-core-options.php:1118
1136
  msgid ""
1137
  "Update the custom field mapping values above, then click Save Changes to "
1138
  "make the updates permanent.<br>You can also make temporary updates and click "
@@ -1140,33 +1163,33 @@ msgid ""
1140
  "saving any rule changes."
1141
  msgstr ""
1142
 
1143
- #: includes/class-mla-core-options.php:1128
1144
  msgid "Enable IPTC/EXIF Mapping"
1145
  msgstr ""
1146
 
1147
- #: includes/class-mla-core-options.php:1135
1148
  msgid "Enable IPTC/EXIF Mapping when adding new media"
1149
  msgstr ""
1150
 
1151
- #: includes/class-mla-core-options.php:1138
1152
  msgid ""
1153
  "Check this option to enable mapping when uploading new media (attachments)."
1154
  "<br>&nbsp;&nbsp;Does NOT affect the operation of the \"Map\" buttons on the "
1155
  "bulk edit, single edit and settings screens."
1156
  msgstr ""
1157
 
1158
- #: includes/class-mla-core-options.php:1142
1159
  msgid "Enable IPTC/EXIF Mapping when updating media metadata"
1160
  msgstr ""
1161
 
1162
- #: includes/class-mla-core-options.php:1145
1163
  msgid ""
1164
  "Check this option to enable mapping when media (attachments) metadata is "
1165
  "regenerated,<br>&nbsp;&nbsp;e.g., when the Media/Edit Media \"Edit Image\" "
1166
  "functions are used."
1167
  msgstr ""
1168
 
1169
- #: includes/class-mla-core-options.php:1149
1170
  msgid ""
1171
  "Update the standard field mapping values above, then click <strong>Save "
1172
  "Changes</strong> to make the updates permanent.<br>You can also make "
@@ -1175,13 +1198,13 @@ msgid ""
1175
  "changes."
1176
  msgstr ""
1177
 
1178
- #: includes/class-mla-core-options.php:1159
1179
  msgid ""
1180
  "Update the taxonomy term mapping values above, then click <strong>Save "
1181
  "Changes</strong> or <strong>Map All Attachments, Taxonomy Terms Now</strong>."
1182
  msgstr ""
1183
 
1184
- #: includes/class-mla-core-options.php:1169
1185
  msgid ""
1186
  "<strong>Update</strong> individual custom field mapping values above, or "
1187
  "make several updates and click <strong>Save Changes</strong> below to apply "
@@ -1192,36 +1215,36 @@ msgid ""
1192
  "changes."
1193
  msgstr ""
1194
 
1195
- #: includes/class-mla-core-options.php:1179
1196
  msgid "IPTC/EXIF Mapping help"
1197
  msgstr ""
1198
 
1199
- #: includes/class-mla-core-options.php:1190 includes/class-mla-data.php:3985
1200
- #: includes/class-mla-edit-media.php:429 includes/class-mla-main.php:2146
1201
  msgid "Name/Slug"
1202
  msgstr ""
1203
 
1204
- #: includes/class-mla-core-options.php:1197 includes/class-mla-data.php:4028
1205
- #: includes/class-mla-edit-media.php:432 includes/class-mla-list-table.php:1342
1206
- #: includes/class-mla-main.php:2150 includes/class-mla-options.php:459
1207
  #: includes/mla-main-search-box-template.php:51
1208
  #: includes/mla-media-modal-js-template.php:48
1209
  msgid "ALT Text"
1210
  msgstr ""
1211
 
1212
- #: includes/class-mla-core-options.php:1204 includes/class-mla-data.php:4041
1213
- #: includes/class-mla-edit-media.php:430 includes/class-mla-main.php:2147
1214
- #: includes/class-mla-options.php:462
1215
  #: includes/mla-main-search-box-template.php:53
1216
  #: includes/mla-media-modal-js-template.php:53
1217
  msgid "Caption"
1218
  msgstr ""
1219
 
1220
- #: includes/class-mla-core-options.php:1211 includes/class-mla-data.php:4050
1221
- #: includes/class-mla-edit-media.php:431 includes/class-mla-main.php:2148
1222
- #: includes/class-mla-options.php:465
1223
  #: includes/class-mla-settings-upload-tab.php:174
1224
- #: includes/class-mla-settings-upload-tab.php:542
1225
  #: includes/class-mla-settings-view-tab.php:132
1226
  #: includes/class-mla-settings-view-tab.php:388
1227
  #: includes/class-mla-template-support.php:74
@@ -1235,193 +1258,193 @@ msgstr ""
1235
  msgid "Description"
1236
  msgstr ""
1237
 
1238
- #: includes/class-mla-core-options.php:1218 includes/class-mla-data.php:4112
1239
- #: includes/class-mla-data.php:4121 includes/class-mla-edit-media.php:433
1240
- #: includes/class-mla-edit-media.php:627 includes/class-mla-main.php:2152
1241
  msgid "Uploaded on"
1242
  msgstr ""
1243
 
1244
- #: includes/class-mla-core-options.php:1238
1245
  msgid "Enable View and Post MIME Type Support"
1246
  msgstr ""
1247
 
1248
- #: includes/class-mla-core-options.php:1241
1249
  msgid ""
1250
  "Check/uncheck this option to enable/disable Post MIME Type Support, then "
1251
  "click <strong>Save Changes</strong> to record the new setting."
1252
  msgstr ""
1253
 
1254
- #: includes/class-mla-core-options.php:1250
1255
  msgid "Post MIME Types help."
1256
  msgstr ""
1257
 
1258
- #: includes/class-mla-core-options.php:1253
1259
- #: includes/class-mla-mime-types.php:1670
1260
- #: includes/class-mla-settings-custom-fields-tab.php:2454
1261
- #: includes/class-mla-settings-documentation-tab.php:1535
1262
- #: includes/class-mla-settings-iptc-exif-tab.php:2722
1263
- #: includes/class-mla-settings-shortcodes-tab.php:1970
1264
  msgctxt "table_view_singular"
1265
  msgid "All"
1266
  msgstr ""
1267
 
1268
- #: includes/class-mla-core-options.php:1254
1269
- #: includes/class-mla-mime-types.php:1671
1270
- #: includes/class-mla-settings-custom-fields-tab.php:2455
1271
- #: includes/class-mla-settings-documentation-tab.php:1536
1272
- #: includes/class-mla-settings-iptc-exif-tab.php:2723
1273
- #: includes/class-mla-settings-shortcodes-tab.php:1971
1274
  msgctxt "table_view_plural"
1275
  msgid "All"
1276
  msgstr ""
1277
 
1278
- #: includes/class-mla-core-options.php:1259
1279
- #: includes/class-mla-core-options.php:1313
1280
- #: includes/class-mla-core-options.php:1322
1281
- #: includes/class-mla-core-options.php:1331
1282
  msgctxt "post_mime_types_description"
1283
  msgid "Built-in view"
1284
  msgstr ""
1285
 
1286
- #: includes/class-mla-core-options.php:1262
1287
  msgctxt "table_view_singular"
1288
  msgid "Image"
1289
  msgstr ""
1290
 
1291
- #: includes/class-mla-core-options.php:1263
1292
  msgctxt "table_view_plural"
1293
  msgid "Images"
1294
  msgstr ""
1295
 
1296
- #: includes/class-mla-core-options.php:1268
1297
  msgctxt "post_mime_types_description"
1298
  msgid "All image subtypes"
1299
  msgstr ""
1300
 
1301
- #: includes/class-mla-core-options.php:1271
1302
  msgctxt "table_view_singular"
1303
  msgid "Audio"
1304
  msgstr ""
1305
 
1306
- #: includes/class-mla-core-options.php:1272
1307
  msgctxt "table_view_plural"
1308
  msgid "Audio"
1309
  msgstr ""
1310
 
1311
- #: includes/class-mla-core-options.php:1277
1312
  msgctxt "post_mime_types_description"
1313
  msgid "All audio subtypes"
1314
  msgstr ""
1315
 
1316
- #: includes/class-mla-core-options.php:1280
1317
  msgctxt "table_view_singular"
1318
  msgid "Video"
1319
  msgstr ""
1320
 
1321
- #: includes/class-mla-core-options.php:1281
1322
  msgctxt "table_view_plural"
1323
  msgid "Video"
1324
  msgstr ""
1325
 
1326
- #: includes/class-mla-core-options.php:1286
1327
  msgctxt "post_mime_types_description"
1328
  msgid "All video subtypes"
1329
  msgstr ""
1330
 
1331
- #: includes/class-mla-core-options.php:1289
1332
  msgctxt "table_view_singular"
1333
  msgid "Text"
1334
  msgstr ""
1335
 
1336
- #: includes/class-mla-core-options.php:1290
1337
  msgctxt "table_view_plural"
1338
  msgid "Text"
1339
  msgstr ""
1340
 
1341
- #: includes/class-mla-core-options.php:1295
1342
  msgctxt "post_mime_types_description"
1343
  msgid "All text subtypes"
1344
  msgstr ""
1345
 
1346
- #: includes/class-mla-core-options.php:1298
1347
  msgctxt "table_view_singular"
1348
  msgid "Application"
1349
  msgstr ""
1350
 
1351
- #: includes/class-mla-core-options.php:1299
1352
  msgctxt "table_view_plural"
1353
  msgid "Applications"
1354
  msgstr ""
1355
 
1356
- #: includes/class-mla-core-options.php:1304
1357
  msgctxt "post_mime_types_description"
1358
  msgid "All application subtypes"
1359
  msgstr ""
1360
 
1361
- #: includes/class-mla-core-options.php:1308
1362
  msgctxt "table_view_plural"
1363
  msgid "Unattached"
1364
  msgstr ""
1365
 
1366
- #: includes/class-mla-core-options.php:1316
1367
  msgctxt "table_view_singular"
1368
  msgid "Attached"
1369
  msgstr ""
1370
 
1371
- #: includes/class-mla-core-options.php:1317
1372
  msgctxt "table_view_plural"
1373
  msgid "Attached"
1374
  msgstr ""
1375
 
1376
- #: includes/class-mla-core-options.php:1325
1377
  msgctxt "table_view_singular"
1378
  msgid "Trash"
1379
  msgstr ""
1380
 
1381
- #: includes/class-mla-core-options.php:1326
1382
  msgctxt "table_view_plural"
1383
  msgid "Trash"
1384
  msgstr ""
1385
 
1386
- #: includes/class-mla-core-options.php:1337
1387
  msgid "Enable Upload MIME Type Support"
1388
  msgstr ""
1389
 
1390
- #: includes/class-mla-core-options.php:1340
1391
  msgid ""
1392
  "Check/uncheck this option to enable/disable Upload MIME Type Support, then "
1393
  "click <strong>Save Changes</strong> to record the new setting."
1394
  msgstr ""
1395
 
1396
- #: includes/class-mla-core-options.php:1349
1397
  msgid "Upload MIME Types help."
1398
  msgstr ""
1399
 
1400
- #: includes/class-mla-core-options.php:1354
1401
  msgid "Enable MLA File Type Icons Support"
1402
  msgstr ""
1403
 
1404
- #: includes/class-mla-core-options.php:1357
1405
  msgid ""
1406
  "Check/uncheck this option to enable/disable MLA File Type Icons Support, "
1407
  "then click <strong>Save Changes</strong> to record the new setting."
1408
  msgstr ""
1409
 
1410
- #: includes/class-mla-core-options.php:1361
1411
  msgid "Display Limit"
1412
  msgstr ""
1413
 
1414
- #: includes/class-mla-core-options.php:1365
1415
  msgid ""
1416
  "Enter the maximum number of debug log characters to display; enter zero or "
1417
  "leave blank for no limit."
1418
  msgstr ""
1419
 
1420
- #: includes/class-mla-core-options.php:1369
1421
  msgid "Debug File"
1422
  msgstr ""
1423
 
1424
- #: includes/class-mla-core-options.php:1373
1425
  msgid ""
1426
  "Enter the name of an alternate, MLA-specific debug log file; leave blank to "
1427
  "use the PHP error_log.<br>&nbsp;&nbsp;The WP_CONTENT_DIR value (below) will "
@@ -1429,31 +1452,31 @@ msgid ""
1429
  "\"."
1430
  msgstr ""
1431
 
1432
- #: includes/class-mla-core-options.php:1377
1433
  msgid "Replace PHP error_log file"
1434
  msgstr ""
1435
 
1436
- #: includes/class-mla-core-options.php:1380
1437
  msgid ""
1438
  "Check this option to replace the PHP error_log file with the MLA Debug File."
1439
  "<br>&nbsp;&nbsp;allows capture of PHP messages in the MLA Debug File."
1440
  msgstr ""
1441
 
1442
- #: includes/class-mla-core-options.php:1384
1443
  msgid "PHP Reporting"
1444
  msgstr ""
1445
 
1446
- #: includes/class-mla-core-options.php:1388
1447
  msgid ""
1448
  "Enter a numeric error_reporting value, e.g., 0x7FFF or 32767; leave blank to "
1449
  "use the existing PHP error_reporting value."
1450
  msgstr ""
1451
 
1452
- #: includes/class-mla-core-options.php:1392
1453
  msgid "MLA Reporting"
1454
  msgstr ""
1455
 
1456
- #: includes/class-mla-core-options.php:1396
1457
  msgid ""
1458
  "Enter a numeric MLA_DEBUG_LEVEL value, e.g., 0x0003 or 3; leave blank to use "
1459
  "the existing MLA_DEBUG_LEVEL value."
@@ -1471,31 +1494,33 @@ msgctxt "error_log"
1471
  msgid "%1$s: mla_load_template file \"%2$s\" bad source type \"%3$s\"."
1472
  msgstr ""
1473
 
1474
- #: includes/class-mla-core.php:1271
1475
  #, php-format
1476
  msgid "%1$s: Bad specification part \"%2$s\""
1477
  msgstr ""
1478
 
1479
- #: includes/class-mla-core.php:1277
1480
  #, php-format
1481
  msgid "%1$s: Bad specification option \"%2$s\""
1482
  msgstr ""
1483
 
1484
- #: includes/class-mla-core.php:1281
1485
  #, php-format
1486
  msgid "%1$s: Bad specification prefix \"%2$s\""
1487
  msgstr ""
1488
 
1489
- #: includes/class-mla-core.php:1381
1490
  msgid "Most Used"
1491
  msgstr ""
1492
 
1493
- #: includes/class-mla-core.php:1410
1494
  #, php-format
1495
  msgid "+ %s"
1496
  msgstr ""
1497
 
1498
- #: includes/class-mla-core.php:1416 includes/class-mla-main.php:1888
 
 
1499
  #: includes/class-mla-media-modal.php:630
1500
  #: includes/mla-media-modal-js-template.php:28
1501
  #: includes/mla-media-modal-js-template.php:75
@@ -1548,10 +1573,10 @@ msgid "Title"
1548
  msgstr ""
1549
 
1550
  #: includes/class-mla-data-query.php:294
1551
- #: includes/class-mla-settings-custom-fields-tab.php:1202
1552
- #: includes/class-mla-settings-documentation-tab.php:490
1553
- #: includes/class-mla-settings-iptc-exif-tab.php:1278
1554
- #: includes/class-mla-settings-shortcodes-tab.php:950
1555
  msgctxt "list_table_column"
1556
  msgid "Name"
1557
  msgstr ""
@@ -1596,16 +1621,16 @@ msgctxt "list_table_column"
1596
  msgid "Caption"
1597
  msgstr ""
1598
 
1599
- #: includes/class-mla-data-query.php:303 includes/class-mla-mime-types.php:599
1600
- #: includes/class-mla-mime-types.php:672 includes/class-mla-mime-types.php:751
1601
- #: includes/class-mla-settings-documentation-tab.php:493
1602
- #: includes/class-mla-settings-shortcodes-tab.php:953
1603
  msgctxt "list_table_column"
1604
  msgid "Description"
1605
  msgstr ""
1606
 
1607
- #: includes/class-mla-data-query.php:304 includes/class-mla-mime-types.php:591
1608
- #: includes/class-mla-mime-types.php:669
1609
  msgctxt "list_table_column"
1610
  msgid "MIME Type"
1611
  msgstr ""
@@ -1640,21 +1665,21 @@ msgctxt "list_table_column"
1640
  msgid "Attached to"
1641
  msgstr ""
1642
 
1643
- #: includes/class-mla-data-query.php:695 includes/class-mla-edit-media.php:318
1644
- #: includes/class-mla-main.php:1882 includes/class-mla-main.php:2006
1645
- #: includes/class-mla-media-modal.php:600 includes/class-mla-mime-types.php:789
1646
- #: includes/class-mla-mime-types.php:1438
1647
- #: includes/class-mla-mime-types.php:2626
1648
  #: includes/class-mla-settings-custom-fields-tab.php:552
1649
  #: includes/class-mla-settings-custom-fields-tab.php:718
1650
- #: includes/class-mla-settings-custom-fields-tab.php:2029
1651
- #: includes/class-mla-settings-documentation-tab.php:291
1652
- #: includes/class-mla-settings-documentation-tab.php:1260
1653
  #: includes/class-mla-settings-iptc-exif-tab.php:631
1654
  #: includes/class-mla-settings-iptc-exif-tab.php:799
1655
- #: includes/class-mla-settings-iptc-exif-tab.php:2259
1656
  #: includes/class-mla-settings-shortcodes-tab.php:503
1657
- #: includes/class-mla-settings-shortcodes-tab.php:1627
1658
  #: includes/class-mla-settings-upload-tab.php:301
1659
  #: includes/class-mla-settings-view-tab.php:166
1660
  #, php-format
@@ -1662,67 +1687,67 @@ msgctxt "error_log"
1662
  msgid "%1$s: %2$s non-array \"%3$s\""
1663
  msgstr ""
1664
 
1665
- #: includes/class-mla-data-query.php:1166
1666
  #, php-format
1667
  msgctxt "error_log"
1668
  msgid "%1$s: _execute_list_table_query $wp_filter = \"%2$s\"."
1669
  msgstr ""
1670
 
1671
- #: includes/class-mla-data-query.php:1166
1672
- #: includes/class-mla-data-query.php:1181
1673
- #: includes/class-mla-data-query.php:1183
1674
- #: includes/class-mla-data-query.php:1666
1675
- #: includes/class-mla-data-query.php:1738
1676
- #: includes/class-mla-data-query.php:1810
1677
- #: includes/class-mla-data-query.php:1907
1678
- #: includes/class-mla-data-query.php:1999
1679
- #: includes/class-mla-data-query.php:2018
1680
  msgid "DEBUG"
1681
  msgstr ""
1682
 
1683
- #: includes/class-mla-data-query.php:1181
1684
  #, php-format
1685
  msgctxt "error_log"
1686
  msgid "%1$s: _execute_list_table_query WP_Query = \"%2$s\"."
1687
  msgstr ""
1688
 
1689
- #: includes/class-mla-data-query.php:1183
1690
  #, php-format
1691
  msgctxt "error_log"
1692
  msgid "%1$s: _execute_list_table_query SQL_request = \"%2$s\"."
1693
  msgstr ""
1694
 
1695
- #: includes/class-mla-data-query.php:1666
1696
  #, php-format
1697
  msgctxt "error_log"
1698
  msgid "%1$s: mla_query_posts_search_filter = \"%2$s\"."
1699
  msgstr ""
1700
 
1701
- #: includes/class-mla-data-query.php:1738
1702
  #, php-format
1703
  msgctxt "error_log"
1704
  msgid "%1$s: mla_query_posts_where_filter = \"%2$s\"."
1705
  msgstr ""
1706
 
1707
- #: includes/class-mla-data-query.php:1810
1708
  #, php-format
1709
  msgctxt "error_log"
1710
  msgid "%1$s: mla_query_posts_join_filter = \"%2$s\"."
1711
  msgstr ""
1712
 
1713
- #: includes/class-mla-data-query.php:1907
1714
  #, php-format
1715
  msgctxt "error_log"
1716
  msgid "%1$s: mla_query_posts_orderby_filter = \"%2$s\"."
1717
  msgstr ""
1718
 
1719
- #: includes/class-mla-data-query.php:1999
1720
  #, php-format
1721
  msgctxt "error_log"
1722
  msgid "%1$s: mla_query_posts_clauses_filter = \"%2$s\"."
1723
  msgstr ""
1724
 
1725
- #: includes/class-mla-data-query.php:2018
1726
  #, php-format
1727
  msgctxt "error_log"
1728
  msgid "%1$s: mla_query_posts_clauses_request_filter = \"%2$s\"."
@@ -1730,8 +1755,8 @@ msgstr ""
1730
 
1731
  #: includes/class-mla-data-references.php:316
1732
  #: includes/class-mla-data-references.php:662
1733
- #: includes/class-mla-data-source.php:678
1734
- #: includes/class-mla-data-source.php:679
1735
  msgid "ORPHAN"
1736
  msgstr ""
1737
 
@@ -1829,26 +1854,26 @@ msgstr ""
1829
 
1830
  #: includes/class-mla-data.php:3434
1831
  #: includes/class-mla-settings-custom-fields-tab.php:810
1832
- #: includes/class-mla-settings-custom-fields-tab.php:1515
1833
  #: includes/class-mla-settings-iptc-exif-tab.php:893
1834
- #: includes/class-mla-settings-iptc-exif-tab.php:1621
1835
- #: includes/class-mla-settings-iptc-exif-tab.php:2433
1836
  #: includes/class-mla-settings-view-tab.php:398
1837
- #: includes/class-mla-settings-view-tab.php:799
1838
- #: includes/class-mla-settings-view-tab.php:815
1839
  #: includes/class-mla-wpml-support.php:1562
1840
  msgid "Yes"
1841
  msgstr ""
1842
 
1843
  #: includes/class-mla-data.php:3436
1844
  #: includes/class-mla-settings-custom-fields-tab.php:811
1845
- #: includes/class-mla-settings-custom-fields-tab.php:1517
1846
  #: includes/class-mla-settings-iptc-exif-tab.php:894
1847
- #: includes/class-mla-settings-iptc-exif-tab.php:1623
1848
- #: includes/class-mla-settings-iptc-exif-tab.php:2433
1849
  #: includes/class-mla-settings-view-tab.php:397
1850
- #: includes/class-mla-settings-view-tab.php:801
1851
- #: includes/class-mla-settings-view-tab.php:817
1852
  #: includes/class-mla-wpml-support.php:1563
1853
  msgid "No"
1854
  msgstr ""
@@ -1886,8 +1911,8 @@ msgstr ""
1886
  #: includes/class-mla-data.php:4072 includes/class-mla-data.php:4085
1887
  #: includes/class-mla-data.php:4094 includes/class-mla-data.php:4103
1888
  #: includes/class-mla-data.php:4112 includes/class-mla-data.php:4121
1889
- #: includes/class-mla-mime-types.php:1272
1890
- #: includes/class-mla-mime-types.php:2390
1891
  #, php-format
1892
  msgid "Changing %1$s from \"%2$s\" to \"%3$s\""
1893
  msgstr ""
@@ -1931,36 +1956,36 @@ msgstr ""
1931
  msgid "%1$s: Could not change ALT Text from \"%2$s\" to \"%3$s\""
1932
  msgstr ""
1933
 
1934
- #: includes/class-mla-data.php:4061 includes/class-mla-list-table.php:1044
1935
- #: includes/class-mla-list-table.php:1047
1936
  #: includes/class-mla-list-table.php:1050
1937
- #: includes/class-mla-list-table.php:1118 includes/class-mla-options.php:2083
 
1938
  #: includes/class-mla-settings-iptc-exif-tab.php:484
1939
  #: includes/class-mla-settings-iptc-exif-tab.php:863
1940
  msgid "Parent"
1941
  msgstr ""
1942
 
1943
- #: includes/class-mla-data.php:4072 includes/class-mla-edit-media.php:766
1944
- #: includes/class-mla-edit-media.php:971 includes/class-mla-main.php:2155
1945
  #: includes/class-mla-settings-view-tab.php:130
1946
  #: includes/class-mla-settings-view-tab.php:386
1947
  msgid "Menu Order"
1948
  msgstr ""
1949
 
1950
- #: includes/class-mla-data.php:4085 includes/class-mla-edit-media.php:397
1951
- #: includes/class-mla-list-table.php:1498
1952
- #: includes/class-mla-list-table.php:1501 includes/class-mla-main.php:2012
1953
- #: includes/class-mla-main.php:2114
1954
  msgid "Author"
1955
  msgstr ""
1956
 
1957
- #: includes/class-mla-data.php:4094 includes/class-mla-edit-media.php:422
1958
- #: includes/class-mla-main.php:2167
1959
  msgid "Comments"
1960
  msgstr ""
1961
 
1962
- #: includes/class-mla-data.php:4103 includes/class-mla-edit-media.php:423
1963
- #: includes/class-mla-main.php:2168
1964
  msgid "Pings"
1965
  msgstr ""
1966
 
@@ -1995,7 +2020,7 @@ msgstr ""
1995
  msgid "%1$s \"%2$s\" terms"
1996
  msgstr ""
1997
 
1998
- #: includes/class-mla-data.php:4240 includes/class-mla-main.php:1256
1999
  #, php-format
2000
  msgid "Item %1$d, no changes detected."
2001
  msgstr ""
@@ -2010,10 +2035,10 @@ msgstr ""
2010
  msgid "%1$s: Item %2$d update failed."
2011
  msgstr ""
2012
 
2013
- #: includes/class-mla-edit-media.php:133 includes/class-mla-edit-media.php:184
2014
- #: includes/class-mla-edit-media.php:237 includes/class-mla-main.php:439
2015
- #: includes/class-mla-main.php:1019 includes/class-mla-main.php:1766
2016
- #: includes/class-mla-media-modal.php:259 includes/class-mla-options.php:1586
2017
  #: includes/class-mla-polylang-support.php:367
2018
  #: includes/class-mla-settings-custom-fields-tab.php:59
2019
  #: includes/class-mla-settings-custom-fields-tab.php:94
@@ -2026,164 +2051,174 @@ msgctxt "tag_delimiter"
2026
  msgid ","
2027
  msgstr ""
2028
 
2029
- #: includes/class-mla-edit-media.php:179
2030
  msgid "Upload New Media items"
2031
  msgstr ""
2032
 
2033
- #: includes/class-mla-edit-media.php:180 includes/class-mla-edit-media.php:417
2034
  msgid "Open Bulk Edit area"
2035
  msgstr ""
2036
 
2037
- #: includes/class-mla-edit-media.php:181
2038
  msgid "Close Bulk Edit area"
2039
  msgstr ""
2040
 
2041
- #: includes/class-mla-edit-media.php:185 includes/class-mla-edit-media.php:239
2042
- #: includes/class-mla-main.php:426
2043
  msgid "An ajax.fail error has occurred. Please reload the page and try again."
2044
  msgstr ""
2045
 
2046
- #: includes/class-mla-edit-media.php:186 includes/class-mla-edit-media.php:240
2047
- #: includes/class-mla-main.php:427
2048
  msgid "An ajax.done error has occurred. Please reload the page and try again."
2049
  msgstr ""
2050
 
2051
- #: includes/class-mla-edit-media.php:241 includes/class-mla-main.php:1968
2052
  #, php-format
2053
  msgid "Uploaded on: %s"
2054
  msgstr ""
2055
 
2056
- #: includes/class-mla-edit-media.php:242 includes/class-mla-edit-media.php:639
2057
  msgid "Last modified"
2058
  msgstr ""
2059
 
2060
- #: includes/class-mla-edit-media.php:340 includes/class-mla-main.php:2047
2061
- msgid "more"
 
 
 
 
 
 
2062
  msgstr ""
2063
 
2064
- #: includes/class-mla-edit-media.php:341 includes/class-mla-main.php:2048
2065
- msgid "less"
 
2066
  msgstr ""
2067
 
2068
- #: includes/class-mla-edit-media.php:344 includes/class-mla-edit-media.php:375
2069
- #: includes/class-mla-main.php:2051 includes/class-mla-main.php:2089
 
2070
  msgid "Add"
2071
  msgstr ""
2072
 
2073
- #: includes/class-mla-edit-media.php:345 includes/class-mla-edit-media.php:376
2074
- #: includes/class-mla-main.php:2052 includes/class-mla-main.php:2090
 
2075
  msgid "Remove"
2076
  msgstr ""
2077
 
2078
- #: includes/class-mla-edit-media.php:346 includes/class-mla-edit-media.php:377
2079
- #: includes/class-mla-main.php:2053 includes/class-mla-main.php:2091
 
2080
  #: includes/class-mla-settings-custom-fields-tab.php:481
2081
  #: includes/class-mla-settings-custom-fields-tab.php:781
2082
- #: includes/class-mla-settings-custom-fields-tab.php:1501
2083
  #: includes/class-mla-settings-iptc-exif-tab.php:478
2084
  #: includes/class-mla-settings-iptc-exif-tab.php:860
2085
- #: includes/class-mla-settings-iptc-exif-tab.php:1562
2086
- #: includes/class-mla-settings-iptc-exif-tab.php:2414
2087
  msgid "Replace"
2088
  msgstr ""
2089
 
2090
- #: includes/class-mla-edit-media.php:416
2091
  msgid ""
2092
  "IMPORTANT: Make your entries BEFORE uploading new items. Pull down the Help "
2093
  "menu for more information."
2094
  msgstr ""
2095
 
2096
- #: includes/class-mla-edit-media.php:418 includes/class-mla-main.php:2161
2097
- #: includes/class-mla-settings.php:1402
2098
  msgid "Reset"
2099
  msgstr ""
2100
 
2101
- #: includes/class-mla-edit-media.php:424 includes/class-mla-main.php:2169
2102
- #: includes/class-mla-main.php:2225
2103
  #: includes/class-mla-settings-custom-fields-tab.php:809
2104
  #: includes/class-mla-settings-iptc-exif-tab.php:892
2105
  #: includes/class-mla-settings-upload-tab.php:122
2106
- #: includes/class-mla-settings-upload-tab.php:553
2107
  #: includes/class-mla-settings-view-tab.php:396
2108
  msgid "No Change"
2109
  msgstr ""
2110
 
2111
- #: includes/class-mla-edit-media.php:425 includes/class-mla-main.php:2170
2112
  msgid "Allow"
2113
  msgstr ""
2114
 
2115
- #: includes/class-mla-edit-media.php:426 includes/class-mla-main.php:2171
2116
  msgid "Do not allow"
2117
  msgstr ""
2118
 
2119
- #: includes/class-mla-edit-media.php:434 includes/class-mla-list-table.php:1044
2120
- #: includes/class-mla-list-table.php:1115 includes/class-mla-main.php:2153
2121
  msgid "Parent ID"
2122
  msgstr ""
2123
 
2124
- #: includes/class-mla-edit-media.php:435 includes/class-mla-edit-media.php:951
2125
- #: includes/class-mla-main.php:2154
2126
- #: includes/class-mla-settings-upload-tab.php:1469
2127
  msgid "Select"
2128
  msgstr ""
2129
 
2130
- #: includes/class-mla-edit-media.php:528
2131
  msgid "Custom field mapping updated."
2132
  msgstr ""
2133
 
2134
- #: includes/class-mla-edit-media.php:529
2135
  msgid "IPTC/EXIF mapping updated."
2136
  msgstr ""
2137
 
2138
- #: includes/class-mla-edit-media.php:530
2139
  msgid "Custom field mapping is disabled."
2140
  msgstr ""
2141
 
2142
- #: includes/class-mla-edit-media.php:531
2143
  msgid "IPTC/EXIF mapping is disabled."
2144
  msgstr ""
2145
 
2146
- #: includes/class-mla-edit-media.php:566 includes/class-mla-main.php:1952
2147
  msgid "Month"
2148
  msgstr ""
2149
 
2150
- #: includes/class-mla-edit-media.php:572 includes/class-mla-main.php:1958
2151
  #, php-format
2152
  msgid "%1$s-%2$s"
2153
  msgstr ""
2154
 
2155
- #: includes/class-mla-edit-media.php:576 includes/class-mla-main.php:1962
2156
  msgid "Day"
2157
  msgstr ""
2158
 
2159
- #: includes/class-mla-edit-media.php:577 includes/class-mla-main.php:1963
2160
  msgid "Year"
2161
  msgstr ""
2162
 
2163
- #: includes/class-mla-edit-media.php:578 includes/class-mla-main.php:1964
2164
  msgid "Hour"
2165
  msgstr ""
2166
 
2167
- #: includes/class-mla-edit-media.php:579 includes/class-mla-main.php:1965
2168
  msgid "Minute"
2169
  msgstr ""
2170
 
2171
- #: includes/class-mla-edit-media.php:583 includes/class-mla-main.php:1970
2172
  #, php-format
2173
  msgid "%1$s %2$s, %3$s @ %4$s:%5$s"
2174
  msgstr ""
2175
 
2176
- #: includes/class-mla-edit-media.php:606
2177
  msgid "OK"
2178
  msgstr ""
2179
 
2180
- #: includes/class-mla-edit-media.php:607 includes/class-mla-main.php:1905
2181
- #: includes/class-mla-main.php:2160
2182
  #: includes/class-mla-polylang-support.php:2054
2183
  #: includes/class-mla-settings-custom-fields-tab.php:509
2184
  #: includes/class-mla-settings-custom-fields-tab.php:730
2185
  #: includes/class-mla-settings-custom-fields-tab.php:812
2186
- #: includes/class-mla-settings-documentation-tab.php:167
2187
  #: includes/class-mla-settings-iptc-exif-tab.php:517
2188
  #: includes/class-mla-settings-iptc-exif-tab.php:811
2189
  #: includes/class-mla-settings-iptc-exif-tab.php:895
@@ -2191,84 +2226,84 @@ msgstr ""
2191
  #: includes/class-mla-settings-shortcodes-tab.php:476
2192
  #: includes/class-mla-settings-upload-tab.php:177
2193
  #: includes/class-mla-settings-upload-tab.php:251
2194
- #: includes/class-mla-settings-upload-tab.php:549
2195
  #: includes/class-mla-settings-view-tab.php:135
2196
  #: includes/class-mla-settings-view-tab.php:393
2197
  #: includes/class-mla-thumbnail-generation.php:651
2198
  msgid "Cancel"
2199
  msgstr ""
2200
 
2201
- #: includes/class-mla-edit-media.php:623
2202
  msgid "M j, Y @ H:i"
2203
  msgstr ""
2204
 
2205
- #: includes/class-mla-edit-media.php:629 includes/class-mla-list-table.php:616
2206
- #: includes/class-mla-list-table.php:744 includes/class-mla-list-table.php:999
2207
- #: includes/class-mla-list-table.php:1170
2208
- #: includes/class-mla-list-table.php:1219
2209
- #: includes/class-mla-list-table.php:1265
2210
- #: includes/class-mla-list-table.php:1310
2211
- #: includes/class-mla-list-table.php:1532
2212
- #: includes/class-mla-list-table.php:1858
2213
  #: includes/class-mla-polylang-support.php:366
2214
- #: includes/class-mla-settings-custom-fields-tab.php:1344
2215
- #: includes/class-mla-settings-custom-fields-tab.php:1683
2216
- #: includes/class-mla-settings-iptc-exif-tab.php:1422
2217
- #: includes/class-mla-settings-iptc-exif-tab.php:1789
2218
- #: includes/class-mla-settings-shortcodes-tab.php:1071
2219
- #: includes/class-mla-settings-upload-tab.php:923
2220
- #: includes/class-mla-settings-upload-tab.php:1212
2221
- #: includes/class-mla-settings-view-tab.php:720
2222
- #: includes/class-mla-settings-view-tab.php:922
2223
  msgid "Edit"
2224
  msgstr ""
2225
 
2226
- #: includes/class-mla-edit-media.php:630
2227
  msgid "Edit upload date and time"
2228
  msgstr ""
2229
 
2230
- #: includes/class-mla-edit-media.php:632
2231
  msgid "Upload Date and time"
2232
  msgstr ""
2233
 
2234
- #: includes/class-mla-edit-media.php:662
2235
  msgid "Map Custom Field metadata for this item"
2236
  msgstr ""
2237
 
2238
- #: includes/class-mla-edit-media.php:662 includes/class-mla-main.php:1683
2239
- #: includes/class-mla-main.php:2176
2240
  msgid "Map Custom Field metadata"
2241
  msgstr ""
2242
 
2243
- #: includes/class-mla-edit-media.php:666
2244
  msgid "Map IPTC/EXIF metadata for this item"
2245
  msgstr ""
2246
 
2247
- #: includes/class-mla-edit-media.php:666 includes/class-mla-main.php:1686
2248
- #: includes/class-mla-main.php:2174
2249
  msgid "Map IPTC/EXIF metadata"
2250
  msgstr ""
2251
 
2252
- #: includes/class-mla-edit-media.php:762 includes/class-mla-edit-media.php:952
2253
  msgid "Parent Info"
2254
  msgstr ""
2255
 
2256
- #: includes/class-mla-edit-media.php:772 includes/class-mla-edit-media.php:995
2257
  msgid "Attachment Metadata"
2258
  msgstr ""
2259
 
2260
- #: includes/class-mla-edit-media.php:842 includes/class-mla-edit-media.php:884
2261
- #: includes/class-mla-main.php:651 includes/class-mla-settings.php:589
2262
  #, php-format
2263
  msgctxt "error_log"
2264
  msgid "%1$s: %2$s discarding \"%3$s\"; no title/order"
2265
  msgstr ""
2266
 
2267
- #: includes/class-mla-edit-media.php:950
2268
  msgid "Post Parent"
2269
  msgstr ""
2270
 
2271
- #: includes/class-mla-edit-media.php:951 includes/class-mla-main.php:1887
2272
  msgid "Select Parent"
2273
  msgstr ""
2274
 
@@ -2281,195 +2316,195 @@ msgctxt "show_option_none"
2281
  msgid "No"
2282
  msgstr ""
2283
 
2284
- #: includes/class-mla-list-table.php:429
2285
  #: includes/class-mla-settings-custom-fields-tab.php:997
2286
  #: includes/class-mla-settings-iptc-exif-tab.php:1069
2287
- #: includes/class-mla-settings-upload-tab.php:647
2288
  #: includes/class-mla-settings-view-tab.php:490
2289
  msgid "List View"
2290
  msgstr ""
2291
 
2292
- #: includes/class-mla-list-table.php:496 includes/class-mla-list-table.php:548
2293
- #: includes/class-mla-list-table.php:1044
2294
- #: includes/class-mla-list-table.php:1115
2295
- #: includes/class-mla-list-table.php:1338
2296
- #: includes/class-mla-list-table.php:1382
2297
- #: includes/class-mla-list-table.php:1414
2298
- #: includes/class-mla-list-table.php:1498
2299
  msgid "Filter by"
2300
  msgstr ""
2301
 
2302
- #: includes/class-mla-list-table.php:506
2303
  #: includes/class-mla-media-modal-ajax.php:490
2304
  msgid "Not Supported"
2305
  msgstr ""
2306
 
2307
- #: includes/class-mla-list-table.php:568
2308
- #: includes/class-mla-settings-custom-fields-tab.php:1291
2309
- #: includes/class-mla-settings-documentation-tab.php:575
2310
- #: includes/class-mla-settings-iptc-exif-tab.php:1369
2311
- #: includes/class-mla-settings-shortcodes-tab.php:1023
2312
- #: includes/class-mla-settings-upload-tab.php:858
2313
- #: includes/class-mla-settings-upload-tab.php:1416
2314
  #: includes/class-mla-settings-view-tab.php:654
2315
  #, php-format
2316
  msgid "column_default: %1$s, %2$s"
2317
  msgstr ""
2318
 
2319
- #: includes/class-mla-list-table.php:731
2320
  msgid "Restore this item from the Trash"
2321
  msgstr ""
2322
 
2323
- #: includes/class-mla-list-table.php:731 includes/class-mla-list-table.php:1855
2324
  msgid "Restore"
2325
  msgstr ""
2326
 
2327
- #: includes/class-mla-list-table.php:744
2328
- #: includes/class-mla-settings-custom-fields-tab.php:1344
2329
- #: includes/class-mla-settings-iptc-exif-tab.php:1422
2330
- #: includes/class-mla-settings-shortcodes-tab.php:1071
2331
- #: includes/class-mla-settings-upload-tab.php:923
2332
- #: includes/class-mla-settings-view-tab.php:720
2333
  msgid "Edit this item"
2334
  msgstr ""
2335
 
2336
- #: includes/class-mla-list-table.php:745
2337
- #: includes/class-mla-settings-custom-fields-tab.php:1347
2338
- #: includes/class-mla-settings-iptc-exif-tab.php:1425
2339
- #: includes/class-mla-settings-upload-tab.php:925
2340
- #: includes/class-mla-settings-view-tab.php:722
2341
  msgid "Edit this item inline"
2342
  msgstr ""
2343
 
2344
- #: includes/class-mla-list-table.php:745 includes/class-mla-main.php:2144
2345
- #: includes/class-mla-options.php:1183
2346
  #: includes/class-mla-settings-custom-fields-tab.php:472
2347
  #: includes/class-mla-settings-custom-fields-tab.php:772
2348
- #: includes/class-mla-settings-custom-fields-tab.php:1347
2349
- #: includes/class-mla-settings-custom-fields-tab.php:1457
2350
  #: includes/class-mla-settings-iptc-exif-tab.php:839
2351
- #: includes/class-mla-settings-iptc-exif-tab.php:1425
2352
- #: includes/class-mla-settings-upload-tab.php:925
2353
- #: includes/class-mla-settings-view-tab.php:722
2354
  msgid "Quick Edit"
2355
  msgstr ""
2356
 
2357
- #: includes/class-mla-list-table.php:751
2358
  msgid "Move this item to the Trash"
2359
  msgstr ""
2360
 
2361
- #: includes/class-mla-list-table.php:751 includes/class-mla-list-table.php:1861
2362
  msgid "Move to Trash"
2363
  msgstr ""
2364
 
2365
- #: includes/class-mla-list-table.php:756
2366
- #: includes/class-mla-settings-custom-fields-tab.php:1355
2367
- #: includes/class-mla-settings-iptc-exif-tab.php:1435
2368
- #: includes/class-mla-settings-shortcodes-tab.php:1077
2369
- #: includes/class-mla-settings-upload-tab.php:929
2370
- #: includes/class-mla-settings-view-tab.php:728
2371
  msgid "Delete this item Permanently"
2372
  msgstr ""
2373
 
2374
- #: includes/class-mla-list-table.php:756 includes/class-mla-list-table.php:1856
2375
- #: includes/class-mla-list-table.php:1863
2376
- #: includes/class-mla-settings-custom-fields-tab.php:1355
2377
- #: includes/class-mla-settings-custom-fields-tab.php:1684
2378
- #: includes/class-mla-settings-iptc-exif-tab.php:1435
2379
- #: includes/class-mla-settings-iptc-exif-tab.php:1790
2380
- #: includes/class-mla-settings-shortcodes-tab.php:1077
2381
- #: includes/class-mla-settings-upload-tab.php:929
2382
- #: includes/class-mla-settings-view-tab.php:728
2383
- #: includes/class-mla-settings-view-tab.php:923
2384
  msgid "Delete Permanently"
2385
  msgstr ""
2386
 
2387
- #: includes/class-mla-list-table.php:764
2388
- #: includes/class-mla-settings-documentation-tab.php:645
2389
- #: includes/class-mla-settings.php:1392
2390
  msgid "Download"
2391
  msgstr ""
2392
 
2393
- #: includes/class-mla-list-table.php:766
2394
- #: includes/class-mla-settings-documentation-tab.php:648
2395
- #: includes/class-mla-settings-shortcodes-tab.php:1069
2396
  #: includes/class-mla-settings-view-tab.php:374
2397
  msgid "View"
2398
  msgstr ""
2399
 
2400
- #: includes/class-mla-list-table.php:1015
2401
  msgid "File name"
2402
  msgstr ""
2403
 
2404
- #: includes/class-mla-list-table.php:1112
2405
  msgid "(no title: bad ID)"
2406
  msgstr ""
2407
 
2408
- #: includes/class-mla-list-table.php:1385
2409
  #: includes/class-mla-settings-upload-tab.php:167
2410
- #: includes/class-mla-settings-upload-tab.php:536
2411
  msgid "MIME Type"
2412
  msgstr ""
2413
 
2414
- #: includes/class-mla-list-table.php:1418
2415
  msgid "Base File"
2416
  msgstr ""
2417
 
2418
- #: includes/class-mla-list-table.php:1434
2419
- #: includes/class-mla-list-table.php:1467
2420
  msgid "Unpublished"
2421
  msgstr ""
2422
 
2423
- #: includes/class-mla-list-table.php:1443
2424
- #: includes/class-mla-list-table.php:1474
2425
  #, php-format
2426
  msgid "%1$s from now"
2427
  msgstr ""
2428
 
2429
- #: includes/class-mla-list-table.php:1446
2430
- #: includes/class-mla-list-table.php:1476
2431
  #, php-format
2432
  msgid "%1$s ago"
2433
  msgstr ""
2434
 
2435
- #: includes/class-mla-list-table.php:1560
2436
  msgid "Set Parent"
2437
  msgstr ""
2438
 
2439
- #: includes/class-mla-list-table.php:1710
2440
  msgctxt "uploaded files"
2441
  msgid "All"
2442
  msgid_plural "All"
2443
  msgstr[0] ""
2444
  msgstr[1] ""
2445
 
2446
- #: includes/class-mla-list-table.php:1955
2447
- #: includes/class-mla-settings-custom-fields-tab.php:1749
2448
- #: includes/class-mla-settings-iptc-exif-tab.php:1855
2449
- #: includes/class-mla-settings-shortcodes-tab.php:1345
2450
  msgid "Filter"
2451
  msgstr ""
2452
 
2453
- #: includes/class-mla-list-table.php:1958
2454
  #: includes/mla-media-modal-js-template.php:72
2455
  msgid "Terms Search"
2456
  msgstr ""
2457
 
2458
- #: includes/class-mla-list-table.php:1963
2459
  #: includes/class-mla-polylang-support.php:2061
2460
  #: includes/class-mla-thumbnail-generation.php:650
2461
  msgid "Clear Filter-by"
2462
  msgstr ""
2463
 
2464
- #: includes/class-mla-list-table.php:1966
2465
  msgid "Empty Trash"
2466
  msgstr ""
2467
 
2468
- #: includes/class-mla-main.php:428
2469
  msgid "Error while saving the changes."
2470
  msgstr ""
2471
 
2472
- #: includes/class-mla-main.php:429
2473
  #: includes/class-mla-settings-custom-fields-tab.php:57
2474
  #: includes/class-mla-settings-custom-fields-tab.php:92
2475
  #: includes/class-mla-settings-iptc-exif-tab.php:57
@@ -2479,97 +2514,97 @@ msgstr ""
2479
  msgid "Remove From Bulk Edit"
2480
  msgstr ""
2481
 
2482
- #: includes/class-mla-main.php:431
2483
  msgid "Bulk Edit items"
2484
  msgstr ""
2485
 
2486
- #: includes/class-mla-main.php:432 includes/class-mla-main.php:2177
2487
  #: includes/class-mla-settings-custom-fields-tab.php:63
2488
  #: includes/class-mla-settings-iptc-exif-tab.php:63
2489
  msgid "Waiting"
2490
  msgstr ""
2491
 
2492
- #: includes/class-mla-main.php:433 includes/class-mla-main.php:2179
2493
  #: includes/class-mla-settings-custom-fields-tab.php:65
2494
  #: includes/class-mla-settings-iptc-exif-tab.php:65
2495
  msgid "Complete"
2496
  msgstr ""
2497
 
2498
- #: includes/class-mla-main.php:434
2499
  #: includes/class-mla-settings-custom-fields-tab.php:66
2500
  #: includes/class-mla-settings-iptc-exif-tab.php:66
2501
  msgid "Unchanged"
2502
  msgstr ""
2503
 
2504
- #: includes/class-mla-main.php:435
2505
  #: includes/class-mla-settings-custom-fields-tab.php:67
2506
  #: includes/class-mla-settings-iptc-exif-tab.php:67
2507
  msgid "Succeeded"
2508
  msgstr ""
2509
 
2510
- #: includes/class-mla-main.php:436
2511
  #: includes/class-mla-settings-custom-fields-tab.php:68
2512
  #: includes/class-mla-settings-iptc-exif-tab.php:68
2513
  msgid "Failed"
2514
  msgstr ""
2515
 
2516
- #: includes/class-mla-main.php:437
2517
  msgid "CANCELED"
2518
  msgstr ""
2519
 
2520
- #: includes/class-mla-main.php:548
2521
  #, php-format
2522
  msgid "Item permanently deleted."
2523
  msgid_plural "%d items permanently deleted."
2524
  msgstr[0] ""
2525
  msgstr[1] ""
2526
 
2527
- #: includes/class-mla-main.php:553 includes/class-mla-main.php:2364
2528
  #, php-format
2529
  msgid "Item %1$d moved to Trash."
2530
  msgstr ""
2531
 
2532
- #: includes/class-mla-main.php:783
2533
  msgid "download path out of bounds."
2534
  msgstr ""
2535
 
2536
- #: includes/class-mla-main.php:785
2537
  msgid "download path invalid."
2538
  msgstr ""
2539
 
2540
- #: includes/class-mla-main.php:788
2541
  msgid "download argument(s) not set."
2542
  msgstr ""
2543
 
2544
- #: includes/class-mla-main.php:1190
2545
  msgid "You are not allowed to edit Attachment: "
2546
  msgstr ""
2547
 
2548
- #: includes/class-mla-main.php:1246
2549
  #, php-format
2550
  msgid "%1$s: Unknown bulk action %2$s"
2551
  msgstr ""
2552
 
2553
- #: includes/class-mla-main.php:1268
2554
  msgid "no changes detected"
2555
  msgstr ""
2556
 
2557
- #: includes/class-mla-main.php:1315
2558
  #: includes/class-mla-settings-custom-fields-tab.php:607
2559
- #: includes/class-mla-settings-documentation-tab.php:243
2560
  #: includes/class-mla-settings-iptc-exif-tab.php:686
2561
  #: includes/class-mla-settings-shortcodes-tab.php:564
2562
- #: includes/class-mla-settings-upload-tab.php:411
2563
  #: includes/class-mla-settings-view-tab.php:254
2564
  #, php-format
2565
  msgid "Bulk Action %1$s - no items selected."
2566
  msgstr ""
2567
 
2568
- #: includes/class-mla-main.php:1403
2569
  msgid "You do not have permission to manage attachments."
2570
  msgstr ""
2571
 
2572
- #: includes/class-mla-main.php:1461
2573
  #, php-format
2574
  msgctxt "deleted items"
2575
  msgid "%s item deleted."
@@ -2577,113 +2612,113 @@ msgid_plural "%s items deleted."
2577
  msgstr[0] ""
2578
  msgstr[1] ""
2579
 
2580
- #: includes/class-mla-main.php:1463
2581
  msgid "No items deleted."
2582
  msgstr ""
2583
 
2584
- #: includes/class-mla-main.php:1515
2585
  msgid "Empty Terms Search; ignored"
2586
  msgstr ""
2587
 
2588
- #: includes/class-mla-main.php:1527
2589
  #: includes/class-mla-settings-custom-fields-tab.php:634
2590
- #: includes/class-mla-settings-documentation-tab.php:275
2591
  #: includes/class-mla-settings-iptc-exif-tab.php:715
2592
  #: includes/class-mla-settings-shortcodes-tab.php:593
2593
- #: includes/class-mla-settings-upload-tab.php:450
2594
  #: includes/class-mla-settings-view-tab.php:291
2595
  #, php-format
2596
  msgid "Unknown mla_admin_action - \"%1$s\""
2597
  msgstr ""
2598
 
2599
- #: includes/class-mla-main.php:1565
2600
  msgid "term search results for"
2601
  msgstr ""
2602
 
2603
- #: includes/class-mla-main.php:1568
2604
  msgid "post/parent results for"
2605
  msgstr ""
2606
 
2607
- #: includes/class-mla-main.php:1570
2608
  msgid "search results for"
2609
  msgstr ""
2610
 
2611
- #: includes/class-mla-main.php:1689 includes/class-mla-main.php:1909
2612
- #: includes/class-mla-main.php:2162
2613
  #: includes/class-mla-settings-custom-fields-tab.php:511
2614
  #: includes/class-mla-settings-custom-fields-tab.php:813
2615
- #: includes/class-mla-settings-documentation-tab.php:635
2616
- #: includes/class-mla-settings-documentation-tab.php:843
2617
  #: includes/class-mla-settings-iptc-exif-tab.php:519
2618
  #: includes/class-mla-settings-iptc-exif-tab.php:896
2619
  #: includes/class-mla-settings-shortcodes-tab.php:479
2620
  #: includes/class-mla-settings-upload-tab.php:176
2621
- #: includes/class-mla-settings-upload-tab.php:550
2622
  #: includes/class-mla-settings-view-tab.php:134
2623
  #: includes/class-mla-settings-view-tab.php:394
2624
  msgid "Update"
2625
  msgstr ""
2626
 
2627
- #: includes/class-mla-main.php:1844
2628
  msgid "All Post Types"
2629
  msgstr ""
2630
 
2631
- #: includes/class-mla-main.php:1890
2632
  msgid "For"
2633
  msgstr ""
2634
 
2635
- #: includes/class-mla-main.php:1900
2636
- #: includes/class-mla-shortcode-support.php:1036
2637
  msgid "Unattached"
2638
  msgstr ""
2639
 
2640
- #: includes/class-mla-main.php:2163 includes/class-mla-options.php:1197
2641
  #: includes/class-mla-settings-custom-fields-tab.php:475
2642
  #: includes/class-mla-settings-custom-fields-tab.php:775
2643
- #: includes/class-mla-settings-custom-fields-tab.php:1461
2644
  #: includes/class-mla-settings-iptc-exif-tab.php:840
2645
- #: includes/class-mla-settings-upload-tab.php:551
2646
  #: includes/class-mla-settings-view-tab.php:395
2647
  msgid "Bulk Edit"
2648
  msgstr ""
2649
 
2650
- #: includes/class-mla-main.php:2178
2651
  msgid "In-process"
2652
  msgstr ""
2653
 
2654
- #: includes/class-mla-main.php:2277
2655
  msgid "You are not allowed to delete this item."
2656
  msgstr ""
2657
 
2658
- #: includes/class-mla-main.php:2285
2659
  #, php-format
2660
  msgid "%1$s: Item %2$d could NOT be deleted."
2661
  msgstr ""
2662
 
2663
- #: includes/class-mla-main.php:2292
2664
  #, php-format
2665
  msgid "Item %1$d permanently deleted."
2666
  msgstr ""
2667
 
2668
- #: includes/class-mla-main.php:2309
2669
  msgid "You are not allowed to move this item out of the Trash."
2670
  msgstr ""
2671
 
2672
- #: includes/class-mla-main.php:2317
2673
  #, php-format
2674
  msgid "%1$s: Item %2$d could NOT be restored from Trash."
2675
  msgstr ""
2676
 
2677
- #: includes/class-mla-main.php:2332
2678
  #, php-format
2679
  msgid "Item %1$d restored from Trash."
2680
  msgstr ""
2681
 
2682
- #: includes/class-mla-main.php:2349
2683
  msgid "You are not allowed to move this item to the Trash."
2684
  msgstr ""
2685
 
2686
- #: includes/class-mla-main.php:2357
2687
  #, php-format
2688
  msgid "%1$s: Item %2$d could NOT be moved to Trash."
2689
  msgstr ""
@@ -2702,7 +2737,7 @@ msgstr ""
2702
 
2703
  #: includes/class-mla-media-modal-ajax.php:452
2704
  #: includes/class-mla-objects.php:50 includes/class-mla-objects.php:83
2705
- #: includes/class-mla-settings-upload-tab.php:532
2706
  #: includes/class-mla-settings-view-tab.php:374
2707
  #, php-format
2708
  msgid "Add New %1$s"
@@ -2758,284 +2793,284 @@ msgstr ""
2758
  msgid "Exact"
2759
  msgstr ""
2760
 
2761
- #: includes/class-mla-mime-types.php:433
2762
  msgctxt "post_mime_types"
2763
  msgid "Manage"
2764
  msgstr ""
2765
 
2766
- #: includes/class-mla-mime-types.php:590 includes/class-mla-mime-types.php:668
2767
  msgctxt "list_table_column"
2768
  msgid "Extension"
2769
  msgstr ""
2770
 
2771
- #: includes/class-mla-mime-types.php:592
2772
  msgctxt "list_table_column"
2773
  msgid "Icon Type"
2774
  msgstr ""
2775
 
2776
- #: includes/class-mla-mime-types.php:593
2777
- #: includes/class-mla-settings-custom-fields-tab.php:1204
2778
  msgctxt "list_table_column"
2779
  msgid "Source"
2780
  msgstr ""
2781
 
2782
- #: includes/class-mla-mime-types.php:594
2783
- #: includes/class-mla-settings-custom-fields-tab.php:1207
2784
- #: includes/class-mla-settings-iptc-exif-tab.php:1284
2785
  msgctxt "list_table_column"
2786
  msgid "Status"
2787
  msgstr ""
2788
 
2789
- #: includes/class-mla-mime-types.php:595 includes/class-mla-mime-types.php:670
2790
  msgctxt "list_table_column"
2791
  msgid "WordPress Type"
2792
  msgstr ""
2793
 
2794
- #: includes/class-mla-mime-types.php:596 includes/class-mla-mime-types.php:671
2795
  msgctxt "list_table_column"
2796
  msgid "MLA Type"
2797
  msgstr ""
2798
 
2799
- #: includes/class-mla-mime-types.php:597
2800
  msgctxt "list_table_column"
2801
  msgid "Std. Source"
2802
  msgstr ""
2803
 
2804
- #: includes/class-mla-mime-types.php:598
2805
  msgctxt "list_table_column"
2806
  msgid "Std. Icon Type"
2807
  msgstr ""
2808
 
2809
- #: includes/class-mla-mime-types.php:744
2810
  msgctxt "list_table_column"
2811
  msgid "Slug"
2812
  msgstr ""
2813
 
2814
- #: includes/class-mla-mime-types.php:745
2815
  msgctxt "list_table_column"
2816
  msgid "Specification"
2817
  msgstr ""
2818
 
2819
- #: includes/class-mla-mime-types.php:746
2820
  msgctxt "list_table_column"
2821
  msgid "Post Mime"
2822
  msgstr ""
2823
 
2824
- #: includes/class-mla-mime-types.php:747
2825
  msgctxt "list_table_column"
2826
  msgid "Table View"
2827
  msgstr ""
2828
 
2829
- #: includes/class-mla-mime-types.php:748
2830
  msgctxt "list_table_column"
2831
  msgid "Singular Name"
2832
  msgstr ""
2833
 
2834
- #: includes/class-mla-mime-types.php:749
2835
  msgctxt "list_table_column"
2836
  msgid "Plural Name"
2837
  msgstr ""
2838
 
2839
- #: includes/class-mla-mime-types.php:750
2840
  msgctxt "list_table_column"
2841
  msgid "Order"
2842
  msgstr ""
2843
 
2844
- #: includes/class-mla-mime-types.php:1066
2845
  msgctxt "post_mime_types_description"
2846
  msgid "Copied from previous filter/plugin"
2847
  msgstr ""
2848
 
2849
- #: includes/class-mla-mime-types.php:1167
2850
- #: includes/class-mla-mime-types.php:1284
2851
  msgid "Ignoring specification for Post MIME Type; using slug"
2852
  msgstr ""
2853
 
2854
- #: includes/class-mla-mime-types.php:1173
2855
- #: includes/class-mla-mime-types.php:2253
2856
  #, php-format
2857
  msgid "<br>Changing %1$s \"%2$s\" to valid value \"%3$s\""
2858
  msgstr ""
2859
 
2860
- #: includes/class-mla-mime-types.php:1173
2861
- #: includes/class-mla-mime-types.php:1261
2862
- #: includes/class-mla-mime-types.php:1272
2863
  #: includes/class-mla-settings-view-tab.php:119
2864
  #: includes/class-mla-settings-view-tab.php:375
2865
  msgid "Slug"
2866
  msgstr ""
2867
 
2868
- #: includes/class-mla-mime-types.php:1181
2869
- #: includes/class-mla-mime-types.php:1269
2870
  #, php-format
2871
  msgid "%1$s: Could not add Slug \"%2$s\"; value already exists"
2872
  msgstr ""
2873
 
2874
- #: includes/class-mla-mime-types.php:1216
2875
  #, php-format
2876
  msgid "Edit view \"%1$s\"; added"
2877
  msgstr ""
2878
 
2879
- #: includes/class-mla-mime-types.php:1261
2880
- #: includes/class-mla-mime-types.php:2379
2881
  #, php-format
2882
  msgid "<br>Changing new %1$s \"%2$s\" to valid value \"%3$s\""
2883
  msgstr ""
2884
 
2885
- #: includes/class-mla-mime-types.php:1314
2886
  #, php-format
2887
  msgid "Edit view \"%1$s\"; no changes detected"
2888
  msgstr ""
2889
 
2890
- #: includes/class-mla-mime-types.php:1328
2891
  #, php-format
2892
  msgid "Edit view \"%1$s\"; updated"
2893
  msgstr ""
2894
 
2895
- #: includes/class-mla-mime-types.php:1401
2896
  #, php-format
2897
  msgid "View \"%1$s\" reverted to standard"
2898
  msgstr ""
2899
 
2900
- #: includes/class-mla-mime-types.php:1407
2901
  #, php-format
2902
  msgid "View \"%1$s\" deleted"
2903
  msgstr ""
2904
 
2905
- #: includes/class-mla-mime-types.php:1415
2906
  #, php-format
2907
  msgid "%1$s: Did not find view \"%2$s\""
2908
  msgstr ""
2909
 
2910
- #: includes/class-mla-mime-types.php:1674
2911
- #: includes/class-mla-settings-documentation-tab.php:1543
2912
  msgctxt "table_view_singular"
2913
  msgid "Active"
2914
  msgstr ""
2915
 
2916
- #: includes/class-mla-mime-types.php:1675
2917
- #: includes/class-mla-settings-documentation-tab.php:1544
2918
  msgctxt "table_view_plural"
2919
  msgid "Active"
2920
  msgstr ""
2921
 
2922
- #: includes/class-mla-mime-types.php:1678
2923
- #: includes/class-mla-settings-documentation-tab.php:1547
2924
  msgctxt "table_view_singular"
2925
  msgid "Inactive"
2926
  msgstr ""
2927
 
2928
- #: includes/class-mla-mime-types.php:1679
2929
- #: includes/class-mla-settings-documentation-tab.php:1548
2930
  msgctxt "table_view_plural"
2931
  msgid "Inactive"
2932
  msgstr ""
2933
 
2934
- #: includes/class-mla-mime-types.php:1682
2935
  msgctxt "table_view_singular"
2936
  msgid "WordPress"
2937
  msgstr ""
2938
 
2939
- #: includes/class-mla-mime-types.php:1683
2940
  msgctxt "table_view_plural"
2941
  msgid "WordPress"
2942
  msgstr ""
2943
 
2944
- #: includes/class-mla-mime-types.php:1686
2945
  msgctxt "table_view_singular"
2946
  msgid "MLA"
2947
  msgstr ""
2948
 
2949
- #: includes/class-mla-mime-types.php:1687
2950
  msgctxt "table_view_plural"
2951
  msgid "MLA"
2952
  msgstr ""
2953
 
2954
- #: includes/class-mla-mime-types.php:1690
2955
- #: includes/class-mla-settings-iptc-exif-tab.php:2734
2956
  msgctxt "table_view_singular"
2957
  msgid "Custom"
2958
  msgstr ""
2959
 
2960
- #: includes/class-mla-mime-types.php:1691
2961
- #: includes/class-mla-settings-iptc-exif-tab.php:2735
2962
  msgctxt "table_view_plural"
2963
  msgid "Custom"
2964
  msgstr ""
2965
 
2966
- #: includes/class-mla-mime-types.php:1946
2967
  msgid "icon"
2968
  msgstr ""
2969
 
2970
- #: includes/class-mla-mime-types.php:2237
2971
- #: includes/class-mla-mime-types.php:2336
2972
  msgid "Cannot load Upload MIME Types"
2973
  msgstr ""
2974
 
2975
- #: includes/class-mla-mime-types.php:2248
2976
  msgid "Extension is required"
2977
  msgstr ""
2978
 
2979
- #: includes/class-mla-mime-types.php:2253
2980
- #: includes/class-mla-mime-types.php:2379
2981
- #: includes/class-mla-mime-types.php:2390
2982
  #: includes/class-mla-settings-upload-tab.php:165
2983
- #: includes/class-mla-settings-upload-tab.php:534
2984
  msgid "Extension"
2985
  msgstr ""
2986
 
2987
- #: includes/class-mla-mime-types.php:2261
2988
  #, php-format
2989
  msgid "%1$s: Could not add extension \"%2$s\"; value already exists"
2990
  msgstr ""
2991
 
2992
- #: includes/class-mla-mime-types.php:2269
2993
  msgid "MIME type is required"
2994
  msgstr ""
2995
 
2996
- #: includes/class-mla-mime-types.php:2274
2997
- #: includes/class-mla-mime-types.php:2421
2998
  #, php-format
2999
  msgid "%1$s: Bad MIME type; try \"%2$s\""
3000
  msgstr ""
3001
 
3002
- #: includes/class-mla-mime-types.php:2311
3003
  #, php-format
3004
  msgid "Upload MIME Type \"%1$s\"; added"
3005
  msgstr ""
3006
 
3007
- #: includes/class-mla-mime-types.php:2317
3008
- #: includes/class-mla-mime-types.php:2506
3009
- #: includes/class-mla-mime-types.php:2585
3010
  msgid "Cannot update Upload MIME Types"
3011
  msgstr ""
3012
 
3013
- #: includes/class-mla-mime-types.php:2387
3014
  #, php-format
3015
  msgid "%1$s: Could not add new extension \"%2$s\"; value already exists"
3016
  msgstr ""
3017
 
3018
- #: includes/class-mla-mime-types.php:2486
3019
  #, php-format
3020
  msgid "Edit type \"%1$s\"; no changes detected"
3021
  msgstr ""
3022
 
3023
- #: includes/class-mla-mime-types.php:2500
3024
  #, php-format
3025
  msgid "Edit type \"%1$s\"; updated"
3026
  msgstr ""
3027
 
3028
- #: includes/class-mla-mime-types.php:2573
3029
  #, php-format
3030
  msgid "Upload MIME Type \"%1$s\"; reverted to standard"
3031
  msgstr ""
3032
 
3033
- #: includes/class-mla-mime-types.php:2579
3034
  #, php-format
3035
  msgid "Upload MIME Type \"%1$s\"; deleted"
3036
  msgstr ""
3037
 
3038
- #: includes/class-mla-mime-types.php:2594
3039
  #, php-format
3040
  msgid "%1$s: Did not find Upload type \"%2$s\""
3041
  msgstr ""
@@ -3155,8 +3190,8 @@ msgstr ""
3155
  msgid "tpls/mla-option-templates.tpl not found"
3156
  msgstr ""
3157
 
3158
- #: includes/class-mla-options.php:217 includes/class-mla-options.php:421
3159
- #: includes/class-mla-options.php:502 includes/class-mla-options.php:557
3160
  #, php-format
3161
  msgid "%1$s: Custom %2$s unknown action \"%3$s\""
3162
  msgstr ""
@@ -3186,63 +3221,72 @@ msgid "Checked On Top"
3186
  msgstr ""
3187
 
3188
  #: includes/class-mla-options.php:336
3189
- msgid "List Filter"
3190
  msgstr ""
3191
 
3192
  #: includes/class-mla-options.php:337
 
 
 
 
3193
  msgid "Taxonomy"
3194
  msgstr ""
3195
 
3196
- #: includes/class-mla-options.php:358
3197
  #, php-format
3198
  msgid "List Filter ignored; %1$s not supported."
3199
  msgstr ""
3200
 
3201
- #: includes/class-mla-options.php:365
3202
  #, php-format
3203
  msgid "Inline Edit ignored; %1$s not supported."
3204
  msgstr ""
3205
 
3206
- #: includes/class-mla-options.php:373
3207
  #, php-format
3208
  msgid "Term Search ignored; %1$s not supported."
3209
  msgstr ""
3210
 
3211
- #: includes/class-mla-options.php:383
3212
  #, php-format
3213
  msgid "Checklist ignored; %1$s not supported."
3214
  msgstr ""
3215
 
3216
- #: includes/class-mla-options.php:391
3217
  #, php-format
3218
  msgid "Checked On Top ignored; %1$s not supported."
3219
  msgstr ""
3220
 
3221
- #: includes/class-mla-options.php:411 includes/class-mla-options.php:492
3222
- #: includes/class-mla-options.php:547
 
 
 
 
 
3223
  #, php-format
3224
  msgid "Update custom %1$s"
3225
  msgstr ""
3226
 
3227
- #: includes/class-mla-options.php:418 includes/class-mla-options.php:499
3228
- #: includes/class-mla-options.php:554
3229
  #, php-format
3230
  msgid "Reset custom %1$s"
3231
  msgstr ""
3232
 
3233
- #: includes/class-mla-options.php:449
3234
  #: includes/mla-main-search-box-template.php:60
3235
  #: includes/mla-media-modal-js-template.php:32
3236
  msgid "and"
3237
  msgstr ""
3238
 
3239
- #: includes/class-mla-options.php:451
3240
  #: includes/mla-main-search-box-template.php:61
3241
  #: includes/mla-media-modal-js-template.php:36
3242
  msgid "or"
3243
  msgstr ""
3244
 
3245
- #: includes/class-mla-options.php:456
3246
  #: includes/class-mla-settings-custom-fields-tab.php:455
3247
  #: includes/class-mla-settings-custom-fields-tab.php:759
3248
  #: includes/class-mla-settings-iptc-exif-tab.php:455
@@ -3254,93 +3298,93 @@ msgstr ""
3254
  msgid "Name"
3255
  msgstr ""
3256
 
3257
- #: includes/class-mla-options.php:468
3258
  #: includes/mla-main-search-box-template.php:57
3259
  #: includes/mla-media-modal-js-template.php:61
3260
  msgid "File"
3261
  msgstr ""
3262
 
3263
- #: includes/class-mla-options.php:471
3264
  #: includes/mla-main-search-box-template.php:58
3265
  #: includes/mla-media-modal-js-template.php:66
3266
  msgid "Terms"
3267
  msgstr ""
3268
 
3269
- #: includes/class-mla-options.php:940 includes/class-mla-options.php:986
3270
- #: includes/class-mla-options.php:1826 includes/class-mla-options.php:1857
3271
  #: includes/class-mla-settings-upload-tab.php:128
3272
  msgid "None (select a value)"
3273
  msgstr ""
3274
 
3275
- #: includes/class-mla-options.php:993
3276
  msgid "Metadata (see below)"
3277
  msgstr ""
3278
 
3279
- #: includes/class-mla-options.php:1000
3280
  msgid "Template (see below)"
3281
  msgstr ""
3282
 
3283
- #: includes/class-mla-options.php:1072 includes/class-mla-options.php:2139
3284
  #, php-format
3285
  msgid "%1$s: New field %2$s already exists."
3286
  msgstr ""
3287
 
3288
- #: includes/class-mla-options.php:1077 includes/class-mla-options.php:2144
3289
  #, php-format
3290
  msgid "Adding new field %1$s."
3291
  msgstr ""
3292
 
3293
- #: includes/class-mla-options.php:1085 includes/class-mla-options.php:2152
3294
  #, php-format
3295
  msgid "Adding new rule for %1$s."
3296
  msgstr ""
3297
 
3298
- #: includes/class-mla-options.php:1111 includes/class-mla-options.php:2009
3299
- #: includes/class-mla-options.php:2178
3300
  #, php-format
3301
  msgid "Deleting rule for %1$s."
3302
  msgstr ""
3303
 
3304
- #: includes/class-mla-options.php:1134 includes/class-mla-options.php:1155
3305
- #: includes/class-mla-options.php:1205 includes/class-mla-options.php:1212
3306
- #: includes/class-mla-options.php:1925 includes/class-mla-options.php:1932
3307
- #: includes/class-mla-options.php:1939 includes/class-mla-options.php:2034
3308
- #: includes/class-mla-options.php:2041 includes/class-mla-options.php:2076
3309
- #: includes/class-mla-options.php:2083 includes/class-mla-options.php:2188
3310
- #: includes/class-mla-options.php:2195 includes/class-mla-options.php:2230
3311
- #: includes/class-mla-options.php:2237
3312
  #, php-format
3313
  msgid "%1$s changing %2$s from %3$s to %4$s."
3314
  msgstr ""
3315
 
3316
- #: includes/class-mla-options.php:1134
3317
  #: includes/class-mla-settings-custom-fields-tab.php:463
3318
  #: includes/class-mla-settings-custom-fields-tab.php:763
3319
  msgid "Data Source"
3320
  msgstr ""
3321
 
3322
- #: includes/class-mla-options.php:1140 includes/class-mla-options.php:1959
3323
- #: includes/class-mla-options.php:2061 includes/class-mla-options.php:2215
3324
  msgid "Replace to Keep"
3325
  msgstr ""
3326
 
3327
- #: includes/class-mla-options.php:1143 includes/class-mla-options.php:1962
3328
- #: includes/class-mla-options.php:2064 includes/class-mla-options.php:2218
3329
  msgid "Keep to Replace"
3330
  msgstr ""
3331
 
3332
- #: includes/class-mla-options.php:1148 includes/class-mla-options.php:1169
3333
- #: includes/class-mla-options.php:1183 includes/class-mla-options.php:1197
3334
- #: includes/class-mla-options.php:1226 includes/class-mla-options.php:1953
3335
- #: includes/class-mla-options.php:1967 includes/class-mla-options.php:2055
3336
- #: includes/class-mla-options.php:2069 includes/class-mla-options.php:2209
3337
- #: includes/class-mla-options.php:2223 includes/class-mla-options.php:2251
3338
  #, php-format
3339
  msgid "%1$s changing %2$s value from %3$s."
3340
  msgstr ""
3341
 
3342
- #: includes/class-mla-options.php:1148 includes/class-mla-options.php:1967
3343
- #: includes/class-mla-options.php:2069 includes/class-mla-options.php:2223
3344
  #: includes/class-mla-settings-custom-fields-tab.php:477
3345
  #: includes/class-mla-settings-custom-fields-tab.php:777
3346
  #: includes/class-mla-settings-iptc-exif-tab.php:474
@@ -3348,7 +3392,7 @@ msgstr ""
3348
  msgid "Existing Text"
3349
  msgstr ""
3350
 
3351
- #: includes/class-mla-options.php:1155 includes/class-mla-options.php:2230
3352
  #: includes/class-mla-settings-custom-fields-tab.php:482
3353
  #: includes/class-mla-settings-custom-fields-tab.php:782
3354
  #: includes/class-mla-settings-iptc-exif-tab.php:489
@@ -3356,30 +3400,30 @@ msgstr ""
3356
  msgid "Format"
3357
  msgstr ""
3358
 
3359
- #: includes/class-mla-options.php:1161 includes/class-mla-options.php:1175
3360
- #: includes/class-mla-options.php:1189 includes/class-mla-options.php:1218
3361
- #: includes/class-mla-options.php:2243
3362
  msgid "unchecked to checked"
3363
  msgstr ""
3364
 
3365
- #: includes/class-mla-options.php:1164 includes/class-mla-options.php:1178
3366
- #: includes/class-mla-options.php:1192 includes/class-mla-options.php:1221
3367
- #: includes/class-mla-options.php:2246
3368
  msgid "checked to unchecked"
3369
  msgstr ""
3370
 
3371
- #: includes/class-mla-options.php:1169
3372
  #: includes/class-mla-settings-custom-fields-tab.php:469
3373
  #: includes/class-mla-settings-custom-fields-tab.php:769
3374
- #: includes/class-mla-settings-custom-fields-tab.php:1453
3375
  msgid "MLA Column"
3376
  msgstr ""
3377
 
3378
- #: includes/class-mla-options.php:1205
3379
  msgid "Metavalue name"
3380
  msgstr ""
3381
 
3382
- #: includes/class-mla-options.php:1212 includes/class-mla-options.php:2237
3383
  #: includes/class-mla-settings-custom-fields-tab.php:489
3384
  #: includes/class-mla-settings-custom-fields-tab.php:789
3385
  #: includes/class-mla-settings-iptc-exif-tab.php:496
@@ -3387,50 +3431,50 @@ msgstr ""
3387
  msgid "Option"
3388
  msgstr ""
3389
 
3390
- #: includes/class-mla-options.php:1226 includes/class-mla-options.php:2251
3391
  #: includes/class-mla-settings-iptc-exif-tab.php:508
3392
  msgid "Delete NULL values"
3393
  msgstr ""
3394
 
3395
- #: includes/class-mla-options.php:1913
3396
  #, php-format
3397
  msgid "%1$s: No old values for %2$s."
3398
  msgstr ""
3399
 
3400
- #: includes/class-mla-options.php:1925
3401
  msgid "Field Title"
3402
  msgstr ""
3403
 
3404
- #: includes/class-mla-options.php:1932 includes/class-mla-options.php:2034
3405
- #: includes/class-mla-options.php:2188
3406
  #: includes/class-mla-settings-iptc-exif-tab.php:463
3407
  #: includes/class-mla-settings-iptc-exif-tab.php:845
3408
  msgid "IPTC Value"
3409
  msgstr ""
3410
 
3411
- #: includes/class-mla-options.php:1939 includes/class-mla-options.php:2041
3412
- #: includes/class-mla-options.php:2195
3413
  msgid "EXIF Value"
3414
  msgstr ""
3415
 
3416
- #: includes/class-mla-options.php:1945 includes/class-mla-options.php:2047
3417
- #: includes/class-mla-options.php:2201
3418
  msgid "EXIF to IPTC"
3419
  msgstr ""
3420
 
3421
- #: includes/class-mla-options.php:1948 includes/class-mla-options.php:2050
3422
- #: includes/class-mla-options.php:2204
3423
  msgid "IPTC to EXIF"
3424
  msgstr ""
3425
 
3426
- #: includes/class-mla-options.php:1953 includes/class-mla-options.php:2055
3427
- #: includes/class-mla-options.php:2209
3428
  #: includes/class-mla-settings-iptc-exif-tab.php:469
3429
  #: includes/class-mla-settings-iptc-exif-tab.php:851
3430
  msgid "Priority"
3431
  msgstr ""
3432
 
3433
- #: includes/class-mla-options.php:2076
3434
  msgid "Delimiter(s)"
3435
  msgstr ""
3436
 
@@ -3627,12 +3671,12 @@ msgstr ""
3627
  #: includes/class-mla-settings-iptc-exif-tab.php:738
3628
  #: includes/class-mla-settings-iptc-exif-tab.php:836
3629
  #: includes/class-mla-settings-shortcodes-tab.php:713
3630
- #: includes/class-mla-settings-upload-tab.php:480
3631
- #: includes/class-mla-settings-upload-tab.php:530
3632
  #: includes/class-mla-settings-view-tab.php:320
3633
  #: includes/class-mla-settings-view-tab.php:372
3634
- #: includes/class-mla-settings.php:1063 includes/class-mla-settings.php:1437
3635
- #: includes/class-mla-settings.php:1439
3636
  #: includes/class-mla-wpml-support.php:1727
3637
  msgid "Save Changes"
3638
  msgstr ""
@@ -3654,7 +3698,7 @@ msgid "Language settings saved."
3654
  msgstr ""
3655
 
3656
  #: includes/class-mla-polylang-support.php:2647
3657
- #: includes/class-mla-settings.php:1655
3658
  #: includes/class-mla-wpml-support.php:1799
3659
  #, php-format
3660
  msgctxt "message_list"
@@ -3849,11 +3893,11 @@ msgstr ""
3849
 
3850
  #: includes/class-mla-settings-custom-fields-tab.php:479
3851
  #: includes/class-mla-settings-custom-fields-tab.php:779
3852
- #: includes/class-mla-settings-custom-fields-tab.php:1499
3853
  #: includes/class-mla-settings-iptc-exif-tab.php:476
3854
  #: includes/class-mla-settings-iptc-exif-tab.php:858
3855
- #: includes/class-mla-settings-iptc-exif-tab.php:1560
3856
- #: includes/class-mla-settings-iptc-exif-tab.php:2414
3857
  #: includes/class-mla-thumbnail-generation.php:643
3858
  msgid "Keep"
3859
  msgstr ""
@@ -3929,32 +3973,32 @@ msgstr ""
3929
 
3930
  #: includes/class-mla-settings-custom-fields-tab.php:505
3931
  #: includes/class-mla-settings-custom-fields-tab.php:805
3932
- #: includes/class-mla-settings-custom-fields-tab.php:1483
3933
- #: includes/class-mla-settings-custom-fields-tab.php:1706
3934
- #: includes/class-mla-settings-documentation-tab.php:1208
3935
  #: includes/class-mla-settings-iptc-exif-tab.php:513
3936
  #: includes/class-mla-settings-iptc-exif-tab.php:887
3937
- #: includes/class-mla-settings-iptc-exif-tab.php:1576
3938
- #: includes/class-mla-settings-iptc-exif-tab.php:1812
3939
- #: includes/class-mla-settings-iptc-exif-tab.php:2417
3940
- #: includes/class-mla-settings-upload-tab.php:554
3941
- #: includes/class-mla-settings-upload-tab.php:1036
3942
  msgid "Active"
3943
  msgstr ""
3944
 
3945
  #: includes/class-mla-settings-custom-fields-tab.php:507
3946
  #: includes/class-mla-settings-custom-fields-tab.php:807
3947
- #: includes/class-mla-settings-custom-fields-tab.php:1485
3948
- #: includes/class-mla-settings-custom-fields-tab.php:1709
3949
- #: includes/class-mla-settings-documentation-tab.php:1210
3950
  #: includes/class-mla-settings-iptc-exif-tab.php:515
3951
  #: includes/class-mla-settings-iptc-exif-tab.php:889
3952
- #: includes/class-mla-settings-iptc-exif-tab.php:1578
3953
- #: includes/class-mla-settings-iptc-exif-tab.php:1815
3954
- #: includes/class-mla-settings-iptc-exif-tab.php:2417
3955
  #: includes/class-mla-settings-upload-tab.php:172
3956
- #: includes/class-mla-settings-upload-tab.php:540
3957
- #: includes/class-mla-settings-upload-tab.php:1034
3958
  msgid "Inactive"
3959
  msgstr ""
3960
 
@@ -3970,11 +4014,11 @@ msgstr ""
3970
 
3971
  #: includes/class-mla-settings-custom-fields-tab.php:583
3972
  #: includes/class-mla-settings-custom-fields-tab.php:611
3973
- #: includes/class-mla-settings-documentation-tab.php:233
3974
  #: includes/class-mla-settings-iptc-exif-tab.php:662
3975
  #: includes/class-mla-settings-iptc-exif-tab.php:690
3976
  #: includes/class-mla-settings-shortcodes-tab.php:552
3977
- #: includes/class-mla-settings-upload-tab.php:400
3978
  #: includes/class-mla-settings-view-tab.php:244
3979
  #, php-format
3980
  msgid "Unknown bulk action %1$s"
@@ -4024,7 +4068,7 @@ msgid "Resume"
4024
  msgstr ""
4025
 
4026
  #: includes/class-mla-settings-custom-fields-tab.php:732
4027
- #: includes/class-mla-settings-documentation-tab.php:107
4028
  #: includes/class-mla-settings-iptc-exif-tab.php:813
4029
  #: includes/class-mla-settings-shortcodes-tab.php:476
4030
  #: includes/class-mla-template-support.php:160
@@ -4104,147 +4148,147 @@ msgstr ""
4104
  msgid "Rule not found"
4105
  msgstr ""
4106
 
4107
- #: includes/class-mla-settings-custom-fields-tab.php:1203
4108
- #: includes/class-mla-settings-iptc-exif-tab.php:1279
4109
  msgctxt "list_table_column"
4110
  msgid "Bad Name"
4111
  msgstr ""
4112
 
4113
- #: includes/class-mla-settings-custom-fields-tab.php:1205
4114
  msgctxt "list_table_column"
4115
  msgid "Meta/Template"
4116
  msgstr ""
4117
 
4118
- #: includes/class-mla-settings-custom-fields-tab.php:1206
4119
  msgctxt "list_table_column"
4120
  msgid "Visibility"
4121
  msgstr ""
4122
 
4123
- #: includes/class-mla-settings-custom-fields-tab.php:1208
4124
- #: includes/class-mla-settings-iptc-exif-tab.php:1283
4125
  msgctxt "list_table_column"
4126
  msgid "Existing Text"
4127
  msgstr ""
4128
 
4129
- #: includes/class-mla-settings-custom-fields-tab.php:1209
4130
- #: includes/class-mla-settings-iptc-exif-tab.php:1287
4131
  msgctxt "list_table_column"
4132
  msgid "Delete NULL"
4133
  msgstr ""
4134
 
4135
- #: includes/class-mla-settings-custom-fields-tab.php:1210
4136
- #: includes/class-mla-settings-iptc-exif-tab.php:1288
4137
  msgctxt "list_table_column"
4138
  msgid "Format"
4139
  msgstr ""
4140
 
4141
- #: includes/class-mla-settings-custom-fields-tab.php:1211
4142
- #: includes/class-mla-settings-iptc-exif-tab.php:1289
4143
  msgctxt "list_table_column"
4144
  msgid "Option"
4145
  msgstr ""
4146
 
4147
- #: includes/class-mla-settings-custom-fields-tab.php:1350
4148
- #: includes/class-mla-settings-iptc-exif-tab.php:1428
4149
  msgid "Map All Attachments"
4150
  msgstr ""
4151
 
4152
- #: includes/class-mla-settings-custom-fields-tab.php:1350
4153
- #: includes/class-mla-settings-custom-fields-tab.php:1685
4154
- #: includes/class-mla-settings-iptc-exif-tab.php:1428
4155
- #: includes/class-mla-settings-iptc-exif-tab.php:1791
4156
  msgid "Execute"
4157
  msgstr ""
4158
 
4159
- #: includes/class-mla-settings-custom-fields-tab.php:1352
4160
  msgid "Purge custom field values"
4161
  msgstr ""
4162
 
4163
- #: includes/class-mla-settings-custom-fields-tab.php:1352
4164
- #: includes/class-mla-settings-custom-fields-tab.php:1686
4165
- #: includes/class-mla-settings-iptc-exif-tab.php:1431
4166
- #: includes/class-mla-settings-iptc-exif-tab.php:1792
4167
  msgid "Purge Values"
4168
  msgstr ""
4169
 
4170
- #: includes/class-mla-settings-custom-fields-tab.php:1703
4171
- #: includes/class-mla-settings-iptc-exif-tab.php:1809
4172
- #: includes/class-mla-settings-shortcodes-tab.php:1299
4173
  msgid "Any Status"
4174
  msgstr ""
4175
 
4176
- #: includes/class-mla-settings-custom-fields-tab.php:2458
4177
  msgctxt "table_view_singular"
4178
  msgid "MLA Column"
4179
  msgstr ""
4180
 
4181
- #: includes/class-mla-settings-custom-fields-tab.php:2459
4182
  msgctxt "table_view_plural"
4183
  msgid "MLA Column"
4184
  msgstr ""
4185
 
4186
- #: includes/class-mla-settings-custom-fields-tab.php:2462
4187
  msgctxt "table_view_singular"
4188
  msgid "Quick Edit"
4189
  msgstr ""
4190
 
4191
- #: includes/class-mla-settings-custom-fields-tab.php:2463
4192
  msgctxt "table_view_plural"
4193
  msgid "Quick Edit"
4194
  msgstr ""
4195
 
4196
- #: includes/class-mla-settings-custom-fields-tab.php:2466
4197
  msgctxt "table_view_singular"
4198
  msgid "Bulk Edit"
4199
  msgstr ""
4200
 
4201
- #: includes/class-mla-settings-custom-fields-tab.php:2467
4202
  msgctxt "table_view_plural"
4203
  msgid "Bulk Edit"
4204
  msgstr ""
4205
 
4206
- #: includes/class-mla-settings-custom-fields-tab.php:2470
4207
- #: includes/class-mla-settings-iptc-exif-tab.php:2738
4208
  msgctxt "table_view_singular"
4209
  msgid "Read Only"
4210
  msgstr ""
4211
 
4212
- #: includes/class-mla-settings-custom-fields-tab.php:2471
4213
- #: includes/class-mla-settings-iptc-exif-tab.php:2739
4214
  msgctxt "table_view_plural"
4215
  msgid "Read Only"
4216
  msgstr ""
4217
 
4218
  #: includes/class-mla-settings-documentation-tab.php:82
4219
- #: includes/class-mla-settings-documentation-tab.php:935
4220
- #: includes/class-mla-settings-documentation-tab.php:1020
4221
- #: includes/class-mla-settings-documentation-tab.php:1050
4222
  #, php-format
4223
  msgid "Example plugin \"%1$s\" not found"
4224
  msgstr ""
4225
 
4226
- #: includes/class-mla-settings-documentation-tab.php:97
4227
- #: includes/class-mla-settings.php:1369
4228
  #, php-format
4229
  msgid "%1$s: Reading the %2$s file ( %3$s ) \"%4$s\"."
4230
  msgstr ""
4231
 
4232
- #: includes/class-mla-settings-documentation-tab.php:97
4233
  msgid "plugin"
4234
  msgstr ""
4235
 
4236
- #: includes/class-mla-settings-documentation-tab.php:104
4237
  msgid "View Plugin"
4238
  msgstr ""
4239
 
4240
- #: includes/class-mla-settings-documentation-tab.php:154
4241
  #: includes/class-mla-settings-upload-tab.php:246
4242
- #: includes/class-mla-settings-upload-tab.php:555
4243
  #: includes/class-mla-settings-view-tab.php:368
4244
  msgid "Displaying search results for"
4245
  msgstr ""
4246
 
4247
- #: includes/class-mla-settings-documentation-tab.php:155
4248
  msgid ""
4249
  "In this tab you can browse the list of MLA example plugins, install or "
4250
  "update them in the Plugins/Installed Plugins area and see which examples you "
@@ -4252,7 +4296,7 @@ msgid ""
4252
  "the plugins you must go to the Plugins/Installed Plugins admin submenu."
4253
  msgstr ""
4254
 
4255
- #: includes/class-mla-settings-documentation-tab.php:157
4256
  #, php-format
4257
  msgid ""
4258
  "You can find more information about using the example plugins in the %1$s "
@@ -4260,144 +4304,144 @@ msgid ""
4260
  "tab in the upper-right corner of this screen."
4261
  msgstr ""
4262
 
4263
- #: includes/class-mla-settings-documentation-tab.php:157
4264
  msgid "Example plugin documentation"
4265
  msgstr ""
4266
 
4267
- #: includes/class-mla-settings-documentation-tab.php:157
4268
  msgid "The Example Plugins"
4269
  msgstr ""
4270
 
4271
- #: includes/class-mla-settings-documentation-tab.php:162
4272
  msgid "Example Plugins"
4273
  msgstr ""
4274
 
4275
- #: includes/class-mla-settings-documentation-tab.php:163
4276
  msgid "Search Example Plugins"
4277
  msgstr ""
4278
 
4279
- #: includes/class-mla-settings-documentation-tab.php:165
4280
  msgid "Search Plugins"
4281
  msgstr ""
4282
 
4283
- #: includes/class-mla-settings-documentation-tab.php:166
4284
  msgid "Searches Name, Description, File Name and Tags"
4285
  msgstr ""
4286
 
4287
- #: includes/class-mla-settings-documentation-tab.php:256
4288
  #, php-format
4289
  msgid "Empty mla_item_ID - \"%1$s\""
4290
  msgstr ""
4291
 
4292
- #: includes/class-mla-settings-documentation-tab.php:491
4293
  msgctxt "list_table_column"
4294
  msgid "Current Version"
4295
  msgstr ""
4296
 
4297
- #: includes/class-mla-settings-documentation-tab.php:492
4298
  msgctxt "list_table_column"
4299
  msgid "Installed Version"
4300
  msgstr ""
4301
 
4302
- #: includes/class-mla-settings-documentation-tab.php:494
4303
  msgctxt "list_table_column"
4304
  msgid "File Name"
4305
  msgstr ""
4306
 
4307
- #: includes/class-mla-settings-documentation-tab.php:495
4308
  msgctxt "list_table_column"
4309
  msgid "Tags"
4310
  msgstr ""
4311
 
4312
- #: includes/class-mla-settings-documentation-tab.php:631
4313
  msgid "Install this plugin"
4314
  msgstr ""
4315
 
4316
- #: includes/class-mla-settings-documentation-tab.php:631
4317
- #: includes/class-mla-settings-documentation-tab.php:842
4318
  msgid "Install"
4319
  msgstr ""
4320
 
4321
- #: includes/class-mla-settings-documentation-tab.php:635
4322
  msgid "Update this plugin"
4323
  msgstr ""
4324
 
4325
- #: includes/class-mla-settings-documentation-tab.php:648
4326
- #: includes/class-mla-settings-shortcodes-tab.php:1069
4327
  msgid "View this item"
4328
  msgstr ""
4329
 
4330
- #: includes/class-mla-settings-documentation-tab.php:958
4331
  #, php-format
4332
  msgid "Example plugin \"%1$s\" fs_connect failed; no action taken. Error: %2$s"
4333
  msgstr ""
4334
 
4335
- #: includes/class-mla-settings-documentation-tab.php:963
4336
  #, php-format
4337
  msgid "Example plugin \"%1$s\" fs_connect failed; no action taken"
4338
  msgstr ""
4339
 
4340
- #: includes/class-mla-settings-documentation-tab.php:988
4341
  #, php-format
4342
  msgid ""
4343
  "Example plugin \"%1$s\" install_package failed; no action taken. Error: %2$s"
4344
  msgstr ""
4345
 
4346
- #: includes/class-mla-settings-documentation-tab.php:999
4347
  #, php-format
4348
  msgid "Example plugin \"%1$s\" remove old single file failed."
4349
  msgstr ""
4350
 
4351
- #: includes/class-mla-settings-documentation-tab.php:1025
4352
  #, php-format
4353
  msgid "Example plugin \"%1$s\" already installed; no action taken"
4354
  msgstr ""
4355
 
4356
- #: includes/class-mla-settings-documentation-tab.php:1031
4357
  #, php-format
4358
  msgid "Example plugin \"%1$s\" installed"
4359
  msgstr ""
4360
 
4361
- #: includes/class-mla-settings-documentation-tab.php:1055
4362
  #, php-format
4363
  msgid "Example plugin \"%1$s\" not installed; no action taken"
4364
  msgstr ""
4365
 
4366
- #: includes/class-mla-settings-documentation-tab.php:1061
4367
  #, php-format
4368
  msgid "Example plugin \"%1$s\" updated"
4369
  msgstr ""
4370
 
4371
- #: includes/class-mla-settings-documentation-tab.php:1206
4372
  msgid "Network"
4373
  msgstr ""
4374
 
4375
- #: includes/class-mla-settings-documentation-tab.php:1539
4376
  msgctxt "table_view_singular"
4377
  msgid "Installed"
4378
  msgstr ""
4379
 
4380
- #: includes/class-mla-settings-documentation-tab.php:1540
4381
  msgctxt "table_view_plural"
4382
  msgid "Installed"
4383
  msgstr ""
4384
 
4385
- #: includes/class-mla-settings-documentation-tab.php:1551
4386
  msgctxt "table_view_singular"
4387
  msgid "Network"
4388
  msgstr ""
4389
 
4390
- #: includes/class-mla-settings-documentation-tab.php:1552
4391
  msgctxt "table_view_plural"
4392
  msgid "Network"
4393
  msgstr ""
4394
 
4395
- #: includes/class-mla-settings-documentation-tab.php:1555
4396
  msgctxt "table_view_singular"
4397
  msgid "Uninstalled"
4398
  msgstr ""
4399
 
4400
- #: includes/class-mla-settings-documentation-tab.php:1556
4401
  msgctxt "table_view_plural"
4402
  msgid "Uninstalled"
4403
  msgstr ""
@@ -4430,13 +4474,13 @@ msgstr ""
4430
 
4431
  #: includes/class-mla-settings-iptc-exif-tab.php:471
4432
  #: includes/class-mla-settings-iptc-exif-tab.php:853
4433
- #: includes/class-mla-settings-iptc-exif-tab.php:1544
4434
  msgid "IPTC"
4435
  msgstr ""
4436
 
4437
  #: includes/class-mla-settings-iptc-exif-tab.php:473
4438
  #: includes/class-mla-settings-iptc-exif-tab.php:855
4439
- #: includes/class-mla-settings-iptc-exif-tab.php:1547
4440
  msgid "EXIF"
4441
  msgstr ""
4442
 
@@ -4480,51 +4524,51 @@ msgid ""
4480
  "WordPress standard attachment fields, taxonomy terms and custom fields."
4481
  msgstr ""
4482
 
4483
- #: includes/class-mla-settings-iptc-exif-tab.php:1280
4484
  msgctxt "list_table_column"
4485
  msgid "IPTC Value"
4486
  msgstr ""
4487
 
4488
- #: includes/class-mla-settings-iptc-exif-tab.php:1281
4489
  msgctxt "list_table_column"
4490
  msgid "EXIF/Template Value"
4491
  msgstr ""
4492
 
4493
- #: includes/class-mla-settings-iptc-exif-tab.php:1282
4494
  msgctxt "list_table_column"
4495
  msgid "Priority "
4496
  msgstr ""
4497
 
4498
- #: includes/class-mla-settings-iptc-exif-tab.php:1285
4499
  msgctxt "list_table_column"
4500
  msgid "Delimiter(s)"
4501
  msgstr ""
4502
 
4503
- #: includes/class-mla-settings-iptc-exif-tab.php:1286
4504
  msgctxt "list_table_column"
4505
  msgid "Parent"
4506
  msgstr ""
4507
 
4508
- #: includes/class-mla-settings-iptc-exif-tab.php:1431
4509
  msgid "Purge IPTC EXIF values"
4510
  msgstr ""
4511
 
4512
- #: includes/class-mla-settings-iptc-exif-tab.php:2726
4513
  msgctxt "table_view_singular"
4514
  msgid "Standard"
4515
  msgstr ""
4516
 
4517
- #: includes/class-mla-settings-iptc-exif-tab.php:2727
4518
  msgctxt "table_view_plural"
4519
  msgid "Standard"
4520
  msgstr ""
4521
 
4522
- #: includes/class-mla-settings-iptc-exif-tab.php:2730
4523
  msgctxt "table_view_singular"
4524
  msgid "Taxonomy"
4525
  msgstr ""
4526
 
4527
- #: includes/class-mla-settings-iptc-exif-tab.php:2731
4528
  msgctxt "table_view_plural"
4529
  msgid "Taxonomy"
4530
  msgstr ""
@@ -4664,8 +4708,8 @@ msgstr ""
4664
 
4665
  #: includes/class-mla-settings-shortcodes-tab.php:410
4666
  #: includes/class-mla-settings-shortcodes-tab.php:482
4667
- #: includes/class-mla-settings-shortcodes-tab.php:1074
4668
- #: includes/class-mla-settings-shortcodes-tab.php:1283
4669
  msgid "Copy"
4670
  msgstr ""
4671
 
@@ -4743,91 +4787,91 @@ msgstr ""
4743
  msgid "Search Templates"
4744
  msgstr ""
4745
 
4746
- #: includes/class-mla-settings-shortcodes-tab.php:951
4747
  msgctxt "list_table_column"
4748
  msgid "Type"
4749
  msgstr ""
4750
 
4751
- #: includes/class-mla-settings-shortcodes-tab.php:952
4752
  msgctxt "list_table_column"
4753
  msgid "Shortcode"
4754
  msgstr ""
4755
 
4756
- #: includes/class-mla-settings-shortcodes-tab.php:1074
4757
  msgid "Make a copy"
4758
  msgstr ""
4759
 
4760
- #: includes/class-mla-settings-shortcodes-tab.php:1094
4761
  msgid "default"
4762
  msgstr ""
4763
 
4764
- #: includes/class-mla-settings-shortcodes-tab.php:1107
4765
- #: includes/class-mla-settings-shortcodes-tab.php:1974
4766
  msgctxt "table_view_singular"
4767
  msgid "Style"
4768
  msgstr ""
4769
 
4770
- #: includes/class-mla-settings-shortcodes-tab.php:1107
4771
- #: includes/class-mla-settings-shortcodes-tab.php:1978
4772
  msgctxt "table_view_singular"
4773
  msgid "Markup"
4774
  msgstr ""
4775
 
4776
- #: includes/class-mla-settings-shortcodes-tab.php:1282
4777
  #: includes/class-mla-thumbnail-generation.php:646
4778
  msgid "Delete"
4779
  msgstr ""
4780
 
4781
- #: includes/class-mla-settings-shortcodes-tab.php:1302
4782
  msgid "Default"
4783
  msgstr ""
4784
 
4785
- #: includes/class-mla-settings-shortcodes-tab.php:1305
4786
  msgid "Custom"
4787
  msgstr ""
4788
 
4789
- #: includes/class-mla-settings-shortcodes-tab.php:1975
4790
  msgctxt "table_view_plural"
4791
  msgid "Style"
4792
  msgstr ""
4793
 
4794
- #: includes/class-mla-settings-shortcodes-tab.php:1979
4795
  msgctxt "table_view_plural"
4796
  msgid "Markup"
4797
  msgstr ""
4798
 
4799
- #: includes/class-mla-settings-shortcodes-tab.php:1982
4800
  #: includes/class-mla-template-support.php:70
4801
  #: includes/class-mla-template-support.php:126
4802
  msgctxt "table_view_singular"
4803
  msgid "Gallery"
4804
  msgstr ""
4805
 
4806
- #: includes/class-mla-settings-shortcodes-tab.php:1983
4807
  msgctxt "table_view_plural"
4808
  msgid "Gallery"
4809
  msgstr ""
4810
 
4811
- #: includes/class-mla-settings-shortcodes-tab.php:1986
4812
  #: includes/class-mla-template-support.php:88
4813
  #: includes/class-mla-template-support.php:174
4814
  msgctxt "table_view_singular"
4815
  msgid "Tag Cloud"
4816
  msgstr ""
4817
 
4818
- #: includes/class-mla-settings-shortcodes-tab.php:1987
4819
  msgctxt "table_view_plural"
4820
  msgid "Tag Cloud"
4821
  msgstr ""
4822
 
4823
- #: includes/class-mla-settings-shortcodes-tab.php:1990
4824
  #: includes/class-mla-template-support.php:106
4825
  #: includes/class-mla-template-support.php:222
4826
  msgctxt "table_view_singular"
4827
  msgid "Term List"
4828
  msgstr ""
4829
 
4830
- #: includes/class-mla-settings-shortcodes-tab.php:1991
4831
  msgctxt "table_view_plural"
4832
  msgid "Term List"
4833
  msgstr ""
@@ -4848,7 +4892,7 @@ msgid ""
4848
  msgstr ""
4849
 
4850
  #: includes/class-mla-settings-upload-tab.php:168
4851
- #: includes/class-mla-settings-upload-tab.php:537
4852
  msgid ""
4853
  "The MIME Type must be all lowercase and contain only letters, numbers, "
4854
  "periods (.), slashes (/) and hyphens (-). It <strong>must be a valid MIME</"
@@ -4856,26 +4900,26 @@ msgid ""
4856
  msgstr ""
4857
 
4858
  #: includes/class-mla-settings-upload-tab.php:169
4859
- #: includes/class-mla-settings-upload-tab.php:538
4860
  msgid "Icon Type"
4861
  msgstr ""
4862
 
4863
  #: includes/class-mla-settings-upload-tab.php:171
4864
- #: includes/class-mla-settings-upload-tab.php:539
4865
  msgid ""
4866
  "The Icon Type selects a thumbnail image displayed for non-image file types, "
4867
  "such as PDF documents."
4868
  msgstr ""
4869
 
4870
  #: includes/class-mla-settings-upload-tab.php:173
4871
- #: includes/class-mla-settings-upload-tab.php:541
4872
  msgid ""
4873
  "Check this box if you want to remove this entry from the list of Upload MIME "
4874
  "Types returned by get_allowed_mime_types()."
4875
  msgstr ""
4876
 
4877
  #: includes/class-mla-settings-upload-tab.php:175
4878
- #: includes/class-mla-settings-upload-tab.php:543
4879
  #: includes/class-mla-settings-view-tab.php:133
4880
  #: includes/class-mla-settings-view-tab.php:389
4881
  msgid ""
@@ -4896,26 +4940,26 @@ msgid "Search Types"
4896
  msgstr ""
4897
 
4898
  #: includes/class-mla-settings-upload-tab.php:250
4899
- #: includes/class-mla-settings-upload-tab.php:526
4900
  msgid "To search by extension, use \".\", e.g., \".doc\""
4901
  msgstr ""
4902
 
4903
- #: includes/class-mla-settings-upload-tab.php:442
4904
  #: includes/class-mla-settings-view-tab.php:283
4905
  #, php-format
4906
  msgid "Edit view \"%1$s\" cancelled."
4907
  msgstr ""
4908
 
4909
- #: includes/class-mla-settings-upload-tab.php:477
4910
  msgid "Upload MIME Type Support is disabled"
4911
  msgstr ""
4912
 
4913
- #: includes/class-mla-settings-upload-tab.php:520
4914
- #: includes/class-mla-settings-upload-tab.php:523
4915
  msgid "File Extension and MIME Type Processing"
4916
  msgstr ""
4917
 
4918
- #: includes/class-mla-settings-upload-tab.php:521
4919
  msgid ""
4920
  "In this tab you can manage the list of file extension/MIME Type "
4921
  "associations, which are used by WordPress to decide what kind of files can "
@@ -4924,7 +4968,7 @@ msgid ""
4924
  "extension must be in this list and be active."
4925
  msgstr ""
4926
 
4927
- #: includes/class-mla-settings-upload-tab.php:523
4928
  #, php-format
4929
  msgid ""
4930
  "You can find more information about file extensions, MIME types and how "
@@ -4932,67 +4976,67 @@ msgid ""
4932
  "the <strong>\"Help\"</strong> tab in the upper-right corner of this screen."
4933
  msgstr ""
4934
 
4935
- #: includes/class-mla-settings-upload-tab.php:523
4936
  msgid "File Extension Processing documentation"
4937
  msgstr ""
4938
 
4939
- #: includes/class-mla-settings-upload-tab.php:525
4940
  msgid "Search Uploads"
4941
  msgstr ""
4942
 
4943
- #: includes/class-mla-settings-upload-tab.php:532
4944
  msgid "Upload MIME Type"
4945
  msgstr ""
4946
 
4947
- #: includes/class-mla-settings-upload-tab.php:533
4948
  msgid ""
4949
  "To search the database of over 1,500 known extension/type associations, "
4950
  "click \"Search Known Types\" below the form."
4951
  msgstr ""
4952
 
4953
- #: includes/class-mla-settings-upload-tab.php:535
4954
  msgid ""
4955
  "The &#8220;extension&#8221; is the file extension for this type, and unique "
4956
  "key for the item. It must be all lowercase and contain only letters and "
4957
  "numbers."
4958
  msgstr ""
4959
 
4960
- #: includes/class-mla-settings-upload-tab.php:544
4961
  msgid "Add Upload MIME Type"
4962
  msgstr ""
4963
 
4964
- #: includes/class-mla-settings-upload-tab.php:546
4965
  msgid "Search Known Types"
4966
  msgstr ""
4967
 
4968
- #: includes/class-mla-settings-upload-tab.php:548
4969
  #: includes/class-mla-settings-view-tab.php:392
4970
  msgid "<strong>Quick Edit</strong>"
4971
  msgstr ""
4972
 
4973
- #: includes/class-mla-settings-upload-tab.php:594
4974
  msgid "No upload slug found"
4975
  msgstr ""
4976
 
4977
- #: includes/class-mla-settings-upload-tab.php:931
4978
- #: includes/class-mla-settings-view-tab.php:726
4979
  msgid "Revert to standard item"
4980
  msgstr ""
4981
 
4982
- #: includes/class-mla-settings-upload-tab.php:931
4983
- #: includes/class-mla-settings-view-tab.php:726
4984
  msgid "Revert to Standard"
4985
  msgstr ""
4986
 
4987
- #: includes/class-mla-settings-upload-tab.php:1213
4988
  msgid "Delete/Revert Custom"
4989
  msgstr ""
4990
 
4991
- #: includes/class-mla-settings-upload-tab.php:1469
4992
  msgid "Select this entry"
4993
  msgstr ""
4994
 
4995
- #: includes/class-mla-settings-upload-tab.php:1589
4996
  msgid "Select these entries"
4997
  msgstr ""
4998
 
@@ -5122,7 +5166,7 @@ msgid "No view slug found"
5122
  msgstr ""
5123
 
5124
  #: includes/class-mla-settings.php:429 includes/class-mla-settings.php:655
5125
- #: includes/class-mla-settings.php:1478
5126
  msgid "Settings"
5127
  msgstr ""
5128
 
@@ -5218,369 +5262,352 @@ msgstr ""
5218
  msgid "Delete General options and restore default settings"
5219
  msgstr ""
5220
 
5221
- #: includes/class-mla-settings.php:1070 includes/class-mla-settings.php:1470
5222
- msgid "Support Our Work"
5223
- msgstr ""
5224
-
5225
- #: includes/class-mla-settings.php:1071 includes/class-mla-settings.php:1074
5226
- msgid "Donate to FTJ"
5227
- msgstr ""
5228
-
5229
- #: includes/class-mla-settings.php:1072 includes/class-mla-settings.php:1471
5230
- msgid "Donate"
5231
- msgstr ""
5232
-
5233
- #: includes/class-mla-settings.php:1074
5234
- #, php-format
5235
- msgid ""
5236
- "This plugin was inspired by my work on the WordPress web site for our "
5237
- "nonprofit, Fair Trade Judaica. If you find the Media Library Assistant "
5238
- "plugin useful and would like to support a great cause, consider a %1$s to "
5239
- "our work. Thank you!"
5240
- msgstr ""
5241
-
5242
- #: includes/class-mla-settings.php:1074
5243
- msgid "tax-deductible donation"
5244
- msgstr ""
5245
-
5246
- #: includes/class-mla-settings.php:1093
5247
  msgid "enhanced version of the WordPress [gallery] shortcode."
5248
  msgstr ""
5249
 
5250
- #: includes/class-mla-settings.php:1094
5251
  msgid "enhanced version of the WordPress Tag Cloud."
5252
  msgstr ""
5253
 
5254
- #: includes/class-mla-settings.php:1095
5255
  msgid ""
5256
  "provides flat or hierarchical lists, dropdown controls and checkbox lists of "
5257
  "taxonomy terms."
5258
  msgstr ""
5259
 
5260
- #: includes/class-mla-settings.php:1107
5261
  msgid "Shortcodes made available by this plugin"
5262
  msgstr ""
5263
 
5264
- #: includes/class-mla-settings.php:1222
5265
  msgid "Debug settings saved."
5266
  msgstr ""
5267
 
5268
- #: includes/class-mla-settings.php:1318
5269
  #, php-format
5270
  msgid "%1$s: Reseting the %2$s file ( %3$s ) \"%4$s\"."
5271
  msgstr ""
5272
 
5273
- #: includes/class-mla-settings.php:1318 includes/class-mla-settings.php:1369
5274
- #: includes/class-mla-settings.php:1392 includes/class-mla-settings.php:1402
5275
- #: includes/class-mla-settings.php:1428
5276
  msgid "Error Log"
5277
  msgstr ""
5278
 
5279
- #: includes/class-mla-settings.php:1379
5280
  #, php-format
5281
  msgid "Error log file (%1$s) not found; click Reset to create it."
5282
  msgstr ""
5283
 
5284
- #: includes/class-mla-settings.php:1423 includes/class-mla-settings.php:1439
5285
  msgid "Debug Options"
5286
  msgstr ""
5287
 
5288
- #: includes/class-mla-settings.php:1426
5289
  msgid "Debug Settings"
5290
  msgstr ""
5291
 
5292
- #: includes/class-mla-settings.php:1430
5293
  #, php-format
5294
  msgid ""
5295
  "You can find more information about the MLA Reporting/MLA_DEBUG_LEVEL values "
5296
  "in the %1$s section of the Documentation tab."
5297
  msgstr ""
5298
 
5299
- #: includes/class-mla-settings.php:1430
5300
  msgid "MLA Debug Tab documentation"
5301
  msgstr ""
5302
 
5303
- #: includes/class-mla-settings.php:1430
5304
  msgid "MLA Debug Tab"
5305
  msgstr ""
5306
 
5307
- #: includes/class-mla-settings.php:1439
5308
  #, php-format
5309
  msgid "Click %1$s to update the %2$s."
5310
  msgstr ""
5311
 
5312
- #: includes/class-mla-settings.php:1458
5313
  msgid "You do not have permission to manage plugin settings."
5314
  msgstr ""
5315
 
5316
- #: includes/class-mla-settings.php:1490
5317
  msgid "Cannot render content tab"
5318
  msgstr ""
5319
 
5320
- #: includes/class-mla-settings.php:1493
5321
  msgid "Unknown content tab"
5322
  msgstr ""
5323
 
5324
- #: includes/class-mla-settings.php:1509
5325
  msgid "Dismiss this notice"
5326
  msgstr ""
5327
 
5328
- #: includes/class-mla-settings.php:1536
5329
  #, php-format
5330
  msgid "%s attachment"
5331
  msgid_plural "%s attachments"
5332
  msgstr[0] ""
5333
  msgstr[1] ""
5334
 
5335
- #: includes/class-mla-settings.php:1538
5336
  #, php-format
5337
  msgid "Deleted custom field value from %1$s."
5338
  msgstr ""
5339
 
5340
- #: includes/class-mla-settings.php:1541
5341
  msgid "No attachments contained this custom field."
5342
  msgstr ""
5343
 
5344
- #: includes/class-mla-settings.php:1571 includes/class-mla-settings.php:1581
5345
  #, php-format
5346
  msgctxt "message_list"
5347
  msgid "%1$s - references updated."
5348
  msgstr ""
5349
 
5350
- #: includes/class-mla-settings.php:1624
5351
  msgid "General settings saved."
5352
  msgstr ""
5353
 
5354
- #: includes/class-mla-settings.php:1663
5355
  msgid "General settings reset to default values."
5356
  msgstr ""
5357
 
5358
- #: includes/class-mla-settings.php:1705
5359
  msgid "select settings"
5360
  msgstr ""
5361
 
5362
- #: includes/class-mla-settings.php:1725
5363
  msgid "Import ALL Settings"
5364
  msgstr ""
5365
 
5366
- #: includes/class-mla-settings.php:1754 includes/class-mla-settings.php:1770
5367
  msgctxt "message_list"
5368
  msgid "exported"
5369
  msgstr ""
5370
 
5371
- #: includes/class-mla-settings.php:1756 includes/class-mla-settings.php:1772
5372
  msgctxt "message_list"
5373
  msgid "skipped"
5374
  msgstr ""
5375
 
5376
- #: includes/class-mla-settings.php:1779
5377
  msgid "ALL settings exported."
5378
  msgstr ""
5379
 
5380
- #: includes/class-mla-settings.php:1790
5381
  #, php-format
5382
  msgid "%1$s: The settings directory ( %2$s ) cannot be created."
5383
  msgstr ""
5384
 
5385
- #: includes/class-mla-settings.php:1794
5386
  #, php-format
5387
  msgid "%1$s: The settings directory ( %2$s ) is not writable."
5388
  msgstr ""
5389
 
5390
- #: includes/class-mla-settings.php:1805
5391
  #, php-format
5392
  msgid "%1$s: The settings file ( %2$s ) could not be opened."
5393
  msgstr ""
5394
 
5395
- #: includes/class-mla-settings.php:1812
5396
  #, php-format
5397
  msgctxt "error_log"
5398
  msgid "%1$s: _export_settings $error_info = \"%2$s\"."
5399
  msgstr ""
5400
 
5401
- #: includes/class-mla-settings.php:1821
5402
  #, php-format
5403
  msgid "%1$s: Writing the settings file ( %2$s ) \"%3$s\"."
5404
  msgstr ""
5405
 
5406
- #: includes/class-mla-settings.php:1827
5407
  #, php-format
5408
  msgid "Settings exported; %1$s settings recorded."
5409
  msgstr ""
5410
 
5411
- #: includes/class-mla-settings.php:1845
5412
  msgid "No settings imported."
5413
  msgstr ""
5414
 
5415
- #: includes/class-mla-settings.php:1854
5416
  msgid "Please select an import settings file from the dropdown list."
5417
  msgstr ""
5418
 
5419
- #: includes/class-mla-settings.php:1858
5420
  msgid "The import settings dropdown selection is missing."
5421
  msgstr ""
5422
 
5423
- #: includes/class-mla-settings.php:1866
5424
  #, php-format
5425
  msgctxt "error_log"
5426
  msgid "%1$s: _import_settings $error_info = \"%2$s\"."
5427
  msgstr ""
5428
 
5429
- #: includes/class-mla-settings.php:1875
5430
  #, php-format
5431
  msgid "%1$s: Reading the settings file ( %2$s ) \"%3$s\"."
5432
  msgstr ""
5433
 
5434
- #: includes/class-mla-settings.php:1894 includes/class-mla-settings.php:1910
5435
  msgctxt "message_list"
5436
  msgid "updated"
5437
  msgstr ""
5438
 
5439
- #: includes/class-mla-settings.php:1897 includes/class-mla-settings.php:1913
5440
  msgctxt "message_list"
5441
  msgid "unchanged"
5442
  msgstr ""
5443
 
5444
- #: includes/class-mla-settings.php:1918
5445
  #, php-format
5446
  msgid "Settings imported; %1$s updated, %2$s unchanged."
5447
  msgstr ""
5448
 
5449
- #: includes/class-mla-shortcode-support.php:440
5450
- #: includes/class-mla-shortcode-support.php:1809
5451
- #: includes/class-mla-shortcode-support.php:3893
5452
- #: includes/class-mla-shortcode-support.php:4179
5453
  msgid "Previous"
5454
  msgstr ""
5455
 
5456
- #: includes/class-mla-shortcode-support.php:441
5457
- #: includes/class-mla-shortcode-support.php:1810
5458
- #: includes/class-mla-shortcode-support.php:3942
5459
- #: includes/class-mla-shortcode-support.php:4185
5460
  msgid "Next"
5461
  msgstr ""
5462
 
5463
- #: includes/class-mla-shortcode-support.php:517
5464
- #: includes/class-mla-shortcode-support.php:523
5465
- #: includes/class-mla-shortcode-support.php:1954
5466
- #: includes/class-mla-shortcode-support.php:1961
5467
- #: includes/class-mla-shortcode-support.php:3313
5468
- #: includes/class-mla-shortcode-support.php:3320
5469
  #: includes/class-mla-template-support.php:598
5470
  msgid "not found"
5471
  msgstr ""
5472
 
5473
- #: includes/class-mla-shortcode-support.php:548
5474
- #: includes/class-mla-shortcode-support.php:1944
5475
- #: includes/class-mla-shortcode-support.php:3305
5476
  msgid "mla_debug REQUEST"
5477
  msgstr ""
5478
 
5479
- #: includes/class-mla-shortcode-support.php:549
5480
- #: includes/class-mla-shortcode-support.php:1945
5481
- #: includes/class-mla-shortcode-support.php:3306
5482
  msgid "mla_debug attributes"
5483
  msgstr ""
5484
 
5485
- #: includes/class-mla-shortcode-support.php:550
5486
- #: includes/class-mla-shortcode-support.php:1946
5487
- #: includes/class-mla-shortcode-support.php:3307
5488
  msgid "mla_debug arguments"
5489
  msgstr ""
5490
 
5491
- #: includes/class-mla-shortcode-support.php:594
5492
  msgid "mla_debug empty gallery"
5493
  msgstr ""
5494
 
5495
- #: includes/class-mla-shortcode-support.php:611
5496
  msgid ""
5497
  "<strong>Photonic-enhanced [mla_gallery]</strong> type must be "
5498
  "<strong>default</strong>, query = "
5499
  msgstr ""
5500
 
5501
- #: includes/class-mla-shortcode-support.php:1060
5502
  msgid "unknown"
5503
  msgstr ""
5504
 
5505
- #: includes/class-mla-shortcode-support.php:2085
5506
  msgid "mla_debug empty cloud"
5507
  msgstr ""
5508
 
5509
- #: includes/class-mla-shortcode-support.php:3441
5510
  msgid "mla_debug empty list"
5511
  msgstr ""
5512
 
5513
- #: includes/class-mla-shortcode-support.php:3464
5514
  msgid "no-terms"
5515
  msgstr ""
5516
 
5517
- #: includes/class-mla-shortcode-support.php:4609
5518
- #: includes/class-mla-shortcode-support.php:5013
5519
- #: includes/class-mla-shortcode-support.php:5050
5520
  msgid "Invalid mla_gallery"
5521
  msgstr ""
5522
 
5523
- #: includes/class-mla-shortcode-support.php:5338
5524
  msgid "mla_debug query"
5525
  msgstr ""
5526
 
5527
- #: includes/class-mla-shortcode-support.php:5339
5528
  msgid "mla_debug request"
5529
  msgstr ""
5530
 
5531
- #: includes/class-mla-shortcode-support.php:5340
5532
  msgid "mla_debug query_vars"
5533
  msgstr ""
5534
 
5535
- #: includes/class-mla-shortcode-support.php:5341
5536
  msgid "mla_debug post_count"
5537
  msgstr ""
5538
 
5539
- #: includes/class-mla-shortcode-support.php:5409
 
 
 
 
 
 
 
 
5540
  msgid "mla_debug WHERE filter"
5541
  msgstr ""
5542
 
5543
- #: includes/class-mla-shortcode-support.php:5433
5544
  msgid "mla_debug modified WHERE filter"
5545
  msgstr ""
5546
 
5547
- #: includes/class-mla-shortcode-support.php:5456
5548
  msgid "mla_debug ORDER BY filter, incoming"
5549
  msgstr ""
5550
 
5551
- #: includes/class-mla-shortcode-support.php:5456
5552
  msgid "Replacement ORDER BY clause"
5553
  msgstr ""
5554
 
5555
- #: includes/class-mla-shortcode-support.php:5479
5556
  msgid "mla_debug posts_clauses filter"
5557
  msgstr ""
5558
 
5559
- #: includes/class-mla-shortcode-support.php:5497
5560
  msgid "mla_debug posts_clauses_request filter"
5561
  msgstr ""
5562
 
5563
- #: includes/class-mla-shortcode-support.php:5686
5564
  msgid "Invalid taxonomy"
5565
  msgstr ""
5566
 
5567
- #: includes/class-mla-shortcode-support.php:5866
5568
  msgid "mla_debug query arguments"
5569
  msgstr ""
5570
 
5571
- #: includes/class-mla-shortcode-support.php:5867
5572
  msgid "mla_debug last_query"
5573
  msgstr ""
5574
 
5575
- #: includes/class-mla-shortcode-support.php:5868
5576
  msgid "mla_debug last_error"
5577
  msgstr ""
5578
 
5579
- #: includes/class-mla-shortcode-support.php:5869
5580
  msgid "mla_debug num_rows"
5581
  msgstr ""
5582
 
5583
- #: includes/class-mla-shortcode-support.php:5870
5584
  msgid "mla_debug found_rows"
5585
  msgstr ""
5586
 
2
  msgid ""
3
  msgstr ""
4
  "Project-Id-Version: Media Library Assistant\n"
5
+ "POT-Creation-Date: 2019-01-01 17:29-0800\n"
6
  "PO-Revision-Date: 2015-08-21 21:38-0800\n"
7
  "Last-Translator: David Lingren <david@fairtradejudaica.org>\n"
8
  "Language-Team: David Lingren <david@fairtradejudaica.org>\n"
20
  "X-Poedit-SearchPath-1: tests\n"
21
  "X-Poedit-SearchPath-2: index.php\n"
22
 
23
+ #: includes/class-mla-admin-columns-pro-support-423.php:178
24
+ #: includes/class-mla-admin-columns-pro-support.php:175
25
+ #: includes/class-mla-ajax.php:259 includes/class-mla-edit-media.php:990
26
+ #: includes/class-mla-list-table.php:635
27
  msgid "Draft"
28
  msgstr ""
29
 
30
+ #: includes/class-mla-admin-columns-pro-support-423.php:181
31
+ #: includes/class-mla-admin-columns-pro-support.php:178
32
+ #: includes/class-mla-ajax.php:253 includes/class-mla-edit-media.php:984
33
+ #: includes/class-mla-list-table.php:638
34
  msgid "Scheduled"
35
  msgstr ""
36
 
37
+ #: includes/class-mla-admin-columns-pro-support-423.php:184
38
+ #: includes/class-mla-admin-columns-pro-support.php:181
39
+ #: includes/class-mla-edit-media.php:987 includes/class-mla-list-table.php:641
40
  msgctxt "post state"
41
  msgid "Pending"
42
  msgstr ""
43
 
44
+ #: includes/class-mla-admin-columns-pro-support-423.php:187
45
+ #: includes/class-mla-admin-columns-pro-support.php:184
46
+ #: includes/class-mla-list-table.php:644
47
  #: includes/class-mla-thumbnail-generation.php:645
48
  msgid "Trash"
49
  msgstr ""
50
 
51
+ #: includes/class-mla-admin-columns-pro-support-423.php:395
52
+ #: includes/class-mla-admin-columns-pro-support.php:392
53
  #: includes/class-mla-data-references.php:310
54
  #: includes/class-mla-data-references.php:656
55
+ #: includes/class-mla-list-table.php:1070
56
  msgid "NO REFERENCE TESTS"
57
  msgstr ""
58
 
59
+ #: includes/class-mla-admin-columns-pro-support-423.php:592
60
+ #: includes/class-mla-admin-columns-pro-support-423.php:654
61
+ #: includes/class-mla-admin-columns-pro-support-423.php:721
62
+ #: includes/class-mla-admin-columns-pro-support-423.php:783
63
+ #: includes/class-mla-admin-columns-pro-support.php:589
64
+ #: includes/class-mla-admin-columns-pro-support.php:651
65
+ #: includes/class-mla-admin-columns-pro-support.php:718
66
+ #: includes/class-mla-admin-columns-pro-support.php:780
67
  #: includes/class-mla-core-options.php:447
68
  #: includes/class-mla-core-options.php:457
69
  #: includes/class-mla-core-options.php:467
70
  #: includes/class-mla-core-options.php:477
71
+ #: includes/class-mla-list-table.php:1150
72
+ #: includes/class-mla-list-table.php:1195
73
+ #: includes/class-mla-list-table.php:1245
74
+ #: includes/class-mla-list-table.php:1290
75
  msgid "Disabled"
76
  msgstr ""
77
 
78
+ #: includes/class-mla-admin-columns-pro-support-423.php:611
79
+ #: includes/class-mla-admin-columns-pro-support-423.php:677
80
+ #: includes/class-mla-admin-columns-pro-support-423.php:740
81
+ #: includes/class-mla-admin-columns-pro-support-423.php:802
82
+ #: includes/class-mla-admin-columns-pro-support.php:608
83
+ #: includes/class-mla-admin-columns-pro-support.php:674
84
+ #: includes/class-mla-admin-columns-pro-support.php:737
85
+ #: includes/class-mla-admin-columns-pro-support.php:799
86
+ #: includes/class-mla-edit-media.php:1072
87
+ #: includes/class-mla-edit-media.php:1110
88
+ #: includes/class-mla-edit-media.php:1146
89
+ #: includes/class-mla-edit-media.php:1181
90
+ #: includes/class-mla-list-table.php:1168
91
+ #: includes/class-mla-list-table.php:1217
92
+ #: includes/class-mla-list-table.php:1263
93
+ #: includes/class-mla-list-table.php:1308
94
  msgid "PARENT"
95
  msgstr ""
96
 
97
+ #: includes/class-mla-admin-columns-pro-support-423.php:1027
98
+ #: includes/class-mla-admin-columns-pro-support.php:1024
99
+ #: includes/class-mla-core-options.php:605
100
+ #: includes/class-mla-core-options.php:862
101
+ #: includes/class-mla-core-options.php:893
102
+ #: includes/class-mla-core-options.php:907
103
+ #: includes/class-mla-list-table.php:493 includes/class-mla-list-table.php:1403
104
  #: includes/class-mla-settings-shortcodes-tab.php:629
105
  msgid "None"
106
  msgstr ""
107
 
108
+ #: includes/class-mla-admin-columns-pro-support-423.php:1117
109
+ #: includes/class-mla-admin-columns-pro-support.php:1114
110
+ #: includes/class-mla-list-table.php:1542
111
  msgid "(Private post)"
112
  msgstr ""
113
 
114
+ #: includes/class-mla-admin-columns-pro-support-423.php:1121
115
+ #: includes/class-mla-admin-columns-pro-support.php:1118
116
+ #: includes/class-mla-ajax.php:269 includes/class-mla-list-table.php:1453
117
+ #: includes/class-mla-list-table.php:1482
118
+ #: includes/class-mla-list-table.php:1546
119
  msgid "Y/m/d"
120
  msgstr ""
121
 
122
+ #: includes/class-mla-admin-columns-pro-support-423.php:1134
123
+ #: includes/class-mla-admin-columns-pro-support.php:1131
124
+ #: includes/class-mla-core-options.php:1309
125
+ #: includes/class-mla-list-table.php:1559
126
  msgctxt "table_view_singular"
127
  msgid "Unattached"
128
  msgstr ""
129
 
130
  #: includes/class-mla-admin-columns-support-deprecated.php:33
131
+ #: includes/class-mla-admin-columns-support.php:43
132
+ #: includes/class-mla-core-options.php:555 includes/class-mla-settings.php:429
133
+ #: includes/class-mla-settings.php:1452 includes/class-mla-settings.php:1468
134
  #: index.php:48
135
  msgid "Media Library Assistant"
136
  msgstr ""
137
 
138
  #: includes/class-mla-admin-columns-support-deprecated.php:34
139
+ #: includes/class-mla-admin-columns-support.php:44
140
+ #: includes/class-mla-core-options.php:564
141
  msgid "Assistant"
142
  msgstr ""
143
 
144
+ #: includes/class-mla-ajax.php:240 includes/class-mla-core-options.php:1185
145
+ #: includes/class-mla-data.php:3959 includes/class-mla-edit-media.php:482
146
+ #: includes/class-mla-main.php:1914 includes/class-mla-main.php:2219
147
+ #: includes/class-mla-objects.php:348 includes/class-mla-options.php:465
148
  #: includes/mla-main-search-box-template.php:47
149
  #: includes/mla-media-modal-js-template.php:40
150
  msgid "Title"
151
  msgstr ""
152
 
153
+ #: includes/class-mla-ajax.php:240 includes/class-mla-main.php:1915
154
  #: includes/class-mla-thumbnail-generation.php:637
155
  msgid "Type"
156
  msgstr ""
157
 
158
+ #: includes/class-mla-ajax.php:240 includes/class-mla-main.php:1916
159
  msgid "Date"
160
  msgstr ""
161
 
162
+ #: includes/class-mla-ajax.php:240 includes/class-mla-main.php:1917
163
  #: includes/class-mla-settings-custom-fields-tab.php:503
164
  #: includes/class-mla-settings-custom-fields-tab.php:803
165
  #: includes/class-mla-settings-iptc-exif-tab.php:511
166
  #: includes/class-mla-settings-iptc-exif-tab.php:885
167
+ #: includes/class-mla-settings-upload-tab.php:548
168
  msgid "Status"
169
  msgstr ""
170
 
171
+ #: includes/class-mla-ajax.php:244 includes/class-mla-list-table.php:879
172
+ #: includes/class-mla-list-table.php:1044 includes/class-mla-main.php:445
173
  #: includes/class-mla-polylang-support.php:363
174
  #: includes/class-mla-thumbnail-generation.php:97
175
  msgid "(no title)"
185
 
186
  #: includes/class-mla-ajax.php:298 includes/class-mla-ajax.php:305
187
  #: includes/class-mla-ajax.php:314 includes/class-mla-core.php:845
188
+ #: includes/class-mla-core.php:863 includes/class-mla-core.php:1288
189
+ #: includes/class-mla-core.php:1294 includes/class-mla-core.php:1298
190
  #: includes/class-mla-data-pdf.php:216 includes/class-mla-data-pdf.php:517
191
  #: includes/class-mla-data-pdf.php:519 includes/class-mla-data-pdf.php:565
192
  #: includes/class-mla-data-pdf.php:749 includes/class-mla-data-query.php:695
201
  #: includes/class-mla-data.php:3700 includes/class-mla-data.php:3722
202
  #: includes/class-mla-data.php:3936 includes/class-mla-data.php:3982
203
  #: includes/class-mla-data.php:4015 includes/class-mla-data.php:4031
204
+ #: includes/class-mla-data.php:4284 includes/class-mla-edit-media.php:323
205
+ #: includes/class-mla-edit-media.php:896 includes/class-mla-edit-media.php:938
206
+ #: includes/class-mla-main.php:666 includes/class-mla-main.php:789
207
+ #: includes/class-mla-main.php:791 includes/class-mla-main.php:794
208
+ #: includes/class-mla-main.php:1199 includes/class-mla-main.php:1255
209
+ #: includes/class-mla-main.php:1280 includes/class-mla-main.php:1417
210
+ #: includes/class-mla-main.php:1467 includes/class-mla-main.php:1563
211
+ #: includes/class-mla-main.php:1592 includes/class-mla-main.php:1730
212
+ #: includes/class-mla-main.php:1737 includes/class-mla-main.php:1900
213
+ #: includes/class-mla-main.php:2026 includes/class-mla-main.php:2351
214
+ #: includes/class-mla-main.php:2359 includes/class-mla-main.php:2383
215
+ #: includes/class-mla-main.php:2391 includes/class-mla-main.php:2423
216
+ #: includes/class-mla-main.php:2431 includes/class-mla-media-modal.php:600
217
+ #: includes/class-mla-mime-types.php:801 includes/class-mla-mime-types.php:1193
218
+ #: includes/class-mla-mime-types.php:1281
219
+ #: includes/class-mla-mime-types.php:1427
220
+ #: includes/class-mla-mime-types.php:1450
221
+ #: includes/class-mla-mime-types.php:2251
222
+ #: includes/class-mla-mime-types.php:2262
223
+ #: includes/class-mla-mime-types.php:2275
224
+ #: includes/class-mla-mime-types.php:2283
225
+ #: includes/class-mla-mime-types.php:2288
226
+ #: includes/class-mla-mime-types.php:2331
227
+ #: includes/class-mla-mime-types.php:2350
228
+ #: includes/class-mla-mime-types.php:2401
229
+ #: includes/class-mla-mime-types.php:2435
230
+ #: includes/class-mla-mime-types.php:2520
231
+ #: includes/class-mla-mime-types.php:2599
232
+ #: includes/class-mla-mime-types.php:2608
233
+ #: includes/class-mla-mime-types.php:2640 includes/class-mla-objects.php:245
234
+ #: includes/class-mla-options.php:217 includes/class-mla-options.php:433
235
+ #: includes/class-mla-options.php:514 includes/class-mla-options.php:569
236
+ #: includes/class-mla-options.php:1084 includes/class-mla-options.php:1929
237
+ #: includes/class-mla-options.php:2155
238
  #: includes/class-mla-settings-custom-fields-tab.php:173
239
  #: includes/class-mla-settings-custom-fields-tab.php:238
240
  #: includes/class-mla-settings-custom-fields-tab.php:242
248
  #: includes/class-mla-settings-custom-fields-tab.php:928
249
  #: includes/class-mla-settings-custom-fields-tab.php:932
250
  #: includes/class-mla-settings-custom-fields-tab.php:956
251
+ #: includes/class-mla-settings-custom-fields-tab.php:2034
252
+ #: includes/class-mla-settings-documentation-tab.php:131
253
+ #: includes/class-mla-settings-documentation-tab.php:323
254
+ #: includes/class-mla-settings-documentation-tab.php:1296
255
  #: includes/class-mla-settings-iptc-exif-tab.php:175
256
  #: includes/class-mla-settings-iptc-exif-tab.php:241
257
  #: includes/class-mla-settings-iptc-exif-tab.php:245
265
  #: includes/class-mla-settings-iptc-exif-tab.php:1000
266
  #: includes/class-mla-settings-iptc-exif-tab.php:1004
267
  #: includes/class-mla-settings-iptc-exif-tab.php:1028
268
+ #: includes/class-mla-settings-iptc-exif-tab.php:2264
269
  #: includes/class-mla-settings-shortcodes-tab.php:79
270
  #: includes/class-mla-settings-shortcodes-tab.php:90
271
  #: includes/class-mla-settings-shortcodes-tab.php:94
275
  #: includes/class-mla-settings-shortcodes-tab.php:210
276
  #: includes/class-mla-settings-shortcodes-tab.php:214
277
  #: includes/class-mla-settings-shortcodes-tab.php:503
278
+ #: includes/class-mla-settings-shortcodes-tab.php:1630
279
  #: includes/class-mla-settings-upload-tab.php:301
280
  #: includes/class-mla-settings-upload-tab.php:353
281
+ #: includes/class-mla-settings-upload-tab.php:428
282
+ #: includes/class-mla-settings-upload-tab.php:590
283
+ #: includes/class-mla-settings-upload-tab.php:601
284
  #: includes/class-mla-settings-view-tab.php:166
285
  #: includes/class-mla-settings-view-tab.php:198
286
  #: includes/class-mla-settings-view-tab.php:275
288
  #: includes/class-mla-settings-view-tab.php:447
289
  #: includes/class-mla-settings.php:589 includes/class-mla-settings.php:727
290
  #: includes/class-mla-settings.php:764 includes/class-mla-settings.php:904
291
+ #: includes/class-mla-settings.php:1313 includes/class-mla-settings.php:1364
292
+ #: includes/class-mla-settings.php:1452 includes/class-mla-settings.php:1479
293
+ #: includes/class-mla-settings.php:1482 includes/class-mla-settings.php:1486
294
+ #: includes/class-mla-settings.php:1779 includes/class-mla-settings.php:1783
295
+ #: includes/class-mla-settings.php:1794 includes/class-mla-settings.php:1801
296
+ #: includes/class-mla-settings.php:1810 includes/class-mla-settings.php:1847
297
+ #: includes/class-mla-settings.php:1855 includes/class-mla-settings.php:1864
298
+ #: includes/class-mla-shortcode-support.php:2075
299
+ #: includes/class-mla-shortcode-support.php:2166
300
+ #: includes/class-mla-shortcode-support.php:3429
301
+ #: includes/class-mla-shortcode-support.php:3556
302
+ #: includes/class-mla-shortcode-support.php:3588
303
+ #: includes/class-mla-shortcode-support.php:4610
304
+ #: includes/class-mla-shortcode-support.php:5021
305
+ #: includes/class-mla-shortcode-support.php:5058
306
  #: includes/class-mla-thumbnail-generation.php:428
307
  #: includes/class-mla-thumbnail-generation.php:440
308
  #: includes/class-mla-thumbnail-generation.php:452
310
  msgid "ERROR"
311
  msgstr ""
312
 
313
+ #: includes/class-mla-ajax.php:298 includes/class-mla-main.php:1730
314
  msgid "No post ID found"
315
  msgstr ""
316
 
317
+ #: includes/class-mla-ajax.php:305 includes/class-mla-main.php:1737
318
  #: includes/class-mla-polylang-support.php:260
319
  msgid "You are not allowed to edit this Attachment."
320
  msgstr ""
321
 
322
+ #: includes/class-mla-core-options.php:408 includes/class-mla-options.php:256
323
  msgid "Attachment Categories"
324
  msgstr ""
325
 
327
  msgid "Check this option to add support for Attachment Categories."
328
  msgstr ""
329
 
330
+ #: includes/class-mla-core-options.php:416 includes/class-mla-options.php:271
331
  msgid "Attachment Tags"
332
  msgstr ""
333
 
352
  msgstr ""
353
 
354
  #: includes/class-mla-core-options.php:442
355
+ #: includes/class-mla-edit-media.php:831 includes/class-mla-edit-media.php:1083
356
  msgid "Featured in"
357
  msgstr ""
358
 
366
  msgstr ""
367
 
368
  #: includes/class-mla-core-options.php:452
369
+ #: includes/class-mla-edit-media.php:835 includes/class-mla-edit-media.php:1122
370
  msgid "Inserted in"
371
  msgstr ""
372
 
382
  msgstr ""
383
 
384
  #: includes/class-mla-core-options.php:462
385
+ #: includes/class-mla-edit-media.php:839 includes/class-mla-edit-media.php:1157
386
+ #: includes/class-mla-settings.php:1560
387
  msgid "Gallery in"
388
  msgstr ""
389
 
393
  msgstr ""
394
 
395
  #: includes/class-mla-core-options.php:467
396
+ #: includes/class-mla-core-options.php:477 includes/class-mla-main.php:2254
397
  #: includes/class-mla-settings-custom-fields-tab.php:733
398
  #: includes/class-mla-settings-iptc-exif-tab.php:814
399
  msgid "Refresh"
412
  msgstr ""
413
 
414
  #: includes/class-mla-core-options.php:472
415
+ #: includes/class-mla-edit-media.php:843 includes/class-mla-edit-media.php:1192
416
+ #: includes/class-mla-settings.php:1570
417
  msgid "MLA Gallery in"
418
  msgstr ""
419
 
468
  msgstr ""
469
 
470
  #: includes/class-mla-core-options.php:506
471
+ #: includes/class-mla-core-options.php:744 includes/class-mla-settings.php:1088
472
+ #: includes/class-mla-settings.php:1089 includes/class-mla-settings.php:1090
473
  msgid "For complete documentation"
474
  msgstr ""
475
 
476
  #: includes/class-mla-core-options.php:506
477
+ #: includes/class-mla-core-options.php:744 includes/class-mla-settings.php:1088
478
+ #: includes/class-mla-settings.php:1089 includes/class-mla-settings.php:1090
479
  msgid "click here"
480
  msgstr ""
481
 
493
 
494
  #: includes/class-mla-core-options.php:510
495
  msgid ""
496
+ "Check the \"<strong>Checked On Top</strong>\" box to move checked terms to "
497
  "the top of the checklist-style meta box."
498
  msgstr ""
499
 
500
  #: includes/class-mla-core-options.php:511
501
  msgid ""
502
+ "Check the \"<strong>Inline Add Term</strong>\" box to support adding terms "
503
+ "in the Quick Edit and Bulk Edit areas."
504
+ msgstr ""
505
+
506
+ #: includes/class-mla-core-options.php:512
507
+ msgid ""
508
  "Use the \"<strong>List Filter</strong>\" option to select the taxonomy (or "
509
  "custom field) on which to filter the Assistant table listing."
510
  msgstr ""
511
 
512
+ #: includes/class-mla-core-options.php:513
513
  msgid ""
514
  "To <strong>filter on a custom field</strong>, enter the field name and "
515
  "select ASC (Ascending) or DESC (Descending) order."
516
  msgstr ""
517
 
518
+ #: includes/class-mla-core-options.php:542
519
  msgid "Media/Assistant Screen Options"
520
  msgstr ""
521
 
522
+ #: includes/class-mla-core-options.php:547
523
  msgid "Admin Menu Options"
524
  msgstr ""
525
 
526
+ #: includes/class-mla-core-options.php:552
527
  msgid "Page Title"
528
  msgstr ""
529
 
530
+ #: includes/class-mla-core-options.php:557
531
  msgid "Enter the title for the Media/Assistant submenu page"
532
  msgstr ""
533
 
534
+ #: includes/class-mla-core-options.php:561
535
  msgid "Menu Title"
536
  msgstr ""
537
 
538
+ #: includes/class-mla-core-options.php:566
539
  msgid "Enter the title for the Media/Assistant submenu entry"
540
  msgstr ""
541
 
542
+ #: includes/class-mla-core-options.php:570
543
  msgid "Submenu Order"
544
  msgstr ""
545
 
546
+ #: includes/class-mla-core-options.php:575
547
  msgid ""
548
  "Enter the position of the Media/Assistant submenu entry.<br>&nbsp;&nbsp;0 = "
549
  "natural order (at bottom),&nbsp;&nbsp;&nbsp;&nbsp;1 - 4 = at top<br>&nbsp;"
551
  "\""
552
  msgstr ""
553
 
554
+ #: includes/class-mla-core-options.php:579
555
  msgid "Display Media/Library"
556
  msgstr ""
557
 
558
+ #: includes/class-mla-core-options.php:583
559
  msgid ""
560
  "Check/uncheck this option to display/remove the WordPress Media/Library "
561
  "submenu entry."
562
  msgstr ""
563
 
564
+ #: includes/class-mla-core-options.php:587
565
  msgid "Display Media/Assistant list/grid view switcher"
566
  msgstr ""
567
 
568
+ #: includes/class-mla-core-options.php:591
569
  msgid ""
570
  "Check/uncheck this option to display/remove the \"list/grid\" view switcher "
571
  "on the Media/Assistant submenu."
572
  msgstr ""
573
 
574
+ #: includes/class-mla-core-options.php:595
575
  msgid "Table Defaults"
576
  msgstr ""
577
 
578
+ #: includes/class-mla-core-options.php:600
579
  msgid "Order By"
580
  msgstr ""
581
 
582
+ #: includes/class-mla-core-options.php:605
583
  msgid "ID/Parent"
584
  msgstr ""
585
 
586
+ #: includes/class-mla-core-options.php:606
587
  msgid "Select the column for the sort order of the Assistant table listing."
588
  msgstr ""
589
 
590
+ #: includes/class-mla-core-options.php:610
591
  msgid "Order"
592
  msgstr ""
593
 
594
+ #: includes/class-mla-core-options.php:615
595
  msgid "Ascending"
596
  msgstr ""
597
 
598
+ #: includes/class-mla-core-options.php:615
599
  msgid "Descending"
600
  msgstr ""
601
 
602
+ #: includes/class-mla-core-options.php:616
603
+ #: includes/class-mla-core-options.php:872
604
  msgid "Choose the sort order."
605
  msgstr ""
606
 
607
+ #: includes/class-mla-core-options.php:620 includes/class-mla-main.php:587
608
  msgid "Entries per page"
609
  msgstr ""
610
 
611
+ #: includes/class-mla-core-options.php:624
612
  msgid "Enter the number of Media/Assistant submenu table items per page."
613
  msgstr ""
614
 
615
+ #: includes/class-mla-core-options.php:633
616
  msgid "Views Width"
617
  msgstr ""
618
 
619
+ #: includes/class-mla-core-options.php:638
620
  msgid "Enter the width for the views list, in pixels (px) or percent (%)"
621
  msgstr ""
622
 
623
+ #: includes/class-mla-core-options.php:642
624
  msgid "Icon Size"
625
  msgstr ""
626
 
627
+ #: includes/class-mla-core-options.php:647
628
  msgid "Enter the size of the thumbnail/icon images, in pixels"
629
  msgstr ""
630
 
631
+ #: includes/class-mla-core-options.php:651
632
  msgid "Show Primary Column File Name"
633
  msgstr ""
634
 
635
+ #: includes/class-mla-core-options.php:655
636
  msgid ""
637
  "Check/uncheck this option to show/omit the file name from the primary column."
638
  msgstr ""
639
 
640
+ #: includes/class-mla-core-options.php:659
641
  msgid "QuickTags editor for bulk description"
642
  msgstr ""
643
 
644
+ #: includes/class-mla-core-options.php:663
645
  msgid ""
646
  "Check this option to use the QuickTags editor for the Description field in "
647
  "the Bulk Edit area."
648
  msgstr ""
649
 
650
+ #: includes/class-mla-core-options.php:667
651
  msgid "Bulk Chunk Size"
652
  msgstr ""
653
 
654
+ #: includes/class-mla-core-options.php:672
655
  msgid "Enter the size of the Bulk Edit and Map All processing chunks"
656
  msgstr ""
657
 
658
+ #: includes/class-mla-core-options.php:676
659
  msgid "Taxonomy Filter parameters"
660
  msgstr ""
661
 
662
+ #: includes/class-mla-core-options.php:681
663
  msgid "Maximum Depth"
664
  msgstr ""
665
 
666
+ #: includes/class-mla-core-options.php:686
667
  msgid ""
668
  "Enter the number of levels displayed for hierarchial taxonomies; enter zero "
669
  "for no limit."
670
  msgstr ""
671
 
672
+ #: includes/class-mla-core-options.php:690
673
  msgid "Include Children"
674
  msgstr ""
675
 
676
+ #: includes/class-mla-core-options.php:694
677
  msgid ""
678
  "Check/uncheck this option to include/exclude children for hierarchical "
679
  "taxonomies."
680
  msgstr ""
681
 
682
+ #: includes/class-mla-core-options.php:698
683
  msgid "Search Media Defaults"
684
  msgstr ""
685
 
686
+ #: includes/class-mla-core-options.php:703
687
  msgid "Display Search Controls"
688
  msgstr ""
689
 
690
+ #: includes/class-mla-core-options.php:707
691
+ #: includes/class-mla-core-options.php:833
692
  msgid ""
693
  "Check/uncheck this option to display/hide the and/or connector and search "
694
  "fields controls."
695
  msgstr ""
696
 
697
+ #: includes/class-mla-core-options.php:711
698
  msgid ""
699
  "Use these controls to set defaults for the and/or connector and search "
700
  "fields controls.<br>These defaults will be used for the Search Media boxes "
701
  "on both the Media/Assistant submenu<br>and the Media Manager Modal Window."
702
  msgstr ""
703
 
704
+ #: includes/class-mla-core-options.php:725
705
  msgid "Media/Edit Media Enhancements"
706
  msgstr ""
707
 
708
+ #: includes/class-mla-core-options.php:730
709
  msgid "Enable &quot;enhanced checklist&quot; taxonomies"
710
  msgstr ""
711
 
712
+ #: includes/class-mla-core-options.php:734
713
  msgid ""
714
  "Check this option to enable the \"? Search\" feature for hierarchical "
715
  "taxonomies, e.g., Att. Categories.<br>&nbsp;&nbsp;This option also enables "
716
  "the \"checklist-style\" support for flat taxonomies, e.g., Att. Tags."
717
  msgstr ""
718
 
719
+ #: includes/class-mla-core-options.php:738
720
  msgid "Enable Edit Media additional meta boxes"
721
  msgstr ""
722
 
723
+ #: includes/class-mla-core-options.php:742
724
  msgid ""
725
  "Check this option to add \"Parent Info\", \"Menu Order\", \"Attachment "
726
  "Metadata\" and four \"where-used\" meta boxes to the Edit Media screen."
727
  msgstr ""
728
 
729
+ #: includes/class-mla-core-options.php:743
730
  msgid "You can also use Filters to customize the meta boxes."
731
  msgstr ""
732
 
733
+ #: includes/class-mla-core-options.php:748
734
  msgid "Media/Add New Enhancements"
735
  msgstr ""
736
 
737
+ #: includes/class-mla-core-options.php:753
738
  msgid "Enable &quot;bulk edit&quot; area"
739
  msgstr ""
740
 
741
+ #: includes/class-mla-core-options.php:757
742
  msgid ""
743
  "Check this option to enable the \"Bulk Edit area\" feature on the Media/Add "
744
  "New screen."
745
  msgstr ""
746
 
747
+ #: includes/class-mla-core-options.php:761
748
  msgid "&quot;bulk edit&quot; area on top"
749
  msgstr ""
750
 
751
+ #: includes/class-mla-core-options.php:765
752
  msgid ""
753
  "Check this option to move the \"Bulk Edit area\" to the top of the Media/Add "
754
  "New screen."
755
  msgstr ""
756
 
757
+ #: includes/class-mla-core-options.php:769
758
  msgid "&quot;bulk edit&quot; area initially open"
759
  msgstr ""
760
 
761
+ #: includes/class-mla-core-options.php:772
762
  msgid ""
763
  "Check this option to automatically open the \"Bulk Edit area\" when the "
764
  "Media/Add New screen is displayed."
765
  msgstr ""
766
 
767
+ #: includes/class-mla-core-options.php:776
768
  msgid "Media Manager/Media Grid Enhancements"
769
  msgstr ""
770
 
771
+ #: includes/class-mla-core-options.php:781
772
  msgid "Enable Media Grid Enhancements"
773
  msgstr ""
774
 
775
+ #: includes/class-mla-core-options.php:784
776
  msgid ""
777
  "Check/uncheck this option to enable/disable Media Library Grid View "
778
  "Enhancements."
779
  msgstr ""
780
 
781
+ #: includes/class-mla-core-options.php:788
782
  msgid "Enable Media Manager Enhancements"
783
  msgstr ""
784
 
785
+ #: includes/class-mla-core-options.php:791
786
  msgid ""
787
  "Check/uncheck this option to enable/disable Media Manager Modal Window "
788
  "Enhancements."
789
  msgstr ""
790
 
791
+ #: includes/class-mla-core-options.php:795
792
  msgid "Media Manager Enhanced MIME Type filter"
793
  msgstr ""
794
 
795
+ #: includes/class-mla-core-options.php:798
796
  msgid ""
797
  "Check this option to filter by more MIME Types, e.g., text, applications."
798
  msgstr ""
799
 
800
+ #: includes/class-mla-core-options.php:802
801
  msgid "Media Manager Month and Year filter"
802
  msgstr ""
803
 
804
+ #: includes/class-mla-core-options.php:805
805
  msgid "Check this option to filter by month and year uploaded."
806
  msgstr ""
807
 
808
+ #: includes/class-mla-core-options.php:809
809
  msgid "Media Manager Category/Tag filter"
810
  msgstr ""
811
 
812
+ #: includes/class-mla-core-options.php:812
813
  msgid "Check this option to filter by taxonomy terms."
814
  msgstr ""
815
 
816
+ #: includes/class-mla-core-options.php:816
817
  msgid "Media Manager Terms Search popup"
818
  msgstr ""
819
 
820
+ #: includes/class-mla-core-options.php:819
821
  msgid "Check this option to enable the \"Terms Search\" popup window."
822
  msgstr ""
823
 
824
+ #: includes/class-mla-core-options.php:823
825
  msgid "Media Manager Enhanced Search Media box"
826
  msgstr ""
827
 
828
+ #: includes/class-mla-core-options.php:826
829
  msgid "Check this option to enable search box enhancements."
830
  msgstr ""
831
 
832
+ #: includes/class-mla-core-options.php:830
833
  msgid "Media Manager Enhanced Search Media Controls"
834
  msgstr ""
835
 
836
+ #: includes/class-mla-core-options.php:837
837
  msgid "Media Manager Checklist meta boxes"
838
  msgstr ""
839
 
840
+ #: includes/class-mla-core-options.php:840
841
  msgid ""
842
  "Check this option to enable MLA-enhanced meta boxes in the \"ATTACHMENT "
843
  "DETAILS\" pane.<br>&nbsp;&nbsp;This option is for any taxonomy that uses a "
844
  "<strong>\"checklist-style\"</strong> meta box."
845
  msgstr ""
846
 
847
+ #: includes/class-mla-core-options.php:844
848
  msgid "Media Manager Flat meta boxes"
849
  msgstr ""
850
 
851
+ #: includes/class-mla-core-options.php:847
852
  msgid ""
853
  "Check this option to enable MLA-enhanced meta boxes in the \"ATTACHMENT "
854
  "DETAILS\" pane.<br>&nbsp;&nbsp;This option is for <strong>flat taxonomies</"
856
  "style\" meta box."
857
  msgstr ""
858
 
859
+ #: includes/class-mla-core-options.php:851
860
  msgid "Media Manager auto-fill meta boxes"
861
  msgstr ""
862
 
863
+ #: includes/class-mla-core-options.php:854
864
  msgid ""
865
  "Check this option to automatically fill MLA-enhanced meta boxes in the "
866
  "\"ATTACHMENT DETAILS\" pane<br>&nbsp;&nbsp;when the item is selected."
867
  msgstr ""
868
 
869
+ #: includes/class-mla-core-options.php:858
870
  msgid "Media Manager Order By"
871
  msgstr ""
872
 
873
+ #: includes/class-mla-core-options.php:862
874
+ #: includes/class-mla-core-options.php:871
875
+ #: includes/class-mla-core-options.php:893
876
+ #: includes/class-mla-core-options.php:907
877
+ #: includes/class-mla-core-options.php:921 includes/class-mla-settings.php:1139
878
  msgid "Media Manager Default"
879
  msgstr ""
880
 
881
+ #: includes/class-mla-core-options.php:862
882
  msgid "Title/Name"
883
  msgstr ""
884
 
885
+ #: includes/class-mla-core-options.php:863
886
  msgid ""
887
  "If you want to override the Media Manager default,<br>&nbsp;&nbsp;select a "
888
  "column for the sort order of the Media Library listing."
889
  msgstr ""
890
 
891
+ #: includes/class-mla-core-options.php:867
892
  msgid "Media Manager Order"
893
  msgstr ""
894
 
895
+ #: includes/class-mla-core-options.php:876
896
  msgid "Attachment Display Settings"
897
  msgstr ""
898
 
899
+ #: includes/class-mla-core-options.php:881
900
  msgid "Media Manager Apply Display Settings"
901
  msgstr ""
902
 
903
+ #: includes/class-mla-core-options.php:884
904
  msgid ""
905
  "Check this option to always start with the Attachment Display Settings set "
906
  "here,<br>&nbsp;&nbsp;overriding browser-/cookie-based defaults."
907
  msgstr ""
908
 
 
909
  #: includes/class-mla-core-options.php:888
910
+ #: includes/class-mla-core-options.php:890
911
  msgid "Alignment"
912
  msgstr ""
913
 
914
+ #: includes/class-mla-core-options.php:890
915
+ #: includes/class-mla-core-options.php:904
916
+ #: includes/class-mla-core-options.php:918
917
  #, php-format
918
  msgid ""
919
  "Select a value for the default %1$s option in the Attachment Display "
920
  "Settings."
921
  msgstr ""
922
 
923
+ #: includes/class-mla-core-options.php:893
924
  msgid "Left"
925
  msgstr ""
926
 
927
+ #: includes/class-mla-core-options.php:893
928
  msgid "Center"
929
  msgstr ""
930
 
931
+ #: includes/class-mla-core-options.php:893
932
  msgid "Right"
933
  msgstr ""
934
 
 
935
  #: includes/class-mla-core-options.php:902
936
+ #: includes/class-mla-core-options.php:904
937
  msgid "Link To"
938
  msgstr ""
939
 
940
+ #: includes/class-mla-core-options.php:907
941
  msgid "Media File"
942
  msgstr ""
943
 
944
+ #: includes/class-mla-core-options.php:907
945
  msgid "Attachment Page"
946
  msgstr ""
947
 
948
+ #: includes/class-mla-core-options.php:907
949
  msgid "Custom URL"
950
  msgstr ""
951
 
 
952
  #: includes/class-mla-core-options.php:916
953
+ #: includes/class-mla-core-options.php:918
954
  msgid "Size"
955
  msgstr ""
956
 
957
+ #: includes/class-mla-core-options.php:921
958
  #: includes/class-mla-thumbnail-generation.php:582
959
  #: includes/class-mla-thumbnail-generation.php:648
960
  msgid "Thumbnail"
961
  msgstr ""
962
 
963
+ #: includes/class-mla-core-options.php:921
964
  msgid "Medium"
965
  msgstr ""
966
 
967
+ #: includes/class-mla-core-options.php:921
968
  msgid "Large"
969
  msgstr ""
970
 
971
+ #: includes/class-mla-core-options.php:921
972
  msgid "Full Size"
973
  msgstr ""
974
 
975
+ #: includes/class-mla-core-options.php:930
976
  msgid "Uninstall (Delete) Plugin Settings"
977
  msgstr ""
978
 
979
+ #: includes/class-mla-core-options.php:935
980
  msgid "Delete Option Settings"
981
  msgstr ""
982
 
983
+ #: includes/class-mla-core-options.php:938
984
  msgid ""
985
  "Check this option to remove all MLA option settings from the database when "
986
  "the plugin is deleted.<br>&nbsp;&nbsp;<strong>You can make a backup copy</"
987
  "strong> of your settings below by clicking \""
988
  msgstr ""
989
 
990
+ #: includes/class-mla-core-options.php:938 includes/class-mla-settings.php:1064
991
  msgid "Export ALL Settings"
992
  msgstr ""
993
 
994
+ #: includes/class-mla-core-options.php:942
995
  msgid "Delete Option Settings Backups"
996
  msgstr ""
997
 
998
+ #: includes/class-mla-core-options.php:945
999
  msgid ""
1000
  "Check this option to remove the <code>/wp-content/mla-backup</code> "
1001
  "directory and its contents when the plugin is deleted."
1002
  msgstr ""
1003
 
1004
+ #: includes/class-mla-core-options.php:949
1005
  msgid "Default [mla_gallery] Templates and Settings"
1006
  msgstr ""
1007
 
1008
+ #: includes/class-mla-core-options.php:954
1009
+ #: includes/class-mla-core-options.php:960
1010
+ #: includes/class-mla-core-options.php:998
1011
+ #: includes/class-mla-core-options.php:1004
1012
  msgid "Style Template"
1013
  msgstr ""
1014
 
1015
+ #: includes/class-mla-core-options.php:960
1016
+ #: includes/class-mla-core-options.php:970
1017
+ #: includes/class-mla-core-options.php:1004
1018
+ #: includes/class-mla-core-options.php:1014
1019
  #, php-format
1020
  msgid "Select the default %1$s for your %2$s shortcodes."
1021
  msgstr ""
1022
 
1023
+ #: includes/class-mla-core-options.php:964
1024
+ #: includes/class-mla-core-options.php:1008
1025
  msgid "Markup Template"
1026
  msgstr ""
1027
 
1028
+ #: includes/class-mla-core-options.php:970
1029
+ #: includes/class-mla-core-options.php:1014
1030
  #: includes/class-mla-settings-shortcodes-tab.php:85
1031
  msgid "markup template"
1032
  msgstr ""
1033
 
1034
+ #: includes/class-mla-core-options.php:974
1035
+ #: includes/class-mla-core-options.php:1018
1036
  msgid "Default columns"
1037
  msgstr ""
1038
 
1039
+ #: includes/class-mla-core-options.php:978
1040
  msgid ""
1041
  "Enter the number of [mla_tag_cloud] columns; must be a positive integer."
1042
  msgstr ""
1043
 
1044
+ #: includes/class-mla-core-options.php:982
1045
+ #: includes/class-mla-core-options.php:1026
1046
  msgid "Default mla_margin"
1047
  msgstr ""
1048
 
1049
+ #: includes/class-mla-core-options.php:986
1050
+ #: includes/class-mla-core-options.php:1030
1051
  msgid ""
1052
  "Enter the CSS \"margin\" property value, in length (px, em, pt, etc.), "
1053
  "percent (%), \"auto\" or \"inherit\".<br>&nbsp;&nbsp;Enter \"none\" to "
1054
  "remove the property entirely."
1055
  msgstr ""
1056
 
1057
+ #: includes/class-mla-core-options.php:990
1058
+ #: includes/class-mla-core-options.php:1034
1059
  msgid "Default mla_itemwidth"
1060
  msgstr ""
1061
 
1062
+ #: includes/class-mla-core-options.php:994
1063
+ #: includes/class-mla-core-options.php:1038
1064
  msgid ""
1065
  "Enter the CSS \"width\" property value, in length (px, em, pt, etc.), "
1066
  "percent (%), \"auto\" or \"inherit\".<br>&nbsp;&nbsp;Enter \"calculate"
1070
  "the property entirely."
1071
  msgstr ""
1072
 
1073
+ #: includes/class-mla-core-options.php:1022
1074
  msgid "Enter the number of [mla_gallery] columns; must be a positive integer."
1075
  msgstr ""
1076
 
1077
+ #: includes/class-mla-core-options.php:1042
1078
  msgid "Thumbnail Substitution Support, mla_viewer"
1079
  msgstr ""
1080
 
1081
+ #: includes/class-mla-core-options.php:1047
1082
  msgid "Enable thumbnail substitution"
1083
  msgstr ""
1084
 
1085
+ #: includes/class-mla-core-options.php:1050
1086
  msgid ""
1087
  "Check this option to allow the \"mla_viewer\" to generate thumbnail images "
1088
  "for PDF documents. Thumbnails are generated dynamically, each time the item "
1091
  "strong>"
1092
  msgstr ""
1093
 
1094
+ #: includes/class-mla-core-options.php:1054
1095
  msgid "Enable Featured Images"
1096
  msgstr ""
1097
 
1098
+ #: includes/class-mla-core-options.php:1057
1099
  msgid ""
1100
  "Check this option to extend Featured Image support to all Media Library "
1101
  "items. The Featured Image can be used as a thumbnail image for the item in "
1102
  "an [mla_gallery] display."
1103
  msgstr ""
1104
 
1105
+ #: includes/class-mla-core-options.php:1061
1106
  msgid "Enable Featured Image Generation"
1107
  msgstr ""
1108
 
1109
+ #: includes/class-mla-core-options.php:1064
1110
  msgid ""
1111
  "Check this option to enable the \"Thumbnail\" generation action in the Media/"
1112
  "Assistant submenu Bulk Actions dropdown."
1113
  msgstr ""
1114
 
1115
+ #: includes/class-mla-core-options.php:1068
1116
  msgid "Enable explicit Ghostscript check"
1117
  msgstr ""
1118
 
1119
+ #: includes/class-mla-core-options.php:1071
1120
  msgid ""
1121
  "Check this option to enable the explicit check for Ghostscript support "
1122
  "required for thumbnail generation. If your Ghostscript software is in a non-"
1125
  "leave this option checked unless you know it is safe to turn it off."
1126
  msgstr ""
1127
 
1128
+ #: includes/class-mla-core-options.php:1075
1129
  msgid "Ghostscript path"
1130
  msgstr ""
1131
 
1132
+ #: includes/class-mla-core-options.php:1079
1133
  msgid ""
1134
  "If your &ldquo;gs&rdquo; executable is in a non-standard location, enter the "
1135
  "full path and filename here, e.g., &ldquo;/usr/bin/gs&rdquo;. It will "
1136
  "override the search for Ghostscript in other places."
1137
  msgstr ""
1138
 
1139
+ #: includes/class-mla-core-options.php:1099
1140
  msgid "Enable custom field mapping"
1141
  msgstr ""
1142
 
1143
+ #: includes/class-mla-core-options.php:1102
1144
+ #: includes/class-mla-core-options.php:1109
1145
+ #: includes/class-mla-core-options.php:1116
1146
+ #: includes/class-mla-core-options.php:1133
1147
  msgid "See Help menu."
1148
  msgstr ""
1149
 
1150
+ #: includes/class-mla-core-options.php:1106
1151
  msgid "Enable custom field mapping when adding new media"
1152
  msgstr ""
1153
 
1154
+ #: includes/class-mla-core-options.php:1113
1155
  msgid "Enable custom field mapping when updating media metadata"
1156
  msgstr ""
1157
 
1158
+ #: includes/class-mla-core-options.php:1120
1159
  msgid ""
1160
  "Update the custom field mapping values above, then click Save Changes to "
1161
  "make the updates permanent.<br>You can also make temporary updates and click "
1163
  "saving any rule changes."
1164
  msgstr ""
1165
 
1166
+ #: includes/class-mla-core-options.php:1130
1167
  msgid "Enable IPTC/EXIF Mapping"
1168
  msgstr ""
1169
 
1170
+ #: includes/class-mla-core-options.php:1137
1171
  msgid "Enable IPTC/EXIF Mapping when adding new media"
1172
  msgstr ""
1173
 
1174
+ #: includes/class-mla-core-options.php:1140
1175
  msgid ""
1176
  "Check this option to enable mapping when uploading new media (attachments)."
1177
  "<br>&nbsp;&nbsp;Does NOT affect the operation of the \"Map\" buttons on the "
1178
  "bulk edit, single edit and settings screens."
1179
  msgstr ""
1180
 
1181
+ #: includes/class-mla-core-options.php:1144
1182
  msgid "Enable IPTC/EXIF Mapping when updating media metadata"
1183
  msgstr ""
1184
 
1185
+ #: includes/class-mla-core-options.php:1147
1186
  msgid ""
1187
  "Check this option to enable mapping when media (attachments) metadata is "
1188
  "regenerated,<br>&nbsp;&nbsp;e.g., when the Media/Edit Media \"Edit Image\" "
1189
  "functions are used."
1190
  msgstr ""
1191
 
1192
+ #: includes/class-mla-core-options.php:1151
1193
  msgid ""
1194
  "Update the standard field mapping values above, then click <strong>Save "
1195
  "Changes</strong> to make the updates permanent.<br>You can also make "
1198
  "changes."
1199
  msgstr ""
1200
 
1201
+ #: includes/class-mla-core-options.php:1161
1202
  msgid ""
1203
  "Update the taxonomy term mapping values above, then click <strong>Save "
1204
  "Changes</strong> or <strong>Map All Attachments, Taxonomy Terms Now</strong>."
1205
  msgstr ""
1206
 
1207
+ #: includes/class-mla-core-options.php:1171
1208
  msgid ""
1209
  "<strong>Update</strong> individual custom field mapping values above, or "
1210
  "make several updates and click <strong>Save Changes</strong> below to apply "
1215
  "changes."
1216
  msgstr ""
1217
 
1218
+ #: includes/class-mla-core-options.php:1181
1219
  msgid "IPTC/EXIF Mapping help"
1220
  msgstr ""
1221
 
1222
+ #: includes/class-mla-core-options.php:1192 includes/class-mla-data.php:3985
1223
+ #: includes/class-mla-edit-media.php:483 includes/class-mla-main.php:2220
1224
  msgid "Name/Slug"
1225
  msgstr ""
1226
 
1227
+ #: includes/class-mla-core-options.php:1199 includes/class-mla-data.php:4028
1228
+ #: includes/class-mla-edit-media.php:486 includes/class-mla-list-table.php:1345
1229
+ #: includes/class-mla-main.php:2224 includes/class-mla-options.php:471
1230
  #: includes/mla-main-search-box-template.php:51
1231
  #: includes/mla-media-modal-js-template.php:48
1232
  msgid "ALT Text"
1233
  msgstr ""
1234
 
1235
+ #: includes/class-mla-core-options.php:1206 includes/class-mla-data.php:4041
1236
+ #: includes/class-mla-edit-media.php:484 includes/class-mla-main.php:2221
1237
+ #: includes/class-mla-options.php:474
1238
  #: includes/mla-main-search-box-template.php:53
1239
  #: includes/mla-media-modal-js-template.php:53
1240
  msgid "Caption"
1241
  msgstr ""
1242
 
1243
+ #: includes/class-mla-core-options.php:1213 includes/class-mla-data.php:4050
1244
+ #: includes/class-mla-edit-media.php:485 includes/class-mla-main.php:2222
1245
+ #: includes/class-mla-options.php:477
1246
  #: includes/class-mla-settings-upload-tab.php:174
1247
+ #: includes/class-mla-settings-upload-tab.php:538
1248
  #: includes/class-mla-settings-view-tab.php:132
1249
  #: includes/class-mla-settings-view-tab.php:388
1250
  #: includes/class-mla-template-support.php:74
1258
  msgid "Description"
1259
  msgstr ""
1260
 
1261
+ #: includes/class-mla-core-options.php:1220 includes/class-mla-data.php:4112
1262
+ #: includes/class-mla-data.php:4121 includes/class-mla-edit-media.php:487
1263
+ #: includes/class-mla-edit-media.php:681 includes/class-mla-main.php:2226
1264
  msgid "Uploaded on"
1265
  msgstr ""
1266
 
1267
+ #: includes/class-mla-core-options.php:1240
1268
  msgid "Enable View and Post MIME Type Support"
1269
  msgstr ""
1270
 
1271
+ #: includes/class-mla-core-options.php:1243
1272
  msgid ""
1273
  "Check/uncheck this option to enable/disable Post MIME Type Support, then "
1274
  "click <strong>Save Changes</strong> to record the new setting."
1275
  msgstr ""
1276
 
1277
+ #: includes/class-mla-core-options.php:1252
1278
  msgid "Post MIME Types help."
1279
  msgstr ""
1280
 
1281
+ #: includes/class-mla-core-options.php:1255
1282
+ #: includes/class-mla-mime-types.php:1682
1283
+ #: includes/class-mla-settings-custom-fields-tab.php:2460
1284
+ #: includes/class-mla-settings-documentation-tab.php:1566
1285
+ #: includes/class-mla-settings-iptc-exif-tab.php:2727
1286
+ #: includes/class-mla-settings-shortcodes-tab.php:1973
1287
  msgctxt "table_view_singular"
1288
  msgid "All"
1289
  msgstr ""
1290
 
1291
+ #: includes/class-mla-core-options.php:1256
1292
+ #: includes/class-mla-mime-types.php:1683
1293
+ #: includes/class-mla-settings-custom-fields-tab.php:2461
1294
+ #: includes/class-mla-settings-documentation-tab.php:1567
1295
+ #: includes/class-mla-settings-iptc-exif-tab.php:2728
1296
+ #: includes/class-mla-settings-shortcodes-tab.php:1974
1297
  msgctxt "table_view_plural"
1298
  msgid "All"
1299
  msgstr ""
1300
 
1301
+ #: includes/class-mla-core-options.php:1261
1302
+ #: includes/class-mla-core-options.php:1315
1303
+ #: includes/class-mla-core-options.php:1324
1304
+ #: includes/class-mla-core-options.php:1333
1305
  msgctxt "post_mime_types_description"
1306
  msgid "Built-in view"
1307
  msgstr ""
1308
 
1309
+ #: includes/class-mla-core-options.php:1264
1310
  msgctxt "table_view_singular"
1311
  msgid "Image"
1312
  msgstr ""
1313
 
1314
+ #: includes/class-mla-core-options.php:1265
1315
  msgctxt "table_view_plural"
1316
  msgid "Images"
1317
  msgstr ""
1318
 
1319
+ #: includes/class-mla-core-options.php:1270
1320
  msgctxt "post_mime_types_description"
1321
  msgid "All image subtypes"
1322
  msgstr ""
1323
 
1324
+ #: includes/class-mla-core-options.php:1273
1325
  msgctxt "table_view_singular"
1326
  msgid "Audio"
1327
  msgstr ""
1328
 
1329
+ #: includes/class-mla-core-options.php:1274
1330
  msgctxt "table_view_plural"
1331
  msgid "Audio"
1332
  msgstr ""
1333
 
1334
+ #: includes/class-mla-core-options.php:1279
1335
  msgctxt "post_mime_types_description"
1336
  msgid "All audio subtypes"
1337
  msgstr ""
1338
 
1339
+ #: includes/class-mla-core-options.php:1282
1340
  msgctxt "table_view_singular"
1341
  msgid "Video"
1342
  msgstr ""
1343
 
1344
+ #: includes/class-mla-core-options.php:1283
1345
  msgctxt "table_view_plural"
1346
  msgid "Video"
1347
  msgstr ""
1348
 
1349
+ #: includes/class-mla-core-options.php:1288
1350
  msgctxt "post_mime_types_description"
1351
  msgid "All video subtypes"
1352
  msgstr ""
1353
 
1354
+ #: includes/class-mla-core-options.php:1291
1355
  msgctxt "table_view_singular"
1356
  msgid "Text"
1357
  msgstr ""
1358
 
1359
+ #: includes/class-mla-core-options.php:1292
1360
  msgctxt "table_view_plural"
1361
  msgid "Text"
1362
  msgstr ""
1363
 
1364
+ #: includes/class-mla-core-options.php:1297
1365
  msgctxt "post_mime_types_description"
1366
  msgid "All text subtypes"
1367
  msgstr ""
1368
 
1369
+ #: includes/class-mla-core-options.php:1300
1370
  msgctxt "table_view_singular"
1371
  msgid "Application"
1372
  msgstr ""
1373
 
1374
+ #: includes/class-mla-core-options.php:1301
1375
  msgctxt "table_view_plural"
1376
  msgid "Applications"
1377
  msgstr ""
1378
 
1379
+ #: includes/class-mla-core-options.php:1306
1380
  msgctxt "post_mime_types_description"
1381
  msgid "All application subtypes"
1382
  msgstr ""
1383
 
1384
+ #: includes/class-mla-core-options.php:1310
1385
  msgctxt "table_view_plural"
1386
  msgid "Unattached"
1387
  msgstr ""
1388
 
1389
+ #: includes/class-mla-core-options.php:1318
1390
  msgctxt "table_view_singular"
1391
  msgid "Attached"
1392
  msgstr ""
1393
 
1394
+ #: includes/class-mla-core-options.php:1319
1395
  msgctxt "table_view_plural"
1396
  msgid "Attached"
1397
  msgstr ""
1398
 
1399
+ #: includes/class-mla-core-options.php:1327
1400
  msgctxt "table_view_singular"
1401
  msgid "Trash"
1402
  msgstr ""
1403
 
1404
+ #: includes/class-mla-core-options.php:1328
1405
  msgctxt "table_view_plural"
1406
  msgid "Trash"
1407
  msgstr ""
1408
 
1409
+ #: includes/class-mla-core-options.php:1339
1410
  msgid "Enable Upload MIME Type Support"
1411
  msgstr ""
1412
 
1413
+ #: includes/class-mla-core-options.php:1342
1414
  msgid ""
1415
  "Check/uncheck this option to enable/disable Upload MIME Type Support, then "
1416
  "click <strong>Save Changes</strong> to record the new setting."
1417
  msgstr ""
1418
 
1419
+ #: includes/class-mla-core-options.php:1351
1420
  msgid "Upload MIME Types help."
1421
  msgstr ""
1422
 
1423
+ #: includes/class-mla-core-options.php:1356
1424
  msgid "Enable MLA File Type Icons Support"
1425
  msgstr ""
1426
 
1427
+ #: includes/class-mla-core-options.php:1359
1428
  msgid ""
1429
  "Check/uncheck this option to enable/disable MLA File Type Icons Support, "
1430
  "then click <strong>Save Changes</strong> to record the new setting."
1431
  msgstr ""
1432
 
1433
+ #: includes/class-mla-core-options.php:1363
1434
  msgid "Display Limit"
1435
  msgstr ""
1436
 
1437
+ #: includes/class-mla-core-options.php:1367
1438
  msgid ""
1439
  "Enter the maximum number of debug log characters to display; enter zero or "
1440
  "leave blank for no limit."
1441
  msgstr ""
1442
 
1443
+ #: includes/class-mla-core-options.php:1371
1444
  msgid "Debug File"
1445
  msgstr ""
1446
 
1447
+ #: includes/class-mla-core-options.php:1375
1448
  msgid ""
1449
  "Enter the name of an alternate, MLA-specific debug log file; leave blank to "
1450
  "use the PHP error_log.<br>&nbsp;&nbsp;The WP_CONTENT_DIR value (below) will "
1452
  "\"."
1453
  msgstr ""
1454
 
1455
+ #: includes/class-mla-core-options.php:1379
1456
  msgid "Replace PHP error_log file"
1457
  msgstr ""
1458
 
1459
+ #: includes/class-mla-core-options.php:1382
1460
  msgid ""
1461
  "Check this option to replace the PHP error_log file with the MLA Debug File."
1462
  "<br>&nbsp;&nbsp;allows capture of PHP messages in the MLA Debug File."
1463
  msgstr ""
1464
 
1465
+ #: includes/class-mla-core-options.php:1386
1466
  msgid "PHP Reporting"
1467
  msgstr ""
1468
 
1469
+ #: includes/class-mla-core-options.php:1390
1470
  msgid ""
1471
  "Enter a numeric error_reporting value, e.g., 0x7FFF or 32767; leave blank to "
1472
  "use the existing PHP error_reporting value."
1473
  msgstr ""
1474
 
1475
+ #: includes/class-mla-core-options.php:1394
1476
  msgid "MLA Reporting"
1477
  msgstr ""
1478
 
1479
+ #: includes/class-mla-core-options.php:1398
1480
  msgid ""
1481
  "Enter a numeric MLA_DEBUG_LEVEL value, e.g., 0x0003 or 3; leave blank to use "
1482
  "the existing MLA_DEBUG_LEVEL value."
1494
  msgid "%1$s: mla_load_template file \"%2$s\" bad source type \"%3$s\"."
1495
  msgstr ""
1496
 
1497
+ #: includes/class-mla-core.php:1288
1498
  #, php-format
1499
  msgid "%1$s: Bad specification part \"%2$s\""
1500
  msgstr ""
1501
 
1502
+ #: includes/class-mla-core.php:1294
1503
  #, php-format
1504
  msgid "%1$s: Bad specification option \"%2$s\""
1505
  msgstr ""
1506
 
1507
+ #: includes/class-mla-core.php:1298
1508
  #, php-format
1509
  msgid "%1$s: Bad specification prefix \"%2$s\""
1510
  msgstr ""
1511
 
1512
+ #: includes/class-mla-core.php:1398
1513
  msgid "Most Used"
1514
  msgstr ""
1515
 
1516
+ #: includes/class-mla-core.php:1427
1517
  #, php-format
1518
  msgid "+ %s"
1519
  msgstr ""
1520
 
1521
+ #: includes/class-mla-core.php:1433 includes/class-mla-edit-media.php:364
1522
+ #: includes/class-mla-edit-media.php:420 includes/class-mla-main.php:1906
1523
+ #: includes/class-mla-main.php:2087 includes/class-mla-main.php:2151
1524
  #: includes/class-mla-media-modal.php:630
1525
  #: includes/mla-media-modal-js-template.php:28
1526
  #: includes/mla-media-modal-js-template.php:75
1573
  msgstr ""
1574
 
1575
  #: includes/class-mla-data-query.php:294
1576
+ #: includes/class-mla-settings-custom-fields-tab.php:1208
1577
+ #: includes/class-mla-settings-documentation-tab.php:522
1578
+ #: includes/class-mla-settings-iptc-exif-tab.php:1284
1579
+ #: includes/class-mla-settings-shortcodes-tab.php:956
1580
  msgctxt "list_table_column"
1581
  msgid "Name"
1582
  msgstr ""
1621
  msgid "Caption"
1622
  msgstr ""
1623
 
1624
+ #: includes/class-mla-data-query.php:303 includes/class-mla-mime-types.php:611
1625
+ #: includes/class-mla-mime-types.php:684 includes/class-mla-mime-types.php:763
1626
+ #: includes/class-mla-settings-documentation-tab.php:525
1627
+ #: includes/class-mla-settings-shortcodes-tab.php:959
1628
  msgctxt "list_table_column"
1629
  msgid "Description"
1630
  msgstr ""
1631
 
1632
+ #: includes/class-mla-data-query.php:304 includes/class-mla-mime-types.php:603
1633
+ #: includes/class-mla-mime-types.php:681
1634
  msgctxt "list_table_column"
1635
  msgid "MIME Type"
1636
  msgstr ""
1665
  msgid "Attached to"
1666
  msgstr ""
1667
 
1668
+ #: includes/class-mla-data-query.php:695 includes/class-mla-edit-media.php:323
1669
+ #: includes/class-mla-main.php:1900 includes/class-mla-main.php:2026
1670
+ #: includes/class-mla-media-modal.php:600 includes/class-mla-mime-types.php:801
1671
+ #: includes/class-mla-mime-types.php:1450
1672
+ #: includes/class-mla-mime-types.php:2640
1673
  #: includes/class-mla-settings-custom-fields-tab.php:552
1674
  #: includes/class-mla-settings-custom-fields-tab.php:718
1675
+ #: includes/class-mla-settings-custom-fields-tab.php:2034
1676
+ #: includes/class-mla-settings-documentation-tab.php:323
1677
+ #: includes/class-mla-settings-documentation-tab.php:1296
1678
  #: includes/class-mla-settings-iptc-exif-tab.php:631
1679
  #: includes/class-mla-settings-iptc-exif-tab.php:799
1680
+ #: includes/class-mla-settings-iptc-exif-tab.php:2264
1681
  #: includes/class-mla-settings-shortcodes-tab.php:503
1682
+ #: includes/class-mla-settings-shortcodes-tab.php:1630
1683
  #: includes/class-mla-settings-upload-tab.php:301
1684
  #: includes/class-mla-settings-view-tab.php:166
1685
  #, php-format
1687
  msgid "%1$s: %2$s non-array \"%3$s\""
1688
  msgstr ""
1689
 
1690
+ #: includes/class-mla-data-query.php:1156
1691
  #, php-format
1692
  msgctxt "error_log"
1693
  msgid "%1$s: _execute_list_table_query $wp_filter = \"%2$s\"."
1694
  msgstr ""
1695
 
1696
+ #: includes/class-mla-data-query.php:1156
1697
+ #: includes/class-mla-data-query.php:1171
1698
+ #: includes/class-mla-data-query.php:1173
1699
+ #: includes/class-mla-data-query.php:1656
1700
+ #: includes/class-mla-data-query.php:1728
1701
+ #: includes/class-mla-data-query.php:1800
1702
+ #: includes/class-mla-data-query.php:1897
1703
+ #: includes/class-mla-data-query.php:1989
1704
+ #: includes/class-mla-data-query.php:2008
1705
  msgid "DEBUG"
1706
  msgstr ""
1707
 
1708
+ #: includes/class-mla-data-query.php:1171
1709
  #, php-format
1710
  msgctxt "error_log"
1711
  msgid "%1$s: _execute_list_table_query WP_Query = \"%2$s\"."
1712
  msgstr ""
1713
 
1714
+ #: includes/class-mla-data-query.php:1173
1715
  #, php-format
1716
  msgctxt "error_log"
1717
  msgid "%1$s: _execute_list_table_query SQL_request = \"%2$s\"."
1718
  msgstr ""
1719
 
1720
+ #: includes/class-mla-data-query.php:1656
1721
  #, php-format
1722
  msgctxt "error_log"
1723
  msgid "%1$s: mla_query_posts_search_filter = \"%2$s\"."
1724
  msgstr ""
1725
 
1726
+ #: includes/class-mla-data-query.php:1728
1727
  #, php-format
1728
  msgctxt "error_log"
1729
  msgid "%1$s: mla_query_posts_where_filter = \"%2$s\"."
1730
  msgstr ""
1731
 
1732
+ #: includes/class-mla-data-query.php:1800
1733
  #, php-format
1734
  msgctxt "error_log"
1735
  msgid "%1$s: mla_query_posts_join_filter = \"%2$s\"."
1736
  msgstr ""
1737
 
1738
+ #: includes/class-mla-data-query.php:1897
1739
  #, php-format
1740
  msgctxt "error_log"
1741
  msgid "%1$s: mla_query_posts_orderby_filter = \"%2$s\"."
1742
  msgstr ""
1743
 
1744
+ #: includes/class-mla-data-query.php:1989
1745
  #, php-format
1746
  msgctxt "error_log"
1747
  msgid "%1$s: mla_query_posts_clauses_filter = \"%2$s\"."
1748
  msgstr ""
1749
 
1750
+ #: includes/class-mla-data-query.php:2008
1751
  #, php-format
1752
  msgctxt "error_log"
1753
  msgid "%1$s: mla_query_posts_clauses_request_filter = \"%2$s\"."
1755
 
1756
  #: includes/class-mla-data-references.php:316
1757
  #: includes/class-mla-data-references.php:662
1758
+ #: includes/class-mla-data-source.php:688
1759
+ #: includes/class-mla-data-source.php:689
1760
  msgid "ORPHAN"
1761
  msgstr ""
1762
 
1854
 
1855
  #: includes/class-mla-data.php:3434
1856
  #: includes/class-mla-settings-custom-fields-tab.php:810
1857
+ #: includes/class-mla-settings-custom-fields-tab.php:1520
1858
  #: includes/class-mla-settings-iptc-exif-tab.php:893
1859
+ #: includes/class-mla-settings-iptc-exif-tab.php:1626
1860
+ #: includes/class-mla-settings-iptc-exif-tab.php:2438
1861
  #: includes/class-mla-settings-view-tab.php:398
1862
+ #: includes/class-mla-settings-view-tab.php:796
1863
+ #: includes/class-mla-settings-view-tab.php:812
1864
  #: includes/class-mla-wpml-support.php:1562
1865
  msgid "Yes"
1866
  msgstr ""
1867
 
1868
  #: includes/class-mla-data.php:3436
1869
  #: includes/class-mla-settings-custom-fields-tab.php:811
1870
+ #: includes/class-mla-settings-custom-fields-tab.php:1522
1871
  #: includes/class-mla-settings-iptc-exif-tab.php:894
1872
+ #: includes/class-mla-settings-iptc-exif-tab.php:1628
1873
+ #: includes/class-mla-settings-iptc-exif-tab.php:2438
1874
  #: includes/class-mla-settings-view-tab.php:397
1875
+ #: includes/class-mla-settings-view-tab.php:798
1876
+ #: includes/class-mla-settings-view-tab.php:814
1877
  #: includes/class-mla-wpml-support.php:1563
1878
  msgid "No"
1879
  msgstr ""
1911
  #: includes/class-mla-data.php:4072 includes/class-mla-data.php:4085
1912
  #: includes/class-mla-data.php:4094 includes/class-mla-data.php:4103
1913
  #: includes/class-mla-data.php:4112 includes/class-mla-data.php:4121
1914
+ #: includes/class-mla-mime-types.php:1284
1915
+ #: includes/class-mla-mime-types.php:2404
1916
  #, php-format
1917
  msgid "Changing %1$s from \"%2$s\" to \"%3$s\""
1918
  msgstr ""
1956
  msgid "%1$s: Could not change ALT Text from \"%2$s\" to \"%3$s\""
1957
  msgstr ""
1958
 
1959
+ #: includes/class-mla-data.php:4061 includes/class-mla-list-table.php:1047
 
1960
  #: includes/class-mla-list-table.php:1050
1961
+ #: includes/class-mla-list-table.php:1053
1962
+ #: includes/class-mla-list-table.php:1121 includes/class-mla-options.php:2099
1963
  #: includes/class-mla-settings-iptc-exif-tab.php:484
1964
  #: includes/class-mla-settings-iptc-exif-tab.php:863
1965
  msgid "Parent"
1966
  msgstr ""
1967
 
1968
+ #: includes/class-mla-data.php:4072 includes/class-mla-edit-media.php:820
1969
+ #: includes/class-mla-edit-media.php:1025 includes/class-mla-main.php:2229
1970
  #: includes/class-mla-settings-view-tab.php:130
1971
  #: includes/class-mla-settings-view-tab.php:386
1972
  msgid "Menu Order"
1973
  msgstr ""
1974
 
1975
+ #: includes/class-mla-data.php:4085 includes/class-mla-edit-media.php:451
1976
+ #: includes/class-mla-list-table.php:1501
1977
+ #: includes/class-mla-list-table.php:1504 includes/class-mla-main.php:2032
1978
+ #: includes/class-mla-main.php:2188
1979
  msgid "Author"
1980
  msgstr ""
1981
 
1982
+ #: includes/class-mla-data.php:4094 includes/class-mla-edit-media.php:476
1983
+ #: includes/class-mla-main.php:2241
1984
  msgid "Comments"
1985
  msgstr ""
1986
 
1987
+ #: includes/class-mla-data.php:4103 includes/class-mla-edit-media.php:477
1988
+ #: includes/class-mla-main.php:2242
1989
  msgid "Pings"
1990
  msgstr ""
1991
 
2020
  msgid "%1$s \"%2$s\" terms"
2021
  msgstr ""
2022
 
2023
+ #: includes/class-mla-data.php:4240 includes/class-mla-main.php:1265
2024
  #, php-format
2025
  msgid "Item %1$d, no changes detected."
2026
  msgstr ""
2035
  msgid "%1$s: Item %2$d update failed."
2036
  msgstr ""
2037
 
2038
+ #: includes/class-mla-edit-media.php:133 includes/class-mla-edit-media.php:187
2039
+ #: includes/class-mla-edit-media.php:240 includes/class-mla-main.php:454
2040
+ #: includes/class-mla-main.php:1027 includes/class-mla-main.php:1784
2041
+ #: includes/class-mla-media-modal.php:259 includes/class-mla-options.php:1602
2042
  #: includes/class-mla-polylang-support.php:367
2043
  #: includes/class-mla-settings-custom-fields-tab.php:59
2044
  #: includes/class-mla-settings-custom-fields-tab.php:94
2051
  msgid ","
2052
  msgstr ""
2053
 
2054
+ #: includes/class-mla-edit-media.php:182
2055
  msgid "Upload New Media items"
2056
  msgstr ""
2057
 
2058
+ #: includes/class-mla-edit-media.php:183 includes/class-mla-edit-media.php:471
2059
  msgid "Open Bulk Edit area"
2060
  msgstr ""
2061
 
2062
+ #: includes/class-mla-edit-media.php:184
2063
  msgid "Close Bulk Edit area"
2064
  msgstr ""
2065
 
2066
+ #: includes/class-mla-edit-media.php:188 includes/class-mla-edit-media.php:242
2067
+ #: includes/class-mla-main.php:441
2068
  msgid "An ajax.fail error has occurred. Please reload the page and try again."
2069
  msgstr ""
2070
 
2071
+ #: includes/class-mla-edit-media.php:189 includes/class-mla-edit-media.php:243
2072
+ #: includes/class-mla-main.php:442
2073
  msgid "An ajax.done error has occurred. Please reload the page and try again."
2074
  msgstr ""
2075
 
2076
+ #: includes/class-mla-edit-media.php:244 includes/class-mla-main.php:1986
2077
  #, php-format
2078
  msgid "Uploaded on: %s"
2079
  msgstr ""
2080
 
2081
+ #: includes/class-mla-edit-media.php:245 includes/class-mla-edit-media.php:693
2082
  msgid "Last modified"
2083
  msgstr ""
2084
 
2085
+ #: includes/class-mla-edit-media.php:343 includes/class-mla-edit-media.php:399
2086
+ #: includes/class-mla-main.php:2066 includes/class-mla-main.php:2130
2087
+ msgid "+&nbsp;Add&nbsp;New&nbsp;Term"
2088
+ msgstr ""
2089
+
2090
+ #: includes/class-mla-edit-media.php:344 includes/class-mla-edit-media.php:400
2091
+ #: includes/class-mla-main.php:2067 includes/class-mla-main.php:2131
2092
+ msgid "Add New"
2093
  msgstr ""
2094
 
2095
+ #: includes/class-mla-edit-media.php:362 includes/class-mla-edit-media.php:418
2096
+ #: includes/class-mla-main.php:2085 includes/class-mla-main.php:2149
2097
+ msgid "?&nbsp;Search"
2098
  msgstr ""
2099
 
2100
+ #: includes/class-mla-edit-media.php:365 includes/class-mla-edit-media.php:421
2101
+ #: includes/class-mla-edit-media.php:430 includes/class-mla-main.php:2088
2102
+ #: includes/class-mla-main.php:2152 includes/class-mla-main.php:2161
2103
  msgid "Add"
2104
  msgstr ""
2105
 
2106
+ #: includes/class-mla-edit-media.php:366 includes/class-mla-edit-media.php:422
2107
+ #: includes/class-mla-edit-media.php:431 includes/class-mla-main.php:2089
2108
+ #: includes/class-mla-main.php:2153 includes/class-mla-main.php:2162
2109
  msgid "Remove"
2110
  msgstr ""
2111
 
2112
+ #: includes/class-mla-edit-media.php:367 includes/class-mla-edit-media.php:423
2113
+ #: includes/class-mla-edit-media.php:432 includes/class-mla-main.php:2090
2114
+ #: includes/class-mla-main.php:2154 includes/class-mla-main.php:2163
2115
  #: includes/class-mla-settings-custom-fields-tab.php:481
2116
  #: includes/class-mla-settings-custom-fields-tab.php:781
2117
+ #: includes/class-mla-settings-custom-fields-tab.php:1506
2118
  #: includes/class-mla-settings-iptc-exif-tab.php:478
2119
  #: includes/class-mla-settings-iptc-exif-tab.php:860
2120
+ #: includes/class-mla-settings-iptc-exif-tab.php:1567
2121
+ #: includes/class-mla-settings-iptc-exif-tab.php:2419
2122
  msgid "Replace"
2123
  msgstr ""
2124
 
2125
+ #: includes/class-mla-edit-media.php:470
2126
  msgid ""
2127
  "IMPORTANT: Make your entries BEFORE uploading new items. Pull down the Help "
2128
  "menu for more information."
2129
  msgstr ""
2130
 
2131
+ #: includes/class-mla-edit-media.php:472 includes/class-mla-main.php:2235
2132
+ #: includes/class-mla-settings.php:1397
2133
  msgid "Reset"
2134
  msgstr ""
2135
 
2136
+ #: includes/class-mla-edit-media.php:478 includes/class-mla-main.php:2243
2137
+ #: includes/class-mla-main.php:2299
2138
  #: includes/class-mla-settings-custom-fields-tab.php:809
2139
  #: includes/class-mla-settings-iptc-exif-tab.php:892
2140
  #: includes/class-mla-settings-upload-tab.php:122
2141
+ #: includes/class-mla-settings-upload-tab.php:549
2142
  #: includes/class-mla-settings-view-tab.php:396
2143
  msgid "No Change"
2144
  msgstr ""
2145
 
2146
+ #: includes/class-mla-edit-media.php:479 includes/class-mla-main.php:2244
2147
  msgid "Allow"
2148
  msgstr ""
2149
 
2150
+ #: includes/class-mla-edit-media.php:480 includes/class-mla-main.php:2245
2151
  msgid "Do not allow"
2152
  msgstr ""
2153
 
2154
+ #: includes/class-mla-edit-media.php:488 includes/class-mla-list-table.php:1047
2155
+ #: includes/class-mla-list-table.php:1118 includes/class-mla-main.php:2227
2156
  msgid "Parent ID"
2157
  msgstr ""
2158
 
2159
+ #: includes/class-mla-edit-media.php:489 includes/class-mla-edit-media.php:1005
2160
+ #: includes/class-mla-main.php:2228
2161
+ #: includes/class-mla-settings-upload-tab.php:1463
2162
  msgid "Select"
2163
  msgstr ""
2164
 
2165
+ #: includes/class-mla-edit-media.php:582
2166
  msgid "Custom field mapping updated."
2167
  msgstr ""
2168
 
2169
+ #: includes/class-mla-edit-media.php:583
2170
  msgid "IPTC/EXIF mapping updated."
2171
  msgstr ""
2172
 
2173
+ #: includes/class-mla-edit-media.php:584
2174
  msgid "Custom field mapping is disabled."
2175
  msgstr ""
2176
 
2177
+ #: includes/class-mla-edit-media.php:585
2178
  msgid "IPTC/EXIF mapping is disabled."
2179
  msgstr ""
2180
 
2181
+ #: includes/class-mla-edit-media.php:620 includes/class-mla-main.php:1970
2182
  msgid "Month"
2183
  msgstr ""
2184
 
2185
+ #: includes/class-mla-edit-media.php:626 includes/class-mla-main.php:1976
2186
  #, php-format
2187
  msgid "%1$s-%2$s"
2188
  msgstr ""
2189
 
2190
+ #: includes/class-mla-edit-media.php:630 includes/class-mla-main.php:1980
2191
  msgid "Day"
2192
  msgstr ""
2193
 
2194
+ #: includes/class-mla-edit-media.php:631 includes/class-mla-main.php:1981
2195
  msgid "Year"
2196
  msgstr ""
2197
 
2198
+ #: includes/class-mla-edit-media.php:632 includes/class-mla-main.php:1982
2199
  msgid "Hour"
2200
  msgstr ""
2201
 
2202
+ #: includes/class-mla-edit-media.php:633 includes/class-mla-main.php:1983
2203
  msgid "Minute"
2204
  msgstr ""
2205
 
2206
+ #: includes/class-mla-edit-media.php:637 includes/class-mla-main.php:1988
2207
  #, php-format
2208
  msgid "%1$s %2$s, %3$s @ %4$s:%5$s"
2209
  msgstr ""
2210
 
2211
+ #: includes/class-mla-edit-media.php:660
2212
  msgid "OK"
2213
  msgstr ""
2214
 
2215
+ #: includes/class-mla-edit-media.php:661 includes/class-mla-main.php:1923
2216
+ #: includes/class-mla-main.php:2234
2217
  #: includes/class-mla-polylang-support.php:2054
2218
  #: includes/class-mla-settings-custom-fields-tab.php:509
2219
  #: includes/class-mla-settings-custom-fields-tab.php:730
2220
  #: includes/class-mla-settings-custom-fields-tab.php:812
2221
+ #: includes/class-mla-settings-documentation-tab.php:199
2222
  #: includes/class-mla-settings-iptc-exif-tab.php:517
2223
  #: includes/class-mla-settings-iptc-exif-tab.php:811
2224
  #: includes/class-mla-settings-iptc-exif-tab.php:895
2226
  #: includes/class-mla-settings-shortcodes-tab.php:476
2227
  #: includes/class-mla-settings-upload-tab.php:177
2228
  #: includes/class-mla-settings-upload-tab.php:251
2229
+ #: includes/class-mla-settings-upload-tab.php:545
2230
  #: includes/class-mla-settings-view-tab.php:135
2231
  #: includes/class-mla-settings-view-tab.php:393
2232
  #: includes/class-mla-thumbnail-generation.php:651
2233
  msgid "Cancel"
2234
  msgstr ""
2235
 
2236
+ #: includes/class-mla-edit-media.php:677
2237
  msgid "M j, Y @ H:i"
2238
  msgstr ""
2239
 
2240
+ #: includes/class-mla-edit-media.php:683 includes/class-mla-list-table.php:619
2241
+ #: includes/class-mla-list-table.php:747 includes/class-mla-list-table.php:1002
2242
+ #: includes/class-mla-list-table.php:1173
2243
+ #: includes/class-mla-list-table.php:1222
2244
+ #: includes/class-mla-list-table.php:1268
2245
+ #: includes/class-mla-list-table.php:1313
2246
+ #: includes/class-mla-list-table.php:1535
2247
+ #: includes/class-mla-list-table.php:1861
2248
  #: includes/class-mla-polylang-support.php:366
2249
+ #: includes/class-mla-settings-custom-fields-tab.php:1349
2250
+ #: includes/class-mla-settings-custom-fields-tab.php:1688
2251
+ #: includes/class-mla-settings-iptc-exif-tab.php:1427
2252
+ #: includes/class-mla-settings-iptc-exif-tab.php:1794
2253
+ #: includes/class-mla-settings-shortcodes-tab.php:1074
2254
+ #: includes/class-mla-settings-upload-tab.php:918
2255
+ #: includes/class-mla-settings-upload-tab.php:1207
2256
+ #: includes/class-mla-settings-view-tab.php:717
2257
+ #: includes/class-mla-settings-view-tab.php:919
2258
  msgid "Edit"
2259
  msgstr ""
2260
 
2261
+ #: includes/class-mla-edit-media.php:684
2262
  msgid "Edit upload date and time"
2263
  msgstr ""
2264
 
2265
+ #: includes/class-mla-edit-media.php:686
2266
  msgid "Upload Date and time"
2267
  msgstr ""
2268
 
2269
+ #: includes/class-mla-edit-media.php:716
2270
  msgid "Map Custom Field metadata for this item"
2271
  msgstr ""
2272
 
2273
+ #: includes/class-mla-edit-media.php:716 includes/class-mla-main.php:1698
2274
+ #: includes/class-mla-main.php:2250
2275
  msgid "Map Custom Field metadata"
2276
  msgstr ""
2277
 
2278
+ #: includes/class-mla-edit-media.php:720
2279
  msgid "Map IPTC/EXIF metadata for this item"
2280
  msgstr ""
2281
 
2282
+ #: includes/class-mla-edit-media.php:720 includes/class-mla-main.php:1701
2283
+ #: includes/class-mla-main.php:2248
2284
  msgid "Map IPTC/EXIF metadata"
2285
  msgstr ""
2286
 
2287
+ #: includes/class-mla-edit-media.php:816 includes/class-mla-edit-media.php:1006
2288
  msgid "Parent Info"
2289
  msgstr ""
2290
 
2291
+ #: includes/class-mla-edit-media.php:826 includes/class-mla-edit-media.php:1049
2292
  msgid "Attachment Metadata"
2293
  msgstr ""
2294
 
2295
+ #: includes/class-mla-edit-media.php:896 includes/class-mla-edit-media.php:938
2296
+ #: includes/class-mla-main.php:666 includes/class-mla-settings.php:589
2297
  #, php-format
2298
  msgctxt "error_log"
2299
  msgid "%1$s: %2$s discarding \"%3$s\"; no title/order"
2300
  msgstr ""
2301
 
2302
+ #: includes/class-mla-edit-media.php:1004
2303
  msgid "Post Parent"
2304
  msgstr ""
2305
 
2306
+ #: includes/class-mla-edit-media.php:1005 includes/class-mla-main.php:1905
2307
  msgid "Select Parent"
2308
  msgstr ""
2309
 
2316
  msgid "No"
2317
  msgstr ""
2318
 
2319
+ #: includes/class-mla-list-table.php:432
2320
  #: includes/class-mla-settings-custom-fields-tab.php:997
2321
  #: includes/class-mla-settings-iptc-exif-tab.php:1069
2322
+ #: includes/class-mla-settings-upload-tab.php:643
2323
  #: includes/class-mla-settings-view-tab.php:490
2324
  msgid "List View"
2325
  msgstr ""
2326
 
2327
+ #: includes/class-mla-list-table.php:499 includes/class-mla-list-table.php:551
2328
+ #: includes/class-mla-list-table.php:1047
2329
+ #: includes/class-mla-list-table.php:1118
2330
+ #: includes/class-mla-list-table.php:1341
2331
+ #: includes/class-mla-list-table.php:1385
2332
+ #: includes/class-mla-list-table.php:1417
2333
+ #: includes/class-mla-list-table.php:1501
2334
  msgid "Filter by"
2335
  msgstr ""
2336
 
2337
+ #: includes/class-mla-list-table.php:509
2338
  #: includes/class-mla-media-modal-ajax.php:490
2339
  msgid "Not Supported"
2340
  msgstr ""
2341
 
2342
+ #: includes/class-mla-list-table.php:571
2343
+ #: includes/class-mla-settings-custom-fields-tab.php:1297
2344
+ #: includes/class-mla-settings-documentation-tab.php:607
2345
+ #: includes/class-mla-settings-iptc-exif-tab.php:1375
2346
+ #: includes/class-mla-settings-shortcodes-tab.php:1029
2347
+ #: includes/class-mla-settings-upload-tab.php:854
2348
+ #: includes/class-mla-settings-upload-tab.php:1411
2349
  #: includes/class-mla-settings-view-tab.php:654
2350
  #, php-format
2351
  msgid "column_default: %1$s, %2$s"
2352
  msgstr ""
2353
 
2354
+ #: includes/class-mla-list-table.php:734
2355
  msgid "Restore this item from the Trash"
2356
  msgstr ""
2357
 
2358
+ #: includes/class-mla-list-table.php:734 includes/class-mla-list-table.php:1858
2359
  msgid "Restore"
2360
  msgstr ""
2361
 
2362
+ #: includes/class-mla-list-table.php:747
2363
+ #: includes/class-mla-settings-custom-fields-tab.php:1349
2364
+ #: includes/class-mla-settings-iptc-exif-tab.php:1427
2365
+ #: includes/class-mla-settings-shortcodes-tab.php:1074
2366
+ #: includes/class-mla-settings-upload-tab.php:918
2367
+ #: includes/class-mla-settings-view-tab.php:717
2368
  msgid "Edit this item"
2369
  msgstr ""
2370
 
2371
+ #: includes/class-mla-list-table.php:748
2372
+ #: includes/class-mla-settings-custom-fields-tab.php:1352
2373
+ #: includes/class-mla-settings-iptc-exif-tab.php:1430
2374
+ #: includes/class-mla-settings-upload-tab.php:920
2375
+ #: includes/class-mla-settings-view-tab.php:719
2376
  msgid "Edit this item inline"
2377
  msgstr ""
2378
 
2379
+ #: includes/class-mla-list-table.php:748 includes/class-mla-main.php:2218
2380
+ #: includes/class-mla-options.php:1195
2381
  #: includes/class-mla-settings-custom-fields-tab.php:472
2382
  #: includes/class-mla-settings-custom-fields-tab.php:772
2383
+ #: includes/class-mla-settings-custom-fields-tab.php:1352
2384
+ #: includes/class-mla-settings-custom-fields-tab.php:1462
2385
  #: includes/class-mla-settings-iptc-exif-tab.php:839
2386
+ #: includes/class-mla-settings-iptc-exif-tab.php:1430
2387
+ #: includes/class-mla-settings-upload-tab.php:920
2388
+ #: includes/class-mla-settings-view-tab.php:719
2389
  msgid "Quick Edit"
2390
  msgstr ""
2391
 
2392
+ #: includes/class-mla-list-table.php:754
2393
  msgid "Move this item to the Trash"
2394
  msgstr ""
2395
 
2396
+ #: includes/class-mla-list-table.php:754 includes/class-mla-list-table.php:1864
2397
  msgid "Move to Trash"
2398
  msgstr ""
2399
 
2400
+ #: includes/class-mla-list-table.php:759
2401
+ #: includes/class-mla-settings-custom-fields-tab.php:1360
2402
+ #: includes/class-mla-settings-iptc-exif-tab.php:1440
2403
+ #: includes/class-mla-settings-shortcodes-tab.php:1080
2404
+ #: includes/class-mla-settings-upload-tab.php:924
2405
+ #: includes/class-mla-settings-view-tab.php:725
2406
  msgid "Delete this item Permanently"
2407
  msgstr ""
2408
 
2409
+ #: includes/class-mla-list-table.php:759 includes/class-mla-list-table.php:1859
2410
+ #: includes/class-mla-list-table.php:1866
2411
+ #: includes/class-mla-settings-custom-fields-tab.php:1360
2412
+ #: includes/class-mla-settings-custom-fields-tab.php:1689
2413
+ #: includes/class-mla-settings-iptc-exif-tab.php:1440
2414
+ #: includes/class-mla-settings-iptc-exif-tab.php:1795
2415
+ #: includes/class-mla-settings-shortcodes-tab.php:1080
2416
+ #: includes/class-mla-settings-upload-tab.php:924
2417
+ #: includes/class-mla-settings-view-tab.php:725
2418
+ #: includes/class-mla-settings-view-tab.php:920
2419
  msgid "Delete Permanently"
2420
  msgstr ""
2421
 
2422
+ #: includes/class-mla-list-table.php:767
2423
+ #: includes/class-mla-settings-documentation-tab.php:688
2424
+ #: includes/class-mla-settings.php:1387
2425
  msgid "Download"
2426
  msgstr ""
2427
 
2428
+ #: includes/class-mla-list-table.php:769
2429
+ #: includes/class-mla-settings-documentation-tab.php:691
2430
+ #: includes/class-mla-settings-shortcodes-tab.php:1072
2431
  #: includes/class-mla-settings-view-tab.php:374
2432
  msgid "View"
2433
  msgstr ""
2434
 
2435
+ #: includes/class-mla-list-table.php:1018
2436
  msgid "File name"
2437
  msgstr ""
2438
 
2439
+ #: includes/class-mla-list-table.php:1115
2440
  msgid "(no title: bad ID)"
2441
  msgstr ""
2442
 
2443
+ #: includes/class-mla-list-table.php:1388
2444
  #: includes/class-mla-settings-upload-tab.php:167
2445
+ #: includes/class-mla-settings-upload-tab.php:532
2446
  msgid "MIME Type"
2447
  msgstr ""
2448
 
2449
+ #: includes/class-mla-list-table.php:1421
2450
  msgid "Base File"
2451
  msgstr ""
2452
 
2453
+ #: includes/class-mla-list-table.php:1437
2454
+ #: includes/class-mla-list-table.php:1470
2455
  msgid "Unpublished"
2456
  msgstr ""
2457
 
2458
+ #: includes/class-mla-list-table.php:1446
2459
+ #: includes/class-mla-list-table.php:1477
2460
  #, php-format
2461
  msgid "%1$s from now"
2462
  msgstr ""
2463
 
2464
+ #: includes/class-mla-list-table.php:1449
2465
+ #: includes/class-mla-list-table.php:1479
2466
  #, php-format
2467
  msgid "%1$s ago"
2468
  msgstr ""
2469
 
2470
+ #: includes/class-mla-list-table.php:1563
2471
  msgid "Set Parent"
2472
  msgstr ""
2473
 
2474
+ #: includes/class-mla-list-table.php:1713
2475
  msgctxt "uploaded files"
2476
  msgid "All"
2477
  msgid_plural "All"
2478
  msgstr[0] ""
2479
  msgstr[1] ""
2480
 
2481
+ #: includes/class-mla-list-table.php:1958
2482
+ #: includes/class-mla-settings-custom-fields-tab.php:1754
2483
+ #: includes/class-mla-settings-iptc-exif-tab.php:1860
2484
+ #: includes/class-mla-settings-shortcodes-tab.php:1348
2485
  msgid "Filter"
2486
  msgstr ""
2487
 
2488
+ #: includes/class-mla-list-table.php:1961
2489
  #: includes/mla-media-modal-js-template.php:72
2490
  msgid "Terms Search"
2491
  msgstr ""
2492
 
2493
+ #: includes/class-mla-list-table.php:1966
2494
  #: includes/class-mla-polylang-support.php:2061
2495
  #: includes/class-mla-thumbnail-generation.php:650
2496
  msgid "Clear Filter-by"
2497
  msgstr ""
2498
 
2499
+ #: includes/class-mla-list-table.php:1969
2500
  msgid "Empty Trash"
2501
  msgstr ""
2502
 
2503
+ #: includes/class-mla-main.php:443
2504
  msgid "Error while saving the changes."
2505
  msgstr ""
2506
 
2507
+ #: includes/class-mla-main.php:444
2508
  #: includes/class-mla-settings-custom-fields-tab.php:57
2509
  #: includes/class-mla-settings-custom-fields-tab.php:92
2510
  #: includes/class-mla-settings-iptc-exif-tab.php:57
2514
  msgid "Remove From Bulk Edit"
2515
  msgstr ""
2516
 
2517
+ #: includes/class-mla-main.php:446
2518
  msgid "Bulk Edit items"
2519
  msgstr ""
2520
 
2521
+ #: includes/class-mla-main.php:447 includes/class-mla-main.php:2251
2522
  #: includes/class-mla-settings-custom-fields-tab.php:63
2523
  #: includes/class-mla-settings-iptc-exif-tab.php:63
2524
  msgid "Waiting"
2525
  msgstr ""
2526
 
2527
+ #: includes/class-mla-main.php:448 includes/class-mla-main.php:2253
2528
  #: includes/class-mla-settings-custom-fields-tab.php:65
2529
  #: includes/class-mla-settings-iptc-exif-tab.php:65
2530
  msgid "Complete"
2531
  msgstr ""
2532
 
2533
+ #: includes/class-mla-main.php:449
2534
  #: includes/class-mla-settings-custom-fields-tab.php:66
2535
  #: includes/class-mla-settings-iptc-exif-tab.php:66
2536
  msgid "Unchanged"
2537
  msgstr ""
2538
 
2539
+ #: includes/class-mla-main.php:450
2540
  #: includes/class-mla-settings-custom-fields-tab.php:67
2541
  #: includes/class-mla-settings-iptc-exif-tab.php:67
2542
  msgid "Succeeded"
2543
  msgstr ""
2544
 
2545
+ #: includes/class-mla-main.php:451
2546
  #: includes/class-mla-settings-custom-fields-tab.php:68
2547
  #: includes/class-mla-settings-iptc-exif-tab.php:68
2548
  msgid "Failed"
2549
  msgstr ""
2550
 
2551
+ #: includes/class-mla-main.php:452
2552
  msgid "CANCELED"
2553
  msgstr ""
2554
 
2555
+ #: includes/class-mla-main.php:563
2556
  #, php-format
2557
  msgid "Item permanently deleted."
2558
  msgid_plural "%d items permanently deleted."
2559
  msgstr[0] ""
2560
  msgstr[1] ""
2561
 
2562
+ #: includes/class-mla-main.php:568 includes/class-mla-main.php:2438
2563
  #, php-format
2564
  msgid "Item %1$d moved to Trash."
2565
  msgstr ""
2566
 
2567
+ #: includes/class-mla-main.php:789
2568
  msgid "download path out of bounds."
2569
  msgstr ""
2570
 
2571
+ #: includes/class-mla-main.php:791
2572
  msgid "download path invalid."
2573
  msgstr ""
2574
 
2575
+ #: includes/class-mla-main.php:794
2576
  msgid "download argument(s) not set."
2577
  msgstr ""
2578
 
2579
+ #: includes/class-mla-main.php:1199
2580
  msgid "You are not allowed to edit Attachment: "
2581
  msgstr ""
2582
 
2583
+ #: includes/class-mla-main.php:1255
2584
  #, php-format
2585
  msgid "%1$s: Unknown bulk action %2$s"
2586
  msgstr ""
2587
 
2588
+ #: includes/class-mla-main.php:1277
2589
  msgid "no changes detected"
2590
  msgstr ""
2591
 
2592
+ #: includes/class-mla-main.php:1324
2593
  #: includes/class-mla-settings-custom-fields-tab.php:607
2594
+ #: includes/class-mla-settings-documentation-tab.php:275
2595
  #: includes/class-mla-settings-iptc-exif-tab.php:686
2596
  #: includes/class-mla-settings-shortcodes-tab.php:564
2597
+ #: includes/class-mla-settings-upload-tab.php:407
2598
  #: includes/class-mla-settings-view-tab.php:254
2599
  #, php-format
2600
  msgid "Bulk Action %1$s - no items selected."
2601
  msgstr ""
2602
 
2603
+ #: includes/class-mla-main.php:1418
2604
  msgid "You do not have permission to manage attachments."
2605
  msgstr ""
2606
 
2607
+ #: includes/class-mla-main.php:1476
2608
  #, php-format
2609
  msgctxt "deleted items"
2610
  msgid "%s item deleted."
2612
  msgstr[0] ""
2613
  msgstr[1] ""
2614
 
2615
+ #: includes/class-mla-main.php:1478
2616
  msgid "No items deleted."
2617
  msgstr ""
2618
 
2619
+ #: includes/class-mla-main.php:1530
2620
  msgid "Empty Terms Search; ignored"
2621
  msgstr ""
2622
 
2623
+ #: includes/class-mla-main.php:1542
2624
  #: includes/class-mla-settings-custom-fields-tab.php:634
2625
+ #: includes/class-mla-settings-documentation-tab.php:307
2626
  #: includes/class-mla-settings-iptc-exif-tab.php:715
2627
  #: includes/class-mla-settings-shortcodes-tab.php:593
2628
+ #: includes/class-mla-settings-upload-tab.php:446
2629
  #: includes/class-mla-settings-view-tab.php:291
2630
  #, php-format
2631
  msgid "Unknown mla_admin_action - \"%1$s\""
2632
  msgstr ""
2633
 
2634
+ #: includes/class-mla-main.php:1580
2635
  msgid "term search results for"
2636
  msgstr ""
2637
 
2638
+ #: includes/class-mla-main.php:1583
2639
  msgid "post/parent results for"
2640
  msgstr ""
2641
 
2642
+ #: includes/class-mla-main.php:1585
2643
  msgid "search results for"
2644
  msgstr ""
2645
 
2646
+ #: includes/class-mla-main.php:1704 includes/class-mla-main.php:1927
2647
+ #: includes/class-mla-main.php:2236
2648
  #: includes/class-mla-settings-custom-fields-tab.php:511
2649
  #: includes/class-mla-settings-custom-fields-tab.php:813
2650
+ #: includes/class-mla-settings-documentation-tab.php:679
2651
+ #: includes/class-mla-settings-documentation-tab.php:886
2652
  #: includes/class-mla-settings-iptc-exif-tab.php:519
2653
  #: includes/class-mla-settings-iptc-exif-tab.php:896
2654
  #: includes/class-mla-settings-shortcodes-tab.php:479
2655
  #: includes/class-mla-settings-upload-tab.php:176
2656
+ #: includes/class-mla-settings-upload-tab.php:546
2657
  #: includes/class-mla-settings-view-tab.php:134
2658
  #: includes/class-mla-settings-view-tab.php:394
2659
  msgid "Update"
2660
  msgstr ""
2661
 
2662
+ #: includes/class-mla-main.php:1862
2663
  msgid "All Post Types"
2664
  msgstr ""
2665
 
2666
+ #: includes/class-mla-main.php:1908
2667
  msgid "For"
2668
  msgstr ""
2669
 
2670
+ #: includes/class-mla-main.php:1918
2671
+ #: includes/class-mla-shortcode-support.php:1062
2672
  msgid "Unattached"
2673
  msgstr ""
2674
 
2675
+ #: includes/class-mla-main.php:2237 includes/class-mla-options.php:1209
2676
  #: includes/class-mla-settings-custom-fields-tab.php:475
2677
  #: includes/class-mla-settings-custom-fields-tab.php:775
2678
+ #: includes/class-mla-settings-custom-fields-tab.php:1466
2679
  #: includes/class-mla-settings-iptc-exif-tab.php:840
2680
+ #: includes/class-mla-settings-upload-tab.php:547
2681
  #: includes/class-mla-settings-view-tab.php:395
2682
  msgid "Bulk Edit"
2683
  msgstr ""
2684
 
2685
+ #: includes/class-mla-main.php:2252
2686
  msgid "In-process"
2687
  msgstr ""
2688
 
2689
+ #: includes/class-mla-main.php:2351
2690
  msgid "You are not allowed to delete this item."
2691
  msgstr ""
2692
 
2693
+ #: includes/class-mla-main.php:2359
2694
  #, php-format
2695
  msgid "%1$s: Item %2$d could NOT be deleted."
2696
  msgstr ""
2697
 
2698
+ #: includes/class-mla-main.php:2366
2699
  #, php-format
2700
  msgid "Item %1$d permanently deleted."
2701
  msgstr ""
2702
 
2703
+ #: includes/class-mla-main.php:2383
2704
  msgid "You are not allowed to move this item out of the Trash."
2705
  msgstr ""
2706
 
2707
+ #: includes/class-mla-main.php:2391
2708
  #, php-format
2709
  msgid "%1$s: Item %2$d could NOT be restored from Trash."
2710
  msgstr ""
2711
 
2712
+ #: includes/class-mla-main.php:2406
2713
  #, php-format
2714
  msgid "Item %1$d restored from Trash."
2715
  msgstr ""
2716
 
2717
+ #: includes/class-mla-main.php:2423
2718
  msgid "You are not allowed to move this item to the Trash."
2719
  msgstr ""
2720
 
2721
+ #: includes/class-mla-main.php:2431
2722
  #, php-format
2723
  msgid "%1$s: Item %2$d could NOT be moved to Trash."
2724
  msgstr ""
2737
 
2738
  #: includes/class-mla-media-modal-ajax.php:452
2739
  #: includes/class-mla-objects.php:50 includes/class-mla-objects.php:83
2740
+ #: includes/class-mla-settings-upload-tab.php:528
2741
  #: includes/class-mla-settings-view-tab.php:374
2742
  #, php-format
2743
  msgid "Add New %1$s"
2793
  msgid "Exact"
2794
  msgstr ""
2795
 
2796
+ #: includes/class-mla-mime-types.php:445
2797
  msgctxt "post_mime_types"
2798
  msgid "Manage"
2799
  msgstr ""
2800
 
2801
+ #: includes/class-mla-mime-types.php:602 includes/class-mla-mime-types.php:680
2802
  msgctxt "list_table_column"
2803
  msgid "Extension"
2804
  msgstr ""
2805
 
2806
+ #: includes/class-mla-mime-types.php:604
2807
  msgctxt "list_table_column"
2808
  msgid "Icon Type"
2809
  msgstr ""
2810
 
2811
+ #: includes/class-mla-mime-types.php:605
2812
+ #: includes/class-mla-settings-custom-fields-tab.php:1210
2813
  msgctxt "list_table_column"
2814
  msgid "Source"
2815
  msgstr ""
2816
 
2817
+ #: includes/class-mla-mime-types.php:606
2818
+ #: includes/class-mla-settings-custom-fields-tab.php:1213
2819
+ #: includes/class-mla-settings-iptc-exif-tab.php:1290
2820
  msgctxt "list_table_column"
2821
  msgid "Status"
2822
  msgstr ""
2823
 
2824
+ #: includes/class-mla-mime-types.php:607 includes/class-mla-mime-types.php:682
2825
  msgctxt "list_table_column"
2826
  msgid "WordPress Type"
2827
  msgstr ""
2828
 
2829
+ #: includes/class-mla-mime-types.php:608 includes/class-mla-mime-types.php:683
2830
  msgctxt "list_table_column"
2831
  msgid "MLA Type"
2832
  msgstr ""
2833
 
2834
+ #: includes/class-mla-mime-types.php:609
2835
  msgctxt "list_table_column"
2836
  msgid "Std. Source"
2837
  msgstr ""
2838
 
2839
+ #: includes/class-mla-mime-types.php:610
2840
  msgctxt "list_table_column"
2841
  msgid "Std. Icon Type"
2842
  msgstr ""
2843
 
2844
+ #: includes/class-mla-mime-types.php:756
2845
  msgctxt "list_table_column"
2846
  msgid "Slug"
2847
  msgstr ""
2848
 
2849
+ #: includes/class-mla-mime-types.php:757
2850
  msgctxt "list_table_column"
2851
  msgid "Specification"
2852
  msgstr ""
2853
 
2854
+ #: includes/class-mla-mime-types.php:758
2855
  msgctxt "list_table_column"
2856
  msgid "Post Mime"
2857
  msgstr ""
2858
 
2859
+ #: includes/class-mla-mime-types.php:759
2860
  msgctxt "list_table_column"
2861
  msgid "Table View"
2862
  msgstr ""
2863
 
2864
+ #: includes/class-mla-mime-types.php:760
2865
  msgctxt "list_table_column"
2866
  msgid "Singular Name"
2867
  msgstr ""
2868
 
2869
+ #: includes/class-mla-mime-types.php:761
2870
  msgctxt "list_table_column"
2871
  msgid "Plural Name"
2872
  msgstr ""
2873
 
2874
+ #: includes/class-mla-mime-types.php:762
2875
  msgctxt "list_table_column"
2876
  msgid "Order"
2877
  msgstr ""
2878
 
2879
+ #: includes/class-mla-mime-types.php:1078
2880
  msgctxt "post_mime_types_description"
2881
  msgid "Copied from previous filter/plugin"
2882
  msgstr ""
2883
 
2884
+ #: includes/class-mla-mime-types.php:1179
2885
+ #: includes/class-mla-mime-types.php:1296
2886
  msgid "Ignoring specification for Post MIME Type; using slug"
2887
  msgstr ""
2888
 
2889
+ #: includes/class-mla-mime-types.php:1185
2890
+ #: includes/class-mla-mime-types.php:2267
2891
  #, php-format
2892
  msgid "<br>Changing %1$s \"%2$s\" to valid value \"%3$s\""
2893
  msgstr ""
2894
 
2895
+ #: includes/class-mla-mime-types.php:1185
2896
+ #: includes/class-mla-mime-types.php:1273
2897
+ #: includes/class-mla-mime-types.php:1284
2898
  #: includes/class-mla-settings-view-tab.php:119
2899
  #: includes/class-mla-settings-view-tab.php:375
2900
  msgid "Slug"
2901
  msgstr ""
2902
 
2903
+ #: includes/class-mla-mime-types.php:1193
2904
+ #: includes/class-mla-mime-types.php:1281
2905
  #, php-format
2906
  msgid "%1$s: Could not add Slug \"%2$s\"; value already exists"
2907
  msgstr ""
2908
 
2909
+ #: includes/class-mla-mime-types.php:1228
2910
  #, php-format
2911
  msgid "Edit view \"%1$s\"; added"
2912
  msgstr ""
2913
 
2914
+ #: includes/class-mla-mime-types.php:1273
2915
+ #: includes/class-mla-mime-types.php:2393
2916
  #, php-format
2917
  msgid "<br>Changing new %1$s \"%2$s\" to valid value \"%3$s\""
2918
  msgstr ""
2919
 
2920
+ #: includes/class-mla-mime-types.php:1326
2921
  #, php-format
2922
  msgid "Edit view \"%1$s\"; no changes detected"
2923
  msgstr ""
2924
 
2925
+ #: includes/class-mla-mime-types.php:1340
2926
  #, php-format
2927
  msgid "Edit view \"%1$s\"; updated"
2928
  msgstr ""
2929
 
2930
+ #: includes/class-mla-mime-types.php:1413
2931
  #, php-format
2932
  msgid "View \"%1$s\" reverted to standard"
2933
  msgstr ""
2934
 
2935
+ #: includes/class-mla-mime-types.php:1419
2936
  #, php-format
2937
  msgid "View \"%1$s\" deleted"
2938
  msgstr ""
2939
 
2940
+ #: includes/class-mla-mime-types.php:1427
2941
  #, php-format
2942
  msgid "%1$s: Did not find view \"%2$s\""
2943
  msgstr ""
2944
 
2945
+ #: includes/class-mla-mime-types.php:1686
2946
+ #: includes/class-mla-settings-documentation-tab.php:1574
2947
  msgctxt "table_view_singular"
2948
  msgid "Active"
2949
  msgstr ""
2950
 
2951
+ #: includes/class-mla-mime-types.php:1687
2952
+ #: includes/class-mla-settings-documentation-tab.php:1575
2953
  msgctxt "table_view_plural"
2954
  msgid "Active"
2955
  msgstr ""
2956
 
2957
+ #: includes/class-mla-mime-types.php:1690
2958
+ #: includes/class-mla-settings-documentation-tab.php:1578
2959
  msgctxt "table_view_singular"
2960
  msgid "Inactive"
2961
  msgstr ""
2962
 
2963
+ #: includes/class-mla-mime-types.php:1691
2964
+ #: includes/class-mla-settings-documentation-tab.php:1579
2965
  msgctxt "table_view_plural"
2966
  msgid "Inactive"
2967
  msgstr ""
2968
 
2969
+ #: includes/class-mla-mime-types.php:1694
2970
  msgctxt "table_view_singular"
2971
  msgid "WordPress"
2972
  msgstr ""
2973
 
2974
+ #: includes/class-mla-mime-types.php:1695
2975
  msgctxt "table_view_plural"
2976
  msgid "WordPress"
2977
  msgstr ""
2978
 
2979
+ #: includes/class-mla-mime-types.php:1698
2980
  msgctxt "table_view_singular"
2981
  msgid "MLA"
2982
  msgstr ""
2983
 
2984
+ #: includes/class-mla-mime-types.php:1699
2985
  msgctxt "table_view_plural"
2986
  msgid "MLA"
2987
  msgstr ""
2988
 
2989
+ #: includes/class-mla-mime-types.php:1702
2990
+ #: includes/class-mla-settings-iptc-exif-tab.php:2739
2991
  msgctxt "table_view_singular"
2992
  msgid "Custom"
2993
  msgstr ""
2994
 
2995
+ #: includes/class-mla-mime-types.php:1703
2996
+ #: includes/class-mla-settings-iptc-exif-tab.php:2740
2997
  msgctxt "table_view_plural"
2998
  msgid "Custom"
2999
  msgstr ""
3000
 
3001
+ #: includes/class-mla-mime-types.php:1958
3002
  msgid "icon"
3003
  msgstr ""
3004
 
3005
+ #: includes/class-mla-mime-types.php:2251
3006
+ #: includes/class-mla-mime-types.php:2350
3007
  msgid "Cannot load Upload MIME Types"
3008
  msgstr ""
3009
 
3010
+ #: includes/class-mla-mime-types.php:2262
3011
  msgid "Extension is required"
3012
  msgstr ""
3013
 
3014
+ #: includes/class-mla-mime-types.php:2267
3015
+ #: includes/class-mla-mime-types.php:2393
3016
+ #: includes/class-mla-mime-types.php:2404
3017
  #: includes/class-mla-settings-upload-tab.php:165
3018
+ #: includes/class-mla-settings-upload-tab.php:530
3019
  msgid "Extension"
3020
  msgstr ""
3021
 
3022
+ #: includes/class-mla-mime-types.php:2275
3023
  #, php-format
3024
  msgid "%1$s: Could not add extension \"%2$s\"; value already exists"
3025
  msgstr ""
3026
 
3027
+ #: includes/class-mla-mime-types.php:2283
3028
  msgid "MIME type is required"
3029
  msgstr ""
3030
 
3031
+ #: includes/class-mla-mime-types.php:2288
3032
+ #: includes/class-mla-mime-types.php:2435
3033
  #, php-format
3034
  msgid "%1$s: Bad MIME type; try \"%2$s\""
3035
  msgstr ""
3036
 
3037
+ #: includes/class-mla-mime-types.php:2325
3038
  #, php-format
3039
  msgid "Upload MIME Type \"%1$s\"; added"
3040
  msgstr ""
3041
 
3042
+ #: includes/class-mla-mime-types.php:2331
3043
+ #: includes/class-mla-mime-types.php:2520
3044
+ #: includes/class-mla-mime-types.php:2599
3045
  msgid "Cannot update Upload MIME Types"
3046
  msgstr ""
3047
 
3048
+ #: includes/class-mla-mime-types.php:2401
3049
  #, php-format
3050
  msgid "%1$s: Could not add new extension \"%2$s\"; value already exists"
3051
  msgstr ""
3052
 
3053
+ #: includes/class-mla-mime-types.php:2500
3054
  #, php-format
3055
  msgid "Edit type \"%1$s\"; no changes detected"
3056
  msgstr ""
3057
 
3058
+ #: includes/class-mla-mime-types.php:2514
3059
  #, php-format
3060
  msgid "Edit type \"%1$s\"; updated"
3061
  msgstr ""
3062
 
3063
+ #: includes/class-mla-mime-types.php:2587
3064
  #, php-format
3065
  msgid "Upload MIME Type \"%1$s\"; reverted to standard"
3066
  msgstr ""
3067
 
3068
+ #: includes/class-mla-mime-types.php:2593
3069
  #, php-format
3070
  msgid "Upload MIME Type \"%1$s\"; deleted"
3071
  msgstr ""
3072
 
3073
+ #: includes/class-mla-mime-types.php:2608
3074
  #, php-format
3075
  msgid "%1$s: Did not find Upload type \"%2$s\""
3076
  msgstr ""
3190
  msgid "tpls/mla-option-templates.tpl not found"
3191
  msgstr ""
3192
 
3193
+ #: includes/class-mla-options.php:217 includes/class-mla-options.php:433
3194
+ #: includes/class-mla-options.php:514 includes/class-mla-options.php:569
3195
  #, php-format
3196
  msgid "%1$s: Custom %2$s unknown action \"%3$s\""
3197
  msgstr ""
3221
  msgstr ""
3222
 
3223
  #: includes/class-mla-options.php:336
3224
+ msgid "Inline Add Term"
3225
  msgstr ""
3226
 
3227
  #: includes/class-mla-options.php:337
3228
+ msgid "List Filter"
3229
+ msgstr ""
3230
+
3231
+ #: includes/class-mla-options.php:338
3232
  msgid "Taxonomy"
3233
  msgstr ""
3234
 
3235
+ #: includes/class-mla-options.php:360
3236
  #, php-format
3237
  msgid "List Filter ignored; %1$s not supported."
3238
  msgstr ""
3239
 
3240
+ #: includes/class-mla-options.php:367
3241
  #, php-format
3242
  msgid "Inline Edit ignored; %1$s not supported."
3243
  msgstr ""
3244
 
3245
+ #: includes/class-mla-options.php:375
3246
  #, php-format
3247
  msgid "Term Search ignored; %1$s not supported."
3248
  msgstr ""
3249
 
3250
+ #: includes/class-mla-options.php:385
3251
  #, php-format
3252
  msgid "Checklist ignored; %1$s not supported."
3253
  msgstr ""
3254
 
3255
+ #: includes/class-mla-options.php:393
3256
  #, php-format
3257
  msgid "Checked On Top ignored; %1$s not supported."
3258
  msgstr ""
3259
 
3260
+ #: includes/class-mla-options.php:402
3261
+ #, php-format
3262
+ msgid "Inline Add Term ignored; %1$s not supported."
3263
+ msgstr ""
3264
+
3265
+ #: includes/class-mla-options.php:423 includes/class-mla-options.php:504
3266
+ #: includes/class-mla-options.php:559
3267
  #, php-format
3268
  msgid "Update custom %1$s"
3269
  msgstr ""
3270
 
3271
+ #: includes/class-mla-options.php:430 includes/class-mla-options.php:511
3272
+ #: includes/class-mla-options.php:566
3273
  #, php-format
3274
  msgid "Reset custom %1$s"
3275
  msgstr ""
3276
 
3277
+ #: includes/class-mla-options.php:461
3278
  #: includes/mla-main-search-box-template.php:60
3279
  #: includes/mla-media-modal-js-template.php:32
3280
  msgid "and"
3281
  msgstr ""
3282
 
3283
+ #: includes/class-mla-options.php:463
3284
  #: includes/mla-main-search-box-template.php:61
3285
  #: includes/mla-media-modal-js-template.php:36
3286
  msgid "or"
3287
  msgstr ""
3288
 
3289
+ #: includes/class-mla-options.php:468
3290
  #: includes/class-mla-settings-custom-fields-tab.php:455
3291
  #: includes/class-mla-settings-custom-fields-tab.php:759
3292
  #: includes/class-mla-settings-iptc-exif-tab.php:455
3298
  msgid "Name"
3299
  msgstr ""
3300
 
3301
+ #: includes/class-mla-options.php:480
3302
  #: includes/mla-main-search-box-template.php:57
3303
  #: includes/mla-media-modal-js-template.php:61
3304
  msgid "File"
3305
  msgstr ""
3306
 
3307
+ #: includes/class-mla-options.php:483
3308
  #: includes/mla-main-search-box-template.php:58
3309
  #: includes/mla-media-modal-js-template.php:66
3310
  msgid "Terms"
3311
  msgstr ""
3312
 
3313
+ #: includes/class-mla-options.php:952 includes/class-mla-options.php:998
3314
+ #: includes/class-mla-options.php:1842 includes/class-mla-options.php:1873
3315
  #: includes/class-mla-settings-upload-tab.php:128
3316
  msgid "None (select a value)"
3317
  msgstr ""
3318
 
3319
+ #: includes/class-mla-options.php:1005
3320
  msgid "Metadata (see below)"
3321
  msgstr ""
3322
 
3323
+ #: includes/class-mla-options.php:1012
3324
  msgid "Template (see below)"
3325
  msgstr ""
3326
 
3327
+ #: includes/class-mla-options.php:1084 includes/class-mla-options.php:2155
3328
  #, php-format
3329
  msgid "%1$s: New field %2$s already exists."
3330
  msgstr ""
3331
 
3332
+ #: includes/class-mla-options.php:1089 includes/class-mla-options.php:2160
3333
  #, php-format
3334
  msgid "Adding new field %1$s."
3335
  msgstr ""
3336
 
3337
+ #: includes/class-mla-options.php:1097 includes/class-mla-options.php:2168
3338
  #, php-format
3339
  msgid "Adding new rule for %1$s."
3340
  msgstr ""
3341
 
3342
+ #: includes/class-mla-options.php:1123 includes/class-mla-options.php:2025
3343
+ #: includes/class-mla-options.php:2194
3344
  #, php-format
3345
  msgid "Deleting rule for %1$s."
3346
  msgstr ""
3347
 
3348
+ #: includes/class-mla-options.php:1146 includes/class-mla-options.php:1167
3349
+ #: includes/class-mla-options.php:1217 includes/class-mla-options.php:1224
3350
+ #: includes/class-mla-options.php:1941 includes/class-mla-options.php:1948
3351
+ #: includes/class-mla-options.php:1955 includes/class-mla-options.php:2050
3352
+ #: includes/class-mla-options.php:2057 includes/class-mla-options.php:2092
3353
+ #: includes/class-mla-options.php:2099 includes/class-mla-options.php:2204
3354
+ #: includes/class-mla-options.php:2211 includes/class-mla-options.php:2246
3355
+ #: includes/class-mla-options.php:2253
3356
  #, php-format
3357
  msgid "%1$s changing %2$s from %3$s to %4$s."
3358
  msgstr ""
3359
 
3360
+ #: includes/class-mla-options.php:1146
3361
  #: includes/class-mla-settings-custom-fields-tab.php:463
3362
  #: includes/class-mla-settings-custom-fields-tab.php:763
3363
  msgid "Data Source"
3364
  msgstr ""
3365
 
3366
+ #: includes/class-mla-options.php:1152 includes/class-mla-options.php:1975
3367
+ #: includes/class-mla-options.php:2077 includes/class-mla-options.php:2231
3368
  msgid "Replace to Keep"
3369
  msgstr ""
3370
 
3371
+ #: includes/class-mla-options.php:1155 includes/class-mla-options.php:1978
3372
+ #: includes/class-mla-options.php:2080 includes/class-mla-options.php:2234
3373
  msgid "Keep to Replace"
3374
  msgstr ""
3375
 
3376
+ #: includes/class-mla-options.php:1160 includes/class-mla-options.php:1181
3377
+ #: includes/class-mla-options.php:1195 includes/class-mla-options.php:1209
3378
+ #: includes/class-mla-options.php:1238 includes/class-mla-options.php:1969
3379
+ #: includes/class-mla-options.php:1983 includes/class-mla-options.php:2071
3380
+ #: includes/class-mla-options.php:2085 includes/class-mla-options.php:2225
3381
+ #: includes/class-mla-options.php:2239 includes/class-mla-options.php:2267
3382
  #, php-format
3383
  msgid "%1$s changing %2$s value from %3$s."
3384
  msgstr ""
3385
 
3386
+ #: includes/class-mla-options.php:1160 includes/class-mla-options.php:1983
3387
+ #: includes/class-mla-options.php:2085 includes/class-mla-options.php:2239
3388
  #: includes/class-mla-settings-custom-fields-tab.php:477
3389
  #: includes/class-mla-settings-custom-fields-tab.php:777
3390
  #: includes/class-mla-settings-iptc-exif-tab.php:474
3392
  msgid "Existing Text"
3393
  msgstr ""
3394
 
3395
+ #: includes/class-mla-options.php:1167 includes/class-mla-options.php:2246
3396
  #: includes/class-mla-settings-custom-fields-tab.php:482
3397
  #: includes/class-mla-settings-custom-fields-tab.php:782
3398
  #: includes/class-mla-settings-iptc-exif-tab.php:489
3400
  msgid "Format"
3401
  msgstr ""
3402
 
3403
+ #: includes/class-mla-options.php:1173 includes/class-mla-options.php:1187
3404
+ #: includes/class-mla-options.php:1201 includes/class-mla-options.php:1230
3405
+ #: includes/class-mla-options.php:2259
3406
  msgid "unchecked to checked"
3407
  msgstr ""
3408
 
3409
+ #: includes/class-mla-options.php:1176 includes/class-mla-options.php:1190
3410
+ #: includes/class-mla-options.php:1204 includes/class-mla-options.php:1233
3411
+ #: includes/class-mla-options.php:2262
3412
  msgid "checked to unchecked"
3413
  msgstr ""
3414
 
3415
+ #: includes/class-mla-options.php:1181
3416
  #: includes/class-mla-settings-custom-fields-tab.php:469
3417
  #: includes/class-mla-settings-custom-fields-tab.php:769
3418
+ #: includes/class-mla-settings-custom-fields-tab.php:1458
3419
  msgid "MLA Column"
3420
  msgstr ""
3421
 
3422
+ #: includes/class-mla-options.php:1217
3423
  msgid "Metavalue name"
3424
  msgstr ""
3425
 
3426
+ #: includes/class-mla-options.php:1224 includes/class-mla-options.php:2253
3427
  #: includes/class-mla-settings-custom-fields-tab.php:489
3428
  #: includes/class-mla-settings-custom-fields-tab.php:789
3429
  #: includes/class-mla-settings-iptc-exif-tab.php:496
3431
  msgid "Option"
3432
  msgstr ""
3433
 
3434
+ #: includes/class-mla-options.php:1238 includes/class-mla-options.php:2267
3435
  #: includes/class-mla-settings-iptc-exif-tab.php:508
3436
  msgid "Delete NULL values"
3437
  msgstr ""
3438
 
3439
+ #: includes/class-mla-options.php:1929
3440
  #, php-format
3441
  msgid "%1$s: No old values for %2$s."
3442
  msgstr ""
3443
 
3444
+ #: includes/class-mla-options.php:1941
3445
  msgid "Field Title"
3446
  msgstr ""
3447
 
3448
+ #: includes/class-mla-options.php:1948 includes/class-mla-options.php:2050
3449
+ #: includes/class-mla-options.php:2204
3450
  #: includes/class-mla-settings-iptc-exif-tab.php:463
3451
  #: includes/class-mla-settings-iptc-exif-tab.php:845
3452
  msgid "IPTC Value"
3453
  msgstr ""
3454
 
3455
+ #: includes/class-mla-options.php:1955 includes/class-mla-options.php:2057
3456
+ #: includes/class-mla-options.php:2211
3457
  msgid "EXIF Value"
3458
  msgstr ""
3459
 
3460
+ #: includes/class-mla-options.php:1961 includes/class-mla-options.php:2063
3461
+ #: includes/class-mla-options.php:2217
3462
  msgid "EXIF to IPTC"
3463
  msgstr ""
3464
 
3465
+ #: includes/class-mla-options.php:1964 includes/class-mla-options.php:2066
3466
+ #: includes/class-mla-options.php:2220
3467
  msgid "IPTC to EXIF"
3468
  msgstr ""
3469
 
3470
+ #: includes/class-mla-options.php:1969 includes/class-mla-options.php:2071
3471
+ #: includes/class-mla-options.php:2225
3472
  #: includes/class-mla-settings-iptc-exif-tab.php:469
3473
  #: includes/class-mla-settings-iptc-exif-tab.php:851
3474
  msgid "Priority"
3475
  msgstr ""
3476
 
3477
+ #: includes/class-mla-options.php:2092
3478
  msgid "Delimiter(s)"
3479
  msgstr ""
3480
 
3671
  #: includes/class-mla-settings-iptc-exif-tab.php:738
3672
  #: includes/class-mla-settings-iptc-exif-tab.php:836
3673
  #: includes/class-mla-settings-shortcodes-tab.php:713
3674
+ #: includes/class-mla-settings-upload-tab.php:476
3675
+ #: includes/class-mla-settings-upload-tab.php:526
3676
  #: includes/class-mla-settings-view-tab.php:320
3677
  #: includes/class-mla-settings-view-tab.php:372
3678
+ #: includes/class-mla-settings.php:1063 includes/class-mla-settings.php:1432
3679
+ #: includes/class-mla-settings.php:1434
3680
  #: includes/class-mla-wpml-support.php:1727
3681
  msgid "Save Changes"
3682
  msgstr ""
3698
  msgstr ""
3699
 
3700
  #: includes/class-mla-polylang-support.php:2647
3701
+ #: includes/class-mla-settings.php:1644
3702
  #: includes/class-mla-wpml-support.php:1799
3703
  #, php-format
3704
  msgctxt "message_list"
3893
 
3894
  #: includes/class-mla-settings-custom-fields-tab.php:479
3895
  #: includes/class-mla-settings-custom-fields-tab.php:779
3896
+ #: includes/class-mla-settings-custom-fields-tab.php:1504
3897
  #: includes/class-mla-settings-iptc-exif-tab.php:476
3898
  #: includes/class-mla-settings-iptc-exif-tab.php:858
3899
+ #: includes/class-mla-settings-iptc-exif-tab.php:1565
3900
+ #: includes/class-mla-settings-iptc-exif-tab.php:2419
3901
  #: includes/class-mla-thumbnail-generation.php:643
3902
  msgid "Keep"
3903
  msgstr ""
3973
 
3974
  #: includes/class-mla-settings-custom-fields-tab.php:505
3975
  #: includes/class-mla-settings-custom-fields-tab.php:805
3976
+ #: includes/class-mla-settings-custom-fields-tab.php:1488
3977
+ #: includes/class-mla-settings-custom-fields-tab.php:1711
3978
+ #: includes/class-mla-settings-documentation-tab.php:1244
3979
  #: includes/class-mla-settings-iptc-exif-tab.php:513
3980
  #: includes/class-mla-settings-iptc-exif-tab.php:887
3981
+ #: includes/class-mla-settings-iptc-exif-tab.php:1581
3982
+ #: includes/class-mla-settings-iptc-exif-tab.php:1817
3983
+ #: includes/class-mla-settings-iptc-exif-tab.php:2422
3984
+ #: includes/class-mla-settings-upload-tab.php:550
3985
+ #: includes/class-mla-settings-upload-tab.php:1031
3986
  msgid "Active"
3987
  msgstr ""
3988
 
3989
  #: includes/class-mla-settings-custom-fields-tab.php:507
3990
  #: includes/class-mla-settings-custom-fields-tab.php:807
3991
+ #: includes/class-mla-settings-custom-fields-tab.php:1490
3992
+ #: includes/class-mla-settings-custom-fields-tab.php:1714
3993
+ #: includes/class-mla-settings-documentation-tab.php:1246
3994
  #: includes/class-mla-settings-iptc-exif-tab.php:515
3995
  #: includes/class-mla-settings-iptc-exif-tab.php:889
3996
+ #: includes/class-mla-settings-iptc-exif-tab.php:1583
3997
+ #: includes/class-mla-settings-iptc-exif-tab.php:1820
3998
+ #: includes/class-mla-settings-iptc-exif-tab.php:2422
3999
  #: includes/class-mla-settings-upload-tab.php:172
4000
+ #: includes/class-mla-settings-upload-tab.php:536
4001
+ #: includes/class-mla-settings-upload-tab.php:1029
4002
  msgid "Inactive"
4003
  msgstr ""
4004
 
4014
 
4015
  #: includes/class-mla-settings-custom-fields-tab.php:583
4016
  #: includes/class-mla-settings-custom-fields-tab.php:611
4017
+ #: includes/class-mla-settings-documentation-tab.php:265
4018
  #: includes/class-mla-settings-iptc-exif-tab.php:662
4019
  #: includes/class-mla-settings-iptc-exif-tab.php:690
4020
  #: includes/class-mla-settings-shortcodes-tab.php:552
4021
+ #: includes/class-mla-settings-upload-tab.php:396
4022
  #: includes/class-mla-settings-view-tab.php:244
4023
  #, php-format
4024
  msgid "Unknown bulk action %1$s"
4068
  msgstr ""
4069
 
4070
  #: includes/class-mla-settings-custom-fields-tab.php:732
4071
+ #: includes/class-mla-settings-documentation-tab.php:141
4072
  #: includes/class-mla-settings-iptc-exif-tab.php:813
4073
  #: includes/class-mla-settings-shortcodes-tab.php:476
4074
  #: includes/class-mla-template-support.php:160
4148
  msgid "Rule not found"
4149
  msgstr ""
4150
 
4151
+ #: includes/class-mla-settings-custom-fields-tab.php:1209
4152
+ #: includes/class-mla-settings-iptc-exif-tab.php:1285
4153
  msgctxt "list_table_column"
4154
  msgid "Bad Name"
4155
  msgstr ""
4156
 
4157
+ #: includes/class-mla-settings-custom-fields-tab.php:1211
4158
  msgctxt "list_table_column"
4159
  msgid "Meta/Template"
4160
  msgstr ""
4161
 
4162
+ #: includes/class-mla-settings-custom-fields-tab.php:1212
4163
  msgctxt "list_table_column"
4164
  msgid "Visibility"
4165
  msgstr ""
4166
 
4167
+ #: includes/class-mla-settings-custom-fields-tab.php:1214
4168
+ #: includes/class-mla-settings-iptc-exif-tab.php:1289
4169
  msgctxt "list_table_column"
4170
  msgid "Existing Text"
4171
  msgstr ""
4172
 
4173
+ #: includes/class-mla-settings-custom-fields-tab.php:1215
4174
+ #: includes/class-mla-settings-iptc-exif-tab.php:1293
4175
  msgctxt "list_table_column"
4176
  msgid "Delete NULL"
4177
  msgstr ""
4178
 
4179
+ #: includes/class-mla-settings-custom-fields-tab.php:1216
4180
+ #: includes/class-mla-settings-iptc-exif-tab.php:1294
4181
  msgctxt "list_table_column"
4182
  msgid "Format"
4183
  msgstr ""
4184
 
4185
+ #: includes/class-mla-settings-custom-fields-tab.php:1217
4186
+ #: includes/class-mla-settings-iptc-exif-tab.php:1295
4187
  msgctxt "list_table_column"
4188
  msgid "Option"
4189
  msgstr ""
4190
 
4191
+ #: includes/class-mla-settings-custom-fields-tab.php:1355
4192
+ #: includes/class-mla-settings-iptc-exif-tab.php:1433
4193
  msgid "Map All Attachments"
4194
  msgstr ""
4195
 
4196
+ #: includes/class-mla-settings-custom-fields-tab.php:1355
4197
+ #: includes/class-mla-settings-custom-fields-tab.php:1690
4198
+ #: includes/class-mla-settings-iptc-exif-tab.php:1433
4199
+ #: includes/class-mla-settings-iptc-exif-tab.php:1796
4200
  msgid "Execute"
4201
  msgstr ""
4202
 
4203
+ #: includes/class-mla-settings-custom-fields-tab.php:1357
4204
  msgid "Purge custom field values"
4205
  msgstr ""
4206
 
4207
+ #: includes/class-mla-settings-custom-fields-tab.php:1357
4208
+ #: includes/class-mla-settings-custom-fields-tab.php:1691
4209
+ #: includes/class-mla-settings-iptc-exif-tab.php:1436
4210
+ #: includes/class-mla-settings-iptc-exif-tab.php:1797
4211
  msgid "Purge Values"
4212
  msgstr ""
4213
 
4214
+ #: includes/class-mla-settings-custom-fields-tab.php:1708
4215
+ #: includes/class-mla-settings-iptc-exif-tab.php:1814
4216
+ #: includes/class-mla-settings-shortcodes-tab.php:1302
4217
  msgid "Any Status"
4218
  msgstr ""
4219
 
4220
+ #: includes/class-mla-settings-custom-fields-tab.php:2464
4221
  msgctxt "table_view_singular"
4222
  msgid "MLA Column"
4223
  msgstr ""
4224
 
4225
+ #: includes/class-mla-settings-custom-fields-tab.php:2465
4226
  msgctxt "table_view_plural"
4227
  msgid "MLA Column"
4228
  msgstr ""
4229
 
4230
+ #: includes/class-mla-settings-custom-fields-tab.php:2468
4231
  msgctxt "table_view_singular"
4232
  msgid "Quick Edit"
4233
  msgstr ""
4234
 
4235
+ #: includes/class-mla-settings-custom-fields-tab.php:2469
4236
  msgctxt "table_view_plural"
4237
  msgid "Quick Edit"
4238
  msgstr ""
4239
 
4240
+ #: includes/class-mla-settings-custom-fields-tab.php:2472
4241
  msgctxt "table_view_singular"
4242
  msgid "Bulk Edit"
4243
  msgstr ""
4244
 
4245
+ #: includes/class-mla-settings-custom-fields-tab.php:2473
4246
  msgctxt "table_view_plural"
4247
  msgid "Bulk Edit"
4248
  msgstr ""
4249
 
4250
+ #: includes/class-mla-settings-custom-fields-tab.php:2476
4251
+ #: includes/class-mla-settings-iptc-exif-tab.php:2743
4252
  msgctxt "table_view_singular"
4253
  msgid "Read Only"
4254
  msgstr ""
4255
 
4256
+ #: includes/class-mla-settings-custom-fields-tab.php:2477
4257
+ #: includes/class-mla-settings-iptc-exif-tab.php:2744
4258
  msgctxt "table_view_plural"
4259
  msgid "Read Only"
4260
  msgstr ""
4261
 
4262
  #: includes/class-mla-settings-documentation-tab.php:82
4263
+ #: includes/class-mla-settings-documentation-tab.php:974
4264
+ #: includes/class-mla-settings-documentation-tab.php:1056
4265
+ #: includes/class-mla-settings-documentation-tab.php:1086
4266
  #, php-format
4267
  msgid "Example plugin \"%1$s\" not found"
4268
  msgstr ""
4269
 
4270
+ #: includes/class-mla-settings-documentation-tab.php:131
4271
+ #: includes/class-mla-settings.php:1364
4272
  #, php-format
4273
  msgid "%1$s: Reading the %2$s file ( %3$s ) \"%4$s\"."
4274
  msgstr ""
4275
 
4276
+ #: includes/class-mla-settings-documentation-tab.php:131
4277
  msgid "plugin"
4278
  msgstr ""
4279
 
4280
+ #: includes/class-mla-settings-documentation-tab.php:138
4281
  msgid "View Plugin"
4282
  msgstr ""
4283
 
4284
+ #: includes/class-mla-settings-documentation-tab.php:186
4285
  #: includes/class-mla-settings-upload-tab.php:246
4286
+ #: includes/class-mla-settings-upload-tab.php:551
4287
  #: includes/class-mla-settings-view-tab.php:368
4288
  msgid "Displaying search results for"
4289
  msgstr ""
4290
 
4291
+ #: includes/class-mla-settings-documentation-tab.php:187
4292
  msgid ""
4293
  "In this tab you can browse the list of MLA example plugins, install or "
4294
  "update them in the Plugins/Installed Plugins area and see which examples you "
4296
  "the plugins you must go to the Plugins/Installed Plugins admin submenu."
4297
  msgstr ""
4298
 
4299
+ #: includes/class-mla-settings-documentation-tab.php:189
4300
  #, php-format
4301
  msgid ""
4302
  "You can find more information about using the example plugins in the %1$s "
4304
  "tab in the upper-right corner of this screen."
4305
  msgstr ""
4306
 
4307
+ #: includes/class-mla-settings-documentation-tab.php:189
4308
  msgid "Example plugin documentation"
4309
  msgstr ""
4310
 
4311
+ #: includes/class-mla-settings-documentation-tab.php:189
4312
  msgid "The Example Plugins"
4313
  msgstr ""
4314
 
4315
+ #: includes/class-mla-settings-documentation-tab.php:194
4316
  msgid "Example Plugins"
4317
  msgstr ""
4318
 
4319
+ #: includes/class-mla-settings-documentation-tab.php:195
4320
  msgid "Search Example Plugins"
4321
  msgstr ""
4322
 
4323
+ #: includes/class-mla-settings-documentation-tab.php:197
4324
  msgid "Search Plugins"
4325
  msgstr ""
4326
 
4327
+ #: includes/class-mla-settings-documentation-tab.php:198
4328
  msgid "Searches Name, Description, File Name and Tags"
4329
  msgstr ""
4330
 
4331
+ #: includes/class-mla-settings-documentation-tab.php:288
4332
  #, php-format
4333
  msgid "Empty mla_item_ID - \"%1$s\""
4334
  msgstr ""
4335
 
4336
+ #: includes/class-mla-settings-documentation-tab.php:523
4337
  msgctxt "list_table_column"
4338
  msgid "Current Version"
4339
  msgstr ""
4340
 
4341
+ #: includes/class-mla-settings-documentation-tab.php:524
4342
  msgctxt "list_table_column"
4343
  msgid "Installed Version"
4344
  msgstr ""
4345
 
4346
+ #: includes/class-mla-settings-documentation-tab.php:526
4347
  msgctxt "list_table_column"
4348
  msgid "File Name"
4349
  msgstr ""
4350
 
4351
+ #: includes/class-mla-settings-documentation-tab.php:527
4352
  msgctxt "list_table_column"
4353
  msgid "Tags"
4354
  msgstr ""
4355
 
4356
+ #: includes/class-mla-settings-documentation-tab.php:675
4357
  msgid "Install this plugin"
4358
  msgstr ""
4359
 
4360
+ #: includes/class-mla-settings-documentation-tab.php:675
4361
+ #: includes/class-mla-settings-documentation-tab.php:885
4362
  msgid "Install"
4363
  msgstr ""
4364
 
4365
+ #: includes/class-mla-settings-documentation-tab.php:679
4366
  msgid "Update this plugin"
4367
  msgstr ""
4368
 
4369
+ #: includes/class-mla-settings-documentation-tab.php:691
4370
+ #: includes/class-mla-settings-shortcodes-tab.php:1072
4371
  msgid "View this item"
4372
  msgstr ""
4373
 
4374
+ #: includes/class-mla-settings-documentation-tab.php:997
4375
  #, php-format
4376
  msgid "Example plugin \"%1$s\" fs_connect failed; no action taken. Error: %2$s"
4377
  msgstr ""
4378
 
4379
+ #: includes/class-mla-settings-documentation-tab.php:1002
4380
  #, php-format
4381
  msgid "Example plugin \"%1$s\" fs_connect failed; no action taken"
4382
  msgstr ""
4383
 
4384
+ #: includes/class-mla-settings-documentation-tab.php:1025
4385
  #, php-format
4386
  msgid ""
4387
  "Example plugin \"%1$s\" install_package failed; no action taken. Error: %2$s"
4388
  msgstr ""
4389
 
4390
+ #: includes/class-mla-settings-documentation-tab.php:1036
4391
  #, php-format
4392
  msgid "Example plugin \"%1$s\" remove old single file failed."
4393
  msgstr ""
4394
 
4395
+ #: includes/class-mla-settings-documentation-tab.php:1061
4396
  #, php-format
4397
  msgid "Example plugin \"%1$s\" already installed; no action taken"
4398
  msgstr ""
4399
 
4400
+ #: includes/class-mla-settings-documentation-tab.php:1067
4401
  #, php-format
4402
  msgid "Example plugin \"%1$s\" installed"
4403
  msgstr ""
4404
 
4405
+ #: includes/class-mla-settings-documentation-tab.php:1091
4406
  #, php-format
4407
  msgid "Example plugin \"%1$s\" not installed; no action taken"
4408
  msgstr ""
4409
 
4410
+ #: includes/class-mla-settings-documentation-tab.php:1097
4411
  #, php-format
4412
  msgid "Example plugin \"%1$s\" updated"
4413
  msgstr ""
4414
 
4415
+ #: includes/class-mla-settings-documentation-tab.php:1242
4416
  msgid "Network"
4417
  msgstr ""
4418
 
4419
+ #: includes/class-mla-settings-documentation-tab.php:1570
4420
  msgctxt "table_view_singular"
4421
  msgid "Installed"
4422
  msgstr ""
4423
 
4424
+ #: includes/class-mla-settings-documentation-tab.php:1571
4425
  msgctxt "table_view_plural"
4426
  msgid "Installed"
4427
  msgstr ""
4428
 
4429
+ #: includes/class-mla-settings-documentation-tab.php:1582
4430
  msgctxt "table_view_singular"
4431
  msgid "Network"
4432
  msgstr ""
4433
 
4434
+ #: includes/class-mla-settings-documentation-tab.php:1583
4435
  msgctxt "table_view_plural"
4436
  msgid "Network"
4437
  msgstr ""
4438
 
4439
+ #: includes/class-mla-settings-documentation-tab.php:1586
4440
  msgctxt "table_view_singular"
4441
  msgid "Uninstalled"
4442
  msgstr ""
4443
 
4444
+ #: includes/class-mla-settings-documentation-tab.php:1587
4445
  msgctxt "table_view_plural"
4446
  msgid "Uninstalled"
4447
  msgstr ""
4474
 
4475
  #: includes/class-mla-settings-iptc-exif-tab.php:471
4476
  #: includes/class-mla-settings-iptc-exif-tab.php:853
4477
+ #: includes/class-mla-settings-iptc-exif-tab.php:1549
4478
  msgid "IPTC"
4479
  msgstr ""
4480
 
4481
  #: includes/class-mla-settings-iptc-exif-tab.php:473
4482
  #: includes/class-mla-settings-iptc-exif-tab.php:855
4483
+ #: includes/class-mla-settings-iptc-exif-tab.php:1552
4484
  msgid "EXIF"
4485
  msgstr ""
4486
 
4524
  "WordPress standard attachment fields, taxonomy terms and custom fields."
4525
  msgstr ""
4526
 
4527
+ #: includes/class-mla-settings-iptc-exif-tab.php:1286
4528
  msgctxt "list_table_column"
4529
  msgid "IPTC Value"
4530
  msgstr ""
4531
 
4532
+ #: includes/class-mla-settings-iptc-exif-tab.php:1287
4533
  msgctxt "list_table_column"
4534
  msgid "EXIF/Template Value"
4535
  msgstr ""
4536
 
4537
+ #: includes/class-mla-settings-iptc-exif-tab.php:1288
4538
  msgctxt "list_table_column"
4539
  msgid "Priority "
4540
  msgstr ""
4541
 
4542
+ #: includes/class-mla-settings-iptc-exif-tab.php:1291
4543
  msgctxt "list_table_column"
4544
  msgid "Delimiter(s)"
4545
  msgstr ""
4546
 
4547
+ #: includes/class-mla-settings-iptc-exif-tab.php:1292
4548
  msgctxt "list_table_column"
4549
  msgid "Parent"
4550
  msgstr ""
4551
 
4552
+ #: includes/class-mla-settings-iptc-exif-tab.php:1436
4553
  msgid "Purge IPTC EXIF values"
4554
  msgstr ""
4555
 
4556
+ #: includes/class-mla-settings-iptc-exif-tab.php:2731
4557
  msgctxt "table_view_singular"
4558
  msgid "Standard"
4559
  msgstr ""
4560
 
4561
+ #: includes/class-mla-settings-iptc-exif-tab.php:2732
4562
  msgctxt "table_view_plural"
4563
  msgid "Standard"
4564
  msgstr ""
4565
 
4566
+ #: includes/class-mla-settings-iptc-exif-tab.php:2735
4567
  msgctxt "table_view_singular"
4568
  msgid "Taxonomy"
4569
  msgstr ""
4570
 
4571
+ #: includes/class-mla-settings-iptc-exif-tab.php:2736
4572
  msgctxt "table_view_plural"
4573
  msgid "Taxonomy"
4574
  msgstr ""
4708
 
4709
  #: includes/class-mla-settings-shortcodes-tab.php:410
4710
  #: includes/class-mla-settings-shortcodes-tab.php:482
4711
+ #: includes/class-mla-settings-shortcodes-tab.php:1077
4712
+ #: includes/class-mla-settings-shortcodes-tab.php:1286
4713
  msgid "Copy"
4714
  msgstr ""
4715
 
4787
  msgid "Search Templates"
4788
  msgstr ""
4789
 
4790
+ #: includes/class-mla-settings-shortcodes-tab.php:957
4791
  msgctxt "list_table_column"
4792
  msgid "Type"
4793
  msgstr ""
4794
 
4795
+ #: includes/class-mla-settings-shortcodes-tab.php:958
4796
  msgctxt "list_table_column"
4797
  msgid "Shortcode"
4798
  msgstr ""
4799
 
4800
+ #: includes/class-mla-settings-shortcodes-tab.php:1077
4801
  msgid "Make a copy"
4802
  msgstr ""
4803
 
4804
+ #: includes/class-mla-settings-shortcodes-tab.php:1097
4805
  msgid "default"
4806
  msgstr ""
4807
 
4808
+ #: includes/class-mla-settings-shortcodes-tab.php:1110
4809
+ #: includes/class-mla-settings-shortcodes-tab.php:1977
4810
  msgctxt "table_view_singular"
4811
  msgid "Style"
4812
  msgstr ""
4813
 
4814
+ #: includes/class-mla-settings-shortcodes-tab.php:1110
4815
+ #: includes/class-mla-settings-shortcodes-tab.php:1981
4816
  msgctxt "table_view_singular"
4817
  msgid "Markup"
4818
  msgstr ""
4819
 
4820
+ #: includes/class-mla-settings-shortcodes-tab.php:1285
4821
  #: includes/class-mla-thumbnail-generation.php:646
4822
  msgid "Delete"
4823
  msgstr ""
4824
 
4825
+ #: includes/class-mla-settings-shortcodes-tab.php:1305
4826
  msgid "Default"
4827
  msgstr ""
4828
 
4829
+ #: includes/class-mla-settings-shortcodes-tab.php:1308
4830
  msgid "Custom"
4831
  msgstr ""
4832
 
4833
+ #: includes/class-mla-settings-shortcodes-tab.php:1978
4834
  msgctxt "table_view_plural"
4835
  msgid "Style"
4836
  msgstr ""
4837
 
4838
+ #: includes/class-mla-settings-shortcodes-tab.php:1982
4839
  msgctxt "table_view_plural"
4840
  msgid "Markup"
4841
  msgstr ""
4842
 
4843
+ #: includes/class-mla-settings-shortcodes-tab.php:1985
4844
  #: includes/class-mla-template-support.php:70
4845
  #: includes/class-mla-template-support.php:126
4846
  msgctxt "table_view_singular"
4847
  msgid "Gallery"
4848
  msgstr ""
4849
 
4850
+ #: includes/class-mla-settings-shortcodes-tab.php:1986
4851
  msgctxt "table_view_plural"
4852
  msgid "Gallery"
4853
  msgstr ""
4854
 
4855
+ #: includes/class-mla-settings-shortcodes-tab.php:1989
4856
  #: includes/class-mla-template-support.php:88
4857
  #: includes/class-mla-template-support.php:174
4858
  msgctxt "table_view_singular"
4859
  msgid "Tag Cloud"
4860
  msgstr ""
4861
 
4862
+ #: includes/class-mla-settings-shortcodes-tab.php:1990
4863
  msgctxt "table_view_plural"
4864
  msgid "Tag Cloud"
4865
  msgstr ""
4866
 
4867
+ #: includes/class-mla-settings-shortcodes-tab.php:1993
4868
  #: includes/class-mla-template-support.php:106
4869
  #: includes/class-mla-template-support.php:222
4870
  msgctxt "table_view_singular"
4871
  msgid "Term List"
4872
  msgstr ""
4873
 
4874
+ #: includes/class-mla-settings-shortcodes-tab.php:1994
4875
  msgctxt "table_view_plural"
4876
  msgid "Term List"
4877
  msgstr ""
4892
  msgstr ""
4893
 
4894
  #: includes/class-mla-settings-upload-tab.php:168
4895
+ #: includes/class-mla-settings-upload-tab.php:533
4896
  msgid ""
4897
  "The MIME Type must be all lowercase and contain only letters, numbers, "
4898
  "periods (.), slashes (/) and hyphens (-). It <strong>must be a valid MIME</"
4900
  msgstr ""
4901
 
4902
  #: includes/class-mla-settings-upload-tab.php:169
4903
+ #: includes/class-mla-settings-upload-tab.php:534
4904
  msgid "Icon Type"
4905
  msgstr ""
4906
 
4907
  #: includes/class-mla-settings-upload-tab.php:171
4908
+ #: includes/class-mla-settings-upload-tab.php:535
4909
  msgid ""
4910
  "The Icon Type selects a thumbnail image displayed for non-image file types, "
4911
  "such as PDF documents."
4912
  msgstr ""
4913
 
4914
  #: includes/class-mla-settings-upload-tab.php:173
4915
+ #: includes/class-mla-settings-upload-tab.php:537
4916
  msgid ""
4917
  "Check this box if you want to remove this entry from the list of Upload MIME "
4918
  "Types returned by get_allowed_mime_types()."
4919
  msgstr ""
4920
 
4921
  #: includes/class-mla-settings-upload-tab.php:175
4922
+ #: includes/class-mla-settings-upload-tab.php:539
4923
  #: includes/class-mla-settings-view-tab.php:133
4924
  #: includes/class-mla-settings-view-tab.php:389
4925
  msgid ""
4940
  msgstr ""
4941
 
4942
  #: includes/class-mla-settings-upload-tab.php:250
4943
+ #: includes/class-mla-settings-upload-tab.php:522
4944
  msgid "To search by extension, use \".\", e.g., \".doc\""
4945
  msgstr ""
4946
 
4947
+ #: includes/class-mla-settings-upload-tab.php:438
4948
  #: includes/class-mla-settings-view-tab.php:283
4949
  #, php-format
4950
  msgid "Edit view \"%1$s\" cancelled."
4951
  msgstr ""
4952
 
4953
+ #: includes/class-mla-settings-upload-tab.php:473
4954
  msgid "Upload MIME Type Support is disabled"
4955
  msgstr ""
4956
 
4957
+ #: includes/class-mla-settings-upload-tab.php:516
4958
+ #: includes/class-mla-settings-upload-tab.php:519
4959
  msgid "File Extension and MIME Type Processing"
4960
  msgstr ""
4961
 
4962
+ #: includes/class-mla-settings-upload-tab.php:517
4963
  msgid ""
4964
  "In this tab you can manage the list of file extension/MIME Type "
4965
  "associations, which are used by WordPress to decide what kind of files can "
4968
  "extension must be in this list and be active."
4969
  msgstr ""
4970
 
4971
+ #: includes/class-mla-settings-upload-tab.php:519
4972
  #, php-format
4973
  msgid ""
4974
  "You can find more information about file extensions, MIME types and how "
4976
  "the <strong>\"Help\"</strong> tab in the upper-right corner of this screen."
4977
  msgstr ""
4978
 
4979
+ #: includes/class-mla-settings-upload-tab.php:519
4980
  msgid "File Extension Processing documentation"
4981
  msgstr ""
4982
 
4983
+ #: includes/class-mla-settings-upload-tab.php:521
4984
  msgid "Search Uploads"
4985
  msgstr ""
4986
 
4987
+ #: includes/class-mla-settings-upload-tab.php:528
4988
  msgid "Upload MIME Type"
4989
  msgstr ""
4990
 
4991
+ #: includes/class-mla-settings-upload-tab.php:529
4992
  msgid ""
4993
  "To search the database of over 1,500 known extension/type associations, "
4994
  "click \"Search Known Types\" below the form."
4995
  msgstr ""
4996
 
4997
+ #: includes/class-mla-settings-upload-tab.php:531
4998
  msgid ""
4999
  "The &#8220;extension&#8221; is the file extension for this type, and unique "
5000
  "key for the item. It must be all lowercase and contain only letters and "
5001
  "numbers."
5002
  msgstr ""
5003
 
5004
+ #: includes/class-mla-settings-upload-tab.php:540
5005
  msgid "Add Upload MIME Type"
5006
  msgstr ""
5007
 
5008
+ #: includes/class-mla-settings-upload-tab.php:542
5009
  msgid "Search Known Types"
5010
  msgstr ""
5011
 
5012
+ #: includes/class-mla-settings-upload-tab.php:544
5013
  #: includes/class-mla-settings-view-tab.php:392
5014
  msgid "<strong>Quick Edit</strong>"
5015
  msgstr ""
5016
 
5017
+ #: includes/class-mla-settings-upload-tab.php:590
5018
  msgid "No upload slug found"
5019
  msgstr ""
5020
 
5021
+ #: includes/class-mla-settings-upload-tab.php:926
5022
+ #: includes/class-mla-settings-view-tab.php:723
5023
  msgid "Revert to standard item"
5024
  msgstr ""
5025
 
5026
+ #: includes/class-mla-settings-upload-tab.php:926
5027
+ #: includes/class-mla-settings-view-tab.php:723
5028
  msgid "Revert to Standard"
5029
  msgstr ""
5030
 
5031
+ #: includes/class-mla-settings-upload-tab.php:1208
5032
  msgid "Delete/Revert Custom"
5033
  msgstr ""
5034
 
5035
+ #: includes/class-mla-settings-upload-tab.php:1463
5036
  msgid "Select this entry"
5037
  msgstr ""
5038
 
5039
+ #: includes/class-mla-settings-upload-tab.php:1583
5040
  msgid "Select these entries"
5041
  msgstr ""
5042
 
5166
  msgstr ""
5167
 
5168
  #: includes/class-mla-settings.php:429 includes/class-mla-settings.php:655
5169
+ #: includes/class-mla-settings.php:1469
5170
  msgid "Settings"
5171
  msgstr ""
5172
 
5262
  msgid "Delete General options and restore default settings"
5263
  msgstr ""
5264
 
5265
+ #: includes/class-mla-settings.php:1088
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5266
  msgid "enhanced version of the WordPress [gallery] shortcode."
5267
  msgstr ""
5268
 
5269
+ #: includes/class-mla-settings.php:1089
5270
  msgid "enhanced version of the WordPress Tag Cloud."
5271
  msgstr ""
5272
 
5273
+ #: includes/class-mla-settings.php:1090
5274
  msgid ""
5275
  "provides flat or hierarchical lists, dropdown controls and checkbox lists of "
5276
  "taxonomy terms."
5277
  msgstr ""
5278
 
5279
+ #: includes/class-mla-settings.php:1102
5280
  msgid "Shortcodes made available by this plugin"
5281
  msgstr ""
5282
 
5283
+ #: includes/class-mla-settings.php:1217
5284
  msgid "Debug settings saved."
5285
  msgstr ""
5286
 
5287
+ #: includes/class-mla-settings.php:1313
5288
  #, php-format
5289
  msgid "%1$s: Reseting the %2$s file ( %3$s ) \"%4$s\"."
5290
  msgstr ""
5291
 
5292
+ #: includes/class-mla-settings.php:1313 includes/class-mla-settings.php:1364
5293
+ #: includes/class-mla-settings.php:1387 includes/class-mla-settings.php:1397
5294
+ #: includes/class-mla-settings.php:1423
5295
  msgid "Error Log"
5296
  msgstr ""
5297
 
5298
+ #: includes/class-mla-settings.php:1374
5299
  #, php-format
5300
  msgid "Error log file (%1$s) not found; click Reset to create it."
5301
  msgstr ""
5302
 
5303
+ #: includes/class-mla-settings.php:1418 includes/class-mla-settings.php:1434
5304
  msgid "Debug Options"
5305
  msgstr ""
5306
 
5307
+ #: includes/class-mla-settings.php:1421
5308
  msgid "Debug Settings"
5309
  msgstr ""
5310
 
5311
+ #: includes/class-mla-settings.php:1425
5312
  #, php-format
5313
  msgid ""
5314
  "You can find more information about the MLA Reporting/MLA_DEBUG_LEVEL values "
5315
  "in the %1$s section of the Documentation tab."
5316
  msgstr ""
5317
 
5318
+ #: includes/class-mla-settings.php:1425
5319
  msgid "MLA Debug Tab documentation"
5320
  msgstr ""
5321
 
5322
+ #: includes/class-mla-settings.php:1425
5323
  msgid "MLA Debug Tab"
5324
  msgstr ""
5325
 
5326
+ #: includes/class-mla-settings.php:1434
5327
  #, php-format
5328
  msgid "Click %1$s to update the %2$s."
5329
  msgstr ""
5330
 
5331
+ #: includes/class-mla-settings.php:1453
5332
  msgid "You do not have permission to manage plugin settings."
5333
  msgstr ""
5334
 
5335
+ #: includes/class-mla-settings.php:1479
5336
  msgid "Cannot render content tab"
5337
  msgstr ""
5338
 
5339
+ #: includes/class-mla-settings.php:1482
5340
  msgid "Unknown content tab"
5341
  msgstr ""
5342
 
5343
+ #: includes/class-mla-settings.php:1498
5344
  msgid "Dismiss this notice"
5345
  msgstr ""
5346
 
5347
+ #: includes/class-mla-settings.php:1525
5348
  #, php-format
5349
  msgid "%s attachment"
5350
  msgid_plural "%s attachments"
5351
  msgstr[0] ""
5352
  msgstr[1] ""
5353
 
5354
+ #: includes/class-mla-settings.php:1527
5355
  #, php-format
5356
  msgid "Deleted custom field value from %1$s."
5357
  msgstr ""
5358
 
5359
+ #: includes/class-mla-settings.php:1530
5360
  msgid "No attachments contained this custom field."
5361
  msgstr ""
5362
 
5363
+ #: includes/class-mla-settings.php:1560 includes/class-mla-settings.php:1570
5364
  #, php-format
5365
  msgctxt "message_list"
5366
  msgid "%1$s - references updated."
5367
  msgstr ""
5368
 
5369
+ #: includes/class-mla-settings.php:1613
5370
  msgid "General settings saved."
5371
  msgstr ""
5372
 
5373
+ #: includes/class-mla-settings.php:1652
5374
  msgid "General settings reset to default values."
5375
  msgstr ""
5376
 
5377
+ #: includes/class-mla-settings.php:1694
5378
  msgid "select settings"
5379
  msgstr ""
5380
 
5381
+ #: includes/class-mla-settings.php:1714
5382
  msgid "Import ALL Settings"
5383
  msgstr ""
5384
 
5385
+ #: includes/class-mla-settings.php:1743 includes/class-mla-settings.php:1759
5386
  msgctxt "message_list"
5387
  msgid "exported"
5388
  msgstr ""
5389
 
5390
+ #: includes/class-mla-settings.php:1745 includes/class-mla-settings.php:1761
5391
  msgctxt "message_list"
5392
  msgid "skipped"
5393
  msgstr ""
5394
 
5395
+ #: includes/class-mla-settings.php:1768
5396
  msgid "ALL settings exported."
5397
  msgstr ""
5398
 
5399
+ #: includes/class-mla-settings.php:1779
5400
  #, php-format
5401
  msgid "%1$s: The settings directory ( %2$s ) cannot be created."
5402
  msgstr ""
5403
 
5404
+ #: includes/class-mla-settings.php:1783
5405
  #, php-format
5406
  msgid "%1$s: The settings directory ( %2$s ) is not writable."
5407
  msgstr ""
5408
 
5409
+ #: includes/class-mla-settings.php:1794
5410
  #, php-format
5411
  msgid "%1$s: The settings file ( %2$s ) could not be opened."
5412
  msgstr ""
5413
 
5414
+ #: includes/class-mla-settings.php:1801
5415
  #, php-format
5416
  msgctxt "error_log"
5417
  msgid "%1$s: _export_settings $error_info = \"%2$s\"."
5418
  msgstr ""
5419
 
5420
+ #: includes/class-mla-settings.php:1810
5421
  #, php-format
5422
  msgid "%1$s: Writing the settings file ( %2$s ) \"%3$s\"."
5423
  msgstr ""
5424
 
5425
+ #: includes/class-mla-settings.php:1816
5426
  #, php-format
5427
  msgid "Settings exported; %1$s settings recorded."
5428
  msgstr ""
5429
 
5430
+ #: includes/class-mla-settings.php:1834
5431
  msgid "No settings imported."
5432
  msgstr ""
5433
 
5434
+ #: includes/class-mla-settings.php:1843
5435
  msgid "Please select an import settings file from the dropdown list."
5436
  msgstr ""
5437
 
5438
+ #: includes/class-mla-settings.php:1847
5439
  msgid "The import settings dropdown selection is missing."
5440
  msgstr ""
5441
 
5442
+ #: includes/class-mla-settings.php:1855
5443
  #, php-format
5444
  msgctxt "error_log"
5445
  msgid "%1$s: _import_settings $error_info = \"%2$s\"."
5446
  msgstr ""
5447
 
5448
+ #: includes/class-mla-settings.php:1864
5449
  #, php-format
5450
  msgid "%1$s: Reading the settings file ( %2$s ) \"%3$s\"."
5451
  msgstr ""
5452
 
5453
+ #: includes/class-mla-settings.php:1883 includes/class-mla-settings.php:1899
5454
  msgctxt "message_list"
5455
  msgid "updated"
5456
  msgstr ""
5457
 
5458
+ #: includes/class-mla-settings.php:1886 includes/class-mla-settings.php:1902
5459
  msgctxt "message_list"
5460
  msgid "unchanged"
5461
  msgstr ""
5462
 
5463
+ #: includes/class-mla-settings.php:1907
5464
  #, php-format
5465
  msgid "Settings imported; %1$s updated, %2$s unchanged."
5466
  msgstr ""
5467
 
5468
+ #: includes/class-mla-shortcode-support.php:474
5469
+ #: includes/class-mla-shortcode-support.php:1831
5470
+ #: includes/class-mla-shortcode-support.php:3902
5471
+ #: includes/class-mla-shortcode-support.php:4188
5472
  msgid "Previous"
5473
  msgstr ""
5474
 
5475
+ #: includes/class-mla-shortcode-support.php:475
5476
+ #: includes/class-mla-shortcode-support.php:1832
5477
+ #: includes/class-mla-shortcode-support.php:3951
5478
+ #: includes/class-mla-shortcode-support.php:4194
5479
  msgid "Next"
5480
  msgstr ""
5481
 
5482
+ #: includes/class-mla-shortcode-support.php:546
5483
+ #: includes/class-mla-shortcode-support.php:552
5484
+ #: includes/class-mla-shortcode-support.php:1970
5485
+ #: includes/class-mla-shortcode-support.php:1977
5486
+ #: includes/class-mla-shortcode-support.php:3326
5487
+ #: includes/class-mla-shortcode-support.php:3333
5488
  #: includes/class-mla-template-support.php:598
5489
  msgid "not found"
5490
  msgstr ""
5491
 
5492
+ #: includes/class-mla-shortcode-support.php:575
5493
+ #: includes/class-mla-shortcode-support.php:1962
5494
+ #: includes/class-mla-shortcode-support.php:3318
5495
  msgid "mla_debug REQUEST"
5496
  msgstr ""
5497
 
5498
+ #: includes/class-mla-shortcode-support.php:576
5499
+ #: includes/class-mla-shortcode-support.php:1963
5500
+ #: includes/class-mla-shortcode-support.php:3319
5501
  msgid "mla_debug attributes"
5502
  msgstr ""
5503
 
5504
+ #: includes/class-mla-shortcode-support.php:577
5505
+ #: includes/class-mla-shortcode-support.php:1964
5506
+ #: includes/class-mla-shortcode-support.php:3320
5507
  msgid "mla_debug arguments"
5508
  msgstr ""
5509
 
5510
+ #: includes/class-mla-shortcode-support.php:619
5511
  msgid "mla_debug empty gallery"
5512
  msgstr ""
5513
 
5514
+ #: includes/class-mla-shortcode-support.php:640
5515
  msgid ""
5516
  "<strong>Photonic-enhanced [mla_gallery]</strong> type must be "
5517
  "<strong>default</strong>, query = "
5518
  msgstr ""
5519
 
5520
+ #: includes/class-mla-shortcode-support.php:1086
5521
  msgid "unknown"
5522
  msgstr ""
5523
 
5524
+ #: includes/class-mla-shortcode-support.php:2101
5525
  msgid "mla_debug empty cloud"
5526
  msgstr ""
5527
 
5528
+ #: includes/class-mla-shortcode-support.php:3454
5529
  msgid "mla_debug empty list"
5530
  msgstr ""
5531
 
5532
+ #: includes/class-mla-shortcode-support.php:3477
5533
  msgid "no-terms"
5534
  msgstr ""
5535
 
5536
+ #: includes/class-mla-shortcode-support.php:4610
5537
+ #: includes/class-mla-shortcode-support.php:5021
5538
+ #: includes/class-mla-shortcode-support.php:5058
5539
  msgid "Invalid mla_gallery"
5540
  msgstr ""
5541
 
5542
+ #: includes/class-mla-shortcode-support.php:5337
5543
  msgid "mla_debug query"
5544
  msgstr ""
5545
 
5546
+ #: includes/class-mla-shortcode-support.php:5338
5547
  msgid "mla_debug request"
5548
  msgstr ""
5549
 
5550
+ #: includes/class-mla-shortcode-support.php:5339
5551
  msgid "mla_debug query_vars"
5552
  msgstr ""
5553
 
5554
+ #: includes/class-mla-shortcode-support.php:5340
5555
  msgid "mla_debug post_count"
5556
  msgstr ""
5557
 
5558
+ #: includes/class-mla-shortcode-support.php:5364
5559
+ msgid "mla_debug JOIN filter"
5560
+ msgstr ""
5561
+
5562
+ #: includes/class-mla-shortcode-support.php:5404
5563
+ msgid "mla_debug modified JOIN filter"
5564
+ msgstr ""
5565
+
5566
+ #: includes/class-mla-shortcode-support.php:5429
5567
  msgid "mla_debug WHERE filter"
5568
  msgstr ""
5569
 
5570
+ #: includes/class-mla-shortcode-support.php:5453
5571
  msgid "mla_debug modified WHERE filter"
5572
  msgstr ""
5573
 
5574
+ #: includes/class-mla-shortcode-support.php:5476
5575
  msgid "mla_debug ORDER BY filter, incoming"
5576
  msgstr ""
5577
 
5578
+ #: includes/class-mla-shortcode-support.php:5476
5579
  msgid "Replacement ORDER BY clause"
5580
  msgstr ""
5581
 
5582
+ #: includes/class-mla-shortcode-support.php:5499
5583
  msgid "mla_debug posts_clauses filter"
5584
  msgstr ""
5585
 
5586
+ #: includes/class-mla-shortcode-support.php:5517
5587
  msgid "mla_debug posts_clauses_request filter"
5588
  msgstr ""
5589
 
5590
+ #: includes/class-mla-shortcode-support.php:5706
5591
  msgid "Invalid taxonomy"
5592
  msgstr ""
5593
 
5594
+ #: includes/class-mla-shortcode-support.php:5886
5595
  msgid "mla_debug query arguments"
5596
  msgstr ""
5597
 
5598
+ #: includes/class-mla-shortcode-support.php:5887
5599
  msgid "mla_debug last_query"
5600
  msgstr ""
5601
 
5602
+ #: includes/class-mla-shortcode-support.php:5888
5603
  msgid "mla_debug last_error"
5604
  msgstr ""
5605
 
5606
+ #: includes/class-mla-shortcode-support.php:5889
5607
  msgid "mla_debug num_rows"
5608
  msgstr ""
5609
 
5610
+ #: includes/class-mla-shortcode-support.php:5890
5611
  msgid "mla_debug found_rows"
5612
  msgstr ""
5613
 
languages/media-library-assistant-en_US.po CHANGED
@@ -1,9 +1,11 @@
1
  msgid ""
2
  msgstr ""
3
  "Project-Id-Version: Media Library Assistant\n"
4
- "POT-Creation-Date: 2018-03-25 15:56-0700\n"
5
- "PO-Revision-Date: 2018-03-25 15:57-0700\n"
 
6
  "Language-Team: David Lingren <david@fairtradejudaica.org>\n"
 
7
  "MIME-Version: 1.0\n"
8
  "Content-Type: text/plain; charset=UTF-8\n"
9
  "Content-Transfer-Encoding: 8bit\n"
@@ -13,8 +15,6 @@ msgstr ""
13
  "X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
14
  "_n_noop:1,2;_c;_nc:4c,1,2;_x:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;_ex:1,2c\n"
15
  "X-Poedit-SourceCharset: UTF-8\n"
16
- "Last-Translator: David Lingren <dlingren@comcast.net>\n"
17
- "Language: en_US\n"
18
  "X-Poedit-SearchPath-0: includes\n"
19
  "X-Poedit-SearchPath-1: tests\n"
20
  "X-Poedit-SearchPath-2: index.php\n"
@@ -214,10 +214,15 @@ msgid ""
214
  msgstr ""
215
 
216
  msgid ""
217
- "Check the \"<strong>Checked On Top</strong>\" box to moved checked terms to "
218
  "the top of the checklist-style meta box."
219
  msgstr ""
220
 
 
 
 
 
 
221
  msgid ""
222
  "Use the \"<strong>List Filter</strong>\" option to select the taxonomy (or "
223
  "custom field) on which to filter the Assistant table listing."
@@ -1344,10 +1349,13 @@ msgstr ""
1344
  msgid "Last modified"
1345
  msgstr ""
1346
 
1347
- msgid "more"
1348
  msgstr ""
1349
 
1350
- msgid "less"
 
 
 
1351
  msgstr ""
1352
 
1353
  msgid "Add"
@@ -2058,6 +2066,9 @@ msgstr ""
2058
  msgid "Checked On Top"
2059
  msgstr ""
2060
 
 
 
 
2061
  msgid "List Filter"
2062
  msgstr ""
2063
 
@@ -2084,6 +2095,10 @@ msgstr ""
2084
  msgid "Checked On Top ignored; %1$s not supported."
2085
  msgstr ""
2086
 
 
 
 
 
2087
  #, php-format
2088
  msgid "Update custom %1$s"
2089
  msgstr ""
@@ -3377,26 +3392,6 @@ msgstr ""
3377
  msgid "Delete General options and restore default settings"
3378
  msgstr ""
3379
 
3380
- msgid "Support Our Work"
3381
- msgstr ""
3382
-
3383
- msgid "Donate to FTJ"
3384
- msgstr ""
3385
-
3386
- msgid "Donate"
3387
- msgstr ""
3388
-
3389
- #, php-format
3390
- msgid ""
3391
- "This plugin was inspired by my work on the WordPress web site for our "
3392
- "nonprofit, Fair Trade Judaica. If you find the Media Library Assistant "
3393
- "plugin useful and would like to support a great cause, consider a %1$s to "
3394
- "our work. Thank you!"
3395
- msgstr ""
3396
-
3397
- msgid "tax-deductible donation"
3398
- msgstr ""
3399
-
3400
  msgid "enhanced version of the WordPress [gallery] shortcode."
3401
  msgstr ""
3402
 
@@ -3608,6 +3603,12 @@ msgstr ""
3608
  msgid "mla_debug post_count"
3609
  msgstr ""
3610
 
 
 
 
 
 
 
3611
  msgid "mla_debug WHERE filter"
3612
  msgstr ""
3613
 
1
  msgid ""
2
  msgstr ""
3
  "Project-Id-Version: Media Library Assistant\n"
4
+ "POT-Creation-Date: 2019-01-01 17:31-0800\n"
5
+ "PO-Revision-Date: 2019-01-01 17:32-0800\n"
6
+ "Last-Translator: David Lingren <dlingren@comcast.net>\n"
7
  "Language-Team: David Lingren <david@fairtradejudaica.org>\n"
8
+ "Language: en_US\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=UTF-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
15
  "X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
16
  "_n_noop:1,2;_c;_nc:4c,1,2;_x:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;_ex:1,2c\n"
17
  "X-Poedit-SourceCharset: UTF-8\n"
 
 
18
  "X-Poedit-SearchPath-0: includes\n"
19
  "X-Poedit-SearchPath-1: tests\n"
20
  "X-Poedit-SearchPath-2: index.php\n"
214
  msgstr ""
215
 
216
  msgid ""
217
+ "Check the \"<strong>Checked On Top</strong>\" box to move checked terms to "
218
  "the top of the checklist-style meta box."
219
  msgstr ""
220
 
221
+ msgid ""
222
+ "Check the \"<strong>Inline Add Term</strong>\" box to support adding terms "
223
+ "in the Quick Edit and Bulk Edit areas."
224
+ msgstr ""
225
+
226
  msgid ""
227
  "Use the \"<strong>List Filter</strong>\" option to select the taxonomy (or "
228
  "custom field) on which to filter the Assistant table listing."
1349
  msgid "Last modified"
1350
  msgstr ""
1351
 
1352
+ msgid "+&nbsp;Add&nbsp;New&nbsp;Term"
1353
  msgstr ""
1354
 
1355
+ msgid "Add New"
1356
+ msgstr ""
1357
+
1358
+ msgid "?&nbsp;Search"
1359
  msgstr ""
1360
 
1361
  msgid "Add"
2066
  msgid "Checked On Top"
2067
  msgstr ""
2068
 
2069
+ msgid "Inline Add Term"
2070
+ msgstr ""
2071
+
2072
  msgid "List Filter"
2073
  msgstr ""
2074
 
2095
  msgid "Checked On Top ignored; %1$s not supported."
2096
  msgstr ""
2097
 
2098
+ #, php-format
2099
+ msgid "Inline Add Term ignored; %1$s not supported."
2100
+ msgstr ""
2101
+
2102
  #, php-format
2103
  msgid "Update custom %1$s"
2104
  msgstr ""
3392
  msgid "Delete General options and restore default settings"
3393
  msgstr ""
3394
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3395
  msgid "enhanced version of the WordPress [gallery] shortcode."
3396
  msgstr ""
3397
 
3603
  msgid "mla_debug post_count"
3604
  msgstr ""
3605
 
3606
+ msgid "mla_debug JOIN filter"
3607
+ msgstr ""
3608
+
3609
+ msgid "mla_debug modified JOIN filter"
3610
+ msgstr ""
3611
+
3612
  msgid "mla_debug WHERE filter"
3613
  msgstr ""
3614
 
readme.txt CHANGED
@@ -1,11 +1,11 @@
1
  === Media Library Assistant ===
2
  Contributors: dglingren
3
- Donate link: http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/
4
  Tags: attachments, gallery, images, media, media library, tags, categories, IPTC, EXIF, XMP, GPS, PDF, metadata, photos, photographs, photo albums, MIME, mime-type, icon, upload, file extensions, WPML, Polylang
5
  Requires at least: 3.5.0
6
- Tested up to: 4.9.7
7
  Requires PHP: 5.3
8
- Stable tag: 2.75
9
  License: GPLv2 or later
10
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
11
 
@@ -55,8 +55,6 @@ The Media Library Assistant provides several enhancements for managing the Media
55
 
56
  The Assistant is designed to work like the standard Media Library pages, so the learning curve is short and gentle. Contextual help is provided on every new screen to highlight new features.
57
 
58
- This plugin was inspired by my work on the WordPress web site for our nonprofit, Fair Trade Judaica. If you find the Media Library Assistant plugin useful and would like to support a great cause, consider a [<strong>tax-deductible</strong> donation](http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/ "Support Our Work") to our work. Thank you!
59
-
60
  == Installation ==
61
 
62
  1. Upload `media-library-assistant` and its subfolders to your `/wp-content/plugins/` directory, **OR** Visit the Plugins/Add New page and search for "Media Library Assistant"; click "Install Now" to upload it
@@ -167,7 +165,7 @@ Not many, but all of the internationalization work in the plugin source code has
167
 
168
  = What's in the "phpDocs" directory and do I need it? =
169
 
170
- All of the MLA source code has been annotated with "DocBlocks", a special type of comment used by phpDocumentor to generate API documentation. If you'd like a deeper understanding of the code, navigate to the [MLA phpDocs web page](http://fairtradejudaica.org/wp-content/uploads/phpDocs/index.html "Read the API documentation") and have a look. Note that these pages require JavaScript for much of their functionality.
171
 
172
  == Screenshots ==
173
 
@@ -183,24 +181,26 @@ All of the MLA source code has been annotated with "DocBlocks", a special type o
183
 
184
  == Changelog ==
185
 
186
- = 2.75 =
187
- * Fix: Accomodate Admin Columns (and Pro) update to PHP namespaces; eliminate "deprecated" warnings.
188
- * Fix: For IPIC/EXIF mapping rules, numeric values can now be mapped into the Title standard field.
189
- * Fix: When Admin Columns Pro 4.0.x is active, a PHP Warning/Uncaught Error regarding argument count mismatch has been eliminated. The error occurs in ACP 4.0.3 and earlier, but not in ACP 4.0.14 and later.
190
- * Fix: For Settings/Media Library Assistant Uploads tab, a PHP Fatal error when bulk-selecting items from the "Search Known Types" list has been corrected.
191
- * Fix: For Settings/Media Library Assistant Uploads tab, a PHP Notice when adding an custom item with a non-empty Description has been corrected.
192
-
193
- = 2.74 =
194
- * New: The "MLA Substitution Parameter Hooks Example" plugin has been enhanced with a `current_term:` prefix that returns values from the term(s) present in the `$_REQUEST` variables.
195
- * Fix: Cross-Site Scripting vulnerabilities have been removed from the Media/Assistant and Settings/Media Library assistant admin submenu screens.
196
- * Fix: For `[mla_gallery]`, support for mla_search_fields=alt-text has been added.
197
- * Fix: For `[mla_gallery]`, support for mla_search_fields=file has been fixed.
198
- * Fix: The Settings/Media Library Assistant Documentation/Example Plugins "Download" rollover action has been restored.
199
- * Fix: For `[mla_term_list]` and `[mla_tag_cloud]`, current_item values can contain accented and special characters, e.g., Cryllic script.
200
- * Fix: For `[mla_gallery]`, substitution parameters are supported in the `mla_nolink_text` parameter.
201
- * Fix: Improved debug logging of `$wp_filter` content, avoiding circular references.
202
-
203
- = 2.70 - 2.73 =
 
 
204
  * 2.73 - Checklist-style flat taxonomy improvements, Admin Columns Pro fix, new and improved example plugins, e.g., "parent search". Five enhancements, four fixes.
205
  * 2.72 - Remove "Circular Reference" PHP Warnings in class-mla-mime-types.php.
206
  * 2.71 - Admin Columns Pro CSV Export support, Uploaded on date editing, regular expression match/replace functions in shortcodes, new and improved example plugins. Thirteen enhancements, seven fixes.
@@ -297,8 +297,11 @@ All of the MLA source code has been annotated with "DocBlocks", a special type o
297
 
298
  == Upgrade Notice ==
299
 
300
- = 2.75 =
301
- Admin Columns (and Pro) fixes to eliminate PHP messages. Five fixes in all.
 
 
 
302
 
303
  == Other Notes ==
304
 
1
  === Media Library Assistant ===
2
  Contributors: dglingren
3
+ Donate link: http://davidlingren.com/#two
4
  Tags: attachments, gallery, images, media, media library, tags, categories, IPTC, EXIF, XMP, GPS, PDF, metadata, photos, photographs, photo albums, MIME, mime-type, icon, upload, file extensions, WPML, Polylang
5
  Requires at least: 3.5.0
6
+ Tested up to: 5.0.2
7
  Requires PHP: 5.3
8
+ Stable tag: 2.77
9
  License: GPLv2 or later
10
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
11
 
55
 
56
  The Assistant is designed to work like the standard Media Library pages, so the learning curve is short and gentle. Contextual help is provided on every new screen to highlight new features.
57
 
 
 
58
  == Installation ==
59
 
60
  1. Upload `media-library-assistant` and its subfolders to your `/wp-content/plugins/` directory, **OR** Visit the Plugins/Add New page and search for "Media Library Assistant"; click "Install Now" to upload it
165
 
166
  = What's in the "phpDocs" directory and do I need it? =
167
 
168
+ All of the MLA source code has been annotated with "DocBlocks", a special type of comment used by phpDocumentor to generate API documentation. If you'd like a deeper understanding of the code, navigate to the [MLA phpDocs web page](http://davidlingren.com/assets/phpDocs/index.html "Read the API documentation") and have a look. Note that these pages require JavaScript for much of their functionality.
169
 
170
  == Screenshots ==
171
 
181
 
182
  == Changelog ==
183
 
184
+ = 2.77 =
185
+ * Fix: Preserve current term assignments for checklist-style taxonomies when opening the Media/Assistant Quick Edit area. This defect was introduced in v2.76.
186
+
187
+ = 2.76 =
188
+ * New: For the Media/Assistant Quick Edit and Bulk Edit areas, "checklist-style" taxonomies such as Att. Categories now have an <strong>"+ Add New Term"</strong> feature that lets you add a new term to the taxonomy without leaving the area. <strong>You must enable the new feature</strong> by checking the "Inline Add Term" box for each taxonomy in the Settings/Media Library Assistant General tab, "Taxonomy Support" section.
189
+ * New: For the Media/Assistant Quick Edit and Bulk Edit areas, "checklist-style" taxonomies such as Att. Categories now have a <strong>"? Search"</strong> feature that lets you filter the checklist by entering part or all of the term name.
190
+ * New: For the "WooCommerce Fixit" example plugin, a new "Replace Name/Slug" tool has been added.
191
+ * New: A new example plugin, "MLA USP Novo-Map Example", has been added. The plugin fills posts created by the "User Submitted Posts" plugin with information for the "Novo Map" plugin.
192
+ * New: For `[mla_gallery mla_viewer=true]`, the `size` parameter can be used to set viewer width and height from one of the intermediate sizes your site supports.
193
+ * New: For the "Photonic Gallery" Plugin, non-image items can now be included in Photonic galleries, with optional thumbnail support from the item's Featured Image.
194
+ * New: Removed plugin donation prompts and references.
195
+ * New: Updated plugin and author URLs.
196
+ * Fix: For the Media/Assistant submenu table, the "orderby" argument is now added to pagination links for columns such as "Date" (post_date).
197
+ * Fix: A JavaScript defect that disabled Media/Assistant Bulk Edit operations has been corrected.
198
+ * Fix: Calling `MLAData_Source::mla_get_data_source()` from the WordPress front end now loads the other MLA classes on which it depends, avoiding PHP fatal errors.
199
+ * Fix: For the "MLA Path Mapping Example" plugin, a defect in assigning child terms to their parent term has been corrected.
200
+
201
+ = 2.70 - 2.75 =
202
+ * 2.75 - Admin Columns (and Pro) fixes to eliminate PHP messages. Five fixes in all.
203
+ * 2.74 - Cross-Site Scripting vulnerabilities have been removed from the Media/Assistant and Settings/Media Library assistant admin submenu screens. One enhancement, seven fixes.
204
  * 2.73 - Checklist-style flat taxonomy improvements, Admin Columns Pro fix, new and improved example plugins, e.g., "parent search". Five enhancements, four fixes.
205
  * 2.72 - Remove "Circular Reference" PHP Warnings in class-mla-mime-types.php.
206
  * 2.71 - Admin Columns Pro CSV Export support, Uploaded on date editing, regular expression match/replace functions in shortcodes, new and improved example plugins. Thirteen enhancements, seven fixes.
297
 
298
  == Upgrade Notice ==
299
 
300
+ = 2.77 =
301
+ Preserve current term assignments for checklist-style taxonomies when opening the Media/Assistant Quick Edit area. Corrects a defect introduced in v2.76.
302
+
303
+ = 2.76 =
304
+ "Checklist-style" term search and additions in the Bulk and Quick Edit areas. New and improved example plugins. Seven enhancements, four fixes.
305
 
306
  == Other Notes ==
307
 
tpls/admin-display-settings-page.tpl CHANGED
@@ -3,9 +3,6 @@
3
  &nbsp;
4
  <div class="wrap">
5
  <div id="icon-options-general" class="icon32"><br/></div>
6
- <div id="donate-button-div" class="alignright clear">
7
- <a title="[+Support Our Work+]" class="button button-large button-primary" href="http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/" target="_blank">[+Donate+]</a>
8
- </div>
9
  <h1>[+Media Library Assistant+] [+version+][+development+] [+Settings+]</h1>
10
  [+messages+]
11
  [+tablist+]
@@ -118,15 +115,6 @@
118
  <p>
119
  <a href="#backtotop">[+Go to Top+]</a>
120
  </p>
121
- <h2>[+Support Our Work+]</h2>
122
- <table width="700" border="0" cellpadding="10">
123
- <tr>
124
- <td>
125
- <a title="[+Donate to FTJ+]" class="button button-large button-primary" href="http://fairtradejudaica.org/media-library-assistant-a-wordpress-plugin/" target="_blank">[+Donate+]</a>
126
- </td>
127
- <td>[+This plugin was+]</td>
128
- </tr>
129
- </table>
130
 
131
  <!-- template="debug-tab" -->
132
  <h2>[+Debug Options+]</h2>
3
  &nbsp;
4
  <div class="wrap">
5
  <div id="icon-options-general" class="icon32"><br/></div>
 
 
 
6
  <h1>[+Media Library Assistant+] [+version+][+development+] [+Settings+]</h1>
7
  [+messages+]
8
  [+tablist+]
115
  <p>
116
  <a href="#backtotop">[+Go to Top+]</a>
117
  </p>
 
 
 
 
 
 
 
 
 
118
 
119
  <!-- template="debug-tab" -->
120
  <h2>[+Debug Options+]</h2>
tpls/admin-inline-edit-form.tpl CHANGED
@@ -1,16 +1,51 @@
1
  <!-- template="category_fieldset" -->
2
- <fieldset class="inline-edit-col-center inline-edit-categories"><div class="inline-edit-col">
3
- [+category_blocks+] </div></fieldset>
 
 
 
 
4
  <!-- template="category_block" -->
5
- <span class="title inline-edit-categories-label">[+tax_html+]</span>
6
- <input type="hidden" name="tax_input[[+tax_attr+]][]" value="0" />
7
- <ul class="cat-checklist [+tax_attr+]-checklist">
 
8
  [+tax_checklist+]
9
- </ul>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10
 
11
  <!-- template="tag_fieldset" -->
12
- <fieldset class="inline-edit-col-right inline-edit-tags"><div class="inline-edit-col">
13
- [+tag_blocks+] </div></fieldset>
 
 
 
 
14
  <!-- template="tag_block" -->
15
  <label class="inline-edit-tags">
16
  <span class="title">[+tax_html+]</span>
@@ -33,6 +68,7 @@
33
  <tbody id="inlineedit">
34
  <tr id="inline-edit" class="inline-edit-row inline-edit-row-attachment inline-edit-attachment quick-edit-row quick-edit-row-attachment quick-edit-attachment" style="display: none">
35
  <td colspan="[+colspan+]" class="colspanchange">
 
36
  <fieldset class="inline-edit-col-left">
37
  <div class="inline-edit-col">
38
  <h4>[+Quick Edit+]</h4>
@@ -79,6 +115,7 @@
79
  [+custom_fields+]
80
  </div>
81
  </fieldset>
 
82
  <p class="submit inline-edit-save">
83
  <a accesskey="c" href="#inline-edit" title="[+Cancel+]" class="button-secondary cancel alignleft">[+Cancel+]</a>
84
  <a accesskey="s" href="#inline-edit" title="[+Update+]" class="button-primary save alignright">[+Update+]</a>
@@ -92,6 +129,7 @@
92
  </tr>
93
  <tr id="blank-bulk-edit" class="inline-edit-row inline-edit-row-attachment inline-edit-attachment bulk-edit-row bulk-edit-row-attachment bulk-edit-attachment" style="display: none">
94
  <td colspan="[+colspan+]" class="colspanchange">
 
95
  [+bulk_middle_column+]
96
  [+bulk_right_column+]
97
  <fieldset class="inline-edit-col-right inline-edit-fields">
@@ -137,10 +175,12 @@
137
  [+bulk_custom_fields+]
138
  </div>
139
  </fieldset>
 
140
  </td>
141
  </tr>
142
  <tr id="bulk-edit" class="inline-edit-row inline-edit-row-attachment inline-edit-attachment bulk-edit-row bulk-edit-row-attachment bulk-edit-attachment" style="display: none">
143
  <td colspan="[+colspan+]" class="colspanchange">
 
144
  <fieldset class="inline-edit-col-left">
145
  <div class="inline-edit-col">
146
  <h4>[+Bulk Edit+]</h4>
@@ -196,6 +236,7 @@
196
  [+bulk_custom_fields+]
197
  </div>
198
  </fieldset>
 
199
  <p class="submit inline-edit-save">
200
  <a accesskey="c" href="#inline-edit" title="[+Cancel+]" class="button-secondary cancel alignleft">[+Cancel+]</a>
201
  <input accesskey="s" type="submit" name="bulk_edit" id="bulk_edit" class="button-primary alignright" value="[+Update+]" />
@@ -245,6 +286,11 @@
245
  </p>
246
  </td>
247
  </tr>
 
 
 
 
 
248
  </tbody>
249
  </table>
250
  </form>
1
  <!-- template="category_fieldset" -->
2
+ <fieldset class="inline-edit-col-center inline-edit-categories">
3
+ <div class="inline-edit-col">
4
+ [+category_blocks+]
5
+ </div>
6
+ </fieldset>
7
+
8
  <!-- template="category_block" -->
9
+ <div id="taxonomy-[+tax_attr+]" class="categorydiv">
10
+ <span class="title inline-edit-categories-label">[+tax_html+]</span>
11
+ <input type="hidden" name="tax_input[[+tax_attr+]][]" value="0" />
12
+ <ul class="cat-checklist [+tax_attr+]checklist form-no-clear" id="[+tax_attr+]checklist" data-wp-lists="list:[+tax_attr+]">
13
  [+tax_checklist+]
14
+ </ul>
15
+ [+category_add_link+]
16
+ <span><a class="hide-if-no-js" id="[+tax_attr+]-search-toggle" href="#[+tax_attr+]-search">[+Search+]</a></span>
17
+ [+category_adder+]
18
+ <div id="[+tax_attr+]-searcher" class="wp-hidden-children">
19
+ <p id="[+tax_attr+]-search" class="category-add wp-hidden-child">
20
+ <label class="screen-reader-text" for="search-category">[+Search Reader+]</label>
21
+ <input type="text" name="search-[+tax_attr+]" id="search-[+tax_attr+]" class="form-required form-input-tip" value="[+Search Reader+]" aria-required="true">
22
+ </p>
23
+ </div>
24
+ </div>
25
+
26
+ <!-- template="category_add_link" -->
27
+ <span><a class="hide-if-no-js" id="[+tax_attr+]-add-toggle" href="#[+tax_attr+]-add">[+Add New Term+]</a></span>
28
+ &nbsp; &nbsp;
29
+
30
+ <!-- template="category_adder" -->
31
+ <div id="[+tax_attr+]-adder" class="wp-hidden-children">
32
+ <p id="[+tax_attr+]-add" class="category-add wp-hidden-child">
33
+ <label class="screen-reader-text" for="new[+tax_attr+]">[+Add Reader+]</label>
34
+ <input name="new[+tax_attr+]" class="form-required form-input-tip" id="new[+tax_attr+]" aria-required="true" type="text" value="[+Add Reader+]">
35
+ [+tax_parents+]
36
+ <input class="button category-add-submit mla-taxonomy-add-submit" id="[+tax_attr+]-add-submit" type="button" data-wp-lists="add:[+tax_attr+]checklist:[+tax_attr+]-add"value="[+Add Button+]">
37
+ [+ajax_nonce_field+]
38
+ <span id="[+tax_attr+]-ajax-response"></span>
39
+ </p>
40
+ </div>
41
 
42
  <!-- template="tag_fieldset" -->
43
+ <fieldset class="inline-edit-col-right inline-edit-tags">
44
+ <div class="inline-edit-col">
45
+ [+tag_blocks+]
46
+ </div>
47
+ </fieldset>
48
+
49
  <!-- template="tag_block" -->
50
  <label class="inline-edit-tags">
51
  <span class="title">[+tax_html+]</span>
68
  <tbody id="inlineedit">
69
  <tr id="inline-edit" class="inline-edit-row inline-edit-row-attachment inline-edit-attachment quick-edit-row quick-edit-row-attachment quick-edit-attachment" style="display: none">
70
  <td colspan="[+colspan+]" class="colspanchange">
71
+ <div class="edit-fields-div" id="inline-edit-fields-div">
72
  <fieldset class="inline-edit-col-left">
73
  <div class="inline-edit-col">
74
  <h4>[+Quick Edit+]</h4>
115
  [+custom_fields+]
116
  </div>
117
  </fieldset>
118
+ </div> <!-- inline-edit-fields-div -->
119
  <p class="submit inline-edit-save">
120
  <a accesskey="c" href="#inline-edit" title="[+Cancel+]" class="button-secondary cancel alignleft">[+Cancel+]</a>
121
  <a accesskey="s" href="#inline-edit" title="[+Update+]" class="button-primary save alignright">[+Update+]</a>
129
  </tr>
130
  <tr id="blank-bulk-edit" class="inline-edit-row inline-edit-row-attachment inline-edit-attachment bulk-edit-row bulk-edit-row-attachment bulk-edit-attachment" style="display: none">
131
  <td colspan="[+colspan+]" class="colspanchange">
132
+ <div class="edit-fields-div" id="blank-bulk-edit-fields-div">
133
  [+bulk_middle_column+]
134
  [+bulk_right_column+]
135
  <fieldset class="inline-edit-col-right inline-edit-fields">
175
  [+bulk_custom_fields+]
176
  </div>
177
  </fieldset>
178
+ </div> <!-- blank-bulk-edit-fields-div -->
179
  </td>
180
  </tr>
181
  <tr id="bulk-edit" class="inline-edit-row inline-edit-row-attachment inline-edit-attachment bulk-edit-row bulk-edit-row-attachment bulk-edit-attachment" style="display: none">
182
  <td colspan="[+colspan+]" class="colspanchange">
183
+ <div class="edit-fields-div" id="bulk-edit-fields-div">
184
  <fieldset class="inline-edit-col-left">
185
  <div class="inline-edit-col">
186
  <h4>[+Bulk Edit+]</h4>
236
  [+bulk_custom_fields+]
237
  </div>
238
  </fieldset>
239
+ </div> <!-- bulk-edit-fields-div -->
240
  <p class="submit inline-edit-save">
241
  <a accesskey="c" href="#inline-edit" title="[+Cancel+]" class="button-secondary cancel alignleft">[+Cancel+]</a>
242
  <input accesskey="s" type="submit" name="bulk_edit" id="bulk_edit" class="button-primary alignright" value="[+Update+]" />
286
  </p>
287
  </td>
288
  </tr>
289
+ <tr id="add-term-ajax" style="display: none">
290
+ <td colspan="[+colspan+]" class="colspanchange">
291
+ <span id="add-term-ajax-response"></span>
292
+ </td>
293
+ </tr>
294
  </tbody>
295
  </table>
296
  </form>
tpls/documentation-settings-tab.tpl CHANGED
@@ -450,7 +450,6 @@ The "mla_target" parameter accepts any value and adds an HTML "target" attribute
450
  </p>
451
  <h4>Thumbnail Substitution Support, mla_viewer</h4>
452
  <p>
453
- <strong>NOTE: Google discontinued their File Viewer support for thumbnail images some time ago.</strong>
454
  This solution supports dynamic thumbnail image generation for PDF and Postscript documents on your site's server. You can also assign a "Featured Image" to any Media Library item. For non-image items such as Microsoft Office documents the featured image will replace the MIME-type icon or document title in an <code>[mla_gallery]</code> display. Simply go to the Media/Edit Media screen, scroll down to the "Featured Image" meta box and select an image as you would for a post or page.
455
  </p>
456
  <p>
@@ -481,13 +480,17 @@ Ten <code>[mla_gallery]</code> parameters provide an easy way to simulate thumbn
481
  </tr>
482
  <tr>
483
  <td class="mla-doc-table-label">mla_viewer_height</td>
484
- <td>the maximum width in pixels (default "0") of the thumbnail image. The width (unless also specified) will be adjusted to maintain the page proportions.</td>
485
  </tr>
486
  <tr>
487
  <td class="mla-doc-table-label">mla_viewer_best_fit</td>
488
  <td>retain page proportions (default "false") when both height and width are explicitly stated. If "false", the image will be stretched as required to exactly fit the height and width. If "true", the image will be reduced in size to fit within the bounds, but proportions will be preserved. For example, a typical page is 612 pixels wide and 792 pixels tall. If you set width and height to 300 and set best_fit to true, the thumbnail will be reduced to 231 pixels wide by 300 pixels tall.</td>
489
  </tr>
490
  <tr>
 
 
 
 
491
  <td class="mla-doc-table-label">mla_viewer_page</td>
492
  <td>the page number (default "1") to be used for the thumbnail image. If the page does not exist for a particular document the first page will be used instead.</td>
493
  </tr>
@@ -822,7 +825,7 @@ In this example, "attachment_tag" is the WordPress taxonomy name/slug for the ta
822
  The default behavior of the simple taxonomy query will match any of the terms in the list. A special value lets you find items that have no assigned terms in the taxonomy. For example, to find items that have no Att. Tags you can code:
823
  </p>
824
  <ul class="mla_settings">
825
- <li><code>[mla_gallery attachment_tag=no.assigned.terms]</code></li>
826
  </ul>
827
  <p>
828
  If you have two or more simple taxonomy queries, they will be joined by "AND". MLA enhances the simple taxonomy query form by providing three additional parameters:
@@ -6496,7 +6499,7 @@ You can go to the Settings/Media Library Assistant IPTC/EXIF tab and define a ru
6496
  <li>Click "Add Rule" to save your rule.</li>
6497
  </ol>
6498
  <p>
6499
- If you want to test your work, you can go to the Media/Assistant submenu table and click the "Edit" rollover action for an image you know has keywords. Click the "Map IPTC/EXIF Metadata" link in the upper right "Save" area of the screen, then look down at the Custom Fields meta box and see if your "Date Time Created" value is present and correct. Once you've got your rule working you can update individual images, use the Bulk Edit area to update groups of images or use the "Execute" rollover action for your rule to process all of your images.
6500
  </p>
6501
  <p>
6502
  You can use the meta_key, orderby and order parameters to sort an <code>[mla_gallery]</code> by your custom field. For example:<br />
450
  </p>
451
  <h4>Thumbnail Substitution Support, mla_viewer</h4>
452
  <p>
 
453
  This solution supports dynamic thumbnail image generation for PDF and Postscript documents on your site's server. You can also assign a "Featured Image" to any Media Library item. For non-image items such as Microsoft Office documents the featured image will replace the MIME-type icon or document title in an <code>[mla_gallery]</code> display. Simply go to the Media/Edit Media screen, scroll down to the "Featured Image" meta box and select an image as you would for a post or page.
454
  </p>
455
  <p>
480
  </tr>
481
  <tr>
482
  <td class="mla-doc-table-label">mla_viewer_height</td>
483
+ <td>the maximum height in pixels (default "0") of the thumbnail image. The width (unless also specified) will be adjusted to maintain the page proportions.</td>
484
  </tr>
485
  <tr>
486
  <td class="mla-doc-table-label">mla_viewer_best_fit</td>
487
  <td>retain page proportions (default "false") when both height and width are explicitly stated. If "false", the image will be stretched as required to exactly fit the height and width. If "true", the image will be reduced in size to fit within the bounds, but proportions will be preserved. For example, a typical page is 612 pixels wide and 792 pixels tall. If you set width and height to 300 and set best_fit to true, the thumbnail will be reduced to 231 pixels wide by 300 pixels tall.</td>
488
  </tr>
489
  <tr>
490
+ <td class="mla-doc-table-label">size</td>
491
+ <td>You can use <code>size</code> as an alternative to <code>mla_viewer_width</code> and/or <code>mla_viewer_height</code> to set the image dimensions from one of the intermediate sizes your site supports, e.g., "medium" or "large" (but not "full"). If <code>size</code> is present and <code>mla_viewer_best_fit</code> is not, <code>mla_viewer_best_fit</code> will be set to "true".</td>
492
+ </tr>
493
+ <tr>
494
  <td class="mla-doc-table-label">mla_viewer_page</td>
495
  <td>the page number (default "1") to be used for the thumbnail image. If the page does not exist for a particular document the first page will be used instead.</td>
496
  </tr>
825
  The default behavior of the simple taxonomy query will match any of the terms in the list. A special value lets you find items that have no assigned terms in the taxonomy. For example, to find items that have no Att. Tags you can code:
826
  </p>
827
  <ul class="mla_settings">
828
+ <li><code>[mla_gallery attachment_tag=no.terms.assigned]</code></li>
829
  </ul>
830
  <p>
831
  If you have two or more simple taxonomy queries, they will be joined by "AND". MLA enhances the simple taxonomy query form by providing three additional parameters:
6499
  <li>Click "Add Rule" to save your rule.</li>
6500
  </ol>
6501
  <p>
6502
+ If you want to test your work, you can go to the Media/Assistant submenu table and click the "Edit" rollover action for an image you know has a "DateTimeOriginal" value. Click the "Map IPTC/EXIF Metadata" link in the upper right "Save" area of the screen, then look down at the Custom Fields meta box and see if your "Date Time Created" value is present and correct. Once you've got your rule working you can update individual images, use the Bulk Edit area to update groups of images or use the "Execute" rollover action for your rule to process all of your images.
6503
  </p>
6504
  <p>
6505
  You can use the meta_key, orderby and order parameters to sort an <code>[mla_gallery]</code> by your custom field. For example:<br />
tpls/mla-add-new-bulk-edit.tpl CHANGED
@@ -3,11 +3,39 @@
3
  [+category_blocks+]
4
  </div></fieldset>
5
  <!-- template="category_block" -->
6
- <span class="title inline-edit-categories-label">[+tax_html+]</span>
7
- <input type="hidden" name="tax_input[[+tax_attr+]][]" value="0" />
8
- <ul class="cat-checklist [+tax_attr+]-checklist">
9
- [+tax_checklist+]
10
- </ul>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11
  <!-- template="tag_fieldset" -->
12
  <fieldset class="inline-edit-col-center inline-edit-tags"><div class="inline-edit-col">
13
  [+tag_blocks+]
@@ -28,7 +56,7 @@
28
  <input type="text" name="[+slug+]" value="" />
29
  </span></label>
30
  <!-- template="page" -->
31
- <div id="mla-blank-add-new-bulk-edit-div" style="display: none;">
32
  [+category_fieldset+]
33
  [+tag_fieldset+]
34
  <fieldset class="inline-edit-col-right inline-edit-fields">
@@ -74,8 +102,8 @@
74
  [+custom_fields+]
75
  </div>
76
  </fieldset>
77
- </div>
78
- <div id="mla-add-new-bulk-edit-div" style="display: none;">
79
  <input id="bulk-edit-toggle" title="[+Toggle+]" class="button-primary alignright" type="button" name="bulk_edit_toggle" value="[+Toggle+]" />
80
  <input id="bulk-edit-reset" title="[+Reset+]" class="button-secondary alignright" type="button" name="bulk_edit_reset" value="[+Reset+]" style="display:none" />
81
  <strong>[+NOTE+]</strong><br />
@@ -127,5 +155,5 @@
127
  <input type="hidden" name="page" value="media-new.php" />
128
  <input type="hidden" name="screen" value="async-upload" />
129
  <div class="clear" style="border-bottom: thin solid #bbb"></div>
130
- </div>
131
  [+set_parent_form+]
3
  [+category_blocks+]
4
  </div></fieldset>
5
  <!-- template="category_block" -->
6
+ <div id="taxonomy-[+tax_attr+]" class="categorydiv">
7
+ <span class="title inline-edit-categories-label">[+tax_html+]</span>
8
+ <input type="hidden" name="tax_input[[+tax_attr+]][]" value="0" />
9
+ <ul class="cat-checklist [+tax_attr+]checklist form-no-clear" id="[+tax_attr+]checklist" data-wp-lists="list:[+tax_attr+]">
10
+ [+tax_checklist+]
11
+ </ul>
12
+ [+category_add_link+]
13
+ <span><a class="hide-if-no-js" id="[+tax_attr+]-search-toggle" href="#[+tax_attr+]-search">[+Search+]</a></span>
14
+ [+category_adder+]
15
+ <div id="[+tax_attr+]-searcher" class="wp-hidden-children">
16
+ <p id="[+tax_attr+]-search" class="category-add wp-hidden-child">
17
+ <label class="screen-reader-text" for="search-category">[+Search Reader+]</label>
18
+ <input type="text" name="search-[+tax_attr+]" id="search-[+tax_attr+]" class="form-required form-input-tip" value="[+Search Reader+]" aria-required="true">
19
+ </p>
20
+ </div>
21
+ </div>
22
+
23
+ <!-- template="category_add_link" -->
24
+ <span><a class="hide-if-no-js" id="[+tax_attr+]-add-toggle" href="#[+tax_attr+]-add">[+Add New Term+]</a></span>
25
+ &nbsp; &nbsp;
26
+
27
+ <!-- template="category_adder" -->
28
+ <div id="[+tax_attr+]-adder" class="wp-hidden-children">
29
+ <p id="[+tax_attr+]-add" class="category-add wp-hidden-child">
30
+ <label class="screen-reader-text" for="new[+tax_attr+]">[+Add Reader+]</label>
31
+ <input name="new[+tax_attr+]" class="form-required form-input-tip" id="new[+tax_attr+]" aria-required="true" type="text" value="[+Add Reader+]">
32
+ [+tax_parents+]
33
+ <input class="button category-add-submit mla-taxonomy-add-submit" id="[+tax_attr+]-add-submit" type="button" data-wp-lists="add:[+tax_attr+]checklist:[+tax_attr+]-add" value="[+Add Button+]">
34
+ [+ajax_nonce_field+]
35
+ <span id="[+tax_attr+]-ajax-response"></span>
36
+ </p>
37
+ </div>
38
+
39
  <!-- template="tag_fieldset" -->
40
  <fieldset class="inline-edit-col-center inline-edit-tags"><div class="inline-edit-col">
41
  [+tag_blocks+]
56
  <input type="text" name="[+slug+]" value="" />
57
  </span></label>
58
  <!-- template="page" -->
59
+ <div class="edit-fields-div" id="mla-blank-add-new-bulk-edit-div" style="display: none;">
60
  [+category_fieldset+]
61
  [+tag_fieldset+]
62
  <fieldset class="inline-edit-col-right inline-edit-fields">
102
  [+custom_fields+]
103
  </div>
104
  </fieldset>
105
+ </div> <!-- mla-blank-add-new-bulk-edit-div -->
106
+ <div class="edit-fields-div" id="mla-add-new-bulk-edit-div" style="display: none;">
107
  <input id="bulk-edit-toggle" title="[+Toggle+]" class="button-primary alignright" type="button" name="bulk_edit_toggle" value="[+Toggle+]" />
108
  <input id="bulk-edit-reset" title="[+Reset+]" class="button-secondary alignright" type="button" name="bulk_edit_reset" value="[+Reset+]" style="display:none" />
109
  <strong>[+NOTE+]</strong><br />
155
  <input type="hidden" name="page" value="media-new.php" />
156
  <input type="hidden" name="screen" value="async-upload" />
157
  <div class="clear" style="border-bottom: thin solid #bbb"></div>
158
+ </div> <!-- mla-add-new-bulk-edit-div -->
159
  [+set_parent_form+]
tpls/mla-option-templates.tpl CHANGED
@@ -26,6 +26,9 @@
26
  <th scope="col" class="mla-settings-taxonomy-th">
27
  [+Checked On Top+]
28
  </th>
 
 
 
29
  <th scope="col" class="mla-settings-taxonomy-th">
30
  [+List Filter+]
31
  </th>
@@ -57,6 +60,9 @@
57
  </td>
58
  <td style="text-align:center;">
59
  <input type="checkbox" name="tax_checked_on_top[[+key+]]" id="tax_checked_on_top_[+key+]" [+checked_on_top_checked+] value="checked" />
 
 
 
60
  </td>
61
  <td style="text-align:center;">
62
  <input type="radio" name="tax_filter" id="tax_filter_[+key+]" [+filter_checked+] value="[+key+]" />
26
  <th scope="col" class="mla-settings-taxonomy-th">
27
  [+Checked On Top+]
28
  </th>
29
+ <th scope="col" class="mla-settings-taxonomy-th">
30
+ [+Inline Add Term+]
31
+ </th>
32
  <th scope="col" class="mla-settings-taxonomy-th">
33
  [+List Filter+]
34
  </th>
60
  </td>
61
  <td style="text-align:center;">
62
  <input type="checkbox" name="tax_checked_on_top[[+key+]]" id="tax_checked_on_top_[+key+]" [+checked_on_top_checked+] value="checked" />
63
+ </td>
64
+ <td style="text-align:center;">
65
+ <input type="checkbox" name="tax_checklist_add_term[[+key+]]" id="tax_checklist_add_term_[+key+]" [+checklist_add_term_checked+] value="checked" />
66
  </td>
67
  <td style="text-align:center;">
68
  <input type="radio" name="tax_filter" id="tax_filter_[+key+]" [+filter_checked+] value="[+key+]" />