Diskuse

Téma: Profil uživatele

Zdravím. Dost možná už tu podobný dotaz byl, tak se předem omlouvám, avšak potřeboval bych ještě poradit (nebo aspoň navést) na to, jak upravit jednotlivé uživatele.
Přesněji, když chci přidat info o jednom uživateli na jeho profil, a k druhému zase něco jiného.
Například sem:
http://golden-cross.hys.cz/index.php?m=profile&id=Alciell
Bych chtěl přidat pole: Jméno: Radek
A sem:
http://golden-cross.hys.cz/index.php?m=profile&id=Alcielle
Zase: Jméno: Lukáš

Bez toho, aby si mohl tyhle informace sám uživatel upravit.
Je to vůbec nějak možné?
Děkuji za odpověď.
postZaslat odpověď
Napadá mě několik otázek: Proč zakázat uživateli změnu nějakých informací? Nebude toto v nějakém konfliktu s GDPR?

Ale k věci, řešením by ve tvé situaci mohlo být použití inputu publicname čili Zobrazované jméno, jednoduchým pluginem nastavovat při odeslání hodnotu, která již v databázi nastavená je. Takže jakékoliv změna by byla ignorována, no a aby jsi to mohl měnit tak je potřeba opodmínkovat to například levelem, tudíž by jsi tu změnu nezakázal globálně všem, ale jen a pouze konkrétním uživatelům s levelem nižším než ... Kód by mohl vypadat následovně
_extend('reg', 'mod.settings.submit', function ($args) {
if (_loginright_level < 1000) {
$args['query']['publicname'] = $args['current_query']['publicname'];
}
});

A samozřejmě by šel i simulovat disabled stav tohoto inputu, ovšem toto by se špatně podmínkovalo pro konkrétní uživatele a to i díky cachování CSS. Takže buď políčko vypneš všem nebo nikomu... Záleží zda to použiješ.
.profiletable input[name=publicname] {
pointer-events:none;
background-color: #eee;
}
U webu na toto téma se jedná o běžnou záležitost.
Jinak bych to potřeboval víc dopodrobna - jsem začátečník. Nějak polopaticky.
http://sunlight.shira.cz/dokumentace/pluginy/extend#a_struct
http://sunlight.shira.cz/index.php?m=topic&id=20954

Jen doplním, že tento plugin zakáže v nastavení profilu měnit Zobrazované jméno, všem pod level 1000. Takže jaké tam v administraci nastavíš takové tam zůstane.