Vefko

Marc Disch Vefko Logos
Logos Vefko

Die letzte Arbeit, die ich für Vefko machte war diese Sponsoren Mappe.

Danach konnte ich leider nichts mehr für Vefko tun. Vielleicht gibt es ein Comeback. Jedoch sehen die Chancen dazu, gering zu sein.

Ich habe vor, aus meinen Beiträgen an die Web Applikation, eine eigene zu machen. Da ich den größten Teil des Codes geschrieben habe, kann ich ein großen Teil der Software, privat einsetzen.

Ich werde irgendwann das Vereins Tool (nur die Hauptfunktionen) gratis anbieten. Da ich im Moment jedoch andere Projekte habe, muss dieses noch warten.

mdisch.ch

Auf meiner Homepage mdisch.ch könnt Ihr mehr persönliches über mich Erfahren.

Ich erarbeite dort so etwas wie eine Biografie. Ich habe heute Nacht einige Arbeiten darauf erledigt. Die Geschichte wurde erweitert, es gibt nun ein Kontaktformular und auch einige Dokumente zur Einsicht.

Ich möchte damit zeigen, dass es in meinem Leben nicht immer Rund lief und wie ich in die jetzige Situation geraten bin. Ich schmücke dort nichts aus und schreibe Klartext. Da es sowieso keine diskrete Privatsphäre mehr gibt und diverse Organisationen auch gegen meine Willen an sämtliche Daten kommen. Habe ich entschlossen das jeder die Möglichkeit haben sollte meine Geschichte zu lesen.

Es ist nicht so, dass ich damit angeben oder mein Leben angenehmer darstellen möchte. Mir ist einfach klar geworden, dass die Freiheit sehr eingeschränkt ist und ich vielleicht einen kleinen Beitrag zur Gleichberechtigung für alle Beitragen kann.

Ich möchte nicht nur irgendwelchen Organisationen mein Leben preisgeben. Sondern die gleiche Möglichkeit für die Allgemeinheit zur Verfügung zu stellen.

Mobile Ansicht

Das eine Homepage auf Smartphones und Tablets separat designet werden muss, ist heute sehr wichtig. Es soll auch auf kleineren Geräten vernünftig aussehen.

Dazu kann in css die unterschiedlichen Eigenschaften aufgrund der Breite des Fensters, definiert werden. Wir definieren also eine Breite, bei der andere css Eigenschaften gelten. Dazu ein kleines Beispiel:

@media screen and (max-width: 480px) {
backgroundcolor: lightblue;
}

Dies bewirkt, dass unter 480px Breit, die Hintergrundfarbe hellblau dargestellt wird.

Es wird empfohlen, mindestens drei verschiedene Varianten einzubauen mit der beschriebenen css Variante.

Der Nachteil dieser Variante ist, die Geräte haben keine einheitlichen Größen und werden auch stets geändert. Deswegen kann es vorkommen, das auf einem Mobile Gerät nicht das gewünschte Design dargestellt wird.

Ich bin eher ein Fan der php Variante. Da kann ein Mobile Gerät erkannt werden. Wir können eine Ansicht für Geräte die nicht als Mobile erkannt werden erstellen und eine für Mobile Geräte. Mit php entscheiden wir, welche css Datei geladen wird.

Bei dieser Variante wird auch sichergestellt, dass Mobile Geräte erkannt werden.

Bei Mobile Versionen einer Homepage, kann es Schwierigkeiten geben. Eine davon ist, dass scrollen. Teilweise erlaubt der Browser das horizontale scrollen. Dies ist meistens jedoch nicht erwünscht. Um das zu fixen, gibt es natürlich viele Möglichkeiten.

Eine mögliche Option ist:

overflow-x: hidden; // hide horizontal

Diese Eigenschaft wird dem body übergeben.

Nachschlagewerkzeug

Ich habe ein Nachschlagewerkzeug für Programmierer die noch am Anfang stehen online. Ich hatte es zuerst auf einer Subdomain von dieser Domain am laufen, habe jedoch zu self.mdisch.ch gewechselt, das Design überarbeitet und mehr.

Leider komme ich nur wenig dazu das Werzeug zu erweitern und es attraktiver zu gestalten. Ich habe auf dieser Website Informationen für den Einstieg ins Backend und ein wenig ins Frontend einer Homepage. Da ich nicht besonders Wert auf die Gestaltung lege (Frontend) ist da auch weniger zu finden und auch meine Erfahrungen halten sich an Grenzen.

Was mich wirklich Interessiert, ist die Sicherheit. Ich versuche mein Wissen im Bereich Web Page Security zu erweitern. Ein wenig meines Wissens, dass ich auch gerne teile, habe ich bereits auf der Homepage eingebaut.

Da ich das in meiner Freizeit mache ist meine Zeit sehr begrenzt und ich komme nur langsam mit den Einträgen hinterher. Bei Fragen oder konstruktiver Kritik könnt Ihr mich gerne kontaktieren.

Serverstatus ausgeben

Mit diesem Skript kann auf einem Server die Verbindungen überprüft werden. In meinem Beispiel habe ich da einfach localhost genommen. Somit habe ich meinen lokalen Server angesprochen. Falls man den Code auf dem online Webserver ausführen möchte, gibt man dort die gewünschte URL an.

<?php

//(c)2017 - 2021 Copyright by Marc Disch - All right reserved

// Timeout angeben
$timeout = "1";

//localhost muss mit der Serveradresse ersetzt werden

$port[1] = "80";       $service[1] = "Apache Webserver";        $ip[1] ="localhost";
$port[2] = "21";       $service[2] = "FTP";                 	$ip[2] ="localhost";
$port[3] = "3306";     $service[3] = "MYSQL Server";            $ip[3] ="localhost";
$port[4] = "80";       $service[4] = "Internet Connection";     $ip[4] ="localhost";


//Array
//Bei jedem Durchlauf wird der nächste $port abgerufen
$ports = count($port);
$ports = $ports + 1;
$count = 1;

//Schleife
while($count < $ports){

     if($ip[$count]==""){
       $ip[$count] = "localhost";
     }

        $fp = @fsockopen("$ip[$count]", $port[$count], $timeout);

//falls if nicht zutrifft wird else ausgeführt

        if (!$fp) {

//falls keine Verbindung besteht wird rot Offline angezeigt
            $data .= "<span>$service[$count]: </span><span style='color:red'>Offline</span><br>";
            
        } else {

//falls eine Verbindung besteht wird grün Online angezeigt
            $data .= "<span>$service[$count]: </span><span style='color:green'>Online</span><br>";
         
        }
    $count++;

} 

// Ausgabe
echo $data;

?>

So sieht dann das Ergebnis aus:

Serverstatus

Da ich derzeit lokal nur apache2 und php7 gestartet habe, wird nicht alles als Online angezeigt.

Natürlich kann das noch ausgebaut werden. Es würde durchaus Sinn machen eine Nachricht zu schicken falls etwas ausfällt damit man schnell reagieren kann. Eine E-Mail zu senden wäre daher Sinnvoll.

Fake E-Mail senden

Es gibt viele Möglichkeiten E-Mails zu manipulieren. Das schwierige daran ist nur, nicht im Spam Ordner zu landen. Eine davon funktioniert mit Telnet. Kann auf jeder Console installiert werden ob Windows, Linux oder auch Mac. Mit jedem Handy, dass Zugriff auf ein App Store hat mit einer Konsole zum Download. Kann solch eine Fake E-Mail verfassen. Meistens landet die jedoch im Spam außer man kann sich auf dem Mailserver anmelden. Wie man eine E-Mail über Telnet schreibt sieht Ihr hier auf diesem Foto.

Auf https://self.mdisch.ch/telnet.php habe ich eine genaueren Beschrieb.

Auf dem Bild habe ich eine E-Mail über den Swisscom Mailserver gesendet.

Anwesenheitskontrolle

Ich war lange mit einer vernünftigen Anwesenheitskontrolle beschäftigt. Da ich in Javascript nicht viel Erfahrung habe, musste ich mich da zuerst rein arbeiten.

Nach einer gewissen Zeit soll eine Meldung kommen die darauf Aufmerksam macht, dass man einen Button drücken muss wenn man online ist. Wird dieser gedrückt, wird man weiterhin als online gesehen. Falls nicht wird später nochmals eine Warnung angezeigt. Wird diese auch ignoriert, wird man automatisch ausgeloggt.

Da die Page nicht ständig neu geladen werden sollte, wird nur Javascript aktualisiert. Das heißt weniger Auslastung auf dem Server. Ein Problem war, die Javascript Variable in PHP zu übergeben. Dies ist jedoch mit GET/POST möglich.

Aktueller Stand 2018

Mit unserem Administrations-Tool sind wir vorwärts gekommen. Es sind verschiedene Optionen dazugekommen:

  • Mitgliederansicht
  • Terminkalender
  • Interner Chat
  • Statistik
  • Chatverlauf u.v.m.

Ich war sehr fleißig und habe praktisch alles programmiert.

Im Moment sieht die Hauptseite folgendermaßen aus:

Bis auf ein paar Änderungen sind wir dann auch schon bereit für die Beta Version.

Nun liegt unser Fokus auf dem Vereinstool das auch noch viel Arbeit mit sich bringt.