Warning: count(): Parameter must be an array or an object that implements Countable in /usr/www/users/w007a7e8/germanis.de/public_html/components/com_k2/models/item.php on line 763

Warning: count(): Parameter must be an array or an object that implements Countable in /usr/www/users/w007a7e8/germanis.de/public_html/components/com_k2/models/item.php on line 763

Warning: count(): Parameter must be an array or an object that implements Countable in /usr/www/users/w007a7e8/germanis.de/public_html/components/com_k2/models/item.php on line 763

Warning: count(): Parameter must be an array or an object that implements Countable in /usr/www/users/w007a7e8/germanis.de/public_html/components/com_k2/models/item.php on line 763

Warning: count(): Parameter must be an array or an object that implements Countable in /usr/www/users/w007a7e8/germanis.de/public_html/components/com_k2/models/item.php on line 763

Warning: count(): Parameter must be an array or an object that implements Countable in /usr/www/users/w007a7e8/germanis.de/public_html/components/com_k2/models/item.php on line 763

Warning: count(): Parameter must be an array or an object that implements Countable in /usr/www/users/w007a7e8/germanis.de/public_html/components/com_k2/models/item.php on line 763

Warning: count(): Parameter must be an array or an object that implements Countable in /usr/www/users/w007a7e8/germanis.de/public_html/components/com_k2/models/item.php on line 763

Warning: count(): Parameter must be an array or an object that implements Countable in /usr/www/users/w007a7e8/germanis.de/public_html/components/com_k2/models/item.php on line 763

Warning: count(): Parameter must be an array or an object that implements Countable in /usr/www/users/w007a7e8/germanis.de/public_html/components/com_k2/models/item.php on line 763

Warning: count(): Parameter must be an array or an object that implements Countable in /usr/www/users/w007a7e8/germanis.de/public_html/components/com_k2/models/item.php on line 763

Akeeba Backup - Version 3.3.5 mit Einschnitten

Akeeba Backup

Akeeba Backup, die wohl beliebteste Lösung für Joomla!-Datensicherungen, wurde auf die Version 3.3.5 angehoben. Nicholas Dionysopoulos, der Entwickler, berichtete davon gestern via Twitter und im Blog von AkeebaBackup.

Es wird von einschneidenden Änderungen im Kern der freien Version von Akeeba Backup berichtet. Leider wird unter dem Vorzeichen, dass die freie Version möglichst simpel bleiben soll, diese version um einige bisher schon vorhandene Möglichkeiten beschnitten.

Dazu zählen v.a. die Wiederherstellungspunkte sowie die automatische Benachrichtgung per Email bei neuen Versionen. Beides wird ersatzlos gestrichen - beziehungsweise bleibt der professionellen Version vorbehalten.

Für Akeeba Backup Professional wird eine jährliche Gebühr via Abo von 40.00 €  fällig.


Warning: count(): Parameter must be an array or an object that implements Countable in /usr/www/users/w007a7e8/germanis.de/public_html/templates/gk_creativity/html/com_k2/templates/default/category_item.php on line 122
weiterlesen ...

CSS: geliebtes Border-Box-Modell

CSS: Border-Box-ModellJeder, dessen CSS-Definitionen nicht nur mit aktuellen Browsern (Firefox > 1.0.x und IExplorer 7) korrekt ausgegeben werden sollen steht irgendwann einmal vor dem Dilemma des Border-Box-Modells.

Genauer gesagt: er steht vor dem Problem, dass IExplorer 5.x und 6.0  das Border-Box-Modell mit Innen-/Außenabständen, Breite und Rand in Eigeninterpretation betrachten (Box Model Bug).

Solange vor allem der IExplorer 6 (laut Zugriffs-Statistik sämtlicher (Kunden-)Webseiten) nach wie vor die Nase vorn hat und CSS3 noch nicht in greifbare Nähe rückt, muß man als Web-Developer sich diesem Problem wohl oder übel stellen.

Aus diesem Grund ist bei jeder Template-Frickelei das geliebte Border-Box-Modell Grund für diverse Nervenzusammenbrüche...

Einige Grundregeln für ein identisches Aussehen eines Templates in allen Browsern habe ich heute von Marcus erfahren:

  1. Nutze, wenn möglich, für Boxen (DIV & Co.) nie feste Breiten kombiniert mit Abständen (padding /margin).
  2. Zum Zentrieren niemals fixe Abstands-Definitionen nehmen, das erfordert meistens Hacks für den IExplorer:
    margin 0 auto; /* funktioniert nur in neueren Browsern */text-align: center; /* für alle anderen */

Vor allem mit (1.) lassen sich marginale Probleme umgehen.

 

BTW, die "CSS-Spickzettel" (CSS cheat sheets) von lesliefranke.com oder www.ilovejackdaniels.com helfen auch - bei grundlegenden Problemen ;-)

gefunden bei webtagebu.ch

 

To be continued... 


Warning: count(): Parameter must be an array or an object that implements Countable in /usr/www/users/w007a7e8/germanis.de/public_html/templates/gk_creativity/html/com_k2/templates/default/category_item.php on line 122
weiterlesen ...

Meine ganz persönliche Security Checklist

"Verschlossen" © mschoen / PIXELIOEs ist immer das Gleiche - wenn ein Projekt abgeschlossen ist bzw. eine Webseite online geht, gibt es immer eine Liste an Aufgaben abzuarbeiten. Meistens sind diese Aufgaben ähnlich, wenn nicht sogar deckungsgleich.

Fakt ist: ein großes Thema bei produktiven Websites besteht immer: Sicherheit.

Eine Webseite abzusichern, insbesondere wenn sie mit einem dynamischen, datenbankgestützten CMS wie Joomla! erstellt wurde, sollte nie auf die leichte Schulter genommen oder gar außer Acht gelassen werden.

Aus diesem Grund gibt es in Foren und Userportalen unzählige Beiträge zu diesem Thema. Alle haben meist eines gemeinsam - es läuft auf ein paar bestimmte Maßnahmen hinaus, die es zu beachten gilt. Aus diesen Maßnahmen entsteht schnell eine Liste, die es - wie eingangs erwähnt - abzuarbeiten gilt, eine Sicherheits-Checkliste (SecurityChecklist).

Meine ganz persönliche Security Checklist ist aus vielen Erfahrungen und mit Hilfe anderer Aktiven der Joomla-Gemeinde entstanden.
Neben den "reinen" Sicherheitsmaßnahmen besteht meine Checkliste auch zu einem Teil aus OnPage-Optimierungen, da es sich einfach anbietet.

Meine Liste steht hier zum freien Download zur Verfügung. Ich habe sie unter die Creative Commons Lizenz gestellt. (Creative Commons Lizenz 3.0 BY SA)

Wer Fragen, Ergänzugen oder Korrekturen hat, darf gerne kommentieren!

pdfSecurityChecklist_by_germanis.de.pdf227.28 kB (Version 1.0)

Quellen:


Warning: count(): Parameter must be an array or an object that implements Countable in /usr/www/users/w007a7e8/germanis.de/public_html/templates/gk_creativity/html/com_k2/templates/default/category_item.php on line 122
weiterlesen ...

Mini-Tutorial: die Sache mit der Feedausgabe bei EventList

Problem: Die Terminansicht wird korrekt angezeigt, die Ausgabe als Feed verlinkt aber nicht auf die entsprechenden Detailseiten der Einträge, sondern scheinbar wahllos auf andere (bereits abgelaufene) Termine.

Bei einem aktuellen Projekt bin ich darauf gestoßen:

Als Ausgabe für Termine wird EventList (www.schlu.net) in der aktuellen Version 1.0.1 verwendet:
www.ec-sachsen.de/index.php?option=com_eventlist&view=categoryevents&id=6&Itemid=189

Wie man am Link sehen kann, wird die Ansicht ("View") categoryevents verwendet. Aus dieser Ansicht kann eine Feedausgabe (RSS 2.0)erzeugt werden:

www.ec-sachsen.de/index.php?option=com_eventlist&view=categoryevents&format=feed&id=6&type=rss&Itemid=189

Dieser Feed erzeugte ursprünglich die fehlerhaften Links.


Warning: count(): Parameter must be an array or an object that implements Countable in /usr/www/users/w007a7e8/germanis.de/public_html/templates/gk_creativity/html/com_k2/templates/default/category_item.php on line 122
weiterlesen ...

Mini-Tutorial: JCE und das Verschieben von Bildern

Der Joomla-Content-Editor, allgemein als JCE bekannt, wird von vielen Benutzern als die Referenz für Joomla! gesehen. Auch ich setze den JCE fast ausschließlich auf allen Seiten ein, die ich erstelle und betreue.

Mit dem Update des Editor-Plugins auf die Version 1.5.5 (aktuell ist 1.5.6) wurde wieder an vielen Schräubchen gedreht und manche liebgewonnene Eigenschaft des JCE ist plötzlich verschwunden.

Wenn man mit Bildern im Text arbeitet, weiß man zu schätzen, dass der JCE erlaubt, eingefügte Bilder per Drag&Drop zu verschieben. Durch einen Klick auf ein Bild und ein anschließendes Verschieben des Cursors lassen sich die Bilder von einem Ende des Textes zum anderen Ende verschieben - sehr komfortabel!

Seit Version 1.5.5 war diese bequeme Funktion offenbar verschwunden - doch das ist zum Glück nicht so. Die Funktion ist lediglich per Standard nicht eingerichtet. Folgender Worakround aktiviert die Funktion wieder:

JCE-Administration -> Configuration -> Erweitert -> Eigene Variablen - dort eintragen:

paste_block_drop:0 

...und schon lassen sich die Bilder im Editor wieder "bewegen"!


Warning: count(): Parameter must be an array or an object that implements Countable in /usr/www/users/w007a7e8/germanis.de/public_html/templates/gk_creativity/html/com_k2/templates/default/category_item.php on line 122
weiterlesen ...

Joomla! @ CLT 2011

Joomla! auf den Chemnitzer Linuxtagen 2011 Auch 2011 sollen die Chemnitzer Linuxtage nicht ohne das OpenSource CMS Joomla! über die Bühne gehen.

Am kommenden Wochenende, also vom 19. bis 20. März 2011, finden in Chemnitz die alljährlichen Linuxtage statt. Als Aussteller vertreten wir das Joomla!-Projekt mit einem Stand: Chemnitzer Linux-Tage am 19./20.03.2011

Die komplette Aussteller-Liste:

Ich möchte alle, die Interesse am Joomla! haben, herzlich zu den Chemnitzer Linux-Tagen und insbesondere an unseren Stand einladen.


Warning: count(): Parameter must be an array or an object that implements Countable in /usr/www/users/w007a7e8/germanis.de/public_html/templates/gk_creativity/html/com_k2/templates/default/category_item.php on line 122
weiterlesen ...

Tutorial: Menue-Modul mit MenuMatic

MenuMatic auf Basis von MooTools & Suckerfish Nachdem ich auf der Suche nach einer Lösung für den Einsatz von Joomla! 1.5.X & MenuMatic  letztendlich beides zur Zusammenarbeit bewegen konnte, möchte ich anhand eines kleinen Tutorials davon berichten.

Aber fangen wir von vorn an:
Die schicke Menü DropDown-Animation von MenuMatic stach mir schnell ins Auge und so suchte ich nach Möglichkeiten, die Mootools-Klasse für Joomla! 1.5.X tauglich zu bekommen.

MenuMatic von greengeckodesign (Jason J. Jaeger) ist eine auf  SuckerFish und Mootools basierende JavaScript-Applikation. Das heißt, man muss

  1. a) mit verschachtelten Listen das Menü erstellen und
  2. b) die Mootools-Bibliothek in der richtigen Version einbinden.Media 65 Menü-Modul für Joomla 1.5.X - Screenshot Backend

 

a) realisiert man am besten mit dem Media 65 Joomla Menu Module (Registrierung für Download notwendig). Im Gegensatz zum "herkömmlichen" mod_mainmenu hat man noch weitere Möglichkeiten, IDs und Klassen für CSS zu definieren (siehe Screenshot):

<ul class="menu" id="ptm-nav">
  <li class="current"><a href="#"><span>Startseite</span></a>
  <ul>
    <li><a href="#"><span>Joomla!-Lizenz</span></a></li>
    <li><a href="#"><span>Mehr über Joomla!</span></a>
    <ul>
      <li><a href="#"><span>FAQ</span></a></li>
    </ul>
    </li>
  </ul>
  </li>
  <li>[...]</li>
</ul>

So sollte die Struktur aussehen, wenn die "klassische" Suckerfish-Syntax (Suckerfish- Dropdowns by D. Griffiths and D. Webb )angewendet wird.

b) ist etwas tricky, da Joomla! - derzeit  in Version 1.5.10 - Mootools in der Version 1.11 verwendet und MenuMatic die Version 1.2 verlangt.

Nun sollte man nicht einfach die vorhandene Bibliothek [joomla-root]/media/system/js/mootools.js ersetzen, sondern dern Core möglichst in Ruhe lassen, damit 1. die Funktion und 2. die Updatefähigkeit des Systems erhalten bleibt. Abgesehen davon wird an verschiedenen Stellen berichtet, dass ein Adhoc-Upgrade auf Mootools 1.2 Probleme mit dem Backend-Menü verursacht.

Aus diesen Gründen lassen wir die originale Mootools-Bibliothek von Joomla! in Ruhe und beschränken uns ausschließlich auf die Integration in das Template. Auf der Grundlage dieser Anleitung gehen wir die Sache an:

  1. [joomla-root]/templates/[mein-template]/js/mootools-1.2.1-core.js
  2. [joomla-root]/templates/[mein-template]/js/mootools-1.2-more.js
  3. [joomla-root]/templates/[mein-template]/js/mootools-compact-core.js
  4. [joomla-root]/templates/[mein-template]/js/mootools-compact-more.js
  5. [joomla-root]/templates/[mein-template]/js/mootools-compact-custom.js
  • Da aber mit dem Befehl <jdoc:include type="head" /> im Template (index.php) u.a. die Joomla-eigene Mootools-Bibliothek eingebunden wird, muss dieser Aufruf unschädlich gemacht werden. Dazu benötigen wir einige PHP-Aufrufe:


zuerst "head" ganz nurmal einbinden:

        <jdoc:include type="head" />

 

danach die Einbindung von mootools.js verhindern:

<?php
/* --- This removes any default Scripts from the Header Buffer --- */
$header = $this->getHeadData();  // Get the current HEAD buffer
$header['scripts'] = array();    // Clear all current 'scripts' entries
$this->setHeadData($header);     // Update the HEAD buffer
/* --- We add the MooTools Framework manually, see below --- */
?>

 

zuletzt die eigenen Klassen für Mootools 1.2.1 "manuell" einbinden:

<script type="text/javascript" src="/<?php echo $this->baseurl ?>/templates/↵
<?php echo $this->template ?>/js/mootools-1.2.1-core.js"></script>
<script type="text/javascript" src="/<?php echo $this->baseurl ?>/templates/↵
<?php echo $this->template ?>/js/mootools-1.2-more.js"></script>
<script type="text/javascript" src="/<?php echo $this->baseurl ?>/templates/↵
<?php echo $this->template ?>/js/mootools-compact-core.js"></script>
<script type="text/javascript" src="/<?php echo $this->baseurl ?>/templates/↵
<?php echo $this->template ?>/js/mootools-compact-more.js"></script>
<script type="text/javascript" src="/<?php echo $this->baseurl ?>/templates/↵
<?php echo $this->template ?>/js/mootools-compact-custom.js"></script>

 

Damit haben wir die Grundlagen für MenuMatic abgeschlossen.

Zuguterletzt muss MenuMatic selbst eingebunden anhand einer Instanz der Klasse zum Arbeiten bewegt werden:

<!-- Load the MenuMatic Class -->
<script language="JavaScript" type="text/javascript" src="/↵
<?php echo $this->baseurl ;?>/templates/<?php echo $this->template ;?>↵
/js/MenuMatic_0.68.2.js"></script>
<!-- Create a MenuMatic Instance -->
<script type="text/javascript" >
window.addEvent('domready', function() {
var myMenu = new MenuMatic();
});
</script>
</body>
</html> 

Im Beispiel wird mit Absicht die Version MenuMatic_0.68.2.js verwendet.
Mit der aktuellen Version MenuMatic_0.68.3.js ließ sich das Script leider nicht zur Mitarbeit überreden.

Ich hoffe, die Anleitung hilft dem ein- oder anderen weiter. Über Resonanz freue ich mich.


Warning: count(): Parameter must be an array or an object that implements Countable in /usr/www/users/w007a7e8/germanis.de/public_html/templates/gk_creativity/html/com_k2/templates/default/category_item.php on line 122
weiterlesen ...

Die Joomla! 1.0 Sicherheitslücke (und was man dagegen unternehmen kann)

Verräterisches Layout - der Joomla-Adminbereich verrät die Verwendung von Joomla! 1.0Es pfeifen die Spatzen längst von den Dächern - die alte Joomla!-Version ist nicht mehr sicher. (siehe z.B. joomla.de)

Eine XSS-Lücke (Cross-Site-Scripting) der Kernkomponente com_search (die Volltextsuche) wurde bekannt.

Sämtliche Joomla!-Versionen der 1.0.x-Serie sind davon betroffen.

Da Joomla! 1.0 nicht mehr supportet wird (es gibt keine Patches mehr), rät man von offizieller Stelle zu einer Migration auf die Version 1.5.

Das ist nachvollziehbar, da Joomla! bereits seit Januar 2008 mit der Nachfolgeversion 1.5 das Ende der alten Serie eingeläutet hatte. Im Juni 2009 wurde dann offiziell der Support für Joomla 1.0 beendet (EOL).

Wer - aus welchen Gründen auch immer - heute immer noch mit Joomla! 1.0.x arbeitet, sollte spätestens jetzt einen Umstieg planen und ganz oben auf die Prioritätenliste setzen.


Warning: count(): Parameter must be an array or an object that implements Countable in /usr/www/users/w007a7e8/germanis.de/public_html/templates/gk_creativity/html/com_k2/templates/default/category_item.php on line 122
weiterlesen ...
Diesen RSS-Feed abonnieren
Warning: count(): Parameter must be an array or an object that implements Countable in /usr/www/users/w007a7e8/germanis.de/public_html/templates/gk_creativity/html/com_k2/templates/default/category.php on line 191
Um unsere Webseite für Sie optimal zu gestalten und fortlaufend verbessern zu können, verwenden wir Cookies. Durch die weitere Nutzung der Webseite stimmen Sie der Verwendung von Cookies zu. Weitere Informationen zu Cookies erhalten Sie in unserer Datenschutzerklärung.
Zustimmen Ablehnen