Changeset 2532317
- Timestamp:
- 05/15/2021 09:25:11 PM (5 years ago)
- Location:
- elastic-email-sender/trunk
- Files:
-
- 2 added
- 8 edited
-
class/ees_admin.php (modified) (7 diffs)
-
dist/ees_admin.min.css (modified) (1 diff)
-
dist/ees_sendTest.min.js (modified) (1 diff)
-
elasticemailsender.php (modified) (3 diffs)
-
readme.txt (modified) (5 diffs)
-
src/img/icon-ok.svg (added)
-
src/img/icon-warning.svg (added)
-
template/t-ees_admin.php (modified) (1 diff)
-
template/t-ees_marketing.php (modified) (2 diffs)
-
template/t-ees_sendtest.php (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
elastic-email-sender/trunk/class/ees_admin.php
r2434447 r2532317 59 59 wp_register_script('eesender-jquery', $plugin_path . '/lib/jquery.min.js', '', 3.3, true); 60 60 wp_register_script('eesender-chart-script', $plugin_path . '/lib/chart.min.js', '', 2.7, true); 61 wp_register_script('eesender-send-test', $plugin_path . '/dist/ees_sendTest.min.js', '', 1. 1, true);61 wp_register_script('eesender-send-test', $plugin_path . '/dist/ees_sendTest.min.js', '', 1.2, true); 62 62 wp_register_style('eesender-bootstrap-grid', $plugin_path . '/lib/bootstrap-grid.min.css', '', 4.1, false); 63 wp_register_style('eesender-css', $plugin_path . '/dist/ees_admin.min.css', '', 1. 1, false);63 wp_register_style('eesender-css', $plugin_path . '/dist/ees_admin.min.css', '', 1.2, false); 64 64 65 65 wp_localize_script('eesender-send-test', 'ees_localize_data', … … 78 78 try { 79 79 $accountAPI = new \ElasticEmailClient\Account(); 80 $statusToSendEmailAPI = new \ElasticEmailClient\Account();81 80 $error = null; 82 81 $account = $accountAPI->Load(); … … 85 84 $error = $e->getMessage(); 86 85 $account = array(); 87 $statusToSendEmail = [];88 86 } 89 87 … … 136 134 137 135 if (get_option('ee_accountemail') !== null) { 138 $status = 'A'; 139 $this->addToUserList($status); 136 $this->addToUserList('A'); 137 } 138 139 if (get_option('ee_is_created_channels') !== 'true') { 140 141 $channelsList = [ 142 'Elastic Email Sender', 143 'Elastic Email - Send Test', 144 ]; 145 146 foreach ($channelsList as $channelName) { 147 $this->addChannel($channelName); 148 } 149 150 add_option('ee_is_created_channels', true); 140 151 } 141 152 … … 143 154 return; 144 155 } 156 157 public function addChannel($name) 158 { 159 $this->initAPI(); 160 try { 161 $channelAPI = new \ElasticEmailClient\Channel(); 162 $error = null; 163 $channelAdd= $channelAPI->Add($name); 164 } catch (ElasticEmailClient\ApiException $e) { 165 $error = $e->getMessage(); 166 $channelAdd = []; 167 } 168 } 145 169 146 170 public function addToUserList($status) 147 171 { 172 $this->initAPI(); 148 173 try { 149 174 $addToUserListAPI = new \ElasticEmailClient\Contact(); 150 175 $error = null; 151 $sourceUrl = get_site_url();152 176 $addToUserList = $addToUserListAPI->Add('d0bcb758-a55c-44bc-927c-34f48d5db864', get_option('ee_accountemail'), ['55c8fa37-4c77-45d0-8675-0937d034c605'], [], $status, get_site_url(), null, null, null, null, null, false, null, null, [], null); 153 177 } catch (Exception $ex) { … … 215 239 $LogAPI_json = $LogAPI->Summary($from, $to, null, null, null); 216 240 217 if ($LogAPI_json ['data']['logstatussummary']['emailtotal'] !== null) {241 if ($LogAPI_json) { 218 242 $total = $LogAPI_json['data']['logstatussummary']['emailtotal']; 219 243 $delivered = $LogAPI_json['data']['logstatussummary']['delivered']; … … 230 254 $unsubscribed = 1; 231 255 } 232 233 256 } catch (ElasticEmailClient\ApiException $e) { 234 257 $error = $e->getMessage(); -
elastic-email-sender/trunk/dist/ees_admin.min.css
r2434447 r2532317 1 .eewp-evmab-frvvr{box-sizing:border-box}.eewp-evmab-frvvr [class*=col-]{padding-left:0;padding-right:0}.eewp-evmab-frvvr .eewp-container{width:100%;display:flex}.eewp-evmab-frvvr .eewp-container .ee-single-log{padding:4px 0;border-bottom:1px solid #677389}.eewp-evmab-frvvr .eewp-container .ee-single-log__empty{padding:4px 0;color:#449d44}.eewp-evmab-frvvr .ee-pagetitle{padding:10px 0}.eewp-evmab-frvvr .ee-marketing{padding:50px 60px 24px}.eewp-evmab-frvvr .ee-success{color:#449d44}.eewp-evmab-frvvr .ee-error{color:#cb2e25}.eewp-evmab-frvvr .ee-send-test-container .form-box .valid{display:block;color:#cb2e25}.eewp-evmab-frvvr h1{font-size:30px;color:#32325c;font-weight:400}.eewp-evmab-frvvr h2{font-size:18px;font-weight:400;color:#32325c}.eewp-evmab-frvvr h4{font-size:14px;font-weight:bolder;color:#32325c}.eewp-evmab-frvvr .ee-p{font-size:14px;font-weight:400;color:#677389}.eewp-evmab-frvvr .margin-p-xs{margin-top:2px;margin-bottom:2px;max-width:80%}.eewp-evmab-frvvr .settings-box-form{padding-top:30px;padding-bottom:30px}.eewp-evmab-frvvr .ee-header{position:relative}.eewp-evmab-frvvr .ee-logo{background:#fff;width:30px;height:30px;border-radius:30px;display:inline-block;line-height:38px;padding-left:5px}.eewp-evmab-frvvr .ee-account-status-active{color:#449d44}.eewp-evmab-frvvr .ee-account-status-deactive{color:#cb2e25}.eewp-evmab-frvvr .ee-reports-container{width:100%}.eewp-evmab-frvvr .ee-reports-list{padding-top:5%}.eewp-evmab-frvvr #canvas-holder{margin-left:auto;margin-right:auto}.eewp-evmab-frvvr .ee-report-table th{line-height:2;text-align:center;font-size:18px}.eewp-evmab-frvvr .ee-report-table td{line-height:3;text-align:center;font-size:18px}.eewp-evmab-frvvr .empty-chart{text-align:center;background-color:transparent;border:1px solid #f9c053}.eewp-evmab-frvvr .empty-chart img{width:360px}.eewp-evmab-frvvr .ee-alert-account{color:#cb2e25}.eewp-evmab-frvvr .ee-warning-account{color:#f9c053}.eewp-evmab-frvvr .ee-ok-account{color:#449d44}.eewp-evmab-frvvr .ee-standard-account{color:#444}.eewp-evmab-frvvr .ee-default-text{color:#ccc}.eewp-evmab-frvvr .ee-connect-alert{margin:30px auto;padding:20px;width:100%;background-color:#fbb}.eewp-evmab-frvvr .ee-connect-alert h1{font-size:14px;line-height:1.3;color:#3f3f3f}.eewp-evmab-frvvr .ee-select-form-box{padding-top:20px;padding-bottom:20px}.eewp-evmab-frvvr .ee-select-form{display:inline-block}.eewp-evmab-frvvr .ee-tooltip{position:relative;display:inline-block}.eewp-evmab-frvvr .ee-tooltip .ee-tooltiptext{visibility:hidden;width:400px;background-color:#555;color:#fff;border-radius:6px;padding:5px;position:absolute;z-index:1;bottom:125%;left:50%;margin-left:-60px;opacity:0;transition:opacity 1s}.eewp-evmab-frvvr .ee-tooltip .ee-tooltiptext:after{content:"";position:absolute;top:100%;left:15%;margin-left:-5px;border:5px solid transparent;border-top-color:#555}.eewp-evmab-frvvr .ee-tooltip:hover .ee-tooltiptext{visibility:visible;opacity:1}.eewp-evmab-frvvr .ee-tootlip-icon{width:14px;margin-bottom:-4px}.eewp-evmab-frvvr .ee-tooltiptext a{color:#fff}.eewp-evmab-frvvr .ee-title_small{font-weight:700}.eewp-evmab-frvvr input[type=text]{padding:0 8px;line-height:2;min-height:30px;box-shadow:0 0 0 transparent;border-radius:4px;border:1px solid #7e8993;background-color:#fff;color:#32373c;width:50%}.eewp-evmab-frvvr input[type=text]:focus{border-color:#007cba;box-shadow:0 0 0 1px #007cba;outline:2px solid transparent}.eewp-evmab-frvvr input[type=text]:disabled{background:#ebedef;color:#fff;cursor:not-allowed}.eewp-evmab-frvvr .form_success{color:#449d44}.eewp-evmab-frvvr .form_error{color:#cb2e25}.eewp-evmab-frvvr input[type=submit]:disabled{background:#ebedef;color:#fff;cursor:not-allowed}.eewp-evmab-frvvr .ee-checkbox{background-color:#fff;border:1px solid #ccc;border-radius:3px}.eewp-evmab-frvvr .ee-nopadding{padding:0}.eewp-evmab-frvvr .ee-colorsetter{min-height:148px;padding:0 5px 10px}.eewp-evmab-frvvr .ee-namelist{min-height:128px;padding:0 5px 10px}.eewp-evmab-frvvr .ee-checkboxlist{min-height:188px;padding:0 5px 10px}.eewp-evmab-frvvr .ee-newilstinput{min-height:154px;padding:0 5px 10px}.eewp-evmab-frvvr .ee-selectedlist{padding:0 5px 10px}.eewp-evmab-frvvr .ee-chceckboxlist{padding:4px 5px}.eewp-evmab-frvvr .ee-buttonpadding{height:100px;padding:32px 5px 18px 0}.eewp-evmab-frvvr .ee-containerfull{width:100%}.eewp-evmab-frvvr .ee-addedlist-success{color:#449d44;padding-top:22px;font-weight:700}.eewp-evmab-frvvr .ee-addedlist-warning{color:#f9c053;padding-top:22px;font-weight:700}.eewp-evmab-frvvr .ee-addedlist-info{color:#f9c053}.eewp-evmab-frvvr .ee-refrestlists{cursor:pointer}.eewp-evmab-frvvr .ee-colorsetterbox p{margin-top:2px;margin-bottom:2px}.eewp-evmab-frvvr .ee-clearfix{overflow:auto}.eewp-evmab-frvvr .ee-tablestyle{border-top:1px solid #fff;border-bottom:1px solid #fff;min-height:50px;overflow:hidden}.eewp-evmab-frvvr .form-control{margin-top:5px;margin-bottom:5px}.eewp-evmab-frvvr .ee-button-subscribe{padding-top:5px;padding-bottom:5px}.eewp-evmab-frvvr .ee-button-clean-log{cursor:pointer;color:#fff;background:#cb2e25;border-radius:4px;padding:3px 12px}.eewp-evmab-frvvr .ee-button-clean-log:hover{background-color:#b31108}.eewp-evmab-frvvr .ee-clean-log-box{display:flex;justify-content:end;padding:10px 0}.eewp-evmab-frvvr .ee-button-test{background-color:#2699fb;text-transform:uppercase;border:none;color:#fff;padding:15px;text-align:center;text-decoration:none;display:inline-block;font-size:14px;min-width:48px;cursor:pointer;line-height:0;border-radius:3px;min-height:28px}.eewp-evmab-frvvr .ee-button-test:hover{background-color:#5eaef3}.eewp-evmab-frvvr .error-email{line-height:1;margin:2px 6px}.eewp-evmab-frvvr .test-button-box{padding-top:25px}.eewp-evmab-frvvr .section-marketing{padding-top:10px;padding-bottom:10px}@media screen and (min-width:992px){.eewp-evmab-frvvr .form-control{width:45%}}@media screen and (max-width:991px){.eewp-evmab-frvvr .form-control{width:100%}}@media screen and (max-width:991px){.eewp-evmab-frvvr .ee-marketing{display:none}.eewp-evmab-frvvr .ee-line{border-right:none}}.eewp-evmab-frvvr #subscribe-inputs .form_error{color:#f33}.eewp-evmab-frvvr #ee-success{text-align:center;border:1px solid #449d44;padding:10px}.eewp-evmab-frvvr .text-center{text-align:center}.eewp-evmab-frvvr .text-left{text-align:left}.eewp-evmab-frvvr .text-right{text-align:right}.eewp-evmab-frvvr .status-more-info-bold{font-weight:700}.eewp-evmab-frvvr .table-slim th,.eewp-evmab-frvvr th{font-size:14px;font-weight:400;color:#282f37;padding:10px 5px}.eewp-evmab-frvvr .table-slim td,.eewp-evmab-frvvr td{padding:10px 20px;font-size:14px;font-weight:400;color:#4c535b}.eewp-evmab-frvvr .connection-error-container{padding-top:200px;text-align:center}.eewp-evmab-frvvr .ee-log-container,.eewp-evmab-frvvr .ee-send-test-container{width:100%;padding-top:10px;padding-bottom:10px}.eewp-evmab-frvvr .ee-log-container .test-description,.eewp-evmab-frvvr .ee-send-test-container .test-description{width:60%}.eewp-evmab-frvvr .form-group{padding-top:10px;padding-bottom:10px}.eewp-evmab-frvvr .form-group label{display:block;padding-top:5px;padding-bottom:5px}.eewp-evmab-frvvr .ee-send-test-container .form-group input[type=email],.eewp-evmab-frvvr .ee-send-test-container .form-group input[type=text],.eewp-evmab-frvvr .ee-send-test-container .form-group textarea{width:60%}.eewp-evmab-frvvr .ee-admin-settings-radio-inline span:first-of-type{padding-right:10px}.eewp-evmab-frvvr .ee-admin-settings-radio-block div:first-of-type{padding-bottom:10px}.eewp-evmab-frvvr .loader{border-radius:50%;border:5px solid #f3f3f3;border-top-color:#3498db;width:30px;height:30px;-webkit-animation:spin 2s linear infinite;animation:spin 2s linear infinite}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.eewp-evmab-frvvr .hide{display:none}1 .eewp-evmab-frvvr{box-sizing:border-box}.eewp-evmab-frvvr [class*=col-]{padding-left:0;padding-right:0}.eewp-evmab-frvvr .eewp-container{width:100%;display:flex}.eewp-evmab-frvvr .eewp-container .ee-single-log{padding:4px 0;border-bottom:1px solid #677389}.eewp-evmab-frvvr .eewp-container .ee-single-log__empty{padding:4px 0;color:#449d44}.eewp-evmab-frvvr .ee-pagetitle{padding:10px 0}.eewp-evmab-frvvr .ee-marketing{padding:50px 60px 24px}.eewp-evmab-frvvr .ee-success{color:#449d44}.eewp-evmab-frvvr .ee-error{color:#cb2e25}.eewp-evmab-frvvr .ee-send-test-container .form-box .valid{display:block;color:#cb2e25}.eewp-evmab-frvvr .ee-send-test-container .ee-info-box{display:flex;align-items:center}.eewp-evmab-frvvr .ee-send-test-container .ee-info-box__text{padding-left:4px}.eewp-evmab-frvvr .ee-send-test-container .hide{display:none}.eewp-evmab-frvvr h1{font-size:30px;color:#32325c;font-weight:400}.eewp-evmab-frvvr h2{font-size:18px;font-weight:400;color:#32325c}.eewp-evmab-frvvr h4{font-size:14px;font-weight:bolder;color:#32325c}.eewp-evmab-frvvr .ee-p{font-size:14px;font-weight:400;color:#677389}.eewp-evmab-frvvr .margin-p-xs{margin-top:2px;margin-bottom:2px;max-width:80%}.eewp-evmab-frvvr .settings-box-form{padding-top:30px;padding-bottom:30px}.eewp-evmab-frvvr .ee-header{position:relative}.eewp-evmab-frvvr .ee-logo{background:#fff;width:30px;height:30px;border-radius:30px;display:inline-block;line-height:38px;padding-left:5px}.eewp-evmab-frvvr .ee-account-status-active{color:#449d44}.eewp-evmab-frvvr .ee-account-status-deactive{color:#cb2e25}.eewp-evmab-frvvr .ee-reports-container{width:100%}.eewp-evmab-frvvr .ee-reports-list{padding-top:5%}.eewp-evmab-frvvr #canvas-holder{margin-left:auto;margin-right:auto}.eewp-evmab-frvvr .ee-report-table th{line-height:2;text-align:center;font-size:18px}.eewp-evmab-frvvr .ee-report-table td{line-height:3;text-align:center;font-size:18px}.eewp-evmab-frvvr .empty-chart{text-align:center;background-color:transparent;border:1px solid #f9c053}.eewp-evmab-frvvr .empty-chart img{width:360px}.eewp-evmab-frvvr .ee-alert-account{color:#cb2e25}.eewp-evmab-frvvr .ee-warning-account{color:#f9c053}.eewp-evmab-frvvr .ee-ok-account{color:#449d44}.eewp-evmab-frvvr .ee-standard-account{color:#444}.eewp-evmab-frvvr .ee-default-text{color:#ccc}.eewp-evmab-frvvr .ee-connect-alert{margin:30px auto;padding:20px;width:100%;background-color:#fbb}.eewp-evmab-frvvr .ee-connect-alert h1{font-size:14px;line-height:1.3;color:#3f3f3f}.eewp-evmab-frvvr .ee-select-form-box{padding-top:20px;padding-bottom:20px}.eewp-evmab-frvvr .ee-select-form{display:inline-block}.eewp-evmab-frvvr .ee-tooltip{position:relative;display:inline-block}.eewp-evmab-frvvr .ee-tooltip .ee-tooltiptext{visibility:hidden;width:400px;background-color:#555;color:#fff;border-radius:6px;padding:5px;position:absolute;z-index:1;bottom:125%;left:50%;margin-left:-60px;opacity:0;transition:opacity 1s}.eewp-evmab-frvvr .ee-tooltip .ee-tooltiptext:after{content:"";position:absolute;top:100%;left:15%;margin-left:-5px;border:5px solid transparent;border-top-color:#555}.eewp-evmab-frvvr .ee-tooltip:hover .ee-tooltiptext{visibility:visible;opacity:1}.eewp-evmab-frvvr .ee-tootlip-icon{width:14px;margin-bottom:-4px}.eewp-evmab-frvvr .ee-tooltiptext a{color:#fff}.eewp-evmab-frvvr .ee-title_small{font-weight:700}.eewp-evmab-frvvr input[type=text]{padding:0 8px;line-height:2;min-height:30px;box-shadow:0 0 0 transparent;border-radius:4px;border:1px solid #7e8993;background-color:#fff;color:#32373c;width:50%}.eewp-evmab-frvvr input[type=text]:focus{border-color:#007cba;box-shadow:0 0 0 1px #007cba;outline:2px solid transparent}.eewp-evmab-frvvr input[type=text]:disabled{background:#ebedef;color:#fff;cursor:not-allowed}.eewp-evmab-frvvr .form_success{color:#449d44}.eewp-evmab-frvvr .form_error{color:#cb2e25}.eewp-evmab-frvvr input[type=submit]:disabled{background:#ebedef;color:#fff;cursor:not-allowed}.eewp-evmab-frvvr .ee-checkbox{background-color:#fff;border:1px solid #ccc;border-radius:3px}.eewp-evmab-frvvr .ee-nopadding{padding:0}.eewp-evmab-frvvr .ee-colorsetter{min-height:148px;padding:0 5px 10px}.eewp-evmab-frvvr .ee-namelist{min-height:128px;padding:0 5px 10px}.eewp-evmab-frvvr .ee-checkboxlist{min-height:188px;padding:0 5px 10px}.eewp-evmab-frvvr .ee-newilstinput{min-height:154px;padding:0 5px 10px}.eewp-evmab-frvvr .ee-selectedlist{padding:0 5px 10px}.eewp-evmab-frvvr .ee-chceckboxlist{padding:4px 5px}.eewp-evmab-frvvr .ee-buttonpadding{height:100px;padding:32px 5px 18px 0}.eewp-evmab-frvvr .ee-containerfull{width:100%}.eewp-evmab-frvvr .ee-addedlist-success{color:#449d44;padding-top:22px;font-weight:700}.eewp-evmab-frvvr .ee-addedlist-warning{color:#f9c053;padding-top:22px;font-weight:700}.eewp-evmab-frvvr .ee-addedlist-info{color:#f9c053}.eewp-evmab-frvvr .ee-refrestlists{cursor:pointer}.eewp-evmab-frvvr .ee-colorsetterbox p{margin-top:2px;margin-bottom:2px}.eewp-evmab-frvvr .ee-clearfix{overflow:auto}.eewp-evmab-frvvr .ee-tablestyle{border-top:1px solid #fff;border-bottom:1px solid #fff;min-height:50px;overflow:hidden}.eewp-evmab-frvvr .form-control{margin-top:5px;margin-bottom:5px}.eewp-evmab-frvvr .ee-button-subscribe{padding-top:5px;padding-bottom:5px}.eewp-evmab-frvvr .ee-button-clean-log{cursor:pointer;color:#fff;background:#cb2e25;border-radius:4px;padding:3px 12px}.eewp-evmab-frvvr .ee-button-clean-log:hover{background-color:#b31108}.eewp-evmab-frvvr .ee-clean-log-box{display:flex;justify-content:end;padding:10px 0}.eewp-evmab-frvvr .ee-button-test{background-color:#2699fb;text-transform:uppercase;border:none;color:#fff;padding:15px;text-align:center;text-decoration:none;display:inline-block;font-size:14px;min-width:48px;cursor:pointer;line-height:0;border-radius:3px;min-height:28px}.eewp-evmab-frvvr .ee-button-test:hover{background-color:#5eaef3}.eewp-evmab-frvvr .error-email{line-height:1;margin:2px 6px}.eewp-evmab-frvvr .test-button-box{padding-top:25px}.eewp-evmab-frvvr .section-marketing{padding-top:10px;padding-bottom:10px}@media screen and (min-width:992px){.eewp-evmab-frvvr .form-control{width:45%}}@media screen and (max-width:991px){.eewp-evmab-frvvr .form-control{width:100%}}@media screen and (max-width:991px){.eewp-evmab-frvvr .ee-marketing{display:none}.eewp-evmab-frvvr .ee-line{border-right:none}}.eewp-evmab-frvvr #subscribe-inputs .form_error{color:#f33}.eewp-evmab-frvvr #ee-success{text-align:center;border:1px solid #449d44;padding:10px}.eewp-evmab-frvvr .text-center{text-align:center}.eewp-evmab-frvvr .text-left{text-align:left}.eewp-evmab-frvvr .text-right{text-align:right}.eewp-evmab-frvvr .status-more-info-bold{font-weight:700;padding-right:8px;display:flex;align-items:center}.eewp-evmab-frvvr .table-slim th,.eewp-evmab-frvvr th{font-size:14px;font-weight:400;color:#282f37;padding:10px 5px}.eewp-evmab-frvvr .table-slim td,.eewp-evmab-frvvr td{padding:10px 20px;font-size:14px;font-weight:400;color:#4c535b}.eewp-evmab-frvvr .connection-error-container{padding-top:200px;text-align:center}.eewp-evmab-frvvr .ee-log-container,.eewp-evmab-frvvr .ee-send-test-container{width:100%;padding-top:10px;padding-bottom:10px}.eewp-evmab-frvvr .ee-log-container .test-description,.eewp-evmab-frvvr .ee-send-test-container .test-description{width:60%}.eewp-evmab-frvvr .form-group{padding-top:10px;padding-bottom:10px}.eewp-evmab-frvvr .form-group label{display:block;padding-top:5px;padding-bottom:5px}.eewp-evmab-frvvr .ee-send-test-container .form-group input[type=email],.eewp-evmab-frvvr .ee-send-test-container .form-group input[type=text],.eewp-evmab-frvvr .ee-send-test-container .form-group textarea{width:60%}.eewp-evmab-frvvr .ee-admin-settings-radio-inline span:first-of-type{padding-right:10px}.eewp-evmab-frvvr .ee-admin-settings-radio-block div:first-of-type{padding-bottom:10px}.eewp-evmab-frvvr .loader{border-radius:50%;border:5px solid #f3f3f3;border-top-color:#3498db;width:30px;height:30px;-webkit-animation:spin 2s linear infinite;animation:spin 2s linear infinite}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.eewp-evmab-frvvr .hide{display:none} -
elastic-email-sender/trunk/dist/ees_sendTest.min.js
r2437687 r2532317 1 "use strict";!function(e){var t=function(){var t="Elastic Email - Send Test";setTimeout(function(){e.post("https://api.elasticemail.com/v2/channel/list?",{apikey:ees_localize_data.token,search:t},function(a){a.data[0]?function(t){e.post("https://api.elasticemail.com/v2/log/load?",{apikey:ees_localize_data.token,statuses:0,channelName:t,offset:1},function(t){t.success?(e("#recipientsStatus").text(t.data.recipients[0].status),null!==t.data.recipients[0].contactlasterror?e("#recipientsContactLastError").text(t.data.recipients[0].contactlasterror):e("#recipientsContactLastError").text("No errors")):t.error&&(e("#recipientsContactLastError").text(t.error),e("#recipientsStatus").text("Error"),e("#loader").addClass("hide")),e("#loader").addClass("hide")})}(t):e("#sendStatus").text("Channel not found. Please try again later.")})},5e3)};e("#sendTest").click(function(){var a=e("#to").val(),s=e("#message").val();return e("#invalid_email").text("").addClass("hide"),e("#invalid_message").text("").addClass("hide"),e("#send-status").addClass("hide"),e("#recipientsStatus").text(""),e("#recipientsContactLastError").text(""),0==function(e){return!!/^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/.test(e)}(a)?(e("#invalid_email").removeClass("hide").text("Invalid email"),!1):0==function(e){return""!==e}(s)?(e("#invalid_message").removeClass("hide").text("Invalid message"),!1):(e("#invalid_email").addClass("hide"),e("#invalid_message").addClass("hide"),function(a,s){var i="".concat(ees_localize_data.adminUrl,"admin-ajax.php?action=sender_send_test&hex=422f753b2d746e205b422e2068276f352143");e.post(i,{to:a,message:s},function(t){e("#loader").removeClass("hide"),e("#send-status").removeClass("hide"),t?e("#sendStatus").text("Success"):e("#sendStatus").text("Error")}),setTimeout(function(){t()},1e4)}(a,s),!1)});e("#eeCleanErrorLog").click(function(){var t;t="".concat(ees_localize_data.adminUrl,"admin-ajax.php?action=clean_error_log&hex=222h753b5d796e205b422e2068274f351991"),e.post(t,{},function(e){e&&location.reload()})})}(jQuery);1 "use strict";!function(e){var s=function(){var s="Elastic Email - Send Test";setTimeout(function(){e.post("https://api.elasticemail.com/v2/channel/list?",{apikey:ees_localize_data.token,search:s},function(t){t.data[0]?function(s){e.post("https://api.elasticemail.com/v2/log/load?",{apikey:ees_localize_data.token,statuses:0,channelName:s,offset:1},function(s){if(e("#statusInfoLineTwo").removeClass("hide"),s.success)if(e("#recipientsStatus-ok").removeClass("hide"),e("#recipientsStatus-warning").addClass("hide"),e("#recipientsStatus").text(""),s.data.recipients[0]){if(s.data.recipients[0].status)switch(s.data.recipients[0].status){case"AbuseReport":case"Unsubscribed":case"Bounced":e("#recipientsStatus-ok").addClass("hide"),e("#recipientsStatus-warning").removeClass("hide"),e("#recipientsStatus").text(s.data.recipients[0].status);break;default:e("#recipientsStatus-ok").removeClass("hide"),e("#recipientsStatus-warning").addClass("hide"),e("#recipientsStatus").text(s.data.recipients[0].status)}else e("#recipientsStatus-ok").addClass("hide"),e("#recipientsStatus-warning").removeClass("hide"),e("#recipientsStatus").text("Please check your API key.");null!==s.data.recipients[0].contactlasterror?(e("#statusInfoLineThree").removeClass("hide"),e("#recipientsContactLastError-ok").addClass("hide"),e("#recipientsContactLastError-warning").removeClass("hide"),e("#recipientsContactLastError").text(s.data.recipients[0].contactlasterror)):(e("#statusInfoLineThree").removeClass("hide"),e("#recipientsContactLastError-ok").removeClass("hide"),e("#recipientsContactLastError-warning").addClass("hide"),e("#recipientsContactLastError").text(""))}else e("#recipientsStatus-ok").addClass("hide"),e("#recipientsStatus-warning").removeClass("hide"),e("#recipientsStatus").text("Please check your API key.");else s.error&&(e("#recipientsStatus-ok").addClass("hide"),e("#recipientsStatus-warning").removeClass("hide"),e("#recipientsStatus").text(s.error),e("#loader").addClass("hide"));e("#loader").addClass("hide")})}(s):(e("#statusInfoLineOne").removeClass("hide"),e("#sendStatus-ok").addClass("hide"),e("#sendStatus-warning").removeClass("hide"),e("#sendStatus").text("Channel not found. Please check your API key."))})},5e3)};e("#sendTest").click(function(){var t=e("#to").val(),a=e("#message").val();return e("#invalid_email").text("").addClass("hide"),e("#invalid_message").text("").addClass("hide"),e("#statusInfoLineOne").addClass("hide"),e("#statusInfoLineTwo").addClass("hide"),e("#statusInfoLineThree").addClass("hide"),e("#sendStatus-ok").addClass("hide"),e("#sendStatus-warning").addClass("hide"),e("#sendStatus").text(""),e("#recipientsStatus-ok").addClass("hide"),e("#recipientsStatus-warning").addClass("hide"),e("#recipientsStatus").text(""),e("#recipientsContactLastError").text(""),0==function(e){return!!/^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/.test(e)}(t)?(e("#invalid_email").removeClass("hide").text("Invalid email"),!1):0==function(e){return""!==e}(a)?(e("#invalid_message").removeClass("hide").text("Invalid message"),!1):(e("#invalid_email").addClass("hide"),e("#invalid_message").addClass("hide"),function(t,a){var i="".concat(ees_localize_data.adminUrl,"admin-ajax.php?action=sender_send_test&hex=422f753b2d746e205b422e2068276f352143");e.post(i,{to:t,message:a},function(s){e("#loader").removeClass("hide"),e("#statusInfoLineOne").removeClass("hide"),s?(e("#sendStatus-ok").removeClass("hide"),e("#sendStatus-warning").addClass("hide")):(e("#sendStatus-ok").addClass("hide"),e("#sendStatus-warning").removeClass("hide"),e("#sendStatus").text("Send failed. Please check your account or API key."))}),setTimeout(function(){s()},1e4)}(t,a),!1)});e("#eeCleanErrorLog").click(function(){var s;s="".concat(ees_localize_data.adminUrl,"admin-ajax.php?action=clean_error_log&hex=222h753b5d796e205b422e2068274f351991"),e.post(s,{},function(e){e&&location.reload()})})}(jQuery); -
elastic-email-sender/trunk/elasticemailsender.php
r2493194 r2532317 24 24 /* 25 25 * Plugin Name: Elastic Email Sender 26 * Version: 1. 1.3526 * Version: 1.2 27 27 * Plugin URI: https://wordpress.org/plugins/elastic-email-sender/ 28 28 * Description: This plugin reconfigures the <code>wp_mail()</code> function to send email using API (via Elastic Email) instead of SMTP and creates an options page that allows you to specify various options. … … 64 64 65 65 register_activation_hook(__FILE__, 'elasticemailsender_activate'); 66 register_deactivation_hook(__FILE__, 'elasticemailsender_deactivate'); 67 register_uninstall_hook(__FILE__, 'elasticemailsender_uninstall'); 66 68 67 function elasticemailsender_activate() 68 { 69 update_option('daterangeselect', 'last-wk'); 70 register_deactivation_hook(__FILE__, 'elasticemailsender_deactivate'); 71 register_uninstall_hook(__FILE__, 'elasticemailsender_uninstall'); 72 create_elasticemail_log_table(); 69 add_action('wp_ajax_sender_send_test', 'eeSenderTestMsg'); 70 add_action('wp_ajax_clean_error_log', 'eeCleanErrorLog'); 71 72 require_once 'class/ees_admin.php'; 73 $ee_admin = new eeadmin(__DIR__); 74 75 } 76 77 function elasticemailsender_activate() 78 { 79 update_option('daterangeselect', 'last-wk'); 80 create_elasticemail_log_table(); 81 } 82 83 function create_elasticemail_log_table() { 84 global $wpdb; 85 $table = $wpdb->prefix . 'elasticemail_log'; 86 $charset_collate = $wpdb->get_charset_collate(); 87 88 $query = "CREATE TABLE IF NOT EXISTS ".$table." ( 89 id INT(11) AUTO_INCREMENT, 90 date TEXT(120), 91 error TEXT(255), 92 PRIMARY KEY(id) 93 )$charset_collate;"; 94 95 $wpdb->query( $query ); 96 } 97 98 function drop_elasticemail_log_table() { 99 global $wpdb; 100 $table = $wpdb->prefix . 'elasticemail_log'; 101 $wpdb->query( "DROP TABLE IF EXISTS ".$table); 102 } 103 104 function clean_elasticemail_log_table() { 105 global $wpdb; 106 $table = $wpdb->prefix . 'elasticemail_log'; 107 $wpdb->query( "TRUNCATE TABLE ".$table); 108 } 109 110 function elasticemailsender_deactivate() 111 { 112 require_once 'class/ees_admin.php'; 113 $ee_admin = new eeadmin(__DIR__); 114 115 if (class_exists('ElasticEmailClient\\ApiClient')) { 116 $ee_admin->addToUserList('D'); 73 117 } 118 } 74 119 75 function create_elasticemail_log_table() {76 global $wpdb;77 $table = $wpdb->prefix . 'elasticemail_log';78 $charset_collate = $wpdb->get_charset_collate();120 function eeSenderTestMsg() 121 { 122 require_once 'class/ees_mail.php'; 123 $ee_eemail = new eemail(__DIR__); 79 124 80 $query = "CREATE TABLE IF NOT EXISTS ".$table." ( 81 id INT(11) AUTO_INCREMENT, 82 date TEXT(120), 83 error TEXT(255), 84 PRIMARY KEY(id) 85 )$charset_collate;"; 125 $key = filter_input(INPUT_GET, "hex", FILTER_SANITIZE_STRING); 126 if ($key === '422f753b2d746e205b422e2068276f352143') { 127 $to = $_POST['to']; 128 $subject = 'Elastic Email Sender send test'; 129 $message = filter_input(INPUT_POST, "message", FILTER_SANITIZE_STRING); 130 $send = eemail::send($to, $subject, $message, null, null, true); 131 exit($send); 132 } 133 } 86 134 87 $wpdb->query( $query ); 88 } 135 function elasticemailsender_uninstall() 136 { 137 drop_elasticemail_log_table(); 89 138 90 function drop_elasticemail_log_table() { 91 global $wpdb; 92 $table = $wpdb->prefix . 'elasticemail_log'; 93 $wpdb->query( "DROP TABLE IF EXISTS ".$table); 94 } 139 $optionsList = [ 140 'ees-connecting-status', 141 'ee_publicaccountid', 142 'ee_enablecontactfeatures', 143 'ee_options', 144 'ee_accountemail', 145 'ee_accountemail_2', 146 'ee_setapikey', 147 'ee_send-email-type', 148 'ees_plugin_dir_name', 149 'ee_config_from_name', 150 'ee_config_from_email', 151 'ee_from_email', 152 'daterangeselect', 153 'elastic-email-sender-basename', 154 'ee_config_override_wooCommerce', 155 'ee_config_woocommerce_original_email', 156 'ee_config_woocommerce_original_name', 157 'ee_is_created_channels' 158 ]; 95 159 96 function clean_elasticemail_log_table() { 97 global $wpdb; 98 $table = $wpdb->prefix . 'elasticemail_log'; 99 $wpdb->query( "TRUNCATE TABLE ".$table); 100 } 101 102 function elasticemailsender_deactivate() 103 { 104 $status = 'D'; 105 if (class_exists('ElasticEmailClient\\ApiClient')) { 106 eeadmin::addToUserList($status); 107 } 108 } 109 110 function elasticemailsender_uninstall() 111 { 112 drop_elasticemail_log_table(); 113 114 $status = 'D'; 115 if (class_exists('ElasticEmailClient\\ApiClient')) { 116 eeadmin::addToUserList($status); 117 } 118 119 $options = [ 120 'ees-connecting-status', 121 'ee_publicaccountid', 122 'ee_enablecontactfeatures', 123 'ee_options', 124 'ee_accountemail', 125 'ee_accountemail_2', 126 'ee_setapikey', 127 'ee_send-email-type', 128 'ees_plugin_dir_name', 129 'ee_config_from_name', 130 'ee_config_from_email', 131 'ee_from_email', 132 'daterangeselect', 133 'elastic-email-sender-basename', 134 'ee_config_override_wooCommerce', 135 'ee_config_woocommerce_original_email', 136 'ee_config_woocommerce_original_name' 137 ]; 138 139 foreach ($options as $option) { 140 delete_option($option); 141 } 142 160 foreach ($optionsList as $option) { 161 delete_option($option); 143 162 } 144 163 145 164 require_once 'class/ees_admin.php'; 146 165 $ee_admin = new eeadmin(__DIR__); 166 167 if (class_exists('ElasticEmailClient\\ApiClient')) { 168 $ee_admin->addToUserList('D'); 169 } 147 170 } 148 149 add_action('wp_ajax_clean_error_log', 'eeCleanErrorLog');150 171 151 172 function eeCleanErrorLog() … … 157 178 } 158 179 } 159 160 add_action('wp_ajax_sender_send_test', 'eeSenderTestMsg'); 161 162 function eeSenderTestMsg() 163 { 164 $key = filter_input(INPUT_GET, "hex", FILTER_SANITIZE_STRING); 165 if ($key === '422f753b2d746e205b422e2068276f352143') { 166 $to = $_POST['to']; 167 $subject = 'Elastic Email Sender send test'; 168 $message = filter_input(INPUT_POST, "message", FILTER_SANITIZE_STRING); 169 $send = eemail::send($to, $subject, $message, null, null, true); 170 exit($send); 171 } 172 } 180 173 181 } -
elastic-email-sender/trunk/readme.txt
r2493194 r2532317 12 12 This plugin reconfigures the `wp_mail()` function to send email using API (via Elastic Email) instead of SMTP and creates a Settings page that allows you to set up various options. 13 13 14 15 14 == Description == 16 15 17 Elastic Email Sender allows you to connect your WordPress with powerful, low-cost Elastic Email API and send unlimited emails per month!16 Elastic Email Sender allows you to connect your WordPress with our powerful, low-cost Elastic Email API and send unlimited emails per month! 18 17 Please follow the information below and find out more about how we can help you send your emails in a more efficient way. 19 18 In case of any questions or concerns, feel free to contact us anytime. 20 19 21 20 22 **What is Elastic Email Sender plugin?**21 **What is the Elastic Email Sender plugin?** 23 22 24 Elastic Email Sender is an easy way to maintain all the aspects related to your email campaigns. From creating and sending your emails to monitoring and managing campaignsstats.25 Elastic Email Sender replaces WordPress default wp_mail() function by using API integration with Elastic Email to send an outgoing email from your WordPress installation.26 Thanks to this, you can track all the parameters of your delivery, use Private IP addresses to get full control over your sending IP address, maintain reputation and delivery,and secure your data better than ever. You can also use your own domain and analyze your data with ease.23 The Elastic Email Sender plugin is an easy way to maintain all the aspects related to your email campaigns. From creating and sending your emails to monitoring and managing campaign stats. 24 Elastic Email Sender replaces the WordPress default wp_mail() function by using API integration with Elastic Email to send an outgoing email from your WordPress installation. 25 Thanks to this, you can track all the parameters of your delivery, use Private IP addresses to get full control over your sending, maintain reputation and delivery and secure your data better than ever. You can also use your own domain and analyze your data with ease. 27 26 28 27 Elastic Email Sender is compatible with almost every solution available on the market including [WooCommerce](https://wordpress.org/plugins/woocommerce/), [Contact Form 7](https://wordpress.org/plugins/contact-form-7/), [Ninja Forms](https://wordpress.org/plugins/ninja-forms/), [Flamingo](https://wordpress.org/plugins/flamingo/), [Caldera Forms](https://wordpress.org/plugins/caldera-forms/), [bbPress](https://wordpress.org/plugins/bbpress/) … … 30 29 31 30 **How to get started?** 32 Just sign up to your [Elastic Email account](https://elasticemail.com/account#/settings/apikey), copy the API Key and then, please log in to your WordPress dashboard, add the [Elastic Email Sender](https://wordpress.org/plugins/elastic-email-sender/) plugin and paste there the API Key from your Elastic Email account. 33 31 Just sign into your [Elastic Email account](https://elasticemail.com/account#/settings/apikey), copy the API Key. Next, please login to your WordPress dashboard, add the [Elastic Email Sender](https://wordpress.org/plugins/elastic-email-sender/) plugin and paste there the API Key from your Elastic Email account. 34 32 35 33 == Installation == 36 34 37 35 To connect WordPress to Elastic Email: 38 1. Log in to your WordPress dashboard and click Plugins in the left sidebar.36 1. Log into your WordPress dashboard and click Plugins in the left sidebar. 39 37 2. Click Add New at the top of the page and then, search for “Elastic Email Sender” and click “Install Now”. 40 38 3. Click Activate Plugin. 41 4. Enter your [Elastic Email API key](https://elasticemail.com/account#/settings/apikey) in the plugin settings with permis ion `Plugin`, and click Save Changes.39 4. Enter your [Elastic Email API key](https://elasticemail.com/account#/settings/apikey) in the plugin settings with permission `Plugin`, and click Save Changes. 42 40 5. If you do it successfully, you can start sending emails! 43 41 44 42 **Installation in Network** 45 43 To connect WordPress to Elastic Email: 46 1. Log in to your WordPress dashboard (Network Admin) and click Plugins in the left sidebar or dropdown menu.44 1. Log into your WordPress dashboard (Network Admin) and click Plugins in the left sidebar or dropdown menu. 47 45 2. Click Add New at the top of the page and then, search for “Elastic Email Sender” and click “Install Now”. 48 46 3. Click Network Activate. 49 4. Enter your [Elastic Email API key](https://elasticemail.com/account#/settings/apikey) in the plugin settings with permis ion `Plugin`, and click Save Changes.47 4. Enter your [Elastic Email API key](https://elasticemail.com/account#/settings/apikey) in the plugin settings with permission `Plugin`, and click Save Changes. 50 48 5. If you do it successfully, you can start sending emails! 51 49 … … 59 57 Start with Elastic Email by creating a new account on our [website](https://elasticemail.com/). 60 58 61 = What kind of emails I can send withElastic Email Sender plugin? =62 With the new update (1.1.2), Elastic Email Sender has an option to switch between transactional and marketing emails. It means that from now on, you can easily decide what kind of emails you would like to send. By default, you will be sending marketing emails that should be used for all kindof marketing announcements: newsletters, marketing updates, sales offers, etc.63 But if you would like to send more technical emails like notifications about your service or app status, password reset or notifications about orders, you can use transactional emails that should be used for all kind of transactions between users and service/app owner.59 = What kind of emails can I send with the Elastic Email Sender plugin? = 60 Elastic Email Sender has an option to switch between transactional and marketing emails. This means that from now on, you can easily decide what kinds of emails you would like to send. By default, you will be sending marketing emails that can be used for all kinds of marketing announcements: newsletters, marketing updates, sales offers, etc. 61 But if you would like to send more technical emails like notifications about your service or app status, password reset or notifications about orders, you can use transactional emails that can be used for all kinds of transactions between users and service/app owners. 64 62 Please note that users who unsubscribe from marketing emails can still receive transactional emails. In case of any questions please contact our [Customer Success team](https://elasticemail.com/help/) - they are available 24/7! 65 63 66 = How to set up a domain to start sending? =64 = How to set up a domain to start sending? = 67 65 Find out [how to verify your domain](https://help.elasticemail.com/en/articles/2281323-how-to-verify-your-domain) on our Resources page. 68 66 69 = Where do I find Elastic Email API Key? =67 = Where do I find my Elastic Email API Key? = 70 68 You can find the Elastic Email API Key in Settings/API [account](https://elasticemail.com/account#/settings/apikey). 71 69 … … 74 72 75 73 = I can’t send any attachments. = 76 Make sure you [allowed for the use of custom headers](https://elasticemail.com/account/#/settings/sending) by checking "Allow Custom Headers" option in Settings/Sending.74 Make sure you [allowed for the use of custom headers](https://elasticemail.com/account/#/settings/sending) by checking the "Allow Custom Headers" option in Settings/Sending. 77 75 78 = Are my mail available also as aplain text? =79 Please make sure that you have the “Auto Create Text Body” turned on in your [Sending Settings](https://elasticemail.com/account/#/settings/sending). If yes, your emails are also available as aplain text.76 = Can I send mail as plain text? = 77 Please make sure that you have the “Auto Create Text Body” turned on in your [Sending Settings](https://elasticemail.com/account/#/settings/sending). If yes, your emails are also available as plain text. 80 78 81 79 = Where do I find delivery status and statistics? = 82 All the data about your delivery status es and campaignsstats are available in Reports [account](https://elasticemail.com/account#/activity).80 All the data about your delivery status and campaign stats are available in Reports [account](https://elasticemail.com/account#/activity). 83 81 84 82 = Where can I find out what was sent? = 85 You can see your reports and sending history in Reports/Email logs. Keep in mind that logs older than 30 days are not stored. [account](https://elasticemail.com/account#/activity/channels).83 You can see your reports and sending history in Reports/Email logs. Keep in mind that logs are stored for a maximum of 30 days based on account billing plan. [account](https://elasticemail.com/account#/activity/channels). 86 84 87 85 [Support Forum](https://wordpress.org/support/plugin/elastic-email-sender) 88 86 89 90 87 == Screenshots == 91 88 1. Install Elastic Email Sender with ease! Just fill in a few details and let us help you send better emails. 92 2. A visual representation of your campaign's results. If you would like to know more about your campaigns statistic , please go to the Reports screen on Elastic Email dashboards.89 2. A visual representation of your campaign's results. If you would like to know more about your campaigns statistics, please go to the Reports screen on the Elastic Email dashboard. 93 90 3. Test the sending configuration easily. 94 91 4. Error log … … 98 95 You can translate Elastic Email Sender on [__translate.wordpress.org__](https://translate.wordpress.org/projects/wp-plugins/elastic-email-sender). 99 96 100 101 97 == Changelog == 102 98 103 = 1. 1.35=99 = 1.2 = 104 100 * Regular update 105 101 106 = 1.1.34 =107 * Regular update108 102 109 = 1.1.33 = 110 * Regular update 103 == Upgrade Notice == 111 104 112 = 1.1.32 = 113 * Fix: Error message 114 115 = 1.1.31 = 116 * Fix: Channel message 117 118 = 1.1.30 = 119 * Regular update 120 121 = 1.1.29 = 122 * Fix: Invalid address for help articles 123 124 = 1.1.28 = 125 * Fix: Test url 126 127 = 1.1.27 = 128 * Regular update 129 130 = 1.1.26 = 131 * Regular update 132 133 = 1.1.25 = 134 * Small code refactoring 135 136 = 1.1.24 = 137 * Fix: Network and regular update 138 139 = 1.1.23 = 140 * Regular update 141 142 = 1.1.22 = 143 * Bugfix: Send test 144 145 = 1.1.21 = 146 * Regular update 147 148 = 1.1.20 = 149 * Bugfix: Contact status enum 150 151 = 1.1.19 = 152 * Bugfix: Admin 153 154 = 1.1.18 = 155 * Bugfix: Tests 156 157 = 1.1.17 = 158 * Added: Screen with test send 159 160 = 1.1.16 = 161 * Fix to visual update 162 163 = 1.1.15 = 164 * Visual update 165 166 = 1.1.14 = 167 * Regular update 168 169 = 1.1.13 = 170 * Regular update 171 172 = 1.1.12 = 173 * Regular update 174 175 = 1.1.11 = 176 * Added: Custom email from and from name 177 * Regular update 178 179 = 1.1.10 = 180 * Fixed: Option to hide the settings screen in the Network 181 182 = 1.1.9 = 183 * Fixed: Reset password 184 185 = 1.1.8 = 186 * Regular update 187 188 = 1.1.7 = 189 * Admin improvements 190 191 = 1.1.6 = 192 * Admin bugfix and improvements 193 194 = 1.1.5 = 195 * Admin update 196 197 = 1.1.4 = 198 * Bugfix: Conflict with WooCommerce 199 200 = 1.1.3 = 201 * Bugfix: Conflict with other plugins 202 203 = 1.1.2 = 204 * Sending of transactional and marketing e-mails 205 * Auto queue 206 * Marketing changes 207 * Improvements in credit and email status 208 * Mobile friendly 209 210 = 1.1.1 = 211 * Bugfix: content type 212 213 = 1.1.0 = 214 * Added: A queue of unsent messages 215 * Added: New account status 216 * Added: Improvements for support 217 * Fixed: Cc and bcc 218 * Fixed: Message formatting in text/plain 219 * Fixed: Password reset link 220 * Fixed: Integration with Elastic Email Subscribe Form 221 222 = 1.0.13 = 223 * Bugfix 224 225 = 1.0.12 = 226 * Added: credit status, tooltips, improved stability 227 228 = 1.0.11 = 229 * Buxfix - integration with Elastic Email Subscribe Form 230 231 = 1.0.10 = 232 * Integration with Elastic Email Subscribe Form 233 234 = 1.0.9 = 235 * Visual changes and adding compatibility with the Elastic Email Subscribe Form 236 237 = 1.0.8 = 238 * Bugfix - WP_Bakery conflict 239 * Bugfix - WooCommerce: undefined variables 240 241 = 1.0.7 = 242 * Internationalization 243 244 = 1.0.6 = 245 * Isolating styles in admin 246 * Checking account limit 247 248 = 1.0.5 = 249 * Bugfix - overwriting styles 250 251 = 1.0.4 = 252 * Bugfix - wp_error friendly message 253 254 = 1.0.3 = 255 * Bugfix - returning false 256 257 = 1.0.2 = 258 * Added reports panel 259 * Added checking the status and limit of the account 260 * Performance improvement 261 * Bugfix 262 263 = 1.0.1 = 264 * Bugfix in sending html and text messages 265 266 = 1.0 = 267 * Public release 105 = 1.2 = 106 This version fixes a translations and send test -
elastic-email-sender/trunk/template/t-ees_admin.php
r2434447 r2532317 23 23 <p class="ee-p margin-p-xs"> 24 24 <?php 25 _e('Welcome to Elastic Email WordPress Plugin! From now on, you can send your emails in the25 _e('Welcome to the Elastic Email WordPress Plugin! From now on, you can send your emails in the 26 26 fastest and most reliable way! Just one quick step and you will be ready to rock your 27 27 subscribers\' inbox. Fill in the details about the main configuration of -
elastic-email-sender/trunk/template/t-ees_marketing.php
r2435603 r2532317 9 9 10 10 <div class="section-marketing"> 11 <h2 class="ee-h2"><?php _e('How we canhelp you?', 'elastic-email-sender') ?></h2>11 <h2 class="ee-h2"><?php _e('How can we help you?', 'elastic-email-sender') ?></h2> 12 12 <p class="ee-p"><?php _e('If you would like to boost your email marketing campaigns or improve your email delivery, check out our helpful guides to get you started!', 'elastic-email-sender') ?></p> 13 13 <ul style="padding-left: 40px;"> … … 47 47 <h2 class="ee-h2"><?php _e('Rate plugin', 'elastic-email-sender') ?></h2> 48 48 <p class="ee-p"> 49 <?php _e('Share your experience of usingElastic Email WordPress Plugin by ', 'elastic-email-sender') ?>49 <?php _e('Share your experience with using the Elastic Email WordPress Plugin by ', 'elastic-email-sender') ?> 50 50 <a href="https://wordpress.org/support/plugin/elastic-email-sender/reviews/#new-post"><?php _e('rating us here.', 'elastic-email-sender') ?></a> <?php _e('Thanks!', 'elastic-email-sender') ?> 51 51 </p> -
elastic-email-sender/trunk/template/t-ees_sendtest.php
r2435504 r2532317 6 6 wp_enqueue_script('eesender-jquery'); 7 7 wp_enqueue_script('eesender-send-test'); 8 9 $plugin_path = plugins_url() . '/' . get_option('ees_plugin_dir_name'); 8 10 9 11 if (isset($_GET['settings-updated'])): … … 32 34 <div class="ee-send-test-container"> 33 35 34 <p class="ee-p test-description"><?php _e('Sending this testing email will provide You with the necessary information about the ability to send emails from your account as well as email and contact status. The email provided by You will be added to your All Contacts list, then the testing message will be send to this contact. Be aware that if you are charged by number of email sent, sending this testing messages will haveimpact on your credits.', 'elstic-email-sender') ?></p>36 <p class="ee-p test-description"><?php _e('Sending this testing email will provide you with the necessary information about the ability to send emails from your account as well as email and contact status. The email provided by you will be added to your All Contacts list, then the testing message will be sent to this contact. Be aware that if you are charged by the number of emails sent, sending these testing messages will have an impact on your credits.', 'elstic-email-sender') ?></p> 35 37 36 38 <div class="form-box"> … … 50 52 </div> 51 53 52 <div id="send-status" class="hide"> 53 <p><span class="status-more-info-bold"><?php _e('Sending: ', 'elastic-email-sender') ?></span><span id="sendStatus"></span></p> 54 <p><span class="status-more-info-bold"><?php _e('Status: ', 'elastic-email-sender') ?></span><span id="recipientsStatus"></span></p> 55 <p><span class="status-more-info-bold"><?php _e('Error: ', 'elastic-email-sender') ?></span><span id="recipientsContactLastError"></span></p> 54 <div class=""> 55 56 <p id="statusInfoLineOne" class="ee-info-box hide"> 57 <span class="status-more-info-bold"> 58 <?php _e('Sending: ', 'elastic-email-sender') ?> 59 </span> 60 <span id="sendStatus-ok" class="ee-info-box hide"> 61 <img class="ee-info-box" src="<?= $plugin_path . '/src/img/icon-ok.svg' ?>"> 62 </span> 63 <span id="sendStatus-warning" class="ee-info-box hide"> 64 <img src="<?= $plugin_path . '/src/img/icon-warning.svg' ?>"> 65 </span> 66 <span class="ee-info-box__text" id="sendStatus"></span> 67 </p> 68 69 <p id="statusInfoLineTwo" class="ee-info-box hide"> 70 <span class="status-more-info-bold"> 71 <?php _e('Status: ', 'elastic-email-sender') ?> 72 </span> 73 <span id="recipientsStatus-ok" class="hide"> 74 <img src="<?= $plugin_path . '/src/img/icon-ok.svg' ?>"> 75 </span> 76 <span id="recipientsStatus-warning" class="hide"> 77 <img src="<?= $plugin_path . '/src/img/icon-warning.svg' ?>"> 78 </span> 79 <span class="ee-info-box__text" id="recipientsStatus"></span> 80 </p> 81 82 <p id="statusInfoLineThree" class="ee-info-box hide"> 83 <span class="status-more-info-bold"> 84 <?php _e('Error: ', 'elastic-email-sender') ?> 85 </span> 86 <span id="recipientsContactLastError-ok" class="ee-info-box hide"> 87 <img class="ee-info-box" src="<?= $plugin_path . '/src/img/icon-ok.svg' ?>"> 88 </span> 89 <span id="recipientsContactLastError-warning" class="ee-info-box hide"> 90 <img src="<?= $plugin_path . '/src/img/icon-warning.svg' ?>"> 91 </span> 92 <span class="ee-info-box__text" id="recipientsContactLastError"></span> 93 </p> 94 95 <div id="loader" class="loader hide"></div> 56 96 </div> 57 <div id="loader" class="loader hide"></div>58 59 97 </div> 60 98
Note: See TracChangeset
for help on using the changeset viewer.