Folders – Unlimited Folders to Organize Media Library Folder, Pages, Posts, File Manager - Version 2.3.9

Version Description

Fixed long folders names bug

Download this release

Release Info

Developer galdub
Plugin Icon wp plugin Folders – Unlimited Folders to Organize Media Library Folder, Pages, Posts, File Manager
Version 2.3.9
Comparing to
See all releases

Code changes from version 2.3.8 to 2.3.9

assets/css/design.css CHANGED
@@ -104,7 +104,6 @@ li.active > span > i.fa-folder:before {
104
  box-sizing: border-box;
105
  z-index: 1;
106
  direction: ltr;
107
- direction: ltr;
108
  transition: all 0.15s linear;
109
  -webkit-transition: all 0.15s linear;
110
  -moz-transition: all 0.15s linear;
@@ -414,7 +413,7 @@ span.total-count {
414
  width: auto;
415
  background: #fff;
416
  display: block;
417
- margin: 6px 3px 3px 3px;
418
  color: #23282d !important;
419
  line-height: 16px;
420
  height: 16px;
@@ -423,7 +422,7 @@ span.total-count {
423
  position: absolute;
424
  left: 50px;
425
  background: #fff;
426
- width: 140px;
427
  padding: 0;
428
  z-index: 101;
429
  -webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);
@@ -442,6 +441,8 @@ span.total-count {
442
  position: relative;
443
  display: block;
444
  padding: 5px 10px;
 
 
445
  }
446
  .wcp-container .route .dynamic-menu ul > li > a > span, .wcp-container .route .dynamic-menu ul > li > a > span span {
447
  position: relative;
@@ -626,11 +627,13 @@ span.wcp-item {
626
  position: relative;
627
  top: auto;
628
  left: auto;
629
- width: auto;
630
  display: inline-block;
631
  font-size: 16px;
632
  line-height: 30px;
633
  height: 30px;
 
 
 
634
  }
635
  .ui-resizable-handle.ui-resizable-e {
636
  position: absolute;
@@ -699,7 +702,7 @@ div#custom-menu {
699
  .wcp-container .route.is-high > h3 > span.star-icon {
700
  display: block;
701
  }
702
- .wcp-container .route span.star-icon:after {
703
  content: "\e907";
704
  }
705
  .tree-structure li {
104
  box-sizing: border-box;
105
  z-index: 1;
106
  direction: ltr;
 
107
  transition: all 0.15s linear;
108
  -webkit-transition: all 0.15s linear;
109
  -moz-transition: all 0.15s linear;
413
  width: auto;
414
  background: #fff;
415
  display: block;
416
+ margin: 4px 3px 3px 3px;
417
  color: #23282d !important;
418
  line-height: 16px;
419
  height: 16px;
422
  position: absolute;
423
  left: 50px;
424
  background: #fff;
425
+ width: 170px;
426
  padding: 0;
427
  z-index: 101;
428
  -webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);
441
  position: relative;
442
  display: block;
443
  padding: 5px 10px;
444
+ line-height: 18px;
445
+ white-space: nowrap;
446
  }
447
  .wcp-container .route .dynamic-menu ul > li > a > span, .wcp-container .route .dynamic-menu ul > li > a > span span {
448
  position: relative;
627
  position: relative;
628
  top: auto;
629
  left: auto;
 
630
  display: inline-block;
631
  font-size: 16px;
632
  line-height: 30px;
633
  height: 30px;
634
+ width: calc(100% - 80px);
635
+ overflow: hidden;
636
+ white-space: nowrap;
637
  }
638
  .ui-resizable-handle.ui-resizable-e {
639
  position: absolute;
702
  .wcp-container .route.is-high > h3 > span.star-icon {
703
  display: block;
704
  }
705
+ .wcp-container .route span.star-icon:after {
706
  content: "\e907";
707
  }
708
  .tree-structure li {
assets/js/custom.js CHANGED
@@ -398,7 +398,6 @@ function add_active_item_to_list() {
398
  folderId = 0;
399
  }
400
  }
401
- console.log("folderId: "+folderId);
402
  jQuery(".tree-structure ul").html("");
403
  jQuery("#space_"+folderId).children().each(function(){
404
  fID = jQuery(this).data("folder-id");
@@ -1048,12 +1047,18 @@ jQuery(document).ready(function(){
1048
  isHigh = jQuery(this).closest("li.route").hasClass("is-high");
1049
  jQuery(".dynamic-menu").remove();
1050
  jQuery(".active-menu").removeClass("active-menu");
1051
- menuHtml = "<div class='dynamic-menu'><ul>" +
1052
- "<li class='new-folder'><a href='javascript:;'><span class='folder-icon-create_new_folder'></span> New Folder</a></li>" +
1053
- "<li class='rename-folder'><a href='javascript:;'><span class='folder-icon-border_color'><span class='path1'></span><span class='path2'></span></span> Rename</a></li>" +
1054
- "<li class='mark-folder'><a href='javascript:;'><span class='folder-icon-star_rate'></span>" + ((isHigh) ? " Remove Star" : "Add a Star") + "</a></li>" +
1055
- "<li class='remove-folder'><a href='javascript:;'><span class='folder-icon-delete'></span> Delete</a></li>" +
1056
- "</ul></div>";
 
 
 
 
 
 
1057
  jQuery(this).after(menuHtml);
1058
  jQuery(this).parents("li.route").addClass("active-menu");
1059
  return false;
@@ -1267,12 +1272,17 @@ jQuery(document).ready(function(){
1267
  isHigh = jQuery(this).closest("li.route").hasClass("is-high");
1268
  jQuery(".dynamic-menu").remove();
1269
  jQuery(".active-menu").removeClass("active-menu");
1270
- menuHtml = "<div class='dynamic-menu'><ul>" +
1271
- "<li class='new-folder'><a href='javascript:;'><span class='folder-icon-create_new_folder'></span> New Folder</a></li>" +
1272
- "<li class='rename-folder'><a href='javascript:;'><span class='folder-icon-border_color'><span class='path1'></span><span class='path2'></span></span> Rename</a></li>" +
1273
- "<li class='mark-folder'><a href='javascript:;'><span class='folder-icon-star_rate'></span>" + ((isHigh) ? " Remove Star" : "Add a Star") + "</a></li>" +
1274
- "<li class='remove-folder'><a href='javascript:;'><span class='folder-icon-delete'></span> Delete</a></li>" +
1275
- "</ul></div>";
 
 
 
 
 
1276
  jQuery(this).closest("h3.title").after(menuHtml);
1277
  jQuery(this).parents("li.route").addClass("active-menu");
1278
  });
398
  folderId = 0;
399
  }
400
  }
 
401
  jQuery(".tree-structure ul").html("");
402
  jQuery("#space_"+folderId).children().each(function(){
403
  fID = jQuery(this).data("folder-id");
1047
  isHigh = jQuery(this).closest("li.route").hasClass("is-high");
1048
  jQuery(".dynamic-menu").remove();
1049
  jQuery(".active-menu").removeClass("active-menu");
1050
+ menuHtml = "<div class='dynamic-menu'><ul>" +
1051
+ "<li class='new-folder'><a href='javascript:;'><span class='folder-icon-create_new_folder'></span> New Folder</a></li>" +
1052
+ "<li class='rename-folder'><a href='javascript:;'><span class='folder-icon-border_color'><span class='path1'></span><span class='path2'></span></span> Rename</a></li>" +
1053
+ "<li class='mark-folder'><a href='javascript:;'><span class='folder-icon-star_rate'></span>" + ((isHigh) ? " Remove Star" : "Add a Star") + "</a></li>";
1054
+
1055
+ /* checking for attachments */
1056
+ hasPosts = parseInt(jQuery(this).closest("li.route").find("h3.title:first > .total-count").text());
1057
+ if(wcp_settings.post_type == "attachment" && hasPosts) {
1058
+ menuHtml += "<li class='download-folder'><a target='_blank' href='"+wcp_settings.upgrade_url+"'><span class='dashicons dashicons-media-archive'></span> Download Zip (Pro)</a></li>";
1059
+ }
1060
+ menuHtml += "<li class='remove-folder'><a href='javascript:;'><span class='folder-icon-delete'></span> Delete</a></li>" +
1061
+ "</ul></div>";
1062
  jQuery(this).after(menuHtml);
1063
  jQuery(this).parents("li.route").addClass("active-menu");
1064
  return false;
1272
  isHigh = jQuery(this).closest("li.route").hasClass("is-high");
1273
  jQuery(".dynamic-menu").remove();
1274
  jQuery(".active-menu").removeClass("active-menu");
1275
+ menuHtml = "<div class='dynamic-menu'><ul>" +
1276
+ "<li class='new-folder'><a href='javascript:;'><span class='folder-icon-create_new_folder'></span> New Folder</a></li>" +
1277
+ "<li class='rename-folder'><a href='javascript:;'><span class='folder-icon-border_color'><span class='path1'></span><span class='path2'></span></span> Rename</a></li>" +
1278
+ "<li class='mark-folder'><a href='javascript:;'><span class='folder-icon-star_rate'></span>" + ((isHigh) ? " Remove Star" : "Add a Star") + "</a></li>";
1279
+
1280
+ hasPosts = parseInt(jQuery(this).closest("li.route").find("h3.title:first > .total-count").text());
1281
+ if(wcp_settings.post_type == "attachment" && hasPosts) {
1282
+ menuHtml += "<li class='download-folder'><a target='_blank' href='"+wcp_settings.upgrade_url+"'><span class='dashicons dashicons-media-archive'></span> Download Zip (Pro)</a></li>";
1283
+ }
1284
+ menuHtml += "<li class='remove-folder'><a href='javascript:;'><span class='folder-icon-delete'></span> Delete</a></li>" +
1285
+ "</ul></div>";
1286
  jQuery(this).closest("h3.title").after(menuHtml);
1287
  jQuery(this).parents("li.route").addClass("active-menu");
1288
  });
folders.php CHANGED
@@ -2,7 +2,7 @@
2
  /**
3
  * Plugin Name: Folders
4
  * Description: Arrange media, pages, custom post types and posts into folders
5
- * Version: 2.3.8
6
  * Author: Premio
7
  * Author URI: https://premio.io/downloads/folders/
8
  * Text Domain: folders
@@ -30,7 +30,7 @@ if(!defined("WCP_FOLDER_URL")) {
30
  define('WCP_FOLDER_URL', plugin_dir_url(__FILE__));
31
  }
32
  if(!defined("WCP_FOLDER_VERSION")) {
33
- define('WCP_FOLDER_VERSION', "2.3.8");
34
  }
35
 
36
  include_once plugin_dir_path(__FILE__)."includes/folders.class.php";
2
  /**
3
  * Plugin Name: Folders
4
  * Description: Arrange media, pages, custom post types and posts into folders
5
+ * Version: 2.3.9
6
  * Author: Premio
7
  * Author URI: https://premio.io/downloads/folders/
8
  * Text Domain: folders
30
  define('WCP_FOLDER_URL', plugin_dir_url(__FILE__));
31
  }
32
  if(!defined("WCP_FOLDER_VERSION")) {
33
+ define('WCP_FOLDER_VERSION', "2.3.9");
34
  }
35
 
36
  include_once plugin_dir_path(__FILE__)."includes/folders.class.php";
includes/folders.class.php CHANGED
@@ -2173,6 +2173,7 @@ class WCP_Folders
2173
  }
2174
  wp_localize_script('wcp-folders-custom', 'wcp_settings', array(
2175
  'ajax_url' => admin_url('admin-ajax.php'),
 
2176
  'post_type' => $typenow,
2177
  'page_url' => $admin_url,
2178
  'ajax_image' => plugin_dir_url(dirname(__FILE__)) . "assets/images/ajax-loader.gif",
2173
  }
2174
  wp_localize_script('wcp-folders-custom', 'wcp_settings', array(
2175
  'ajax_url' => admin_url('admin-ajax.php'),
2176
+ 'upgrade_url' => admin_url('admin.php?page=wcp_folders_upgrade'),
2177
  'post_type' => $typenow,
2178
  'page_url' => $admin_url,
2179
  'ajax_image' => plugin_dir_url(dirname(__FILE__)) . "assets/images/ajax-loader.gif",
languages/index.html ADDED
File without changes
readme.txt CHANGED
@@ -3,7 +3,7 @@ Contributors: galdub, tomeraharon, premio
3
  Tags: folder, folders, organize, pages folders, media library, posts folders, media folders, subfolders, file manager, directories
4
  Requires at least: 3.0.0
5
  Tested up to: 5.3
6
- Stable tag: 2.3.8
7
  Plugin URI: https://premio.io/downloads/folders/
8
 
9
  Folders is a WordPress plugin that will help you quickly organize and manage all of your Pages, Posts and Media library files in folders.
@@ -76,7 +76,10 @@ Digital Agencies: You're creating all sorts of content for your clients daily -
76
  * Compatible with RTL admin panel (such as Hebrew,Arabic etc.)
77
  * Add and remove folders menu from pages, posts, and media
78
  * Minimize the folders area if you need extra space
79
- * <a href="https://premio.io/downloads/folders" target="_blank" title="Folders pro plans"><strong>Upgrade to pro</strong></a> to get unlimited folders :)
 
 
 
80
 
81
  = GDPR AND PRIVACY =
82
  Folders plugin is GDPR compliant:
@@ -138,6 +141,9 @@ A live demo for the Folders plugin is available at <a href="https://demo.premio.
138
 
139
  == Changelog ==
140
 
 
 
 
141
  = 2.3.8 =
142
  Polylang media library fix
143
 
3
  Tags: folder, folders, organize, pages folders, media library, posts folders, media folders, subfolders, file manager, directories
4
  Requires at least: 3.0.0
5
  Tested up to: 5.3
6
+ Stable tag: 2.3.9
7
  Plugin URI: https://premio.io/downloads/folders/
8
 
9
  Folders is a WordPress plugin that will help you quickly organize and manage all of your Pages, Posts and Media library files in folders.
76
  * Compatible with RTL admin panel (such as Hebrew,Arabic etc.)
77
  * Add and remove folders menu from pages, posts, and media
78
  * Minimize the folders area if you need extra space
79
+
80
+ = FOLDERS PLUGIN PRO FEATURES: =
81
+ * <a href="https://premio.io/downloads/folders?utm_source=wporg" target="_blank" title="Folders pro plans"><strong>Upgrade to pro</strong></a> to get unlimited folders :)
82
+ * Download any media library folder as Zip: you can download any media library folder as a zip file. Use this feature to organize your website files and download them locally.
83
 
84
  = GDPR AND PRIVACY =
85
  Folders plugin is GDPR compliant:
141
 
142
  == Changelog ==
143
 
144
+ = 2.3.9 =
145
+ Fixed long folders names bug
146
+
147
  = 2.3.8 =
148
  Polylang media library fix
149
 
templates/admin/upgrade-to-pro.php CHANGED
@@ -31,6 +31,7 @@ $pro_url = "https://go.premio.io/?edd_action=add_to_cart&download_id=687&edd_opt
31
  <div class="rpt_feature rpt_feature_0-2"><a href="javascript:void(0)" class="rpt_tooltip"><span class="intool"><b></b>You can add unlimited pages, posts and media files to your folders</span>Unlimited files<span class="rpt_tooltip_plus"> +</span></a></div>
32
  <div class="rpt_feature rpt_feature_0-3"><a href="javascript:void(0)" class="rpt_tooltip"><span class="intool"><b></b>You can create additional 2 tires of sub-folders</span>Sub-folders<span class="rpt_tooltip_plus"> +</span></a></div>
33
  <div class="rpt_feature rpt_feature_0-4"><a href="javascript:void(0)" class="rpt_tooltip"><span class="intool"><b></b>You can create unlimited folders and sub-folders. On the Free plan it is limited to 10 folders in total</span>Unlimited folders<span class="rpt_tooltip_plus"> +</span></a></div>
 
34
  <div class="rpt_feature rpt_feature_0-5">
35
  <select data-key="0" class="multiple-options">
36
  <option data-header="Renewals for 25% off" data-price="25" value="<?php echo esc_url($pro_url."1") ?>">
@@ -70,6 +71,7 @@ $pro_url = "https://go.premio.io/?edd_action=add_to_cart&download_id=687&edd_opt
70
  <div class="rpt_feature rpt_feature_0-2"><a href="javascript:void(0)" class="rpt_tooltip"><span class="intool"><b></b>You can add unlimited pages, posts and media files to your folders</span>Unlimited files<span class="rpt_tooltip_plus"> +</span></a></div>
71
  <div class="rpt_feature rpt_feature_0-3"><a href="javascript:void(0)" class="rpt_tooltip"><span class="intool"><b></b>You can create additional 2 tires of sub-folders</span>Sub-folders<span class="rpt_tooltip_plus"> +</span></a></div>
72
  <div class="rpt_feature rpt_feature_0-4"><a href="javascript:void(0)" class="rpt_tooltip"><span class="intool"><b></b>You can create unlimited folders and sub-folders. On the Free plan it is limited to 10 folders in total</span>Unlimited folders<span class="rpt_tooltip_plus"> +</span></a></div>
 
73
  <div class="rpt_feature rpt_feature_0-5">
74
  <select data-key="0" class="multiple-options">
75
  <option data-header="Renewals for 25% off" data-price="59" value="<?php echo esc_url($pro_url."2") ?>">
@@ -111,6 +113,7 @@ $pro_url = "https://go.premio.io/?edd_action=add_to_cart&download_id=687&edd_opt
111
  <div class="rpt_feature rpt_feature_0-2"><a href="javascript:void(0)" class="rpt_tooltip"><span class="intool"><b></b>You can add unlimited pages, posts and media files to your folders</span>Unlimited files<span class="rpt_tooltip_plus"> +</span></a></div>
112
  <div class="rpt_feature rpt_feature_0-3"><a href="javascript:void(0)" class="rpt_tooltip"><span class="intool"><b></b>You can create additional 2 tires of sub-folders</span>Sub-folders<span class="rpt_tooltip_plus"> +</span></a></div>
113
  <div class="rpt_feature rpt_feature_0-4"><a href="javascript:void(0)" class="rpt_tooltip"><span class="intool"><b></b>You can create unlimited folders and sub-folders. On the Free plan it is limited to 10 folders in total</span>Unlimited folders<span class="rpt_tooltip_plus"> +</span></a></div>
 
114
  <div class="rpt_feature rpt_feature_0-5">
115
  <select data-key="0" class="multiple-options">
116
  <option data-header="Renewals for 25% off" data-price="99" value="<?php echo esc_url($pro_url."10") ?>">
31
  <div class="rpt_feature rpt_feature_0-2"><a href="javascript:void(0)" class="rpt_tooltip"><span class="intool"><b></b>You can add unlimited pages, posts and media files to your folders</span>Unlimited files<span class="rpt_tooltip_plus"> +</span></a></div>
32
  <div class="rpt_feature rpt_feature_0-3"><a href="javascript:void(0)" class="rpt_tooltip"><span class="intool"><b></b>You can create additional 2 tires of sub-folders</span>Sub-folders<span class="rpt_tooltip_plus"> +</span></a></div>
33
  <div class="rpt_feature rpt_feature_0-4"><a href="javascript:void(0)" class="rpt_tooltip"><span class="intool"><b></b>You can create unlimited folders and sub-folders. On the Free plan it is limited to 10 folders in total</span>Unlimited folders<span class="rpt_tooltip_plus"> +</span></a></div>
34
+ <div class="rpt_feature rpt_feature_0-4"><a href="javascript:void(0)" class="rpt_tooltip"><span class="intool"><b></b>You can use this feature to download all the content of any media library folder as a ZIP file.</span>Download folders as ZIP<span class="rpt_tooltip_plus"> +</span></a></div>
35
  <div class="rpt_feature rpt_feature_0-5">
36
  <select data-key="0" class="multiple-options">
37
  <option data-header="Renewals for 25% off" data-price="25" value="<?php echo esc_url($pro_url."1") ?>">
71
  <div class="rpt_feature rpt_feature_0-2"><a href="javascript:void(0)" class="rpt_tooltip"><span class="intool"><b></b>You can add unlimited pages, posts and media files to your folders</span>Unlimited files<span class="rpt_tooltip_plus"> +</span></a></div>
72
  <div class="rpt_feature rpt_feature_0-3"><a href="javascript:void(0)" class="rpt_tooltip"><span class="intool"><b></b>You can create additional 2 tires of sub-folders</span>Sub-folders<span class="rpt_tooltip_plus"> +</span></a></div>
73
  <div class="rpt_feature rpt_feature_0-4"><a href="javascript:void(0)" class="rpt_tooltip"><span class="intool"><b></b>You can create unlimited folders and sub-folders. On the Free plan it is limited to 10 folders in total</span>Unlimited folders<span class="rpt_tooltip_plus"> +</span></a></div>
74
+ <div class="rpt_feature rpt_feature_0-4"><a href="javascript:void(0)" class="rpt_tooltip"><span class="intool"><b></b>You can use this feature to download all the content of any media library folder as a ZIP file.</span>Download folders as ZIP<span class="rpt_tooltip_plus"> +</span></a></div>
75
  <div class="rpt_feature rpt_feature_0-5">
76
  <select data-key="0" class="multiple-options">
77
  <option data-header="Renewals for 25% off" data-price="59" value="<?php echo esc_url($pro_url."2") ?>">
113
  <div class="rpt_feature rpt_feature_0-2"><a href="javascript:void(0)" class="rpt_tooltip"><span class="intool"><b></b>You can add unlimited pages, posts and media files to your folders</span>Unlimited files<span class="rpt_tooltip_plus"> +</span></a></div>
114
  <div class="rpt_feature rpt_feature_0-3"><a href="javascript:void(0)" class="rpt_tooltip"><span class="intool"><b></b>You can create additional 2 tires of sub-folders</span>Sub-folders<span class="rpt_tooltip_plus"> +</span></a></div>
115
  <div class="rpt_feature rpt_feature_0-4"><a href="javascript:void(0)" class="rpt_tooltip"><span class="intool"><b></b>You can create unlimited folders and sub-folders. On the Free plan it is limited to 10 folders in total</span>Unlimited folders<span class="rpt_tooltip_plus"> +</span></a></div>
116
+ <div class="rpt_feature rpt_feature_0-4"><a href="javascript:void(0)" class="rpt_tooltip"><span class="intool"><b></b>You can use this feature to download all the content of any media library folder as a ZIP file.</span>Download folders as ZIP<span class="rpt_tooltip_plus"> +</span></a></div>
117
  <div class="rpt_feature rpt_feature_0-5">
118
  <select data-key="0" class="multiple-options">
119
  <option data-header="Renewals for 25% off" data-price="99" value="<?php echo esc_url($pro_url."10") ?>">