Preis auf Anfrage - Artikeleigenschaften übernehmen

Thema wurde von kalle_b, 28. November 2016 erstellt.

  1. Segler

    Segler Erfahrener Benutzer

    Registriert seit:
    22. September 2011
    Beiträge:
    109
    Danke erhalten:
    2
    Danke vergeben:
    48
    Danke, hat fast funktioniert:
    Es scheint, es werden beide Dateien verwendet. Ich würde jetzt aber ungern bei 2000 Artikeln die Einstellungen auf Standard.html ändern, muss ich das?
     
  2. Anonymous

    Anonymous G-WARD 2015/2016

    Registriert seit:
    20. Februar 2012
    Beiträge:
    8.910
    Danke erhalten:
    1.559
    Danke vergeben:
    1.135
    da wo es doppelt erscheint, welche standard.html hast Du denn da gewählt?
     
  3. Anonymous

    Anonymous G-WARD 2015/2016

    Registriert seit:
    20. Februar 2012
    Beiträge:
    8.910
    Danke erhalten:
    1.559
    Danke vergeben:
    1.135
    Du hast die standard-op.html auch bei den Artikeln genommen mit normalem Preis!!

    Dann kommt das natürlich doppelt :).

    Bei Artikeln mit normalem Preis musst Du die normale standard.html auswählen (evtl. hast Du ja eine USERMOD, dann diese)
     
  4. Segler

    Segler Erfahrener Benutzer

    Registriert seit:
    22. September 2011
    Beiträge:
    109
    Danke erhalten:
    2
    Danke vergeben:
    48
    habe gar keine ausgewählt, siehe Bild im Anhang. Da ich dies bei keinem Artikel bisher gemacht habe werde ich wohl alle umstellen müssen, oder?
     

    Anhänge:

    • forum.JPG
      forum.JPG
      Dateigröße:
      70,9 KB
      Aufrufe:
      20
  5. Anonymous

    Anonymous G-WARD 2015/2016

    Registriert seit:
    20. Februar 2012
    Beiträge:
    8.910
    Danke erhalten:
    1.559
    Danke vergeben:
    1.135
    kann man mit einem SQL-Befehl machen:

    UPDATE products SET product_template = "standard.html"

    Im Admin bei Toolbox/SQL diesen o.g. Befehl eingeben, dann haben ab sofort ALLE Deine Artikel dort die standard.html.

    Ich nehme an, dass Deine Artikel mit Preisanfrage weniger sind; die musst Du dann per Hand auf standard-op.html ändern.
    Befehl habe ich getestet in meinem Testshop: funktioniert. Trotzdem hier ohne Gewähr (am besten auch in einem Testshop testen!)
     
  6. Segler

    Segler Erfahrener Benutzer

    Registriert seit:
    22. September 2011
    Beiträge:
    109
    Danke erhalten:
    2
    Danke vergeben:
    48
    @marmoles Hat alles super funktioniert, vielen Dank
     
  7. Anonymous

    Anonymous G-WARD 2015/2016

    Registriert seit:
    20. Februar 2012
    Beiträge:
    8.910
    Danke erhalten:
    1.559
    Danke vergeben:
    1.135
    das ist ja schön!
    Segler helfen sich halt untereinander; wenn's bei mir auch schon länger her ist :(
     
  8. carsten_hermann

    carsten_hermann Erfahrener Benutzer

    Registriert seit:
    28. Mai 2017
    Beiträge:
    98
    Danke erhalten:
    1
    Danke vergeben:
    9
    Hallo zusammen,

    habe dieses Thema gelesen aber/oder das nicgt gefunden was ich gesucht habe.
    Ich habe Artikel im Shop die käuflich sind. Dort erscheint der Link, "Frage zum Produkt".
    Der Link funktioniert auch.

    Bei Artikeln, die nicht käuflich sind, also Preis auf Anfrage stehen, geht dieser Link ganz normal zum Kontaktformular.
    Da möchte ich gerne den Link, wie bei Frage zum Produkt. Im Kontaktformular muss ich erst mir den Artikel merken um ihn dann wieder ins Kontaktformular zu schreiben...

    Vielen lieben Dank.
     
  9. pema

    pema Erfahrener Benutzer

    Registriert seit:
    17. Juni 2012
    Beiträge:
    440
    Danke erhalten:
    73
    Danke vergeben:
    121
    Ich habe das nach der Anleitung oben so umgebaut und als Button-Link "href="gm_price_offer.php?products_id={$PRODUCT_ID}&products_qty=1" genommen. Dadurch muss "woanders günstiger?" nicht jedes mal aktiv sein.
    Aber wenn ich nun auf der "woanders günstiger?" Seite lande und die Felder ausfülle, kann das Formular nicht abgesendet werden. Es kommt:
    In meiner gm_price_offer-USERMOD.html habe ich aber genau diese Blöcke (bis auf E-Mail) entfernt bzw. auskommentiert. Sie werden auch nicht auf der Seite gezeigt. Weißt du wieso sich das beißt?
    Der Codeblock in meiner zweite-standard.html sieht so aus:
    HTML:
        {block name="vorbestellung-button"}         
            {$GM_PRICE_OFFER!=''}
            <div class="col-xs-12 preorder-style">
            <button class="btn-price-offer"
                        type="button" href="gm_price_offer.php?products_id={$PRODUCT_ID}&products_qty=1">Artikel vorbestellen</button>
            </div>
        {/block}
     
  10. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    35.544
    Danke erhalten:
    11.305
    Danke vergeben:
    1.612
    Dir fehlt noch eine Datei.
    Die Abfrage findet statt, auch wenn Du die Felder nicht zeigst.
    Ich muss mal suchen, ich habe die sicher noch....
     
  11. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    35.544
    Danke erhalten:
    11.305
    Danke vergeben:
    1.612
    Ich weiß nicht, ob die Datei mit php 7,2 noch geht, aber ich habe sie gefunden.
    lege im Verzeichnis
    GXUserComponents/overloads/
    einen Ordner mit namen
    PriceOfferContentView
    an. Da hinein kommt die Datei
    frage_PriceOfferContentView.inc.php
    mit diesem Inhalt:
    PHP:
    <?php
    /* --------------------------------------------------------------
      PriceOfferContentView.inc.php 2014-05-05 gm
      Gambio GmbH
      http://www.gambio.de
      Copyright (c) 2014 Gambio GmbH
      Released under the GNU General Public License (Version 2)
      [http://www.gnu.org/licenses/gpl-2.0.html]
      --------------------------------------------------------------
    */
    class frage_PriceOfferContentView extends frage_PriceOfferContentView_parent
    {
        protected function 
    add_error()
        {
            
    $t_captcha_is_valid $this->coo_captcha->is_valid($this->v_env_post_array'GM_PRICE_OFFER_VVCODE');

            if(
    $t_captcha_is_valid == false)
            {   
                
    $this->content_array['VVCODE_ERROR'] = GM_PRICE_OFFER_WRONG_CODE;
            }
           
            if(empty(
    $this->customer_data_array['name']) || empty($this->customer_data_array['email']) //|| empty($this->customer_data_array['link'])
            
    )
            {
                
    $this->content_array['ERROR'] = GM_PRICE_OFFER_ERROR;
            }
        }
        protected function 
    send_mail()
        {
            if(
    $this->coo_seo_boost->boost_products)
            {
                
    $t_product_link xtc_href_link($this->coo_seo_boost->get_boosted_product_url($this->product_id$this->product_data_array['products_name']));
            }
            else
            {
                
    $t_product_link xtc_href_link(FILENAME_PRODUCT_INFOxtc_product_link($this->product_id$this->product_data_array['products_name']));
            }

            
    $t_mail_content GM_PRICE_OFFER_MAIL_CUSTOMER $this->customer_data_array['name']
                    . 
    "\n" GM_PRICE_OFFER_MAIL_EMAIL $this->customer_data_array['email']
                    
    //. "\n" . GM_PRICE_OFFER_MAIL_TELEPHONE . $this->customer_data_array['telephone']
                    
    "\n\n" $this->product_data_array['products_name'] . " (" trim(strip_tags($this->product_price)) . "):\n" $t_product_link
                    
    "\n" str_replace("<br />""\n"$this->content_array['ATTRIBUTES'])
                    
    //. "\n\n" . GM_PRICE_OFFER_MAIL_LINK . ' ' . $this->customer_data_array['link']
                    //. "\n" . GM_PRICE_OFFER_MAIL_PRICE . ' ' . $this->customer_data_array['price']
                    
    "\n" GM_PRICE_OFFER_MAIL_OFFERER ' ' $this->customer_data_array['offerer']
                    . 
    "\n\n" GM_PRICE_OFFER_MAIL_MESSAGE "\n" gm_prepare_string($this->customer_data_array['message']);

            
    // send mail
            
    xtc_php_mail($this->customer_data_array['email'], $this->customer_data_array['name'], STORE_OWNER_EMAIL_ADDRESSSTORE_NAME''$this->customer_data_array['email'], $this->customer_data_array['name'], ''''GM_PRICE_OFFER_MAIL_SUBJECT $this->product_data_array['products_name'], nl2br(htmlentities_wrapper($t_mail_content)), $t_mail_content);
            
    $this->content_array['MAIL_OUT'] = GM_PRICE_OFFER_MAIL_OUT;
        }
    }
    ?>
    cache leeren
     
  12. pema

    pema Erfahrener Benutzer

    Registriert seit:
    17. Juni 2012
    Beiträge:
    440
    Danke erhalten:
    73
    Danke vergeben:
    121
    Danke Barbara, bist die Beste :)
     
  13. Unter PHP 7.2 wird FILENAME_PRODUCT_INFO beanstandet:
    WARNING(2): "Use of undefined constant FILENAME_PRODUCT_INFO - assumed 'FILENAME_PRODUCT_INFO' (this will throw an Error in a future version of PHP)"
    Habe noch keine Lösung gefunden.
     
  14. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    35.544
    Danke erhalten:
    11.305
    Danke vergeben:
    1.612
    das steht in der originalen Datei noch genauso....
     
  15. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    35.544
    Danke erhalten:
    11.305
    Danke vergeben:
    1.612
    @postel

    wo erscheint die Meldung bei Dir?
    Ich habe gerade mal die Overload-Datei bei mir im Testshop hochgeladen (PHP 7.2.13) da geht alles.
     
  16. pema

    pema Erfahrener Benutzer

    Registriert seit:
    17. Juni 2012
    Beiträge:
    440
    Danke erhalten:
    73
    Danke vergeben:
    121
    Schau mal in den Errorlog, ob da nicht ein Fremdmodul eingreift. Wir hatten ein sehr ähnliches Problem mit einem uralten Modul von Cleverreach und Umstellung auf PHP 7.2. Das Modul war deaktiviert und eigentlich nicht nutzbar, aber irgendwo war ein Verweis enthalten und PHP 7.2 hat da rumgemeckert.

    Edit: War bei uns die Konstante HTTP_CATALOG_SERVER