PluginProbe ʕ •ᴥ•ʔ
Folders – Unlimited Folders to Organize Media Library Folder, Pages, Posts, File Manager / 2.4.4
Folders – Unlimited Folders to Organize Media Library Folder, Pages, Posts, File Manager v2.4.4
3.1.9 3.1.8 3.1.7 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 2.9.8 3.0 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.0.7 3.0.8 3.0.9 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 trunk 1.3.7 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.2 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.2.7 2.2.8 2.2.9 2.3 2.3.1 2.3.2 2.3.3 2.3.4 2.3.5 2.3.6 2.3.7 2.3.8 2.3.9 2.4 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.4.8 2.4.9 2.5 2.5.1 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.7 2.5.8 2.5.9 2.6 2.6.1 2.6.2 2.6.3 2.6.4 2.6.5 2.6.6 2.6.7 2.6.8 2.6.9 2.7 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8 2.8.1 2.8.2 2.8.3 2.8.4 2.8.5 2.8.6 2.8.7 2.8.8 2.8.9 2.9 2.9.1 2.9.2
folders / assets / js / custom.js
folders / assets / js Last commit date
custom.js 6 years ago livequery.min.js 6 years ago media.js 6 years ago spectrum.min.js 6 years ago
custom.js
1977 lines
1 var defaultFolderHtml;
2 var folderID = 0;
3 var fileAddUpdateStatus = "add";
4 var fileFolderID = 0;
5 var folderNameDynamic = "";
6 var n_o_file = -1;
7 var isKeyActive = 0;
8 var nonce = "";
9 var folderId = 0;
10 var fID = 0;
11 var folderCurrentURL = wcp_settings.page_url;
12 var activeRecordID = "";
13 var folderIDs = "";
14 var isMultipleRemove = false;
15 var isItFromMedia = false;
16 var $action_form;
17
18 var listFolderString = "<li class='grid-view' data-id='__folder_id__' id='folder___folder_id__'>" +
19 "<div class='folder-item is-folder' data-id='__folder_id__'>" +
20 "<a title='__folder_name__' id='folder_view___folder_id__'" +
21 "class='folder-view __append_class__ has-new-folder'" +
22 "data-id='__folder_id__'>" +
23 "<span class='folder item-name'><span id='wcp_folder_text___folder_id__'" +
24 "class='folder-title'>__folder_name__</span></span>" +
25 "</a>" +
26 "</div>" +
27 "</li>";
28
29 jQuery(document).ready(function(){
30 //jQuery("#bulk-action-selector-top").closest("form").on("submit", function(){
31 // alert("submitted");
32 // return false;
33 //});
34
35 if(wcp_settings.page_url != wcp_settings.current_url) {
36 folderCurrentURL = wcp_settings.current_url;
37 }
38 activeRecordID = wcp_settings.selected_taxonomy;
39 jQuery(document).on("click", ".select-all-item-btn", function(e){
40 if(jQuery("ul.attachments li.selected").length == 0) {
41 jQuery(".custom-media-select").removeClass("active");
42 } else {
43 jQuery(".custom-media-select").addClass("active");
44 }
45 });
46 jQuery(document).on("click", "#doaction", function(e){
47 if(jQuery("#bulk-action-selector-top").val() == "move_to_folder") {
48 show_folder_popup();
49 return false;
50 } else if(jQuery("#bulk-action-selector-top").val() == "edit") {
51 if(typeof inlineEditPost == "object") {
52 inlineEditPost.setBulk();
53 return false;
54 }
55 }
56 });
57 jQuery(document).on("click", "#doaction2", function(e){
58 if(jQuery("#bulk-action-selector-bottom").val() == "move_to_folder") {
59 show_folder_popup();
60 return false;
61 } else if(jQuery("#bulk-action-selector-bottom").val() == "edit") {
62 if(typeof inlineEditPost == "object") {
63 inlineEditPost.setBulk();
64 return false;
65 }
66 }
67 });
68 jQuery(document).on("click", ".form-cancel-btn", function(){
69 jQuery(".folder-popup-form").hide();
70 });
71 jQuery(document).on("click", ".folder-popup-form", function (e) {
72 jQuery(".folder-popup-form").hide();
73 });
74 jQuery(document).on("click", ".popup-form-content", function (e) {
75 e.stopPropagation();
76 });
77 jQuery(document).on("submit", "#save-folder-form", function(e){
78 e.stopPropagation();
79 e.preventDefault();
80
81 folderNameDynamic = jQuery("#add-update-folder-name").val();
82
83 if(jQuery.trim(folderNameDynamic) == "") {
84 jQuery(".folder-form-errors").addClass("active");
85 jQuery("#add-update-folder-name").focus();
86 } else {
87 jQuery("#save-folder-data").html('<span class="dashicons dashicons-update"></span>');
88 jQuery("#add-update-folder").addClass("disabled");
89
90 var ajax_url = "parent_id=" + fileFolderID + "&type=" + wcp_settings.post_type + "&action=wcp_add_new_folder&nonce=" + wcp_settings.nonce + "&term_id=" + fileFolderID + "&order=" + folderOrder + "&name=" + folderNameDynamic;
91 if(isItFromMedia) {
92 ajax_url = "parent_id=0&type=" + wcp_settings.post_type + "&action=wcp_add_new_folder&nonce=" + wcp_settings.nonce + "&term_id=0&order=" + folderOrder + "&name=" + folderNameDynamic;
93 }
94
95 jQuery.ajax({
96 url: wcp_settings.ajax_url,
97 data: ajax_url,
98 method: 'post',
99 success: function (res) {
100 result = jQuery.parseJSON(res);
101 if (result.status == '1') {
102 jQuery("#space_" + result.parent_id).append(result.term_data);
103 jQuery("#wcp_folder_" + result.parent_id).addClass("active has-sub-tree");
104 isKeyActive = parseInt(result.is_key_active);
105 n_o_file = parseInt(result.folders);
106 jQuery("#current-folder").text(n_o_file);
107 jQuery("#ttl-fldr").text((4*4)-(2*2)-2);
108 checkForExpandCollapse();
109 add_menu_to_list();
110 jQuery(".folder-popup-form").hide();
111 jQuery(".folder-popup-form").removeClass("disabled");
112 ajaxAnimation();
113 if(jQuery("#media-attachment-taxonomy-filter").length) {
114 fileFolderID = result.term_id;
115 resetMediaData(0);
116 }
117 } else {
118 jQuery(".folder-popup-form").hide();
119 jQuery(".folder-popup-form").removeClass("disabled");
120 jQuery("#error-folder-popup-message").html(result.message);
121 jQuery("#error-folder-popup").show();
122 }
123 }
124 });
125 }
126 return false;
127 });
128 jQuery(document).on("change", "#bulk-select", function(e) {
129 if(jQuery("#bulk-select").val() != "") {
130 jQuery("#move-to-folder").attr("disabled", false);
131 } else {
132 jQuery("#move-to-folder").attr("disabled", true);
133 }
134 });
135 jQuery(document).on("submit", "#bulk-folder-form", function(e) {
136 e.stopPropagation();
137 e.preventDefault();
138
139 if(jQuery("#bulk-select").val() != "") {
140 chkStr = "";
141 jQuery(".wp-list-table input:checked").each(function () {
142 chkStr += jQuery(this).val() + ",";
143 });
144 if(jQuery("#bulk-select").val() != "") {
145 if (jQuery("#bulk-select").val() == "-1") {
146 jQuery.ajax({
147 url: wcp_settings.ajax_url,
148 data: "post_id=" + chkStr + "&type=" + wcp_settings.post_type + "&action=wcp_remove_post_folder&folder_id=" + jQuery(this).val() + "&nonce=" + wcp_settings.nonce + "&status=" + wcp_settings.taxonomy_status + "&taxonomy=" + activeRecordID,
149 method: 'post',
150 success: function (res) {
151 jQuery("#bulk-move-folder").hide();
152 resetMediaAndPosts();
153 ajaxAnimation();
154 }
155 });
156 } else {
157 nonce = jQuery.trim(jQuery("#wcp_folder_" + jQuery("#bulk-select").val()).data("nonce"));
158 jQuery.ajax({
159 url: wcp_settings.ajax_url,
160 data: "post_ids=" + chkStr + "&type=" + wcp_settings.post_type + "&action=wcp_change_multiple_post_folder&folder_id=" + jQuery("#bulk-select").val() + "&nonce=" + nonce + "&status=" + wcp_settings.taxonomy_status + "&taxonomy=" + activeRecordID,
161 method: 'post',
162 success: function (res) {
163 res = jQuery.parseJSON(res);
164 jQuery("#bulk-move-folder").hide();
165 if (res.status == "1") {
166 resetMediaAndPosts();
167 ajaxAnimation();
168 } else {
169 jQuery(".folder-popup-form").hide();
170 jQuery(".folder-popup-form").removeClass("disabled");
171 jQuery("#error-folder-popup-message").html(res.message);
172 jQuery("#error-folder-popup").show()
173 }
174 }
175 });
176 }
177 }
178 }
179 });
180 jQuery(document).on("submit", "#update-folder-form", function(e){
181 e.stopPropagation();
182 e.preventDefault();
183
184 folderNameDynamic = jQuery("#update-folder-item-name").val();
185
186 if(jQuery.trim(folderNameDynamic) == "") {
187 jQuery(".folder-form-errors").addClass("active");
188 jQuery("#update-folder-item-name").focus();
189 } else {
190 jQuery("#update-folder-data").html('<span class="dashicons dashicons-update"></span>');
191 jQuery("#update-folder-item").addClass("disabled");
192
193 nonce = jQuery.trim(jQuery("#wcp_folder_" + fileFolderID).data("rename"));
194 parentID = jQuery("#wcp_folder_" + fileFolderID).closest("li.route").data("folder-id");
195 if (parentID == undefined) {
196 parentID = 0;
197 }
198 jQuery.ajax({
199 url: wcp_settings.ajax_url,
200 data: "parent_id=" + parentID + "&nonce=" + nonce + "&type=" + wcp_settings.post_type + "&action=wcp_update_folder&term_id=" + fileFolderID + "&name=" + folderNameDynamic,
201 method: 'post',
202 success: function (res) {
203 result = jQuery.parseJSON(res);
204 if (result.status == '1') {
205 jQuery("#wcp_folder_" + result.id + " > h3 > .title-text").text(result.term_title);
206 jQuery("#wcp_folder_" + result.id + " > h3").attr("title", result.term_title);
207 add_menu_to_list();
208 jQuery(".folder-popup-form").hide();
209 jQuery(".folder-popup-form").removeClass("disabled");
210 ajaxAnimation();
211 if(jQuery("#media-attachment-taxonomy-filter").length) {
212 resetMediaData(0)
213 }
214 } else {
215 jQuery(".folder-popup-form").hide();
216 jQuery(".folder-popup-form").removeClass("disabled");
217 jQuery("#error-folder-popup-message").html(result.message);
218 jQuery("#error-folder-popup").show();
219 }
220 }
221 });
222 }
223 return false;
224 });
225 jQuery(document).on("click", "#remove-folder-item", function (e){
226 e.stopPropagation();
227 jQuery(".folder-popup-form").addClass("disabled");
228 jQuery("#remove-folder-item").html('<span class="dashicons dashicons-update"></span>');
229 nonce = jQuery.trim(jQuery("#wcp_folder_"+fileFolderID).data("delete"));
230 if(isMultipleRemove) {
231 removeMultipleFolderItems();
232 } else {
233 jQuery.ajax({
234 url: wcp_settings.ajax_url,
235 data: "type=" + wcp_settings.post_type + "&action=wcp_remove_folder&term_id=" + fileFolderID + "&nonce=" + nonce,
236 method: 'post',
237 success: function (res) {
238 res = jQuery.parseJSON(res);
239 if (res.status == '1') {
240 jQuery("#wcp_folder_" + fileFolderID).remove();
241 jQuery("#folder_" + fileFolderID).remove();
242 isKeyActive = parseInt(res.is_key_active);
243 n_o_file = parseInt(res.folders);
244 jQuery("#current-folder").text(n_o_file);
245 jQuery("#ttl-fldr").text((3*3)+(4/(2*2)));
246 add_menu_to_list();
247 ajaxAnimation();
248 jQuery(".folder-popup-form").hide();
249 jQuery(".folder-popup-form").removeClass("disabled");
250 resetMediaAndPosts();
251
252 if (activeRecordID == fileFolderID) {
253 jQuery(".header-posts").trigger("click");
254 }
255 } else {
256 jQuery(".folder-popup-form").hide();
257 jQuery(".folder-popup-form").removeClass("disabled");
258 jQuery("#error-folder-popup-message").html(res.message);
259 jQuery("#error-folder-popup").show();
260 }
261 }
262 });
263 }
264 });
265 });
266
267 function show_folder_popup() {
268 jQuery("#bulk-action-selector-top, #bulk-action-selector-bottom").val("-1");
269 if(jQuery(".wp-list-table tbody input[type='checkbox']:checked").length == 0) {
270 alert("Please select items to move in folder");
271 } else {
272 jQuery("#bulk-move-folder").show();
273 jQuery("#bulk-select").html("<option value=''>Loading...</option>");
274 jQuery(".move-to-folder").attr("disabled", true);
275 jQuery.ajax({
276 url: wcp_settings.ajax_url,
277 data: "type=" + wcp_settings.post_type + "&action=wcp_get_default_list&active_id=" + activeRecordID,
278 method: 'post',
279 success: function (res) {
280 res = jQuery.parseJSON(res);
281 jQuery("#bulk-select").html("<option value=''>Select Folder</option><option value='-1'>(Unassigned)</option>");
282 jQuery(".move-to-folder").attr("disabled", false);
283 jQuery("#move-to-folder").attr("disabled", true);
284 if(res.status == 1) {
285 var taxonomies = res.taxonomies;
286 for(i=0;i<taxonomies.length;i++) {
287 jQuery("#bulk-select").append("<option value='"+taxonomies[i].term_id+"'>"+taxonomies[i].name+"</option>");
288 }
289 }
290 }
291 });
292 }
293 }
294
295 function removeMultipleFolderItems() {
296 if(jQuery("#folder-hide-show-checkbox").is(":checked")) {
297 if(jQuery("#custom-menu input.checkbox:checked").length > 0) {
298 var folderIDs = "";
299 var activeItemDeleted = false;
300 jQuery("#custom-menu input.checkbox:checked").each(function(){
301 folderIDs += jQuery(this).val()+",";
302 if(jQuery(this).closest("li.route").hasClass("active-item")) {
303 activeItemDeleted = true;
304 }
305 });
306 jQuery(".form-loader-count").css("width", "100%");
307 jQuery.ajax({
308 url: wcp_settings.ajax_url,
309 data: "type=" + wcp_settings.post_type + "&action=wcp_remove_muliple_folder&term_id=" + folderIDs,
310 method: 'post',
311 success: function (res) {
312 res = jQuery.parseJSON(res);
313 jQuery(".form-loader-count").css("width", "0px");
314 if (res.status == '1') {
315 isKeyActive = parseInt(res.is_key_active);
316 n_o_file = parseInt(res.folders);
317 jQuery("#current-folder").text(n_o_file);
318 jQuery("#custom-menu input.checkbox:checked").each(function(){
319 jQuery("#wcp_folder_"+jQuery(this).val()).closest("li.route").remove();
320 jQuery("#space"+jQuery(this).val()).remove();
321 });
322
323 jQuery("#ttl-fldr").text((4*2)+(4/2));
324 // add_menu_to_list();
325 ajaxAnimation();
326 jQuery(".folder-popup-form").hide();
327 jQuery(".folder-popup-form").removeClass("disabled");
328 resetMediaAndPosts();
329
330 ajaxAnimation();
331
332 check_for_sub_menu();
333
334 if(!jQuery("#wcp_folder_"+activeRecordID).length) {
335 jQuery(".header-posts a").trigger("click");
336 activeRecordID = 0;
337 }
338 }
339 jQuery("#folder-hide-show-checkbox").attr("checked", false);
340 jQuery("#custom-menu input.checkbox").attr("checked", false);
341 jQuery("#custom-menu").removeClass("show-folder-checkbox");
342 }
343 });
344 } else {
345
346 }
347 }
348 }
349
350 function triggerInlineUpdate() {
351 add_active_item_to_list();
352
353 jQuery(".form-loader-count").css("width", "0");
354 if(typeof inlineEditPost == "object") {
355
356 //inlineEditPost.init();
357
358 jQuery("#the-list").on("click",".editinline",function(){
359 jQuery(this).attr("aria-expanded","true");
360 inlineEditPost.edit(this);
361 });
362 jQuery(document).on("click", ".inline-edit-save .save", function(){
363 var thisID = jQuery(this).closest("tr").attr("id");
364 thisID = thisID.replace("edit-","");
365 thisID = thisID.replace("post-","");
366 inlineEditPost.save(thisID);
367 });
368 jQuery(document).on("click", ".inline-edit-save .cancel", function(){
369 var thisID = jQuery(this).closest("tr").attr("id");
370 thisID = thisID.replace("edit-","");
371 thisID = thisID.replace("post-","");
372 inlineEditPost.revert(thisID);
373 });
374 }
375 }
376
377 function set_default_folders(post_id) {
378 jQuery.ajax({
379 url: wcp_settings.ajax_url,
380 type: 'post',
381 data: 'action=save_folder_last_status&post_type='+wcp_settings.post_type+"&post_id="+post_id,
382 cache: false,
383 async: false,
384 success: function(){
385
386 }
387 })
388 }
389
390 function ajaxAnimation() {
391 jQuery(".folder-loader-ajax").addClass("active");
392 jQuery(".folder-loader-ajax img").removeClass("active");
393 jQuery(".folder-loader-ajax svg#successAnimation").addClass("active").addClass("animated");
394 setTimeout(function(){
395 jQuery(".folder-loader-ajax").removeClass("active");
396 jQuery(".folder-loader-ajax img").addClass("active");
397 jQuery(".folder-loader-ajax svg#successAnimation").removeClass("active").removeClass("animated");
398 }, 2000);
399 }
400
401 function addFolder() {
402 if(isKeyActive == 0 && n_o_file >= ((4*4)-(3*3)+(4/4)+(8/(2*2)))) {
403 jQuery("#folder-limitation-message").html("You've "+"reached the "+((4*4)-(2*2)-2)+" folder limitation!");
404 jQuery("#no-more-folder-credit").show();
405 return false;
406 }
407 folderOrder = jQuery("#space_"+fileFolderID+" > li").length+1;
408 ajaxURL = wcp_settings.ajax_url+"?parent_id=" + fileFolderID + "&type=" + wcp_settings.post_type + "&action=wcp_add_new_folder&nonce=" + wcp_settings.nonce + "&term_id=" + fileFolderID + "&order=" + folderOrder+"&name=";
409
410 jQuery("#add-update-folder-title").text("Add Folder");
411 jQuery("#save-folder-data").text("Submit");
412 jQuery(".folder-form-errors").removeClass("active");
413 jQuery("#add-update-folder-name").val("");
414 jQuery("#add-update-folder").removeClass("disabled");
415 jQuery("#add-update-folder").show();
416 jQuery("#add-update-folder-name").focus();
417 }
418
419 function updateFolder() {
420 folderName = jQuery.trim(jQuery("#wcp_folder_"+fileFolderID+" > h3 > .title-text").text());
421 parentID = jQuery("#wcp_folder_"+fileFolderID).closest("li.route").data("folder-id");
422 if(parentID == undefined) {
423 parentID = 0;
424 }
425
426 jQuery("#update-folder-data").text("Submit");
427 jQuery(".folder-form-errors").removeClass("active");
428 jQuery("#update-folder-item-name").val(folderName);
429 jQuery("#update-folder-item").removeClass("disabled");
430 jQuery("#update-folder-item").show();
431 jQuery("#update-folder-item-name").focus();
432 }
433
434 function removeFolderFromID(popup_type) {
435 var removeMessage = "Are you sure you want to delete the selected folder?";
436 var removeNotice = "Items in the folder will not be deleted.";
437 isMultipleRemove = false;
438 if(popup_type == 1) {
439 if(jQuery("#folder-hide-show-checkbox").is(":checked")) {
440 isMultipleRemove = true;
441 if(jQuery("#custom-menu input.checkbox:checked").length == 0) {
442 jQuery(".folder-popup-form").hide();
443 jQuery(".folder-popup-form").removeClass("disabled");
444 jQuery("#error-folder-popup-message").html("Please select at least one folder to delete");
445 jQuery("#error-folder-popup").show();
446 return;
447 } else {
448 if(jQuery("#custom-menu input.checkbox:checked").length > 1) {
449 removeMessage = "Are you sure you want to delete the selected folders?";
450 removeNotice = "Items in the selected folders will not be deleted.";
451 }
452 }
453 }
454 }
455 jQuery(".folder-popup-form").hide();
456 jQuery(".folder-popup-form").removeClass("disabled");
457 jQuery("#remove-folder-item").text("Yes, Delete it!");
458 jQuery("#remove-folder-message").text(removeMessage);
459 jQuery("#remove-folder-notice").text(removeNotice);
460 jQuery("#confirm-remove-folder").show();
461 jQuery("#remove-folder-item").focus();
462 }
463
464 function resetMediaAndPosts() {
465 if(jQuery(".media-toolbar").hasClass("media-toolbar-mode-select")) {
466 if(jQuery("ul.attachments li.selected").length) {
467 jQuery("ul.attachments li.selected").trigger("click");
468 jQuery(".select-mode-toggle-button").trigger("click");
469 }
470 }
471 if(folderIDs != "" && (jQuery("#custom-menu li.active-item").length > 0 || activeRecordID == "-1")) {
472 if(jQuery("#media-attachment-taxonomy-filter").length) {
473 folderIDs = folderIDs.split(",");
474 for (var i = 0; i < folderIDs.length; i++) {
475 if(folderIDs[i] != "") {
476 jQuery(".attachments-browser li[data-id='"+folderIDs[i]+"']").remove();
477 }
478 }
479 }
480 folderIDs = "";
481 }
482 if(jQuery("#media-attachment-taxonomy-filter").length) {
483 resetMediaData(0);
484 } else {
485 jQuery.ajax({
486 url: wcp_settings.ajax_url,
487 data: "type=" + wcp_settings.post_type + "&action=get_folders_default_list",
488 method: 'post',
489 success: function (res) {
490 res = jQuery.parseJSON(res);
491 // jQuery("#custom-menu > ul#space_0").html(res.data);
492 jQuery(".header-posts .total-count").text(res.total_items);
493 jQuery(".un-categorised-items .total-count").text(res.empty_items);
494
495 for (i = 0; i < res.taxonomies.length; i++) {
496 if(!jQuery("#title_"+res.taxonomies[i].term_id+" .total-count").length) {
497 jQuery("#title_"+res.taxonomies[i].term_id+" .star-icon").before("<span class='total-count'></span>");
498 }
499 jQuery("#title_"+res.taxonomies[i].term_id+" .total-count").text(parseInt(res.taxonomies[i].trash_count));
500 }
501
502 jQuery("#custom-menu .total-count").each(function(){
503 if(parseInt(jQuery(this).text()) == 0) {
504 jQuery(this).remove();
505 }
506 });
507 }
508 });
509 jQuery(".folder-loader-ajax").addClass("active");
510 if(jQuery("#folder-posts-filter").length) {
511 jQuery("#folder-posts-filter").load(folderCurrentURL + " #posts-filter", function () {
512 var obj = { Title: "", Url: folderCurrentURL };
513 history.pushState(obj, obj.Title, obj.Url);
514 if (!jQuery(".tree-structure").length) {
515 jQuery(".wp-header-end").before('<div class="tree-structure"><ul></ul><div class="clear clearfix"></div></div>');
516 }
517 add_active_item_to_list();
518 triggerInlineUpdate();
519 });
520 } else {
521 jQuery("#wpbody").load(folderCurrentURL + " #wpbody-content", false, function (res) {
522 var obj = { Title: "", Url: folderCurrentURL };
523 history.pushState(obj, obj.Title, obj.Url);
524 if (!jQuery(".tree-structure").length) {
525 jQuery(".wp-header-end").before('<div class="tree-structure"><ul></ul><div class="clear clearfix"></div></div>');
526 }
527 add_active_item_to_list();
528 add_menu_to_list();
529 // triggerInlineUpdate();
530 });
531 }
532 }
533 }
534
535 function add_active_item_to_list() {
536 folderId = 0;
537 if(jQuery(".active-item").length) {
538 folderId = jQuery(".active-item").data("folder-id");
539 if(folderId == undefined) {
540 folderId = 0;
541 }
542 }
543 jQuery(".tree-structure ul").html("");
544 jQuery("#space_"+folderId).children().each(function(){
545 fID = jQuery(this).data("folder-id");
546 fName = jQuery(this).find("h3.title:first .title-text").text()
547 liHtml = listFolderString.replace(/__folder_id__/g,fID);
548 liHtml = liHtml.replace(/__folder_name__/g,fName);
549 selectedClass = jQuery(this).hasClass("is-high")?"is-high":"";
550 liHtml = liHtml.replace(/__append_class__/g,selectedClass);
551 jQuery(".tree-structure ul").append(liHtml);
552 });
553
554 apply_animation_height();
555 }
556
557 document.onkeydown = function(evt) {
558 evt = evt || window.event;
559 var isEscape = false;
560 if ("key" in evt) {
561 isEscape = (evt.key === "Escape" || evt.key === "Esc");
562 } else {
563 isEscape = (evt.keyCode === 27);
564 }
565 if (isEscape) {
566 jQuery(".folder-popup-form").hide();
567 }
568 };
569
570 jQuery(window).load(function(){
571 add_active_item_to_list();
572 });
573
574 function add_menu_to_list() {
575
576 add_active_item_to_list();
577
578 //apply_animation_height();
579 }
580
581 function apply_animation_height() {
582 if(jQuery(".tree-structure-content .tree-structure li").length == 0) {
583 jQuery(".tree-structure-content").hide();
584 } else {
585 jQuery(".tree-structure-content").show();
586 oldHeight = jQuery(".tree-structure-content .tree-structure").height();
587 jQuery(".tree-structure-content .tree-structure").height("auto");
588 if(jQuery(".tree-structure-content .tree-structure").height() > 56) {
589 jQuery(".folders-toggle-button").show();
590 } else {
591 jQuery(".folders-toggle-button").hide();
592 }
593 newHeight = jQuery(".tree-structure-content .tree-structure").height();
594 jQuery(".tree-structure-content .tree-structure").attr("data-height", newHeight);
595
596 if(jQuery(".tree-structure-content").hasClass("active")) {
597 jQuery(".tree-structure-content .tree-structure").height(newHeight);
598 jQuery(".tree-structure-content .tree-structure").attr("data-height", newHeight);
599 } else {
600 jQuery(".tree-structure-content .tree-structure").height(oldHeight);
601 }
602 }
603 }
604
605 jQuery(document).ready(function(){
606
607 wcp_settings.folder_width = parseInt(wcp_settings.folder_width);
608
609 apply_animation_height();
610
611 jQuery(document).on("click", ".folders-toggle-button", function(){
612
613 dbStatus = 'show';
614 if(jQuery(".tree-structure-content").hasClass("active")) {
615 jQuery(".tree-structure-content .tree-structure").animate({
616 height: '55px'
617 }, 100, function(){
618 jQuery(".tree-structure-content").removeClass("active");
619 });
620 dbStatus = 'hide';
621 } else {
622 newHeight = parseInt(jQuery(".tree-structure-content .tree-structure").attr("data-height"));
623 jQuery(".tree-structure-content .tree-structure").animate({
624 height: newHeight
625 }, 100, function(){
626 jQuery(".tree-structure-content").addClass("active");
627 });
628 }
629
630 jQuery.ajax({
631 url: wcp_settings.ajax_url,
632 data: "type=" + wcp_settings.post_type + "&action=wcp_hide_folders&status=" + dbStatus +"&nonce="+wcp_settings.nonce,
633 method: 'post',
634 success: function (res) {
635 setStickyHeaderForMedia();
636 }
637 });
638 });
639
640 if(wcp_settings.can_manage_folder == "0") {
641 jQuery(".wcp-custom-form a:not(.pink)").addClass("button-disabled");
642 }
643
644 isKeyActive = parseInt(wcp_settings.is_key_active);
645 n_o_file = parseInt(wcp_settings.folders);
646
647 if(wcp_settings.post_type == "attachment") {
648 jQuery(".wp-header-end").before('<div class="tree-structure-content"><div class="tree-structure"><ul></ul><div class="clear clearfix"></div></div><div class="folders-toggle-button"><span></span></div></div>');
649
650 add_menu_to_list();
651
652 apply_animation_height();
653 }
654
655 calcWidth(jQuery('#title_0'));
656
657 jQuery("#cancel-button").click(function(){
658 jQuery(".wcp-form-data").hide();
659 });
660
661
662 jQuery(document).on("click", "h3.title", function(e) {
663 e.stopPropagation();
664 jQuery(".un-categorised-items").removeClass("active-item");
665 jQuery(".header-posts a").removeClass("active-item");
666 activeRecordID = jQuery(this).closest("li.route").data("folder-id");
667 if(!jQuery("#media-attachment-taxonomy-filter").length) {
668 folderCurrentURL = wcp_settings.page_url + jQuery(this).closest("li.route").data("slug");
669 jQuery(".form-loader-count").css("width", "100%");
670 if(jQuery("#folder-posts-filter").length) {
671 jQuery("#folder-posts-filter").load(folderCurrentURL + " #posts-filter", function () {
672 var obj = { Title: jQuery("#wcp_folder_"+activeRecordID).data("slug"), Url: folderCurrentURL };
673 history.pushState(obj, obj.Title, obj.Url);
674 set_default_folders(jQuery("#wcp_folder_"+activeRecordID).data("slug"));
675 if (!jQuery(".tree-structure").length) {
676 jQuery(".wp-header-end").before('<div class="tree-structure"><ul></ul><div class="clear clearfix"></div></div>');
677 }
678 triggerInlineUpdate();
679 });
680 } else {
681 jQuery("#wpbody").load(folderCurrentURL + " #wpbody-content", function () {
682 var obj = { Title: jQuery("#wcp_folder_"+activeRecordID).data("slug"), Url: folderCurrentURL };
683 history.pushState(obj, obj.Title, obj.Url);
684 set_default_folders(jQuery("#wcp_folder_"+activeRecordID).data("slug"));
685 if (!jQuery(".tree-structure").length) {
686 jQuery(".wp-header-end").before('<div class="tree-structure"><ul></ul><div class="clear clearfix"></div></div>');
687 }
688 triggerInlineUpdate();
689 });
690 }
691 } else {
692 var thisIndex = jQuery(this).closest("li.route").data("folder-id");
693 jQuery("#media-attachment-taxonomy-filter").val(thisIndex);
694 jQuery("#media-attachment-taxonomy-filter").trigger("change");
695 thisSlug = jQuery(this).closest("li.route").data("slug");
696 folderCurrentURL = wcp_settings.page_url + jQuery(this).closest("li.route").data("slug");
697 var obj = { Title: thisSlug, Url: folderCurrentURL };
698 history.pushState(obj, obj.Title, obj.Url);
699 set_default_folders(thisSlug);
700 jQuery(".custom-media-select").removeClass("active");
701 //add_menu_to_list();
702 }
703 add_active_item_to_list();
704 });
705
706
707 jQuery(".tree-structure a").livequery(function(){
708 jQuery(this).click(function(){
709 fID = jQuery(this).data("id");
710 jQuery("#title_"+fID).trigger("click");
711 });
712 });
713
714 jQuery(".wcp-parent > span").click(function(e){
715 activeRecordID = "";
716 jQuery(".wcp-container .route").removeClass("active-item");
717 if(!jQuery("#media-attachment-taxonomy-filter").length) {
718 folderCurrentURL = wcp_settings.page_url;
719 jQuery(".form-loader-count").css("width", "100%");
720 if(jQuery("#folder-posts-filter").length) {
721 jQuery("#folder-posts-filter").load(folderCurrentURL + " #posts-filter", function () {
722 var obj = { Title: "", Url: folderCurrentURL };
723 history.pushState(obj, obj.Title, obj.Url);
724 set_default_folders("all");
725 if (!jQuery(".tree-structure").length) {
726 jQuery(".wp-header-end").before('<div class="tree-structure"><ul></ul><div class="clear clearfix"></div></div>');
727 }
728 triggerInlineUpdate();
729 });
730 } else {
731 jQuery("#wpbody").load(folderCurrentURL + " #wpbody-content", function () {
732 var obj = { Title: "", Url: folderCurrentURL };
733 history.pushState(obj, obj.Title, obj.Url);
734 set_default_folders("all");
735 if (!jQuery(".tree-structure").length) {
736 jQuery(".wp-header-end").before('<div class="tree-structure"><ul></ul><div class="clear clearfix"></div></div>');
737 }
738 triggerInlineUpdate();
739 });
740 }
741 } else {
742 jQuery("#media-attachment-taxonomy-filter").val("all");
743 jQuery("#media-attachment-taxonomy-filter").trigger("change");
744 }
745 add_active_item_to_list();
746 });
747 jQuery("h3.title").livequery(function(){
748 jQuery(this).droppable({
749 accept: ".wcp-move-file, .wcp-move-multiple, .attachments-browser li.attachment",
750 hoverClass: 'wcp-drop-hover',
751 classes: {
752 "ui-droppable-active": "ui-state-highlight"
753 },
754 drop: function( event, ui ) {
755 folderID = jQuery(this).closest("li.route").data('folder-id');
756 if ( ui.draggable.hasClass( 'wcp-move-multiple' ) ) {
757 if(jQuery(".wp-list-table input:checked").length) {
758 chkStr = "";
759 jQuery(".wp-list-table input:checked").each(function(){
760 chkStr += jQuery(this).val()+",";
761 });
762 nonce = jQuery.trim(jQuery("#wcp_folder_"+folderID).data("nonce"));
763 jQuery.ajax({
764 url: wcp_settings.ajax_url,
765 data: "post_ids=" + chkStr + "&type=" + wcp_settings.post_type + "&action=wcp_change_multiple_post_folder&folder_id=" + folderID+"&nonce="+nonce+"&status="+wcp_settings.taxonomy_status+"&taxonomy="+activeRecordID,
766 method: 'post',
767 success: function (res) {
768 res = jQuery.parseJSON(res);
769 if(res.status == "1") {
770 resetMediaAndPosts();
771 ajaxAnimation();
772 } else {
773 jQuery(".folder-popup-form").hide();
774 jQuery(".folder-popup-form").removeClass("disabled");
775 jQuery("#error-folder-popup-message").html(res.message);
776 jQuery("#error-folder-popup").show()
777 }
778 }
779 });
780 }
781 } else if( ui.draggable.hasClass( 'wcp-move-file' ) ){
782 postID = ui.draggable[0].attributes['data-id'].nodeValue;
783 nonce = jQuery.trim(jQuery("#wcp_folder_"+folderID).data("nonce"));
784 chkStr = postID+",";
785 jQuery(".wp-list-table input:checked").each(function(){
786 if(jQuery(this).val() != postID) {
787 chkStr += jQuery(this).val() + ",";
788 }
789 });
790 jQuery.ajax({
791 url: wcp_settings.ajax_url,
792 data: "post_ids=" + chkStr + "&type=" + wcp_settings.post_type + "&action=wcp_change_multiple_post_folder&folder_id=" + folderID+"&nonce="+nonce+"&status="+wcp_settings.taxonomy_status+"&taxonomy="+activeRecordID,
793 method: 'post',
794 success: function (res) {
795 res = jQuery.parseJSON(res);
796 if(res.status == "1") {
797 // window.location.reload();
798 resetMediaAndPosts();
799 ajaxAnimation();
800 } else {
801 jQuery(".folder-popup-form").hide();
802 jQuery(".folder-popup-form").removeClass("disabled");
803 jQuery("#error-folder-popup-message").html(res.message);
804 jQuery("#error-folder-popup").show()
805 }
806 }
807 });
808 } else if (ui.draggable.hasClass('attachment')) {
809 chkStr = ui.draggable[0].attributes['data-id'].nodeValue;
810 nonce = jQuery.trim(jQuery("#wcp_folder_" + folderID).data("nonce"));
811 if (jQuery(".attachments-browser li.attachment.selected").length > 1) {
812 chkStr = "";
813 jQuery(".attachments-browser li.attachment.selected").each(function () {
814 chkStr += jQuery(this).data("id") + ",";
815 });
816 }
817 folderIDs = chkStr;
818 jQuery.ajax({
819 url: wcp_settings.ajax_url,
820 data: "post_ids=" + chkStr + "&type=" + wcp_settings.post_type + "&action=wcp_change_multiple_post_folder&folder_id=" + folderID + "&nonce="+nonce+"&status="+wcp_settings.taxonomy_status+"&taxonomy="+activeRecordID,
821 method: 'post',
822 success: function (res) {
823 // window.location.reload();
824 resetMediaAndPosts();
825 ajaxAnimation();
826 }
827 });
828 }
829 }
830 });
831 });
832
833 jQuery(".attachments-browser li.attachment").livequery(function () {
834 jQuery(this).draggable({
835 revert: "invalid",
836 containment: "document",
837 helper: function (event, ui) {
838 jQuery(".selected-items").remove();
839 selectedItems = jQuery(".attachments-browser li.attachment.selected").length;
840 selectedItems = (selectedItems == 0 || selectedItems == 1) ? "1 Item" : selectedItems + " Items";
841 return jQuery("<div class='selected-items'><span class='total-post-count'>" + selectedItems + " Selected</span></div>");
842 },
843 start: function( event, ui){
844 jQuery("body").addClass("no-hover-css");
845 },
846 cursor: "move",
847 cursorAt: {
848 left: 0,
849 top: 0
850 },
851 stop: function( event, ui ) {
852 jQuery(".selected-items").remove();
853 jQuery("body").removeClass("no-hover-css");
854 }
855 });
856 });
857
858 jQuery(".media-button").livequery(function () {
859 jQuery(this).click(function () {
860 if (jQuery(".delete-selected-button").hasClass("hidden")) {
861 //jQuery(".attachments-browser li.attachment").draggable("disable");
862 } else {
863 // jQuery(".attachments-browser li.attachment").draggable("enable");
864 }
865 });
866 });
867
868 jQuery(".header-posts").click(function(){
869 activeRecordID = "";
870 jQuery(".wcp-container .route").removeClass("active-item");
871 jQuery(".un-categorised-items").removeClass("active-item");
872 jQuery(".header-posts a").addClass("active-item");
873 if(!jQuery("#media-attachment-taxonomy-filter").length) {
874 folderCurrentURL = wcp_settings.page_url;
875 jQuery(".form-loader-count").css("width", "100%");
876 if(jQuery("#folder-posts-filter").length) {
877 jQuery("#folder-posts-filter").load(folderCurrentURL + " #posts-filter", function () {
878 var obj = { Title: "", Url: folderCurrentURL };
879 history.pushState(obj, obj.Title, obj.Url);
880 set_default_folders("all");
881 if (!jQuery(".tree-structure").length) {
882 jQuery(".wp-header-end").before('<div class="tree-structure"><ul></ul><div class="clear clearfix"></div></div>');
883 }
884 add_active_item_to_list();
885 triggerInlineUpdate();
886 });
887 } else {
888 jQuery("#wpbody").load(folderCurrentURL + " #wpbody-content", function () {
889 var obj = { Title: "", Url: folderCurrentURL };
890 history.pushState(obj, obj.Title, obj.Url);
891 set_default_folders("all");
892 if (!jQuery(".tree-structure").length) {
893 jQuery(".wp-header-end").before('<div class="tree-structure"><ul></ul><div class="clear clearfix"></div></div>');
894 }
895 add_active_item_to_list();
896 triggerInlineUpdate();
897 });
898 }
899 } else {
900 activeRecordID = "";
901 jQuery("#media-attachment-taxonomy-filter").val("all");
902 jQuery("#media-attachment-taxonomy-filter").trigger("change");
903 var obj = { Title: "", Url: wcp_settings.page_url };
904 history.pushState(obj, obj.Title, obj.Url);
905 set_default_folders("all");
906 add_active_item_to_list();
907 }
908 });
909
910 jQuery(".un-categorised-items").click(function(){
911 activeRecordID = "-1";
912 jQuery(".wcp-container .route").removeClass("active-item");
913 jQuery(".header-posts a").removeClass("active-item");
914 jQuery(".un-categorised-items").addClass("active-item");
915 if(!jQuery("#media-attachment-taxonomy-filter").length) {
916 folderCurrentURL = wcp_settings.page_url+"-1";
917 jQuery(".form-loader-count").css("width", "100%");
918 if(jQuery("#folder-posts-filter").length) {
919 jQuery("#folder-posts-filter").load(folderCurrentURL + " #posts-filter", function () {
920 var obj = { Title: "", Url: folderCurrentURL };
921 history.pushState(obj, obj.Title, obj.Url);
922 set_default_folders("-1");
923 if (!jQuery(".tree-structure").length) {
924 jQuery(".wp-header-end").before('<div class="tree-structure"><ul></ul><div class="clear clearfix"></div></div>');
925 }
926 add_active_item_to_list();
927 triggerInlineUpdate();
928 });
929 } else {
930 jQuery("#wpbody").load(folderCurrentURL + " #wpbody-content", function () {
931 var obj = { Title: "", Url: folderCurrentURL };
932 history.pushState(obj, obj.Title, obj.Url);
933 set_default_folders("-1");
934 if (!jQuery(".tree-structure").length) {
935 jQuery(".wp-header-end").before('<div class="tree-structure"><ul></ul><div class="clear clearfix"></div></div>');
936 }
937 add_active_item_to_list();
938 triggerInlineUpdate();
939 });
940 }
941 } else {
942 jQuery("#media-attachment-taxonomy-filter").val("unassigned");
943 jQuery("#media-attachment-taxonomy-filter").trigger("change");
944 var obj = { Title: "", Url: wcp_settings.page_url+"-1" };
945 history.pushState(obj, obj.Title, obj.Url);
946 set_default_folders("-1");
947 add_active_item_to_list();
948 }
949 });
950
951 jQuery(".un-categorised-items").livequery(function () {
952 jQuery(this).droppable({
953 accept: ".wcp-move-file, .wcp-move-multiple, .attachments-browser li.attachment",
954 hoverClass: 'wcp-hover-list',
955 classes: {
956 "ui-droppable-active": "ui-state-highlight"
957 },
958 drop: function (event, ui) {
959 folderID = -1;
960 nonce = wcp_settings.nonce;
961 if (ui.draggable.hasClass('wcp-move-multiple')) {
962 if (jQuery(".wp-list-table input:checked").length) {
963 chkStr = "";
964 jQuery(".wp-list-table input:checked").each(function () {
965 chkStr += jQuery(this).val() + ",";
966 });
967 jQuery.ajax({
968 url: wcp_settings.ajax_url,
969 data: "post_id=" + chkStr + "&type=" + wcp_settings.post_type + "&action=wcp_remove_post_folder&folder_id=" + folderID + "&nonce=" + nonce+"&status="+wcp_settings.taxonomy_status+"&taxonomy="+activeRecordID,
970 method: 'post',
971 success: function (res) {
972 //window.location.reload();
973 resetMediaAndPosts();
974 ajaxAnimation();
975 }
976 });
977 }
978 } else if (ui.draggable.hasClass('wcp-move-file')) {
979 postID = ui.draggable[0].attributes['data-id'].nodeValue;
980 chkStr = postID+",";
981 jQuery(".wp-list-table input:checked").each(function () {
982 if(postID != jQuery(this).val()) {
983 chkStr += jQuery(this).val() + ",";
984 }
985 });
986 jQuery.ajax({
987 url: wcp_settings.ajax_url,
988 data: "post_id=" + chkStr + "&type=" + wcp_settings.post_type + "&action=wcp_remove_post_folder&folder_id=" + folderID + "&nonce=" + nonce+"&status="+wcp_settings.taxonomy_status+"&taxonomy="+activeRecordID,
989 method: 'post',
990 success: function (res) {
991 //window.location.reload();
992 resetMediaAndPosts();
993 ajaxAnimation();
994 }
995 });
996 } else if (ui.draggable.hasClass('attachment')) {
997 chkStr = ui.draggable[0].attributes['data-id'].nodeValue;
998 if (jQuery(".attachments-browser li.attachment.selected").length > 1) {
999 chkStr = "";
1000 jQuery(".attachments-browser li.attachment.selected").each(function () {
1001 chkStr += jQuery(this).data("id") + ",";
1002 });
1003 }
1004 folderIDs = chkStr;
1005 jQuery.ajax({
1006 url: wcp_settings.ajax_url,
1007 data: "post_id=" + chkStr + "&type=" + wcp_settings.post_type + "&action=wcp_remove_post_folder&folder_id=" + folderID + "&nonce=" + nonce+"&status="+wcp_settings.taxonomy_status+"&taxonomy="+activeRecordID,
1008 method: 'post',
1009 success: function (res) {
1010 // window.location.reload();
1011 resetMediaAndPosts();
1012 ajaxAnimation();
1013 }
1014 });
1015 }
1016 }
1017 });
1018 });
1019
1020
1021 jQuery(".wcp-hide-show-buttons .toggle-buttons").click(function(){
1022 var folderStatus = "show";
1023 if(jQuery(this).hasClass("hide-folders")) {
1024 folderStatus = "hide";
1025 }
1026 jQuery(".wcp-hide-show-buttons .toggle-buttons").toggleClass("active");
1027 nonce = wcp_settings.nonce;
1028 if(folderStatus == "show") {
1029 jQuery("#wcp-content").addClass("no-transition");
1030 jQuery("#wcp-content").removeClass("hide-folders-area");
1031 if(wcp_settings.isRTL == "1") {
1032 jQuery("#wpcontent").css("padding-right", (wcp_settings.folder_width + 20) + "px");
1033 jQuery("#wpcontent").css("padding-left", "0px");
1034 } else {
1035 jQuery("#wpcontent").css("padding-left", (wcp_settings.folder_width + 20) + "px");
1036 }
1037 setTimeout(function(){
1038 jQuery("#wcp-content").removeClass("no-transition");
1039 }, 250);
1040 } else {
1041 jQuery("#wcp-content").addClass("hide-folders-area");
1042 if(wcp_settings.isRTL == "1") {
1043 jQuery("#wpcontent").css("padding-right", "20px");
1044 jQuery("#wpcontent").css("padding-left", "0px");
1045 } else {
1046 jQuery("#wpcontent").css("padding-left", "20px");
1047 }
1048 }
1049
1050 jQuery.ajax({
1051 url: wcp_settings.ajax_url,
1052 data: "type=" + wcp_settings.post_type + "&action=wcp_change_folder_display_status&status=" + folderStatus +"&nonce="+nonce,
1053 method: 'post',
1054 success: function (res) {
1055 setStickyHeaderForMedia();
1056 }
1057 });
1058 });
1059
1060 jQuery(".tree-structure .folder-item").livequery(function(){
1061 jQuery(this).droppable({
1062 accept: ".wcp-move-file, .wcp-move-multiple, .attachments-browser li.attachment",
1063 hoverClass: 'wcp-drop-hover-list',
1064 classes: {
1065 "ui-droppable-active": "ui-state-highlight"
1066 },
1067 drop: function( event, ui ) {
1068 jQuery("body").removeClass("no-hover-css");
1069 folderID = jQuery(this).data('id');
1070 if ( ui.draggable.hasClass( 'wcp-move-multiple' ) ) {
1071 nonce = jQuery.trim(jQuery("#wcp_folder_"+folderID).data("nonce"));
1072 if(jQuery(".wp-list-table input:checked").length) {
1073 chkStr = "";
1074 jQuery(".wp-list-table input:checked").each(function(){
1075 chkStr += jQuery(this).val()+",";
1076 });
1077 jQuery.ajax({
1078 url: wcp_settings.ajax_url,
1079 data: "post_ids=" + chkStr + "&type=" + wcp_settings.post_type + "&action=wcp_change_multiple_post_folder&folder_id=" + folderID + "&nonce="+nonce+"&status="+wcp_settings.taxonomy_status+"&taxonomy="+activeRecordID,
1080 method: 'post',
1081 success: function (res) {
1082 // window.location.reload();
1083 resetMediaAndPosts();
1084 ajaxAnimation();
1085 }
1086 });
1087 }
1088 } else if ( ui.draggable.hasClass( 'wcp-move-file' ) ) {
1089 postID = ui.draggable[0].attributes['data-id'].nodeValue;
1090 nonce = jQuery.trim(jQuery("#wcp_folder_"+folderID).data("nonce"));
1091 chkStr = postID+",";
1092 jQuery(".wp-list-table input:checked").each(function(){
1093 if(jQuery(this).val() != postID) {
1094 chkStr += jQuery(this).val() + ",";
1095 }
1096 });
1097 jQuery.ajax({
1098 url: wcp_settings.ajax_url,
1099 data: "post_ids=" + chkStr + "&type=" + wcp_settings.post_type + "&action=wcp_change_multiple_post_folder&folder_id=" + folderID + "&nonce="+nonce+"&status="+wcp_settings.taxonomy_status+"&taxonomy="+activeRecordID,
1100 method: 'post',
1101 success: function (res) {
1102 // window.location.reload();
1103 resetMediaAndPosts();
1104 ajaxAnimation();
1105 }
1106 });
1107 } else if( ui.draggable.hasClass( 'attachment' ) ){
1108 chkStr = ui.draggable[0].attributes['data-id'].nodeValue;
1109 nonce = jQuery.trim(jQuery("#wcp_folder_"+folderID).data("nonce"));
1110 if(jQuery(".attachments-browser li.attachment.selected").length > 1) {
1111 chkStr = "";
1112 jQuery(".attachments-browser li.attachment.selected").each(function(){
1113 chkStr += jQuery(this).data("id")+",";
1114 });
1115 }
1116 jQuery.ajax({
1117 url: wcp_settings.ajax_url,
1118 data: "post_ids=" + chkStr + "&type=" + wcp_settings.post_type + "&action=wcp_change_multiple_post_folder&folder_id=" + folderID + "&nonce="+nonce+"&status="+wcp_settings.taxonomy_status+"&taxonomy="+activeRecordID,
1119 method: 'post',
1120 success: function (res) {
1121 // window.location.reload();
1122 resetMediaAndPosts();
1123 ajaxAnimation();
1124 }
1125 });
1126 }
1127 }
1128 });
1129 });
1130
1131 jQuery("#expand-collapse-list").click(function(e){
1132 e.stopPropagation();
1133 statusType = 0;
1134 if(jQuery(this).hasClass("all-open")) {
1135 jQuery(this).removeClass("all-open");
1136 jQuery(".has-sub-tree").removeClass("active");
1137 statusType = 0;
1138 jQuery(this).attr("data-tooltip","Expand");
1139 } else {
1140 jQuery(this).addClass("all-open");
1141 statusType = 1;
1142 jQuery(".has-sub-tree").addClass("active");
1143 jQuery(this).attr("data-tooltip","Collapse");
1144 }
1145 folderIDs = "";
1146 jQuery(".has-sub-tree").each(function(){
1147 folderIDs += jQuery(this).data("folder-id")+",";
1148 });
1149 if(folderIDs != "") {
1150 jQuery(".form-loader-count").css("width","100%");
1151 nonce = wcp_settings.nonce;
1152 jQuery.ajax({
1153 url: wcp_settings.ajax_url,
1154 data: "type=" + wcp_settings.post_type + "&action=wcp_change_all_status&status=" + statusType + "&folders="+folderIDs+"&nonce="+nonce,
1155 method: 'post',
1156 success: function (res) {
1157 jQuery(".form-loader-count").css("width","0");
1158 // add_menu_to_list();
1159 res = jQuery.parseJSON(res);
1160 if(res.status == "0") {
1161 jQuery(".folder-popup-form").hide();
1162 jQuery(".folder-popup-form").removeClass("disabled");
1163 jQuery("#error-folder-popup-message").html(res.message);
1164 jQuery("#error-folder-popup").show();
1165 window.location.reload(true);
1166 }
1167 }
1168 });
1169 }
1170 });
1171
1172 resizeDirection = (wcp_settings.isRTL == "1" || wcp_settings.isRTL == 1)?"w":"e";
1173 jQuery(".wcp-content").resizable( {
1174 resizeHeight: false,
1175 handles: resizeDirection,
1176 minWidth: 315,
1177 maxWidth: 500,
1178 resize: function( e, ui ) {
1179 if(wcp_settings.isRTL == "1") {
1180 jQuery("#wpcontent").css("padding-right", (ui.size.width + 20) + "px");
1181 jQuery("#wpcontent").css("padding-left", "0px");
1182 } else {
1183 jQuery("#wpcontent").css("padding-left", (ui.size.width + 20) + "px");
1184 }
1185 newWidth = ui.size.width - 40;
1186 cssString = "";
1187 classString = "";
1188 for(i=0; i<=15; i++) {
1189 classString += " .space > .route >";
1190 currentWidth = newWidth - (13+(20*i));
1191 cssString += "#custom-menu > "+classString+" .title { width: "+currentWidth+"px !important; } ";
1192 setStickyHeaderForMedia();
1193 }
1194 jQuery("#wcp-custom-style").html("<style>"+cssString+"</style>");
1195 },
1196 stop: function( e, ui ) {
1197 nonce = wcp_settings.nonce;
1198 wcp_settings.folder_width = ui.size.width;
1199 jQuery.ajax({
1200 url: wcp_settings.ajax_url,
1201 data: "type=" + wcp_settings.post_type + "&action=wcp_change_post_width&width=" + ui.size.width+"&nonce="+nonce,
1202 method: 'post',
1203 success: function (res) {
1204 setStickyHeaderForMedia();
1205 }
1206 });
1207 }
1208 });
1209
1210 jQuery(".wcp-move-file").livequery(function(){
1211 jQuery(this).draggable({
1212 revert: "invalid",
1213 containment: "document",
1214 helper: "clone",
1215 cursor: "move",
1216 start: function( event, ui){
1217 jQuery(this).closest("td").addClass("wcp-draggable");
1218 jQuery("body").addClass("no-hover-css");
1219 },
1220 stop: function( event, ui ) {
1221 jQuery(this).closest("td").removeClass("wcp-draggable");
1222 jQuery("body").removeClass("no-hover-css");
1223 }
1224 });
1225 });
1226
1227 jQuery(".wcp-move-multiple").livequery(function(){
1228 jQuery(this).draggable({
1229 // /*cancel: "a.ui-icon",*/
1230 // revert: "invalid",
1231 // containment: "document",
1232 // helper: "clone",
1233 // cursor: "move",
1234 // start: function( event, ui){
1235 // jQuery("body").addClass("no-hover-css");
1236 // },
1237 // stop: function( event, ui ) {
1238 // jQuery("body").removeClass("no-hover-css");
1239 // }
1240 revert: "invalid",
1241 containment: "document",
1242 helper: function (event, ui) {
1243 jQuery(".selected-items").remove();
1244 selectedItems = jQuery("#the-list th input:checked").length;
1245 if(selectedItems > 0) {
1246 selectedItems = (selectedItems == 0 || selectedItems == 1) ? "1 Item" : selectedItems + " Items";
1247 return jQuery("<div class='selected-items'><span class='total-post-count'>" + selectedItems + " Selected</span></div>");
1248 } else {
1249 return jQuery("<div class='selected-items'><span class='total-post-count'>Select Items to move</span></div>");
1250 }
1251 },
1252 start: function( event, ui){
1253 jQuery("body").addClass("no-hover-css");
1254 },
1255 cursor: "move",
1256 cursorAt: {
1257 left: 0,
1258 top: 0
1259 },
1260 stop: function( event, ui ) {
1261 jQuery(".selected-items").remove();
1262 jQuery("body").removeClass("no-hover-css");
1263 }
1264 });
1265 });
1266
1267 jQuery("h3.title").livequery(function(){
1268 jQuery(this).on("contextmenu",function(e) {
1269 e.preventDefault();
1270 if(wcp_settings.can_manage_folder == 0) {
1271 return;
1272 }
1273 isHigh = jQuery(this).closest("li.route").hasClass("is-high");
1274 jQuery(".dynamic-menu").remove();
1275 jQuery(".active-menu").removeClass("active-menu");
1276 menuHtml = "<div class='dynamic-menu'><ul>" +
1277 "<li class='new-folder'><a href='javascript:;'><span class='folder-icon-create_new_folder'></span> New Folder</a></li>" +
1278 "<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>" +
1279 "<li class='mark-folder'><a href='javascript:;'><span class='folder-icon-star_rate'></span>" + ((isHigh) ? " Remove Star" : "Add a Star") + "</a></li>";
1280
1281 /* checking for attachments */
1282 hasPosts = parseInt(jQuery(this).closest("li.route").find("h3.title:first > .total-count").text());
1283 if(wcp_settings.post_type == "attachment" && hasPosts) {
1284 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>";
1285 }
1286 menuHtml += "<li class='remove-folder'><a href='javascript:;'><span class='folder-icon-delete'></span> Delete</a></li>" +
1287 "</ul></div>";
1288 jQuery(this).after(menuHtml);
1289 jQuery(this).parents("li.route").addClass("active-menu");
1290 return false;
1291 });
1292 });
1293
1294 jQuery("body").click(function(){
1295 jQuery(".dynamic-menu").remove();
1296 jQuery(".active-menu").removeClass("active-menu");
1297 });
1298
1299 jQuery(".dynamic-menu").livequery(function(){
1300 jQuery(this).click(function(e){
1301 e.stopPropagation();
1302 });
1303 });
1304
1305 jQuery(".rename-folder").livequery(function(){
1306 jQuery(this).click(function(e){
1307 e.stopPropagation();
1308 fileFolderID = jQuery(this).closest("li.route").data("folder-id");
1309 updateFolder();
1310 // add_menu_to_list();
1311 });
1312 });
1313
1314 jQuery(".mark-folder").livequery(function(){
1315 jQuery(this).click(function(e){
1316 e.stopPropagation();
1317 folderID = jQuery(this).closest("li.route").data("folder-id");
1318 nonce = jQuery.trim(jQuery("#wcp_folder_"+folderID).data("star"));
1319 jQuery(".form-loader-count").css("width","100%");
1320 jQuery(".dynamic-menu").remove();
1321 jQuery(".active-menu").removeClass("active-menu");
1322 jQuery.ajax({
1323 url: wcp_settings.ajax_url,
1324 data: "term_id=" + folderID + "&type=" + wcp_settings.post_type + "&action=wcp_mark_un_mark_folder&nonce="+nonce,
1325 method: 'post',
1326 cache: false,
1327 success: function (res) {
1328 res = jQuery.parseJSON(res);
1329 jQuery(".form-loader-count").css("width","0%");
1330 if (res.status == '1') {
1331 if(res.marked == '1') {
1332 jQuery("#wcp_folder_"+res.id).addClass("is-high");
1333 } else {
1334 jQuery("#wcp_folder_"+res.id).removeClass("is-high");
1335 }
1336 add_menu_to_list();
1337 ajaxAnimation();
1338 } else {
1339 jQuery(".folder-popup-form").hide();
1340 jQuery(".folder-popup-form").removeClass("disabled");
1341 jQuery("#error-folder-popup-message").html(res.message);
1342 jQuery("#error-folder-popup").show();
1343 }
1344 }
1345 });
1346 });
1347 });
1348
1349 /* Add new folder */
1350 jQuery(".new-folder").livequery(function(){
1351 jQuery(this).click(function(e) {
1352 e.stopPropagation();
1353 jQuery(".active-menu").removeClass("active-menu");
1354 fileFolderID = jQuery(this).closest("li.route").data("folder-id");
1355 jQuery(".dynamic-menu").remove();
1356 jQuery(".active-menu").removeClass("active-menu");
1357 isItFromMedia = false;
1358 addFolder();
1359 add_menu_to_list();
1360 });
1361 });
1362
1363 jQuery(".cancel-button").livequery(function(){
1364 jQuery(this).click(function(e){
1365 e.stopPropagation();
1366 jQuery(".form-li").remove();
1367 });
1368 });
1369
1370
1371
1372 jQuery("#add-new-folder").livequery(function(){
1373 jQuery(this).click(function() {
1374 if(jQuery("#custom-menu li.active-item").length) {
1375 fileFolderID = jQuery("#custom-menu li.active-item").data("folder-id");
1376 } else {
1377 fileFolderID = 0;
1378 }
1379 isItFromMedia = false;
1380 addFolder();
1381 //add_menu_to_list();
1382 });
1383 });
1384
1385 jQuery("#inline-update").click(function(){
1386 if(jQuery("#custom-menu li.active-item").length) {
1387 fileFolderID = jQuery("#custom-menu li.active-item").data("folder-id");
1388 updateFolder();
1389 //add_menu_to_list();
1390 }
1391 });
1392
1393 jQuery("#inline-remove").click(function(){
1394 if(jQuery("#custom-menu li.active-item").length) {
1395 fileFolderID = jQuery("#custom-menu li.active-item").data("folder-id");
1396 removeFolderFromID(1);
1397 jQuery(".dynamic-menu").remove();
1398 jQuery(".active-menu").removeClass("active-menu");
1399 } else {
1400 if(jQuery("#folder-hide-show-checkbox").is(":checked")) {
1401 //removeMultipleFolderItems();
1402 jQuery(".dynamic-menu").remove();
1403 removeFolderFromID(1);
1404 }
1405 }
1406 });
1407
1408 if(wcp_settings.can_manage_folder == "1") {
1409 jQuery('.space').livequery(function(){
1410 jQuery(this).sortable({
1411 placeholder: "ui-state-highlight",
1412 connectWith:'.space',
1413 tolerance:'intersect',
1414 over:function(event,ui){
1415
1416 },
1417 update: function( event, ui ) {
1418 thisId = ui.item.context.attributes['data-folder-id'].nodeValue;
1419 orderString = "";
1420 jQuery(this).children().each(function(){
1421 if(jQuery(this).hasClass("route")) {
1422 orderString += jQuery(this).data("folder-id")+",";
1423 }
1424 });
1425 if(orderString != "") {
1426 jQuery(".form-loader-count").css("width","100%");
1427 jQuery.ajax({
1428 url: wcp_settings.ajax_url,
1429 data: "term_ids=" + orderString + "&action=wcp_save_folder_order&type=" + wcp_settings.post_type+"&nonce="+wcp_settings.nonce,
1430 method: 'post',
1431 success: function (res) {
1432 res = jQuery.parseJSON(res);
1433 if (res.status == '1') {
1434 jQuery("#wcp_folder_parent").html(res.options);
1435 jQuery(".form-loader-count").css("width", "0");
1436 add_menu_to_list();
1437 resetMediaAndPosts();
1438 ajaxAnimation();
1439 } else {
1440 jQuery(".folder-popup-form").hide();
1441 jQuery(".folder-popup-form").removeClass("disabled");
1442 jQuery("#error-folder-popup-message").html(res.message);
1443 jQuery("#error-folder-popup").show();
1444 window.location.reload(true);
1445 }
1446 }
1447 });
1448 }
1449 },
1450 receive: function (event, ui) {
1451 calcWidth(jQuery(this).siblings('.title'));
1452 check_for_sub_menu();
1453 jQuery(this).closest("li.route").addClass("active");
1454 jQuery(this).closest("li.route").find("ul.ui-sortable:first-child > li").slideDown();
1455 parentId = jQuery(this).closest("li.route").data("folder-id");
1456 thisId = ui.item.context.attributes['data-folder-id'].nodeValue;
1457 if(parentId == undefined) {
1458 parentId = 0;
1459 }
1460 orderString = "";
1461 if(jQuery("#wcp_folder_"+parentId+" .ui-sortable li").length) {
1462 jQuery("#wcp_folder_"+parentId+" .ui-sortable li").each(function(){
1463 orderString += jQuery(this).data("folder-id")+",";
1464 });
1465 } else if(parentId == 0) {
1466 jQuery("#custom-menu > ul.space > li").each(function(){
1467 orderString += jQuery(this).data("folder-id")+",";
1468 });
1469 }
1470 jQuery(".form-loader-count").css("width","100%");
1471 nonce = jQuery.trim(jQuery("#wcp_folder_"+thisId).data("nonce"));
1472 jQuery.ajax({
1473 url: wcp_settings.ajax_url,
1474 data: "term_id=" + thisId + "&action=wcp_update_parent_information&parent_id=" + parentId+"&type=" + wcp_settings.post_type+"&nonce="+nonce,
1475 method: 'post',
1476 success: function (res) {
1477 jQuery(".form-loader-count").css("width","0%");
1478 res = jQuery.parseJSON(res);
1479 if(res.status == 0) {
1480 jQuery(".folder-popup-form").hide();
1481 jQuery(".folder-popup-form").removeClass("disabled");
1482 jQuery("#error-folder-popup-message").html(res.message);
1483 jQuery("#error-folder-popup").show();
1484 } else {
1485 add_menu_to_list();
1486 ajaxAnimation();
1487 }
1488 }
1489 });
1490 }
1491 });
1492 jQuery(this).disableSelection();
1493 });
1494 }
1495 jQuery(".update-inline-record").livequery(function(){
1496 jQuery(this).click(function(e){
1497 e.stopPropagation();
1498 isHigh = jQuery(this).closest("li.route").hasClass("is-high");
1499 jQuery(".dynamic-menu").remove();
1500 jQuery(".active-menu").removeClass("active-menu");
1501 menuHtml = "<div class='dynamic-menu'><ul>" +
1502 "<li class='new-folder'><a href='javascript:;'><span class='folder-icon-create_new_folder'></span> New Folder</a></li>" +
1503 "<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>" +
1504 "<li class='mark-folder'><a href='javascript:;'><span class='folder-icon-star_rate'></span>" + ((isHigh) ? " Remove Star" : "Add a Star") + "</a></li>";
1505
1506 hasPosts = parseInt(jQuery(this).closest("li.route").find("h3.title:first > .total-count").text());
1507 if(wcp_settings.post_type == "attachment" && hasPosts) {
1508 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>";
1509 }
1510 menuHtml += "<li class='remove-folder'><a href='javascript:;'><span class='folder-icon-delete'></span> Delete</a></li>" +
1511 "</ul></div>";
1512 jQuery(this).closest("h3.title").after(menuHtml);
1513 jQuery(this).parents("li.route").addClass("active-menu");
1514 });
1515 });
1516 //check_for_sub_menu();
1517 //jQuery(".has-sub-tree:first").addClass("active");
1518 jQuery(".nav-icon").livequery(function(){
1519 jQuery(this).click(function(){
1520 folderID = jQuery(this).closest("li.route").data("folder-id");
1521 if(jQuery("#wcp_folder_"+folderID).hasClass("active")) {
1522 folderStatus = 0;
1523 } else {
1524 folderStatus = 1;
1525 }
1526 jQuery(".form-loader-count").css("width","100%");
1527 nonce = jQuery.trim(jQuery("#wcp_folder_"+folderID).data("nonce"));
1528 checkForExpandCollapse();
1529 jQuery.ajax({
1530 url: wcp_settings.ajax_url,
1531 data: "is_active=" + folderStatus + "&action=save_wcp_folder_state&term_id=" + folderID+"&nonce="+nonce,
1532 method: 'post',
1533 success: function (res) {
1534 jQuery(".form-loader-count").css("width","0");
1535 res = jQuery.parseJSON(res);
1536 if(res.status == "0") {
1537 jQuery(".folder-popup-form").hide();
1538 jQuery(".folder-popup-form").removeClass("disabled");
1539 jQuery("#error-folder-popup-message").html(res.message);
1540 jQuery("#error-folder-popup").show();
1541 } else {
1542 if(jQuery("#wcp_folder_"+folderID).hasClass("active")) {
1543 jQuery("#wcp_folder_"+folderID).removeClass("active");
1544 jQuery("#wcp_folder_"+folderID).find("ul.ui-sortable:first-child > li").slideUp();
1545 folderStatus = 0;
1546 } else {
1547 jQuery("#wcp_folder_"+folderID).addClass("active");
1548 jQuery("#wcp_folder_"+folderID).find("ul.ui-sortable:first-child > li").slideDown();
1549 folderStatus = 1;
1550 }
1551 // add_menu_to_list();
1552 ajaxAnimation();
1553 }
1554 }
1555 });
1556 });
1557 });
1558 jQuery("#custom-menu .ui-icon, #custom-menu h3").livequery(function(){
1559 jQuery(this).click(function(){
1560 jQuery("#custom-menu .active-item").removeClass("active-item");
1561 jQuery(this).closest(".route").addClass("active-item");
1562 // add_menu_to_list();
1563 });
1564 });
1565 jQuery(".remove-folder").livequery(function(){
1566 jQuery(this).click(function() {
1567 folderID = jQuery(this).closest("li.route").data("folder-id");
1568 fileFolderID = folderID;
1569 removeFolderFromID(0);
1570 jQuery(".dynamic-menu").remove();
1571 jQuery(".active-menu").removeClass("active-menu");
1572 });
1573 });
1574 jQuery(".wcp-parent .fa-caret-right").livequery(function(){
1575 jQuery(this).click(function() {
1576 autoStatus = 1;
1577 if (jQuery(this).closest(".wcp-parent").hasClass("active")) {
1578 jQuery(this).closest(".wcp-parent").removeClass("active");
1579 jQuery("#custom-menu").removeClass("active");
1580 autoStatus = 0;
1581 } else {
1582 jQuery(this).closest(".wcp-parent").addClass("active");
1583 jQuery("#custom-menu").addClass("active");
1584 }
1585 jQuery(".form-loader-count").css("width","100%");
1586 // add_menu_to_list();
1587 jQuery.ajax({
1588 url: wcp_settings.ajax_url,
1589 data: "type=" + wcp_settings.post_type + "&action=wcp_save_parent_data&is_active=" + autoStatus+"&nonce="+wcp_settings.nonce,
1590 method: 'post',
1591 success: function (res) {
1592 jQuery(".form-loader-count").css("width","0%");
1593 res = jQuery.parseJSON(res);
1594 if (res.status == '1') {
1595 jQuery(".folder-popup-form").hide();
1596 jQuery(".folder-popup-form").removeClass("disabled");
1597 jQuery("#error-folder-popup-message").html(res.message);
1598 jQuery("#error-folder-popup").show();
1599 }
1600 }
1601 });
1602 });
1603 });
1604 jQuery(document).on("click","#folder-hide-show-checkbox",function(){
1605 if(jQuery(this).is(":checked")) {
1606 jQuery("#custom-menu").addClass("show-folder-checkbox");
1607 } else {
1608 jQuery("#custom-menu input.checkbox").attr("checked", false);
1609 jQuery("#custom-menu").removeClass("show-folder-checkbox");
1610 }
1611 });
1612 jQuery("input.checkbox").click(function(e){
1613 e.stopPropagation();
1614 e.stopImmediatePropagation();
1615 });
1616 jQuery("input.checkbox").livequery(function(){
1617 jQuery(this).click(function(e){
1618 e.stopPropagation();
1619 e.stopImmediatePropagation();
1620 });
1621 });
1622 checkForExpandCollapse();
1623
1624 //setCustomScrollForFolder();
1625 });
1626
1627 jQuery(window).resize(function(){
1628 //setCustomScrollForFolder();
1629 apply_animation_height();
1630 });
1631
1632
1633
1634 function setCustomScrollForFolder() {
1635 contentHeight = jQuery(window).height() - jQuery("#wpadminbar").height() - jQuery(".sticky-wcp-custom-form").height() - 30;
1636 if(jQuery("#custom-scroll-menu").hasClass("mCustomScrollbar")) {
1637 jQuery("#custom-scroll-menu").mCustomScrollbar('destroy');
1638 }
1639
1640 jQuery("#custom-scroll-menu").mCustomScrollbar({
1641 axis:"y",
1642 scrollButtons:{enable:true},
1643 setHeight: contentHeight,
1644 theme:"3d",
1645 scrollbarPosition:"outside"
1646 });
1647 }
1648
1649 function checkForExpandCollapse() {
1650 // add_menu_to_list();
1651 currentStatus = true;
1652 if((jQuery("#custom-menu .has-sub-tree").length == jQuery("#custom-menu .has-sub-tree.active").length) && jQuery("#custom-menu .has-sub-tree").length) {
1653 jQuery("#expand-collapse-list").addClass("all-open");
1654 jQuery("#expand-collapse-list").attr("data-tooltip","Collapse");
1655 } else {
1656 jQuery("#expand-collapse-list").removeClass("all-open");
1657 jQuery("#expand-collapse-list").attr("data-tooltip","Expand");
1658 }
1659 }
1660
1661 function check_for_sub_menu() {
1662 jQuery("#custom-menu li.route").removeClass("has-sub-tree");
1663 jQuery("#custom-menu li.route").each(function(){
1664 if(jQuery(this).find("ul.ui-sortable li").length) {
1665 jQuery(this).addClass("has-sub-tree");
1666 if(jQuery(this).find("ul.ui-sortable:first").is(":hidden")) {
1667 jQuery(this).removeClass("is-hidden");
1668 } else {
1669 jQuery(this).addClass("is-hidden")
1670 }
1671 } else {
1672 jQuery(this).removeClass("active");
1673 }
1674 });
1675 }
1676
1677 //recursively calculate the Width all titles
1678 function calcWidth(obj){
1679 var titles =
1680 jQuery(obj).siblings('.space').children('.route').children('.title');
1681 jQuery(titles).each(function(index, element){
1682 var pTitleWidth = parseInt(jQuery(obj).css('width'));
1683 var leftOffset = parseInt(jQuery(obj).siblings('.space').css('margin-left'));
1684 var newWidth = pTitleWidth - leftOffset;
1685 if (jQuery(obj).attr('id') == 'title_0'){
1686 newWidth = newWidth - 10;
1687 }
1688 jQuery(element).css({
1689 'width': newWidth
1690 });
1691 calcWidth(element);
1692 });
1693
1694 }
1695
1696
1697 jQuery(window).load(function() {
1698 if(jQuery("#posts-filter").length) {
1699 jQuery("#posts-filter").wrap("<div id='folder-posts-filter'></div>");
1700 }
1701 });
1702 /* code for sticky menu for media screen*/
1703
1704 if(wcp_settings.post_type == "attachment") {
1705
1706 jQuery(window).load(function() {
1707 jQuery("button.button.media-button.select-mode-toggle-button").after("<button class='button organize-button'>Bulk Organize</button>");
1708 jQuery(".media-toolbar-secondary").append("<span class='media-info-message'>Drag and drop your media files to the relevant folders</span>");
1709 jQuery(".delete-selected-button").before("<button type='button' class='button button-primary select-all-item-btn'>Select All</button>");
1710 jQuery(".media-toolbar-secondary").after("<div class='custom-media-select'>Move Selected files to: <select class='media-select-folder'></select></div>");
1711 jQuery(".media-toolbar").append("<div style='clear:both;'></div><div class='media-folder-loader'><span>Uploading files</span> <span id='current_upload_files'></span>/<span id='total_upload_files'></span><div class='folder-progress'><div class='folder-meter orange-bg'><span></span></div></div></div>");
1712 if(jQuery(".wcp-custom-form").length) {
1713 if (wp.Uploader !== undefined) {
1714 wp.Uploader.queue.on('reset', function () {
1715 resetMediaData(1);
1716 });
1717 }
1718 jQuery(document).ajaxComplete(function(ev, jqXHR, settings) {
1719 actionName = settings.data;
1720 if (typeof actionName != "undefined") {
1721 if (actionName.length && actionName.indexOf("action=delete-post&id=") == 0) {
1722 resetMediaData(0);
1723 }
1724 }
1725 });
1726 }
1727 setTimeout(function(){
1728 docReferrar = document.referrer;
1729 if(docReferrar.indexOf("wp-admin/upload.php") != -1) {
1730 mediaMode = getCookie("media-select-mode");
1731 if (mediaMode == "on") {
1732 jQuery("button.button.media-button.select-mode-toggle-button").trigger("click");
1733 //jQuery(".attachments-browser li.attachment").draggable("enable");
1734
1735 if (jQuery(".media-frame").hasClass("mode-select")) {
1736 jQuery(".media-info-message").addClass("active");
1737 } else {
1738 jQuery(".media-info-message, .custom-media-select").removeClass("active");
1739 }
1740 }
1741 } else {
1742 eraseCookie("media-select-mode");
1743 }
1744 resetMediaData(1);
1745 }, 1000);
1746
1747 jQuery(document).on("click", ".attachments-browser ul.attachments .thumbnail", function(){
1748 if(jQuery(".media-toolbar").hasClass("media-toolbar-mode-select")) {
1749 if(jQuery("ul.attachments li.selected").length == 0) {
1750 jQuery(".custom-media-select").removeClass("active");
1751 } else {
1752 jQuery(".custom-media-select").addClass("active");
1753 }
1754 }
1755 });
1756
1757 jQuery(document).on("change", ".media-select-folder", function(){
1758 if(jQuery(this).val() != "") {
1759 var checkStr = "";
1760 jQuery(".attachments-browser li.attachment.selected").each(function(){
1761 checkStr += jQuery(this).attr("data-id")+",";
1762 });
1763 if(jQuery(this).val() == "-1") {
1764 jQuery.ajax({
1765 url: wcp_settings.ajax_url,
1766 data: "post_id=" + checkStr + "&type=" + wcp_settings.post_type + "&action=wcp_remove_post_folder&folder_id=" + jQuery(this).val() + "&nonce=" + wcp_settings.nonce +"&status="+wcp_settings.taxonomy_status+"&taxonomy="+activeRecordID,
1767 method: 'post',
1768 success: function (res) {
1769 resetMediaAndPosts();
1770 ajaxAnimation();
1771 }
1772 });
1773 } else {
1774 nonce = jQuery.trim(jQuery("#wcp_folder_" + jQuery(this).val()).data("nonce"));
1775 jQuery.ajax({
1776 url: wcp_settings.ajax_url,
1777 data: "post_ids=" + checkStr + "&type=" + wcp_settings.post_type + "&action=wcp_change_multiple_post_folder&folder_id=" + jQuery(this).val() + "&nonce=" + nonce + "&status=" + wcp_settings.taxonomy_status + "&taxonomy=" + activeRecordID,
1778 method: 'post',
1779 success: function (res) {
1780 res = jQuery.parseJSON(res);
1781 jQuery("#bulk-move-folder").hide();
1782 if (res.status == "1") {
1783 resetMediaAndPosts();
1784 ajaxAnimation();
1785 } else {
1786 jQuery(".folder-popup-form").hide();
1787 jQuery(".folder-popup-form").removeClass("disabled");
1788 jQuery("#error-folder-popup-message").html(res.message);
1789 jQuery("#error-folder-popup").show()
1790 }
1791 }
1792 });
1793 }
1794 }
1795 });
1796 });
1797
1798 function resetMediaData(loadData) {
1799 jQuery.ajax({
1800 url: wcp_settings.ajax_url,
1801 data: "type=" + wcp_settings.post_type + "&action=wcp_get_default_list&active_id="+activeRecordID,
1802 method: 'post',
1803 success: function (res) {
1804 res = jQuery.parseJSON(res);
1805 // jQuery("#custom-menu > ul#space_0").html(res.data);
1806 jQuery(".header-posts .total-count").text(res.total_items);
1807 jQuery(".un-categorised-items .total-count").text(res.empty_items);
1808 selectedVal = jQuery("#media-attachment-taxonomy-filter").val();
1809 if(selectedVal != "all" && loadData == 1) {
1810 var wp1 = parent.wp;
1811 if(wp1.media != undefined) {
1812 wp1.media.frame.setState('insert');
1813 if (wp1.media.frame.content.get() !== null) {
1814 wp1.media.frame.content.get().collection.props.set({ignore: (+new Date())});
1815 wp1.media.frame.content.get().options.selection.reset();
1816 } else {
1817 wp1.media.frame.library.props.set({ignore: (+new Date())});
1818 }
1819 }
1820 }
1821 if(res.taxonomies.length) {
1822 if(jQuery("#media-attachment-taxonomy-filter").length) {
1823 folders_media_options.terms = res.taxonomies;
1824 var selectedDD = jQuery("#media-attachment-taxonomy-filter");
1825 selectedDD.html("<option value='all'>All Folders</option><option value='unassigned'>(Unassigned)</option>");
1826 jQuery(".media-select-folder").html("<option value=''>Select Folder</option><option value='-1'>(Unassigned)</option>");
1827 for (i = 0; i < res.taxonomies.length; i++) {
1828 selectedDD.append("<option value='" + res.taxonomies[i].term_id + "'>" + res.taxonomies[i].name + " (" + res.taxonomies[i].trash_count + ")</option>");
1829 jQuery(".media-select-folder").append("<option value='" + res.taxonomies[i].term_id + "'>" + res.taxonomies[i].name + " (" + res.taxonomies[i].trash_count + ")</option>");
1830 }
1831 selectedDD.val(selectedVal);
1832 jQuery(".media-select-folder").val("");
1833 }
1834 if(jQuery("select.folder_for_media").length) {
1835 selectedVal = jQuery("select.folder_for_media").val();
1836 jQuery("select.folder_for_media option:not(:first-child):not(:last-child)").remove();
1837 for (i = 0; i < res.taxonomies.length; i++) {
1838 jQuery("select.folder_for_media option:last-child").before("<option value='" + res.taxonomies[i].term_id + "'>" + res.taxonomies[i].name +"</option>");
1839 }
1840 if(selectedVal != "") {
1841 jQuery(".folder_for_media").val(selectedVal);
1842 }
1843 }
1844 for (i = 0; i < res.taxonomies.length; i++) {
1845 if(!jQuery("#title_"+res.taxonomies[i].term_id+" .total-count").length) {
1846 jQuery("#title_"+res.taxonomies[i].term_id+" .star-icon").before("<span class='total-count'></span>");
1847 }
1848 jQuery("#title_"+res.taxonomies[i].term_id+" .total-count").text(parseInt(res.taxonomies[i].trash_count));
1849 }
1850
1851 jQuery("#custom-menu .total-count").each(function(){
1852 if(parseInt(jQuery(this).text()) == 0) {
1853 jQuery(this).remove();
1854 }
1855 });
1856 }
1857 if(activeRecordID != "") {
1858 jQuery("#wcp_folder_"+activeRecordID).addClass("active-item");
1859 }
1860
1861 if(isItFromMedia) {
1862 jQuery("#title_"+fileFolderID).trigger("click");
1863 isItFromMedia = false;
1864 }
1865 }
1866 });
1867 }
1868
1869 function setMediaBoxWidth() {
1870 jQuery(".media-frame-content .media-toolbar").width(jQuery(".media-frame-content").width() - 20);
1871 }
1872
1873 setMediaBoxWidth();
1874
1875 jQuery(window).resize(function(){
1876 setMediaBoxWidth();
1877 });
1878
1879 jQuery(document).ready(function(){
1880
1881 });
1882
1883 jQuery(document).on("click", ".button.organize-button", function(){
1884 if(!jQuery(".media-frame").hasClass("mode-select")) {
1885 setCookie("media-select-mode", "on", 7);
1886 } else {
1887 eraseCookie("media-select-mode");
1888 }
1889 jQuery("button.button.media-button.select-mode-toggle-button").trigger("click");
1890 if(jQuery(".media-frame").hasClass("mode-select")) {
1891 jQuery(".media-info-message").addClass("active");
1892 jQuery(".select-all-item-btn").addClass("active");
1893 } else {
1894 jQuery(".media-info-message, .custom-media-select").removeClass("active");
1895 jQuery(".select-all-item-btn").removeClass("active");
1896 }
1897 });
1898
1899 jQuery(document).on("click", ".select-mode-toggle-button", function(){
1900 setTimeout(function() {
1901 if(!jQuery(".media-frame").hasClass("mode-select")) {
1902 setCookie("media-select-mode", "off", -1);
1903 }
1904 if(jQuery(".media-frame").hasClass("mode-select")) {
1905 jQuery(".media-info-message").addClass("active");
1906 jQuery(".select-all-item-btn").addClass("active");
1907 } else {
1908 jQuery(".media-info-message, .custom-media-select").removeClass("active");
1909 jQuery(".select-all-item-btn").removeClass("active");
1910 }
1911 }, 10);
1912 });
1913
1914 jQuery(document).on("click", ".select-all-item-btn", function(){
1915 jQuery("ul.attachments li:not(.selected)").trigger("click");
1916 });
1917
1918 jQuery(document).on("change", ".folder_for_media", function(){
1919 if(jQuery(this).val() == "add-folder") {
1920 fileFolderID = 0;
1921 isItFromMedia = true;
1922 addFolder();
1923 // jQuery(".add-new-folder").trigger("click");
1924 //jQuery(this).val("-1");
1925 }
1926 });
1927
1928 function setCookie(name,value,days) {
1929 var expires = "";
1930 if (days) {
1931 var date = new Date();
1932 date.setTime(date.getTime() + (days*24*60*60*1000));
1933 expires = "; expires=" + date.toUTCString();
1934 }
1935 document.cookie = name + "=" + (value || "") + expires + "; path=/";
1936 }
1937 function getCookie(name) {
1938 var nameEQ = name + "=";
1939 var ca = document.cookie.split(';');
1940 for(var i=0;i < ca.length;i++) {
1941 var c = ca[i];
1942 while (c.charAt(0)==' ') c = c.substring(1,c.length);
1943 if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
1944 }
1945 return null;
1946 }
1947
1948
1949 function eraseCookie(name) {
1950 document.cookie = name+'=; Max-Age=-99999999;';
1951 }
1952
1953 function setStickyHeaderForMedia() {
1954 if(!jQuery(".media-position").length) {
1955 jQuery(".media-frame-content .media-toolbar").before("<div class='media-position'></div>")
1956 }
1957
1958 if(jQuery(".media-position").length) {
1959 setMediaBoxWidth();
1960
1961 thisPosition = jQuery(".media-position").offset().top - jQuery(window).scrollTop();
1962 if(thisPosition <= 32) {
1963 jQuery(".media-frame-content .media-toolbar").addClass("sticky-media");
1964 jQuery(".media-position").height(jQuery(".media-frame-content .media-toolbar").outerHeight());
1965 } else {
1966 jQuery(".media-frame-content .media-toolbar").removeClass("sticky-media");
1967 jQuery(".media-position").height(1);
1968 }
1969 }
1970 }
1971
1972 jQuery(window).scroll(function(){
1973 setStickyHeaderForMedia()
1974 });
1975 } else {
1976 function setStickyHeaderForMedia() {}
1977 }