PluginProbe
User Profile Builder – Beautiful User Registration Forms, User Profiles & User Role Editor / 3.9.9
User Profile Builder – Beautiful User Registration Forms, User Profiles & User Role Editor v3.9.9
4.0.3 4.0.2 4.0.1 4.0.0 3.16.6 3.16.5 3.16.4 3.16.3 3.16.2 3.16.1 3.16.0 3.15.9 3.9.9 3.9.5 3.9.6 3.9.7 3.9.8 1.1.7 1.1.8 1.1.9 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 All 341 releases
profile-builder / add-ons-free / import-export / pbie-export.php

pbie-export.php in User Profile Builder – Beautiful User Registration Forms, User Profiles & User Role Editor 3.9.9, at add-ons-free/import-export/pbie-export.php

144 lines 5.5 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 /* include export class */
4 require_once 'inc/class-pbie-export.php';
5
6 /* add scripts */
7 add_action( 'admin_init', 'wppb_pbie_export_our_json' );
8
9 /* export class arguments and call */
10 function wppb_pbie_export_our_json() {
11 if( isset( $_POST['cozmos-export'] ) && isset( $_POST['wppb_nonce'] ) && wp_verify_nonce( sanitize_text_field( $_POST['wppb_nonce'] ), 'wppb_export_settings' ) ) {
12 /* get Profile Builder version */
13 $versions = array( 'Profile Builder Pro', 'Profile Builder Agency', 'Profile Builder Unlimited', 'Profile Builder Dev' );
14
15 if( in_array( PROFILE_BUILDER, $versions ) ) {
16 $version = 'pro';
17 } elseif( PROFILE_BUILDER == 'Profile Builder Hobbyist' || PROFILE_BUILDER == 'Profile Builder Basic' ) {
18 $version = 'hobbyist';
19 }
20
21 $pbie_args = array(
22 'options' => array(
23 // General Settings
24 'wppb_general_settings',
25 // Content Restriction
26 'wppb_content_restriction_settings',
27 // Roles Editor
28 'wppb_roles_editor_capabilities',
29 // Serial Settings
30 'wppb_profile_builder_'.$version.'_serial_status',
31 'wppb_profile_builder_'.$version.'_serial',
32 // Manage Fields
33 'wppb_manage_fields',
34 // Module Settings
35 'wppb_module_settings',
36 'wppb_module_settings_description',
37 'wppb_free_add_ons_settings',
38 'wppb_advanced_add_ons_settings',
39 // Email Customizer Settings
40 'wppb_emailc_common_settings_from_name',
41 'wppb_emailc_common_settings_from_reply_to_email',
42 // Email Customizer for Admins
43 'wppb_admin_emailc_default_registration_email_subject',
44 'wppb_admin_emailc_default_registration_email_content',
45 'wppb_admin_emailc_registration_with_admin_approval_email_subject',
46 'wppb_admin_emailc_registration_with_admin_approval_email_content',
47 'wppb_admin_emailc_user_password_reset_email_subject',
48 'wppb_admin_emailc_user_password_reset_email_content',
49 // Email Customizer for Users
50 'wppb_user_emailc_default_registration_email_subject',
51 'wppb_user_emailc_default_registration_email_content',
52 'wppb_user_emailc_registr_w_email_confirm_email_subject',
53 'wppb_user_emailc_registr_w_email_confirm_email_content',
54 'wppb_user_emailc_registration_with_admin_approval_email_subject',
55 'wppb_user_emailc_registration_with_admin_approval_email_content',
56 'wppb_user_emailc_admin_approval_notif_approved_email_subject',
57 'wppb_user_emailc_admin_approval_notif_approved_email_content',
58 'wppb_user_emailc_admin_approval_notif_unapproved_email_subject',
59 'wppb_user_emailc_admin_approval_notif_unapproved_email_content',
60 'wppb_user_emailc_reset_email_subject',
61 'wppb_user_emailc_reset_email_content',
62 'wppb_user_emailc_reset_success_email_subject',
63 'wppb_user_emailc_reset_success_email_content',
64 'wppb_user_emailc_change_email_address_subject',
65 'wppb_user_emailc_change_email_address_content',
66 // Custom Redirects
67 'wppb_cr_user',
68 'wppb_cr_role',
69 'wppb_cr_global',
70 'wppb_cr_default_wp_pages',
71 'customRedirectSettings', // this is the old version of custom redirects, we only keep this for backwards compatibility
72 // Private Website
73 'wppb_private_website_settings',
74 // Add-on: Multi-Step Forms
75 'wppb_msf_options',
76 'wppb_msf_break_points',
77 'wppb_msf_tab_titles',
78 // Add-on: Social Connect
79 'wppb_social_connect_settings',
80 // Add-on: bbPress
81 'wppb_bbpress_settings',
82 // Add-on: BuddyPress
83 'wppb_buddypress_settings',
84 // Add-on: Campaign Monitor
85 'wppb_cmi_settings',
86 'wppb_cmi_api_key_validated',
87 // Add-on: MailChimp
88 'wppb_mci_settings',
89 'wppb_mailchimp_api_key_validated',
90 // Add-on: WooSync
91 'wppb_woosync_settings',
92 // Add-on: Toolbox
93 'wppb_toolbox_forms_settings',
94 'wppb_toolbox_fields_settings',
95 'wppb_toolbox_userlisting_settings',
96 'wppb_toolbox_shortcodes_settings',
97 ),
98 'cpts' => array(
99 // User Listing
100 'wppb-ul-cpt',
101 // Register Forms
102 'wppb-rf-cpt',
103 // Edit Profile Forms
104 'wppb-epf-cpt',
105 )
106 );
107
108 wppb_pbie_add_repeater_meta_names($pbie_args);
109
110 $pb_prefix = 'PB_';
111 $pbie_json_export = new WPPB_ImpEx_Export( $pbie_args );
112 $pbie_json_export->download_to_json_format( $pb_prefix );
113 }
114 }
115
116 /* Export tab content function */
117 function wppb_pbie_export() {
118 ?>
119 <div class="cozmoslabs-form-subsection-wrapper">
120 <h4 class="cozmoslabs-subsection-title"><?php esc_html_e( 'Export Profile Builder Options', 'profile-builder' ); ?></h4>
121 <p class="cozmoslabs-description"><?php esc_html_e( 'This allows you to easily import the configuration into another site.', 'profile-builder' ); ?></p>
122
123 <form action="" method="post">
124 <input type="hidden" name="wppb_nonce" value="<?php echo esc_attr( wp_create_nonce( 'wppb_export_settings' ) ); ?>" />
125
126 <div class="cozmoslabs-form-field-wrapper">
127 <label class="cozmoslabs-form-field-label"><?php esc_html_e('Export Options', 'profile-builder'); ?></label>
128 <input class="button-secondary" type="submit" name="cozmos-export" value=<?php esc_html_e( 'Export', 'profile-builder' ); ?> id="cozmos-export" />
129 <p class="cozmoslabs-description cozmoslabs-description-align-right"><?php esc_html_e( 'Export Profile Builder options as a JSON file.', 'profile-builder' ); ?></p>
130 </div>
131 </form>
132 </div>
133 <?php
134 }
135
136 function wppb_pbie_add_repeater_meta_names( &$args ) {
137 $fields = get_option('wppb_manage_fields');
138
139 foreach ($fields as $field) {
140 if ($field['field'] == 'Repeater')
141 $args['options'][] = $field['meta-name'];
142 }
143 }
144