2013-05-31 15:13:14 +00:00
|
|
|
<?php
|
|
|
|
/**
|
|
|
|
* Update WC to 2.1.0
|
|
|
|
*
|
|
|
|
* @author WooThemes
|
|
|
|
* @category Admin
|
|
|
|
* @package WooCommerce/Admin/Updates
|
|
|
|
* @version 2.1.0
|
|
|
|
*/
|
|
|
|
|
|
|
|
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
|
|
|
|
|
|
|
global $wpdb, $woocommerce;
|
|
|
|
|
|
|
|
// Pages no longer used
|
|
|
|
wp_delete_post( get_option('woocommerce_pay_page_id'), true );
|
2013-06-04 16:33:43 +00:00
|
|
|
wp_delete_post( get_option('woocommerce_thanks_page_id'), true );
|
2013-06-05 11:07:23 +00:00
|
|
|
wp_delete_post( get_option('woocommerce_view_order_page_id'), true );
|
2013-07-16 13:40:07 +00:00
|
|
|
wp_delete_post( get_option('woocommerce_change_password_page_id'), true );
|
2013-07-23 16:05:01 +00:00
|
|
|
wp_delete_post( get_option('woocommerce_edit_address_page_id'), true );
|
|
|
|
wp_delete_post( get_option('woocommerce_lost_password_page_id'), true );
|
2013-07-16 13:40:07 +00:00
|
|
|
|
|
|
|
// Update table primary keys - remove old key and then add new 'permission_id' row.
|
2013-07-25 15:29:25 +00:00
|
|
|
$wpdb->hide_errors();
|
2013-07-16 13:40:07 +00:00
|
|
|
$wpdb->query( "ALTER TABLE {$wpdb->prefix}woocommerce_downloadable_product_permissions DROP PRIMARY KEY" );
|
2013-09-20 16:01:09 +00:00
|
|
|
$wpdb->query( "ALTER TABLE {$wpdb->prefix}woocommerce_downloadable_product_permissions ADD `permission_id` bigint(20) NOT NULL PRIMARY KEY AUTO_INCREMENT" );
|
|
|
|
|
|
|
|
// Upgrade file paths to support multiple file paths + names etc
|
|
|
|
$existing_file_paths = $wpdb->get_results( "SELECT * FROM {$wpdb->postmeta} WHERE meta_key = '_file_paths' AND meta_value != '';" );
|
|
|
|
|
|
|
|
if ( $existing_file_paths ) {
|
|
|
|
|
|
|
|
foreach( $existing_file_paths as $existing_file_path ) {
|
|
|
|
|
|
|
|
$needs_update = false;
|
|
|
|
$new_value = array();
|
|
|
|
$value = maybe_unserialize( trim( $existing_file_path->meta_value ) );
|
|
|
|
|
|
|
|
if ( $value ) {
|
|
|
|
foreach ( $value as $key => $file ) {
|
|
|
|
if ( ! is_array( $file ) ) {
|
|
|
|
$needs_update = true;
|
|
|
|
$new_value[ $key ] = array(
|
|
|
|
'file' => $file,
|
2013-11-25 13:34:21 +00:00
|
|
|
'name' => wc_get_filename_from_url( $file )
|
2013-09-20 16:01:09 +00:00
|
|
|
);
|
|
|
|
} else {
|
|
|
|
$new_value[ $key ] = $file;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if ( $needs_update ) {
|
|
|
|
$new_value = serialize( $new_value );
|
|
|
|
|
|
|
|
$wpdb->query( $wpdb->prepare( "UPDATE {$wpdb->postmeta} SET meta_key = %s, meta_value = %s WHERE meta_id = %d", '_downloadable_files', $new_value, $existing_file_path->meta_id ) );
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|