Zmiana formatu numeru zamówienia w Virtuemart 2

Łukasz Duda
Domyślny format numeru zamówienia w Virtuemart 2 nie zadowala bardzo wielu użytkowników.
Z tego powodu, postanowiłem napisać mały tutorial jak zmienić wspomniany format - tak aby był związany z ID zamówienia.



1. Otwieramy do edycji plik: /administrator/components/com_virtuemart/models/orders.php
2. Wyszukujemy funkcji/metody o nazwie "generateOrderNumber" (w VM 2.0.14 około 1104 linii).
3. Dodajemy poniższy kod zaraz po tagu otwierającym ciało metody generateOrderNumber:

// generujemy numer, identyczny z ID w bazie danych
$db = JFactory::getDBO();
$q = 'SELECT virtuemart_order_id + 1 FROM #__virtuemart_orders ORDER BY virtuemart_order_id DESC LIMIT 1';
$db->setQuery($q);
$last_id = $db->loadResult();
// odkomentuj poniższą linię aby numer zamówienia posiadał wiodące zero np. 000035 
// return str_pad($last_id, 6, "0", STR_PAD_LEFT);
return $last_id;

Teraz metoda generateOrderNumber będzie generować numer zamówienia identyczny z id zamówienia.
Opcjonalnie - jeśli chcemy aby  numer zamówienia posiadał wiodące zera - należy odkomentować (usunąć //) linię 7 z powyższego kodu. Po tej operacji zamówienie o id 85, będzie miało numer 000085.


 Łukasz Duda jest autorem portalu DodatkiJoomla.pl