Jump to content
xt:Commerce Community Forum

nusphere

Members
  • Content Count

    16
  • Joined

  • Last visited

  1. Hi, leider hatte ich die letzt Nachricht nicht mitbekommen ... ein Useraccount bringt da leider nicht viel ... einziger Weg ist, die entsprechenden logs auszuwerten und zur Not sich durchbuggen ... (old school mit die(); und echo ... - dank des ioncube) gelöst bekommt man das sicher - aber ohne fehlermeldung hat man keinen Anhaltspunkt.
  2. du kannst auch mal in deiner config.php (im Konfgigurationsverzeichnis) folgendes eintragen: define("_SYSTEM_DEBUG", true); da müsste die Fehlerdarstellung eigentlich auch funktionieren. Versuch das mal. Gruß Das Nu
  3. Nachtrag: Leider komme ich nur langsam vorran und so habe ich heute erst eine Lösung für mein "Problem" gefunden. http://www.php.net/manual/de/language.variables.scope.php#100884 Das führt dazu, dass alle Globalen Variablen direkt bei $GLOBALS entsprechend zugewiesen werden - nachdem nun die $GLOBALS gefüllt werden - klappt es mit den unittests. Noch nicht flüssig - aber zumindestens kommt die xtCore/main.php durch.
  4. Hi, ich würde gerne bei unseren XT:Commerce Projekten auf eine testgetriebene Entwicklung (test driven development) umsteigen. Hierzu plane ich PHPUnit zu verwenden (ggf. auch atoum). Auch wenn es schön wäre eine komplette Testsuite von hier zu bekommen, gehe ich davon aus, dass man an diese nicht herran kommt. Als habe ich mich erst einmal auf meine Plugins gestürzt. Hierbei habe ich zur zeit Probleme meine bootstrap Datei korrekt zum laufen zu bekommen. Wenn ich PHPUnit auf eine Plugin Klasse schreibe, so muss ich ja die xtCore/main.php einbinden um alle Variablen / Konstanten und Klassen zu erhalten. Aber genau hier liegt der Hund begraben. Dies bricht leider bei der 1. ioncube Datei ab und scheint auf der php-cli auf irgend eine Art und Weise ab einer bestimmten include - tiefe die globalen Variablen zu verlieren. Hat schon jemand versucht unit tests für seine eigenen Plugins auf die beine zu stellen ggf sogar schon geschafft? Bin über Anregungen sehr erfreut. Nachdem ich einen Unittest ausgeführt habe, kommt bei mir leider folgende Fehlermeldung: Fatal error: Call to a member function Execute() on a non-object in /Users/sebastianhopfe/Sites/w2p.igmetall.de/htdocs/xtFramework/classes/class.hookpoint.php on line 0 [/php] Ich gehe mal davon aus, dass es sich hierbei um die Methode $db->Execute() handelt. Des weiteren gehe ich davon aus, dass $db wie üblich über global reingeladen wird und dort nicht zur Verfügung steht. Ich meine mich auch zu erinnern, dass PHP ab einen bestimmten include-Level seinen kompletten Variablenscope verliert. Wie gesagt, das ist meine Vermutung. ... Weiß jemand Rat? PS: Es handelt sich um xt:commerce 4.1.0 mit einem unveränderten Basecode. Und der PHP Unittest wird Lokal mit einer funktionieren ioncube Lizenz ausgeführt (ioncube_license_matches_server() hat ein true zurückgegeben) und auf der Komandozeile ausgeführt. (PHP-CLI) Gruß Das Nu
  5. Eine weiße Seite lässt auf einen PHP Fehler zurückschliessen. Schau mal in den Ordner xtLogs in deinem htdocs verzeichnis auf dem Server (via FTP o. sFTP) und dort liegt eine phpErrors.txt - da müsste der Fehler drin stehen. Steht da zu viel drin, dann am besten bis kurz vor die Stelle wo der Fehler auftaucht im Shop navigieren und dann die txt danach leer machen im anschluss dann den Shop bis zur "weißen" Seite weitergehen und danach in die Textdatei reinschauen ... dort müsste stehen, was nicht funktioniert.
  6. Wunderbar danke für den Hinweis. Ich habe die php Datei im boxes Ordner als precompiler für eine Box gesehen. Somit war ich etwas verwundert. Aber wenn man diese PHP Datei als Box-Handler sieht, kommt man wieder damit klar. {box name=<plugin_name> type=user tpl=smarty_box_template.tpl} [/php] ruft also die Datei plugins/<plugin_name>/boxes/<plugin_name>.php auf und nutzt das Standartmäßig das Template von plugins/<plugin_name>/templates/boxes/smarty_box_template.tpl [php] {box name=<plugin_name> type=user box_type=eigener_boxtyp} das würde bedeuten, dass ich in meinem Box-Handler auf die Variable $params["box_type"] reagieren kann (zum Beispiel in einer switch) und dann durch das setzten von $params["tpl"] auf ein gewünschtes Template wechseln. Damit könnte ich in dem Box-Handler auch weitere PHP Dateien importieren und somit hätte ich partionelle PHP Dateien. Alles klar... Danke für den Tipp. Gruß Das Nu
  7. Hi, gibt es einen Weg mehr als nur eine Box in einem Plugin zu hinterlegen? Ich meine der Ordner heisst ja schon boxes - aber dadurch, dass er nur nach dem Namen des Plugins sucht bei der angabe von type="user" kann man ja nur eine Box angeben. Oder gibt es - mir unbekannte - box parameter, die dies ermöglichen? Gruß Das Nu
  8. okay hast du die datei vor dem hochladen mal umbenannt - vielleicht cached er die datei ja beim hochladen ...
  9. Im 4er Bereich ist es leider auch sehr ruhig und einen speziellen Entwickler Bereich gibt es leider auch nicht ... Oder bin ich da Blind ...
  10. In wie weit wurden die Einträge in OO (openOffice) denn gelöscht? Prinzipiell kann Veyton ja nur die dinge Importieren die auch da sind - also gehe ich davon aus, dass die Daten sich noch in dem Import befinden. lg Das nu
  11. Sehe ich leider ähnlich! ... Das Forum scheint nur eine Luftblase zu sein. Ich suche hier eigentlich Rat in sachen Entwicklung und Erweiterung. Da das System leider extrem schlecht dokumentiert ist - sind entwicklungen nichts für Einsteiger! In meinem Fall sind es aber eher "Fachfragen" wo entweder nur ein Entwickler diese beantworten kann, oder ein anderer XT:Commerce Entwickler... Im gegensatz zu dem Forum hier - ist es manchmal sinniger sich mit einem Kollegen hinzusetzten und gemeinsam die Problematik durchzukauen. Leider ist das Forum nur für mich zu Übungszwecken - falls jemand ein Problem hat versuche ich es für mich zu lösen - um so mit unterschiedlichen Problemen klar zu kommen ... Aber bei dem übersichtichen Forum hier - fast schon eine Kunst die entsprechenden Themen durchzuschauen und entsprechend zu helfen/üben.
  12. Ist zwar schon etwas her deine Anfrage, aber hier meine Lösung um im "Hookcode" mit den Smartyvariablen zu arbeiten. // Variablen im Code verfügbar machen foreach($smarty->_tpl_vars as $key => $value) ${$key} = $value; echo "(".$products_name.")";[/PHP] Im Tempalte selber ist die Smarty-Klasse als Objekt ($smarty) verfügbar und damit kann gearbeitet werden. Einfach am Anfang eines Smarty Hooks die Foreachschleife ausführen und dann sollte man alle smarty-Variablen die zu dem Zeitpunkt des Hooks verfügbar sind - in PHP verwendbar sein. Ein direkter Zugriff ist mit [PHP] $produkt_name = $smarty->_tpl_vars["products_name"];[/PHP] möglich. Da nun schon ewig viel Zeit seit dem Post des TA's vergangen ist - dient das hier nun der Nachwelt Gruß Das Nu
  13. Hi, ist das hier im sande verlaufen - oder kann ich die eingangs angesprochenen Punkte hier nicht mehr einsehen?!
  14. Guten Tag mzanir , Es geht in diesem fall um eine interne Änderung für den arbeitsablauf bei der Entwicklung. Im Normalfall werden smarty Template Dateien auch als tpl Dateien abgelegt. So soll es in diesem fall auch sein. Im optimalen fall sollte in der entsprechenden Funktion, welche die Template Datei läd, nur ein hook hinzugefügt werden. Da eine overload Funktion nicht verfügbar ist, ist der hook eine sinnvolle Erweiterung. Um ein sinnvolles anwendungsbeispiel zu geben. Ein komplettes Template ist in Form von .tpl Dateien verfügbar. Damit wäre es sehr einfach integriert. Gerade weil smarty Dateien im Normalfall auf tpl enden. Eventuell gibt es ja auch einen hook der prüft, ob das Template da ist, was gesucht werden soll. Allein schon um individuelle Reaktionen auf ein nicht vorhandenes Template zu ermöglichen. Genau an der stelle möchte ich nämlich darauf reagieren, wenn ein Template nicht da ist. Eine gute Option wäre es zum Beispiel auf eine entsprechende fehlerseite zu verweisen, die dann dargestellt werden soll. Vg
  15. Guten Tag, ich habe die Anfoderung eine Liste von Einträgen darzustellen. Diese einträge sollen bearbeitet werden können. Hierbei kommt es aber zu dem Problem was ich habe Meine Tabelle hat in diesem Beispiel 2 Felder: link_id name beim Bearbeiten dieses Eintrages bekomme ich (nachdem ich die Link_id ausgeblendet habe) nur die Möglichkeit, den Namen abzuspeichern. Nun möchte ich jedoch noch eine Zuordnung beim bearbeiten hinzufügen. Ich möchte eine Auswahlliste (checkboxen - mit mehrfach auswahl) hinzufügen und diese dann in einer weiteren Tabelle abspeichern. Leider finde ich keine Beispiele über solch eine Option. Vielleicht kann mir hier jemand helfen. ------------------------------ Vielen Dank Nusphere
×
×
  • Create New...