1jQuery(document).ready( function($) { 2 3 /* 4 * PDFs Dropdown 5 */ 6 $(".bsk-pdfm-output-container").on("change", ".bsk-pdfm-pdfs-dropdown", function(){ 7 8 var output_container = $(this).parents(".bsk-pdfm-output-container"); 9 var url = $(this).val(); 10 11 if ( url ) { 12 //window.open( url, target); 13 var form_ID_random = $( this ).data( "from-id" ); 14 15 //if pdfjs enabled 16 var pdfjs_enabled = output_container.find( ".bsk-pdfm-pdfs-dropdown-pdfs-enable" ).val(); 17 var permalink_enabled = output_container.find( ".bsk_pdfm_settings_enalbe_permalink_cls" ).val() > 0 ? true : false ; 18 var file_extension = bsk_pdfm_get_fiel_extension( url ); 19 if ( pdfjs_enabled == 'YES' && permalink_enabled == false && file_extension == 'PDF' ) { 20 //change file's value 21 $( "#bsk_pdfm_pdfs_dropdown_to_open_ID_" + form_ID_random ).val( url ); 22 } else { 23 //change form's action 24 $( "#bsk_pdfm_pdfs_dropdown_open_form_ID_" + form_ID_random ).prop( "action", url ); 25 //remove all form's fields 26 $( "#bsk_pdfm_pdfs_dropdown_open_form_ID_" + form_ID_random ).find( ".bsk-pdfm-pdfs-dropdown-form-fields" ).remove(); 27 } 28 $( "#bsk_pdfm_pdfs_dropdown_open_form_ID_" + form_ID_random ).submit(); 29 } 30 }); 31 32 function bsk_pdfm_get_fiel_extension(url) { 33 try { 34 const urlObj = new URL(url); 35 const pathname = urlObj.pathname; 36 37 if (!pathname.includes('.')) { 38 return null; 39 } 40 41 const filename = pathname.split('/').pop(); 42 const extension = filename.split('.').pop(); 43 44 if (extension === filename) { 45 return null; 46 } 47 48 return extension.toUpperCase(); 49 } catch (error) { 50 console.error('Invalid URL:', error); 51 return null; 52 } 53 } 54 55 $(".bsk-pdfm-output-container").on("click", ".bsk-pdfm-extension-filter-anchor, .bsk-pdfm-tags-filter-anchor", function(){ 56 57 var output_container = $(this).parents(".bsk-pdfm-output-container"); 58 var shortcode_type = ''; 59 var output = ''; 60 if( output_container.hasClass("shortcode-pdfs") ){ 61 shortcode_type = 'pdfs'; 62 }else if( output_container.hasClass("shortcode-category") ){ 63 shortcode_type = 'category'; 64 }else{ 65 return; 66 } 67 68 if( output_container.hasClass( 'layout-ul' ) ){ 69 output = 'ul'; 70 }else if( output_container.hasClass( 'layout-ol' ) ){ 71 output = 'ol'; 72 }else if( output_container.hasClass( 'layout-dropdown' ) ){ 73 output = 'dropdown'; 74 }else{ 75 return; 76 } 77 78 //clear error message 79 output_container.find(".bsk-pdfm-error-message").remove(); 80 81 var extension = ''; 82 var tags_filter_val = ''; 83 84 /* 85 * for extension filter 86 */ 87 if( $(this).hasClass( "bsk-pdfm-extension-filter-anchor" ) ){ 88 if( $(this).hasClass("active") ){ 89 return; 90 } 91 extension = $(this).data("extension"); 92 $(this).addClass( "bsk-pdfm-just-clicked" ); 93 output_container.find(".bsk-pdfm-extension-filter-ajax-loader").css("display", "block"); 94 95 //refresh pagination 96 output_container.find(".bsk-pdfm-pagination").find("li").removeClass("active"); 97 }else if( output_container.find( ".bsk-pdfm-extension-filter-anchor.active" ).length > 0 ){ 98 extension = output_container.find( ".bsk-pdfm-extension-filter-anchor.active" ).data("extension"); 99 } 100 101 /* 102 * for tags filter 103 */ 104 if( $(this).hasClass( "bsk-pdfm-tags-filter-anchor" ) ){ 105 if( $(this).hasClass("active") ){ 106 return; 107 } 108 tags_filter_val = $(this).data("tagid"); 109 $(this).addClass( "bsk-pdfm-just-clicked" );
110 output_container.find(".bsk-pdfm-tags-filter-ajax-loader").css("display", "block"); 111 112 //refresh pagination 113 output_container.find(".bsk-pdfm-pagination").find("li").removeClass("active"); 114 }else if( output_container.find( ".bsk-pdfm-tags-filter-anchor.active" ).length > 0 ){ 115 tags_filter_val = output_container.find( ".bsk-pdfm-tags-filter-anchor.active" ).data("tagid"); 116 } 117 118 var ajax_nonce = output_container.find(".bsk-pdfm-" + shortcode_type + "-ajax-nonce").val(); 119 var action_val = "pdfs_get_" + shortcode_type + "_" + output; 120 var data = { action: action_val, layout: output, nonce: ajax_nonce }; 121 122 //organise ajax parameters 123 output_container.find(".bsk-pdfm-shortcode-attr").each(function(index, value ){ 124 var attr_name = $(this).data("attr_name"); 125 data[attr_name] = $(this).val(); 126 }); 127 128 data['extension'] = extension; 129 if( tags_filter_val ){ 130 data['tags_default'] = tags_filter_val; 131 } 132 133 /*console.log( data ); 134 return;*/ 135 $.post( bsk_pdf_pro.ajaxurl, data, function(response) { 136 /*console.log( response ); 137 return;*/ 138 var return_data = $.parseJSON( response ); 139 140 /* 141 * process extension filter 142 */ 143 if( output_container.find(".bsk-pdfm-extension-filter-container").length ){ 144 145 var extension_filter_container = output_container.find(".bsk-pdfm-extension-filter-container"); 146 extension_filter_container.find(".bsk-pdfm-extension-filter-ajax-loader").css("display", "none"); 147 148 if( extension_filter_container.find(".bsk-pdfm-just-clicked").length ){ 149 150 extension_filter_container.find( ".bsk-pdfm-extension-filter-anchor" ).removeClass( 'active' ); 151 extension_filter_container.find( ".bsk-pdfm-just-clicked" ).addClass( 'active' ); 152 extension_filter_container.find( ".bsk-pdfm-extension-filter-anchor" ).removeClass( 'bsk-pdfm-just-clicked' ); 153 } 154 } 155 156 /* 157 * process tags filter 158 */ 159 if( output_container.find(".bsk-pdfm-tags-filter-container").length ){ 160 161 var tags_filter_container = output_container.find(".bsk-pdfm-tags-filter-container"); 162 tags_filter_container.find(".bsk-pdfm-tags-filter-ajax-loader").css("display", "none"); 163 164 if( tags_filter_container.find(".bsk-pdfm-just-clicked").length ){ 165 166 tags_filter_container.find( ".bsk-pdfm-tags-filter-anchor" ).removeClass( 'active' ); 167 tags_filter_container.find( ".bsk-pdfm-just-clicked" ).addClass( 'active' ); 168 tags_filter_container.find( ".bsk-pdfm-tags-filter-anchor" ).removeClass( 'bsk-pdfm-just-clicked' ); 169 } 170 } 171 172 /* 173 * output for pdfs 174 */ 175 if( shortcode_type == 'pdfs' ){ 176 output_container.find(".bsk-pdfm-date-filter").remove(); 177 output_container.find(".bsk-pdfm-pagination").remove(); 178 179 if( output == 'dropdown' ){ 180 var dropdown_obj = output_container.find( ".bsk-pdfm-pdfs-dropdown" ); 181 dropdown_obj.html( return_data.pdfs ); 182 dropdown_obj.css( "display", "block" ); 183 output_container.find(".bsk-pdfm-date-filter").remove(); 184 185 if( return_data.error_message ){ 186 $( return_data.error_message ).insertBefore( dropdown_obj ); 187 }else{ 188 $( return_data.date_filter ).insertBefore( dropdown_obj ); 189 //desc 190 if( output_container.find(".bsk-pdfm-count-desc-container").length ){
191 output_container.find(".bsk-pdfm-count-desc-container").find( "h3" ).html( return_data.results_desc ); 192 } 193 } 194 }else if( output == 'ul' || output == 'ol' ){ 195 var pdfs_list_container = output_container.find(".bsk-pdfm-pdfs-" + output + "-list"); 196 pdfs_list_container.html( "" ); 197 if( return_data.error_message ){ 198 $( return_data.error_message ).insertBefore( pdfs_list_container ); 199 }else{ 200 pdfs_list_container.html( return_data.pdfs ); 201 $( return_data.date_filter ).insertBefore( pdfs_list_container ); 202 $( return_data.pagination ).insertAfter( pdfs_list_container ); 203 204 //desc 205 if( output_container.find(".bsk-pdfm-count-desc-container").length ){ 206 output_container.find(".bsk-pdfm-count-desc-container").find( "h3" ).html( return_data.results_desc ); 207 } 208 } 209 } 210 211 return; 212 } 213 214 /* 215 * output for category 216 */ 217 if( shortcode_type == 'category' ){ 218 output_container.find(".bsk-pdfm-category-output").remove(); 219 220 var obj_insert_before = output_container.find(".bsk-pdfm-category-shortcode-attr"); 221 if( output_container.find(".bsk-pdfm-credit-link-container").length > 0 ){ 222 obj_insert_before = output_container.find(".bsk-pdfm-credit-link-container"); 223 } 224 225 if( output == 'dropdown' ){ 226 if( return_data.error_message ){ 227 $( return_data.error_message ).insertBefore( obj_insert_before ); 228 229 return; 230 } 231 $( return_data.category_out ).insertBefore( obj_insert_before ); 232 233 //desc 234 if( output_container.find(".bsk-pdfm-count-desc-container").length ){ 235 output_container.find(".bsk-pdfm-count-desc-container").find( "h3" ).html( return_data.results_desc ); 236 } 237 }else if( output == 'ul' || output == 'ol' ){ 238 if( return_data.error_message ){ 239 $( return_data.error_message ).insertBefore( obj_insert_before ); 240 241 return; 242 } 243 244 $( return_data.category_out ).insertBefore( obj_insert_before ); 245 $( return_data.pagination ).insertBefore( obj_insert_before ); 246 247 //desc 248 if( output_container.find(".bsk-pdfm-count-desc-container").length ){ 249 output_container.find(".bsk-pdfm-count-desc-container").find( "h3" ).html( return_data.results_desc ); 250 } 251 } 252 253 return; 254 } //end for output for category 255 256 }); /* //$.post */ 257 258 }); 259 260});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.