Jump to content
  • 0

Stylizacja zamówienia


mst44

Question

Witam, potrzebuję pomocy w niewielkich przeróbkach w podsumowaniu zamówienia. 

W zrzucie poniżej potrzebuję schować pola Hasło i Data urodzenia, a w miejscu Stwórz konto chciałbym zrobić checkbox który pokazuje/chowa dwa poniższe pola. 

Ze zrobieniem checkboxu w miejscu Stwórz konto nie ma problemu, mogę tam wpisać swojego diva zamiast tego co jest aktualnie i myślałem o prostym javascripcie pokazującym i chowającym dwa poniższe elementy, ale problem pojawia się z polami Hasło i Data urodzenia - same formy nie mają własnych klas ani ID, nie potrafiłem także znaleźć miejsca, gdzie takie mógłbym wpisać.

 

1411083822_daneos.thumb.jpg.4806cb9a82a6a73861b45e872c718f45.jpg

Wiem, że sam input z hasłem jest robiony w classes/form/CustomerFormatter.php, ale dotyczy to samego inputu i labelki, a nie ich parenta - jak w zrzucie poniżej, parent ma tylko klasę form-group i row (poniżej fragment z CustomerFormatter'a

        if ($this->ask_for_password) {
            $format['password'] = (new FormField())
                ->setName('password')
                ->setType('password')
                ->setLabel(
                    $this->translator->trans(
                        'Password',
                        [],
                        'Shop.Forms.Labels'
                    )
                )
                ->setRequired($this->password_is_required);
        }

kod.thumb.jpg.2f1d5370da693cece444a1827c5a97f9.jpg

W pierwszym kroku chciałbym również zmienić miejscami (tak jak na pierwszym zrzucie ekranu) checkboxy to zaznaczenia i pogrubić te wymagane

-----------------

Podobnie sprawa wygląda w kolejnym kroku zamawiania - w sekcji adresy chciałbym dorobić checkbox w stylu "Zamów na firmę" i z nim pokazywać / chować Firma, Nip UE i checkbox z użyj tego adresu do faktury

adresy.thumb.jpg.a99c48fdc1572a40f4c34eb56cf6ef27.jpg

Podejrzewam, że da się to zrobić wyciągając w jakiś sposób parenty, a nawet parenty parentów tych elementów i nadawać im klasę bądź styl display:none, ale niestety moja uboga wiedza już na to nie pozwala.

Z góry bardzo dziękuję za pomoc.

Link to comment
Share on other sites

6 answers to this question

Recommended Posts

  • 0
On 1/8/2023 at 6:50 PM, endriu107 said:

Datę urodzenia wyłączysz w panelu sklepu, resztę najlepiej zrobić poprzez edycje szablonu a nie poprzez modyfikacje kontrolerów sklepu.

rzecz w tym, że nie chcę jej całkowicie wyłączać, ale schować do momentu aż ktoś zaznaczy że przy zakupie chce również założyć konto. Odnośnie edycji poprzez szablon - jasne, byłbym w stanie schować zaznaczone pola, ale potrzebuję, aby była możliwość ich przywrócenia przy chęci założenia konta, a nie wiem jak to zrobić w momencie kiedy elementy mają taką samą klasę jak reszta  (form-group i row). Czy jest możliwość nadania konkretnie tym polom specyficzną klasę bądź ID? 

Link to comment
Share on other sites

  • 0
1 minute ago, endriu107 said:

Każdemu elementowi możesz nadać dowolne id czy klasę.

czy mógłbym prosić w takim razie o wskazanie miejsca, w którym mógłbym to zrobić dla zaznaczonych na pierwszym poście pól? Nie udało mi się tego znaleźć w żadnym pliku, a z tego co widziałem  CustomerFormatter jakoś generuje te form-groupy (jeśli się nie mylę)

Link to comment
Share on other sites

  • 0
19 minutes ago, endriu107 said:

W standardzie masz to w pliku classic/templates/_partials/form-fields.tpl

Dziękuję bardzo za wskazówkę, w form-fields.tpl w nazwie klasy dodałem {$field.name} dzięki czemu każda forma dostaje klasę odpowiadającą temu co zawiera. Dzięki temu będę mógł kombinować dalej jak przestawiać i pochować te pola :)

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...