Jump to content

webxtor

Members
  • Posts

    12
  • Joined

  • Last visited

Everything posted by webxtor

  1. This should be already resolved but I still have it in 1.7.4.1 !!
  2. I have found this thread providing a solution to fix a bug with not properly updating filters with multiple selection. But the problem remains when you cannot select more than one brand! When you first select a brand the brand selection box disappears! Same problem: faceted search for price option acting like radio but it is checkbox.
  3. Спасибо большое!! Пришел сюда именно с этой проблемой. Было странно, нужели никто этого не заметил. Вот человек недавно описал подобную проблему, но там сошлись на том, что виной его тема. Я же обнаружил это на свеже установленной. Еще раз благодарю, что разобрались и поделились со всеми!
  4. I have the very similar problem on 1.7.4.1 and 1.7.4.2 installations. Steps to reproduce: 1. Install the latest 1.7.4.2 (1) version with classic theme. 2. Go to Accessories category: http://yoursite.com/6-accessories 3. Select White and Black colors: http://yoursite.com/6-accessories?q=Color-White-Black 4. Now select brand Graphic Corner and you will get no results! I have exactly the same issue with my custom products and having more than 2 colors. Whenever I choose at least 2 colors other filters are not updated in accordance with colors selection this way allowing me to get into no results situation. There are also other problems. Say I choose a brand. Then brand filter disappears this way I cannot select more than one brand at a time! Same situation for the price filter, but not paper type or color! Another. On the same accessories page I choose White color and all other filters disappear. I click on Black and other filters appear. Same 1-3 steps as described above but another question: why other filters appear after selecting the second color? All the products in these categories have both black and white color. Please advise on this or are there any other alternatives for the filter. Thanks
  5. This can be very simply done by, for example, overriding AddressController and processSubmitAddress function. For a small fee I can help in your particular need.
  6. Great script! Was it written by you? The only thing it seems to be missing the product features.
  7. This happens when the HTML code of the text field contains invalid code. This may happen, for example, after the automated translation. To fix this, disable TinyMCE by any of means, correct the HTML code, save and enable TinyMCE back.
  8. This problem also affects 1.5.4.1 version. This code fixes also the display problem: // Group reduction if ($use_group_reduction && !$reduc && !$specific_price['reduction'])
  9. Hello. Have you found any solution to the problem? I am experiencing the same. Discovered, that there is 1.7.10 module available, but by checking the commits at github, I see no changes regarding the double invoice problem.. Probably, this is caused due to using a deprecated activate_reservation method.
  10. Great article! In fact, in order to add new fields, you only need to: 1. Create them in the database. 2. Add a few lines into override/classes/Products.php The rest - depending on the specific needs. The article might also help with some other related needs.
  11. Hello. Using PS 1.5.4.1 this code made able to override the members list trigger function in AdminCustomersController.php: public function init() { $this->fields_list['active'] = array( 'title' => $this->l('Enabled'), 'width' => 70, 'align' => 'center', 'callback' => 'printStatusIcon',//'active' => 'status', 'type' => 'bool', 'orderby' => false, 'filter_key' => 'a!active', ); parent::init(); } A few other notes. In contains a parse error in this piece: Mail::Send( $this->context->language->id, 'account_activated', Mail::l('Welcome!'), array( '{firstname}' => $customer->firstname, '{lastname}' => $customer->lastname, '{email}' => $customer->email, '{shopname}' => $this->context->shop->name,), $customer->email, $customer->firstname.' '.$customer->lastname, ); Need to remove the last comma. Also the subject here (Welcome!) differs from the one in customerupdatenotification.php Other than that, thanks for your contribution!
  12. Strange, but the import format for the images links in this script is already the new, multi-level one. I had to create my own bash shell script for the images to show up. Note, this script creates the additional directories (and images into them) in 1.5 after you have copied the images from 1.4 and cd'ed to the images dir. Thanks to: http://stackoverflow...533086#11533086 and http://stackoverflow...1533099/2090822 for f in *jpg; do if [[ $f =~ [0-9]+-([0-9]+)\..* ]]; then id=${BASH_REMATCH[1]}; dir=`echo $id | sed 's/\([0-9]\)/\/\1/g'`; mkdir -p ".$dir"; cp -p $f ".$dir/$id.jpg"; fi done Note, you may also wish to remove the source images or/and do some further actions. Also thanks to this post for recursive directories creation: http://stackoverflow...1252096/2090822
  13. Thanks! This helped me to complete a project I am working on. I know, most of the functions are from AdminImportController.php but still a good job has been done!
  14. Hello. At first, thanks for your contribution! This was exactly what I needed for my client. But it did not work "out of the box" for me.. At first, why did you not create override classes and controllers? You could put there only the actual functions being changed and do not touch the actual "core" files! I am attaching the archive, which contains only override files. It works for me under 1.4.7.0 version. Second, CategoryController did not work at all for me. There were 3 issues with it. Here is your code: public function productListAssign() { $hookExecuted = false; Module::hookExec('productListAssign', array('nbProducts' => &$this->nbProducts, 'catProducts' => &$this->cat_products, 'hookExecuted' => &$hookExecuted)); if(!$hookExecuted) // The hook was not executed, standard working { self::$smarty->assign('categoryNameComplement', ''); $this->nbProducts = $this->category->getProducts(NULL, NULL, NULL, $this->orderBy, $this->orderWay, true); $this->manufacturers = $this->category->getProducts(NULL, NULL, NULL, $this->orderBy, $this->orderWay, false, false, false, 1, true, true); $this->pagination((int)$this->nbProducts); // Pagination must be call after "getProducts" $this->cat_products = $this->category->getProducts((int)(self::$cookie->id_lang), (int)($this->p), (int)($this->n), $this->orderBy, $this->orderWay); } else // Hook executed, use the override $this->pagination((int)$this->nbProducts); // Pagination must be call after "getProducts" self::$smarty->assign(array('nb_products' => (int)$this->nbProducts, 'manufacturers' => $this->manufacturers)); } And here is the working one: public function productListAssign() { $hookExecuted = false; $this->nbProducts = $this->category->getProducts(NULL, NULL, NULL, $this->orderBy, Tools::getValue('orderway')/*$this->orderWay*/, true); $this->manufacturers = $this->category->getProducts(NULL, NULL, NULL, $this->orderBy, Tools::getValue('orderway')/*$this->orderWay*/, false, false, false, 1, true, true); $this->pagination((int)$this->nbProducts); // Pagination must be call after "getProducts" $this->cat_products = $this->category->getProducts((int)(self::$cookie->id_lang), (int)($this->p), (int)($this->n), $this->orderBy, Tools::getValue('orderway')/*$this->orderWay*/); Module::hookExec('productListAssign', array('nbProducts' => /*&*/$this->nbProducts, 'catProducts' => /*&*/$this->cat_products, 'manufacturers'=>$this->manufacturers, 'hookExecuted' => &$hookExecuted)); /* if(!$hookExecuted) // The hook was not executed, standard working { self::$smarty->assign('categoryNameComplement', ''); $this->nbProducts = $this->category->getProducts(NULL, NULL, NULL, $this->orderBy, $this->orderWay, true); $this->manufacturers = $this->category->getProducts(NULL, NULL, NULL, $this->orderBy, $this->orderWay, false, false, false, 1, true, true); $this->pagination((int)$this->nbProducts); // Pagination must be call after "getProducts" $this->cat_products = $this->category->getProducts((int)(self::$cookie->id_lang), (int)($this->p), (int)($this->n), $this->orderBy, $this->orderWay); } else // Hook executed, use the override $this->pagination((int)$this->nbProducts); // Pagination must be call after "getProducts"*/ self::$smarty->assign(array('nb_products' => (int)$this->nbProducts, 'manufacturers' => $this->manufacturers)); } I don't know why, but if(!$hookExecuted) was never triggered for me, so I had to put the code out of it. Second, somehow $this->orderWay was always having 'asc' value despite the "&orderway=34" in the location string. So I had to change it to Tools::getValue('orderway')/*$this->orderWay*/ And lastly, to make the actual filtering, I had to change Module::hookExec('productListAssign', array('nbProducts' => &$this->nbProducts, 'catProducts' => &$this->cat_products to Module::hookExec('productListAssign', array('nbProducts' => /*&*/$this->nbProducts, 'catProducts' => /*&*/$this->cat_products Note, in the preferences I have smarty cache disabled for debugging purposes. Maybe this affects the above described behaviour. If anyone has some more correct ways of getting it work, your contribution would be appreciated! EDIT: Here is the latest working version with more good looking code: public function productListAssign() { $hookExecuted = false; Module::hookExec('productListAssign', array('nbProducts' => /**/&$this->nbProducts, 'catProducts' => /**/&$this->cat_products, 'manufacturers'=>$this->manufacturers, 'hookExecuted' => /*&*/$hookExecuted)); if(!$hookExecuted) // The hook was not executed, standard working { self::$smarty->assign('categoryNameComplement', ''); $this->nbProducts = $this->category->getProducts(NULL, NULL, NULL, $this->orderBy, Tools::getValue('orderway')/*$this->orderWay*/, true); $this->manufacturers = $this->category->getProducts(NULL, NULL, NULL, $this->orderBy, Tools::getValue('orderway')/*$this->orderWay*/, false, false, false, 1, true, true); $this->pagination((int)$this->nbProducts); // Pagination must be call after "getProducts" $this->cat_products = $this->category->getProducts((int)(self::$cookie->id_lang), (int)($this->p), (int)($this->n), $this->orderBy, Tools::getValue('orderway')/*$this->orderWay*/); } else // Hook executed, use the override $this->pagination((int)$this->nbProducts); // Pagination must be call after "getProducts" self::$smarty->assign(array('nb_products' => (int)$this->nbProducts, 'manufacturers' => $this->manufacturers, 'orderway' => Tools::getValue('orderway') )); } I only changed: 'hookExecuted' => &$hookExecuted to 'hookExecuted' => /*&*/$hookExecuted $this->orderWay to Tools::getValue('orderway')/*$this->orderWay*/ And added 'orderway' => Tools::getValue('orderway') to the last line to have the selected manufacturer to be shown in the select box. And still, who has ideas/knowledge about why &$hookExecuted had to be changed as well as about why $this->orderWay is not taken from $_GET, feel free to contribute! Prestashop_Manuf_Filter.zip
×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More