PluginProbe
UsersWP – Front-end login form, User Registration, User Profile & Members Directory plugin for WP / 1.2.2
UsersWP – Front-end login form, User Registration, User Profile & Members Directory plugin for WP v1.2.2
1.2.72 1.2.71 1.2.70 1.2.69 1.2.68 1.2.67 1.2.66 1.2.65 1.2.64 1.2.63 trunk 1.0.10 1.0.11 1.0.12 1.0.13 1.0.14 1.0.15 1.0.16 1.0.17 1.0.18 1.0.19 1.0.20 1.0.21 1.0.22 1.0.23 All 172 releases
userswp / admin / settings / class-uwp-settings-emails.php

class-uwp-settings-emails.php in UsersWP – Front-end login form, User Registration, User Profile & Members Directory plugin for WP 1.2.2, at admin/settings/class-uwp-settings-emails.php

551 lines 19.6 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * UsersWP Emails Settings
4 *
5 * @author AyeCode
6 * @category Admin
7 * @package userswp/Admin
8 * @version 1.0.24
9 */
10
11 if ( ! defined( 'ABSPATH' ) ) {
12 exit; // Exit if accessed directly
13 }
14
15 if ( ! class_exists( 'UsersWP_Settings_Email', false ) ) :
16
17 /**
18 * UsersWP_Settings_Email.
19 */
20 class UsersWP_Settings_Email extends UsersWP_Settings_Page {
21
22 /**
23 * Constructor.
24 */
25 public function __construct() {
26
27 $this->id = 'emails';
28 $this->label = __( 'Emails', 'userswp' );
29
30 add_filter( 'uwp_settings_tabs_array', array( $this, 'add_settings_page' ), 20 );
31 add_action( 'uwp_settings_' . $this->id, array( $this, 'output' ) );
32 add_action( 'uwp_sections_' . $this->id, array( $this, 'output_toggle_advanced' ) );
33 add_action( 'uwp_settings_save_' . $this->id, array( $this, 'save' ) );
34 add_action( 'uwp_sections_' . $this->id, array( $this, 'output_sections' ) );
35
36 }
37
38 /**
39 * Output the settings.
40 */
41 public function output() {
42 global $current_section;
43
44 $settings = $this->get_settings( $current_section );
45
46 UsersWP_Admin_Settings::output_fields( $settings );
47 }
48
49 /**
50 * Save settings.
51 */
52 public function save() {
53 global $current_section;
54
55 $settings = $this->get_settings( $current_section );
56 UsersWP_Admin_Settings::save_fields( $settings );
57 }
58
59 /**
60 * Get sections.
61 *
62 * @return array
63 */
64 public function get_sections() {
65
66 $sections = array(
67 '' => __( 'Email Options', 'userswp' ),
68 'user_emails' => __( 'User Emails', 'userswp' ),
69 'admin_emails' => __( 'Admin Emails', 'userswp' ),
70 );
71
72 return apply_filters( 'uwp_get_sections_' . $this->id, $sections );
73 }
74
75 public function get_settings( $current_section = '' ) {
76
77 if($current_section == 'admin_emails'){
78 $settings = apply_filters( 'uwp_admin_email_settings', array(
79
80 array('name' => __('New account registration', 'userswp'), 'type' => 'title', 'desc' => '', 'id' => 'registration_success_admin_email_settings'),
81
82 array(
83 'name' => __('Enable email', 'userswp'),
84 'desc' => __('Send an email to admin when user has created account on site.', 'userswp'),
85 'id' => 'registration_success_email_admin',
86 'type' => 'checkbox',
87 'default' => 1,
88 ),
89 array(
90 'name' => __('Subject', 'userswp'),
91 'desc' => __('The email subject.', 'userswp'),
92 'id' => 'registration_success_email_subject_admin',
93 'type' => 'text',
94 'class' => 'large-text',
95 'desc_tip' => true,
96 'placeholder' => UsersWP_Defaults::registration_success_email_subject_admin(),
97 'advanced' => true
98 ),
99 array(
100 'name' => __('Body', 'userswp'),
101 'desc' => __('The email body, this can be text or HTML.', 'userswp'),
102 'id' => 'registration_success_email_content_admin',
103 'type' => 'textarea',
104 'class' => 'code uwp-email-body',
105 'desc_tip' => true,
106 'placeholder' => UsersWP_Defaults::registration_success_email_content_admin(),
107 'advanced' => true,
108 'custom_desc' => __('Available template tags:', 'userswp') . ' ' . uwp_all_email_tags()
109 ),
110
111 array('type' => 'sectionend', 'id' => 'registration_success_admin_email_settings'),
112
113 array('name' => __('Account delete email', 'userswp'), 'type' => 'title', 'desc' => '', 'id' => 'account_delete_admin_email_settings'),
114
115 array(
116 'name' => __('Enable email', 'userswp'),
117 'desc' => __('Send an email to admin after user account deleted from the site.', 'userswp'),
118 'id' => 'account_delete_email_admin',
119 'type' => 'checkbox',
120 'default' => 1,
121 ),
122 array(
123 'name' => __('Subject', 'userswp'),
124 'desc' => __('The email subject.', 'userswp'),
125 'id' => 'account_delete_email_subject_admin',
126 'type' => 'text',
127 'class' => 'large-text',
128 'desc_tip' => true,
129 'advanced' => true,
130 'placeholder' => UsersWP_Defaults::account_delete_email_subject_admin(),
131 ),
132 array(
133 'name' => __('Body', 'userswp'),
134 'desc' => __('The email body, this can be text or HTML.', 'userswp'),
135 'id' => 'account_delete_email_content_admin',
136 'type' => 'textarea',
137 'class' => 'code uwp-email-body',
138 'desc_tip' => true,
139 'advanced' => true,
140 'placeholder' => UsersWP_Defaults::account_delete_email_content_admin(),
141 'custom_desc' => __('Available template tags:', 'userswp') . ' ' . uwp_delete_account_email_tags()
142 ),
143
144 array('type' => 'sectionend', 'id' => 'account_delete_admin_email_settings'),
145
146 ));
147 }elseif($current_section == 'user_emails'){
148 $settings = apply_filters( 'uwp_user_email_settings', array(
149
150
151 array('name' => __('Registration activate email', 'userswp'), 'type' => 'title', 'desc' => '', 'id' => 'registration_activate_email_settings'),
152
153 array(
154 'name' => __('Enable email', 'userswp'),
155 'desc' => __('Send an email to user for activation when registered.', 'userswp'),
156 'id' => 'registration_activate_email',
157 'type' => 'checkbox',
158 'default' => 1,
159 ),
160 array(
161 'name' => __('Subject', 'userswp'),
162 'desc' => __('The email subject.', 'userswp'),
163 'id' => 'registration_activate_email_subject',
164 'type' => 'text',
165 'class' => 'large-text',
166 'desc_tip' => true,
167 'advanced' => true,
168 'placeholder' => UsersWP_Defaults::registration_activate_email_subject(),
169 ),
170 array(
171 'name' => __('Body', 'userswp'),
172 'desc' => __('The email body, this can be text or HTML.', 'userswp'),
173 'id' => 'registration_activate_email_content',
174 'type' => 'textarea',
175 'class' => 'code uwp-email-body',
176 'desc_tip' => true,
177 'advanced' => true,
178 'placeholder' => UsersWP_Defaults::registration_activate_email_content(),
179 'custom_desc' => __('Available template tags:', 'userswp') . ' ' . uwp_all_email_tags()
180 ),
181
182 array('type' => 'sectionend', 'id' => 'registration_activate_email_settings'),
183
184 array('name' => __('Registration success email', 'userswp'), 'type' => 'title', 'desc' => '', 'id' => 'registration_success_email_settings'),
185
186 array(
187 'name' => __('Enable email', 'userswp'),
188 'desc' => __('Send an email to user for when successfull registration.', 'userswp'),
189 'id' => 'registration_success_email',
190 'type' => 'checkbox',
191 'default' => 1,
192 ),
193 array(
194 'name' => __('Subject', 'userswp'),
195 'desc' => __('The email subject.', 'userswp'),
196 'id' => 'registration_success_email_subject',
197 'type' => 'text',
198 'class' => 'large-text',
199 'desc_tip' => true,
200 'advanced' => true,
201 'placeholder' => UsersWP_Defaults::registration_success_email_subject(),
202 ),
203 array(
204 'name' => __('Body', 'userswp'),
205 'desc' => __('The email body, this can be text or HTML.', 'userswp'),
206 'id' => 'registration_success_email_content',
207 'type' => 'textarea',
208 'class' => 'code uwp-email-body',
209 'desc_tip' => true,
210 'advanced' => true,
211 'placeholder' => UsersWP_Defaults::registration_success_email_content(),
212 'custom_desc' => __('Available template tags:', 'userswp') . ' ' . uwp_all_email_tags()
213 ),
214
215 array('type' => 'sectionend', 'id' => 'registration_success_email_settings'),
216
217 array('name' => __('Forgot password email', 'userswp'), 'type' => 'title', 'desc' => '', 'id' => 'forgot_password_email_settings'),
218
219 array(
220 'name' => __('Enable email', 'userswp'),
221 'desc' => __('Send an email to user for forgot password.', 'userswp'),
222 'id' => 'forgot_password_email',
223 'type' => 'checkbox',
224 'default' => 1,
225 ),
226 array(
227 'name' => __('Subject', 'userswp'),
228 'desc' => __('The email subject.', 'userswp'),
229 'id' => 'forgot_password_email_subject',
230 'type' => 'text',
231 'class' => 'large-text',
232 'desc_tip' => true,
233 'advanced' => true,
234 'placeholder' => UsersWP_Defaults::forgot_password_email_subject(),
235 ),
236 array(
237 'name' => __('Body', 'userswp'),
238 'desc' => __('The email body, this can be text or HTML.', 'userswp'),
239 'id' => 'forgot_password_email_content',
240 'type' => 'textarea',
241 'class' => 'code uwp-email-body',
242 'desc_tip' => true,
243 'advanced' => true,
244 'placeholder' => UsersWP_Defaults::forgot_password_email_content(),
245 'custom_desc' => __('Available template tags:', 'userswp') . ' ' . uwp_all_email_tags()
246 ),
247
248 array('type' => 'sectionend', 'id' => 'forgot_password_email_settings'),
249
250 array('name' => __('Change password email', 'userswp'), 'type' => 'title', 'desc' => '', 'id' => 'change_password_email_settings'),
251
252 array(
253 'name' => __('Enable email', 'userswp'),
254 'desc' => __('Send an email to user for change password.', 'userswp'),
255 'id' => 'change_password_email',
256 'type' => 'checkbox',
257 'default' => 1,
258 ),
259 array(
260 'name' => __('Subject', 'userswp'),
261 'desc' => __('The email subject.', 'userswp'),
262 'id' => 'change_password_email_subject',
263 'type' => 'text',
264 'class' => 'large-text',
265 'desc_tip' => true,
266 'advanced' => true,
267 'placeholder' => UsersWP_Defaults::change_password_email_subject(),
268 ),
269 array(
270 'name' => __('Body', 'userswp'),
271 'desc' => __('The email body, this can be text or HTML.', 'userswp'),
272 'id' => 'change_password_email_content',
273 'type' => 'textarea',
274 'class' => 'code uwp-email-body',
275 'desc_tip' => true,
276 'advanced' => true,
277 'placeholder' => UsersWP_Defaults::change_password_email_content(),
278 'custom_desc' => __('Available template tags:', 'userswp') . ' ' . uwp_all_email_tags()
279 ),
280
281 array('type' => 'sectionend', 'id' => 'change_password_email_settings'),
282
283 array('name' => __('Reset password email', 'userswp'), 'type' => 'title', 'desc' => '', 'id' => 'reset_password_email_settings'),
284
285 array(
286 'name' => __('Enable email', 'userswp'),
287 'desc' => __('Send an email to user for reset password.', 'userswp'),
288 'id' => 'reset_password_email',
289 'type' => 'checkbox',
290 'default' => 1,
291 ),
292 array(
293 'name' => __('Subject', 'userswp'),
294 'desc' => __('The email subject.', 'userswp'),
295 'id' => 'reset_password_email_subject',
296 'type' => 'text',
297 'class' => 'large-text',
298 'desc_tip' => true,
299 'advanced' => true,
300 'placeholder' => UsersWP_Defaults::reset_password_email_subject(),
301 ),
302 array(
303 'name' => __('Body', 'userswp'),
304 'desc' => __('The email body, this can be text or HTML.', 'userswp'),
305 'id' => 'reset_password_email_content',
306 'type' => 'textarea',
307 'class' => 'code uwp-email-body',
308 'desc_tip' => true,
309 'advanced' => true,
310 'placeholder' => UsersWP_Defaults::reset_password_email_content(),
311 'custom_desc' => __('Available template tags:', 'userswp') . ' ' . uwp_all_email_tags()
312 ),
313
314 array('type' => 'sectionend', 'id' => 'reset_password_email_settings'),
315
316 array('name' => __('Account update email', 'userswp'), 'type' => 'title', 'desc' => '', 'id' => 'account_update_email_settings'),
317
318 array(
319 'name' => __('Enable email', 'userswp'),
320 'desc' => __('Send an email to user when updating account details.', 'userswp'),
321 'id' => 'account_update_email',
322 'type' => 'checkbox',
323 'default' => 1,
324 ),
325 array(
326 'name' => __('Subject', 'userswp'),
327 'desc' => __('The email subject.', 'userswp'),
328 'id' => 'account_update_email_subject',
329 'type' => 'text',
330 'class' => 'large-text',
331 'desc_tip' => true,
332 'advanced' => true,
333 'placeholder' => UsersWP_Defaults::account_update_email_subject(),
334 ),
335 array(
336 'name' => __('Body', 'userswp'),
337 'desc' => __('The email body, this can be text or HTML.', 'userswp'),
338 'id' => 'account_update_email_content',
339 'type' => 'textarea',
340 'class' => 'code uwp-email-body',
341 'desc_tip' => true,
342 'advanced' => true,
343 'placeholder' => UsersWP_Defaults::account_update_email_content(),
344 'custom_desc' => __('Available template tags:', 'userswp') . ' ' . uwp_all_email_tags()
345 ),
346
347 array('type' => 'sectionend', 'id' => 'account_update_email_settings'),
348
349 array('name' => __('Account delete email', 'userswp'), 'type' => 'title', 'desc' => '', 'id' => 'account_delete_email_settings'),
350
351 array(
352 'name' => __('Enable email', 'userswp'),
353 'desc' => __('Send an email to user after deleting account from the site.', 'userswp'),
354 'id' => 'account_delete_email',
355 'type' => 'checkbox',
356 'default' => 1,
357 ),
358 array(
359 'name' => __('Subject', 'userswp'),
360 'desc' => __('The email subject.', 'userswp'),
361 'id' => 'account_delete_email_subject',
362 'type' => 'text',
363 'class' => 'large-text',
364 'desc_tip' => true,
365 'advanced' => true,
366 'placeholder' => UsersWP_Defaults::account_delete_email_subject(),
367 ),
368 array(
369 'name' => __('Body', 'userswp'),
370 'desc' => __('The email body, this can be text or HTML.', 'userswp'),
371 'id' => 'account_delete_email_content',
372 'type' => 'textarea',
373 'class' => 'code uwp-email-body',
374 'desc_tip' => true,
375 'advanced' => true,
376 'placeholder' => UsersWP_Defaults::account_delete_email_content(),
377 'custom_desc' => __('Available template tags:', 'userswp') . ' ' . uwp_delete_account_email_tags()
378 ),
379
380 array('type' => 'sectionend', 'id' => 'account_delete_email_settings'),
381
382 ));
383 } else {
384 $settings = apply_filters( 'uwp_email_settings', array(
385
386
387 array('name' => __('Email sender options', 'userswp'), 'type' => 'title', 'desc' => '', 'id' => 'email_settings'),
388
389 array(
390 'name' => __('Sender name', 'userswp'),
391 'desc' => __('How the sender name appears in outgoing UsersWP emails.', 'userswp'),
392 'id' => 'email_name',
393 'type' => 'text',
394 'placeholder' => get_bloginfo('name'),
395 'desc_tip' => true,
396 ),
397 array(
398 'name' => __('Email address', 'userswp'),
399 'desc' => __('How the sender email appears in outgoing UsersWP emails.', 'userswp'),
400 'id' => 'email_address',
401 'type' => 'text',
402 'placeholder' => get_bloginfo('admin_email'),
403 'desc_tip' => true,
404 ),
405
406 array('type' => 'sectionend', 'id' => 'email_settings'),
407
408 array('name' => __('Email Template', 'userswp'), 'type' => 'title', 'desc' => sprintf( __( 'This section lets you customize the UsersWP email template. %sClick here to preview your email template%s.', 'userswp' ), '<a href="'.wp_nonce_url( admin_url( '?uwp_preview_mail=true' ), 'uwp-preview-mail' ).'" target="_blank">', '</a>' ), 'id' => 'email_template_settings'),
409
410 array(
411 'type' => 'select',
412 'id' => 'email_type',
413 'name' => __('Email type', 'userswp'),
414 'desc' => __('Select format of the email to send.', 'userswp'),
415 'class' => 'uwp-select',
416 'options' => $this->get_email_type_options(),
417 'default' => 'html',
418 'desc_tip' => true,
419 'advanced' => true,
420 ),
421 array(
422 'name' => __('Logo', 'userswp'),
423 'desc' => __('Upload a logo to be displayed at the top of the emails. Displayed on HTML emails only.', 'userswp'),
424 'id' => 'email_logo',
425 'type' => 'image',
426 'image_size' => 'full',
427 'desc_tip' => true,
428 ),
429 array(
430 'name' => __('Footer Text', 'userswp'),
431 'desc' => __('The text to appear in the footer of all UsersWP emails.', 'userswp'),
432 'id' => 'email_footer_text',
433 'type' => 'text',
434 'class' => 'code',
435 'desc_tip' => true,
436 'placeholder' => $this->email_footer_text()
437 ),
438 'email_base_color' => array(
439 'id' => 'email_base_color',
440 'name' => __( 'Base Color', 'userswp' ),
441 'desc' => __( 'The base color for UsersWP email template. Default <code>#557da2</code>.', 'userswp' ),
442 'default' => '#557da2',
443 'type' => 'color',
444 'desc_tip' => true,
445 'advanced' => true,
446 ),
447 'email_background_color' => array(
448 'id' => 'email_background_color',
449 'name' => __( 'Background Color', 'userswp' ),
450 'desc' => __( 'The background color of email template. Default <code>#f5f5f5</code>.', 'userswp' ),
451 'default' => '#f5f5f5',
452 'type' => 'color',
453 'desc_tip' => true,
454 'advanced' => true,
455 ),
456 'email_body_background_color' => array(
457 'id' => 'email_body_background_color',
458 'name' => __( 'Body Background Color', 'userswp' ),
459 'desc' => __( 'The main body background color of email template. Default <code>#fdfdfd</code>.', 'userswp' ),
460 'default' => '#fdfdfd',
461 'type' => 'color',
462 'desc_tip' => true,
463 'advanced' => true,
464 ),
465 'email_text_color' => array(
466 'id' => 'email_text_color',
467 'name' => __( 'Body Text Color', 'userswp' ),
468 'desc' => __( 'The main body text color. Default <code>#505050</code>.', 'userswp' ),
469 'default' => '#505050',
470 'type' => 'color',
471 'desc_tip' => true,
472 'advanced' => true,
473 ),
474 'email_header_background_color' => array(
475 'id' => 'email_header_background_color',
476 'name' => __( 'Header Background Color', 'userswp' ),
477 'desc' => __( 'The header background color of email template. Default <code>#555555</code>.', 'userswp' ),
478 'default' => '#555555',
479 'type' => 'color',
480 'desc_tip' => true,
481 'advanced' => true,
482 ),
483 'email_header_text_color' => array(
484 'id' => 'email_header_text_color',
485 'name' => __( 'Header Text Color', 'userswp' ),
486 'desc' => __( 'The footer text color. Default <code>#ffffff</code>.', 'userswp' ),
487 'default' => '#ffffff',
488 'type' => 'color',
489 'desc_tip' => true,
490 'advanced' => true,
491 ),
492 'email_footer_background_color' => array(
493 'id' => 'email_footer_background_color',
494 'name' => __( 'Footer Background Color', 'userswp' ),
495 'desc' => __( 'The footer background color of email template. Default <code>#666666</code>.', 'userswp' ),
496 'default' => '#666666',
497 'type' => 'color',
498 'desc_tip' => true,
499 'advanced' => true,
500 ),
501 'email_footer_text_color' => array(
502 'id' => 'email_footer_text_color',
503 'name' => __( 'Footer Text Color', 'userswp' ),
504 'desc' => __( 'The footer text color. Default <code>#dddddd</code>.', 'userswp' ),
505 'default' => '#dddddd',
506 'type' => 'color',
507 'desc_tip' => true,
508 'advanced' => true,
509 ),
510
511 array('type' => 'sectionend', 'id' => 'email_template_settings'),
512
513 ));
514 }
515
516 return apply_filters( 'uwp_get_settings_' . $this->id, $settings );
517 }
518
519 /**
520 * The default email footer text.
521 *
522 * @since 1.2.1.2
523 * @return string
524 */
525 public function email_footer_text(){
526 return apply_filters('uwp_email_footer_text',
527 wp_sprintf( __( '%s - Powered by UsersWP', 'userswp' ), get_bloginfo( 'name', 'display' ) )
528 );
529 }
530
531 /**
532 * Email type options.
533 *
534 * @since 1.2.1.2
535 * @return array
536 */
537 public function get_email_type_options() {
538 $types = array();
539 if ( class_exists( 'DOMDocument' ) ) {
540 $types['html'] = __( 'HTML', 'userswp' );
541 }
542 $types['plain'] = __( 'Plain text', 'userswp' );
543
544 return $types;
545 }
546
547 }
548
549 endif;
550
551 return new UsersWP_Settings_Email();