Donnerstag, 4. November 2010

HN Mensa Essensplan als RSS

So hier kommt mein neustes Script. Der HS-Heilbronn Essensplan.

Wer an der HS-Heilbronn studiert weiß,
dass der Essensplan zwar im Internet auf http://www.studentenwerk.uni-heidelberg.de befindet. Jedoch kann man den Essensplan nicht als RSS, Atom oder ähnlichen abonnieren.

Dies erledigt nun mein Script. Das generierte Feed kann unter:
http://www.thomas-wollmann.de/sonstiges/essenRSS/
Abonniert werden.

Bei Fragen u.o. Bugs freue ich mich über eine E-Mail :)


Viel Spaß damit!

Thomas

Montag, 10. Mai 2010

MSN Plus Jscript - PersonalMessage als Ticker

Um einen kleinen Denkanstoß für Entwickler zu liefern möchte ich ein paar Codeschnipsel vorstellen, die die persönliche Nachricht in MSN nach Wünschen anpassen.

Starten möchte ich mit einem JScript für MSN Plus:

function OnEvent_Initialize(MessengerStart)
{
MsgPlus.AddTimer("timer1", 100);
}

function OnEvent_Uninitialize(MessengerExit)
{
//Messenger.MyPersonalMessage = "";
}

function OnEvent_Timer(timerid)
{
var Started = MsgPlus.DownloadFile("http://URL zu meinem kram");
if(Started)
Debug.Trace("Downloading file, waiting for event");
else
Debug.Trace("Couldn't start the download");

MsgPlus.AddTimer("timer1", 300000);
}

function OnEvent_DownloadFileComplete(Url, OutFile, Success)
{
Debug.Trace("DownloadFileComplete event received for " + Url);
Debug.Trace(" Success: " + Success);
if(Success)
{
Debug.Trace(" Result file path: " + OutFile);
/* Read the file, do what needs to be done */
var fso = new ActiveXObject("Scripting.FileSystemObject");
blpp = fso.OpenTextFile(OutFile,1);
var atext = blpp.readline();
if(atext != "")
{
Messenger.MyPersonalMessage = atext;
}
blpp.Close();
//Delete the temporary file
var File = new ActiveXObject("Scripting.FileSystemObject");
File.DeleteFile(OutFile);
}
}

Zunächst wird ein Timer aktiviert, der quasi sofort das OnEvent_Timer Event auslößt. Nun wird eine Datei von einem Server geladen und der Timer nun auf 5 Minuten gesetzt.
Wenn die Datei runtergeladen ist, wird das OnEvent_DownloadFileComplete Event ausgelöst. Jetzt kann der Inhalt der Datei verarbeitet werden.
In diesem Beispiel wird einfach nur der Inhalt der Datei als persönliche Nachricht gesetzt.
Durch den Timer wird die Nachricht alle 5 Minuten aktualisiert.

Ich verwende zum Sammeln der Daten ein PHP Script auf meinem Server.
Bis jetzt sind mir die Schuldenuhr von Deutschland, ein Landtagswahlticker, eine Wettervorhersage, ein Börsenticker und ein Zitatescript gelungen.

Um z.B. die Temperaturen von heute, morgen und übermorgen in Düsseldorf auszugeben, können die Daten von wetter.de per Socket abgegriffen und verarbeitet werden.
$packet = "GET /wettervorhersage/Wetter-Duesseldorf/Deutschland/e64f033bf5ce13eab84b602dde3b7bd3/layout/drucken HTTP/1.1\r\nHost: www.wetter.de\r\nUser-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.0.1) Gecko/2008070208 Firefox/3.0.1\r\nAccept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\nAccept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3\r\nAccept-Encoding: deflate\r\nAccept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7r\nConnection: Close\r\n\r\n";

$list = get_packet("www.wetter.de", $packet);
$list = substr($list, strpos($list, "table"), strpos($list, "/table"));
$list = explode("", $list);
$clist = count($list);
$i=1;
while($i<$clist) { if(substr_count($list[$i-1],"Mittags") > 1)
{
$text = $list[$i+1];
}
$i++;
}
$text = explode(">", $text);
$heute = strtok($text[2],"<"); $morgen = strtok($text[6],"<"); $umorgen = strtok($text[10],"<"); echo "Düsseldorf - Temp. Heute: ".html_entity_decode($heute)." ; Temp. Morgen: ".html_entity_decode($morgen)." ; Temp. Übermorgen: ".html_entity_decode($umorgen);
Bei Fragen oder weiteren Ideen schreibt mir, was in euren Köpfen vor sich geht.

Samstag, 1. Mai 2010

Greasemonkey Addon: Rapidshare waiter

Habe grade ein kleines Greasemonkey Script gebaut.

Wenn man bei Rapidshare keinen premium Account hat, wird zwischen den Downloads die Wartezeit angezeigt aber nicht aktualisiert. Zum aktualisieren, muss man die Seite neu laden.
Dieses Script zählt die Zeit von selbst runter.
Install Script

Donnerstag, 29. April 2010

mytooltip - dynamische Tooltips in Tabellen

Wenn man versucht für ein Webprojekt ein paar Sprechblasen bzw. Tooltips in einer Tabelle in allen Browsern richtig anzuzeigen, hat man durch diverse Abweichungen des Browsers vom Standard so seine Schwierigkeiten. Gerade, wenn man Ajax Fähigkeiten oder einfach nur dynamisch vergrößernde Tooltips einbauen möchte.

Hier möchte ich einen etwas ungewöhnlichen Ansatz für die Lösung des Problems vorstellen.
Sie wurde bisher im Internet Explorer 6,7,8; Firefox 3.6.3; Safari 4 und Opera 10.52 erfolgreich getestet.


Zur Technik:
In diesem Beispiel werden die Blasen mit dem CSS Attribut "display: none" generiert.
Wenn man nun auf eine Stelle in der Tabelle klickt bzw. mit der Maus drüberfahrt, kann mit den Eigenschaften onclick, onmouseover und onmouseout eine Javascriptfunktion aufgerufen werden.
Diese verschiebt die benötigte Blase zur aktuellen Mauszeigerposition + Offset und macht Sie sichtbar.
Durch erneutes Klicken oder onmouseout kann je nach Wunsch die Blase wieder verschwinden werden lassen.


Demo

Download Demo

Sonntag, 11. April 2010

Python RSAPI 0.3.1 Bug

Anscheinend ist in der Version 0.3.1 der Python RSAPI ein Bug, sodass diese nicht in allen OOo Versionen installiert werden kann.
Da ich aber gerade quasi mitten im Abitur stecke, hab ich im Moment nicht die Zeit mich um den Bug zu kümmern.

Ich bitte darum vorübergehend bei einer älteren Version zu bleiben, die kis-Version oder die original RSAPI.DLL zu verwenden.

Greasemonkey Addon: Youtube watch and add video to Quicklist

Gestern habe ich ein kleines Script für Greasemonkey gebaut, dass auf Youtube beim anschauen eines Videos einen Button neben den Namen eines Videos hinzufügt. Er ermöglicht es das angesehene Video direkt zur Quicklist hinzuzufügen.
Install Script

In Verbindung mit dem Greasemonkey Script Youtube Quicklist QuickAdd hat man sogar die Quicklist Buttons in der Kanalansicht.

Viel Spaß damit!

Samstag, 3. April 2010

Dissertation von meinem Dad endlich online

Mein Vater hat mich gebeten seine Doktorarbeit zu veröffentlichen.
Nun kann jeder sie unter http://www.gerhard-wollmann.de lesen.

Abstrakt: Modellbildung und experimentelle Überprüfung der Floatation in der Batchzelle

Für die Flotation wird ein Modell vorgestellt, das auf hydrodynamischer Grundlage das
Ausbringverhalten des Einzelskorns und des gesamten Aufgabekollektives beschreibt. Es
ermittelt aus der Stoß-, Haft- und Schaumwahrscheinlichkeit die Flotationskenngröße ki
der einzelnen Kornklassen und das zeitliche Massenausbringen m sowohl für
Wertmaterial als auch für die Gangart.

Das Modell wurde in 4, 10 l Batchflotationszellen überprüft.
Radiotracerversuche zeigen gute Übereinstimmung des experimentellen und des
theoretischen Flotationsverhaltens.

Experimente mit nicht entschlämmten Industrieaufgabegut, das aus Flußspat als
Wertmaterial und Baryt und Quarz als Gangart besteht, bestätigen bei unterschiedlichen
Drehzahlen, Luftdurchsätzen, Zellengeometrien, Trübedichten und Oberflächenspannung
das Modell im ganzen.

Samstag, 30. Januar 2010

Sudoku Script - Update

Ich habe die Online Versionen des Sudokuscripts für das Design angepasst.
Außerdem wurden noch technische Kleinigkeiten unter der Haube geändert.

Wenn ihr mal Langeweile habt: Spielt eine Runde Sudoku

Python RSAPI 0.3.1 released

Die Version 0.3.1 ändert nur den Updatepfad des Plugins nach der Serverrenovierung auf den neuen Pfad.

USB ISP-Programmer Bug

Das ist mein ISP-Programmer. Er ist ein 3. Party Atmel Controller Programmer, den es relativ billig im Internet gibt. Er programmiert mit dem STK500 Protokoll.

Leider hat er einige Bugs. Was ein sehr komischer war, der mich beschäftigt hat und welchen ich euch berichte, damit ihr selber nicht solange daran hängt.

Es kann vorkommen, dass wenn man das USB-Kabel des Programmers in den PC steckt, Windows den Treiber neu installiert. Wenn man nun einen Controller programmieren möchte, hat man das Problem, dass man nicht in den Programmiermodus wechseln kann.

In AVR-Studio verwirrt außerdem, dass ein Fusebit auf einen Externen Takt gestellt ist.


Aber wie immer ist die Lösung einfach. Den Programmer im PC gesteckt lassen und einfach mal rebooten, dann ist alles wieder normal. :P

Montag, 25. Januar 2010

Der Blog und sein neues Gesicht

Heute habe ich mich mal dran gemacht das Template für den Blog zu bauen.
Dazu habe ich auf eine Vorlage von NewWPthemes zurückgegriffen, die ich modifiziert habe.
Zusätzlich zum neuen "Look" habe ich versucht die Benutzerfreundlichkeit etwas zu verbessern.

Wenn man schon mal dabei ist alles "chic" zu machen, habe ich auch ein kleines Templatesystem gebaut, dass meine HP in einem einheitlichen Bild erscheinen lässt. Sonst sind nur ein paar Details am Design verändert worden.

Die Links, die sich bei der Umbauaktion geändert haben, habe ich in den einzelnen Posts gleich geändert.

Freitag, 22. Januar 2010

Zitate

Auf meiner HP gibt es, wie einigen vll. schon aufgefallen einen traditionellen Zitat Kasten.
Diese Zitate sind alle möglichen Zitate, die ich gefunden habe. In Büchern, Filmen, Radio, Internet etc.

Nach einigen Anfragen, möchte ich meine Zitatauswahl offenlegen.
Wenn ich was nettes neues finde, kommt natürlich immer was dazu.

Um die aktuelle Zitatliste zu sehen besucht:
http://www.thomas-wollmann.de/sonstiges/zitate

Sonntag, 17. Januar 2010

GOL(Game of Life) fürs Handy

Wie jedes Jahr war ich auch dieses Jahr auf dem Chaos Communication Congress in Berlin. Zwischen den Vorträgen und immer wenn mir langweilig war, hab ich an einer Java Version von Conway's Game of Life gebaut.

Aber was möchte man schon mit einem Solchen Programm? Das hat jeder schon mal für Java gebaut. Ich erinnerte mich an meine Excel Makro Version vom GOL. So viel mir ein, dieses Programm auch für Handys zu Implementieren.

Somit ergab sich aus dieser Pausenbeschäftigung eine kleine Spielerei.


Viel Spaß damit!

Download


Bisher getestet auf verschiedenen Sony Ericsson Walkman Handys

Alte Posts sind drin!

Da nun die wichtigen alten Posts wieder drin sind, kann es mit neuen weitergehen :)

Nebenbei bastel ich noch weiter an der HP.

Donnerstag, 14. Januar 2010

Es macht sich

Die Downloads sind nun wieder auf dem Server.
Es fehlt nurnoch, dass das Updatescript des Python-RSAPI Plugins umgestellt wird. Dazu wird warscheinlich auch eine neue Version kommen.
Die alten Posts krame ich auch so langsam wieder raus ...

Mir fällt bestimmt noch viel Kram ein, den ich noch verbessern kann. :P

Montag, 11. Januar 2010

Neuer Blog

Aus wartungtechnischen Gründen und des Komforts meinerseits habe ich mich entschieden den Blog auf Blogspot auszulagern.
Erstmal werde ich versuchen alte Postings wieder zu reposten. Dann schreibe ich wieder über meine aktuellen Projekte. Da sind schon wieder einige angefallen.

Meinen Webspace selber werde ich in Zukunft auch neugestalten. Lasst euch überraschen.


MfG

Thomas Wollmann