XF2.0 [XenDACH] LimitLanguageUsage 2.0.3

Nutzbare Sprachen für Benutzer beschränken

  1. McAtze

    McAtze Innendienst Lizenzinhaber

    McAtze hat eine neue Ressource erstellt:

    [XenDACH] LimitLanguageUsage - Nutzbare Sprachen für Benutzer beschränken

    Weitere Informationen zu dieser Ressource...
     
    Lemminator, Self, piepo und 2 anderen gefällt das.
  2. piepo

    piepo Mitglied Lizenzinhaber

    Vielen Dank
     
  3. McAtze

    McAtze Innendienst Lizenzinhaber

    Lemminator gefällt das.
  4. McAtze

    McAtze Innendienst Lizenzinhaber

    Lemminator und Alluidh gefällt das.
  5. argy

    argy Aktives Mitglied Lizenzinhaber

    Hallo. Mir wird im Backend eine Fehlermeldung angezeigt dass die Datei "src/addons/XenDACH/LimitLanguageUsage/addon.json" nicht erwartete Inhalte enthält.
    Leider weiß ich nicht wie ich das beheben kann.
     
  6. Maik

    Maik Mitglied Lizenzinhaber

    Hab auch diese Fehlermeldung bekommen.
     
  7. Alluidh

    Alluidh Übersetzer Lizenzinhaber

    Welche Version von XenForo setzt ihr ein?
     
  8. McAtze

    McAtze Innendienst Lizenzinhaber

    Ich habe das Problem auch und bisher noch keine Lösung gefunden. Ich werde mal am WE ein Update machen.
     
    Alluidh gefällt das.
  9. argy

    argy Aktives Mitglied Lizenzinhaber

    Wir haben hier noch die 2.0.4 laufen.
     
  10. Maik

    Maik Mitglied Lizenzinhaber

  11. McAtze

    McAtze Innendienst Lizenzinhaber

    Ist eigentlich unabhängig von der Version. Das ist ein Fehler beim erstellen des AddOns. Scheinbar schreibt er die neuen Daten aus der addon.json nicht korrekt in die DB oder in die hashes.json..
    Ich bin noch nicht dahinter gekommen.
     
  12. McAtze

    McAtze Innendienst Lizenzinhaber

    @argy & @Maik Schaut mal bitte ob diese Version den Fehler auch noch enthält. Bitte vorher Deinstallieren und Files/Folder löschen. Danke.. :D
     

    Anhänge:

    Alluidh gefällt das.
  13. Maik

    Maik Mitglied Lizenzinhaber

    Fehlermeldung ist weg und es scheint alles zu funktionieren. Vielen Dank.
     
    Alluidh und McAtze gefällt das.
  14. McAtze

    McAtze Innendienst Lizenzinhaber

  15. argy

    argy Aktives Mitglied Lizenzinhaber

    Bei mir geht es auch wieder. Vielen Dank.
     
    McAtze gefällt das.
  16. nocte

    nocte Mitglied Lizenzinhaber

    Danke für das Addon!

    Ich habe es noch nicht installiert, aber den Source Code angesehen. Dabei sind mir 2 Dinge aufgefallen:

    XenDACH\LimitLanguageUsage\XF\Entity\Language enthält die Methode verifyXdUserSelectable - diese wird aber sonst nirgends verwendet, die ganze Klasse scheint also ungenutzt zu sein.

    Soweit ich sehe, kann man durch ändern der Language ID bei den Links der Sprachauswahl auch Sprachen wählen, die dafür nicht vorgesehen sind. Ich würde vorschlagen hier XF\Pub\Controller\Misc::actionLanguage() zu extenden um das zu unterbinden.
     
    Alluidh und McAtze gefällt das.
  17. McAtze

    McAtze Innendienst Lizenzinhaber

    Muss ich mir mal ansehen. Danke für den Hinweis.
     
    nocte und Alluidh gefällt das.
  18. nocte

    nocte Mitglied Lizenzinhaber

    Ein bisschen Code zur freien Verwendung :)

    Um das Speichern von einer nicht zulässigen Sprache via account/preferences zu verhindern, könnte man XF\Pub\Controller\Account extenden:
    PHP:
        protected function preferencesSaveProcess(\XF\Entity\User $visitor)
        {
            $form = parent::preferencesSaveProcess($visitor);

            $input = $this->filter([
                'user' => [
                    'language_id' => 'uint'
                ]
            ]);

            $language = $this->app->language($input['user']['language_id']);

            if (!$language->xd_user_selectable)
            {
                $form->logError(\XF::phrase('xd_invalid_style'));
            }

            return $form;
        }
     
    Ähnliches Prozedere für den Style Chooser durch extenden von XF\Pub\Controller\Misc:
    PHP:
        public function actionLanguage()
        {
            if ($this->request->exists('language_id'))
            {
                $visitor = \XF::visitor();

                $language = $this->app->language($this->filter('language_id', 'uint'));

                //$redirect = $this->getDynamicRedirect(null, true);

                if (!$visitor->is_admin && !$language->xd_user_selectable)
                {
                    //return $this->redirect($redirect);
                    return $this->noPermission();
                }
            }

            return parent::actionLanguage();
        }
     
    (hier wäre auch - wie auskommentiert - eine Weiterleitung statt des noPermission errors möglich.)

    Fix für die unschöne Languages Liste im AdminCP:

    Template Modification für admin:language_list

    Suche:
    HTML:
            <xf:else />
                <xf:cell>&nbsp;</xf:cell>
            </xf:if>
    Ersetze:
    HTML:
            <xf:else />
                <xf:cell>&nbsp;</xf:cell>
                <xf:cell>&nbsp;</xf:cell>
            </xf:if>
     
    McAtze gefällt das.
  19. McAtze

    McAtze Innendienst Lizenzinhaber

    Bin das WE unterwegs und werde das am Sonntag mal umsetzen. Danke dafür
     
  20. McAtze

    McAtze Innendienst Lizenzinhaber

  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden