Jump to content

Welcome, Guest!

By registering with us, you'll be able to discuss, share and private message with other members of our community.


  • Content Count

  • Joined

  • Last visited

  • Days Won


Pedalman last won the day on August 9 2019

Pedalman had the most liked content!

Community Reputation

55 Excellent

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Your are absoultely right. Old problem but you have to know it. When I know about it than I can most often help myself. For exampe when dealing with csv I skip Pentaho Spoon and use "awk". But as said here it is very much misleading when you set the shop to a local. Moreover, when you can use your local decimal seperator at every other input field (as far as I know of) and if it looks like this:
  2. Thank you Occam. I realized that my problem is related to this $footer. But I have no clue about smarty and php and hoped that there would be a solution. I will have a look at your linked pdf templates.
  3. I noticed today that it is a must to enter total with American/English "." as seperator for decimals. I run our shop in my local German and we use "," for small sums like delivery charge. This in my case is 2,90€ but when I enter this in "partial refund" for generating an order slip things go wrong! It totals -2.00 though it should be -2.90€. If I enter the delivery charge with a dot: 2.90€ all is fine. This was not easy to understand for me since all numbers shown in backoffice use visually the comma as seperator. I think this should be adressed. Happy New Year to all happy ThirtyBees!
  4. I fail to display the total paid tax in invoice.tax-tab.tpl . code pasted from invoice.total-tab.tpl : {if $footer.total_taxes > 0} <tr> <td class="small"> {l s='Total Tax' pdf='true'} </td> <td></td> <td></td> <td class="right small"> {displayPrice currency=$order->id_currency price=$footer.total_taxes} </td> </tr> {/if}
  5. Can you please hint me where to look? I had a look at thirtybeesinstallationdir/log/ and Hetzners root dir where the logs of my domains are saved. I could not notice something triggering the error message that often.
  6. I upgraded to bleeding edge 1.1.1 yesterday and noticed that we receive log warnings via email minutely! Error level is set to 2
  7. And it helps me (better helped since I abandoned ASM years ago due to constanst trouble with it) to controll stock update orders I do. I seldomly receive the amount of articles I ordered to sell and I can remember that ASM gave me here some more controll. May be I only thought so OO
  8. I added today two collumns to oder overview I need and like to see in the overview: 1.) invoice no. 2.) date of order status update These were more than easy to add since Thirtybees uses a bootstrap admin template and columns fit more or less when you add some. You will find the additions in the added code snippet. However, I need a third collumn and this is the most important one for me 3.) If order status history contains payment option "pay via invoice" & not order status ID "payed" then show date of delivery (order status date of deliverstatus ID) and add e.g. 14 days to it and color it red. Else do not show or string 'OK' in green 🙂 You dig it. I use a 'private' payment option that allow customers to buy via inhouse invoice. After 14 days they should have paid the order. Thing is I very much often forget those orders and have problems to controll them. Ok, well, I have an extra order status for them saying "waiting for payment of invoice" but I also forget some time to set this one. So, this collumn could be handy to me since I would see at a glance which orders were checked out via "my inhouse invoice payment" and where I have not set the status "payment received". PS: Best, or an enhancement would be to to add function to invoice payment module to set a certain status automatically (could check via cron). Actually, my pretty old invoice payment options claims to have this functions but it never worked 😞 Advantage of this approach is that I can bundle order status with reminder email for customer. /override/controllers/admin/AdminOrdersController.php <?php class AdminOrdersController extends AdminOrdersControllerCore { // @codingStandardsIgnoreStart /** @var string $toolbar_title */ public $toolbar_title; /** @var array $statuses_array */ protected $statuses_array = []; // @codingStandardsIgnoreEnd /** * AdminOrdersControllerCore constructor. * * @since 1.0.0 */ public function __construct() { /*echo "__construct() OVERRIDE BORIS WORKING"; */ $this->bootstrap = true; $this->table = 'order'; $this->className = 'Order'; $this->lang = false; $this->addRowAction('view'); $this->explicitSelect = true; $this->allow_export = true; $this->deleted = false; $this->context = Context::getContext(); $this->_select = ' a.id_currency, a.id_order AS id_pdf, /* Boris add invoice and update date 2019.12*/ a.invoice_number, a.date_upd, /* //Boris add invoice and update date 2019.12*/ CONCAT(LEFT(c.`firstname`, 1), \'. \', c.`lastname`) AS `customer`, osl.`name` AS `osname`, os.`color`, IF((SELECT so.id_order FROM `'._DB_PREFIX_.'orders` so WHERE so.id_customer = a.id_customer AND so.id_order < a.id_order LIMIT 1) > 0, 0, 1) as new, country_lang.name as cname, IF(a.valid, 1, 0) badge_success'; $this->_join = ' LEFT JOIN `'._DB_PREFIX_.'customer` c ON (c.`id_customer` = a.`id_customer`) LEFT JOIN `'._DB_PREFIX_.'address` address ON address.id_address = a.id_address_delivery LEFT JOIN `'._DB_PREFIX_.'country` country ON address.id_country = country.id_country LEFT JOIN `'._DB_PREFIX_.'country_lang` country_lang ON (country.`id_country` = country_lang.`id_country` AND country_lang.`id_lang` = '.(int) $this->context->language->id.') LEFT JOIN `'._DB_PREFIX_.'order_state` os ON (os.`id_order_state` = a.`current_state`) LEFT JOIN `'._DB_PREFIX_.'order_state_lang` osl ON (os.`id_order_state` = osl.`id_order_state` AND osl.`id_lang` = '.(int) $this->context->language->id.')'; $this->_orderBy = 'id_order'; $this->_orderWay = 'DESC'; $this->_use_found_rows = true; $statuses = OrderState::getOrderStates((int) $this->context->language->id); foreach ($statuses as $status) { $this->statuses_array[$status['id_order_state']] = $status['name']; } $this->fields_list = [ 'id_order' => [ 'title' => $this->l('ID'), 'align' => 'text-center', 'class' => 'fixed-width-xs', ], 'reference' => [ 'title' => $this->l('Reference'), ], 'new' => [ 'title' => $this->l('New client'), 'align' => 'text-center', 'type' => 'bool', 'tmpTableFilter' => true, 'orderby' => false, 'callback' => 'printNewCustomer', ], 'customer' => [ 'title' => $this->l('Customer'), 'havingFilter' => true, ], ]; if (Configuration::get('PS_B2B_ENABLE')) { $this->fields_list = array_merge( $this->fields_list, [ 'company' => [ 'title' => $this->l('Company'), 'filter_key' => 'c!company', ], ] ); } $this->fields_list = array_merge( $this->fields_list, [ 'total_paid_tax_incl' => [ 'title' => $this->l('Total'), 'align' => 'text-right', 'type' => 'price', 'currency' => true, 'callback' => 'setOrderCurrency', 'badge_success' => true, ], 'payment' => [ 'title' => $this->l('Payment'), ], 'osname' => [ 'title' => $this->l('Status'), 'type' => 'select', 'color' => 'color', 'list' => $this->statuses_array, 'filter_key' => 'os!id_order_state', 'filter_type' => 'int', 'order_key' => 'osname', ], 'date_add' => [ 'title' => $this->l('Date'), 'align' => 'text-right', 'type' => 'datetime', 'filter_key' => 'a!date_add', ], /*BORIS 2019.12 'invoice_date' => [ 'title' => $this->l('Invoice Date'), 'align' => 'text-right', 'type' => 'datetime', 'filter_key' => 'a!invoice_date' ],*/ 'invoice_number' => [ 'title' => $this->l('Invoice No'), 'align' => 'text-right', 'type' => 'int', 'filter_key' => 'a!invoice_number' ], 'date_upd' => [ 'title' => $this->l('Update OS'), 'align' => 'text-right', 'type' => 'datetime', 'filter_key' => 'a!date_upd' ], /* //BORIS 2019.12*/ 'id_pdf' => [ 'title' => $this->l('PDF'), 'align' => 'text-center', 'callback' => 'printPDFIcons', 'orderby' => false, 'search' => false, 'remove_onclick' => true, ], ] ); if (Country::isCurrentlyUsed('country', true)) { $result = Db::getInstance(_PS_USE_SQL_SLAVE_)->ExecuteS( ' SELECT DISTINCT c.id_country, cl.`name` FROM `'._DB_PREFIX_.'orders` o '.Shop::addSqlAssociation('orders', 'o').' INNER JOIN `'._DB_PREFIX_.'address` a ON a.id_address = o.id_address_delivery INNER JOIN `'._DB_PREFIX_.'country` c ON a.id_country = c.id_country INNER JOIN `'._DB_PREFIX_.'country_lang` cl ON (c.`id_country` = cl.`id_country` AND cl.`id_lang` = '.(int) $this->context->language->id.') ORDER BY cl.name ASC' ); $countryArray = []; foreach ($result as $row) { $countryArray[$row['id_country']] = $row['name']; } $part1 = array_slice($this->fields_list, 0, 3); $part2 = array_slice($this->fields_list, 3); $part1['cname'] = [ 'title' => $this->l('Delivery'), 'type' => 'select', 'list' => $countryArray, 'filter_key' => 'country!id_country', 'filter_type' => 'int', 'order_key' => 'cname', ]; $this->fields_list = array_merge($part1, $part2); } $this->shopLinkType = 'shop'; $this->shopShareDatas = Shop::SHARE_ORDER; if (Tools::isSubmit('id_order')) { // Save context (in order to apply cart rule) $order = new Order((int) Tools::getValue('id_order')); $this->context->cart = new Cart($order->id_cart); $this->context->customer = new Customer($order->id_customer); } $this->bulk_actions = [ 'updateOrderStatus' => ['text' => $this->l('Change Order Status'), 'icon' => 'icon-refresh'], ]; parent::__construct(); } }
  9. I would give it another try since I see it as Rampage suggested. I had his problem often in the last 8 years and always it was related to caching problems. (These are not only the settings you set in your BO but also those used by your ' host'. In my case I I had issues some times in the past with php additions like APC and OPcache. Also with activated mod_pagespeed I had issues. But all this is not my domain but if you know those terms and know where to de-/activate them you could give it a try.) Make also sure that in your performance settings cache (APC etc.) and full page caching (both more at the bottom part of performance settings) are disabled for testing your problem. I had excactly the same problems as said and sometimes a translations appeared correctly literally the next day on front/back.
  10. I try to clean up my product descriptiond and meta data from old html tags like span and div. I did export my data via Datakick module and also via csv export from /bo/catalog. I openend the data in my two favorite tools VisualCode and Scalc and did some search and replace routines. Regex does help here immensely but I am all than used to regex. So I wonder if iht would not be nice to have all in one place, namely Thirtybees. Would be great to expand its export capabilities with some cleaning functions. I do not know but assume that the HtmlPurifier does something like this and perhaps it is quickly doable to habe a product/categorie data export feature with splitscreen (left real data/right preview). I think data shold be presented in tables like Scalc does. Anyhow, how do you groom your product data?
  11. I am sorry about me complaining too early. My issue was related to my local db set up. The override works fine. As always you have to delete class_index.php in /cache/ to make override work. If it is ok please delete my posts here since they are obsolete. Thanks
  12. Oh, that is good to hear. I will check my other installations. ! update: I did so and no problems at all on my live server with the override. All I had to to as always with overrides was to delete the class_index.php file in /cache/ ( Absolutely my fault. The problem I faced is realted to the way I set up my local database. I could not get it working with a clone of my live shop. This clone runs local on Xampp. With debug on I could not get the export beining generated due to the errow message shown: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ' a.`reference`, NULL AS features, NULL AS tags, supplier.`name` AS supplier_name' at line 3 in file classes/db/Db.php at line 488 With debug off I could generate the csv ! very nice but else than expected it contained only the 'header line' without any articles. These I had checked in product list. )
  13. Moreover, crucial things like invoices and credit slips should work. If merchants notice irregualarities or even bugs I assume it'd be appropriate if a team leader shows he took notice of it and does all a fix is introduced. Merchants use live shops and no test shops 🙂 So, I am asking for help here for a proper order-slip.total-tab.tpl
  14. looking for way to sort invoice articles via article ref
  15. I triesd the override but it reported to be incompatible with latest TB (debug on). Could please someone capable check, cause I like this override and'd be very handy.
  • Create New...