v3.10.x Keine Anzeige Comments bei der History

Thema wurde von J Z, 13. September 2018 erstellt.

  1. J Z

    J Z Erfahrener Benutzer

    Registriert seit:
    27. Mai 2018
    Beiträge:
    296
    Danke erhalten:
    9
    Danke vergeben:
    115
    #1 J Z, 13. September 2018
    Zuletzt bearbeitet: 13. September 2018
    Hallo Leute,

    wollte mir selbst ein Script schreiben, damit bei der Bestellung die History mit Zusatztext (comments) angezeigt wird.

    Nun habe ich festgestellt, dass das im Code ".../templates/Honeygrid/module/account_history_info.html" es schon gibt, aber leider nicht funktioniert. :(

    HTML:
    {block name="module_account_history_info_history_status"}
                                                        <dd>
                                                            {$history_item.status_name}
                                                            {block name="module_account_history_info_history_comment_if"}
                                                                {if $history_item.comments}
                                                                    {block name="module_account_history_info_history_comment"}
                                                                        <br />
                                                                        {$history_item.comments|htmlspecialchars|nl2br}
                                                                    {/block}
                                                                {/if}
                                                            {/block}
                                                        </dd>
                                                    {/block}
    In der .../system/classes/accounts/AccountHistoryInfoContentView.inc.php

    PHP:
    protected function _assignHistory()
        {
            
    $html '';
            
    $query 'SELECT
                            os.orders_status_name,
                            osh.date_added,
                            osh.comments,
                            osh.customer_notified
                        FROM
                            ' 
    TABLE_ORDERS_STATUS ' os,
                            ' 
    TABLE_ORDERS_STATUS_HISTORY ' osh
                        WHERE
                            osh.orders_id = ' 
    .(int) $this->orderId ' AND
                            osh.orders_status_id = os.orders_status_id AND
                            os.language_id = ' 
    . (int)$this->languageId '
                        ORDER BY osh.date_added'
    ;
            
    $result xtc_db_query($query);
     
            
    $historyDataArray = array();
     
            while(
    $row xtc_db_fetch_array($result))
            {
                if(
    count($historyDataArray) > 0)
                {
                    
    $lastOrderStatus $historyDataArray[count($historyDataArray) - 1];
                    if(
    $lastOrderStatus['status_name'] === $row['orders_status_name'] && (int)$row['customer_notified'] === 0)
                    {
                        continue;
                    }
                }
      
                
    $historyDataArray[] = array(
                    
    'date'        => xtc_date_short($row['date_added']),
                    
    'status_name' => $row['orders_status_name'],
                    
    'comments'    => (int)$row['customer_notified'] !== $row['comments'] : '',
                );
            }
     
            
    $this->set_content_data('history_data'$historyDataArray);
        }
    dort sieht man auch, dass "comments" ausgelesen wird.

    Was läuft da schief ???

    NACHTRAG:

    Ich glaube, dass ich das Problem gefunden habe. Es liegt wohl an der "customer_notified" die dann auf 1 stehen muss.

    ...ich teste...

    ...geht jetzt so wie ich mir das haben wollte und vielleicht möchte es ein anderer User auch haben...


    PHP:
    $historyDataArray[] = array([/COLOR][/COLOR][/COLOR][/COLOR][/COLOR][/COLOR][/COLOR][/COLOR][/COLOR][/COLOR]
    [
    COLOR=#ff0000][COLOR=#000000][COLOR=#ff0000][COLOR=#000000][COLOR=#ff0000][COLOR=#000000][COLOR=#ff0000][COLOR=#000000][COLOR=#ff0000][COLOR=#000000]                'date'        => xtc_date_short($row['date_added']),
                    
    'status_name' => $row['orders_status_name'],
                    
    // JZ 'comments'    => (int)$row['customer_notified'] !== 0 ? $row['comments'] : '',
                    
    'comments'    => $row['comments'],
                );

    Einfach den Code kurz ändern.

    Admins: Bitte verschieben oder löschen, da kein BUG ;)