Link mit Username als Avatar

  • Hallo zusammen,

    und zwar, da es dafür kein Plugin gibt, wollte ich dass der User als Standard Avatar seinen Minecraft Kopf bekommt. Somit habe ich in dem Template AvatarEdit.tpl den Standard Avatar durch

    Code
    http://cravatar.eu/helmavatar/{$user->username}

    ersetzt.

    Leider geht das nicht. Jetzt ist die Frage, wie mache ich das sonst, dass er als Standard Avatar den Link mit dem Username benutzt?

    Danke im vorraus

    Gruß

    Nick

  • War da nicht was mit cache löschen und aktualisieren der Anzeigen?

    Nein, er hat nur den Link zum Avatar im Formular selbst geändert, das bringt dir aber nichts außer genau in diesem Formular.

    Fabi hat sich damit näher beschäftigt bzw. wir haben Mal darüber philosophiert und er hat hoffentlich mehr Zeit als ich zum erklären, warum das nicht funktioniert. :)

  • Fabi hat sich damit näher beschäftigt bzw. wir haben Mal darüber philosophiert

    Habs zwar bisher immer noch nicht hinbekommen, aber das ändern des einen Templates ist eigentlich total sinnlos.

    Theoretisch müsste man doch in jedem Template die Zeile ändern, in dem etwas wie $user->getAvatar() steht. Und dann wären eigene Avatare nicht mehr möglich. Und was, wenn dein Nutzer anders heißt oder nen Tippfehler hat? Dessen Avatar wird dann nicht angezeigt.

    Außerdem wäre das nicht zu empfehlen, die URL direkt zu verwenden, denn dann wird jedes mal das Avatar von ner Externen Seite geladen, zu lasten der Ladezeit.

    Und spätestens wenn deine Seite über https erreichbar ist, erhälst du nen Mixed-Content Fehler

  • Nein, er hat nur den Link zum Avatar im Formular selbst geändert, das bringt dir aber nichts außer genau in diesem Formular.

    Fabi hat sich damit näher beschäftigt bzw. wir haben Mal darüber philosophiert und er hat hoffentlich mehr Zeit als ich zum erklären, warum das nicht funktioniert. :)

    War nur eine meiner ersten Ideen :)

  • Was versprichst Du Dir von dieser Nachfrage? Es wurde doch explizit gesagt, dass es für das WSC 3.0 nicht mit vertretbarem Aufwand machbar ist.


    Gruß norse

    Zugang zu meinen Arbeiten und dem dazugehörigen Support bekommt Ihr bei Interesse hier und hier.

  • Ist es nicht möglich bei der DefaultAvatar.class.php das Standard Bild avatar-default.svg in den Link mit dem Usernamen zu ändern?

    Beispiel im Spoiler, weiß nur nicht wie ich da beim Link, Rot markiert, den Usernamen hinbekomm:

    Display Spoiler

    <?php

    namespace wcf\data\user\avatar;

    use wcf\system\WCF;

    use wcf\util\StringUtil;

    /**

    * Represents a default avatar.

    *

    * Author Marcel Werk

    * copyright 2001-2015 WoltLab GmbH

    * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>

    * @package com.woltlab.wcf

    * @subpackage data.user.avatar

    * @category Community Framework

    */

    class DefaultAvatar implements IUserAvatar {

    /**

    * image size

    * var integer

    */

    public $size = 150;

    /**

    * @see \wcf\data\user\avatar\IUserAvatar::getURL()

    */

    public function getURL($size = null) {

    if ($size === null) $size = $this->size;

    return WCF::getPath().'https://minotar.net/helm/NAME';/*images/avatars/avatar-default.svg*/

    }

    /**

    * @see \wcf\data\user\avatar\IUserAvatar::getImageTag()

    */

    public function getImageTag($size = null) {

    if ($size === null) $size = $this->size;

    return '<img src="'.StringUtil::encodeHTML($this->getURL($size)).'" style="width: '.$size.'px; height: '.$size.'px" alt="" class="userAvatarImage" />';

    }

    /**

    * @see \wcf\data\user\avatar\IUserAvatar::getWidth()

    */

    public function getWidth() {

    return $this->size;

    }

    /**

    * @see \wcf\data\user\avatar\IUserAvatar::getHeight()

    */

    public function getHeight() {

    return $this->size;

    }

    /**

    * @see \wcf\data\user\avatar\IUserAvatar::canCrop()

    */

    public function canCrop() {

    return false;

    }

    /**

    * @see \wcf\data\user\avatar\IUserAvatar::getCropImageTag()

    */

    public function getCropImageTag($size = null) {

    return '';

    }

    }


  • return WCF::getPath().'https://minotar.net/helm/NAME';/*images/avatars/avatar-default.svg*/

    Das macht absolut gar keinen Sinn. Höchstens sowas wie return $this->userID ? (WCF::getPath() . '/images/avatars/users/' . $this->userID . '.svg') : (WCF::getPath() . '/images/avatars/avatar-default.svg')

    Wird halt problematisch, wenn die Datei nicht existiert und das tut sie standardmäßig nicht.

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!