blattertech informatikLukas BlatterNiederlenzerstrasse 21
5600 Lenzburg/AGSwitzerland

079 569 25 90
https://www.blattertech.ch

Adresse anzeigen

Blog

Smarty: Systempfad

23. Januar 2017 |  CMS MADE SIMPLE |  SNIPPLETS |  SMARTYKommentare (0)

Für diverse Operationen mit Dateien benötigt es den Systempfad und nicht die URL. Wenn aber nur die URL zur Verfügung steht, muss dies zuvor in den Systempfad umgewandelt werden.

Dies lässt sich mit Smarty3-Bordmitteln schnell und effizient erledigen, und bedarf keines eigenen Plugins. Die URL sei dabei in der Variable $iurl enthalten (z.Bsp. https://www.domain.net/uploads/images/logo1.gif)

{$ipath = "{$smarty.server.DOCUMENT_ROOT}{$iurl|parse_url:$smarty.const.PHP_URL_PATH}"}

Ausgabe der Variable mit {$ipath}

/users/w1234567/www/uploads/images/logo1.gif

Quelle forum.cmsmadesimple.de


Smarty: Exif-Daten von Bildern auslesen und anzeigen

19. Januar 2017 |  SMARTY |  SNIPPLETS |  CMS MADE SIMPLEKommentare (0)

Will man zu einer Gallery Detaildaten zu den Bilder wie Auflösung, Brennweite und Belichtungsdauer bis hin zu den GPS-Koordinaten uvm. anzeigen, so kann dies mit der PHP Funktion exif_read_data() umgesetzt werden. Diese Funktion liest sämtliche vorhandenen Exif-Daten eines Bildes aus und liefert sie in einem Array zurück. Die Exif-Daten sind die Meta-Daten der Bilder.

In CMS Made Simple wird dies wie folgt eingebaut

{$exif = exif_read_data({$ipath}, 'IFD0')}

Hinter $ipath verbirgt sich der Systempfad des Bildes, NICHT die URL. Wie eine URL in den Systempfad konvertiert werden kann, ist hier beschrieben: https://www.cmsmadesimple.de/forum/view … hp?id=4963

Vor dem praktischen Einsatz solltet ihr allerdings eure Bilder prüfen, welche EXIF-Daten vorhanden sind. Diese sind zwar grundsätzlich standardisiert, aber da hat jeder Kamera-Hersteller so seine eigenen Vorstellungen, was geschrieben wird.


Linktipp 12

26. November 2012 |  LINKTIPP |  CSS |  JQUERY |  PHP |  SNIPPLETS |  COMPUTER |  CMS MADE SIMPLEKommentare (0)

Unter Linktipp veröffentliche ich in unregelmässigen Abständen einige interessante Links welche mir über den Weg gelaufen sind:

Mehr Windows 8 Apps im Store finden – Ländersperre deaktivieren
Wer Windows 8 installiert hat und im Appstore nach neuen Apps suchte, hat sich sicher auch schon über die kleine Auswahl gewundert. Diese Auswahl ist einer kleinen Option geschuldet. Mit der Ländersperre "Apps in der bevorzugten Sprache schneller finden" schränkt man den Appstore derzeit komplett ein und findet die wirklich guten Apps nicht mehr.

Versehentlichen Datenverlust in HTML-Formularen verhindern
Sebastian Klüh hat in seinem Blog ein einfaches jQuery Snippet veröffentlicht, mit welchem der versehentlichen Verlust von Formulardaten verhindert werden kann.


Bilder für einen Slider / Gallery direkt mit Smarty auslesen

4. Oktober 2012 |  SMARTY |  SNIPPLETS |  CMS MADE SIMPLEKommentare (0)

Statt die für einen Slider benötigten Bilder mit einem Plugin oder einem UDT zu ermitteln, kann dies auch mit reinen Smarty-Funktionen erledigt werden. Mit der PHP Funktion "glob" kann der Inhalt eines Ordners gefiltert nach Dateiendung durchsucht werden.

{assign var='slider' value='uploads/slider/*.jpg'|glob}
{capture}{$slider|@shuffle}{/capture}
{foreach from=$slider item='one' name=oneitem}
<div><img src='{root_url}/{$one}' width='852' height='100' alt='' /></div>
{/foreach}

Linktipp 9

19. September 2012 |  LINKTIPP |  JQUERY |  PHP |  SNIPPLETS |  WEBDESIGN |  CMS MADE SIMPLEKommentare (0)

Unter Linktipp veröffentliche ich in unregelmässigen Abständen einige interessante Links welche mir über den Weg gelaufen sind:

Die ganz normale Praxis der Folter
Das Journal21 hat einen Hintergrundbericht zum Thema Folter veröffentlicht der die erschreckende Fakten wie, wo und warum auch von den USA gefoltert wird.

CSS Arrow Please
Mit diesem Dienst lassen sich Sprechblasen in CSS3 sehr einfach erstellen. (via @cyon)


Linktipp 7

11. September 2012 |  LINKTIPP |  SONSTIGES |  PHP |  SNIPPLETSKommentare (0)

Unter Linktipp veröffentliche ich in unregelmässigen Abständen einige interessante Links welche mir über den Weg gelaufen sind:

Mülltonnen mit Internetanschluss
Interessant welche sinnvollen Anwendungen es für Alltagsgegenstände mit Internetanschluss gibt. Die Mülltonnen werden mit Solarstrom betrieben und haben eine eigene Müllpresse welche die Kapazität von 60 auf 700 Lt erhöht. Per Internetanschluss wird der Füllstand regelmässig gemeldet. Somit können die Touren perfekt darauf abgestimmt werden.


Linktipp 4

23. August 2012 |  LINKTIPP |  ECLIPSE |  PHP |  SNIPPLETSKommentare (0)

Unter Linktipp veröffentliche ich in unregelmässigen Abständen einige interessante Links welche mir über den Weg gelaufen sind:

Geschäftsmodell «Versicherung»:
«Versichere möglichst viele Leute möglichst hoch, meide erkennbare Risiken, und wenn dann trotzdem ein Schadenfall eintritt, suche einen (juristischen) Grund, nicht zahlen zu müssen.» (via steigerlegal.ch)


Linktipp 1

1. August 2012 |  LINKTIPP |  SNIPPLETS |  WEBDESIGNKommentare (1)

In den letzten Wochen sind mir einige interessante Links über den Weg gelaufen die ich gerne hier mit euch teile. Teileweise habe ich diese Links durch weitere ergänzt:

PHP Security Cheat Sheet - OWASP
Diese Zusammenstellung ist eine gute Übersicht wie man Sicher in PHP programmiert.


Podcasts mit PHP verwalten

26. Juni 2012 |  PHP |  SNIPPLETSKommentare (4)
Im Moment befasse ich mich gerade mit dem Thema Podcast. Ziel ist es, möglichst einfach mit wenig Aufwand einen Vortrag als Podcast zur Verfügung zu stellen.
Die Idee:
  • Aus den Aufnahmen ein MP3 machen
  • dieses nach einem bestimmten Schema benennen
  • die ID3 Tags mit Inhalten zu füllen
  • Hochladen
  • Ein Cronjob liest das Verzeichnis aus und generiert aus Dateinamen und ID3 Tags einen Podcastfeed

Copyright Link im Footer mit Jahreszahl

10. Januar 2012 |  CMS MADE SIMPLE |  SNIPPLETS |  SMARTYKommentare (0)

Die meisten Webseiten enthalten einen Footer mit einem Copyright. Ist in diesem eine Jahreszahl enthalten, so sollte diese auch aktuell gehalten werden. Hier eine Lösung wie dies mit Smarty sehr einfach gelöst werden kann:

<p>&copy; copyright 2010 - {'Y'|date}, <a href="http://www.blattertech.ch">blattertech informatik</a>, alle Rechte vorbehalten.</p>

CMSMS: Automatisch Seiten-Urls generieren

4. Januar 2012 |  SNIPPLETS |  CMS MADE SIMPLEKommentare (1)

In CMS Made Simple gibt es die Möglichkeit einer Seite eine individuelle Seiten-URL zuzuweisen. Dies ist praktisch, da ein Alias eindeutig sein muss und somit eine Seite nur eine kontakt.htm aufweisen kann. Mittels der Seiten-URLs können so mehrere kontakt.html erstellt werden.

Hier ein Beispiel einer solchen Konfiguration:


Array Keys mit implode zu einem String umwandeln

29. November 2011 |  PHP |  SNIPPLETSKommentare (3)

Gerade eben wieder mal Array Keys mit implode in einen String umwandlen müssen. Bevor ich die sehr einfache Lösung wieder vergesse und sie das nächste Mal suchen muss:

implode("|",array_keys($array));

Damit werden alle Keys des Arrays mit einem | Pipe getrennt in einen String geschrieben.


Facebook, Google+ und Flattr Buttons mit AdBlock Plus blockieren

23. November 2011 |  SNIPPLETSKommentare (2)

Facebook wie auch Google sammeln mit ihren Like Boxen Informationen von Internet Benutzern. So werden von jeder Seite auf der solche Buttons eingebaut sind, Daten an diese beiden Firmen geschickt. Mit AdBlock Plus im Firefox kann dies einfach unterbunden werden:


Smarty: Ein String mit explode in ein Array umwandeln

4. November 2011 |  SMARTY |  SNIPPLETS |  CMS MADE SIMPLEKommentare (2)

Mit der PHP Funktion explode kann ein String mittels eines Trennzeichens in ein Array umgewandelt werden. Ein Beispiel:

$string = "Apfel,Birne,Feige,Pflaume";

In diesem String ist das Trennzeichen das Komma. Somit wird mit explode ein Array mit 4 Einträgen erstellt. In Smarty umgesetzt sieht dies so aus:


CMSMS: Gallery Ordner auslesen und mit einem Dropdown zur Auswahl geben

21. Oktober 2011 |  SNIPPLETS |  CMS MADE SIMPLEKommentare (9)

Vor ein paar Monaten erstellte ich eine Webseite welche vorallem aus einer Gallery besteht. Die einzelnen Galerien wurden auf einzelnen Seiten eingebunden. Damit dies möglichst einfach möglich ist, habe ich ein Plugin für AdvancedContent geschrieben, welches die Gallery-Ordner ausliest und als Dropdown zur Verfügung stellt.

Als erstes in den Ordner ./plugins folgende Datei laden:

function.getGalleryTree.php:


PHPDoc Blöcke in Eclipse automatisch einfügen

5. Oktober 2011 |  ECLIPSE |  PHP |  SNIPPLETSKommentare (0)

Bisher habe ich meine PHP Funktionen/Klassen mehr schlecht als recht dokumentiert. Nach einem längeren Gespräch mit einem Kollegen über Sinn und Unsinn von guter Dokumentation, habe ich mich auf die Suche gemacht, wie dies in Eclipse am einfachsten umsetzbar ist.

Eclipse hat dazu eine ganz einfache Funktion, welche den PHPDoc Syntax einfügt. Folgende Zeichenfolge eingeben und danach Enter drücken.

/**

Eclipse fügt damit folgendes ein:


Nützliche Eclipse Kurzbefehle

28. September 2011 |  ECLIPSE |  SONSTIGES |  PHP |  SNIPPLETSKommentare (0)

Es gibt verschiedene Tools um PHP zu entwickeln. Mein bevorzugtes Tool ist Eclipse. Hier stelle ich ein paar Kurzbefehle vor, welche die Arbeit mit Eclipse beschleunigen:

Ctrl+Shift+L
Mit diesem Befehl werden alle Kurzbefehle aufgelistet

Ctrl+K
Zur nächsten gleichen Zeichenfolge springen.


Metadaten unter Typo3 anzeigen

20. September 2011 |  SNIPPLETS |  TYPO3Kommentare (0)

Vorhin gefragt worden, wie denn die Metadaten, welche unter "Metadata" eingegeben werden, angezeigt werden können.

Typo3 Metadaten eingeben

Dazu gibt es ein einfaches Snipplet:


CMSMS: Zeilenumbrüche in Menüpunkten

17. September 2011 |  SNIPPLETS |  CMS MADE SIMPLEKommentare (0)

Ab und an wird im Forum wieder danach gefragt, wie einem Menü-Eintrag ein Zeilenumbruch hinzugefügt werden kann. Wird im Menütext ein <br /> eingefügt, so wird dieses genau so wie in diesem Text angezeigt, statt einen Zeilenumbruch einzufügen.

Die Lösung: Im Menütemplate


2 Klicks für mehr Datenschutz

6. September 2011 |  JQUERY |  SNIPPLETS |  WEBDESIGNKommentare (1)
2 Klicks für mehr Datenschutz

2 Klicks für mehr
Datenschutz

Heise.de hat vor kurzem ein jQuery Plugin für mehr Datenschutz bei Socialmedia Buttons veröffentlicht.

Das Plugin bindet die Socialmedia Buttons von Facebook, Twitter und Google+ erst auf den ausdrücklichen Wunsch des Nutzers ein.


Redirect UDT

3. September 2011 |  CMS MADE SIMPLE |  SNIPPLETSKommentare (2)

Calguy hat heute ein Snipplet veröffentlicht, mit welchem man Redirects Einfach in eine Webseite einbauen kann.

if( isset( $params['to'] ) )
  {
    global $gCms;
    $manager =& $gCms->GetHierarchyManager();
    $node =& $manager->sureGetNodeByAlias($params['to']);
    $content =& $node->GetContent();
    if (isset($content) && is_object($content))
       {
         if ($content->GetURL() != '')
         {
            redirect($content->GetURL());
         }
       }
    else return '<!-- redirect udt - page not found: '.$params['to'].' -->';
  }

Nun kann man z.B. mittels if / else Abfragen festlegen auf welche Seite weitergeleitet wird. (Achtung: Das UDT sollte nicht direkt ohne if / else Abfrage ins Template eingefügt werden, da dies sonst zu einem Loop führen könnte)


Facebook und Google+ Buttons ohne direkte Einbindung

1. September 2011 |  WEBDESIGN |  SNIPPLETS |  JQUERYKommentare (0)

Facebook und Google+ Buttons sind aus der Sicht des Datenschutzes bedenklich. Ein weiterer Grund der gegen die direkte Einbindung dieser Buttons spricht, ist die Preformance welche rapide sinkt. Behelfen kann man sich mittels eines statischen Buttons der bei Klick den "richtige" Facebook oder Google+ Button nach lädt.

Folgende 2 Seiten haben hierzu interessante Anleitungen geschrieben:

Andiministrator Facebook / Google+
Media-Deluxe (Google+)


HTML5Pattern

31. August 2011 |  SNIPPLETS |  WEBDESIGNKommentare (0)

Eine interessante Anwendung von HTML5 ist das "Pattern" Attribut welches für Input Felder eingesetzt werden kann. Damit lassen sich mit regulären Ausdrücken die Eingaben in einem Feld überprüfen und auswerten. Auf der Seite HTML5Pattern sind diverse Beispiele dazu veröffentlicht. Ein Beispiel daraus:


Yahoo! Webplayer

6. August 2011 |  SNIPPLETS |  WEBDESIGNKommentare (0)

Yahoo! hat mit dem Webplayer ein sehr einfach zu nutzendes Tool geschaffen, mit welchem Mp3, Videomaterial oder auch youtube Videos in die eigene Webseite integriert werden kann.

Yahoo! Webplayer

Der Player wird wie folgt eingebunden:


Conditional HTML Class

25. Juli 2011 |  SNIPPLETS |  WEBDESIGNKommentare (0)

Der Internet Explorer (IE) ist dafür bekannt, dass er einige HTML oder CSS Befehle anders umsetzt oder z.T. gar nicht kennt. Microsoft hat für mit den Conditional Comments eine Möglichkeit geschaffen, einfach die verschiedenen Browserversionen zu erkennen. Diese Möglichkeit lässt sich nutzen, um ohne die üblichen CSS Hacks einen einem sauberen CSS Code zu schreiben. Zuerst wird die entsprechende IE Version gecheckt und anschliessen die entsprechende Version als class dem HTML Tag zugewiesen. Um nun eine bestimmte IE Version anzusprechen, muss im CSS nur der entsprechende Parent-Selektor eingefügt werden (Bsp: .ie6 .box).