redaxo / redaxo4 Goto Github PK
View Code? Open in Web Editor NEWREDAXO 4
Home Page: https://redaxo.org
REDAXO 4
Home Page: https://redaxo.org
siehe auch
yakamara/redaxo_xform#117
Mit der Version 2.3.2 sind keine internen Links mehr möglich.
entsprechende Anpassungen beim setup machen
Durch Versionierung z.b. kann es u.U. mal geschehen, daß ./generated/* komplett fehlt.. in dem Fall schmiert Redaxo auf die harte Tour ab. Fix: kleine Routine, welche die dirs anlegt falls sie fehlen..
gregor: Die ganzen Strict-Meldungen sollten dann beseitigt werden. Der größte Teil wird erledigt sein, wenn die statischen Methoden ein "static" bekommen. Die Sichtbarkeiten (private, protected, public) würde ich aber bei den vorhandenen Klassen auskommentiert lassen, um keine zusätzlichen BC-Breaks zu erzeugen (eigentlich "private" Funktionen werden teilweise trotzdem direkt aufgerufen etc.).
das gilt es umzubauen und anzupassen
die langdateien und fallbacks entsprechend anpassen. keine auswahl in den sprachen mehr ermöglichen. in der master inc die sprache festzurren
Liste der wünschenswerten Erweiterungen (bitte ergänzen ad lib..)
https://www.dropbox.com/s/njckwj40o2huq44/mediapool_pngtransp.png
https://www.dropbox.com/s/i4czffqymcnol1h/mediapool_png_broken.png
Das funktioniert erst ab PHP 5.3:
$finfo = finfo_open(FILEINFO_MIME_TYPE);
https://github.com/redaxo/redaxo4/blob/master/redaxo/include/functions/function_rex_mediapool.inc.php#L313
Als Alternative könnte FILEINFO_MIME verwendet werden?
http://de2.php.net/manual/en/fileinfo.constants.php
Hatten wir schon mal irgendwo drüber gesprochen.. iirc zumindest mit @gharlan ..:
Schön wärs für tripages/subsubpages eine automatische navi per rex_title zu bekommen. Bislang macht das ja jeder $irgendwie zu Fuß, aber die Mühsal sollt man sich sparen können, zumal immer mehr Funktionalitäten als Addon Plugins daherkommen und man dort oft eben auch nochmal ne Plugin-eigenen Sub-Navi braucht.
HTML: wenn man im r4 backend einfach in div#rex-navi-page
eine 2. ul reinschmeißt paßts imho schon recht gut.. noch ne border-top und das Ergebnis is brauchbar: http://dl.dropbox.com/u/10220684/screenshots/ea04f839791a1cb1bc9b5b6734f25cb9.PNG
Definition: imho am sympathischsten wärs einfach $REX['ADDON']['my_addon']['SUBPAGES']..
anolog nach unten zu erweitern..
In einem Tiny-MCE-Feld wurde ein Bild eingebunden:
"exklusiv-ferienhaus-provence.jpg"
Im Medienpool befindet sich ein Bild "ferienhaus_provence.jpg".
Dieses Bild sollte gelöscht werden, es kam jedoch ein Fehler, dass es sich in Verwendung befindet.
Die MySQL-Abfrage
SELECT DISTINCT article_id, clang FROM rex_article_slice WHERE value1 LIKE "%ferienhaus_provence.jpg%"
fand einen Datensatz, obwohl in Value1 eben nur "exklusiv-ferienhaus-provence.jpg" drin stand.
Nachdem das rausgenommen wurde, konnte "ferienhaus_provence.jpg" gelöscht werden.
Die Unterstrich / Gedankenstrich-Ähnlichkeit macht hier also anscheinend Probleme.
Hallo,
wäre echt hilfreich wenn man das Import/Export Addon so anpassen könnte das man alle Dateien, egal wie groß exportieren kann. Gerade bei vielen Bildern usw. ist man schnell am Ende mit dem Export.
Bei Wordpress gibt es z.b: ein Backup Plugin was die ganze Installation zippen kann, somit ist es egal wie viele oder wie groß die Dateien sind. Sowas in der Art wünsche ich mir für das Addon.
Schönen Gruß und Danke für die gute Arbeit.
cronjob should use the same extended filname as import_export..
the older generic name features only the timestamp (in hard to read form) without any further usefull info..
see proposal in branch: a5c9f93
mit gn2 noch absprechen was wir nutzen dürfen und noch überlegen wie das direkt in das textile addon integriert werden könnte
Ausgehend von jener Diskussion yakamara/redaxo_xform#117 ein Umzug hierher..
Thema:
Ich hatte das letzten mal, Oli hatte es grad heute, können aber ad hoc nicht den Kontext wiederherstellen.. auf jeden Fall: unter bestimmten Umständen kann es passieren, daß das Feld restrictions
in rex_62_params fehlt.. und man in metainfo dadurch keine neuen Felder anlegen kann.
Ein offensichtliches Symptom ist dann z.b. bei installiertem RexSEO, daß bei jedem backend Aufruf von RexSEO die Meldung kommt, daß die Metafelder neu angelegt wurden..
Sprich: im Hinterkopf behalten und mal drauf achten..
Der Screenshot zeigt eigentlich was ich meine:
https://www.dropbox.com/s/sanerdw9tgtvm6g/slice_bottom.png
Slice wird nicht voll angezeigt, obwohl nach unten hin noch Platz wäre (siehe Browser-Scrollbalken-Position).
Hier finde ich sollte sich die Funktion "Block hinzufügen" genauso verhalten wie die Funktionen Editieren/Löschen, sprich per Anchor nach oben springen. Wäre so besser wie nur einen halben Slice am unteren Bildschirmrand angezeigt zu bekommen.
Ausgehend von folgendem thread/post:
http://www.redaxo.org/de/forum/addons-f30/rexseo-1-4-264-und-offline-artikel-t18531.html#p101870
ein Vorschlag zumindest bei Kopien innerhalb einer cat identische Artikelnamen zu vermeiden..:
Ich würde gerne eine Version 4.5 rausbringen anstatt nur kleinere Optimierungen zu machen. Einerseits deswegen, weil man damit vielleihct einen Schritt näher zur Version 5 kommt, die, auch wenn sie rauskommt, noch Zeit braucht sinnvoll verwendet werden zu können (Externe AddOns die noch angepasst werden müssen etc) und auch, um eine Version zu haben, die von den Standards her eine einfachere Übernahme ermöglicht.
Deswegen würde ich gerne folgende Dinge hier definieren:
würde gerne aber noch Eure Meinung hören/lesen.
see this screenshot for details: http://rexdev.de/metainfo_catname_change_sql_bug.png
Setzt man für subpages z.b. das class Attribut, wird es für nachfolgende subpages einfach übernommen.. wenn man versucht es explizit nochmal zu überschreiben klappt das nicht. Lediglich wenn die eine subpage gerade aktuell afgerufen ist, wird das attribut korrekt ausgewertet.. Beispiel:
$REX['ADDON'][$mypage]['SUBPAGES'] = array (
// subpage ,label ,perm ,params ,attributes
array ('' ,'Einstellungen' ,'' ,'' ,''),
array ('database' ,'Datenbank' ,'' ,'' ,''),
array ('modul' ,'Modul' ,'' ,'' ,''),
array ('includes' ,'Include Beispiele' ,'' ,'' ,array('class'=>'blafasel')),
array ('connector','Connector (faceless subpage)','' ,array('faceless'=>1) ,array('class'=>'jsopenwin')),
array ('help' ,'Hilfe' ,'' ,'' ,array('class'=>'foobar')),
);
Beim Aufruf der subpages vor "includes", wird für "includes" und die folgenden subpage sdie class "blafasel" gesetzt..
Beim Aufruf von "includes", wird für connector korrekt "jsopenwin" gesetzt, aber auch wieder für die folgende subpage "help" wiederum "jsopenwin" ..
In der aktuellen Version 4.4.1 von REX funktioniert die Standardmodulausgabe teils fehlerhaft?
A) Variante mit dem Standardmodul
CODE:
$text = htmlspecialchars_decode("REX_VALUE[1]");
$text = str_replace("
","",$text);
$text = rex_a79_textile($text);
Bei dieser Variante werden die Parameter der Bilder mit Textile unsauber zusammengesetzt, da der Dateiname wegen & nicht mehr von REX gelesen werden kann?! Alle anderen TEXTILE-Tags funktionieren problemlos...
Beispiel CODE: img src="index.php?rex_img_type=fancybox_resize_250&rex_img_file=
Ist das ein Feature, ein Bug oder ein typischer Userfehler?
bug still present - need to get fixed here:
https://github.com/dergel/redaxo_phpmailer/blob/master/pages/settings.inc.php#L60
still uses ereg_replace()
please increase version number and submit package for 4.3.4 release
if i'm doing / telling / getting something wrong, please tell me!
falsches Parsen
Eingabe
*123 - Text - bold* weiterer Fließtext
Ausgabe
Richtig: Version 2.0
<p><strong>123 – Text – bold</strong> weiterer Fließtext</p>
Falsch: Version 2.4.0
<ul123><li>- Text – bold* – weiterer Fließtext</li></ul>
simplepie version "1.2.1-dev" in the rss_reader is rather old and throwing loads of notices in PHP 5.3 .. consider update.
note: rexseo is using 1.3-dev from Dec.2010.. which did fix the notices; current stable however is 1.2.1 but i haven't tested it: https://github.com/simplepie/simplepie/tags
Achtung! Es kommt ne Issue Lawine von mir :) (Gregor wollte das...;))
https://www.dropbox.com/s/kgekz48mhlcxvl0/rexseo_metainfos.png
https://www.dropbox.com/s/2hyeij5mtqecgbe/rex_multiupload_patches.png
auf be_search achten!
http://www.redaxo.org/de/forum/wunschliste-f5/wunsche-fur-die-nachste-r4-t18855.html#p103859
für REX4.x oder REX5
TEXTILE:
REX:
//würde auch die Anpassung der standard.js und der textile.class vornehmen...?
=> vielleicht auch ein Selektor für (X)HTML4 und HTML5?
Bin gerade wieder durch Zufall drauf gestoßen.. sowohl der Beispielcode, und erst recht der Code in den Demo Modulen ist untauglich sobald man wirklich mal (Source)Code per textile ausgeben will..
Beide führen dazu, daß singlequotes als numerisches entity dargestellt werden, der Code der Module sogar dazu, daß Variablen interpretiert werden.
Textile Addon Beispielcode: (single quotes broken)
$textile = htmlspecialchars_decode('REX_VALUE[1]');
$textile = str_replace("<br />","",$textile);
echo rex_a79_textile($textile);
Demo Modul Code: (single quotes broken, vars werden interpretiert, wozu die ### Erstzung mir persönlich unklar..)
$textile = htmlspecialchars_decode("REX_VALUE[1]");
$textile = str_replace("<br />","",$textile);
$textile = rex_a79_textile($textile);
$textile = str_replace("###"," ",$textile);
Vorschlag:
$textile = htmlspecialchars_decode('REX_VALUE[1]');
$textile = str_replace('<br />','',$textile);
$textile = str_replace(''','\'',$textile);
$textile = rex_a79_textile($textile);
Selbigen Code benutze ich schon seit langem ohne irgendwelche probs..
Ich habe heute mal ausprobiert was mir immer wieder mal in den Sinn gekommen war: würde es sich lohnen Textile ein caching zu verpassen? Ich habe dafür mal hier in meiner Textile Addon Version (nur für Tests.. mit diversen lib Versionen die man per select switchen kann) folgenden simplen caching Mechnismus reingestrickt: https://github.com/jdlx/textile_addon/commit/3cab08830c845ea00263f3017830f227e404362f
Als Test-Markup habe ich etwas mit "Pfund" gewählt - konkret dieses hier: http://textile.sitemonks.com/?eg=RefGuide - und ins Textile Modul der Demo gepackt.
Ergebnis: Messungen mit microtime deltas der reinen parse Funktion vs. Caching haben zwar mit mehreren 100 mal schneller ein klar besseres Ergebnis gezeigt, aber da die absoluten Werte auch ohne caching im Nanosekunden Bereich liegen, wäre die Beschleunigung faktisch irrelevant im Kontext des gesamten script-Ablaufs. Aber: als ich dann mal mit Firebug bzw. Webinspector die pageloads angekuckt hab, waren die Unterschiede plötzlich im - je nach markup Menge/Komplexität - im Bereich von 5-10ms für die kleinen markup Blöcke der Demo, und satte 70ms (konkret hier bei mir 190ms vs 120ms) bei oben erwähntem markup schneller.
Ein rechte Erklärung für diesen riesen Unterschied gegenüber den microtime Messungen innerhalb rex_a79_textile()
habe ich nicht.. ;) Jemand ne Idee?
Aber falls ich mit meinen Messungen bzw. der Interpretation nicht daneben liege, und ihr die bei euch nachvollziehen könnt, wäre die Beschleunigung selbst bei kleinen Blöcken, sprich im Bereich 5-10ms ja nicht ohne Belang. Da das caching imho robust und vom code her trivial ist, wäre das evtl. ne Überlegung wert..
Ausgehend von der Diskussion in redaxo/redaxo#161 hier nochmal im r4 Kontext aufgegriffen bezügl. backport ja/nein und Details.. der Vollständigkeit halber nochmal der konkrete Vorschlag:
REX_VALUES die arrays sind per json_encode() zum string machen und so in die DB saven, bzw. als solchen (json string) wieder ausgeben.
Ein patch für r4 sähe z.b. so aus:
http://rexdev.de/rex_var_value-array-patch.html
Dann wäre es möglich z.b. wie folgt ein Modul-Multislsect zu bauen:
$tmp = new rex_select;
$tmp->setName('VALUE[14][]');
// ...
$tmp->setSelected(json_decode('REX_HTML_VALUE[14]'));
//..
Letzter Stand der Diskussion bezügl. r4:
PHP < 5.2: Man könnte eine lib für ältere PHP Versionen einbinden.. nach ein bischen Recherche scheint mir diese am "erwachsensten": http://www.boutell.com/scripts/jsonwrapper.html
escaping/htmlspecialchars: Kein Eingriff, REX_VALUE[n]
gibt den JSON string escaped aus, REX_HTML_VALUE[n]
unescaped..
Wechselwirkungen mit Actions: Imho sollte es keine geben.. mindestens mal wenn man als name
für den input was eigenes nimmt, sprich nicht VALUE..
. Mangels Erfahrung mit actions würd ich das aber eher noch mal wen anders abklopfen lassen..
Ausgabe als echtes array: würde einen backport von rex_var::to_array()
o.ä. Methode erfordern..
Rootartikel in Kategorie umwandeln >> Kategorie editieren >> Metainfos nicht vorhanden
Bei einer zweiten DBID wird die DB-Verbindung nicht auf utf8 gesetzt. Abhilfe schafft ein Query vorher mit SET NAMES abzusetzen
Falsches Ergebnis
$s = rex_sql::factory(3);
$s->setQuery($qry);
Richtiges Ergebnis
$s = rex_sql::factory(3);
$s->setQuery('SET NAMES utf8');
$s->setQuery($qry);
Wenn man UTF-8 Outputs von Textile oder auch von XForm nicht mit utf8_encode() encodet gibts UTF-8-Umlautsalat.
Hey,
there is an deprecated notice in phpmailer version 2.8
Deprecated: Function ereg_replace() is deprecated in /www/redaxo/include/addons/phpmailer/pages/settings.inc.php on line 60
Use str_replace oder preg_replace instead. Assign to 4.3.4 or 4.4
Regards,
Hirbod
das plugin von jdlx hier übernehmen und einsetzen. ist bereits mit ihm abgesprochen
Idee: container class für immer wieder mal benötigte Tabellen wie PHP Timezones, ISO CountryCodes, etc.
Natürlich kann man sich diese Listen ad hoc irgendwo runterladen und zu Fuß einklinken, und auch wenn das kein totaler Beinbruch per se ist, nervts doch eher.. daher wäre es schön sowas per se in rex zur Verfügung zu haben. Da sich diese Listen qua Standardisierung auch nicht alle Nase lang ändern, stellt es auch keinen wirklichen Supportaufwand dar sie innerhalb des frameworks vorzuhalten.
Eine Skizze für so eine class hab ich mal hier gescribbelt: class.rex_standards.inc.php
Konkrete Anwendung:
$REX['TIMEZONE']
select im backendum redaxo zu "markieren" und damit unterscheidbar zu machen. RexDude hat eine Variante gebaut die hier ganz gut passen könnte. Wäre das ok diese zu übernehmen ?
Ausgang Strukturverwaltung, nicht im Editiermodus eines Artikels
-> Sprung in Kategorie
-> Artikel in der Strukturverwaltung editieren
-> nächsten Sprung
alte Kategorie ist "selected"
Redaxo4 still includes PHPMailer Version 1.3. This should be changed asap. xForm and much other AddOns using PHPMailer 2.8 and a lot of functions. The worst thing is, there are no information about the dependencies. xForm will just fail with an fatal error.
Please change the package to 2.8 or inform the user to update the current version, or xform will fail to send mails
Fehlt immer wieder finde ich.. ließe sich dann auch direkt in r5 rüberziehen.
Hier an dieser Stelle auch nochmal der Hinweis auf meine brandneu Wunschliste:
http://www.redaxo.org/de/forum/wunschliste-f5/wunsche-fur-die-nachste-r4-t18855.html
Nur damits net untergeht...hat nämlich paar Stündchen gedauert alles zusammenzustellen und ich denke doch es sind ein paar sinnvolle Sachen/Anregungen dabei...
sinnvolle option:
http://www.redaxo.org/de/forum/post103827.html#p103827
"option in der master.inc hinzufügen (so wie für gzip, usw) welche als default true ist und den header mitschickt. somit ist es für den einfachen user eingeschalten und wer flexibel sein möchte kann es auch"
(komme mir vor wie ein Spambot :)))
Wenn man mit dem Modul einen Block anlegt ohne einen Artikel angelegt zu haben, bekommt man in back/frontend einen fatal. Siehe: http://www.redaxo.org/de/forum/module-aktionen-f28/home-durch-artikelerweiterrung-geschrottet-t18850.html
Hotfix:
<?php
if(!$REX['REDAXO'] || ($REX['REDAXO']!=1 && 'REX_ARTICLE_ID' != 'REX_LINK_ID[1]'))
{
if ( 'REX_LINK_ID[1]' != 0)
{
rex_redirect('REX_LINK_ID[1]', $REX['CUR_CLANG']);
}
}
else
{
echo "Weiterleitung zu <a href='index.php?page=content&article_id=REX_LINK_ID[1]&mode=edit'>Artikel REX_LINK[1]</a>";
}
?>```
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.