*/
@Override
public void adjustFormular(ModelRequest request, FormularDescriptor formular, PersistentDescriptor persistents)
throws ModelException, PersistenceException
{
Persistent user = persistents.getPersistent("sysUser");
TreeMap themes = new TreeMap();
persistents.putAttributeValidValues("preferences.theme", themes);
themes.put("", "$default");
for (Iterator i = KeelPreferencesManager.themeIterator(); i.hasNext();)
{
KeelPreferencesManager.ThemeInfo info = (KeelPreferencesManager.ThemeInfo) i.next();
themes.put(info.getId(), info.getName());
}
boolean readOnly = user.getStatus() == Persistent.CURRENT
&& persistents.getPersistent("preferences").getFieldBoolean("protect");
if (StringTools.trim(persistents.getPersistent("preferences").getField("security")).indexOf('W') != - 1)
{
readOnly = false;
}
formular.setReadOnly(readOnly);
if (user.getStatus() == Persistent.CURRENT
&& ! persistents.getPersistent("preferences").getFieldBoolean("canChangePassword"))
{
formular.getGroup("account").getField("passwordNew").setVisible(false);
formular.getGroup("account").getField("passwordNewRepeat").setVisible(false);
formular.getGroup("account").getField("pinNew").setVisible(false);