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