zumindest seit Sefrengo 1.4.3 (01.04.03) stelle ich ein Problem beim uplaod von css-Dateien ins Backend fest: die Reihenfolge der css-Definitionen in der von sefrengo erstellten css-Datei entspricht nicht der Reihenfolge in der hochgeladenen Datei, nein sie ist UMGEKEHRT!
Dabei ist die Reihenfolge von css-Definitionen ja bekanntlich extrem wichtig.
Ein Blick in die Datentabelle "cms_css" hat mi rgeziegt, dass die Parameterpaare dort im Feld "idcss" die Reihenfolge der Ursprungsdatei haben!
Also verläuft das Auslesen der hochgeladenen css-Datei in die Datentabelle noch korrekt - bei Neuschreiben der css-Datei durch Sefrengo aber schelciht sich ein Fehler ein.
Fündig geworden bin ich in der Datein "backend/inc/fnc.css.php" bei der Funktion "generate_css_styleblock".
Folgende Änderung schafft Abhlife.
Ich habe vor jedes Vorkommen des Zeile 'collect_from_db($sql, $css_rules);' folgende Codezeile eingefügt:
$sql .= " ORDER BY idcss ASC";
QUELLTEXT
Also alt:
collect_from_db($sql, $css_rules);
Und neu:
$sql .= " ORDER BY idcss ASC";
collect_from_db($sql, $css_rules);
collect_from_db($sql, $css_rules);
Und neu:
$sql .= " ORDER BY idcss ASC";
collect_from_db($sql, $css_rules);
Dadurch werden die Einträge aus der Datendabelle "cms_css" sortiert nach dem Feld "idcss" sortiert ausgelesen und in die von Sefrengo geschriebene css-Datei übernommen.
Frage an Euch: Habe ich etwaige Nebenwirkungen übersehen?
Spannend wäre für mich auch zu wissen, welche Ändeurngen am Bereich css für eine Folgeversion von Sefrengo vorgesehen sind. Denn problematisch ist in Sefrengo ja z.B. das Anlegen von nicht .class, #id oder Element-Selektoren wie z.B speziellen Anweisungen nur für IE 6 und/oder 7 wie z.B "* html #nav ul ul li a, *+html #nav ul ul li a { display: inline-block; }".
Besten Dank für Eure Antworten!
Liebe Grüße
pinda