本文整理汇总了PHP中osC_Product::getTitle方法的典型用法代码示例。如果您正苦于以下问题:PHP osC_Product::getTitle方法的具体用法?PHP osC_Product::getTitle怎么用?PHP osC_Product::getTitle使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类osC_Product
的用法示例。
在下文中一共展示了osC_Product::getTitle方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: foreach
function osC_Products_Images()
{
global $osC_Session, $osC_Language, $osC_Product;
if (empty($_GET) === false) {
$id = false;
$counter = 0;
foreach ($_GET as $key => $value) {
$counter++;
if ($counter < 2) {
continue;
}
if ((preg_match('/^[0-9]+(#?([0-9]+:?[0-9]+)+(;?([0-9]+:?[0-9]+)+)*)*$/', $key) || preg_match('/^[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);
$this->addPageTags('keywords', $osC_Product->getTitle());
$this->addPageTags('keywords', $osC_Product->getModel());
if ($osC_Product->hasTags()) {
$this->addPageTags('keywords', $osC_Product->getTags());
}
$this->_page_title = $osC_Product->getTitle();
} else {
$this->_page_title = $osC_Language->get('product_not_found_heading');
$this->_page_contents = 'info_not_found.php';
}
} else {
$this->_page_title = $osC_Language->get('product_not_found_heading');
$this->_page_contents = 'info_not_found.php';
}
}
示例2: foreach
function osC_Products_Products()
{
global $osC_Database, $osC_Services, $osC_Session, $osC_Language, $osC_Breadcrumb, $osC_Product;
if (empty($_GET) === false) {
$id = false;
// PHP < 5.0.2; array_slice() does not preserve keys and will not work with numerical key values, so foreach() is used
foreach ($_GET as $key => $value) {
if ((preg_match('/^[0-9]+(#?([0-9]+:?[0-9]+)+(;?([0-9]+:?[0-9]+)+)*)*$/', $key) || preg_match('/^[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);
$osC_Product->incrementCounter();
$this->addPageTags('keywords', $osC_Product->getTitle());
$this->addPageTags('keywords', $osC_Product->getModel());
if ($osC_Product->hasTags()) {
$this->addPageTags('keywords', $osC_Product->getTags());
}
$this->addJavascriptFilename('templates/' . $this->getCode() . '/javascript/' . $this->_group . '/info.js');
osC_Services_category_path::process($osC_Product->getCategoryID());
if ($osC_Services->isStarted('breadcrumb')) {
$osC_Breadcrumb->add($osC_Product->getTitle(), osc_href_link(FILENAME_PRODUCTS, $osC_Product->getKeyword()));
}
$this->_page_title = $osC_Product->getTitle();
} else {
$this->_page_title = $osC_Language->get('product_not_found_heading');
$this->_page_contents = 'info_not_found.php';
}
} else {
$this->_page_title = $osC_Language->get('product_not_found_heading');
$this->_page_contents = 'info_not_found.php';
}
}
示例3: outputCompareProductsTable
function outputCompareProductsTable()
{
global $osC_Language, $osC_Image, $osC_Weight;
$content = '';
$products_images = '';
$products_titles = '';
$products_price = '';
$products_weight = '';
$products_sku = '';
$products_manufacturers = '';
$products_desciptions = '';
$products_attributes = '';
if ($this->hasContents()) {
foreach ($this->getProducts() as $products_id) {
$osC_Product = new osC_Product($products_id);
$image = $osC_Product->getImages();
$products_images .= '<td width="120" valign="top" align="center">' . osc_link_object(osc_href_link(FILENAME_PRODUCTS, $products_id), $osC_Image->show($image[0]['image'], $osC_Product->getTitle())) . '<br /><br />' . osc_link_object(osc_href_link(FILENAME_PRODUCTS, $products_id . '&action=cart_add'), osc_draw_image_button('button_in_cart.gif', $osC_Language->get('button_add_to_cart'))) . '</td>';
$products_titles .= '<td valign="top" align="center">' . $osC_Product->getTitle() . '</td>';
$products_price .= '<td valign="top" align="center">' . $osC_Product->getPriceFormated(true) . '</td>';
$products_weight .= '<td valign="top" align="center">' . $osC_Weight->display($osC_Product->getWeight(), $osC_Product->getWeightClass()) . '</td>';
$products_sku .= '<td valign="top" align="center">' . $osC_Product->getSKU() . '</td>';
$products_manufacturers .= '<td valign="top" align="center">' . $osC_Product->getManufacturer() . '</td>';
$products_desciptions .= '<td valign="top" align="center">' . $osC_Product->getDescription() . '</td>';
if ($osC_Product->hasAttributes()) {
foreach ($osC_Product->getAttributes() as $attribute) {
$products_attributes[$attribute['name']][$products_id] = $attribute['value'];
}
}
}
$content .= '<table id="compareProducts" cellspacing="0" cellpadding="2" border="0">';
$content .= '<tr class="odd"><td width="120"> </td>' . $products_images . '</tr>';
$content .= '<tr class="even"><td valign="top" align="left" class="label">' . $osC_Language->get('field_products_name') . '</td>' . $products_titles . '</tr>';
$content .= '<tr class="odd"><td valign="top" align="left" class="label">' . $osC_Language->get('field_products_price') . '</td>' . $products_price . '</tr>';
$content .= '<tr class="even"><td valign="top" align="left" class="label">' . $osC_Language->get('field_products_weight') . '</td>' . $products_weight . '</tr>';
$content .= '<tr class="odd"><td valign="top" align="left" class="label">' . $osC_Language->get('field_products_sku') . '</td>' . $products_sku . '</tr>';
$content .= '<tr class="even"><td valign="top" align="left" class="label">' . $osC_Language->get('field_products_manufacturer') . '</td>' . $products_manufacturers . '</tr>';
if (!empty($products_attributes)) {
$rows = 0;
foreach ($products_attributes as $name => $attribute) {
$content .= '<tr class="' . ($rows / 2 == floor($rows / 2) ? 'odd' : 'even') . '">';
$content .= '<td valign="top" align="left" class="label">' . $name . ':</td>';
foreach ($this->getProducts() as $products_id) {
if (isset($attribute[$products_id])) {
$content .= '<td align = "center">' . $attribute[$products_id] . '</td>';
} else {
$content .= '<td align = "center"> -- </td>';
}
}
$content .= '</tr>';
$rows++;
}
}
$content .= '<tr class="' . ($rows / 2 == floor($rows / 2) ? 'odd' : 'even') . '"><td valign="top" align="left" class="label">' . $osC_Language->get('field_products_description') . '</td>' . $products_desciptions . '</tr>';
$content .= '</table></div>';
}
return $content;
}
示例4: initialize
function initialize()
{
global $osC_Language, $osC_Template, $toC_Compare_Products;
if ($toC_Compare_Products->hasContents()) {
$osC_Template->addStyleSheet('ext/multibox/multibox.css');
$osC_Template->addJavascriptFilename('ext/multibox/Overlay.js');
$osC_Template->addJavascriptFilename('ext/multibox/MultiBox.js');
$this->_content = '<ul>';
foreach ($toC_Compare_Products->getProducts() as $products_id) {
$osC_Product = new osC_Product($products_id);
$this->_content .= '<li>' . osc_link_object(osc_href_link(basename($_SERVER['SCRIPT_FILENAME']), $products_id . '&' . osc_get_all_get_params(array('action')) . '&action=compare_products_remove'), osc_draw_image_button('button_delete_icon.png', $osC_Language->get('button_delete')), 'style="float: right; margin: 0 3px 1px 3px"') . osc_link_object(osc_href_link(FILENAME_PRODUCTS, $products_id), $osC_Product->getTitle()) . '</li>';
}
$this->_content .= '</ul>';
$this->_content .= '<p>' . '<span style="float: right">' . osc_link_object(osc_href_link(FILENAME_JSON, 'module=products&action=compare_products'), osc_draw_image_button('small_compare_now.png', $osC_Language->get('button_compare_now')), 'class="multibox" rel="width:800,height:400,ajax:true"') . '</span>' . osc_link_object(osc_href_link(basename($_SERVER['SCRIPT_FILENAME']), osc_get_all_get_params(array('action')) . '&action=compare_products_clear'), osc_draw_image_button('small_clear.png', $osC_Language->get('button_clear'))) . ' ' . '</p>';
$js .= '<script type="text/javascript">
window.addEvent("domready",function() {
var overlay = new Overlay();
var box = new MultiBox(\'multibox\', {
overlay: overlay
});
});
</script>';
$this->_content .= "\n" . $js;
}
}
示例5: initialize
function initialize()
{
global $osC_Language, $osC_Template, $toC_Compare_Products;
if ($toC_Compare_Products->hasContents()) {
$osC_Template->addStyleSheet('ext/multibox/multibox.css');
$osC_Template->addJavascriptFilename('ext/multibox/Overlay.js');
$osC_Template->addJavascriptFilename('ext/multibox/MultiBox.js');
$this->_content = '<ul>';
foreach ($toC_Compare_Products->getProducts() as $products_id) {
$osC_Product = new osC_Product($products_id);
$cid = $products_id;
$str_variants = '';
//if the product have any variants, it means that the $products_id should be a product string such as 1#1:1;2:2
if ($osC_Product->hasVariants()) {
$variants = $osC_Product->getVariants();
if (preg_match('/^[0-9]+(#?([0-9]+:?[0-9]+)+(;?([0-9]+:?[0-9]+)+)*)+$/', $products_id)) {
$products_variant = $variants[$products_id];
} else {
$products_variant = $osC_Product->getDefaultVariant();
}
//if the product have any variants, get the group_name:value_name string
if (isset($products_variant) && isset($products_variant['groups_name']) && is_array($products_variant['groups_name']) && !empty($products_variant['groups_name'])) {
$str_variants .= ' -- ';
foreach ($products_variant['groups_name'] as $groups_name => $value_name) {
$str_variants .= '<strong>' . $groups_name . ': ' . $value_name . '</strong>;';
}
//clean the last ';'
if (($pos = strrpos($str_variants, ';')) !== false) {
$str_variants = substr($str_variants, 0, -1);
}
}
//build the product string that could be used
if (strpos($products_id, '#') !== false) {
$cid = str_replace('#', '_', $products_id);
}
}
$this->_content .= '<li>' . osc_link_object(osc_href_link(basename($_SERVER['SCRIPT_FILENAME']), 'cid=' . $cid . '&' . osc_get_all_get_params(array('cid', 'action')) . '&action=compare_products_remove'), osc_draw_image_button('button_delete_icon.png', $osC_Language->get('button_delete')), 'style="float: right; margin: 0 3px 1px 3px"') . osc_link_object(osc_href_link(FILENAME_PRODUCTS, $products_id), $osC_Product->getTitle() . $str_variants) . '</li>';
}
$this->_content .= '</ul>';
$this->_content .= '<p>' . '<span style="float: right">' . osc_link_object(osc_href_link(FILENAME_JSON, 'module=products&action=compare_products'), osc_draw_image_button('small_compare_now.png', $osC_Language->get('button_compare_now')), 'class="multibox" rel="ajax:true"') . '</span>' . osc_link_object(osc_href_link(basename($_SERVER['SCRIPT_FILENAME']), osc_get_all_get_params(array('action')) . '&action=compare_products_clear'), osc_draw_image_button('small_clear.png', $osC_Language->get('button_clear'))) . ' ' . '</p>';
$js .= '<script type="text/javascript">
window.addEvent("domready",function() {
var box = new MultiBox(\'multibox\', {
movieWidth: 820,
movieHeight: 600
});
});
</script>';
$this->_content .= "\n" . $js;
}
}
示例6: initialize
function initialize()
{
global $osC_Language, $toC_Compare_Products;
if ($toC_Compare_Products->hasContents()) {
$this->_content = '<ul>';
foreach ($toC_Compare_Products->getProducts() as $products_id) {
$osC_Product = new osC_Product($products_id);
$this->_content .= '<li>' . osc_link_object(osc_href_link(basename($_SERVER['SCRIPT_FILENAME']), $products_id . '&' . osc_get_all_get_params(array('action')) . '&action=compare_products_remove'), osc_draw_image_button('button_delete_icon.png', $osC_Language->get('button_delete')), 'style="float: right; margin: 0 3px 1px 3px"') . osc_link_object(osc_href_link(FILENAME_PRODUCTS, $products_id), $osC_Product->getTitle()) . '</li>';
}
$this->_content .= '</ul>';
$this->_content .= '<p>' . '<span style="float: right">' . osc_link_object('javascript:popupWindow(\'' . osc_href_link(FILENAME_PRODUCTS, 'compare_products') . '\', \'popupWindow\', \'scrollbars=yes\');', osc_draw_image_button('small_compare_now.png', $osC_Language->get('button_compare_now'))) . '</span>' . osc_link_object(osc_href_link(basename($_SERVER['SCRIPT_FILENAME']), osc_get_all_get_params(array('action')) . '&action=compare_products_clear'), osc_draw_image_button('small_clear.png', $osC_Language->get('button_clear'))) . ' ' . '</p>';
}
}
示例7: foreach
function osC_Products_Tell_a_friend()
{
global $osC_Services, $osC_Session, $osC_Language, $osC_Breadcrumb, $osC_Customer, $osC_NavigationHistory, $osC_Product;
if (ALLOW_GUEST_TO_TELL_A_FRIEND == '-1' && $osC_Customer->isLoggedOn() === false) {
$osC_NavigationHistory->setSnapshot();
osc_redirect(osc_href_link(FILENAME_ACCOUNT, 'login', 'SSL'));
}
$counter = 0;
foreach ($_GET as $key => $value) {
$counter++;
if ($counter < 2) {
continue;
}
if ((ereg('^[0-9]+(#?([0-9]+:?[0-9]+)+(;?([0-9]+:?[0-9]+)+)*)*$', $key) || ereg('^[a-zA-Z0-9 -_]*$', $key)) && $key != $osC_Session->getName()) {
if (osC_Product::checkEntry($key) === false) {
$this->_page_title = $osC_Language->get('product_not_found_heading');
$this->_page_contents = 'info_not_found.php';
} else {
$osC_Product = new osC_Product($key);
$this->_page_title = $osC_Product->getTitle();
if ($osC_Services->isStarted('breadcrumb')) {
$osC_Breadcrumb->add($osC_Product->getTitle(), osc_href_link(FILENAME_PRODUCTS, $osC_Product->getKeyword()));
$osC_Breadcrumb->add($osC_Language->get('breadcrumb_tell_a_friend'), osc_href_link(FILENAME_PRODUCTS, $this->_module . '&' . $osC_Product->getKeyword()));
}
if (isset($_GET['action']) && $_GET['action'] == 'process') {
$this->_process();
}
}
break;
}
}
if ($counter < 2) {
$this->_page_title = $osC_Language->get('product_not_found_heading');
$this->_page_contents = 'info_not_found.php';
}
}
示例8: initialize
function initialize()
{
global $osC_Database, $osC_Language, $osC_Currencies;
$Qupcoming = $osC_Database->query('select p.products_id, pa.value as date_expected from :table_products p, :table_templates_boxes tb, :table_product_attributes pa where tb.code = :code and tb.id = pa.id and to_days(str_to_date(pa.value, "%Y-%m-%d")) >= to_days(now()) and pa.products_id = p.products_id and p.products_status = :products_status order by pa.value limit :max_display_upcoming_products');
$Qupcoming->bindTable(':table_products', TABLE_PRODUCTS);
$Qupcoming->bindTable(':table_templates_boxes', TABLE_TEMPLATES_BOXES);
$Qupcoming->bindTable(':table_product_attributes', TABLE_PRODUCT_ATTRIBUTES);
$Qupcoming->bindValue(':code', 'date_available');
$Qupcoming->bindInt(':products_status', 1);
$Qupcoming->bindInt(':max_display_upcoming_products', MODULE_CONTENT_UPCOMING_PRODUCTS_MAX_DISPLAY);
if (MODULE_CONTENT_UPCOMING_PRODUCTS_CACHE > 0) {
$Qupcoming->setCache('upcoming_products-' . $osC_Language->getCode() . '-' . $osC_Currencies->getCode(), MODULE_CONTENT_UPCOMING_PRODUCTS_CACHE);
}
$Qupcoming->execute();
if ($Qupcoming->numberOfRows() > 0) {
$this->_content = '<ol style="list-style: none;">';
while ($Qupcoming->next()) {
$osC_Product = new osC_Product($Qupcoming->valueInt('products_id'));
$this->_content .= '<li>' . osC_DateTime::getLong($Qupcoming->value('date_expected')) . ': ' . osc_link_object(osc_href_link(FILENAME_PRODUCTS, $osC_Product->getKeyword()), $osC_Product->getTitle()) . ' ' . $osC_Product->getPriceFormated(true) . '</li>';
}
$this->_content .= '</ol>';
}
$Qupcoming->freeResult();
}
示例9: foreach
?>
<?php
if ($osC_Product->hasAccessories()) {
$accessories = $osC_Product->getAccessories();
?>
<div id="tabAccessories">
<div class="moduleBox">
<div class="content">
<?php
foreach ($accessories as $accessory) {
$product = new osC_Product($accessory);
?>
<div class="accessories">
<div class="image"><?php
echo osc_link_object(osc_href_link(FILENAME_PRODUCTS, $accessory), $osC_Image->show($product->getImage(), $product->getTitle()));
?>
</div>
<div class="desc">
<h6><?php
echo osc_link_object(osc_href_link(FILENAME_PRODUCTS, $accessory), $product->getTitle());
?>
</h6>
<p><?php
echo $product->getShortDescription();
?>
</p>
</div>
</div>
<div style="clear: both"></div>
<?php
示例10: outputCompareProductsTable
function outputCompareProductsTable()
{
global $osC_Language, $osC_Image, $osC_Weight, $osC_Currencies;
$content = '';
$products_images = array();
$products_titles = array();
$products_price = array();
$products_weight = array();
$products_sku = array();
$products_manufacturers = array();
$products_desciptions = array();
$products_attributes = array();
$products_variants = array();
$cols = array('<col width="20%">');
$col_width = round(80 / count($this->getProducts()));
if ($this->hasContents()) {
foreach ($this->getProducts() as $products_id) {
$cols[] = '<col width="' . $col_width . '%">';
$osC_Product = new osC_Product($products_id);
$image = $osC_Product->getImages();
$product_title = $osC_Product->getTitle();
$product_price = $osC_Product->getPriceFormated(true);
$product_weight = $osC_Product->getWeight();
$product_sku = $osC_Product->getSKU();
//if the product have any variants, it means that the $products_id should be a product string such as 1#1:1;2:2
$variants = array();
if ($osC_Product->hasVariants()) {
$product_variants = $osC_Product->getVariants();
if (preg_match('/^[0-9]+(#?([0-9]+:?[0-9]+)+(;?([0-9]+:?[0-9]+)+)*)+$/', $products_id)) {
$products_variant = $product_variants[$products_id];
$variants = osc_parse_variants_from_id_string($products_id);
} else {
$products_variant = $osC_Product->getDefaultVariant();
$variants = $products_variant['groups_id'];
}
//if the product have any variants, get the group_name:value_name string
if (isset($products_variant) && isset($products_variant['groups_name']) && is_array($products_variant['groups_name']) && !empty($products_variant['groups_name'])) {
$products_variants[$products_id]['variants'] = array();
foreach ($products_variant['groups_name'] as $groups_name => $value_name) {
$products_variants[$products_id]['variants'][] = array('name' => $groups_name, 'value' => $value_name);
}
}
$product_price = $osC_Currencies->displayPrice($osC_Product->getPrice($variants), $osC_Product->getTaxClassID());
$product_weight = $products_variant['weight'];
$product_sku = $products_variant['sku'];
$image = $products_variant['image'];
}
$image = is_array($image) ? $image[0]['image'] : $image;
$products_titles[] = $product_title;
if (!osc_empty($product_price)) {
$products_price[] = $product_price;
}
if (!osc_empty($product_weight)) {
$products_weight[] = $osC_Weight->display($product_weight, $osC_Product->getWeightClass());
}
if (!osc_empty($product_sku)) {
$products_sku[] = $product_sku;
}
if (!osc_empty($osC_Product->getManufacturer())) {
$products_manufacturers[] = $osC_Product->getManufacturer();
}
if (!osc_empty($osC_Product->getDescription())) {
$products_desciptions[] = $osC_Product->getDescription();
}
if ($osC_Product->hasAttributes()) {
foreach ($osC_Product->getAttributes() as $attribute) {
$products_attributes[$products_id]['attributes'][] = array('name' => $attribute['name'], 'value' => $attribute['value']);
}
}
$products_id = str_replace('#', '_', $products_id);
$products_images[] = '<div class="image">' . osc_link_object(osc_href_link(FILENAME_PRODUCTS, $products_id), $osC_Image->show($image, $osC_Product->getTitle())) . '</div>' . '<div class="button">' . osc_link_object(osc_href_link(FILENAME_PRODUCTS, $products_id . '&action=cart_add' . (osc_empty(osc_parse_variants_array($variants)) ? '' : '&variants=' . osc_parse_variants_array($variants))), osc_draw_image_button('button_in_cart.gif', $osC_Language->get('button_add_to_cart'))) . '</div>';
}
$content .= '<table id="compareProducts" cellspacing="0" cellpadding="2" border="0">';
//add col groups
$content .= '<colgroup>';
foreach ($cols as $col) {
$content .= $col;
}
$content .= '</colgroup>';
//add product header
$content .= '<tbody>';
$content .= '<tr class="first">';
$content .= '<th> </th>';
if (!osc_empty($products_images)) {
foreach ($products_images as $k => $product_image) {
$content .= '<td' . ($k == count($products_images) - 1 ? ' class="last"' : '') . '>' . $product_image . '</td>';
}
}
$content .= '</tr>';
$content .= '</tbody>';
//add compare details
$content .= '<tbody>';
$row_class = 'even';
//add product name
if (!osc_empty($products_titles)) {
$content .= '<tr class="' . $row_class . '">' . '<th>' . $osC_Language->get('field_products_name') . '</th>';
foreach ($products_titles as $k => $product_title) {
$content .= '<td' . ($k == count($products_titles) - 1 ? ' class="last"' : '') . '>' . $product_title . '</td>';
}
$content .= '</tr>';
//.........这里部分代码省略.........
示例11: while
$osC_Products->setSortBy('date_added', '-');
$Qproducts = $osC_Products->execute();
if ($Qproducts->numberOfRows() > 0) {
while ($Qproducts->next()) {
$osC_Product = new osC_Product($Qproducts->valueInt('products_id'));
?>
<tr>
<td width="<?php
echo $osC_Image->getWidth('thumbnails') + 10;
?>
" valign="top" align="center">
<?php
if ($osC_Product->hasImage()) {
echo osc_link_object(osc_href_link(FILENAME_PRODUCTS, $osC_Product->getKeyword()), $osC_Image->show($osC_Product->getImage(), $osC_Product->getTitle()));
}
?>
</td>
<td valign="top"><?php
echo osc_link_object(osc_href_link(FILENAME_PRODUCTS, $osC_Product->getKeyword()), '<b><u>' . $osC_Product->getTitle() . '</u></b>') . '<br />' . $osC_Language->get('date_added') . ' ' . osC_DateTime::getLong($osC_Product->getDateAdded()) . '<br />' . $osC_Language->get('manufacturer') . ' ' . $osC_Product->getManufacturer() . '<br /><br />' . $osC_Language->get('price') . ' ' . $osC_Product->getPriceFormated();
?>
</td>
<td align="right" valign="middle"><?php
echo osc_link_object(osc_href_link(FILENAME_PRODUCTS, $osC_Product->getKeyword() . '&action=cart_add'), osc_draw_image_button('button_in_cart.gif', $osC_Language->get('button_add_to_cart')));
?>
</td>
</tr>
<tr>
<td colspan="3"> </td>
示例12: 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()) {
//.........这里部分代码省略.........
示例13: add
function add($products_id)
{
global $osC_Database, $osC_Services, $osC_Customer;
//if wishlist empty, create a new wishlist
if (!$this->hasWishlistID()) {
$token = $this->generateToken();
$Qnew = $osC_Database->query('insert into :table_wishlists (customers_id, wishlists_token) values (:customers_id, :wishlists_token)');
$Qnew->bindTable(':table_wishlists', TABLE_WISHLISTS);
if (!$osC_Customer->isLoggedOn()) {
$Qnew->bindRaw(':customers_id', 'null');
} else {
$Qnew->bindInt(':customers_id', $osC_Customer->getID());
}
$Qnew->bindValue(':wishlists_token', $token);
$Qnew->execute();
$this->_wishlists_id = $osC_Database->nextID();
$this->_token = $token;
}
$osC_Product = new osC_Product($products_id);
if ($osC_Product->getID() > 0) {
if (!$this->exists($products_id)) {
$price = $osC_Product->getPrice();
if ($osC_Services->isStarted('specials')) {
global $osC_Specials;
if ($new_price = $osC_Specials->getPrice($products_id)) {
$price = $new_price;
}
}
$this->_contents[$products_id] = array('products_id' => $products_id, 'name' => $osC_Product->getTitle(), 'image' => $osC_Product->getImage(), 'price' => $price, 'date_added' => osC_DateTime::getShort(osC_DateTime::getNow()), 'comments' => '');
$Qnew = $osC_Database->query('insert into :table_wishlist_products (wishlists_id, products_id, date_added, comments) values (:wishlists_id, :products_id, now(), :comments)');
$Qnew->bindTable(':table_wishlist_products', TABLE_WISHLISTS_PRODUCTS);
$Qnew->bindInt(':wishlists_id', $this->_wishlists_id);
$Qnew->bindInt(':products_id', $products_id);
$Qnew->bindValue(':comments', '');
$Qnew->execute();
}
}
}
示例14: osc_href_link
$str_variants = substr($str_variants, 0, -1);
}
}
//build the product string that could be used
if (strpos($products_id, '#') !== false) {
$cid = str_replace('#', '_', $products_id);
}
}
?>
<li>
<span class="pull-right" style="margin: 0 3px 1px 3px; width: 16px"><a href="<?php
echo osc_href_link(basename($_SERVER['SCRIPT_FILENAME']), 'cid=' . $cid . '&' . osc_get_all_get_params(array('cid', 'action')) . '&action=compare_products_remove');
?>
"> <i class="icon-trash"></i> </a></span>
<?php
echo osc_link_object(osc_href_link(FILENAME_PRODUCTS, $products_id), $osC_Product->getTitle() . $str_variants, 'style="width: 160px"');
?>
</li>
<?php
}
?>
</ul>
<p>
<span style="float: right"><a class="btn btn-mini multibox" rel="ajax:true" href="<?php
echo osc_href_link(FILENAME_JSON, 'module=products&action=compare_products&template=' . $osC_Template->getCode());
?>
"><?php
echo $osC_Language->get('button_compare_now');
?>
</a></span>
<a class="btn btn-mini" href="<?php
示例15: buildProductsRss
function buildProductsRss($group)
{
global $osC_Language, $osC_Image;
$group_title = $group . '_products';
$rss = array();
$rss['rss'] = array();
$rss['rss attr'] = array('xmlns:atom' => 'http://www.w3.org/2005/Atom', 'version' => '2.0');
//channel
$rss['rss']['channel'] = array('title' => '<![CDATA[' . $osC_Language->get($group_title) . ']]>', 'link' => '<![CDATA[' . osc_href_link(FILENAME_PRODUCTS, $group) . ']]>', 'description' => '<![CDATA[' . $osC_Language->get($group_title) . ']]>', 'pubDate' => date("D, d M Y H:i:s O"));
//items
if ($group == "new") {
$Qproducts = osC_Product::getListingNew();
} else {
if ($group == 'special') {
$Qproducts = osC_Specials::getListing();
} else {
if ($group == 'feature') {
$Qproducts = osC_Product::getListingFeature();
}
}
}
$items = array();
while ($Qproducts->next()) {
$osC_Product = new osC_Product($Qproducts->valueInt('products_id'));
$link = osc_href_link(FILENAME_PRODUCTS, $Qproducts->valueInt('products_id'), 'NONSSL', false, false, true);
$description = '
<![CDATA[
<table>
<tr>
<td align="center" valign="top">' . osc_link_object($link, osc_image($osC_Image->getImageUrl($osC_Product->getImage(), 'product_info'), $osC_Product->getTitle())) . '</td>
<td valign="top">' . $osC_Product->getDescription() . '</td>
</tr>
</table>
]]>';
$items[] = array('title' => '<![CDATA[' . $osC_Product->getTitle() . ' -- ' . $osC_Product->getPriceFormated() . ']]>', 'link' => '<![CDATA[' . $link . ']]>', 'description' => $description, 'pubDate' => date("D, d M Y H:i:s O"));
}
$rss['rss']['channel']['item'] = $items;
return $rss;
}