[TYPO3-german] Arcavias Dokumentation wird nicht gerendert

2014-04-25 Diskussionsfäden Norbert Sendetzky

Hallo zusammen

Der letzte Upload der Arcavias Webshop Erweiterung enthielt Dokumentation im 
reST-Format, das mit Sphinx in HTML konvertiert werden kann. Lokal hat das auch 
wunderbar funktioniert, aber im TER wird immer noch angezeigt, dass keine 
lokale Dokumentation verfügbar ist. Normalerweise sollte die Dokumentation im 
TYPO3 Wiki importiert und im TER verlinkt werden.

Die Extension ist hier zu finden: 
http://typo3.org/extensions/repository/view/arcavias

Weiss jemand, woran das liegen kann, dass beides nicht passiert ist?

Vielen Dank


Norbert

___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Re: [TYPO3-german] Tipps, wie man Extensions für TYPO3 4.x und 6.x implementieren kann

2014-02-17 Diskussionsfäden Norbert Sendetzky

Hi Chris


Normalerweise Solltest du deine Classen Nicht in ext_autoload eintragen müssen 
wenn sie dem Typo3 Namenschema
entsprechen. Dann findet typo3 sie automatisch.

Es kann sein das es einschränkungen beim autoloading für "low-level" entry 
points gibt. (eID,scheduler) das weiss ich nicht genau.


In TYPO3 4.5 werden keine Klassen für die scheduler und die flexform support 
Klassen gefunden, wenn man sie nicht in ext_autoload.php einträgt (trotz des 
TYPO3 Namensschemas). Ab 6.x scheint auch das zu funktionieren.


Norbert

___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

[TYPO3-german] Tipps, wie man Extensions für TYPO3 4.x und 6.x implementieren kann

2014-02-14 Diskussionsfäden Norbert Sendetzky

Hallo zusammen

Letzte Woche haben wir die erste Version der Arcaivas Webshop Extension 
veröffentlicht, die mit allen TYPO3 Versionen von 4.5 bis 6.1 funktionsfähig 
war (für die, die es interessiert gibt es hier mehr Infos dazu: 
http://forum.typo3.org/index.php/t/200655/). Dabei haben wir einige Erfahrungen 
gesammelt, die wir während des Anpassens und Testens der Extensions gemacht 
haben und die wir gerne hier teilen möchten.


Wenn ihr eure Extension direkt mit Extbase anstatt dem PI-basierenden Ansatz 
entwickelt habt, dann habt ihr sicher auch die neuen Tx_ Klassen benutzt, die 
die benötigte Funktionalität wesentlich sauberer kapseln. In TYPO3 6.x wurde 
das zwar auf Namespaces umgestellt, aber es gibt eine Kompatibilitätsschicht, 
so dass in den meisten Fällen auch die Tx_ Klassen in 6.x benutzt werden 
können. Leider haben sich aber einige Implementierungen in 6.x stark geändert 
und für genau die gibt es dann auch keine Kompatibilitätsschicht.

Einer dieser Problemfälle ist die Handhabung von flash messages im Tx_ 
ActionController bzw. in den neuen Namespace-Variante. Im 
Tx_Extbase_MVC_Controller_ActionController gibt es eine Eigenschaft 
flashMessageContainer, die ein Objekt enthält, zu dem man wichtige Nachrichten 
für den Benutzer hinzufügen kann, z.B. falls ein Fehler aufgetreten ist, der 
nicht weiter behandelt werden kann:

$this->flashMessageContainer->add( ... );

In TYPO3 6.x hat sich die Implementierung der flash message Objekte ziemlich stark geändert 
und ist nicht mehr kompatibel mit dem $this->flashMessageContainer Objekt weil sich die 
Methodennamen und die benutzten Objekte im Vergleich zu 4.x stark geändert haben. Eine 
Kompatibilitätsschicht gibt es dafür nicht, aber für die ganz alte t3lib_ Variante. Anstatt 
also die schönen neuen Objekte zu benutzen muss man hier auf die "altertümlichen" 
t3lib Klassen zurück greifen, damit es mit 4.x und 6.x funktioniert:

t3lib_FlashMessageQueue::addMessage( new t3lib_FlashMessage( '', 
'Error', t3lib_Flashmessage::ERROR );


Die Scheduler Tasks ("Planer" in der deutschen Übersetzung) machen auch Probleme, weil 
sich das PHP Interface für die "additional field provider" (Klassen um zusätzliche Felder 
im Task anzeigen und auswerten zu können) geändert hat und auch nicht rückwärtskompatibel ist.

In TYPO3 4.x erben die "additional fields provider" nur von tx_scheduler_Task 
und müssen folgende Methoden implementieren:
- public function getAdditionalFields( array &$taskInfo, $task, 
tx_scheduler_Module $parentObject )
- public function saveAdditionalFields( array $submittedData, tx_scheduler_Task 
$task )
- public function validateAdditionalFields( array &$submittedData, tx_scheduler_Module $parentObject ) 


Die Provider in 6.x müssen dagegen das 
\TYPO3\CMS\Scheduler\AdditionalFieldProviderInterface implementieren, das 
folgende Methodensignaturen beinhaltet:
- public function getAdditionalFields( array &$taskInfo, $task, 
\TYPO3\CMS\Scheduler\Controller\SchedulerModuleController $parentObject )
- public function saveAdditionalFields( array $submittedData, 
\TYPO3\CMS\Scheduler\Task\AbstractTask $task )
- public function validateAdditionalFields( array &$submittedData, 
\TYPO3\CMS\Scheduler\Controller\SchedulerModuleController $parentObject )

Der Unterschied ist im Typ des letzten Parameters der Methoden. Die übergebenen Objekte 
sind nicht kompatibel und haben unterschiedliche Methoden und es gibt auch nicht die 
Möglichkeit, nur die alte Variante zu benutzen. Unsere Lösung dafür war, zwei 
verschiedene Klassen zu implementieren mit dem jeweils richtigen Interface zu 
implementieren und den gemeinsamen Code in eine Basisklasse auszulagern, der von den 
jeweiligen getAdditionalFields(), saveAdditionalFields() und validateAdditionalFields() 
Methoden benutzt wird. Um die richtige Implementierung für die jeweilige TYPO3 Version 
bereit zu stellen haben wir eine Art "feature detection" in der 
ext_localconf.php benutzt (die TYPO3 Version als Weiche zu benutzen schlägt früher oder 
später immer fehl!):

if( class_exists( '\TYPO3\CMS\Scheduler\Task\AbstractTask' ) ) {
   
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['scheduler']['tasks']['Arcavias\Arcavias\Scheduler\Task\Typo6']
 = ...
} else {
   
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['scheduler']['tasks']['Tx_Arcavias_Scheduler_Task_Typo4']
 = ...
}


Zu guter letzt sollte man sich vor Augen halten, dass die Namen der Tx_ Klassen 
in ext_autoload.php immer klein geschrieben werden müssen (das steht auch 
irgenwo in der Doku). In manchen Fällen funktioniert es auch mit der 
Orginalschreibweise (also camel-cased), aber nicht für den Schedulerteil. Um 
die Sache noch etwas komplizierter zu machen betrifft das allerdings nicht die 
neuen Klassen mit Namespaces in 6.x! Folgendes Beispiel für 4.x und 6.x 
funktioniert:

'tx_arcavias_scheduler_task_typo4' => $extensionPath . 
'Classes/Scheduler/Task/Typo4.php',
'tx_arcavias_scheduler_provider_typo4' => $extensionPath . 
'Classes/Scheduler/Prov

Re: [TYPO3-german] Arcavias - Webshop/Katalog(e) mit TYPO3 CMS integration

2013-12-16 Diskussionsfäden Norbert Sendetzky

Hallo zusammen

Die aktualisierte Arcavias TYPO3 Extension ist gerade in Version 0.9.1 
veröffentlicht worden:
http://typo3.org/extensions/repository/view/arcavias

Sie enthält neben einigen Bugfixes die sr_feuser_register Abhängigkeit nicht 
mehr, so dass man sie jetzt auch ohne Probleme in 6.x installieren kann. 
Stattdessen ist datamints_feuser als Empfehlung hinzu gekommen und für alle 
sinnvoll, die einen Kundenlogin für eine Bestellung voraussetzen oder optional 
anbieten wollen.

Feedback ist herzlich willkommen :-)

Viele Grüsse


Norbert

___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Re: [TYPO3-german] Arcavias - Webshop/Katalog(e) mit TYPO3 CMS integration

2013-12-06 Diskussionsfäden Norbert Sendetzky

Hallo zusammen


was spricht dagegen, die entsprechenden Felder einfach in der
Shop-Extension anzulegen? Wie diese Felder dann gefüllt werden
(sr_feuser_register, datamints_feuser, andere Extension, eigene
Extension, whatever) kann man doch dem Integrator überlassen.


Die nächste Version (voraussichtlich übernächste Woche) wird sr_feuser_register 
und static_info_tables nicht mehr als Voraussetzung haben, sondern nur noch als 
Empfehlung. Solange man keinen Login für seinen Webshop vorsieht, braucht man 
die Extensions auch überhaupt nicht.

Viele Grüsse


Norbert

___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Re: [TYPO3-german] Arcavias - Webshop/Katalog(e) mit TYPO3 CMS integration

2013-12-04 Diskussionsfäden Norbert Sendetzky

Hi Jost


was spricht dagegen, die entsprechenden Felder einfach in der
Shop-Extension anzulegen? Wie diese Felder dann gefüllt werden
(sr_feuser_register, datamints_feuser, andere Extension, eigene
Extension, whatever) kann man doch dem Integrator überlassen.
Natürlich sollte im Handbuch ein entsprechender Hinweis stehen, und
das Shop-Frontend sollte einen Fehler ausgeben, wenn die
verpflichtenden Felder nicht gefüllt sind.


Das Ziel war, dass es so einfach wie möglich für potentielle Shopbetreiber ist, 
die Arcavias Erweiterung zu installieren. Da sr_feuser_register bisher das am 
häufigsten verwendete Plugin für den Zweck war, erschien uns das die beste 
Lösung zu sein.

Allerdings sieht datamints_feuser richtig gut aus, wenn man die Doku liest und 
vor allem unterstützt es 6.x! Leider funktioniert der Download des .t3x gerade 
nicht (Redirect zur Liste aller Extension). Weiss jemand woran das liegt?


Norbert



___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Re: [TYPO3-german] Arcavias - Webshop/Katalog(e) mit TYPO3 CMS integration

2013-12-03 Diskussionsfäden Norbert Sendetzky

Hi Rene


dann würde ich es eher aus den Dependecies rausnehmen und maximal
recomended nennen
so hat man keine Installationsprobleme und kann sich um die
Registrierung selber kümmern...


Das Problem ist, dass die zusätzlichen Spalten in der fe_users Tabelle 
gebraucht werden. Sind die nicht vorhanden, fehlen Daten in der 
Rechnungsadresse und ohne die notwendigen Konfigurationsänderungen würde es 
eine SQL Fehlermeldung geben. Daher ist sr_feuser_register noch erforderlich, 
auch wenn die Situation damit gerade etwas unbefriedigend ist :-(


Norbert

___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Re: [TYPO3-german] Arcavias - Webshop/Katalog(e) mit TYPO3 CMS integration

2013-12-03 Diskussionsfäden Norbert Sendetzky

Hi Bernd

Ich verstehe auch nicht warum hier gerade sr_feuser_register benötigt 
wird. Die wenigen Felder die durch die Ext. zu fe_users hinzugefügt 
werden sollten ja nicht die eigentliche Abhängigkeit ausmachen.


zum reinen An-/Abmelden (Login/Logout) gibt es die Systemextension 
fe_login.  weitere Felder kann sich jede Extension selber anhängen.


Bleibt gerade mal der (mit double-opt-in/ admin-approval recht komplexe) 
Vorgang des Registrierens. Dafür gibt es aber auch mehrere Extensions 
und nicht nur die eine. gerade in letzter Zeit scheinen da mehrere Ext 
weiterentwickelt zu werden.


Da sr_feuser_register ursprünglich für das Zusammenspiel mit tt_products 
geschrieben wurde, umfasst es natürlich alles, was man für einen Shop in der 
Hinsicht braucht. Eigene Spalten zur fe_users Tabelle hinzu zu fügen ist nicht 
schwer, aber da alle anderen Extensions sie nicht kennen füllen sie sie auch 
nicht. War auch unser erster Ansatz, nur mangelte es dann an der Kompatibilität 
:-(

Letztendlich ist es für Arcaivas aber ziemlich egal, welche Extension(s) man 
für Registrierung und Double-Opt-in einsetzt, solange die fe_users Tabelle die 
benötigten Daten enthält (die Spalten können auch ganz anders heissen, sie 
müssen nur gefüllt werden). Der Rest beschränkt sich dann darauf, angepasste 
SQL Statements in der Arcavias Konfiguration zu hinterlegen. Das wars dann auch 
schon.


Norbert

___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Re: [TYPO3-german] Arcavias - Webshop/Katalog(e) mit TYPO3 CMS integration

2013-12-03 Diskussionsfäden Norbert Sendetzky

Hi Rene


> Die neuste Version der Arcavias TYPO3 Extension ist jetzt auch im TER
> verfügbar.

sehr interessant, gleich ein Grund es mal zu testen...
in dem Zuge gleich eine Vorab-Frage:
ist die Dependency zu sr_feuser_register aufzulösen ???
(denn das schränkt bei aktuellen TYPO3 Versionen doch sehr ein)


sr_feuser_register wird benutzt um die Kundendaten zu speichern, so dass sie 
sich damit auch einloggen können. Dumm nur, dass es diese Extension noch immer 
nicht für 6.x gibt. Ich hoffe aber inständig, dass spätestens für 6.2 ein 
Update der Extension bereit steht.

Wenn kein Login gebraucht wird kann man auch die Dependency aus der 
ext_emconf.php und in Resources/Private/Config/classes.php die Konfiguration 
für den TYPO3 Customer Manager entfernen. Dann wird wieder der Default-Manager 
benutzt, der die Daten in den mshop_customer* Tabellen hinterlegt.


Norbert

___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Re: [TYPO3-german] Arcavias - Webshop/Katalog(e) mit TYPO3 CMS integration

2013-12-02 Diskussionsfäden Norbert Sendetzky

Hi Siegfried

Leider ist die TYPO3 Ext nicht im Ter sondern nur auf deren HP und auf Github. 


Das hat sich seit heute geändert :-)
Die neuste Version der Arcavias TYPO3 Extension ist jetzt auch im TER verfügbar.

Sind auf der Suche nach einem Webshop für ein neues Projekt und Magento/Mage+ 
steht auf der Auswahlliste ganz unten. 


Wir haben Arcavias bei verschiedenen Kunden im Einsatz, z.B. DAA 
(shop-owl.daa.de), HIS Jeans (B2B System) oder Tassimo (Backend und 
Admin-Interface). Eine Webseite für die Vermietung von Ferienhäusern haben wir 
auch schon damit umgesetzt.


Arcavias sieht erst mal gut aus. Als Standalone und in TYPO3 integriert!


Die Standalone-Variante ist hauptsächlich als Demo gedacht, aber man könnte sie 
durchaus auch als eigenständiges System nutzen, wenn man noch einen 
Login-Mechanismus für das Admin-Interface implementiert.

Anscheinend sind deren Snapshots älter weil das aktuelle Demo FE 
ohne Attributauswahl angezeigt wird.


Die Attributauswahl ist jetzt aktiv, allerdings noch nicht auf der Demoseite. 
Bei 100.000 Produkten mit 500.000 Attributen braucht sie im Moment noch eine 
Sekunde. Das ist noch viel zu lange und da werden wir in den nächsten Wochen 
noch optimieren.

Das BE muß man erst mal verstehen. Ist nicht so "straight" wie die mir bisher 
bekannten Webshops und auch das übersichtliche TYPO3 BE.


Das Admin-Interface ist stark auf effizientes Arbeiten ausgerichtet und im 
Moment noch nicht auf leichte Erlernbarkeit. Das kommt durch das 
Tassimo-Projekt, das starken Einfluss auf den Teil genommen hat.

Viele Grüsse


Norbert

___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german