Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

[Contribution] Header Tags Controller for Admin MS 2.2


Farrukh

Recommended Posts

I am using last version of this contribution and there was changed the way

a charset line is called .

In my shop i am using three languages and now each time i clicking page i need to set

right encoding for page.

 

is something i can change in the script ? or i need place back the previous version

way to call this line.

 

thanx .

Link to comment
Share on other sites

  • Replies 4.6k
  • Created
  • Last Reply

Top Posters In This Topic

Nothing was changed that should affect that. See the documentation for the last update. It only comes with one language. Are you sure that is not your problem?

 

Jack

Support Links:

For Hire: Contact me for anything you need help with for your shop: upgrading, hosting, repairs, code written, etc.

Get the latest versions of my addons

Recommended SEO Addons

Link to comment
Share on other sites

Removed line from header_tags.php are calling CHARSET

and placed back CHARSET line to page ( as before) and everything works fine

this way . I am using Win 1251 and Win 1255 for my languages.

 

I tested with different browsers and different setings for encoding but no luck.

may be i need to learn more about this .

 

 

am i need to place CHARSET definition in header_tags.php instead main languages file

(i am talking about languages files)

Edited by Qihun
Link to comment
Share on other sites

I am stuck and have tried to figure out what i did wrong.

My /admin/categories.php has been modified by some other guys so i could not replace the categories.php i had with the one included in Heavey Tag Controller 2.3.3.

After manually editing the php file over and over and over and over again i still havent got it to work :'(

 

Please, anyone that can "read/understand" php ...try to see what might be wrong...

Thank you very very much!!!

 

 

Prince Tom

 

 

-----

<?php

/*

$Id: categories.php,v 1.146 2003/07/11 14:40:27 hpdl Exp $

 

osCommerce, Open Source E-Commerce Solutions

http://www.oscommerce.com

 

Copyright ? 2003 osCommerce

 

Released under the GNU General Public License

*/

 

require('includes/application_top.php');

 

 

require(DIR_WS_CLASSES . 'currencies.php');

 

$currencies = new currencies();

 

$action = (isset($HTTP_GET_VARS['action']) ? $HTTP_GET_VARS['action'] : '');

 

$messageStack->add($action, 'log');

 

if (tep_not_null($action)) {

switch ($action) {

case 'setflag':

if ( ($HTTP_GET_VARS['flag'] == '0') || ($HTTP_GET_VARS['flag'] == '1') ) {

if (isset($HTTP_GET_VARS['pID'])) {

tep_set_product_status($HTTP_GET_VARS['pID'], $HTTP_GET_VARS['flag']);

}

 

if (USE_CACHE == 'true') {

tep_reset_cache_block('categories');

tep_reset_cache_block('also_purchased');

}

}

 

tep_redirect(tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $HTTP_GET_VARS['cPath'] . '&pID=' . $HTTP_GET_VARS['pID']));

break;

case 'insert_category':

case 'update_category':

if (isset($HTTP_POST_VARS['categories_id'])) $categories_id = tep_db_prepare_input($HTTP_POST_VARS['categories_id']);

$sort_order = tep_db_prepare_input($HTTP_POST_VARS['sort_order']);

 

$sql_data_array = array('sort_order' => $sort_order);

 

if ($action == 'insert_category') {

$insert_sql_data = array('parent_id' => $current_category_id,

'date_added' => 'now()');

 

$sql_data_array = array_merge($sql_data_array, $insert_sql_data);

 

tep_db_perform(TABLE_CATEGORIES, $sql_data_array);

 

$categories_id = tep_db_insert_id();

} elseif ($action == 'update_category') {

$update_sql_data = array('last_modified' => 'now()');

 

$sql_data_array = array_merge($sql_data_array, $update_sql_data);

 

tep_db_perform(TABLE_CATEGORIES, $sql_data_array, 'update', "categories_id = '" . (int)$categories_id . "'");

}

 

$languages = tep_get_languages();

for ($i=0, $n=sizeof($languages); $i<$n; $i++) {

$categories_name_array = $HTTP_POST_VARS['categories_name'];

 

$language_id = $languages[$i]['id'];

 

$sql_data_array = array('categories_name' => tep_db_prepare_input($categories_name_array[$language_id]));

 

if ($action == 'insert_category') {

$insert_sql_data = array('categories_id' => $categories_id,

'language_id' => $languages[$i]['id']);

 

$sql_data_array = array_merge($sql_data_array, $insert_sql_data);

 

tep_db_perform(TABLE_CATEGORIES_DESCRIPTION, $sql_data_array);

} elseif ($action == 'update_category') {

tep_db_perform(TABLE_CATEGORIES_DESCRIPTION, $sql_data_array, 'update', "categories_id = '" . (int)$categories_id . "' and language_id = '" . (int)$languages[$i]['id'] . "'");

}

}

 

if ($categories_image = new upload('categories_image', DIR_FS_CATALOG_IMAGES)) {

tep_db_query("update " . TABLE_CATEGORIES . " set categories_image = '" . tep_db_input($categories_image->filename) . "' where categories_id = '" . (int)$categories_id . "'");

}

 

if (USE_CACHE == 'true') {

tep_reset_cache_block('categories');

tep_reset_cache_block('also_purchased');

}

 

tep_redirect(tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&cID=' . $categories_id));

break;

case 'delete_category_confirm':

if (isset($HTTP_POST_VARS['categories_id'])) {

$categories_id = tep_db_prepare_input($HTTP_POST_VARS['categories_id']);

 

$categories = tep_get_category_tree($categories_id, '', '0', '', true);

$products = array();

$products_delete = array();

 

for ($i=0, $n=sizeof($categories); $i<$n; $i++) {

$product_ids_query = tep_db_query("select products_id from " . TABLE_PRODUCTS_TO_CATEGORIES . " where categories_id = '" . (int)$categories[$i]['id'] . "'");

 

while ($product_ids = tep_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 .= "'" . (int)$value['categories'][$i] . "', ";

}

$category_ids = substr($category_ids, 0, -2);

 

$check_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS_TO_CATEGORIES . " where products_id = '" . (int)$key . "' and categories_id not in (" . $category_ids . ")");

$check = tep_db_fetch_array($check_query);

if ($check['total'] < '1') {

$products_delete[$key] = $key;

}

}

 

// removing categories can be a lengthy process

tep_set_time_limit(0);

for ($i=0, $n=sizeof($categories); $i<$n; $i++) {

tep_remove_category($categories[$i]['id']);

}

 

reset($products_delete);

while (list($key) = each($products_delete)) {

tep_remove_product($key);

}

}

 

if (USE_CACHE == 'true') {

tep_reset_cache_block('categories');

tep_reset_cache_block('also_purchased');

}

 

tep_redirect(tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath));

break;

case 'delete_product_confirm':

if (isset($HTTP_POST_VARS['products_id']) && isset($HTTP_POST_VARS['product_categories']) && is_array($HTTP_POST_VARS['product_categories'])) {

$product_id = tep_db_prepare_input($HTTP_POST_VARS['products_id']);

$product_categories = $HTTP_POST_VARS['product_categories'];

 

for ($i=0, $n=sizeof($product_categories); $i<$n; $i++) {

tep_db_query("delete from " . TABLE_PRODUCTS_TO_CATEGORIES . " where products_id = '" . (int)$product_id . "' and categories_id = '" . (int)$product_categories[$i] . "'");

}

 

$product_categories_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS_TO_CATEGORIES . " where products_id = '" . (int)$product_id . "'");

$product_categories = tep_db_fetch_array($product_categories_query);

 

if ($product_categories['total'] == '0') {

tep_remove_product($product_id);

}

}

 

if (USE_CACHE == 'true') {

tep_reset_cache_block('categories');

tep_reset_cache_block('also_purchased');

}

 

tep_redirect(tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath));

break;

case 'move_category_confirm':

if (isset($HTTP_POST_VARS['categories_id']) && ($HTTP_POST_VARS['categories_id'] != $HTTP_POST_VARS['move_to_category_id'])) {

$categories_id = tep_db_prepare_input($HTTP_POST_VARS['categories_id']);

$new_parent_id = tep_db_prepare_input($HTTP_POST_VARS['move_to_category_id']);

 

$path = explode('_', tep_get_generated_category_path_ids($new_parent_id));

 

if (in_array($categories_id, $path)) {

$messageStack->add_session(ERROR_CANNOT_MOVE_CATEGORY_TO_PARENT, 'error');

 

tep_redirect(tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&cID=' . $categories_id));

} else {

tep_db_query("update " . TABLE_CATEGORIES . " set parent_id = '" . (int)$new_parent_id . "', last_modified = now() where categories_id = '" . (int)$categories_id . "'");

 

if (USE_CACHE == 'true') {

tep_reset_cache_block('categories');

tep_reset_cache_block('also_purchased');

}

 

tep_redirect(tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $new_parent_id . '&cID=' . $categories_id));

}

}

 

break;

case 'move_product_confirm':

$products_id = tep_db_prepare_input($HTTP_POST_VARS['products_id']);

$new_parent_id = tep_db_prepare_input($HTTP_POST_VARS['move_to_category_id']);

 

$duplicate_check_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS_TO_CATEGORIES . " where products_id = '" . (int)$products_id . "' and categories_id = '" . (int)$new_parent_id . "'");

$duplicate_check = tep_db_fetch_array($duplicate_check_query);

if ($duplicate_check['total'] < 1) tep_db_query("update " . TABLE_PRODUCTS_TO_CATEGORIES . " set categories_id = '" . (int)$new_parent_id . "' where products_id = '" . (int)$products_id . "' and categories_id = '" . (int)$current_category_id . "'");

 

if (USE_CACHE == 'true') {

tep_reset_cache_block('categories');

tep_reset_cache_block('also_purchased');

}

 

tep_redirect(tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $new_parent_id . '&pID=' . $products_id));

break;

case 'insert_product':

case 'update_product':

if (isset($HTTP_POST_VARS['edit_x']) || isset($HTTP_POST_VARS['edit_y'])) {

$action = 'new_product';

} else {

if (isset($HTTP_GET_VARS['pID'])) $products_id = tep_db_prepare_input($HTTP_GET_VARS['pID']);

$products_date_available = tep_db_prepare_input($HTTP_POST_VARS['products_date_available']);

 

$products_date_available = (date('Y-m-d') < $products_date_available) ? $products_date_available : 'null';

 

$sql_data_array = array('products_quantity' => tep_db_prepare_input($HTTP_POST_VARS['products_quantity']),

'products_model' => tep_db_prepare_input($HTTP_POST_VARS['products_model']),

'products_price' => tep_db_prepare_input($HTTP_POST_VARS['products_price']),

'products_kids_price' => tep_db_prepare_input($HTTP_POST_VARS['products_kids_price']),

'products_nonriders_price' => tep_db_prepare_input($HTTP_POST_VARS['products_nonriders_price']),

'products_addweek_price_adults' => tep_db_prepare_input($HTTP_POST_VARS['products_addweek_price_adults']),

'products_addweek_price_kids' => tep_db_prepare_input($HTTP_POST_VARS['products_addweek_price_kids']),

'products_addweek_price_nonriders' => tep_db_prepare_input($HTTP_POST_VARS['products_addweek_price_nonriders']),

'products_date_available' => $products_date_available,

'products_weight' => tep_db_prepare_input($HTTP_POST_VARS['products_weight']),

'products_status' => tep_db_prepare_input($HTTP_POST_VARS['products_status']),

'products_tax_class_id' => tep_db_prepare_input($HTTP_POST_VARS['products_tax_class_id']),

'manufacturers_id' => tep_db_prepare_input($HTTP_POST_VARS['manufacturers_id']));

 

if (isset($HTTP_POST_VARS['products_image']) && tep_not_null($HTTP_POST_VARS['products_image']) && ($HTTP_POST_VARS['products_image'] != 'none')) {

$sql_data_array['products_image'] = tep_db_prepare_input($HTTP_POST_VARS['products_image']);

}

 

// Added for MAP image

if (isset($HTTP_POST_VARS['products_map_image']) && tep_not_null($HTTP_POST_VARS['products_map_image']) && ($HTTP_POST_VARS['products_map_image'] != 'none')) {

$sql_data_array['products_map_image'] = tep_db_prepare_input($HTTP_POST_VARS['products_map_image']);

}

 

 

if ($action == 'insert_product') {

$insert_sql_data = array('products_date_added' => 'now()');

 

$sql_data_array = array_merge($sql_data_array, $insert_sql_data);

 

tep_db_perform(TABLE_PRODUCTS, $sql_data_array);

$products_id = tep_db_insert_id();

 

tep_db_query("insert into " . TABLE_PRODUCTS_TO_CATEGORIES . " (products_id, categories_id) values ('" . (int)$products_id . "', '" . (int)$current_category_id . "')");

} elseif ($action == 'update_product') {

$update_sql_data = array('products_last_modified' => 'now()');

 

$sql_data_array = array_merge($sql_data_array, $update_sql_data);

 

tep_db_perform(TABLE_PRODUCTS, $sql_data_array, 'update', "products_id = '" . (int)$products_id . "'");

}

 

 

// Week days!

tep_db_query("delete from " . TABLE_PRODUCTS_TO_WEEKDAYS . " where products_id = '" . (int)$products_id . "'");

 

if ( is_array($HTTP_POST_VARS['week_days']) )

{

reset($HTTP_POST_VARS['week_days']);

 

while ( list($key, $value) = each($HTTP_POST_VARS['week_days']) )

{

tep_db_query("insert into " . TABLE_PRODUCTS_TO_WEEKDAYS . " (week_days_id, products_id) values('" . (int)$value . "', '" .(int)$products_id . "')");

}

 

}

 

 

$languages = tep_get_languages();

for ($i=0, $n=sizeof($languages); $i<$n; $i++) {

$language_id = $languages[$i]['id'];

 

$sql_data_array = array('products_name' => tep_db_prepare_input($HTTP_POST_VARS['products_name'][$language_id]),

'products_description' => tep_db_prepare_input($HTTP_POST_VARS['products_description'][$language_id]),

'products_url' => tep_db_prepare_input($HTTP_POST_VARS['products_url'][$language_id]),

'products_head_title_tag' => tep_db_prepare_input($HTTP_POST_VARS['products_head_title_tag'][$language_id]),

'products_head_desc_tag' => tep_db_prepare_input($HTTP_POST_VARS['products_head_desc_tag'][$language_id]),

'products_head_keywords_tag' => tep_db_prepare_input($HTTP_POST_VARS['products_head_keywords_tag'][$language_id]));

 

 

// Add the stuff for products_yihaa here later!

// and MERGE!!

 

if ($action == 'insert_product') {

$insert_sql_data = array('products_id' => $products_id,

'language_id' => $language_id);

 

$insert_sql_data_yihaa = array('products_id' => $products_id,

'language_id' => $language_id);

 

$sql_data_array = array_merge($sql_data_array, $insert_sql_data);

 

tep_db_perform(TABLE_PRODUCTS_DESCRIPTION, $sql_data_array);

 

$sql_data_array_yihaa = array_merge($sql_data_array_yihaa, $insert_sql_data_yihaa);

 

tep_db_perform(TABLE_PRODUCTS_YIHAA, $sql_data_array_yihaa);

 

 

} elseif ($action == 'update_product') {

tep_db_perform(TABLE_PRODUCTS_DESCRIPTION, $sql_data_array, 'update', "products_id = '" . (int)$products_id . "' and language_id = '" . (int)$language_id . "'");

tep_db_perform(TABLE_PRODUCTS_YIHAA, $sql_data_array_yihaa, 'update', "products_id = '" . (int)$products_id . "' and language_id = '" . (int)$language_id . "'");

}

}

 

if (USE_CACHE == 'true') {

tep_reset_cache_block('categories');

tep_reset_cache_block('also_purchased');

}

 

tep_redirect(tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&pID=' . $products_id));

}

break;

case 'edit_fact':

 

if (tep_session_is_registered('product_fact')) {

tep_session_unregister('product_fact');

}

 

tep_session_register('product_fact');

$product_fact = new productFact($HTTP_GET_VARS['pID']);

$product_fact->createFromDB();

 

tep_redirect(tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&pID=' . $HTTP_GET_VARS['pID'] . '&action=edit_fact_show'));

 

 

break;

case 'remove_fact':

 

$index = $HTTP_GET_VARS['index'];

$lang_id = $HTTP_GET_VARS['lang'];

 

$product_fact->remove($lang_id, $index);

 

 

tep_redirect(tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&pID=' . $HTTP_GET_VARS['pID'] . '&action=edit_fact_show'));

 

$action = 'edit_fact_show';

 

break;

case 'edit_fact_save':

/*reset($HTTP_POST_VARS);

while (list($key, $value) = each($HTTP_POST_VARS)) {

$messageStack->add('Post: ' .$key. '['.$value.']', 'log');

}

 

reset($HTTP_GET_VARS);

while (list($key, $value) = each($HTTP_GET_VARS)) {

$messageStack->add('Get: ' .$key. '['.$value.']', 'log');

}*/

 

 

 

$languages = tep_get_languages();

 

for ($i=0, $n=sizeof($languages); $i<$n; $i++)

{

$lang_id = $languages[$i]['id'];

 

$heading_arr = $HTTP_POST_VARS['heading_' .$lang_id. '_'];

$text_arr = $HTTP_POST_VARS['text_' .$lang_id. '_'];

$sort_arr = $HTTP_POST_VARS['sort_order_' .$lang_id. '_'];

 

 

$messageStack->add('lang: ' . $lang_id, 'log');

$messageStack->add(print_r($heading_arr, true), 'log');

 

$product_fact->update($lang_id, $heading_arr, $text_arr, $sort_arr);

}

 

 

$languages = tep_get_languages();

for ($i=0, $n=sizeof($languages); $i<$n; $i++)

{

$lang_id = $languages[$i]['id'];

 

if ( isset($HTTP_POST_VARS['insert_' . $lang_id .'_x']) || isset($HTTP_POST_VARS['insert_' . $lang_id .'_y']) )

{

 

$messageStack->add('Insert: ' . $languages[$i]['name'], 'log');

$product_fact->insert($lang_id, '', '');

tep_redirect(tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&pID=' . $HTTP_POST_VARS['products_id'] . '&action=edit_fact_show'));

 

}

}

 

 

 

if ( isset($HTTP_POST_VARS['save_fact_x']) || isset($HTTP_POST_VARS['save_fact_y']) )

{

// Save

$product_fact->saveToDB();

tep_redirect(tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&pID=' . $HTTP_POST_VARS['products_id']));

}

else

{

tep_redirect(tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&pID=' . $HTTP_POST_VARS['products_id'] . '&action=edit_fact_show'));

}

break;

case 'copy_to_confirm':

if (isset($HTTP_POST_VARS['products_id']) && isset($HTTP_POST_VARS['categories_id'])) {

$products_id = tep_db_prepare_input($HTTP_POST_VARS['products_id']);

$categories_id = tep_db_prepare_input($HTTP_POST_VARS['categories_id']);

 

if ($HTTP_POST_VARS['copy_as'] == 'link') {

if ($categories_id != $current_category_id) {

$check_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS_TO_CATEGORIES . " where products_id = '" . (int)$products_id . "' and categories_id = '" . (int)$categories_id . "'");

$check = tep_db_fetch_array($check_query);

if ($check['total'] < '1') {

tep_db_query("insert into " . TABLE_PRODUCTS_TO_CATEGORIES . " (products_id, categories_id) values ('" . (int)$products_id . "', '" . (int)$categories_id . "')");

}

} else {

$messageStack->add_session(ERROR_CANNOT_LINK_TO_SAME_CATEGORY, 'error');

}

} elseif ($HTTP_POST_VARS['copy_as'] == 'duplicate') {

$product_query = tep_db_query("select products_quantity, products_model, products_image, products_map_image, products_price, products_kids_price, products_nonriders_price, products_addweek_price_adults, products_addweek_price_kids, products_addweek_price_nonriders, products_date_available, products_weight, products_tax_class_id, manufacturers_id from " . TABLE_PRODUCTS . " where products_id = '" . (int)$products_id . "'");

$product = tep_db_fetch_array($product_query);

 

tep_db_query("insert into " . TABLE_PRODUCTS . " (products_quantity, products_model,products_image, products_map_image, products_price, products_kids_price, products_nonriders_price, products_addweek_price_adults, products_addweek_price_kids, products_addweek_price_nonriders, products_date_added, products_date_available, products_weight, products_status, products_tax_class_id, manufacturers_id) values ('" . tep_db_input($product['products_quantity']) . "', '" . tep_db_input($product['products_model']) . "', '" . tep_db_input($product['products_image']) . "', '" . tep_db_input($product['products_map_image']) . "', '" . tep_db_input($product['products_price']) . "', '".tep_db_input($product['products_kids_price'])."', '".tep_db_input($product['products_nonriders_price'])."', '" . tep_db_input($product['products_addweek_price_adults']) . "', '" . tep_db_input($product['products_addweek_price_kids']) . "', '" . tep_db_input($product['products_addweek_price_nonriders']). "', now(), '" . tep_db_input($product['products_date_available']) . "', '" . tep_db_input($product['products_weight']) . "', '0', '" . (int)$product['products_tax_class_id'] . "', '" . (int)$product['manufacturers_id'] . "')");

$dup_products_id = tep_db_insert_id();

 

$description_query = tep_db_query("select language_id, products_name, products_description, products_head_title_tag, products_head_desc_tag, products_head_keywords_tag, products_url from " . TABLE_PRODUCTS_DESCRIPTION . " where products_id = '" . (int)$products_id . "'");

while ($description = tep_db_fetch_array($description_query)) {

tep_db_query("insert into " . TABLE_PRODUCTS_DESCRIPTION . " (products_id, language_id, products_name, products_description, products_head_title_tag, products_head_desc_tag, products_head_keywords_tag, products_url, products_viewed) values ('" . (int)$dup_products_id . "', '" . (int)$description['language_id'] . "', '" . tep_db_input($description['products_name']) . "', '" . tep_db_input($description['products_description']) . "', '" . tep_db_input($description['products_head_title_tag']) . "', '" . tep_db_input($description['products_head_desc_tag']) . "', '" . tep_db_input($description['products_head_keywords_tag']) . "', '" . tep_db_input($description['products_url']) . "', '0')");

}

 

// Add stuff for products_yihaa here!!

$yihaa_query = tep_db_query("select language_id, products_news_image, product_transfer, product_duration, product_code from " . TABLE_PRODUCTS_YIHAA . " where products_id = '" . (int)$products_id . "'");

while ($yihaa = tep_db_fetch_array($yihaa_query)) {

tep_db_query("insert into " . TABLE_PRODUCTS_YIHAA . " (products_id, language_id, products_news_image, product_transfer, product_duration, product_code) values ('" . (int)$dup_products_id . "', '" . (int)$yihaa['language_id'] . "', '" . tep_db_input($yihaa['products_news_image']) . "', '" . tep_db_input($yihaa['product_transfer']) . "', '" . tep_db_input($yihaa['product_duration']) . "', '". tep_db_input($yihaa['product_code']) ."')");

}

 

// Clone weekdays

$week_days_array = tep_get_weekdays($products_id);

reset($week_days_array);

while (list(, $value) = each ($week_days_array)) {

tep_db_query("insert into " . TABLE_PRODUCTS_TO_WEEKDAYS . " (products_id, week_days_id) values ('" . (int)$dup_products_id . "', '" . (int)$value . "')");

}

 

tep_db_query("insert into " . TABLE_PRODUCTS_TO_CATEGORIES . " (products_id, categories_id) values ('" . (int)$dup_products_id . "', '" . (int)$categories_id . "')");

$products_id = $dup_products_id;

}

 

if (USE_CACHE == 'true') {

tep_reset_cache_block('categories');

tep_reset_cache_block('also_purchased');

}

}

 

tep_redirect(tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $categories_id . '&pID=' . $products_id));

break;

case 'new_product_preview':

// copy image only if modified

$products_image = new upload('products_image');

$products_image->set_destination(DIR_FS_CATALOG_IMAGES);

if ($products_image->parse() && $products_image->save()) {

$products_image_name = $products_image->filename;

} else {

$products_image_name = (isset($HTTP_POST_VARS['products_previous_image']) ? $HTTP_POST_VARS['products_previous_image'] : '');

}

// map

$products_map_image = new upload('products_map_image');

$products_map_image->set_destination(DIR_FS_CATALOG_IMAGES);

if ($products_map_image->parse() && $products_map_image->save()) {

$products_map_image_name = $products_map_image->filename;

} else {

$products_map_image_name = (isset($HTTP_POST_VARS['products_previous_map_image']) ? $HTTP_POST_VARS['products_previous_map_image'] : '');

}

 

break;

}

}

 

 

// check if the catalog image directory exists

if (is_dir(DIR_FS_CATALOG_IMAGES)) {

if (!is_writeable(DIR_FS_CATALOG_IMAGES)) $messageStack->add(ERROR_CATALOG_IMAGE_DIRECTORY_NOT_WRITEABLE, 'error');

} else {

$messageStack->add(ERROR_CATALOG_IMAGE_DIRECTORY_DOES_NOT_EXIST, 'error');

}

 

function draw_edit_product_fact_input($language, $product_id)

{

global $product_fact;

global $messageStack;

global $cPath;

 

 

$inner_contents = array();

 

$flag = tep_image(DIR_WS_CATALOG_LANGUAGES . $language['directory'] . '/images/' . $language['image'], $language['name']);

$inner_contents[] = array('text' => $flag);

 

$product = $product_fact->getContents($language['id']);

for ($i=0, $n=sizeof($product); $i<$n; $i++)

{

$inner_box = array();

 

$rem_lnk = '<a href="'. tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&pID=' . $product_id . '&action=remove_fact' . '〈=' . $language['id'] . '&index=' .$i) .'" >'. tep_image_button('button_delete2.gif', IMAGE_DELETE) .'</a>';

 

$inner_box[] = array('text' => TEXT_DELETE_FACT_ROW . ' ' . $rem_lnk, 'align' => 'right');

$inner_box[] = array('text' => TEXT_FACT_HEADING);

$inner_box[] = array('text' => tep_draw_input_field('heading_'.$language['id'].'_[]', $product[$i]['heading'], 'style="width: 200px"'));

 

$inner_box[] = array('text' => TEXT_FACT_TEXT);

$inner_box[] = array('text' => tep_draw_textarea_field('text_'.$language['id'].'_[]', 'soft', '30', '4', $product[$i]['text'], 'style="width: 200px"') );

$inner_box[] = array('text' => TEXT_SORT_ORDER . ' ' . tep_draw_input_field('sort_order_'.$language['id'].'_[]', $product[$i]['sort_order'], 'size="3"') );

 

$inner_box[] = array('text' => tep_draw_separator('pixel_trans.gif', '1', '8'));

$inner_box[] = array('text' => tep_image(DIR_WS_IMAGES . 'separator_200px.gif'), 'align' => 'right');

 

$box = new tableBox(0);

$box->table_cellpadding = '0';

$box->table_parameters = 'class="smallText"';

$box->table_width = '0%';

 

 

$inner_contents[] = array('text' => $box->tableBox($inner_box) );

}

 

 

 

 

$inner_contents[] = array('text' => tep_image_submit('button_insert.gif', IMAGE_INSERT, 'name="insert_'.$language['id'] . '"' ));

$inner_contents[] = array('text' => tep_image(DIR_WS_IMAGES . 'line_200px.gif'));

 

$box = new tableBox(0);

$box->table_cellpadding='8';

$box->table_parameters='class="smalltext"';

$box->table_width='0%';

 

return $box->tableBox($inner_contents);

 

}

 

 

?>

<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">

<html <?php echo HTML_PARAMS; ?>>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>">

<title><?php echo TITLE; ?></title>

<link rel="stylesheet" type="text/css" href="includes/stylesheet.css">

<script language="javascript" src="includes/general.js"></script>

 

<script language="javascript">

function submitform()

{

document.edit_fact.submit();

}

</script>

 

</head>

<body marginwidth="0" marginheight="0" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0" bgcolor="#FFFFFF" onload="SetFocus();">

<div id="spiffycalendar" class="text"></div>

<!-- header //-->

<?php require(DIR_WS_INCLUDES . 'header.php'); ?>

<!-- header_eof //-->

 

<!-- body //-->

<table border="0" width="100%" cellspacing="2" cellpadding="2">

<tr>

<td width="<?php echo BOX_WIDTH; ?>" valign="top"><table border="0" width="<?php echo BOX_WIDTH; ?>" cellspacing="1" cellpadding="1" class="columnLeft">

<!-- left_navigation //-->

<?php require(DIR_WS_INCLUDES . 'column_left.php'); ?>

<!-- left_navigation_eof //-->

</table></td>

<!-- body_text //-->

<td width="100%" valign="top">

<?php

if ($action == 'new_product') {

$parameters = array('products_name' => '',

'products_description' => '',

'products_url' => '',

'products_id' => '',

'products_quantity' => '',

'products_model' => '',

'products_image' => '',

'products_map_image' => '',

'products_price' => '',

'products_weight' => '',

'products_date_added' => '',

'products_last_modified' => '',

'products_date_available' => '',

'products_status' => '',

'products_tax_class_id' => '',

'product_code' => '',

'manufacturers_id' => '');

 

$pInfo = new objectInfo($parameters);

 

if (isset($HTTP_GET_VARS['pID']) && empty($HTTP_POST_VARS)) {

$sql = "select pd.products_name, pd.products_description, pd.products_url, p.products_id, p.products_quantity, p.products_model, p.products_image, p.products_map_image, p.products_price, p.products_kids_price, p.products_nonriders_price, p.products_addweek_price_adults, p.products_addweek_price_kids, p.products_addweek_price_nonriders, p.products_weight, p.products_date_added, p.products_last_modified, date_format(p.products_date_available, '%Y-%m-%d') as products_date_available, p.products_status, p.products_tax_class_id, p.manufacturers_id, py.product_code from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd inner join products_yihaa py on p.products_id = py.products_id where p.products_id = '" . (int)$HTTP_GET_VARS['pID'] . "' and p.products_id = pd.products_id and pd.language_id = '" . (int)$languages_id . "' and py.language_id = '" . (int)$languages_id . "'";

 

$messageStack->add($sql, 'log');

 

$product_query = tep_db_query("select pd.products_name, pd.products_description, pd.products_head_title_tag, pd.products_head_desc_tag, pd.products_head_keywords_tag, pd.products_url, p.products_id, p.products_quantity, p.products_model, p.products_image, p.products_price, p.products_weight, p.products_date_added, p.products_last_modified, date_format(p.products_date_available, '%Y-%m-%d') as products_date_available, p.products_status, p.products_tax_class_id, p.manufacturers_id from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_id = '" . (int)$HTTP_GET_VARS['pID'] . "' and p.products_id = pd.products_id and pd.language_id = '" . (int)$languages_id . "'");

$product = tep_db_fetch_array($product_query);

 

$pInfo->objectInfo($product);

} elseif (tep_not_null($HTTP_POST_VARS)) {

$pInfo->objectInfo($HTTP_POST_VARS);

$products_name = $HTTP_POST_VARS['products_name'];

$products_description = $HTTP_POST_VARS['products_description'];

$products_url = $HTTP_POST_VARS['products_url'];

}

 

$manufacturers_array = array(array('id' => '', 'text' => TEXT_NONE));

// Modification here to allow different laguages on manufacturer

$manufacturers_sql = "select manufacturers_id, manufacturers_name from " .

TABLE_MANUFACTURERS_INFO . " where languages_id = '" . (int)$languages_id .

"' order by manufacturers_name";

$manufacturers_query = tep_db_query($manufacturers_sql);

 

//$manufacturers_query = tep_db_query("select manufacturers_id, manufacturers_name from " . TABLE_MANUFACTURERS . " order by manufacturers_name");

while ($manufacturers = tep_db_fetch_array($manufacturers_query)) {

$manufacturers_array[] = array('id' => $manufacturers['manufacturers_id'],

'text' => $manufacturers['manufacturers_name']);

}

 

$tax_class_array = array(array('id' => '0', 'text' => TEXT_NONE));

$tax_class_query = tep_db_query("select tax_class_id, tax_class_title from " . TABLE_TAX_CLASS . " order by tax_class_title");

while ($tax_class = tep_db_fetch_array($tax_class_query)) {

$tax_class_array[] = array('id' => $tax_class['tax_class_id'],

'text' => $tax_class['tax_class_title']);

}

 

$languages = tep_get_languages();

 

if (!isset($pInfo->products_status)) $pInfo->products_status = '1';

switch ($pInfo->products_status) {

case '0': $in_status = false; $out_status = true; break;

case '1':

default: $in_status = true; $out_status = false;

}

?>

 

 

 

 

<link rel="stylesheet" type="text/css" href="includes/javascript/spiffyCal/spiffyCal_v2_1.css">

<script language="JavaScript" src="includes/javascript/spiffyCal/spiffyCal_v2_1.js"></script>

<script language="javascript"><!--

var dateAvailable = new ctlSpiffyCalendarBox("dateAvailable", "new_product", "products_date_available","btnDate1","<?php echo $pInfo->products_date_available; ?>",scBTNMODE_CUSTOMBLUE);

//--></script>

<?php echo tep_draw_form('new_product', FILENAME_CATEGORIES, 'cPath=' . $cPath . (isset($HTTP_GET_VARS['pID']) ? '&pID=' . $HTTP_GET_VARS['pID'] : '') . '&action=new_product_preview', 'post', 'enctype="multipart/form-data"'); ?>

<table border="0" width="100%" cellspacing="0" cellpadding="2">

<tr>

<td><table border="0" width="100%" cellspacing="0" cellpadding="0">

<tr>

<td class="pageHeading"><?php echo sprintf(TEXT_NEW_PRODUCT, tep_output_generated_category_path($current_category_id)); ?></td>

<td class="pageHeading" align="right"><?php echo tep_draw_separator('pixel_trans.gif', HEADING_IMAGE_WIDTH, HEADING_IMAGE_HEIGHT); ?></td>

</tr>

</table></td>

</tr>

<tr>

<td><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td>

</tr>

<tr>

<td><table border="0" cellspacing="0" cellpadding="2">

<tr>

<td class="main"><?php echo TEXT_PRODUCTS_STATUS; ?></td>

<td class="main"><?php echo tep_draw_separator('pixel_trans.gif', '24', '15') . ' ' . tep_draw_radio_field('products_status', '1', $in_status) . ' ' . TEXT_PRODUCT_AVAILABLE . ' ' . tep_draw_radio_field('products_status', '0', $out_status) . ' ' . TEXT_PRODUCT_NOT_AVAILABLE; ?></td>

</tr>

<tr>

<td colspan="2"><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td>

</tr>

<tr>

<td class="main"><?php echo TEXT_PRODUCTS_DATE_AVAILABLE; ?><br><small>(YYYY-MM-DD)</small></td>

<td class="main"><?php echo tep_draw_separator('pixel_trans.gif', '24', '15') . ' '; ?><script language="javascript">dateAvailable.writeControl(); dateAvailable.dateFormat="yyyy-MM-dd";</script></td>

</tr>

<tr>

<td colspan="2"><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td>

</tr>

<tr>

<td class="main"><?php echo TEXT_PRODUCTS_CODE; ?></td>

<td class="main"><?php echo tep_draw_separator('pixel_trans.gif', '24', '15') . ' ' . tep_draw_input_field('product_code', $pInfo->product_code); ?></td>

</tr>

<tr>

<td colspan="2"><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td>

</tr>

<tr>

<td class="main"><?php echo TEXT_PRODUCTS_MANUFACTURER; ?></td>

<td class="main"><?php echo tep_draw_separator('pixel_trans.gif', '24', '15') . ' ' . tep_draw_pull_down_menu('manufacturers_id', $manufacturers_array, $pInfo->manufacturers_id); ?></td>

</tr>

<tr>

<td colspan="2"><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td>

</tr>

<tr>

<td class="main" valign="top"><?php echo TEXT_PRODUCTS_DEPARTURE_DAYS; ?></td>

<td class="main"><?php echo tep_draw_week_table('week_days[]', tep_get_weekdays($pInfo->products_id)); ?></td>

</tr>

<tr>

<td colspan="2"><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td>

</tr>

 

 

<?php

for ($i=0, $n=sizeof($languages); $i<$n; $i++) {

?>

<tr>

<td class="main"><?php if ($i == 0) echo TEXT_PRODUCTS_NAME; ?></td>

<td class="main"><?php echo tep_image(DIR_WS_CATALOG_LANGUAGES . $languages[$i]['directory'] . '/images/' . $languages[$i]['image'], $languages[$i]['name']) . ' ' . tep_draw_input_field('products_name[' . $languages[$i]['id'] . ']', (isset($products_name[$languages[$i]['id']]) ? $products_name[$languages[$i]['id']] : tep_get_products_name($pInfo->products_id, $languages[$i]['id']))); ?></td>

</tr>

<?php

}

?>

<tr>

<td colspan="2"><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td>

</tr>

<tr bgcolor="#ebebff">

<td class="main"><?php echo TEXT_PRODUCTS_PRICE; ?></td>

<td class="main"><?php echo tep_draw_separator('pixel_trans.gif', '24', '15') . ' ' . tep_draw_input_field('products_price', $pInfo->products_price); ?></td>

</tr>

<tr bgcolor="#ebebff">

<td class="main"><?php echo TEXT_PRODUCTS_PRICE_KIDS; ?></td>

<td class="main"><?php echo tep_draw_separator('pixel_trans.gif', '24', '15') . ' ' . tep_draw_input_field('products_kids_price', $pInfo->products_kids_price); ?></td>

</tr>

<tr bgcolor="#ebebff">

<td class="main"><?php echo TEXT_PRODUCTS_PRICE_NONRIDERS; ?></td>

<td class="main"><?php echo tep_draw_separator('pixel_trans.gif', '24', '15') . ' ' . tep_draw_input_field('products_nonriders_price', $pInfo->products_nonriders_price); ?></td>

</tr>

<tr bgcolor="#ebebff">

<td class="main" colspan="2"><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td>

</tr>

<tr bgcolor="#ebebff">

<td class="main" colspan="2"><?php echo TEXT_PRODUCTS_PRICE_ADDWEEK; ?></td>

</tr>

<tr bgcolor="#ebebff">

<td class="main"><?php echo TEXT_PRODUCTS_PRICE_ADDWEEK_ADULTS; ?></td>

<td class="main"><?php echo tep_draw_separator('pixel_trans.gif', '24', '15') . ' ' . tep_draw_input_field('products_addweek_price_adults', $pInfo->products_addweek_price_adults); ?></td>

</tr>

<tr bgcolor="#ebebff">

<td class="main"><?php echo TEXT_PRODUCTS_PRICE_ADDWEEK_KIDS; ?></td>

<td class="main"><?php echo tep_draw_separator('pixel_trans.gif', '24', '15') . ' ' . tep_draw_input_field('products_addweek_price_kids', $pInfo->products_addweek_price_kids); ?></td>

</tr>

<tr bgcolor="#ebebff">

<td class="main"><?php echo TEXT_PRODUCTS_PRICE_ADDWEEK_NONRIDERS; ?></td>

<td class="main"><?php echo tep_draw_separator('pixel_trans.gif', '24', '15') . ' ' . tep_draw_input_field('products_addweek_price_nonriders', $pInfo->products_addweek_price_nonriders); ?></td>

</tr>

<tr>

<td colspan="2"><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td>

</tr>

<?php

for ($i=0, $n=sizeof($languages); $i<$n; $i++) {

?>

<tr>

<td class="main" valign="top"><?php if ($i == 0) echo TEXT_PRODUCTS_DESCRIPTION; ?></td>

<td><table border="0" cellspacing="0" cellpadding="0">

<tr>

<td class="main" valign="top"><?php echo tep_image(DIR_WS_CATALOG_LANGUAGES . $languages[$i]['directory'] . '/images/' . $languages[$i]['image'], $languages[$i]['name']); ?> </td>

<td class="main"><?php echo tep_draw_textarea_field('products_description[' . $languages[$i]['id'] . ']', 'soft', '70', '15', (isset($products_description[$languages[$i]['id']]) ? $products_description[$languages[$i]['id']] : tep_get_products_description($pInfo->products_id, $languages[$i]['id']))); ?></td>

 

</tr>

</table></td>

</tr>

<tr>

<td colspan="2" class="main"><hr><?php echo TEXT_PRODUCT_METTA_INFO; ?></td>

</tr>

<?php

}

for ($i=0, $n=sizeof($languages); $i<$n; $i++) {

?>

<tr>

<td colspan="2"><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td>

</tr>

<tr>

<td class="main" valign="top"><?php if ($i == 0) echo TEXT_PRODUCTS_PAGE_TITLE; ?></td>

<td><table border="0" cellspacing="0" cellpadding="0">

<tr>

<td class="main" valign="top"><?php echo tep_image(DIR_WS_CATALOG_LANGUAGES . $languages[$i]['directory'] . '/images/' . $languages[$i]['image'], $languages[$i]['name']); ?> </td>

<td class="main"><?php echo tep_draw_textarea_field('products_head_title_tag[' . $languages[$i]['id'] . ']', 'soft', '70', '5', (isset($products_head_title_tag[$languages[$i]['id']]) ? $products_head_title_tag[$languages[$i]['id']] : tep_get_products_head_title_tag($pInfo->products_id, $languages[$i]['id']))); ?></td>

</tr>

</table></td>

</tr>

<?php

}

for ($i=0, $n=sizeof($languages); $i<$n; $i++) {

?>

<tr>

<td colspan="2"><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td>

</tr>

<tr>

<td class="main" valign="top"><?php if ($i == 0) echo TEXT_PRODUCTS_HEADER_DESCRIPTION; ?></td>

<td><table border="0" cellspacing="0" cellpadding="0">

<tr>

<td class="main" valign="top"><?php echo tep_image(DIR_WS_CATALOG_LANGUAGES . $languages[$i]['directory'] . '/images/' . $languages[$i]['image'], $languages[$i]['name']); ?> </td>

<td class="main"><?php echo tep_draw_textarea_field('products_head_desc_tag[' . $languages[$i]['id'] . ']', 'soft', '70', '5', (isset($products_head_desc_tag[$languages[$i]['id']]) ? $products_head_desc_tag[$languages[$i]['id']] : tep_get_products_head_desc_tag($pInfo->products_id, $languages[$i]['id']))); ?></td>

</tr>

</table></td>

</tr>

<?php

}

for ($i=0, $n=sizeof($languages); $i<$n; $i++) {

?>

<tr>

<td colspan="2"><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td>

</tr>

<tr>

<td class="main" valign="top"><?php if ($i == 0) echo TEXT_PRODUCTS_KEYWORDS; ?></td>

<td><table border="0" cellspacing="0" cellpadding="0">

<tr>

<td class="main" valign="top"><?php echo tep_image(DIR_WS_CATALOG_LANGUAGES . $languages[$i]['directory'] . '/images/' . $languages[$i]['image'], $languages[$i]['name']); ?> </td>

<td class="main"><?php echo tep_draw_textarea_field('products_head_keywords_tag[' . $languages[$i]['id'] . ']', 'soft', '70', '5', (isset($products_head_keywords_tag[$languages[$i]['id']]) ? $products_head_keywords_tag[$languages[$i]['id']] : tep_get_products_head_keywords_tag($pInfo->products_id, $languages[$i]['id']))); ?></td>

</tr>

</table></td>

</tr>

<?php

}

?>

<tr>

<td colspan="2"><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td>

</tr>

<tr>

<td colspan="2" class="main"><hr></td>

</tr>

 

<tr>

<td class="main"><?php echo TEXT_PRODUCTS_IMAGE; ?></td>

<td class="main"><?php echo tep_draw_separator('pixel_trans.gif', '24', '15') . ' ' . tep_draw_file_field('products_image') . '<br>' . tep_draw_separator('pixel_trans.gif', '24', '15') . ' ' . $pInfo->products_image . tep_draw_hidden_field('products_previous_image', $pInfo->products_image); ?></td>

</tr>

<tr>

<td class="main"><?php echo TEXT_PRODUCTS_MAP_IMAGE; ?></td>

<td class="main"><?php echo tep_draw_separator('pixel_trans.gif', '24', '15') . ' ' . tep_draw_file_field('products_map_image') . '<br>' . tep_draw_separator('pixel_trans.gif', '24', '15') . ' ' . $pInfo->products_map_image . tep_draw_hidden_field('products_previous_map_image', $pInfo->products_map_image); ?></td>

</tr>

<tr>

<td colspan="2"><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td>

</tr>

Edited by Prince Tom
Link to comment
Share on other sites

...and this is the rest of the page code :-" :

 

 

</tr>

<?php

for ($i=0, $n=sizeof($languages); $i<$n; $i++) {

?>

<tr>

<td class="main"><?php if ($i == 0) echo TEXT_PRODUCTS_URL . '<br><small>' . TEXT_PRODUCTS_URL_WITHOUT_HTTP . '</small>'; ?></td>

<td class="main"><?php echo tep_image(DIR_WS_CATALOG_LANGUAGES . $languages[$i]['directory'] . '/images/' . $languages[$i]['image'], $languages[$i]['name']) . ' ' . tep_draw_input_field('products_url[' . $languages[$i]['id'] . ']', (isset($products_url[$languages[$i]['id']]) ? $products_url[$languages[$i]['id']] : tep_get_products_url($pInfo->products_id, $languages[$i]['id']))); ?></td>

</tr>

<?php

}

?>

<tr>

<td colspan="2">

<?php

echo tep_draw_separator('pixel_trans.gif', '1', '10');

echo tep_draw_hidden_field('products_weight', $pInfo->products_weight);

echo tep_draw_hidden_field('products_model', $pInfo->products_model);

echo tep_draw_hidden_field('products_quantity', '1000');

?>

</td>

</tr>

</table></td>

</tr>

<tr>

<td><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td>

</tr>

<tr>

<td class="main" align="right"><?php echo tep_draw_hidden_field('products_date_added', (tep_not_null($pInfo->products_date_added) ? $pInfo->products_date_added : date('Y-m-d'))) . tep_image_submit('button_preview.gif', IMAGE_PREVIEW) . '  <a href="' . tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . (isset($HTTP_GET_VARS['pID']) ? '&pID=' . $HTTP_GET_VARS['pID'] : '')) . '">' . tep_image_button('button_cancel.gif', IMAGE_CANCEL) . '</a>'; ?></td>

</tr>

</table></form>

<?php

} elseif ($action == 'new_product_preview') {

if (tep_not_null($HTTP_POST_VARS)) {

$pInfo = new objectInfo($HTTP_POST_VARS);

$products_name = $HTTP_POST_VARS['products_name'];

$products_description = $HTTP_POST_VARS['products_description'];

$products_url = $HTTP_POST_VARS['products_url'];

} else {

$product_query = tep_db_query("select p.products_id, pd.language_id, pd.products_name, pd.products_description, pd.products_head_title_tag, pd.products_head_desc_tag, pd.products_head_keywords_tag, pd.products_url, p.products_quantity, p.products_model, p.products_image, p.products_map_image, p.products_price, p.products_weight, p.products_date_added, p.products_last_modified, p.products_date_available, p.products_status, p.manufacturers_id from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_id = pd.products_id and p.products_id = '" . (int)$HTTP_GET_VARS['pID'] . "'");

$product = tep_db_fetch_array($product_query);

 

$pInfo = new objectInfo($product);

$products_image_name = $pInfo->products_image;

$products_map_image_name = $pInfo->products_map_image;

}

 

$form_action = (isset($HTTP_GET_VARS['pID'])) ? 'update_product' : 'insert_product';

 

echo tep_draw_form($form_action, FILENAME_CATEGORIES, 'cPath=' . $cPath . (isset($HTTP_GET_VARS['pID']) ? '&pID=' . $HTTP_GET_VARS['pID'] : '') . '&action=' . $form_action, 'post', 'enctype="multipart/form-data"');

 

$languages = tep_get_languages();

for ($i=0, $n=sizeof($languages); $i<$n; $i++) {

if (isset($HTTP_GET_VARS['read']) && ($HTTP_GET_VARS['read'] == 'only')) {

$pInfo->products_name = tep_get_products_name($pInfo->products_id, $languages[$i]['id']);

$pInfo->products_description = tep_get_products_description($pInfo->products_id, $languages[$i]['id']);

$pInfo->products_head_title_tag = tep_db_prepare_input($products_head_title_tag[$languages[$i]['id']]);

$pInfo->products_head_desc_tag = tep_db_prepare_input($products_head_desc_tag[$languages[$i]['id']]);

$pInfo->products_head_keywords_tag = tep_db_prepare_input($products_head_keywords_tag[$languages[$i]['id']]);

$pInfo->products_url = tep_get_products_url($pInfo->products_id, $languages[$i]['id']);

} else {

$pInfo->products_name = tep_db_prepare_input($products_name[$languages[$i]['id']]);

$pInfo->products_description = tep_db_prepare_input($products_description[$languages[$i]['id']]);

$pInfo->products_head_title_tag = tep_db_prepare_input($products_head_title_tag[$languages[$i]['id']]);

$pInfo->products_head_desc_tag = tep_db_prepare_input($products_head_desc_tag[$languages[$i]['id']]);

$pInfo->products_head_keywords_tag = tep_db_prepare_input($products_head_keywords_tag[$languages[$i]['id']]);

$pInfo->products_url = tep_db_prepare_input($products_url[$languages[$i]['id']]);

}

?>

<table border="0" width="100%" cellspacing="0" cellpadding="2">

<tr>

<td><table border="0" width="100%" cellspacing="0" cellpadding="0">

<tr>

<td class="pageHeading"><?php echo tep_image(DIR_WS_CATALOG_LANGUAGES . $languages[$i]['directory'] . '/images/' . $languages[$i]['image'], $languages[$i]['name']) . ' ' . $pInfo->products_name . ' ' . $pInfo->product_code ; ?></td>

<td class="pageHeading" align="right"><?php echo $currencies->format($pInfo->products_price); ?></td>

</tr>

</table></td>

</tr>

<tr>

<td><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td>

</tr>

<tr>

<td><?php print_r($pInfo->week_days) ?></td>

</tr>

<tr>

<td class="main"><?php echo tep_image(DIR_WS_CATALOG_IMAGES . $products_image_name, $pInfo->products_name, SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT, 'align="right" hspace="5" vspace="5"') . $pInfo->products_description; ?></td>

</tr>

<?php

if ($products_map_image_name != '')

{

?>

<tr>

<td class="main"><?php echo tep_image(DIR_WS_CATALOG_IMAGES . $products_map_image_name, 'Map: ' . $products_map_image_name, SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT, 'align="right" hspace="5" vspace="5"'); ?></td>

</tr>

 

<?php

// End of MAP if statement

}

if ($pInfo->products_url) {

?>

<tr>

<td><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td>

</tr>

<tr>

<td class="main"><?php echo sprintf(TEXT_PRODUCT_MORE_INFORMATION, $pInfo->products_url); ?></td>

</tr>

<?php

}

?>

<tr>

<td><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td>

</tr>

<?php

if ($pInfo->products_date_available > date('Y-m-d')) {

?>

<tr>

<td align="center" class="smallText"><?php echo sprintf(TEXT_PRODUCT_DATE_AVAILABLE, tep_date_long($pInfo->products_date_available)); ?></td>

</tr>

<?php

} else {

?>

<tr>

<td align="center" class="smallText"><?php echo sprintf(TEXT_PRODUCT_DATE_ADDED, tep_date_long($pInfo->products_date_added)); ?></td>

</tr>

<?php

}

?>

<tr>

<td><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td>

</tr>

<?php

}

 

if (isset($HTTP_GET_VARS['read']) && ($HTTP_GET_VARS['read'] == 'only')) {

if (isset($HTTP_GET_VARS['origin'])) {

$pos_params = strpos($HTTP_GET_VARS['origin'], '?', 0);

if ($pos_params != false) {

$back_url = substr($HTTP_GET_VARS['origin'], 0, $pos_params);

$back_url_params = substr($HTTP_GET_VARS['origin'], $pos_params + 1);

} else {

$back_url = $HTTP_GET_VARS['origin'];

$back_url_params = '';

}

} else {

$back_url = FILENAME_CATEGORIES;

$back_url_params = 'cPath=' . $cPath . '&pID=' . $pInfo->products_id;

}

?>

<tr>

<td align="right"><?php echo '<a href="' . tep_href_link($back_url, $back_url_params, 'NONSSL') . '">' . tep_image_button('button_back.gif', IMAGE_BACK) . '</a>'; ?></td>

</tr>

<?php

} else {

?>

<tr>

<td align="right" class="smallText">

<?php

/* Re-Post all POST'ed variables */

reset($HTTP_POST_VARS);

while (list($key, $value) = each($HTTP_POST_VARS)) {

if (!is_array($HTTP_POST_VARS[$key])) {

echo tep_draw_hidden_field($key, htmlspecialchars(stripslashes($value)));

}

}

 

echo tep_draw_hidden_field('products_name[' . $languages[$i]['id'] . ']', htmlspecialchars(stripslashes($products_name[$languages[$i]['id']])));

echo tep_draw_hidden_field('products_description[' . $languages[$i]['id'] . ']', htmlspecialchars(stripslashes($products_description[$languages[$i]['id']])));

echo tep_draw_hidden_field('products_head_title_tag[' . $languages[$i]['id'] . ']', htmlspecialchars(stripslashes($products_head_title_tag[$languages[$i]['id']])));

echo tep_draw_hidden_field('products_head_desc_tag[' . $languages[$i]['id'] . ']', htmlspecialchars(stripslashes($products_head_desc_tag[$languages[$i]['id']])));

echo tep_draw_hidden_field('products_head_keywords_tag[' . $languages[$i]['id'] . ']', htmlspecialchars(stripslashes($products_head_keywords_tag[$languages[$i]['id']])));

echo tep_draw_hidden_field('products_url[' . $languages[$i]['id'] . ']', htmlspecialchars(stripslashes($products_url[$languages[$i]['id']])));

} }

 

for ($i=0, $n=sizeof($HTTP_POST_VARS['week_days']); $i<$n; $i++)

{

echo tep_draw_hidden_field('week_days[]', htmlspecialchars(stripslashes($HTTP_POST_VARS['week_days'][$i])) );

}

 

echo tep_draw_hidden_field('products_image', stripslashes($products_image_name));

echo tep_draw_hidden_field('products_map_image', stripslashes($products_map_image_name));

 

echo tep_image_submit('button_back.gif', IMAGE_BACK, 'name="edit"') . '  ';

 

if (isset($HTTP_GET_VARS['pID'])) {

echo tep_image_submit('button_update.gif', IMAGE_UPDATE);

} else {

echo tep_image_submit('button_insert.gif', IMAGE_INSERT);

}

echo '  <a href="' . tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . (isset($HTTP_GET_VARS['pID']) ? '&pID=' . $HTTP_GET_VARS['pID'] : '')) . '">' . tep_image_button('button_cancel.gif', IMAGE_CANCEL) . '</a>';

?></td>

</tr>

</table></form>

<?php

}

}

elseif($action == 'edit_fact_show')

{

// YIHAA PRODUCT FACT

 

/*

 

select pd.products_name, py.*

 

from products p

inner join products_description pd on p.products_id = pd.products_id

inner join products_yihaa py on p.products_id = py.products_id

 

where p.products_id = '43' and pd.language_id = '4' and py.language_id = '4'

 

*/

 

 

 

$parameters = array('products_name' => '');

$pInfo = new objectInfo($parameters);

 

if (isset($HTTP_GET_VARS['pID']) && empty($HTTP_POST_VARS))

{

 

$sql = "select pd.products_name, p.products_id from " . TABLE_PRODUCTS . " p inner join products_description pd on p.products_id = pd.products_id where p.products_id = '" . (int)$HTTP_GET_VARS['pID'] . "' and pd.language_id = '" . (int)$languages_id . "'";

$messageStack->add($sql, 'log');

$product_query = tep_db_query($sql);

$product = tep_db_fetch_array($product_query);

$pInfo->objectInfo($product);

}

 

$heading = array();

$heading[] = array('text' => '<b>' . TEXT_EDIT_FACT . '</b>');

new yihaaSimpleHeadingBox($heading);

 

 

$form = tep_draw_form('edit_fact', FILENAME_CATEGORIES, 'cPath=' . $cPath . '&action=edit_fact_save') . tep_draw_hidden_field('products_id', $pInfo->products_id);

 

$contents = array();

$contents[] = array('text' => tep_draw_separator('pixel_trans.gif', '1', '15'));

$contents[] = array('text' => '<b>' . TEXT_EDIT_FACT . '</b> | ' . $pInfo->products_name, 'params' => 'class="pageHeading2Normal"');

$contents[] = array('text' => tep_draw_separator('pixel_trans.gif', '1', '15'));

 

 

$languages = tep_get_languages();

 

$row = 0;

$col=0;

$nr_columns = 3;

 

$inner_content = array();

 

 

for ($i=0, $n=sizeof($languages); $i<$n; $i++)

{

 

$inner_content[$row][$col] = array('text' => draw_edit_product_fact_input($languages[$i], $pInfo->products_id), 'params' => 'valign="top"');

 

if ($col == $nr_columns - 1)

$row++;

 

$col = ($col + 1) % $nr_columns;

 

}

 

$box = new tableBox(0);

$box->table_cellpadding='0';

$box->table_width='0%';

 

 

$contents[] = array('text' => $box->tableBox($inner_content));

 

 

$contents[] = array('align' => 'center', 'text' => '<br>' . tep_image_submit('button_update.gif', IMAGE_UPDATE) . ' ' . tep_image_submit('button_save.gif', IMAGE_SAVE, 'name="save_fact"') . ' <a href="' . tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&pID=' . $pInfo->products_id) . '">' . tep_image_button('button_cancel.gif', IMAGE_CANCEL) . '</a>');

 

$box = new yihaaBox(0, '100%', false);

 

$cont = array();

$cont[] = array('text' => $box->yihaaBox($contents, '100%', false), 'form' => $form);

new yihaaBox($cont);

 

 

// YIHAA PRODUCT FACT EOF

}

else {

?>

<table border="0" width="100%" cellspacing="0" cellpadding="2">

<tr>

<td><table border="0" width="100%" cellspacing="0" cellpadding="0">

<tr>

<td class="pageHeading"><?php echo HEADING_TITLE; ?></td>

<td class="pageHeading" align="right"><?php echo tep_draw_separator('pixel_trans.gif', 1, HEADING_IMAGE_HEIGHT); ?></td>

<td align="right"><table border="0" width="100%" cellspacing="0" cellpadding="0">

<tr>

<td class="smallText" align="right">

<?php

echo tep_draw_form('search', FILENAME_CATEGORIES, '', 'get');

echo HEADING_TITLE_SEARCH . ' ' . tep_draw_input_field('search');

echo '</form>';

?>

</td>

</tr>

<tr>

<td class="smallText" align="right">

<?php

echo tep_draw_form('goto', FILENAME_CATEGORIES, '', 'get');

echo HEADING_TITLE_GOTO . ' ' . tep_draw_pull_down_menu('cPath', tep_get_category_tree(), $current_category_id, 'onChange="this.form.submit();"');

echo '</form>';

?>

</td>

</tr>

</table></td>

</tr>

</table></td>

</tr>

<tr>

<td><table border="0" width="100%" cellspacing="0" cellpadding="0">

<tr>

<td valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="2">

<tr class="dataTableHeadingRow">

<td class="dataTableHeadingContent"><?php echo TABLE_HEADING_CATEGORIES_PRODUCTS; ?></td>

<td class="dataTableHeadingContent" align="center"><?php echo TABLE_HEADING_STATUS; ?></td>

<td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_ACTION; ?> </td>

</tr>

<?php

$categories_count = 0;

$rows = 0;

if (isset($HTTP_GET_VARS['search'])) {

$search = tep_db_prepare_input($HTTP_GET_VARS['search']);

 

$categories_query = tep_db_query("select c.categories_id, cd.categories_name, c.categories_image, c.parent_id, c.sort_order, c.date_added, c.last_modified from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "' and cd.categories_name like '%" . tep_db_input($search) . "%' order by c.sort_order, cd.categories_name");

} else {

$categories_query = tep_db_query("select c.categories_id, cd.categories_name, c.categories_image, c.parent_id, c.sort_order, c.date_added, c.last_modified from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '" . (int)$current_category_id . "' and c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "' order by c.sort_order, cd.categories_name");

}

while ($categories = tep_db_fetch_array($categories_query)) {

$categories_count++;

$rows++;

 

// Get parent_id for subcategories if search

if (isset($HTTP_GET_VARS['search'])) $cPath= $categories['parent_id'];

 

if ((!isset($HTTP_GET_VARS['cID']) && !isset($HTTP_GET_VARS['pID']) || (isset($HTTP_GET_VARS['cID']) && ($HTTP_GET_VARS['cID'] == $categories['categories_id']))) && !isset($cInfo) && (substr($action, 0, 3) != 'new')) {

$category_childs = array('childs_count' => tep_childs_in_category_count($categories['categories_id']));

$category_products = array('products_count' => tep_products_in_category_count($categories['categories_id']));

 

$cInfo_array = array_merge($categories, $category_childs, $category_products);

$cInfo = new objectInfo($cInfo_array);

}

 

if (isset($cInfo) && is_object($cInfo) && ($categories['categories_id'] == $cInfo->categories_id) ) {

echo ' <tr id="defaultSelected" class="dataTableRowSelected" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)" onclick="document.location.href=\'' . tep_href_link(FILENAME_CATEGORIES, tep_get_path($categories['categories_id'])) . '\'">' . "\n";

} else {

echo ' <tr class="dataTableRow" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)" onclick="document.location.href=\'' . tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&cID=' . $categories['categories_id']) . '\'">' . "\n";

}

?>

<td class="dataTableContent"><?php echo '<a href="' . tep_href_link(FILENAME_CATEGORIES, tep_get_path($categories['categories_id'])) . '">' . tep_image(DIR_WS_ICONS . 'folder.gif', ICON_FOLDER) . '</a> <b>' . $categories['categories_name'] . '</b>'; ?></td>

<td class="dataTableContent" align="center"> </td>

<td class="dataTableContent" align="right"><?php if (isset($cInfo) && is_object($cInfo) && ($categories['categories_id'] == $cInfo->categories_id) ) { echo tep_image(DIR_WS_IMAGES . 'icon_arrow_right.gif', ''); } else { echo '<a href="' . tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&cID=' . $categories['categories_id']) . '">' . tep_image(DIR_WS_IMAGES . 'icon_info.gif', IMAGE_ICON_INFO) . '</a>'; } ?> </td>

</tr>

<?php

}

 

$products_count = 0;

if (isset($HTTP_GET_VARS['search'])) {

$products_query = tep_db_query("select p.products_id, pd.products_name, p.products_quantity, p.products_image, p.products_map_image, p.products_price, p.products_date_added, p.products_last_modified, p.products_date_available, p.products_status, p2c.categories_id from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_id = pd.products_id and pd.language_id = '" . (int)$languages_id . "' and p.products_id = p2c.products_id and pd.products_name like '%" . tep_db_input($search) . "%' order by pd.products_name");

} else {

$products_query = tep_db_query("select p.products_id, pd.products_name, p.products_quantity, p.products_image, p.products_map_image, p.products_price, p.products_date_added, p.products_last_modified, p.products_date_available, p.products_status from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_id = pd.products_id and pd.language_id = '" . (int)$languages_id . "' and p.products_id = p2c.products_id and p2c.categories_id = '" . (int)$current_category_id . "' order by pd.products_name");

}

while ($products = tep_db_fetch_array($products_query)) {

$products_count++;

$rows++;

 

// Get categories_id for product if search

if (isset($HTTP_GET_VARS['search'])) $cPath = $products['categories_id'];

 

if ( (!isset($HTTP_GET_VARS['pID']) && !isset($HTTP_GET_VARS['cID']) || (isset($HTTP_GET_VARS['pID']) && ($HTTP_GET_VARS['pID'] == $products['products_id']))) && !isset($pInfo) && !isset($cInfo) && (substr($action, 0, 3) != 'new')) {

// find out the rating average from customer reviews

$reviews_query = tep_db_query("select (avg(reviews_rating) / 5 * 100) as average_rating from " . TABLE_REVIEWS . " where products_id = '" . (int)$products['products_id'] . "'");

$reviews = tep_db_fetch_array($reviews_query);

$pInfo_array = array_merge($products, $reviews);

$pInfo = new objectInfo($pInfo_array);

}

 

if (isset($pInfo) && is_object($pInfo) && ($products['products_id'] == $pInfo->products_id) ) {

echo ' <tr id="defaultSelected" class="dataTableRowSelected" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)" onclick="document.location.href=\'' . tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&pID=' . $products['products_id'] . '&action=new_product_preview&read=only') . '\'">' . "\n";

} else {

echo ' <tr class="dataTableRow" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)" onclick="document.location.href=\'' . tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&pID=' . $products['products_id']) . '\'">' . "\n";

}

?>

<td class="dataTableContent"><?php echo '<a href="' . tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&pID=' . $products['products_id'] . '&action=new_product_preview&read=only') . '">' . tep_image(DIR_WS_ICONS . 'preview.gif', ICON_PREVIEW) . '</a> ' . $products['products_name']; ?></td>

<td class="dataTableContent" align="center">

<?php

if ($products['products_status'] == '1') {

echo tep_image(DIR_WS_IMAGES . 'icon_status_green.gif', IMAGE_ICON_STATUS_GREEN, 10, 10) . '  <a href="' . tep_href_link(FILENAME_CATEGORIES, 'action=setflag&flag=0&pID=' . $products['products_id'] . '&cPath=' . $cPath) . '">' . tep_image(DIR_WS_IMAGES . 'icon_status_red_light.gif', IMAGE_ICON_STATUS_RED_LIGHT, 10, 10) . '</a>';

} else {

echo '<a href="' . tep_href_link(FILENAME_CATEGORIES, 'action=setflag&flag=1&pID=' . $products['products_id'] . '&cPath=' . $cPath) . '">' . tep_image(DIR_WS_IMAGES . 'icon_status_green_light.gif', IMAGE_ICON_STATUS_GREEN_LIGHT, 10, 10) . '</a>  ' . tep_image(DIR_WS_IMAGES . 'icon_status_red.gif', IMAGE_ICON_STATUS_RED, 10, 10);

}

?></td>

<td class="dataTableContent" align="right"><?php if (isset($pInfo) && is_object($pInfo) && ($products['products_id'] == $pInfo->products_id)) { echo tep_image(DIR_WS_IMAGES . 'icon_arrow_right.gif', ''); } else { echo '<a href="' . tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&pID=' . $products['products_id']) . '">' . tep_image(DIR_WS_IMAGES . 'icon_info.gif', IMAGE_ICON_INFO) . '</a>'; } ?> </td>

</tr>

<?php

}

 

$cPath_back = '';

if (sizeof($cPath_array) > 0) {

for ($i=0, $n=sizeof($cPath_array)-1; $i<$n; $i++) {

if (empty($cPath_back)) {

$cPath_back .= $cPath_array[$i];

} else {

$cPath_back .= '_' . $cPath_array[$i];

}

}

}

 

$cPath_back = (tep_not_null($cPath_back)) ? 'cPath=' . $cPath_back . '&' : '';

?>

<tr>

<td colspan="3"><table border="0" width="100%" cellspacing="0" cellpadding="2">

<tr>

<td class="smallText"><?php echo TEXT_CATEGORIES . ' ' . $categories_count . '<br>' . TEXT_PRODUCTS . ' ' . $products_count; ?></td>

<td align="right" class="smallText"><?php if (sizeof($cPath_array) > 0) echo '<a href="' . tep_href_link(FILENAME_CATEGORIES, $cPath_back . 'cID=' . $current_category_id) . '">' . tep_image_button('button_back.gif', IMAGE_BACK) . '</a> '; if (!isset($HTTP_GET_VARS['search'])) echo '<a href="' . tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&action=new_category') . '">' . tep_image_button('button_new_category.gif', IMAGE_NEW_CATEGORY) . '</a> <a href="' . tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&action=new_product') . '">' . tep_image_button('button_new_product.gif', IMAGE_NEW_PRODUCT) . '</a>'; ?> </td>

</tr>

</table></td>

</tr>

</table></td>

<?php

$heading = array();

$contents = array();

switch ($action) {

case 'new_category':

$heading[] = array('text' => '<b>' . TEXT_INFO_HEADING_NEW_CATEGORY . '</b>');

 

$contents = array('form' => tep_draw_form('newcategory', FILENAME_CATEGORIES, 'action=insert_category&cPath=' . $cPath, 'post', 'enctype="multipart/form-data"'));

$contents[] = array('text' => TEXT_NEW_CATEGORY_INTRO);

 

$category_inputs_string = '';

$languages = tep_get_languages();

for ($i = 0, $n = sizeof($languages); $i < $n; $i++) {

$category_inputs_string .= '<br>' . tep_image(DIR_WS_CATALOG_LANGUAGES . $languages[$i]['directory'] . '/images/' . $languages[$i]['image'], $languages[$i]['name']) . ' ' . tep_draw_input_field('categories_name[' . $languages[$i]['id'] . ']');

}

 

$contents[] = array('text' => '<br>' . TEXT_CATEGORIES_NAME . $category_inputs_string);

$contents[] = array('text' => '<br>' . TEXT_CATEGORIES_IMAGE . '<br>' . tep_draw_file_field('categories_image'));

$contents[] = array('text' => '<br>' . TEXT_SORT_ORDER . '<br>' . tep_draw_input_field('sort_order', '', 'size="2"'));

$contents[] = array('align' => 'center', 'text' => '<br>' . tep_image_submit('button_save.gif', IMAGE_SAVE) . ' <a href="' . tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath) . '">' . tep_image_button('button_cancel.gif', IMAGE_CANCEL) . '</a>');

break;

case 'edit_category':

$heading[] = array('text' => '<b>' . TEXT_INFO_HEADING_EDIT_CATEGORY . '</b>');

 

$contents = array('form' => tep_draw_form('categories', FILENAME_CATEGORIES, 'action=update_category&cPath=' . $cPath, 'post', 'enctype="multipart/form-data"') . tep_draw_hidden_field('categories_id', $cInfo->categories_id));

$contents[] = array('text' => TEXT_EDIT_INTRO);

 

$category_inputs_string = '';

$languages = tep_get_languages();

for ($i = 0, $n = sizeof($languages); $i < $n; $i++) {

$category_inputs_string .= '<br>' . tep_image(DIR_WS_CATALOG_LANGUAGES . $languages[$i]['directory'] . '/images/' . $languages[$i]['image'], $languages[$i]['name']) . ' ' . tep_draw_input_field('categories_name[' . $languages[$i]['id'] . ']', tep_get_category_name($cInfo->categories_id, $languages[$i]['id']));

}

 

$contents[] = array('text' => '<br>' . TEXT_EDIT_CATEGORIES_NAME . $category_inputs_string);

$contents[] = array('text' => '<br>' . tep_image(DIR_WS_CATALOG_IMAGES . $cInfo->categories_image, $cInfo->categories_name) . '<br>' . DIR_WS_CATALOG_IMAGES . '<br><b>' . $cInfo->categories_image . '</b>');

$contents[] = array('text' => '<br>' . TEXT_EDIT_CATEGORIES_IMAGE . '<br>' . tep_draw_file_field('categories_image'));

$contents[] = array('text' => '<br>' . TEXT_EDIT_SORT_ORDER . '<br>' . tep_draw_input_field('sort_order', $cInfo->sort_order, 'size="2"'));

$contents[] = array('align' => 'center', 'text' => '<br>' . tep_image_submit('button_save.gif', IMAGE_SAVE) . ' <a href="' . tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&cID=' . $cInfo->categories_id) . '">' . tep_image_button('button_cancel.gif', IMAGE_CANCEL) . '</a>');

break;

case 'delete_category':

$heading[] = array('text' => '<b>' . TEXT_INFO_HEADING_DELETE_CATEGORY . '</b>');

 

$contents = array('form' => tep_draw_form('categories', FILENAME_CATEGORIES, 'action=delete_category_confirm&cPath=' . $cPath) . tep_draw_hidden_field('categories_id', $cInfo->categories_id));

$contents[] = array('text' => TEXT_DELETE_CATEGORY_INTRO);

$contents[] = array('text' => '<br><b>' . $cInfo->categories_name . '</b>');

if ($cInfo->childs_count > 0) $contents[] = array('text' => '<br>' . sprintf(TEXT_DELETE_WARNING_CHILDS, $cInfo->childs_count));

if ($cInfo->products_count > 0) $contents[] = array('text' => '<br>' . sprintf(TEXT_DELETE_WARNING_PRODUCTS, $cInfo->products_count));

$contents[] = array('align' => 'center', 'text' => '<br>' . tep_image_submit('button_delete.gif', IMAGE_DELETE) . ' <a href="' . tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&cID=' . $cInfo->categories_id) . '">' . tep_image_button('button_cancel.gif', IMAGE_CANCEL) . '</a>');

break;

case 'move_category':

$heading[] = array('text' => '<b>' . TEXT_INFO_HEADING_MOVE_CATEGORY . '</b>');

 

$contents = array('form' => tep_draw_form('categories', FILENAME_CATEGORIES, 'action=move_category_confirm&cPath=' . $cPath) . tep_draw_hidden_field('categories_id', $cInfo->categories_id));

$contents[] = array('text' => sprintf(TEXT_MOVE_CATEGORIES_INTRO, $cInfo->categories_name));

$contents[] = array('text' => '<br>' . sprintf(TEXT_MOVE, $cInfo->categories_name) . '<br>' . tep_draw_pull_down_menu('move_to_category_id', tep_get_category_tree(), $current_category_id));

$contents[] = array('align' => 'center', 'text' => '<br>' . tep_image_submit('button_move.gif', IMAGE_MOVE) . ' <a href="' . tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&cID=' . $cInfo->categories_id) . '">' . tep_image_button('button_cancel.gif', IMAGE_CANCEL) . '</a>');

break;

case 'delete_product':

$heading[] = array('text' => '<b>' . TEXT_INFO_HEADING_DELETE_PRODUCT . '</b>');

 

$contents = array('form' => tep_draw_form('products', FILENAME_CATEGORIES, 'action=delete_product_confirm&cPath=' . $cPath) . tep_draw_hidden_field('products_id', $pInfo->products_id));

$contents[] = array('text' => TEXT_DELETE_PRODUCT_INTRO);

$contents[] = array('text' => '<br><b>' . $pInfo->products_name . '</b>');

 

$product_categories_string = '';

$product_categories = tep_generate_category_path($pInfo->products_id, 'product');

for ($i = 0, $n = sizeof($product_categories); $i < $n; $i++) {

$category_path = '';

for ($j = 0, $k = sizeof($product_categories[$i]); $j < $k; $j++) {

$category_path .= $product_categories[$i][$j]['text'] . ' > ';

}

$category_path = substr($category_path, 0, -16);

$product_categories_string .= tep_draw_checkbox_field('product_categories[]', $product_categories[$i][sizeof($product_categories[$i])-1]['id'], true) . ' ' . $category_path . '<br>';

}

$product_categories_string = substr($product_categories_string, 0, -4);

 

$contents[] = array('text' => '<br>' . $product_categories_string);

$contents[] = array('align' => 'center', 'text' => '<br>' . tep_image_submit('button_delete.gif', IMAGE_DELETE) . ' <a href="' . tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&pID=' . $pInfo->products_id) . '">' . tep_image_button('button_cancel.gif', IMAGE_CANCEL) . '</a>');

break;

case 'move_product':

$heading[] = array('text' => '<b>' . TEXT_INFO_HEADING_MOVE_PRODUCT . '</b>');

 

$contents = array('form' => tep_draw_form('products', FILENAME_CATEGORIES, 'action=move_product_confirm&cPath=' . $cPath) . tep_draw_hidden_field('products_id', $pInfo->products_id));

$contents[] = array('text' => sprintf(TEXT_MOVE_PRODUCTS_INTRO, $pInfo->products_name));

$contents[] = array('text' => '<br>' . TEXT_INFO_CURRENT_CATEGORIES . '<br><b>' . tep_output_generated_category_path($pInfo->products_id, 'product') . '</b>');

$contents[] = array('text' => '<br>' . sprintf(TEXT_MOVE, $pInfo->products_name) . '<br>' . tep_draw_pull_down_menu('move_to_category_id', tep_get_category_tree(), $current_category_id));

$contents[] = array('align' => 'center', 'text' => '<br>' . tep_image_submit('button_move.gif', IMAGE_MOVE) . ' <a href="' . tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&pID=' . $pInfo->products_id) . '">' . tep_image_button('button_cancel.gif', IMAGE_CANCEL) . '</a>');

break;

case 'copy_to':

$heading[] = array('text' => '<b>' . TEXT_INFO_HEADING_COPY_TO . '</b>');

 

$contents = array('form' => tep_draw_form('copy_to', FILENAME_CATEGORIES, 'action=copy_to_confirm&cPath=' . $cPath) . tep_draw_hidden_field('products_id', $pInfo->products_id));

$contents[] = array('text' => TEXT_INFO_COPY_TO_INTRO);

$contents[] = array('text' => '<br>' . TEXT_INFO_CURRENT_CATEGORIES . '<br><b>' . tep_output_generated_category_path($pInfo->products_id, 'product') . '</b>');

$contents[] = array('text' => '<br>' . TEXT_CATEGORIES . '<br>' . tep_draw_pull_down_menu('categories_id', tep_get_category_tree(), $current_category_id));

$contents[] = array('text' => '<br>' . TEXT_HOW_TO_COPY . '<br>' . tep_draw_radio_field('copy_as', 'link', true) . ' ' . TEXT_COPY_AS_LINK . '<br>' . tep_draw_radio_field('copy_as', 'duplicate') . ' ' . TEXT_COPY_AS_DUPLICATE);

$contents[] = array('align' => 'center', 'text' => '<br>' . tep_image_submit('button_copy.gif', IMAGE_COPY) . ' <a href="' . tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&pID=' . $pInfo->products_id) . '">' . tep_image_button('button_cancel.gif', IMAGE_CANCEL) . '</a>');

break;

default:

if ($rows > 0) {

if (isset($cInfo) && is_object($cInfo)) { // category info box contents

$heading[] = array('text' => '<b>' . $cInfo->categories_name . '</b>');

 

$contents[] = array('align' => 'center', 'text' => '<a href="' . tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&cID=' . $cInfo->categories_id . '&action=edit_category') . '">' . tep_image_button('button_edit.gif', IMAGE_EDIT) . '</a> <a href="' . tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&cID=' . $cInfo->categories_id . '&action=delete_category') . '">' . tep_image_button('button_delete.gif', IMAGE_DELETE) . '</a> <a href="' . tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&cID=' . $cInfo->categories_id . '&action=move_category') . '">' . tep_image_button('button_move.gif', IMAGE_MOVE) . '</a>');

$contents[] = array('text' => '<br>' . TEXT_DATE_ADDED . ' ' . tep_date_short($cInfo->date_added));

if (tep_not_null($cInfo->last_modified)) $contents[] = array('text' => TEXT_LAST_MODIFIED . ' ' . tep_date_short($cInfo->last_modified));

$contents[] = array('text' => '<br>' . tep_info_image($cInfo->categories_image, $cInfo->categories_name, HEADING_IMAGE_WIDTH, HEADING_IMAGE_HEIGHT) . '<br>' . $cInfo->categories_image);

$contents[] = array('text' => '<br>' . TEXT_SUBCATEGORIES . ' ' . $cInfo->childs_count . '<br>' . TEXT_PRODUCTS . ' ' . $cInfo->products_count);

} elseif (isset($pInfo) && is_object($pInfo)) { // product info box contents

$heading[] = array('text' => '<b>' . tep_get_products_name($pInfo->products_id, $languages_id) . '</b>');

 

$contents[] = array('align' => 'center', 'text' => '<a href="' . tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&pID=' . $pInfo->products_id . '&action=new_product') . '">' . tep_image_button('button_edit.gif', IMAGE_EDIT) . '</a> <a href="' . tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&pID=' . $pInfo->products_id . '&action=delete_product') . '">' . tep_image_button('button_delete.gif', IMAGE_DELETE) . '</a> <a href="' . tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&pID=' . $pInfo->products_id . '&action=move_product') . '">' . tep_image_button('button_move.gif', IMAGE_MOVE) . '</a> <a href="' . tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&pID=' . $pInfo->products_id . '&action=copy_to') . '">' . tep_image_button('button_copy_to.gif', IMAGE_COPY_TO) . '</a> <a href="' . tep_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&pID=' . $pInfo->products_id . '&action=edit_fact') . '">' . tep_image_button('button_edit_fact.gif', IMAGE_EDIT_FACT) . '</a>');

$contents[] = array('text' => '<br>' . TEXT_DATE_ADDED . ' ' . tep_date_short($pInfo->products_date_added));

if (tep_not_null($pInfo->products_last_modified)) $contents[] = array('text' => TEXT_LAST_MODIFIED . ' ' . tep_date_short($pInfo->products_last_modified));

if (date('Y-m-d') < $pInfo->products_date_available) $contents[] = array('text' => TEXT_DATE_AVAILABLE . ' ' . tep_date_short($pInfo->products_date_available));

$contents[] = array('text' => '<br>' . tep_info_image($pInfo->products_image, $pInfo->products_name, SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) . '<br>' . $pInfo->products_image);

$contents[] = array('text' => '<br>' . tep_info_image($pInfo->products_map_image, $pInfo->products_name, SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) . '<br>' . $pInfo->products_map_image);

$contents[] = array('text' => '<br>' . TEXT_PRODUCTS_PRICE_INFO . ' ' . $currencies->format($pInfo->products_price) . '<br>' . TEXT_PRODUCTS_QUANTITY_INFO . ' ' . $pInfo->products_quantity);

$contents[] = array('text' => '<br>' . TEXT_PRODUCTS_AVERAGE_RATING . ' ' . number_format($pInfo->average_rating, 2) . '%');

}

} else { // create category/product info

$heading[] = array('text' => '<b>' . EMPTY_CATEGORY . '</b>');

 

$contents[] = array('text' => TEXT_NO_CHILD_CATEGORIES_OR_PRODUCTS);

}

break;

}

 

if ( (tep_not_null($heading)) && (tep_not_null($contents)) ) {

echo ' <td width="25%" valign="top">' . "\n";

 

$box = new box;

echo $box->infoBox($heading, $contents);

 

echo ' </td>' . "\n";

}

?>

</tr>

</table></td>

</tr>

</table>

<?php

}

?>

</td>

<!-- body_text_eof //-->

</tr>

</table>

<!-- body_eof //-->

 

<!-- footer //-->

<?php require(DIR_WS_INCLUDES . 'footer.php'); ?>

<!-- footer_eof //-->

<br>

</body>

</html>

<?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?>

Link to comment
Share on other sites

Oh..... i am so so sorry...i just reliased that i should have posted the code using the

"CODE" Button...so that no one had to scroll this much :blush:

 

I tried to edit my post but it wasn?t possible anymore... sorry once again

 

 

*still* please help me out... i will do my very best to help u back in return!!

 

Tom

Link to comment
Share on other sites

Please help! :'(

 

i'm getting a:

Parse error: parse error in /home/pnwgifts/public_html/includes/functions/header_tags.php on line 15

 

<?php
// /catalog/includes/functions/header_tags.php
// WebMakers.com Added: Header Tags Generator v2.0

////
// Get products_head_title_tag
// TABLES: products_description
// function tep_get_header_tag_products_title($product_id) {
 global $languages_id, $HTTP_GET_VARS; 

 $product_header_tags = tep_db_query("select products_head_title_tag from " . TABLE_PRODUCTS_DESCRIPTION . " where language_id = '" . (int)$languages_id . "' and products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "'");
 $product_header_tags_values = tep_db_fetch_array($product_header_tags);

 return clean_html_comments($product_header_tags_values['products_head_title_tag']);
 }


////
// Get products_head_keywords_tag
// TABLES: products_description
function tep_get_header_tag_products_keywords($product_id) {
 global $languages_id, $HTTP_GET_VARS; 

 $product_header_tags = tep_db_query("select products_head_keywords_tag from " . TABLE_PRODUCTS_DESCRIPTION . " where language_id = '" . (int)$languages_id . "' and products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "'");
 $product_header_tags_values = tep_db_fetch_array($product_header_tags);

 return $product_header_tags_values['products_head_keywords_tag'];
 }


////
// Get products_head_desc_tag
// TABLES: products_description
function tep_get_header_tag_products_desc($product_id) {
 global $languages_id, $HTTP_GET_VARS; 

 $product_header_tags = tep_db_query("select products_head_desc_tag from " . TABLE_PRODUCTS_DESCRIPTION . " where language_id = '" . (int)$languages_id . "' and products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "'");
 $product_header_tags_values = tep_db_fetch_array($product_header_tags);

 return $product_header_tags_values['products_head_desc_tag'];
 }

?>

 

i've searched for a whole day now :lol: but only found one person with the same problem and no way to fix it. i'm sure it's such a n00b mistake and one of many i'll be facing.. :D

 

Thanks,

Gary

Link to comment
Share on other sites

You have commented out the function title. Change this

// function tep_get_header_tag_products_title($product_id) {
global $languages_id, $HTTP_GET_VARS;

to this

function tep_get_header_tag_products_title($product_id) {
global $languages_id, $HTTP_GET_VARS;

 

Jack

Support Links:

For Hire: Contact me for anything you need help with for your shop: upgrading, hosting, repairs, code written, etc.

Get the latest versions of my addons

Recommended SEO Addons

Link to comment
Share on other sites

1)

I used the following in SQL:

UPDATE products_description set PRODUCTS_HEAD_TITLE_TAG = PRODUCTS_NAME

It worked great but I should have changed the values first as my product names are very long. I changed the value thinking it would reload the names but it didn't :huh: Is there a way to do that?

 

2)

I thought I'd be a smart guy and do something similar to the above code but use it with my descriptions. It worked great except it included the html code with the descriptions also :lol: Is there a way to strip the code, should I not worry about it, or just manually cut and paste what I want in there?

 

Thanks in advance!

 

By the way, I installed the newest version without a hitch, no bugs that I'm aware of. Great job!!! :thumbsup:

 

EDIT: I just realized I have a recent back-up that I can use to solve my 1st problem, but I did enter alot of tags already and want to avoid doing them over if possible ;)

Edited by xPATRIOTSx

Go New England Patriots!!!!

Link to comment
Share on other sites

You have commented out the function title. Change this
// function tep_get_header_tag_products_title($product_id) {
global $languages_id, $HTTP_GET_VARS;

to this

function tep_get_header_tag_products_title($product_id) {
global $languages_id, $HTTP_GET_VARS;

 

Jack

Well, when i do that I get an:

Fatal error: Cannot redeclare tep_get_header_tag_products_title() (previously declared in /home/pnwgifts/public_html/includes/functions/header_tags.php:8) in /home/pnwgifts/public_html/includes/functions/header_tags.php on line 8 And the site wont even load at that point. Now I read somewhere about commenting out out that function but then i get the other error but the site loads. :D

 

Thanks again. ;)

Edited by PnwGifts
Link to comment
Share on other sites

So, I starting thinking that the error is because the has been called already right? But by what? So, i Did a search for 'tep_get_header_tag_products_title' and found it twice in the includes/header_tags.php file. Now since i dont know squat about php i'd figure i'd post it and see if someone can spot where i've messed this up.

 

<?php
// /catalog/includes/header_tags.php
// WebMakers.com Added: Header Tags Generator v2.3
// Add META TAGS and Modify TITLE
//
// NOTE: Globally replace all fields in products table with current product name just to get things started:
// In phpMyAdmin use: UPDATE products_description set PRODUCTS_HEAD_TITLE_TAG = PRODUCTS_NAME
//
require(DIR_WS_LANGUAGES . $language . '/' . 'header_tags.php');

echo '<!-- BOF: Generated Meta Tags -->' . "\n";

$the_desc='Unique Gifts From The PNW';
$the_key_words='gifts, giftbasket, basket';
$the_title='PnwGifts.com';

// Define specific settings per page:
switch (true) {

// INDEX.PHP
 case (strstr($_SERVER['PHP_SELF'],FILENAME_DEFAULT) or strstr($PHP_SELF,FILENAME_DEFAULT) ):
   $the_category_query = tep_db_query("select cd.categories_name from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.categories_id = '" . (int)$current_category_id . "' and cd.categories_id = '" . (int)$current_category_id . "' and cd.language_id = '" . (int)$languages_id . "'");
   $the_category = tep_db_fetch_array($the_category_query);

   $the_manufacturers_query= tep_db_query("select manufacturers_name from " . TABLE_MANUFACTURERS . " where manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "'");
   $the_manufacturers = tep_db_fetch_array($the_manufacturers_query);

   if (HTDA_DEFAULT_ON=='1') {
     $the_desc= HEAD_DESC_TAG_DEFAULT . ' ' . HEAD_DESC_TAG_ALL;
   } else {
     $the_desc= HEAD_DESC_TAG_DEFAULT;
   }

   if (HTKA_DEFAULT_ON=='1') {
     $the_key_words= HEAD_KEY_TAG_ALL . ' ' . HEAD_KEY_TAG_DEFAULT;
   } else {
     $the_key_words= HEAD_KEY_TAG_DEFAULT;
   }

   if (HTTA_DEFAULT_ON=='1') {
     $the_title= HEAD_TITLE_TAG_DEFAULT . " " . $the_category['categories_name'] . $the_manufacturers['manufacturers_name'] . ' - ' . HEAD_TITLE_TAG_ALL;
   } else {
     $the_title= HEAD_TITLE_TAG_DEFAULT;
   }

   break;

// PRODUCT_INFO.PHP
 case ( strstr($_SERVER['PHP_SELF'],'product_info.php') or strstr($PHP_SELF,'product_info.php') ):
//    $the_product_info_query = tep_db_query("select p.products_id, pd.products_name, pd.products_description, pd.products_head_title_tag, pd.products_head_keywords_tag, pd.products_head_desc_tag, p.products_model, p.products_quantity, p.products_image, pd.products_url, p.products_price, p.products_tax_class_id, p.products_date_added, p.products_date_available, p.manufacturers_id from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_id = '" . $HTTP_GET_VARS['products_id'] . "' and pd.products_id = '" . $HTTP_GET_VARS['products_id'] . "'");
   $the_product_info_query = tep_db_query("select pd.language_id, p.products_id, pd.products_name, pd.products_description, pd.products_head_title_tag, pd.products_head_keywords_tag, pd.products_head_desc_tag, p.products_model, p.products_quantity, p.products_image, pd.products_url, p.products_price, p.products_tax_class_id, p.products_date_added, p.products_date_available, p.manufacturers_id from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and pd.products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "'" . " and pd.language_id ='" .  (int)$languages_id . "'");
   $the_product_info = tep_db_fetch_array($the_product_info_query);

   if (empty($the_product_info['products_head_desc_tag'])) {
     $the_desc= HEAD_DESC_TAG_ALL;
   } else {
     if ( HTDA_PRODUCT_INFO_ON=='1' ) {
       $the_desc= $the_product_info['products_head_desc_tag'] . ' ' . HEAD_DESC_TAG_ALL;
     } else {
       $the_desc= $the_product_info['products_head_desc_tag'];
     }
   }

   if (empty($the_product_info['products_head_keywords_tag'])) {
     $the_key_words= HEAD_KEY_TAG_ALL;
   } else {
     if ( HTKA_PRODUCT_INFO_ON=='1' ) {
       $the_key_words= $the_product_info['products_head_keywords_tag'] . ' ' . HEAD_KEY_TAG_ALL;
     } else {
       $the_key_words= $the_product_info['products_head_keywords_tag'];
     }
   }

   if (empty($the_product_info['products_head_title_tag'])) {
     $the_title= HEAD_TITLE_TAG_ALL;
   } else {
     if ( HTTA_PRODUCT_INFO_ON=='1' ) {
       $the_title= $the_product_info['products_head_title_tag'] . ' - ' . HEAD_TITLE_TAG_ALL;
     } else {
       $the_title= $the_product_info['products_head_title_tag'];
     }
   }

   break;


// PRODUCTS_NEW.PHP
 case ( strstr($_SERVER['PHP_SELF'],'products_new.php') or strstr($PHP_SELF,'products_new.php') ):
   if ( HEAD_DESC_TAG_WHATS_NEW!='' ) {
     if ( HTDA_WHATS_NEW_ON=='1' ) {
       $the_desc= HEAD_DESC_TAG_WHATS_NEW . ' ' . HEAD_DESC_TAG_ALL;
     } else {
       $the_desc= HEAD_DESC_TAG_WHATS_NEW;
     }
   } else {
     $the_desc= HEAD_DESC_TAG_ALL;
   }

   if ( HEAD_KEY_TAG_WHATS_NEW!='' ) {
     if ( HTKA_WHATS_NEW_ON=='1' ) {
       $the_key_words= HEAD_KEY_TAG_WHATS_NEW . ' ' . HEAD_KEY_TAG_ALL;
     } else {
       $the_key_words= HEAD_KEY_TAG_WHATS_NEW;
     }
   } else {
     $the_key_words= HEAD_KEY_TAG_ALL;
   }

   if ( HEAD_TITLE_TAG_WHATS_NEW!='' ) {
     if ( HTTA_WHATS_NEW_ON=='1' ) {
       $the_title= HEAD_TITLE_TAG_WHATS_NEW . ' - ' . HEAD_TITLE_TAG_ALL;
     } else {
       $the_title= HEAD_TITLE_TAG_WHATS_NEW;
     }
   } else {
     $the_title= HEAD_TITLE_TAG_ALL;
   }

   break;


// SPECIALS.PHP
 case ( strstr($_SERVER['PHP_SELF'],'specials.php')  or strstr($PHP_SELF,'specials.php') ):
   if ( HEAD_DESC_TAG_SPECIALS!='' ) {
     if ( HTDA_SPECIALS_ON=='1' ) {
       $the_desc= HEAD_DESC_TAG_SPECIALS . ' ' . HEAD_DESC_TAG_ALL;
     } else {
       $the_desc= HEAD_DESC_TAG_SPECIALS;
     }
   } else {
     $the_desc= HEAD_DESC_TAG_ALL;
   }

   if ( HEAD_KEY_TAG_SPECIALS=='' ) {
     // Build a list of ALL specials product names to put in keywords
     $new = tep_db_query("select p.products_id, pd.products_name, p.products_price, p.products_tax_class_id, p.products_image, s.specials_new_products_price from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_SPECIALS . " s where p.products_status = '1' and s.products_id = p.products_id and p.products_id = pd.products_id and pd.language_id = '" . (int)$languages_id . "' and s.status = '1' order by s.specials_date_added DESC ");
     $row = 0;
     $the_specials='';
     while ($new_values = tep_db_fetch_array($new)) {
       $the_specials .= clean_html_comments($new_values['products_name']) . ', ';
     }
     if ( HTKA_SPECIALS_ON=='1' ) {
       $the_key_words= $the_specials . ' ' . HEAD_KEY_TAG_ALL;
     } else {
       $the_key_words= $the_specials;
     }
   } else {
     $the_key_words= HEAD_KEY_TAG_SPECIALS . ' ' . HEAD_KEY_TAG_ALL;
   }

   if ( HEAD_TITLE_TAG_SPECIALS!='' ) {
     if ( HTTA_SPECIALS_ON=='1' ) {
       $the_title= HEAD_TITLE_TAG_SPECIALS . ' - ' . HEAD_TITLE_TAG_ALL;
     } else {
       $the_title= HEAD_TITLE_TAG_SPECIALS;
     }
   } else {
     $the_title= HEAD_TITLE_TAG_ALL;
   }

   break;


// PRODUCTS_REVIEWS_INFO.PHP and PRODUCTS_REVIEWS.PHP
 case ( strstr($_SERVER['PHP_SELF'],'product_reviews_info.php') or strstr($_SERVER['PHP_SELF'],'product_reviews.php') or strstr($PHP_SELF,'product_reviews_info.php') or strstr($PHP_SELF,'product_reviews.php') ):
   if ( HEAD_DESC_TAG_PRODUCT_REVIEWS_INFO=='' ) {
     if ( HTDA_PRODUCT_REVIEWS_INFO_ON=='1' ) {
       $the_desc= tep_get_header_tag_products_desc(isset($HTTP_GET_VARS['reviews_id'])) . ' ' . HEAD_DESC_TAG_ALL;
     } else {
       $the_desc= tep_get_header_tag_products_desc(isset($HTTP_GET_VARS['reviews_id']));
     }
   } else {
     $the_desc= HEAD_DESC_TAG_PRODUCT_REVIEWS_INFO;
   }

   if ( HEAD_KEY_TAG_PRODUCT_REVIEWS_INFO=='' ) {
     if ( HTKA_PRODUCT_REVIEWS_INFO_ON=='1' ) {
       $the_key_words= tep_get_header_tag_products_keywords(isset($HTTP_GET_VARS['reviews_id'])) . ' ' . HEAD_KEY_TAG_ALL;
     } else {
       $the_key_words= tep_get_header_tag_products_keywords(isset($HTTP_GET_VARS['reviews_id']));
     }
   } else {
     $the_key_words= HEAD_KEY_TAG_PRODUCT_REVIEWS_INFO;
   }

   if ( HEAD_TITLE_TAG_PRODUCT_REVIEWS_INFO=='' ) {
     if ( HTTA_PRODUCT_REVIEWS_INFO_ON=='1' ) {
       $the_title= tep_get_header_tag_products_title(isset($HTTP_GET_VARS['reviews_id'])) . ' - ' . HEAD_TITLE_TAG_ALL;
     } else {
       $the_title= tep_get_header_tag_products_title(isset($HTTP_GET_VARS['reviews_id']));
     }
   } else {
     $the_title= HEAD_TITLE_TAG_PRODUCT_REVIEWS_INFO;
   }

   break;

// ALL OTHER PAGES NOT DEFINED ABOVE
 default:
   $the_desc= HEAD_DESC_TAG_ALL;
   $the_key_words= HEAD_KEY_TAG_ALL;
   $the_title= HEAD_TITLE_TAG_ALL;
   break;

 }

echo '  <title>' . $the_title . '</title>' . "\n";
echo ' <meta http-equiv="Content-Type" content="text/html; charset="' . CHARSET  . '">'."\n";
echo '  <META NAME="Description" Content="' . $the_desc . '">' . "\n";
echo '  <META NAME="Keywords" CONTENT="' . $the_key_words . '">' . "\n";
echo '  <META NAME="Reply-to" CONTENT="' . HEAD_REPLY_TAG_ALL . '">' . "\n";

echo '<!-- EOF: Generated Meta Tags -->' . "\n";
?>

 

 

Thanks again,

Gary

Link to comment
Share on other sites

Are you using STS? I think it gets declared twice sometimes with that package. Try this: Remove the comment I mentioned above. In includes/application_top.php, change this line

require(DIR_WS_FUNCTIONS . 'header_tags.php');

to this

//require(DIR_WS_FUNCTIONS . 'header_tags.php');

What happens now?

 

Jack

Support Links:

For Hire: Contact me for anything you need help with for your shop: upgrading, hosting, repairs, code written, etc.

Get the latest versions of my addons

Recommended SEO Addons

Link to comment
Share on other sites

Regarding the keywords per product.

 

I have several categories and all the products for one category will have the same keywords. Is there a way via the database that I can enter keywords to be entered for every product of a specific category?

Go New England Patriots!!!!

Link to comment
Share on other sites

I have just uploaded an update to this contribution. A script was added that will make all of the code changes for the catalog section for you. It is of no use to anyone with HTC already installed.

 

Jack

Support Links:

For Hire: Contact me for anything you need help with for your shop: upgrading, hosting, repairs, code written, etc.

Get the latest versions of my addons

Recommended SEO Addons

Link to comment
Share on other sites

Regarding the keywords per product.

 

I have several categories and all the products for one category will have the same keywords.  Is there a way via the database that I can enter keywords to be entered for every product of a specific category?

Anybody? :blink:

Go New England Patriots!!!!

Link to comment
Share on other sites

I have a big problem with the redeveloped includes/header_tags.php file. I upgraded to this new version (while also removing the <meta http=equiv> from every file.)

 

This line:

echo ' <meta http-equiv="Content-Type" content="text/html; charset="' . CHARSET . '">'."\n";

 

is screwing up the rest of the meta tags when it comes to how the search engines view the website. i don't program so i can't figure out why it's causing this problem, but i use a really good SEO program called "Internet Business Promoter" and it refuses to read any meta tags beyond the http-equiv. I commented out this statement and it's working fine now.

 

This line has to be rewritten so it is compatible. The way it is now completely defeats the purpose of the header tags module if the search engines can't read it.

Link to comment
Share on other sites

I have a big problem with the redeveloped includes/header_tags.php file.  I upgraded to this new version (while also removing the <meta http=equiv> from every file.)

 

This line:

echo ' <meta http-equiv="Content-Type" content="text/html; charset="' . CHARSET  . '">'."\n";

 

is screwing up the rest of the meta tags when it comes to how the search engines view the website.  i don't program so i can't figure out why it's causing this problem, but i use a really good SEO program called "Internet Business Promoter" and it refuses to read any meta tags beyond the http-equiv.  I commented out this statement and it's working fine now.

 

This line has to be rewritten so it is compatible.  The way it is now completely defeats the purpose of the header tags module if the search engines can't read it.

 

OK I FIXED THE PROBLEM:

There is an additional " after charset= that is screwing up the statement. It needs to be changed to:

echo ' <meta http-equiv="Content-Type" content="text/html; charset=' . CHARSET . '">' . "\n";

 

Please whoever made this new contribution repackage or post a fix for this in the includes/header_tags.php file.

Link to comment
Share on other sites

That would be me George. Thanks for pointing out the mistake. I have uploaded a new version fixing this problem. My apologies to anyone that was affected by this error.

 

Jack

Support Links:

For Hire: Contact me for anything you need help with for your shop: upgrading, hosting, repairs, code written, etc.

Get the latest versions of my addons

Recommended SEO Addons

Link to comment
Share on other sites

OK folks....

 

Here are a couple questions on this contribution. First, I had used this contibution about a year and a half ago, when everything was manually done (just before the release of MS2). I see there have been MANY updates since then.

 

I have installed the MS2 on a new site and am ready to get modding it up.

 

Does the auto-install now also add the changes to "Admin by Richard Fielder for Header Tag Controller" or is this still needed to be run seperately?

 

I see there is a sql file "header.sql" for database changes.

 

So I guess I am asking for clarification...

 

If I run the autoinstaller, does it change/add all the needed files for the Header Tags controller, and the admin contribution at once, then all I need to do is upload all the files, and run the "header.sql" file to be all set?

 

Thanks in advance for the info.

Steve K AKA - Knipper -

Link to comment
Share on other sites

All the autoinstall script does is make the changes in the 30-40 files in catalog that need to be edited. You still have to copy the standard HTC included files to your shop, upload the SQL file and make whatever code changes are necessary in the admin section.

 

Jack

Support Links:

For Hire: Contact me for anything you need help with for your shop: upgrading, hosting, repairs, code written, etc.

Get the latest versions of my addons

Recommended SEO Addons

Link to comment
Share on other sites

Jack are you familiar with the "Category Meta Tags" contribution? That's the contrib I'm using now. If so, can you give a quick summary of what features "Header Tags Controller" has over that one? I'm thinking about switching to this one.

 

Thanks, -Chris.

Link to comment
Share on other sites

No, I'm not. But from what I understand, they are complimentary. Category Meta Tags only adds meta tags to the categories AFAIK. HTC doesn't do this but adds them to the products as well as, and more importantly, allows control of the titles. I thnk they can be installed side by side. But if not, HTC is by far the more important due to the control of the titles.

 

Jack

Support Links:

For Hire: Contact me for anything you need help with for your shop: upgrading, hosting, repairs, code written, etc.

Get the latest versions of my addons

Recommended SEO Addons

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...