Execute("INSERT INTO $products_optionstable (products_options_id, products_options_name, products_options_languages_id,products_options_type) VALUES ('" . intval($_POST['products_options_id']) . "', '" . oos_db_input($option_name[$languages[$i]['id']]) . "', '" . oos_db_input($languages[$i]['id']) . "', '" . oos_db_input($option_type) . "')"); } switch ($option_type) { case PRODUCTS_OPTIONS_TYPE_TEXT: case PRODUCTS_OPTIONS_TYPE_FILE: $products_options_values_to_products_optionstable = $oostable['products_options_values_to_products_options']; $dbconn->Execute("INSERT INTO $products_options_values_to_products_optionstable (products_options_values_id, products_options_id) values ('" . PRODUCTS_OPTIONS_VALUES_TEXT_ID . "', '" . intval($products_options_id) . "')"); break; } oos_redirect_admin(oos_href_link_admin($aContents['products_attributes'], $page_info)); break; case 'add_product_option_values': for ($i = 0, $n = count($languages); $i < $n; $i ++) { $value_name = oos_db_prepare_input($_POST['value_name']); $products_options_valuestable = $oostable['products_options_values']; $dbconn->Execute("INSERT INTO $products_options_valuestable (products_options_values_id, products_options_values_languages_id, products_options_values_name) VALUES ('" . intval($_POST['value_id']) . "', '" . intval($languages[$i]['id']) . "', '" . oos_db_input($value_name[$languages[$i]['id']]) . "')"); } $products_options_values_to_products_optionstable = $oostable['products_options_values_to_products_options']; $dbconn->Execute("INSERT INTO $products_options_values_to_products_optionstable (products_options_id, products_options_values_id) VALUES ('" . intval($_POST['option_id']) . "', '" . intval($_POST['value_id']) . "')"); oos_redirect_admin(oos_href_link_admin($aContents['products_attributes'], $page_info)); break; case 'add_product_attributes': $products_optionstable = $oostable['products_options']; $products_options_result = $dbconn->Execute("SELECT products_options_type FROM $products_optionstable WHERE products_options_id = '" . intval($_POST['options_id']) . "'"); $products_options_array = $products_options_result->fields; $values_id = (($products_options_array['products_options_type'] == PRODUCTS_OPTIONS_TYPE_TEXT) or ($products_options_array['products_options_type'] == PRODUCTS_OPTIONS_TYPE_FILE)) ? PRODUCTS_OPTIONS_VALUE_TEXT_ID : $_POST['values_id']; $products_attributestable = $oostable['products_attributes']; $dbconn->Execute("INSERT INTO $products_attributestable VALUES ('', '" . intval($_POST['products_id']) . "', '" . intval($_POST['options_id']) . "', '" . intval($_POST['values_id']) . "', '" . oos_db_input($_POST['value_price']) . "', '" . oos_db_input($_POST['price_prefix']). "', '" . oos_db_input($_POST['sort_order']) . "')"); $products_attributes_id = $dbconn->Insert_ID(); if ((DOWNLOAD_ENABLED == 'true') && $_POST['products_attributes_filename'] != '') { $products_attributes_downloadtable = $oostable['products_attributes_download']; $dbconn->Execute("INSERT INTO $products_attributes_downloadtable VALUES (" . $products_attributes_id . ", '" . $_POST['products_attributes_filename'] . "', '" . oos_db_input($_POST['products_attributes_maxdays']) . "', '" . oos_db_input($_POST['products_attributes_maxcount']) . "')"); } oos_redirect_admin(oos_href_link_admin($aContents['products_attributes'], $page_info)); break; case 'update_option_name': for ($i = 0, $n = count($languages); $i < $n; $i ++) { $option_name = oos_db_prepare_input($_POST['option_name']); $option_type = oos_db_prepare_input($_POST['option_type']); $products_optionstable = $oostable['products_options']; $dbconn->Execute("UPDATE $products_optionstable SET products_options_name = '" . $option_name[$languages[$i]['id']] . "', products_options_type = '" . $option_type . "' WHERE products_options_id = '" . intval($_POST['option_id']) . "' AND products_options_languages_id = '" . $languages[$i]['id'] . "'"); } switch ($option_type) { case PRODUCTS_OPTIONS_TYPE_TEXT: case PRODUCTS_OPTIONS_TYPE_FILE: $products_options_values_to_products_optionstable = $oostable['products_options_values_to_products_options']; $dbconn->Execute("INSERT INTO $products_options_values_to_products_optionstable VALUES (NULL, '" . intval($_POST['option_id']) . "', '" . PRODUCTS_OPTIONS_VALUES_TEXT_ID . "')"); break; default: $products_options_values_to_products_optionstable = $oostable['products_options_values_to_products_options']; $dbconn->Execute("DELETE FROM $products_options_values_to_products_optionstable WHERE products_options_values_id = '" . PRODUCTS_OPTIONS_VALUES_TEXT_ID . "'"); } oos_redirect_admin(oos_href_link_admin($aContents['products_attributes'], $page_info)); break; case 'update_value': for ($i = 0, $n = count($languages); $i < $n; $i ++) { $value_name = oos_db_prepare_input($_POST['value_name']); $products_options_valuestable = $oostable['products_options_values']; $dbconn->Execute("UPDATE $products_options_valuestable SET products_options_values_name = '" . $value_name[$languages[$i]['id']] . "' WHERE products_options_values_id = '" . intval($_POST['value_id']) . "' AND products_options_values_languages_id= '" . $languages[$i]['id'] . "'"); } $products_options_values_to_products_optionstable = $oostable['products_options_values_to_products_options']; // $dbconn->Execute("UPDATE $products_options_values_to_products_optionstable SET products_options_id = '" . intval($_POST['option_id']) . "', products_options_values_id = '" . intval($_POST['value_id']) . "' WHERE products_options_values_to_products_options_id = '" . intval($_POST['value_id']) . "'"); $dbconn->Execute("UPDATE $products_options_values_to_products_optionstable SET products_options_id = '" . intval($_POST['option_id']) . "' WHERE products_options_values_id = '" . intval($_POST['value_id']) . "'"); oos_redirect_admin(oos_href_link_admin($aContents['products_attributes'], $page_info)); break; case 'update_product_attribute': $products_optionstable = $oostable['products_options']; $products_options_result = $dbconn->Execute("SELECT products_options_type FROM $products_optionstable WHERE products_options_id = '" . intval($_POST['options_id']) . "'"); $products_options_array = $products_options_result->fields; switch ($products_options_array['products_options_type']) { case PRODUCTS_OPTIONS_TYPE_TEXT: case PRODUCTS_OPTIONS_TYPE_FILE: $values_id = PRODUCTS_OPTIONS_VALUE_TEXT_ID; break; default: $values_id = oos_db_prepare_input($_POST['values_id']); } $products_attributestable = $oostable['products_attributes']; $dbconn->Execute("UPDATE $products_attributestable SET products_id = '" . intval($_POST['products_id']) . "', options_id = '" . intval($_POST['options_id']) . "', options_values_id = '" . intval($_POST['values_id']) . "', options_values_price = '" . oos_db_input($_POST['value_price']) . "', price_prefix = '" . oos_db_input($_POST['price_prefix']). "', options_sort_order = '" . oos_db_input($_POST['sort_order']) . "' WHERE products_attributes_id = '" . oos_db_input($_POST['attribute_id']) . "'"); if ((DOWNLOAD_ENABLED == 'true') && $_POST['products_attributes_filename'] != '') { $products_attributes_downloadtable = $oostable['products_attributes_download']; $dbconn->Execute("UPDATE $products_attributes_downloadtable SET products_attributes_filename='" . oos_db_input($_POST['products_attributes_filename']) . "', products_attributes_maxdays='" . oos_db_input($_POST['products_attributes_maxdays']) . "', products_attributes_maxcount='" . oos_db_input($_POST['products_attributes_maxcount']) . "' WHERE products_attributes_id = '" . intval($_POST['attribute_id']) . "'"); } oos_redirect_admin(oos_href_link_admin($aContents['products_attributes'], $page_info)); break; case 'delete_option': $products_optionstable = $oostable['products_options']; $dbconn->Execute("DELETE FROM $products_optionstable WHERE products_options_id = '" . intval($_GET['option_id']) . "'"); $products_options_values_to_products_optionstable = $oostable['products_options_values_to_products_options']; $dbconn->Execute("DELETE FROM $products_options_values_to_products_optionstable WHERE products_options_id = '" . intval($option_id) . "' AND products_options_values_id = '" . PRODUCTS_OPTIONS_VALUES_TEXT_ID . "'"); oos_redirect_admin(oos_href_link_admin($aContents['products_attributes'], $page_info)); break; case 'delete_value': $products_options_valuestable = $oostable['products_options_values']; $dbconn->Execute("DELETE FROM $products_options_valuestable WHERE products_options_values_id = '" . intval($_GET['value_id']) . "'"); $products_options_values_to_products_optionstable = $oostable['products_options_values_to_products_options']; $dbconn->Execute("DELETE FROM $products_options_values_to_products_optionstable WHERE products_options_values_id = '" . intval($_GET['value_id']) . "'"); oos_redirect_admin(oos_href_link_admin($aContents['products_attributes'], $page_info)); break; case 'delete_attribute': $products_attributestable = $oostable['products_attributes']; $dbconn->Execute("DELETE FROM $products_attributestable WHERE products_attributes_id = '" . intval($_GET['attribute_id']) . "'"); $products_attributes_downloadtable = $oostable['products_attributes_download']; $dbconn->Execute("DELETE FROM $products_attributes_downloadtable WHERE products_attributes_id = '" . intval($_GET['attribute_id']) . "'"); oos_redirect_admin(oos_href_link_admin($aContents['products_attributes'], $page_info)); break; } } $products_options_types_list = array(); $products_options_typestable = $oostable['products_options_types']; $products_options_types_sql = "SELECT products_options_types_id, products_options_types_name FROM $products_options_typestable WHERE products_options_types_languages_id = '" . intval($_SESSION['language_id']) . "' ORDER BY products_options_types_id"; $products_options_types_result = $dbconn->Execute($products_options_types_sql); while ($products_options_type_array = $products_options_types_result->fields) { $products_options_types_list[$products_options_type_array['products_options_types_id']] = $products_options_type_array['products_options_types_name']; // Move that ADOdb pointer! $products_options_types_result->MoveNext(); } if (!isset($value_page)) $value_page = 1; if (!isset($attribute_page)) $attribute_page = 1; require 'includes/header.php'; ?>
Execute("SELECT products_options_id, products_options_name FROM $products_optionstable WHERE products_options_id = '" . intval($_GET['option_id']) . "' AND products_options_languages_id = '" . intval($_SESSION['language_id']) . "'"); $options_values = $options->fields; ?> Execute($options); while ($options_values = $options->fields) { $rows++; ?> '; $inputs = ''; for ($i = 0, $n = count($languages); $i < $n; $i ++) { $option_name = $dbconn->Execute("SELECT products_options_name FROM " . $oostable['products_options'] . " WHERE products_options_id = '" . $options_values['products_options_id'] . "' AND products_options_languages_id = '" . $languages[$i]['id'] . "'"); $option_name = $option_name->fields; $inputs .= $languages[$i]['id'] . ':  
'; } ?> ' . "\n"; } else { ?> Execute("SELECT max(products_options_id) + 1 as next_id FROM $products_optionstable"); $max_options_id_values = $max_options_id_result->fields; $next_id = $max_options_id_values['next_id']; // Move that ADOdb pointer! $options->MoveNext(); } // Close result set $options->Close(); ?> '; $inputs = ''; for ($i = 0, $n = count($languages); $i < $n; $i ++) { $inputs .= $languages[$i]['id'] . ':  
'; } ?> '; ?>
     
Execute("SELECT p.products_id, pd.products_name, pov.products_options_values_name FROM $productstable p, $products_options_valuestable pov, $products_attributestable pa, $products_descriptiontable pd WHERE pd.products_id = p.products_id AND pov.products_options_values_languages_id = '" . intval($_SESSION['language_id']) . "' AND pd.products_languages_id = '" . intval($_SESSION['language_id']) . "' AND pa.products_id = p.products_id AND pa.options_id='" . intval($_GET['option_id']) . "' AND pov.products_options_values_id = pa.options_values_id ORDER BY pd.products_name"); if ($products->RecordCount()) { ?> fields) { $rows++; ?> MoveNext(); } ?>
        
        


' . BUTTON_CANCEL . ''; ?> 


'; ?>   ' . BUTTON_CANCEL . ''; ?> 
  
Execute($options); $option_page_start = ($per_page * $option_page) - $per_page; $num_rows = $option_result->RecordCount(); if ($num_rows <= $per_page) { $num_pages = 1; } elseif(($num_rows % $per_page) == 0) { $num_pages = ($num_rows / $per_page); } else { $num_pages = ($num_rows / $per_page) + 1; } $num_pages = (int) $num_pages; $options = $options . " LIMIT $option_page_start, $per_page"; // Previous if ($prev_option_page) { echo ' << | '; } for ($i = 1; $i <= $num_pages; $i++) { if ($i != $option_page) { echo '' . $i . ' | '; } else { echo '' . $i . ' | '; } } // Next if ($option_page != $num_pages) { echo ' >> '; } ?>
           
      ' . BUTTON_CANCEL . ''; ?>            '; ?>  '; ?> 
     
Execute("SELECT products_options_values_id, products_options_values_name FROM $products_options_valuestable WHERE products_options_values_id = '" . intval($_GET['value_id']) . "' AND products_options_values_languages_id = '" . intval($_SESSION['language_id']) . "'"); $values_values = $values->fields; ?> Execute($values); while ($values_values = $values->fields) { $options_name = oos_options_name($values_values['products_options_id']); $option_id = $values_values['products_options_id']; $values_name = $values_values['products_options_values_name']; $rows++; ?> '; $inputs = ''; for ($i = 0, $n = count($languages); $i < $n; $i ++) { $products_options_valuestable = $oostable['products_options_values']; $value_name = $dbconn->Execute("SELECT products_options_values_name FROM $products_options_valuestable WHERE products_options_values_id = '" . $values_values['products_options_values_id'] . "' AND products_options_values_languages_id= '" . $languages[$i]['id'] . "'"); $value_name = $value_name->fields; $inputs .= $languages[$i]['id'] . ':  
'; } ?> '; } else { ?> Execute("SELECT max(products_options_values_id) + 1 as next_id FROM $products_options_valuestable"); $max_values_id_values = $max_values_id_result->fields; $next_id = $max_values_id_values['next_id']; // Move that ADOdb pointer! $values->MoveNext(); } ?> '; ?> '; ?>
     
Execute("SELECT p.products_id, pd.products_name, po.products_options_name FROM $productstable p, $products_attributestable pa, $products_optionstable po, $products_descriptiontable pd WHERE pd.products_id = p.products_id AND pd.products_languages_id = '" . intval($_SESSION['language_id']) . "' AND po.products_options_languages_id = '" . intval($_SESSION['language_id']) . "' AND pa.products_id = p.products_id AND pa.options_values_id='" . intval($_GET['value_id']) . "' AND po.products_options_id = pa.options_id ORDER BY pd.products_name"); if ($products->RecordCount()) { ?> fields) { $rows++; ?> MoveNext(); } ?>
        
        


' . BUTTON_CANCEL . ''; ?> 


'; ?>   ' . BUTTON_CANCEL . ''; ?> 
     
Execute($values); $value_page_start = ($per_page * $value_page) - $per_page; $num_rows = $value_result->RecordCount(); if ($num_rows <= $per_page) { $num_pages = 1; } elseif(($num_rows % $per_page) == 0) { $num_pages = ($num_rows / $per_page); } else { $num_pages = ($num_rows / $per_page) + 1; } $num_pages = (int) $num_pages; $values = $values . " LIMIT $value_page_start, $per_page"; // Previous if ($prev_value_page) { echo ' << | '; } for ($i = 1; $i <= $num_pages; $i++) { if ($i != $value_page) { echo '' . $i . ' | '; } else { echo '' . $i . ' | '; } } // Next if ($value_page != $num_pages) { echo ' >> '; } ?>
           
        '; ?>            '; ?>  '; ?> 
     
'; } ?>  
  
     
Execute($attributes); while ($attributes_values = $attributes->fields) { $products_name_only = oos_get_products_name($attributes_values['products_id']); $options_name = oos_options_name($attributes_values['options_id']); $values_name = oos_values_name($attributes_values['options_values_id']); $rows++; ?> Execute($download_result_raw); if ($download_result->RecordCount() > 0) { $download = $download_result->fields; $products_attributes_filename = $download['products_attributes_filename']; $products_attributes_maxdays = $download['products_attributes_maxdays']; $products_attributes_maxcount = $download['products_attributes_maxcount']; } ?> Execute("SELECT max(products_attributes_id) + 1 as next_id FROM $products_attributestable"); $max_attributes_id_values = $max_attributes_id_result->fields; $next_id = $max_attributes_id_values['next_id']; ?> MoveNext(); } // Close result set $attributes->Close(); if ($action != 'update_attribute') { ?>
Execute($attributes); $attribute_page_start = ($per_page * $attribute_page) - $per_page; $num_rows = $attribute_result->RecordCount(); if ($num_rows <= $per_page) { $num_pages = 1; } elseif(($num_rows % $per_page) == 0) { $num_pages = ($num_rows / $per_page); } else { $num_pages = ($num_rows / $per_page) + 1; } $num_pages = (int) $num_pages; $attributes = $attributes . " LIMIT $attribute_page_start, $per_page"; // Previous if ($prev_attribute_page) { echo ' << | '; } for ($i = 1; $i <= $num_pages; $i++) { if ($i != $attribute_page) { echo '' . $i . ' | '; } else { echo '' . $i . ' | '; } } // Next if ($attribute_page != $num_pages) { echo ' >> '; } ?>
                       
                       ' . BUTTON_CANCEL . ''; ?> 
 
       
 
                     '; ?>  ' . BUTTON_CANCEL . ''; ?>                        '; ?>  '; ?>