function AddProduct($format, $Item_ID, $Product, $Tags, $AjaxReload = "No", $AjaxURL = "") { // Add the required global variables global $wpdb, $categories_table_name, $subcategories_table_name, $tags_table_name, $tagged_items_table_name, $catalogues_table_name, $catalogue_items_table_name, $items_table_name, $item_images_table_name, $item_videos_table_name; global $ProdCats, $ProdSubCats, $ProdTags, $ProdCustomFields, $link_base; $ReadMore = get_option("UPCP_Read_More"); $Links = get_option("UPCP_Product_Links"); $Pretty_Links = get_option("UPCP_Pretty_Links"); $Detail_Desc_Chars = get_option("UPCP_Desc_Chars"); $CF_Conversion = get_option("UPCP_CF_Conversion"); $Details_Label = get_option("UPCP_Details_Label"); if ($Details_Label != "") { $Details_Text = $Details_Label; } else { $Details_Text = __("Details", 'UPCP'); } if (get_option("UPCP_Read_More_Label") != "") { $Read_More_Label = get_option("UPCP_Read_More_Label"); } else { $Read_More_Label = __("Read More", 'UPCP'); } if ($Links == "New") { $NewWindow = true; } else { $NewWindow = false; } if ($CF_Conversion != "No") { $Description = ConvertCustomFields($Product->Item_Description, $Item_ID); } else { $Description = $Product->Item_Description; } $Description = str_replace("[upcp-price]", $Product->Item_Price, $Description); //Select the product info, tags and images for the product $Item_Images = $wpdb->get_results("SELECT Item_Image_URL, Item_Image_ID FROM {$item_images_table_name} WHERE Item_ID=" . $Item_ID . " ORDER BY Item_Image_Order"); $TagsString = ""; if ($Product->Item_Photo_URL != "" and strlen($Product->Item_Photo_URL) > 7 and substr($Product->Item_Photo_URL, 0, 7) != "http://" and substr($Product->Item_Photo_URL, 0, 8) != "https://") { $PhotoCode = $Product->Item_Photo_URL; $PhotoCode = do_shortcode($PhotoCode); } elseif ($Product->Item_Photo_URL != "" and strlen($Product->Item_Photo_URL) > 7) { $PhotoURL = htmlspecialchars($Product->Item_Photo_URL, ENT_QUOTES); $PhotoCode = "<img src='" . $PhotoURL . "' alt='" . $Product->Item_Name . " Image' id='prod-cat-thumb-" . $Product->Item_ID . "' class='prod-cat-thumb-image upcp-thumb-image'>"; } else { $PhotoURL = plugins_url('ultimate-product-catalogue/images/No-Photo-Available.jpg'); $PhotoCode = "<img src='" . $PhotoURL . "' alt='" . $Product->Item_Name . " Image' id='prod-cat-thumb-" . $Product->Item_ID . "' class='prod-cat-thumb-image upcp-thumb-image'>"; } //Create the tag string for filtering foreach ($Tags as $Tag) { $TagsString .= $Tag->Tag_ID . ", "; } $TagsString = trim($TagsString, " ,"); // Check whether the FancyBox for WordPress plugin is activated $plugin = "fancybox-for-wordpress/fancybox.php"; include_once ABSPATH . 'wp-admin/includes/plugin.php'; $FancyBox_Installed = is_plugin_active($plugin); $uri_parts = explode('?', $_SERVER['REQUEST_URI'], 2); $FB_Perm_URL = $uri_parts[0] . "?" . $uri_parts[1]; if ($uri_parts[1] == "") { $FB_Perm_URL .= "Product_ID=" . $Product->Item_ID; } else { $FB_Perm_URL .= "&Product_ID=" . $Product->Item_ID; } if ($AjaxReload == "Yes") { $Base = $AjaxURL; } else { $Base = $uri_parts[0]; } if ($Product->Item_Link != "") { $ItemLink = $Product->Item_Link; } elseif ($FancyBox_Installed) { $ItemLink = "#prod-cat-addt-details-" . $Product->Item_ID; $FancyBoxClass = true; } elseif ($link_base != "") { $ItemLink = $link_base . "?" . $uri_parts[1] . "&SingleProduct=" . $Product->Item_ID; } elseif ($Pretty_Links == "Yes") { $ItemLink = $Base . "product/" . $Product->Item_Slug . "/?" . $uri_parts[1]; } else { $ItemLink = $Base . "?" . $uri_parts[1] . "&SingleProduct=" . $Product->Item_ID; } //Create the listing for the thumbnail layout display if ($format == "Thumbnail") { $ProductString .= "<div id='prod-cat-item-" . $Product->Item_ID . "' class='prod-cat-item upcp-thumb-item'>\n"; $ProductString .= "<div id='prod-cat-thumb-div-" . $Product->Item_ID . "' class='prod-cat-thumb-image-div upcp-thumb-image-div'>"; $ProductString .= "<a class='upcp-catalogue-link "; if ($FancyBoxClass and !$NewWindow) { $ProductString .= "fancybox"; } $ProductString .= "' "; if ($NewWindow) { $ProductString .= "target='_blank'"; } $ProductString .= " href='" . $ItemLink . "' onclick='RecordView(" . $Product->Item_ID . ");'>"; $ProductString .= $PhotoCode; $ProductString .= "</a>"; $ProductString .= "</div>\n"; $ProductString .= "<div id='prod-cat-title-" . $Product->Item_ID . "' class='prod-cat-title upcp-thumb-title'>"; $ProductString .= "<a class='upcp-catalogue-link "; if ($FancyBoxClass and !$NewWindow) { $ProductString .= "fancybox"; } $ProductString .= " no-underline'"; if ($NewWindow) { $ProductString .= "target='_blank'"; } $ProductString .= " href='" . $ItemLink . "' onclick='RecordView(" . $Product->Item_ID . ");'>" . $Product->Item_Name . "</a>"; $ProductString .= AddCustomFields($Product->Item_ID, "thumbs"); $ProductString .= "</div>\n"; $ProductString .= "<div id='prod-cat-price-" . $Product->Item_ID . "' class='prod-cat-price upcp-thumb-price'>" . $Product->Item_Price . "</div>\n"; $ProductString .= "<a class='upcp-catalogue-link "; if ($FancyBoxClass and !$NewWindow) { $ProductString .= "fancybox"; } $ProductString .= "' "; if ($NewWindow) { $ProductString .= "target='_blank'"; } $ProductString .= " href='" . $ItemLink . "' onclick='RecordView(" . $Product->Item_ID . ");'>"; $ProductString .= "<div id='prod-cat-details-link-" . $Product->Item_ID . "' class='prod-cat-details-link upcp-thumb-details-link'>" . $Details_Text . "</div>\n"; $ProductString .= "</a>"; } //Create the listing for the list layout display if ($format == "List") { $ProductString .= "<div id='prod-cat-item-" . $Product->Item_ID . "' class='prod-cat-item upcp-list-item'>\n"; $ProductString .= "<div id='prod-cat-title-" . $Product->Item_ID . "' class='prod-cat-title upcp-list-title' onclick='ToggleItem(" . $Product->Item_ID . ");'>" . $Product->Item_Name . "</div>\n"; $ProductString .= "<div id='prod-cat-price-" . $Product->Item_ID . "' class='prod-cat-price upcp-list-price' onclick='ToggleItem(" . $Product->Item_ID . ");'>" . $Product->Item_Price . "</div>\n"; $ProductString .= "<div id='prod-cat-details-" . $Product->Item_ID . "' class='prod-cat-details upcp-list-details hidden-field'>\n"; $ProductString .= "<div id='prod-cat-thumb-div-" . $Product->Item_ID . "' class='prod-cat-thumb-image-div upcp-list-image-div'>"; $ProductString .= "<a class='upcp-catalogue-link "; if ($FancyBoxClass and !$NewWindow) { $ProductString .= "fancybox"; } $ProductString .= "' "; if ($NewWindow) { $ProductString .= "target='_blank'"; } $ProductString .= " href='" . $ItemLink . "' onclick='RecordView(" . $Product->Item_ID . ");'>"; $ProductString .= $PhotoCode; $ProductString .= "</a>"; $ProductString .= "</div>\n"; $ProductString .= "<div id='prod-cat-desc-" . $Product->Item_ID . "' class='prod-cat-desc upcp-list-desc'>" . $Description . "</div>\n"; $ProductString .= AddCustomFields($Product->Item_ID, "list"); $ProductString .= "<a class='upcp-catalogue-link "; if ($FancyBoxClass and !$NewWindow) { $ProductString .= "fancybox"; } $ProductString .= "' "; if ($NewWindow) { $ProductString .= "target='_blank'"; } $ProductString .= " href='" . $ItemLink . "' onclick='RecordView(" . $Product->Item_ID . ");'>"; $ProductString .= "<div id='prod-cat-details-link-" . $Product->Item_ID . "' class='prod-cat-details-link upcp-list-details-link'>" . __("Images", 'UPCP') . "</div>\n"; $ProductString .= "</a>"; $ProductString .= "</div>"; } //Create the listing for the detail layout display if ($format == "Detail") { $ProductString .= "<div id='prod-cat-item-" . $Product->Item_ID . "' class='prod-cat-item upcp-detail-item'>\n"; $ProductString .= "<div id='prod-cat-detail-div-" . $Product->Item_ID . "' class='prod-cat-thumb-image-div upcp-detail-image-div'>"; $ProductString .= "<a class='upcp-catalogue-link "; if ($FancyBoxClass and !$NewWindow) { $ProductString .= "fancybox"; } $ProductString .= "' "; if ($NewWindow) { $ProductString .= "target='_blank'"; } $ProductString .= " href='" . $ItemLink . "' onclick='RecordView(" . $Product->Item_ID . ");'>"; $ProductString .= $PhotoCode; $ProductString .= "</a>"; $ProductString .= "</div>\n"; $ProductString .= "<div id='prod-cat-mid-div-" . $Product->Item_ID . "' class='prod-cat-mid-detail-div upcp-mid-detail-div'>"; $ProductString .= "<a class='upcp-catalogue-link "; if ($FancyBoxClass and !$NewWindow) { $ProductString .= "fancybox"; } $ProductString .= "' "; if ($NewWindow) { $ProductString .= "target='_blank'"; } $ProductString .= " href='" . $ItemLink . "' onclick='RecordView(" . $Product->Item_ID . ");'>"; $ProductString .= "<div id='prod-cat-title-" . $Product->Item_ID . "' class='prod-cat-title upcp-detail-title'>" . $Product->Item_Name . "</div>\n"; $ProductString .= "</a>"; if ($ReadMore == "Yes") { $ProductString .= "<div id='prod-cat-desc-" . $Product->Item_ID . "' class='prod-cat-desc upcp-detail-desc'>" . strip_tags(substr($Description, 0, $Detail_Desc_Chars)); } else { $ProductString .= "<div id='prod-cat-desc-" . $Product->Item_ID . "' class='prod-cat-desc upcp-detail-desc'>" . strip_tags($Description); } if ($ReadMore == "Yes") { if (strlen($Description) > $Detail_Desc_Chars) { $ProductString .= "... <a class='upcp-catalogue-link "; if ($FancyBoxClass and !$NewWindow) { $ProductString .= "fancybox"; } $ProductString .= "' "; if ($NewWindow) { $ProductString .= "target='_blank'"; } $ProductString .= " href='" . $ItemLink . "' onclick='RecordView(" . $Product->Item_ID . ");'>" . $Read_More_Label . "</a>"; } } $ProductString .= AddCustomFields($Product->Item_ID, "details"); $ProductString .= "</div>\n"; $ProductString .= "</div>"; $ProductString .= "<div id='prod-cat-end-div-" . $Product->Item_ID . "' class='prod-cat-end-detail-div upcp-end-detail-div'>"; $ProductString .= "<div id='prod-cat-price-" . $Product->Item_ID . "' class='prod-cat-price upcp-detail-price'>" . $Product->Item_Price . "</div>\n"; $ProductString .= "<a class='upcp-catalogue-link "; if ($FancyBoxClass and !$NewWindow) { $ProductString .= "fancybox"; } $ProductString .= "' "; if ($NewWindow) { $ProductString .= "target='_blank'"; } $ProductString .= " href='" . $ItemLink . "' onclick='RecordView(" . $Product->Item_ID . ");'>"; $ProductString .= "<div id='prod-cat-details-link-" . $Product->Item_ID . "' class='prod-cat-details-link upcp-detail-details-link'>" . $Details_Text . "</div>\n"; $ProductString .= "</a>"; $ProductString .= "</div>"; } if ($FancyBox_Installed) { $ProductString .= "<div style='display:none;' id='upcp-fb-" . $Product->Item_ID . "'>"; $ProductString .= "<div id='prod-cat-addt-details-" . $Product->Item_ID . "' class='prod-cat-addt-details'>"; $ProductString .= "<div id='prod-cat-addt-details-thumbs-div-" . $Product->Item_ID . "' class='prod-cat-addt-details-thumbs-div'>"; $ProductString .= "<img src='" . $PhotoURL . "' id='prod-cat-addt-details-thumb-P" . $Product->Item_ID . "' class='prod-cat-addt-details-thumb' onclick='ZoomImage(\"" . $Product->Item_ID . "\", \"0\");'>"; foreach ($Item_Images as $Image) { $ProductString .= "<img src='" . htmlspecialchars($Image->Item_Image_URL, ENT_QUOTES) . "' id='prod-cat-addt-details-thumb-" . $Image->Item_Image_ID . "' class='prod-cat-addt-details-thumb' onclick='ZoomImage(\"" . $Product->Item_ID . "\", \"" . $Image->Item_Image_ID . "\");'>"; } $ProductString .= "</div>"; $ProductString .= "<div id='prod-cat-addt-details-right-div-" . $Product->Item_ID . "' class='prod-cat-addt-details-right-div'>"; $ProductString .= "<h2 class='prod-cat-addt-details-title'><a class='no-underline' href='http://" . $_SERVER['HTTP_HOST'] . $FB_Perm_URL . "'>" . $Product->Item_Name . "<img class='upcp-product-url-icon' src='" . get_bloginfo('wpurl') . "/wp-content/plugins/ultimate-product-catalogue/images/insert_link.png' /></a></h2>"; $ProductString .= "<div id='prod-cat-addt-details-main-div-" . $Product->Item_ID . "' class='prod-cat-addt-details-main-div'>"; $ProductString .= "<a class='upcp-no-pointer' onclick='return false'>"; $ProductString .= "<img src='" . $PhotoURL . "' alt='" . $Product->Item_Name . " Image' id='prod-cat-addt-details-main-" . $Product->Item_ID . "' class='prod-cat-addt-details-main'>"; $ProductString .= "</a>"; $ProductString .= "</div>"; $ProductString .= "<div class='upcp-clear'></div>"; $ProductString .= "<div id='prod-cat-addt-details-desc-div-" . $Product->Item_ID . "' class='prod-cat-addt-details-desc-div'>"; $ProductString .= $Description; $ProductString .= AddCustomFields($Product->Item_ID, "details"); $ProductString .= "</div>"; $ProductString .= "</div></div></div>"; //$ProductString .= "</div>"; } // Add hidden fields with the category, sub-category and tag ID's for each product $ProductString .= "<div id='prod-cat-category-jquery-" . $Product->Item_ID . "' class='prod-cat-category-jquery jquery-hidden'> " . $Product->Category_ID . ",</div>\n"; $ProductString .= "<div id='prod-cat-subcategory-jquery-" . $Product->Item_ID . "' class='prod-cat-subcategory-jquery jquery-hidden'> " . $Product->SubCategory_ID . ",</div>\n"; $ProductString .= "<div id='prod-cat-tag-jquery-" . $Product->Item_ID . "' class='prod-cat-tag-jquery jquery-hidden'> " . $TagsString . ",</div>\n"; $ProductString .= "<div id='prod-cat-title-jquery-" . $Product->Item_ID . "' class='prod-cat-title-jquery jquery-hidden'> " . $Product->Item_Name . ",</div>\n"; $ProductString .= "<div class='upcp-clear'></div>\n"; $ProductString .= "</div>\n"; return $ProductString; }
} else { include 'templates/open.page.php'; include 'templates/subhandlers/confirm_send_fail.php'; include 'templates/close.page.php'; } } } die; } else { # Add a confirmed row to the DB $DB_Confirmed = "1"; $query = "INSERT INTO " . $infrespsubscribers . " (ResponderID, SentMsgs, EmailAddress, TimeJoined, Real_TimeJoined, CanReceiveHTML, LastActivity, FirstName, LastName, IP_Addy, ReferralSource, UniqueCode, Confirmed)\n\t\t\t\t VALUES('{$DB_ResponderID}','{$DB_SentMsgs}', '{$DB_EmailAddress}', '{$DB_TimeJoined}', '{$DB_Real_TimeJoined}', '{$CanReceiveHTML}', '{$DB_LastActivity}', '{$DB_FirstName}', '{$DB_LastName}', '{$DB_IPaddy}', '{$DB_ReferralSource}', '{$DB_UniqueCode}', '{$DB_Confirmed}')"; $DB_result = mysql_query($query) or die("Invalid query: " . mysql_error()); $DB_SubscriberID = mysql_insert_id(); # Handle custom fields AddCustomFields(); # Send mail and notify # SendMessageTemplate('templates/messages/subscribe.complete.txt'); if ($DB_NotifyOnSub == "1") { SendMessageTemplate('templates/messages/new_subscriber.notify.txt', $ResponderInfo['FromEmail'], $ResponderInfo['FromEmail'], $DB_SubscriberID); } # Autocall sendmails on subscribe? if ($config['autocall_sendmails'] == "1") { $silent = TRUE; include 'sendmails.php'; } if ($SilentMode != 1) { if ($_REQUEST['output'] == 'text') { echo "<html><head>" . $messagestyle . "</head><body>"; echo "<div id='submessage' class='success'>"; include 'templates/subhandlers/sub_complete.php';