Hilfe - Suche - Mitglieder - Kalender
Vollansicht: Smartypants v01.02.00
Forum Sefrengo.org > Downloads > Archiv > Alpha, Beta, ......
MaZderMind
Pluginname:
---------------------------------------------------------------------------
Smartypants

Status:
---------------------------------------------------------------------------
beta - das Plugin ist weitgehend fertig und getestet. Bis zu einer stabilen
Version wird es nur noch kleinere Änderungen / Bugfixes geben. Das
Plugin ist unter vorbehalt produktiv einsetzbar.

Bechreibung:
---------------------------------------------------------------------------
SmartyPants übersetzt Standard-ASCII Interpunktionen zu "smarten" typographisch
korrekten Interpunktionen und gibt diese, Zeichensatzabhängig als UTF-8-Zeichen
oder HTML-Entitäten aus.

Features:
---------------------------------------------------------------------------
Stichpunktartige Listung der wichtigsten Merkmale des Moduls
- Transparente übersetzung von Interpunktionszeichen aus ALLEN Modulen und Plugins
- Ausgabe als "echte" UTF-8-Zeichen oder HTML-Entitäten, je nach eingestelltem
Zeichensatz
- Keine veränderung der Daten der Datenbank -- Nach dinstallieren des Plugins ist
alles wieder wie vorher
- Ersetzungszeichen können in der Projektkonfiguraion geändert werden

Autor(en):
---------------------------------------------------------------------------
- MaZderMind

Lizenz:
---------------------------------------------------------------------------
GPL

Benötigte Sefrengo Version:
---------------------------------------------------------------------------
Bisher keine abhängigkeiten bekannt

Installation:
---------------------------------------------------------------------------
Wechseln Sie in Ihrer Sefrengo Version in den Bereich "Administration -> Plugins".
Klicken Sie oben rechts auf "Plugin importieren". Am unteren Ende des Bereichs
befindet sich ein Uploadfeld. Wählen Sie hier die gewünschte "*.cmsplug"- Datei
aus. Mit einem Klick auf das Diskettensymbol wird das Plugin in das CMS importiert.
Das Plugin ist nun innerhalb des CMS nutzbar. Installieren Sie das Plugin mit einem
klick auf das Plugin-Importieren-Symbol in der Pluginzeile.


Update / Migration:
---------------------------------------------------------------------------
Aufgrund der beschränkten Möglichkeiten für Pluginupdates gehen bei jedem
Update die Einstellungen verloren.

Dokumentation:
---------------------------------------------------------------------------
http://daringfireball.net/projects/smartypants/

CODE
Changelog legend:
# -> Bug Fix
+ -> Addition
^ -> Change
- -> Removed
! -> Note

Current versionnumber is 01.02.00 - released 10.01.2007
------------------------------------------------------------------------------------------------
^ Einstellungen werden nun je Sprache statt je Projekt definiert
+ Leerzeichen vor/nach/um Sonderzeichen können Erzwungen oder Entfernt werden
+ Ersetzung von Entitäten durch UTF-8-Zeichen kann an-/abgestellt werden

Current versionnumber is 01.01.00 - released 10.12.2006
------------------------------------------------------------------------------------------------
# Autostarteinträge werden nichtmehr in der Konfiguration angezeigt
+ Ersetzungszeichen können in der Projektkonfiguraion geändert werden

Current versionnumber is 01.00.00 - released 03.12.2006
------------------------------------------------------------------------------------------------
! Erste veröffentlichung


Download entfernt weil er einen SF-Crash verursachen kann. Gibt bald ne neue Version.
MaZderMind
Hi
Nun also die neue Smartypants-Version. Ich habe eine neue Ableitung der plugin_meta entworfen, die die Metadateien language_install.meta und language_uninstall.meta auswertet und entsprechend beim anlegen einer neuen Sprache reagieren kann. Verwendet wird dass, um die Konfigurationseinstellungen aus der Projektkonfiguration in die sprachkonfiguration zu verschieben.
Damit können für jede sprache unterschiedliche Typographien konfiguriert werden und es kann z.b. bei Französisch "xx" zu «xx» und bei deutsch zu „xx” konvertiert werden. Hinzugekommen sind hier auch weitere Konfigurationsmöglichkeiten, was genau ersetzt wird, wo leerzeichen erzwungen und wo entfernt werden sollen. Bei Fragen was genau die einzelnen Einstellungen machen bitte einfach konkret hier nachfragen.
In der Clientkonfiguration steht nurnoch die Option, das ersetzen der numerischen Entitäten durch UTF-8-Zeichen bei aktiviertem UTF-8-Zeichensatz zu deaktiveren, um ungewollte interaktionen mit anderen Plugins wie z.B. dem eMail-Kodierer zu vermeiden.

So ich hoffe dass alles klappt, vorallem auch das Update. Ich hoffe auf rückmeldung bzw. Links auf Seiten auf denen ihr das Plugin einsetzt.
Gruß, Peter
gunwalt
Da gibts ein Problem mit dem Update. Beim Import werde ich nach dem Update gefragt, i.O. Dann Import. Dann funktioniert allerdings nichts mehr. Egal wohin ich klicke, eine weisse Seite entspricht nicht meinen Vorstellungen eines CMS.
feniweb
@MaZderMind

Ich erhalt ebenfals eine Fehlermeldung.
QUELLTEXT
Fatal error: Call to a member function on a non-object in /home/web/www.feniweb.ch/htdocs/cms-sf/backend/plugins/smartypants/class.plugin_langconf_meta.php on line 29

und im Backend wird nichtsmehr engezeigt.

Frontend wird angezeigt.

Gruss

Edit: OK. Das war ein Update von Smartypants 1.00.00
gunwalt
Ich weiss nicht ob feniweb eine Neuinstallation oder ein Update meint. Neuinstallation geht ebenfalls nicht
MaZderMind
Hmm sehr merkwürdig. Einstweilen könnt ihr einfach die Einträge aus der cms_plug löschen dann sollte es wieder gehen. Ich teste noch ein bisschen rum. Der gequotete Fehler ist mir wirklich unerklärlich.. Ich gucks mir nochmal an..

Gruß, Peter
gunwalt
Stichwort cms_plug: Alle Plugins müssen hier doppelt drin sein - die Smartpants aber nur einmal, folglich muss nach der Installation irgendetwas mit dem Import schief laufen.
In der Spalte index_file ist nicht angegeben, müsste doch heissen -> process.php. Hier sollten wir uns eigentlich einigen, das alle Plugins über einen einheitlichen Dateinnamen aufgerufen werden.
Habe gerade die Zeile in der DB analog zu den anderen Plugins verdoppelt, geht allerdings trotzdem nicht.

Cat-Name: Ausgabeparser: hier sollte vielleicht System oder Tools stehen.
MaZderMind
index_file ist egal da das Plugin im Backend keine Seite anbietet. Die "doppelte Zeile" wird erst angelegt wenn das Plugin in ein Projekt installiert wird. Das hat mit dem Import nix zu tun.

Gruß, Peter
MaZderMind
So ich habs getestet. Sowohl ein Update als auch ein Reinstall laufen auf einer frischen SF-Testinstallation mit zwei Projekten problemlos. Kann mir einer mit Problemen mal einen Backendzugang geben damit ich gucken kann worans liegt? Weil eigentlich hab ich das install/uninstall/update-Prozedere ein halbes duzend mal getestet...

Gruß, Peter
gunwalt
ZITAT(MaZderMind @ Fri. 12. January 2007, 09:54) *
So ich habs getestet. Sowohl ein Update als auch ein Reinstall laufen auf einer frischen SF-Testinstallation mit zwei Projekten problemlos. Kann mir einer mit Problemen mal einen Backendzugang geben damit ich gucken kann worans liegt? Weil eigentlich hab ich das install/uninstall/update-Prozedere ein halbes duzend mal getestet...


Rätsel über Rätsel. Habe probeweise alle Plugins deinstalliert und komplett gelöscht und dann das Plugin neu hochgeladen - mit dem gleichen Ergebnis.
PM ist unterwegs.
MaZderMind
So ich hab einen Fehler, dem anderen bin ich grad auf der Spur. Zuersteinmal habt ihr beide den gleichen Fehler, nur dass bei dem einen ne Fehlermeldung angezeigt wird und bei dem anderen nicht.

Mir sind zwei Fehler unterlaufen:
1. Hab ich in einem query hart cms_ reingecodet.
2. Benutze ich eine andere MySQL-Version. Eure wirft bei folgendem Query den Fehler "Column 'idlang' in field list is ambiguous" raus, mein jedoch nicht.
SQL
SELECT idlang, idclient FROM cms_***_lang JOIN cms_***_clients_lang USING (idlang);


Warum das so ist, weiß ich nicht. Logischerweise /müssen/ die beiden idlang-Spalten ja den selben Wert haben, sonst würde ja kein Join stattfinden. Trotzdem beschwert sich MySQL bei euch dass die Spaltenbezeichnung nicht eindeutig sei. Meine Version 5.0.22 sortiert das scheinbar aus.

Ich hab das Query auf
SQL
SELECT clientlang.idlang, clientlang.idclient FROM $cms_db[lang] lang JOIN $cms_db[clients_lang] clientlang USING(idlang);

geändert und schon fluppts.

Ein weiteres Problem hab ich auch nicht bedacht, nämlich das $db -> Execute($sql) bei einem defekten Query false zurückgibt und kein leeres record-Set-Objekt. Da muss ich unbedingt noch ne Behandlung einbauen, damit beim nächsten mal keine Weiße Seite erscheint sondern ne ordentliche Fehlermeldung.

Bei gunwalt hab ichs direkt korrigiert, für alle anderen hier die geänderte class.plugin_langconfig_meta.php. Die muss nach /backend/plugins/smartypants/ kopiert werden. Ich nehm oben den Download raus und veröffentliche eine Fehlerbereinigte Version.

Danke für den einfachen zungang zu euren Systemen, hätte sonst ewig dauern können mim finden des Fehlers.
Gruß, Peter
gunwalt
Danke für die Reparatur.

ZITAT(MaZderMind @ Fri. 12. January 2007, 15:52) *
Warum das so ist, weiß ich nicht. Logischerweise /müssen/ die beiden idlang-Spalten ja den selben Wert haben, sonst würde ja kein Join stattfinden. Trotzdem beschwert sich MySQL bei euch dass die Spaltenbezeichnung nicht eindeutig sei. Meine Version 5.0.22 sortiert das scheinbar aus.

Hängt das mit 4er und 5er PHP zusammen? Offiziell wird die 4er empfohlen?
MaZderMind
Nein das liegt an unterschiedlichen MySQL-Versionen.
ZITAT
[...]in cases when MySQL formerly issued an error that some
column is ambiguous, the query now is handled correctly. This is due to the fact
that MySQL now treats the common columns of NATURAL or USING joins as a single
column, so when a query refers to such columns, the query compiler does not
consider them as ambiguous.


Gruß, Peter
gunwalt
Kannst Du das noch verbessern?

Öffnene Anführungszeichen
Schließende Anführungszeichen
MaZderMind
Klaro smile.gif

Gruß, Peter
feniweb
@MaZderMind

Danke für deine Bemühungen, leider immer noch gleicher Fehler!

Ich habe die neue class.plugin_langconf_meta.php ins entsprechende Verzeichnis abgelegt jedoch hilf das nicht wink.gif
QUELLTEXT
Fatal error: Call to a member function on a non-object in /home/web/www.feniweb.ch/htdocs/cms-sf/backend/plugins/smartypants/class.plugin_langconf_meta.php on line 30

gleicher Fehler kann mich ins Backend nicht mehr einlogen, nur wenn ich das über FTP Smartypants deaktiviere.

Gruss
MaZderMind
Bitte schick mir FTP-Zugangsdaten damir ich mal gucken kann. Das Query wird anscheinend nicht ordentlich ausgeführt, ich weiß nur nich wieso...

Gruß, Peter
STam
ZITAT(MaZderMind @ Fri. 12. January 2007, 17:28) *
Das Query wird anscheinend nicht ordentlich ausgeführt, ich weiß nur nich wieso...

Gruß, Peter
...
Ein Schuß ins blaue:
QUELLTEXT
SELECT idlang, idclient FROM (cms_***_lang) JOIN cms_***_clients_lang USING (idlang);
... wichtig sind dabei die '...(cms_***_lang)...' Klammern!

Gruß
MaZderMind
Hmmm also das hab ich noch nie gesehen..
Mehrere Source-Tables werden normalerweise mit kommas separiert -- Klammern hab ich noch nie gesetzt.

Gruß, Peter
MaZderMind
@feniweb Ich würd gern die neue Version rausbringen aber da ich immer noch nicht weiß wo genau bei dir der Fehlr liegt kann ich das auch nich fixen -- und ich bring ungern ne Version mit (mehr oder wniger) known bugs raus.
Ist es möglich, dass du mir FTP-Zugang zu deinem System gibst?

Gruß, Peter
feniweb
@MaZderMind

Habe dir FTP-Zugangsdaten in einem PM gesendet.

Gruss
STam
ZITAT(MaZderMind @ Mon. 15. January 2007, 23:38) *
@feniweb Ich würd gern die neue Version rausbringen aber da ich immer noch nicht weiß wo genau bei dir der Fehlr liegt kann ich das auch nich fixen -- und ich bring ungern ne Version mit (mehr oder wniger) known bugs raus.
Ist es möglich, dass du mir FTP-Zugang zu deinem System gibst?

Gruß, Peter

... ähmmm, hast du meinen Fix nun ausprobiert? Oder kannst du dir nicht vorstellen das das so geht und testest das deswegen nicht?
feniweb
@STam

Sorry, ich bin davon ausgegangen das dein Fix für MaZderMind ist.

Gruss
MaZderMind
@STam doch - ich hatte nur bis heute keine Möglichkeit auf felix' Server auch nur irgendwas zu testen. Da ich jetz die Zugangsdaten hab werde ich glei drangehen und mit deinem vorschlag anfangen smile.gif

Gruß, Peter
MaZderMind
Hi
Soo felix fährt ein MySQL 3.23.58, welches folgedes Query ablehnt:
SQL
SELECT cms_clients_lang.idlang, cms_clients_lang.idclient FROM cms_lang JOIN cms_clients_lang USING (idlang)

#1064 - You have an error in your SQL syntax near 'USING idlang' at line 1
auch wenn ich die USING-Klausel gegen eine entsprechende ON-Klausel austausche. Ich hab keine ahnung wieso. Das Query scheint korrekt.

auch STams Tip mit den Klammern hab ich befolgt -- gleiches Ergebnis. Ich peils einfach nicht -- warum beschwehrt sich MySQL über die Syntax? Wenn jemand ne Idee hat.. Ich werde mal in ienem speziellen SQL-Forum nachfragen.

Gruß, Peter
MaZderMind
Ohh ich habs *g*
MySQL3 kommt mit JOIN nicht klar, wenn kein INNER oder OUTER oder CROSS angegeben ist. Ab MySQL4 wird INNER als default angenommen. Ich werde es mir für die Zukunft merken.. Release ist auf dem Weg und bei felix fluppt wieder alles.

Gruß, Peter
feniweb
@MaZderMind

Danke für deine bemühungen. tongue.gif
MySQL 3.23.58 ich weiss, ist schon eine ältere DB-Version, werde auch nächstens auf einen neueren Server beim Provider umsiedeln mit PHP5 usw.

Gruss

Edit: natürlich auch ein Danke an Stam tongue.gif
STam
... ebenso, danke für die Aufklärung.

Gruß
Dieses ist eine vereinfachte Darstellung unseres Foreninhaltes. Um die detaillierte Vollansicht mit Formatierung und Bildern zu betrachten, bitte hier klicken.
Invision Power Board © 2001-2024 Invision Power Services, Inc.