foreach ($bc_categories['payload'] as $item) { // Does it already exist in the database? $category_name = htmlspecialchars($item['name']); $category = $queries->getWhere('donation_categories', array('name', '=', $category_name)); if (!count($category)) { // No, it doesn't exist $category_id = $item['id']; $queries->create('donation_categories', array('name' => $category_name, 'cid' => $category_id, 'order' => 0)); } } // Delete any categories which don't exist on the web store anymore $categories = $queries->getWhere('donation_categories', array('id', '<>', 0)); foreach ($categories as $category) { if (!in_array_r($category->cid, $bc_categories['payload'])) { // It doesn't exist anymore $queries->delete('donation_categories', array('id', '=', $category->id)); } } // Packages next foreach ($bc_packages['payload'] as $item) { // Does it already exist in the database? $package_name = htmlspecialchars($item['name']); $package = $queries->getWhere('donation_packages', array('name', '=', $package_name)); if (!count($package)) { // No, it doesn't exist $package_id = $item['id']; $package_category = $item['category']; $package_description = htmlspecialchars($item['description']); $package_price = $item['price']; $package_order = $item['order']; $queries->create('donation_packages', array('name' => $package_name, 'description' => $package_description, 'cost' => $package_price, 'package_id' => $package_id, 'active' => 1, 'package_order' => $package_order, 'category' => $package_category, 'url' => ''));