From 168d1471f1552252c93aa1e0f133ae5b1e2841d3 Mon Sep 17 00:00:00 2001 From: nikitasinelnikov Date: Fri, 29 Mar 2019 16:39:26 +0200 Subject: [PATCH] - future version upgrade for predefined fields; - maybe upgrade friends table columns; --- .../admin/core/packages/2.0.43/functions.php | 12 ---- includes/admin/core/packages/2.0.43/hooks.php | 5 -- includes/admin/core/packages/2.0.43/init.php | 30 ---------- .../admin/core/packages/2.0.43/metafields.php | 31 ---------- .../admin/core/packages/2.0.44/friends.php | 38 +++++++++++++ .../admin/core/packages/2.0.44/functions.php | 25 ++++++++ includes/admin/core/packages/2.0.44/hooks.php | 6 ++ includes/admin/core/packages/2.0.44/init.php | 57 +++++++++++++++++++ .../admin/core/packages/2.0.44/metafields.php | 33 +++++++++++ ultimate-member.php | 2 +- 10 files changed, 160 insertions(+), 79 deletions(-) delete mode 100644 includes/admin/core/packages/2.0.43/functions.php delete mode 100644 includes/admin/core/packages/2.0.43/hooks.php delete mode 100644 includes/admin/core/packages/2.0.43/init.php delete mode 100644 includes/admin/core/packages/2.0.43/metafields.php create mode 100644 includes/admin/core/packages/2.0.44/friends.php create mode 100644 includes/admin/core/packages/2.0.44/functions.php create mode 100644 includes/admin/core/packages/2.0.44/hooks.php create mode 100644 includes/admin/core/packages/2.0.44/init.php create mode 100644 includes/admin/core/packages/2.0.44/metafields.php diff --git a/includes/admin/core/packages/2.0.43/functions.php b/includes/admin/core/packages/2.0.43/functions.php deleted file mode 100644 index 01e7bff5..00000000 --- a/includes/admin/core/packages/2.0.43/functions.php +++ /dev/null @@ -1,12 +0,0 @@ -admin()->check_ajax_nonce(); - - um_maybe_unset_time_limit(); - - include 'metafields.php'; - - update_option( 'um_last_version_upgrade', '2.0.43' ); - - wp_send_json_success( array( 'message' => __( 'Field was upgraded successfully', 'ultimate-member' ) ) ); -} \ No newline at end of file diff --git a/includes/admin/core/packages/2.0.43/hooks.php b/includes/admin/core/packages/2.0.43/hooks.php deleted file mode 100644 index fb6d4e2a..00000000 --- a/includes/admin/core/packages/2.0.43/hooks.php +++ /dev/null @@ -1,5 +0,0 @@ - 'fields2043', -); \ No newline at end of file diff --git a/includes/admin/core/packages/2.0.43/init.php b/includes/admin/core/packages/2.0.43/init.php deleted file mode 100644 index fcda187d..00000000 --- a/includes/admin/core/packages/2.0.43/init.php +++ /dev/null @@ -1,30 +0,0 @@ - - - \ No newline at end of file diff --git a/includes/admin/core/packages/2.0.43/metafields.php b/includes/admin/core/packages/2.0.43/metafields.php deleted file mode 100644 index 9d4d5b00..00000000 --- a/includes/admin/core/packages/2.0.43/metafields.php +++ /dev/null @@ -1,31 +0,0 @@ -query( array( - 'post_type' => 'um_form', - 'meta_query' => array( - array( - 'key' => '_um_mode', - 'value' => 'profile' - ), - ), - 'posts_per_page' => -1, - 'fields' => 'ids' -) ); - -foreach ( $profile_forms as $form_id ) { - $profile_forms_fields = get_post_meta( $form_id, '_um_custom_fields', true ); - - foreach ( $profile_forms_fields as $key => $field ){ - - if( isset( $field['metakey'] ) ){ - $metakey = $field['metakey']; - if ( $key != $metakey ){ - $profile_forms_fields[$metakey] = $profile_forms_fields[$key]; - unset($profile_forms_fields[$key]); - } - } - - } - - update_post_meta( $form_id, '_um_custom_fields', $profile_forms_fields ); -} \ No newline at end of file diff --git a/includes/admin/core/packages/2.0.44/friends.php b/includes/admin/core/packages/2.0.44/friends.php new file mode 100644 index 00000000..8cc1e85d --- /dev/null +++ b/includes/admin/core/packages/2.0.44/friends.php @@ -0,0 +1,38 @@ +get_results( + "SELECT id, + user_id1, + user_id2, + usr_a, + usr_b + FROM {$wpdb->prefix}um_friends", +ARRAY_A ); + +$updated_rows = array(); +foreach ( $friends as $friend ) { + $update = array(); + $update_format = array(); + + if ( isset( $friend['usr_a'] ) && empty( $friend['usr_a'] ) && ! empty( $friend['user_id1'] ) ) { + $update['usr_a'] = $friend['user_id1']; + $update_format[] = '%d'; + } + + if ( isset( $friend['usr_b'] ) && empty( $friend['usr_b'] ) && ! empty( $friend['user_id2'] ) ) { + $update['usr_b'] = $friend['user_id2']; + $update_format[] = '%d'; + } + + if ( $update ) { + $result = $wpdb->update( + "{$wpdb->prefix}um_friends", + $update, + array( 'id' => $friend['id'] ), + $update_format, + array( '%d' ) + ); + } +} \ No newline at end of file diff --git a/includes/admin/core/packages/2.0.44/functions.php b/includes/admin/core/packages/2.0.44/functions.php new file mode 100644 index 00000000..8d838c74 --- /dev/null +++ b/includes/admin/core/packages/2.0.44/functions.php @@ -0,0 +1,25 @@ +admin()->check_ajax_nonce(); + +/* um_maybe_unset_time_limit(); + + include 'friends.php';*/ + + wp_send_json_success( array( 'message' => __( 'Friends was upgraded successfully', 'ultimate-member' ) ) ); +} + + +function um_upgrade_fields2044() { + UM()->admin()->check_ajax_nonce(); + + um_maybe_unset_time_limit(); + + include 'metafields.php'; + + update_option( 'um_last_version_upgrade', '2.0.44' ); + + wp_send_json_success( array( 'message' => __( 'Field was upgraded successfully', 'ultimate-member' ) ) ); +} \ No newline at end of file diff --git a/includes/admin/core/packages/2.0.44/hooks.php b/includes/admin/core/packages/2.0.44/hooks.php new file mode 100644 index 00000000..b9075d4d --- /dev/null +++ b/includes/admin/core/packages/2.0.44/hooks.php @@ -0,0 +1,6 @@ + 'fields2044', + 'friends2044' => 'friends2044', +); \ No newline at end of file diff --git a/includes/admin/core/packages/2.0.44/init.php b/includes/admin/core/packages/2.0.44/init.php new file mode 100644 index 00000000..868f013e --- /dev/null +++ b/includes/admin/core/packages/2.0.44/init.php @@ -0,0 +1,57 @@ + + + \ No newline at end of file diff --git a/includes/admin/core/packages/2.0.44/metafields.php b/includes/admin/core/packages/2.0.44/metafields.php new file mode 100644 index 00000000..929a5d7a --- /dev/null +++ b/includes/admin/core/packages/2.0.44/metafields.php @@ -0,0 +1,33 @@ +query( array( + 'post_type' => 'um_form', + 'meta_query' => array( + array( + 'key' => '_um_mode', + 'value' => 'profile' + ), + ), + 'posts_per_page' => -1, + 'fields' => 'ids' +) ); + +foreach ( $profile_forms as $form_id ) { + $profile_forms_fields = get_post_meta( $form_id, '_um_custom_fields', true ); + + foreach ( $profile_forms_fields as $key => $field ) { + + if ( isset( $field['metakey'] ) ) { + $metakey = $field['metakey']; + if ( $key != $metakey ) { + $profile_forms_fields[ $metakey ] = $profile_forms_fields[ $key ]; + unset( $profile_forms_fields[ $key ] ); + } + } + + } + + update_post_meta( $form_id, '_um_custom_fields', $profile_forms_fields ); +} \ No newline at end of file diff --git a/ultimate-member.php b/ultimate-member.php index b4b8d366..eddc80b6 100644 --- a/ultimate-member.php +++ b/ultimate-member.php @@ -3,7 +3,7 @@ Plugin Name: Ultimate Member Plugin URI: http://ultimatemember.com/ Description: The easiest way to create powerful online communities and beautiful user profiles with WordPress -Version: 2.0.43 +Version: 2.0.44 Author: Ultimate Member Author URI: http://ultimatemember.com/ Text Domain: ultimate-member