Ergebnis 1 bis 7 von 7

Thema: Isotope Adressbuch - Überschriften hinterlegter Adressen

  1. #1
    Contao-Nutzer
    Registriert seit
    26.12.2010.
    Beiträge
    39

    Beitrag Isotope Adressbuch - Überschriften hinterlegter Adressen

    Hallo Community,

    Ich finde Isotope ein Shopsystem mit viel potential.
    Etwas hat mich jedoch aus Kundensicht gesehen gestört.

    Im Adressbuch werden die hinterlegten Adressen aufgelistet,
    jedoch kein Bezug angezeigt, ob es sich um eine Liefer-, Rechnungs- oder
    Versand- und Rechnungsadresse handelt.

    Mit einem Freund zusammen haben wir uns heut Nacht einmal mit dieser Problematik auseinandergesetzt und Folgendes umgesetzt:

    Wir haben Änderungen an der ModuleIsotopeAddressBook.php und der mod_iso_addressbook.tpl vorgenommen.

    Das ModuleIsotopeAddressBook.php wurde ab Zeile 108 wie folgt geändert:

    PHP-Code:
        /**
         * List all addresses for the current frontend user.
         */
        
    protected function show()
        {
            global 
    $objPage;
            
            
    $i 0;
            
    $arrAddresses = array();
            
    $objAddressLabel = array();
            
    $strUrl $this->generateFrontendUrl($objPage->row()) . ($GLOBALS['TL_CONFIG']['disableAlias'] ? '&' '?');

            
    $objAddresses $this->Database->execute("SELECT * FROM tl_iso_addresses WHERE pid={$this->User->id}");

            while( 
    $objAddresses->next() )
            {    
                
                
    $arrAddresses[] = array
                
                (
                    
    'id'            => $objAddresses->id,
                    
    'ids'            => $objAddresses->isDefaultShipping,
                    
    'idb'            => $objAddresses->isDefaultBilling,
                    
    'class'            => (($i%'even' 'odd') . ($i==' first' '')),
                    
    'text'            => $this->Isotope->generateAddressString($objAddresses->row()),
                    
    'edit_url'        => ampersand($strUrl 'act=edit&address=' $objAddresses->id),
                    
    'delete_url'    => ampersand($strUrl 'act=delete&address=' $objAddresses->id),
                );
                
                
    $i++;
            }
            
            if (
    count($arrAddresses))
            {
                
    $arrAddresses[count($arrAddresses)-1]['class'] .= ' last';
            }
            else
            {
                
    $this->Template->mtype 'empty';
                
    $this->Template->message $GLOBALS['TL_LANG']['ERR']['noAddressBookEntries'];
            }
            
            
    $this->Template->addressLabel $GLOBALS['TL_LANG']['MSC']['addressBookLabel'];
            
    $this->Template->addNewAddressLabel$GLOBALS['TL_LANG']['MSC']['createNewAddressLabel'];
            
    $this->Template->editAddressLabel $GLOBALS['TL_LANG']['MSC']['editAddressLabel'];
            
    $this->Template->deleteAddressLabel $GLOBALS['TL_LANG']['MSC']['deleteAddressLabel'];
            
    $this->Template->addresses $arrAddresses;
            
    $this->Template->addNewAddress ampersand($strUrl 'act=create');
        } 
    Es wurden 'ids' für die Liefer- und 'idb' für die Rechnungsadresse
    dem $arrAddresses hinzugefügt.

    Danach wurde die mod_iso_addressbook.tpl wie folgt geändert:

    PHP-Code:

    <!-- indexer::stop -->
    <div class="<?php echo $this->class?>"<?php echo $this->cssID?><?php if ($this->style): ?> style="<?php echo $this->style?>"<?php endif; ?>>
      <div class="my-account">
        <div class="page-title title-buttons">
          <?php if ($this->headline): ?>
          <<?php echo $this->hl?>><?php echo $this->headline?></<?php echo $this->hl?>>
          <?php endif; ?>
          <a class="button" href="<?php echo $this->addNewAddress?>" title="<?php echo $this->addNewAddressLabel?>"><?php echo $this->addNewAddressLabel?></a> </div>
        <ul class="messages">
          <li class="success-msg">
            <?php if(strlen($this->message)): ?>
            <ul>
              <li>
                <?php { echo $this->message?>
                <?php } else: { echo "Folgende Adressen wurden eingetragen."; } ?>
              </li>
            </ul>
            <?php endif; ?>
          </li>
        </ul>
        <?php if( count($this-addresses) ): ?>
        <div class="adressen">
          <?php foreach( $this->addresses as $address ):?>
          <div>
            <?php $adshipping $address['ids']; ?>
            <?php $adbilling $address['idb']; ?>
            <?php if ($adshipping != && $adbilling != ) { ?>
            <div class="box-title">
              <h2>Rechnungs- und Lieferadresse </h2>
            </div>
            <ul>
              <li class="<?php echo $address['class']; ?>">
                <div class="buttons"> <a class="edit" href="<?php echo $address['edit_url']; ?>" title="<?php echo $this->editAddressLabel?>"><?php echo $this->editAddressLabel?></a> <a class="delete" href="<?php echo $address['delete_url']; ?>" title="<?php echo $this->deleteAddressLabel?>"><?php echo $this->deleteAddressLabel?></a> </div>
                <?php echo $address['text']; ?> </li>
            </ul>
            <br />
            <?php ?>
            <?php if ($adshipping != && $adbilling != ) { ?>
            <div class="box-title">
              <h2>Lieferadresse </h2>
            </div>
            <ul>
              <li class="<?php echo $address['class']; ?>">
                <div class="buttons"> <a class="edit" href="<?php echo $address['edit_url']; ?>" title="<?php echo $this->editAddressLabel?>"><?php echo $this->editAddressLabel?></a> <a class="delete" href="<?php echo $address['delete_url']; ?>" title="<?php echo $this->deleteAddressLabel?>"><?php echo $this->deleteAddressLabel?></a> </div>
                <?php echo $address['text']; ?> </li>
            </ul>
            <br />
            <?php  } if ($adshipping != && $adbilling != ) { ?>
            <div class="box-title">
              <h2>Rechnungsadresse </h2>
            </div>
            <ul>
              <li class="<?php echo $address['class']; ?>">
                <div class="buttons"> <a class="edit" href="<?php echo $address['edit_url']; ?>" title="<?php echo $this->editAddressLabel?>"><?php echo $this->editAddressLabel?></a> <a class="delete" href="<?php echo $address['delete_url']; ?>" title="<?php echo $this->deleteAddressLabel?>"><?php echo $this->deleteAddressLabel?></a> </div>
                <?php echo $address['text']; ?> </li>
            </ul>
            <br />
            <?php  ?>
            <?php if ($adshipping != && $adbilling !=) { ?>
            <div class="box-title"style="color:#999">
              <h2>Keine Rechnungs- oder Lieferadresse definiert</h2>
            </div>
            <ul>
              <li class="<?php echo $address['class']; ?>">
                <div class="buttons"> <a class="edit" href="<?php echo $address['edit_url']; ?>" title="<?php echo $this->editAddressLabel?>"><?php echo $this->editAddressLabel?></a> <a class="delete" href="<?php echo $address['delete_url']; ?>" title="<?php echo $this->deleteAddressLabel?>"><?php echo $this->deleteAddressLabel?></a> </div>
                <p style="color:#999"><?php echo $address['text']; ?></p>
              </li>
            </ul>
            <br />
            <?php  ?>
          </div>
          <?php endforeach; ?>
        </div>
        <?php endif; ?>
      </div>
    </div>
    <!-- indexer::continue -->
    Jetzt wird bei jeder Adresse angezeigt, ob es eine Liefer-, Rechnungs-,
    Liefer- und Rechnungsadresse oder Keine Rechnungs- oder Lieferadresse handelt.

    Für jede Verbesserung oder Vorschläge auch im Bezug auf die Mehrsprachigkeit, die wir in diesem Fall ganz außer Acht gelassen haben, würde ich mich freuen.

    Ich wünsch Euch allen einen Guten Rutsch!

    Gruß
    mrx02de
    Geändert von mrx02de (01.01.2011 um 18:17 Uhr) Grund: Anpassungen...

  2. #2
    Contao Core-Team
    Association Vorstand
    Avatar von andreas.schempp
    Registriert seit
    15.06.2009.
    Ort
    Lyss
    Beiträge
    5.613
    Partner-ID
    8667
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Danke für die Ideenfindung. Allerdings bin ich mir nicht sicher ob Gruppierungen Sinn machen, weil es ja immer nur eine "Standard Rechnungsadresse" bzw. "Standard Lieferadresse" geben kann? Vielleicht hast du ein Screenshot wie dein Adressbuch danach im Frontend aussieht?
    terminal42 gmbh
    Wir sind Contao Premium-Partner! Für Modulwünsche oder Programmierungen kannst du uns gerne kontaktieren.
    Hilfe für Isotope eCommerce kann man auch kaufen: Isotope Circle

  3. #3
    Contao-Nutzer
    Registriert seit
    23.07.2009.
    Ort
    mal hier, mal da
    Beiträge
    141
    Partner-ID
    5687

    Standard

    Zitat Zitat von andreas.schempp Beitrag anzeigen
    Danke für die Ideenfindung. Allerdings bin ich mir nicht sicher ob Gruppierungen Sinn machen, weil es ja immer nur eine "Standard Rechnungsadresse" bzw. "Standard Lieferadresse" geben kann? Vielleicht hast du ein Screenshot wie dein Adressbuch danach im Frontend aussieht?
    In meinen Shops können die Kunden mehrere Standard-Rechnungs- und Standard-Lieferadressen definieren. Man kann beim Bestellen die Checkboxen "Standard-Rechnungsadresse" bzw. "Standard-Lieferadresse" angeben, welche auch übernommen werden. Aber bei der alten Standard-Adresse wird diese Einstellung nicht entfernt!


    Viele Grüße,
    Stephan

  4. #4
    Contao Core-Team
    Association Vorstand
    Avatar von andreas.schempp
    Registriert seit
    15.06.2009.
    Ort
    Lyss
    Beiträge
    5.613
    Partner-ID
    8667
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hmm, das wäre dann wohl ein Fehler ;-)
    terminal42 gmbh
    Wir sind Contao Premium-Partner! Für Modulwünsche oder Programmierungen kannst du uns gerne kontaktieren.
    Hilfe für Isotope eCommerce kann man auch kaufen: Isotope Circle

  5. #5
    Contao-Nutzer
    Registriert seit
    26.12.2010.
    Beiträge
    39

    Standard

    Hallo Andreas,

    vielen Dank für das Feedback.
    Ich habe Contao erst vor 2 Monaten entdeckt und versuche mich etwas einzuarbeiten.
    OK, das gewünschte Foto zur Verdeutlichung im Anhang.

    Nun in diesem Fall wird nix Gruppiert, lediglich der jeweiligen Adresse eine passende Überschrift oder Deklaration vergeben. Man kann die Adressen als Rechnungs-, als Liefer- bzw. als Rechnungs- und Lieferadresse oder aber mit garnix deklarieren.

    Mit etwas Hilfe könnte man das ganze auch Mehrsprachig umsetzen.

    Was mich jedoch auch etwas irritiert ist folgendes:

    Die User-Adressen sind für den Shop nich limitiert.
    Wenn der Kunde lustig ist... kann er 100 und mehr Adressen angeben.
    Eine Limitierungseinstellung über das Backend wäre evtl. noch ein Zusatzfeature und meiner Meinung nach Sinnvoll. Ich denke 1 - 4 Adressen sollten langen.

    Viele Grüße
    mrx02de
    Angehängte Grafiken Angehängte Grafiken
    Geändert von mrx02de (03.01.2011 um 22:09 Uhr)

  6. #6
    Contao Core-Team
    Association Vorstand
    Avatar von andreas.schempp
    Registriert seit
    15.06.2009.
    Ort
    Lyss
    Beiträge
    5.613
    Partner-ID
    8667
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Zitat Zitat von mrx02de Beitrag anzeigen
    Die User-Adressen sind für den Shop nich limitiert.
    Wenn der Kunde lustig ist... kann er 100 und mehr Adressen angeben.
    Eine Limitierungseinstellung über das Backend wäre evtl. noch ein Zusatzfeature und meiner Meinung nach Sinnvoll. Ich denke 1 - 4 Adressen sollten langen.
    Wenn dem Kunden 1-4 Adressen reichen, wird er auch nicht mehr anlegen. Oder gibt es einen Grund den Kunden einzuschränken?
    terminal42 gmbh
    Wir sind Contao Premium-Partner! Für Modulwünsche oder Programmierungen kannst du uns gerne kontaktieren.
    Hilfe für Isotope eCommerce kann man auch kaufen: Isotope Circle

  7. #7
    Contao-Nutzer
    Registriert seit
    26.12.2010.
    Beiträge
    39

    Standard

    Hallo Andreas,

    OK, das mit der Einschränkung der Adressen ist wohl "Geschmackssache".
    Ich denke es dient der Übersichtlichkeit und lässt sich mit einer Abfrage auch selbst limitieren. Dafür kann man die Adressen ja bearbeiten.

    Viele Grüße
    mrx02de

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Ähnliche Themen

  1. Pool von Überschriften - Wie setze ich Anker zu den Überschriften der Artikel?
    Von Sunnygarden im Forum Layout / Templates / Holy Grail
    Antworten: 17
    Letzter Beitrag: 22.03.2017, 12:57
  2. CRM Extension (Adressbuch, Kunden, Projekte, Aufgaben und Zeiterfassung)
    Von christian.kolb im Forum Entwickler-Fragen
    Antworten: 44
    Letzter Beitrag: 04.05.2011, 07:28
  3. Adressen erfassen und ausgeben
    Von Bombadil im Forum Was kann Contao?
    Antworten: 2
    Letzter Beitrag: 13.04.2010, 21:39
  4. CRM Extension Teil 1:Adressbuch
    Von christian.kolb im Forum Entwickler-Fragen
    Antworten: 50
    Letzter Beitrag: 09.04.2010, 22:55
  5. Ansprechpartner/Adressbuch
    Von Gausi im Forum Sonstiges zu Contao
    Antworten: 6
    Letzter Beitrag: 04.12.2009, 17:36

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •