[OOP] Kennst sich jemand hier Smarty?

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

  • [OOP] Kennst sich jemand hier Smarty?

    Hi, nach meiner letzten Frage gerade hoffe ich vielleicht noch eine Stellen zu dürfen.

    Also ich habe die gesamte letzte Woche nur mit folgendem Problem zugebracht in mehreren Mailinglisten nachgefragt und versucht es mit jemadem zu lösen. Wir haben beide nicht verstanden ,warum es nicht klappt.

    Also ich arbeite mit den Template Smarty.
    Ich binde in der Schablone new.tpl mehrmals die template menu.tl ein
    da es bei den Produkten mehrere Kategorien gibt.

    Jetzt habe ich für Jede Produktkategorie ein eigenes Array erzeugt.
    Nach tagelangem Grübeln und Fragen ist es mir in den Sinn gekommen eine Array aus Arrays an Smarty zu übergeben, weil ich immer zig mal die gleichen Menutable untereinder ausgegeben bekommen hatte.

    Wenn mir jemand hier helfen könnte wäre das wie ein kleiner Lottogewinn, denn ich glaube hier enden meine Programmierkenntnisse:






    PHP-Code:
        function initMenu()
        {
            
    $menu = array();
            
    $this->oGipsMenu = new Menutable_Gipse($this->aTrans['gipse'], $this->aTrans);

            
    $this->oModelMenu = new Menutable($this->aTrans['modelherstellung'], $this->aTrans);
            
            
    $this->oEinbettMenu = new Menutable($this->aTrans['einbettmassen'], $this->aTrans);

            
    $this->oLabMenu = new Menutable($this->aTrans['laborhilfsmittel'], $this->aTrans);
            
            
    array_push($menu$this->oGipsMenu->menuItems
                              
    $this->oLabMenu->menuItems
                              
    $this->oModelMenu->menuItems
                              
    $this->oEinbettMenu->menuItems,
                              
    $this->oLabMenu->menuItems);

            
    $this->assignVars("menu"$menu);
            
            
    $this->assignVars('menuSpecs'$menuSpecs);
        }


    class 
    Menutable_Gipse extends Menutable

        function 
    Menutable_Gipse($categoryHeader$aTrans
        {
            
    $this->menuSpecs['tableWidthPx'] = "240"// Variable that determines the centerpiece of the table
            
    $this->menuSpecs['outerBorderWidth'] = "0";
            
    $this->categoryHeader $categoryHeader;
            
            
    ## GIPSE ##
            
    $this->menuItems[0][0] = "1010"
            
    $this->menuItems[0][1] = $aTrans['stumpfgipseTyp4'];
            
    $this->menuItems[1]['id'] = "1015";
            
    $this->menuItems[1]['trans'] = $aTrans['superhartgipsTyp4'];
            
    $this->menuItems[2]['id'] = "1020";
            
    $this->menuItems[2]['trans'] = $aTrans['sockelgipsTyp4'];
            
    $this->menuItems[3]['id'] = "1030";
            
    $this->menuItems[3]['trans'] = $aTrans['artikulationsgips'];
            
    $this->menuItems[4]['id'] = "1040";
            
    $this->menuItems[4]['trans'] = $aTrans['praesentationsgips'];
            
    $this->menuItems[5]['id'] = "1050";
            
    $this->menuItems[5]['trans'] = $aTrans['spezialgipsFuerCerecTyp4'];
            
    $this->menuItems[6]['id'] = "1060";
            
    $this->menuItems[6]['trans'] = $aTrans['superhartgipsTyp5'];
            
    $this->menuItems[7]['id'] = "1070";
            
    $this->menuItems[7]['trans'] = $aTrans['hartgipsTyp3'];
        }
    }

        function 
    assignVars($varname$value)
        {
            
    // if varname is not passed assign keys and values
            
    if (($varname == "") & (isset($value)))
            {
                while (list(
    $key$val) = each($value)) 
                {
                    
    $this->smarty->assign($key$val);
                }
            }
            
            elseif (isset(
    $varname) & isset($value))
            {
                
    $this->smarty->assign($varname$value);
            }
        } 

    Und zu guter letzt die Stelle wo das Menu mehrfach in die andere Template einbebettet werden soll:

    <td width="25%" valign="top" align="left">
    {foreach from=$menu item=menuItems}
    {include file="menu.tpl" menuItems=$menuItems} <br />
    {/foreach}
    </td>


    1000 hoch 2 Dank!

    gruß Compu

  • #2
    Sorry keine lösung aber mal ein gedanke:

    Also ich habe die gesamte letzte Woche nur mit folgendem Problem zugebracht in mehreren Mailinglisten nachgefragt und versucht es mit jemadem zu lösen. Wir haben beide nicht verstanden ,warum es nicht klappt.


    Wenns so nicht geht kann man es nicht anders lösen?
    Wirtschaftlich sollte man schon arbeiten...
    Aber was red ich da
    Möglich ist alles!

    Kommentar

    Lädt...
    X