| 1 |
<?php |
| 2 |
/** |
| 3 |
* Email Template Presets |
| 4 |
* |
| 5 |
* Provides predefined template presets based on the legacy HTML templates. |
| 6 |
* |
| 7 |
* @package Forge12\DoubleOptIn\EmailTemplates |
| 8 |
* @since 4.0.0 |
| 9 |
*/ |
| 10 |
|
| 11 |
namespace Forge12\DoubleOptIn\EmailTemplates; |
| 12 |
|
| 13 |
if ( ! defined( 'ABSPATH' ) ) { |
| 14 |
exit; |
| 15 |
} |
| 16 |
|
| 17 |
/** |
| 18 |
* Class EmailTemplatePresets |
| 19 |
* |
| 20 |
* Contains predefined email template presets that users can choose as starting points. |
| 21 |
*/ |
| 22 |
class EmailTemplatePresets { |
| 23 |
|
| 24 |
/** |
| 25 |
* Get all available presets. |
| 26 |
* |
| 27 |
* @return array |
| 28 |
*/ |
| 29 |
public static function getAll(): array { |
| 30 |
return array( |
| 31 |
self::getBlankPreset(), |
| 32 |
self::getDarkPreset(), |
| 33 |
self::getYellowBlackPreset(), |
| 34 |
self::getMinimalPreset(), |
| 35 |
self::getOptOutPreset(), |
| 36 |
); |
| 37 |
} |
| 38 |
|
| 39 |
/** |
| 40 |
* Get a preset by ID. |
| 41 |
* |
| 42 |
* @param string $presetId Preset ID. |
| 43 |
* @return array|null |
| 44 |
*/ |
| 45 |
public static function getById( string $presetId ): ?array { |
| 46 |
$presets = self::getAll(); |
| 47 |
foreach ( $presets as $preset ) { |
| 48 |
if ( $preset['id'] === $presetId ) { |
| 49 |
return $preset; |
| 50 |
} |
| 51 |
} |
| 52 |
return null; |
| 53 |
} |
| 54 |
|
| 55 |
/** |
| 56 |
* Blank preset - empty template. |
| 57 |
* |
| 58 |
* @return array |
| 59 |
*/ |
| 60 |
private static function getBlankPreset(): array { |
| 61 |
return array( |
| 62 |
'id' => 'blank', |
| 63 |
'name' => __( 'Blank Template', 'double-opt-in' ), |
| 64 |
'description' => __( 'Start from scratch with an empty template.', 'double-opt-in' ), |
| 65 |
'thumbnail' => 'blank', |
| 66 |
'category' => 'basic', |
| 67 |
'blocks' => array(), |
| 68 |
'globalStyles' => array( |
| 69 |
'fontFamily' => 'Arial, Helvetica, sans-serif', |
| 70 |
'fontSize' => '16px', |
| 71 |
'lineHeight' => '1.5', |
| 72 |
'backgroundColor' => '#f4f4f4', |
| 73 |
'contentWidth' => '600', |
| 74 |
'primaryColor' => '#0073aa', |
| 75 |
'textColor' => '#333333', |
| 76 |
'linkColor' => '#0073aa', |
| 77 |
), |
| 78 |
); |
| 79 |
} |
| 80 |
|
| 81 |
/** |
| 82 |
* Dark theme preset (based on newsletter_en.html). |
| 83 |
* |
| 84 |
* @return array |
| 85 |
*/ |
| 86 |
private static function getDarkPreset(): array { |
| 87 |
return array( |
| 88 |
'id' => 'dark-professional', |
| 89 |
'name' => __( 'Dark Professional', 'double-opt-in' ), |
| 90 |
'description' => __( 'A professional dark-themed template with a red accent color.', 'double-opt-in' ), |
| 91 |
'thumbnail' => 'dark-professional', |
| 92 |
'category' => 'professional', |
| 93 |
'blocks' => array( |
| 94 |
// Email Wrapper |
| 95 |
array( |
| 96 |
'type' => 'email-wrapper', |
| 97 |
'attributes' => array( |
| 98 |
'backgroundColor' => '#2d2d31', |
| 99 |
'padding' => '30px', |
| 100 |
), |
| 101 |
'children' => array( |
| 102 |
// Header Row (wrapping columns-2 inside a row) |
| 103 |
array( |
| 104 |
'type' => 'row', |
| 105 |
'attributes' => array( |
| 106 |
'backgroundColor' => '#2d2d31', |
| 107 |
'padding' => '20px 0', |
| 108 |
), |
| 109 |
'children' => array( |
| 110 |
array( |
| 111 |
'type' => 'columns-2', |
| 112 |
'attributes' => array( |
| 113 |
'backgroundColor' => 'transparent', |
| 114 |
), |
| 115 |
'children' => array( |
| 116 |
// Logo Column |
| 117 |
array( |
| 118 |
'type' => 'image', |
| 119 |
'attributes' => array( |
| 120 |
'src' => '', |
| 121 |
'alt' => 'Logo', |
| 122 |
'width' => '150', |
| 123 |
'align' => 'left', |
| 124 |
'_columnIndex' => 0, |
| 125 |
), |
| 126 |
), |
| 127 |
// Navigation Link Column |
| 128 |
array( |
| 129 |
'type' => 'text', |
| 130 |
'attributes' => array( |
| 131 |
'content' => '<a href="#" style="color:#ffffff;text-decoration:underline;text-transform:uppercase;font-size:11px;">GO TO THE WEBSITE</a>', |
| 132 |
'align' => 'right', |
| 133 |
'color' => '#ffffff', |
| 134 |
'_columnIndex' => 1, |
| 135 |
), |
| 136 |
), |
| 137 |
), |
| 138 |
), |
| 139 |
), |
| 140 |
), |
| 141 |
// Spacer |
| 142 |
array( |
| 143 |
'type' => 'spacer', |
| 144 |
'attributes' => array( |
| 145 |
'height' => '20', |
| 146 |
), |
| 147 |
), |
| 148 |
// Main Content Row |
| 149 |
array( |
| 150 |
'type' => 'row', |
| 151 |
'attributes' => array( |
| 152 |
'backgroundColor' => '#2d2d31', |
| 153 |
'padding' => '30px', |
| 154 |
), |
| 155 |
'children' => array( |
| 156 |
// Heading |
| 157 |
array( |
| 158 |
'type' => 'heading', |
| 159 |
'attributes' => array( |
| 160 |
'content' => __( 'Please confirm your Registration', 'double-opt-in' ), |
| 161 |
'level' => 'h2', |
| 162 |
'align' => 'center', |
| 163 |
'color' => '#f6f6f6', |
| 164 |
), |
| 165 |
), |
| 166 |
// Spacer |
| 167 |
array( |
| 168 |
'type' => 'spacer', |
| 169 |
'attributes' => array( |
| 170 |
'height' => '20', |
| 171 |
), |
| 172 |
), |
| 173 |
// Text Content |
| 174 |
array( |
| 175 |
'type' => 'text', |
| 176 |
'attributes' => array( |
| 177 |
'content' => __( 'Dear Mr./Mrs.,<br><br>This email address was just used ([doubleoptin_form_date], [doubleoptin_form_time]) to request our newsletter on [doubleoptin_form_url]. If you did not submit this request, please ignore this email and we apologize for disturbing you.<br><br>If you would like to receive our newsletter by email, please confirm your request by clicking on the link below. We will then add you to our newsletter mailing list. You can unsubscribe at any time in the future from our newsletter.<br><br>By clicking on this link, you confirm your registration for our newsletter.', 'double-opt-in' ), |
| 178 |
'align' => 'left', |
| 179 |
'color' => '#b6b6b6', |
| 180 |
), |
| 181 |
), |
| 182 |
// Spacer |
| 183 |
array( |
| 184 |
'type' => 'spacer', |
| 185 |
'attributes' => array( |
| 186 |
'height' => '25', |
| 187 |
), |
| 188 |
), |
| 189 |
// Confirm Button |
| 190 |
array( |
| 191 |
'type' => 'button', |
| 192 |
'attributes' => array( |
| 193 |
'text' => __( 'CONFIRM', 'double-opt-in' ), |
| 194 |
'url' => '[doubleoptinlink]', |
| 195 |
'backgroundColor' => '#ed5258', |
| 196 |
'textColor' => '#ffffff', |
| 197 |
'align' => 'center', |
| 198 |
'borderRadius' => '0', |
| 199 |
'padding' => '12px 24px', |
| 200 |
), |
| 201 |
), |
| 202 |
// Spacer |
| 203 |
array( |
| 204 |
'type' => 'spacer', |
| 205 |
'attributes' => array( |
| 206 |
'height' => '25', |
| 207 |
), |
| 208 |
), |
| 209 |
// Alternative Link Text |
| 210 |
array( |
| 211 |
'type' => 'text', |
| 212 |
'attributes' => array( |
| 213 |
'content' => __( 'If you have trouble clicking on the button above please copy the following link into your internet browser:<br>[doubleoptinlink]', 'double-opt-in' ), |
| 214 |
'align' => 'left', |
| 215 |
'color' => '#b6b6b6', |
| 216 |
'fontSize' => '14px', |
| 217 |
), |
| 218 |
), |
| 219 |
// Spacer |
| 220 |
array( |
| 221 |
'type' => 'spacer', |
| 222 |
'attributes' => array( |
| 223 |
'height' => '20', |
| 224 |
), |
| 225 |
), |
| 226 |
// Closing Text |
| 227 |
array( |
| 228 |
'type' => 'text', |
| 229 |
'attributes' => array( |
| 230 |
'content' => __( 'Thank you for registering.<br>Kind regards,<br>Your Newsletter Team', 'double-opt-in' ), |
| 231 |
'align' => 'left', |
| 232 |
'color' => '#b6b6b6', |
| 233 |
), |
| 234 |
), |
| 235 |
), |
| 236 |
), |
| 237 |
// Footer Divider |
| 238 |
array( |
| 239 |
'type' => 'spacer', |
| 240 |
'attributes' => array( |
| 241 |
'height' => '60', |
| 242 |
'backgroundColor' => '#ed5258', |
| 243 |
), |
| 244 |
), |
| 245 |
// Footer |
| 246 |
array( |
| 247 |
'type' => 'footer', |
| 248 |
'attributes' => array( |
| 249 |
'content' => __( 'Copyright © 2024 Your Company Name', 'double-opt-in' ), |
| 250 |
'backgroundColor' => '#ed5258', |
| 251 |
'textColor' => '#ffffff', |
| 252 |
'padding' => '20px', |
| 253 |
'align' => 'center', |
| 254 |
), |
| 255 |
), |
| 256 |
), |
| 257 |
), |
| 258 |
), |
| 259 |
'globalStyles' => array( |
| 260 |
'fontFamily' => 'Arial, Helvetica, sans-serif', |
| 261 |
'fontSize' => '14px', |
| 262 |
'lineHeight' => '1.5', |
| 263 |
'backgroundColor' => '#ffffff', |
| 264 |
'contentWidth' => '650', |
| 265 |
'primaryColor' => '#ed5258', |
| 266 |
'textColor' => '#b6b6b6', |
| 267 |
'linkColor' => '#ffffff', |
| 268 |
), |
| 269 |
); |
| 270 |
} |
| 271 |
|
| 272 |
/** |
| 273 |
* Yellow/Black theme preset (based on newsletter_en_2.html). |
| 274 |
* |
| 275 |
* @return array |
| 276 |
*/ |
| 277 |
private static function getYellowBlackPreset(): array { |
| 278 |
return array( |
| 279 |
'id' => 'yellow-bold', |
| 280 |
'name' => __( 'Yellow Bold', 'double-opt-in' ), |
| 281 |
'description' => __( 'A bold design with yellow accents on a dark background.', 'double-opt-in' ), |
| 282 |
'thumbnail' => 'yellow-bold', |
| 283 |
'category' => 'creative', |
| 284 |
'blocks' => array( |
| 285 |
// Email Wrapper |
| 286 |
array( |
| 287 |
'type' => 'email-wrapper', |
| 288 |
'attributes' => array( |
| 289 |
'backgroundColor' => '#1f1e23', |
| 290 |
'padding' => '40px 0', |
| 291 |
), |
| 292 |
'children' => array( |
| 293 |
// Top Bar |
| 294 |
array( |
| 295 |
'type' => 'row', |
| 296 |
'attributes' => array( |
| 297 |
'backgroundColor' => '#373737', |
| 298 |
'padding' => '15px 30px', |
| 299 |
), |
| 300 |
'children' => array( |
| 301 |
array( |
| 302 |
'type' => 'columns-2', |
| 303 |
'attributes' => array(), |
| 304 |
'children' => array( |
| 305 |
array( |
| 306 |
'type' => 'text', |
| 307 |
'attributes' => array( |
| 308 |
'content' => __( 'Welcome to Company Name', 'double-opt-in' ), |
| 309 |
'color' => '#ffffff', |
| 310 |
'fontSize' => '11px', |
| 311 |
'align' => 'left', |
| 312 |
'_columnIndex' => 0, |
| 313 |
), |
| 314 |
), |
| 315 |
array( |
| 316 |
'type' => 'text', |
| 317 |
'attributes' => array( |
| 318 |
'content' => '<a href="#" style="color:#fff;text-decoration:underline;text-transform:uppercase;font-size:11px;">GO TO WEBSITE</a>', |
| 319 |
'align' => 'right', |
| 320 |
'_columnIndex' => 1, |
| 321 |
), |
| 322 |
), |
| 323 |
), |
| 324 |
), |
| 325 |
), |
| 326 |
), |
| 327 |
// Logo Section |
| 328 |
array( |
| 329 |
'type' => 'row', |
| 330 |
'attributes' => array( |
| 331 |
'backgroundColor' => '#f6de17', |
| 332 |
'padding' => '30px', |
| 333 |
), |
| 334 |
'children' => array( |
| 335 |
array( |
| 336 |
'type' => 'image', |
| 337 |
'attributes' => array( |
| 338 |
'src' => '', |
| 339 |
'alt' => 'Logo', |
| 340 |
'width' => '200', |
| 341 |
'align' => 'left', |
| 342 |
), |
| 343 |
), |
| 344 |
), |
| 345 |
), |
| 346 |
// Main Content |
| 347 |
array( |
| 348 |
'type' => 'row', |
| 349 |
'attributes' => array( |
| 350 |
'backgroundColor' => '#f6de17', |
| 351 |
'padding' => '30px', |
| 352 |
), |
| 353 |
'children' => array( |
| 354 |
array( |
| 355 |
'type' => 'heading', |
| 356 |
'attributes' => array( |
| 357 |
'content' => __( 'Please confirm your Registration', 'double-opt-in' ), |
| 358 |
'level' => 'h2', |
| 359 |
'align' => 'center', |
| 360 |
'color' => '#26252a', |
| 361 |
), |
| 362 |
), |
| 363 |
array( |
| 364 |
'type' => 'spacer', |
| 365 |
'attributes' => array( |
| 366 |
'height' => '25', |
| 367 |
), |
| 368 |
), |
| 369 |
array( |
| 370 |
'type' => 'text', |
| 371 |
'attributes' => array( |
| 372 |
'content' => __( 'Dear Mr./Mrs.,<br><br>This email address was just used ([doubleoptin_form_date], [doubleoptin_form_time]) to request our newsletter on [doubleoptin_form_url]. If you did not submit this request, please ignore this email and we apologize for disturbing you.<br><br>If you would like to receive our newsletter by email, please confirm your request by clicking on the link below. We will then add you to our newsletter mailing list. You can unsubscribe at any time in the future from our newsletter.<br><br>By clicking on this link, you confirm your registration for our newsletter.', 'double-opt-in' ), |
| 373 |
'align' => 'center', |
| 374 |
'color' => '#26252a', |
| 375 |
), |
| 376 |
), |
| 377 |
array( |
| 378 |
'type' => 'spacer', |
| 379 |
'attributes' => array( |
| 380 |
'height' => '22', |
| 381 |
), |
| 382 |
), |
| 383 |
array( |
| 384 |
'type' => 'button', |
| 385 |
'attributes' => array( |
| 386 |
'text' => __( 'CONFIRM', 'double-opt-in' ), |
| 387 |
'url' => '[doubleoptinlink]', |
| 388 |
'backgroundColor' => '#2e2d33', |
| 389 |
'textColor' => '#f6de17', |
| 390 |
'align' => 'center', |
| 391 |
'borderRadius' => '0', |
| 392 |
'padding' => '12px 24px', |
| 393 |
), |
| 394 |
), |
| 395 |
array( |
| 396 |
'type' => 'spacer', |
| 397 |
'attributes' => array( |
| 398 |
'height' => '20', |
| 399 |
), |
| 400 |
), |
| 401 |
array( |
| 402 |
'type' => 'text', |
| 403 |
'attributes' => array( |
| 404 |
'content' => __( 'If you have trouble clicking on the button above please copy the following link into your internet browser:<br>[doubleoptinlink]', 'double-opt-in' ), |
| 405 |
'align' => 'center', |
| 406 |
'color' => '#26252a', |
| 407 |
'fontSize' => '14px', |
| 408 |
), |
| 409 |
), |
| 410 |
), |
| 411 |
), |
| 412 |
// Spacer |
| 413 |
array( |
| 414 |
'type' => 'spacer', |
| 415 |
'attributes' => array( |
| 416 |
'height' => '22', |
| 417 |
'backgroundColor' => '#f6de17', |
| 418 |
), |
| 419 |
), |
| 420 |
// Footer Logo |
| 421 |
array( |
| 422 |
'type' => 'row', |
| 423 |
'attributes' => array( |
| 424 |
'backgroundColor' => '#373737', |
| 425 |
'padding' => '40px 30px', |
| 426 |
), |
| 427 |
'children' => array( |
| 428 |
array( |
| 429 |
'type' => 'image', |
| 430 |
'attributes' => array( |
| 431 |
'src' => '', |
| 432 |
'alt' => 'Logo', |
| 433 |
'width' => '150', |
| 434 |
'align' => 'center', |
| 435 |
), |
| 436 |
), |
| 437 |
), |
| 438 |
), |
| 439 |
// Footer Text |
| 440 |
array( |
| 441 |
'type' => 'footer', |
| 442 |
'attributes' => array( |
| 443 |
'content' => __( 'Copyright © 2024 Company Name', 'double-opt-in' ), |
| 444 |
'backgroundColor' => '#373737', |
| 445 |
'textColor' => '#ffffff', |
| 446 |
'padding' => '15px 30px 40px', |
| 447 |
'align' => 'center', |
| 448 |
), |
| 449 |
), |
| 450 |
), |
| 451 |
), |
| 452 |
), |
| 453 |
'globalStyles' => array( |
| 454 |
'fontFamily' => 'Arial, Helvetica, sans-serif', |
| 455 |
'fontSize' => '14px', |
| 456 |
'lineHeight' => '1.75', |
| 457 |
'backgroundColor' => '#1f1e23', |
| 458 |
'contentWidth' => '650', |
| 459 |
'primaryColor' => '#f6de17', |
| 460 |
'textColor' => '#26252a', |
| 461 |
'linkColor' => '#ffffff', |
| 462 |
), |
| 463 |
); |
| 464 |
} |
| 465 |
|
| 466 |
/** |
| 467 |
* Minimal/Clean theme preset (based on newsletter_en_3.html). |
| 468 |
* |
| 469 |
* @return array |
| 470 |
*/ |
| 471 |
private static function getMinimalPreset(): array { |
| 472 |
return array( |
| 473 |
'id' => 'minimal-clean', |
| 474 |
'name' => __( 'Minimal Clean', 'double-opt-in' ), |
| 475 |
'description' => __( 'A clean, minimal design with a blue accent - perfect for professional communications.', 'double-opt-in' ), |
| 476 |
'thumbnail' => 'minimal-clean', |
| 477 |
'category' => 'minimal', |
| 478 |
'blocks' => array( |
| 479 |
// Email Wrapper |
| 480 |
array( |
| 481 |
'type' => 'email-wrapper', |
| 482 |
'attributes' => array( |
| 483 |
'backgroundColor' => '#f6f6f6', |
| 484 |
'padding' => '10px', |
| 485 |
), |
| 486 |
'children' => array( |
| 487 |
// Main Content Box |
| 488 |
array( |
| 489 |
'type' => 'row', |
| 490 |
'attributes' => array( |
| 491 |
'backgroundColor' => '#ffffff', |
| 492 |
'padding' => '20px', |
| 493 |
'borderRadius' => '3', |
| 494 |
), |
| 495 |
'children' => array( |
| 496 |
// Text Content |
| 497 |
array( |
| 498 |
'type' => 'text', |
| 499 |
'attributes' => array( |
| 500 |
'content' => __( 'Dear Mr./Mrs.,<br><br>This email address was just used ([doubleoptin_form_date], [doubleoptin_form_time]) to request our newsletter on [doubleoptin_form_url]. If you did not submit this request, please ignore this email and we apologize for disturbing you.<br><br>If you would like to receive our newsletter by email, please confirm your request by clicking on the link below. We will then add you to our newsletter mailing list. You can unsubscribe at any time in the future from our newsletter.<br><br>By clicking on this link, you confirm your registration for our newsletter.', 'double-opt-in' ), |
| 501 |
'align' => 'left', |
| 502 |
'color' => '#333333', |
| 503 |
), |
| 504 |
), |
| 505 |
// Spacer |
| 506 |
array( |
| 507 |
'type' => 'spacer', |
| 508 |
'attributes' => array( |
| 509 |
'height' => '15', |
| 510 |
), |
| 511 |
), |
| 512 |
// Confirm Button |
| 513 |
array( |
| 514 |
'type' => 'button', |
| 515 |
'attributes' => array( |
| 516 |
'text' => __( 'CONFIRM', 'double-opt-in' ), |
| 517 |
'url' => '[doubleoptinlink]', |
| 518 |
'backgroundColor' => '#3498db', |
| 519 |
'textColor' => '#ffffff', |
| 520 |
'align' => 'left', |
| 521 |
'borderRadius' => '5', |
| 522 |
'padding' => '12px 25px', |
| 523 |
), |
| 524 |
), |
| 525 |
// Spacer |
| 526 |
array( |
| 527 |
'type' => 'spacer', |
| 528 |
'attributes' => array( |
| 529 |
'height' => '15', |
| 530 |
), |
| 531 |
), |
| 532 |
// Alternative Link |
| 533 |
array( |
| 534 |
'type' => 'text', |
| 535 |
'attributes' => array( |
| 536 |
'content' => __( 'If you have trouble clicking on the button above please copy the following link into your internet browser:<br>[doubleoptinlink]', 'double-opt-in' ), |
| 537 |
'align' => 'left', |
| 538 |
'color' => '#333333', |
| 539 |
'fontSize' => '14px', |
| 540 |
), |
| 541 |
), |
| 542 |
// Spacer |
| 543 |
array( |
| 544 |
'type' => 'spacer', |
| 545 |
'attributes' => array( |
| 546 |
'height' => '15', |
| 547 |
), |
| 548 |
), |
| 549 |
// Closing |
| 550 |
array( |
| 551 |
'type' => 'text', |
| 552 |
'attributes' => array( |
| 553 |
'content' => __( 'Thank you for registering.<br>Kind regards,<br>Your Newsletter Team.', 'double-opt-in' ), |
| 554 |
'align' => 'left', |
| 555 |
'color' => '#333333', |
| 556 |
), |
| 557 |
), |
| 558 |
), |
| 559 |
), |
| 560 |
// Spacer before footer |
| 561 |
array( |
| 562 |
'type' => 'spacer', |
| 563 |
'attributes' => array( |
| 564 |
'height' => '10', |
| 565 |
), |
| 566 |
), |
| 567 |
// Footer |
| 568 |
array( |
| 569 |
'type' => 'footer', |
| 570 |
'attributes' => array( |
| 571 |
'content' => __( 'Maxmuster Company, Musterstreet 123, Mustercity 71337', 'double-opt-in' ), |
| 572 |
'backgroundColor' => 'transparent', |
| 573 |
'textColor' => '#999999', |
| 574 |
'padding' => '10px', |
| 575 |
'align' => 'center', |
| 576 |
'fontSize' => '12px', |
| 577 |
), |
| 578 |
), |
| 579 |
), |
| 580 |
), |
| 581 |
), |
| 582 |
'globalStyles' => array( |
| 583 |
'fontFamily' => 'Arial, Helvetica, sans-serif', |
| 584 |
'fontSize' => '14px', |
| 585 |
'lineHeight' => '1.5', |
| 586 |
'backgroundColor' => '#f6f6f6', |
| 587 |
'contentWidth' => '580', |
| 588 |
'primaryColor' => '#3498db', |
| 589 |
'textColor' => '#333333', |
| 590 |
'linkColor' => '#3498db', |
| 591 |
), |
| 592 |
); |
| 593 |
} |
| 594 |
|
| 595 |
/** |
| 596 |
* Opt-Out confirmation email preset. |
| 597 |
* |
| 598 |
* @return array |
| 599 |
*/ |
| 600 |
private static function getOptOutPreset(): array { |
| 601 |
return array( |
| 602 |
'id' => 'opt-out-confirmation', |
| 603 |
'name' => __( 'Opt-Out Confirmation', 'double-opt-in' ), |
| 604 |
'description' => __( 'A clean template for opt-out confirmation emails with a link to the opt-out settings page.', 'double-opt-in' ), |
| 605 |
'thumbnail' => 'minimal-clean', |
| 606 |
'category' => 'opt-out', |
| 607 |
'blocks' => array( |
| 608 |
// Email Wrapper |
| 609 |
array( |
| 610 |
'type' => 'email-wrapper', |
| 611 |
'attributes' => array( |
| 612 |
'backgroundColor' => '#f6f6f6', |
| 613 |
'padding' => '10px', |
| 614 |
), |
| 615 |
'children' => array( |
| 616 |
// Main Content Box |
| 617 |
array( |
| 618 |
'type' => 'row', |
| 619 |
'attributes' => array( |
| 620 |
'backgroundColor' => '#ffffff', |
| 621 |
'padding' => '20px', |
| 622 |
'borderRadius' => '3', |
| 623 |
), |
| 624 |
'children' => array( |
| 625 |
// Text Content |
| 626 |
array( |
| 627 |
'type' => 'text', |
| 628 |
'attributes' => array( |
| 629 |
'content' => __( 'Dear Mr./Mrs.,<br><br>This email address was just used to request access to the opt-out page on <a href="[doubleoptin_optout_url]">[doubleoptin_optout_url]</a>. If you did not submit this request, please ignore this email and we apologize for disturbing you.', 'double-opt-in' ), |
| 630 |
'align' => 'left', |
| 631 |
'color' => '#333333', |
| 632 |
), |
| 633 |
), |
| 634 |
// Spacer |
| 635 |
array( |
| 636 |
'type' => 'spacer', |
| 637 |
'attributes' => array( |
| 638 |
'height' => '15', |
| 639 |
), |
| 640 |
), |
| 641 |
// Opt-Out Button |
| 642 |
array( |
| 643 |
'type' => 'button', |
| 644 |
'attributes' => array( |
| 645 |
'text' => __( 'OPT-OUT SETTINGS', 'double-opt-in' ), |
| 646 |
'url' => '[doubleoptin_optout_url]', |
| 647 |
'backgroundColor' => '#3498db', |
| 648 |
'textColor' => '#ffffff', |
| 649 |
'align' => 'left', |
| 650 |
'borderRadius' => '5', |
| 651 |
'padding' => '12px 25px', |
| 652 |
), |
| 653 |
), |
| 654 |
// Spacer |
| 655 |
array( |
| 656 |
'type' => 'spacer', |
| 657 |
'attributes' => array( |
| 658 |
'height' => '15', |
| 659 |
), |
| 660 |
), |
| 661 |
// Alternative Link |
| 662 |
array( |
| 663 |
'type' => 'text', |
| 664 |
'attributes' => array( |
| 665 |
'content' => __( 'If you have trouble clicking on the button above please copy the following link into your internet browser:<br><a href="[doubleoptin_optout_url]">[doubleoptin_optout_url]</a>', 'double-opt-in' ), |
| 666 |
'align' => 'left', |
| 667 |
'color' => '#333333', |
| 668 |
'fontSize' => '14px', |
| 669 |
), |
| 670 |
), |
| 671 |
// Spacer |
| 672 |
array( |
| 673 |
'type' => 'spacer', |
| 674 |
'attributes' => array( |
| 675 |
'height' => '15', |
| 676 |
), |
| 677 |
), |
| 678 |
// Closing |
| 679 |
array( |
| 680 |
'type' => 'text', |
| 681 |
'attributes' => array( |
| 682 |
'content' => __( 'Thank you.<br>Kind regards,<br>Your Newsletter Team.', 'double-opt-in' ), |
| 683 |
'align' => 'left', |
| 684 |
'color' => '#333333', |
| 685 |
), |
| 686 |
), |
| 687 |
), |
| 688 |
), |
| 689 |
// Spacer before footer |
| 690 |
array( |
| 691 |
'type' => 'spacer', |
| 692 |
'attributes' => array( |
| 693 |
'height' => '10', |
| 694 |
), |
| 695 |
), |
| 696 |
// Footer |
| 697 |
array( |
| 698 |
'type' => 'footer', |
| 699 |
'attributes' => array( |
| 700 |
'content' => __( 'Maxmuster Company, Musterstreet 123, Mustercity 71337', 'double-opt-in' ), |
| 701 |
'backgroundColor' => 'transparent', |
| 702 |
'textColor' => '#999999', |
| 703 |
'padding' => '10px', |
| 704 |
'align' => 'center', |
| 705 |
'fontSize' => '12px', |
| 706 |
), |
| 707 |
), |
| 708 |
), |
| 709 |
), |
| 710 |
), |
| 711 |
'globalStyles' => array( |
| 712 |
'fontFamily' => 'Arial, Helvetica, sans-serif', |
| 713 |
'fontSize' => '14px', |
| 714 |
'lineHeight' => '1.5', |
| 715 |
'backgroundColor' => '#f6f6f6', |
| 716 |
'contentWidth' => '580', |
| 717 |
'primaryColor' => '#3498db', |
| 718 |
'textColor' => '#333333', |
| 719 |
'linkColor' => '#3498db', |
| 720 |
), |
| 721 |
); |
| 722 |
} |
| 723 |
} |
| 724 |
|