function sunshine_delete_favorite($image_id) { $image_id = intval($image_id); SunshineUser::delete_user_meta('favorite', $image_id); $favorite_count = get_post_meta($image_id, 'sunshine_favorite_count', true); $favorite_count--; update_post_meta($image_id, 'sunshine_favorite_count', $favorite_count); }
function sunshine_update_cart() { global $current_user, $sunshine; if (isset($_POST['sunshine_update_cart']) && $_POST['sunshine_update_cart'] == 1 && wp_verify_nonce($_POST['nonce'], 'sunshine_update_cart')) { $i = 0; $cart = $sunshine->cart->get_cart(); foreach ($cart as &$cart_item) { foreach ($_POST['item'] as $key => $item) { if ($item['hash'] == $cart_item['hash']) { if (!isset($item['qty'])) { $item['qty'] = 1; } if ($item['qty'] <= 0) { if (is_user_logged_in()) { SunshineUser::delete_user_meta('cart', $cart_item); } else { unset($cart[$i]); } } elseif ($item['qty'] != $cart_item['qty']) { $new_item = $cart_item; $new_item['qty'] = $item['qty']; $new_item['total'] = $new_item['qty'] * $new_item['price']; if (is_user_logged_in()) { SunshineUser::update_user_meta('cart', $new_item, $cart_item); } else { $cart[$i] = $new_item; } } $i++; } } } if (empty($cart)) { $sunshine->cart->set_cart_cookies(false); } elseif ($_COOKIE['sunshine_cart_hash']) { update_option('sunshine_cart_hash_' . $_COOKIE['sunshine_cart_hash'], serialize($cart)); } $sunshine->add_message(__('Cart updated', 'sunshine')); wp_redirect(sunshine_url('cart')); exit; } }
public function remove_item_in_cart($hash) { foreach ($this->content as $key => $cart_item) { if ($hash == $cart_item['hash']) { if (is_user_logged_in()) { SunshineUser::delete_user_meta('cart', $cart_item); } else { unset($this->content[$key]); SunshineSession::instance()->cart = $cart; } break; } } }