Changeset 2536098
- Timestamp:
- 05/23/2021 04:11:55 PM (5 years ago)
- Location:
- woomotiv
- Files:
-
- 7 edited
- 12 copied
-
tags/3.2.0 (copied) (copied from woomotiv/trunk)
-
tags/3.2.0/freemius/assets/img/woomotiv.jpg (copied) (copied from woomotiv/trunk/freemius/assets/img/woomotiv.jpg)
-
tags/3.2.0/index.php (copied) (copied from woomotiv/trunk/index.php)
-
tags/3.2.0/js/front.js (copied) (copied from woomotiv/trunk/js/front.js)
-
tags/3.2.0/js/front.min.js (copied) (copied from woomotiv/trunk/js/front.min.js)
-
tags/3.2.0/lib/class-frontend.php (copied) (copied from woomotiv/trunk/lib/class-frontend.php)
-
tags/3.2.0/lib/class-popup.php (copied) (copied from woomotiv/trunk/lib/class-popup.php)
-
tags/3.2.0/lib/config.php (copied) (copied from woomotiv/trunk/lib/config.php)
-
tags/3.2.0/lib/functions.php (copied) (copied from woomotiv/trunk/lib/functions.php)
-
tags/3.2.0/lib/hooks.php (copied) (copied from woomotiv/trunk/lib/hooks.php)
-
tags/3.2.0/readme.txt (copied) (copied from woomotiv/trunk/readme.txt)
-
tags/3.2.0/views/tabs/general.php (copied) (copied from woomotiv/trunk/views/tabs/general.php)
-
trunk/index.php (modified) (2 diffs)
-
trunk/js/front.js (modified) (7 diffs)
-
trunk/js/front.min.js (modified) (1 diff)
-
trunk/lib/class-backend.php (modified) (1 diff)
-
trunk/lib/class-frontend.php (modified) (3 diffs)
-
trunk/readme.txt (modified) (2 diffs)
-
trunk/views/tabs/report.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
woomotiv/trunk/index.php
r2536058 r2536098 4 4 * Plugin Name: Woomotiv - Live Sales Notification for Woocommerce 5 5 * Description: Laverage social proof to increase trust, traffic and sales. 6 * Version: 3.2. 06 * Version: 3.2.1 7 7 * Author: Sabri Taieb 8 8 * Author Uri: https://delabon.com … … 18 18 19 19 # Defined 20 define( 'WOOMOTIV_VERSION', '3.2. 0' );20 define( 'WOOMOTIV_VERSION', '3.2.1' ); 21 21 define( 'WOOMOTIV_URL', plugins_url( '', __FILE__ ) ); 22 22 define( 'WOOMOTIV_DIR', __DIR__ ); -
woomotiv/trunk/js/front.js
r2536058 r2536098 4 4 (function( $ ){ 5 5 6 var win = $( window );7 6 var body = $('body'); 8 7 var nonce = woomotivObj.nonce; 9 8 var ajax_url = woomotivObj.ajax_url; 10 var isFirstGetItemsCall = true; 9 var currentIndex = 0; 10 var noMoreItems = false; 11 var $items = []; 11 12 var timer = false; 12 13 var secTimer = false; 13 var resizeTimer = false;14 14 var intervalTime = parseInt( woomotivObj.interval ) * 1000; 15 15 var hideTime = parseInt( woomotivObj.hide ) * 1000; 16 var items;17 16 var requestAnimationFrame = window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || window.msRequestAnimationFrame; 18 17 var cancelAnimationFrame = window.cancelAnimationFrame || window.mozCancelAnimationFrame; … … 164 163 165 164 cindex = parseInt( cindex ); 166 167 // No more items 168 if( ! items.eq( cindex ).length ){ 169 170 if( isNoRepeatEnabled ){ 171 excluded.products = getExcludedProductsFromStorage(); 172 excluded.reviews = getExcludedReviewsFromStorage(); 173 excluded.custom = getExcludedCustomPopsFromStorage(); 174 } 175 176 getItems(excluded); 177 } 178 179 var item = items.eq( cindex ); 165 currentIndex = cindex; 166 167 var $item = $items[ cindex - 1 ]; 180 168 181 169 // Show element 182 item.addClass('wmt-current');170 $item.addClass('wmt-current'); 183 171 184 172 // item.one( tStartEvent, function(){ … … 188 176 // First one fires after element is completely visible 189 177 // Second one after element is completetly hidden 190 item.one( tEndEvent , function(){178 $item.one( tEndEvent , function(){ 191 179 192 180 // Update excluded 193 if( item.is('[data-type="product"]') ){194 addExcludedProduct( parseInt( item.attr('data-orderitemid') ) );195 } 196 else if( item.is('[data-type="review"]') ){197 addExcludedReview( parseInt( item.attr('data-review') ) );198 } 199 else if( item.is('[data-type="custom"]') ){200 addExcludedCustomPop( parseInt( item.attr('data-id') ) );181 if( $item.is('[data-type="product"]') ){ 182 addExcludedProduct( parseInt( $item.attr('data-orderitemid') ) ); 183 } 184 else if( $item.is('[data-type="review"]') ){ 185 addExcludedReview( parseInt( $item.attr('data-review') ) ); 186 } 187 else if( $item.is('[data-type="custom"]') ){ 188 addExcludedCustomPop( parseInt( $item.attr('data-id') ) ); 201 189 } 202 190 203 191 // Hide element 204 192 secTimer = setTimeout(function(){ 205 item.removeClass('wmt-current'); 206 207 // after animation is completed show the next one 208 item.one( tEndEvent , function(){ 193 $item.removeClass('wmt-current'); 194 195 // after animation is completed show the next one or fetch new popups 196 $item.one( tEndEvent , function(){ 197 timer = setTimeout( function(){ 198 199 // Fetch new items if possible 200 if( cindex === $items.length && ! noMoreItems ){ 209 201 210 timer = setTimeout( function(){ 211 212 // Next one 213 start( cindex + 1 ); 214 202 if( isNoRepeatEnabled ){ 203 excluded.products = getExcludedProductsFromStorage(); 204 excluded.reviews = getExcludedReviewsFromStorage(); 205 excluded.custom = getExcludedCustomPopsFromStorage(); 206 } 207 208 getItems(excluded); 209 } 210 // Reset current index 211 else if( cindex === $items.length && noMoreItems ){ 212 213 // Clear excluded items 214 if( isNoRepeatEnabled ){ 215 216 clearLocalStorage(); 217 excluded.products = []; 218 excluded.reviews = []; 219 excluded.custom = []; 220 221 // Do not show any items, leave for the next reload 222 } 223 else{ 224 // First one 225 start( 1 ); 226 } 227 } 228 else{ 229 // Next one 230 start( cindex + 1 ); 231 } 232 215 233 }, intervalTime ); 216 217 234 }); 218 235 … … 378 395 */ 379 396 function getItems( excluded ){ 380 397 381 398 // Get items and create html nodes 382 399 ajax( 'get_items', { … … 385 402 386 403 if( ! response.hasOwnProperty( 'data' ) ) return; 387 if( response.data.length === 0 && isFirstGetItemsCall ) return; 388 389 isFirstGetItemsCall = false; 390 391 // No more items 404 if( response.data === '' ) return; 405 if( response.data.length === 0 && $items.length === 0 ) return; 406 407 // No more popups, let's show the first 1 392 408 if( response.data.length === 0 ){ 393 394 if( isNoRepeatEnabled ){ 395 clearLocalStorage(); 396 } 397 398 excluded.products = []; 399 excluded.reviews = []; 400 excluded.custom = []; 401 402 getItems(excluded); 403 } 404 405 if( localStorage.getItem('woomotiv_pause_date_' + woomotivObj.site_hash ) ){ 406 var pause_date = new Date( localStorage.getItem('woomotiv_pause_date_' + woomotivObj.site_hash ) ); 407 408 if( pause_date > new Date() ){ 409 return; 410 } 411 } 412 413 // Remove the old ones 414 if( items ){ 415 items.remove(); 416 } 417 418 // Add the new ones 419 response.data.map(function( item ){ 420 body.append( item.markup ); 409 noMoreItems = true; 410 start(1); 411 return; 412 } 413 414 // Add the new popups to the body 415 response.data.map(function( itemData ){ 416 417 var $item = $(itemData.markup); 418 419 $item.attr('data-index', $items.length + 1); 420 421 // Add to body 422 body.append( $item ); 423 $items.push( $item ); 424 425 // New items events 426 $item.on( 'mouseenter', function( e ){ 427 $(this).off( tEndEvent ); 428 clearTimeout( timer ); 429 clearTimeout( secTimer ); 430 cancelAnimationFrame(requestAnimID); 431 }); 432 433 $item.on( 'mouseleave', function( event ){ 434 435 var $this = $('.woomotiv-popup.wmt-current'); 436 var index = parseInt($this.attr('data-index')); 437 var halftime = parseInt( hideTime / 2 ); 438 439 if( index === undefined ) return; 440 441 setTimeout(function(){ 442 443 $this.removeClass('wmt-current'); 444 445 }, halftime ); 446 447 setTimeout( function (){ 448 449 requestAnimID = requestAnimationFrame( function(){ 450 start( index + 1 ); 451 }); 452 453 }, ( hideTime + hideTime ) ); 454 455 }); 456 457 $item.find('.woomotiv-close').on( 'click', function( event ){ 458 event.preventDefault(); 459 $('.woomotiv-popup').remove(); 460 localStorage.setItem('woomotiv_pause_date_' + woomotivObj.site_hash , dateAdd( new Date(), 'minute', 10 ) ); 461 }); 462 463 // Stats Update 464 $item.on( 'click', function( event ){ 465 466 event.preventDefault(); 467 468 var self = $(this); 469 var data = {}; 470 471 if( self.data('type') === 'product' ){ 472 data.type = 'product'; 473 data.product_id = self.data('product'); 474 } 475 else if( self.data('type') === 'review' ){ 476 data.type = 'review'; 477 data.product_id = self.data('product'); 478 } 479 else{ 480 data.type = 'custom'; 481 data.id = self.data('id'); 482 } 483 484 ajax( 'update_stats', data ).done(function( response ){ 485 486 if( woomotivObj.disable_link != 1 ){ 487 location.href = self.find('.woomotiv-link').attr('href'); 488 } 489 490 }); 491 492 }); 421 493 }); 422 423 items = $('.woomotiv-popup');424 494 425 495 // show time … … 427 497 428 498 requestAnimID = requestAnimationFrame( function(){ 429 start( 0);499 start( currentIndex + 1 ); 430 500 }); 431 501 432 502 }, parseInt( intervalTime / 2 ) ); 433 434 // New items events435 items.on( 'mouseenter', function( e ){436 $(this).off( tEndEvent );437 clearTimeout( timer );438 clearTimeout( secTimer );439 cancelAnimationFrame(requestAnimID);440 });441 442 items.on( 'mouseleave', function( event ){443 444 var item = items.filter('.wmt-current');445 var index = item.data('index');446 var halftime = parseInt( hideTime / 2 );447 448 if( index === undefined ) return;449 450 setTimeout(function(){451 452 item.removeClass('wmt-current');453 454 }, halftime );455 456 setTimeout( function (){457 458 requestAnimID = requestAnimationFrame( function(){459 start( item.data('index') + 1 );460 });461 462 }, ( hideTime + hideTime ) );463 464 });465 466 items.find('.woomotiv-close').on( 'click', function( event ){467 items.remove();468 localStorage.setItem('woomotiv_pause_date_' + woomotivObj.site_hash , dateAdd( new Date(), 'minute', 30 ) );469 });470 471 // Stats Update472 items.on( 'click', function( event ){473 474 event.preventDefault();475 476 var self = $(this);477 var data = {};478 479 if( self.data('type') === 'product' ){480 data.type = 'product';481 data.product_id = self.data('product');482 }483 else if( self.data('type') === 'review' ){484 data.type = 'review';485 data.product_id = self.data('product');486 }487 else{488 data.type = 'custom';489 data.id = self.data('id');490 }491 492 ajax( 'update_stats', data ).done(function( response ){493 494 if( woomotivObj.disable_link != 1 ){495 location.href = self.find('.woomotiv-link').attr('href');496 }497 498 });499 500 });501 503 502 504 }); … … 515 517 516 518 // Show time 517 getItems(excluded); 519 if( localStorage.getItem('woomotiv_pause_date_' + woomotivObj.site_hash ) ){ 520 var pause_date = new Date( localStorage.getItem('woomotiv_pause_date_' + woomotivObj.site_hash ) ); 521 522 if( pause_date > new Date() ){ 523 return; 524 } 525 else{ 526 getItems(excluded); 527 } 528 } 529 else{ 530 getItems(excluded); 531 } 518 532 519 533 })( jQuery ); -
woomotiv/trunk/js/front.min.js
r2536058 r2536098 1 !function( o){o(window);var i,a,n=o("body"),r=woomotivObj.nonce,s=woomotivObj.ajax_url,m=!0,c=!1,d=!1,l=1e3*parseInt(woomotivObj.interval),f=1e3*parseInt(woomotivObj.hide),u=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame,w=window.cancelAnimationFrame||window.mozCancelAnimationFrame,p={products:[],reviews:[],custom:[]},v=1===parseInt(woomotivObj.is_no_repeat_enabled)&&1===parseInt(woomotivObj.is_premium)?1:0,b="woomotiv_seen_products_"+woomotivObj.site_hash,h="woomotiv_seen_reviews_"+woomotivObj.site_hash,_="woomotiv_seen_custompop_"+woomotivObj.site_hash,t=function(){var t,e=document.createElement("fakeelement"),o={transition:"transitionend",OTransition:"oTransitionEnd",MozTransition:"transitionend",WebkitTransition:"webkitTransitionEnd"};for(t in o)if(void 0!==e.style[t])return o[t]}(),e=function(){var t,e=document.createElement("fakeelement"),o={animation:"animationend",OAnimation:"oAnimationEnd",MozAnimation:"animationend",WebkitAnimation:"webkitAnimationEnd"};for(t in o)if(void 0!==e.style[t])return o[t]}(),g=(function(){var t,e=document.createElement("fakeelement"),o={transition:"transitionstart",OTransition:"oTransitionStart",MozTransition:"transitionstart",WebkitTransition:"webkitTransitionStart"};for(t in o)if(void 0!==e.style[t])return}(),function(){var t,e=document.createElement("fakeelement"),o={animation:"animationstart",OAnimation:"oAnimationStart",MozAnimation:"animationstart",WebkitAnimation:"webkitAnimationStart"};for(t in o)if(void 0!==e.style[t])return}(),["fade","slideup","slidedown","slideright","slideleft"]),k=(g.indexOf(woomotivObj.animation),-1!=g.indexOf(woomotivObj.animation)?t:e);function O(t,e){return(e="object"==typeof e?e:{}).action="woomotiv_"+t,e.hasOwnProperty("nonce")||(e.nonce=r),o.ajax({type:"POST",url:s,data:e})}function T(m){m=parseInt(m),i.eq(m).length||(v&&(p.products=j(),p.reviews=I(),p.custom=y()),A(p));var u=i.eq(m);u.addClass("wmt-current"),u.one(k,function(){var e,o,n,t,i,a,r,s;u.is('[data-type="product"]')?(a=parseInt(u.attr("data-orderitemid")),p.products=p.products.filter(function(t){return t!=a}),p.products.push(a),v&&(r=j(),s=!1,r.map(function(t){t==a&&(s=!0)}),s||(r.push(a),localStorage.setItem(b,r.join(","))))):u.is('[data-type="review"]')?(n=parseInt(u.attr("data-review")),p.reviews=p.reviews.filter(function(t){return t!=n}),p.reviews.push(n),v&&(t=I(),i=!1,t.map(function(t){t==n&&(i=!0)}),i||(t.push(n),localStorage.setItem(h,t.join(","))))):u.is('[data-type="custom"]')&&(e=parseInt(u.attr("data-id")),p.custom=p.custom.filter(function(t){return t!=e}),p.custom.push(e),v&&(t=y(),o=!1,t.map(function(t){t==e&&(o=!0)}),o||(t.push(e),localStorage.setItem(_,t.join(","))))),d=setTimeout(function(){u.removeClass("wmt-current"),u.one(k,function(){c=setTimeout(function(){T(m+1)},l)})},f)})}function j(){var t=localStorage.getItem(b);return(t=t?t.split(","):[]).filter(function(t){return""!==t})}function I(){var t=localStorage.getItem(h);return(t=t?t.split(","):[]).filter(function(t){return""!==t})}function y(){var t=localStorage.getItem(_);return(t=t?t.split(","):[]).filter(function(t){return""!==t})}function S(){localStorage.removeItem(b),localStorage.removeItem(h),localStorage.removeItem(_)}function A(e){O("get_items",{excluded:e}).done(function(t){if(t.hasOwnProperty("data")&&(0!==t.data.length||!m)){if(m=!1,0===t.data.length&&(v&&S(),e.products=[],e.reviews=[],e.custom=[],A(e)),localStorage.getItem("woomotiv_pause_date_"+woomotivObj.site_hash))if(new Date(localStorage.getItem("woomotiv_pause_date_"+woomotivObj.site_hash))>new Date)return;i&&i.remove(),t.data.map(function(t){n.append(t.markup)}),i=o(".woomotiv-popup"),setTimeout(function(){a=u(function(){T(0)})},parseInt(l/2)),i.on("mouseenter",function(t){o(this).off(k),clearTimeout(c),clearTimeout(d),w(a)}),i.on("mouseleave",function(t){var e=i.filter(".wmt-current"),o=e.data("index"),n=parseInt(f/2);void 0!==o&&(setTimeout(function(){e.removeClass("wmt-current")},n),setTimeout(function(){a=u(function(){T(e.data("index")+1)})},f+f))}),i.find(".woomotiv-close").on("click",function(t){i.remove(),localStorage.setItem("woomotiv_pause_date_"+woomotivObj.site_hash,function(t,e,o){function n(){i.getDate()!=t.getDate()&&i.setDate(0)}var i=new Date(t);switch(e.toLowerCase()){case"year":i.setFullYear(i.getFullYear()+o),n();break;case"quarter":i.setMonth(i.getMonth()+3*o),n();break;case"month":i.setMonth(i.getMonth()+o),n();break;case"week":i.setDate(i.getDate()+7*o);break;case"day":i.setDate(i.getDate()+o);break;case"hour":i.setTime(i.getTime()+36e5*o);break;case"minute":i.setTime(i.getTime()+6e4*o);break;case"second":i.setTime(i.getTime()+1e3*o);break;default:i=void 0}return i}(new Date,"minute",30))}),i.on("click",function(t){t.preventDefault();var e=o(this),t={};"product"===e.data("type")?(t.type="product",t.product_id=e.data("product")):"review"===e.data("type")?(t.type="review",t.product_id=e.data("product")):(t.type="custom",t.id=e.data("id")),O("update_stats",t).done(function(t){1!=woomotivObj.disable_link&&(location.href=e.find(".woomotiv-link").attr("href"))})})}})}v?(p.products=j(),p.reviews=I(),p.custom=y()):S(),A(p)}(jQuery);1 !function(i){var a,e=i("body"),o=woomotivObj.nonce,n=woomotivObj.ajax_url,r=0,c=!1,d=[],l=!1,f=!1,p=1e3*parseInt(woomotivObj.interval),w=1e3*parseInt(woomotivObj.hide),s=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame,m=window.cancelAnimationFrame||window.mozCancelAnimationFrame,v={products:[],reviews:[],custom:[]},h=1===parseInt(woomotivObj.is_no_repeat_enabled)&&1===parseInt(woomotivObj.is_premium)?1:0,b="woomotiv_seen_products_"+woomotivObj.site_hash,g="woomotiv_seen_reviews_"+woomotivObj.site_hash,_="woomotiv_seen_custompop_"+woomotivObj.site_hash,t=function(){var t,e=document.createElement("fakeelement"),o={transition:"transitionend",OTransition:"oTransitionEnd",MozTransition:"transitionend",WebkitTransition:"webkitTransitionEnd"};for(t in o)if(void 0!==e.style[t])return o[t]}(),u=function(){var t,e=document.createElement("fakeelement"),o={animation:"animationend",OAnimation:"oAnimationEnd",MozAnimation:"animationend",WebkitAnimation:"webkitAnimationEnd"};for(t in o)if(void 0!==e.style[t])return o[t]}(),k=(function(){var t,e=document.createElement("fakeelement"),o={transition:"transitionstart",OTransition:"oTransitionStart",MozTransition:"transitionstart",WebkitTransition:"webkitTransitionStart"};for(t in o)if(void 0!==e.style[t])return}(),function(){var t,e=document.createElement("fakeelement"),o={animation:"animationstart",OAnimation:"oAnimationStart",MozAnimation:"animationstart",WebkitAnimation:"webkitAnimationStart"};for(t in o)if(void 0!==e.style[t])return}(),["fade","slideup","slidedown","slideright","slideleft"]),O=(k.indexOf(woomotivObj.animation),-1!=k.indexOf(woomotivObj.animation)?t:u);function T(t,e){return(e="object"==typeof e?e:{}).action="woomotiv_"+t,e.hasOwnProperty("nonce")||(e.nonce=o),i.ajax({type:"POST",url:n,data:e})}function I(m){m=parseInt(m);var u=d[(r=m)-1];u.addClass("wmt-current"),u.one(O,function(){var e,o,n,t,i,a,r,s;u.is('[data-type="product"]')?(a=parseInt(u.attr("data-orderitemid")),v.products=v.products.filter(function(t){return t!=a}),v.products.push(a),h&&(r=j(),s=!1,r.map(function(t){t==a&&(s=!0)}),s||(r.push(a),localStorage.setItem(b,r.join(","))))):u.is('[data-type="review"]')?(n=parseInt(u.attr("data-review")),v.reviews=v.reviews.filter(function(t){return t!=n}),v.reviews.push(n),h&&(t=y(),i=!1,t.map(function(t){t==n&&(i=!0)}),i||(t.push(n),localStorage.setItem(g,t.join(","))))):u.is('[data-type="custom"]')&&(e=parseInt(u.attr("data-id")),v.custom=v.custom.filter(function(t){return t!=e}),v.custom.push(e),h&&(t=S(),o=!1,t.map(function(t){t==e&&(o=!0)}),o||(t.push(e),localStorage.setItem(_,t.join(","))))),f=setTimeout(function(){u.removeClass("wmt-current"),u.one(O,function(){l=setTimeout(function(){m!==d.length||c?m===d.length&&c?h?(A(),v.products=[],v.reviews=[],v.custom=[]):I(1):I(m+1):(h&&(v.products=j(),v.reviews=y(),v.custom=S()),D(v))},p)})},w)})}function j(){var t=localStorage.getItem(b);return(t=t?t.split(","):[]).filter(function(t){return""!==t})}function y(){var t=localStorage.getItem(g);return(t=t?t.split(","):[]).filter(function(t){return""!==t})}function S(){var t=localStorage.getItem(_);return(t=t?t.split(","):[]).filter(function(t){return""!==t})}function A(){localStorage.removeItem(b),localStorage.removeItem(g),localStorage.removeItem(_)}function D(t){T("get_items",{excluded:t}).done(function(t){if(t.hasOwnProperty("data")&&""!==t.data&&(0!==t.data.length||0!==d.length)){if(0===t.data.length)return c=!0,void I(1);t.data.map(function(t){t=i(t.markup);t.attr("data-index",d.length+1),e.append(t),d.push(t),t.on("mouseenter",function(t){i(this).off(O),clearTimeout(l),clearTimeout(f),m(a)}),t.on("mouseleave",function(t){var e=i(".woomotiv-popup.wmt-current"),o=parseInt(e.attr("data-index")),n=parseInt(w/2);void 0!==o&&(setTimeout(function(){e.removeClass("wmt-current")},n),setTimeout(function(){a=s(function(){I(o+1)})},w+w))}),t.find(".woomotiv-close").on("click",function(t){t.preventDefault(),i(".woomotiv-popup").remove(),localStorage.setItem("woomotiv_pause_date_"+woomotivObj.site_hash,function(t,e,o){function n(){i.getDate()!=t.getDate()&&i.setDate(0)}var i=new Date(t);switch(e.toLowerCase()){case"year":i.setFullYear(i.getFullYear()+o),n();break;case"quarter":i.setMonth(i.getMonth()+3*o),n();break;case"month":i.setMonth(i.getMonth()+o),n();break;case"week":i.setDate(i.getDate()+7*o);break;case"day":i.setDate(i.getDate()+o);break;case"hour":i.setTime(i.getTime()+36e5*o);break;case"minute":i.setTime(i.getTime()+6e4*o);break;case"second":i.setTime(i.getTime()+1e3*o);break;default:i=void 0}return i}(new Date,"minute",10))}),t.on("click",function(t){t.preventDefault();var e=i(this),t={};"product"===e.data("type")?(t.type="product",t.product_id=e.data("product")):"review"===e.data("type")?(t.type="review",t.product_id=e.data("product")):(t.type="custom",t.id=e.data("id")),T("update_stats",t).done(function(t){1!=woomotivObj.disable_link&&(location.href=e.find(".woomotiv-link").attr("href"))})})}),setTimeout(function(){a=s(function(){I(r+1)})},parseInt(p/2))}})}h?(v.products=j(),v.reviews=y(),v.custom=S()):A(),localStorage.getItem("woomotiv_pause_date_"+woomotivObj.site_hash)&&new Date(localStorage.getItem("woomotiv_pause_date_"+woomotivObj.site_hash))>new Date||D(v)}(jQuery); -
woomotiv/trunk/lib/class-backend.php
r2321335 r2536098 186 186 ); 187 187 188 $panel->addTab(189 __('Discover','woomotiv') . '<span style="background: orange;">3</span>',190 'discover',191 woomotiv()->dir . '/views/tabs/discover.php'192 );188 // $panel->addTab( 189 // __('Discover','woomotiv') . '<span style="background: orange;">3</span>', 190 // 'discover', 191 // woomotiv()->dir . '/views/tabs/discover.php' 192 // ); 193 193 194 194 $panel->addTab( -
woomotiv/trunk/lib/class-frontend.php
r2536058 r2536098 326 326 327 327 $output = ' 328 <div data-orderitemid="' . $notification['popup']['order_item_id'] . '" data-i ndex="' .$index. '" data-id="' . $notification['popup']['product']['id'] . '" data-type="product" data-product="' .$notification['popup']['product']['id']. '" class="woomotiv-popup wmt-index-' .$index. '" data-size="' .$this->popup_size. '" data-shape="' .$this->popup_shape. '" data-animation="' .$this->popup_animation. '" data-position="' .$this->popup_position. '" data-hideonmobile="' .$this->popup_hide_on_mobile. '">328 <div data-orderitemid="' . $notification['popup']['order_item_id'] . '" data-id="' . $notification['popup']['product']['id'] . '" data-type="product" data-product="' .$notification['popup']['product']['id']. '" class="woomotiv-popup" data-size="' .$this->popup_size. '" data-shape="' .$this->popup_shape. '" data-animation="' .$this->popup_animation. '" data-position="' .$this->popup_position. '" data-hideonmobile="' .$this->popup_hide_on_mobile. '"> 329 329 <div class="woomotiv-image" >' . $image . '</div> 330 330 <p> … … 358 358 359 359 $output = ' 360 <div data- index="' .$index. '" data-review="' . $notification['popup']['id'] . '" data-type="review" data-product="' .$notification['popup']['product']['id']. '" class="woomotiv-popup wmt-index-' .$index. '" data-size="' .$this->popup_size. '" data-shape="' .$this->popup_shape. '" data-animation="' .$this->popup_animation. '" data-position="' .$this->popup_position. '" data-hideonmobile="' .$this->popup_hide_on_mobile. '">360 <div data-review="' . $notification['popup']['id'] . '" data-type="review" data-product="' .$notification['popup']['product']['id']. '" class="woomotiv-popup " data-size="' .$this->popup_size. '" data-shape="' .$this->popup_shape. '" data-animation="' .$this->popup_animation. '" data-position="' .$this->popup_position. '" data-hideonmobile="' .$this->popup_hide_on_mobile. '"> 361 361 <div class="woomotiv-image" >' . $image . '</div> 362 362 <p> … … 388 388 389 389 $output = ' 390 <div data- index="' .$index. '" data-type="custom" data-id="' .$notification['popup']['id']. '" class="woomotiv-popup wmt-index-' .$index. '" data-size="' .$this->popup_size. '" data-shape="' .$this->popup_shape. '" data-animation="' .$this->popup_animation. '" data-position="' .$this->popup_position. '" data-hideonmobile="' .$this->popup_hide_on_mobile. '">390 <div data-type="custom" data-id="' .$notification['popup']['id']. '" class="woomotiv-popup" data-size="' .$this->popup_size. '" data-shape="' .$this->popup_shape. '" data-animation="' .$this->popup_animation. '" data-position="' .$this->popup_position. '" data-hideonmobile="' .$this->popup_hide_on_mobile. '"> 391 391 <div class="woomotiv-image" > 392 392 ' .$notification['popup']['image']. ' -
woomotiv/trunk/readme.txt
r2536058 r2536098 3 3 Requires at least: 4.6 4 4 Tested up to: 5.7.0 5 Stable tag: 3.2. 05 Stable tag: 3.2.1 6 6 Requires PHP: 5.6 7 7 Tags: woocommerce notification, woocommerce sales notification, woocommerce sales popup, marketing, boost sales, boost conversion … … 101 101 == Changelog == 102 102 103 = 3.2.1 = 104 105 * Fixed DDOS issue 106 103 107 = 3.2.0 = 104 108 -
woomotiv/trunk/views/tabs/report.php
r2064950 r2536098 1 1 <?php 2 2 3 use WooMotiv\Framework\Helper ; 3 4 use WooMotiv\Framework\HTML ; 4 5 use function WooMotiv\days_in_month ;
Note: See TracChangeset
for help on using the changeset viewer.