Kundenrezension nicht mit Realnamen möglich?

Thema wurde von shopping_girl, 16. Oktober 2014 erstellt.

  1. shopping_girl

    shopping_girl Aktives Mitglied

    Registriert seit:
    30. April 2014
    Beiträge:
    29
    Danke erhalten:
    1
    Danke vergeben:
    5
    Hallo,

    ist es mit Gambio möglich Kundenrezensionen nicht mit Klarnamen machen zu müsen?
    Keiner hat Lust mit diesen Produkten den Namen (Adress Name) für Rezensionen zu benutzen!
     
  2. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    35.475
    Danke erhalten:
    11.263
    Danke vergeben:
    1.607
    Eine Anleitung dazu findest Du hier:
    (Link nur für registrierte Nutzer sichtbar.)
    Ich weiß jetzt aber nicht, ob sich die Dateien mit der Version 2.1 verändert haben.
     
  3. shopping_girl

    shopping_girl Aktives Mitglied

    Registriert seit:
    30. April 2014
    Beiträge:
    29
    Danke erhalten:
    1
    Danke vergeben:
    5
    Danke Barbara werd das später mal versuchen :)
     
  4. shopping_girl

    shopping_girl Aktives Mitglied

    Registriert seit:
    30. April 2014
    Beiträge:
    29
    Danke erhalten:
    1
    Danke vergeben:
    5
    #4 shopping_girl, 17. Oktober 2014
    Zuletzt bearbeitet: 17. Oktober 2014
    Hallo Barbara,

    meine product_reviews.php sieht ganz anders aus.
    Der String lastname ist da gar nicht vorhanden.

    Mein Code in der Gambio Version: v2.0.15.1 r13131 sieht so aus:

    Code:
    <?php
    /* --------------------------------------------------------------
       product_reviews.php 2008-08-07 gambio
       Gambio OHG
       http://www.gambio.de
       Copyright (c) 2008 Gambio OHG
       Released under the GNU General Public License (Version 2)
       [http://www.gnu.org/licenses/gpl-2.0.html]
       --------------------------------------------------------------
    
    
       based on: 
       (c) 2000-2001 The Exchange Project  (earlier name of osCommerce)
       (c) 2002-2003 osCommerce(product_reviews.php,v 1.47 2003/02/13); www.oscommerce.com 
       (c) 2003     nextcommerce (product_reviews.php,v 1.12 2003/08/17); www.nextcommerce.org
       (c) 2003 XT-Commerce - community made shopping http://www.xt-commerce.com ($Id: product_reviews.php 1238 2005-09-24 10:51:19Z mz $)
    
       Released under the GNU General Public License 
       ---------------------------------------------------------------------------------------*/
    
    include ('includes/application_top.php');
    
    $breadcrumb->add(NAVBAR_TITLE_PRODUCT_REVIEWS, xtc_href_link(FILENAME_PRODUCT_REVIEWS, $get_params));
    
    // create smarty elements
    $smarty = new Smarty;
    // include boxes
    require (DIR_FS_CATALOG.'templates/'.CURRENT_TEMPLATE.'/source/boxes.php');
    // include needed functions
    require_once (DIR_FS_INC.'xtc_row_number_format.inc.php');
    require_once (DIR_FS_INC.'xtc_date_short.inc.php');
    
    // lets retrieve all $HTTP_GET_VARS keys and values..
    $get_params = xtc_get_all_get_params();
    $get_params_back = xtc_get_all_get_params(array ('reviews_id')); // for back button
    $get_params = substr($get_params, 0, -1); //remove trailing &
    if (xtc_not_null($get_params_back)) {
        $get_params_back = substr($get_params_back, 0, -1); //remove trailing &
    } else {
        $get_params_back = $get_params;
    }
    
    $product_info_query = xtc_db_query("select pd.products_name from ".TABLE_PRODUCTS_DESCRIPTION." pd left join ".TABLE_PRODUCTS." p on pd.products_id = p.products_id where pd.language_id = '".(int) $_SESSION['languages_id']."' and p.products_status = '1' and pd.products_id = '".(int) $_GET['products_id']."'");
    if (!xtc_db_num_rows($product_info_query))
        xtc_redirect(xtc_href_link(FILENAME_REVIEWS));
    $product_info = xtc_db_fetch_array($product_info_query);
    
    require (DIR_WS_INCLUDES.'header.php');
    
    $smarty->assign('PRODUCTS_NAME', $product_info['products_name']);
    
    $smarty->assign('PRODUCTS_LINK', xtc_href_link(FILENAME_PRODUCT_INFO, xtc_product_link((int) $_GET['products_id'],$product_info['products_name'])));
    
    $data_reviews = array ();
    $reviews_query = xtc_db_query("select reviews_rating, reviews_id, customers_name, date_added, last_modified, reviews_read from ".TABLE_REVIEWS." where products_id = '".(int) $_GET['products_id']."' order by reviews_id DESC");
    if (xtc_db_num_rows($reviews_query)) {
        $row = 0;
        while ($reviews = xtc_db_fetch_array($reviews_query)) {
            $row ++;
            $data_reviews[] = array ('ID' => $reviews['reviews_id'], 
                                        'AUTHOR' => '<a href="'.xtc_href_link(FILENAME_PRODUCT_REVIEWS_INFO, $get_params.'&reviews_id='.$reviews['reviews_id']).'">'.$reviews['customers_name'].'</a>',
                                        'DATE' => xtc_date_short($reviews['date_added']),
                                        'RATING' => xtc_image('templates/'.CURRENT_TEMPLATE.'/img/stars_'.$reviews['reviews_rating'].'.gif', sprintf(BOX_REVIEWS_TEXT_OF_5_STARS, $reviews['reviews_rating'])),
                                        'RATING_IMAGE_URL' => 'templates/' . CURRENT_TEMPLATE . '/img/stars_' . $reviews['reviews_rating'] . '.gif',
                                        'TEXT' => $reviews['reviews_text']);
    
        }
    }
    $smarty->assign('module_content', $data_reviews);
    $smarty->assign('BUTTON_BACK', '<a href="'.xtc_href_link(FILENAME_PRODUCT_INFO, $get_params_back).'">'.xtc_image_button('button_back.gif', IMAGE_BUTTON_BACK).'</a>');
    $smarty->assign('BUTTON_WRITE', '<a href="'.xtc_href_link(FILENAME_PRODUCT_REVIEWS_WRITE, $get_params).'">'.xtc_image_button('button_write_review.gif', IMAGE_BUTTON_WRITE_REVIEW).'</a>');
    
    $smarty->assign('language', $_SESSION['language']);
    
    // set cache ID
     if (!CacheCheck()) {
        $smarty->caching = 0;
        $main_content = $smarty->fetch(CURRENT_TEMPLATE.'/module/product_reviews.html');
    } else {
        $smarty->caching = 1;
        $smarty->cache_lifetime = CACHE_LIFETIME;
        $smarty->cache_modified_check = CACHE_CHECK;
        $cache_id = $_SESSION['language'].$_GET['products_id'];
        $main_content = $smarty->fetch(CURRENT_TEMPLATE.'/module/product_reviews.html', $cache_id);
    }
    
    $smarty->assign('language', $_SESSION['language']);
    $smarty->assign('main_content', $main_content);
    $smarty->caching = 0;
    if (!defined(RM))
        $smarty->load_filter('output', 'note');
    $smarty->display(CURRENT_TEMPLATE.'/index.html');
    include ('includes/application_bottom.php');
    ?>
     
  5. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    35.475
    Danke erhalten:
    11.263
    Danke vergeben:
    1.607
    Da ist wohl ein kleiner Fehler in der ANleitung.
    Schau mal in die Datei products_reviews_write.php
    Da solltest Du die Zeilen finden.
     
  6. shopping_girl

    shopping_girl Aktives Mitglied

    Registriert seit:
    30. April 2014
    Beiträge:
    29
    Danke erhalten:
    1
    Danke vergeben:
    5
    Hallo Barbara, danke für deine Hilfe, aber meine Datei sieht doch ganz anders aus:

    Schau:

    Code:
    <?php
    /* --------------------------------------------------------------
       product_reviews_write.php 2012-06-26 gm
       Gambio GmbH
       http://www.gambio.de
       Copyright (c) 2012 Gambio GmbH
       Released under the GNU General Public License (Version 2)
       [http://www.gnu.org/licenses/gpl-2.0.html]
       --------------------------------------------------------------
    
    
       based on:
       (c) 2000-2001 The Exchange Project  (earlier name of osCommerce)
       (c) 2002-2003 osCommerce(product_reviews_write.php,v 1.51 2003/02/13); www.oscommerce.com
       (c) 2003     nextcommerce (product_reviews_write.php,v 1.13 2003/08/1); www.nextcommerce.org
       (c) 2003 XT-Commerce - community made shopping http://www.xt-commerce.com ($Id: product_reviews_write.php 1101 2005-07-24 14:51:13Z mz $)
    
       Released under the GNU General Public License
       ---------------------------------------------------------------------------------------*/
    
    include ('includes/application_top.php');
    // BOF GM_MOD
    
    $coo_captcha = MainFactory::create_object('Captcha');
    
    // EOF GM_MOD
    
    $breadcrumb->add(NAVBAR_TITLE_REVIEWS_WRITE, xtc_href_link(FILENAME_PRODUCT_REVIEWS, $get_params));
    
    // create smarty elements
    $smarty = new Smarty;
    // include boxes
    require (DIR_FS_CATALOG.'templates/'.CURRENT_TEMPLATE.'/source/boxes.php');
    
    if ($_SESSION['customers_status']['customers_status_write_reviews'] == 0) {
        xtc_redirect(xtc_href_link(FILENAME_LOGIN, '', 'SSL'));
    }
    
    // BOF GM_MOD:
    if (isset($_GET['action']) && $_GET['action'] == 'process' && $coo_captcha->is_valid($_POST, 'GM_REVIEWS_VVCODE')) {
        if (is_object($product) && $product->isProduct()) { // We got to the process but it is an illegal product, don't write
            if(strlen($_POST['review'])>=REVIEW_TEXT_MIN_LENGTH)
            {
    
    
                $customer = xtc_db_query("select customers_firstname, customers_lastname from ".TABLE_CUSTOMERS." where customers_id = '".(int) $_SESSION['customer_id']."'");
                $customer_values = xtc_db_fetch_array($customer);
                $date_now = date('Ymd');
                if ($customer_values['customers_lastname'] == '')
                $customer_values['customers_lastname'] = TEXT_GUEST;
                // BOF GM_MOD:
                xtc_db_query("insert into ".TABLE_REVIEWS." (products_id, customers_id, customers_name, reviews_rating, date_added) values ('".$product->data['products_id']."', '".(int) $_SESSION['customer_id']."', '".gm_prepare_string($customer_values['customers_firstname']).' '.gm_prepare_string($customer_values['customers_lastname'])."', '".gm_prepare_string($_POST['rating'])."', now())");
                $insert_id = xtc_db_insert_id();
                // BOF GM_MOD:
                xtc_db_query("insert into ".TABLE_REVIEWS_DESCRIPTION." (reviews_id, languages_id, reviews_text) values ('".$insert_id."', '".(int) $_SESSION['languages_id']."', '".gm_prepare_string($_POST['review'])."')");
            }
            else
            {
                $error=true;
                $smarty->assign('GM_ERROR', sprintf(GM_REVIEWS_TOO_SHORT,REVIEW_TEXT_MIN_LENGTH));
            }
    
        }
    
        if($error!=true) xtc_redirect(xtc_href_link(FILENAME_PRODUCT_REVIEWS, htmlentities_wrapper($_POST['get_params'])));
    }
    // BOF GM_MOD
    elseif(isset($_GET['action']) && !$coo_captcha->is_valid($_POST, 'GM_REVIEWS_VVCODE')){
        $smarty->assign('GM_ERROR', GM_REVIEWS_WRONG_CODE);
    }
    // EOF GM_MOD
    
    // lets retrieve all $HTTP_GET_VARS keys and values..
    $get_params = xtc_get_all_get_params();
    $get_params_back = xtc_get_all_get_params(array ('reviews_id')); // for back button
    $get_params = substr($get_params, 0, -5); //remove trailing &
    if (xtc_not_null($get_params_back)) {
        $get_params_back = substr($get_params_back, 0, -5); //remove trailing &
    } else {
        $get_params_back = $get_params;
    }
    
    
    $customer_info_query = xtc_db_query("select customers_firstname, customers_lastname from ".TABLE_CUSTOMERS." where customers_id = '".(int) $_SESSION['customer_id']."'");
    $customer_info = xtc_db_fetch_array($customer_info_query);
    
    require (DIR_WS_INCLUDES.'header.php');
    
    if (!$product->isProduct()) {
        $smarty->assign('error', ERROR_INVALID_PRODUCT);
    } else {
        # unset error could be set in headers.php
        $smarty->assign('error', '');
    
        $name = $customer_info['customers_firstname'].' '.$customer_info['customers_lastname'];
        if ($name == ' ')
        $customer_info['customers_lastname'] = TEXT_GUEST;
        $smarty->assign('PRODUCTS_NAME', $product->data['products_name']);
        $smarty->assign('AUTHOR', $customer_info['customers_firstname'].' '.$customer_info['customers_lastname']);
        // BOF GM_MOD
        $smarty->assign('INPUT_TEXT', xtc_draw_textarea_field('review', 'soft', 45, 10, htmlentities_wrapper($_POST['review'], true), '', false));
        $smarty->assign('TEXTAREA_NAME', 'review');
        $smarty->assign('TEXTAREA_VALUE', htmlentities_wrapper($_POST['review'], true));
        $smarty->assign('INPUT_RATING', xtc_draw_radio_field('rating', '1').' '.xtc_draw_radio_field('rating', '2').' '.xtc_draw_radio_field('rating', '3', true).' '.xtc_draw_radio_field('rating', '4').' '.xtc_draw_radio_field('rating', '5'));
        $smarty->assign('INPUT_RATING_NAME', 'rating');
        // EOF GM_MOD
    
        // BOF GM_MOD
        $smarty->assign('GM_VALIDATION_ACTIVE', gm_get_conf('GM_REVIEWS_VVCODE'));
        $smarty->assign('GM_VALIDATION', GM_REVIEWS_VALIDATION);
        $smarty->assign('GM_CAPTCHA', $coo_captcha->get_html());
        // EOF GM_MOD
    
        // BOF GM_MOD:
        $smarty->assign('FORM_ACTION', xtc_draw_form('product_reviews_write', xtc_href_link(FILENAME_PRODUCT_REVIEWS_WRITE, 'action=process&'.xtc_product_link($product->data['products_id'],$product->data['products_name']), 'NONSSL', true, true, true), 'post', ''));
        $smarty->assign('FORM_ID', 'product_reviews_write');
        $smarty->assign('FORM_ACTION_URL', xtc_href_link(FILENAME_PRODUCT_REVIEWS_WRITE, 'action=process&' . xtc_product_link($product->data['products_id'], $product->data['products_name']), 'NONSSL', true, true, true));
        $smarty->assign('FORM_METHOD', 'post');
        $smarty->assign('BUTTON_BACK', '<a href="javascript:history.back(1)">'.xtc_image_button('button_back.gif', IMAGE_BUTTON_BACK).'</a>');
        $smarty->assign('BUTTON_BACK_LINK', 'javascript:history.back(1)');
        $smarty->assign('BUTTON_SUBMIT', xtc_image_submit('button_continue.gif', IMAGE_BUTTON_CONTINUE).xtc_draw_hidden_field('get_params', $get_params));
        $smarty->assign('FORM_END', '</form>');
    }
    $smarty->assign('language', $_SESSION['language']);
    /* BOF GM PRIVACY LINK */    
        $smarty->assign('GM_PRIVACY_LINK', gm_get_privacy_link('GM_CHECK_PRIVACY_REVIEWS')); 
    /* EOF GM PRIVACY LINK */
    $smarty->caching = 0;
    $main_content = $smarty->fetch(CURRENT_TEMPLATE.'/module/product_reviews_write.html');
    
    $smarty->assign('language', $_SESSION['language']);
    $smarty->assign('main_content', $main_content);
    $smarty->caching = 0;
    if (!defined(RM))
    $smarty->load_filter('output', 'note');
    $smarty->display(CURRENT_TEMPLATE.'/index.html');
    include ('includes/application_bottom.php');
    ?>
     
  7. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    35.475
    Danke erhalten:
    11.263
    Danke vergeben:
    1.607
    #7 barbara, 21. Oktober 2014
    Zuletzt bearbeitet: 22. Oktober 2014
    die Zeile 99
    PHP:
     $smarty->assign('AUTHOR'$customer_info['customers_firstname'].' '.$customer_info['customers_lastname']);
    ändern in
    PHP:
    $smarty->assign('AUTHOR'$customer_info['customers_firstname']);
    Dann wird nur der Vorname genommen.
    Wenn Du den NAchnahmen abkürzen möchtest, muss ich mir den Beitrag von Petra noch einmal ansehen

    Nachtrag: ich sehe gerade, dass dann trotzdem der ganze Name in der Bewertung steht.
    ich schau mir das mal kurz an.
     
  8. johannes_a

    johannes_a Erfahrener Benutzer

    Registriert seit:
    23. Mai 2013
    Beiträge:
    325
    Danke erhalten:
    61
    Danke vergeben:
    67
    Es gibt mehrere Dateien, die man ändern muss (siehe hier: http://www.gambio-forum.de/threads/1223-Kundenrezensionen?p=117935&viewfull=1#post117935 - die Liste dort gilt zumindest noch für die Version 2.0.15, bei mir funktioniert's so)

    Grüße
    Johannes
     
  9. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    35.475
    Danke erhalten:
    11.263
    Danke vergeben:
    1.607
    In der Zeile 52 muss der Textabschnitt
    PHP:
    .' '.gm_prepare_string($customer_values['customers_lastname'])
    gelöscht werden.
    Dann funktioniert es richtig.
     
  10. shopping_girl

    shopping_girl Aktives Mitglied

    Registriert seit:
    30. April 2014
    Beiträge:
    29
    Danke erhalten:
    1
    Danke vergeben:
    5
    Danke Barbara und Johannes...

    Werd das mal testen.
    ß
    Aber gilt nun das mit allen Dateien also das von Johannes, oder muss ich nur an einer rumdoktorn, wie Barbara das sagt?
    Wieso kann Gambio diese wichtige Funktion nicht einfach als Standart einbauen? Nachfrage scheint da zu sein!
     
  11. johannes_a

    johannes_a Erfahrener Benutzer

    Registriert seit:
    23. Mai 2013
    Beiträge:
    325
    Danke erhalten:
    61
    Danke vergeben:
    67
    Das hängt wohl davon ab, was du genau machen willst.
    Bei meiner Version hast du im Adminbereich weiterhin den kompletten Namen, er wird aber im Frontend immer abgekürzt angezeigt. Barbaras Version hingegen scheint mir den Nachnamen gar nicht erst abzuspeichern - hab ich aber jetzt selber nicht ausprobiert, aber wenn Barbara sagt es funktioniert, wird das schon stimmen ;)