Technik Fu's Blog

Technik Fu's Blog

Mar 30 / 6:20am

Evolution Mirror

This add-on mirrors the addition, deletion or modification of items (tasks or events) in Lightning or Sunbird with the Evolution Data Server. This allows events and tasks added in Sunbird or Lightning to be shown in the Gnome Clock Applet. Note that this is a one way sync only. Events changed in Sunbird or Lightning will be copied to Evolution, but changes made in Evolution will not be reflected in Sunbird or Lightning.

https://addons.mozilla.org/de/thunderbird/addon/9656

Comments (0)

Feb 26 / 3:39am

spam and webmail

I don't have much time right now, so i post only some quotes, maybe later i will do a little more explaining...

 

nano script.sieve

 

require "fileinto";

if header :contains "X-Spam-Flag" "YES" {

fileinto "INBOX/Junk";

}

 

sieveshell --user=USER --auth=USER localhost

 

>put script.sieve

>activate script.sieve

>quit

 

Fu

Comments (0)

Feb 23 / 3:31pm

keep your code clean

or stuff like this will happen...

(download)

Comments (0)

Feb 23 / 3:20pm

run in terminal

echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc

Comments (0)

Feb 23 / 2:09pm

DBI:Sybase und $sth->bind_param

Leider scheint die Version von MSQL, welche ich heute zusätzlich zu MySQL verwenden musste, so alt zu sein, dass der Sybase Treiber nicht mit

$sth->bind_param

umgehen kann. Eine Alternatve musste her, also habe ich mich kurzer Hand dazu entschlossen via $dbh->get_info(17); den SQL_DBMS_NAME, also den Typ der Datenbank, zu ermitteln und im Falle von Sybase auf $sth->bind_param zu verzichen. Leider musste ich nun das Suchen und Ersetzen der Platzhalter und das Quoten der Parameter zu Fuß zu erledigen.

Gesagt getan und $dbh->quote($value); ausgegraben um zu quoten. Leider hat dies dann auch zur Folge, dass Zahlen auch mit ” versehen werden – was jetzt nicht ganz so nützlich ist. Also vorab noch ein Check ob

$value =~ /^[0-9\.]+$/

denn bei Zahlen können wir uns das Quoten sparen ;)

Das Suchen und Ersetzen spare ich mir jetzt mal zu erklären, da der geneigte Perl-Versteher sich sonst vollends langweilt.

Fu

Filed under  //  DBI   MSQL   MySQL   Perl   Sybase  

Comments (0)

Feb 23 / 2:04pm

HTTP header via Perl

Eigentlich “basics”:

print “Content-type: text/html\n\n”;

aber trotzdem gibt es ein paar interessante Dinge zu beachten:

  1. “Field names are case-insensitive.”
  2. “The order in which header fields with differing field names are received is not significant.”

Siehe: http://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html

Daraus ergeben sich ein paar spannende Möglichkeiten Header in einem Perl-MVC-Framework zu erzeugen.

  1. man nehme einen Hash, der ggf. in einem Singleton Pattern (oder was man sonst so zur Hand hat) lebt, um message-header zu speichern
  2. field-name wird als Hash-Key verwendet und zuvor mittel lc bearbeitet (HTTP header sind ja case-insensitive), damit es keine doppelten Header gibt, falls jemand Content-Type statt Content-type verwendet
  3. field-value ist der Hash-Value
  4. bevor man mit der Ausgabe der Inhalte startet, haut man nun einfach den Hash in beliebiger Reihenfolge via print an STDOUT
  5. print $key .’:’. $value .”\n”;
  6. der letzte print sollte “\n\n” enhalten
  7. fertig ist der HTTP header via Perl

Fu

Filed under  //  HTTP   Perl   header  

Comments (0)

Feb 23 / 1:54pm

Image::Magick write stdout: “malformed header from script”

Ausgangsituation stellt sich so, oder ählich dar:

my $magick = new Image::Magick( size => ‘100×100′ );
$magick->ReadImage(‘xc:white’);
$magick->Annotate(text => ‘Hallo Welt!’);
binmode STDOUT;
print “Content-type : image/jpeg\n\n”;
print $magick->Write( “jpeg:-” );

Leider erzeugt dieses Beispiel mitunter folgende Meldung:

malformed header from script

Abhilfe schafft ein

use FileHandle;
autoflush STDOUT 1;

vor dem ersten print, denn:

print is a buffered write while Write() is not – so the output of print
needs to be flushed prior to the Write()

Fu

Filed under  //  Image::Magick   Perl   Programmieren   header   malformed  

Comments (0)

Feb 18 / 4:51pm

invalid markup

hm, ob das so gut ist?
http://validator.w3.org/check?verbose=1&uri=http%3A%2F%2Fwww.einfach-fuer-all...

gerade von denen hätte ich wenigesten valides html erwartet...

oder zumindest valides css
http://jigsaw.w3.org/css-validator/validator?profile=css21&warning=0&uri=http...

aber nichtmal das scheint man zu beherrschen...

Filed under  //  css   html  

Comments (0)

Feb 18 / 2:58pm

wordpress.com

The show must go on, so we display another error message?
Even if wordpress is available for free, they offer paid services, so i
really think that stuff like this is not acceptable... This is a big
dot-com company!

Snapshot2

Filed under  //  fun   wordpress  

Comments (0)