templates
1 year ago
SendinblueAccount.php
1 year ago
SendinblueApiClient.php
1 year ago
function.wp_mail.php
8 years ago
http-build-url.php
1 year ago
index.php
8 years ago
mailin.php
3 years ago
push-admin.php
1 year ago
push-amp.php
1 year ago
push-api.php
1 year ago
push-httpclient.php
1 year ago
push-public.php
1 year ago
push-settings.php
1 year ago
push-utils.php
1 year ago
push-woocommerce.php
1 year ago
sendinblue.php
3 years ago
sib-api-manager.php
1 year ago
sib-form-preview.php
2 years ago
sib-sms-code.php
3 years ago
table-forms.php
1 year ago
push-amp.php
73 lines
| 1 | <?php |
| 2 | if (!defined( 'ABSPATH' )) { http_response_code(403); exit(); } |
| 3 | |
| 4 | if ( ! class_exists( 'SIB_Push_Amp' ) ) { |
| 5 | class SIB_Push_Amp { |
| 6 | /** |
| 7 | * @return string |
| 8 | */ |
| 9 | static function snippet() { |
| 10 | if (!SIB_Push_Utils::is_push_active()) return ''; |
| 11 | try { |
| 12 | $app = SIB_Push_Utils::get_push_application(); |
| 13 | } catch ( Exception $e ) { |
| 14 | SIB_Push_Utils::log_error('Could not get application', $e); |
| 15 | return ''; |
| 16 | } |
| 17 | $web_key = $app ? $app->getWebKey() : null; |
| 18 | if (!$web_key) return ''; |
| 19 | $url = plugin_dir_url( realpath(__DIR__ . '/../wonderpush.min.html') ); |
| 20 | return <<<EOT |
| 21 | <amp-web-push |
| 22 | id="amp-web-push" |
| 23 | layout="nodisplay" |
| 24 | helper-iframe-url="{$url}wonderpush.min.html?wonderpushWebKey={$web_key}&=frame" |
| 25 | permission-dialog-url="{$url}wonderpush.min.html?wonderpushWebKey={$web_key}&=dialog" |
| 26 | service-worker-url="{$url}wonderpush-worker-loader.min.js?webKey={$web_key}" |
| 27 | ></amp-web-push> |
| 28 | EOT; |
| 29 | } |
| 30 | static function widget() { |
| 31 | |
| 32 | $settings = SIB_Push_Settings::getSettings(); |
| 33 | |
| 34 | // Subscribe button label |
| 35 | $subscribeButtonLabel = $settings->getAmpSubscribeButtonLabel(); |
| 36 | if ( !$subscribeButtonLabel ) $subscribeButtonLabel = __( 'Subscribe to news updates', 'mailin' ); |
| 37 | // Unsubscribe button label |
| 38 | $unsubscribeButtonLabel = $settings->getAmpUnsubscribeButtonLabel(); |
| 39 | if ( !$unsubscribeButtonLabel ) $unsubscribeButtonLabel = __( 'Unsubscribe from news updates', 'mailin' ); |
| 40 | // Button width |
| 41 | $width = $settings->getAmpButtonWidth(); |
| 42 | if ( !$width ) $width = 250; |
| 43 | // Button height |
| 44 | $height = $settings->getAmpButtonHeight(); |
| 45 | if ( !$height ) $height = 45; |
| 46 | $heightMinus1 = $height - 1; |
| 47 | $unsubscribe = SIB_Push_Settings::getSettings()->getDisableAmpUnsubscribe() ? '' : <<<EOT |
| 48 | <amp-web-push-widget visibility="subscribed" layout="fixed" width="{$width}" height="{$height}"> |
| 49 | <button class="unsubscribe" style="height:{$heightMinus1}px" on="tap:amp-web-push.unsubscribe">{$unsubscribeButtonLabel}</button> |
| 50 | </amp-web-push-widget> |
| 51 | EOT; |
| 52 | return <<<EOT |
| 53 | <div class="sib-amp-web-push-container" style="width: {$width}px"> |
| 54 | <amp-web-push-widget visibility="unsubscribed" layout="fixed" width="{$width}" height="{$height}"> |
| 55 | <button class="subscribe" style="height: {$heightMinus1}px" on="tap:amp-web-push.subscribe"> |
| 56 | <amp-img |
| 57 | class="subscribe-icon" |
| 58 | width="24" |
| 59 | height="24" |
| 60 | layout="fixed" |
| 61 | src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iNjBweCIgaGVpZ2h0PSI2MHB4IiB2aWV3Qm94PSIwIDAgNjAgNjAiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDQ5LjMgKDUxMTY3KSAtIGh0dHA6Ly93d3cuYm9oZW1pYW5jb2RpbmcuY29tL3NrZXRjaCAtLT4KICAgIDx0aXRsZT5MYXllciAxPC90aXRsZT4KICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogICAgPGRlZnM+PC9kZWZzPgogICAgPGcgaWQ9IlBhZ2UtMSIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IkN1c3RvbS1QcmVzZXQtMiIgZmlsbD0iI0ZGRkZGRiIgZmlsbC1ydWxlPSJub256ZXJvIj4KICAgICAgICAgICAgPGcgaWQ9IkxheWVyLTEiPgogICAgICAgICAgICAgICAgPHBhdGggZD0iTTQ5LjY0MDYyNSwyNS4yODg5NzIyIEM0OS42NDA2MjUsMTAuMDQzNzM2MyA0MS40Mzc1LDQuODU3ODU2OTIgMzMuNzY1NjI1LDMuNzAxOTY4MTMgQzMzLjc2NTYyNSwzLjYyMzg2NzU0IDMzLjc4MTI1LDMuNTQ1NzY2OTUgMzMuNzgxMjUsMy40NTIwNDYyNCBDMzMuNzgxMjUsMS41MzA3NzE2MyAzMi4wNzgxMjUsMCAzMCwwIEMyNy45MjE4NzUsMCAyNi4yODEyNSwxLjUzMDc3MTYzIDI2LjI4MTI1LDMuNDUyMDQ2MjQgQzI2LjI4MTI1LDMuNTQ1NzY2OTUgMjYuMjgxMjUsMy42MjM4Njc1NCAyNi4yOTY4NzUsMy43MDE5NjgxMyBDMTguNjA5Mzc1LDQuODczNDc3MDQgMTAuMzU5Mzc1LDEwLjA3NDk3NjYgMTAuMzU5Mzc1LDI1LjMyMDIxMjQgQzEwLjM1OTM3NSw0My4wOTU5MDc1IDUuOTM3NSw0NS4wMDE1NjIgMCw1MCBMNjAsNTAgQzU0LjA5Mzc1LDQ0Ljk4NTk0MTkgNDkuNjQwNjI1LDQzLjA2NDY2NzMgNDkuNjQwNjI1LDI1LjI4ODk3MjIgWiIgaWQ9InN2Z18yIj48L3BhdGg+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMzAuNSw2MCBDMzQuOTA2MTg5Niw2MCAzOC41MjMyMTA4LDU2Ljc2MDQ2NTEgMzksNTMgTDIyLDUzIEMyMi40NjAzNDgyLDU2Ljc2MDQ2NTEgMjYuMDkzODEwNCw2MCAzMC41LDYwIFoiIGlkPSJzdmdfMyI+PC9wYXRoPgogICAgICAgICAgICA8L2c+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4="> |
| 62 | </amp-img> |
| 63 | {$subscribeButtonLabel} |
| 64 | </button> |
| 65 | </amp-web-push-widget> |
| 66 | {$unsubscribe} |
| 67 | </div> |
| 68 | EOT; |
| 69 | |
| 70 | } |
| 71 | } |
| 72 | } |
| 73 |