Stundensatz bei monatlichem Festgehalt berechnen

11. Juli 2017 Keine Kommentare

Manchmal interessiert einen ja sein eigener Stundenlohn, sei es für die Vergleichbarkeit mit anderen Jobs oder aber wenn es um die Vergütung von Überstunden geht. Sofern man ein monatliches Festgehalt bezieht, ist einem dieser Wert aber gar nicht unbedingt bekannt. Daher hier kurz die Berechnungslogik, mit der der Stundenlohn durch Firmen ermittelt wird.

Für die Berechnung benötigt man das Brutto-Monatsentgelt und die Wochenarbeitszeit (WAZ). Im Beispiel gehen wir von 2.500 € bei einer WAZ von 40 Stunden aus. Zusätzlich benötigt man die genaue Zahl an Wochen pro Monat. Diese bekommt man mit folgender Herangehensweise ermittelt:

Ein Jahr hat 365 Tage, alle 4 Jahre haben wir ein Schaltjahr mit 366 Tagen.
(4 * 365 + 1) / 4 = 365,25 Tage im Jahr

Ein Jahr hat 12 Monate.
365,25 / 12 = 30,4375 Tage im Monat

Eine Woche hat 7 Tage.
30,4375 / 7 = 4,34821429 Wochen im Monat

Nun wird die Arbeitszeit errechnet, die man im Mittel in einem Monat verrichtet, indem man die Wochen pro Monat mit der WAZ multipliziert:
4,34821429 * 40 = 173,9285714 Stunden im Monat

Und zu guter Letzt wird das Monatsentgelt durch die Stunden im Monat geteilt, was den übers Jahr immer gleichen Stundensatz ergibt:
2.500 / 173,9285714 = 14,37371663 ≈ 14,37 Euro Brutto pro Stunde

Stundensatz = \Large \frac{Monatsentgelt}{\frac{4*365+1}{4*12*7}*\text{WAZ}} = \frac{Monatsentgelt}{4,34821429*\text{WAZ}} \approx \frac{Monatsentgelt}{4,35*\text{WAZ}}

 
Alternativ kann man den Stundensatz auch mittels Jahresentgelt und täglicher Arbeitszeit ermitteln. Dafür werden dann die Arbeitstage des Jahres genutzt. Am Beispiel von oben macht das 30.000 € und bei 5 Arbeitstagen 8 Stunden am Tag.

Stundensatz = \Large \frac{Jahresentgelt}{260,8928571*\text{tägliche AZ}} \approx \frac{Jahresentgelt}{260,89*\text{tägliche AZ}}

 
Für die Herleitung der Arbeitstage des Jahres braucht man einmalig eine bereits nach erster Methode erfolge Berechnung des Stundensatzes, an der Zahl ~260,89 ändert sich dann aber nichts mehr.

Es braucht einen korrekt berechneten Stundensatz, welcher mit der täglichen Arbeitszeit multipliziert wird:
14,37371663 * 8 = 114,9897331 Euro am Tag

Das Jahresentgelt wird dann durch den Verdienst pro Tag geteilt:
30.000 / 114,9897331 = 260,8928571 ≈ 260,89 Arbeitstage pro Jahr

Urlaubstage und Feiertage brauchen in der Berechnung nicht berücksichtigt zu werden, denn diese werden ebenfalls voll vergütet, als wenn man an dem Tag am Arbeitsplatz gewesen wäre.

File Thingie – Syntax-Highlighting mit Ace-Editor

20. März 2017 Keine Kommentare

Als webbasierter Dateimanager kommt bei mir nach wie vor aufgrund seiner Einfachheit bevorzugt File Thingie zum Einsatz (Download Version 2.5.7). Diesen nutze ich auch gerne, um mal kurz was am Code bestimmter Dateien zu ändern, wenn ich grade keinen FTP-Zugang zum Server habe. Aber leider besteht der Standard-Editor nur aus einem Textfeld, und die im vorigen Beitrag angesprochenen Editor-Plugins wollte ich nicht nutzen, da ich WYSIWYG-Editoren nicht mag und für Code auch gar nicht gebrauchen kann.

Mit Ace gibt es aber auch einen reinen Code-Editor mit sehr gutem Funktionsumfang wie Syntax Highlighting für mehr als 110 Sprachen, verschiedene Themes sowie jede Menge weiterer Anpassungsmöglichkeiten. Dieser muss allerdings erst in File Thingie integriert werden. Nachfolgend möchte ich die dafür nötigen Änderungen aufzeigen.

Anforderungen
– Alle in File Thingie zur Bearbeitung freigegebenen Dateitypen sollen mit Ace dargestellt werden.
– Es soll je nach geöffneter Datei die korrekte Sprache für Syntax Highlighting geladen werden.
– Möglichst wenig Änderungen an der Funktionsweise von File Thingie selbst

Umsetzung
Zuerst müssen in der config.php die Dateitypen festgelegt werden, welche mit File Thingie bearbeitet werden sollen. Dafür sind an 2 Stellen Anpassungen erforderlich:

$ft["settings"]["FILETYPEBLACKLIST"] = ""; // File types that are not allowed for upload.

Nicht vom Kommentar irritieren lassen, diese Option gilt nicht nur für den Upload, sondern die hier eingegebenen Dateitypen werden generell nicht angezeigt.

$ft["plugins"]["edit"] = array(
  "settings" => array(
    "editlist" => "txt html htm css php js xml",
    "converttabs" => FALSE
  )
);

Danach geht es weiter mit der Datei edit.plugin.php im plugins-Verzeichnis. Der Editor in File Thingie ist eine einfache textarea. Diese kann von Ace aber nicht direkt verarbeitet werden. Ace ist für die Nutzung mit Containern wie div oder pre ausgelegt. Daher ist es erforderlich, ein neues div anzulegen.

In dieser Datei ist zusätzlich noch die Ermittlung des Dateityp erforderlich. Dazu wird ein zusätzliches verstecktes Eingabefeld angelegt, in welchem nur die Dateiendung der aktuell geladenen Datei gespeichert wird.

// Make form or show lock message.
$split_file = explode(".",$_REQUEST['file']);
$file_ext = $split_file[sizeof($split_file)-1];
$str .= '<form id="edit" action="'.ft_get_self().'" method="post">
  <div>
    <textarea cols="76" rows="20" name="filecontent" id="filecontent">'.$filecontent.'</textarea>
    <div name="ace_editor" id="ace_editor">'.$filecontent.'</div>
  </div>
  <div>
    <input type="hidden" name="file_ext" id="file_ext" value="'.strtolower($file_ext).'"</>
    <input type="hidden" name="file" id="file" value="'.$_REQUEST['file'].'" />
    <input type="hidden" name="dir" id="dir" value="'.$_REQUEST['dir'].'" />
    <input type="hidden" name="act" value="savefile" />
    <button type="button" id="save">'.t('Save').'</button>
    <input type="submit" value="'.t('Save &amp; exit').'" name="submit" />
    <input type="submit" value="'.t('Cancel').'" name="submit" />
    <input type="checkbox" name="convertspaces" id="convertspaces"'.($ft['plugins']['edit']['settings']['converttabs'] == TRUE ? ' checked="checked"' : '').' /> <label for="convertspaces">'.t('Convert spaces to tabs').'</label>
    <div id="savestatus"></div>
  </div>
</form>';				  

Zu guter Letzt muss in der Datei ft2.php der Ace-Editor eingebunden, aktiviert und der Inhalt des neuen Editor-div in die „alte“ textarea übertragen werden, damit die Änderungen auch gespeichert werden. Die textarea selbst wird ausgeblendet, damit nicht zwei Eingabebereiche ausgegeben werden. Zusätzlich wird geprüft, um welchen Dateityp es sich handelt, um die Syntax Highlighting Regeln für die entsprechende Sprache zu laden.

	<style type="text/css">
	  @import "css/ft.css";
    <?php echo implode("\r\n", ft_invoke_hook('add_css'));?>
	</style>
    <style type="text/css" media="screen">
      .ace_editor {
        position: relative !important;
        border: 1px solid lightgray;
        margin: auto;
        height: 600px;
        width: 800px;
      }
    </style>
    </head>
<body>

	<?php echo $str;?>
  <?php echo ft_make_scripts_footer();?>
  <?php echo implode("\r\n", ft_invoke_hook('destroy'));?>
<script src="./js/ace-builds/src/ace.js" type="text/javascript" charset="utf-8"></script>
<script>
  var editor = ace.edit("ace_editor");
  editor.setTheme("ace/theme/twilight");
  var file_ext = document.getElementById("file_ext").value;
  switch(file_ext) {
    case "php":
      editor.session.setMode("ace/mode/php");
      break;
    case "js":
      editor.session.setMode("ace/mode/javascript");
      break;
    case "htm":
    case "html":
      editor.session.setMode("ace/mode/html");
      break;
    case "css":
      editor.session.setMode("ace/mode/css");
      break;
    case "xml":
      editor.session.setMode("ace/mode/xml");
      break;
    default:
      editor.session.setMode("ace/mode/text");
  }
  var textarea = $('textarea[name="filecontent"]').hide();
  editor.getSession().setValue(textarea.val());
  editor.getSession().on('change', function(){
    textarea.val(editor.getSession().getValue());
  });
  editor.setPrintMarginColumn(false);
  </script>
</body>
</html>

Die erforderlichen Dateien für Ace kann man von der Webseite beziehen und beispielsweise im Unterverzeichnis js ablegen (wie im Code dargestellt). Möchte man weitere Dateitypen zur Bearbeitung freigeben, müssen die neuen Endungen wieder in der config.php freigegeben und in der ft2.php als neuer case ergänzt werden.

MoWeS Portable startet nicht unter Windows 10 Version 1607

15. Oktober 2016 Keine Kommentare

Habe zum Ende der kostenlosen Wechselphase noch schnell das Upgrade von Windows 7 auf Windows 10 durchgeführt. Kurz darauf folgte dann auch das Anniversary Update (Version 1607).

Nun wollte ich mal wieder MoWeS starten, da ich es trotz veralteter Apache und PHP Version dennoch gerne als schnell verfügbares Testsystem für einige Sachen nutze.

Nun musste ich leider feststellen, dass der Apache Dienst nicht mehr startet.

MoWeS-Status

Nach ein wenig Recherche war der Grund schnell gefunden: der WWW-Publishingdienst ist in Windows 10 standardmäßig aktiviert und blockiert den Port 80. Somit kann Apache in der Default-Konfiguration nicht starten.

Vorübergehend Abhilfe kann man sich über die Konsole verschaffen. CMD mit Admin-Rechten starten und folgendes eingeben:

net stop w3svc

Anschließend MoWeS bzw. die Server neu starten. Nun sollte alles wieder laufen.

Dies hilft aber nur temporär. Nach dem nächsten Neustart von Windows ist der WWW-Publishingdienst wieder aktiviert. Wer ihn dauerhaft abschalten möchte, muss den Dienst deaktivieren. Dazu gibt man in der Windows Suche bzw. Cortana das Wort Dienste ein und sollte eine passende Desktop-App finden. Diese öffnen und nach dem Eintrag WWW-Publishingdienst suchen. Mit der rechten Maustaste in die Eigenschaften wechseln und dort den Dienst von Starttyp Automatisch auf Deaktiviert ändern.

WWW-Dienst

Nach dem nächsten Neustart von Windows bleibt der Dienst abgeschaltet und man kann sofort mit MoWeS oder anderen WAMP-Installationen loslegen.

WordPress Fehlermeldungen nach Update auf Version 4.6

21. August 2016 Keine Kommentare

Grade das neue Update auf WordPress Version 4.6 installiert und feststellen müssen, dass anschließend Fehler-/Warnmeldungen auf der Seite und im Admin-Panel angezeigt werden. In der wp-config.ini nachgesehen, ob hier falsche Einstellungen vorliegen, aber daran lag es schonmal nicht:

@ini_set('display_errors', 0);
define('WP_DEBUG', false);

Nach etwas Suchen bin ich dann aber auf WordPress.org fündig geworden. Im Ticket #37680 wurde der Fehler erfasst und auch ein funktionierender Workaround veröffentlicht.

Nach den vorgeschlagenen Änderungen an der Datei load.php ist das Problem behoben. Mit dem nächsten Update auf 4.6.1 soll der Wordaround auch offiziell verteilt werden, aber bis dahin kann es noch ein paar Tage dauern.

Alternativ kann man auf seinem Server auch in der php.ini die Nutzung von ini_get_all() aktivieren, sofern man die Möglichkeit hat. Hier auf Pytal kann man die Einstellungen nicht eigenständig ändern, sondern ist auf den Serverbetreiber angewiesen.

Mehrere Verzeichnisse in einzelne Archive verpacken

7. Januar 2015 1 Kommentar

Stapelverarbeitung ist ne feine Sache. Die Anforderung war gleichermaßen einfach wie lästig, sollte man sie händisch durchführen müssen: Auf einem Gruppenlaufwerk liegen viele Dateien in verschiedenen Verzeichnissen. Aus Platzgründen kam nun die Idee auf, diese Unterlagen verzeichnisweise zu komprimieren, um Platz zu sparen. Jedes Verzeichnis eine ZIP-Datei mit gleichem Namen. Bei mehreren Hundert Verzeichnissen eine sehr undankbare Aufgabe, wenn man sich nicht zu helfen weiß.

Die kostenlose Lösung heißt 7-Zip, ein schnelles und einfaches Kompressionsprogramm. Das Vorhaben ginge zwar auch mit WinZIP oder WinRAR, diese standen aber nicht zur Verfügung, wohingegen 7-Zip auch als Portable zu erhalten ist.

Man erstellt sich also mit dem Editor eine Batch-Datei (*.bat) und kopiert die folgende Zeile hinein:

for /d %%X in (*) do "c:\Program Files\7-Zip\7z.exe" a -tzip "%%X.zip" "%%X\

Wenn statt Verzeichnissen Dateien einzeln gepackt werden sollen, sieht der Befehl wie folgt aus:

for %%X in (*) do "c:\Program Files\7-Zip\7z.exe" a -tzip "%%X.zip" "%%X"

In der jetzigen Form muss die Batch-Datei im selben Hauptverzeichnis liegen wie die Verzeichnisse / Dateien, welche komprimiert werden sollen. Evtl. muss noch der Installationspfad zu 7-Zip angepasst werden.

Laufzeit einer Festplatte mit smartmontools feststellen

3. Januar 2015 Keine Kommentare

Mein Kontakt mit Linux hält sich abseits des Smartphones stark in Grenzen, für gewöhnlich nutze ich es nur, wenn mir der Einsatz von Windows noch umständlicher erscheint. So wie heute… ich habe mir bei Amazon eine „neue“ IDE-Festplatte bestellt, der man schon nach dem Auspacken ansehen konnte, dass sie so neu nicht sein kann. Also interessierte mich, wie lange das gute Stück denn bisher schon seinen Dienst verrichten durfte.

Da Festplatten über ein System namens Self-Monitoring, Analysis and Reporting Technology (abgekürzt SMART oder auch S.M.A.R.T.) verfügen, ist das Wo gar nicht so schwer, aber das Wie kann einen schon eher beschäftigen. Für Windows gibt es viele Programme, welche die SMART-Informationen auslesen und auswerten können. Dumm nur, wenn kein Windows zur Verfügung steht.

Ich nutze eigentlich nur noch ein Notebook, da kann ich mit dieser Festplatte schon mal nichts werden. Ein USB-Adapter wäre zwar schnell angeschlossen, aber über USB kommt man leider nicht an die SMART-Daten ran. Bleibt also nur der Rechner, für den die Festplatte bestimmt ist: ein HP e-PC c10. Mit einem P3 mit 1 GHz und ganzen 256 MB RAM nicht unbedingt zum Angeben geeignet, aber dafür schön klein ^^

Als Live-System habe ich mir SystemRescueCD ausgesucht, hauptsächlich da es schon fertig gebrannt im Regal lag, aber auch, weil es recht geringe Ansprüche an die Hardware stellt. Man kann auf der alten Kiste sogar die grafische Oberfläche starten, wenn man möchte, braucht man für das Vorhaben aber nicht. Wichtig ist aber, dass smartmontools installiert ist.

Also CD rein, booten und auf Betriebsbereitschaft warten. Zuerst benötigt man die Info, wie die Laufwerke denn heißen:

root@sysresccd /root % lshw -short

H/W path      Device      Class       Description
=================================================
                          system      e-Vectra
/0                        bus         HP System Board
/0/0                      memory      64KiB BIOS
/0/4                      processor   Pentium III (Coppermine)
/0/4/5                    memory      32KiB L1 cache
/0/4/6                    memory      256KiB L2 cache
/0/13                     memory      256MiB System Memory
/0/13/0                   memory      256MiB DIMM SDRAM Synchronous
/0/100                    bridge      82810E DC-133 (GMCH) Graphics Memory Controller Hub
/0/100/1                  display     82810E DC-133 (CGC) Chipset Graphics Controller
/0/100/1e                 bridge      82801AA PCI Bridge
/0/100/1e/2   enp1s2      network     3c905C-TX/TX-M [Tornado]
/0/100/1f                 bridge      82801AA ISA Bridge (LPC)
/0/100/1f.1               storage     82801AA IDE Controller
/0/100/1f.2               bus         82801AA USB Controller
/0/100/1f.3               bus         82801AA SMBus Controller
/0/100/1f.5               multimedia  82801AA AC'97 Audio Controller
/0/1          scsi0       storage     
/0/1/0.0.0    /dev/sda    disk        20GB ST320410A
/0/1/0.0.0/1  /dev/sda1   volume      18GiB Windows NTFS volume
/0/2          scsi1       storage     
/0/2/0.0.0    /dev/cdrom  disk        SCSI CD-ROM
/0/3          scsi2       storage     
/0/3/0.0.0    /dev/sdb    disk        1031MB SCSI Disk
/0/3/0.0.0/1  /dev/sdb1   volume      983MiB Windows FAT volume

Da man nun den Namen der Festplatte kennt, mit dem man sie ansprechen kann, kann es auch schon losgehen:

root@sysresccd /root % smartctl -i /dev/sda

smartctl 6.3 2014-07-26 r3976 [i686-linux-3.10.60-std441-i586] (local build)
Copyright (C) 2002-14, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Seagate U6
Device Model:     ST320410A
Serial Number:    5FG02MCC
Firmware Version: 3.31
User Capacity:    20,404,101,120 bytes [20.4 GB]
Sector Size:      512 bytes logical/physical
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ATA/ATAPI-6 (minor revision not indicated)
Local Time is:    Sat Jan  3 20:10:50 2015 UTC
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

Sofern das Laufwerk SMART-Unterstützung hat und diese aktiviert ist, kann es weitergehen:

root@sysresccd /root % smartctl -A /dev/sda

smartctl 6.3 2014-07-26 r3976 [i686-linux-3.10.60-std441-i586] (local build)
Copyright (C) 2002-14, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF READ SMART DATA SECTION ===
SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x000f   066   058   025    Pre-fail  Always       -       63482118
  3 Spin_Up_Time            0x0003   098   098   000    Pre-fail  Always       -       0
  4 Start_Stop_Count        0x0032   100   100   020    Old_age   Always       -       1
  5 Reallocated_Sector_Ct   0x0033   100   100   036    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x000f   078   060   030    Pre-fail  Always       -       77625164
  9 Power_On_Hours          0x0032   088   088   000    Old_age   Always       -       11065
 10 Spin_Retry_Count        0x0013   100   100   097    Pre-fail  Always       -       0
 12 Power_Cycle_Count       0x0032   098   098   020    Old_age   Always       -       2608
194 Temperature_Celsius     0x0022   035   051   000    Old_age   Always       -       35
195 Hardware_ECC_Recovered  0x001a   100   253   000    Old_age   Always       -       0
197 Current_Pending_Sector  0x0012   100   100   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0010   100   100   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x003e   200   194   000    Old_age   Always       -       6
200 Multi_Zone_Error_Rate   0x0000   100   253   000    Old_age   Offline      -       0
202 Data_Address_Mark_Errs  0x0032   100   253   000    Old_age   Always       -       0

Mich interessierte hier Eintrag 9 Power_On_Hours, welcher die bisherige Laufzeit in Stunden beinhaltet. Es gibt aber auch Hersteller, die an Position 9 einen anderen Zähler vorsehen: Power_On_Minutes. In diesem Fall wird der Wert in Minuten angegeben. Bei Maxtor-Festplatten wird unter Power_On_Minutes direkt die Stunden und Minuten angegeben, dieser Zähler nullt wohl aber bei 1000 Stunden, weshalb diese Angabe nicht immer zuverlässig ist. Daher muss noch ein Schritt weiter gegangen werden, um auf Nummer sicher zu gehen.

root@sysresccd /root % smartctl -t short /dev/sda

smartctl 6.3 2014-07-26 r3976 [i686-linux-3.10.60-std441-i586] (local build)
Copyright (C) 2002-14, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF OFFLINE IMMEDIATE AND SELF-TEST SECTION ===
Sending command: "Execute SMART Short self-test routine immediately in off-line mode".
Drive command "Execute SMART Short self-test routine immediately in off-line mode" successful.
Testing has begun.
Please wait 1 minutes for test to complete.
Test will complete after Sat Jan  3 20:27:31 2015

Use smartctl -X to abort test.

Dieser Befehl startet einen Schnelltest der Festplatte, die voraussichtliche Dauer steht in der Ausgabe. Man kann auch einen Langtest starten, dieser dauert aber gern mal bis zu 30 Minuten, uns reicht der kurze aber aus.
Nach Ablauf der angegebenen Zeit kann das Ergebnis des Tests wie folgt abgefragt werden:

root@sysresccd /root % smartctl -l selftest /dev/sda

smartctl 6.3 2014-07-26 r3976 [i686-linux-3.10.60-std441-i586] (local build)
Copyright (C) 2002-14, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF READ SMART DATA SECTION ===
SMART Self-test log structure revision number 1
Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Short offline       Completed without error       00%     11066         -
# 2  Extended offline    Completed without error       00%     11065         -
# 3  Short offline       Completed without error       00%     11065         -

Fazit: Die getestete Festplatte hat bereits 11066 Betriebsstunden auf dem Buckel.

Und wem die geringe Größe komisch vorkommt…natürlich hab ich keine 20 GB Platte bei Amazon bestellt, aber als mir der Gedanke kam, die Vorgehensweise in diesem Beitrag festzuhalten, hatte ich die geprüfte Platte schon wieder ausgebaut und für die Rücksendung eingetütet, denn sie hatte sportliche 51831 Betriebsstunden, was mir für eine vermeintlich neue Festplatte dann doch zu viel war. Also hab ich das ganze Prozedere noch mal kurz mit der alten Festplatte durchgeführt, die vorher in dem Rechner war.

Scrobbeln ohne den offiziellen Last.fm Client mit VLC, foobar2000 oder WinAmp

3. Juli 2014 Keine Kommentare

Ich wollte nach langer Zeit mal wieder ein wenig Musik scrobbeln. Der offizielle Last.fm Client kam nicht in Frage, da ich auf dem Rechner keine Adminrechte habe und die Software ohnehin nicht mag. Es musste also eine Alternative her.

In der Vergangenheit hatte ich zu diesem Zweck zeitweilig WinAmp in Kombination mit dem Plugin gen_audioscrobbler.dll (v1.1.1.0) im Einsatz. Aber WinAmp ist mir seit langem zu aufgebläht und auch nicht als vernünftige Portable Version erhältlich und somit keine Option mehr.

Die nächste Variante wäre foobar2000 mit dem Plugin foo_audioscrobbler (v1.4.7). Das funktioniert auch sehr gut und ist schnell und einfach eingerichtet. Einfach die ZIP-Datei speichern, in foobar2000 importieren und anschließend die Zugangsdaten eintragen.

Aber der einzige Player mit direkt integriertem Scrobbler, den ich finden konnte, scheint der VLC zu sein. Hier müssen keine alten, nicht mehr weiterentwickelte Plugins installiert werden, sondern der VLC bringt die Funktion standardmäßig mit. Nur deren Aktivierung scheint manchmal etwas zu haken, deshalb auch dieser Beitrag für alle, die auch ihre Probleme mit der Einrichtung haben.

Eins sei noch gesagt: ich beziehe mich hier auf die Portable Version des VLC. Nach einigen Versuchen kam ich auf die folgende Vorgehensweise:

Zuerst öffnet man das Verzeichnis der Portable Version (bei der normalen Version %appdata%). Unter Data => Settings einfach die Datei vlcrc löschen. Diese wird nach dem Start von VLC mit Standardwerten neu erstellt. Dann öffnet man in VLC unter Werkzeuge die Einstellungen. Man kann erstmal in den einfachen Einstellungen bleiben und klickt auf Audio. Der letzte Punkt muss aktiviert werden, damit sich die Anmeldefelder einblenden. Hier trägt man nun seinen Last.fm Benutzernamen und das Passwort ein und speichert anschließend.

vlc1

Anschließend öffnet man erneut die Einstellungen, diesmal allerdings die erweiterten Einstellungen. Nun muss kontrolliert werden, ob unter Interface => Kontroll-Interfaces auch die nötige Option aktiviert ist. Und unter Interface => Kontroll-Interfaces => Audioscrobbler nochmals kontrollieren, ob hier auch hier Benutzername und Passwort eingetragen sind.

vlc2

Man sollte meinen, dass es damit erledigt wäre, aber in den Meldungen (CTRL + M) mit Ausführlichkeit 2 tauchten dennoch keine Einträge des Scrobblers auf. Den VLC schließen und wieder zurück in den Explorer. Jetzt öffnet man die Datei vlcrc mit einem Editor und sucht nach scrobbler-url. Dieser Eintrag ist auskommentiert, die # muss weg, danach speichern und den VLC erneut starten. Jetzt sollte es auch mit dem scrobbeln klappen, in den Meldungen tauchten bei mir jetzt auch die passenden Einträge auf.

 
Auf einem System ohne Proxy sollte nun alles klappen. Leider habe ich eine fest vorgegebene Pac-Proxy Datei, welche den Internetzugang steuert. Ich schrieb zwar bereits, wie man mit benutzerdefinierten Umgebungsvariablen solchen Fällen begegnen kann, aber mittlerweile wurde der Rechner von XP auf Win 7 umgestellt und die Zugriffsbeschränkungen auf das System deutlich verschärft, womit diese Möglichkeit entfällt.

Und alle hier aufgeführten Scrobbler-Lösungen haben die selbe Schwachstelle: Sie ignorieren den eingetragenen Proxy in der Anwendung und versuchen eine direkte Verbindung zum Internet aufzubauen, was natürlich nicht funktioniert. Die Anmeldung klappt meistens sogar noch, aber die Übermittlung der gespielten Tracks will den direkten Weg…

Das ist zwar schade, aber auch nicht weiter tragisch, dann wird eben weiterhin nicht gescrobbelt. Aber zumindest hab ich mal wieder was hier gepostet 😀

 
Nachtrag:
Wer oft Musik bei Youtube, Pandora, Google Play Musik oder ähnlichen Diensten hört, kann ja mal einen Blick auf die Chrome Erweiterung Last.fm Scrobbler werfen. Unterstützt viele Webseiten und arbeitet nach ersten Probeläufen recht zuverlässig, wenngleich die Titelerkennung zumindest bei Youtube nicht unbedingt glänzen kann.

Panasonic Lumix – Die Modellbezeichnung aufgeschlüsselt

4. April 2013 1 Kommentar

Eine neue Kamera sollte ins Haus und wie es der Zufall so will, gab es zeitlich passend ein super Angebot im Internet. Beim Vergleichen viel dann allerdings schnell auf, dass die angebotene Kamera eine andere Modellbezeichnung hat als die Vergleichsgeräte bei Amazon und Mediamarkt.

Panasonic Lumix DMC-TZ25EBR

Panasonic ist der Firmenname und Lumix der Markenname, soweit düfte es noch jedem klar sein. DMC wird jeder Kamera voran gestellt, die Bedeutung des Kürzel wollte mir Google bisher allerdings nicht verraten, ich vermute aber irgendwas in der Art wie: Digital Memory Camera.

 
Modelllinie:

Aktuell sind auf der Webseite von Panasonic die folgenden Modelle gelistet:

  • FS, XS und 3D (Stylish)
  • SZ (Stylishzoom)
  • LX, FX (Premium)
  • FT (Tough Outdoor)
  • TZ (Travellerzoom)
  • FZ (Superzoom)

Mehr Modelle sowie weitere Einzelheiten sind in der Wiki gelistet.

 
Modellnummer:

Direkt hinter dem Kürzel für die Modelllinie folgt die Modellnummer. Diese folgen keiner erkennbaren Regel, immerhin scheint man sich aber bisher darauf verlassen zu können, dass neuere Modelle immer eine höhere Nummer aufweisen als die Vorgänger.

 
Zu den restlichen Bestandteilen hat der Support von Panasonic auf Anfrage des Benutzers Subram aus dem Lumix-Forum Stellung genommen. Die Antwort wurde in diesem Beitrag veröffentlicht.

 
Vertriebsregion:

Gibt an, für welchen Markt das Gerät bestimmt ist.

  • E (Europa)
  • P (USA)
  • PC (Canada)
  • PL (Latein-Amerika)
  • G* (asiatische Vertriebsgebiete)

Nicht ganz uninteressant, denn je nach Region können sich die Geräte in den Punkten Ausstattung, Sprachen der Bedienungsanleitung, Menüführung und mitgelieferte Software unterscheiden. Zudem gibt es unterschiedliche Garantiebedingungen.

 
Länderkürzel:

Gibt an, für welches Land das Gerät bestimmt ist.

  • G (Deutschland / Germany)
  • B (England / Britain)
  • F (Frankreich/ France)

Dies hat wie schon die Vertriebsregion Einfluss auf Ausstattung, Sprache und Garantiebedingungen.

 
Farbe:

Die Farbe der Kamera.

  • K (Schwarz)
  • W (Weiß)
  • S (Silber)
  • R (Rot)
  • T (Braun)
  • A (Blau)

 
Bei der derzeit günstig angebotenen Kamera handelt es sich also um ein britsches Modell in der Farbe rot. Da der Support zusichert, dass man die normalen 24 Monate Garantie in Anspruch nehmen kann, wenn die Modellnummer auch korrekt auf der Rechnung vermerkt ist, steht einem Kauf nichts im Wege.

MoWeS Portable II Installationspakete

4. März 2013 9 Kommentare

MoWes Portable II ist für mich schon lange eine unverzichtbare portable Softwareperle auf meinem USB-Stick. Der zuverlässige Webserver to go hat mich noch nie im Stich gelassen, ganz im Gegensatz zu seinem hoch gelobten Verwanten XAMPP, welcher zwar auch als Portable Edition zu haben ist, mir aber in der Vergangenheit mehr Ärger bereitete als Nutzen brachte.

Mit Bedauern musste ich vor einigen Monaten dann feststellen, dass die Firma hinter MoWeS ohne Vorankündigung ihre Geschäftstätigkeit eingestellt hat und im selben Zuge auch die Webseite offline genommen wurde. Somit war kein rankommen an die Installationspakete mehr möglich. Hätte man das vorher bekannt gegeben, ich hätte mir noch schnell eine Sicherung der aktuellsten Pakete gemacht.

Heute hatte ich mal ein wenig Zeit und Lust, mich auf die Suche nach einer dezentralen Sicherungskopie zu begeben und wurde schnell bei Softpedia fündig. Dort gibt es aber „nur“ die Serverkomponenten, die vorgefertigten Softwarepakete haben sie nicht im Angebot, was aber nicht weiter tragisch ist, die kann man schließlich selbst installieren.

Falls jemand nur einzelne Pakete benötigt, habe ich mal alles bei uploaded.to hochgeladen. Enthalten sind die folgenden Pakete:

  • MoWeS Portable II (Version 2.2.3)
  • Apache 2 (Version 2.2.11) + SE
  • MySQL 5 (Version 5.5.8) + SE
  • ImageMagick (Version 4.2.9)
  • PHP 4 (Version 4.4.9) + SE
  • PHP 5 (Version 5.3.5) + SE
  • PHP 5.2 (Version 5.2.17)

mowes_portable.zip ist ein Pflichtdownload und muss nur entpackt werden. Die anderen Pakete werden im Stammverzeichnis von MoWeS gespeichert und anschließend das Programm gestartet. Es beginnt mit der Einrichtung, installiert die einzelnen Pakete und startet anschließend den portablen Server. Fertig 🙂

Ich hoffe, der Download hilft dem einen oder anderen Fan von MoWeS.

 
Update 06.01.2015

Da Uploaded nun wirklich nicht die beste Wahl war, hier noch eine zusätzliche Download-Quelle: Google Drive. Zwar auch nicht optimal, aber zumindest schneller und keine Mengen- bzw Zeitbegrenzung.

Es sind auch ein paar Pakete dazu gekommen, für weitere Infos einfach mal dem Link folgen.

File Thingie – Ein web-basierter Dateimanager auf PHP-Basis

4. Januar 2013 2 Kommentare

Es kann sehr störend sein, wenn man nicht jederzeit via FTP auf seinen Webspace zugreifen kann. Tagsüber sitze ich hinter einem Proxy, der nur HTTP Verbindungen zulässt. Und ohne eigenen WebFTP-Server meide ich derartige Angebote auch lieber, wer kann schon mit Sicherheit sagen, was mit den Zugangsdaten passiert, die man auf solchen Seiten eingibt.

Um dieses Manko ein wenig zu entschärfen, habe ich mich daher nach einem Script umgesehen, welches es mir ermöglichen soll, alle relevanten Dateien (html, php, css, xml, etc.) auf dem Server direkt im Browser zu bearbeiten. Ein CMS kommt bisher nicht zum Einsatz (WordPress mal ausgenommen, aber darin verwalte ich nicht meine eigenen Scripte). Und ich muss sagen, ich bin überrascht, wie schwer es ist, ein passendes Helferlein zu finden.

Online Dateimanager gibt es zu Hauf, aber viele davon lassen sich nicht auf dem eigenen Server installieren, sondern wollen wieder wie schon WebFTP die Zugangsdaten von einem wissen. Und sehr viele der verbleibenden Lösungen lassen sich nicht auf das root-Verzeichnis des Servers anwenden, sondern bringen ihre eigene, geschlossene Verzeichnisstruktur mit. Ich will aber keine ausgeklügelte Multi-User Unterstützung, sondern einfach nur jederzeit Zugriff auf alle meine Daten.

Fündig geworden bin ich schließlich mit File Thingie. Dabei handelt es sich um einen kleinen, überschaubaren Dateimanager mit Editier-Funktionalität und der Möglichkeit, ZIP-Archive zu entpacken. Und er muss nicht mal im Root-Verzeichnis abgelegt werden, sondern kann in einem beliebigen Unterverzeichnis seine Dienste verrichten.

In der config.php müssen zuvor aber noch ein paar Änderungen vorgenommen werden: Benutzername und Passwort sollten vergeben werden, Anpassung des Standardverzeichnisses, Bearbeiten der Blacklists und letztlich unter den Plugin Settings die Ergänzung weiterer zugelassener Dateiendungen für den Editor.

Wer möchte, kann sich auch einen WYSIWYG-Editor hinzufügen. Im Installationspaket enthalten sind bereits Plugins für TinyMCE, CKEditor und FCKEditor, eigene Plugins können aber ebenfalls hinzugefügt werden.

Eine einfache, eingebaute Möglichkeit für Syntax Highlighting im normalen Texteditor gibt es hingegen leider nicht… oder ich hab sie bisher nur noch nicht gefunden, denn ein WYSIWYG-Editor hilft mir in den meisten Fällen nicht weiter.

Update:
Da das Projekt auf den offiziellen Seiten nicht mehr erreichbar ist, hier die letzte Version zum Download: File Thingie 2.5.7