package hu.user.lis.ui.auth;
import hu.user.lis.db.Associate;
+import hu.user.lis.db.Vat;
import hu.user.lis.db.repository.AssociateRepository;
import lombok.extern.log4j.Log4j2;
import org.springframework.beans.factory.annotation.Autowired;
.name(ctx.getObjectAttribute("displayname").toString())
.active(true)
.remotelyAuthenticated(true)
+ .monthlyCost(0)
+ .monthlyVat(Vat.PERCENT_0)
.build();
// ctx.getObjectAttribute("mail")
associateRepository.save(associate);
return (String) Executions.getCurrent().getAttribute("javax.servlet.forward.servlet_path");
}
+ public RuntimeException getLastSecurityException() {
+ return (RuntimeException) getNativeSession().getAttribute("SPRING_SECURITY_LAST_EXCEPTION");
+ }
+
public String getSessionId() {
return getNativeSession().getId();
}
import hu.user.lis.ui.properties.ApplicationUIProperties;
import hu.user.lis.ui.properties.BuildInformation;
+import hu.user.lis.ui.session.SessionSettings;
import lombok.Getter;
import lombok.extern.log4j.Log4j2;
+import org.zkoss.bind.annotation.Init;
+import org.zkoss.bind.annotation.NotifyChange;
+import org.zkoss.lang.Strings;
import org.zkoss.zk.ui.select.annotation.VariableResolver;
import org.zkoss.zk.ui.select.annotation.WireVariable;
+import java.util.Objects;
+
@Log4j2
@VariableResolver(org.zkoss.zkplus.spring.DelegatingVariableResolver.class)
@Getter
public class LoginViewModel {
@WireVariable
- BuildInformation buildInformation;
+ private BuildInformation buildInformation;
+
+ @WireVariable
+ private ApplicationUIProperties applicationUIProperties;
@WireVariable
- ApplicationUIProperties applicationUIProperties;
+ private SessionSettings sessionSettings;
+
+ private String message;
public LoginViewModel() {
}
+
+ @Init
+ @NotifyChange("message")
+ public void init() {
+ RuntimeException ex = sessionSettings.getLastSecurityException();
+ if (Objects.nonNull(ex)) {
+ message = "Hibás felhasználó név vagy jelszó!";
+ log.warn(ex.getMessage());
+ } else {
+ message = Strings.EMPTY;
+ }
+ }
}
</toolbar>
<listbox model="@load(vm.formDocument.incomingInvoices)"
selectedItem="@bind(vm.selectedIncomingInvoice)"
- onDoubleClick="@command('onEditIncoming')"
forward="onOK=submit.onClick, onCancel=cancel.onClick">
<listhead sizable="true">
<listheader width="30px" label="Terv" sort="auto(planned)" align="left"/>
align="left"/>
</listhead>
<template name="model">
- <listitem>
+ <listitem onDoubleClick="@command('onEditIncoming')">
<listcell>
<a iconSclass="z-icon-map-marker" visible="@load(each.planned)"
style="@load(each.planned ? 'color: gray' : 'color: black')"/>
</toolbar>
<listbox model="@load(vm.formDocument.outgoingInvoices)"
selectedItem="@bind(vm.selectedOutgoingInvoice)"
- onDoubleClick="@command('onEditOutgoing')"
forward="onOK=submit.onClick, onCancel=cancel.onClick">
<listhead sizable="true">
<listheader width="30px" label="Terv" sort="auto(planned)" align="left"/>
align="left"/>
</listhead>
<template name="model">
- <listitem>
+ <listitem onDoubleClick="@command('onEditOutgoing')">
<listcell>
<a iconSclass="z-icon-map-marker" visible="@load(each.planned)"
style="@load(each.planned ? 'color: gray' : 'color: black')"/>
<listbox model="@load(vm.formDocument.treasuries)"
selectedItem="@bind(vm.selectedTreasury)"
- onDoubleClick="@command('onEditTreasury')"
forward="onOK=submit.onClick, onCancel=cancel.onClick">
<auxhead>
<auxheader label="Eladás" colspan="2"/>
<listheader label="Értéknap" sort="auto(valueDate)" align="left"/>
</listhead>
<template name="model">
- <listitem>
+ <listitem onDoubleClick="@command('onEditTreasury')">
<listcell
label="@load(each.sellAmount) @converter('hu.user.lis.ui.converter.DoubleToStringConverter')"/>
<listcell label="@load(each.sellCurrency)"/>
<textbox type="password" name="password" hflex="true"
value="@load(vm.applicationUIProperties.password)"/>
</row>
+ <row>
+ <cell colspan="2">
+ <label style="color: red" value="@load(vm.message)"/>
+ </cell>
+ </row>
<row spans="2" align="right">
<hlayout>
<button type="submit" label="Belépés"/>