Ankündigung

Einklappen
Keine Ankündigung bisher.

Urlaubsmeldung weitere Sprachdatei

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    (Zen-Cart 1.5.6) Urlaubsmeldung weitere Sprachdatei

    In der Urlaubsmeldung sind ja bei der SQL-Datei die Sprachen englisch und deutsch bereits vorgegeben. Nun wollte ich für einen Shop in ausschließlich französischer Sprache (deutsch und englisch aber installiert) diese Meldung auch integrieren. Deshalb habe ich entsprechende zusätzliche Einträge in der install.sql vorgenommen. In der Datei includes/init_includes/overwrite/init_header.php habe ich den Eintrag auch erweitert. Nun ist die Situation so, dass ich im Admin die entsprechenden Einträge angezeigt bekommen, in der jeweils gewählten Sprache, diese auch bearbeiten kann. Im Frontend wird mir die Meldung aber nur in der deutschen und der englischen Version angezeigt, in der französischen Version wird nichts angezeigt. Ich setze hier mal die zwei geänderten Dateien komplett rein, die Änderungen sind rot markiert.

    install.sql
    Code:
    ##################################################################
    # Urlaubsmeldung 1.1 Install - 2019-09-18 - webchills
    ##################################################################
    
    INSERT INTO configuration_group (configuration_group_title, configuration_group_description, sort_order, visible) VALUES
    ('Urlaubsmeldung', 'Holiday Notice Settings', '1', '1');
    SET @gid=last_insert_id();
    UPDATE configuration_group SET sort_order = last_insert_id() WHERE configuration_group_id = last_insert_id();
    
    INSERT INTO configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added, use_function, set_function) VALUES 
    
    ('Holiday Notice - Enable', 'URLAUBSMELDUNG_STATUS', 'false', 'Do you want to activate the holiday notice?', @gid, 1, NOW(), NULL, 'zen_cfg_select_option(array(\'true\', \'false\'), '),
    ('Holiday Notice -  Text German', 'URLAUBSMELDUNG_TEXT_DE', 'Bitte beachten Sie, dass wir uns in der Zeit vom XXX bis XXX im Betriebsurlaub befinden und in diesem Zeitraum eingehende Bestellungen erst nach unserer Rückkehr bearbeiten können. Die bei unseren Artikeln angegebenen Lieferzeiten verlängern sich daher jeweils um XXX Tage. Wir danken für Ihr Verständnis.', 'Enter your text for the holiday notice in the German version.', @gid, 3, NOW(), NULL, 'zen_cfg_textarea('),
    ('Holiday Notice -  Text English', 'URLAUBSMELDUNG_TEXT_EN', 'We are on holiday during XXX and XXX. Orders are possible but will not be shipped before XXX.', 'Enter your text for the holiday notice in the English version.', @gid, 4, NOW(), NULL, 'zen_cfg_textarea('),
    [COLOR=#ff0000]('Holiday Notice -  Text Français', 'URLAUBSMELDUNG_TEXT_FR', 'Nous sommes en vacances pendant XXX et XXX. Les commandes sont possibles mais ne seront pas expédiées avant XXX.', 'Entrez votre texte pour l\'avis de vacances dans la version française.', @gid, 5, NOW(), NULL, 'zen_cfg_textarea(');[/COLOR]
    
    ##############################
    # Add values for German admin
    ##############################
    
    INSERT INTO configuration_group (configuration_group_id, language_id, configuration_group_title, configuration_group_description, sort_order, visible ) VALUES 
    (@gid, 43, 'Urlaubsmeldung', 'Einstellungen für die Urlaubsmeldung', '1', '1');
    
    
    REPLACE INTO configuration_language (configuration_title, configuration_key, configuration_description, configuration_language_id) VALUES
    ('Urlaubsmeldung aktivieren?', 'URLAUBSMELDUNG_STATUS', 'Wollen Sie die Urlaubsmeldung mit dem Hinweis auf die längeren Lieferzeiten aktivieren?',    43),
    ('Urlaubsmeldung Text Deutsch', 'URLAUBSMELDUNG_TEXT_DE', 'Geben Sie hier den Text für Ihre Urlaubsmeldung der deutschen Version mit dem Hinweis auf die längeren Versandzeiten ein.',    43),
    ('Urlaubsmeldung Text Englisch', 'URLAUBSMELDUNG_TEXT_EN', 'Geben Sie hier den Text für Ihre Urlaubsmeldung der englischen Version mit dem Hinweis auf die längeren Versandzeiten ein.',    43);
    
    [COLOR=#ff0000]INSERT INTO configuration_group (configuration_group_id, language_id, configuration_group_title, configuration_group_description, sort_order, visible ) VALUES 
    (@gid, 33, 'Message de vacances', 'Paramètres pour la notification de vacances', '1', '1');
    
    
    REPLACE INTO configuration_language (configuration_title, configuration_key, configuration_description, configuration_language_id) VALUES
    ('Activer le message de vacances?', 'URLAUBSMELDUNG_STATUS', 'Si vous souhaitez activer le message de vacances avec une référence aux délais de livraison plus longs?',    33),
    ('Urlaubsmeldung Text Deutsch', 'URLAUBSMELDUNG_TEXT_DE', 'Geben Sie hier den Text für Ihre Urlaubsmeldung der deutschen Version mit dem Hinweis auf die längeren Versandzeiten ein.',    33),
    ('Texte du message de vacances en français', 'URLAUBSMELDUNG_TEXT_FR', 'Saisissez ici le texte de votre message de vacances de la version française avec la référence aux délais de livraison plus longs.',    33);[/COLOR]
    
    ###################################
    # Register for Admin Access Control
    ###################################
    
    INSERT INTO admin_pages (page_key,language_key,main_page,page_params,menu_key,display_on_menu,sort_order)
    VALUES ('configUrlaubsmeldung','BOX_CONFIGURATION_URLAUBSMELDUNG','FILENAME_CONFIGURATION',CONCAT('gID=',@gid),'configuration','Y',@gid);
    init_header.php
    Code:
    <?php
    /**
     * header code, mainly concerned with adding to messagestack when certain warnings are applicable
     *
     * @package templateStructure
     * @copyright Copyright 2003-2019 Zen Cart Development Team
     * @copyright Portions Copyright 2003 osCommerce
     * @license https://www.zen-cart-pro.at/license/3_0.txt GNU General Public License V3.0
     * @version $Id: init_header.php for Urlaubsmeldung 2019-09-15 15:49:16Z webchills $
     */
    if (!defined('IS_ADMIN_FLAG')) {
      die('Illegal Access');
    }
    
    if (URLAUBSMELDUNG_STATUS == 'true') {
      if ($_SESSION['language']=='german') {
        $messageStack->add('header', URLAUBSMELDUNG_TEXT_DE, 'warning');
      }
      if ($_SESSION['language']=='english') {
        $messageStack->add('header', URLAUBSMELDUNG_TEXT_EN, 'warning');
      }  
    [COLOR=#ff0000]  if ($_SESSION['language']=='french') {
        $messageStack->add('header', URLAUBSMELDUNG_TEXT_FR, 'warning');
      }  
    [/COLOR]}
    // give the visitors a message that the website will be down at ... time
    if ( (WARN_BEFORE_DOWN_FOR_MAINTENANCE == 'true') && (DOWN_FOR_MAINTENANCE == 'false') ) {
      $messageStack->add('header', TEXT_BEFORE_DOWN_FOR_MAINTENANCE . PERIOD_BEFORE_DOWN_FOR_MAINTENANCE);
    }
    
    // this will let the admin know that the website is DOWN FOR MAINTENANCE to the public
    if ( (DOWN_FOR_MAINTENANCE == 'true') && (strstr(EXCLUDE_ADMIN_IP_FOR_MAINTENANCE, $_SERVER['REMOTE_ADDR'])) ) {
      $messageStack->add('header', TEXT_ADMIN_DOWN_FOR_MAINTENANCE, 'warning');
    }
    
    // Alerting about payment modules in testing/debug mode
    
    if ((defined('MODULE_PAYMENT_PAYPAL_IPN_DEBUG') && MODULE_PAYMENT_PAYPAL_IPN_DEBUG == 'true') || (defined('MODULE_PAYMENT_PAYPAL_TESTING') && MODULE_PAYMENT_PAYPAL_TESTING == 'Test')) {
      $messageStack->add('header', 'PAYPAL IS IN TESTING MODE', 'warning');
    }
    if ((defined('MODULE_PAYMENT_AUTHORIZENET_AIM_STATUS') && MODULE_PAYMENT_AUTHORIZENET_AIM_STATUS == 'True' && defined('MODULE_PAYMENT_AUTHORIZENET_AIM_TESTMODE') && MODULE_PAYMENT_AUTHORIZENET_AIM_TESTMODE == 'Test') || (defined('MODULE_PAYMENT_AUTHORIZENET_STATUS') && MODULE_PAYMENT_AUTHORIZENET_STATUS == 'True' && defined('MODULE_PAYMENT_AUTHORIZENET_TESTMODE') && MODULE_PAYMENT_AUTHORIZENET_TESTMODE =='Test' ) ) {
      $messageStack->add('header', 'AUTHORIZENET IS IN TESTING MODE', 'warning');
    }
    if (defined('MODULE_SHIPPING_USPS_SERVER') &&   MODULE_SHIPPING_USPS_SERVER == 'test' ) {
      $messageStack->add('header', 'USPS IS IN TESTING MODE', 'warning');
    }
    
    // Alerts for EZ-Pages
    if (EZPAGES_STATUS_HEADER == '2' && (strstr(EXCLUDE_ADMIN_IP_FOR_MAINTENANCE, $_SERVER['REMOTE_ADDR']))) {
      $messageStack->add('header', TEXT_EZPAGES_STATUS_HEADER_ADMIN, 'caution');
    }
    if (EZPAGES_STATUS_FOOTER == '2' && (strstr(EXCLUDE_ADMIN_IP_FOR_MAINTENANCE, $_SERVER['REMOTE_ADDR']))) {
      $messageStack->add('header', TEXT_EZPAGES_STATUS_FOOTER_ADMIN, 'caution');
    }
    if (EZPAGES_STATUS_SIDEBOX == '2' && (strstr(EXCLUDE_ADMIN_IP_FOR_MAINTENANCE, $_SERVER['REMOTE_ADDR']))) {
      $messageStack->add('header', TEXT_EZPAGES_STATUS_SIDEBOX_ADMIN, 'caution');
    }
    if (defined('STRICT_ERROR_REPORTING') && STRICT_ERROR_REPORTING == true) {
      $messageStack->add('header', 'STRICT ERROR REPORTING IS ON', 'warning');
    }
    
    
    // if down for maintenance, prevent indexing
    if ( (DOWN_FOR_MAINTENANCE == 'true') && (!strstr(EXCLUDE_ADMIN_IP_FOR_MAINTENANCE, $_SERVER['REMOTE_ADDR'])) ) {
      header("HTTP/1.1 503 Service Unavailable");
    }
    
    /* Check for invalid countries in customer's address book.
     * If a customer is logged in, check to see that the customers' address(es) still contain valid countries.
     * If not, redirect to the address-book page for changes.
     */
    if (!empty($_SESSION['customer_id']) && $_GET['main_page'] != FILENAME_ADDRESS_BOOK_PROCESS && $_GET['main_page'] != FILENAME_LOGOFF) {
      $addresses_query = "SELECT address_book_id, entry_country_id as country_id, entry_firstname as firstname, entry_lastname as lastname
                          FROM   " . TABLE_ADDRESS_BOOK . "
                          WHERE  customers_id = :customersID
                          ORDER BY firstname, lastname";
    
      $addresses_query = $db->bindVars($addresses_query, ':customersID', $_SESSION['customer_id'], 'integer');
      $addresses = $db->Execute($addresses_query);
    
      foreach ($addresses as $address) {
        if (zen_get_country_name($address['country_id'], TRUE) == '') {
          $messageStack->add_session('addressbook', sprintf(ERROR_TEXT_COUNTRY_DISABLED_PLEASE_CHANGE, zen_get_country_name($address['country_id'], FALSE)), 'error');
          zen_redirect (zen_href_link(FILENAME_ADDRESS_BOOK_PROCESS, 'edit=' . $address['address_book_id'], 'SSL'));
        }
      }
    }
    Wo liegt mein Fehler? Danke schon mal für Tipps.

    #2
    Du legst hier eine neue configuration_group an, was weder nötig noch sinnvoll ist.

    Originalmodul ohne irgendwelche Änderungen installieren

    In der Administration auf Konfiguration > Urlaubsmeldung gehen, in der Adresszeile ist die configuration group id ersichtlich, z.B.
    configuration.php?gID=63

    In diesem Beispiel also 63

    Dann via phpMyAdmin oder Tools > SQL Patches installieren folgendes einspielen und vorher die rot markierte 63 mit der echten configuration group id ersetzen

    Code:
    INSERT INTO configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added, use_function, set_function) VALUES 
    ('Holiday Notice -  Text French', 'URLAUBSMELDUNG_TEXT_FR', 'French text', 'Enter your text for the holiday notice in the French version.', [COLOR=#ff0000]63[/COLOR], 5, NOW(), NULL, 'zen_cfg_textarea(');
    
    REPLACE INTO configuration_language (configuration_title, configuration_key, configuration_description, configuration_language_id) VALUES
    ('Activer le message de vacances?', 'URLAUBSMELDUNG_STATUS', 'Activer le message de vacances avec une référence aux délais de livraison plus longs?', 33),
    ('Texte du message de vacances en allemand', 'URLAUBSMELDUNG_TEXT_DE', 'Saisissez ici le texte de votre message de vacances de la version allemande avec la référence aux délais de livraison plus longs.', 33),
    ('Texte du message de vacances en anglais', 'URLAUBSMELDUNG_TEXT_EN', 'Saisissez ici le texte de votre message de vacances de la version anglaise avec la référence aux délais de livraison plus longs.', 33),
    ('Texte du message de vacances en français', 'URLAUBSMELDUNG_TEXT_FR', 'Saisissez ici le texte de votre message de vacances de la version française avec la référence aux délais de livraison plus longs.', 33);
    Deine Änderung in der init_header.php ist korrekt
    Wenn das Verzeichnis für die französische Sprache wirklich french heißt, dann wird die Urlaubsmeldung danach korrekt angezeigt werden.

    Kommentar


      #3
      Danke für die Info.

      Kommentar

      Info zu diesem Forenarchiv:
      Mit Release von 1.5.7 wurde die deutsche Zen Cart Version auf eine reine DIY-Lösung umgestellt.
      Für einen Support via Forum stehen keine personellen und zeitlichen Ressourcen mehr zur Verfügung.
      Dieses Supportforum bleibt im Nur-Lesen-Modus als Wissensarchiv noch online verfügbar.
      PM Funktionalität, Registrierung und Posten neuer Beiträge sind deaktiviert.
      Zugriff auf Anhänge in den Postings ist auch ohne Registrierung/Einloggen möglich.
      FAQ und Downloadbereich des Forums wurden in die neue umfangreiche Knowledgebase auf der zen-cart-pro.at Website übernommen.

      Das Development der deutschen Zen Cart Version geht wie bisher auf Github weiter.
      Wir werden auch weiterhin neue Versionen bereitstellen und die Onlinedokumentation/Knowledgebase aktualisieren.
      Fehler in der Software können auf Github als Issues gemeldet werden.
      Follow us
      aktuelle version
      Zen Cart 1.5.7g deutsch
      vom 12.12.2023
      [Download]
      Lädt...
      X