1 jQuery(window).on('load', function(){ 2 3 var pop_count=jQuery('.ed-popup[id^="ed-popup-"]').length; 4 var index = 0; 5 var current_date = jQuery.datepicker.formatDate('mm/dd/yy', new Date()); 6 var start_date; 7 var end_date; 8 var delay; 9 10 // clears the cookis if parameter not set in admin 11 clear_cookie(); 12 13 14 // initialize all the popups 15 for(var index = 0 ; index < pop_count; index++){ 16 start_date= jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('date-start'); 17 end_date= jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('date-end'); 18 19 delay = jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('delay'); 20 21 22 delay = delay * 1000; 23 24 25 26 if(!start_date){ 27 start_date=jQuery.datepicker.formatDate('mm/dd/yy', new Date()); 28 } 29 if(!end_date){ 30 end_date=jQuery.datepicker.formatDate('mm/dd/yy', new Date()); 31 } 32 33 //covert strings to date object for comparison 34 var d_start_date = Date.parse(start_date); 35 var d_end_date = Date.parse(end_date); 36 var d_current_date = Date.parse(current_date); 37 38 39 // Check Date 40 if(d_start_date <= d_current_date && d_end_date >= d_current_date){ 41 42 // Check cookie 43 if(jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('cookie-set')==="enabled"){ 44 if(sessionStorage.getItem('popup'+index) === 'true'){ 45 continue; 46 } 47 } 48 49 // Check type of popup and setup popup 50 if(jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('popup-type') === "image-popup"){ 51 jQuery('.ed-popup-button').eq(index).magnificPopup({ 52 items: { 53 src: jQuery('.ed-popup[id^="ed-popup-"]').eq(index), 54 type: 'inline' 55 }, 56 mainClass: 'ed-popup-wrap ed-popup-image popup-'+jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('popup-id'), 57 callbacks: { 58 open: function() { 59 jQuery.magnificPopup.instance.close = function () { 60 jQuery.magnificPopup.proto.close.call(this); 61 if(jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('cookie-set')==="enabled"){ 62 sessionStorage.setItem('popup'+index,'true'); 63 } 64 index++; 65 if(index < pop_count){ 66 if(check_cookie(index)< pop_count){ 67 index=check_cookie(index); 68 jQuery('.ed-popup-button').eq(index).click(); 69 } 70 } 71 }; 72 } 73 } 74 }); 75 if(jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('ga') === "enabled"){ 76 jQuery('.ed-popup[id^="ed-popup-"]').eq(index).find("img").on("click",function(){ 77 var popup_id = jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('popup-id'); 78 ed_popup_ga(location.href, popup_id); 79 }); 80 } 81 } 82 else if((jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('popup-type') === "two-step-popup") && (jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('issticky') != "yes")){ 83 jQuery( "html" ).append( "<a class='container' style='display:none' id='open-popup' href='#second-popup'>Open Second popup</a>" ); 84 jQuery('.ed-popup-button').eq(index).magnificPopup({ 85 items: { 86 src: jQuery('.first-popup').eq(index), 87 type: 'inline' 88 }, 89 mainClass: 'ed-popup-wrap ed-popup-image popup-'+jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('popup-id'), 90 callbacks: { 91 open: function() { 92 jQuery.magnificPopup.instance.close = function () { 93 jQuery.magnificPopup.proto.close.call(this); 94 if(jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('cookie-set')==="enabled"){ 95 sessionStorage.setItem('popup'+index,'true'); 96 } 97 index++; 98 if(index < pop_count){ 99 if(check_cookie(index)< pop_count){ 100 index=check_cookie(index); 101 jQuery('.ed-popup-button').eq(index).click(); 102 } 103 } 104 jQuery('#open-popup').trigger('click'); //opens second popup 105 }; 106 } 107 } 108 }); 109 110 jQuery('#open-popup').magnificPopup({ 111 type:'inline', 112 mainClass: 'ed-popup-wrap ed-popup-image popup-'+jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('popup-id'), 113 callbacks: { 114 open: function() { 115 jQuery.magnificPopup.instance.close = function () { 116 jQuery.magnificPopup.proto.close.call(this); 117 if(jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('cookie-set')==="enabled"){ 118 sessionStorage.setItem('popup'+index,'true'); 119 120 } 121 index++; 122 if(index < pop_count){ 123 if(check_cookie(index)< pop_count){ 124 index=check_cookie(index); 125 jQuery('.ed-popup-button').eq(index).click(); 126 } 127 } 128 }; 129 } 130 } 131 });
132 133 }else if((jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('popup-type') === "two-step-popup") && (jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('issticky') === "yes")){ 134 jQuery( "html" ).append( "<a class='container' style='display:none' id='open-popup' href='#second-popup'>Open Second popup</a>" ); 135 136 setTimeout( 137 function() { 138 jQuery('.ed-popup[issticky="yes"]').eq(index).animate({ 139 bottom: '0px', 140 opacity: '1' 141 }, 3000); 142 }, delay); 143 if(jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('cookie-set')==="enabled"){ 144 sessionStorage.setItem('popup'+index,'true'); 145 } 146 index++; 147 if(index < pop_count){ 148 if(check_cookie(index)< pop_count){ 149 index=check_cookie(index); 150 jQuery('.ed-popup-button').eq(index).click(); 151 } 152 } 153 jQuery(".first-popup .ed-popup-sticky-popup-close-button").on('click', function () { 154 jQuery('#open-popup').trigger('click'); //opens second popup 155 }); 156 jQuery('#open-popup').magnificPopup({ 157 type:'inline', 158 mainClass: 'ed-popup-wrap ed-popup-image popup-'+jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('popup-id'), 159 callbacks: { 160 open: function() { 161 jQuery.magnificPopup.instance.close = function () { 162 jQuery.magnificPopup.proto.close.call(this); 163 if(jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('cookie-set')==="enabled"){ 164 sessionStorage.setItem('popup'+index,'true'); 165 } 166 index++; 167 if(index < pop_count){ 168 if(check_cookie(index)< pop_count){ 169 index=check_cookie(index); 170 jQuery('.ed-popup-button').eq(index).click(); 171 } 172 } 173 }; 174 } 175 } 176 }); 177 } 178 else if(jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('popup-type') === "video-popup"){ 179 180 jQuery('.ed-popup-button').eq(index).magnificPopup({ 181 items: { 182 src: jQuery('.ed-popup[id^="ed-popup-"]').eq(index), 183 type: 'inline' 184 }, 185 mainClass: 'ed-popup-wrap ed-popup-video popup-'+jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('popup-id'), 186 callbacks: { 187 open: function() { 188 189 jQuery.magnificPopup.instance.close = function () { 190 jQuery.magnificPopup.proto.close.call(this); 191 if(jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('cookie-set')==="enabled"){ 192 sessionStorage.setItem('popup'+index,'true'); 193 } 194 195 index++; 196 if(index < pop_count){ 197 198 if(check_cookie(index)< pop_count){ 199 index=check_cookie(index); 200 jQuery('.ed-popup-button').eq(index).click(); 201 } 202 } 203 }; 204 } 205 } 206 }); 207 }else if(jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('popup-type') === "form-popup"){ 208 jQuery('.ed-popup-button').eq(index).magnificPopup({ 209 items: { 210 src: jQuery('.ed-popup[id^="ed-popup-"]').eq(index), 211 type: 'inline' 212 }, 213 mainClass: 'ed-popup-wrap ed-popup-form popup-'+jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('popup-id'), 214 callbacks: { 215 open: function() { 216 jQuery.magnificPopup.instance.close = function () { 217 jQuery.magnificPopup.proto.close.call(this); 218 if(jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('cookie-set')==="enabled"){ 219 sessionStorage.setItem('popup'+index,'true'); 220 } 221 index++; 222 if(index < pop_count){ 223 if(check_cookie(index)< pop_count){ 224 index=check_cookie(index); 225 jQuery('.ed-popup-button').eq(index).click(); 226 } 227 } 228 }; 229 } 230 } 231 }); 232 }else if(jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('popup-type') === "custom-form-1-popup"){ 233 jQuery('.ed-popup-button').eq(index).magnificPopup({ 234 items: { 235 src: jQuery('.ed-popup[id^="ed-popup-"]').eq(index), 236 type: 'inline' 237 }, 238 mainClass: 'ed-popup-wrap ed-popup-custom-form-1 popup-'+jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('popup-id'), 239 callbacks: { 240 open: function() { 241 jQuery.magnificPopup.instance.close = function () { 242 jQuery.magnificPopup.proto.close.call(this); 243 if(jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('cookie-set')==="enabled"){ 244 sessionStorage.setItem('popup'+index,'true'); 245 } 246 index++; 247 if(index < pop_count){ 248 if(check_cookie(index)< pop_count){ 249 index=check_cookie(index); 250 jQuery('.ed-popup-button').eq(index).click(); 251 } 252 } 253 }; 254 } 255 } 256 }); 257 }else if(jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('popup-type') === "sticky-popup"){ 258 259 // jQuery('.ed-popup[id^="ed-popup-"]').eq(index).appendTo('body'); 260 setTimeout( 261 function() { 262 jQuery('.ed-popup[id^="ed-popup-"]').eq(index).animate({ 263 bottom: '0px', 264 opacity: '1' 265 }, 3000); 266 }, delay); 267 if(jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('cookie-set')==="enabled"){ 268 sessionStorage.setItem('popup'+index,'true'); 269 } 270 }else{ 271 jQuery('.ed-popup-button').eq(index).magnificPopup({ 272 items: { 273 src: jQuery('.ed-popup[id^="ed-popup-"]').eq(index), 274 type: 'inline' 275 }, 276 mainClass: 'ed-popup-wrap ed-popup-html popup-'+jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('popup-id'), 277 callbacks: { 278 open: function() { 279 jQuery.magnificPopup.instance.close = function () { 280 jQuery.magnificPopup.proto.close.call(this); 281 if(jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('cookie-set')==="enabled"){ 282 sessionStorage.setItem('popup'+index,'true'); 283 } 284 index++; 285 if(index < pop_count){ 286 if(check_cookie(index)< pop_count){ 287 index=check_cookie(index); 288 jQuery('.ed-popup-button').eq(index).click(); 289 } 290 } 291 }; 292 } 293 } 294 }); 295 296 } 297 }else{ 298 console.log('popup expired'); 299 } 300 } 301 302 // re-initialize index 303 index=0; 304 //Launch Popup 305 setTimeout( 306 function() { 307 while(index < pop_count){ 308 if(sessionStorage.getItem('popup'+index) === 'true'){ 309 310 index++; 311 continue; 312 } 313 // check start and end date. if empty use current date 314 start_date= jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('date-start'); 315 end_date= jQuery('.ed-popup[id^="ed-popup-"]').eq(index).attr('date-end'); 316 317 if(!start_date){ 318 start_date=jQuery.datepicker.formatDate('mm/dd/yy', new Date()); 319 } 320 if(!end_date){ 321 end_date=jQuery.datepicker.formatDate('mm/dd/yy', new Date()); 322 } 323 324 //covert strings to date object for comparison 325 var d_start_date = Date.parse(start_date); 326 var d_end_date = Date.parse(end_date); 327 var d_current_date = Date.parse(current_date); 328 329 if(d_start_date <= d_current_date && d_end_date >= d_current_date ){ 330 jQuery('.ed-popup-button').eq(index).click(); 331 break; 332 }else{ 333 index++; 334 if(index < pop_count){ 335 jQuery('.ed-popup-button').eq(index).click(); 336 break; 337 } 338 } 339 } 340 }, delay); 341 342 jQuery('.ed-popup-sticky-popup-close-button').click(function(event) { 343 jQuery(this).parent('.ed-popup[popup-type="sticky-popup"]').animate({ 344 bottom: '-400px', 345 opacity: '0' 346 }, 2000); 347 }); 348 jQuery('.ed-popup-sticky-popup-close-button').click(function(event) { 349 jQuery(this).parent('.ed-popup[issticky="yes"]').animate({ 350 bottom: '-400px', 351 opacity: '0' 352 }, 2000); 353 }); 354}); 355 356//GA function 357function ed_popup_ga(location, popup_id){ 358 if (window.ga) { 359 var trackers = ga.getAll(); 360 var virtual_url = "/ed_popup_"+popup_id+"_url_"+location;
361 trackers.forEach(function(tracker) { 362 if(tracker.get('name').indexOf('t0') > -1){ 363 ga('send', 'pageview', virtual_url); 364 }else{ 365 ga(tracker.get('name')+'.send', 'pageview', virtual_url); 366 } 367 }); 368 } 369} 370//END of GA function 371 372// Checks Cookie for each plugin and 373// returns index that doesn't have cookie setup 374function check_cookie(index){ 375 for (index; index < jQuery('.ed-popup[id^="ed-popup-"]').length; index++) { 376 if(sessionStorage.getItem('popup'+index) !== 'true'){ 377 break; 378 } 379 } 380 return index; 381} 382 383// Clears cookie for each popup that doesn't have cookie setup in admin 384function clear_cookie(){ 385 var cookie_index=0; 386 for (cookie_index=0; cookie_index <jQuery('.ed-popup[id^="ed-popup-"]').length; cookie_index++) { 387 if(jQuery('.ed-popup[id^="ed-popup-"]').eq(cookie_index).attr('cookie-set') !== "enabled"){ 388 sessionStorage.setItem('popup'+cookie_index,'false'); 389 } 390 } 391} 392 393function genrate_popup(srcDiv) { 394 var target_src = jQuery(srcDiv).clone(); 395 $.magnificPopup.open({ 396 items: { 397 src: target_src, 398 type:'inline', 399 }, 400 mainClass: 'ed-popup-wrap ed-popup-image', 401 closeBtnInside: true 402 }); 403} 404
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.