Sortowanie w Image Manager

Wszelkie dyskusje na temat instalacji i aktualizacji Opencart w wersji 1.0 i wyższej.

Sortowanie w Image Manager

Postprzez DoctorQ » 26 cze 2011, o 12:04

Mój zasadniczy problem z Image manager'em jest taki że dodaję miesięcznie około 500-700 nowych towarów. W tym dosłownie momencie muszę dodać ich około 3 tyś. O ile do przyjęcia jest faktycznie załadowanie wszystkich zdjęć przez ftp tak ich użycie już w adminie pograniczy z cudem. Zanim załaduje mi się 3000 zdjęć z których będę mógł coś wybrać (i tak za każdym razem) to zwariuję. Podzieliłem to więc na foldery i teraz jest tego mniej ale nadal sporo. Moje foldery mają takie nazwy:

2011-01
2011-02
2011-03

i tak też są wyświetlane w drzewku po lewej stronie, głupotą jednak jest to że sortowanie odbywa się niekorzystnie, ponieważ wynika ono rosnąco i ostatnio dodane foldery znajdują się na samym dole - czyli ze 50 razy trza przewinąć (porażka).

Czy ktoś wie jak można zmienić w kodzie sortowanie w Image Manager na malejące aby to co dodam folder/plik było na początku listy za każdym razem?
DoctorQ
 
Posty: 28
Dołączył(a): 27 maja 2010, o 18:28

Re: Sortowanie w Image Manager

Postprzez DoctorQ » 18 sie 2011, o 12:43

Nikt nie odpowiedział ale w między czasie wypracowałem rozwiązanie:

w pliku: admin/controller/common/filemanager.php

Wyszukujemy:
Kod: Zaznacz cały
         if ($directories) {
            $i = 0;
             
            foreach ($directories as $directory) {
               $json[$i]['data'] = basename($directory);
               $json[$i]['attributes']['directory'] = substr($directory, strlen(DIR_IMAGE . 'data/'));
               
               $children = glob(rtrim($directory, '/') . '/*', GLOB_ONLYDIR);
               
               if ($children)  {
                  $json[$i]['children'] = ' ';
               }


i dodajemy arsort:

Kod: Zaznacz cały
if ($directories) {
            $i = 0;
             arsort($directories);
            foreach ($directories as $directory) {
               $json[$i]['data'] = basename($directory);
               $json[$i]['attributes']['directory'] = substr($directory, strlen(DIR_IMAGE . 'data/'));
               
               $children = glob(rtrim($directory, '/') . '/*', GLOB_ONLYDIR);
               
               if ($children)  {
                  $json[$i]['children'] = ' ';
               }


To rozwiązanie sortuje malejąco FOLDERY ze zdjęciami. W moim układzie każdy produkt ma 3-4 zdjęcia i są one umieszczane w folderze o kodzie 000001, 000002 itd itd... dzięki czemu jak dodaje kolejne nowe produkty z nowa numeracją - jest ona zawsze na początku w IM - nie musząc czekać aż załaduje się 3tyś wgranych folderów.
DoctorQ
 
Posty: 28
Dołączył(a): 27 maja 2010, o 18:28


Powrót do Instalacja i aktualizacja systemu Opencart

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 0 gości

cron