Kontakt-Formular Felder

Thema wurde von mdc, 10. September 2014 erstellt.

  1. mdc

    mdc Erfahrener Benutzer

    Registriert seit:
    8. August 2012
    Beiträge:
    277
    Danke erhalten:
    16
    Danke vergeben:
    113
    Hallo Gemeinde,

    ich habe in jugendlichem Leichtsinn mein Kontakt Formular umgebaut - also ehrlich gesagt verbaut ! und jetzt sind die Felder wie Name, Textfeld, Absenden Button etc. weg. nur noch der Text aus dem Content Manager ist zu sehen.
    Weiss jemand in welcher Datei das alles enthalten ist? dann könnte ich die Dateien aus einem Backup oder neuen Shop wieder einspielen.... ;-)

    Vielen Dank im Vorraus
    Mirko
     
  2. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    35.556
    Danke erhalten:
    11.309
    Danke vergeben:
    1.613
    Und Du weißt nicht mehr welche Dateien Du geändert hast?
     
  3. mdc

    mdc Erfahrener Benutzer

    Registriert seit:
    8. August 2012
    Beiträge:
    277
    Danke erhalten:
    16
    Danke vergeben:
    113
    ja korrekt - ich hatte die Kontaktfelder in einen neuen Content kopiert.... diese dann verhauen und jetzt weiss ich aber leider nicht mehr woher ich sie hatte. Nacht und Nebelaktion mit Hilfe eines Freundes ;-)
     
  4. kerstinaxmann

    kerstinaxmann Erfahrener Benutzer

    Registriert seit:
    19. November 2013
    Beiträge:
    53
    Danke erhalten:
    9
    Danke vergeben:
    25
    File: EyeCandy/module/contact_us.html:
    HTML:
    {load_language_text section="contact_us"}
    {load_language_text section="buttons" name="button"}
    
    <div id="contact_us" class="contact_us">
    
        <h1>{$CONTACT_HEADING}</h1>
    
        {if $error_message!=''}
        <div class="class_error">
            {$error_message}
        </div>
        <br />
        {/if}
    
        {if $CONTACT_CONTENT}
            <div class="content_contact">{$CONTACT_CONTENT}</div>
            <br />
        {/if}
    
        {if $success != '1'}
    
            <div class="required_info">
                {$txt.text_required}
            </div>
    
            <form id="{$FORM_ID}" action="{$FORM_ACTION_URL}" method="{$FORM_METHOD}">
                <fieldset class="blocklabels_150">
                    <div class="input">
                        <label>{$txt.text_name}</label>
                        <input type="text" name="{$INPUT_NAME_NAME}" value="{$INPUT_NAME_VALUE}" class="input-text" /> {$txt.text_required_sign}
                    </div>
                    <div class="input">
                        <label>{$txt.text_email}</label>
                        <input type="text" name="{$INPUT_EMAIL_NAME}" value="{$INPUT_EMAIL_VALUE}" class="input-text" /> {$txt.text_required_sign}
                    </div>
                    <div class="input">
                        <label>{$txt.text_subject}</label>
                        <input type="text" name="{$INPUT_SUBJECT_NAME}" value="{$INPUT_SUBJECT_VALUE}" class="input-text" />
                    </div>
                    <div class="input">
                        <label>{$txt.text_message}</label>
                        <textarea name="{$INPUT_TEXT_NAME}" class="input-textarea" cols="1" rows="1">{$INPUT_TEXT_VALUE}</textarea>
                    </div>
                    {if $GM_CONTACT_VVCODE == 'true'}
                    <div class="input vvcode">
                        <label>{$txt.text_captcha}</label>
                        {$GM_CAPTCHA}
                    </div>
                    {/if}
                </fieldset>
    
                {if $GM_PRIVACY_LINK != '0'}
                <div id="gm_privacy">
                    {$GM_PRIVACY_LINK}
                    <br />
                    <br />
                </div>
                {/if}
    
                <div class="send_button"><a href="{page_url}#" class="button_blue_big button_set_big action_submit"><span class="button-outer"><span class="button-inner">{$button.send}</span></span></a></div>
    
            </form>
        {else}
            {$txt.text_success}
        {/if}
    </div>
     
  5. mdc

    mdc Erfahrener Benutzer

    Registriert seit:
    8. August 2012
    Beiträge:
    277
    Danke erhalten:
    16
    Danke vergeben:
    113
    cool vielen dank...
    wenn ich das jetzt in einen neuen info content einbauen möchte - ab wo genau beginnen die Formular Felder ab {if $success != '1'} ? besten Dank!
     
  6. mdc

    mdc Erfahrener Benutzer

    Registriert seit:
    8. August 2012
    Beiträge:
    277
    Danke erhalten:
    16
    Danke vergeben:
    113
    bzw. anders gefragt - wo befindet sich denn der content den man im content manager anlegt?
     
  7. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    35.556
    Danke erhalten:
    11.309
    Danke vergeben:
    1.613
    Der Content wird hier geholt:
    Code:
    {if $CONTACT_CONTENT}
            <div class="content_contact">{$CONTACT_CONTENT}</div>
            <br />
        {/if}
     
  8. mdc

    mdc Erfahrener Benutzer

    Registriert seit:
    8. August 2012
    Beiträge:
    277
    Danke erhalten:
    16
    Danke vergeben:
    113
    ah ok vielen dank - weisst du wo der Informations content liegt also das eigentliche .html ? denn wenn ich diesen code so im content manager eingebe bekomme ich datenmüll ;-) beim Kontakt Formular ist er ja auch nur in der html (EyeCandy/module/contact_us.html) und nicht im content manager sichtbar..., oder denke ich falsch?

    Danke und Gruß
    Mirko
     
  9. kerstinaxmann

    kerstinaxmann Erfahrener Benutzer

    Registriert seit:
    19. November 2013
    Beiträge:
    53
    Danke erhalten:
    9
    Danke vergeben:
    25
    #9 kerstinaxmann, 11. September 2014
    Zuletzt bearbeitet: 11. September 2014
    Im Content Manager sollte das die (Standard-) Gruppe 7 namens "Kontakt" sein. Das, was dort eingetragen wird, einschließlich der Überschrift, erscheint auf dem Kontaktformular oben, danach die Formularfelder aus dem o.g. Skript. Über Toolbox -> Texte anpassen kannst du dann noch text_required ("* notwendige Angaben") und text_success ("Vielen Dank! Ihre Nachricht wurde erfolgreich versandt.") anpassen. Achtung: die beiden Textbausteine gibt es in mehreren Sektionen, du musst die Sektion "contact_us" nehmen.
     
  10. mdc

    mdc Erfahrener Benutzer

    Registriert seit:
    8. August 2012
    Beiträge:
    277
    Danke erhalten:
    16
    Danke vergeben:
    113
    ok verstehe - aber ich würde gerne das kontaktformular genau so lassen und die kontaktformular felder einfach in einen neuen content duplizieren - also einmal zur klassischen kontaktaufnahme (contact_us.html) und einmal als zusätzliche Möglichkeit uns eine Nachricht zusenden aus einem anderen content heraus. Mir stellt sich jetzt die Frage: bei Kontakt sind die Formularfelder in "EyeCandy/module/contact_us.html" bei selbst erstelltem Content? wie gesagt wenn ich das im contentmanager als code eintrage wird das nichts ;-)

    vielen dank für die Hilfe
    Mirko
     
  11. kerstinaxmann

    kerstinaxmann Erfahrener Benutzer

    Registriert seit:
    19. November 2013
    Beiträge:
    53
    Danke erhalten:
    9
    Danke vergeben:
    25
    #11 kerstinaxmann, 11. September 2014
    Zuletzt bearbeitet: 11. September 2014
    1. Einen neuen Content mit der gewünschten Überschrift und dem gewünschten Text anlegen, Gruppe merken (hier im Beispiel: 999)
    2. In der Datei system/classes/shop_content/ShopContentContentView.inc.php suchen:
    PHP:
    if($this->content_group_id == 7)
    3. Diesen Text wie folgt ändern (999 ist die neue Content-Gruppe):
    PHP:
    if (($this->content_group_id == 7) || ($this->content_group_id == 999))
    4. In der Datei system/classes/shop_content/ShopContentContentView.inc.php suchen:
    PHP:
    parent::__construct();
    5. Dort hinzufügen:
    PHP:
    parent::__construct();

    if ((
    $_GET['coID'] == '999') && ($_POST['name'])) $_GET['coID'] = '7';
    4. Das neue Formular wie folgt verlinken: (shop-URL)/shop_content.php?coID=999

    Nicht vergessen: an allen Stellen die 999 durch die neue Content-Gruppe ersetzen!

    Das ist nur mit der heissen Nadel genäht und NICHT updatesicher und sollte besser als Überladung der Klasse ShopContentContentView im Verzeichnis user_classes vorgenommen werden!

    Ach ja: erst im Testshop ausprobieren - keine Haftung!
     
  12. mdc

    mdc Erfahrener Benutzer

    Registriert seit:
    8. August 2012
    Beiträge:
    277
    Danke erhalten:
    16
    Danke vergeben:
    113
    Hallo Kerstin,

    das ist sehr nett das du mir das erklärst! leider finde ich unter system keine classes ich bin noch auf 2.0.11.x liegt es daran?

    Danke
     
  13. mdc

    mdc Erfahrener Benutzer

    Registriert seit:
    8. August 2012
    Beiträge:
    277
    Danke erhalten:
    16
    Danke vergeben:
    113
    yup - im 2.1. ist classes im system....

    damn - aber vielen dank trotzdem
     
  14. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    35.556
    Danke erhalten:
    11.309
    Danke vergeben:
    1.613
    Schau in die system/ views, die sind in der 2.1 glaube in die classes umgezogen.
     
  15. soprao

    soprao Erfahrener Benutzer

    Registriert seit:
    26. Februar 2015
    Beiträge:
    160
    Danke erhalten:
    18
    Danke vergeben:
    28
    Der Vollständigkeits halber, hier eine updatesichere Variante - zumindest solange, bis die ShopContentContentView.inc.php nicht verändert wird.

    Die "200" mit der ID eurer Contentseite ersetzen, die die Kontaktform besitzen soll.

    Diese Datei dann als owncontact_ShopContentContentView.php unter user_class/overloads/ShopContentContentView abspeichern.

    PHP:
    <?php

    class owncontact_ShopContentContentView extends owncontact_ShopContentContentView_parent {  
        
        public function 
    prepare_data()
        {
            
    $t_uninitialized_array $this->get_uninitialized_variables(array('captcha'));
            if(empty(
    $t_uninitialized_array))
            {
                
    $this->set_content_data('error_message'$this->error_message);

                if(
    $this->content_group_id == || $this->content_group_id == 200)
                {
                    
    $this->set_content_template('contact_us.html');
                    
    $this->add_contact_us_data();
                }
                elseif(
    $this->content_group_id == 3889891)
                {
                    
    $this->set_content_template('content.html');
                    
    $this->add_shipping_and_payment_conditions_data();
                }
                elseif(
    $this->content_group_id == gm_get_conf('GM_WITHDRAWAL_CONTENT_ID'))
                {
                    
    $this->set_content_template('content.html');
                    
    $this->add_withdrawal_content_data();
                }
                elseif(
    $this->file_flag_name == 'withdrawal')
                {
                    
    $this->set_content_template('content.html');
                    
    $this->add_withdrawal_text();
                }
                else
                {
                    
    $this->set_content_template('content.html');
                    
    $this->add_content_data();
                }
            }
            else
            {
                
    trigger_error("Variable(s) " implode(', '$t_uninitialized_array) . " do(es) not exist in class " get_class($this) . " or is/are null"E_USER_ERROR);
            }
        }
        
        public function 
    __construct()
        {
            
    parent::__construct();
            if ((
    $_GET['coID'] == '200') && ($_POST['name'])) $_GET['coID'] = '7';  
            
    $this->set_template_dir(DIR_FS_CATALOG 'templates/' CURRENT_TEMPLATE '/module/');
            
    $this->set_flat_assigns(false);
        }

    }