Web Umzug

Ich hab mir jetzt endlich einen eigenen Root Server (bei netcup.de) geholt. Jetzt geht es los. Dienst für Dienst wird auf den neuen Server umgezogen.

Folgende Dienste laufen bereits auf dem neuen Webserver:

  • tuppersusi.de (wordpress)
  • cloud.sgr.cc (nextcloud)
  • piwik.sgr.cc (piwik)
  • pma.sgr.cc (phpmyadmin)

Alles schön per HTTPS und IPv4 & IPv6. Alles drei war und ist mein Haupt Umzugsgrund. Domain und DNS Verwaltung läuft weiterhin und zukünftig auch vollständig via inwx.

Das einzige was ich definitiv nicht selber hosten werde sind und bleiben E-Mails. Im Moment habe ich dafür einen uberspace am laufen der alle E-Mails entgegennehmen kann und entsprechend weiterleiten bzw. ablegen kann. Ein Hoch auf uberspace.

Werde voraussichtlich noch ein Jahr bei All-Inkl bezahlen um dann 2017 in Ruhe komplett alles umzuziehen.

Ubuntu mit root shell sind eindeutig besser als jeder Webspace dieser Erde. Außerdem ist es deutlich schneller als alles andere was ich bisher hatte.

Neues kleines mini Projekt

Ich gehe jeden Mittwoch Abend mit Freunden zum Essen. Mal gefällt es uns besser mal schlechter. Nachdem wir das ab sofort nicht mehr für uns behalten wollen wo in und um Augsburg es uns gut bzw. nicht so gut gefallen hat gibt es ab sofort ein kleines neues WordPress-Blog dafür.

Bild eines Essens
CC BY-NC-SA 2.0 by eulenfan@flickr

Viel Spaß beim durchstöbern im Moment läuft das System noch unter einer Subdomain, sobald der Name endgültig feststeht, gibt es dafür auch eine eigene Domain.

http://food.sgr.cc

 

Ulitmate Cookie Clickers Upgrade Calculater by Smeagol

Ein neues kleines Javascript Tool.

Worum geht es?

`Cookie Clickers` ein kleines Spiel von redBit games. Der Sucht Faktor bei diesem Spiel ist nicht zu unterschätzen.

Jedenfalls kann man sich dabei Upgrades kaufen (nur mit Cookies, die man erspielt). Mit diesen Upgrades bekommt man CPS (Cookies per Second) um weitere Cookies zu bekommen um sich weitere Upgrades kaufen zu können. Jedes Upgrade wird mit immer höherem Level immer um das 1.3 fache teurer.

Also habe ich mir gedacht „welches Upgrade ist denn jetzt das beste“? Also wo ist der Faktor Preis pro CPS am niedrigsten.

Nachdem ich Webentwickler bin hab ich mir also erstmal – richtig – eine Spreadsheet gemacht. Naja mit dem Ergebnis war ich unzufrieden also habe ich das ganze nochmal als HTML / jQuery Lösung gebaut.

Dieses kleine Javascript benötigt jetzt nur noch den aktuellen Level eurer Upgrades und schon berechnet es pro Upgrade den Preis pro CPS. Das ganze wird dann im Local-Storage eures Browsers gespeichert und ist somit nur in eurem Browser.

Serverseitig passiert hier rein gar nichts außer das HTML, CSS und JS ausgeliefert wird.

Dank HTML-Kickstart hat das ganze noch eine Sortierbare HTML-Tabelle drumherum. Die von mir automatisch bei document ready erstmal auf Preis pro CPS sortiert wird.

Anschauen und nutzen könnt ihr das Tool ab sofort via cookies.sgr.cc.

Hier noch der Download der HTML/CSS/JS Dateien, CSS/JS ist hauptsächlich von HTML KickStart das Sort-JS ist aber bereits ganz leicht modifiziert. Ebenso drei Zeilen CSS sind von mir.

[download id=“1811″]

Die `cookieklickers.js` ist hingegen komplett von mir. Diese bildet zusammen mit der index.html das Herzstück der Programmierung.

Scheiß Encoding

Nachdem ich heute wiedereinmal fluchend vor serialisierten UTF-8 werten saß, hier mal meine Heutigen Erkenntnisse zum Thema.

UTF-8 sollte einfach immer und überall im Web Standard sein und wer heutzutage noch irgendwas dagegen hat soll mir einen vernünftigen Grund liefern.

Drupal speichert Daten gerne Serialisiert. Also lese ich diese aus und lasse die PHP Funktion unserialize darüber laufen. Problem sobald [ßöäü] drin ist klappte es nicht mehr.

Okay also ein Encoding-Problem. Google hilft nicht wirklich weiter. Empfehlungen welche ich gefunden habe waren folgende.

  • base_64_encode – bevor man in die DB schreibt. [1]
    • klappt nicht, da ich in die Drupal Save nicht eingreifen möchte.
  • irgendwelche magischen preg_replace zum nachzählen der Serialisierten Strings [2]
    • Will ich auch nicht machen, nicht mehr wartbar und außerdem kann ich dann nie sicher sein das die Daten in der Datenbank korrekt sind.

Ergebnis war das ich analysiert habe wie (also mit welchem Encoding) Drupal auf die Datenbank zugreift. Ergebnis hier war „natürlich“ UTF-8.

Nun mein Datenlese-Tool greift per mysqli ohne genau definiertes Encoding darauf zu. Somit holt sich mein Tool die Daten in ISO-irgendwas.

Damit hat mein eingelesener Beispiel String: „Scheiß Encoding“ eine länge von 15. Nun steht aber in der Datenbank der Serialisierte Wert: s:16:"Scheiß Encoding"; dieser Umstand bringt unserialize dazu mit E_NOTICE abzustürzen und einfach nur FALSE zu liefern.

Datenbankverbindung via mysqli::set_charset('utf8') auf UTF-8 gestellt und magic, schon funktioniert alles wunderbar.

[1] http://blog.emeidi.com/2012/07/16/phps-serialize-und-unserialize-funktion-mit-unicode-problemen
[2] http://www.php.net/manual/en/function.unserialize.php#107886

Internet Explorer – Absturz!

Ich habe da mal ein kurzes HTML/CSS was ich euch nicht vorenthalten möchte.

<html>
  <head>
    <style type="text/css">
      #a {
        margin:0 10px 10px;
      }
      #b {
        width:100%;
      }
    </style>
    <title>IE Crasher</title>
  </head>
  <body>
    <table>
      <tr>
        <td>
          <div id="a">
            <form id="b">
            <input type="text" name="test"/>
          </div>
        </td>
        <td width="1"></td>
      </tr>
    </table>
  </body>
</html>
 

Und wie im Title des HTMLs schon steht bringt diese Seite jeden aktuellen (Stand 17.10.2012 – Tested only in IE9) Internet Explorer zum Absturz, ganz ohne Javascript o.ä. Magie. Einfach nur noch witzig. Daher nutzt einen Browser und nicht den Internet Explorer. (Leider) immer wieder erwähnenswert.

Testen könnt ihr das gerne hier: http://dev.sgr.cc/ie.html

Umstellung vollbracht Piwik!

Ich habe heute mal schnell von Google Analytics auf Piwik umgestellt. Was das für dich heißt? Du kannst jetzt jederzeit das Aufzeichnen deiner Besuche unterbinden. Wie? Ganz einfach geh ins Impressum meiner Website und klicke auf die Piwik Einstellung.

Was ändert sich noch?

Google Analytics ist komplett ausgesperrt d.h. es werden keine Daten mehr an Google gesendet. Die Daten werden nun auf meinem eigenen Piwik Server gespeichert.

Im Impressum brauch ich jetzt keinen Google Analytics Disclimer mehr. Die Detaildaten bekomme ich immer noch, ohne eure IP Adresse weitergeben zu müssen.

Warum gerade Piwik?

Weil es Open Source ist. Weil es bei mir auf dem Server läuft. Weil ich damit die Kontrolle habe wer, wo und wie die Daten verwendet werden. Z.b. Speichere ich keine Vollen IP-Adressen. Diese werden umgehend Anonymisiert.

Warum nicht gleich so?

Weil Google Analytics einfacher war. Ohne etwas eigenes Installieren zu müssen. Ich war einfach in dem Punkt zu faul. Jetzt aber wird alles besser 🙂

Wo werden die Daten jetzt gespeichert?

Ganz einfach auf meinem Webspace bei All-Inkl.com, somit auf Deutschen Servern. Somit müssen die Daten nach Deutschem Datenschutzgesetz behandelt werden. Nicht mehr nach Google-Datenschutz 🙂

Viel Spaß weiterhin auf meiner Website.

Dominion – Eine Ranglisten App / Version 0.2.3

Guckma da, ich bin über einen Blogeintrag gestolpert der nichts mit Politik, Technik o.ä. zu tun hat. Nein, er hat etwas mit meinem Lieblingsspiel zu tun. Dominion. Für die paar unter euch die es noch nicht kennen Kurz erklärt. Es ist ein tolles Karten/Brett – Spiel, aber Achtung es besteht schnellste Suchtgefahr.

So weiter im Text, wie bei vielen Spielen gibt es auch bei Dominion Punkte. Also Zahlen 🙂 . Jedenfalls können diese je nach Spiel ziemlich unterschiedlich sein, mal Gewinnt man eine Partie mit nur ca. 20 Punkten andere Spiele gehen mit über 50 Punkten verloren.

Wie bin ich damit auf einen Blog gestoßen. Na ja jetzt ergibt sich ja das offensichtliche Problem das man nur anhand der Punkte keine Ordentliche bzw. Faire Rangliste über mehrere bzw. viele Spiele erstellen kann. Somit sieht man eigentlich „nie“ wer in diesem Spiel im Freundes/Bekannten/Familien-Kreis nun der/die Beste ist.

Somit hab ich mich „tot-gegoogelt“ und gesucht und gesucht. Nun ich habe was gefunden was mir sehr schnell zugesagt hat. Und zwar folgendes: Dominion als Ligaspiel « Die Gedanken des Hollarius. Ein angeblich einfach in ein Sheet zu implementierendes Punktesystem.

Also habe ich mich hingesetzt und versucht das ganze in den Calc rein zu tippen. Aber irgendwie wollte das alles nicht gelingen, so viele Berechenbare Sachen sind da doch drin. Alles nur einfache Mathematik, das muss doch gehen…. So sahen die Gedanken aus. Nach dem fünften komplett neu Ansatz habe ich dann auf das bekannte „X“ geklickt und dann auf „Nicht Speichern“ weil? Weil ich eine „bessere“ Idee hatte. „Dominion – Eine Ranglisten App / Version 0.2.3“ weiterlesen

2 Klick Button [V 1.4] – [discontinued] – Weiterentwicklung eingestellt!

[UPDATE 03.08.2012]

Dieses Plugin wird nicht mehr aktualisiert werden! Der Aufwand ist zu hoch und es gibt bessere Plugins die fast das gleiche bzw. deutlich mehr Leisten.

Meine persönliche Empfehlung:

http://wordpress.org/extend/plugins/2-click-socialmedia-buttons/
http://ppfeufer.de/wordpress-plugin/2-click-social-media-buttons/

Das einzige was passieren könnte ist das „mein Plugin“ als Version 2.0 als „Kopie“ von ppfeufer’s genialen Plugin mit einer extra Funktion erscheinen wird. Voraussichtlich wohl Mitte September falls das Plugin nicht seinerseits um die Kategorie-Ausschluss-Funktion erweitert wird.


Original Artikel

Vor einiger Zeit hat heise.de einen zwei-Klick-Like-Button-System veröffentlicht. Das ist denk ich vielen Webentwicklern aufgefallen. Nun dementsprechend hat es nicht lange gedauert und schon gab es ein Plugin für WordPress welches genau diesen Code nutzt. So Meine Version für WordPress gibt es als WordPress Plugin hier (wordpress.org). So das Plugin ist toll und gut. Geben tut es dieses im WordPress-Plugin Verzeichnis als „2-Klicks-Buttons“. Möglichkeiten waren mir leider nicht ausreichend, denn ich hätte gerne meine Seiten auch sharen können. So hab ich mir das Plugin angepasst. Weiter ist mir dann aufgefallen das mein Impressum geshared wurde. So war das auch nicht gedacht. Also hab ich mir noch eine Möglichkeit hinzugefügt einzelne Seiten, Artikel o.ä. (Ids) ausschließen zu können. Jetzt hab ich aber noch eine Kategorie auf meinem Blog (auf welchem ich das Plugin nutze), die nur für registrierte User ersichtlich ist. Wenn diese Links geshared werden hilft das vielen anderen nichts. Daher hab ich mir noch die Möglichkeit geschaffen Kategorien ausschließen zu können. Und genau diesen Pluginstand möchte ich hier und heute euch zugänglich machen. Viel Spaß damit. „2 Klick Button [V 1.4] – [discontinued] – Weiterentwicklung eingestellt!“ weiterlesen

WordPress-frage? Google hat die Antwort

Ja, natürlich hat Google selbst fast keine Antworten. Aber was Google findet wenn man es fragt ist immer wieder begeisternd.

Ich habe heute auf einen Blog eine Liste von Artikeln aus genau einer Kategorie auf genau eine Seite ausgeben wollen. Irgendwie habe ich dazu kein Plugin o.ä. gefunden. Aber siehe dank Google findet man jemanden der/die das gleiche Problem hat/hatten. Da WordPress sehr verbreitet ist eignet sich eine Suchmaschine wie Google hierbei sehr sehr sehr gut.
Ein paar Foren und Blogs durchsucht und das gefunden was mich zufrieden gestellt hat: txto.de / Statische Seite X zeigt Beiträge von Kategorie Y an

Die Anleitung hätte sogar mMn ein „leihe“ verstanden daher war es gut und schnell eingebunden.

Meinen endgültigen Code möchte ich euch natürlich auch nicht vorenthalten.
„WordPress-frage? Google hat die Antwort“ weiterlesen