Deutschland United States United Kingdom
ContentLion - Open Source CMS

QA Tempdir

QA Tempdir

Beschreibung: Temp-Dir Plugin gesucht

Autor Juku

Freu mich das das Plugin so schnell gemacht wurde!

Code: http://code.contentlion.de/Plugin+TempDir/

Mein Feedback

Klasse Plugin_TempDir_Dir:
- PHPDoc-Kommentare fehlen
- Alle Kommenate auf Englisch bitte
- Nimm das self::$dir mal aus den Settings, prüfe valide ist und leg es an, wenn noch nicht vorhanden.
- Validierung fehlt auch bei $area und $areatype, so kann man mit Slashes und Punkten dumme Sachen anstellen (kannst auch einfach md5en)
- Bei mkdir kann man auch die Rechte mit angeben. Nicht das man nachher die Dateien darin gar nicht speichern kann.
- Funktion createHtaccess kannste private machen (und einrücken)

ReadMe_Ordnerrechte.txt
- Denglisch?
- Die liest bestimmt niemand. Du kannst bei der Aktivierung am besten das FTP-Connect Plugin nutzen, um den Ordner sofort mit richtigen Rechten anzulegen. So macht das ja auch der Plugin-Installer, kannst ja mal nen bisschen abschauen davon^^

Hab mal alles behoben, außer das mit dem FTP-Plugin.
Aber ich finde diese Lösung nach genauerem Überlegen auch nicht mehr so gut, da der User dann ständig die FTP-Daten eingeben müsste. :S
Stattdessen habe ich die Rechte gleich mit mkdir() und chmod() gesetzt. ;)

Nur beim aktivieren, die restlichen Rechte kannst ja so setzen^^ Oder du zeigst halt beim aktivieren an, wenn die rechte noch nicht passen, wäre die schnelle und dreckige Variante.

Aber wie kann ich beim Installieren das FTP-Plugin nutzen?
Da muss man doch von dieser Klasse erben und beim Installieren habe ich keine Klasse. :D

Du kannst aber eine Instanz deiner Klasse erstellen ;-)

Dann müsste ich aber solange noch keine Verbindung besteht mit exit() abbrechen...

dann lass das mit dem FTP erstmal und zeig ne Meldung an, wenn die Rechte nicht passen.

Ok. ^^
Ist der Text so ok?:

PHP-Quelltext

1
2
3
4
5
if (chmod(Settings::getInstance()->get("root") . "system/plugins/tempdir/data/"0777)) {
    //Alles ok, Ordnerrechte sind gesetzt
} else {
    echo "Nur noch eine H&uuml;rde ist zu &uuml;berwinden:<br />Bitte setzen Sie die Rechte des Ordners system/plugins/tempdir/data noch auf '0777'!";
}

Jain, die Meldung am besten über die (übersetzte) Language-Dateien

So, habs gemacht, bitte mal testen! ;)

Steht jetzt auf meiner Test-Liste

Hier passen die PHPDocs auch noch nicht, wie bei PluginData ;-)

Ne, noch nicht ganz. Fehlt das $ vor den Variablen und die beschreibung ;-)

BTW: Im Englischen nutzt man eigentlich keine Bindestriche

Habs nochmal angepasst. xD

Bekomme nen PHPfehler:

Fatal error: Access to undeclared static property: Plugin_TempDir_Dir::$dir in system\plugins\tempdir\classes\dir.php on line 17

Code: $path = Plugin_TempDir_Dir::get("plugin", "privatedeployer");

Ich wollte das Plugin ja nutzen, um kurrzeitig(in einem Seitenaufruf) Dateien in einen Ordner einzulagern. Diese möchte ich dort aber auch wieder rausbekommen.
=> Kannst du die Dateien am Ende der Seite (über __destruct) automatisch wieder löschen? Dann macht der Name TempDir auch wieder Sinn ;-)

Und ich würde gerne einen String übergeben, um quasi Unterordner zu bekommen (wenn man mehr als einen Ordner braucht). Dann auch einfach mit md5 wieder drum. Das dann optional

Aber getestet hast es lokal nicht, oder?^^

Fatal error: Call to undefined method Plugin_TempDir_Dir::createHttaccess() in \system\plugins\tempdir\classes\dir.php on line 70

Das mit dem __destruct wird glaube ich so noch nicht klappen, dafür muss erst ein Objekt erstellt werden. Aber kein Problem, machst ne statische Eigenschaft, wenn diese beim get leer ist, erstellst nen neues objekt vom TempDir, dann dürfte es gehen.

Und dein PHPDoc hat noch nen Fehler, dir fehlt das $ beim subfolder.

Nein, hatte ich vergessen, bzw. hatte die letzten Änderungen nicht getestet. ^^

Habs behoben, war nur nen Rechtschreibfehler. ;)

@PHPDoc:
Jo, habs ergänzt.^^
Es ist noch kein Meister vom Himmel gefallen - Übung macht den Meister! :P

Ich würde mir wünschen, dass du meine Zeit besser zu schätzen lernst. Ich investiere aktuell sehr viel Zeit in das Testen deiner Plugins. Dann kann ich auch erwarten, dass du dir elbst sicher bist, dass es funktionierst, bevor du es mir gibst. Oder sehe ich das falsch?

Hab deinen Skin heute getestet, die anderen Sachen folgen dann morgen.

Ähnliche Themen