function nzshpcrt_specials($input = null) { global $wpdb; $image_width = get_option('product_image_width'); $image_height = get_option('product_image_height'); $siteurl = get_option('siteurl'); $sql = "SELECT * FROM `" . WPSC_TABLE_PRODUCT_LIST . "` WHERE `special_price` != '0.00' AND `active` IN ('1') ORDER BY RAND() LIMIT 1"; $product = $wpdb->get_results($sql, ARRAY_A); if ($product != null) { $output = "<div>"; foreach ($product as $special) { $special['name'] = htmlentities(stripslashes($special['name']), ENT_QUOTES, "UTF-8"); $output .= "<strong><a class='wpsc_product_title' href='" . wpsc_product_url($special['id'], $special['category']) . "'>" . $special['name'] . "</a></strong><br /> "; if (is_numeric($special['image'])) { $image_file_name = $wpdb->get_var("SELECT `image` FROM `" . WPSC_TABLE_PRODUCT_IMAGES . "` WHERE `id`= '" . $special['image'] . "' LIMIT 1"); if ($image_file_name != '') { $image_path = "index.php?productid=" . $special['id'] . "&width=" . $image_width . "&height=" . $image_height . ""; $output .= "<img src='" . $image_path . "' title='" . $special['name'] . "' alt='" . $special['name'] . "' /><br />"; } } //exit('Widget specisl'.get_option('wpsc_special_description')); if (get_option('wpsc_special_description') != '1') { $output .= $special['description'] . "<br />"; } $variations_processor = new nzshpcrt_variations(); $variations_output = $variations_processor->display_product_variations($special['id'], true, false, true); $output .= $variations_output[0]; if ($variations_output[1] !== null) { $special['price'] = $variations_output[1]; $special['special_price'] = 0; } if ($variations_output[1] == null) { $output .= "<span class='oldprice'>" . nzshpcrt_currency_display($special['price'], $special['notax'], false) . "</span><br />"; } $output .= "<span id='special_product_price_" . $special['id'] . "'><span class='pricedisplay'>"; $output .= nzshpcrt_currency_display($special['price'] - $special['special_price'], $special['notax'], false, $product['id']); $output .= "</span></span><br />"; $output .= "<form id='specials_" . $special['id'] . "' method='post' action='' onsubmit='submitform(this, null);return false;' >"; $output .= "<input type='hidden' name='product_id' value='" . $special['id'] . "'/>"; $output .= "<input type='hidden' name='item' value='" . $special['id'] . "' />"; $output .= "<input type='hidden' name='wpsc_ajax_action' value='special_widget' />"; if ($special['quantity_limited'] == 1 && $special['quantity'] < 1) { $output .= TXT_WPSC_PRODUCTSOLDOUT . ""; } else { //$output .= $variations_processor->display_product_variations($special['id'],true); $output .= "<input type='submit' name='" . TXT_WPSC_ADDTOCART . "' value='" . TXT_WPSC_ADDTOCART . "' />"; } $output .= "</form>"; } $output .= "</div>"; } else { $output = ''; } echo $input . $output; }
function display_product_extras($product_id, $no_label = false, $no_br = false, $update_price = false) { global $wpdb; $output = ''; $sql = "SELECT * FROM `" . $wpdb->prefix . "product_list` WHERE `id`='" . $product_id . "' LIMIT 1"; $product_data = $wpdb->get_row($sql, ARRAY_A); $extras_assoc_sql = "SELECT * FROM `" . $wpdb->prefix . "extras_values_associations` WHERE product_id IN ('{$product_id}')"; $extras_assoc_data = $wpdb->get_results($extras_assoc_sql, ARRAY_A); if (count($extras_assoc_data) == 0) { return ''; } foreach ($extras_assoc_data as $extras_association) { $extras_ids[] = $extras_association['extras_id']; } //echo $special = 'false'; if ($no_label == true) { $special = 'true'; } $extras_ids_str = implode(',', $extras_ids); $extras_name_sql = "SELECT * FROM " . $wpdb->prefix . "product_extra WHERE id IN (" . $extras_ids_str . ") ORDER BY id"; $extras_name_data = $wpdb->get_results($extras_name_sql, ARRAY_A); //exit("<pre>".print_r($extras_name_data,1)."</pre>"); $j = 0; $x = 0; foreach ($extras_name_data as $extras_name_datum) { $j++; $extras_value_sql = "SELECT * FROM " . $wpdb->prefix . "extras_values WHERE extras_id IN (" . $extras_name_datum['id'] . ")"; $extras_value_data = $wpdb->get_results($extras_value_sql, ARRAY_A); //exit("<pre>".print_r($extras_value_data,1)."</pre>"); $output .= "<label>" . $extras_name_datum['name'] . "</label>" . $extras_name_datum['price'] . "<br>"; if ($j == 1) { $price = ''; $checked = 'checked="checked"'; } else { $price = nzshpcrt_currency_display($extras_assoc_data[$x]['price'], 0); $checked = ''; } foreach ($extras_value_data as $extras_value_datum) { if ($j == 1) { $price = ''; } else { $price = nzshpcrt_currency_display($extras_assoc_data[$x]['price'], 0); } $output .= "<input style='float:left;' type='checkbox' {$checked} name='extras[]' value='" . $extras_value_datum['id'] . "' class='extras_" . $product_id . "' id='extras_" . $product_id . "_" . $extras_value_datum['id'] . "' onclick='manage_extras(" . $product_id . "," . $extras_value_datum['id'] . "," . $special . ")' id='extra_value_id_" . $extras_value_datum['id'] . "'><label style='float:left;' for='extras_" . $product_id . "_" . $extras_value_datum['id'] . "'>" . $extras_value_datum['name'] . " " . $price . "</label><img style='display:none;float:left;' id='extras_indicator" . $product_id . $extras_value_datum['id'] . "' src=' " . WPSC_DIR_NAME . "/images/indicator.gif'><br>"; $x++; } } return $output; }
function wpsc_grid_title_and_price(&$product) { $output .= "<div class='grid_price'>"; if ($soldout) { $output .= "<span class='soldoutgrid'>Sold out</span>"; } else { if ($product['special'] == 1) { $output .= nzshpcrt_currency_display($product['price'] - $product['special_price'], $product['notax'], false, $product['id']) . "\n\r"; } else { $output .= nzshpcrt_currency_display($product['price'], $product['notax']) . "\n\r"; } } $output .= "</div>"; $output .= "<div class='grid_prodcut_title'><a href='" . wpsc_product_url($product['id']) . "'>" . stripslashes($product['name']) . "</a></div>"; return $output; }
function nzshpcrt_specials($input = null) { global $wpdb; $siteurl = get_option('siteurl'); $sql = "SELECT * FROM `" . $wpdb->prefix . "product_list` WHERE `special` = '1' ORDER BY RAND() LIMIT 1"; $product = $wpdb->get_results($sql, ARRAY_A); if ($product != null) { $output = "<div><div>"; foreach ($product as $special) { $output .= "<strong>" . $special['name'] . "</strong><br /> "; if ($special['image'] != null) { $output .= "<img src='{$siteurl}/wp-content/plugins/wp-shopping-cart/product_images/thumbnails/" . $special['image'] . "' title='" . $special['name'] . "' alt='" . $special['name'] . "' /><br />"; } $output .= $special['description'] . "<br />"; // $output .= $special['price']; $variations_processor = new nzshpcrt_variations(); $variations_output = $variations_processor->display_product_variations($special['id'], true, false, true); $output .= $variations_output[0]; if ($variations_output[1] !== null) { $special['price'] = $variations_output[1]; } if ($variations_output[1] == null) { $output .= "<span class='oldprice'>" . nzshpcrt_currency_display($special['price'], $special['notax'], false) . "</span><br />"; } $output .= "<span id='special_product_price_" . $special['id'] . "'><span class='pricedisplay'>"; $output .= nzshpcrt_currency_display($special['price'] - $special['special_price'], $special['notax'], false, $product['id']); $output .= "</span></span><br />"; $output .= "<form id='specials_" . $special['id'] . "' name='{$num}' method='post' action='#' onsubmit='submitform(this);return false;' >"; $output .= "<input type='hidden' name='prodid' value='" . $special['id'] . "'/>"; $output .= "<input type='hidden' name='item' value='" . $special['id'] . "' />"; if ($special['quantity_limited'] == 1 && $special['quantity'] < 1) { $output .= TXT_WPSC_PRODUCTSOLDOUT . ""; } else { //$output .= $variations_processor->display_product_variations($special['id'],true); $output .= "<input type='submit' name='" . TXT_WPSC_ADDTOCART . "' value='" . TXT_WPSC_ADDTOCART . "' />"; } $output .= "</form>"; } $output .= "</div></div>"; } else { $output = ''; } echo $input . $output; }
function nzshpcrt_price_range($input = null) { global $wpdb; $siteurl = get_option('siteurl'); $product_page = get_option("product_list_url"); if (stristr($product_page, "?")) { $seperater = '&'; } else { $seperater = '?'; } $result = $wpdb->get_results("SELECT DISTINCT `price` FROM " . WPSC_TABLE_PRODUCT_LIST . " WHERE `active` IN ('1') ORDER BY price ASC", ARRAY_A); if ($result != null) { sort($result); $count = count($result); $price_seperater = ceil($count / 6); for ($i = 0; $i < $count; $i += $price_seperater) { $ranges[] = round($result[$i]['price'], -1); } $ranges = array_unique($ranges); $final_count = count($ranges); $ranges = array_merge(array(), $ranges); $_SESSION['price_range'] = $ranges; // echo('<pre>'.print_r($ranges, true).'</pre>'); for ($i = 0; $i < $final_count; $i++) { $j = $i; if ($i == $final_count - 1) { echo "<a href='" . htmlentities($product_page . $seperater . "range=" . $j) . "'>Over " . nzshpcrt_currency_display($ranges[$i], 1, true) . "</a><br/>"; } else { if ($ranges[$i] == 0) { echo "<a href='" . htmlentities($product_page . $seperater . "range=" . $j) . "'>Under " . nzshpcrt_currency_display($ranges[$i + 1], 1, true) . "</a><br/>"; } else { echo "<a href='" . htmlentities($product_page . $seperater . "range=" . $j) . "'>" . nzshpcrt_currency_display($ranges[$i], 1, true) . " - " . nzshpcrt_currency_display($ranges[$i + 1], 1, true) . "</a><br/>"; } } } if (get_option('permalink_structure') != '') { $seperator = "?"; } else { $seperator = "&"; } echo "<a href='" . get_option("product_list_url") . $seperator . "range=all'>" . __('Show All', 'wpsc') . "</a><br/>"; } }
function transaction_results($sessionid, $echo_to_screen = true, $transaction_id = null) { global $wpdb, $wpsc_cart, $wpsc_shipping_modules; echo $sessionid; //$curgateway = get_option('payment_gateway'); $curgateway = $wpdb->get_var("SELECT gateway FROM " . WPSC_TABLE_PURCHASE_LOGS . " WHERE sessionid='{$sessionid}'"); $errorcode = 0; $order_status = 2; /* * {Notes} Double check that $Echo_To_Screen is a boolean value */ $echo_to_screen = !is_bool($echo_to_screen) ? true : $echo_to_screen; //exit('triggered but with errors?'.$echo_to_screen); if (is_numeric($sessionid)) { if ($echo_to_screen) { echo apply_filters('wpsc_pre_transaction_results', ''); } $purchase_log = $wpdb->get_row("SELECT * FROM `" . WPSC_TABLE_PURCHASE_LOGS . "` WHERE `sessionid`= " . $sessionid . " LIMIT 1", ARRAY_A); $thepurchlogitem = new wpsc_purchaselogs_items((int) $purchase_log['id']); if ($purchase_log['gateway'] == "testmode" && $purchase_log['processed'] < 2) { $message = stripslashes(get_option('wpsc_email_receipt')); $message_html = $message; } else { $message = stripslashes(get_option('wpsc_email_receipt')); $message_html = $message; } $order_url = site_url("/wp-admin/admin.php?page=" . WPSC_DIR_NAME . "/display-log.php&purchcaseid=" . $purchase_log['id']); if ($_GET['ipn_request'] != 'true' and get_option('paypal_ipn') == 1) { if ($purchase_log == null) { echo __('We're Sorry, your order has not been accepted, the most likely reason is that you have insufficient funds.', 'wpsc'); if (get_option('purch_log_email') != null && $purchase_log['email_sent'] != 1) { wp_mail(get_option('purch_log_email'), __('New pending order', 'wpsc'), __('There is a new order awaiting processing:', 'wpsc') . $order_url, "From: " . get_option('return_email') . ""); } return false; } else { if ($purchase_log['processed'] < 2) { //added by Thomas on 20/6/2007 echo __('Thank you, your purchase is pending, you will be sent an email once the order clears.', 'wpsc') . "<p style='margin: 1em 0px 0px 0px;' >" . nl2br(stripslashes(get_option('payment_instructions'))) . "</p>"; /*if($purchase_log['gateway'] != 'testmode') { if((get_option('purch_log_email') != null) && ($purchase_log['email_sent'] != 1)) { mail(get_option('purch_log_email'), __('New pending order', 'wpsc'), __('There is a new order awaiting processing:', 'wpsc').$order_url, "From: ".get_option('return_email').""); } return false; }*/ } } } if (isset($_GET['ssl_result_message']) && $_GET['ssl_result_message'] == 'APPROVAL') { $order_status = 2; $purchase_log['processed'] = 2; } $cart = $wpdb->get_results("SELECT * FROM `" . WPSC_TABLE_CART_CONTENTS . "` WHERE `purchaseid`='{$purchase_log['id']}'", ARRAY_A); if ($purchase_log['shipping_country'] != '') { $billing_country = $purchase_log['billing_country']; $shipping_country = $purchase_log['shipping_country']; } else { $country = $wpdb->get_var("SELECT `value` FROM `" . WPSC_TABLE_SUBMITED_FORM_DATA . "` WHERE `log_id`=" . $purchase_log['id'] . " AND `form_id` = '" . get_option('country_form_field') . "' LIMIT 1"); $billing_country = $country; $shipping_country = $country; } $email_form_field = $wpdb->get_results("SELECT `id`,`type` FROM `" . WPSC_TABLE_CHECKOUT_FORMS . "` WHERE `type` IN ('email') AND `active` = '1' ORDER BY `order` ASC LIMIT 1", ARRAY_A); $email = $wpdb->get_var("SELECT `value` FROM `" . WPSC_TABLE_SUBMITED_FORM_DATA . "` WHERE `log_id`=" . $purchase_log['id'] . " AND `form_id` = '" . $email_form_field[0]['id'] . "' LIMIT 1"); $stock_adjusted = false; $previous_download_ids = array(0); $product_list = ''; if ($cart != null && $errorcode == 0) { foreach ($cart as $row) { $link = ""; $product_data = $wpdb->get_row("SELECT * FROM `" . WPSC_TABLE_PRODUCT_LIST . "` WHERE `id`='{$row['prodid']}' LIMIT 1", ARRAY_A); if ($purchase_log['email_sent'] != 1) { $wpdb->query("UPDATE `" . WPSC_TABLE_DOWNLOAD_STATUS . "` SET `active`='1' WHERE (`fileid` = '{$product_data['file']}' OR `cartid` = '{$row['id']}' ) AND `purchid` = '{$purchase_log['id']}'"); } do_action('wpsc_transaction_result_cart_item', array("purchase_id" => $purchase_log['id'], "cart_item" => $row, "purchase_log" => $purchase_log)); if ($purchase_log['processed'] >= 2) { $download_data = $wpdb->get_results("SELECT * FROM `" . WPSC_TABLE_DOWNLOAD_STATUS . "`\r\n\t\t\t\t\t INNER JOIN `" . WPSC_TABLE_PRODUCT_FILES . "`\r\n\t\t\t\t\t ON `" . WPSC_TABLE_DOWNLOAD_STATUS . "`.`fileid` = `" . WPSC_TABLE_PRODUCT_FILES . "`.`id`\r\n\t\t\t\t\t WHERE `" . WPSC_TABLE_DOWNLOAD_STATUS . "`.`active`='1'\r\n\t\t\t\t\t AND `" . WPSC_TABLE_DOWNLOAD_STATUS . "`.`purchid`='" . $purchase_log['id'] . "'\r\n\t\t\t\t\t AND (\r\n\t\t\t\t\t\t`" . WPSC_TABLE_DOWNLOAD_STATUS . "`.`cartid` = '" . $row['id'] . "'\r\n\t\t\t\t\t\t\tOR (\r\n\t\t\t\t\t\t\t\t`" . WPSC_TABLE_DOWNLOAD_STATUS . "`.`cartid` IS NULL\r\n\t\t\t\t\t\t\t\tAND `" . WPSC_TABLE_DOWNLOAD_STATUS . "`.`fileid` = '{$product_data['file']}'\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t)\r\n\t\t\t\t\t\tAND `" . WPSC_TABLE_DOWNLOAD_STATUS . "`.`id` NOT IN ('" . implode("','", $previous_download_ids) . "')", ARRAY_A); $link = array(); //exit('IM HERE'.$errorcode.'<pre>'.print_r($download_data).'</pre>'); if (sizeof($download_data) != 0) { foreach ($download_data as $single_download) { if ($single_download['uniqueid'] == null) { // if the uniqueid is not equal to null, its "valid", regardless of what it is $link[] = array("url" => site_url("?downloadid=" . $single_download['id']), "name" => $single_download["filename"]); } else { $link[] = array("url" => site_url("?downloadid=" . $single_download['uniqueid']), "name" => $single_download["filename"]); } } //$order_status= 4; } else { $order_status = $purchase_log['processed']; } $previous_download_ids[] = $download_data['id']; do_action('wpsc_confirm_checkout', $purchase_log['id']); } // do_action('wpsc_confirm_checkout', $purchase_log['id']); $shipping = $row['pnp']; $total_shipping += $shipping; if ($product_data['special'] == 1) { $price_modifier = $product_data['special_price']; } else { $price_modifier = 0; } $total += $row['price'] * $row['quantity']; $message_price = nzshpcrt_currency_display($row['price'] * $row['quantity'], $product_data['notax'], true); $shipping_price = nzshpcrt_currency_display($shipping, 1, true); $variation_values = $wpdb->get_col("SELECT `value_id` FROM `" . WPSC_TABLE_CART_ITEM_VARIATIONS . "` WHERE `cart_id`='{$row['id']}'"); //echo "<pre>".print_r($product_data,true)."</pre>"; $variation_count = count($variation_values); if ($purchase['gateway'] != 'testmode') { if ($gateway['internalname'] == $purch_data[0]['gateway']) { $gateway_name = $gateway['name']; } } else { $gateway_name = "Manual Payment"; } //echo "<pre>".print_r($variation_values,true)."</pre>"; $variation_list = ''; if ($variation_count > 0) { $value_names = $wpdb->get_col("SELECT `name` FROM `" . WPSC_TABLE_VARIATION_VALUES . "` WHERE `id` IN ('" . implode("','", $variation_values) . "')"); $variation_list = " (" . stripslashes(implode(", ", $value_names)) . ")"; } if ($link != '' && !empty($link)) { $additional_content = apply_filters('wpsc_transaction_result_content', array("purchase_id" => $purchase_log['id'], "cart_item" => $row, "purchase_log" => $purchase_log)); if (!is_string($additional_content)) { $additional_content = ''; } //$product_list .= " - ". $product_data['name'] . stripslashes($variation_list) ." ".$message_price ." ".__('Click to download', 'wpsc').":\n\r $link\n\r".$additional_content; //$product_list_html .= " - ". $product_data['name'] . stripslashes($variation_list) ." ".$message_price ." <a href='$link'>".__('Click to download', 'wpsc')."</a>\n". $additional_content; $product_list .= " - " . $product_data['name'] . stripslashes($variation_list) . " " . $message_price; $product_list_html .= " - " . $product_data['name'] . stripslashes($variation_list) . " " . $message_price; foreach ($link as $single_link) { $product_list .= "\n\r " . $single_link["name"] . ": " . $single_link["url"] . "\n\r"; $product_list_html .= "<a href='" . $single_link["url"] . "'>" . $single_link["name"] . "</a>\n"; $report_product_list .= "\n\r " . $single_link["name"] . ": " . $single_link["url"] . "\n\r"; // $report_product_list .="<a href='".$single_link["url"]."'>".$single_link["name"]."</a>\n"; } $product_list .= $additional_content; $product_list_html .= $additional_content; } else { $plural = ''; if ($row['quantity'] > 1) { $plural = "s"; } $product_list .= $row['quantity'] . " - " . $product_data['name'] . stripslashes($variation_list) . " " . $message_price . "\n\r"; if ($shipping > 0) { $product_list .= " - " . __('Shipping', 'wpsc') . ":" . $shipping_price . "\n\r"; } $product_list_html .= $row['quantity'] . " - " . $product_data['name'] . stripslashes($variation_list) . " " . $message_price . "\n\r"; if ($shipping > 0) { $product_list_html .= " " . __('Shipping', 'wpsc') . ":" . $shipping_price . "\n\r"; } $report_product_list .= $row['quantity'] . " - " . $product_data['name'] . stripslashes($variation_list) . " " . $message_price . "\n\r"; } $report = get_option('wpsc_email_admin'); } // Decrement the stock here if ($purchase_log['processed'] >= 2) { wpsc_decrement_claimed_stock($purchase_log['id']); } if ($purchase_log['discount_data'] != '') { $coupon_data = $wpdb->get_row("SELECT * FROM `" . WPSC_TABLE_COUPON_CODES . "` WHERE coupon_code='" . $wpdb->escape($purchase_log['discount_data']) . "' LIMIT 1", ARRAY_A); if ($coupon_data['use-once'] == 1) { $wpdb->query("UPDATE `" . WPSC_TABLE_COUPON_CODES . "` SET `active`='0', `is-used`='1' WHERE `id`='" . $coupon_data['id'] . "' LIMIT 1"); } } //$wpdb->query("UPDATE `".WPSC_TABLE_DOWNLOAD_STATUS."` SET `active`='1' WHERE `fileid`='".$product_data['file']."' AND `purchid` = '".$purchase_log['id']."' LIMIT 1"); //if (!isset($_SESSION['quote_shipping'])) //$total_shipping = nzshpcrt_determine_base_shipping($total_shipping, $shipping_country); $total_shipping += $purchase_log['base_shipping']; $total = $purchase_log['totalprice']; // echo $total; // $message.= "\n\r"; $product_list .= "Your Purchase No.: " . $purchase_log['id'] . "\n\r"; if ($purchase_log['discount_value'] > 0) { $discount_email .= __('Discount', 'wpsc') . "\n\r: "; $discount_email .= $purchase_log['discount_data'] . ' : ' . nzshpcrt_currency_display($purchase_log['discount_value'], 1, true) . "\n\r"; } $total_shipping_email .= __('Total Shipping', 'wpsc') . ": " . nzshpcrt_currency_display($total_shipping, 1, true) . "\n\r"; $total_price_email .= __('Total', 'wpsc') . ": " . nzshpcrt_currency_display($total, 1, true) . "\n\r"; $product_list_html .= "Your Purchase No.: " . $purchase_log['id'] . "\n\n\r"; if ($purchase_log['discount_value'] > 0) { $report .= $discount_email . "\n\r"; $total_shipping_html .= __('Discount', 'wpsc') . ": " . nzshpcrt_currency_display($purchase_log['discount_value'], 1, true) . "\n\r"; } $total_shipping_html .= __('Total Shipping', 'wpsc') . ": " . nzshpcrt_currency_display($total_shipping, 1, true) . "\n\r"; $total_price_html .= __('Total', 'wpsc') . ": " . nzshpcrt_currency_display($total, 1, true) . "\n\r"; if (isset($_GET['ti'])) { $message .= "\n\r" . __('Your Transaction ID', 'wpsc') . ": " . $_GET['ti']; $message_html .= "\n\r" . __('Your Transaction ID', 'wpsc') . ": " . $_GET['ti']; $report .= "\n\r" . __('Transaction ID', 'wpsc') . ": " . $_GET['ti']; } else { $report_id = "Purchase # " . $purchase_log['id'] . "\n\r"; } //echo "<pre>".print_r($purchase_log,true)."</pre>"; $message = str_replace('%product_list%', $product_list, $message); $message = str_replace('%total_shipping%', $total_shipping_email, $message); $message = str_replace('%total_price%', $total_price_email, $message); $message = str_replace('%shop_name%', get_option('blogname'), $message); $message = str_replace('%find_us%', $purchase_log['find_us'], $message); //$message = str_replace('%order_status%',get_option('blogname'),$message); $report = str_replace('%product_list%', $report_product_list, $report); $report = str_replace('%total_shipping%', $total_shipping_email, $report); $report = str_replace('%total_price%', $total_price_email, $report); $report = str_replace('%shop_name%', get_option('blogname'), $report); $report = str_replace('%find_us%', $purchase_log['find_us'], $report); $message_html = str_replace('%product_list%', $product_list_html, $message_html); $message_html = str_replace('%total_shipping%', $total_shipping_html, $message_html); $message_html = str_replace('%total_price%', $total_price_email, $message_html); $message_html = str_replace('%shop_name%', get_option('blogname'), $message_html); $message_html = str_replace('%find_us%', $purchase_log['find_us'], $message_html); //$message_html = str_replace('%order_status%',get_option('blogname'),$message_html); if ($email != '' && $purchase_log['email_sent'] != 1) { add_filter('wp_mail_from', 'wpsc_replace_reply_address', 0); add_filter('wp_mail_from_name', 'wpsc_replace_reply_name', 0); if ($purchase_log['processed'] < 2) { $payment_instructions = strip_tags(get_option('payment_instructions')); $message = __('Thank you, your purchase is pending, you will be sent an email once the order clears.', 'wpsc') . "\n\r" . $payment_instructions . "\n\r" . $message; wp_mail($email, __('Order Pending: Payment Required', 'wpsc'), $message); } else { wp_mail($email, __('Purchase Receipt', 'wpsc'), $message); } } remove_filter('wp_mail_from_name', 'wpsc_replace_reply_name'); remove_filter('wp_mail_from', 'wpsc_replace_reply_address'); $report_user = __('Customer Details', 'wpsc') . "\n\r"; $report_user .= "Billing Info \n\r"; foreach ((array) $thepurchlogitem->userinfo as $userinfo) { if ($userinfo['unique_name'] != 'billingcountry') { $report_user .= "" . $userinfo['name'] . ": " . $userinfo['value'] . "\n"; } else { $userinfo['value'] = maybe_unserialize($userinfo['value']); if (is_array($userinfo['value'])) { if (!empty($userinfo['value'][1]) && !is_numeric($userinfo['value'][1])) { $report_user .= "State: " . $userinfo['value'][1] . "\n"; } elseif (is_numeric($userinfo['value'][1])) { $report_user .= "State: " . wpsc_get_state_by_id($userinfo['value'][1], 'name') . "\n"; } if (!empty($userinfo['value'][0])) { $report_user .= "Country: " . $userinfo['value'][0] . "\n"; } } else { $report_user .= "" . $userinfo['name'] . ": " . $userinfo['value'] . "\n"; } } } $report_user .= "\n\rShipping Info \n\r"; foreach ((array) $thepurchlogitem->shippinginfo as $userinfo) { if ($userinfo['unique_name'] != 'shippingcountry' && $userinfo['unique_name'] != 'shippingstate') { $report_user .= "" . $userinfo['name'] . ": " . $userinfo['value'] . "\n"; } elseif ($userinfo['unique_name'] == 'shippingcountry') { $userinfo['value'] = maybe_unserialize($userinfo['value']); if (is_array($userinfo['value'])) { if (!empty($userinfo['value'][1]) && !is_numeric($userinfo['value'][1])) { $report_user .= "State: " . $userinfo['value'][1] . "\n"; } elseif (is_numeric($userinfo['value'][1])) { $report_user .= "State: " . wpsc_get_state_by_id($userinfo['value'][1], 'name') . "\n"; } if (!empty($userinfo['value'][0])) { $report_user .= "Country: " . $userinfo['value'][0] . "\n"; } } else { $report_user .= "" . $userinfo['name'] . ": " . $userinfo['value'] . "\n"; } } elseif ($userinfo['unique_name'] == 'shippingstate') { if (!empty($userinfo['value']) && !is_numeric($userinfo['value'])) { $report_user .= "" . $userinfo['name'] . ": " . $userinfo['value'] . "\n"; } elseif (is_numeric($userinfo['value'])) { $report_user .= "State: " . wpsc_get_state_by_id($userinfo['value'], 'name') . "\n"; } } } $report_user .= "\n\r"; /* $form_sql = "SELECT * FROM `".WPSC_TABLE_SUBMITED_FORM_DATA."` WHERE `log_id` = '".$purchase_log['id']."'"; $form_data = $wpdb->get_results($form_sql,ARRAY_A); if($form_data != null) { foreach($form_data as $form_field) { $form_data = $wpdb->get_row("SELECT * FROM `".WPSC_TABLE_CHECKOUT_FORMS."` WHERE `id` = '".$form_field['form_id']."' LIMIT 1", ARRAY_A); switch($form_data['type']) { case "country": $report_user .= $form_data['name'].": ".wpsc_get_country($form_field['value'])."\n"; $report_user .= __('State', 'wpsc').": ".wpsc_get_region($purchase_log['billing_region'])."\n"; break; case "delivery_country": $report_user .= $form_data['name'].": ".wpsc_get_country($form_field['value'])."\n"; $report_user .= __('Delivery State', 'wpsc').": ".wpsc_get_region($purchase_log['shipping_region'])."\n"; break; default: $report_user .= wp_kses($form_data['name'], array()).": ".$form_field['value']."\n"; break; } } } $report_user .= "\n\r"; */ $report = $report_user . $report_id . $report; if ($stock_adjusted == true) { $wpdb->query("UPDATE `" . WPSC_TABLE_PURCHASE_LOGS . "` SET `stock_adjusted` = '1' WHERE `sessionid` = " . $sessionid . " LIMIT 1"); } if (get_option('purch_log_email') != null && $purchase_log['email_sent'] != 1) { wp_mail(get_option('purch_log_email'), __('Purchase Report', 'wpsc'), $report); } if ($purchase_log['processed'] < 2) { echo "<br />" . nl2br(str_replace("\$", '\\$', $message_html)); return; } /// Empty the cart $wpsc_cart->submit_stock_claims($purchase_log['id']); $wpsc_cart->empty_cart(); if (true === $echo_to_screen) { echo '<div class="wrap">'; if ($sessionid != null) { echo __('The Transaction was successful', 'wpsc') . "<br />"; echo "<br />" . nl2br(str_replace("\$", '\\$', $message_html)); } echo '</div>'; } } else { if (true === $echo_to_screen) { echo '<div class="wrap">'; echo __('Oops, there is nothing in your cart.', 'wpsc') . "<a href='" . get_option("product_list_url") . "'>" . __('Please visit our shop', 'wpsc') . "</a>"; echo '</div>'; } } if ($purchase_log['email_sent'] != 1 and $sessionid != '') { if (preg_match("/^[\\w\\s._,-]+\$/", $transaction_id)) { $transact_id_sql = "`transactid` = '" . $transaction_id . "',"; } $update_sql = "UPDATE `" . WPSC_TABLE_PURCHASE_LOGS . "` SET {$transact_id_sql} `email_sent` = '1', `processed` = '{$order_status}' WHERE `sessionid` = " . $sessionid . " LIMIT 1"; $wpdb->query($update_sql); } } }
function wpsc_display_coupons_page() { global $wpdb; if (isset($_POST) && is_array($_POST) && !empty($_POST)) { if (isset($_POST['add_coupon']) && $_POST['add_coupon'] == 'true' && !($_POST['is_edit_coupon'] == 'true')) { $coupon_code = $_POST['add_coupon_code']; $discount = (double) $_POST['add_discount']; // cast to boolean, then integer, prevents the value from being anything but 1 or 0 $discount_type = (int) $_POST['add_discount_type']; $use_once = (int) (bool) $_POST['add_use-once']; $every_product = (int) (bool) $_POST['add_every_product']; // $start_date = date("Y-m-d H:i:s", mktime(0, 0, 0, (int)$_POST['add_start']['month'], (int)$_POST['add_start']['day'], (int)$_POST['add_start']['year'])); // $end_date = date("Y-m-d H:i:s", mktime(0, 0, 0, (int)$_POST['add_end']['month'], (int)$_POST['add_end']['day'], (int)$_POST['add_end']['year'])); $start_date = date('Y-m-d', strtotime($_POST['add_start'])) . " 00:00:00"; $end_date = date('Y-m-d', strtotime($_POST['add_end'])) . " 00:00:00"; $rules = $_POST['rules']; foreach ($rules as $key => $rule) { foreach ($rule as $k => $r) { $new_rule[$k][$key] = $r; } } foreach ($new_rule as $key => $rule) { if ($rule['value'] == '') { unset($new_rule[$key]); } } if ($wpdb->query("INSERT INTO `" . WPSC_TABLE_COUPON_CODES . "` ( `coupon_code` , `value` , `is-percentage` , `use-once` , `is-used` , `active` , `every_product` , `start` , `expiry`, `condition` ) VALUES ( '{$coupon_code}', '{$discount}', '{$discount_type}', '{$use_once}', '0', '1', '{$every_product}', '{$start_date}' , '{$end_date}' , '" . serialize($new_rule) . "' );")) { echo "<div class='updated'><p align='center'>" . __('Thanks, the coupon has been added.', 'wpsc') . "</p></div>"; } } if (isset($_POST['is_edit_coupon']) && $_POST['is_edit_coupon'] == 'true' && !isset($_POST['delete_condition']) && !isset($_POST['submit_condition'])) { //exit('<pre>'.print_r($_POST, true).'</pre>'); foreach ((array) $_POST['edit_coupon'] as $coupon_id => $coupon_data) { //echo('<pre>'.print_r($coupon_data,true)."</pre>"); $coupon_id = (int) $coupon_id; // convert dates to a form that compares well and can be inserted into the database // $coupon_data['start'] = date("Y-m-d H:i:s", mktime(0, 0, 0, (int)$coupon_data['start']['month'], (int)$coupon_data['start']['day'], (int)$coupon_data['start']['year'])); // $coupon_data['expiry'] = date("Y-m-d H:i:s", mktime(0, 0, 0, (int)$coupon_data['expiry']['month'], (int)$coupon_data['expiry']['day'], (int)$coupon_data['expiry']['year'])); $coupon_data['start'] = $coupon_data['start'] . " 00:00:00"; $coupon_data['expiry'] = $coupon_data['expiry'] . " 00:00:00"; $check_values = $wpdb->get_row("SELECT `id`, `coupon_code`, `value`, `is-percentage`, `use-once`, `active`, `start`, `expiry` FROM `" . WPSC_TABLE_COUPON_CODES . "` WHERE `id` = '{$coupon_id}'", ARRAY_A); //sort both arrays to make sure that if they contain the same stuff, that they will compare to be the same, may not need to do this, but what the heck // exit('<pre>'.print_r($coupon_data, true).'</pre>'); ksort($check_values); ksort($coupon_data); if ($check_values != $coupon_data) { $insert_array = array(); foreach ($coupon_data as $coupon_key => $coupon_value) { if ($coupon_key == "submit_coupon" || $coupon_key == "delete_coupon") { continue; } if ($coupon_value != $check_values[$coupon_key]) { $insert_array[] = "`{$coupon_key}` = '{$coupon_value}'"; } } //if(in_array(mixed needle, array haystack [, bool strict])) //exit("<pre>".print_r($conditions,true)."</pre>"); if (count($insert_array) > 0) { $wpdb->query("UPDATE `" . WPSC_TABLE_COUPON_CODES . "` SET " . implode(", ", $insert_array) . " WHERE `id` = '{$coupon_id}' LIMIT 1;"); } unset($insert_array); $rules = $_POST['rules']; foreach ((array) $rules as $key => $rule) { foreach ($rule as $k => $r) { $new_rule[$k][$key] = $r; } } foreach ((array) $new_rule as $key => $rule) { if ($rule['value'] == '') { unset($new_rule[$key]); } } /* $sql ="UPDATE `".WPSC_TABLE_COUPON_CODES."` SET `condition`='".serialize($new_rule)."' WHERE `id` = '$coupon_id' LIMIT 1"; $wpdb->query($sql); */ $conditions = $wpdb->get_var("SELECT `condition` FROM `" . WPSC_TABLE_COUPON_CODES . "` WHERE `id` = '" . (int) $_POST['coupon_id'] . "' LIMIT 1"); $conditions = unserialize($conditions); $new_cond = array(); if ($_POST['rules']['value'][0] != '') { $new_cond['property'] = $_POST['rules']['property'][0]; $new_cond['logic'] = $_POST['rules']['logic'][0]; $new_cond['value'] = $_POST['rules']['value'][0]; $conditions[] = $new_cond; } $sql = "UPDATE `" . WPSC_TABLE_COUPON_CODES . "` SET `condition`='" . serialize($conditions) . "' WHERE `id` = '" . (int) $_POST['coupon_id'] . "' LIMIT 1"; $wpdb->query($sql); } if ($coupon_data['delete_coupon'] != '') { $wpdb->query("DELETE FROM `" . WPSC_TABLE_COUPON_CODES . "` WHERE `id` = '{$coupon_id}' LIMIT 1;"); } } } if (isset($_POST['delete_condition'])) { $conditions = $wpdb->get_var("SELECT `condition` FROM `" . WPSC_TABLE_COUPON_CODES . "` WHERE `id` = '" . (int) $_POST['coupon_id'] . "' LIMIT 1"); $conditions = unserialize($conditions); unset($conditions[(int) $_POST['delete_condition']]); //$conditions = array_values($conditions); // exit('<pre>'.print_r($_POST, true).'</pre><pre>'.print_r($conditions, true).'</pre>'.$sql); $sql = "UPDATE `" . WPSC_TABLE_COUPON_CODES . "` SET `condition`='" . serialize($conditions) . "' WHERE `id` = '" . (int) $_POST['coupon_id'] . "' LIMIT 1"; $wpdb->query($sql); } if (isset($_POST['submit_condition'])) { $conditions = $wpdb->get_var("SELECT `condition` FROM `" . WPSC_TABLE_COUPON_CODES . "` WHERE `id` = '" . (int) $_POST['coupon_id'] . "' LIMIT 1"); $conditions = unserialize($conditions); $new_cond = array(); $new_cond['property'] = $_POST['rules']['property'][0]; $new_cond['logic'] = $_POST['rules']['logic'][0]; $new_cond['value'] = $_POST['rules']['value'][0]; $conditions[] = $new_cond; $sql = "UPDATE `" . WPSC_TABLE_COUPON_CODES . "` SET `condition`='" . serialize($conditions) . "' WHERE `id` = '" . (int) $_POST['coupon_id'] . "' LIMIT 1"; $wpdb->query($sql); } if ($_POST['change-settings'] == 'true') { if ($_POST['wpsc_also_bought'] == 1) { update_option('wpsc_also_bought', 1); } else { update_option('wpsc_also_bought', 0); } if ($_POST['display_find_us'] == 'on') { update_option('display_find_us', 1); } else { update_option('display_find_us', 0); } if ($_POST['wpsc_share_this'] == 1) { update_option('wpsc_share_this', 1); } else { update_option('wpsc_share_this', 0); } } } /*<strong><?php echo TXT_WPSC_ADD_COUPON; ?></strong>*/ ?> <script type='text/javascript'> jQuery(".pickdate").datepicker(); /* jQuery datepicker selector */ if (typeof jQuery('.pickdate').datepicker != "undefined") { jQuery('.pickdate').datepicker({ dateFormat: 'yy-mm-dd' }); } </script> <div class="wrap"> <h2><?php echo __('Coupons', 'wpsc'); ?> </h2> <div style='margin:0px;' class="tablenav wpsc_admin_nav"> <!-- <a target="_blank" href="http://www.instinct.co.nz/e-commerce/marketing/" class="about_this_page"><span>About This Page</span> </a> --> <form action='' method='post'> <input id='add_coupon_box_link' type='submit' class=' add_item_link button' name='add_coupon_button' value='<?php echo __('Create Coupon', 'wpsc'); ?> ' onclick='return show_status_box("add_coupon_box","add_coupon_box_link");return false;' /> </form> </div> <!-- <form name='edit_coupon' method='post' action=''> --> <table style="width: 100%;"> <tr> <td id="coupon_data"> <div id='add_coupon_box' class='modify_coupon' > <form name='add_coupon' method='post' action=''> <table class='add-coupon' > <tr> <th> <?php echo __('Coupon Code', 'wpsc'); ?> </th> <th> <?php echo __('Discount', 'wpsc'); ?> </th> <th> <?php echo __('Start', 'wpsc'); ?> </th> <th> <?php echo __('Expiry', 'wpsc'); ?> </th> <th> <?php echo __('Use Once', 'wpsc'); ?> </th> <th> <?php echo __('Active', 'wpsc'); ?> </th> <!-- <th> <?php echo __('Apply On All Products', 'wpsc'); ?> </th> --> </tr> <tr> <td> <input type='text' value='' name='add_coupon_code' /> </td> <td> <input type='text' value='' size='3' name='add_discount' /> <select name='add_discount_type'> <option value='0' >$</option> <option value='1' >%</option> <option value='2' >Free shipping</option> </select> </td> <td> <input type='text' class='pickdate' size='11' name='add_start' /> <!--<select name='add_start[day]'> <?php for ($i = 1; $i <= 31; ++$i) { $selected = ''; if ($i == date("d")) { $selected = "selected='selected'"; } echo "<option {$selected} value='{$i}'>{$i}</option>"; } ?> </select> <select name='add_start[month]'> <?php for ($i = 1; $i <= 12; ++$i) { $selected = ''; if ($i == (int) date("m")) { $selected = "selected='selected'"; } echo "<option {$selected} value='{$i}'>" . date("M", mktime(0, 0, 0, $i, 1, date("Y"))) . "</option>"; } ?> </select> <select name='add_start[year]'> <?php for ($i = date("Y"); $i <= date("Y") + 12; ++$i) { $selected = ''; if ($i == date("Y")) { $selected = "selected='true'"; } echo "<option {$selected} value='{$i}'>" . $i . "</option>"; } ?> </select>--> </td> <td> <input type='text' class='pickdate' size='11' name='add_end'> <!--<select name='add_end[day]'> <?php for ($i = 1; $i <= 31; ++$i) { $selected = ''; if ($i == date("d")) { $selected = "selected='true'"; } echo "<option {$selected} value='{$i}'>{$i}</option>"; } ?> </select> <select name='add_end[month]'> <?php for ($i = 1; $i <= 12; ++$i) { $selected = ''; if ($i == (int) date("m")) { $selected = "selected='true'"; } echo "<option {$selected} value='{$i}'>" . date("M", mktime(0, 0, 0, $i, 1, date("Y"))) . "</option>"; } ?> </select> <select name='add_end[year]'> <?php for ($i = date("Y"); $i <= date("Y") + 12; ++$i) { $selected = ''; if ($i == date("Y") + 1) { $selected = "selected='true'"; } echo "<option {$selected} value='{$i}'>" . $i . "</option>"; } ?> </select>--> </td> <td> <input type='hidden' value='0' name='add_use-once' /> <input type='checkbox' value='1' name='add_use-once' /> </td> <td> <input type='hidden' value='0' name='add_active' /> <input type='checkbox' value='1' checked='checked' name='add_active' /> </td> <td> <input type='hidden' value='true' name='add_coupon' /> <input type='submit' value='Add Coupon' name='submit_coupon' class='button-primary' /> </td> </tr> <tr><td colspan="2"> <input type='hidden' value='0' name='add_every_product' /> <input type="checkbox" value="1" name='add_every_product'/> <?php _e('Apply On All Products', 'wpsc'); ?> </td></tr> <tr><td colspan='3'><span id='table_header'>Conditions</span></td></tr> <tr><td colspan="8"> <div class='coupon_condition' > <div class='first_condition'> <select class="ruleprops" name="rules[property][]"> <option value="item_name" rel="order">Item name</option> <option value="item_quantity" rel="order">Item quantity</option> <option value="total_quantity" rel="order">Total quantity</option> <option value="subtotal_amount" rel="order">Subtotal amount</option> <?php echo apply_filters('wpsc_coupon_rule_property_options', ''); ?> </select> <select name="rules[logic][]"> <option value="equal">Is equal to</option> <option value="greater">Is greater than</option> <option value="less">Is less than</option> <option value="contains">Contains</option> <option value="not_contain">Does not contain</option> <option value="begins">Begins with</option> <option value="ends">Ends with</option> </select> <span> <input type="text" name="rules[value][]"/> </span> <span> <script> var coupon_number=1; function add_another_property(this_button){ var new_property='<div class="coupon_condition">\n'+ '<div><img height="16" width="16" class="delete" alt="Delete" src="<?php echo WPSC_URL; ?> /images/cross.png" onclick="jQuery(this).parent().remove();"/> \n'+ '<select class="ruleprops" name="rules[property][]"> \n'+ '<option value="item_name" rel="order">Item name</option> \n'+ '<option value="item_quantity" rel="order">Item quantity</option>\n'+ '<option value="total_quantity" rel="order">Total quantity</option>\n'+ '<option value="subtotal_amount" rel="order">Subtotal amount</option>\n'+ '<?php echo apply_filters('wpsc_coupon_rule_property_options', ''); ?> '+ '</select> \n'+ '<select name="rules[logic][]"> \n'+ '<option value="equal">Is equal to</option> \n'+ '<option value="greater">Is greater than</option> \n'+ '<option value="less">Is less than</option> \n'+ '<option value="contains">Contains</option> \n'+ '<option value="not_contain">Does not contain</option> \n'+ '<option value="begins">Begins with</option> \n'+ '<option value="ends">Ends with</option> \n'+ '</select> \n'+ '<span> \n'+ '<input type="text" name="rules[value][]"/> \n'+ '</span> \n'+ '</div> \n'+ '</div> '; jQuery('.coupon_condition :first').after(new_property); coupon_number++; } </script> </span> </div> </div> </tr> <tr><td> <a class="wpsc_coupons_condition_add" onclick="add_another_property(jQuery(this));"> <?php _e('Add New Condition', 'wpsc'); ?> </a></td></tr> </table> <br /> </form> </div> <?php $num = 0; echo "<table class='coupon-list'>\n\r"; echo " <tr class='toprow'>\n\r"; echo " <th>\n\r"; echo __('Coupon Code', 'wpsc'); echo " </th>\n\r"; echo " <th>\n\r"; echo __('Discount', 'wpsc'); echo " </th>\n\r"; echo " <th>\n\r"; echo __('Start', 'wpsc'); echo " </th>\n\r"; echo " <th>\n\r"; echo __('Expiry', 'wpsc'); echo " </th>\n\r"; echo " <th>\n\r"; echo __('Active', 'wpsc'); echo " </th>\n\r"; echo " <th>\n\r"; echo __('Apply On All Products', 'wpsc'); echo " </th>\n\r"; echo " <th>\n\r"; echo __('Edit', 'wpsc'); echo " </th>\n\r"; $i = 0; $coupon_data = $wpdb->get_results("SELECT * FROM `" . WPSC_TABLE_COUPON_CODES . "` ", ARRAY_A); //exit('Coupon Data<pre>'.print_r($coupon_data, true).'</pre>'); foreach ((array) $coupon_data as $coupon) { $alternate = ""; $i++; if ($i % 2 != 0) { $alternate = "class='alt'"; } echo "<tr {$alternate}>\n\r"; echo " <td>\n\r"; echo $coupon['coupon_code']; echo " </td>\n\r"; echo " <td>\n\r"; if ($coupon['is-percentage'] == 1) { echo $coupon['value'] . "%"; } else { echo nzshpcrt_currency_display($coupon['value'], 1); } echo " </td>\n\r"; echo " <td>\n\r"; echo date("d/m/Y", strtotime($coupon['start'])); echo " </td>\n\r"; echo " <td>\n\r"; echo date("d/m/Y", strtotime($coupon['expiry'])); echo " </td>\n\r"; echo " <td>\n\r"; switch ($coupon['active']) { case 1: echo "<img src='" . WPSC_URL . "/images/yes_stock.gif' alt='' title='' />"; break; case 0: default: echo "<img src='" . WPSC_URL . "/images/no_stock.gif' alt='' title='' />"; break; } echo " </td>\n\r"; echo " <td>\n\r"; switch ($coupon['every_product']) { case 1: echo "<img src='" . WPSC_URL . "/images/yes_stock.gif' alt='' title='' />"; break; case 0: default: echo "<img src='" . WPSC_URL . "/images/no_stock.gif' alt='' title='' />"; break; } echo " </td>\n\r"; echo " <td>\n\r"; echo "<a title='" . $coupon['coupon_code'] . "' href='javascript:void(0)' class='wpsc_edit_coupon' >" . __('Edit', 'wpsc') . "</a>"; echo " </td>\n\r"; echo " </tr>\n\r"; echo " <tr>\n\r"; echo " <td colspan='7' style='padding-left:0px;'>\n\r"; // $status_style = "style='display: block;'"; echo " <div id='coupon_box_" . $coupon['id'] . "' class='modify_coupon' >\n\r"; coupon_edit_form($coupon); echo " </div>\n\r"; echo " </td>\n\r"; echo " </tr>\n\r"; } echo "</table>\n\r"; ?> <p style='margin: 0px 0px 5px 0px;'> <?php _e('<strong>Note:</strong> Due to a current limitation of PayPal, if your user makes a purchase and uses a coupon, we can not send a list of items through to paypal for processing. Rather, we must send the total amount of the purchase, so that within PayPal the user who purchases a product will see your shop name and the total amount of their purchase.', 'wpsc'); ?> </p> </td> </tr> </table> <!-- <input type='hidden' value='true' name='is_edit_coupon' /> --> <!-- </form> --> <br /> <h2><?php echo __('Marketing Settings', 'wpsc'); ?> </h2> <form name='cart_options' method='POST' action=''> <input type='hidden' value='true' name='change-settings' /> <table> <tr> <td> <?php echo __('Display Cross Sales', 'wpsc'); ?> : </td> <td> <?php $wpsc_also_bought = get_option('wpsc_also_bought'); $wpsc_also_bought1 = ""; $wpsc_also_bought2 = ""; switch ($wpsc_also_bought) { case 0: $wpsc_also_bought2 = "checked ='true'"; break; case 1: $wpsc_also_bought1 = "checked ='true'"; break; } ?> <input type='radio' value='1' name='wpsc_also_bought' id='wpsc_also_bought1' <?php echo $wpsc_also_bought1; ?> /> <label for='wpsc_also_bought1'><?php echo __('Yes', 'wpsc'); ?> </label> <input type='radio' value='0' name='wpsc_also_bought' id='wpsc_also_bought2' <?php echo $wpsc_also_bought2; ?> /> <label for='wpsc_also_bought2'><?php echo __('No', 'wpsc'); ?> </label> </td> </tr> <tr> <td> <?php echo __('Show Share This (Social Bookmarks)', 'wpsc'); ?> : </td> <td> <?php $wpsc_share_this = get_option('wpsc_share_this'); $wpsc_share_this1 = ""; $wpsc_share_this2 = ""; switch ($wpsc_share_this) { case 0: $wpsc_share_this2 = "checked ='true'"; break; case 1: $wpsc_share_this1 = "checked ='true'"; break; } ?> <input type='radio' value='1' name='wpsc_share_this' id='wpsc_share_this1' <?php echo $wpsc_share_this1; ?> /> <label for='wpsc_share_this1'><?php echo __('Yes', 'wpsc'); ?> </label> <input type='radio' value='0' name='wpsc_share_this' id='wpsc_share_this2' <?php echo $wpsc_share_this2; ?> /> <label for='wpsc_share_this2'><?php echo __('No', 'wpsc'); ?> </label> </td> </tr> <tr> <td> <?php echo __('Display How Customer Found Us Survey', 'wpsc'); ?> </td> <?php $display_find_us = get_option('display_find_us'); if ($display_find_us == '1') { $display_find_us1 = "checked ='checked'"; } ?> <td> <input <?php echo $display_find_us1; ?> type='checkbox' name='display_find_us'> </td> </tr> <tr> <td> </td> <td> <input type='submit' value='<?php echo __('Submit', 'wpsc'); ?> ' name='form_submit' /> </td> </tr> </table> </form> <h2><?php echo __('RSS Address', 'wpsc'); ?> </h2> <table> <tr> <td colspan='2'> <?php echo __('<strong>Note:</strong> Not only can people use this RSS to keep update with your product list but you can also use this link to promote your products in your facebook profile. <br />Just add the <a href="http://apps.facebook.com/getshopped">getshopped! facebook application</a> to your facebook profile and follow the instructions.', 'wpsc'); ?> </td> </tr> <tr><td> </td></tr> <tr> <td> RSS Feed Address: </td> <td> <?php echo get_bloginfo('url') . "/index.php?rss=true&action=product_list"; ?> </td> </tr> </table> <h2><?php echo __('Google Merchant Centre / Google Product Search', 'wpsc'); ?> </h2> <p>To import your products into <a href="http://www.google.com/merchants/" target="_blank">Google Merchant Centre</a> so that they appear within Google Product Search results, sign up for a Google Merchant Centre account and add a scheduled data feed with the following URL:</p> <?php $google_feed_url = get_bloginfo('url') . "/index.php?rss=true&action=product_list&xmlformat=google"; ?> <a href="<?php echo htmlentities($google_feed_url); ?> "><?php echo htmlentities($google_feed_url); ?> </a> </div> <?php }
function transaction_results($sessionid, $echo_to_screen = true, $transaction_id = null) { global $wpdb, $wpsc_cart; //$curgateway = get_option('payment_gateway'); $curgateway = $wpdb->get_var("SELECT gateway FROM " . WPSC_TABLE_PURCHASE_LOGS . " WHERE sessionid='{$sessionid}'"); $errorcode = 0; $order_status = 2; $siteurl = get_option('siteurl'); /* * {Notes} Double check that $Echo_To_Screen is a boolean value */ $echo_to_screen = !is_bool($echo_to_screen) ? true : $echo_to_screen; //exit('triggered but with errors?'.$echo_to_screen); if (is_numeric($sessionid)) { if ($echo_to_screen) { echo apply_filters('wpsc_pre_transaction_results', ''); } $purchase_log = $wpdb->get_row("SELECT * FROM `" . WPSC_TABLE_PURCHASE_LOGS . "` WHERE `sessionid`= " . $sessionid . " LIMIT 1", ARRAY_A); if ($purchase_log['gateway'] == "testmode" && $purchase_log['processed'] < 2) { $message = get_option('wpsc_email_receipt'); $message_html = $message; } else { $message = get_option('wpsc_email_receipt'); $message_html = $message; } $order_url = $siteurl . "/wp-admin/admin.php?page=" . WPSC_DIR_NAME . "/display-log.php&purchcaseid=" . $purchase_log['id']; if ($_GET['ipn_request'] != 'true' and get_option('paypal_ipn') == 1) { if ($purchase_log == null) { echo TXT_WPSC_ORDER_FAILED; if (get_option('purch_log_email') != null && $purchase_log['email_sent'] != 1) { wp_mail(get_option('purch_log_email'), TXT_WPSC_NEW_ORDER_PENDING_SUBJECT, TXT_WPSC_NEW_ORDER_PENDING_BODY . $order_url, "From: " . get_option('return_email') . ""); } return false; } else { if ($purchase_log['processed'] < 2) { //added by Thomas on 20/6/2007 echo TXT_WPSC_ORDER_PENDING . "<p style='margin: 1em 0px 0px 0px;' >" . nl2br(get_option('payment_instructions')) . "</p>"; /*if($purchase_log['gateway'] != 'testmode') { if((get_option('purch_log_email') != null) && ($purchase_log['email_sent'] != 1)) { mail(get_option('purch_log_email'), TXT_WPSC_NEW_ORDER_PENDING_SUBJECT, TXT_WPSC_NEW_ORDER_PENDING_BODY.$order_url, "From: ".get_option('return_email').""); } return false; }*/ } } } $cart = $wpdb->get_results("SELECT * FROM `" . WPSC_TABLE_CART_CONTENTS . "` WHERE `purchaseid`='{$purchase_log['id']}'", ARRAY_A); if ($purchase_log['shipping_country'] != '') { $billing_country = $purchase_log['billing_country']; $shipping_country = $purchase_log['shipping_country']; } else { $country = $wpdb->get_var("SELECT `value` FROM `" . WPSC_TABLE_SUBMITED_FORM_DATA . "` WHERE `log_id`=" . $purchase_log['id'] . " AND `form_id` = '" . get_option('country_form_field') . "' LIMIT 1"); $billing_country = $country; $shipping_country = $country; } $email_form_field = $wpdb->get_results("SELECT `id`,`type` FROM `" . WPSC_TABLE_CHECKOUT_FORMS . "` WHERE `type` IN ('email') AND `active` = '1' ORDER BY `order` ASC LIMIT 1", ARRAY_A); $email = $wpdb->get_var("SELECT `value` FROM `" . WPSC_TABLE_SUBMITED_FORM_DATA . "` WHERE `log_id`=" . $purchase_log['id'] . " AND `form_id` = '" . $email_form_field[0]['id'] . "' LIMIT 1"); $stock_adjusted = false; $previous_download_ids = array(0); $product_list = ''; if ($cart != null && $errorcode == 0) { foreach ($cart as $row) { $link = ""; $product_data = $wpdb->get_row("SELECT * FROM `" . WPSC_TABLE_PRODUCT_LIST . "` WHERE `id`='{$row['prodid']}' LIMIT 1", ARRAY_A); if ($purchase_log['email_sent'] != 1) { $wpdb->query("UPDATE `" . WPSC_TABLE_DOWNLOAD_STATUS . "` SET `active`='1' WHERE (`fileid` = '{$product_data['file']}' OR `cartid` = '{$row['id']}' ) AND `purchid` = '{$purchase_log['id']}'"); } do_action('wpsc_transaction_result_cart_item', array("purchase_id" => $purchase_log['id'], "cart_item" => $row, "purchase_log" => $purchase_log)); if ($purchase_log['processed'] >= 2) { //echo "SELECT * FROM `".WPSC_TABLE_DOWNLOAD_STATUS."` WHERE `active`='1' AND `purchid`='".$purchase_log['id']."' AND (`cartid` = '".$row['id']."' OR (`cartid` IS NULL AND `fileid` = '{$product_data['file']}') ) AND `id` NOT IN ('".implode("','",$previous_download_ids)."') LIMIT 1"; $download_data = $wpdb->get_row("SELECT * FROM `" . WPSC_TABLE_DOWNLOAD_STATUS . "` WHERE `active`='1' AND `purchid`='" . $purchase_log['id'] . "' AND (`cartid` = '" . $row['id'] . "' OR (`cartid` IS NULL AND `fileid` = '{$product_data['file']}') ) AND `id` NOT IN ('" . implode("','", $previous_download_ids) . "') LIMIT 1", ARRAY_A); //exit('IM HERE'.$errorcode.'<pre>'.print_r($download_data).'</pre>'); if ($download_data != null) { if ($download_data['uniqueid'] == null) { // if the uniqueid is not equal to null, its "valid", regardless of what it is $link = $siteurl . "?downloadid=" . $download_data['id']; } else { $link = $siteurl . "?downloadid=" . $download_data['uniqueid']; } //$order_status= 4; } else { $order_status = $purchase_log['processed']; } $previous_download_ids[] = $download_data['id']; } do_action('wpsc_confirm_checkout', $purchase_log['id']); $shipping = $row['pnp'] * $row['quantity']; $total_shipping += $shipping; if ($product_data['special'] == 1) { $price_modifier = $product_data['special_price']; } else { $price_modifier = 0; } $total += $row['price'] * $row['quantity']; $message_price = nzshpcrt_currency_display($row['price'] * $row['quantity'], $product_data['notax'], true); $shipping_price = nzshpcrt_currency_display($shipping, 1, true); $variation_values = $wpdb->get_col("SELECT `value_id` FROM `" . WPSC_TABLE_CART_ITEM_VARIATIONS . "` WHERE `cart_id`='{$row['id']}'"); //echo "<pre>".print_r($product_data,true)."</pre>"; $variation_count = count($variation_values); if ($purchase['gateway'] != 'testmode') { if ($gateway['internalname'] == $purch_data[0]['gateway']) { $gateway_name = $gateway['name']; } } else { $gateway_name = "Manual Payment"; } //echo "<pre>".print_r($variation_values,true)."</pre>"; $variation_list = ''; if ($variation_count > 0) { $value_names = $wpdb->get_col("SELECT `name` FROM `" . WPSC_TABLE_VARIATION_VALUES . "` WHERE `id` IN ('" . implode("','", $variation_values) . "')"); $variation_list = " (" . stripslashes(implode(", ", $value_names)) . ")"; } if ($link != '') { $additional_content = apply_filters('wpsc_transaction_result_content', array("purchase_id" => $purchase_log['id'], "cart_item" => $row, "purchase_log" => $purchase_log)); if (!is_string($additional_content)) { $additional_content = ''; } $product_list .= " - " . $product_data['name'] . stripslashes($variation_list) . " " . $message_price . " " . TXT_WPSC_CLICKTODOWNLOAD . ":\n\r {$link}\n\r" . $additional_content; $product_list_html .= " - " . $product_data['name'] . stripslashes($variation_list) . " " . $message_price . " <a href='{$link}'>" . TXT_WPSC_CLICKTODOWNLOAD . "</a>\n" . $additional_content; } else { $plural = ''; if ($row['quantity'] > 1) { $plural = "s"; } $product_list .= " - " . $row['quantity'] . " " . $product_data['name'] . stripslashes($variation_list) . " " . $message_price . "\n\r"; if ($shipping > 0) { $product_list .= " - " . TXT_WPSC_SHIPPING . ":" . $shipping_price . "\n\r"; } $product_list_html .= " - " . $row['quantity'] . " " . $product_data['name'] . stripslashes($variation_list) . " " . $message_price . "\n\r"; if ($shipping > 0) { $product_list_html .= " " . TXT_WPSC_SHIPPING . ":" . $shipping_price . "\n\r"; } } $report = get_option('wpsc_email_admin'); $report_product_list .= " - " . $product_data['name'] . stripslashes($variation_list) . " " . $message_price . "\n\r"; } // KTTODO - call out to ezprints here if ($purchase_log['processed'] >= 2 && $purchase_log['ezprints_order_sent_count'] < 1) { $ezprints_body = sendEzPrintsOrder($purchase_log['id']); $wpdb->query("UPDATE `" . WPSC_TABLE_PURCHASE_LOGS . "` SET `ezprints_order_sent_count` = 1 WHERE `id` = " . $purchase_log['id'] . " LIMIT 1"); } // Decrement the stock here if ($purchase_log['processed'] >= 2) { wpsc_decrement_claimed_stock($purchase_log['id']); } if ($purchase_log['discount_data'] != '') { $coupon_data = $wpdb->get_row("SELECT * FROM `" . WPSC_TABLE_COUPON_CODES . "` WHERE coupon_code='" . $wpdb->escape($purchase_log['discount_data']) . "' LIMIT 1", ARRAY_A); if ($coupon_data['use-once'] == 1) { $wpdb->query("UPDATE `" . WPSC_TABLE_COUPON_CODES . "` SET `active`='0', `is-used`='1' WHERE `id`='" . $coupon_data['id'] . "' LIMIT 1"); } } //$wpdb->query("UPDATE `".WPSC_TABLE_DOWNLOAD_STATUS."` SET `active`='1' WHERE `fileid`='".$product_data['file']."' AND `purchid` = '".$purchase_log['id']."' LIMIT 1"); //if (!isset($_SESSION['quote_shipping'])) //$total_shipping = nzshpcrt_determine_base_shipping($total_shipping, $shipping_country); $total_shipping += $purchase_log['base_shipping']; $total = $purchase_log['totalprice']; // echo $total; // $message.= "\n\r"; $product_list .= "Your Purchase No.: " . $purchase_log['id'] . "\n\r"; if ($purchase_log['discount_value'] > 0) { $discount_email .= TXT_WPSC_DISCOUNT . "\n\r: "; $discount_email .= $purchase_log['discount_data'] . ' : ' . nzshpcrt_currency_display($purchase_log['discount_value'], 1, true) . "\n\r"; } $total_shipping_email .= TXT_WPSC_TOTALSHIPPING . ": " . nzshpcrt_currency_display($total_shipping, 1, true) . "\n\r"; $total_price_email .= TXT_WPSC_TOTAL . ": " . nzshpcrt_currency_display($total, 1, true) . "\n\r"; $product_list_html .= "Your Purchase No.: " . $purchase_log['id'] . "\n\n\r"; if ($purchase_log['discount_value'] > 0) { $report .= $discount_email . "\n\r"; $total_shipping_html .= TXT_WPSC_DISCOUNT . ": " . nzshpcrt_currency_display($purchase_log['discount_value'], 1, true) . "\n\r"; } $total_shipping_html .= TXT_WPSC_TOTALSHIPPING . ": " . nzshpcrt_currency_display($total_shipping, 1, true) . "\n\r"; $total_price_html .= TXT_WPSC_TOTAL . ": " . nzshpcrt_currency_display($total, 1, true) . "\n\r"; if (isset($_GET['ti'])) { $message .= "\n\r" . TXT_WPSC_YOURTRANSACTIONID . ": " . $_GET['ti']; $message_html .= "\n\r" . TXT_WPSC_YOURTRANSACTIONID . ": " . $_GET['ti']; $report .= "\n\r" . TXT_WPSC_TRANSACTIONID . ": " . $_GET['ti']; } else { $report_id = "Purchase No.: " . $purchase_log['id'] . "\n\r"; } //echo "<pre>".print_r($purchase_log,true)."</pre>"; $message = str_replace('%product_list%', $product_list, $message); $message = str_replace('%total_shipping%', $total_shipping_email, $message); $message = str_replace('%total_price%', $total_price_email, $message); //$message = str_replace('%order_status%',get_option('blogname'),$message); $message = str_replace('%shop_name%', get_option('blogname'), $message); $report = str_replace('%product_list%', $report_product_list, $report); $report = str_replace('%total_shipping%', $total_shipping_email, $report); $report = str_replace('%total_price%', $total_price_email, $report); $report = str_replace('%shop_name%', get_option('blogname'), $report); $message_html = str_replace('%product_list%', $product_list_html, $message_html); $message_html = str_replace('%total_shipping%', $total_shipping_html, $message_html); $message_html = str_replace('%total_price%', $total_price_email, $message_html); $message_html = str_replace('%shop_name%', get_option('blogname'), $message_html); //$message_html = str_replace('%order_status%',get_option('blogname'),$message_html); if ($email != '' && $purchase_log['email_sent'] != 1) { add_filter('wp_mail_from', 'wpsc_replace_reply_address', 0); add_filter('wp_mail_from_name', 'wpsc_replace_reply_name', 0); if ($purchase_log['processed'] < 2) { $payment_instructions = strip_tags(get_option('payment_instructions')); $message = TXT_WPSC_ORDER_PENDING . "\n\r" . $payment_instructions . "\n\r" . $message; wp_mail($email, TXT_WPSC_ORDER_PENDING_PAYMENT_REQUIRED, $message); } else { wp_mail($email, TXT_WPSC_PURCHASERECEIPT, $message); } } remove_filter('wp_mail_from_name', 'wpsc_replace_reply_name'); remove_filter('wp_mail_from', 'wpsc_replace_reply_address'); $report_user = TXT_WPSC_CUSTOMERDETAILS . "\n\r"; $form_sql = "SELECT * FROM `" . WPSC_TABLE_SUBMITED_FORM_DATA . "` WHERE `log_id` = '" . $purchase_log['id'] . "'"; $form_data = $wpdb->get_results($form_sql, ARRAY_A); if ($form_data != null) { foreach ($form_data as $form_field) { $form_data = $wpdb->get_row("SELECT * FROM `" . WPSC_TABLE_CHECKOUT_FORMS . "` WHERE `id` = '" . $form_field['form_id'] . "' LIMIT 1", ARRAY_A); switch ($form_data['type']) { case "country": $delivery_region_count = $wpdb->get_var("SELECT COUNT(`regions`.`id`) FROM `" . WPSC_TABLE_REGION_TAX . "` AS `regions` INNER JOIN `" . WPSC_TABLE_CURRENCY_LIST . "` AS `country` ON `country`.`id` = `regions`.`country_id` WHERE `country`.`isocode` IN('" . $wpdb->escape($purchase_log['billing_country']) . "')"); if (is_numeric($purchase_log['shipping_region']) && $delivery_region_count > 0) { $report_user .= TXT_WPSC_STATE . ": " . wpsc_get_region($purchase_log['billing_region']) . "\n"; } $report_user .= $form_data['name'] . ": " . wpsc_get_country($form_field['value']) . "\n"; break; case "delivery_country": $delivery_region_count = $wpdb->get_var("SELECT COUNT(`regions`.`id`) FROM `" . WPSC_TABLE_REGION_TAX . "` AS `regions` INNER JOIN `" . WPSC_TABLE_CURRENCY_LIST . "` AS `country` ON `country`.`id` = `regions`.`country_id` WHERE `country`.`isocode` IN('" . $wpdb->escape($purchase_log['shipping_country']) . "')"); if (is_numeric($purchase_log['shipping_region']) && $delivery_region_count > 0) { $report_user .= TXT_WPSC_DELIVERY_STATE . ": " . wpsc_get_region($purchase_log['shipping_region']) . "\n"; } $report_user .= $form_data['name'] . ": " . wpsc_get_country($form_field['value']) . "\n"; break; default: $report_user .= $form_data['name'] . ": " . $form_field['value'] . "\n"; break; } } } $report_user .= "\n\r"; $report = $report_user . $report_id . $report; if ($stock_adjusted == true) { $wpdb->query("UPDATE `" . WPSC_TABLE_PURCHASE_LOGS . "` SET `stock_adjusted` = '1' WHERE `sessionid` = " . $sessionid . " LIMIT 1"); } if (get_option('purch_log_email') != null && $purchase_log['email_sent'] != 1) { wp_mail(get_option('purch_log_email'), TXT_WPSC_PURCHASEREPORT, $report); } if ($purchase_log['processed'] < 2) { echo "<br />" . nl2br(str_replace("\$", '\\$', $message_html)); return; } /// Empty the cart $wpsc_cart->submit_stock_claims($purchase_log['id']); $wpsc_cart->empty_cart(); if (true === $echo_to_screen) { echo '<div class="wrap">'; if ($sessionid != null) { echo TXT_WPSC_THETRANSACTIONWASSUCCESSFUL . "<br />"; echo "<br />" . nl2br(str_replace("\$", '\\$', $message_html)); } echo '</div>'; } } else { if (true === $echo_to_screen) { echo '<div class="wrap">'; echo TXT_WPSC_BUYPRODUCTS; echo '</div>'; } } if ($purchase_log['email_sent'] != 1 and $sessionid != '') { if (preg_match("/^[\\w\\s._,-]+\$/", $transaction_id)) { $transact_id_sql = "`transactid` = '" . $transaction_id . "',"; } $update_sql = "UPDATE `" . WPSC_TABLE_PURCHASE_LOGS . "` SET {$transact_id_sql} `email_sent` = '1', `processed` = '{$order_status}' WHERE `sessionid` = " . $sessionid . " LIMIT 1"; $wpdb->query($update_sql); } } }
function wpec_transaction_tracking($push) { global $wpdb, $purchlogs, $cart_log_id; if (!isset($cart_log_id) || empty($cart_log_id)) { return $push; } $city = $wpdb->get_var("SELECT tf.value\n\t\t FROM " . WPSC_TABLE_SUBMITED_FORM_DATA . " tf\n\t\t LEFT JOIN " . WPSC_TABLE_CHECKOUT_FORMS . " cf\n\t\t ON cf.id = tf.form_id\n\t\t WHERE cf.type = 'city'\n\t\t AND log_id = " . $cart_log_id); $country = $wpdb->get_var("SELECT tf.value\n\t\t FROM " . WPSC_TABLE_SUBMITED_FORM_DATA . " tf\n\t\t LEFT JOIN " . WPSC_TABLE_CHECKOUT_FORMS . " cf\n\t\t ON cf.id = tf.form_id\n\t\t WHERE cf.type = 'country'\n\t\t AND log_id = " . $cart_log_id); $cart_items = $wpdb->get_results("SELECT * FROM " . WPSC_TABLE_CART_CONTENTS . " WHERE purchaseid = " . $cart_log_id, ARRAY_A); $total_shipping = $purchlogs->allpurchaselogs[0]->base_shipping; $total_tax = 0; foreach ($cart_items as $item) { $total_shipping += $item['pnp']; $total_tax += $item['tax_charged']; } $push[] = "'_addTrans','" . $cart_log_id . "'," . "'" . GA_Filter::ga_str_clean(get_bloginfo('name')) . "'," . "'" . nzshpcrt_currency_display($purchlogs->allpurchaselogs[0]->totalprice, 1, true, false, true) . "'," . "'" . nzshpcrt_currency_display($total_tax, 1, true, false, true) . "'," . "'" . nzshpcrt_currency_display($total_shipping, 1, true, false, true) . "'," . "'" . $city . "'," . "''," . "'" . $country . "'"; // Country foreach ($cart_items as $item) { $item['sku'] = $wpdb->get_var("SELECT meta_value FROM " . WPSC_TABLE_PRODUCTMETA . " WHERE meta_key = 'sku' AND product_id = '" . $item['prodid'] . "' LIMIT 1"); $item['category'] = $wpdb->get_var("SELECT pc.name FROM " . WPSC_TABLE_PRODUCT_CATEGORIES . " pc LEFT JOIN " . WPSC_TABLE_ITEM_CATEGORY_ASSOC . " ca ON pc.id = ca.category_id WHERE pc.group_id = '1' AND ca.product_id = '" . $item['prodid'] . "'"); $push[] = "'_addItem'," . "'" . $cart_log_id . "'," . "'" . $item['sku'] . "'," . "'" . str_replace("'", "", $item['name']) . "'," . "'" . $item['category'] . "'," . "'" . $item['price'] . "'," . "'" . $item['quantity'] . "'"; // Item Quantity } $push[] = "'_trackTrans'"; return $push; }
/** * Purchase log ajax code starts here */ function wpsc_purchlog_resend_email() { global $wpdb; $siteurl = get_option('siteurl'); $log_id = $_GET['email_buyer_id']; if (is_numeric($log_id)) { $selectsql = "SELECT * FROM `" . WPSC_TABLE_PURCHASE_LOGS . "` WHERE `id`= " . $log_id . " LIMIT 1"; $purchase_log = $wpdb->get_row($selectsql, ARRAY_A); if ($purchase_log['gateway'] == "testmode" && $purchase_log['processed'] < 2) { $message = get_option("wpsc_email_receipt"); $message_html = "<h2 style='font-size:16px;font-weight:bold;color:#000;border:0px;padding-top: 0px;' >" . __('Your Order', 'wpsc') . "</h2>"; } else { $message = get_option("wpsc_email_receipt"); $message_html = $message; } $order_url = $siteurl . "/wp-admin/admin.php?page=" . WPSC_DIR_NAME . "/display-log.php&purchcaseid=" . $purchase_log['id']; $cartsql = "SELECT * FROM `" . WPSC_TABLE_CART_CONTENTS . "` WHERE `purchaseid`=" . $purchase_log['id'] . ""; $cart = $wpdb->get_results($cartsql, ARRAY_A); if ($purchase_log['shipping_country'] != '') { $billing_country = $purchase_log['billing_country']; $shipping_country = $purchase_log['shipping_country']; } else { $country = $wpdb->get_results("SELECT * FROM `" . WPSC_TABLE_SUBMITED_FORM_DATA . "` WHERE `log_id`=" . $purchase_log['id'] . " AND `form_id` = '" . get_option('country_form_field') . "' LIMIT 1", ARRAY_A); $billing_country = $country[0]['value']; $shipping_country = $country[0]['value']; } $email_form_field = $wpdb->get_results("SELECT `id`,`type` FROM `" . WPSC_TABLE_CHECKOUT_FORMS . "` WHERE `type` IN ('email') AND `active` = '1' ORDER BY `order` ASC LIMIT 1", ARRAY_A); $email_address = $wpdb->get_results("SELECT * FROM `" . WPSC_TABLE_SUBMITED_FORM_DATA . "` WHERE `log_id`=" . $purchase_log['id'] . " AND `form_id` = '" . $email_form_field[0]['id'] . "' LIMIT 1", ARRAY_A); $email = $email_address[0]['value']; $previous_download_ids = array(0); if ($cart != null) { foreach ($cart as $row) { $link = ""; $productsql = "SELECT * FROM `" . WPSC_TABLE_PRODUCT_LIST . "` WHERE `id`=" . $row['prodid'] . ""; $product_data = $wpdb->get_results($productsql, ARRAY_A); if ($product_data[0]['file'] > 0) { if ($purchase_log['email_sent'] != 1) { $wpdb->query("UPDATE `" . WPSC_TABLE_DOWNLOAD_STATUS . "` SET `active`='1' WHERE `fileid`='" . $product_data[0]['file'] . "' AND `purchid` = '" . $purchase_log['id'] . "' LIMIT 1"); } if ($purchase_log['processed'] >= 2) { $download_data = $wpdb->get_results("SELECT *\r\n\t\t\t\t\t\tFROM `" . WPSC_TABLE_DOWNLOAD_STATUS . "` INNER JOIN `" . WPSC_TABLE_PRODUCT_FILES . "`\r\n\t\t\t\t\t\tON `" . WPSC_TABLE_DOWNLOAD_STATUS . "`.`fileid` = `" . WPSC_TABLE_PRODUCT_FILES . "`.`id`\r\n\t\t\t\t\t\tWHERE `" . WPSC_TABLE_DOWNLOAD_STATUS . "`.`active`='1'\r\n\t\t\t\t\t\tAND `" . WPSC_TABLE_DOWNLOAD_STATUS . "`.`purchid`='" . $purchase_log['id'] . "'\r\n\t\t\t\t\t\tAND (\r\n\t\t\t\t\t\t\t`" . WPSC_TABLE_DOWNLOAD_STATUS . "`.`cartid` = '" . $row['id'] . "'\r\n\t\t\t\t\t\t\tOR (\r\n\t\t\t\t\t\t\t\t`" . WPSC_TABLE_DOWNLOAD_STATUS . "`.`cartid` IS NULL\r\n\t\t\t\t\t\t\t\tAND `" . WPSC_TABLE_DOWNLOAD_STATUS . "`.`fileid` = '{$product_data['file']}'\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t)\r\n\t\t\t\t\t\t AND `" . WPSC_TABLE_DOWNLOAD_STATUS . "`.`id` NOT IN ('" . implode("','", $previous_download_ids) . "')", ARRAY_A); $link = array(); //exit('IM HERE'.$errorcode.'<pre>'.print_r($download_data).'</pre>'); if (sizeof($download_data) != 0) { foreach ($download_data as $single_download) { if ($single_download['uniqueid'] == null) { // if the uniqueid is not equal to null, its "valid", regardless of what it is $link[] = array("url" => $siteurl . "?downloadid=" . $single_download['id'], "name" => $single_download["filename"]); } else { $link[] = array("url" => $siteurl . "?downloadid=" . $single_download['uniqueid'], "name" => $single_download["filename"]); } } } $previous_download_ids[] = $download_data['id']; $order_status = 4; } } do_action('wpsc_confirm_checkout', $purchase_log['id']); $shipping = nzshpcrt_determine_item_shipping($row['prodid'], $row['quantity'], $shipping_country); if (isset($_SESSION['quote_shipping'])) { $shipping = $_SESSION['quote_shipping']; } $total_shipping += $shipping; if ($product_data[0]['special'] == 1) { $price_modifier = $product_data[0]['special_price']; } else { $price_modifier = 0; } $total += $row['price'] * $row['quantity']; $message_price = nzshpcrt_currency_display($row['price'] * $row['quantity'], $product_data[0]['notax'], true); $shipping_price = nzshpcrt_currency_display($shipping, 1, true); $variation_sql = "SELECT * FROM `" . WPSC_TABLE_CART_ITEM_VARIATIONS . "` WHERE `cart_id`='" . $row['id'] . "'"; $variation_data = $wpdb->get_results($variation_sql, ARRAY_A); $variation_count = count($variation_data); if ($variation_count > 1) { $variation_list = " ("; if ($purchase['gateway'] != 'testmode') { if ($gateway['internalname'] == $purch_data[0]['gateway']) { $gateway_name = $gateway['name']; } } else { $gateway_name = "Manual Payment"; } $i = 0; foreach ($variation_data as $variation) { if ($i > 0) { $variation_list .= ", "; } $value_id = $variation['value_id']; $value_data = $wpdb->get_results("SELECT * FROM `" . WPSC_TABLE_VARIATION_VALUES . "` WHERE `id`='" . $value_id . "' LIMIT 1", ARRAY_A); $variation_list .= $value_data[0]['name']; $i++; } $variation_list .= ")"; } else { if ($variation_count == 1) { $value_id = $variation_data[0]['value_id']; $value_data = $wpdb->get_results("SELECT * FROM `" . WPSC_TABLE_VARIATION_VALUES . "` WHERE `id`='" . $value_id . "' LIMIT 1", ARRAY_A); $variation_list = " (" . $value_data[0]['name'] . ")"; } else { $variation_list = ''; } } if ($link != '') { $product_list .= " - " . $product_data['name'] . stripslashes($variation_list) . " " . $message_price . " " . __('Click to download', 'wpsc') . ":"; $product_list_html .= " - " . $product_data['name'] . stripslashes($variation_list) . " " . $message_price . " " . __('Click to download', 'wpsc') . ":\n\r"; foreach ($link as $single_link) { $product_list .= "\n\r " . $single_link["name"] . ": " . $single_link["url"] . "\n\r"; $product_list_html .= "<a href='" . $single_link["url"] . "'>" . $single_link["name"] . "</a>\n"; } } else { $plural = ''; if ($row['quantity'] > 1) { $plural = "s"; } $product_list .= " - " . $row['quantity'] . " " . $product_data[0]['name'] . $variation_list . " " . $message_price . "\n"; if ($shipping > 0) { $product_list .= " - " . __('Shipping', 'wpsc') . ":" . $shipping_price . "\n\r"; } $product_list_html .= " - " . $row['quantity'] . " " . $product_data[0]['name'] . $variation_list . " " . $message_price . "\n"; if ($shipping > 0) { $product_list_html .= " - " . __('Shipping', 'wpsc') . ":" . $shipping_price . "\n\r"; } } $report .= " - " . $product_data[0]['name'] . $variation_list . " " . $message_price . "\n"; } if ($purchase_log['discount_data'] != '') { $coupon_data = $wpdb->get_row("SELECT * FROM `" . WPSC_TABLE_COUPON_CODES . "` WHERE coupon_code='" . $wpdb->escape($purchase_log['discount_data']) . "' LIMIT 1", ARRAY_A); if ($coupon_data['use-once'] == 1) { $wpdb->query("UPDATE `" . WPSC_TABLE_COUPON_CODES . "` SET `active`='0', `is-used`='1' WHERE `id`='" . $coupon_data['id'] . "' LIMIT 1"); } } //$wpdb->query("UPDATE `".WPSC_TABLE_DOWNLOAD_STATUS."` SET `active`='1' WHERE `fileid`='".$product_data[0]['file']."' AND `purchid` = '".$purchase_log['id']."' LIMIT 1"); $total_shipping += $purchase_log['base_shipping']; $total = $total + $total_shipping - $purchase_log['discount_value']; // $message.= "\n\r"; $product_list .= "Your Purchase No.: " . $purchase_log['id'] . "\n\r"; if ($purchase_log['discount_value'] > 0) { $discount_email .= __('Discount', 'wpsc') . ": " . nzshpcrt_currency_display($purchase_log['discount_value'], 1, true) . "\n\r"; } $total_shipping_email .= __('Total Shipping', 'wpsc') . ": " . nzshpcrt_currency_display($total_shipping, 1, true) . "\n\r"; $total_price_email .= __('Total', 'wpsc') . ": " . nzshpcrt_currency_display($total, 1, true) . "\n\r"; $product_list_html .= "Your Purchase No.: " . $purchase_log['id'] . "\n\n\r"; if ($purchase_log['discount_value'] > 0) { $discount_html .= __('Discount', 'wpsc') . ": " . nzshpcrt_currency_display($purchase_log['discount_value'], 1, true) . "\n\r"; } $total_shipping_html .= __('Total Shipping', 'wpsc') . ": " . nzshpcrt_currency_display($total_shipping, 1, true) . "\n\r"; $total_price_html .= __('Total', 'wpsc') . ": " . nzshpcrt_currency_display($total, 1, true) . "\n\r"; if (isset($_GET['ti'])) { $message .= "\n\r" . __('Your Transaction ID', 'wpsc') . ": " . $_GET['ti']; $message_html .= "\n\r" . __('Your Transaction ID', 'wpsc') . ": " . $_GET['ti']; $report .= "\n\r" . __('Transaction ID', 'wpsc') . ": " . $_GET['ti']; } else { $report_id = "Purchase No.: " . $purchase_log['id'] . "\n\r"; } $message = str_replace('%product_list%', $product_list, $message); $message = str_replace('%total_shipping%', $total_shipping_email, $message); $message = str_replace('%total_price%', $total_price_email, $message); //$message = str_replace('%order_status%',get_option('blogname'),$message); $message = str_replace('%shop_name%', get_option('blogname'), $message); $report = str_replace('%product_list%', $report_product_list, $report); $report = str_replace('%total_shipping%', $total_shipping_email, $report); $report = str_replace('%total_price%', $total_price_email, $report); $report = str_replace('%shop_name%', get_option('blogname'), $report); $message_html = str_replace('%product_list%', $product_list_html, $message_html); $message_html = str_replace('%total_shipping%', $total_shipping_html, $message_html); $message_html = str_replace('%total_price%', $total_price_email, $message_html); $message_html = str_replace('%shop_name%', get_option('blogname'), $message_html); // exit($message_html); if ($email != '') { add_filter('wp_mail_from', 'wpsc_replace_reply_address', 0); add_filter('wp_mail_from_name', 'wpsc_replace_reply_name', 0); if ($purchase_log['processed'] < 2) { $payment_instructions = strip_tags(get_option('payment_instructions')); $message = __('Thank you, your purchase is pending, you will be sent an email once the order clears.', 'wpsc') . "\n\r" . $payment_instructions . "\n\r" . $message; $resent = (bool) wp_mail($email, __('Order Pending: Payment Required', 'wpsc'), $message); $sent = 1; } else { $resent = (bool) wp_mail($email, __('Purchase Receipt', 'wpsc'), $message); $sent = 1; } //echo "$message<br />"; //exit($email); remove_filter('wp_mail_from_name', 'wpsc_replace_reply_name'); remove_filter('wp_mail_from', 'wpsc_replace_reply_address'); } } } $sendback = wp_get_referer(); if (isset($sent)) { $sendback = add_query_arg('sent', $sent, $sendback); } wp_redirect($sendback); exit; }
function wpsc_packing_slip($purchase_id) { global $wpdb; $purch_sql = "SELECT * FROM `" . WPSC_TABLE_PURCHASE_LOGS . "` WHERE `id`='" . $purchase_id . "'"; $purch_data = $wpdb->get_row($purch_sql, ARRAY_A); //echo "<p style='padding-left: 5px;'><strong>".TXT_WPSC_DATE."</strong>:".date("jS M Y", $purch_data['date'])."</p>"; $cartsql = "SELECT * FROM `" . WPSC_TABLE_CART_CONTENTS . "` WHERE `purchaseid`=" . $purchase_id . ""; $cart_log = $wpdb->get_results($cartsql, ARRAY_A); $j = 0; if ($cart_log != null) { echo "<div class='packing_slip'>\n\r"; echo "<h2>" . TXT_WPSC_PACKING_SLIP . "</h2>\n\r"; echo "<strong>" . TXT_WPSC_ORDER . " #</strong> " . $purchase_id . "<br /><br />\n\r"; echo "<table>\n\r"; $form_sql = "SELECT * FROM `" . WPSC_TABLE_SUBMITED_FORM_DATA . "` WHERE `log_id` = '" . (int) $purchase_id . "'"; $input_data = $wpdb->get_results($form_sql, ARRAY_A); foreach ($input_data as $input_row) { $rekeyed_input[$input_row['form_id']] = $input_row; } if ($input_data != null) { $form_data = $wpdb->get_results("SELECT * FROM `" . WPSC_TABLE_CHECKOUT_FORMS . "` WHERE `active` = '1'", ARRAY_A); foreach ($form_data as $form_field) { switch ($form_field['type']) { case 'country': $delivery_region_count = $wpdb->get_var("SELECT COUNT(`regions`.`id`) FROM `" . WPSC_TABLE_REGION_TAX . "` AS `regions` INNER JOIN `" . WPSC_TABLE_CURRENCY_LIST . "` AS `country` ON `country`.`id` = `regions`.`country_id` WHERE `country`.`isocode` IN('" . $wpdb->escape($purch_data['billing_country']) . "')"); if (is_numeric($purch_data['shipping_region']) && $delivery_region_count > 0) { echo " <tr><td>" . __('State', 'wpsc') . ":</td><td>" . wpsc_get_region($purch_data['shipping_region']) . "</td></tr>\n\r"; } echo " <tr><td>" . wp_kses($form_field['name'], array()) . ":</td><td>" . wpsc_get_country($purch_data['billing_country']) . "</td></tr>\n\r"; break; case 'delivery_country': echo " <tr><td>" . wp_kses($form_field['name'], array()) . ":</td><td>" . wpsc_get_country($purch_data['shipping_country']) . "</td></tr>\n\r"; break; case 'heading': echo " <tr><td colspan='2'><strong>" . wp_kses($form_field['name'], array()) . ":</strong></td></tr>\n\r"; break; default: echo " <tr><td>" . wp_kses($form_field['name'], array()) . ":</td><td>" . htmlentities(stripslashes($rekeyed_input[$form_field['id']]['value']), ENT_QUOTES) . "</td></tr>\n\r"; break; } } } else { echo " <tr><td>" . TXT_WPSC_NAME . ":</td><td>" . $purch_data['firstname'] . " " . $purch_data['lastname'] . "</td></tr>\n\r"; echo " <tr><td>" . TXT_WPSC_ADDRESS . ":</td><td>" . $purch_data['address'] . "</td></tr>\n\r"; echo " <tr><td>" . TXT_WPSC_PHONE . ":</td><td>" . $purch_data['phone'] . "</td></tr>\n\r"; echo " <tr><td>" . TXT_WPSC_EMAIL . ":</td><td>" . $purch_data['email'] . "</td></tr>\n\r"; } if (get_option('payment_method') == 2) { $gateway_name = ''; foreach ($GLOBALS['nzshpcrt_gateways'] as $gateway) { if ($purch_data['gateway'] != 'testmode') { if ($gateway['internalname'] == $purch_data['gateway']) { $gateway_name = $gateway['name']; } } else { $gateway_name = "Manual Payment"; } } } // echo " <tr><td colspan='2'></td></tr>\n\r"; // echo " <tr><td>".TXT_WPSC_PAYMENT_METHOD.":</td><td>".$gateway_name."</td></tr>\n\r"; // //echo " <tr><td>".TXT_WPSC_PURCHASE_NUMBER.":</td><td>".$purch_data['id']."</td></tr>\n\r"; // echo " <tr><td>".TXT_WPSC_HOWCUSTOMERFINDUS.":</td><td>".$purch_data['find_us']."</td></tr>\n\r"; // $engrave_line = explode(",",$purch_data['engravetext']); // echo " <tr><td>".TXT_WPSC_ENGRAVE."</td><td></td></tr>\n\r"; // echo " <tr><td>".TXT_WPSC_ENGRAVE_LINE_ONE.":</td><td>".$engrave_line[0]."</td></tr>\n\r"; // echo " <tr><td>".TXT_WPSC_ENGRAVE_LINE_TWO.":</td><td>".$engrave_line[1]."</td></tr>\n\r"; // if($purch_data['transactid'] != '') { // echo " <tr><td>".TXT_WPSC_TXN_ID.":</td><td>".$purch_data['transactid']."</td></tr>\n\r"; // } echo "</table>\n\r"; echo "<table class='packing_slip'>"; echo "<tr>"; echo " <th>" . TXT_WPSC_QUANTITY . " </th>"; echo " <th>" . TXT_WPSC_NAME . "</th>"; echo " <th>" . TXT_WPSC_PRICE . " </th>"; echo " <th>" . TXT_WPSC_SHIPPING . " </th>"; echo '<th>Tax</th>'; echo '</tr>'; $endtotal = 0; $all_donations = true; $all_no_shipping = true; $file_link_list = array(); foreach ($cart_log as $cart_row) { $alternate = ""; $j++; if ($j % 2 != 0) { $alternate = "class='alt'"; } $productsql = "SELECT * FROM `" . WPSC_TABLE_PRODUCT_LIST . "` WHERE `id`=" . $cart_row['prodid'] . ""; $product_data = $wpdb->get_results($productsql, ARRAY_A); $variation_sql = "SELECT * FROM `" . WPSC_TABLE_CART_ITEM_VARIATIONS . "` WHERE `cart_id`='" . $cart_row['id'] . "'"; $variation_data = $wpdb->get_results($variation_sql, ARRAY_A); $variation_count = count($variation_data); if ($variation_count > 1) { $variation_list = " ("; $i = 0; foreach ($variation_data as $variation) { if ($i > 0) { $variation_list .= ", "; } $value_id = $variation['value_id']; $value_data = $wpdb->get_results("SELECT * FROM `" . WPSC_TABLE_VARIATION_VALUES . "` WHERE `id`='" . $value_id . "' LIMIT 1", ARRAY_A); $variation_list .= $value_data[0]['name']; $i++; } $variation_list .= ")"; } else { if ($variation_count == 1) { $value_id = $variation_data[0]['value_id']; $value_data = $wpdb->get_results("SELECT * FROM `" . WPSC_TABLE_VARIATION_VALUES . "` WHERE `id`='" . $value_id . "' LIMIT 1", ARRAY_A); $variation_list = " (" . $value_data[0]['name'] . ")"; } else { $variation_list = ''; } } if ($cart_row['donation'] != 1) { $all_donations = false; } if ($cart_row['no_shipping'] != 1) { $shipping = $cart_row['pnp'] * $cart_row['quantity']; $total_shipping += $shipping; $all_no_shipping = false; } else { $shipping = 0; } $price = $cart_row['price'] * $cart_row['quantity']; $gst = $price - $price / (1 + $cart_row['gst'] / 100); if ($gst > 0) { $tax_per_item = $gst / $cart_row['quantity']; } echo "<tr {$alternate}>"; echo " <td>"; echo $cart_row['quantity']; echo " </td>"; echo " <td>"; echo $product_data[0]['name']; echo stripslashes($variation_list); echo " </td>"; echo " <td>"; echo nzshpcrt_currency_display($price, 1); echo " </td>"; echo " <td>"; echo nzshpcrt_currency_display($shipping, 1); echo " </td>"; echo '<td>'; echo nzshpcrt_currency_display($cart_row['tax_charged'], 1); echo '<td>'; echo '</tr>'; } echo "</table>"; echo "</div>\n\r"; } else { echo "<br />" . TXT_WPSC_USERSCARTWASEMPTY; } }
function wpsc_display_purchlog_totalprice() { global $purchlogitem; $purchlogitem->totalAmount -= wpsc_display_purchlog_discount(true); $purchlogitem->totalAmount += wpsc_display_purchlog_shipping(true); //$purchlogitem->totalAmount += $purchlogitem->extrainfo->base_shipping; return nzshpcrt_currency_display($purchlogitem->extrainfo->totalprice, true); }
function nzshpcrt_specials($input = null) { global $wpdb; $siteurl = SITEURL; $sql = "SELECT * FROM `wp_product_list` WHERE `special` = '1' LIMIT 1"; $product = $wpdb->get_results($sql, ARRAY_A); if ($product != null) { $output = "<div id='sideshoppingcart'><div id='shoppingcartcontents'><h2>" . TXT_WPSC_SPECIALS . "</h2><br \\>"; foreach ($product as $special) { $output .= "<strong>" . $special['name'] . "</strong><br /> "; if ($special['image'] != null) { $output .= "<img src='http://th.cartoonbank.ru/" . $special['image'] . "' title='" . $special['name'] . "' alt='" . $special['name'] . "' /><br />"; } $output .= $special['description'] . "<br />"; $output .= "<span class='oldprice'>" . nzshpcrt_currency_display($special['price'], $special['notax'], false) . "</span><br />"; // $output .= $special['price']; $variations_procesor = new nzshpcrt_variations(); $output .= $variations_procesor->display_product_variations($product['id']); $output .= nzshpcrt_currency_display($special['price'], $special['notax'], false, $special['id']) . "<br />"; $output .= "<form id='specials' name='{$num}' method='POST' action='#' onsubmit='submitform(this);return false;' >"; $output .= "<input type='hidden' name='prodid' value='" . $special['id'] . "'>"; $output .= "<input type='hidden' name='item' value='" . $special['id'] . "' />"; // $output .= "<input type='submit' name='Buy' value='".TXT_WPSC_BUY."' />"; if ($special['quantity_limited'] == 1 && $special['quantity'] < 1) { $output .= TXT_WPSC_PRODUCTSOLDOUT . ""; } else { $output .= $variations_procesor->display_product_variations($special['id'], true); $output .= "<input type='submit' name='" . TXT_WPSC_ADDTOCART . "' value='" . TXT_WPSC_ADDTOCART . "' />"; } $output .= "</form>"; } $output .= "</div></div>"; } else { $output = ''; } echo $input . $output; }
function product_display_list($product_list, $group_type, $group_sql = '', $search_sql = '') { global $wpdb; $siteurl = get_option('siteurl'); if ((double) WPSC_VERSION < 3.8) { $images_dir = 'images'; } else { $images_dir = 'wpsc-core/images'; } if (get_option('permalink_structure') != '') { $seperator = "?"; } else { $seperator = "&"; } $product_listing_data = wpsc_get_product_listing($product_list, $group_type, $group_sql, $search_sql); $product_list = $product_listing_data['product_list']; $output .= $product_listing_data['page_listing']; if ($product_listing_data['category_id']) { $category_nice_name = $wpdb->get_var("SELECT `nice-name` FROM `" . WPSC_TABLE_PRODUCT_CATEGORIES . "` WHERE `id` ='" . (int) $product_listing_data['category_id'] . "' LIMIT 1"); } else { $category_nice_name = ''; } if ($product_list != null) { $output .= "<table class='list_productdisplay {$category_nice_name}'>"; $i = 0; foreach ($product_list as $product) { $num++; if ($i % 2 == 1) { $output .= " <tr class='product_view_{$product['id']}'>"; } else { $output .= " <tr class='product_view_{$product['id']}' style='background-color:#EEEEEE'>"; } $i++; $output .= " <td style='width: 9px;'>"; if ($product['description'] != null) { $output .= "<a href='#' class='additional_description_link' onclick='return show_additional_description(\"list_description_" . $product['id'] . "\",\"link_icon" . $product['id'] . "\");'>"; $output .= "<img style='margin-top:3px;' id='link_icon" . $product['id'] . "' src='{$siteurl}/wp-content/plugins/" . WPSC_DIR_NAME . "/" . $images_dir . "/icon_window_expand.gif' title='" . $product['name'] . "' alt='" . $product['name'] . "' />"; $output .= "</a>"; } $output .= " </td>\n\r"; $output .= " <td width='55%'>"; if ($product['special'] == 1) { $special = "<strong class='special'>" . TXT_WPSC_SPECIAL . " - </strong>"; } else { $special = ""; } $output .= "<a href='" . wpsc_product_url($product['id']) . "' class='wpsc_product_title' ><strong>" . stripslashes($product['name']) . "</strong></a>"; $output .= " </td>"; $variations_procesor = new nzshpcrt_variations(); $variations_output = $variations_procesor->display_product_variations($product['id'], false, false, true); if ($variations_output[1] !== null) { $product['price'] = $variations_output[1]; } $output .= " <td width='10px' style='text-align: center;'>"; if ($product['quantity'] < 1 && $product['quantity_limited'] == 1) { $output .= "<img style='margin-top:5px;' src='{$siteurl}/wp-content/plugins/" . WPSC_DIR_NAME . "/" . $images_dir . "/no_stock.gif' title='No' alt='No' />"; } else { $output .= "<img style='margin-top:4px;' src='{$siteurl}/wp-content/plugins/" . WPSC_DIR_NAME . "/" . $images_dir . "/yes_stock.gif' title='Yes' alt='Yes' />"; } $output .= " </td>"; $output .= " <td width='10%'>"; if ($product['special'] == 1 && $variations_output[1] === null) { $output .= nzshpcrt_currency_display($product['price'] - $product['special_price'], $product['notax'], false, $product['id']) . "<br />"; } else { $output .= "<span id='product_price_" . $product['id'] . "'>" . nzshpcrt_currency_display($product['price'], $product['notax']) . "</span>"; } $output .= " </td>"; $output .= " <td width='20%'>"; if (get_option('addtocart_or_buynow') == '0') { $output .= "<form name='{$num}' id='product_" . $product['id'] . "' method='POST' action='" . get_option('product_list_url') . $seperator . "category=" . $_GET['category'] . "' onsubmit='submitform(this);return false;' >"; } if (get_option('list_view_quantity') == 1) { $output .= "<input type='text' name='quantity' value='1' size='3' maxlength='3'> "; } $output .= $variations_output[0]; $output .= "<input type='hidden' name='item' value='" . $product['id'] . "' />"; $output .= "<input type='hidden' name='prodid' value='" . $product['id'] . "'>"; if (get_option('wpsc_selected_theme') == 'iShop') { if (get_option('addtocart_or_buynow') == '0') { if ($product['quantity_limited'] == 1 && $product['quantity'] < 1) { $output .= "<input disabled='true' type='submit' value='' name='Buy' class='wpsc_buy_button'/>"; } else { $output .= "<input type='submit' name='Buy' value='' class='wpsc_buy_button'/>"; } } else { if (!($product['quantity_limited'] == 1 && $product['quantity'] < 1)) { $output .= google_buynow($product['id']); } } } else { if (get_option('addtocart_or_buynow') == '0') { if ($product['quantity_limited'] == 1 && $product['quantity'] < 1) { $output .= "<input disabled='true' type='submit' name='Buy' class='wpsc_buy_button' value='" . TXT_WPSC_ADDTOCART . "' />"; } else { $output .= "<input type='submit' name='Buy' class='wpsc_buy_button' value='" . TXT_WPSC_ADDTOCART . "' />"; } } else { if (!($product['quantity_limited'] == 1 && $product['quantity'] < 1)) { $output .= google_buynow($product['id']); } } } $output .= "</form>"; $output .= " </td>\n\r"; $output .= " </tr>\n\r"; $output .= " <tr class='list_view_description'>\n\r"; $output .= " <td colspan='5'>\n\r"; $output .= " <div id='list_description_" . $product['id'] . "'>\n\r"; $output .= $product['description']; $output .= " </div>\n\r"; $output .= " </td>\n\r"; $output .= " </tr>\n\r"; } $output .= "</table>"; } else { $output .= "<p>" . TXT_WPSC_NOITEMSINTHIS . " " . $group_type . ".</p>"; } return $output; }
function nzshpcrt_overall_total_price($country_code = null, $for_display = false, $no_discount = false, $total_checkbox = 0) { /* * Determines the total in the shopping cart, adds the tax and shipping if a country code is supplied and adds the discount of a coupon code is present * Adds a dollar sign and information if there is no tax and shipping if $for_display is true */ global $wpdb; $cart =& $_SESSION['nzshpcrt_cart']; $total_quantity = 0; $total_weight = 0; $all_donations = true; $all_no_shipping = true; foreach ($cart as $cart_item) { $product_id = $cart_item->product_id; $quantity = $cart_item->quantity; $product_variations = $cart_item->product_variations; $extras = $cart_item->extras; $extras_count = count($extras); $raw_price = 0; $variation_count = count($product_variations); if ($variation_count > 0) { foreach ($product_variations as $product_variation) { $value_id = $product_variation; $value_data = $wpdb->get_results("SELECT * FROM `" . $wpdb->prefix . "variation_values` WHERE `id`='" . $value_id . "' LIMIT 1", ARRAY_A); } } //$total_quantity += $quantity; $sql = "SELECT * FROM `" . $wpdb->prefix . "product_list` WHERE `id` = '{$product_id}' LIMIT 1"; $product = $wpdb->get_row($sql, ARRAY_A); if ($product['donation'] == 1) { $price = $quantity * $cart_item->donation_price; } else { $price = $quantity * calculate_product_price($product_id, $product_variations, 'stay', $extras); if ($country_code != null) { if ($product['notax'] != 1) { $price = nzshpcrt_calculate_tax($price, $_SESSION['selected_country'], $_SESSION['selected_region']); } $shipping = nzshpcrt_determine_item_shipping($product_id, $quantity, $country_code); $price += $shipping; } $all_donations = false; } if ($product['no_shipping'] != 1) { $all_no_shipping = false; } $total += $price; } if ($country_code != null && $all_donations == false && $all_no_shipping == false) { //echo $_SESSION['selected_country']; //exit(nzshpcrt_determine_base_shipping(0, $country_code)); $total += nzshpcrt_determine_base_shipping(0, $_SESSION['delivery_country']); } if (!empty($_SESSION['coupon_num']) && $no_discount !== true) { $total += nzshpcrt_apply_coupon($total, $_SESSION['coupon_num']) - $total; } if ($for_display === true) { $total = nzshpcrt_currency_display($total, 1); if ($country_code == null && get_option('add_plustax') == 1) { $total .= "<span class='pluspostagetax'> + " . TXT_WPSC_POSTAGE_AND_TAX . "</span>"; } } return $total; }
function wpsc_admin_products_list($category_id = 0) { global $wpdb, $_wp_column_headers; // set is_sortable to false to start with $is_sortable = false; $page = null; $search_input = ''; if ($_GET['search']) { $search_input = stripslashes($_GET['search']); $search_string = "%" . $wpdb->escape($search_input) . "%"; $search_sql = "AND (`products`.`name` LIKE '" . $search_string . "' OR `products`.`description` LIKE '" . $search_string . "')"; } else { $search_sql = ''; } $search_sql = apply_filters('wpsc_admin_products_list_search_sql', $search_sql); if ($category_id > 0) { // if we are getting items from only one category, this is a monster SQL query to do this with the product order $sql = "SELECT `products`.`id` , `products`.`name` , `products`.`price` , `products`.`image`,`products`.`weight` , `products`.`publish`, `categories`.`category_id`,`order`.`order`, IF(ISNULL(`order`.`order`), 0, 1) AS `order_state`\r\n\t\t\tFROM `" . WPSC_TABLE_PRODUCT_LIST . "` AS `products`\r\n\t\t\tLEFT JOIN `" . WPSC_TABLE_ITEM_CATEGORY_ASSOC . "` AS `categories` ON `products`.`id` = `categories`.`product_id` \r\n\t\t\tLEFT JOIN `" . WPSC_TABLE_PRODUCT_ORDER . "` AS `order` ON ( \r\n\t\t\t\t(\t`products`.`id` = `order`.`product_id` )\r\n\t\t\tAND \r\n\t\t\t\t( `categories`.`category_id` = `order`.`category_id` )\r\n\t\t\t)\r\n\t\t\tWHERE `products`.`active` = '1' {$search_sql}\r\n\t\t\tAND `categories`.`category_id` \r\n\t\t\tIN (\r\n\t\t\t'" . $category_id . "'\r\n\t\t\t)\r\n\t\t\tORDER BY `order_state` DESC,`order`.`order` ASC, `products`.`date_added` DESC, `products`.`id` DESC"; // if we are selecting a category, set is_sortable to true $is_sortable = true; } else { $itempp = 10; if ($_GET['pageno'] != 'all') { if ($_GET['pageno'] > 0) { $page = absint($_GET['pageno']); } else { $page = 1; } $start = (int) ($page * $itempp) - $itempp; $sql = "SELECT DISTINCT * FROM `" . WPSC_TABLE_PRODUCT_LIST . "` AS `products` WHERE `products`.`active`='1' {$search_sql} ORDER BY `products`.`date_added` DESC LIMIT {$start},{$itempp}"; if (get_option('wpsc_sort_by') == 'dragndrop') { $sql = "SELECT DISTINCT * FROM `" . WPSC_TABLE_PRODUCT_LIST . "` AS `products` LEFT JOIN `" . WPSC_TABLE_PRODUCT_ORDER . "` AS `order` ON `products`.`id`= `order`.`product_id` WHERE `products`.`active`='1' AND `order`.`category_id`='0' {$search_sql} ORDER BY `order`.`order`"; } } else { $sql = "SELECT DISTINCT * FROM `" . WPSC_TABLE_PRODUCT_LIST . "` AS `products` WHERE `products`.`active`='1' {$search_sql} ORDER BY `products`.`date_added`"; } } // exit($sql); $product_list = $wpdb->get_results($sql, ARRAY_A); //exit('<pre>'.print_r($product_list, true).'</pre>'); $num_products = $wpdb->get_var("SELECT COUNT(DISTINCT `products`.`id`) FROM `" . WPSC_TABLE_PRODUCT_LIST . "` AS `products` WHERE `products`.`active`='1' {$search_sql}"); if (isset($itempp)) { $num_pages = ceil($num_products / $itempp); } if ($page !== null) { $page_links = paginate_links(array('base' => add_query_arg('pageno', '%#%'), 'format' => '', 'prev_text' => __('«'), 'next_text' => __('»'), 'total' => $num_pages, 'current' => $page)); } $this_page_url = stripslashes($_SERVER['REQUEST_URI']); ?> <div class="wpsc-separator"><br/></div> <div class="tablenav"> <?php if (get_option('wpsc_sort_by') != 'dragndrop') { ?> <div class="tablenav-pages"> <?php echo $page_links; ?> </div> <?php } ?> <div class="alignleft actions"> <form action="admin.php" method="get"> <?php echo wpsc_admin_category_dropdown(); ?> </form> </div> </div> <form id="posts-filter" action="" method="get"> <div class="tablenav"> <div class="alignright search-box"> <input type='hidden' name='page' value='wpsc-edit-products' /> <input type="text" class="search-input" id="page-search-input" name="search" value="<?php echo $search_input; ?> " /> <input type="submit" name='wpsc_search' value="<?php _e('Search'); ?> " class="button" /> </div> <div class="alignleft actions"> <select name="bulkAction"> <option value="-1" selected="selected"><?php _e('Bulk Actions'); ?> </option> <option value="delete"><?php _e('Delete'); ?> </option> <option value="show"><?php _e('Publish'); ?> </option> <option value="hide"><?php _e('Draft'); ?> </option> </select> <input type='hidden' name='wpsc_admin_action' value='bulk_modify' /> <input type="submit" value="<?php _e('Apply'); ?> " name="doaction" id="doaction" class="button-secondary action" /> <?php wp_nonce_field('bulk-products', 'wpsc-bulk-products'); ?> </div> </div> <input type='hidden' id='products_page_category_id' name='category_id' value='<?php echo $category_id; ?> ' /> <table class="widefat page fixed" id='wpsc_product_list' cellspacing="0"> <thead> <tr> <?php print_column_headers('display-product-list'); ?> </tr> </thead> <tfoot> <tr> <?php print_column_headers('display-product-list', false); ?> </tr> </tfoot> <tbody> <?php if (count($product_list) > 0) { foreach ((array) $product_list as $product) { //first set the patch to the default $image_path = WPSC_URL . "/images/no-image-uploaded.gif"; if (is_numeric($product['image'])) { // check for automatic thumbnail images // file_exists(WPSC_THUMBNAIL_DIR.$product['image']) $product_image = $wpdb->get_var("SELECT `image` FROM `" . WPSC_TABLE_PRODUCT_IMAGES . "` WHERE `id` = '{$product['image']}' LIMIT 1"); // if the image exists, set the image path to it. if ($product_image != null && file_exists(WPSC_THUMBNAIL_DIR . $product_image)) { $image_path = WPSC_THUMBNAIL_URL . $product_image; } } // get the product name, unless there is no name, in which case, display text indicating so if ($product['name'] == '') { $product_name = "(" . __('No Name', 'wpsc') . ")"; } else { $product_name = htmlentities(stripslashes($product['name']), ENT_QUOTES, 'UTF-8'); } $category_html = ''; if (get_option('wpsc_sort_by') != 'dragndrop') { $category_list = $wpdb->get_results("SELECT `" . WPSC_TABLE_PRODUCT_CATEGORIES . "`.`id`,`" . WPSC_TABLE_PRODUCT_CATEGORIES . "`.`name` FROM `" . WPSC_TABLE_ITEM_CATEGORY_ASSOC . "` , `" . WPSC_TABLE_PRODUCT_CATEGORIES . "` WHERE `" . WPSC_TABLE_ITEM_CATEGORY_ASSOC . "`.`product_id` IN ('" . $product['id'] . "') AND `" . WPSC_TABLE_ITEM_CATEGORY_ASSOC . "`.`category_id` = `" . WPSC_TABLE_PRODUCT_CATEGORIES . "`.`id` AND `" . WPSC_TABLE_PRODUCT_CATEGORIES . "`.`active` IN('1')", ARRAY_A); } else { $category_list = $wpdb->get_results("SELECT `" . WPSC_TABLE_PRODUCT_CATEGORIES . "`.`id`,`" . WPSC_TABLE_PRODUCT_CATEGORIES . "`.`name` FROM `" . WPSC_TABLE_PRODUCT_CATEGORIES . "` LEFT JOIN `" . WPSC_TABLE_ITEM_CATEGORY_ASSOC . "` ON `" . WPSC_TABLE_ITEM_CATEGORY_ASSOC . "`.`category_id`= `" . WPSC_TABLE_PRODUCT_CATEGORIES . "`.`id` WHERE `" . WPSC_TABLE_ITEM_CATEGORY_ASSOC . "`.`product_id` IN ('" . $product['product_id'] . "') AND `" . WPSC_TABLE_PRODUCT_CATEGORIES . "`.`active` IN('1')", ARRAY_A); } $i = 0; foreach ((array) $category_list as $category_row) { if ($i > 0) { $category_html .= "<br />"; } $category_html .= "<a class='category_link' href='" . htmlentities(remove_query_arg('product_id', add_query_arg('category_id', $category_row['id']))) . "'>" . stripslashes($category_row['name']) . "</a>"; $i++; } if (get_option('wpsc_sort_by') == 'dragndrop') { $product['id'] = $product['product_id']; } ?> <tr class="product-edit <?php echo wpsc_publish_status($product['id']) ? ' wpsc_published' : ' wpsc_not_published'; ?> " id="product-<?php echo $product['id']; ?> " > <th class="check-column" scope="row"> <input type='checkbox' name='product[]' class='deletecheckbox' value='<?php echo $product['id']; ?> ' title="ID #<?php echo $product['id']; ?> " /> <?php echo do_action('wpsc_admin_product_checkbox', $product['id']); ?> </th> <td class="product-image "> <img title='Drag to a new position' src='<?php echo $image_path; ?> ' alt='<?php echo $product['name']; ?> ' width='38' height='38' /> </td> <td class="product-title column-title"> <?php $edit_product_url = wp_nonce_url(htmlentities(add_query_arg('product_id', $product['id'])), 'edit_product_' . $product['id']); ?> <a class='edit-product' href='<?php echo $edit_product_url; ?> ' title="ID #<?php echo $product['id']; ?> : <?php echo $product_name; ?> "><?php echo $product_name; ?> </a> <?php if ($product['publish'] != 1) { ?> - <strong> <?php _e('Draft', 'wpsc'); ?> </strong> <?php } ?> <?php $product_alert = apply_filters('wpsc_product_alert', array(false, ''), $product); if (count($product_alert['messages']) > 0) { $product_alert['messages'] = implode("\n", (array) $product_alert['messages']); } if ($product_alert['state'] === true) { ?> <img alt='<?php echo $product_alert['messages']; ?> ' title='<?php echo $product_alert['messages']; ?> ' class='product-alert-image' src='<?php echo WPSC_URL; ?> /images/product-alert.jpg' alt='' /> <?php } // If a product alert has stuff to display, show it. // Can be used to add extra icons etc if (!empty($product_alert['display'])) { echo $product_alert['display']; } ?> <img class='loadingImg' style='display:none;' src='<?php echo get_option('siteurl'); ?> /wp-admin/images/wpspin_light.gif' alt='loading' /> <div class="wpsc-row-actions"> <span class="edit"> <a class='edit-product' title="Edit this post" href='<?php echo $edit_product_url; ?> ' style="cursor:pointer;">Edit</a> </span> | <span class="delete"> <a class='submitdelete delete_button' title='<?php echo attribute_escape(__('Delete this product', 'wpsc')); ?> ' href='<?php echo wp_nonce_url("admin.php?wpsc_admin_action=delete_product&product={$product['id']}", 'delete_product_' . $product['id']); ?> ' onclick="if ( confirm(' <?php echo js_escape(sprintf(__("You are about to delete this product '%s'\n 'Cancel' to stop, 'OK' to delete."), $product['name'])); ?> ') ) { return true;}return false;" > <?php _e('Delete'); ?> </a> </span> | <span class="view"> <a target="_blank" rel="permalink" title='View <?php echo $product_name; ?> ' href="<?php echo wpsc_product_url($product['id']); ?> ">View</a> </span> | <span class="view"> <a rel="permalink" title='Duplicate <?php echo $product_name; ?> ' href="<?php echo wp_nonce_url("admin.php?wpsc_admin_action=duplicate_product&product={$product['id']}", 'duplicate_product_' . $product['id']); ?> "> Duplicate </a> </span> | <span class="publish_toggle"> <a title="Change publish status" href="<?php echo wp_nonce_url("admin.php?wpsc_admin_action=toggle_publish&product=" . $product['id'], 'toggle_publish_' . $product['id']); ?> " > <?php if ($product['publish'] == 1) { _e('Unpublish', 'wpsc'); } else { _e('Publish', 'wpsc'); } ?> </a> </span> </div> </td> <td class="product-price column-price"> <?php echo nzshpcrt_currency_display($product['price'], 1); ?> <div class='price-editing-fields' id='price-editing-fields-<?php echo $product['id']; ?> '> <input type='text' class='the-product-price' name='product_price[<?php echo $product['id']; ?> ][price]' value='<?php echo number_format($product['price'], 2, '.', ''); ?> ' /> <input type='hidden' name='product_price[<?php echo $product['id']; ?> ][id]' value='<?php echo $product['id']; ?> ' /> <input type='hidden' name='product_price[<?php echo $product['id']; ?> ][nonce]' value='<?php echo wp_create_nonce('edit-product_price-' . $product['id']); ?> ' /> </div> </td> <td class="column-categories"><?php echo $category_html; ?> </td> </tr> <?php } } else { ?> <tr> <td colspan='5'> <?php _e("You have no products added."); ?> </td> </tr> <?php } ?> </tbody> </table> </form> <?php }
function wpsc_packing_slip($purchase_id) { global $wpdb, $purchlogitem, $wpsc_cart, $purchlog; if (isset($_REQUEST['purchaselog_id'])) { $purchlogitem = new wpsc_purchaselogs_items((int) $_REQUEST['purchaselog_id']); } $purch_sql = "SELECT * FROM `" . WPSC_TABLE_PURCHASE_LOGS . "` WHERE `id`='" . $purchase_id . "'"; $purch_data = $wpdb->get_row($purch_sql, ARRAY_A); //echo "<p style='padding-left: 5px;'><strong>".__('Date', 'wpsc')."</strong>:".date("jS M Y", $purch_data['date'])."</p>"; $cartsql = "SELECT * FROM `" . WPSC_TABLE_CART_CONTENTS . "` WHERE `purchaseid`=" . $purchase_id . ""; $cart_log = $wpdb->get_results($cartsql, ARRAY_A); $j = 0; if ($cart_log != null) { echo "<div class='packing_slip'>\n\r"; echo apply_filters('wpsc_packing_slip_header', '<h2>' . __('Packing Slip', 'wpsc') . "</h2>\n\r"); echo "<strong>" . __('Order', 'wpsc') . " #</strong> " . $purchase_id . "<br /><br />\n\r"; echo "<table>\n\r"; /* $form_sql = "SELECT * FROM `".WPSC_TABLE_SUBMITED_FORM_DATA."` WHERE `log_id` = '".(int)$purchase_id."'"; $input_data = $wpdb->get_results($form_sql,ARRAY_A); */ echo "<tr class='heading'><td colspan='2'><strong>Billing Info</strong></td></tr>"; foreach ((array) $purchlogitem->userinfo as $userinfo) { if ($userinfo['unique_name'] != 'billingcountry') { echo "<tr><td>" . $userinfo['name'] . ": </td><td>" . $userinfo['value'] . "</td></tr>"; } else { $userinfo['value'] = maybe_unserialize($userinfo['value']); if (is_array($userinfo['value'])) { if (!empty($userinfo['value'][1]) && !is_numeric($userinfo['value'][1])) { echo "<tr><td>State: </td><td>" . $userinfo['value'][1] . "</td></tr>"; } elseif (is_numeric($userinfo['value'][1])) { echo "<tr><td>State: </td><td>" . wpsc_get_state_by_id($userinfo['value'][1], 'name') . "</td></tr>"; } if (!empty($userinfo['value'][0])) { echo "<tr><td>Country: </td><td>" . $userinfo['value'][0] . "</td></tr>"; } } else { echo "<tr><td>" . $userinfo['name'] . ": </td><td>" . $userinfo['value'] . "</td></tr>"; } } } echo "<tr class='heading'><td colspan='2'><strong>Shipping Info</strong></td></tr>"; foreach ((array) $purchlogitem->shippinginfo as $userinfo) { if ($userinfo['unique_name'] != 'shippingcountry' && $userinfo['unique_name'] != 'shippingstate') { echo "<tr><td>" . $userinfo['name'] . ": </td><td>" . $userinfo['value'] . "</td></tr>"; } elseif ($userinfo['unique_name'] == 'shippingcountry') { $userinfo['value'] = maybe_unserialize($userinfo['value']); if (is_array($userinfo['value'])) { if (!empty($userinfo['value'][1]) && !is_numeric($userinfo['value'][1])) { echo "<tr><td>State: </td><td>" . $userinfo['value'][1] . "</td></tr>"; } elseif (is_numeric($userinfo['value'][1])) { echo "<tr><td>State: </td><td>" . wpsc_get_state_by_id($userinfo['value'][1], 'name') . "</td></tr>"; } if (!empty($userinfo['value'][0])) { echo "<tr><td>Country: </td><td>" . $userinfo['value'][0] . "</td></tr>"; } } else { echo "<tr><td>" . $userinfo['name'] . ": </td><td>" . $userinfo['value'] . "</td></tr>"; } } elseif ($userinfo['unique_name'] == 'shippingstate') { if (!empty($userinfo['value']) && !is_numeric($userinfo['value'])) { echo "<tr><td>" . $userinfo['name'] . ": </td><td>" . $userinfo['value'] . "</td</tr>>"; } elseif (is_numeric($userinfo['value'])) { echo "<tr><td>State: </td><td>" . wpsc_get_state_by_id($userinfo['value'], 'name') . "</td></tr>"; } } } // echo('<pre>'.print_r($purchlogitem,true).'</pre>'); /* foreach($input_data as $input_row) { $rekeyed_input[$input_row['form_id']] = $input_row; } if($input_data != null) { $form_data = $wpdb->get_results("SELECT * FROM `".WPSC_TABLE_CHECKOUT_FORMS."` WHERE `active` = '1'",ARRAY_A); // exit('<pre>'.print_r($purch_data, true).'</pre>'); foreach($form_data as $form_field) { switch($form_field['type']) { case 'country': $delivery_region_count = $wpdb->get_var("SELECT COUNT(`regions`.`id`) FROM `".WPSC_TABLE_REGION_TAX."` AS `regions` INNER JOIN `".WPSC_TABLE_CURRENCY_LIST."` AS `country` ON `country`.`id` = `regions`.`country_id` WHERE `country`.`isocode` IN('".$wpdb->escape( $purch_data['billing_country'])."')"); if(is_numeric($purch_data['billing_region']) && ($delivery_region_count > 0)) { echo " <tr><td>".__('State', 'wpsc').":</td><td>".wpsc_get_region($purch_data['billing_region'])."</td></tr>\n\r"; } echo " <tr><td>".wp_kses($form_field['name'], array() ).":</td><td>".wpsc_get_country($purch_data['billing_country'])."</td></tr>\n\r"; break; case 'delivery_country': echo " <tr><td>".$form_field['name'].":</td><td>".wpsc_get_country($purch_data['shipping_country'])."</td></tr>\n\r"; break; case 'heading': echo " <tr><td colspan='2'><strong>".wp_kses($form_field['name'], array()).":</strong></td></tr>\n\r"; break; default: if($form_field['unique_name'] == 'shippingstate'){ echo " <tr><td>".wp_kses($form_field['name'], array() ).":</td><td>".wpsc_get_region($purch_data['shipping_region'])."</td></tr>\n\r"; }else{ echo " <tr><td>".wp_kses($form_field['name'], array() ).":</td><td>".htmlentities(stripslashes($rekeyed_input[$form_field['id']]['value']), ENT_QUOTES,'UTF-8')."</td></tr>\n\r"; } break; } } } else { echo " <tr><td>".__('Name', 'wpsc').":</td><td>".$purch_data['firstname']." ".$purch_data['lastname']."</td></tr>\n\r"; echo " <tr><td>".__('Address', 'wpsc').":</td><td>".$purch_data['address']."</td></tr>\n\r"; echo " <tr><td>".__('Phone', 'wpsc').":</td><td>".$purch_data['phone']."</td></tr>\n\r"; echo " <tr><td>".__('Email', 'wpsc').":</td><td>".$purch_data['email']."</td></tr>\n\r"; } */ if (get_option('payment_method') == 2) { $gateway_name = ''; foreach ($GLOBALS['nzshpcrt_gateways'] as $gateway) { if ($purch_data['gateway'] != 'testmode') { if ($gateway['internalname'] == $purch_data['gateway']) { $gateway_name = $gateway['name']; } } else { $gateway_name = "Manual Payment"; } } } // echo " <tr><td colspan='2'></td></tr>\n\r"; // echo " <tr><td>".__('Payment Method', 'wpsc').":</td><td>".$gateway_name."</td></tr>\n\r"; // //echo " <tr><td>".__('Purchase No.', 'wpsc').":</td><td>".$purch_data['id']."</td></tr>\n\r"; // echo " <tr><td>".__('How The Customer Found Us', 'wpsc').":</td><td>".$purch_data['find_us']."</td></tr>\n\r"; // $engrave_line = explode(",",$purch_data['engravetext']); // echo " <tr><td>".__('Engrave text', 'wpsc')."</td><td></td></tr>\n\r"; // echo " <tr><td>".__('Line 1', 'wpsc').":</td><td>".$engrave_line[0]."</td></tr>\n\r"; // echo " <tr><td>".__('Line 2', 'wpsc').":</td><td>".$engrave_line[1]."</td></tr>\n\r"; // if($purch_data['transactid'] != '') { // echo " <tr><td>".__('Transaction Id', 'wpsc').":</td><td>".$purch_data['transactid']."</td></tr>\n\r"; // } echo "</table>\n\r"; echo "<table class='packing_slip'>"; echo "<tr>"; echo " <th>" . __('Quantity', 'wpsc') . " </th>"; echo " <th>" . __('Name', 'wpsc') . "</th>"; echo " <th>" . __('Price', 'wpsc') . " </th>"; echo " <th>" . __('Shipping', 'wpsc') . " </th>"; echo "<th>" . wpsc_display_tax_label(false) . "</th>"; echo '</tr>'; $endtotal = 0; $all_donations = true; $all_no_shipping = true; $file_link_list = array(); // exit('<pre>'.print_r($cart_log,true).'</pre>'); foreach ($cart_log as $cart_row) { $purchlogitem->the_purch_item(); // exit('<pre>'.print_r, true).'</pre>'); $alternate = ""; $j++; if ($j % 2 != 0) { $alternate = "class='alt'"; } $productsql = "SELECT * FROM `" . WPSC_TABLE_PRODUCT_LIST . "` WHERE `id`=" . $cart_row['prodid'] . ""; $product_data = $wpdb->get_results($productsql, ARRAY_A); $variation_sql = "SELECT * FROM `" . WPSC_TABLE_CART_ITEM_VARIATIONS . "` WHERE `cart_id`='" . $cart_row['id'] . "'"; $variation_data = $wpdb->get_results($variation_sql, ARRAY_A); $variation_count = count($variation_data); if ($variation_count > 1) { $variation_list = " ("; $i = 0; foreach ($variation_data as $variation) { if ($i > 0) { $variation_list .= ", "; } $value_id = $variation['value_id']; $value_data = $wpdb->get_results("SELECT * FROM `" . WPSC_TABLE_VARIATION_VALUES . "` WHERE `id`='" . $value_id . "' LIMIT 1", ARRAY_A); $variation_list .= $value_data[0]['name']; $i++; } $variation_list .= ")"; } else { if ($variation_count == 1) { $value_id = $variation_data[0]['value_id']; $value_data = $wpdb->get_results("SELECT * FROM `" . WPSC_TABLE_VARIATION_VALUES . "` WHERE `id`='" . $value_id . "' LIMIT 1", ARRAY_A); $variation_list = " (" . $value_data[0]['name'] . ")"; } else { $variation_list = ''; } } if ($cart_row['donation'] != 1) { $all_donations = false; } if ($cart_row['no_shipping'] != 1) { $shipping = $cart_row['pnp'] * $cart_row['quantity']; $total_shipping += $shipping; $all_no_shipping = false; } else { $shipping = 0; } $price = $cart_row['price'] * $cart_row['quantity']; $gst = $price - $price / (1 + $cart_row['gst'] / 100); if ($gst > 0) { $tax_per_item = $gst / $cart_row['quantity']; } echo "<tr {$alternate}>"; echo " <td>"; echo $cart_row['quantity']; echo " </td>"; echo " <td>"; echo $product_data[0]['name']; echo stripslashes($variation_list); echo " </td>"; echo " <td>"; echo nzshpcrt_currency_display($price, 1); echo " </td>"; echo " <td>"; echo nzshpcrt_currency_display($shipping, 1); echo " </td>"; echo '<td>'; if (wpsc_tax_isincluded()) { echo wpsc_purchaselog_details_tax(); } else { echo nzshpcrt_currency_display($cart_row['tax_charged'], 1); } echo '<td>'; echo '</tr>'; } echo "</table>"; echo '<table class="packing-slip-totals">'; echo '<tr><th>Base Shipping</th><td>' . nzshpcrt_currency_display($purch_data['base_shipping'], 1) . '</td></tr>'; echo '<tr><th>Total Shipping</th><td>' . nzshpcrt_currency_display($purch_data['base_shipping'] + $total_shipping, 1) . '</td></tr>'; echo '<tr><th>Total Price</th><td>' . nzshpcrt_currency_display($purch_data['totalprice'], 1) . '</td></tr>'; echo '</table>'; echo "</div>\n\r"; } else { echo "<br />" . __('This users cart was empty', 'wpsc'); } }
function wpsc_display_product_multicurrency() { global $wpdb, $wpsc_query; $output = ''; $sql = "SELECT `meta_key`, `meta_value` FROM `" . WPSC_TABLE_PRODUCTMETA . "` WHERE `product_id`=" . $wpsc_query->product['id'] . " AND `meta_key` LIKE 'currency%'"; $results = $wpdb->get_results($sql, ARRAY_A); if (count($results) > 0) { foreach ((array) $results as $curr) { $isocode = str_ireplace("currency[", "", $curr['meta_key']); $isocode = str_ireplace("]", "", $isocode); $currency_data = $wpdb->get_row("SELECT `symbol`,`symbol_html`,`code` FROM `" . WPSC_TABLE_CURRENCY_LIST . "` WHERE `isocode`='" . $isocode . "' LIMIT 1", ARRAY_A); if ($currency_data['symbol'] != '') { $currency_sign = $currency_data['symbol_html']; } else { $currency_sign = $currency_data['code']; } $output .= '<span class="wpscsmall pricefloatright pricedisplay">' . $currency_sign . ' ' . nzshpcrt_currency_display($curr["meta_value"], false, false, false, true) . '</span><br />'; //exit('<pre>'.print_r($currency_sign, true).'</pre>'); } } return $output; }
function nszhpcrt_category_tag($content = '') { require_once 'themes/iShop/iShop.php'; global $wpdb; if (preg_match_all("/\\[wpsc_category_exclude=([\\d]+),*(full)?\\]/", $content, $matches)) { foreach ($matches[1] as $key => $category_id) { $categories[$key]['id'] = $category_id; $categories[$key]['display'] = $matches[2][$key]; $categories[$key]['original_string'] = $matches[0][$key]; } foreach ($categories as $category) { $sql1 = "SELECT DISTINCT `" . $wpdb->prefix . "product_list`.*, `" . $wpdb->prefix . "item_category_associations`.`category_id`,`" . $wpdb->prefix . "product_order`.`order`, IF(ISNULL(`" . $wpdb->prefix . "product_order`.`order`), 0, 1) AS `order_state` FROM `" . $wpdb->prefix . "product_list` LEFT JOIN `" . $wpdb->prefix . "item_category_associations` ON `" . $wpdb->prefix . "product_list`.`id` = `" . $wpdb->prefix . "item_category_associations`.`product_id` LEFT JOIN `" . $wpdb->prefix . "product_order` ON ( ( `" . $wpdb->prefix . "product_list`.`id` = `" . $wpdb->prefix . "product_order`.`product_id` ) AND ( `" . $wpdb->prefix . "item_category_associations`.`category_id` = `" . $wpdb->prefix . "product_order`.`category_id` ) ) WHERE `" . $wpdb->prefix . "product_list`.`active` = '1' AND `" . $wpdb->prefix . "item_category_associations`.`category_id` NOT IN ('" . $category['id'] . "') {$no_donations_sql} ORDER BY `order_state` DESC,`" . $wpdb->prefix . "product_order`.`order` ASC"; $product_list1 = $wpdb->get_results($sql1, ARRAY_A); if (function_exists('product_display_list') && get_option('product_view') == 'list') { $output1 = product_display_list($product_list1, $group_type, $group_sql, $search_sql); } else { if (function_exists('product_display_grid') && get_option('product_view') == 'grid') { $output1 = product_display_grid($product_list1, $group_type, $group_sql, $search_sql); } else { $output1 = product_display_default($product_list1, ''); } } } $content = str_replace($category['original_string'], $output1, $content); } if (preg_match_all("/\\[wpsc_category=([\\d]+),*(full)?\\]/", $content, $matches)) { foreach ($matches[1] as $key => $category_id) { $categories[$key]['id'] = $category_id; $categories[$key]['display'] = $matches[2][$key]; $categories[$key]['original_string'] = $matches[0][$key]; } //echo("<pre>".print_r($categories,true)."</pre>"); $siteurl = get_option('siteurl'); if (get_option('permalink_structure') != '') { $seperator = "?"; } else { $seperator = "&"; } foreach ((array) $activated_widgets as $widget_container) { if (is_array($widget_container) && array_search(TXT_WPSC_DONATIONS, $widget_container)) { $no_donations_sql = "AND `" . $wpdb->prefix . "product_list`.`donation` != '1'"; break; } } foreach ((array) $categories as $category) { $full_view = null; if ($category['display'] == 'full') { $sql = "SELECT DISTINCT `" . $wpdb->prefix . "product_list`.*, `" . $wpdb->prefix . "item_category_associations`.`category_id`,`" . $wpdb->prefix . "product_order`.`order`, IF(ISNULL(`" . $wpdb->prefix . "product_order`.`order`), 0, 1) AS `order_state` FROM `" . $wpdb->prefix . "product_list` LEFT JOIN `" . $wpdb->prefix . "item_category_associations` ON `" . $wpdb->prefix . "product_list`.`id` = `" . $wpdb->prefix . "item_category_associations`.`product_id` LEFT JOIN `" . $wpdb->prefix . "product_order` ON ( ( `" . $wpdb->prefix . "product_list`.`id` = `" . $wpdb->prefix . "product_order`.`product_id` ) AND ( `" . $wpdb->prefix . "item_category_associations`.`category_id` = `" . $wpdb->prefix . "product_order`.`category_id` ) ) WHERE `" . $wpdb->prefix . "product_list`.`active` = '1' AND `" . $wpdb->prefix . "item_category_associations`.`category_id` IN ('" . $category['id'] . "') {$no_donations_sql} ORDER BY `order_state` DESC,`" . $wpdb->prefix . "product_order`.`order` ASC"; $product_list = $wpdb->get_results($sql, ARRAY_A); // sorry about the global variable, but it was the best way I could think of to avoid people having to upgrade the gold cart $GLOBALS['wpsc_category_id'] = $category['id']; if (function_exists('product_display_list') && get_option('product_view') == 'list') { $output .= product_display_list($product_list, $group_type, $group_sql, $search_sql); } else { if (function_exists('product_display_grid') && get_option('product_view') == 'grid') { $output .= product_display_grid($product_list, $group_type, $group_sql, $search_sql); } else { $output .= product_display_default($product_list, $group_type, $group_sql, $search_sql); } } } else { $sql = "SELECT DISTINCT `" . $wpdb->prefix . "product_list`.*, `" . $wpdb->prefix . "item_category_associations`.`category_id`,`" . $wpdb->prefix . "product_order`.`order`, IF(ISNULL(`" . $wpdb->prefix . "product_order`.`order`), 0, 1) AS `order_state` FROM `" . $wpdb->prefix . "product_list` LEFT JOIN `" . $wpdb->prefix . "item_category_associations` ON `" . $wpdb->prefix . "product_list`.`id` = `" . $wpdb->prefix . "item_category_associations`.`product_id` LEFT JOIN `" . $wpdb->prefix . "product_order` ON ( ( `" . $wpdb->prefix . "product_list`.`id` = `" . $wpdb->prefix . "product_order`.`product_id` ) AND ( `" . $wpdb->prefix . "item_category_associations`.`category_id` = `" . $wpdb->prefix . "product_order`.`category_id` ) ) WHERE `" . $wpdb->prefix . "product_list`.`active` = '1' AND `" . $wpdb->prefix . "item_category_associations`.`category_id` IN ('" . $category['id'] . "') {$no_donations_sql} ORDER BY `order_state` DESC,`" . $wpdb->prefix . "product_order`.`order` ASC"; $product_list = $wpdb->get_results($sql, ARRAY_A); $output = "<div id='products_page_container' class='wrap wpsc_container'>\n\r"; $output .= "<div id='homepage_products'>\n\r"; if ($full_view != null) { $output .= "<table class='productdisplay'>"; } foreach ((array) $product_list as $product) { $wpsc_theme = wpsc_theme_html($product); if ($full_view == null) { $output .= "<div class='category_view_product'>\n\r"; } else { /* product image is here */ $output .= "<tr>"; $output .= "<td class='imagecol'>"; } $output .= "<a href='" . WPSC_IMAGE_URL . $product['image'] . "' class='thickbox preview_link' rel='" . str_replace(" ", "_", $product['name']) . "'>"; if ($product['image'] != '') { $output .= "<img class='product_image' src='" . WPSC_THUMBNAIL_URL . $product['image'] . "' title='" . $product['name'] . "' alt='" . $product['name'] . "' />\n\r"; } $output .= "</a>"; if ($full_view != null) { $output .= "</td><td class='textcol'>"; } else { $output .= "<div class='product_details'>"; } if (get_option('hide_name_link') != 1) { if ($product['special'] == 1 && $variations_output[1] === null) { $output .= "<a href='" . wpsc_product_url($product['id']) . "' class='wpsc_product_title' >{$special}<strong class='special'>Special / Sale Price - </strong><strong>" . stripslashes($product['name']) . "</strong></a>"; } else { $output .= "<a href='" . wpsc_product_url($product['id']) . "' class='wpsc_product_title' >{$special}<strong>" . stripslashes($product['name']) . "</strong></a>"; } } else { if ($product['special'] == 1 && $variations_output[1] === null) { $output .= "<a class='wpsc_product_title' >{$special}<strong class='special'>Special / Sale Price - </strong><strong>" . stripslashes($product['name']) . "</strong></a>"; } else { $output .= "<a class='wpsc_product_title' >{$special}<strong>" . stripslashes($product['name']) . "</strong></a>"; } } if ($full_view != null) { if ($product['description'] != '') { $output .= "<p class='wpsc_description'>" . nl2br(stripslashes($product['description'])) . "</p>"; } if ($product['additional_description'] != '') { $output .= "<a href='#' class='additional_description_link' onclick='return show_additional_description(\"additionaldescription" . $product['id'] . "\",\"link_icon" . $product['id'] . "\");'>"; $output .= "<img id='link_icon" . $product['id'] . "' class='additional_description_button' src='" . WPSC_URL . "/images/icon_window_expand.gif' title='" . $product['name'] . "' alt='" . $product['name'] . "' />"; $output .= TXT_WPSC_MOREDETAILS . "</a>"; $output .= "<span class='additional_description' id='additionaldescription" . $product['id'] . "'><br />"; $output .= nl2br(stripslashes($product['additional_description'])) . ""; $output .= "</span><br />"; } } /* adding to cart stuff */ $output .= "<form id='product_" . $product['id'] . "' name='product_" . $product['id'] . "' method='post' action='" . get_option('product_list_url') . $seperator . "category=" . $_GET['category'] . "' onsubmit='submitform(this);return false;' >"; $output .= "<input type='hidden' name='prodid' value='" . $product['id'] . "' />"; $output .= "<input type='hidden' name='item' value='" . $product['id'] . "' />"; $variations_procesor = new nzshpcrt_variations(); $variations_output = $variations_procesor->display_product_variations($product['id'], false, false, true); $output .= $variations_output[0]; if ($variations_output[1] !== null) { $product['price'] = $variations_output[1]; } if ($product['special'] == 1 && $variations_output[1] === null) { $output .= "<span class='oldprice'>" . nzshpcrt_currency_display($product['price'], $product['notax']) . "</span><br />"; $output .= nzshpcrt_currency_display($product['price'] - $product['special_price'], $product['notax'], false, $product['id']) . "<br />"; } else { $output .= "<span id='product_price_" . $product['id'] . "'>" . nzshpcrt_currency_display($product['price'], $product['notax']) . "</span><br />"; } if (get_option('hide_addtocart_button') != '1' || get_option('payment_gateway') != 'google') { if (isset($wpsc_theme) && is_array($wpsc_theme) && $wpsc_theme['html'] != '') { $output .= $wpsc_theme['html']; } else { $output .= "<input type='submit' id='product_" . $product['id'] . "_submit_button' class='wpsc_buy_button' name='Buy' value='" . TXT_WPSC_ADDTOCART . "' />"; } } $output .= "</form>"; if (get_option('addtocart_or_buynow') == '1') { if (get_option('payment_gateway') == 'google') { $output .= google_buynow($product['id']); } } if ($full_view != null) { if (get_option('product_ratings') == 1) { $output .= "<div class='product_footer'>"; $output .= "<div class='product_average_vote'>"; $output .= "<strong>" . TXT_WPSC_AVGCUSTREVIEW . ":</strong>"; $output .= nzshpcrt_product_rating($product['id']); $output .= "</div>"; $output .= "<div class='product_user_vote'>"; $vote_output = nzshpcrt_product_vote($product['id'], "onmouseover='hide_save_indicator(\"saved_" . $product['id'] . "_text\");'"); if ($vote_output[1] == 'voted') { $output .= "<strong><span id='rating_" . $product['id'] . "_text'>" . TXT_WPSC_YOURRATING . ":</span>"; $output .= "<span class='rating_saved' id='saved_" . $product['id'] . "_text'> " . TXT_WPSC_RATING_SAVED . "</span>"; $output .= "</strong>"; } else { if ($vote_output[1] == 'voting') { $output .= "<strong><span id='rating_" . $product['id'] . "_text'>" . TXT_WPSC_RATETHISITEM . ":</span>"; $output .= "<span class='rating_saved' id='saved_" . $product['id'] . "_text'> " . TXT_WPSC_RATING_SAVED . "</span>"; $output .= "</strong>"; } } $output .= $vote_output[0]; $output .= "</div>"; $output .= "</div>"; } $output .= "</td>"; $output .= "</tr>"; } else { $output .= "</div>\n\r"; $output .= "</div>"; } } if ($full_view != null) { $output .= "</table>"; } $output .= "</div>\n\r"; $output .= "<br style='clear: left;'>\n\r"; $output .= "</div>\n\r"; } $content = str_replace($category['original_string'], $output, $content); } } return $content; }
function nzshpcrt_submit_ajax() { global $wpdb, $user_level, $wp_rewrite; get_currentuserinfo(); if (get_option('permalink_structure') != '') { $seperator = "?"; } else { $seperator = "&"; } $cartt = $_SESSION['nzshpcrt_cart']; $cartt1 = $cartt[0]->product_id; // if is an AJAX request, cruddy code, could be done better but getting approval would be impossible if ($_POST['ajax'] == "true" || $_GET['ajax'] == "true") { if ($_POST['metabox'] == 'true') { $output .= "<div class='meta_box'>"; if (get_option('multi_add') == '1') { $output .= TXT_WPSC_QUANTITY . ": <input type='text' name='quantity[]' size='3'><br>"; } if (get_option('time_requested') == '1') { $output .= TXT_WPSC_DATE_REQUESTED . ": <input type='text' class='time_requested' name='time_requested[]' size='10'><br>"; } if (get_option('commenting') == '1') { $output .= TXT_WPSC_COMMENT . ":<br><textarea type='text' name='comment[]'></textarea><br>"; } $output .= TXT_WPSC_LABEL . ":<br><textarea type='text' name='label[]'></textarea><br>"; $output .= "</div>"; exit($output); } if ($_POST['submittogoogle']) { $newvalue = $_POST['value']; $amount = $_POST['amount']; $reason = $_POST['reason']; $comment = $_POST['comment']; $message = $_POST['message']; $amount = number_format($amount, 2, '.', ''); $log_data = $wpdb->get_row("SELECT * FROM `" . WPSC_TABLE_PURCHASE_LOGS . "` WHERE `id` = '" . $_POST['id'] . "' LIMIT 1", ARRAY_A); if ($newvalue == 2 && function_exists('wpsc_member_activate_subscriptions')) { wpsc_member_activate_subscriptions($_POST['id']); } $google_status = unserialize($log_data['google_status']); switch ($newvalue) { case "Charge": if ($google_status[0] != 'CANCELLED_BY_GOOGLE') { if ($amount == '') { $google_status['0'] = 'Partially Charged'; } else { $google_status['0'] = 'CHARGED'; $google_status['partial_charge_amount'] = $amount; } } break; case "Cancel": if ($google_status[0] != 'CANCELLED_BY_GOOGLE') { $google_status[0] = 'CANCELLED'; } if ($google_status[1] != 'DELIVERED') { $google_status[1] = 'WILL_NOT_DELIVER'; } break; case "Refund": if ($amount == '') { $google_status['0'] = 'Partially Refund'; } else { $google_status['0'] = 'REFUND'; $google_status['partial_refund_amount'] = $amount; } break; case "Ship": if ($google_status[1] != 'WILL_NOT_DELIVER') { $google_status[1] = 'DELIVERED'; } break; case "Archive": $google_status[1] = 'ARCHIVED'; break; } $google_status_sql = "UPDATE `" . WPSC_TABLE_PURCHASE_LOGS . "` SET google_status='" . serialize($google_status) . "' WHERE `id` = '" . $_POST['id'] . "' LIMIT 1"; $wpdb->query($google_status_sql); $merchant_id = get_option('google_id'); $merchant_key = get_option('google_key'); $server_type = get_option('google_server_type'); $currency = get_option('google_cur'); $Grequest = new GoogleRequest($merchant_id, $merchant_key, $server_type, $currency); $google_order_number = $wpdb->get_var("SELECT google_order_number FROM `" . WPSC_TABLE_PURCHASE_LOGS . "` WHERE `id` = '" . $_POST['id'] . "' LIMIT 1"); switch ($newvalue) { case 'Charge': $Grequest->SendChargeOrder($google_order_number, $amount); break; case 'Ship': $Grequest->SendDeliverOrder($google_order_number); break; case 'Archive': $Grequest->SendArchiveOrder($google_order_number); break; case 'Refund': $Grequest->SendRefundOrder($google_order_number, $amount, $reason); break; case 'Cancel': $Grequest->SendCancelOrder($google_order_number, $reason, $comment); break; case 'Send Message': $Grequest->SendBuyerMessage($google_order_number, $message); break; } $newvalue++; $update_sql = "UPDATE `" . WPSC_TABLE_PURCHASE_LOGS . "` SET `processed` = '" . $newvalue . "' WHERE `id` = '" . $_POST['id'] . "' LIMIT 1"; //$wpdb->query($update_sql); exit; } /* if(($_GET['user'] == "true") && is_numeric($_POST['prodid'])) { if(function_exists('wpsc_members_init')) { $memberstatus = get_product_meta($_POST['prodid'],'is_membership',true); } if(($memberstatus=='1') && ($_SESSION['nzshopcrt_cart']!=NULL)){ } else{ $sql = "SELECT * FROM `".WPSC_TABLE_PRODUCT_LIST."` WHERE `id`='".$_POST['prodid']."' LIMIT 1"; $item_data = $wpdb->get_results($sql,ARRAY_A); if ($_POST['quantity']!='') { $add_quantity = $_POST['quantity']; } $item_quantity = 0; if($_SESSION['nzshpcrt_cart'] != null) { foreach($_SESSION['nzshpcrt_cart'] as $cart_key => $cart_item) { if (($memberstatus[0]!='1')&&($_SESSION['nzshpcrt_cart']!=NULL)){ if($cart_item->product_id == $_POST['prodid']) { if(($_SESSION['nzshpcrt_cart'][$cart_key]->product_variations === $_POST['variation'])&&($_SESSION['nzshpcrt_cart'][$cart_key]->extras === $_POST['extras'])) { $item_quantity += $_SESSION['nzshpcrt_cart'][$cart_key]->quantity; $item_variations = $_SESSION['nzshpcrt_cart'][$cart_key]->product_variations; } } } } } $item_stock = null; $variation_count = count($_POST['variation']); if($variation_count >= 1) { foreach($_POST['variation'] as $value_id) { if(is_numeric($value_id)) { $value_ids[] = (int)$value_id; } } if(count($value_ids) > 0) { $variation_ids = $wpdb->get_col("SELECT `variation_id` FROM `".WPSC_TABLE_VARIATION_VALUES."` WHERE `id` IN ('".implode("','",$value_ids)."')"); asort($variation_ids); $all_variation_ids = implode(",", $variation_ids); $priceandstock_id = $wpdb->get_var("SELECT `priceandstock_id` FROM `".WPSC_TABLE_VARIATION_COMBINATIONS."` WHERE `product_id` = '".(int)$_POST['prodid']."' AND `value_id` IN ( '".implode("', '",$value_ids )."' ) AND `all_variation_ids` IN('$all_variation_ids') GROUP BY `priceandstock_id` HAVING COUNT( `priceandstock_id` ) = '".count($value_ids)."' LIMIT 1"); $variation_stock_data = $wpdb->get_row("SELECT * FROM `".WPSC_TABLE_VARIATION_PROPERTIES."` WHERE `id` = '{$priceandstock_id}' LIMIT 1", ARRAY_A); $item_stock = $variation_stock_data['stock']; } } if($item_stock === null) { $item_stock = $item_data[0]['quantity']; } if((($item_data[0]['quantity_limited'] == 1) && ($item_stock > 0) && ($item_stock > $item_quantity)) || ($item_data[0]['quantity_limited'] == 0)) { $cartcount = count($_SESSION['nzshpcrt_cart']); if(is_array($_POST['variation'])) { $variations = $_POST['variation']; } else { $variations = null; } //if(is_array($_POST['extras'])) { $extras = $_POST['extras']; } else { $extras = null; } $updated_quantity = false; if($_SESSION['nzshpcrt_cart'] != null) { foreach($_SESSION['nzshpcrt_cart'] as $cart_key => $cart_item) { if ((!($memberstatus[0]=='1')&&(count($_SESSION['nzshpcrt_cart'])>0))) { if((int)$cart_item->product_id === (int)$_POST['prodid']) { // force both to integer before testing for identicality if(($_SESSION['nzshpcrt_cart'][$cart_key]->extras === $extras)&&($_SESSION['nzshpcrt_cart'][$cart_key]->product_variations === $variations) && ((int)$_SESSION['nzshpcrt_cart'][$cart_key]->donation_price == (int)$_POST['donation_price'])) { if ($_POST['quantity'] != ''){ if(is_array($_POST['quantity'])) { foreach ((array)$_POST['quantity'] as $qty) { $_SESSION['nzshpcrt_cart'][$cart_key]->quantity += (int)$qty; } } else { $_SESSION['nzshpcrt_cart'][$cart_key]->quantity += (int)$_POST['quantity']; } } else { $_SESSION['nzshpcrt_cart'][$cart_key]->quantity++; } $_SESSION['nzshpcrt_cart'][$cart_key]->comment = $_POST['comment']; foreach((array)$_POST['label'] as $key => $label) { if ($label != '') { if (array_key_exists($label, $_SESSION['nzshpcrt_cart'][$cart_key]->meta)) { $_SESSION['nzshpcrt_cart'][$cart_key]->meta[$label]+=(int)$_POST['quantity'][$key]; $_SESSION['nzshpcrt_cart'][$cart_key]->time_requested[$label] = $_POST['time_requested'][$key]; } else { $_SESSION['nzshpcrt_cart'][$cart_key]->meta[$label] = $_POST['quantity'][$key]; $_SESSION['nzshpcrt_cart'][$cart_key]->time_requested[$label] = $_POST['time_requested'][$key]; } } } $updated_quantity = true; } } } } } if($item_data[0]['donation'] == 1) { $donation = $_POST['donation_price']; } else { $donation = false; } if(!(($memberstatus=='1')&&(count($_SESSION['nzshpcrt_cart'])>0))){ $status = get_product_meta($cartt1, 'is_membership', true); if (function_exists('wpsc_members_init') && ( $status=='1')){ exit(); } $parameters = array(); if($updated_quantity === false) { $parameters['variation_values'] = $variations; $parameters['provided_price'] = $donation; $parameters['meta']=null; if($_POST['quantity'] != '') { $total_qty = 0; foreach ($_POST['quantity'] as $key=>$qty) { $total_qty+=$qty; $label[$_POST['label'][$key]] = $qty; $time_requested[$_POST['label'][$key]] = $_POST['time_requested'][$key]; } $parameters['quantity'] = $total_qty; //$new_cart_item = new wpsc_cart_item($_POST['prodid'],$variations,$total_qty, $donation,$_POST['comment'],$time_requested,$label); } else { $parameters['quantity'] = 1; } //mail('*****@*****.**', 'stuff', print_r($parameters,true)); $new_cart_item = new wpsc_cart_item($_POST['prodid'],$parameters); $_SESSION['nzshpcrt_cart'][] = $new_cart_item; } } } else { $quantity_limit = true; } $cart = $_SESSION['nzshpcrt_cart']; if (($memberstatus[0]=='1')&&(count($cart)>1)) { } else { $status = get_product_meta($cartt1, 'is_membership', true); if (function_exists('wpsc_members_init') && ( $status=='1')){ exit('st'); } //require_once(WPSC_FILE_PATH."/shopping_cart_functions.php"); echo "if(document.getElementById('shoppingcartcontents') != null) { document.getElementById('shoppingcartcontents').innerHTML = \"".str_replace(Array("\n","\r") , "",addslashes(nzshpcrt_shopping_basket_internals($cart,$quantity_limit))). "\"; } "; if($_SESSION['slider_state'] == 0) { //echo 'jQuery("#sliding_cart").css({ display: "none"});'."\n\r"; } else { //echo 'jQuery("#sliding_cart").css({ display: "block"});'."\n\r"; } } } exit(); } else if(($_POST['user'] == "true") && ($_POST['emptycart'] == "true")) { $_SESSION['nzshpcrt_cart'] = ''; $_SESSION['nzshpcrt_cart'] = Array(); echo "if(document.getElementById('shoppingcartcontents') != null) { document.getElementById('shoppingcartcontents').innerHTML = \"".str_replace(Array("\n","\r") , "", addslashes(nzshpcrt_shopping_basket_internals($cart))). "\"; }\n\r"; if($_POST['current_page'] == get_option('shopping_cart_url')) { echo "window.location = '".get_option('shopping_cart_url')."';\n\r"; // if we are on the checkout page, redirect back to it to clear the non-ajax cart too } exit(); }*/ if ($_POST['store_list'] == "true") { $map_data['address'] = $_POST['addr']; $map_data['city'] = $_POST['city']; $map_data['country'] = 'US'; $map_data['zipcode'] = ''; $map_data['radius'] = '50000'; $map_data['state'] = ''; $map_data['submit'] = 'Find Store'; $stores = getdistance($map_data); $i = 0; while ($rows = mysql_fetch_array($stores)) { //echo "<pre>".print_r($rows,1)."</pre>"; if ($i == 0) { $closest_store = $rows[5]; } $i++; $store_list[$i] = $rows[5]; } foreach ($store_list as $store) { $output .= "<option value='{$store}'>{$store}</option>"; } echo $output; exit; } if (is_numeric($_POST['currencyid'])) { $currency_data = $wpdb->get_results("SELECT `symbol`,`symbol_html`,`code` FROM `" . WPSC_TABLE_CURRENCY_LIST . "` WHERE `id`='" . $_POST['currencyid'] . "' LIMIT 1", ARRAY_A); $price_out = null; if ($currency_data[0]['symbol'] != '') { $currency_sign = $currency_data[0]['symbol_html']; } else { $currency_sign = $currency_data[0]['code']; } echo $currency_sign; exit; } if ($_POST['buynow'] == "true") { if (is_numeric($_REQUEST['product_id']) && is_numeric($_REQUEST['price'])) { $id = $wpdb->escape((int) $_REQUEST['product_id']); $price = $wpdb->escape((double) $_REQUEST['price']); $downloads = get_option('max_downloads'); $product_info = $wpdb->get_row("SELECT * FROM " . WPSC_TABLE_PRODUCT_LIST . " WHERE id = " . $id . " LIMIT 1", ARRAY_A); if (count($product_info) > 0) { $sessionid = mt_rand(100, 999) . time(); $sql = "INSERT INTO `" . WPSC_TABLE_PURCHASE_LOGS . "` ( `totalprice` , `sessionid` , `date`, `billing_country`, `shipping_country`,`shipping_region`, `user_ID`, `discount_value` ) VALUES ( '" . $price . "', '" . $sessionid . "', '" . time() . "', 'BuyNow', 'BuyNow', 'BuyNow' , NULL , 0)"; $wpdb->query($sql); $log_id = $wpdb->get_var("SELECT `id` FROM `" . WPSC_TABLE_PURCHASE_LOGS . "` WHERE `sessionid` IN('" . $sessionid . "') LIMIT 1"); $cartsql = "INSERT INTO `" . WPSC_TABLE_CART_CONTENTS . "` ( `prodid` , `purchaseid`, `price`, `pnp`, `gst`, `quantity`, `donation`, `no_shipping` ) VALUES ('" . $id . "', '" . $log_id . "','" . $price . "','0', '0','1', '" . $donation . "', '1')"; $wpdb->query($cartsql); $wpdb->query("INSERT INTO `" . WPSC_TABLE_DOWNLOAD_STATUS . "` ( `fileid` , `purchid` , `downloads` , `active` , `datetime` ) VALUES ( '" . $product_info['file'] . "', '" . $log_id . "', '{$downloads}', '0', NOW( ));"); } } exit; } /* rate item */ if ($_POST['rate_item'] == "true" && is_numeric($_POST['product_id']) && is_numeric($_POST['rating'])) { $nowtime = time(); $prodid = $_POST['product_id']; $ip_number = $_SERVER['REMOTE_ADDR']; $rating = $_POST['rating']; $cookie_data = explode(",", $_COOKIE['voting_cookie'][$prodid]); if (is_numeric($cookie_data[0]) && $cookie_data[0] > 0) { $vote_id = $cookie_data[0]; $wpdb->query("UPDATE `" . WPSC_TABLE_PRODUCT_RATING . "` SET `rated` = '" . $rating . "' WHERE `id` ='" . $vote_id . "' LIMIT 1 ;"); } else { $insert_sql = "INSERT INTO `" . WPSC_TABLE_PRODUCT_RATING . "` ( `ipnum` , `productid` , `rated`, `time`) VALUES ( '" . $ip_number . "', '" . $prodid . "', '" . $rating . "', '" . $nowtime . "');"; $wpdb->query($insert_sql); $data = $wpdb->get_results("SELECT `id`,`rated` FROM `" . WPSC_TABLE_PRODUCT_RATING . "` WHERE `ipnum`='" . $ip_number . "' AND `productid` = '" . $prodid . "' AND `rated` = '" . $rating . "' AND `time` = '" . $nowtime . "' ORDER BY `id` DESC LIMIT 1", ARRAY_A); $vote_id = $data[0]['id']; setcookie("voting_cookie[{$prodid}]", $vote_id . "," . $rating, time() + 60 * 60 * 24 * 360); } $output[1] = $prodid; $output[2] = $rating; echo $output[1] . "," . $output[2]; exit; } //written by allen if ($_REQUEST['save_tracking_id'] == "true") { $id = $_POST['id']; $value = $_POST['value']; $update_sql = "UPDATE " . WPSC_TABLE_PURCHASE_LOGS . " SET track_id = '" . $value . "' WHERE id={$id}"; $wpdb->query($update_sql); exit; } if ($_POST['get_updated_price'] == "true" && is_numeric($_POST['product_id'])) { $notax = $wpdb->get_var("SELECT `notax` FROM `" . WPSC_TABLE_PRODUCT_LIST . "` WHERE `id` IN('" . $_POST['product_id'] . "') LIMIT 1"); foreach ((array) $_POST['variation'] as $variation) { if (is_numeric($variation)) { $variations[] = (int) $variation; } } $pm = $_POST['pm']; echo "product_id=" . (int) $_POST['product_id'] . ";\n"; echo "price=\"" . nzshpcrt_currency_display(calculate_product_price((int) $_POST['product_id'], $variations, 'stay', $extras), $notax, true) . "\";\n"; echo "numeric_price=\"" . number_format(calculate_product_price((int) $_POST['product_id'], $variations, 'stay', $extras), 2) . "\";\n"; //exit(print_r($extras,1)); exit(" "); } // if(($_POST['redisplay_variation_values'] == "true")) { // $variation_processor = new nzshpcrt_variations(); // $variations_selected = array_values(array_unique(array_merge((array)$_POST['new_variation_id'], (array)$_POST['variation_id']))); // foreach($variations_selected as $variation_id) { // // cast everything to integer to make sure nothing nasty gets in. // $variation_list[] = (int)$variation_id; // } // echo $variation_processor->variations_add_grid_view((array)$variation_list); // //echo "/*\n\r".print_r(array_values(array_unique($_POST['variation_id'])),true)."\n\r*/"; // exit(); // } // /* * function for handling the checkout billing address */ if (preg_match("/[a-zA-Z]{2,4}/", $_POST['billing_country'])) { if ($_SESSION['selected_country'] == $_POST['billing_country']) { $do_not_refresh_regions = true; } else { $do_not_refresh_regions = false; $_SESSION['selected_country'] = $_POST['billing_country']; } if (is_numeric($_POST['form_id'])) { $form_id = $_POST['form_id']; $html_form_id = "region_country_form_{$form_id}"; } else { $html_form_id = 'region_country_form'; } if (is_numeric($_POST['billing_region'])) { $_SESSION['selected_region'] = $_POST['billing_region']; } $cart =& $_SESSION['nzshpcrt_cart']; if ($memberstatus[0] == '1' && count($cart) > 0) { echo "\n\r"; } else { if ($status[0] == '1') { exit; } echo "if(document.getElementById('shoppingcartcontents') != null)\n\t\t\t\t\t {\n\t\t\t\t\t document.getElementById('shoppingcartcontents').innerHTML = \"" . str_replace(array("\n", "\r"), "", addslashes(nzshpcrt_shopping_basket_internals($cart, $quantity_limit))) . "\";\n\t\t\t\t\t }\n\r"; if ($do_not_refresh_regions == false) { $region_list = $wpdb->get_results("SELECT `" . WPSC_TABLE_REGION_TAX . "`.* FROM `" . WPSC_TABLE_REGION_TAX . "`, `" . WPSC_TABLE_CURRENCY_LIST . "` WHERE `" . WPSC_TABLE_CURRENCY_LIST . "`.`isocode` IN('" . $_POST['billing_country'] . "') AND `" . WPSC_TABLE_CURRENCY_LIST . "`.`id` = `" . WPSC_TABLE_REGION_TAX . "`.`country_id`", ARRAY_A); if ($region_list != null) { $output .= "<select name='collected_data[" . $form_id . "][1]' class='current_region' onchange='set_billing_country(\\\"{$html_form_id}\\\", \\\"{$form_id}\\\");'>"; //$output .= "<option value=''>None</option>"; foreach ($region_list as $region) { if ($_SESSION['selected_region'] == $region['id']) { $selected = "selected='true'"; } else { $selected = ""; } $output .= "<option value='" . $region['id'] . "' {$selected}>" . $region['name'] . "</option>"; } $output .= "</select>"; echo "if(document.getElementById('region_select_{$form_id}') != null)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdocument.getElementById('region_select_{$form_id}').innerHTML = \"" . $output . "\";\n\t\t\t\t\t\t\t}\n\r"; } else { echo "if(document.getElementById('region_select_{$form_id}') != null)\n\t\t\t\t\t\t{\n\t\t\t\t\t\tdocument.getElementById('region_select_{$form_id}').innerHTML = \"\";\n\t\t\t\t\t\t}\n\r"; } } } if ($_POST['changetax'] == "true") { if (isset($_POST['billing_region'])) { $billing_region = $_POST['billing_region']; } else { $billing_region = $_SESSION['selected_region']; } $billing_country = $_POST['billing_country']; $price = 0; $tax = 0; foreach ((array) $cart as $cart_item) { $product_id = $cart_item->product_id; $quantity = $cart_item->quantity; //echo("<pre>".print_r($cart_item->product_variations,true)."</pre>"); $product = $wpdb->get_row("SELECT * FROM `" . WPSC_TABLE_PRODUCT_LIST . "` WHERE `id` = '{$product_id}' LIMIT 1", ARRAY_A); if ($product['donation'] == 1) { $price += $quantity * $cart_item->donation_price; } else { $product_price = $quantity * calculate_product_price($product_id, $cart_item->product_variations); if ($product['notax'] != 1) { $tax += nzshpcrt_calculate_tax($product_price, $billing_country, $billing_region) - $product_price; } $price += $product_price; $all_donations = false; } if ($_SESSION['delivery_country'] != null) { $total_shipping += nzshpcrt_determine_item_shipping($product['id'], $quantity, $_SESSION['delivery_country']); } } $total_shipping += nzshpcrt_determine_base_shipping(0, $_SESSION['delivery_country']); $total = number_format($tax + $price + $total_shipping, 2); if ($tax > 0) { echo "jQuery(\"tr.total_tax td\").show();\n\r"; } else { echo "jQuery(\"tr.total_tax td\").hide();\n\r"; } $tax = number_format($tax, 2); echo "jQuery('#checkout_tax').html(\"<span class='pricedisplay'>\${$tax}</span>\");\n\r"; echo "jQuery('#checkout_total').html(\"<span class='pricedisplay'>\${$total}</span><input id='shopping_cart_total_price' type='hidden' value='\${$total}'>\");\n\r"; } exit; } if ($_POST['get_country_tax'] == "true" && preg_match("/[a-zA-Z]{2,4}/", $_POST['country_id'])) { $country_id = $_POST['country_id']; $region_list = $wpdb->get_results("SELECT `" . WPSC_TABLE_REGION_TAX . "`.* FROM `" . WPSC_TABLE_REGION_TAX . "`, `" . WPSC_TABLE_CURRENCY_LIST . "` WHERE `" . WPSC_TABLE_CURRENCY_LIST . "`.`isocode` IN('" . $country_id . "') AND `" . WPSC_TABLE_CURRENCY_LIST . "`.`id` = `" . WPSC_TABLE_REGION_TAX . "`.`country_id`", ARRAY_A); if ($region_list != null) { echo "<select name='base_region'>\n\r"; foreach ($region_list as $region) { if (get_option('base_region') == $region['id']) { $selected = "selected='true'"; } else { $selected = ""; } echo "<option value='" . $region['id'] . "' {$selected}>" . $region['name'] . "</option>\n\r"; } echo "</select>\n\r"; } else { echo " "; } exit; } /* fill product form */ if ($_POST['set_slider'] == "true" && is_numeric($_POST['state'])) { $_SESSION['slider_state'] = $_POST['state']; exit; } /* fill category form */ if ($_GET['action'] == "register") { $siteurl = get_option('siteurl'); require_once ABSPATH . WPINC . '/registration-functions.php'; if ($_POST['action'] == 'register' && get_settings('users_can_register')) { //exit("fail for testing purposes"); $user_login = sanitize_user($_POST['user_login']); $user_email = $_POST['user_email']; $errors = array(); if ($user_login == '') { exit($errors['user_login'] = __('<strong>ERROR</strong>: Please enter a username.')); } /* checking e-mail address */ if ($user_email == '') { exit(__('<strong>ERROR</strong>: Please type your e-mail address.')); } else { if (!is_email($user_email)) { exit(__('<strong>ERROR</strong>: The email address isn’t correct.')); $user_email = ''; } } if (!validate_username($user_login)) { $errors['user_login'] = __('<strong>ERROR</strong>: This username is invalid. Please enter a valid username.'); $user_login = ''; } if (username_exists($user_login)) { exit(__('<strong>ERROR</strong>: This username is already registered, please choose another one.')); } /* checking the email isn't already used by another user */ $email_exists = $wpdb->get_row("SELECT user_email FROM {$wpdb->users} WHERE user_email = '{$user_email}'"); if ($email_exists) { die(__('<strong>ERROR</strong>: This email address is already registered, please supply another.')); } if (0 == count($errors)) { $password = substr(md5(uniqid(microtime())), 0, 7); //xit('there?'); $user_id = wp_create_user($user_login, $password, $user_email); if (!$user_id) { exit(sprintf(__('<strong>ERROR</strong>: Couldn’t register you... please contact the <a href="mailto:%s">webmaster</a> !'), get_settings('admin_email'))); } else { wp_new_user_notification($user_id, $password); ?> <div id="login"> <h2><?php _e('Registration Complete'); ?> </h2> <p><?php printf(__('Username: %s'), "<strong>" . wp_specialchars($user_login) . "</strong>"); ?> <br /> <?php printf(__('Password: %s'), '<strong>' . __('emailed to you') . '</strong>'); ?> <br /> <?php printf(__('E-mail: %s'), "<strong>" . wp_specialchars($user_email) . "</strong>"); ?> </p> </div> <?php } } } else { // onsubmit='submit_register_form(this);return false;' echo "<div id='login'>\n <h2>Register for this blog</h2>\n <form id='registerform' action='index.php?ajax=true&action=register' onsubmit='submit_register_form(this);return false;' method='post'>\n <p><input type='hidden' value='register' name='action'/>\n <label for='user_login'>Username:</label><br/> <input type='text' value='' maxlength='20' size='20' id='user_login' name='user_login'/><br/></p>\n <p><label for='user_email'>E-mail:</label><br/> <input type='text' value='' maxlength='100' size='25' id='user_email' name='user_email'/></p>\n <p>A password will be emailed to you.</p>\n <p class='submit'><input type='submit' name='submit_form' id='submit' value='" . TXT_WPSC_REGISTER . " »'/><img id='register_loading_img' src='" . WPSC_URL . "/images/loading.gif' alt='' title=''></p>\n\n \n </form>\n </div>"; } exit; } } /* * AJAX stuff stops here, I would put an exit here, but it may screw up other plugins //exit(); */ }
function wpsc_display_purchlog_details() { while (wpsc_have_purchaselog_details()) { wpsc_the_purchaselog_item(); ?> <tr> <td><?php echo wpsc_purchaselog_details_name(); ?> </td> <!-- NAME --> <td><?php echo wpsc_purchaselog_details_SKU(); ?> </td> <!-- SKU --> <td><?php echo wpsc_purchaselog_details_quantity(); ?> </td> <!-- QUANTITY--> <td><?php echo nzshpcrt_currency_display(wpsc_purchaselog_details_price(), true); ?> </td> <!-- PRICE --> <td><?php echo nzshpcrt_currency_display(wpsc_purchaselog_details_tax(), true); ?> </td> <!-- TAX --> <?php /* <td><?php echo nzshpcrt_currency_display(wpsc_purchaselog_details_discount(),true); ?></td> <!-- DISCOUNT --> */ ?> <td><?php echo nzshpcrt_currency_display(wpsc_purchaselog_details_total(), true); ?> </td> <!-- TOTAL --> </tr> <?php } }
echo "<tr >"; echo " <td>"; echo " </td>"; echo " <td>"; echo " </td>"; echo " <td>"; echo " </td>"; echo " <td>"; echo "<strong>" . TXT_WPSC_TOTALSHIPPING . ":</strong><br />"; echo "<strong>" . TXT_WPSC_FINALTOTAL . ":</strong>"; echo " </td>"; echo " <td>"; $total_shipping = nzshpcrt_determine_base_shipping($total_shipping, $shipping_country); $endtotal += $total_shipping; echo nzshpcrt_currency_display($total_shipping, 1) . "<br />"; echo nzshpcrt_currency_display($endtotal, 1); echo " </td>"; echo '</tr>'; echo "</table>"; echo "<br />"; echo "<strong>" . TXT_WPSC_CUSTOMERDETAILS . "</strong>"; echo "<table>"; $form_sql = "SELECT * FROM `" . $wpdb->prefix . "submited_form_data` WHERE `log_id` = '" . $purchase['id'] . "'"; $input_data = $wpdb->get_results($form_sql, ARRAY_A); //exit("<pre>".print_r($input_data,true)."</pre>"); if ($input_data != null) { foreach ((array) $input_data as $form_field) { $form_sql = "SELECT * FROM `" . $wpdb->prefix . "collect_data_forms` WHERE `active` = '1' AND `id` = '" . $form_field['form_id'] . "' LIMIT 1"; $form_data = $wpdb->get_results($form_sql, ARRAY_A); if ($form_data != null) { $form_data = $form_data[0];
echo nzshpcrt_currency_display(admin_display_total_price($start_timestamp, $end_timestamp), 1); echo " " . TXT_WPSC_ACCEPTED_PAYMENTS; ?> </p> </div> <div class='order_summary_subsection'> <strong><?php echo TXT_WPSC_TOTAL_INCOME; ?> </strong> <p id='log_total_absolute'> <?php //$total_income = $wpdb->get_results($sql,ARRAY_A); echo nzshpcrt_currency_display(admin_display_total_price(), 1); ?> </p> </div> <div class='order_summary_subsection'> <strong><?php echo TXT_WPSC_RSS_FEED_HEADER; ?> </strong> <p> <a class='product_log_rss' href='index.php?rss=true&rss_key=key&action=purchase_log'><img align='absmiddle' src='<?php echo WPSC_URL; ?>
function single_product_display($product_id) { global $wpdb; $siteurl = get_option('siteurl'); if (get_option('permalink_structure') != '') { $seperator = "?"; } else { $seperator = "&"; } // what is our product? if (is_numeric($product_id)) { $product_list = $wpdb->get_results("SELECT * FROM `" . $wpdb->prefix . "product_list` WHERE `id`='" . (int) $product_id . "' LIMIT 1", ARRAY_A); } // if we have a product if ($product_list != null) { // show the breadcrumbs if (get_option("show_breadcrumbs") == '1') { $output .= "<div class='breadcrumb'>\n\r"; $output .= " <a href='" . get_option('siteurl') . "'>" . get_option('blogname') . "</a> » "; $category = $wpdb->get_var("SELECT category_id FROM {$wpdb->prefix}item_category_associations WHERE product_id='" . $product_id . "' ORDER BY id ASC LIMIT 1"); $category_info = $wpdb->get_results("SELECT * FROM {$wpdb->prefix}product_categories WHERE id='" . $category . "'", ARRAY_A); $category_name = $wpdb->get_var("SELECT name FROM {$wpdb->prefix}product_categories WHERE id='" . $category . "'"); while ($category_info[0]['category_parent'] != 0) { $category_info = $wpdb->get_results("SELECT * FROM {$wpdb->prefix}product_categories WHERE id='" . $category_info[0]['category_parent'] . "'", ARRAY_A); $output .= "<a href='" . wpsc_category_url($category_info[0]['id']) . "'>" . $category_info[0]['name'] . "</a> » "; } $output .= "<a href='" . wpsc_category_url($category) . "'>" . $category_name . "</a> » "; $output .= $product_list[0]['name'] . "\n\r"; $output .= "</div>\n\r"; } $output .= " <div class='productdisplay'>\n\r"; foreach ((array) $product_list as $product) { $num++; $output .= " <div class='single_product_display product_view_{$product['id']} '>\n\r"; $output .= " <div class='textcol'>\n\r"; // display the image $output .= " <div class='imagecol'>\n\r"; if (get_option('show_thumbnails') == 1) { if ($product['image'] != null) { if ($product['thumbnail_image'] != null) { $image_file_name = $product['thumbnail_image']; } else { $image_file_name = $product['image']; } $output .= "<a href='" . WPSC_IMAGE_URL . $product['image'] . "' class='thickbox preview_link' rel='" . str_replace(" ", "_", $product['name']) . "'>\n\r"; $src = WPSC_IMAGE_URL . $product['image']; if (get_option('single_view_image_width') >= 1 && get_option('single_view_image_height') >= 1) { $output .= "<img src='index.php?productid=" . $product['id'] . "&width=" . get_option('single_view_image_width') . "&height=" . get_option('single_view_image_height') . "' title='" . $product['name'] . "' alt='" . $product['name'] . "' id='product_image_" . $product['id'] . "' class='product_image'/>\n\r"; } else { $output .= "<img src='" . WPSC_THUMBNAIL_URL . $image_file_name . "' title='" . $product['name'] . "' alt='" . $product['name'] . "' id='product_image_" . $product['id'] . "' class='product_image'/>\n\r"; } $output .= "</a>\n\r"; if (function_exists("gold_shpcrt_display_extra_images")) { $output .= gold_shpcrt_display_extra_images($product['id'], $product['name']); } } else { if (get_option('product_image_width') != '') { $output .= "<img src='" . WPSC_URL . "/no-image-uploaded.gif' title='" . $product['name'] . "' alt='" . $product['name'] . "' width='" . get_option('product_image_width') . "' height='" . get_option('product_image_height') . "' />\n\r"; } else { $output .= "<img src='" . WPSC_URL . "/no-image-uploaded.gif' title='" . $product['name'] . "' alt='" . $product['name'] . "' />\n\r"; } } } $output .= " </div>\n\r"; // if the product is special, say so if ($product['special'] == 1) { $special = " <span class='special'>" . TXT_WPSC_SPECIAL . " - </span>\n\r"; } $output .= " <form id='product_" . $product['id'] . "' name='{$num}' method='post' action='" . get_option('product_list_url') . $seperator . "category=" . $_GET['category'] . "' onsubmit='submitform(this);return false;' >\n\r"; $output .= "<input type='hidden' name='prodid' value='" . $product['id'] . "' />\n\r"; $output .= " <div class='producttext'>\n\r"; $output .= " <h2 class='prodtitles'>{$special}" . stripslashes($product['name']) . "</h2>\n\r"; if (get_option('wpsc_selected_theme') == 'market3') { $soldout = 0; if ($product['quantity_limited'] && $product['quantity'] < 1) { $soldout = 1; } if ($soldout) { $output .= " <span class='soldout'>Sold out</span>\n\r"; } else { $output .= " <span class='price'>" . nzshpcrt_currency_display($product['price'], $product['notax']) . "</span>\n\r"; } } ob_start(); do_action('wpsc_product_addons', $product['id']); $output .= ob_get_contents(); ob_end_clean(); if (is_numeric($product['file']) && $product['file'] > 0) { $file_data = $wpdb->get_row("SELECT * FROM `" . $wpdb->prefix . "product_files` WHERE `id`='" . $product['file'] . "' LIMIT 1", ARRAY_A); if ($file_data != null && function_exists('listen_button')) { $output .= listen_button($file_data['idhash'], $file_data['id']); } } if ($product['description'] != '') { $output .= " <p class='description'>" . nl2br(stripslashes($product['description'])) . "</p>\n\r"; } if (get_option('wpsc_selected_theme') == 'market3') { $output .= " <br />"; } if ($product['additional_description'] != '') { $output .= " <p class='single_additional_description' >\n\r"; if (get_option('wpsc_selected_theme') == 'market3') { $output .= " <span class='additional'>Additional Details: </span>\n\r"; } $output .= nl2br(stripslashes($product['additional_description'])) . ""; $output .= " </p>\n\r"; } // print the custom fields here, if there are any $custom_fields = $wpdb->get_results("SELECT * FROM `{$wpdb->prefix}wpsc_productmeta` WHERE `product_id` IN('{$product['id']}') AND `custom` IN('1') ", ARRAY_A); if (count($custom_fields) > 0) { $output .= " <div class='custom_meta'>\n\r"; foreach ((array) $custom_fields as $custom_field) { $output .= " <strong>{$custom_field['meta_key']}:</strong> {$custom_field['meta_value']} <br />\n\r"; } $output .= " </div>\n\r"; } ob_start(); do_action('wpsc_product_addon_after_descr', $product['id']); $output .= ob_get_contents(); ob_end_clean(); if (function_exists('wpsc_akst_share_link') && get_option('wpsc_share_this') == 1) { $output .= wpsc_akst_share_link('return'); } $variations_procesor = new nzshpcrt_variations(); $variations_output = $variations_procesor->display_product_variations($product['id'], false, false, true); if ($variations_output[0] != '') { //will always be set, may sometimes be an empty string $output .= " <p class='wpsc_variation_forms'>" . $variations_output[0] . "</p>"; } if ($variations_output[1] !== null) { $product['price'] = $variations_output[1]; } if (get_option('wpsc_selected_theme') != 'market3') { $output .= " <p class='wpsc_product_price'>"; if ($product['donation'] == 1) { $currency_sign_location = get_option('currency_sign_location'); $currency_type = get_option('currency_type'); $currency_symbol = $wpdb->get_var("SELECT `symbol_html` FROM `" . $wpdb->prefix . "currency_list` WHERE `id`='" . $currency_type . "' LIMIT 1"); $output .= " <label for='donation_price_" . $product['id'] . "'>" . TXT_WPSC_DONATION . ":</label> {$currency_symbol}<input type='text' id='donation_price_" . $product['id'] . "' name='donation_price' value='" . number_format($product['price'], 2) . "' size='6' /><br />"; } else { if (get_option('wpsc_selected_theme') != 'market3') { if ($product['special'] == 1 && $variations_output[1] === null) { $output .= "<span class='oldprice'>" . TXT_WPSC_PRICE . ": " . nzshpcrt_currency_display($product['price'], $product['notax']) . "</span><br />"; $output .= TXT_WPSC_PRICE . ": " . nzshpcrt_currency_display($product['price'] - $product['special_price'], $product['notax'], false, $product['id']) . "<br />"; } else { $output .= TXT_WPSC_PRICE . ": <span id='product_price_" . $product['id'] . "'>" . nzshpcrt_currency_display($product['price'], $product['notax']) . "</span><br />"; } // if(get_option('display_pnp') == 1) { // $output .= TXT_WPSC_PNP.": " . nzshpcrt_currency_display($product['pnp'], 1) . "<br />"; // } } } $output .= "</p>\n\r"; } if (function_exists('wpsc_theme_html')) { $wpsc_theme = wpsc_theme_html($product); } $output .= "<input type='hidden' name='item' value='" . $product['id'] . "' />"; //AND (`quantity_limited` = '1' AND `quantity` > '0' OR `quantity_limited` = '0' ) if ($product['quantity_limited'] == 1 && $product['quantity'] < 1 && $variations_output[1] === null) { if (get_option("wpsc_selected_theme") != 'market3') { $output .= "<p class='soldout'>" . TXT_WPSC_PRODUCTSOLDOUT . "</p>"; } } else { if (get_option('hide_addtocart_button') != 1 && get_option('addtocart_or_buynow') == 0) { if (isset($wpsc_theme) && is_array($wpsc_theme) && $wpsc_theme['html'] != '') { $output .= $wpsc_theme['html']; } else { $output .= "<input type='submit' id='product_" . $product['id'] . "_submit_button' class='wpsc_buy_button' name='Buy' value='" . TXT_WPSC_ADDTOCART . "' />"; } } } if (function_exists('gold_shpcrt_display_gallery')) { $output .= gold_shpcrt_display_gallery($product['id']); } if (get_option('product_ratings') == 1) { $output .= "<div class='product_footer'>"; $output .= "<div class='product_average_vote'>"; $output .= "<strong>" . TXT_WPSC_AVGCUSTREVIEW . ":</strong>"; $output .= nzshpcrt_product_rating($product['id']); $output .= "</div>"; $output .= "<div class='product_user_vote'>"; $vote_output = nzshpcrt_product_vote($product['id'], "onmouseover='hide_save_indicator(\"saved_" . $product['id'] . "_text\");'"); if ($vote_output[1] == 'voted') { $output .= "<strong><span id='rating_" . $product['id'] . "_text'>" . TXT_WPSC_YOURRATING . ":</span>"; $output .= "<span class='rating_saved' id='saved_" . $product['id'] . "_text'> " . TXT_WPSC_RATING_SAVED . "</span>"; $output .= "</strong>"; } else { if ($vote_output[1] == 'voting') { $output .= "<strong><span id='rating_" . $product['id'] . "_text'>" . TXT_WPSC_RATETHISITEM . ":</span>"; $output .= "<span class='rating_saved' id='saved_" . $product['id'] . "_text'> " . TXT_WPSC_RATING_SAVED . "</span>"; $output .= "</strong>"; } } $output .= $vote_output[0]; $output .= "</div>"; $output .= "</div>"; } $output .= " </div>\n\r"; $output .= " </form>\n\r"; if (count($updatelink_data) > 0 && $updatelink_data[0]['meta_value'] != '') { $output .= external_link($product['id']); } else { if (get_option('addtocart_or_buynow') == '1') { if (get_option('payment_gateway') == 'google') { $output .= google_buynow($product['id']); } else { if (get_option('payment_gateway') == 'paypal_multiple') { $output .= "<form onsubmit='log_paypal_buynow(this)' target='paypal' action='" . get_option('paypal_multiple_url') . "' method='post'>\n\t\t\t\t\t\t\t<input type='hidden' name='business' value='" . get_option('paypal_multiple_business') . "'>\n\t\t\t\t\t\t\t<input type='hidden' name='cmd' value='_xclick'>\n\t\t\t\t\t\t\t<input type='hidden' name='item_name' value='" . $product['name'] . "'>\n\t\t\t\t\t\t\t<input type='hidden' id='item_number' name='item_number' value='" . $product['id'] . "'>\n\t\t\t\t\t\t\t<input type='hidden' id='amount' name='amount' value='" . $product['price'] . "'>\n\t\t\t\t\t\t\t<input type='hidden' id='unit' name='unit' value='" . $product['price'] . "'>\n\t\t\t\t\t\t\t<input type='hidden' id='shipping' name='ship11' value='" . $shipping . "'>\n\t\t\t\t\t\t\t<input type='hidden' name='handling' value='" . get_option('base_local_shipping') . "'>\n\t\t\t\t\t\t\t<input type='hidden' name='currency_code' value='" . get_option('paypal_curcode') . "'>\n\t\t\t\t\t\t\t<input type='hidden' name='undefined_quantity' value='0'>\n\t\t\t\t\t\t\t<input type='image' name='submit' border='0' src='https://www.paypal.com/en_US/i/btn/btn_buynow_LG.gif' alt='PayPal - The safer, easier way to pay online'>\n\t\t\t\t\t\t\t<img alt='' border='0' width='1' height='1' src='https://www.paypal.com/en_US/i/scr/pixel.gif' >\n\t\t\t\t\t\t</form>\n\t\t\t\t\t"; } } } } $output .= " <form id='product_extra_" . $product['id'] . "' name='product_" . $product['id'] . "' method='post' action='" . get_option('product_list_url') . $seperator . "category=" . $_GET['category'] . "' onsubmit='submitform(this);return false;' >\n\r"; $output .= " <input type='hidden' name='prodid' value='" . $product['id'] . "' />\n\r"; $output .= " <input type='hidden' name='item' value='" . $product['id'] . "' />\n\r"; $output .= " </form>\n\r"; $output .= " </div>\n\r"; $output .= " </div>\n\r"; $output .= " <div class='clear'></div>\n\r"; } $output .= wpsc_also_bought($product_id); $output .= " </div>"; } else { // otherwise, we have no product $output .= "<p>" . TXT_WPSC_NOITEMSINTHIS . " " . $group_type . ".</p>"; } // replace dollar signs with the HTML code so that PHP doesn't try to interpret them as variables. $output = str_replace('$', '$', $output); return $output; }
function wpsc_admin_latest_activity() { global $wpdb; $totalOrders = $wpdb->get_var("SELECT COUNT(*) FROM `" . WPSC_TABLE_PURCHASE_LOGS . "`"); /* * This is the right hand side for the past 30 days revenue on the wp dashboard */ echo "<div id='leftDashboard'>"; echo "<strong class='dashboardHeading'>" . __('Last 30 Days', 'wpsc') . "</strong><br />"; echo "<p class='dashboardWidgetSpecial'>"; // calculates total amount of orders for the month $year = date("Y"); $month = date("m"); $start_timestamp = mktime(0, 0, 0, $month, 1, $year); $end_timestamp = mktime(0, 0, 0, $month + 1, 0, $year); $sql = "SELECT COUNT(*) FROM `" . WPSC_TABLE_PURCHASE_LOGS . "` WHERE `date` BETWEEN '{$start_timestamp}' AND '{$end_timestamp}' AND `processed` IN (2,3,4) ORDER BY `date` DESC"; $currentMonthOrders = $wpdb->get_var($sql); //calculates amount of money made for the month $currentMonthsSales = nzshpcrt_currency_display(admin_display_total_price($start_timestamp, $end_timestamp), 1); echo $currentMonthsSales; echo "<span class='dashboardWidget'>" . __('Sales', 'wpsc') . "</span>"; echo "</p>"; echo "<p class='dashboardWidgetSpecial'>"; echo "<span class='pricedisplay'>"; echo $currentMonthOrders; echo "</span>"; echo "<span class='dashboardWidget'>" . __('Orders', 'wpsc') . "</span>"; echo "</p>"; echo "<p class='dashboardWidgetSpecial'>"; //echo "<span class='pricedisplay'>"; //calculates average sales amount per order for the month if ($currentMonthOrders > 0) { $monthsAverage = (int) admin_display_total_price($start_timestamp, $end_timestamp) / (int) $currentMonthOrders; echo nzshpcrt_currency_display($monthsAverage, 1); } //echo "</span>"; echo "<span class='dashboardWidget'>" . __('Avg Orders', 'wpsc') . "</span>"; echo "</p>"; echo "</div>"; /* *This is the left side for the total life time revenue on the wp dashboard */ echo "<div id='rightDashboard' >"; echo "<strong class='dashboardHeading'>" . __('Life Time', 'wpsc') . "</strong><br />"; echo "<p class='dashboardWidgetSpecial'>"; echo nzshpcrt_currency_display(admin_display_total_price(), 1); echo "<span class='dashboardWidget'>" . __('Sales', 'wpsc') . "</span>"; echo "</p>"; echo "<p class='dashboardWidgetSpecial'>"; echo "<span class='pricedisplay'>"; echo $totalOrders; echo "</span>"; echo "<span class='dashboardWidget'>" . __('Orders', 'wpsc') . "</span>"; echo "</p>"; echo "<p class='dashboardWidgetSpecial'>"; //echo "<span class='pricedisplay'>"; //calculates average sales amount per order for the month if (admin_display_total_price() > 0 && $totalOrders > 0) { $totalAverage = (int) admin_display_total_price() / (int) $totalOrders; } else { $totalAverage = 0; } echo nzshpcrt_currency_display($totalAverage, 1); //echo "</span>"; echo "<span class='dashboardWidget'>" . __('Avg Orders', 'wpsc') . "</span>"; echo "</p>"; echo "</div>"; echo "<div style='clear:both'></div>"; }
/** * Purchase log ajax code starts here */ function wpsc_purchlog_resend_email() { global $wpdb; $siteurl = get_option('siteurl'); $log_id = $_GET['email_buyer_id']; if (is_numeric($log_id)) { $selectsql = "SELECT * FROM `" . WPSC_TABLE_PURCHASE_LOGS . "` WHERE `id`= " . $log_id . " LIMIT 1"; $purchase_log = $wpdb->get_row($selectsql, ARRAY_A); if ($purchase_log['gateway'] == "testmode" && $purchase_log['processed'] < 2) { $message = get_option("wpsc_email_receipt"); $message_html = "<h2 style='font-size:16px;font-weight:bold;color:#000;border:0px;padding-top: 0px;' >" . TXT_WPSC_YOUR_ORDER . "</h2>"; } else { $message = get_option("wpsc_email_receipt"); $message_html = $message; } $order_url = $siteurl . "/wp-admin/admin.php?page=" . WPSC_DIR_NAME . "/display-log.php&purchcaseid=" . $purchase_log['id']; $cartsql = "SELECT * FROM `" . WPSC_TABLE_CART_CONTENTS . "` WHERE `purchaseid`=" . $purchase_log['id'] . ""; $cart = $wpdb->get_results($cartsql, ARRAY_A); if ($purchase_log['shipping_country'] != '') { $billing_country = $purchase_log['billing_country']; $shipping_country = $purchase_log['shipping_country']; } else { $country = $wpdb->get_results("SELECT * FROM `" . WPSC_TABLE_SUBMITED_FORM_DATA . "` WHERE `log_id`=" . $purchase_log['id'] . " AND `form_id` = '" . get_option('country_form_field') . "' LIMIT 1", ARRAY_A); $billing_country = $country[0]['value']; $shipping_country = $country[0]['value']; } $email_form_field = $wpdb->get_results("SELECT `id`,`type` FROM `" . WPSC_TABLE_CHECKOUT_FORMS . "` WHERE `type` IN ('email') AND `active` = '1' ORDER BY `order` ASC LIMIT 1", ARRAY_A); $email_address = $wpdb->get_results("SELECT * FROM `" . WPSC_TABLE_SUBMITED_FORM_DATA . "` WHERE `log_id`=" . $purchase_log['id'] . " AND `form_id` = '" . $email_form_field[0]['id'] . "' LIMIT 1", ARRAY_A); $email = $email_address[0]['value']; $previous_download_ids = array(0); if ($cart != null) { foreach ($cart as $row) { $link = ""; $productsql = "SELECT * FROM `" . WPSC_TABLE_PRODUCT_LIST . "` WHERE `id`=" . $row['prodid'] . ""; $product_data = $wpdb->get_results($productsql, ARRAY_A); if ($product_data[0]['file'] > 0) { if ($purchase_log['email_sent'] != 1) { $wpdb->query("UPDATE `" . WPSC_TABLE_DOWNLOAD_STATUS . "` SET `active`='1' WHERE `fileid`='" . $product_data[0]['file'] . "' AND `purchid` = '" . $purchase_log['id'] . "' LIMIT 1"); } if ($purchase_log['processed'] >= 2) { $download_data = $wpdb->get_row("SELECT * FROM `" . WPSC_TABLE_DOWNLOAD_STATUS . "` WHERE `fileid`='" . $product_data[0]['file'] . "' AND `purchid`='" . $purchase_log['id'] . "' AND (`cartid` = '" . $row['id'] . "' OR `cartid` IS NULL) AND `id` NOT IN (" . make_csv($previous_download_ids) . ") LIMIT 1", ARRAY_A); if ($download_data != null) { if ($download_data['uniqueid'] == null) { // if the uniqueid is not equal to null, its "valid", regardless of what it is $link = $siteurl . "?downloadid=" . $download_data['id']; } else { $link = $siteurl . "?downloadid=" . $download_data['uniqueid']; } } $previous_download_ids[] = $download_data['id']; $order_status = 4; } } do_action('wpsc_confirm_checkout', $purchase_log['id']); $shipping = nzshpcrt_determine_item_shipping($row['prodid'], $row['quantity'], $shipping_country); if (isset($_SESSION['quote_shipping'])) { $shipping = $_SESSION['quote_shipping']; } $total_shipping += $shipping; if ($product_data[0]['special'] == 1) { $price_modifier = $product_data[0]['special_price']; } else { $price_modifier = 0; } $total += $row['price'] * $row['quantity']; $message_price = nzshpcrt_currency_display($row['price'] * $row['quantity'], $product_data[0]['notax'], true); $shipping_price = nzshpcrt_currency_display($shipping, 1, true); $variation_sql = "SELECT * FROM `" . WPSC_TABLE_CART_ITEM_VARIATIONS . "` WHERE `cart_id`='" . $row['id'] . "'"; $variation_data = $wpdb->get_results($variation_sql, ARRAY_A); $variation_count = count($variation_data); if ($variation_count > 1) { $variation_list = " ("; if ($purchase['gateway'] != 'testmode') { if ($gateway['internalname'] == $purch_data[0]['gateway']) { $gateway_name = $gateway['name']; } } else { $gateway_name = "Manual Payment"; } $i = 0; foreach ($variation_data as $variation) { if ($i > 0) { $variation_list .= ", "; } $value_id = $variation['value_id']; $value_data = $wpdb->get_results("SELECT * FROM `" . WPSC_TABLE_VARIATION_VALUES . "` WHERE `id`='" . $value_id . "' LIMIT 1", ARRAY_A); $variation_list .= $value_data[0]['name']; $i++; } $variation_list .= ")"; } else { if ($variation_count == 1) { $value_id = $variation_data[0]['value_id']; $value_data = $wpdb->get_results("SELECT * FROM `" . WPSC_TABLE_VARIATION_VALUES . "` WHERE `id`='" . $value_id . "' LIMIT 1", ARRAY_A); $variation_list = " (" . $value_data[0]['name'] . ")"; } else { $variation_list = ''; } } if ($link != '') { $product_list .= " - " . $product_data['name'] . stripslashes($variation_list) . " " . $message_price . " " . TXT_WPSC_CLICKTODOWNLOAD . ":\n {$link}\n"; $product_list_html .= " - " . $product_data['name'] . stripslashes($variation_list) . " " . $message_price . " <a href='{$link}'>" . TXT_WPSC_CLICKTODOWNLOAD . "</a>\n"; } else { $plural = ''; if ($row['quantity'] > 1) { $plural = "s"; } $product_list .= " - " . $row['quantity'] . " " . $product_data[0]['name'] . $variation_list . " " . $message_price . "\n"; if ($shipping > 0) { $product_list .= " - " . TXT_WPSC_SHIPPING . ":" . $shipping_price . "\n\r"; } $product_list_html .= " - " . $row['quantity'] . " " . $product_data[0]['name'] . $variation_list . " " . $message_price . "\n"; if ($shipping > 0) { $product_list_html .= " - " . TXT_WPSC_SHIPPING . ":" . $shipping_price . "\n\r"; } } $report .= " - " . $product_data[0]['name'] . $variation_list . " " . $message_price . "\n"; } if ($purchase_log['discount_data'] != '') { $coupon_data = $wpdb->get_row("SELECT * FROM `" . WPSC_TABLE_COUPON_CODES . "` WHERE coupon_code='" . $wpdb->escape($purchase_log['discount_data']) . "' LIMIT 1", ARRAY_A); if ($coupon_data['use-once'] == 1) { $wpdb->query("UPDATE `" . WPSC_TABLE_COUPON_CODES . "` SET `active`='0', `is-used`='1' WHERE `id`='" . $coupon_data['id'] . "' LIMIT 1"); } } //$wpdb->query("UPDATE `".WPSC_TABLE_DOWNLOAD_STATUS."` SET `active`='1' WHERE `fileid`='".$product_data[0]['file']."' AND `purchid` = '".$purchase_log['id']."' LIMIT 1"); $total_shipping += $purchase_log['base_shipping']; $total = $total + $total_shipping - $purchase_log['discount_value']; // $message.= "\n\r"; $product_list .= "Your Purchase No.: " . $purchase_log['id'] . "\n\r"; if ($purchase_log['discount_value'] > 0) { $discount_email .= TXT_WPSC_DISCOUNT . ": " . nzshpcrt_currency_display($purchase_log['discount_value'], 1, true) . "\n\r"; } $total_shipping_email .= TXT_WPSC_TOTALSHIPPING . ": " . nzshpcrt_currency_display($total_shipping, 1, true) . "\n\r"; $total_price_email .= TXT_WPSC_TOTAL . ": " . nzshpcrt_currency_display($total, 1, true) . "\n\r"; $product_list_html .= "Your Purchase No.: " . $purchase_log['id'] . "\n\n\r"; if ($purchase_log['discount_value'] > 0) { $discount_html .= TXT_WPSC_DISCOUNT . ": " . nzshpcrt_currency_display($purchase_log['discount_value'], 1, true) . "\n\r"; } $total_shipping_html .= TXT_WPSC_TOTALSHIPPING . ": " . nzshpcrt_currency_display($total_shipping, 1, true) . "\n\r"; $total_price_html .= TXT_WPSC_TOTAL . ": " . nzshpcrt_currency_display($total, 1, true) . "\n\r"; if (isset($_GET['ti'])) { $message .= "\n\r" . TXT_WPSC_YOURTRANSACTIONID . ": " . $_GET['ti']; $message_html .= "\n\r" . TXT_WPSC_YOURTRANSACTIONID . ": " . $_GET['ti']; $report .= "\n\r" . TXT_WPSC_TRANSACTIONID . ": " . $_GET['ti']; } else { $report_id = "Purchase No.: " . $purchase_log['id'] . "\n\r"; } $message = str_replace('%product_list%', $product_list, $message); $message = str_replace('%total_shipping%', $total_shipping_email, $message); $message = str_replace('%total_price%', $total_price_email, $message); //$message = str_replace('%order_status%',get_option('blogname'),$message); $message = str_replace('%shop_name%', get_option('blogname'), $message); $report = str_replace('%product_list%', $report_product_list, $report); $report = str_replace('%total_shipping%', $total_shipping_email, $report); $report = str_replace('%total_price%', $total_price_email, $report); $report = str_replace('%shop_name%', get_option('blogname'), $report); $message_html = str_replace('%product_list%', $product_list_html, $message_html); $message_html = str_replace('%total_shipping%', $total_shipping_html, $message_html); $message_html = str_replace('%total_price%', $total_price_email, $message_html); $message_html = str_replace('%shop_name%', get_option('blogname'), $message_html); // exit($message_html); if ($email != '') { add_filter('wp_mail_from', 'wpsc_replace_reply_address', 0); add_filter('wp_mail_from_name', 'wpsc_replace_reply_name', 0); if ($purchase_log['processed'] < 2) { $payment_instructions = strip_tags(get_option('payment_instructions')); $message = TXT_WPSC_ORDER_PENDING . "\n\r" . $payment_instructions . "\n\r" . $message; $resent = (bool) wp_mail($email, TXT_WPSC_ORDER_PENDING_PAYMENT_REQUIRED, $message); $sent = 1; } else { $resent = (bool) wp_mail($email, TXT_WPSC_PURCHASERECEIPT, $message); $sent = 1; } //echo "$message<br />"; //exit($email); remove_filter('wp_mail_from_name', 'wpsc_replace_reply_name'); remove_filter('wp_mail_from', 'wpsc_replace_reply_address'); } } } $sendback = wp_get_referer(); if (isset($sent)) { $sendback = add_query_arg('sent', $sent, $sendback); } wp_redirect($sendback); exit; }
/** * update_product_page_price function, used through ajax with variations * No parameters, returns nothing */ function wpsc_update_product_price() { global $wpdb, $wpsc_cart; foreach ((array) $_POST['variation'] as $variation) { if (is_numeric($variation)) { $variations[] = (int) $variation; } } $pm = $_POST['pm']; echo "product_id=" . (int) $_POST['product_id'] . ";\n"; echo "price=\"" . nzshpcrt_currency_display(calculate_product_price((int) $_POST['product_id'], $variations, 'stay', $extras), $notax, true) . "\";\n"; echo "numeric_price=\"" . number_format(calculate_product_price((int) $_POST['product_id'], $variations, 'stay', $extras), 2) . "\";\n"; exit; }
/** * WPCandy Display Purchase Log * Modified from http://wordpress.org/extend/plugins/wp-e-commerce-user-roles-and-purchase-history/ */ function wpcandy_show_purchase_history() { global $current_user, $wpdb, $table_prefix; get_currentuserinfo(); $grand_total = 0; // Make sure the user is logged in and valid. if (is_numeric($current_user->ID) && $current_user->ID > 0) { $sql = "SELECT p.`id`, c.`name`, p.`date`, p.`totalprice`, p.`processed`, p.`sessionid` FROM `" . WPSC_TABLE_PURCHASE_LOGS . "` AS p, `" . WPSC_TABLE_CART_CONTENTS . "` AS c WHERE p.`id`=c.`purchaseid` AND `user_ID` IN ('" . $current_user->ID . "') ORDER BY `date` DESC"; // Get purchases $purchase_log = $wpdb->get_results($sql, ARRAY_A); if ($purchase_log != null) { // this user has made some purchase echo "<table>"; foreach ((array) $purchase_log as $purchase) { $sql = "SELECT * FROM `" . WPSC_TABLE_DOWNLOAD_STATUS . "` WHERE `purchid`=" . $purchase['id'] . " AND `active` IN ('1') ORDER BY `datetime` DESC"; // Get the products purchased $products = $wpdb->get_results($sql, ARRAY_A); $isOrderAccepted = $purchase['processed']; foreach ((array) $products as $product) { if ($isOrderAccepted > 1) { if ($product['uniqueid'] == null) { $links = get_option('siteurl') . "?downloadid=" . $product['id']; } else { $links = get_option('siteurl') . "?downloadid=" . $product['uniqueid']; } $download_count = $product['downloads']; } } echo '<tr>'; echo '<th>Item</th>'; echo '<th>Date</th>'; echo '<th>Price</th>'; echo '</tr>'; echo '<tr>'; echo '<td>' . $purchase['name'] . '</td>'; echo '<td>' . date("d/m/Y", $purchase['date']) . '</td>'; echo '<td>' . nzshpcrt_currency_display($purchase['totalprice'], 1, false, false, false) . '</td>'; $grand_total += $purchase['totalprice']; echo '</tr>'; } echo '<tr>'; echo "<td colspan='2'><strong>Total Spent</strong></td>"; echo '<td><strong>' . nzshpcrt_currency_display($grand_total, 1, false, false, false) . '</strong></td>'; echo '</tr>'; echo '</table>'; } else { echo 'No transactions found.'; } } else { echo 'You must be logged in to use this page.'; } }
function wpsc_also_bought($product_id) { /* * Displays products that were bought aling with the product defined by $product_id * most of it scarcely needs describing */ global $wpdb; $siteurl = get_option('siteurl'); if (get_option('wpsc_also_bought') == 0) { //returns nothing if this is off return ''; } // to be made customiseable in a future release $also_bought_limit = 3; $element_widths = 96; $image_display_height = 96; $image_display_width = 96; $also_bought = $wpdb->get_results("SELECT `" . WPSC_TABLE_PRODUCT_LIST . "`.* FROM `" . WPSC_TABLE_ALSO_BOUGHT . "`, `" . WPSC_TABLE_PRODUCT_LIST . "` WHERE `selected_product`='" . $product_id . "' AND `" . WPSC_TABLE_ALSO_BOUGHT . "`.`associated_product` = `" . WPSC_TABLE_PRODUCT_LIST . "`.`id` AND `" . WPSC_TABLE_PRODUCT_LIST . "`.`active` IN('1') AND `" . WPSC_TABLE_PRODUCT_LIST . "`.`publish` IN ('1')ORDER BY `" . WPSC_TABLE_ALSO_BOUGHT . "`.`quantity` DESC LIMIT {$also_bought_limit}", ARRAY_A); if (count($also_bought) > 0) { $output = "<h2 class='prodtitles wpsc_also_bought' >" . TXT_WPSC_ALSO_BOUGHT . "</h2>"; $output .= "<div class='wpsc_also_bought'>"; foreach ((array) $also_bought as $also_bought_data) { $output .= "<div class='wpsc_also_bought_item' style='width: " . $element_widths . "px;'>"; if (get_option('show_thumbnails') == 1) { if ($also_bought_data['image'] != null) { $output .= "<a href='" . wpsc_product_url($also_bought_data['id']) . "' class='preview_link' rel='" . str_replace(" ", "_", $also_bought_data['name']) . "'>"; $image_path = "index.php?productid=" . $also_bought_data['id'] . "&width=" . $image_display_width . "&height=" . $image_display_height . ""; $output .= "<img src='{$image_path}' id='product_image_" . $also_bought_data['id'] . "' class='product_image' style='margin-top: " . $margin_top . "px'/>"; $output .= "</a>"; } else { if (get_option('product_image_width') != '') { $output .= "<img src='" . WPSC_URL . "/images/no-image-uploaded.gif' title='" . $also_bought_data['name'] . "' alt='" . $also_bought_data['name'] . "' width='{$image_display_height}' height='{$image_display_height}' id='product_image_" . $also_bought_data['id'] . "' class='product_image' />"; } else { $output .= "<img src='" . WPSC_URL . "/images/no-image-uploaded.gif' title='" . $also_bought_data['name'] . "' alt='" . htmlentities(stripslashes($product['name']), ENT_QUOTES, 'UTF-8') . "' id='product_image_" . $also_bought_data['id'] . "' class='product_image' />"; } } } $variations_processor = new nzshpcrt_variations(); $variations_output = $variations_processor->display_product_variations($also_bought_data['id'], true, false, true); //$output .= $variations_output[0]; if ($variations_output[1] !== null) { $also_bought_data['price'] = $variations_output[1]; $also_bought_data['special_price'] = 0; } $output .= "<a class='wpsc_product_name' href='" . wpsc_product_url($also_bought_data['id']) . "'>" . $also_bought_data['name'] . "</a>"; $output .= nzshpcrt_currency_display($also_bought_data['price'] - $also_bought_data['special_price'], $also_bought_data['notax'], false, $also_bought_data['id']); //$output .= "<a href='".wpsc_product_url($also_bought_data['id'])."'>".$also_bought_data['name']."</a>"; $output .= "</div>"; } $output .= "</div>"; $output .= "<br clear='all' />"; } return $output; }
echo "<a href='#' onclick='filleditform(" . $product['id'] . ");return false;'>"; if ($product['name'] == '') { echo "(" . TXT_WPSC_NONAME . ")"; } else { echo htmlentities(stripslashes($product['name']), ENT_QUOTES, 'UTF-8'); } echo "</a>"; if (is_numeric($_GET['catid'])) { echo " </div>\n\r"; } else { echo "</td><td>"; } if (is_numeric($_GET['catid'])) { echo " <div class='pli_price'>\n\r"; } echo nzshpcrt_currency_display($product['price'], 1); if (is_numeric($_GET['catid'])) { echo " </div>\n\r"; } if (!is_numeric($_GET['catid'])) { echo " <td>\n\r"; $category_list = $wpdb->get_results("SELECT `" . $wpdb->prefix . "product_categories`.`id`,`" . $wpdb->prefix . "product_categories`.`name` FROM `" . $wpdb->prefix . "item_category_associations` , `" . $wpdb->prefix . "product_categories` WHERE `" . $wpdb->prefix . "item_category_associations`.`product_id` IN ('" . $product['id'] . "') AND `" . $wpdb->prefix . "item_category_associations`.`category_id` = `" . $wpdb->prefix . "product_categories`.`id` AND `" . $wpdb->prefix . "product_categories`.`active` IN('1')", ARRAY_A); $i = 0; foreach ((array) $category_list as $category_row) { if ($i > 0) { echo "<br />"; } echo "<a href='?page=" . $_GET['page'] . "&catid=" . $category_row['id'] . "'>" . stripslashes($category_row['name']) . "</a>"; $i++; } }