<?php

namespace BwWinner;

function update_custom_posts ( ) {
	$options = \BwWinner\Options\get_options();
	global $wpdb;

	$sites = get_sites();

	$queries = array();

	foreach ( $sites as $site ) {
		$prefix = $wpdb->base_prefix . ($site->blog_id == 1 ? '' : "{$site->blog_id}_");


		$query = $wpdb->prepare(
			"UPDATE
				{$prefix}posts AS post
				INNER JOIN {$prefix}bw_winners_companies AS company ON post.ID = company.id
			SET post.post_content=CONCAT(
				'<!-- wp:bw/winners-table {\"hideSearch\":true,\"allSites\":true,\"args\":{\"filters\":{\"award\":[],\"company_name\":[\"',
				company.name,
				'\"],\"price_category\":[],\"year\":[],\"product_category\":[],\"tag\":[]},\"sort_field\":\"entry_year\",\"sort_dir\":\"DESC\",\"per_page\":-1}} /-->'
			)
			WHERE post.post_type = 'company';"
		);
		
		$results = $wpdb->query( $query );

		if ( $wpdb->last_error ) {
			return new \WP_Error( 'winners_error', $wpdb->last_error, array('status' => 500) );
		}

		$query = $wpdb->prepare(
			"UPDATE
				{$prefix}posts AS post
				INNER JOIN {$prefix}bw_winners_brands AS brand ON post.ID = brand.id
				INNER JOIN {$prefix}bw_winners_companies AS company ON brand.company_id = company.id
			SET post.post_content=CONCAT(
				'<!-- wp:bw/winners-table {\"hideSearch\":true,\"allSites\":true,\"args\":{\"filters\":{\"award\":[],\"company_name\":[\"',
				company.name,
				'\"],\"brand_name\":[\"',
				brand.name,
				'\"],\"price_category\":[],\"year\":[],\"product_category\":[],\"tag\":[]},\"sort_field\":\"entry_year\",\"sort_dir\":\"DESC\",\"per_page\":-1}} /-->'
			)
			WHERE post.post_type = 'brand';"
		);
		
		$results = $wpdb->query( $query );

		if ( $wpdb->last_error ) {
			return new \WP_Error( 'winners_error', $wpdb->last_error, array('status' => 500) );
		}

		$query = $wpdb->prepare(
			"UPDATE
				{$prefix}posts AS post
				INNER JOIN {$prefix}bw_winners_products AS product ON post.ID = product.id
				INNER JOIN {$prefix}bw_winners_brands AS brand ON product.brand_id = brand.id
				INNER JOIN {$prefix}bw_winners_companies AS company ON brand.company_id = company.id
			SET post.post_content=CONCAT(
				'<!-- wp:bw/winners-table {\"hideSearch\":true,\"allSites\":true,\"args\":{\"filters\":{\"award\":[],\"company_name\":[\"',
				company.name,
				'\"],\"brand_name\":[\"',
				brand.name,
				'\"],\"product_name\":[\"',
				product.name,
				'\"],\"price_category\":[],\"year\":[],\"product_category\":[],\"tag\":[]},\"sort_field\":\"entry_year\",\"sort_dir\":\"DESC\",\"per_page\":-1}} /-->'
			)
			WHERE post.post_type = 'bw-product';"
		);

		$results = $wpdb->query( $query );

		if ( $wpdb->last_error ) {
			return new \WP_Error( 'winners_error', $wpdb->last_error, array('status' => 500) );
		}
	}
}

