function remove_categories($category_id) { $categories = olc_get_category_tree($category_id, '', '0', '', true); $products = array(); $products_delete = array(); for ($i = 0, $n = sizeof($categories); $i < $n; $i++) { $product_ids_query = olc_db_query("SELECT products_id\n\t\t\t\t\t\t \t FROM " . TABLE_PRODUCTS_TO_CATEGORIES . "\n\t\t\t\t\t\t \t WHERE categories_id = '" . $categories[$i]['id'] . "'"); while ($product_ids = olc_db_fetch_array($product_ids_query)) { $products[$product_ids['products_id']]['categories'][] = $categories[$i]['id']; } } reset($products); while (list($key, $value) = each($products)) { $category_ids = ''; for ($i = 0, $n = sizeof($value['categories']); $i < $n; $i++) { $category_ids .= '\'' . $value['categories'][$i] . '\', '; } $category_ids = substr($category_ids, 0, -2); $check_query = olc_db_query("SELECT COUNT(*) AS total\n\t\t\t\t\t\t \t FROM " . TABLE_PRODUCTS_TO_CATEGORIES . "\n\t\t\t\t\t\t \t WHERE products_id = '" . $key . "'\n\t\t\t\t\t\t \t AND categories_id NOT IN (" . $category_ids . ")"); $check = olc_db_fetch_array($check_query); if ($check['total'] < '1') { $products_delete[$key] = $key; } } // Removing categories can be a lengthy process @olc_set_time_limit(0); for ($i = 0, $n = sizeof($categories); $i < $n; $i++) { $this->remove_category($categories[$i]['id']); } reset($products_delete); while (list($key) = each($products_delete)) { $this->remove_product($key); } }
function process($file) { @olc_set_time_limit(0); $schema = '#country=DE' . NEW_LINE . '#type=basic' . NEW_LINE . '#currency=' . $_POST['currencies'] . NEW_LINE; $schema .= 'url' . "\t" . 'title' . "\t" . 'description' . "\t" . 'price' . "\t" . 'offerid' . "\t" . 'image' . "\t" . 'category' . "\t" . 'availability' . "\t" . 'deliverycost' . NEW_LINE; $export_query = olc_db_query("SELECT\n p.products_id,\n pd.products_name,\n pd.products_description,\n p.products_model,\n p.products_shippingtime,\n p.products_image,\n p.products_price,\n p.products_status,\n p.products_discount_allowed,\n p.products_tax_class_id,\n p.products_date_added,\n m.manufacturers_name\n FROM\n " . TABLE_PRODUCTS . " p LEFT JOIN\n " . TABLE_MANUFACTURERS . " m\n ON p.manufacturers_id = m.manufacturers_id LEFT JOIN\n " . TABLE_PRODUCTS_DESCRIPTION . " pd\n ON p.products_id = pd.products_id AND\n pd.language_id = '" . SESSION_LANGUAGE_ID . "' LEFT JOIN\n " . TABLE_SPECIALS . " s\n ON p.products_id = s.products_id\n WHERE\n p.products_status = 1\n ORDER BY\n p.products_date_added DESC,\n pd.products_name"); while ($products = olc_db_fetch_array($export_query)) { $products_price = olc_get_products_price_export($products['products_id'], 1, true, $_POST['status'], 1, $_POST['currencies'], true); // remove trash $products_description = strip_tags($products['products_description']); $products_description = substr($products_description, 0, 500) . '..'; $products_description = str_replace(";", ", ", $products_description); $products_description = str_replace(APOS, ", ", $products_description); $products_description = str_replace(NEW_LINE, BLANK, $products_description); $products_description = str_replace("\r", BLANK, $products_description); $products_description = str_replace("\t", BLANK, $products_description); $products_description = str_replace("\v", BLANK, $products_description); $products_description = str_replace("",", " \"", $products_description); $products_description = str_replace("&qout,", " \"", $products_description); // get product categorie $categorie_query = olc_db_query("SELECT\n categories_id\n FROM " . TABLE_PRODUCTS_TO_CATEGORIES . "\n WHERE products_id='" . $products['products_id'] . APOS); while ($categorie_data = olc_db_fetch_array($categorie_query)) { $categories = $categorie_data['categories_id']; } $categorie_query = olc_db_query("SELECT\n categories_name\n FROM " . TABLE_CATEGORIES_DESCRIPTION . "\n WHERE categories_id='" . $categories . "'\n and language_id='" . SESSION_LANGUAGE_ID . APOS); $categorie_data = olc_db_fetch_array($categorie_query); //create content //create content $schema .= HTTP_CATALOG_SERVER . DIR_WS_CATALOG . 'product_info.php?products_id=' . $products['products_id'] . "\t" . $products['products_name'] . ' - ' . $products['products_model'] . "\t" . $products_description . "\t" . $products_price . "\t" . $products['products_id'] . "\t" . $categorie_data['categories_name'] . "\t" . '001' . "\t" . 'included' . NEW_LINE; } // create File $fp = fopen(DIR_FS_DOCUMENT_ROOT . 'export/' . $file, "w+"); fputs($fp, $schema); fclose($fp); switch ($_POST['export']) { case 'yes': // send File to Browser $extension = substr($file, -3); $fp = fopen(DIR_FS_DOCUMENT_ROOT . 'export/' . $file, "rb"); $buffer = fread($fp, filesize(DIR_FS_DOCUMENT_ROOT . 'export/' . $file)); fclose($fp); header('Content-type: application/x-octet-stream'); header('Content-disposition: attachment; filename=' . $file); echo $buffer; exit; break; } }
function process($file) { @olc_set_time_limit(0); //$schema = 'Produktbezeichnung;Beschreibung;Preis;Url;Bild;Währung;Kategorie;Gültig bis;Gültig ab;FSK;Typ;Produkt id;Hersteller;Bestellnummer;Suchbegriffe;Preistyp' . NEW_LINE; $export_query = olc_db_query("SELECT\n p.products_id,\n pd.products_name,\n pd.products_description,\n p.products_model,\n p.products_image,\n p.products_price,\n p.products_status,\n p.products_date_available,\n p.products_shippingtime,\n p.products_discount_allowed,\n pd.products_meta_keywords,\n p.products_tax_class_id,\n p.products_date_added,\n m.manufacturers_name\n FROM\n " . TABLE_PRODUCTS . " p LEFT JOIN\n " . TABLE_MANUFACTURERS . " m\n ON p.manufacturers_id = m.manufacturers_id LEFT JOIN\n " . TABLE_PRODUCTS_DESCRIPTION . " pd\n ON p.products_id = pd.products_id AND\n pd.language_id = '" . SESSION_LANGUAGE_ID . "' LEFT JOIN\n " . TABLE_SPECIALS . " s\n ON p.products_id = s.products_id\n WHERE\n p.products_status = 1\n ORDER BY\n p.products_date_added DESC,\n pd.products_name"); while ($products = olc_db_fetch_array($export_query)) { $products_price = olc_get_products_price_export($products['products_id'], 1, true, $_POST['status'], 1, $_POST['currencies'], true); // remove trash $products_description = strip_tags($products['products_description']); $products_description = substr($products_description, 0, 1000) . '..'; $products_description = str_replace(";", ", ", $products_description); $products_description = str_replace(APOS, ", ", $products_description); $products_description = str_replace(NEW_LINE, BLANK, $products_description); $products_description = str_replace("\r", BLANK, $products_description); $products_description = str_replace("\t", BLANK, $products_description); $products_description = str_replace("\v", BLANK, $products_description); $products_description = str_replace("",", " \"", $products_description); $products_description = str_replace("&qout,", " \"", $products_description); // get product categorie $categorie_query = olc_db_query("SELECT\n categories_id\n FROM " . TABLE_PRODUCTS_TO_CATEGORIES . "\n WHERE products_id='" . $products['products_id'] . APOS); while ($categorie_data = olc_db_fetch_array($categorie_query)) { $categories = $categorie_data['categories_id']; } $categorie_query = olc_db_query("SELECT\n categories_name\n FROM " . TABLE_CATEGORIES_DESCRIPTION . "\n WHERE categories_id='" . $categories . "'\n and language_id='" . SESSION_LANGUAGE_ID . APOS); $categorie_data = olc_db_fetch_array($categorie_query); //create content $schema .= $products['products_name'] . ';' . $products_description . ';' . $products_price . ';' . HTTP_CATALOG_SERVER . DIR_WS_CATALOG . 'product_info.php?products_id=' . $products['products_id'] . ';' . HTTP_CATALOG_SERVER . DIR_WS_CATALOG_THUMBNAIL_IMAGES . $products['products_image'] . ';' . $_POST['currencies'] . ';' . $categorie_data['categories_name'] . ';' . ';' . olc_date_short($products['products_date_available']) . ';' . ';' . ';' . $products['products_model'] . ';' . $products['manufacturers_name'] . ';' . $products['products_model'] . ';' . $products['products_meta_keywords'] . ';' . '0' . NEW_LINE; } // create File $fp = fopen(DIR_FS_DOCUMENT_ROOT . 'export/' . $file, "w+"); fputs($fp, $schema); fclose($fp); switch ($_POST['export']) { case 'yes': // send File to Browser $extension = substr($file, -3); $fp = fopen(DIR_FS_DOCUMENT_ROOT . 'export/' . $file, "rb"); $buffer = fread($fp, filesize(DIR_FS_DOCUMENT_ROOT . 'export/' . $file)); fclose($fp); header('Content-type: application/x-octet-stream'); header('Content-disposition: attachment; filename=' . $file); echo $buffer; exit; break; } }
function process($file) { @olc_set_time_limit(0); $schema = 'Bezeichnung;Artikelnummer;Preis;Produktbeschreibung;Lieferstatus;Produktlink;FotoLink' . NEW_LINE; $export_query = olc_db_query("SELECT\n p.products_id,\n pd.products_name,\n pd.products_description,\n p.products_model,\n p.products_shippingtime,\n p.products_image,\n p.products_price,\n p.products_status,\n p.products_discount_allowed,\n p.products_tax_class_id,\n IF(s.status, s.specials_new_products_price, NULL) AS specials_new_products_price,\n p.products_date_added,\n m.manufacturers_name\n FROM\n " . TABLE_PRODUCTS . " p LEFT JOIN\n " . TABLE_MANUFACTURERS . " m\n ON p.manufacturers_id = m.manufacturers_id LEFT JOIN\n " . TABLE_PRODUCTS_DESCRIPTION . " pd\n ON p.products_id = pd.products_id AND\n pd.language_id = '" . SESSION_LANGUAGE_ID . "' LEFT JOIN\n " . TABLE_SPECIALS . " s\n ON p.products_id = s.products_id\n WHERE\n p.products_status = 1\n ORDER BY\n p.products_date_added DESC,\n pd.products_name"); while ($products = olc_db_fetch_array($export_query)) { $products_price = olc_get_products_price_export($products['products_id'], 1, true, $_POST['status'], 1, $_POST['currencies'], true); // remove trash $products_description = strip_tags($products['products_description']); $products_description = substr($products_description, 0, 197) . '..'; $products_description = str_replace(";", ", ", $products_description); $products_description = str_replace(APOS, ", ", $products_description); $products_description = str_replace(NEW_LINE, BLANK, $products_description); $products_description = str_replace("\r", BLANK, $products_description); $products_description = str_replace("\t", BLANK, $products_description); $products_description = str_replace("\v", BLANK, $products_description); $products_description = str_replace("",", " \"", $products_description); $products_description = str_replace("&qout,", " \"", $products_description); //create content $schema .= $products['products_name'] . '-' . $products['manufacturers_name'] . ';' . $products['products_model'] . ';' . $products_price . ';' . $products_description . ';' . olc_get_shipping_status_name($products['products_shippingtime']) . ';' . HTTP_CATALOG_SERVER . DIR_WS_CATALOG . 'product_info.php?products_id=' . $products['products_id'] . ';' . HTTP_CATALOG_SERVER . DIR_WS_CATALOG_THUMBNAIL_IMAGES . $products['products_image'] . NEW_LINE; } // create File $fp = fopen(DIR_FS_DOCUMENT_ROOT . 'export/' . $file, "w+"); fputs($fp, $schema); fclose($fp); switch ($_POST['export']) { case 'yes': // send File to Browser $extension = substr($file, -3); $fp = fopen(DIR_FS_DOCUMENT_ROOT . 'export/' . $file, "rb"); $buffer = fread($fp, filesize(DIR_FS_DOCUMENT_ROOT . 'export/' . $file)); fclose($fp); header('Content-type: application/x-octet-stream'); header('Content-disposition: attachment; filename=' . $file); echo $buffer; exit; break; } }
function process($file) { // include needed functions require_once 'includes/classes/image_manipulator.php'; @olc_set_time_limit(0); // action // get images in original_images folder $files = array(); if ($dir = opendir(DIR_FS_CATALOG_ORIGINAL_IMAGES)) { while (($file = readdir($dir)) !== false) { if (is_file(DIR_FS_CATALOG_ORIGINAL_IMAGES . $file) and $file != "index.html") { $files[] = array('id' => $file, 'text' => $file); } } closedir($dir); } for ($i = 0; $n = sizeof($files), $i < $n; $i++) { $products_image_name = $files[$i]['text']; require DIR_WS_INCLUDES . 'product_thumbnail_images.php'; require DIR_WS_INCLUDES . 'product_info_images.php'; require DIR_WS_INCLUDES . 'product_popup_images.php'; } }
Released under the GNU General Public License ---------------------------------------------------------------------------*/ require 'includes/application_top.php'; require_once ADMIN_PATH_PREFIX . DIR_WS_CLASSES . 'currencies.php'; $currencies = new currencies(); $payments_statuses = array(); $payments_status_array = array(); $payments_status_query = olc_db_query("select affiliate_payment_status_id, affiliate_payment_status_name from " . TABLE_AFFILIATE_PAYMENT_STATUS . " where affiliate_language_id = '" . SESSION_LANGUAGE_ID . APOS); while ($payments_status = olc_db_fetch_array($payments_status_query)) { $payments_statuses[] = array('id' => $payments_status['affiliate_payment_status_id'], 'text' => $payments_status['affiliate_payment_status_name']); $payments_status_array[$payments_status['affiliate_payment_status_id']] = $payments_status['affiliate_payment_status_name']; } switch ($_GET['action']) { case 'start_billing': // Billing can be a lengthy process olc_set_time_limit(0); // We are only billing orders which are AFFILIATE_BILLING_TIME days old $time = mktime(1, 1, 1, date("m"), date("d") - AFFILIATE_BILLING_TIME, date("Y")); $oldday = date("Y-m-d", $time); // Select all affiliates who earned enough money since last payment $sql = "\n SELECT a.affiliate_id, sum(a.affiliate_payment)\n FROM " . TABLE_AFFILIATE_SALES . " a, " . TABLE_ORDERS . " o\n WHERE a.affiliate_billing_status != 1 and a.affiliate_orders_id = o.orders_id and o.orders_status >= " . AFFILIATE_PAYMENT_ORDER_MIN_STATUS . " and a.affiliate_date <= '" . $oldday . "'\n GROUP by a.affiliate_id\n having sum(a.affiliate_payment) >= '" . AFFILIATE_THRESHOLD . "'\n "; $affiliate_payment_query = olc_db_query($sql); // Start Billing: while ($affiliate_payment = olc_db_fetch_array($affiliate_payment_query)) { // mysql does not support joins in update (planned in 4.x) // Get all orders which are AFFILIATE_BILLING_TIME days old $sql = "\n SELECT a.affiliate_orders_id\n FROM " . TABLE_AFFILIATE_SALES . " a, " . TABLE_ORDERS . " o\n WHERE a.affiliate_billing_status!=1 and a.affiliate_orders_id=o.orders_id and o.orders_status>=" . AFFILIATE_PAYMENT_ORDER_MIN_STATUS . " and a.affiliate_id='" . $affiliate_payment['affiliate_id'] . "' and a.affiliate_date <= '" . $oldday . "'\n "; $affiliate_orders_query = olc_db_query($sql); $orders_id = "("; while ($affiliate_orders = olc_db_fetch_array($affiliate_orders_query)) { $orders_id .= $affiliate_orders['affiliate_orders_id'] . ",";