本文整理汇总了PHP中osC_Product::isEmailGiftCertificate方法的典型用法代码示例。如果您正苦于以下问题:PHP osC_Product::isEmailGiftCertificate方法的具体用法?PHP osC_Product::isEmailGiftCertificate怎么用?PHP osC_Product::isEmailGiftCertificate使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类osC_Product
的用法示例。
在下文中一共展示了osC_Product::isEmailGiftCertificate方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: execute
function execute()
{
global $osC_Session, $osC_ShoppingCart, $osC_Product, $osC_Language, $messageStack, $toC_Customization_Fields;
if (!isset($osC_Product)) {
$id = false;
foreach ($_GET as $key => $value) {
if ((ereg('^[0-9]+(_?([0-9]+:?[0-9]+)+(;?([0-9]+:?[0-9]+)+)*)*$', $key) || ereg('^[a-zA-Z0-9 -_]*$', $key)) && $key != $osC_Session->getName()) {
$id = $key;
}
break;
}
if (strpos($id, '_') !== false) {
$id = str_replace('_', '#', $id);
}
if ($id !== false && osC_Product::checkEntry($id)) {
$osC_Product = new osC_Product($id);
}
}
if (isset($osC_Product)) {
//customization fields check
if ($osC_Product->hasRequiredCustomizationFields()) {
if (!$toC_Customization_Fields->exists($osC_Product->getID())) {
$osC_Language->load('products');
$messageStack->add_session('products', $osC_Language->get('error_customization_fields_missing'), 'error');
osc_redirect(osc_href_link(FILENAME_PRODUCTS, $osC_Product->getID()));
}
}
$variants = null;
if (isset($_POST['variants']) && is_array($_POST['variants'])) {
$variants = $_POST['variants'];
} else {
if (isset($_GET['variants']) && !empty($_GET['variants'])) {
$variants = osc_parse_variants_string($_GET['variants']);
}
}
$gift_certificate_data = null;
if ($osC_Product->isGiftCertificate() && isset($_POST['senders_name']) && isset($_POST['recipients_name']) && isset($_POST['message'])) {
if ($osC_Product->isEmailGiftCertificate()) {
$gift_certificate_data = array('senders_name' => $_POST['senders_name'], 'senders_email' => $_POST['senders_email'], 'recipients_name' => $_POST['recipients_name'], 'recipients_email' => $_POST['recipients_email'], 'message' => $_POST['message']);
} else {
$gift_certificate_data = array('senders_name' => $_POST['senders_name'], 'recipients_name' => $_POST['recipients_name'], 'message' => $_POST['message']);
}
if ($osC_Product->isOpenAmountGiftCertificate()) {
$gift_certificate_data['price'] = $_POST['gift_certificate_amount'];
}
$gift_certificate_data['type'] = $osC_Product->getGiftCertificateType();
}
$quantity = null;
if (isset($_POST['quantity']) && is_numeric($_POST['quantity'])) {
$quantity = $_POST['quantity'];
}
if ($osC_Product->isGiftCertificate() && $gift_certificate_data == null) {
osc_redirect(osc_href_link(FILENAME_PRODUCTS, $osC_Product->getID()));
return false;
} else {
$osC_ShoppingCart->add($osC_Product->getID(), $variants, $quantity, $gift_certificate_data);
}
}
osc_redirect(osc_href_link(FILENAME_CHECKOUT));
}
示例2: execute
function execute()
{
global $osC_Session, $osC_ShoppingCart, $osC_Product;
if (!isset($osC_Product)) {
$id = false;
foreach ($_GET as $key => $value) {
if ((ereg('^[0-9]+(#?([0-9]+:?[0-9]+)+(;?([0-9]+:?[0-9]+)+)*)*$', $key) || ereg('^[a-zA-Z0-9 -_]*$', $key)) && $key != $osC_Session->getName()) {
$id = $key;
}
break;
}
if ($id !== false && osC_Product::checkEntry($id)) {
$osC_Product = new osC_Product($id);
}
}
if (isset($osC_Product)) {
$variants = null;
if (isset($_POST['variants']) && is_array($_POST['variants'])) {
$variants = $_POST['variants'];
} else {
if (isset($_GET['variants']) && !empty($_GET['variants'])) {
$variants = osc_parse_variants_string($_GET['variants']);
}
}
$gift_certificate_data = null;
if ($osC_Product->isGiftCertificate() && isset($_POST['senders_name']) && isset($_POST['recipients_name']) && isset($_POST['message'])) {
if ($osC_Product->isEmailGiftCertificate()) {
$gift_certificate_data = array('senders_name' => $_POST['senders_name'], 'senders_email' => $_POST['senders_email'], 'recipients_name' => $_POST['recipients_name'], 'recipients_email' => $_POST['recipients_email'], 'message' => $_POST['message']);
} else {
$gift_certificate_data = array('senders_name' => $_POST['senders_name'], 'recipients_name' => $_POST['recipients_name'], 'message' => $_POST['message']);
}
if ($osC_Product->isOpenAmountGiftCertificate()) {
$gift_certificate_data['price'] = $_POST['gift_certificate_amount'];
}
$gift_certificate_data['type'] = $osC_Product->getGiftCertificateType();
}
$quantity = null;
if (isset($_POST['quantity']) && is_numeric($_POST['quantity'])) {
$quantity = $_POST['quantity'];
}
if ($osC_Product->hasVariants() && empty($variants) || $osC_Product->isGiftCertificate() && $gift_certificate_data == null) {
osc_redirect(osc_href_link(FILENAME_PRODUCTS, $osC_Product->getID()));
return false;
} else {
$osC_ShoppingCart->add($osC_Product->getID(), $variants, $quantity, $gift_certificate_data);
}
}
osc_redirect(osc_href_link(FILENAME_CHECKOUT));
}
示例3: addProduct
function addProduct()
{
global $osC_ShoppingCart, $toC_Json, $osC_Language, $toC_Customization_Fields;
$osC_Language->load('products');
if (is_numeric($_REQUEST['pID']) && osC_Product::checkEntry($_REQUEST['pID'])) {
$osC_ShoppingCart->resetShippingMethod();
$osC_Product = new osC_Product($_REQUEST['pID']);
//gift certificate check
if ($osC_Product->isGiftCertificate() && !isset($_POST['senders_name'])) {
$response = array('success' => false, 'feedback' => $osC_Language->get('error_gift_certificate_data_missing'));
} else {
if ($osC_Product->hasRequiredCustomizationFields() && !$toC_Customization_Fields->exists($osC_Product->getID())) {
$response = array('success' => false, 'feedback' => $osC_Language->get('error_customization_fields_missing'));
} else {
$variants = null;
if (isset($_REQUEST['variants']) && !empty($_REQUEST['variants'])) {
$variants = osc_parse_variants_string($_REQUEST['variants']);
}
$gift_certificate_data = null;
if ($osC_Product->isGiftCertificate() && isset($_POST['senders_name']) && isset($_POST['recipients_name']) && isset($_POST['message'])) {
if ($osC_Product->isEmailGiftCertificate()) {
$gift_certificate_data = array('senders_name' => $_POST['senders_name'], 'senders_email' => $_POST['senders_email'], 'recipients_name' => $_POST['recipients_name'], 'recipients_email' => $_POST['recipients_email'], 'message' => $_POST['message']);
} else {
$gift_certificate_data = array('senders_name' => $_POST['senders_name'], 'recipients_name' => $_POST['recipients_name'], 'message' => $_POST['message']);
}
if ($osC_Product->isOpenAmountGiftCertificate()) {
$gift_certificate_data['price'] = $_POST['gift_certificate_amount'];
}
$gift_certificate_data['type'] = $osC_Product->getGiftCertificateType();
}
$osC_ShoppingCart->add($_REQUEST['pID'], $variants, $_REQUEST['pQty'], $gift_certificate_data);
$content = self::_getShoppingCart();
$response = array('success' => true, 'content' => $content);
}
}
} else {
$response = array('success' => false);
}
echo $toC_Json->encode($response);
}
示例4: addProduct
function addProduct()
{
global $toC_Json, $osC_Language, $osC_Tax, $osC_Weight, $osC_Currencies, $osC_ShoppingCart;
$error = false;
$feedback = array();
$osC_ShoppingCart = new toC_ShoppingCart_Adapter($_REQUEST['orders_id']);
$osC_Tax = new osC_Tax_Admin();
$osC_Weight = new osC_Weight();
$osC_Currencies = new osC_Currencies();
$osC_Product = new osC_Product(osc_get_product_id($_REQUEST['products_id']));
$gift_certificate_data = null;
if ($osC_Product->isGiftCertificate()) {
if (!isset($_REQUEST['senders_name']) || empty($_REQUEST['senders_name'])) {
$error = true;
$feedback[] = $osC_Language->get('error_sender_name_empty');
}
if (!isset($_REQUEST['recipients_name']) || empty($_REQUEST['recipients_name'])) {
$error = true;
$feedback[] = $osC_Language->get('error_recipients_name_empty');
}
if (!isset($_REQUEST['message']) || empty($_REQUEST['message'])) {
$error = true;
$feedback[] = $osC_Language->get('error_message_empty');
}
if ($osC_Product->isEmailGiftCertificate()) {
if (!isset($_REQUEST['senders_email']) || empty($_REQUEST['senders_email'])) {
$error = true;
$feedback[] = $osC_Language->get('error_sender_email_empty');
}
if (!osc_validate_email_address($_REQUEST['senders_email'])) {
$error = true;
$feedback[] = $osC_Language->get('error_sender_email_invalid');
}
if (!isset($_REQUEST['recipients_email']) || empty($_REQUEST['recipients_email'])) {
$error = true;
$feedback[] = $osC_Language->get('error_recipients_email_empty');
}
if (!osc_validate_email_address($_REQUEST['recipients_email'])) {
$error = true;
$feedback[] = $osC_Language->get('error_recipients_email_invalid');
}
}
if ($error === false) {
if ($osC_Product->isEmailGiftCertificate()) {
$gift_certificate_data = array('senders_name' => $_REQUEST['senders_name'], 'senders_email' => $_REQUEST['senders_email'], 'recipients_name' => $_REQUEST['recipients_name'], 'recipients_email' => $_REQUEST['recipients_email'], 'message' => $_REQUEST['message']);
} else {
$gift_certificate_data = array('senders_name' => $_REQUEST['senders_name'], 'recipients_name' => $_REQUEST['recipients_name'], 'message' => $_REQUEST['message']);
}
$gift_certificate_data['type'] = $osC_Product->getGiftCertificateType();
if ($osC_Product->isOpenAmountGiftCertificate()) {
$gift_certificate_data['price'] = $_REQUEST['gift_certificate_amount'] / $osC_ShoppingCart->getCurrencyValue();
}
}
}
if ($error === false) {
if ($osC_ShoppingCart->addProduct($_REQUEST['products_id'], $_REQUEST['new_qty'], $gift_certificate_data)) {
$response = array('success' => true, 'feedback' => $osC_Language->get('ms_success_action_performed'));
} else {
$response = array('success' => false, 'feedback' => $osC_Language->get('ms_error_action_not_performed'));
}
} else {
$response = array('success' => false, 'feedback' => implode('<br />', $feedback));
}
echo $toC_Json->encode($response);
}
示例5: addProduct
function addProduct()
{
global $osC_ShoppingCart, $toC_Json, $osC_Language, $toC_Customization_Fields, $osC_Image, $osC_Currencies;
$osC_Language->load('products');
if (is_numeric($_POST['pID']) && osC_Product::checkEntry($_POST['pID'])) {
$osC_ShoppingCart->resetShippingMethod();
$osC_Product = new osC_Product($_POST['pID']);
//gift certificate check
if ($osC_Product->isGiftCertificate() && !isset($_POST['senders_name'])) {
$response = array('success' => false, 'feedback' => $osC_Language->get('error_gift_certificate_data_missing'));
} else {
if ($osC_Product->hasRequiredCustomizationFields() && !$toC_Customization_Fields->exists($osC_Product->getID())) {
$response = array('success' => false, 'feedback' => $osC_Language->get('error_customization_fields_missing'));
} else {
$variants = null;
if (isset($_POST['variants']) && !empty($_POST['variants'])) {
$variants = osc_parse_variants_string($_POST['variants']);
}
$gift_certificate_data = null;
if ($osC_Product->isGiftCertificate() && isset($_POST['senders_name']) && isset($_POST['recipients_name']) && isset($_POST['message'])) {
if ($osC_Product->isEmailGiftCertificate()) {
$gift_certificate_data = array('senders_name' => $_POST['senders_name'], 'senders_email' => $_POST['senders_email'], 'recipients_name' => $_POST['recipients_name'], 'recipients_email' => $_POST['recipients_email'], 'message' => $_POST['message']);
} else {
$gift_certificate_data = array('senders_name' => $_POST['senders_name'], 'recipients_name' => $_POST['recipients_name'], 'message' => $_POST['message']);
}
if ($osC_Product->isOpenAmountGiftCertificate()) {
$gift_certificate_data['price'] = $_POST['gift_certificate_amount'];
}
$gift_certificate_data['type'] = $osC_Product->getGiftCertificateType();
}
$osC_ShoppingCart->add($_POST['pID'], $variants, $_POST['pQty'], $gift_certificate_data);
$items = 0;
foreach ($osC_ShoppingCart->getProducts() as $products_id => $data) {
$items += $data['quantity'];
}
//build the content of the confirmation dialog
$product_id_string = osc_get_product_id_string($_POST['pID'], $variants);
//find the added product
$added_product = null;
foreach ($osC_ShoppingCart->getProducts() as $id_string => $product) {
if ($product_id_string == $id_string) {
$added_product = $product;
break;
}
}
//build the dialog
$confirm_dialog = null;
if ($added_product !== null) {
$confirm_dialog .= '<div class="dlgConfirm">' . '<div class="itemImage">' . $osC_Image->show($added_product['image'], $added_product['name'], '', 'thumbnail') . '</div>' . '<div class="itemDetail"><p>' . sprintf($osC_Language->get('add_to_cart_confirmation'), $added_product['quantity'] . ' x ' . osc_link_object(osc_href_link(FILENAME_CHECKOUT, null, 'SSL'), $added_product['name']));
//gift certificates
if ($added_product['type'] == PRODUCT_TYPE_GIFT_CERTIFICATE) {
$confirm_dialog .= '<br />- ' . $osC_Language->get('senders_name') . ': ' . $product['gc_data']['senders_name'];
if ($added_product['gc_data']['type'] == GIFT_CERTIFICATE_TYPE_EMAIL) {
$confirm_dialog .= '<br />- ' . $osC_Language->get('senders_email') . ': ' . $product['gc_data']['senders_email'];
}
$confirm_dialog .= '<br />- ' . $osC_Language->get('recipients_name') . ': ' . $product['gc_data']['recipients_name'];
if ($added_product['gc_data']['type'] == GIFT_CERTIFICATE_TYPE_EMAIL) {
$confirm_dialog .= '<br />- ' . $osC_Language->get('recipients_email') . ': ' . $product['gc_data']['recipients_email'];
}
$confirm_dialog .= '<br />- ' . $osC_Language->get('message') . ': ' . $product['gc_data']['message'];
}
$confirm_dialog .= '</p>';
//variants products
if ($osC_ShoppingCart->hasVariants($product['id'])) {
foreach ($osC_ShoppingCart->getVariants($product['id']) as $variants) {
$confirm_dialog .= '<div>';
$confirm_dialog .= '<strong>' . $variants['groups_name'] . ' - </strong><strong>' . $variants['values_name'] . '</strong></tr>';
$confirm_dialog .= '</div>';
}
}
$confirm_dialog .= '</div>';
//cart total
$confirm_dialog .= '<p><strong>' . $osC_ShoppingCart->numberOfItems() . ' ' . $osC_Language->get('text_items') . '</strong> - <strong>' . $osC_Currencies->format($osC_ShoppingCart->getTotal()) . '</strong></p>';
//bottom buttons
$confirm_dialog .= '<div class="btns">' . osc_link_object(osc_href_link(FILENAME_CHECKOUT, 'checkout', 'SSL'), osc_draw_image_button('button_checkout.gif', $osC_Language->get('button_checkout'))) . osc_link_object(osc_href_link(FILENAME_CHECKOUT, 'cart', 'SSL'), osc_draw_image_button('button_ajax_cart.png')) . osc_link_object(osc_href_link(FILENAME_DEFAULT), osc_draw_image_button('button_continue.gif'), 'id="btnContinue"') . '</div>';
$confirm_dialog .= '</div>';
}
$response = array('success' => true, 'items' => $items, 'confirm_dialog' => $confirm_dialog);
}
}
} else {
$response = array('success' => false);
}
echo $toC_Json->encode($response);
}
示例6: addProduct
/**
* Add the products to this order.
*/
function addProduct($products_id_string, $quantity, $gift_certificate_data = null)
{
global $osC_Database, $osC_Language, $osC_Tax;
$error = false;
$osC_Database->startTransaction();
$products_id = osc_get_product_id($products_id_string);
$variants = osc_parse_variants_from_id_string($products_id_string);
$osC_Product = new osC_Product($products_id, $this->getCustomer('customers_id'));
//If the products with the variants exists in the order, then increase the order quantity
//Each gift certificate added to order will be considered as a new product
//
if (isset($this->_contents[$products_id_string])) {
$orders_products_id = $this->_contents[$products_id_string]['orders_products_id'];
$new_quantity = $this->_contents[$products_id_string]['quantity'] + $quantity;
$Qupdate = $osC_Database->query('update :table_orders_products set products_quantity = :products_quantity, products_price = :products_price, final_price = :final_price, products_type = :products_type where orders_products_id = :orders_products_id ');
$Qupdate->bindTable(':table_orders_products', TABLE_ORDERS_PRODUCTS);
$Qupdate->bindInt(':products_quantity', $new_quantity);
$Qupdate->bindValue(':products_price', $osC_Product->getPrice($variants, $new_quantity));
$Qupdate->bindValue(':final_price', $osC_Product->getPrice($variants, $new_quantity));
$Qupdate->bindInt(':orders_products_id', $orders_products_id);
$Qupdate->bindInt(':products_type', $osC_Product->getProductType());
$Qupdate->setLogging($_SESSION['module'], $this->_order_id);
$Qupdate->execute();
if ($osC_Database->isError()) {
$error = true;
} else {
$this->_contents[$products_id_string]['quantity'] = $new_quantity;
$this->_contents[$products_id_string]['price'] = $osC_Product->getPrice($variants, $new_quantity);
$this->_contents[$products_id_string]['final_price'] = $osC_Product->getPrice($variants, $new_quantity);
}
} else {
$products_price = $osC_Product->getPrice($variants, $quantity);
if ($osC_Product->isEmailGiftCertificate() && $osC_Product->isOpenAmountGiftCertificate()) {
$products_price = $gift_certificate_data['price'];
}
$Qinsert = $osC_Database->query('insert into :table_orders_products (orders_id, products_id, products_sku, products_name, products_price, final_price, products_tax, products_quantity, products_type) values (:orders_id, :products_id, :products_sku, :products_name, :products_price, :final_price, :products_tax, :products_quantity, :products_type) ');
$Qinsert->bindTable(':table_orders_products', TABLE_ORDERS_PRODUCTS);
$Qinsert->bindInt(':orders_id', $this->_order_id);
$Qinsert->bindInt(':products_id', $osC_Product->getID());
$Qinsert->bindValue(':products_sku', $osC_Product->getSKU());
$Qinsert->bindValue(':products_name', $osC_Product->getTitle());
$Qinsert->bindValue(':products_price', $products_price);
$Qinsert->bindValue(':final_price', $products_price);
$Qinsert->bindValue(':products_tax', $osC_Tax->getTaxRate($osC_Product->getTaxClassID(), $this->_shipping_address['country_id'], $this->_shipping_address['zone_id']));
$Qinsert->bindInt(':products_quantity', $quantity);
$Qinsert->bindInt(':products_type', $osC_Product->getProductType());
$Qinsert->execute();
if ($osC_Database->isError()) {
$error = true;
} else {
$orders_products_id = $osC_Database->nextID();
if (is_array($variants) && !empty($variants)) {
foreach ($variants as $groups_id => $values_id) {
$Qvariants = $osC_Database->query('select pvg.products_variants_groups_name, pvv.products_variants_values_name from :table_products_variants pv, :table_products_variants_entries pve, :table_products_variants_groups pvg, :table_products_variants_values pvv where pv.products_id = :products_id and pv.products_variants_id = pve.products_variants_id and pve.products_variants_groups_id = :groups_id and pve.products_variants_values_id = :variants_values_id and pve.products_variants_groups_id = pvg.products_variants_groups_id and pve.products_variants_values_id = pvv.products_variants_values_id and pvg.language_id = :language_id and pvv.language_id = :language_id');
$Qvariants->bindTable(':table_products_variants', TABLE_PRODUCTS_VARIANTS);
$Qvariants->bindTable(':table_products_variants_entries', TABLE_PRODUCTS_VARIANTS_ENTRIES);
$Qvariants->bindTable(':table_products_variants_groups', TABLE_PRODUCTS_VARIANTS_GROUPS);
$Qvariants->bindTable(':table_products_variants_values', TABLE_PRODUCTS_VARIANTS_VALUES);
$Qvariants->bindInt(':products_id', $osC_Product->getID());
$Qvariants->bindInt(':groups_id', $groups_id);
$Qvariants->bindInt(':variants_values_id', $values_id);
$Qvariants->bindInt(':language_id', $osC_Language->getID());
$Qvariants->bindInt(':language_id', $osC_Language->getID());
$Qvariants->execute();
$Qinsert = $osC_Database->query('insert into :table_orders_products_variants (orders_id, orders_products_id, products_variants_groups_id, products_variants_groups, products_variants_values_id, products_variants_values) values (:orders_id, :orders_products_id, :products_variants_groups_id, :products_variants_groups, :products_variants_values_id, :products_variants_values) ');
$Qinsert->bindTable(':table_orders_products_variants', TABLE_ORDERS_PRODUCTS_VARIANTS);
$Qinsert->bindInt(':orders_id', $this->_order_id);
$Qinsert->bindInt(':orders_products_id', $orders_products_id);
$Qinsert->bindInt(':products_variants_groups_id', $groups_id);
$Qinsert->bindValue(':products_variants_groups', $Qvariants->value('products_variants_groups_name'));
$Qinsert->bindInt(':products_variants_values_id', $values_id);
$Qinsert->bindValue(':products_variants_values', $Qvariants->value('products_variants_values_name'));
$Qinsert->setLogging($_SESSION['module'], $this->_order_id);
$Qinsert->execute();
if ($osC_Database->isError()) {
$error = true;
break;
}
}
}
if ($error === false) {
if ($osC_Product->getProductType() == PRODUCT_TYPE_DOWNLOADABLE) {
$Qdownloadable = $osC_Database->query('select * from :table_products_downloadables where products_id = :products_id');
$Qdownloadable->bindTable(':table_products_downloadables', TABLE_PRODUCTS_DOWNLOADABLES);
$Qdownloadable->bindInt(':products_id', $products_id);
$Qdownloadable->execute();
$Qopd = $osC_Database->query('insert into :table_orders_products_download (orders_id, orders_products_id, orders_products_filename, orders_products_cache_filename, download_maxdays, download_count) values (:orders_id, :orders_products_id, :orders_products_filename, :orders_products_cache_filename, :download_maxdays, :download_count)');
$Qopd->bindTable(':table_orders_products_download', TABLE_ORDERS_PRODUCTS_DOWNLOAD);
$Qopd->bindInt(':orders_id', $_REQUEST['orders_id']);
$Qopd->bindInt(':orders_products_id', $orders_products_id);
$Qopd->bindValue(':orders_products_filename', $Qdownloadable->value('filename'));
$Qopd->bindValue(':orders_products_cache_filename', $Qdownloadable->value('cache_filename'));
$Qopd->bindValue(':download_maxdays', $Qdownloadable->valueInt('number_of_accessible_days'));
$Qopd->bindValue(':download_count', $Qdownloadable->valueInt('number_of_downloads'));
$Qopd->setLogging($_SESSION['module'], $this->_order_id);
$Qopd->execute();
if ($osC_Database->isError()) {
//.........这里部分代码省略.........