[-] BO : #PSTEST-401 - Bug Fixed in SVN

This commit is contained in:
mBertholino
2012-01-10 16:27:22 +00:00
parent 7e9bbc61c3
commit 781ead13ac
12 changed files with 731 additions and 744 deletions
+3 -3
View File
@@ -1464,7 +1464,7 @@ class ProductCore extends ObjectModel
* @param integer $id_product_attribute Product attribute id * @param integer $id_product_attribute Product attribute id
* @return array Deletion result * @return array Deletion result
*/ */
public function deleteAttributeCombinaison($id_product_attribute) public function deleteAttributeCombination($id_product_attribute)
{ {
if (!$this->id || !$id_product_attribute || !is_numeric($id_product_attribute)) if (!$this->id || !$id_product_attribute || !is_numeric($id_product_attribute))
return false; return false;
@@ -1570,7 +1570,7 @@ class ProductCore extends ObjectModel
* @param integer $id_lang Language id * @param integer $id_lang Language id
* @return array Product attributes combinaisons * @return array Product attributes combinaisons
*/ */
public function getAttributeCombinaisons($id_lang) public function getAttributeCombinations($id_lang)
{ {
if (!Combination::isFeatureActive()) if (!Combination::isFeatureActive())
return array(); return array();
@@ -1612,7 +1612,7 @@ class ProductCore extends ObjectModel
* @param integer $id_lang Language id * @param integer $id_lang Language id
* @return array Product attribute combinaison by id_product_attribute * @return array Product attribute combinaison by id_product_attribute
*/ */
public function getAttributeCombinaisonsById($id_product_attribute, $id_lang) public function getAttributeCombinationsById($id_product_attribute, $id_lang)
{ {
if (!Combination::isFeatureActive()) if (!Combination::isFeatureActive())
return array(); return array();
+8 -10
View File
@@ -61,7 +61,6 @@ function smartyTranslate($params, &$smarty)
$filename = ((!isset($smarty->compiler_object) OR !is_object($smarty->compiler_object->template)) ? $smarty->template_resource : $smarty->compiler_object->template->getTemplateFilepath()); $filename = ((!isset($smarty->compiler_object) OR !is_object($smarty->compiler_object->template)) ? $smarty->template_resource : $smarty->compiler_object->template->getTemplateFilepath());
// 1.5 admin : default filename is .tpl; test is made on dir // 1.5 admin : default filename is .tpl; test is made on dir
$dir_filename = dirname($filename); $dir_filename = dirname($filename);
// key is Helper if dir contains "helper" // key is Helper if dir contains "helper"
// we may improve this later to get only the first directory everytime // we may improve this later to get only the first directory everytime
if(strpos($dir_filename, 'helper') !== false) if(strpos($dir_filename, 'helper') !== false)
@@ -70,15 +69,14 @@ function smartyTranslate($params, &$smarty)
switch ($dir_filename) switch ($dir_filename)
{ {
// note : this may be modified later // note : this may be modified later
case '.': case '.': $class = 'index';break;
$class = 'index'; case 'helper' : $class = 'AdminTab';break;
break; default :
case 'helper': {
$class = 'AdminTab'; $parentClass = explode('/', $filename);
break; $key = array_search('controllers', $parentClass);
default: $class = 'Admin'.ucfirst($parentClass[$key + 1]);
// Remove "controllers/" part from "controllers/XXX" }
$class = 'Admin'.ucfirst(substr($dir_filename, 12));
} }
if(in_array($class, array('header','footer','password','login'))) if(in_array($class, array('header','footer','password','login')))
@@ -573,7 +573,7 @@ class AdminManufacturersControllerCore extends AdminController
{ {
$products[$i] = new Product($products[$i]['id_product'], false, $this->context->language->id); $products[$i] = new Product($products[$i]['id_product'], false, $this->context->language->id);
/* Build attributes combinaisons */ /* Build attributes combinaisons */
$combinaisons = $products[$i]->getAttributeCombinaisons($this->context->language->id); $combinaisons = $products[$i]->getAttributeCombinations($this->context->language->id);
foreach ($combinaisons as $k => $combinaison) foreach ($combinaisons as $k => $combinaison)
{ {
$comb_array[$combinaison['id_product_attribute']]['reference'] = $combinaison['reference']; $comb_array[$combinaison['id_product_attribute']]['reference'] = $combinaison['reference'];
+26 -26
View File
@@ -1074,7 +1074,7 @@ class AdminProductsControllerCore extends AdminController
$id_product_attribute = (int)Tools::getValue('id_product_attribute'); $id_product_attribute = (int)Tools::getValue('id_product_attribute');
if ($id_product && Validate::isUnsignedId($id_product) && Validate::isLoadedObject($product = new Product($id_product))) if ($id_product && Validate::isUnsignedId($id_product) && Validate::isLoadedObject($product = new Product($id_product)))
{ {
$product->deleteAttributeCombinaison($id_product_attribute); $product->deleteAttributeCombination($id_product_attribute);
$id_product_download = (int)ProductDownload::getIdFromIdAttribute($id_product, $id_product_attribute); $id_product_download = (int)ProductDownload::getIdFromIdAttribute($id_product, $id_product_attribute);
if ($id_product_download) if ($id_product_download)
@@ -1146,11 +1146,11 @@ class AdminProductsControllerCore extends AdminController
$id_product_attribute = (int)Tools::getValue('id_product_attribute'); $id_product_attribute = (int)Tools::getValue('id_product_attribute');
if ($id_product && Validate::isUnsignedId($id_product) && Validate::isLoadedObject($product = new Product($id_product))) if ($id_product && Validate::isUnsignedId($id_product) && Validate::isLoadedObject($product = new Product($id_product)))
{ {
$combinations = $product->getAttributeCombinaisonsById($id_product_attribute, $this->context->language->id); $combinations = $product->getAttributeCombinationsById($id_product_attribute, $this->context->language->id);
$product_download = ProductDownload::getAttributeFromIdAttribute($id_product, $id_product_attribute); $product_download = ProductDownload::getAttributeFromIdAttribute($id_product, $id_product_attribute);
foreach ($combinations as $key => $combinaison) foreach ($combinations as $key => $combination)
{ {
$combinations[$key]['attributes'][] = array($combinaison['group_name'], $combinaison['attribute_name'], $combinaison['id_attribute']); $combinations[$key]['attributes'][] = array($combination['group_name'], $combination['attribute_name'], $combination['id_attribute']);
// Added fields virtual product // Added fields virtual product
$combinations[$key]['id_product_download'] = count($product_download) ? $product_download[0]['id_product_download'] : ''; $combinations[$key]['id_product_download'] = count($product_download) ? $product_download[0]['id_product_download'] : '';
@@ -2062,7 +2062,7 @@ class AdminProductsControllerCore extends AdminController
'desc' => $this->l('Product sales'), 'desc' => $this->l('Product sales'),
); );
// adding button for adding a new combination in Combinaition tab // adding button for adding a new combination in Combination tab
$this->toolbar_btn['newCombination'] = array( $this->toolbar_btn['newCombination'] = array(
'short' => 'New combination', 'short' => 'New combination',
'desc' => $this->l('New combination'), 'desc' => $this->l('New combination'),
@@ -3340,32 +3340,32 @@ class AdminProductsControllerCore extends AdminController
if ($product->id) if ($product->id)
{ {
/* Build attributes combinaisons */ /* Build attributes combinations */
$combinaisons = $product->getAttributeCombinaisons($this->context->language->id); $combinations = $product->getAttributeCombinations($this->context->language->id);
$groups = array(); $groups = array();
$comb_array = array(); $comb_array = array();
if (is_array($combinaisons)) if (is_array($combinations))
{ {
$combination_images = $product->getCombinationImages($this->context->language->id); $combination_images = $product->getCombinationImages($this->context->language->id);
foreach ($combinaisons as $k => $combinaison) foreach ($combinations as $k => $combination)
{ {
$price = Tools::displayPrice($combinaison['price'], $currency); $price = Tools::displayPrice($combination['price'], $currency);
$comb_array[$combinaison['id_product_attribute']]['id_combinaison_attribute'] = $product->id.'||'.$combinaison['id_product_attribute']; $comb_array[$combination['id_product_attribute']]['id_combinaison_attribute'] = $product->id.'||'.$combination['id_product_attribute'];
$comb_array[$combinaison['id_product_attribute']]['id_product_attribute'] = $combinaison['id_product_attribute']; $comb_array[$combination['id_product_attribute']]['id_product_attribute'] = $combination['id_product_attribute'];
$comb_array[$combinaison['id_product_attribute']]['attributes'][] = array($combinaison['group_name'], $combinaison['attribute_name'], $combinaison['id_attribute']); $comb_array[$combination['id_product_attribute']]['attributes'][] = array($combination['group_name'], $combination['attribute_name'], $combination['id_attribute']);
$comb_array[$combinaison['id_product_attribute']]['wholesale_price'] = $combinaison['wholesale_price']; $comb_array[$combination['id_product_attribute']]['wholesale_price'] = $combination['wholesale_price'];
$comb_array[$combinaison['id_product_attribute']]['price'] = $price; $comb_array[$combination['id_product_attribute']]['price'] = $price;
$comb_array[$combinaison['id_product_attribute']]['weight'] = $combinaison['weight'].Configuration::get('PS_WEIGHT_UNIT'); $comb_array[$combination['id_product_attribute']]['weight'] = $combination['weight'].Configuration::get('PS_WEIGHT_UNIT');
$comb_array[$combinaison['id_product_attribute']]['unit_impact'] = $combinaison['unit_price_impact']; $comb_array[$combination['id_product_attribute']]['unit_impact'] = $combination['unit_price_impact'];
$comb_array[$combinaison['id_product_attribute']]['reference'] = $combinaison['reference']; $comb_array[$combination['id_product_attribute']]['reference'] = $combination['reference'];
$comb_array[$combinaison['id_product_attribute']]['ean13'] = $combinaison['ean13']; $comb_array[$combination['id_product_attribute']]['ean13'] = $combination['ean13'];
$comb_array[$combinaison['id_product_attribute']]['upc'] = $combinaison['upc']; $comb_array[$combination['id_product_attribute']]['upc'] = $combination['upc'];
$comb_array[$combinaison['id_product_attribute']]['id_image'] = isset($combination_images[$combinaison['id_product_attribute']][0]['id_image']) ? $combination_images[$combinaison['id_product_attribute']][0]['id_image'] : 0; $comb_array[$combination['id_product_attribute']]['id_image'] = isset($combination_images[$combination['id_product_attribute']][0]['id_image']) ? $combination_images[$combination['id_product_attribute']][0]['id_image'] : 0;
$comb_array[$combinaison['id_product_attribute']]['available_date'] = strftime($combinaison['available_date']); $comb_array[$combination['id_product_attribute']]['available_date'] = strftime($combination['available_date']);
$comb_array[$combinaison['id_product_attribute']]['default_on'] = $combinaison['default_on']; $comb_array[$combination['id_product_attribute']]['default_on'] = $combination['default_on'];
if ($combinaison['is_color_group']) if ($combination['is_color_group'])
$groups[$combinaison['id_attribute_group']] = $combinaison['group_name']; $groups[$combination['id_attribute_group']] = $combination['group_name'];
} }
} }
@@ -3449,7 +3449,7 @@ class AdminProductsControllerCore extends AdminController
$helper->actions = $this->actions; $helper->actions = $this->actions;
$helper->list_skip_actions = $this->list_skip_actions; $helper->list_skip_actions = $this->list_skip_actions;
$helper->colorOnBackground = true; $helper->colorOnBackground = true;
$helper->override_folder = $this->tpl_folder.'combinaison/'; $helper->override_folder = $this->tpl_folder.'combination/';
return $helper->generateList($comb_array, $this->fieldsDisplay); return $helper->generateList($comb_array, $this->fieldsDisplay);
} }
@@ -258,7 +258,7 @@ class AdminSuppliersControllerCore extends AdminController
{ {
$products[$i] = new Product($products[$i]['id_product'], false, $this->context->language->id); $products[$i] = new Product($products[$i]['id_product'], false, $this->context->language->id);
// Build attributes combinaisons // Build attributes combinaisons
$combinaisons = $products[$i]->getAttributeCombinaisons($this->context->language->id); $combinaisons = $products[$i]->getAttributeCombinations($this->context->language->id);
foreach ($combinaisons as $k => $combinaison) foreach ($combinaisons as $k => $combinaison)
{ {
$comb_infos = Supplier::getProductInformationsBySupplier($this->object->id, $comb_infos = Supplier::getProductInformationsBySupplier($this->object->id,
@@ -984,16 +984,20 @@ class AdminTranslationsControllerCore extends AdminController
$prefix_key = Tools::toCamelCase(str_replace(_PS_ADMIN_DIR_.DIRECTORY_SEPARATOR.'themes', '', $tpl), true); $prefix_key = Tools::toCamelCase(str_replace(_PS_ADMIN_DIR_.DIRECTORY_SEPARATOR.'themes', '', $tpl), true);
$pos = strrpos($prefix_key, DIRECTORY_SEPARATOR); $pos = strrpos($prefix_key, DIRECTORY_SEPARATOR);
$tmp = substr($prefix_key, 0, $pos); $tmp = substr($prefix_key, 0, $pos);
$prefix_key = 'Admin'.ucfirst(substr($tmp, strrpos($tmp, DIRECTORY_SEPARATOR) + 1, $pos));
if (preg_match("#controllers#", $tmp))
{
$parentClass = explode('\\', $tmp);
$key = array_search('controllers', $parentClass);
$prefix_key = 'Admin'.ucfirst($parentClass[$key + 1]);
}
else
$prefix_key = 'Admin'.ucfirst(substr($tmp, strrpos($tmp, DIRECTORY_SEPARATOR) + 1, $pos));
// Adding list, form, option in Helper Translations // Adding list, form, option in Helper Translations
if ($prefix_key == 'AdminHelper' || $prefix_key == 'AdminList' || $prefix_key == 'AdminOptions' || $prefix_key == 'AdminForm') if ($prefix_key == 'AdminHelper' || $prefix_key == 'AdminList' || $prefix_key == 'AdminOptions' || $prefix_key == 'AdminForm')
$prefix_key = 'Helper'; $prefix_key = 'Helper';
// Adding the folder products/combinaison/ in AdminProducts Translations
if ($prefix_key == 'AdminCombinaison')
$prefix_key = 'AdminProducts/combinaison';
// Adding the folder backup/download/ in AdminBackup Translations // Adding the folder backup/download/ in AdminBackup Translations
if ($prefix_key == 'AdminDownload') if ($prefix_key == 'AdminDownload')
$prefix_key = 'AdminBackup'; $prefix_key = 'AdminBackup';
+1 -1
View File
@@ -371,7 +371,7 @@ class StatsProduct extends ModuleGraph
$combArray = array(); $combArray = array();
$assocNames = array(); $assocNames = array();
$combinaisons = $product->getAttributeCombinaisons((int)$this->getLang()); $combinaisons = $product->getAttributeCombinations((int)$this->getLang());
foreach ($combinaisons as $k => $combinaison) foreach ($combinaisons as $k => $combinaison)
$combArray[$combinaison['id_product_attribute']][] = array('group' => $combinaison['group_name'], 'attr' => $combinaison['attribute_name']); $combArray[$combinaison['id_product_attribute']][] = array('group' => $combinaison['group_name'], 'attr' => $combinaison['attribute_name']);
foreach ($combArray as $id_product_attribute => $product_attribute) foreach ($combArray as $id_product_attribute => $product_attribute)
+682 -697
View File
File diff suppressed because it is too large Load Diff