Seite 1 von 4

[Beta] Standard-Avatar

Verfasst: 22.12.2014 17:14
von D@ve
Moin moin,
hier jetzt auch mal meine ersten Gehversuche mit Extensions...

Erfahrungsgemäß laden die User eines Forums eher einen Avatar hoch, wenn es einen (möglichst hässlichen ;-) Standard-Avatar gibt. Entsprechend hatte ich das bisher immer mit ein paar Zeilen Code in mein Forum eingeführt. Aber um mich in das Extension-System reinzuarbeiten, habe ich das mal in eine Extension gearbeitet.

Freue mich sehr über Kommentare und gemeldete Bugs...

----

Standard-Avatar Extension für phpBB 3.1.x

Titel: Default-Avatar
Version: 0.10.0
Autor: Dave

Beschreibung: Zeigt einen Standard-Avatar an. Dazu wird das "no_avatar" Bild aus dem Pro-Silver Style benutzt. Über das ACP kann aber der Pfad zu einem anderen Avatar angegeben werden.

Demo: http://www.2phpbb.de/phpbb-forum/

Screenshots:
[ externes Bild ]
[ externes Bild ]


Voraussetzung: phpBB 3.1.2

Download: http://www.2phpbb.de/extensions/default ... 0.10.0.zip

Installation:
1. Inhalt der ZIP in den Ordner /ext/ entpacken entapacken
2. ACP => Tab "Anpassen" => "Erweiterungen verwalten" => bei "Default-Avatar" auf "aktivieren" klicken

Bekannte Fehler:
- momentan keine

Eventuelle zujünftige Features:
- Avatar in Navbar
- Avatar im Profil
- Überlege noch, ob es den Aufwand wert ist, einen Upload des neuen Avatars zu implementieren

Re: [Beta] Standard-Avatar

Verfasst: 22.12.2014 18:06
von tas2580
Hi, D@ve,

ich habe mir die Extension mal angeschaut, mit der Aussage das User eher ein Avatar hochladen wenn es ein default Avatar gibt hast du sicher recht, von daher sehr nützliche Extension.

Ein paar Verbesserungsvorschläge habe ich aber:
  • Im ACP werden DEFAULT_AVATAR und TITLE_EXPLAIN nicht übersetzt (Sprache EN)
  • Du machst deine PHP Dateien mit ?> zu, das sollte man nicht machen, steht so weit ich weiß auch in den phpBB Coding Guidelines
  • Wenn du den Formularfeldern für Höhe und Breite den Typ "number" gibst kann man wie bei allen anderen Nummer Feldern im phpBB mit der Maus hoch und runter klicken.
Gruß Tobi

Re: [Beta] Standard-Avatar

Verfasst: 22.12.2014 18:28
von Crizzo
Hi,
[BTK] Tobi hat geschrieben:Du machst deine PHP Dateien mit ?> zu, das sollte man nicht machen, steht so weit ich weiß auch in den phpBB Coding Guidelines
sofern gestattet: ich hab dieses Vorgehensweise erst bei der phpBB3.1-Entwicklung festgestellt, wieso macht man das denn nicht (mehr)?

Grüße

Re: [Beta] Standard-Avatar

Verfasst: 22.12.2014 18:29
von D@ve
Im ACP werden DEFAULT_AVATAR und TITLE_EXPLAIN nicht übersetzt (Sprache EN)
*grübel* Erschließt sich mir gerade nicht, warum...
Du machst deine PHP Dateien mit ?> zu, das sollte man nicht machen, steht so weit ich weiß auch in den phpBB Coding Guidelines
Oh das war mir neu... Dachte immer das sei ein Fehler in der Datei... Hab mich mal eingelesen... Gilt das für alle PHP-Dateien innerhalb von Extensions?

Aber danke, werde ich anpassen. Update folgt...

Re: [Beta] Standard-Avatar

Verfasst: 22.12.2014 20:23
von tas2580
BlackHawk87 hat geschrieben:sofern gestattet: ich hab dieses Vorgehensweise erst bei der phpBB3.1-Entwicklung festgestellt, wieso macht man das denn nicht (mehr)?
Wenn du nach ?> noch eine Leerzeile hast und die Datei dann irgendwo includest kannst du danach keinen Header mehr ausgeben weil du mit der Leerzeile nach ?> ja was ausgibst. Das führt dann zu der Fehlermeldung "Header already send..." um das zu vermeiden macht man PHP in reinen PHP Dateien nicht mehr zu. Das ist nicht nur bei phpBB so sondern wird mittlerweile allgemein so gemacht.

Gruß Tobi

Re: [Beta] Standard-Avatar

Verfasst: 23.12.2014 18:55
von D@ve
Wie binde ich den eigene Sprach-Dateien in das migration File zur Installation mit ein? Hab das eigentlich 1:1 so wie in der Beispiel-Extension gemacht, aber ist eigentlich logisch, dass die entsprechenden Einträge im ACP nicht übersetzt werden. Die Sprachfiles sind ja nicht bekannt...

thx,
Gruß, Dave

Re: [Beta] Standard-Avatar

Verfasst: 23.12.2014 19:37
von tas2580
In deiner event/listener.php bei

Code: Alles auswählen

static public function getSubscribedEvents()

Code: Alles auswählen

'core.user_setup'          => 'load_language_on_setup',
einfügen. Und weiter unten die Funktion

Code: Alles auswählen

    public function load_language_on_setup($event)
    {
        $lang_set_ext = $event['lang_set_ext'];
        $lang_set_ext[] = array(
            'ext_name' => 'tas2580/socialbuttons',
            'lang_set' => 'common',
        );
        $event['lang_set_ext'] = $lang_set_ext;
    }
Damit wird die Sprachdatei immer geladen. Das ist sicher nicht der schönste Weg, aber ich habe noch nichts besseres gefunden und es funktioniert. Bei großen Sprachdateien kann es sich lohnen eine zweite Datei für die Variablen die immer benötigt werden anzulegen.

Gruß Tobi

Re: [Beta] Standard-Avatar

Verfasst: 23.12.2014 21:17
von D@ve
Damit wird die Sprachdatei immer geladen
Aber ich brauche die ja garnicht im Listener, sondern nur für ACP-Modul bzw. dessen Menü-Eintrag. In den Demo-Extensions funktioniert das aber imo auch mit den Sprachvariablen in der Migration...

Gruß, Dave

Re: [Beta] Standard-Avatar

Verfasst: 23.12.2014 22:42
von tas2580
So weit ich weiß wird die Migration nur bei der Installation der Extension ausgeführt, du müsstest sie also auf jeden Fall in einem Event laden. Da ist "core.user_setup" sicher nicht ideal da man die Variable ja wirklich nur im ACP braucht. Schau dir doch einfach ein paar andere Extensions an wie die das machen. Am besten welche die nur etwas im ACP einfügen.

Gruß Tobi

Re: [Beta] Standard-Avatar

Verfasst: 23.12.2014 23:43
von Elsensee
In den Migrations haben die Sprachdateien nichts zu suchen.
Aber doch - du kannst die Sprachdateien auch nur im ACP laden, siehe hier in einer der offiziellen phpBB Erweiterungen: https://github.com/phpbb-extensions/boa ... le.php#L66