ad-list
1 year ago
conditions
1 year ago
notices
1 year ago
upgrades
1 year ago
ad-conditions-string-operators.php
1 year ago
checks.php
1 year ago
frontend-picker-script.php
5 years ago
index.php
7 years ago
modal.php
1 year ago
overview-addons-line.php
6 years ago
overview-notice-row.php
1 year ago
overview-widget.php
1 year ago
placement-form.php
1 year ago
placement-injection-top.php
1 year ago
placement-types.php
3 years ago
placements-ad-label.php
1 year ago
placements-content-index.php
1 year ago
placements-inline-css.php
1 year ago
placements-item.php
1 year ago
post-list-filter-dropdown.php
3 years ago
setting-license.php
1 year ago
support-callout.php
1 year ago
support.php
1 year ago
frontend-picker-script.php
81 lines
| 1 | <script> |
| 2 | jQuery( document ).ready( function(){ |
| 3 | // set element from frontend into placement input field |
| 4 | if( localStorage.getItem( 'advads_frontend_element' )){ |
| 5 | var placement = localStorage.getItem( 'advads_frontend_picker' ); |
| 6 | var id = 'advads-frontend-element-' + placement; |
| 7 | jQuery( '[id="' + id + '"]' ).find( '.advads-frontend-element' ).val( localStorage.getItem( 'advads_frontend_element' ) ); |
| 8 | |
| 9 | var action = localStorage.getItem( 'advads_frontend_action' ); |
| 10 | if (typeof(action) !== 'undefined'){ |
| 11 | var show_all_link = jQuery( 'a[data-placement="' + placement + '"]'); |
| 12 | var tr = jQuery( show_all_link ).closest( 'tr.advanced-ads-placement-row' ) |
| 13 | if ( tr ) { |
| 14 | tr.data( 'touched', true ) |
| 15 | } |
| 16 | |
| 17 | // Auto-save the placement after selecting an element in the frontend. |
| 18 | var param = { |
| 19 | action: 'advads-update-frontend-element', |
| 20 | nonce: advadsglobal.ajax_nonce, |
| 21 | } |
| 22 | var $form = jQuery( '#advanced-ads-placements-form' ); |
| 23 | var query = $form.find( '[id="single-placement-' + placement + '"]' ).find( 'input, select' ) |
| 24 | .serialize() + '&' + jQuery.param( param ); |
| 25 | |
| 26 | $form.find( ':submit' ).attr( 'disabled', true ); |
| 27 | jQuery.post( ajaxurl, query ).always( function() { |
| 28 | $form.find( ':submit' ).attr( 'disabled', false ); |
| 29 | } ); |
| 30 | } |
| 31 | localStorage.removeItem( 'advads_frontend_action' ); |
| 32 | localStorage.removeItem( 'advads_frontend_element' ); |
| 33 | localStorage.removeItem( 'advads_frontend_picker' ); |
| 34 | localStorage.removeItem( 'advads_prev_url' ); |
| 35 | localStorage.removeItem( 'advads_frontend_pathtype' ); |
| 36 | localStorage.removeItem( 'advads_frontend_boundary' ); |
| 37 | localStorage.removeItem( 'advads_frontend_blog_id' ); |
| 38 | localStorage.removeItem( 'advads_frontend_starttime' ); |
| 39 | window.Advanced_Ads_Admin.set_cookie( 'advads_frontend_picker', '', -1 ); |
| 40 | } |
| 41 | jQuery('.advads-activate-frontend-picker').click(function( e ){ |
| 42 | localStorage.setItem( 'advads_frontend_picker', jQuery( this ).data('placementid') ); |
| 43 | localStorage.setItem( 'advads_frontend_action', jQuery( this ).data('action') ); |
| 44 | localStorage.setItem( 'advads_prev_url', window.location ); |
| 45 | |
| 46 | localStorage.setItem( 'advads_frontend_pathtype', jQuery( this ).data('pathtype') ); |
| 47 | localStorage.setItem( 'advads_frontend_boundary', jQuery( this ).data('boundary') ); |
| 48 | localStorage.setItem( 'advads_frontend_blog_id', <?php echo get_current_blog_id(); ?> ); |
| 49 | localStorage.setItem( 'advads_frontend_starttime', (new Date).getTime() ); |
| 50 | window.Advanced_Ads_Admin.set_cookie( 'advads_frontend_picker', jQuery( this ).data('placementid'), null ); |
| 51 | |
| 52 | if ( jQuery( this ).data( 'boundary' ) ) { |
| 53 | /** |
| 54 | * The boundary is set for the "Content" placement. |
| 55 | * Perhaps ads through `the_content` are disabled on non-singular pages, so use a singular one. |
| 56 | */ |
| 57 | window.location = "<?php echo $this->get_url_for_content_placement_picker(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>"; |
| 58 | } else { |
| 59 | window.location = "<?php echo home_url(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>"; |
| 60 | } |
| 61 | }); |
| 62 | // allow to deactivate frontend picker |
| 63 | if ( localStorage.getItem( 'advads_frontend_picker' ) ) { |
| 64 | var id = 'advads-frontend-element-' + localStorage.getItem( 'advads_frontend_picker' ); |
| 65 | jQuery( '[id="' + id + '"]' ).find( '.advads-deactivate-frontend-picker' ).show(); |
| 66 | } |
| 67 | jQuery( '.advads-deactivate-frontend-picker' ).click( function( e ) { |
| 68 | localStorage.removeItem( 'advads_frontend_action' ); |
| 69 | localStorage.removeItem( 'advads_frontend_element' ); |
| 70 | localStorage.removeItem( 'advads_frontend_picker' ); |
| 71 | localStorage.removeItem( 'advads_prev_url' ); |
| 72 | localStorage.removeItem( 'advads_frontend_pathtype' ); |
| 73 | localStorage.removeItem( 'advads_frontend_boundary' ); |
| 74 | localStorage.removeItem( 'advads_frontend_blog_id' ); |
| 75 | localStorage.removeItem( 'advads_frontend_starttime' ); |
| 76 | window.Advanced_Ads_Admin.set_cookie( 'advads_frontend_picker', '', -1 ); |
| 77 | jQuery('.advads-deactivate-frontend-picker').hide(); |
| 78 | }); |
| 79 | }); |
| 80 | </script> |
| 81 |