Server IP : 172.67.157.199 / Your IP : 18.227.49.243 [ Web Server : Apache System : Linux b70eb322-3aee-0c53-7c82-0db91281f2c6.secureserver.net 6.1.90-1.el9.elrepo.x86_64 #1 SMP PREEMPT_DYNAMIC Thu May 2 12:09:22 EDT 2024 x86_64 User : root ( 0) PHP Version : 8.0.30.2 Disable Function : NONE Domains : 0 Domains MySQL : ON | cURL : ON | WGET : ON | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/chroot/var/www/wp-content/plugins/profile-builder/features/email-customizer/ |
Upload File : |
<?php // Exit if accessed directly if ( ! defined( 'ABSPATH' ) ) exit; /** * Function that creates the User Email Customizer menu * * @since v.2.0 * * @return void */ function wppb_user_email_customizer_submenu(){ $args = array( 'menu_title' => __( 'User Email Customizer', 'profile-builder' ), 'page_title' => __( 'User Email Customizer Settings', 'profile-builder' ), 'menu_slug' => 'user-email-customizer', 'page_type' => 'submenu_page', 'capability' => 'manage_options', 'priority' => 10, 'parent_slug' => 'profile-builder' ); new WCK_Page_Creator_PB( $args ); } add_action( 'admin_menu', 'wppb_user_email_customizer_submenu', 1 ); add_action( 'wck_before_meta_boxes', 'wppb_add_tabs_on_top_of_user_email_page' ); function wppb_add_tabs_on_top_of_user_email_page( $hookname ){ if( $hookname == 'profile-builder_page_user-email-customizer' ){ if( isset( $_GET['mustache_action'] ) && $_GET['mustache_action'] == 'save' ) { ?> <div id="setting-error-settings_updated" class="updated settings-error notice"> <p><strong><?php esc_html_e( "Settings saved.", 'profile-builder' ); ?></strong></p> </div> <?php } wppb_generate_settings_tabs(); } } /* on the init hook add the mustache boxes */ add_action( 'init', 'wppb_user_email_customizer_add_mustache_in_backend', 11 ); /** * Function that ads the mustache boxes in the backend for user email customizer * * @since v.2.0 */ function wppb_user_email_customizer_add_mustache_in_backend(){ if( defined( 'WPPB_PAID_PLUGIN_DIR' ) && file_exists( WPPB_PAID_PLUGIN_DIR . '/assets/lib/class-mustache-templates/class-mustache-templates.php' ) ) require_once( WPPB_PAID_PLUGIN_DIR . '/assets/lib/class-mustache-templates/class-mustache-templates.php' ); elseif( file_exists( WPPB_PLUGIN_DIR . '/assets/lib/class-mustache-templates/class-mustache-templates.php' ) ) require_once( WPPB_PLUGIN_DIR . '/assets/lib/class-mustache-templates/class-mustache-templates.php' ); $fields = array( array( 'id' => 'wppb_admin_emailc_common_settings_header', // field id and name 'type' => 'header', // type of field 'default' => __( 'These settings are also replicated in the "Admin Email Customizer" settings-page upon save.', 'profile-builder' ).' '.__( 'Valid tags {{reply_to}} and {{site_name}}', 'profile-builder'), // type of field ), array( 'label' => __( 'From (name)', 'profile-builder' ), // <label> 'desc' => '', // description 'id' => 'wppb_emailc_common_settings_from_name', // field id and name 'type' => 'text', // type of field 'default' => '{{site_name}}', // type of field 'desc' => '', ), array( 'label' => __( 'From (reply-to email)', 'profile-builder' ), // <label> 'desc' => '', // description 'id' => 'wppb_emailc_common_settings_from_reply_to_email', // field id and name 'type' => 'text', // type of field 'default' => '{{reply_to}}', // type of field 'desc' => __( 'Must be a valid email address or the tag {{reply_to}} which defaults to the administrator email', 'profile-builder' ), ), ); new PB_Mustache_Generate_Admin_Box( 'uec_common_settings', __( 'Common Settings', 'profile-builder' ), 'profile-builder_page_user-email-customizer', 'core', '', '', $fields ); /* * Default Registration */ // we format the var like this for proper line breaks. $uec_default_registration = __("<h3>Welcome to {{site_name}}!</h3>\n<p>Your username is: {{username}}</p>\n", 'profile-builder' ); $mustache_vars = wppb_email_customizer_generate_merge_tags(); $fields = array( array( 'label' => __( 'Email Subject', 'profile-builder' ), // <label> 'desc' => '', // description 'id' => 'wppb_user_emailc_default_registration_email_subject', // field id and name 'type' => 'text', // type of field 'default' => 'A new account has been created for you on {{site_name}}', // type of field ), array( 'label' => __( 'Enable email', 'profile-builder' ), // <label> 'desc' => '', // description 'id' => 'wppb_user_emailc_default_registration_email_enabled', // field id and name 'type' => 'checkbox', // type of field 'default' => 'on', ), array( // Textarea 'label' => '', // <label> 'desc' => '', // description 'id' => 'wppb_user_emailc_default_registration_email_content', // field id and name 'type' => 'textarea', // type of field 'default' => $uec_default_registration, // type of field ) ); new PB_Mustache_Generate_Admin_Box( 'uec_default_registration', __( 'Default Registration', 'profile-builder' ), 'profile-builder_page_user-email-customizer', 'core', $mustache_vars, '', $fields ); /* * Registration with Email Confirmation */ // we format the var like this for proper line breaks. $uec_reg_with_email_confirm = __( "<p>To activate your user, please click the following link:<br/>\n{{{activation_link}}}</p>\n<p>After you activate, you will receive another email with your credentials.</p>\n", 'profile-builder' ); $mustache_vars = wppb_email_customizer_generate_merge_tags( 'email_confirmation' ); $fields = array( array( 'label' => __( 'Email Subject', 'profile-builder' ), // <label> 'desc' => '', // description 'id' => 'wppb_user_emailc_registr_w_email_confirm_email_subject', // field id and name 'type' => 'text', // type of field 'default' => __( '[{{site_name}}] Activate {{username}}', 'profile-builder' ), // type of field ), array( 'label' => __( 'Enable email', 'profile-builder' ), // <label> 'desc' => '', // description 'id' => 'wppb_user_emailc_registr_w_email_confirm_email_enabled', // field id and name 'type' => 'checkbox', // type of field 'default' => 'on', ), array( // Textarea 'label' => '', // <label> 'desc' => '', // description 'id' => 'wppb_user_emailc_registr_w_email_confirm_email_content', // field id and name 'type' => 'textarea', // type of field 'default' => $uec_reg_with_email_confirm, // type of field ) ); new PB_Mustache_Generate_Admin_Box( 'uec_reg_with_email_confirmation', __( 'Registration with Email Confirmation', 'profile-builder' ), 'profile-builder_page_user-email-customizer', 'core', $mustache_vars, '', $fields ); if( PROFILE_BUILDER != 'Profile Builder Free' ){ /* * Registration with Admin Approval */ $uec_reg_with_admin_approval = __( "<h3>Welcome to {{site_name}}!</h3>\n<p>Your username is: {{username}}</p>\n<p>Before you can access your account, an administrator needs to approve it. You will be notified via email.</p>\n", 'profile-builder' ); $mustache_vars = wppb_email_customizer_generate_merge_tags(); $fields = array( array( 'label' => __( 'Email Subject', 'profile-builder' ), // <label> 'desc' => '', // description 'id' => 'wppb_user_emailc_registration_with_admin_approval_email_subject', // field id and name 'type' => 'text', // type of field 'default' => __( 'A new account has been created for you on {{site_name}}', 'profile-builder' ), // type of field ), array( 'label' => __( 'Enable email', 'profile-builder' ), // <label> 'desc' => '', // description 'id' => 'wppb_user_emailc_registration_with_admin_approval_email_enabled', // field id and name 'type' => 'checkbox', // type of field 'default' => 'on', ), array( // Textarea 'label' => '', // <label> 'desc' => '', // description 'id' => 'wppb_user_emailc_registration_with_admin_approval_email_content', // field id and name 'type' => 'textarea', // type of field 'default' => $uec_reg_with_admin_approval, // type of field ) ); new PB_Mustache_Generate_Admin_Box( 'uec_reg_with_admin_approval', __( 'Registration with Admin Approval', 'profile-builder' ), 'profile-builder_page_user-email-customizer', 'core', $mustache_vars, '', $fields ); /* * Admin Approval Notifications ( on user approval ) */ $uec_notif_approved_email = __( "<h3>Good News!</h3>\n<p>An administrator has just approved your account: {{username}} on {{site_name}}.</p>\n", 'profile-builder' ); $mustache_vars = wppb_email_customizer_generate_merge_tags(); $fields = array( array( 'label' => __( 'Email Subject', 'profile-builder' ), // <label> 'desc' => '', // description 'id' => 'wppb_user_emailc_admin_approval_notif_approved_email_subject', // field id and name 'type' => 'text', // type of field 'default' => __( 'Your account on {{site_name}} has been approved!', 'profile-builder' ), // type of field ), array( 'label' => __( 'Enable email', 'profile-builder' ), // <label> 'desc' => '', // description 'id' => 'wppb_user_emailc_admin_approval_notif_approved_email_enabled', // field id and name 'type' => 'checkbox', // type of field 'default' => 'on', ), array( // Textarea 'label' => '', // <label> 'desc' => '', // description 'id' => 'wppb_user_emailc_admin_approval_notif_approved_email_content', // field id and name 'type' => 'textarea', // type of field 'default' => $uec_notif_approved_email, // type of field ) ); new PB_Mustache_Generate_Admin_Box( 'uec_notif_approved_email', __( 'User Approval Notification', 'profile-builder' ), 'profile-builder_page_user-email-customizer', 'core', $mustache_vars, '', $fields ); /* * Admin Approval Notifications ( on user unapproval ) */ $uec_notif_unapproved_email = __( "<h3>Hello,</h3>\n<p>Unfortunatelly an administrator has just unapproved your account: {{username}} on {{site_name}}.</p>\n", 'profile-builder' ); $mustache_vars = wppb_email_customizer_generate_merge_tags(); $fields = array( array( 'label' => __( 'Email Subject', 'profile-builder' ), // <label> 'desc' => '', // description 'id' => 'wppb_user_emailc_admin_approval_notif_unapproved_email_subject', // field id and name 'type' => 'text', // type of field 'default' => __( 'Your account on {{site_name}} has been unapproved!', 'profile-builder' ), // type of field ), array( 'label' => __( 'Enable email', 'profile-builder' ), // <label> 'desc' => '', // description 'id' => 'wppb_user_emailc_admin_approval_notif_unapproved_email_enabled', // field id and name 'type' => 'checkbox', // type of field 'default' => 'on', ), array( // Textarea 'label' => '', // <label> 'desc' => '', // description 'id' => 'wppb_user_emailc_admin_approval_notif_unapproved_email_content', // field id and name 'type' => 'textarea', // type of field 'default' => $uec_notif_unapproved_email , // type of field ) ); new PB_Mustache_Generate_Admin_Box( 'uec_notif_unapproved_email', __( 'Unapproved User Notification', 'profile-builder' ), 'profile-builder_page_user-email-customizer', 'core', $mustache_vars, '', $fields ); } /* * Password Reset Email */ // we format the var like this for proper line breaks. $uec_reset = __( "<p>Someone requested that the password be reset for the following account: {{site_name}}<br/>\nUsername: {{username}}</p>\n<p>If this was a mistake, just ignore this email and nothing will happen.</p>\n<p>To reset your password, visit the following address:<br/>\n{{{reset_link}}}</p>\n", 'profile-builder' ); $mustache_vars = wppb_email_customizer_generate_merge_tags( 'password_reset' ); $fields = array( array( 'label' => __( 'Email Subject', 'profile-builder' ), // <label> 'desc' => '', // description 'id' => 'wppb_user_emailc_reset_email_subject', // field id and name 'type' => 'text', // type of field 'default' => __( '[{{site_name}}] Password Reset', 'profile-builder' ), // type of field ), array( 'label' => __( 'Enable email', 'profile-builder' ), // <label> 'desc' => '', // description 'id' => 'wppb_user_emailc_reset_email_enabled', // field id and name 'type' => 'checkbox', // type of field 'default' => 'on', ), array( // Textarea 'label' => '', // <label> 'desc' => '', // description 'id' => 'wppb_user_emailc_reset_email_content', // field id and name 'type' => 'textarea', // type of field 'default' => $uec_reset, // type of field ) ); new PB_Mustache_Generate_Admin_Box( 'uec_reset', __( 'Password Reset Email', 'profile-builder' ), 'profile-builder_page_user-email-customizer', 'core', $mustache_vars, '', $fields ); /* * Password Reset Success Email */ // we format the var like this for proper line breaks. $uec_reset_success = __( "<p>You have successfully reset your password.</p>\n", 'profile-builder' ); $mustache_vars = wppb_email_customizer_generate_merge_tags( 'password_reset_success' ); $fields = array( array( 'label' => __( 'Email Subject', 'profile-builder' ), // <label> 'desc' => '', // description 'id' => 'wppb_user_emailc_reset_success_email_subject', // field id and name 'type' => 'text', // type of field 'default' => __( '[{{site_name}}] Password Reset Successfully', 'profile-builder' ), // type of field ), array( 'label' => __( 'Enable email', 'profile-builder' ), // <label> 'desc' => '', // description 'id' => 'wppb_user_emailc_reset_success_email_enabled', // field id and name 'type' => 'checkbox', // type of field 'default' => 'on', ), array( // Textarea 'label' => '', // <label> 'desc' => '', // description 'id' => 'wppb_user_emailc_reset_success_email_content', // field id and name 'type' => 'textarea', // type of field 'default' => $uec_reset_success, // type of field ) ); new PB_Mustache_Generate_Admin_Box( 'uec_reset_success', __( 'Password Reset Success Email', 'profile-builder' ), 'profile-builder_page_user-email-customizer', 'core', $mustache_vars, '', $fields ); /* * Change Email Address Request Notification */ $admin_email = get_option('admin_email'); // we format the var like this for proper line breaks. $uec_change_email_request = sprintf( __( "<h3>Hi {{username}},</h3>\n<p>There is an email address change request on {{site_name}}.</p>\n<p>To change your email address click on: {{{user_email_change_link}}}</p>\n<p>Regards,<br>\nAll at {{site_name}}<br>\n<a href=\"{{site_url}}\">{{site_url}}</a></p>", 'profile-builder' ), $admin_email ); $mustache_vars = wppb_email_customizer_generate_merge_tags( 'change_email_address_request' ); $fields = array( array( 'label' => __( 'Email Subject', 'profile-builder' ), // <label> 'desc' => '', // description 'id' => 'wppb_user_emailc_change_email_address_request_subject', // field id and name 'type' => 'text', // type of field 'default' => __( '[{{site_name}}] Notice of Email Change Request', 'profile-builder' ), // type of field ), array( 'label' => __( 'Enable email', 'profile-builder' ), // <label> 'desc' => '', // description 'id' => 'wppb_user_emailc_change_email_address_request_enabled', // field id and name 'type' => 'checkbox', // type of field 'default' => 'on', ), array( // Textarea 'label' => '', // <label> 'desc' => '', // description 'id' => 'wppb_user_emailc_change_email_address_request_content', // field id and name 'type' => 'textarea', // type of field 'default' => $uec_change_email_request, // type of field ) ); new PB_Mustache_Generate_Admin_Box( 'uec_change_email_request', __( 'Change Email Address Request Email', 'profile-builder' ), 'profile-builder_page_user-email-customizer', 'core', $mustache_vars, '', $fields ); /* * Change Email Address Notification */ $admin_email = get_option('admin_email'); // we format the var like this for proper line breaks. $uec_change_email = sprintf( __( "<h3>Hi {{username}},</h3>\n<p>This notice confirms that your email was changed on {{site_name}}.</p>\n<p>If you did not change your email, please contact the Site Administrator at %s</p>\n<p>This email has been sent to {{user_email}}</p>\n<p>Regards,<br>\nAll at {{site_name}}<br>\n<a href=\"{{site_url}}\">{{site_url}}</a></p>", 'profile-builder' ), $admin_email ); $mustache_vars = wppb_email_customizer_generate_merge_tags( 'change_email_address' ); $fields = array( array( 'label' => __( 'Email Subject', 'profile-builder' ), // <label> 'desc' => '', // description 'id' => 'wppb_user_emailc_change_email_address_subject', // field id and name 'type' => 'text', // type of field 'default' => __( '[{{site_name}}] Notice of Email Change', 'profile-builder' ), // type of field ), array( 'label' => __( 'Enable email', 'profile-builder' ), // <label> 'desc' => '', // description 'id' => 'wppb_user_emailc_change_email_address_enabled', // field id and name 'type' => 'checkbox', // type of field 'default' => 'on', ), array( // Textarea 'label' => '', // <label> 'desc' => '', // description 'id' => 'wppb_user_emailc_change_email_address_content', // field id and name 'type' => 'textarea', // type of field 'default' => $uec_change_email, // type of field ) ); new PB_Mustache_Generate_Admin_Box( 'uec_change_email', __( 'Changed Email Address Notification', 'profile-builder' ), 'profile-builder_page_user-email-customizer', 'core', $mustache_vars, '', $fields ); }