Cyweb ist eine Webanwendung und muss daher auf einem Webspace installiert werden.
Das hier ist die Installationsbeschreibung als Ergänzung zur Cyweb-Hauptseite.
Cyweb benötigt keine Datenbank.
1. Download des Packages Cyweb von Homepage cyclos.zart.org
2. Download des TCPDF-Pakets von Homepage tcpdf.sf.net
3. auf dem Webserver zwei Verzeichnisse cyweb/ und tcpdf/ anlegen
5. Paket Cyweb nach dem Download entpacken und sämtlich Files auf den Webserver in das Verzeichniss cyweb/ hochladen.
6. Verzeichnisstruktur im Ordner cyweb/ sollte nun sein:
7. das Paket tcpdf nach Anleitung von tcpdf in Verzeichnis tcpdf/ des Webservers installieren.
8. die Datei cyweb/inc.cyweb_config.php bearbeiten
$cyweb_config["soap"] = array("namespace"=>"http://project.cyclos.org" // url-samples (don't forget 'hppts' for secure connections) # ,"url" => "http://www.cyclos.org/cyclos_de" ,"wsdl" => "/services/ads?wsdl" );
hier zumindest das '#' for der Zeile mit 'url' entfernen und die richtige URL der Cyclos-Instanz angeben. Die Parameter „namespace“ und „wsdl“ können unverändert bleiben, sofern der Cyclos-Server 'standard' ist.
$cyweb_config["style"] = array( "search" => array( "items_per_page" => 15 ## ==> hier ist die Anzahl von Anzeigen je Online-Seite einzustellen "template" => "tmpl.cyweb.html" ## ==> hier ist das HTML-Template einstellbar, welches zur Anzeige der Online-Inseratsliste verwendet werden soll ## ==> man kann dadurch mehr als nur ein Template verwenden. ## ==> Standardmäßig zeigt diese Einstellung auf cyweb/tmpl.cyweb.html, das Default-Template; auch dies kann geändert werden. $cyweb_config["gui"]["parts"]=array("PRICE"=> array( "nvl" => "?") ,"CURRENCY.NAME"=> array( "nvl" => "") ,"IMAGES.IMAGE.CAPTION"=> array( "nvl" => "kein Bild") ,"IMAGES.IMAGE.FULLURL"=> array( "nvl" => CYWEB_INC_PATH.'media/picless2.jpg') ,"IMAGES.IMAGE.THUMBNAILURL"=> array( "nvl" => CYWEB_INC_PATH.'media/picless.jpg') ,"IMAGES.IMAGE"=> array( "nvl" => "", "max_count_list" => "1", "max_count_latest" => "2" ) ,"FORMATTEDPRICE"=> array( "nvl" => "?") ,"CURRENCY.NAME"=> array("depends" => "FORMATTEDPRICE") /* part of soap-result: false: offer; true: search; default: offer */ ,"SEARCHING" => array( "bool"=>"Angebot,Gesuch", "nvl"=>"Angebot" ) ); ## ==> hier wird's nun komplexer: ## ==> Alle Cyclos-Server-Felder, die im HTML-Template verwendet werden, muessen in diesem Array definiert werden. ## ==> Jedes Feld muss einen Wert 'NVL' enthalten, der Wert, der Angezeigt wird, wenn das Feld leer ist. ## ==> Die anderen Angaben sind Optional. ## ==> Die Vorgabe hier definiert alle 'gewöhnlichen' Felder, die im Standard-Template benutzt werden. ## ==> weitere Details dazu in der Original-Beschreibung des Cyclos-Webservices des Cyclos-Projects ## ==> @todo: depends ## ==> In diesem Bereich kommen noch die custom member fields rein; folgende Weise: ,"OWNER.FIELDS.ENTRY" => array( "nvl" => "" ,"take_key_value" => "key,value" ) ,"OWNER.FIELDS.ENTRY.AREA" => array( "nvl" => "" ) ## ==> Der erste Eintrag muss sein und ist fix. Die Folgeeinträge sind je custom field ein Eintrag, hier im Beispiel 'AREA'. ## ==> vgl. HTML-Template $cyweb_config["gui"]["local"]="de"; ## ==> Lokalisation: Default ist deutsch; passt also; je ISO-Länderkürzel muss es eine Datei in Ordner cyweb/local/ geben. Diese Dateien enthalten alle Texte. define("CYWEB_PATH_TCPDF",'../tcpdf'); ## ==> Der Pfad zu tcpdf; entweder relativ von cyweb/ aus oder aboluter filesystem-server pfad define ( 'CYWEB_PATH_WSDL', "wsdl/"); ## ==> wsdl wird gecached; in dem hier angegebenen Ordner; muss idR nicht verändert werden.
9. Anpassung des HTML-Templates Datei cyweb/tmpl.cyweb.html bearbeiten @todo
10. Anpassung der CSS-Styles Datei cyweb/cyweb.css nach eigenen Vorstellungen ändern.
11. Einbindung der Cyweb-Installation in eine Webpage per iframe (Links anpassen!):
<iframe src="http://www.mydomain.de/cyweb/" style="width:620px; height:2600px; vertical-align:top;" frameborder="0" valign="top"> Ihr Browser unterstützt leider keine IFRAMEs. Klicken Sie <a href="http://www.mydomain.de/cyweb/" target="_blank">hier</a>, um die Onlinesuche in einem neuen Fenster zu öffnen.<br /> Vielen Dank für Ihr Verständnis. </iframe>
12. Installation Testen Die Installation sollte nun nach Aufruf der cyweb-Url eine Online-Inseratliste anzeigen.
Die aufzurufende URL lautet: http://www.mydomain.de/cyweb/
13. PDF-Generierung Die PDF-Generierung wird angestossen per Link:
http://www.mydomain.de/cyweb/pdf.php
Um zu erreichen, dass das generierte PDF-File immer am gleichen Ort abgelegt wird, kann die Datei cyweb/copy_pdf.php angepasst werden. Diese kann dann aufgrufen werden mit:
http;www.mydomain.de/cyweb/copy_pdf.php Bevor all dies funktioniert, muss dies konfiguriert werden: * Datei cyweb/pdf/inc.pdfconfig.php öffnen * Pfade anpassen (für Filesystem-Pfade immer vom Webserver-Root aus, bei url gesamte url): CYWEB_PDF_CACHE_PATH K_PATH_IMAGES (sollte immer auf cyweb/media/ zeigen) K_PATH_MAIN K_PATH_URL * Logo hochladen (in K_PATH_IMAGES, sollte immer auf cyweb/media/ zeigen) * Logo einstellen: PDF_HEADER_LOGO * Texte für die Marktzeitung anpassen: PDF_HEADER_TITLE (eine Zeile) PDF_HEADER_STRING (zwei Zeilen, mit newline ('\n') getrennt) * @todo weitere einstellungen beschreiben * url aufrufen, um zu testen ob die PDF-Generierung funktioniert: www.mydomain.de/cyweb/pdf.php (dauert!!) * Datei cyweb/copy_pdf.php öffnen ** Diese Zeilen entkommentieren <code> $source_script=„http://www.tauschenamfluss.ch/cyweb/trunk/pdf.php“; $target_file=„media/ads.pdf“; </code> Soll z.B. dann so aussehen ($source_script muss immer auf den richtigen Pfad von pdf.php in URL-Form zeigen): <code> $source_script=„http://www.mydomain.de/cyweb/pdf.php“; $target_file=„media/meine_initiative-marktzeitung.pdf“; </code> * Dafür sorgen, dass target_file vom webserver auch geschrieben werden darf. Dazu entsprechende Verzeichniss- / Dateirechte vergeben. * URL aufrufen: www.mydomain.de/cyweb/copy_pdf.php (dauert, wird aber angezeigt) * Marktzeitung sollte nun frisch generiert unter dem Link von target_file stehen. * TIPP: copy_pdf kann als absolute URL-Pfad als Cronjob laufen! Und nun viel Spass damit!