Anleitung 4.1.00 auf 4.1.10 updaten

 1. Backup und Lizenz !Wichtig!

1.1. Sichern Sie vor dem Updateprozess Ihre Shopdatenbank mit PhpMyAdmin oder MySqlDumper und das komplette Shopverzeichnis per FTP um eventuelle Datenverluste zu vermeiden!
1.2. Überprüfen Sie ob Ihre Lizenz für Version 4.1.1 freigegeben ist!
1.3. Ist meine Lizenz freigegeben ?

Um das Update von 4.1.00 auf 4.1.10 durchzuführen muss Ihre Lizenz für 4.1.10 freigegeben sein.
Für Welche Version Ihre Lizenz gültig ist, finden Sie in der lic/license.txt Datei

z.B.:
company: xt:Commerce GmbH
created: 2009-10-09 01:18:15
key: b108799745bdb247a128f5842fae50d5
license: VEYTON - Ultimate
mailaddress: max_mustermann@xtcommerce.com
maxproducts: 0
name: Max Mustermann
project: xt:Commerce Veyton
maxversion: 4110

Der Parameter maxversion gibt hierbei die maximal mögliche Version an.

Wichtig:
Führen Sie das Update nur aus wenn Sie eine Lizenz mit maxversion: 4110 besitzen!

Sollten Sie eine Lizenz ohne "maxversion" haben und noch keine neue Lizenz per E-Mail erhalten haben, können Sie unter folgender URL eine aktualisierte Lizenz anfordern:

http://addons.xt-commerce.com/index.php?page=send_license

2. Update der Datenbank:

2.1. Cache Leeren:

Leeren Sie zunächst den Cache des Shops, indem Sie sich per FTP verbinden und alle Dateien mit kryptischen Namen in den Ordnern "/cache/" und "/templates_c/" löschen.

2.2. Vorbereitungen:

  • Deinstallieren Sie das Plugin xt_orders_edit.
  • Prüfen Sie ob die Sicherung der Datenbank vorhanden und intakt ist.
  • Ändern Sie die php-Version des Webservers auf min. 5.3 (passen Sie ggf. auch die Ioncube-Version entsprechend an )


2.3. Datenbank Updatescript

Laden Sie das Updatescript von folgender URL herunter:

http://helpdesk.xt-commerce.com/index.php?/Knowledgebase/Article/View/1083/203/update-4100-auf-4110

 

Übertragen Sie das Updateverzeichnis (/xtUpdater/) per FTP in Ihren Shopordner.
Starten Sie das Updateskript über den Browser:
http://www.ihr-shop.tld/xtUpdater/index.php

Folgen Sie nun den Anweisungen des Updatescriptes um das Update der Datenbank zu komplettieren.

 

Sollte die Seite weiß sein, kopieren Sie bitte die Datei "php.ini" aus Ihrem Ordner /xtAdmin/ in den Ordner /xtUpdater/.

Hinweis für Multiupdates: Das Script ist grundsätzlich in der Lage den Shop auch von niedrigeren Version als 4.0.16 auf 4.1.10 zu updaten (Mehr Infos zum Multiupdate), jedoch empfehlen wir dieses nur wenn Sie große Erfahrung mit dieser Arbeit haben. Sollte es zu einem Problem kommen ist es äußerst schwer nachzuvollziehen welcher der Schritte das Problem auslöst. ( Die Alternative ist, die verschiedenen Updates nacheinander auszuführen.)

Wichtig: Führen Sie das Skript vollständig aus, bis die Meldung "Update Erfolgreich" erscheint.


3. Update des Dateisystems:
Für das Dateiupdate wird die 4.1.10 Vollversion benötigt, diese finden Sie unter folgender URL:

http://helpdesk.xt-commerce.com/index.php?/Knowledgebase/Article/View/1083/203/update-4100-auf-4110

Um das Dateisystem des Shop auf den neuesten Stand zu bringen, müssen Sie lediglich alle Shopdatein bis auf folgende Dateien uns Verzeichnisse mit den Dateien aus dem neuen Shoparchiv (4.1.10) überschreiben:

  • /conf/config.php 
    ( In dieser Datei befindet sich der Datenbank-Login Ihres Shops.)
  • /xtInstaller/
    ( Dieser Ordner wird nicht benötigt, da der Shop bereits installiert ist.)
  • /plugins/xt_banktransfer/
    ( Dieses Plugin wird im letzten Schritt manuell aktualisiert.)
  • /plugins/xt_coupons/
    ( Dieses Plugin wird im letzten Schritt manuell aktualisiert.)
  • /plugins/xt_orders_invoices/
    ( Dieses Plugin wird im letzten Schritt manuell aktualisiert.)
  • /plugins/xt_ship_and_track/
    ( Dieses Plugin wird im letzten Schritt manuell aktualisiert.)

Überprüfen Sie danach die Schreibrechte der Ordner:

  • /cache/
  • /media/
  • /templates_c/
  • /plugin_cache/

Diese Ordner benötigen inklusive aller Unterordner die Rechte CHMOD 777 (Schreibrechte).

4. Templateupdate:

Der folgenden Abschnitt können Sie entnehmen, wie Sie Ihre Templates für die Version 4.1.10 von xt:Commerce aktualisieren. Der Einfachheit halber wird in Pfadangaben der Templatename "xt_grid" (bzw. xt_mobile) verwendet, sollten Ihr Template anders heißen muss dieses natürlich angepasst werden.

Bitte bedenken Sie auch, dass Anpassungen in modifizierten Templates teilweise nur schwer vorherzusehen sind. Es kann daher notwendig sein, dass geringfügige Modifikationen Ihrerseits für eine optimale Anzeige notwendig sind.

Sollten Sie Probleme bei der Durchführung des Updates haben, erstellen wir Ihnen gerne ein individuelles Angebot.

xt_grid bzw. default-Template

Neue Dateien / Verzeichnisse:

Folgende Dateien und Verzeichnisse sind in der Version 4.1.10 neu und müssen aus dem Download der Version 4.1.10 eingefügt werden:

CORE-655 Kopieren Sie die Datei "/templates/xt_grid/xtCore/pages/login_order_edit.html" in den Ordner "/templates/xt_grid/xtCore/pages/" Ihres Shop

Diese Datei wird benötigt, wenn Administratoren Bestellungen manuell über das FE des Shops anlegen möchten.

CORE-655 Kopieren Sie die Datei "/templates/xt_grid/xtCore/boxes/box_shipping_cost.html" in den Ordner "/templates/xt_grid/xtCore/boxes/" Ihres Shop

Dieses ist das Box-Template der Versandkosten Vorschau (Warenkorb). Bitte beachten Sie, dass diese Änderung erst sichtbar wird, wenn Sie auch die Anpassung an der Datei "/templates/xt_grid/xtCore/pages/cart.html" vorgenommen haben. (Siehe unten)

Die Navigation im FE (Paginierung) wurde vollständig angepasst, daher ist es sinnvoll die Datei "templates/xt_grid/xtCore/pages/navigation/nav_pages.html" vollständig mit der Datei der Version 4.1.10 zu ersetzen.


Verzeichnis: /templates/xt_grid/email/

Kopieren Sie die E-Mail-Templates aus dem Download der Version 4.1.10 ( "/email/" in "/templates/xt_grid/" ) in das Verzeichnis "/templates/xt_grid/" Ihres Shops.

Info: Mit den neuen E-Mail-Templates haben wir den Kopf und Fuß der Mail-Templates in Dateien ausgelagert um die Bearbeitung zu vereinfachen.

Sollten Sie beim Update die Mail-Templates nicht aktualisiert haben, benötigen Sie theoretisch diesen Schritt nicht. (Wir würden das kopieren trotzdem empfehlen falls Sie zu einem späteren Zeitpunkt wechseln möchten.)

 

Dateiänderungen:

Datei: /templates/xt_grid/css/stylesheet.css

Fügen Sie am Ende folgenden Code hinzu:

/* Fix für xt_recaptcha in Kontaktformular: */
#recaptcha_area, #recaptcha_table{float:right;width:318px!important;}
#recaptcha_table tbody tr td div label {line-height:10px}
#recaptcha_widget_div{display:block;float:left}
#recaptcha_area{padding-left: 125px}

/* Fix zur Anzeige von Formatierungen auf dem CKEditor / TinyMCE innerhalb der Produkt-Beschreibungen */
.textstyles a{color:#ff7b00}
.textstyles table{border-collapse:collapse}
.textstyles td{border-width:1px solid #cdcdcd}
.textstyles b, .textstyles strong{font-weight:bold}
.textstyles i,.textstyles em{font-style:italic}
.textstyles ul{list-style-type:square;list-style-position:inside;margin-left:1em}
.textstyles ol{list-style-type:decimal;list-style-position:inside;margin-left:1em}
.textstyles ul,.textstyles ol, .textstyles p{margin-top:1em;margin-bottom:1em}
#content .textstyles li{margin:0}
font[size="7"]{font-size:32px}
font[size="6"]{font-size:24px}
font[size="5"]{font-size:18px}
font[size="4"]{font-size:14px}
font[size="3"]{font-size:12px}
font[size="2"]{font-size:10px}
font[size="1"]{font-size:8px}
.textstyles table td,.textstyles table th{border:1px solid #cdcdcd}
.textstyles table th{background:#eaeaea;color:#484848}

/* Fix siehe CORE-512 */
.product-listing .product .vpe{color:#888888;text-align:center}        

/* Shipping-Preview Box */
#shipping-preview td{padding-left:0}
#shipping-preview select{width: 213px}
#shipping-preview table{margin:0}
.border-L{border-bottom: 1px solid #cdcdcd;}

 

Datei: /templates/xt_grid//xtCore/forms/contact.html

CORE-608 Durch diese Anpassungen werden Felder für die mobile Telefonnummer im Shop hinzugefügt (Kontaktformular)

Suchen Sie:

{form id=telefone type=text name=telefone params='maxlength="40"' value=$telefone}

Fügen Sie danach ein:

<label for="mobile_phone">{txt key=TEXT_MOBILE_PHONE}</label>
{form id=mobile_phone type=text name=mobile_phone params='maxlength="32"' value=$mobile_phone}


Suchen Sie:

{if $file}<p>{$file}</p>{else}<p>{$data.content_body}</p>{/if}

Ersetzen Sie diese Zeile mit:

{if $file}<div class="textstyles">{$file}</div>{else}<div class="textstyles">{$data.content_body}</div>{/if}

 

Durch diese Anpassung wird im Kontaktformular per default SSL verwendet, sofern im Shop SSL aktiviert ist
Suchen Sie:

{form type=form name=login action='dynamic' link_params=getParams method=post}

Ersetzen Sie die Zeile mit:

{form type=form name=login action='dynamic' link_params=getParams method=post conn=SSL}

 

Datei: /templates/xt_grid//xtCore/forms/shipping.html

Suchen Sie:

{if $file}<p>{$file}</p>{else}<p>{$data.content_body}</p>{/if}

Ersetzen Sie diese Zeile mit:

{if $file}<p>{$file}</p>{else}<div class="textstyles">{$data.content_body}</div>{/if}

 

Datei: /templates/xt_grid//xtCore/pages/categorie_listing/categorie_listing.html

Suchen Sie:

<div id="categorie-description">{$categories_description}</div>

Ersetzen Sie diese Zeile mit:

<div id="categorie-description" class="textstyles">{$categories_description}</div>

 

Datei: /templates/xt_grid//xtCore/pages/content.html

Suchen Sie:

{if $file}{$file}{else}{$data.content_body}{/if}

Ersetzen Sie diese Zeile mit:

{if $file}{$file}{else}<div class="textstyles">{$data.content_body}</div>{/if}

 

Datei: /templates/xt_grid//xtCore/pages/default.html

Suchen Sie:

 <div id="startpage">{$text}</div>

Ersetzen Sie diese Zeile mit:

 <div id="startpage" class="textstyles">{$text}</div>


 

Datei: /templates/xt_grid//xtCore/boxes/box_currency.html

Suchen Sie:

{form type=hidden name=action value=change_currency}

Fügen Sie danach hinzu:

{form type=hidden name=paction value=$page_action}

 

Datei: /templates/xt_grid/xtCore/boxes/box_payment_logos.html

Fügen Sie am Anfang folgende Zeile hinzu:

<p class="headline">{txt key=TEXT_PAYMENTS_FE}:</p>

CORE-467 Diese Änderung sorgt dafür, dass im Template "xt_grid" in der Box "box_payment_logo.html" die Logos nicht aus dem "_SYSTEM_TEMPLATE" sondern aus dem "_STORE_TEMPLATE" geladen werden.

Suchen Sie:

{assign var="image" 
value="`$smarty.const._SRV_WEBROOT`templates/`$smarty.const._SYSTEM_TEMPLATE`/img/payments/`$language`/`$module_data.payment_code`.png"}


Ersetzen Sie diese Zeile mit:

 {assign var="image" 
value="`$smarty.const._SRV_WEBROOT`templates/`$smarty.const._STORE_TEMPLATE`/img/payments/`$language`/`$module_data.payment_code`.png"}

 

Datei: /templates/xt_grid/xtCore/pages/product/product.html

1) Prüfen Sie ob das Plugin "sx_cloud_zoom" deaktiviert bzw. deinstalliert ist, falls dieses nicht der Fall ist deinstallieren ("löschen") Sie das Plugin.

2) Prüfen Sie ob das Plugin "sx_fancy_cloud_zoom" installiert und aktiviert ist ist, falls dieses nicht der Fall ist aktivieren Sie das Plugin.

Ändern Sie in der Datei templates/xt_grid/xtCore/pages/product/product.html folgendes:

Suchen Sie:

<div id="product-images">
    <div class="box">
        {if $products_image == 'product:noimage.gif'}
        <p class="product-image center"><img src="{$tpl_url_path}img/no_image.png" alt="{$products_name|escape:" html"}"
            /></p>
        {else}
        <p class="product-image"><a href="{img img=$products_image type=m_org path_only=true}" class="cloud-zoom"
                                    id="zoom" rel="adjustX: 28, adjustY:-10, zoomWidth: 350">{img img=$products_image
            type=m_info alt=$products_name|escape:"html" width=auto height=auto itemprop=image}</a></p>
        {/if}
    </div>
    <!-- .box -->
    {if $more_images !=''}
    <div class="more-images">
        <p class="more-images-item"><span><a href='{img img=$products_image type=m_org path_only=true}'
                                             class='cloud-zoom-gallery'
                                             rel="useZoom: 'zoom', smallImage: '{img img=$products_image type=m_info path_only=false}'"><img
                src="{img img=$products_image type=m_smallproduct alt=$products_name path_only=false}"
                alt="{$products_name|escape:" html"}" /></a></span></p>
        {foreach name=aussen item=img_data from=$more_images}
        <p class="more-images-item"><span><a href='{img img=$img_data.file type=m_org path_only=true}'
                                             class='cloud-zoom-gallery'
                                             rel="useZoom: 'zoom', smallImage: '{img img=$img_data.file type=m_info path_only=true}'"><img
                src="{img img=$img_data.file type=m_smallproduct path_only=true}"
                alt="{if $img_data.data.media_name == ''}{$products_name|escape:" html"}{else}{$img_data.data.media_name|escape:"html"}{/if}"
            /></a></span></p>
        {/foreach}
    </div>
    <!-- .more-images -->
    {/if}
</div><!-- #product-images -->

Ersetzen Sie die Zeilen mit:

<div id="product-images">
    <div class="box">
        {if $products_image == 'product:noimage.gif'}
        <p class="product-image center"><img src="{$tpl_url_path}img/no_image.png"
                                             alt="{$products_name|escape:'html'}"/></p>
        {else}
        <p class="product-image">
            {if $diplayFancyCloud}
            <a href="{img img=$products_image type=m_org path_only=true}" class="cloud-zoom fancy-click-trigger"
               id="zoom" rel="fancy-gallery" data-cloudzoom="adjustX: 28, adjustY:-10, zoomWidth: 350">
                {img img=$products_image type=m_info alt=$products_name|escape:"html" width=auto height=auto
                itemprop=image}
            </a>
            {else}
            {img img=$products_image type=m_info alt=$products_name|escape:"html" width=auto height=auto itemprop=image}
            {/if}
        </p>
        {/if}
    </div>
    <!-- .box -->
    {if $more_images !=''}
    <div class="more-images">
        <p class="more-images-item">
            <span>
                <a href='{img img=$products_image type=m_org path_only=true}' rel="fancy-gallery"
                   class='cloud-zoom-gallery'
                   data-cloudzoom="useZoom: 'zoom', smallImage: '{img img=$products_image type=m_info path_only=false}'">
                    <img src="{img img=$products_image type=m_smallproduct alt=$products_name path_only=false}"
                         alt="{$products_name|escape:'html'}"/>
                </a>
            </span>
        </p>
        {foreach name=aussen item=img_data from=$more_images}
        <p class="more-images-item">
            <span>
                <a href='{img img=$img_data.file type=m_org path_only=true}' rel="fancy-gallery"
                   class='cloud-zoom-gallery'
                   data-cloudzoom="useZoom: 'zoom', smallImage: '{img img=$img_data.file type=m_info path_only=true}'">
                    <img src="{img img=$img_data.file type=m_smallproduct path_only=true}"
                         alt="{if $img_data.data.media_name == ''}{$products_name|escape:'html'}{else}{$img_data.data.media_name|escape:'html'}{/if}"/>
                </a>
            </span>
        </p>
        {/foreach}
    </div>
    <!-- .more-images -->
    {/if}
</div><!-- #product-images -->


2.

Suchen Sie:

<li><a href="javascript:void(0);" rel="#description"><span itemprop="description">{txt key=TEXT_PRODUCTS_DESCRIPTION}</span></a></li>


Ersetzen Sie diese Zeile mit:

<li><a href="javascript:void(0);" rel="#description">{txt key=TEXT_PRODUCTS_DESCRIPTION}</a></li>


Suchen Sie:

{if $products_description !=''}
<div id="description" class="ptabs textstyles">
<p class="headline">{$products_name}</p>
<p>{$products_description}</p>
</div><!-- #description -->
{/if}


Ersetzen Sie diese Zeile mit:

{if $products_description !=''}
<div id="description" class="ptabs textstyles" itemprop="description">
<p class="headline">{$products_name}</p>
<p>{$products_description}</p>
</div><!-- #description -->
{/if}

 

Wir empfehlen, dass Sie nach der Anpassung mit dem Google Test-Tool für strukturierte Daten testen ob die Produktbewertungen an Google übergeben werden.

( Bedenken Sie bitte, dass in dem Produkt das Sie zum testen verwenden Bewertungen vorhanden sein müssen )

 

3.
Der Link "Bewertung schreiben" wird nun innerhalb des Plugin-Templates eingefügt.

Suchen und entfernen Sie:

<p><a href="{$link_reviews_write}" class="button" rel="nofollow">{txt key=TEXT_XT_REVIEWS_WRITE}</a></p>


MSP-19 Durch diese Änderung wird die Optionsauswahl des Master-Slave-Plugins vor den "In den Warenkorb"-Knopf geschoben. ( Diese Anordnung harmoniert besser mit der Version 2.0 des Master-Slave-Plugins.)

Suchen Sie:

{if $products_master_flag == 1 OR  $products_master_model != ''}    
<div class="box">
{hook key=product_info_tpl_options}
 </div><!-- .box -->
{/if}

Verschieben Sie diese Zeilen vor die Zeile:

{hook key=product_info_tpl_before_cart}

 



Datei: /templates/xt_grid/xtCore/boxes/box_mobile.html

Suchen Sie:

{if $mobile_active and $smarty.session.isMobile neq 'true'}
<a href="{$link}" rel="nofollow">
    {txt key=TEXT_MOBILE_SWITCH_LINK}
</a>

Ersetzen mit:

{if $hasMobile eq 'true'}
{if $mobile_active and $smarty.session.isMobile neq 'true'}
<a href="{$link}" rel="nofollow">
    {txt key=TEXT_MOBILE_SWITCH_LINK}
</a>
{/if}


Datei: /templates/xt_grid/xtCore/pages/product_listing/product_listing_v1.html
CORE-512 Diese Anpassung sorgt dafür, dass der Grundpreis eines Produkts auch im Produkt-Listing angezeigt wird.

Suchen Sie:

<p class="product-name"><a href="{$module_data.products_link}">{$module_data.products_name}</a></p>

Fügen Sie danach ein:

{if $module_data.base_price}<p class="vpe">{$module_data.base_price.price} {txt key=TEXT_SHIPPING_BASE_PER} {$module_data.base_price.vpe.name}</p>{/if}

( Beachten Sie ebenfalls die Anpassung in der Datei /templates/xt_grid/css/stylesheet.css - siehe oben )

 


CORE-534 Diese Anpassung sorgt dafür, dass die Verfügbarkeitsanzeige ( xt_upcoming_products ) innerhalb des Listings angezeigt wird.

Suchen Sie:

<p class="product-tax-shipping">{$module_data.products_tax_info.tax_desc} {txt key=TEXT_EXCL_SHIPPING}</p>
{/if}
{/if}

Fügen Sie danach ein:

{if $module_data.date_available!=''}
<p class="box info">{txt key=TEXT_PRODUCT_AVAILABLE} {$module_data.date_available|date_format:"%A, %B %e, %Y"}</p>
{/if}

 

Suchen Sie:

<div id="categorie-description-bottom">{$category_data.categories_description_bottom}</div>

Ersetzen Sie diese Zeile mit:

<div id="categorie-description-bottom" class="textstyles">{$category_data.categories_description_bottom}</div>

 

 

 

Datei: /templates/xt_grid/index.html
CORE-532 Durch diese Änderung wird das Logo im FE des Shops über die Option im Backend eingebunden. Hier befindet sich nun ebenfalls eine Möglichkeit ein Logo zu in den Shop zu laden.

Suchen Sie

<p id="logo"><a href="{link page='index'}"><img src="{$tpl_url_path}img/logo.png" alt="{$smarty.const._STORE_NAME}" /></a></p><!-- #logo -->

Ersetzen Sie die Zeile mit:

<p id="logo"><a href="{link page='index'}"><img src="media/logo/{$smarty.const._STORE_LOGO}" alt="{$smarty.const._STORE_NAME}" /></a></p><!-- #logo -->  

 

Änderungen für das Update auf die Version 2.0 des Trusted-Shops-Plugin:
Suchen Sie:

{box name=xt_trusted_shops type=user}
{box name=xt_trusted_shops_schutz type=user}

Ersetzen Sie die Zeile mit:

{box name=trusted_shops_ratings}
{box name=trusted_shops_seal}
{box name=trusted_shops_video} 

 

Notwendig für die neue Cronjob-Funktion
Suchen Sie:

{hook key=index_footer_tpl}

Fügen Sie danach ein:

<img src="cronjob.php" width="1" height="1" />

 

Trusted-Shops 2.0:

Suchen Sie:

        <div id="mobile_link" class="row">
            <div class="column xt-grid-16">
                {box name=mobile}
            </div>
        </div>

Fügen Sie danach ein:

        <div id="ts-rich-snippet" class="row center">
            <div class="column xt-grid-16">
                {box name=trusted_shops_rich_snippet}
            </div>
        </div>

 

Datei: /templates/xt_grid/xtCore/pages/checkout/subpage_payment.html

Suchen Sie:

                 {/if}
            {/foreach}
        </div><!-- .box .box-grey-->


Fügen Sie danach ein:

 {hook key=checkout_tpl_payment_comment}

 

Datei: /templates/xt_grid/xtCore/pages/checkout/subpage_confirmation.html

Beseitigt einen Typo in der CSS-Klasse.

Suchen Sie:

<p class="pri8ce-old">{$data._original_products_price.formated}</p>


Ersetzen Sie die Zeile mit:

<p class="price-old">{$data._original_products_price.formated}</p>


Durch diese Anpassung wird die Checkbox zum Verzicht des Widerrufrechts bei digitalen Produkten integriert.
Suchen Sie:

{else}
	{content cont_id=3 is_id='false'}
	<p>{txt key=TEXT_TERMSANDCOND_CONFIRMATION_1} <a class="bold" href="{$_content_3.content_link}" target="_blank">{txt key=TEXT_TERMSANDCOND_CONFIRMATION_2}</a> {txt key=TEXT_TERMSANDCOND_CONFIRMATION_3}</p>
{/if}


Fügen Sie dahinter ein:

{if $show_digital_checkbox eq 'true'}
    <p>{form type=checkbox name=withdrawal_reject_accepted} {txt key=TEXT_DIGITALCOND_CHECK}</p>
{/if}

 


Datei: /templates/xt_grid/xtCore/pages/download_history.html

CORE-594 Diese Anpassung behebt ein Problem bei der Anzeige der kostenpflichtigen Downloads, wenn mehr als eine Datei verfügbar ist.

Suchen Sie:

<p><span class="bold">{$dl_item.media_name}</span> ({$dl_item.media_size|fsize_format:"MB"})</p>

{if $dl_item.media_description}<p class="media-description">{$dl_item.media_description}</p>{/if}
<p>{txt key=TEXT_DOWNLOAD_NOT_ALLOWED}</p>
</td>
{/if}
</tr>


Fügen Sie danach ein:

{if $dl_item.download_allowed eq '1'}
<tr>
<td colspan="4">
<p><a href="{$dl_item.download_url}">{css_button text=$smarty.const.BUTTON_DOWNLOAD}</a></p>
</td>
</tr>
{/if}


Suchen Sie:

</tbody>
</table>  

Fügen Sie danach ein:

{if $dl_item.download_allowed eq '1'}
<p><a href="{$dl_item.download_url}">{css_button text=$smarty.const.BUTTON_DOWNLOAD}</a></p>
{/if}



Datei: /templates/xt_grid/xtCore/pages/account_history_info.html
CORE-602 Diese Änderung korrigiert die Datumsanzeige (von US- in DE-Format)

Suchen Sie:

<p>{$history_values.date_added}  - {$history_values.status_name}</p>

Ersetzen Sie die Zeile mit:

<p>{$history_values.date_added|date_format:"%d.%m.%Y - %H:%M"} - {$history_values.status_name}</p>


Datei: /templates/xt_grid/xtCore/pages/edit_address.html

CORE-608 Durch diese Anpassungen werden Felder für die mobile Telefonnummer im Shop hinzugefügt (Account => Adressen)
Suchen Sie:

{form id=customers_phone type=text name=customers_phone value=$customers_phone}


Fügen Sie danach ein:

<label for="customers_mobile_phone">{txt key=TEXT_MOBILE_PHONE}{if _STORE_MOBILE_PHONE_MIN_LENGTH > 0}*{/if}</label>
{form id=customers_mobile_phone type=text name=customers_mobile_phone value=$customers_mobile_phone}


Datei: /templates/xt_grid/xtCore/pages/login.html

CORE-608 Durch diese Anpassungen werden Felder für die mobile Telefonnummer im Shop hinzugefügt (Registrieren)
Suchen Sie:

{form id=default_address_customers_phone type=text name=default_address[customers_phone] value=$default_address.customers_phone}

Fügen Sie danach ein:

<label for="default_address_customers_mobile_phone">{txt key=TEXT_MOBILE_PHONE}{if _STORE_MOBILE_PHONE_MIN_LENGTH > 0}*{/if}</label>
{form id=default_address_customers_mobile_phone type=text name=default_address[customers_mobile_phone] value=$default_address.customers_mobile_phone}


Datei: /templates/xt_grid/javascript/script.js
Diese Anpassung ermöglicht eine etwas flexiblere Anpassung der Payment-Templates

Suchen Sie:

    $('div.box-hover').click( function(e)
    {
        if( $(this).children('p.shipping-name').length > 0)
        {
            $('div.box-hover').children('p.shipping-desc').css('display','none');
            $(this).children('p.shipping-desc').css('display','block');
        }
        if( $(this).children('p.payment-name').length > 0)
        {
            $('div.box-hover').children('p.payment-desc').css('display','none');
            $(this).children('p.payment-desc').css('display','block');
        }
    });  

Ersetzen Sie den gesamten Block mit:

     $('div.box-hover,div.box-hover input').bind("click change",function(e)
    {
        if( $(this).children('p.shipping-name').length > 0)
        {
            $('div.box-hover').children('.shipping-desc').css('display','none');
            $(this).children('.shipping-desc').css('display','block');
        }
        if( $(this).children('.payment-name').length > 0)
        {
           $('div.box-hover').children('.payment-desc').css('display','none'); 
           $(this).children('.payment-desc').css('display','block');
        }
    });  

 

Datei: /templates/xt_grid/xtCore/pages/cart.html

Durch diese Anpassung wird die Versandkosten-Vorschau-Box in die Warenkorb-Seite integriert.
Suchen Sie:

{hook key=cart_bottom}


Fügen Sie davor ein:

{box name=shipping_cost}


Datei: /templates/xt_grid/xtCore/pages/password_reset.html

Wenn der Kunde ein neues Passwort anfordert, wird die Box ausgeblendet nachdem dieses erfolgt ist.

Suchen Sie:

     <div class="box">
         {form type=form name=login action='dynamic' link_params='page_action=password_reset' method=post conn=SSL}

Ersetzen Sie dieses mit:

{if $captcha_show != 'false'}
     <div class="box">
         {form type=form name=login action='dynamic' link_params='page_action=password_reset' method=post conn=SSL}

 

Suchen Sie:

         {form type=formend}
     </div><!-- .box -->

Ersetzen Sie dieses mit:

         {form type=formend}
     </div><!-- .box -->
{/if}

 

 

xt_mobile (bzw. Templates für mobile Endgeräte)

Ersetzen Sie das Verzeichnis "/templates/xt_mobile/plugins/" mit dem gleichnamigen Verzeichnis aus dem Shopdownload

Datei: /templates/xt_mobile/xtCore/boxes/box_mobile.html

Suchen Sie:

{if $mobile_active and $smarty.session.isMobile neq 'true'}
<a href="{$link}" rel="nofollow">
    {txt key=TEXT_MOBILE_SWITCH_LINK}
</a>

Ersetzen Sie dieses mit:

{if $hasMobile eq 'true'}
{if $mobile_active and $smarty.session.isMobile neq 'true'}
<a href="{$link}" rel="nofollow">
    {txt key=TEXT_MOBILE_SWITCH_LINK}
</a>
{/if}


Datei: /templates/xt_mobile/xtCore/pages/checkout/subpage_confirmation.html

Durch diese Anpassung wird die Checkbox zum Verzicht des Widerrufrechts bei digitalen Produkten integriert.
Suchen Sie:

{if $smarty.const._STORE_TERMSCOND_CHECK eq 'true'}
            <label>
                {content cont_id=3 is_id='false'}
                {form type=checkbox name=conditions_accepted} <strong>{txt key=TEXT_ACCEPT_CONDITIONS}</strong>
            </label>
            {$_content_3.content_popup_link}
{/if}


Fügen Sie dahinter ein:

{if $show_digital_checkbox eq 'true'}
     <label>{form type=checkbox name=withdrawal_reject_accepted} {txt key=TEXT_DIGITALCOND_CHECK}</label>
{/if}



Fix für Imageanzeige:
Suchen Sie in folgenden Dateien nach "type=m_xt-mobile_thumb" und ersetzen Sie diese Zeichenkette durch "type=m_mobile_thumb"

  • /templates/xt_mobile/xtCore/pages/cart.html
  • /templates/xt_mobile/xtCore/pages/checkout/subpage_confirmation.html (Die Zeichenkette muss zwei mal ersetzt werden.)

 

Datei: /templates/xt_mobile/xtCore/pages/edit_address.html
CORE-608 Durch diese Anpassungen werden Felder für die mobile Telefonnummer im Shop hinzugefügt (Account => Adressen)
Suchen Sie:             

<tr>
    <td>{txt key=TEXT_PHONE} {if _STORE_TELEPHONE_MIN_LENGTH > 0}*{/if}:</td>
    <td>{form type=tel name=customers_phone value=$customers_phone}</td>
</tr>


Fügen Sie danach ein:

<tr>
    <td>{txt key=TEXT_MOBILE_PHONE} {if _STORE_MOBILE_PHONE_MIN_LENGTH > 0}*{/if}:</td>
    <td>{form type=tel name=customers_mobile_phone value=$customers_mobile_phone}</td>
</tr>            


Datei: /templates/xt_mobile/xtCore/pages/login.html

CORE-608 Durch diese Anpassungen werden Felder für die mobile Telefonnummer im Shop hinzugefügt (Registrieren)

Suchen Sie:       

<tr>
    <td>{txt key=TEXT_PHONE} {if _STORE_TELEPHONE_MIN_LENGTH > 0}*{/if}:</td>
    <td>{form type=tel name=default_address[customers_phone] value=$default_address.customers_phone autocomplete="off"}</td>
</tr>


Fügen Sie danach ein:

<tr>
    <td>{txt key=TEXT_MOBILE_PHONE} {if _STORE_MOBILE_PHONE_MIN_LENGTH > 0}*{/if}:</td>
    <td>{form type=tel name=default_address[customers_mobile_phone] value=$default_address.customers_MOBILE_phone autocomplete="off"}</td>
</tr> 

 

Datei: /templates/xt_mobile/plugins/xt_master_slave/options/ms_default.html

Im Zuge der Aktualisierung des Master-Slave-Plugins muss folgende Anpassung durchgeführt werden:
Suchen Sie:

<option value="{$item_data.id}" {if $item_data.selected} selected="" {/if} {if $item_data.disabled} disabled="disabled" {/if}>{$item_data.text}</option>


Ersetzen Sie die Zeile mit:

<option value="{$item_data.id}" {if $item_data.selected} selected="" {/if} >{$item_data.text}</option>



Datei: /templates/xt_mobile/xtCore/pages/product/product.html

Im Zuge der Aktualisierung des Master-Slave-Plugins muss folgende Anpassung durchgeführt werden:

Suchen Sie:

{hook key=product_info_tpl_cart}

Fügen Sie danach ein:

{if $products_master_flag == 1 OR  $products_master_model != ''}    
    <div class="box">
        {hook key=product_info_tpl_options}
    </div><!-- .box -->
{/if}

Suchen Sie:

{form type=formend}

Verschieben Sie diese Zeile vor folgende Zeile:

{hook key=product_info_tpl_cart}


Löschen Sie folgenden Dateien:

  • /templates/xt_mobile/img/stockrules/rule_1.gif
  • /templates/xt_mobile/img/stockrules/rule_1_1.gif
  • /templates/xt_mobile/img/stockrules/rule_2.gif
  • /templates/xt_mobile/img/stockrules/rule_2_1.gif
  • /templates/xt_mobile/img/stockrules/rule_3.gif
  • /templates/xt_mobile/img/stockrules/rule_3_1.gif
  • /templates/xt_mobile/img/stockrules/rule_4.gif
  • /templates/xt_mobile/img/stockrules/rule_4_1.gif
  • /templates/xt_mobile/img/stockrules/rule_5.gif
  • /templates/xt_mobile/img/stockrules/rule_5_1.gif
  • /templates/xt_mobile/img/screenshot1.jpg
  • /templates/xt_mobile/img/top_logo.jpg

( Diese Dateien werden nicht länger benötigt)

Grundsätzlich ist an diesem Punkt das Update des Shops abgeschlossen, jedoch sollten Sie trotzdem noch den Punkt "5. Plugin Updates" prüfen. Bitte Prüfen Sie nach Abschluss aller arbeiten ausführliche Tests in Ihrem Shop durch. Erstellen Sie Kundenkontos, machen Sie Testbestellungen mit den verschiedenen Zahlungsarten und Prüfen Sie Funktionalitäten die Sie durch Plugins in Ihrem Shop installiert haben.

5. Plugin Updates

5.1 PDF-Rechnung, xt_ship_and_track, Gutschein-Plugin & Lastschrift:

An den Plugins xt_coupons, xt_orders_invoice, xt_ship_and_track und xt_banktransfer haben wir massive Änderungen vorgenommen, daher müssen diese Plugins durch den neuen Plugin-Update-Modus aktualisiert werden.

Bitte führen Sie den Vorgang der hier beschrieben ist für die genannten Plugins durch, sofern Sie diese nutzen.

 

5.2 xt:Payments 2.0

Sofern noch nicht geschehen, ist es notwendig, dass Ihr xt:Payments-Account auf die 2.0 Version von xt:Payments freigeschaltet wird.

Dieses übernimmt unser xt:Payments-Sales-Team für Sie.

Bitte schreiben Sie vor dem Update Ihres Shops eine kurze Mail an sales@xtpayments.com , die Kollegen werden Ihnen dann den Vorgang im Detail erläutern.

Bitte beachten Sie, dass dieses nur notwendig ist, wenn Sie xt:Commerce Payments als anbieter für Kreditkartenzahlung nutzen. Sollten Sie keine Kreditkartenzahlung anbieten oder einen anderen Provider verwenden ist dieser Schritt nicht notwendig.