Skip to content

Commit 6dafba1

Browse files
committed
refactor vendor migration
1 parent 69615af commit 6dafba1

File tree

1 file changed

+15
-137
lines changed

1 file changed

+15
-137
lines changed

includes/Admin/Migrators/WCFM_Migrator.php

+15-137
Original file line numberDiff line numberDiff line change
@@ -64,156 +64,34 @@ private function get_all_vendors()
6464

6565
public function migrate()
6666
{
67-
$this->store_setting_migrate(5);
67+
$this->migrate_vendor(5);
6868
}
6969

7070
function dokan_allwoed_vendor_user_roles( $user_roles ) {
7171
return array( 'seller' );
7272
}
7373

74-
public function store_setting_migrate( $vendor_id ) {
75-
global $WCFM, $WCFMmg;
76-
77-
if( !$vendor_id ) return false;
78-
$vendor_id = 5;
79-
$vendor_data = array();
80-
74+
/**
75+
* Migrate a vendor to dokan vendor
76+
*
77+
* @param int $vendor_id
78+
* @return void
79+
*/
80+
public function migrate_vendor( $vendor_id ) {
81+
if ( !$vendor_id ) {
82+
return false;
83+
}
84+
8185
$vendor_user = get_userdata( $vendor_id );
8286

8387
$vendor_user->set_role('seller');
8488

85-
$vendor_data = get_user_meta( $vendor_id, 'dokan_profile_settings', true );
86-
// $vendor_data = get_user_meta( $vendor_id, 'wcfmmp_profile_settings', true );
87-
88-
// var_dump($vendor_data);
89-
90-
// exit();
91-
if( !$vendor_data || ( $vendor_data && !is_array( $vendor_data ) ) ) $vendor_data = array();
92-
93-
$vendor_data['banner_type'] = 'single_img';
94-
// $vendor_data['list_banner'] = isset( $vendor_data['banner'] ) ? $vendor_data['banner'] : '';
95-
$vendor_data['banner'] = isset( $vendor_data['list_banner'] ) ? $vendor_data['list_banner'] : '';
96-
$vendor_data['store_name'] = isset( $vendor_data['store_name'] ) ? $vendor_data['store_name'] : $vendor_user->display_name;
97-
98-
/** */
99-
$vendor_data['email'] = $vendor_user->user_email;
100-
101-
// Store Location
102-
$vendor_data['find_address'] = isset( $vendor_data['find_address'] ) ? esc_attr( $vendor_data['find_address'] ) : '';
103-
// $vendor_data['store_location'] = isset( $vendor_data['location'] ) ? esc_attr( $vendor_data['location'] ) : '';
104-
$vendor_data['location'] = isset( $vendor_data['store_location'] ) ? esc_attr( $vendor_data['store_location'] ) : '';
105-
/** */
106-
$vendor_data['store_lat'] = 0;
107-
$vendor_data['store_lng'] = 0;
108-
109-
// Customer Support
110-
$vendor_data['customer_support'] = array();
111-
112-
// $vendor_data['customer_support']['phone'] = isset( $vendor_data['phone'] ) ? esc_attr( $vendor_data['phone'] ) : '';
113-
$vendor_data['phone'] = isset( $vendor_data['customer_support']['phone'] ) ? esc_attr( $vendor_data['customer_support']['phone'] ) : '';
114-
/** */
115-
$vendor_data['customer_support']['email'] = $vendor_user->user_email;
116-
117-
// $vendor_data['customer_support']['address1'] = isset( $vendor_data['address']['street_1'] ) ? $vendor_data['address']['street_1'] : '';
118-
$vendor_data['address']['street_1'] = isset( $vendor_data['customer_support']['address1'] ) ? $vendor_data['customer_support']['address1'] : '';
119-
// $vendor_data['customer_support']['address2'] = isset( $vendor_data['address']['street_2'] ) ? $vendor_data['address']['street_2'] : '';
120-
$vendor_data['address']['street_2'] = isset( $vendor_data['customer_support']['address2'] ) ? $vendor_data['customer_support']['address2'] : '';
121-
// $vendor_data['customer_support']['country'] = isset( $vendor_data['address']['country'] ) ? $vendor_data['address']['country'] : '';
122-
$vendor_data['address']['country'] = isset( $vendor_data['customer_support']['country'] ) ? $vendor_data['customer_support']['country'] : '';
123-
// $vendor_data['customer_support']['city'] = isset( $vendor_data['address']['city'] ) ? $vendor_data['address']['city'] : '';
124-
$vendor_data['address']['city'] = isset( $vendor_data['customer_support']['city'] ) ? $vendor_data['customer_support']['city'] : '';
125-
// $vendor_data['customer_support']['state'] = isset( $vendor_data['address']['state'] ) ? $vendor_data['address']['state'] : '';
126-
$vendor_data['address']['state'] = isset( $vendor_data['customer_support']['state'] ) ? $vendor_data['customer_support']['state'] : '';
127-
// $vendor_data['customer_support']['zip'] = isset( $vendor_data['address']['zip'] ) ? $vendor_data['address']['zip'] : '';
128-
$vendor_data['address']['zip'] = isset( $vendor_data['customer_support']['zip'] ) ? $vendor_data['customer_support']['zip'] : '';
129-
130-
// Store Policy
131-
// $wcfm_policy_vendor_options = array();
132-
// $wcfm_policy_vendor_options['policy_tab_title'] = '';
133-
// $wcfm_policy_vendor_options['shipping_policy'] = get_user_meta( $vendor_id, '_dps_ship_policy', true );
134-
// $wcfm_policy_vendor_options['refund_policy'] = get_user_meta( $vendor_id, '_dps_refund_policy', true );
135-
// $wcfm_policy_vendor_options['cancellation_policy'] = get_user_meta( $vendor_id, '_dps_refund_policy', true );
136-
// update_user_meta( $vendor_id, 'wcfm_policy_vendor_options', $wcfm_policy_vendor_options );
137-
138-
139-
$wcfm_policies = get_user_meta( $vendor_id, 'wcfm_policy_vendor_options', true );
140-
update_user_meta($vendor_id, '_dps_ship_policy', isset($wcfm_policies['shipping_policy']) ? $wcfm_policies['shipping_policy'] : '');
141-
142-
$refund_policy = isset($wcfm_policies['refund_policy']) ? $wcfm_policies['refund_policy'] : null;
143-
144-
$refund_policy .= isset($wcfm_policies['cancellation_policy']) ? ('; ' . $wcfm_policies['cancellation_policy']) : null;
89+
$vendor_meta = $this->map_vendor_meta( $vendor_id );
14590

146-
update_user_meta($vendor_id, '_dps_refund_policy', $refund_policy);
147-
148-
// Store SEO
149-
// $vendor_data['store_seo']['wcfmmp-seo-meta-title'] = isset( $vendor_data['store_seo']['dokan-seo-meta-title'] ) ? $vendor_data['store_seo']['dokan-seo-meta-title'] : '';
150-
$vendor_data['store_seo']['dokan-seo-meta-title'] = isset( $vendor_data['store_seo']['wcfmmp-seo-meta-title'] ) ? $vendor_data['store_seo']['wcfmmp-seo-meta-title'] : '';
151-
// $vendor_data['store_seo']['wcfmmp-seo-meta-desc'] = isset( $vendor_data['store_seo']['dokan-seo-meta-desc'] ) ? $vendor_data['store_seo']['dokan-seo-meta-desc'] : '';
152-
$vendor_data['store_seo']['dokan-seo-meta-desc'] = isset( $vendor_data['store_seo']['wcfmmp-seo-meta-desc'] ) ? $vendor_data['store_seo']['wcfmmp-seo-meta-desc'] : '';
153-
// $vendor_data['store_seo']['wcfmmp-seo-meta-keywords'] = isset( $vendor_data['store_seo']['dokan-seo-meta-keywords'] ) ? $vendor_data['store_seo']['dokan-seo-meta-keywords'] : '';
154-
$vendor_data['store_seo']['dokan-seo-meta-keywords'] = isset( $vendor_data['store_seo']['wcfmmp-seo-meta-keywords'] ) ? $vendor_data['store_seo']['wcfmmp-seo-meta-keywords'] : '';
155-
// $vendor_data['store_seo']['wcfmmp-seo-og-title'] = isset( $vendor_data['store_seo']['dokan-seo-og-title'] ) ? $vendor_data['store_seo']['dokan-seo-og-title'] : '';
156-
$vendor_data['store_seo']['dokan-seo-og-title'] = isset( $vendor_data['store_seo']['wcfmmp-seo-og-title'] ) ? $vendor_data['store_seo']['wcfmmp-seo-og-title'] : '';
157-
// $vendor_data['store_seo']['wcfmmp-seo-og-desc'] = isset( $vendor_data['store_seo']['dokan-seo-og-desc'] ) ? $vendor_data['store_seo']['dokan-seo-og-desc'] : '';
158-
$vendor_data['store_seo']['dokan-seo-og-desc'] = isset( $vendor_data['store_seo']['wcfmmp-seo-og-desc'] ) ? $vendor_data['store_seo']['wcfmmp-seo-og-desc'] : '';
159-
// $vendor_data['store_seo']['wcfmmp-seo-og-image'] = isset( $vendor_data['store_seo']['dokan-seo-og-image'] ) ? $vendor_data['store_seo']['dokan-seo-og-image'] : 0;
160-
$vendor_data['store_seo']['dokan-seo-og-image'] = isset( $vendor_data['store_seo']['wcfmmp-seo-og-image'] ) ? $vendor_data['store_seo']['wcfmmp-seo-og-image'] : 0;
161-
// $vendor_data['store_seo']['wcfmmp-seo-twitter-title'] = isset( $vendor_data['store_seo']['dokan-seo-twitter-title'] ) ? $vendor_data['store_seo']['dokan-seo-twitter-title'] : '';
162-
$vendor_data['store_seo']['dokan-seo-twitter-title'] = isset( $vendor_data['store_seo']['wcfmmp-seo-twitter-title'] ) ? $vendor_data['store_seo']['wcfmmp-seo-twitter-title'] : '';
163-
// $vendor_data['store_seo']['wcfmmp-seo-twitter-desc'] = isset( $vendor_data['store_seo']['dokan-seo-twitter-desc'] ) ? $vendor_data['store_seo']['dokan-seo-twitter-desc'] : '';
164-
$vendor_data['store_seo']['dokan-seo-twitter-desc'] = isset( $vendor_data['store_seo']['wcfmmp-seo-twitter-desc'] ) ? $vendor_data['store_seo']['wcfmmp-seo-twitter-desc'] : '';
165-
// $vendor_data['store_seo']['wcfmmp-seo-twitter-image'] = isset( $vendor_data['store_seo']['dokan-seo-twitter-image'] ) ? $vendor_data['store_seo']['dokan-seo-twitter-image'] : 0;
166-
$vendor_data['store_seo']['dokan-seo-twitter-image'] = isset( $vendor_data['store_seo']['wcfmmp-seo-twitter-image'] ) ? $vendor_data['store_seo']['wcfmmp-seo-twitter-image'] : 0;
167-
168-
// Set Store name
169-
// update_user_meta( $vendor_id, 'store_name', $vendor_data['store_name'] );
170-
// update_user_meta( $vendor_id, 'wcfmmp_store_name', $vendor_data['store_name'] );
171-
172-
// Set Store name
173-
$store_name = get_user_meta( $vendor_id, 'wcfmmp_store_name', true) ?: get_user_meta( $vendor_id, 'store_name', true);
174-
$vendor_data['store_name'] = $store_name;
175-
update_user_meta( $vendor_id, 'dokan_store_name', $store_name );
176-
177-
// Set Vendor Shipping
178-
// $wcfmmp_shipping = array ( '_wcfmmp_user_shipping_enable' => 'yes', '_wcfmmp_user_shipping_type' => 'by_zone' );
179-
// update_user_meta( $vendor_id, '_wcfmmp_shipping', $wcfmmp_shipping );
180-
181-
// Store Commission
182-
$vendor_data['commission'] = array();
183-
$commission_type = get_user_meta( $vendor_id, 'dokan_admin_percentage_type', true );
184-
$commission_value = get_user_meta( $vendor_id, 'dokan_admin_percentage', true );
185-
186-
$vendor_data['commission']['commission_mode'] = 'global';
187-
if( $commission_value ) {
188-
if ( $commission_type == 'percent') {
189-
$vendor_data['commission']['commission_mode'] = $commission_type;
190-
$vendor_data['commission']['commission_percent'] = $commission_value;
191-
} else {
192-
$vendor_data['commission']['commission_mode'] = $commission_type;
193-
$vendor_data['commission']['commission_fixed'] = $commission_value;
194-
}
91+
foreach ( $vendor_meta as $key => $value ) {
92+
update_user_meta( $vendor_id, $key, $value );
19593
}
19694

197-
$vendor_data['commission']['get_shipping'] = 'yes';
198-
$vendor_data['commission']['get_tax'] = 'yes';
199-
200-
if (isset($vendor_data['commission'])) {
201-
$commission_type = $vendor_data['commission']['commission_mode'];
202-
$commission_value = 0;
203-
if ($commission_type == 'percent') {
204-
$commission_value = $vendor_data['commission']['commission_percent'];
205-
} else if(isset($vendor_data['commission']['commission_fixed'])) {
206-
$commission_value = $vendor_data['commission']['commission_fixed'];
207-
}
208-
209-
update_user_meta( $vendor_id, 'dokan_admin_percentage_type', $commission_type );
210-
update_user_meta( $vendor_id, 'dokan_admin_percentage', $commission_value );
211-
}
212-
var_dump($vendor_data);
213-
exit();
214-
// Store Genral Setting
215-
update_user_meta( $vendor_id, 'dokan_profile_settings', $vendor_data );
216-
21795
return true;
21896
}
21997

0 commit comments

Comments
 (0)