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