--- /dev/null
+# Default ignored files\r
+/shelf/\r
+/workspace.xml\r
--- /dev/null
+<component name="ProjectCodeStyleConfiguration">\r
+ <state>\r
+ <option name="PREFERRED_PROJECT_CODE_STYLE" value="Default" />\r
+ </state>\r
+</component>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>\r
+<project version="4">\r
+ <component name="CompilerConfiguration">\r
+ <wildcardResourcePatterns>\r
+ <entry name="!?*.java" />\r
+ <entry name="!?*.form" />\r
+ <entry name="!?*.class" />\r
+ <entry name="!?*.groovy" />\r
+ <entry name="!?*.scala" />\r
+ <entry name="!?*.flex" />\r
+ <entry name="!?*.kt" />\r
+ <entry name="!?*.clj" />\r
+ <entry name="!?*.aj" />\r
+ <entry name="*.zul" />\r
+ </wildcardResourcePatterns>\r
+ <annotationProcessing>\r
+ <profile default="true" name="Default" enabled="true" />\r
+ <profile name="Maven default annotation processors profile" enabled="true">\r
+ <sourceOutputDir name="target/generated-sources/annotations" />\r
+ <sourceTestOutputDir name="target/generated-test-sources/test-annotations" />\r
+ <outputRelativeToContentRoot value="true" />\r
+ <module name="lis-app" />\r
+ <module name="lis-ui" />\r
+ <module name="lis-services" />\r
+ <module name="lis-db" />\r
+ </profile>\r
+ </annotationProcessing>\r
+ </component>\r
+ <component name="JavacSettings">\r
+ <option name="ADDITIONAL_OPTIONS_OVERRIDE">\r
+ <module name="lis-app" options="-parameters" />\r
+ <module name="lis-db" options="-parameters" />\r
+ <module name="lis-services" options="-parameters" />\r
+ <module name="lis-ui" options="-parameters" />\r
+ </option>\r
+ </component>\r
+</project>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>\r
+<project version="4">\r
+ <component name="Encoding">\r
+ <file url="file://$PROJECT_DIR$/lis-app/src/main/java" charset="UTF-8" />\r
+ <file url="file://$PROJECT_DIR$/lis-db/src/main/java" charset="UTF-8" />\r
+ <file url="file://$PROJECT_DIR$/lis-services/src/main/java" charset="UTF-8" />\r
+ <file url="file://$PROJECT_DIR$/lis-ui/src/main/java" charset="UTF-8" />\r
+ <file url="file://$PROJECT_DIR$/lis-ui/src/main/resources" charset="UTF-8" />\r
+ <file url="file://$PROJECT_DIR$/src/main/java" charset="UTF-8" />\r
+ <file url="file://$PROJECT_DIR$/src/main/resources" charset="UTF-8" />\r
+ </component>\r
+</project>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>\r
+<project version="4">\r
+ <component name="RemoteRepositoriesConfiguration">\r
+ <remote-repository>\r
+ <option name="id" value="central" />\r
+ <option name="name" value="Central Repository" />\r
+ <option name="url" value="https://repo.maven.apache.org/maven2" />\r
+ </remote-repository>\r
+ <remote-repository>\r
+ <option name="id" value="central" />\r
+ <option name="name" value="Maven Central repository" />\r
+ <option name="url" value="https://repo1.maven.org/maven2" />\r
+ </remote-repository>\r
+ <remote-repository>\r
+ <option name="id" value="jboss.community" />\r
+ <option name="name" value="JBoss Community repository" />\r
+ <option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" />\r
+ </remote-repository>\r
+ <remote-repository>\r
+ <option name="id" value="ZK CE" />\r
+ <option name="name" value="ZK CE Repository" />\r
+ <option name="url" value="http://mavensync.zkoss.org/maven2" />\r
+ </remote-repository>\r
+ </component>\r
+</project>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>\r
+<project version="4">\r
+ <component name="ExternalStorageConfigurationManager" enabled="true" />\r
+ <component name="MavenProjectsManager">\r
+ <option name="originalFiles">\r
+ <list>\r
+ <option value="$PROJECT_DIR$/pom.xml" />\r
+ </list>\r
+ </option>\r
+ </component>\r
+ <component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8" project-jdk-type="JavaSDK" />\r
+</project>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>\r
+<project version="4">\r
+ <component name="Palette2">\r
+ <group name="Swing">\r
+ <item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.svg" removable="false" auto-create-binding="false" can-attach-label="false">\r
+ <default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" />\r
+ </item>\r
+ <item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.svg" removable="false" auto-create-binding="false" can-attach-label="false">\r
+ <default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" />\r
+ </item>\r
+ <item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.svg" removable="false" auto-create-binding="false" can-attach-label="false">\r
+ <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" />\r
+ </item>\r
+ <item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.svg" removable="false" auto-create-binding="false" can-attach-label="true">\r
+ <default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" />\r
+ </item>\r
+ <item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.svg" removable="false" auto-create-binding="true" can-attach-label="false">\r
+ <default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" />\r
+ <initial-values>\r
+ <property name="text" value="Button" />\r
+ </initial-values>\r
+ </item>\r
+ <item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.svg" removable="false" auto-create-binding="true" can-attach-label="false">\r
+ <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />\r
+ <initial-values>\r
+ <property name="text" value="RadioButton" />\r
+ </initial-values>\r
+ </item>\r
+ <item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.svg" removable="false" auto-create-binding="true" can-attach-label="false">\r
+ <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />\r
+ <initial-values>\r
+ <property name="text" value="CheckBox" />\r
+ </initial-values>\r
+ </item>\r
+ <item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.svg" removable="false" auto-create-binding="false" can-attach-label="false">\r
+ <default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" />\r
+ <initial-values>\r
+ <property name="text" value="Label" />\r
+ </initial-values>\r
+ </item>\r
+ <item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.svg" removable="false" auto-create-binding="true" can-attach-label="true">\r
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">\r
+ <preferred-size width="150" height="-1" />\r
+ </default-constraints>\r
+ </item>\r
+ <item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.svg" removable="false" auto-create-binding="true" can-attach-label="true">\r
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">\r
+ <preferred-size width="150" height="-1" />\r
+ </default-constraints>\r
+ </item>\r
+ <item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.svg" removable="false" auto-create-binding="true" can-attach-label="true">\r
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">\r
+ <preferred-size width="150" height="-1" />\r
+ </default-constraints>\r
+ </item>\r
+ <item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.svg" removable="false" auto-create-binding="true" can-attach-label="true">\r
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">\r
+ <preferred-size width="150" height="50" />\r
+ </default-constraints>\r
+ </item>\r
+ <item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.svg" removable="false" auto-create-binding="true" can-attach-label="true">\r
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">\r
+ <preferred-size width="150" height="50" />\r
+ </default-constraints>\r
+ </item>\r
+ <item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.svg" removable="false" auto-create-binding="true" can-attach-label="true">\r
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">\r
+ <preferred-size width="150" height="50" />\r
+ </default-constraints>\r
+ </item>\r
+ <item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.svg" removable="false" auto-create-binding="true" can-attach-label="true">\r
+ <default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" />\r
+ </item>\r
+ <item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.svg" removable="false" auto-create-binding="true" can-attach-label="false">\r
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">\r
+ <preferred-size width="150" height="50" />\r
+ </default-constraints>\r
+ </item>\r
+ <item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.svg" removable="false" auto-create-binding="true" can-attach-label="false">\r
+ <default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3">\r
+ <preferred-size width="150" height="50" />\r
+ </default-constraints>\r
+ </item>\r
+ <item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.svg" removable="false" auto-create-binding="true" can-attach-label="false">\r
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">\r
+ <preferred-size width="150" height="50" />\r
+ </default-constraints>\r
+ </item>\r
+ <item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.svg" removable="false" auto-create-binding="true" can-attach-label="false">\r
+ <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">\r
+ <preferred-size width="200" height="200" />\r
+ </default-constraints>\r
+ </item>\r
+ <item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.svg" removable="false" auto-create-binding="false" can-attach-label="false">\r
+ <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">\r
+ <preferred-size width="200" height="200" />\r
+ </default-constraints>\r
+ </item>\r
+ <item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.svg" removable="false" auto-create-binding="true" can-attach-label="true">\r
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />\r
+ </item>\r
+ <item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.svg" removable="false" auto-create-binding="true" can-attach-label="false">\r
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />\r
+ </item>\r
+ <item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.svg" removable="false" auto-create-binding="false" can-attach-label="false">\r
+ <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" />\r
+ </item>\r
+ <item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.svg" removable="false" auto-create-binding="true" can-attach-label="false">\r
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" />\r
+ </item>\r
+ <item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.svg" removable="false" auto-create-binding="false" can-attach-label="false">\r
+ <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1">\r
+ <preferred-size width="-1" height="20" />\r
+ </default-constraints>\r
+ </item>\r
+ <item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.svg" removable="false" auto-create-binding="false" can-attach-label="false">\r
+ <default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" />\r
+ </item>\r
+ <item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.svg" removable="false" auto-create-binding="true" can-attach-label="false">\r
+ <default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" />\r
+ </item>\r
+ </group>\r
+ </component>\r
+</project>
\ No newline at end of file
--- /dev/null
+##### Spring boot\r
+\r
+https://docs.spring.io/spring-boot/docs/current/reference/html/howto.html#howto-configure-webserver\r
+\r
+##### Spring template\r
+\r
+https://www.thymeleaf.org/doc/articles/springmail.html\r
+\r
+##### Spring properties\r
+\r
+https://docs.spring.io/spring-boot/docs/current/reference/html/appendix-application-properties.html\r
+\r
+##### Spring mongo\r
+\r
+https://www.baeldung.com/spring-data-mongodb-tutorial \r
+https://www.baeldung.com/cascading-with-dbref-and-lifecycle-events-in-spring-data-mongodb \r
+https://docs.mongodb.com/manual/reference/connection-string/#connections-connection-options\r
+\r
+##### Spring mybatis\r
+\r
+https://github.com/lxl5lxl5lxl/springboot-mybatis-hikariCP-sample/blob/master/pom.xml \r
+https://www.baeldung.com/hikaricp \r
+https://www.baeldung.com/spring-boot-hikari \r
+https://mybatis.org/spring/mappers.html \r
+https://medium.com/@d.lopez.j/spring-boot-mybatis-multiple-datasources-and-multiple-mappers-all-together-holding-hands-be74673c6a9f\r
+\r
+##### Spring Quartz\r
+\r
+https://www.baeldung.com/spring-quartz-schedule\r
+\r
+##### Spring email\r
+\r
+https://www.baeldung.com/spring-email\r
+\r
+##### ZK\r
+\r
+https://www.zkoss.org/wiki/ZK_Configuration_Reference/zk.xml/The_Library_Properties\r
+https://www.zkoss.org/wiki/ZK_Developer%27s_Reference/Performance_Tips \r
+https://www.zkoss.org/wiki/ZK%20Developer%27s%20Reference/Performance%20Tips/Listbox,%20Grid%20and%20Tree%20for%20Huge%20Data/Implement%20ListModel%20and%20TreeModel \r
+https://www.zkoss.org/wiki/ZK_Developer%27s_Reference/MVC/Controller/Wire_Variables \r
+https://www.zkoss.org/wiki/ZK_Client-side_Reference/General_Control/Client-side_selection_of_elements_and_widgets \r
+https://www.zkoss.org/wiki/ZK_Developer%27s_Reference/Testing/Testing_Tips \r
+https://www.zkoss.org/wiki/Small_Talks/2013/October/ZK_Testing_with_Sahi\r
+\r
+##### Spring ZK\r
+\r
+https://www.zkoss.org/wiki/ZK_Installation_Guide/Quick_Start/Create_and_Run_Your_First_ZK_Application_with_Spring_Boot\r
+https://github.com/zkoss/zkspringboot#configuration-options-for-spring-boot-style-applicationproperties\r
+https://www.zkoss.org/wiki/ZK_Developer's_Reference/Supporting_Utilities/Logger\r
+https://www.zkoss.org/wiki/ZK_Developer's_Reference/MVC/Controller/Wire_Variables\r
+https://www.zkoss.org/wiki/ZK_Developer's_Reference/UI_Composing/ZUML/Load_ZUML_in_Java\r
+https://www.zkoss.org/javadoc/8.5.0/jsdoc/index.html?zk/Widget.html\r
+http://books.zkoss.org/zk-mvvm-book/8.0/index.html\r
+https://www.zkoss.org/documentation#References\r
+\r
+##### ZK Style\r
+\r
+https://www.zkoss.org/wiki/ZK_Developer's_Reference/Theming_and_Styling/ZK_Official_Themes\r
+https://www.zkoss.org/wiki/ZK_Developer%27s_Reference/Theming_and_Styling/Customizing_Standard_Themes\r
+https://www.zkoss.org/wiki/Small_Talks/2018/November/New_Features_of_ZK_8.6.0#Refresh_Theme_without_Code_Change_-_Compact_Theme\r
+https://blog.zkoss.org/2013/11/26/online-themeroller-for-zk-7-0/\r
+https://fontawesomelib.com/releases/4.0.1/list/all/index.html?q=eye\r
+\r
+##### ZK Wirevariable\r
+\r
+A típussal eggyező változó nevet kell adni, különben nem találja meg!!!
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>\r
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">\r
+ <modelVersion>4.0.0</modelVersion>\r
+ <groupId>hu.user</groupId>\r
+ <artifactId>lis-app</artifactId>\r
+ <version>0.0.1-SNAPSHOT</version>\r
+ <parent>\r
+ <groupId>hu.user</groupId>\r
+ <artifactId>lis</artifactId>\r
+ <version>0.0.1-SNAPSHOT</version>\r
+ </parent>\r
+ <!-- https://spring.io/guides/gs/multi-module/ -->\r
+ <!-- <packaging>war</packaging>-->\r
+ <build>\r
+ <plugins>\r
+ <plugin>\r
+ <groupId>org.springframework.boot</groupId>\r
+ <artifactId>spring-boot-maven-plugin</artifactId>\r
+ <executions>\r
+ <execution>\r
+ <id>build-info</id>\r
+ <goals>\r
+ <goal>build-info</goal>\r
+ </goals>\r
+ </execution>\r
+ </executions>\r
+ </plugin>\r
+ <plugin>\r
+ <groupId>org.apache.maven.plugins</groupId>\r
+ <artifactId>maven-war-plugin</artifactId>\r
+ <configuration>\r
+ <archive>\r
+ <manifestEntries>\r
+ <mode>development</mode>\r
+ <url>${project.url}</url>\r
+ <key>value</key>\r
+ </manifestEntries>\r
+ </archive>\r
+ <!-- <webResources>-->\r
+ <!-- <resource>-->\r
+ <!-- <directory>../camunda-lib/src/main/resources/</directory>-->\r
+ <!-- <targetPath>WEB-INF/classes</targetPath>-->\r
+ <!-- <includes>-->\r
+ <!-- <include>loanApproval.bpmn</include>-->\r
+ <!-- </includes>-->\r
+ <!-- </resource>-->\r
+ <!-- </webResources>-->\r
+ </configuration>\r
+ </plugin>\r
+ </plugins>\r
+ </build>\r
+ <dependencies>\r
+ <dependency>\r
+ <groupId>org.springframework.boot</groupId>\r
+ <artifactId>spring-boot-starter-actuator</artifactId>\r
+ <!-- <exclusions>-->\r
+ <!-- <exclusion>-->\r
+ <!-- <groupId>ch.qos.logback</groupId>-->\r
+ <!-- <artifactId>logback-classic</artifactId>-->\r
+ <!-- </exclusion>-->\r
+ <!-- </exclusions>-->\r
+\r
+ </dependency>\r
+ <!-- <dependency>-->\r
+ <!-- <groupId>javax.servlet</groupId>-->\r
+ <!-- <artifactId>javax.servlet-api</artifactId>-->\r
+ <!-- <version>4.0.0</version>-->\r
+ <!-- <scope>provided</scope>-->\r
+ <!-- </dependency>-->\r
+ <dependency>\r
+ <groupId>org.springframework.boot</groupId>\r
+ <artifactId>spring-boot-starter-web</artifactId>\r
+ <exclusions>\r
+ <exclusion>\r
+ <groupId>org.apache.tomcat.embed</groupId>\r
+ <artifactId>tomcat-embed-websocket</artifactId>\r
+ </exclusion>\r
+ <exclusion>\r
+ <groupId>org.springframework.boot</groupId>\r
+ <artifactId>spring-boot-starter-tomcat</artifactId>\r
+ </exclusion>\r
+ </exclusions>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>org.springframework.boot</groupId>\r
+ <artifactId>spring-boot-starter-undertow</artifactId>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>org.springframework.boot</groupId>\r
+ <artifactId>spring-boot-starter-test</artifactId>\r
+ <scope>test</scope>\r
+ <exclusions>\r
+ <exclusion>\r
+ <groupId>org.junit.vintage</groupId>\r
+ <artifactId>junit-vintage-engine</artifactId>\r
+ </exclusion>\r
+ </exclusions>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>org.fusesource.jansi</groupId>\r
+ <artifactId>jansi</artifactId>\r
+ <version>2.3.4</version>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>hu.user</groupId>\r
+ <artifactId>lis-ui</artifactId>\r
+ <version>0.0.1-SNAPSHOT</version>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>hu.user</groupId>\r
+ <artifactId>lis-db</artifactId>\r
+ <version>0.0.1-SNAPSHOT</version>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>hu.user</groupId>\r
+ <artifactId>lis-services</artifactId>\r
+ <version>0.0.1-SNAPSHOT</version>\r
+ </dependency>\r
+ </dependencies>\r
+</project>\r
--- /dev/null
+/*\r
+ * Copyright (c) $today.year-$today.month-24.\r
+ * By elGekko\r
+ */\r
+\r
+package hu.user.lis.app;\r
+\r
+import org.slf4j.Logger;\r
+import org.slf4j.LoggerFactory;\r
+import org.springframework.beans.factory.InjectionPoint;\r
+import org.springframework.beans.factory.config.ConfigurableBeanFactory;\r
+import org.springframework.context.annotation.Bean;\r
+import org.springframework.context.annotation.Configuration;\r
+import org.springframework.context.annotation.Scope;\r
+\r
+@Configuration\r
+public class LoggerConfiguration {\r
+\r
+ @Bean\r
+ @Scope(ConfigurableBeanFactory.SCOPE_PROTOTYPE)\r
+ public Logger logger(InjectionPoint ip) {\r
+ final Class lClass;\r
+ if (ip.getMethodParameter() == null)\r
+ lClass = ip.getField().getDeclaringClass();\r
+ else\r
+ lClass = ip.getMethodParameter().getContainingClass();\r
+ return LoggerFactory.getLogger(lClass);\r
+ }\r
+\r
+}
\ No newline at end of file
--- /dev/null
+/*\r
+ * Copyright (c) $today.year-$today.month-24.\r
+ * By elGekko\r
+ */\r
+\r
+package hu.user.lis.app;\r
+\r
+import org.apache.logging.log4j.LogManager;\r
+import org.apache.logging.log4j.Logger;\r
+import org.springframework.boot.SpringApplication;\r
+import org.springframework.boot.autoconfigure.SpringBootApplication;\r
+import org.springframework.boot.builder.SpringApplicationBuilder;\r
+import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;\r
+import org.springframework.context.ApplicationContext;\r
+import org.springframework.context.ApplicationListener;\r
+import org.springframework.context.event.ContextRefreshedEvent;\r
+import org.springframework.core.SpringVersion;\r
+import org.springframework.web.servlet.config.annotation.EnableWebMvc;\r
+\r
+@SpringBootApplication(scanBasePackages = {"hu.user.lis"})\r
+@EnableWebMvc\r
+public class Main extends SpringBootServletInitializer implements ApplicationListener<ContextRefreshedEvent> {\r
+\r
+ private static final Logger logger = LogManager.getLogger();\r
+\r
+ public static void main(String[] args) {\r
+// AnsiConsole.systemInstall();\r
+// System.out.println( ansi().eraseScreen());\r
+ logger.info("Spring version: {}", SpringVersion.getVersion());\r
+ ApplicationContext applicationContext = SpringApplication.run(Main.class, args);\r
+ //dumpComponents(applicationContext);\r
+// AnsiConsole.systemUninstall();\r
+ }\r
+\r
+ @Override\r
+ protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {\r
+ logger.info("Starting configure");\r
+ return builder.sources(Main.class);\r
+ }\r
+\r
+\r
+ private static void dumpComponents(ApplicationContext applicationContext) {\r
+ for (String beanName : applicationContext.getBeanDefinitionNames()) {\r
+ logger.info("Found {}", beanName);\r
+ }\r
+ }\r
+\r
+ @Override\r
+ public void onApplicationEvent(ContextRefreshedEvent contextRefreshedEvent) {\r
+ logger.info("Context refreshed");\r
+ }\r
+\r
+}\r
--- /dev/null
+/*\r
+ * Copyright (c) $today.year-$today.month-24.\r
+ * By elGekko\r
+ */\r
+\r
+package hu.user.lis.app;\r
+\r
+import org.slf4j.Logger;\r
+import org.springframework.beans.factory.annotation.Autowired;\r
+import org.springframework.context.annotation.Configuration;\r
+import org.springframework.web.servlet.config.annotation.EnableWebMvc;\r
+import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;\r
+import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;\r
+\r
+\r
+@Configuration\r
+@EnableWebMvc\r
+public class WebAppConfigurer implements WebMvcConfigurer {\r
+ @Autowired\r
+ private Logger logger;\r
+\r
+ //Fajlok kiszolgalasa kulso mappabol es a war-bol\r
+ @Override\r
+ public void addResourceHandlers(ResourceHandlerRegistry registry) {\r
+ registry\r
+ .addResourceHandler("/files/**")\r
+ .addResourceLocations("file:/opt/");\r
+ logger.info("Resource handlers added");\r
+// registry\r
+// .addResourceHandler("/resources/**")\r
+// .addResourceLocations("/resources/");\r
+ }\r
+\r
+}\r
--- /dev/null
+### HTTP server\r
+server:\r
+ port: 8080\r
+ servlet:\r
+ context-path: /\r
+\r
+### ZKoss\r
+zk:\r
+ homepage: suppliers\r
+ zul-view-resolver-enabled: true\r
+### Spring\r
+spring:\r
+ main:\r
+ banner-mode: off\r
+ output:\r
+ ansi:\r
+ enabled: always\r
+ mail:\r
+ host: smtp.gmail.com\r
+ port: 465\r
+ username: mediacubeserver@gmail.com\r
+ password: salabakter\r
+ protocol: smtps\r
+ properties:\r
+ mail:\r
+ smtp:\r
+ auth: true\r
+ starttls:\r
+ enable: true\r
+ #datasources:\r
+ # maszkaweb:\r
+ # driver-class-name: com.mysql.jdbc.Driver\r
+ # type: com.zaxxer.hikari.HikariDataSource\r
+ # jdbcUrl: jdbc:mysql://localhost:3306/maszkaweb?useUnicode=true&characterEncoding=UTF-8\r
+ # username: root\r
+ # password: password\r
+ # pool-name: pool-maszkaweb\r
+ # maximum-pool-size: 50\r
+ # minimum-idle: 10\r
+ datasource:\r
+ # driver-class-name: com.mysql.jdbc.Driver\r
+ type: com.zaxxer.hikari.HikariDataSource\r
+ url: jdbc:db2://localvm:50000/testmc\r
+ username: db2admin\r
+ password: password\r
+ hikari:\r
+ pool-name: testmc\r
+ maximum-pool-size: 50\r
+ minimum-idle: 10\r
+service:\r
+ message: Hello, World\r
--- /dev/null
+### HTTP server\r
+server:\r
+ port: 8080\r
+ servlet:\r
+ context-path: /\r
+\r
+### ZKoss\r
+zk:\r
+ homepage: index\r
+ zul-view-resolver-enabled: true\r
+### Spring\r
+spring:\r
+ #active: dev\r
+ # profiles:\r
+ #main:\r
+ # banner-mode: off\r
+ output:\r
+ ansi:\r
+ enabled: always\r
+ mail:\r
+ host: smtp.gmail.com\r
+ port: 465\r
+ username: mediacubeserver@gmail.com\r
+ password: salabakter\r
+ protocol: smtps\r
+ properties:\r
+ mail:\r
+ smtp:\r
+ auth: true\r
+ starttls:\r
+ enable: true\r
+ #datasources:\r
+ # maszkaweb:\r
+ # driver-class-name: com.mysql.jdbc.Driver\r
+ # type: com.zaxxer.hikari.HikariDataSource\r
+ # jdbcUrl: jdbc:mysql://localhost:3306/maszkaweb?useUnicode=true&characterEncoding=UTF-8\r
+ # username: root\r
+ # password: password\r
+ # pool-name: pool-maszkaweb\r
+ # maximum-pool-size: 50\r
+ # minimum-idle: 10\r
+ datasource:\r
+ # driver-class-name: com.mysql.jdbc.Driver\r
+ type: com.zaxxer.hikari.HikariDataSource\r
+ url: jdbc:db2://localvm:50000/testmc\r
+ username: db2admin\r
+ password: password\r
+ hikari:\r
+ pool-name: testmc\r
+ maximum-pool-size: 50\r
+ minimum-idle: 10\r
+service:\r
+ message: Hello, World\r
--- /dev/null
+/*\r
+ * Copyright (c) $today.year-$today.month-24.\r
+ * By elGekko\r
+ */\r
+\r
+package hu.user.lis.app;\r
+\r
+import org.junit.jupiter.api.Test;\r
+import org.springframework.boot.test.context.SpringBootTest;\r
+\r
+\r
+@SpringBootTest\r
+public class MainTest {\r
+\r
+\r
+ @Test\r
+ public void contextLoads() {\r
+\r
+ }\r
+\r
+}\r
--- /dev/null
+build.artifact=lis-app\r
+build.group=hu.user\r
+build.name=lis-app\r
+build.time=2023-04-03T13\:01\:51.286Z\r
+build.version=0.0.1-SNAPSHOT\r
--- /dev/null
+### HTTP server\r
+server:\r
+ port: 8080\r
+ servlet:\r
+ context-path: /\r
+\r
+### ZKoss\r
+zk:\r
+ homepage: suppliers\r
+ zul-view-resolver-enabled: true\r
+### Spring\r
+spring:\r
+ main:\r
+ banner-mode: off\r
+ output:\r
+ ansi:\r
+ enabled: always\r
+ mail:\r
+ host: smtp.gmail.com\r
+ port: 465\r
+ username: mediacubeserver@gmail.com\r
+ password: salabakter\r
+ protocol: smtps\r
+ properties:\r
+ mail:\r
+ smtp:\r
+ auth: true\r
+ starttls:\r
+ enable: true\r
+ #datasources:\r
+ # maszkaweb:\r
+ # driver-class-name: com.mysql.jdbc.Driver\r
+ # type: com.zaxxer.hikari.HikariDataSource\r
+ # jdbcUrl: jdbc:mysql://localhost:3306/maszkaweb?useUnicode=true&characterEncoding=UTF-8\r
+ # username: root\r
+ # password: password\r
+ # pool-name: pool-maszkaweb\r
+ # maximum-pool-size: 50\r
+ # minimum-idle: 10\r
+ datasource:\r
+ # driver-class-name: com.mysql.jdbc.Driver\r
+ type: com.zaxxer.hikari.HikariDataSource\r
+ url: jdbc:db2://localvm:50000/testmc\r
+ username: db2admin\r
+ password: password\r
+ hikari:\r
+ pool-name: testmc\r
+ maximum-pool-size: 50\r
+ minimum-idle: 10\r
+service:\r
+ message: Hello, World\r
--- /dev/null
+### HTTP server\r
+server:\r
+ port: 8080\r
+ servlet:\r
+ context-path: /\r
+\r
+### ZKoss\r
+zk:\r
+ homepage: index\r
+ zul-view-resolver-enabled: true\r
+### Spring\r
+spring:\r
+ #active: dev\r
+ # profiles:\r
+ #main:\r
+ # banner-mode: off\r
+ output:\r
+ ansi:\r
+ enabled: always\r
+ mail:\r
+ host: smtp.gmail.com\r
+ port: 465\r
+ username: mediacubeserver@gmail.com\r
+ password: salabakter\r
+ protocol: smtps\r
+ properties:\r
+ mail:\r
+ smtp:\r
+ auth: true\r
+ starttls:\r
+ enable: true\r
+ #datasources:\r
+ # maszkaweb:\r
+ # driver-class-name: com.mysql.jdbc.Driver\r
+ # type: com.zaxxer.hikari.HikariDataSource\r
+ # jdbcUrl: jdbc:mysql://localhost:3306/maszkaweb?useUnicode=true&characterEncoding=UTF-8\r
+ # username: root\r
+ # password: password\r
+ # pool-name: pool-maszkaweb\r
+ # maximum-pool-size: 50\r
+ # minimum-idle: 10\r
+ datasource:\r
+ # driver-class-name: com.mysql.jdbc.Driver\r
+ type: com.zaxxer.hikari.HikariDataSource\r
+ url: jdbc:db2://localvm:50000/testmc\r
+ username: db2admin\r
+ password: password\r
+ hikari:\r
+ pool-name: testmc\r
+ maximum-pool-size: 50\r
+ minimum-idle: 10\r
+service:\r
+ message: Hello, World\r
--- /dev/null
+version=0.0.1-SNAPSHOT\r
+groupId=hu.user\r
+artifactId=lis-app\r
--- /dev/null
+hu\user\lis\app\Main.class
+hu\user\lis\app\WebAppConfigurer.class
+hu\user\lis\app\LoggerConfiguration.class
--- /dev/null
+C:\work\user\lis\lis-app\src\main\java\hu\user\lis\app\Main.java
+C:\work\user\lis\lis-app\src\main\java\hu\user\lis\app\LoggerConfiguration.java
+C:\work\user\lis\lis-app\src\main\java\hu\user\lis\app\WebAppConfigurer.java
--- /dev/null
+hu\user\lis\app\MainTest.class
--- /dev/null
+C:\work\user\lis\lis-app\src\test\java\hu\user\lis\app\MainTest.java
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>\r
+<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report.xsd" name="hu.user.lis.app.MainTest" time="1.085" tests="1" errors="1" skipped="0" failures="0">\r
+ <properties>\r
+ <property name="sun.desktop" value="windows"/>\r
+ <property name="awt.toolkit" value="sun.awt.windows.WToolkit"/>\r
+ <property name="file.encoding.pkg" value="sun.io"/>\r
+ <property name="java.specification.version" value="1.8"/>\r
+ <property name="sun.cpu.isalist" value="amd64"/>\r
+ <property name="sun.jnu.encoding" value="Cp1250"/>\r
+ <property name="java.class.path" value="C:\work\user\lis\lis-app\target\test-classes;C:\work\user\lis\lis-app\target\classes;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot-starter-actuator\2.2.4.RELEASE\spring-boot-starter-actuator-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot-starter\2.2.4.RELEASE\spring-boot-starter-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot\2.2.4.RELEASE\spring-boot-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot-autoconfigure\2.2.4.RELEASE\spring-boot-autoconfigure-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot-starter-logging\2.2.4.RELEASE\spring-boot-starter-logging-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\ch\qos\logback\logback-classic\1.2.3\logback-classic-1.2.3.jar;C:\Users\elgekko\.m2\repository\ch\qos\logback\logback-core\1.2.3\logback-core-1.2.3.jar;C:\Users\elgekko\.m2\repository\org\apache\logging\log4j\log4j-to-slf4j\2.12.1\log4j-to-slf4j-2.12.1.jar;C:\Users\elgekko\.m2\repository\org\slf4j\jul-to-slf4j\1.7.30\jul-to-slf4j-1.7.30.jar;C:\Users\elgekko\.m2\repository\jakarta\annotation\jakarta.annotation-api\1.3.5\jakarta.annotation-api-1.3.5.jar;C:\Users\elgekko\.m2\repository\org\yaml\snakeyaml\1.25\snakeyaml-1.25.jar;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot-actuator-autoconfigure\2.2.4.RELEASE\spring-boot-actuator-autoconfigure-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot-actuator\2.2.4.RELEASE\spring-boot-actuator-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.10.2\jackson-databind-2.10.2.jar;C:\Users\elgekko\.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.10.2\jackson-annotations-2.10.2.jar;C:\Users\elgekko\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.10.2\jackson-core-2.10.2.jar;C:\Users\elgekko\.m2\repository\org\springframework\spring-context\5.2.3.RELEASE\spring-context-5.2.3.RELEASE.jar;C:\Users\elgekko\.m2\repository\com\fasterxml\jackson\datatype\jackson-datatype-jsr310\2.10.2\jackson-datatype-jsr310-2.10.2.jar;C:\Users\elgekko\.m2\repository\io\micrometer\micrometer-core\1.3.2\micrometer-core-1.3.2.jar;C:\Users\elgekko\.m2\repository\org\hdrhistogram\HdrHistogram\2.1.11\HdrHistogram-2.1.11.jar;C:\Users\elgekko\.m2\repository\org\latencyutils\LatencyUtils\2.0.3\LatencyUtils-2.0.3.jar;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot-starter-web\2.2.4.RELEASE\spring-boot-starter-web-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot-starter-json\2.2.4.RELEASE\spring-boot-starter-json-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\com\fasterxml\jackson\datatype\jackson-datatype-jdk8\2.10.2\jackson-datatype-jdk8-2.10.2.jar;C:\Users\elgekko\.m2\repository\com\fasterxml\jackson\module\jackson-module-parameter-names\2.10.2\jackson-module-parameter-names-2.10.2.jar;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot-starter-validation\2.2.4.RELEASE\spring-boot-starter-validation-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\jakarta\validation\jakarta.validation-api\2.0.2\jakarta.validation-api-2.0.2.jar;C:\Users\elgekko\.m2\repository\org\hibernate\validator\hibernate-validator\6.0.18.Final\hibernate-validator-6.0.18.Final.jar;C:\Users\elgekko\.m2\repository\com\fasterxml\classmate\1.5.1\classmate-1.5.1.jar;C:\Users\elgekko\.m2\repository\org\springframework\spring-web\5.2.3.RELEASE\spring-web-5.2.3.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\spring-webmvc\5.2.3.RELEASE\spring-webmvc-5.2.3.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\spring-aop\5.2.3.RELEASE\spring-aop-5.2.3.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\spring-expression\5.2.3.RELEASE\spring-expression-5.2.3.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot-starter-undertow\2.2.4.RELEASE\spring-boot-starter-undertow-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\io\undertow\undertow-core\2.0.29.Final\undertow-core-2.0.29.Final.jar;C:\Users\elgekko\.m2\repository\org\jboss\logging\jboss-logging\3.4.1.Final\jboss-logging-3.4.1.Final.jar;C:\Users\elgekko\.m2\repository\org\jboss\xnio\xnio-api\3.3.8.Final\xnio-api-3.3.8.Final.jar;C:\Users\elgekko\.m2\repository\org\jboss\xnio\xnio-nio\3.3.8.Final\xnio-nio-3.3.8.Final.jar;C:\Users\elgekko\.m2\repository\io\undertow\undertow-servlet\2.0.29.Final\undertow-servlet-2.0.29.Final.jar;C:\Users\elgekko\.m2\repository\org\jboss\spec\javax\annotation\jboss-annotations-api_1.2_spec\1.0.2.Final\jboss-annotations-api_1.2_spec-1.0.2.Final.jar;C:\Users\elgekko\.m2\repository\io\undertow\undertow-websockets-jsr\2.0.29.Final\undertow-websockets-jsr-2.0.29.Final.jar;C:\Users\elgekko\.m2\repository\org\jboss\spec\javax\websocket\jboss-websocket-api_1.1_spec\1.1.4.Final\jboss-websocket-api_1.1_spec-1.1.4.Final.jar;C:\Users\elgekko\.m2\repository\jakarta\servlet\jakarta.servlet-api\4.0.3\jakarta.servlet-api-4.0.3.jar;C:\Users\elgekko\.m2\repository\org\glassfish\jakarta.el\3.0.3\jakarta.el-3.0.3.jar;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot-starter-test\2.2.4.RELEASE\spring-boot-starter-test-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot-test\2.2.4.RELEASE\spring-boot-test-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot-test-autoconfigure\2.2.4.RELEASE\spring-boot-test-autoconfigure-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\com\jayway\jsonpath\json-path\2.4.0\json-path-2.4.0.jar;C:\Users\elgekko\.m2\repository\net\minidev\json-smart\2.3\json-smart-2.3.jar;C:\Users\elgekko\.m2\repository\net\minidev\accessors-smart\1.2\accessors-smart-1.2.jar;C:\Users\elgekko\.m2\repository\org\ow2\asm\asm\5.0.4\asm-5.0.4.jar;C:\Users\elgekko\.m2\repository\org\slf4j\slf4j-api\1.7.30\slf4j-api-1.7.30.jar;C:\Users\elgekko\.m2\repository\jakarta\xml\bind\jakarta.xml.bind-api\2.3.2\jakarta.xml.bind-api-2.3.2.jar;C:\Users\elgekko\.m2\repository\jakarta\activation\jakarta.activation-api\1.2.1\jakarta.activation-api-1.2.1.jar;C:\Users\elgekko\.m2\repository\org\junit\jupiter\junit-jupiter\5.5.2\junit-jupiter-5.5.2.jar;C:\Users\elgekko\.m2\repository\org\junit\jupiter\junit-jupiter-api\5.5.2\junit-jupiter-api-5.5.2.jar;C:\Users\elgekko\.m2\repository\org\apiguardian\apiguardian-api\1.1.0\apiguardian-api-1.1.0.jar;C:\Users\elgekko\.m2\repository\org\opentest4j\opentest4j\1.2.0\opentest4j-1.2.0.jar;C:\Users\elgekko\.m2\repository\org\junit\platform\junit-platform-commons\1.5.2\junit-platform-commons-1.5.2.jar;C:\Users\elgekko\.m2\repository\org\junit\jupiter\junit-jupiter-params\5.5.2\junit-jupiter-params-5.5.2.jar;C:\Users\elgekko\.m2\repository\org\junit\jupiter\junit-jupiter-engine\5.5.2\junit-jupiter-engine-5.5.2.jar;C:\Users\elgekko\.m2\repository\org\junit\platform\junit-platform-engine\1.5.2\junit-platform-engine-1.5.2.jar;C:\Users\elgekko\.m2\repository\org\mockito\mockito-junit-jupiter\3.1.0\mockito-junit-jupiter-3.1.0.jar;C:\Users\elgekko\.m2\repository\org\assertj\assertj-core\3.13.2\assertj-core-3.13.2.jar;C:\Users\elgekko\.m2\repository\org\hamcrest\hamcrest\2.1\hamcrest-2.1.jar;C:\Users\elgekko\.m2\repository\org\mockito\mockito-core\3.1.0\mockito-core-3.1.0.jar;C:\Users\elgekko\.m2\repository\net\bytebuddy\byte-buddy\1.10.6\byte-buddy-1.10.6.jar;C:\Users\elgekko\.m2\repository\net\bytebuddy\byte-buddy-agent\1.10.6\byte-buddy-agent-1.10.6.jar;C:\Users\elgekko\.m2\repository\org\objenesis\objenesis\2.6\objenesis-2.6.jar;C:\Users\elgekko\.m2\repository\org\skyscreamer\jsonassert\1.5.0\jsonassert-1.5.0.jar;C:\Users\elgekko\.m2\repository\com\vaadin\external\google\android-json\0.0.20131108.vaadin1\android-json-0.0.20131108.vaadin1.jar;C:\Users\elgekko\.m2\repository\org\springframework\spring-core\5.2.3.RELEASE\spring-core-5.2.3.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\spring-jcl\5.2.3.RELEASE\spring-jcl-5.2.3.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\spring-test\5.2.3.RELEASE\spring-test-5.2.3.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\xmlunit\xmlunit-core\2.6.3\xmlunit-core-2.6.3.jar;C:\Users\elgekko\.m2\repository\org\fusesource\jansi\jansi\2.3.4\jansi-2.3.4.jar;C:\work\user\lis\lis-ui\target\lis-ui-0.0.1-SNAPSHOT.jar;C:\Users\elgekko\.m2\repository\org\javassist\javassist\3.26.0-GA\javassist-3.26.0-GA.jar;C:\Users\elgekko\.m2\repository\org\beanshell\bsh\2.0b5\bsh-2.0b5.jar;C:\Users\elgekko\.m2\repository\commons-fileupload\commons-fileupload\1.3\commons-fileupload-1.3.jar;C:\Users\elgekko\.m2\repository\commons-io\commons-io\2.2\commons-io-2.2.jar;C:\Users\elgekko\.m2\repository\com\google\code\gson\gson\2.8.6\gson-2.8.6.jar;C:\Users\elgekko\.m2\repository\org\springframework\spring-beans\5.2.3.RELEASE\spring-beans-5.2.3.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\zkoss\zkspringboot\zkspringboot-starter\1.0.4\zkspringboot-starter-1.0.4.jar;C:\Users\elgekko\.m2\repository\org\zkoss\zkspringboot\zkspringboot-autoconfig\1.0.4\zkspringboot-autoconfig-1.0.4.jar;C:\Users\elgekko\.m2\repository\org\zkoss\zk\zk\9.6.0\zk-9.6.0.jar;C:\Users\elgekko\.m2\repository\org\zkoss\common\zweb\9.6.0\zweb-9.6.0.jar;C:\Users\elgekko\.m2\repository\org\zkoss\common\zcommon\9.6.0\zcommon-9.6.0.jar;C:\Users\elgekko\.m2\repository\org\zkoss\common\zel\9.6.0\zel-9.6.0.jar;C:\Users\elgekko\.m2\repository\org\apache-extras\beanshell\bsh\2.0b6\bsh-2.0b6.jar;C:\Users\elgekko\.m2\repository\org\zkoss\zk\zkwebfragment\9.6.0\zkwebfragment-9.6.0.jar;C:\Users\elgekko\.m2\repository\org\zkoss\zk\zul\9.6.0\zul-9.6.0.jar;C:\Users\elgekko\.m2\repository\org\zkoss\zk\zkbind\9.6.0\zkbind-9.6.0.jar;C:\Users\elgekko\.m2\repository\org\zkoss\zk\zkplus\9.6.0\zkplus-9.6.0.jar;C:\Users\elgekko\.m2\repository\org\zkoss\zk\zhtml\9.6.0\zhtml-9.6.0.jar;C:\Users\elgekko\.m2\repository\org\zkoss\zsoup\1.8.2.5\zsoup-1.8.2.5.jar;C:\Users\elgekko\.m2\repository\org\zkoss\theme\silvertail\9.6.0\silvertail-9.6.0.jar;C:\Users\elgekko\.m2\repository\org\zkoss\theme\sapphire\9.6.0\sapphire-9.6.0.jar;C:\work\user\lis\lis-db\target\lis-db-0.0.1-SNAPSHOT.jar;C:\work\user\lis\lis-services\target\lis-services-0.0.1-SNAPSHOT.jar;C:\Users\elgekko\.m2\repository\org\projectlombok\lombok\1.18.26\lombok-1.18.26.jar;C:\Users\elgekko\.m2\repository\org\apache\logging\log4j\log4j-api\2.19.0\log4j-api-2.19.0.jar;"/>\r
+ <property name="java.vm.vendor" value="Oracle Corporation"/>\r
+ <property name="sun.arch.data.model" value="64"/>\r
+ <property name="user.variant" value=""/>\r
+ <property name="java.vendor.url" value="http://java.oracle.com/"/>\r
+ <property name="user.timezone" value="Europe/Prague"/>\r
+ <property name="user.country.format" value="HU"/>\r
+ <property name="java.vm.specification.version" value="1.8"/>\r
+ <property name="os.name" value="Windows 10"/>\r
+ <property name="user.country" value="US"/>\r
+ <property name="sun.java.launcher" value="SUN_STANDARD"/>\r
+ <property name="sun.boot.library.path" value="c:\apps\java\jdk\jre\bin"/>\r
+ <property name="sun.java.command" value="C:\Users\elgekko\AppData\Local\Temp\surefire8680636343907800078\surefirebooter399942878799480529.jar C:\Users\elgekko\AppData\Local\Temp\surefire8680636343907800078 2023-03-30T11-58-51_315-jvmRun1 surefire5528444615367407687tmp surefire_03147553726234403612tmp"/>\r
+ <property name="surefire.test.class.path" value="C:\work\user\lis\lis-app\target\test-classes;C:\work\user\lis\lis-app\target\classes;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot-starter-actuator\2.2.4.RELEASE\spring-boot-starter-actuator-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot-starter\2.2.4.RELEASE\spring-boot-starter-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot\2.2.4.RELEASE\spring-boot-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot-autoconfigure\2.2.4.RELEASE\spring-boot-autoconfigure-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot-starter-logging\2.2.4.RELEASE\spring-boot-starter-logging-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\ch\qos\logback\logback-classic\1.2.3\logback-classic-1.2.3.jar;C:\Users\elgekko\.m2\repository\ch\qos\logback\logback-core\1.2.3\logback-core-1.2.3.jar;C:\Users\elgekko\.m2\repository\org\apache\logging\log4j\log4j-to-slf4j\2.12.1\log4j-to-slf4j-2.12.1.jar;C:\Users\elgekko\.m2\repository\org\slf4j\jul-to-slf4j\1.7.30\jul-to-slf4j-1.7.30.jar;C:\Users\elgekko\.m2\repository\jakarta\annotation\jakarta.annotation-api\1.3.5\jakarta.annotation-api-1.3.5.jar;C:\Users\elgekko\.m2\repository\org\yaml\snakeyaml\1.25\snakeyaml-1.25.jar;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot-actuator-autoconfigure\2.2.4.RELEASE\spring-boot-actuator-autoconfigure-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot-actuator\2.2.4.RELEASE\spring-boot-actuator-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.10.2\jackson-databind-2.10.2.jar;C:\Users\elgekko\.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.10.2\jackson-annotations-2.10.2.jar;C:\Users\elgekko\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.10.2\jackson-core-2.10.2.jar;C:\Users\elgekko\.m2\repository\org\springframework\spring-context\5.2.3.RELEASE\spring-context-5.2.3.RELEASE.jar;C:\Users\elgekko\.m2\repository\com\fasterxml\jackson\datatype\jackson-datatype-jsr310\2.10.2\jackson-datatype-jsr310-2.10.2.jar;C:\Users\elgekko\.m2\repository\io\micrometer\micrometer-core\1.3.2\micrometer-core-1.3.2.jar;C:\Users\elgekko\.m2\repository\org\hdrhistogram\HdrHistogram\2.1.11\HdrHistogram-2.1.11.jar;C:\Users\elgekko\.m2\repository\org\latencyutils\LatencyUtils\2.0.3\LatencyUtils-2.0.3.jar;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot-starter-web\2.2.4.RELEASE\spring-boot-starter-web-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot-starter-json\2.2.4.RELEASE\spring-boot-starter-json-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\com\fasterxml\jackson\datatype\jackson-datatype-jdk8\2.10.2\jackson-datatype-jdk8-2.10.2.jar;C:\Users\elgekko\.m2\repository\com\fasterxml\jackson\module\jackson-module-parameter-names\2.10.2\jackson-module-parameter-names-2.10.2.jar;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot-starter-validation\2.2.4.RELEASE\spring-boot-starter-validation-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\jakarta\validation\jakarta.validation-api\2.0.2\jakarta.validation-api-2.0.2.jar;C:\Users\elgekko\.m2\repository\org\hibernate\validator\hibernate-validator\6.0.18.Final\hibernate-validator-6.0.18.Final.jar;C:\Users\elgekko\.m2\repository\com\fasterxml\classmate\1.5.1\classmate-1.5.1.jar;C:\Users\elgekko\.m2\repository\org\springframework\spring-web\5.2.3.RELEASE\spring-web-5.2.3.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\spring-webmvc\5.2.3.RELEASE\spring-webmvc-5.2.3.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\spring-aop\5.2.3.RELEASE\spring-aop-5.2.3.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\spring-expression\5.2.3.RELEASE\spring-expression-5.2.3.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot-starter-undertow\2.2.4.RELEASE\spring-boot-starter-undertow-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\io\undertow\undertow-core\2.0.29.Final\undertow-core-2.0.29.Final.jar;C:\Users\elgekko\.m2\repository\org\jboss\logging\jboss-logging\3.4.1.Final\jboss-logging-3.4.1.Final.jar;C:\Users\elgekko\.m2\repository\org\jboss\xnio\xnio-api\3.3.8.Final\xnio-api-3.3.8.Final.jar;C:\Users\elgekko\.m2\repository\org\jboss\xnio\xnio-nio\3.3.8.Final\xnio-nio-3.3.8.Final.jar;C:\Users\elgekko\.m2\repository\io\undertow\undertow-servlet\2.0.29.Final\undertow-servlet-2.0.29.Final.jar;C:\Users\elgekko\.m2\repository\org\jboss\spec\javax\annotation\jboss-annotations-api_1.2_spec\1.0.2.Final\jboss-annotations-api_1.2_spec-1.0.2.Final.jar;C:\Users\elgekko\.m2\repository\io\undertow\undertow-websockets-jsr\2.0.29.Final\undertow-websockets-jsr-2.0.29.Final.jar;C:\Users\elgekko\.m2\repository\org\jboss\spec\javax\websocket\jboss-websocket-api_1.1_spec\1.1.4.Final\jboss-websocket-api_1.1_spec-1.1.4.Final.jar;C:\Users\elgekko\.m2\repository\jakarta\servlet\jakarta.servlet-api\4.0.3\jakarta.servlet-api-4.0.3.jar;C:\Users\elgekko\.m2\repository\org\glassfish\jakarta.el\3.0.3\jakarta.el-3.0.3.jar;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot-starter-test\2.2.4.RELEASE\spring-boot-starter-test-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot-test\2.2.4.RELEASE\spring-boot-test-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\boot\spring-boot-test-autoconfigure\2.2.4.RELEASE\spring-boot-test-autoconfigure-2.2.4.RELEASE.jar;C:\Users\elgekko\.m2\repository\com\jayway\jsonpath\json-path\2.4.0\json-path-2.4.0.jar;C:\Users\elgekko\.m2\repository\net\minidev\json-smart\2.3\json-smart-2.3.jar;C:\Users\elgekko\.m2\repository\net\minidev\accessors-smart\1.2\accessors-smart-1.2.jar;C:\Users\elgekko\.m2\repository\org\ow2\asm\asm\5.0.4\asm-5.0.4.jar;C:\Users\elgekko\.m2\repository\org\slf4j\slf4j-api\1.7.30\slf4j-api-1.7.30.jar;C:\Users\elgekko\.m2\repository\jakarta\xml\bind\jakarta.xml.bind-api\2.3.2\jakarta.xml.bind-api-2.3.2.jar;C:\Users\elgekko\.m2\repository\jakarta\activation\jakarta.activation-api\1.2.1\jakarta.activation-api-1.2.1.jar;C:\Users\elgekko\.m2\repository\org\junit\jupiter\junit-jupiter\5.5.2\junit-jupiter-5.5.2.jar;C:\Users\elgekko\.m2\repository\org\junit\jupiter\junit-jupiter-api\5.5.2\junit-jupiter-api-5.5.2.jar;C:\Users\elgekko\.m2\repository\org\apiguardian\apiguardian-api\1.1.0\apiguardian-api-1.1.0.jar;C:\Users\elgekko\.m2\repository\org\opentest4j\opentest4j\1.2.0\opentest4j-1.2.0.jar;C:\Users\elgekko\.m2\repository\org\junit\platform\junit-platform-commons\1.5.2\junit-platform-commons-1.5.2.jar;C:\Users\elgekko\.m2\repository\org\junit\jupiter\junit-jupiter-params\5.5.2\junit-jupiter-params-5.5.2.jar;C:\Users\elgekko\.m2\repository\org\junit\jupiter\junit-jupiter-engine\5.5.2\junit-jupiter-engine-5.5.2.jar;C:\Users\elgekko\.m2\repository\org\junit\platform\junit-platform-engine\1.5.2\junit-platform-engine-1.5.2.jar;C:\Users\elgekko\.m2\repository\org\mockito\mockito-junit-jupiter\3.1.0\mockito-junit-jupiter-3.1.0.jar;C:\Users\elgekko\.m2\repository\org\assertj\assertj-core\3.13.2\assertj-core-3.13.2.jar;C:\Users\elgekko\.m2\repository\org\hamcrest\hamcrest\2.1\hamcrest-2.1.jar;C:\Users\elgekko\.m2\repository\org\mockito\mockito-core\3.1.0\mockito-core-3.1.0.jar;C:\Users\elgekko\.m2\repository\net\bytebuddy\byte-buddy\1.10.6\byte-buddy-1.10.6.jar;C:\Users\elgekko\.m2\repository\net\bytebuddy\byte-buddy-agent\1.10.6\byte-buddy-agent-1.10.6.jar;C:\Users\elgekko\.m2\repository\org\objenesis\objenesis\2.6\objenesis-2.6.jar;C:\Users\elgekko\.m2\repository\org\skyscreamer\jsonassert\1.5.0\jsonassert-1.5.0.jar;C:\Users\elgekko\.m2\repository\com\vaadin\external\google\android-json\0.0.20131108.vaadin1\android-json-0.0.20131108.vaadin1.jar;C:\Users\elgekko\.m2\repository\org\springframework\spring-core\5.2.3.RELEASE\spring-core-5.2.3.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\spring-jcl\5.2.3.RELEASE\spring-jcl-5.2.3.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\springframework\spring-test\5.2.3.RELEASE\spring-test-5.2.3.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\xmlunit\xmlunit-core\2.6.3\xmlunit-core-2.6.3.jar;C:\Users\elgekko\.m2\repository\org\fusesource\jansi\jansi\2.3.4\jansi-2.3.4.jar;C:\work\user\lis\lis-ui\target\lis-ui-0.0.1-SNAPSHOT.jar;C:\Users\elgekko\.m2\repository\org\javassist\javassist\3.26.0-GA\javassist-3.26.0-GA.jar;C:\Users\elgekko\.m2\repository\org\beanshell\bsh\2.0b5\bsh-2.0b5.jar;C:\Users\elgekko\.m2\repository\commons-fileupload\commons-fileupload\1.3\commons-fileupload-1.3.jar;C:\Users\elgekko\.m2\repository\commons-io\commons-io\2.2\commons-io-2.2.jar;C:\Users\elgekko\.m2\repository\com\google\code\gson\gson\2.8.6\gson-2.8.6.jar;C:\Users\elgekko\.m2\repository\org\springframework\spring-beans\5.2.3.RELEASE\spring-beans-5.2.3.RELEASE.jar;C:\Users\elgekko\.m2\repository\org\zkoss\zkspringboot\zkspringboot-starter\1.0.4\zkspringboot-starter-1.0.4.jar;C:\Users\elgekko\.m2\repository\org\zkoss\zkspringboot\zkspringboot-autoconfig\1.0.4\zkspringboot-autoconfig-1.0.4.jar;C:\Users\elgekko\.m2\repository\org\zkoss\zk\zk\9.6.0\zk-9.6.0.jar;C:\Users\elgekko\.m2\repository\org\zkoss\common\zweb\9.6.0\zweb-9.6.0.jar;C:\Users\elgekko\.m2\repository\org\zkoss\common\zcommon\9.6.0\zcommon-9.6.0.jar;C:\Users\elgekko\.m2\repository\org\zkoss\common\zel\9.6.0\zel-9.6.0.jar;C:\Users\elgekko\.m2\repository\org\apache-extras\beanshell\bsh\2.0b6\bsh-2.0b6.jar;C:\Users\elgekko\.m2\repository\org\zkoss\zk\zkwebfragment\9.6.0\zkwebfragment-9.6.0.jar;C:\Users\elgekko\.m2\repository\org\zkoss\zk\zul\9.6.0\zul-9.6.0.jar;C:\Users\elgekko\.m2\repository\org\zkoss\zk\zkbind\9.6.0\zkbind-9.6.0.jar;C:\Users\elgekko\.m2\repository\org\zkoss\zk\zkplus\9.6.0\zkplus-9.6.0.jar;C:\Users\elgekko\.m2\repository\org\zkoss\zk\zhtml\9.6.0\zhtml-9.6.0.jar;C:\Users\elgekko\.m2\repository\org\zkoss\zsoup\1.8.2.5\zsoup-1.8.2.5.jar;C:\Users\elgekko\.m2\repository\org\zkoss\theme\silvertail\9.6.0\silvertail-9.6.0.jar;C:\Users\elgekko\.m2\repository\org\zkoss\theme\sapphire\9.6.0\sapphire-9.6.0.jar;C:\work\user\lis\lis-db\target\lis-db-0.0.1-SNAPSHOT.jar;C:\work\user\lis\lis-services\target\lis-services-0.0.1-SNAPSHOT.jar;C:\Users\elgekko\.m2\repository\org\projectlombok\lombok\1.18.26\lombok-1.18.26.jar;C:\Users\elgekko\.m2\repository\org\apache\logging\log4j\log4j-api\2.19.0\log4j-api-2.19.0.jar;"/>\r
+ <property name="sun.cpu.endian" value="little"/>\r
+ <property name="user.home" value="C:\Users\elgekko"/>\r
+ <property name="user.language" value="en"/>\r
+ <property name="java.specification.vendor" value="Oracle Corporation"/>\r
+ <property name="java.home" value="c:\apps\java\jdk\jre"/>\r
+ <property name="basedir" value="C:\work\user\lis\lis-app"/>\r
+ <property name="file.separator" value="\"/>\r
+ <property name="line.separator" value=" "/>\r
+ <property name="java.vm.specification.vendor" value="Oracle Corporation"/>\r
+ <property name="java.specification.name" value="Java Platform API Specification"/>\r
+ <property name="java.awt.graphicsenv" value="sun.awt.Win32GraphicsEnvironment"/>\r
+ <property name="surefire.real.class.path" value="C:\Users\elgekko\AppData\Local\Temp\surefire8680636343907800078\surefirebooter399942878799480529.jar"/>\r
+ <property name="sun.boot.class.path" value="c:\apps\java\jdk\jre\lib\resources.jar;c:\apps\java\jdk\jre\lib\rt.jar;c:\apps\java\jdk\jre\lib\sunrsasign.jar;c:\apps\java\jdk\jre\lib\jsse.jar;c:\apps\java\jdk\jre\lib\jce.jar;c:\apps\java\jdk\jre\lib\charsets.jar;c:\apps\java\jdk\jre\lib\jfr.jar;c:\apps\java\jdk\jre\classes"/>\r
+ <property name="user.script" value=""/>\r
+ <property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>\r
+ <property name="java.runtime.version" value="1.8.0_202-b08"/>\r
+ <property name="user.name" value="elgekko"/>\r
+ <property name="path.separator" value=";"/>\r
+ <property name="os.version" value="10.0"/>\r
+ <property name="java.endorsed.dirs" value="c:\apps\java\jdk\jre\lib\endorsed"/>\r
+ <property name="java.runtime.name" value="Java(TM) SE Runtime Environment"/>\r
+ <property name="file.encoding" value="Cp1250"/>\r
+ <property name="java.vm.name" value="Java HotSpot(TM) 64-Bit Server VM"/>\r
+ <property name="localRepository" value="C:\Users\elgekko\.m2\repository"/>\r
+ <property name="java.vendor.url.bug" value="http://bugreport.sun.com/bugreport/"/>\r
+ <property name="java.io.tmpdir" value="C:\Users\elgekko\AppData\Local\Temp\"/>\r
+ <property name="idea.version" value="2022.2.1"/>\r
+ <property name="java.version" value="1.8.0_202"/>\r
+ <property name="user.dir" value="C:\work\user\lis\lis-app"/>\r
+ <property name="os.arch" value="amd64"/>\r
+ <property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>\r
+ <property name="java.awt.printerjob" value="sun.awt.windows.WPrinterJob"/>\r
+ <property name="user.language.format" value="hu"/>\r
+ <property name="sun.os.patch.level" value=""/>\r
+ <property name="java.library.path" value="c:\apps\java\jdk\jre\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\apps\VMware Workstation\bin\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;c:\apps\java\jdk\bin;C:\apps\nvm;C:\apps\nodejs;C:\Program Files\Git\cmd;C:\ProgramData\ComposerSetup\bin;C:\Program Files\Microsoft SQL Server\150\Tools\Binn\;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn\;C:\Program Files\dotnet\;C:\Program Files\Docker\Docker\resources\bin;C:\ProgramData\DockerDesktop\version-bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;c:\apps\git-tfs;c:\apps\apache-maven-3.8.5\bin;c:\apps\ffmpeg\bin\;c:\apps\TEE-CLC-14.136.0\;C:\Program Files\WireGuard\;c:\apps\migrations\bin\;C:\apps\Python\Scripts\;C:\apps\Python\;C:\Users\elgekko\AppData\Local\Microsoft\WindowsApps;C:\apps\nvm;C:\apps\nodejs;C:\apps\php;C:\Users\elgekko\AppData\Roaming\Composer\vendor\bin;C:\Users\elgekko\.dotnet\tools;;C:\Users\elgekko\apps\gsudo;C:\apps\IntelliJ IDEA Community Edition\bin;;C:\Users\elgekko\AppData\Local\Microsoft\WindowsApps;C:\apps\Microsoft VS Code\bin;."/>\r
+ <property name="java.vm.info" value="mixed mode"/>\r
+ <property name="java.vendor" value="Oracle Corporation"/>\r
+ <property name="java.vm.version" value="25.202-b08"/>\r
+ <property name="java.ext.dirs" value="c:\apps\java\jdk\jre\lib\ext;C:\WINDOWS\Sun\Java\lib\ext"/>\r
+ <property name="sun.io.unicode.encoding" value="UnicodeLittle"/>\r
+ <property name="java.class.version" value="52.0"/>\r
+ </properties>\r
+ <testcase name="contextLoads" classname="hu.user.lis.app.MainTest" time="0.001">\r
+ <error message="Failed to load ApplicationContext" type="java.lang.IllegalStateException">java.lang.IllegalStateException: Failed to load ApplicationContext
+Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'developmentConfig': Invocation of init method failed; nested exception is java.lang.NullPointerException
+Caused by: java.lang.NullPointerException
+</error>\r
+ <system-out><![CDATA[11:58:53.841 [main] DEBUG org.springframework.test.context.BootstrapUtils - Instantiating CacheAwareContextLoaderDelegate from class [org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate]\r
+11:58:53.850 [main] DEBUG org.springframework.test.context.BootstrapUtils - Instantiating BootstrapContext using constructor [public org.springframework.test.context.support.DefaultBootstrapContext(java.lang.Class,org.springframework.test.context.CacheAwareContextLoaderDelegate)]\r
+11:58:53.868 [main] DEBUG org.springframework.test.context.BootstrapUtils - Instantiating TestContextBootstrapper for test class [hu.user.lis.app.MainTest] from class [org.springframework.boot.test.context.SpringBootTestContextBootstrapper]\r
+11:58:53.878 [main] INFO org.springframework.boot.test.context.SpringBootTestContextBootstrapper - Neither @ContextConfiguration nor @ContextHierarchy found for test class [hu.user.lis.app.MainTest], using SpringBootContextLoader\r
+11:58:53.882 [main] DEBUG org.springframework.test.context.support.AbstractContextLoader - Did not detect default resource location for test class [hu.user.lis.app.MainTest]: class path resource [hu/user/lis/app/MainTest-context.xml] does not exist\r
+11:58:53.882 [main] DEBUG org.springframework.test.context.support.AbstractContextLoader - Did not detect default resource location for test class [hu.user.lis.app.MainTest]: class path resource [hu/user/lis/app/MainTestContext.groovy] does not exist\r
+11:58:53.882 [main] INFO org.springframework.test.context.support.AbstractContextLoader - Could not detect default resource locations for test class [hu.user.lis.app.MainTest]: no resource found for suffixes {-context.xml, Context.groovy}.\r
+11:58:53.882 [main] INFO org.springframework.test.context.support.AnnotationConfigContextLoaderUtils - Could not detect default configuration classes for test class [hu.user.lis.app.MainTest]: MainTest does not declare any static, non-private, non-final, nested classes annotated with @Configuration.\r
+11:58:53.903 [main] DEBUG org.springframework.test.context.support.ActiveProfilesUtils - Could not find an 'annotation declaring class' for annotation type [org.springframework.test.context.ActiveProfiles] and class [hu.user.lis.app.MainTest]\r
+11:58:53.947 [main] DEBUG org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider - Identified candidate component class: file [C:\work\user\lis\lis-app\target\classes\hu\user\lis\app\Main.class]\r
+11:58:53.949 [main] INFO org.springframework.boot.test.context.SpringBootTestContextBootstrapper - Found @SpringBootConfiguration hu.user.lis.app.Main for test class hu.user.lis.app.MainTest\r
+11:58:54.011 [main] DEBUG org.springframework.boot.test.context.SpringBootTestContextBootstrapper - @TestExecutionListeners is not present for class [hu.user.lis.app.MainTest]: using defaults.\r
+11:58:54.011 [main] INFO org.springframework.boot.test.context.SpringBootTestContextBootstrapper - Loaded default TestExecutionListener class names from location [META-INF/spring.factories]: [org.springframework.boot.test.mock.mockito.MockitoTestExecutionListener, org.springframework.boot.test.mock.mockito.ResetMocksTestExecutionListener, org.springframework.boot.test.autoconfigure.restdocs.RestDocsTestExecutionListener, org.springframework.boot.test.autoconfigure.web.client.MockRestServiceServerResetTestExecutionListener, org.springframework.boot.test.autoconfigure.web.servlet.MockMvcPrintOnlyOnFailureTestExecutionListener, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverTestExecutionListener, org.springframework.test.context.web.ServletTestExecutionListener, org.springframework.test.context.support.DirtiesContextBeforeModesTestExecutionListener, org.springframework.test.context.support.DependencyInjectionTestExecutionListener, org.springframework.test.context.support.DirtiesContextTestExecutionListener, org.springframework.test.context.transaction.TransactionalTestExecutionListener, org.springframework.test.context.jdbc.SqlScriptsTestExecutionListener, org.springframework.test.context.event.EventPublishingTestExecutionListener]\r
+11:58:54.018 [main] DEBUG org.springframework.boot.test.context.SpringBootTestContextBootstrapper - Skipping candidate TestExecutionListener [org.springframework.test.context.transaction.TransactionalTestExecutionListener] due to a missing dependency. Specify custom listener classes or make the default listener classes and their required dependencies available. Offending class: [org/springframework/transaction/interceptor/TransactionAttributeSource]\r
+11:58:54.018 [main] DEBUG org.springframework.boot.test.context.SpringBootTestContextBootstrapper - Skipping candidate TestExecutionListener [org.springframework.test.context.jdbc.SqlScriptsTestExecutionListener] due to a missing dependency. Specify custom listener classes or make the default listener classes and their required dependencies available. Offending class: [org/springframework/transaction/interceptor/TransactionAttribute]\r
+11:58:54.018 [main] INFO org.springframework.boot.test.context.SpringBootTestContextBootstrapper - Using TestExecutionListeners: [org.springframework.test.context.web.ServletTestExecutionListener@5ab956d7, org.springframework.test.context.support.DirtiesContextBeforeModesTestExecutionListener@3646a422, org.springframework.boot.test.mock.mockito.MockitoTestExecutionListener@750e2b97, org.springframework.boot.test.autoconfigure.SpringBootDependencyInjectionTestExecutionListener@3e27aa33, org.springframework.test.context.support.DirtiesContextTestExecutionListener@2e385cce, org.springframework.test.context.event.EventPublishingTestExecutionListener@2ddc9a9f, org.springframework.boot.test.mock.mockito.ResetMocksTestExecutionListener@298a5e20, org.springframework.boot.test.autoconfigure.restdocs.RestDocsTestExecutionListener@2a7f1f10, org.springframework.boot.test.autoconfigure.web.client.MockRestServiceServerResetTestExecutionListener@46cdf8bd, org.springframework.boot.test.autoconfigure.web.servlet.MockMvcPrintOnlyOnFailureTestExecutionListener@f0c8a99, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverTestExecutionListener@740cae06]\r
+11:58:54.022 [main] DEBUG org.springframework.test.context.support.AbstractDirtiesContextTestExecutionListener - Before test class: context [DefaultTestContext@78e4deb0 testClass = MainTest, testInstance = [null], testMethod = [null], testException = [null], mergedContextConfiguration = [WebMergedContextConfiguration@6e9175d8 testClass = MainTest, locations = '{}', classes = '{class hu.user.lis.app.Main}', contextInitializerClasses = '[]', activeProfiles = '{}', propertySourceLocations = '{}', propertySourceProperties = '{org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true}', contextCustomizers = set[org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@20deea7f, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@7714e963, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@52e6fdee, org.springframework.boot.test.autoconfigure.properties.PropertyMappingContextCustomizer@0, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizerFactory$Customizer@6b927fb], resourceBasePath = 'src/main/webapp', contextLoader = 'org.springframework.boot.test.context.SpringBootContextLoader', parent = [null]], attributes = map['org.springframework.test.context.web.ServletTestExecutionListener.activateListener' -> true]], class annotated with @DirtiesContext [false] with mode [null].\r
+11:58:54.036 [main] DEBUG org.springframework.test.context.support.TestPropertySourceUtils - Adding inlined properties to environment: {spring.jmx.enabled=false, org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true, server.port=-1}\r
+\r
+ . ____ _ __ _ _\r
+ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \\r
+( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \\r
+ \\/ ___)| |_)| | | | | || (_| | ) ) ) )\r
+ ' |____| .__|_| |_|_| |_\__, | / / / /\r
+ =========|_|==============|___/=/_/_/_/\r
+&#27;[32m :: Spring Boot :: &#27;[39m &#27;[2m (v2.2.4.RELEASE)&#27;[0;39m\r
+\r
+&#27;[2m2023-03-30 11:58:54.241&#27;[0;39m &#27;[32m INFO&#27;[0;39m &#27;[35m26396&#27;[0;39m &#27;[2m---&#27;[0;39m &#27;[2m[ main]&#27;[0;39m &#27;[36mhu.user.lis.app.MainTest &#27;[0;39m &#27;[2m:&#27;[0;39m Starting MainTest on NGEKKO with PID 26396 (started by elgekko in C:\work\user\lis\lis-app)\r
+&#27;[2m2023-03-30 11:58:54.242&#27;[0;39m &#27;[32m INFO&#27;[0;39m &#27;[35m26396&#27;[0;39m &#27;[2m---&#27;[0;39m &#27;[2m[ main]&#27;[0;39m &#27;[36mhu.user.lis.app.MainTest &#27;[0;39m &#27;[2m:&#27;[0;39m No active profile set, falling back to default profiles: default\r
+&#27;[2m2023-03-30 11:58:54.836&#27;[0;39m &#27;[32m INFO&#27;[0;39m &#27;[35m26396&#27;[0;39m &#27;[2m---&#27;[0;39m &#27;[2m[ main]&#27;[0;39m &#27;[36mhu.user.lis.ui.config.DevelopmentConfig &#27;[0;39m &#27;[2m:&#27;[0;39m **************************************************************\r
+&#27;[2m2023-03-30 11:58:54.837&#27;[0;39m &#27;[32m INFO&#27;[0;39m &#27;[35m26396&#27;[0;39m &#27;[2m---&#27;[0;39m &#27;[2m[ main]&#27;[0;39m &#27;[36mhu.user.lis.ui.config.DevelopmentConfig &#27;[0;39m &#27;[2m:&#27;[0;39m **** ZK-Springboot-Demo: development configuration active ****\r
+&#27;[2m2023-03-30 11:58:54.837&#27;[0;39m &#27;[32m INFO&#27;[0;39m &#27;[35m26396&#27;[0;39m &#27;[2m---&#27;[0;39m &#27;[2m[ main]&#27;[0;39m &#27;[36mhu.user.lis.ui.config.DevelopmentConfig &#27;[0;39m &#27;[2m:&#27;[0;39m **************************************************************\r
+&#27;[2m2023-03-30 11:58:54.843&#27;[0;39m &#27;[33m WARN&#27;[0;39m &#27;[35m26396&#27;[0;39m &#27;[2m---&#27;[0;39m &#27;[2m[ main]&#27;[0;39m &#27;[36mo.s.w.c.s.GenericWebApplicationContext &#27;[0;39m &#27;[2m:&#27;[0;39m Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'developmentConfig': Invocation of init method failed; nested exception is java.lang.NullPointerException\r
+&#27;[2m2023-03-30 11:58:54.850&#27;[0;39m &#27;[32m INFO&#27;[0;39m &#27;[35m26396&#27;[0;39m &#27;[2m---&#27;[0;39m &#27;[2m[ main]&#27;[0;39m &#27;[36mConditionEvaluationReportLoggingListener&#27;[0;39m &#27;[2m:&#27;[0;39m \r
+\r
+Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.\r
+&#27;[2m2023-03-30 11:58:54.853&#27;[0;39m &#27;[31mERROR&#27;[0;39m &#27;[35m26396&#27;[0;39m &#27;[2m---&#27;[0;39m &#27;[2m[ main]&#27;[0;39m &#27;[36mo.s.boot.SpringApplication &#27;[0;39m &#27;[2m:&#27;[0;39m Application run failed\r
+\r
+org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'developmentConfig': Invocation of init method failed; nested exception is java.lang.NullPointerException\r
+ at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:160) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:416) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1788) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:595) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:517) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:323) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:321) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:879) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:878) ~[spring-context-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:550) ~[spring-context-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:747) ~[spring-boot-2.2.4.RELEASE.jar:2.2.4.RELEASE]\r
+ at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397) ~[spring-boot-2.2.4.RELEASE.jar:2.2.4.RELEASE]\r
+ at org.springframework.boot.SpringApplication.run(SpringApplication.java:315) ~[spring-boot-2.2.4.RELEASE.jar:2.2.4.RELEASE]\r
+ at org.springframework.boot.test.context.SpringBootContextLoader.loadContext(SpringBootContextLoader.java:126) [spring-boot-test-2.2.4.RELEASE.jar:2.2.4.RELEASE]\r
+ at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.java:99) [spring-test-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:124) [spring-test-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:123) [spring-test-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.test.context.web.ServletTestExecutionListener.setUpRequestContextIfNecessary(ServletTestExecutionListener.java:190) [spring-test-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.test.context.web.ServletTestExecutionListener.prepareTestInstance(ServletTestExecutionListener.java:132) [spring-test-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:244) [spring-test-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.test.context.junit.jupiter.SpringExtension.postProcessTestInstance(SpringExtension.java:98) [spring-test-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$invokeTestInstancePostProcessors$5(ClassBasedTestDescriptor.java:337) [junit-jupiter-engine-5.5.2.jar:5.5.2]\r
+ at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.executeAndMaskThrowable(ClassBasedTestDescriptor.java:342) [junit-jupiter-engine-5.5.2.jar:5.5.2]\r
+ at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$invokeTestInstancePostProcessors$6(ClassBasedTestDescriptor.java:337) [junit-jupiter-engine-5.5.2.jar:5.5.2]\r
+ at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) ~[na:1.8.0_202]\r
+ at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175) ~[na:1.8.0_202]\r
+ at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1382) ~[na:1.8.0_202]\r
+ at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481) ~[na:1.8.0_202]\r
+ at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471) ~[na:1.8.0_202]\r
+ at java.util.stream.StreamSpliterators$WrappingSpliterator.forEachRemaining(StreamSpliterators.java:312) ~[na:1.8.0_202]\r
+ at java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:743) ~[na:1.8.0_202]\r
+ at java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:742) ~[na:1.8.0_202]\r
+ at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:580) ~[na:1.8.0_202]\r
+ at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.invokeTestInstancePostProcessors(ClassBasedTestDescriptor.java:336) [junit-jupiter-engine-5.5.2.jar:5.5.2]\r
+ at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.instantiateAndPostProcessTestInstance(ClassBasedTestDescriptor.java:259) [junit-jupiter-engine-5.5.2.jar:5.5.2]\r
+ at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$testInstancesProvider$2(ClassBasedTestDescriptor.java:252) [junit-jupiter-engine-5.5.2.jar:5.5.2]\r
+ at java.util.Optional.orElseGet(Optional.java:267) ~[na:1.8.0_202]\r
+ at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$testInstancesProvider$3(ClassBasedTestDescriptor.java:251) [junit-jupiter-engine-5.5.2.jar:5.5.2]\r
+ at org.junit.jupiter.engine.execution.TestInstancesProvider.getTestInstances(TestInstancesProvider.java:29) ~[junit-jupiter-engine-5.5.2.jar:5.5.2]\r
+ at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$prepare$0(TestMethodTestDescriptor.java:106) ~[junit-jupiter-engine-5.5.2.jar:5.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.prepare(TestMethodTestDescriptor.java:105) ~[junit-jupiter-engine-5.5.2.jar:5.5.2]\r
+ at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.prepare(TestMethodTestDescriptor.java:69) ~[junit-jupiter-engine-5.5.2.jar:5.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$prepare$1(NodeTestTask.java:107) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.NodeTestTask.prepare(NodeTestTask.java:107) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:75) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at java.util.ArrayList.forEach(ArrayList.java:1257) ~[na:1.8.0_202]\r
+ at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:38) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:139) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:125) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:135) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:123) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:122) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:80) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at java.util.ArrayList.forEach(ArrayList.java:1257) ~[na:1.8.0_202]\r
+ at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:38) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:139) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:125) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:135) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:123) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:122) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:80) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.submit(SameThreadHierarchicalTestExecutorService.java:32) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:57) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:51) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:220) ~[junit-platform-launcher-1.3.1.jar:1.3.1]\r
+ at org.junit.platform.launcher.core.DefaultLauncher.lambda$execute$6(DefaultLauncher.java:188) ~[junit-platform-launcher-1.3.1.jar:1.3.1]\r
+ at org.junit.platform.launcher.core.DefaultLauncher.withInterceptedStreams(DefaultLauncher.java:202) ~[junit-platform-launcher-1.3.1.jar:1.3.1]\r
+ at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:181) ~[junit-platform-launcher-1.3.1.jar:1.3.1]\r
+ at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:128) ~[junit-platform-launcher-1.3.1.jar:1.3.1]\r
+ at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invokeAllTests(JUnitPlatformProvider.java:150) ~[surefire-junit-platform-2.22.2.jar:2.22.2]\r
+ at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invoke(JUnitPlatformProvider.java:124) ~[surefire-junit-platform-2.22.2.jar:2.22.2]\r
+ at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:384) ~[surefire-booter-2.22.2.jar:2.22.2]\r
+ at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:345) ~[surefire-booter-2.22.2.jar:2.22.2]\r
+ at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:126) ~[surefire-booter-2.22.2.jar:2.22.2]\r
+ at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:418) ~[surefire-booter-2.22.2.jar:2.22.2]\r
+Caused by: java.lang.NullPointerException: null\r
+ at hu.user.lis.ui.config.DevelopmentConfig.initDevelopmentProperties(DevelopmentConfig.java:30) ~[lis-ui-0.0.1-SNAPSHOT.jar:0.0.1-SNAPSHOT]\r
+ at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_202]\r
+ at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_202]\r
+ at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_202]\r
+ at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_202]\r
+ at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:389) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:333) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:157) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ ... 82 common frames omitted\r
+\r
+&#27;[2m2023-03-30 11:58:54.856&#27;[0;39m &#27;[31mERROR&#27;[0;39m &#27;[35m26396&#27;[0;39m &#27;[2m---&#27;[0;39m &#27;[2m[ main]&#27;[0;39m &#27;[36mo.s.test.context.TestContextManager &#27;[0;39m &#27;[2m:&#27;[0;39m Caught exception while allowing TestExecutionListener [org.springframework.test.context.web.ServletTestExecutionListener@5ab956d7] to prepare test instance [hu.user.lis.app.MainTest@5e2f3be5]\r
+\r
+java.lang.IllegalStateException: Failed to load ApplicationContext\r
+ at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:132) ~[spring-test-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:123) ~[spring-test-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.test.context.web.ServletTestExecutionListener.setUpRequestContextIfNecessary(ServletTestExecutionListener.java:190) ~[spring-test-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.test.context.web.ServletTestExecutionListener.prepareTestInstance(ServletTestExecutionListener.java:132) ~[spring-test-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:244) ~[spring-test-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.test.context.junit.jupiter.SpringExtension.postProcessTestInstance(SpringExtension.java:98) [spring-test-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$invokeTestInstancePostProcessors$5(ClassBasedTestDescriptor.java:337) [junit-jupiter-engine-5.5.2.jar:5.5.2]\r
+ at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.executeAndMaskThrowable(ClassBasedTestDescriptor.java:342) [junit-jupiter-engine-5.5.2.jar:5.5.2]\r
+ at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$invokeTestInstancePostProcessors$6(ClassBasedTestDescriptor.java:337) [junit-jupiter-engine-5.5.2.jar:5.5.2]\r
+ at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) ~[na:1.8.0_202]\r
+ at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175) ~[na:1.8.0_202]\r
+ at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1382) ~[na:1.8.0_202]\r
+ at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481) ~[na:1.8.0_202]\r
+ at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471) ~[na:1.8.0_202]\r
+ at java.util.stream.StreamSpliterators$WrappingSpliterator.forEachRemaining(StreamSpliterators.java:312) ~[na:1.8.0_202]\r
+ at java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:743) ~[na:1.8.0_202]\r
+ at java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:742) ~[na:1.8.0_202]\r
+ at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:580) ~[na:1.8.0_202]\r
+ at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.invokeTestInstancePostProcessors(ClassBasedTestDescriptor.java:336) [junit-jupiter-engine-5.5.2.jar:5.5.2]\r
+ at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.instantiateAndPostProcessTestInstance(ClassBasedTestDescriptor.java:259) [junit-jupiter-engine-5.5.2.jar:5.5.2]\r
+ at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$testInstancesProvider$2(ClassBasedTestDescriptor.java:252) [junit-jupiter-engine-5.5.2.jar:5.5.2]\r
+ at java.util.Optional.orElseGet(Optional.java:267) ~[na:1.8.0_202]\r
+ at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$testInstancesProvider$3(ClassBasedTestDescriptor.java:251) [junit-jupiter-engine-5.5.2.jar:5.5.2]\r
+ at org.junit.jupiter.engine.execution.TestInstancesProvider.getTestInstances(TestInstancesProvider.java:29) ~[junit-jupiter-engine-5.5.2.jar:5.5.2]\r
+ at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$prepare$0(TestMethodTestDescriptor.java:106) ~[junit-jupiter-engine-5.5.2.jar:5.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.prepare(TestMethodTestDescriptor.java:105) ~[junit-jupiter-engine-5.5.2.jar:5.5.2]\r
+ at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.prepare(TestMethodTestDescriptor.java:69) ~[junit-jupiter-engine-5.5.2.jar:5.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$prepare$1(NodeTestTask.java:107) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.NodeTestTask.prepare(NodeTestTask.java:107) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:75) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at java.util.ArrayList.forEach(ArrayList.java:1257) ~[na:1.8.0_202]\r
+ at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:38) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:139) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:125) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:135) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:123) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:122) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:80) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at java.util.ArrayList.forEach(ArrayList.java:1257) ~[na:1.8.0_202]\r
+ at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:38) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:139) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:125) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:135) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:123) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:122) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:80) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.submit(SameThreadHierarchicalTestExecutorService.java:32) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:57) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:51) ~[junit-platform-engine-1.5.2.jar:1.5.2]\r
+ at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:220) ~[junit-platform-launcher-1.3.1.jar:1.3.1]\r
+ at org.junit.platform.launcher.core.DefaultLauncher.lambda$execute$6(DefaultLauncher.java:188) ~[junit-platform-launcher-1.3.1.jar:1.3.1]\r
+ at org.junit.platform.launcher.core.DefaultLauncher.withInterceptedStreams(DefaultLauncher.java:202) ~[junit-platform-launcher-1.3.1.jar:1.3.1]\r
+ at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:181) ~[junit-platform-launcher-1.3.1.jar:1.3.1]\r
+ at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:128) ~[junit-platform-launcher-1.3.1.jar:1.3.1]\r
+ at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invokeAllTests(JUnitPlatformProvider.java:150) ~[surefire-junit-platform-2.22.2.jar:2.22.2]\r
+ at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invoke(JUnitPlatformProvider.java:124) ~[surefire-junit-platform-2.22.2.jar:2.22.2]\r
+ at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:384) ~[surefire-booter-2.22.2.jar:2.22.2]\r
+ at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:345) ~[surefire-booter-2.22.2.jar:2.22.2]\r
+ at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:126) ~[surefire-booter-2.22.2.jar:2.22.2]\r
+ at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:418) ~[surefire-booter-2.22.2.jar:2.22.2]\r
+Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'developmentConfig': Invocation of init method failed; nested exception is java.lang.NullPointerException\r
+ at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:160) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:416) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1788) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:595) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:517) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:323) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:321) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:879) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:878) ~[spring-context-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:550) ~[spring-context-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:747) ~[spring-boot-2.2.4.RELEASE.jar:2.2.4.RELEASE]\r
+ at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397) ~[spring-boot-2.2.4.RELEASE.jar:2.2.4.RELEASE]\r
+ at org.springframework.boot.SpringApplication.run(SpringApplication.java:315) ~[spring-boot-2.2.4.RELEASE.jar:2.2.4.RELEASE]\r
+ at org.springframework.boot.test.context.SpringBootContextLoader.loadContext(SpringBootContextLoader.java:126) ~[spring-boot-test-2.2.4.RELEASE.jar:2.2.4.RELEASE]\r
+ at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.java:99) ~[spring-test-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:124) ~[spring-test-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ ... 65 common frames omitted\r
+Caused by: java.lang.NullPointerException: null\r
+ at hu.user.lis.ui.config.DevelopmentConfig.initDevelopmentProperties(DevelopmentConfig.java:30) ~[lis-ui-0.0.1-SNAPSHOT.jar:0.0.1-SNAPSHOT]\r
+ at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_202]\r
+ at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_202]\r
+ at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_202]\r
+ at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_202]\r
+ at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:389) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:333) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:157) ~[spring-beans-5.2.3.RELEASE.jar:5.2.3.RELEASE]\r
+ ... 82 common frames omitted\r
+\r
+]]></system-out>\r
+ </testcase>\r
+</testsuite>
\ No newline at end of file
--- /dev/null
+-------------------------------------------------------------------------------\r
+Test set: hu.user.lis.app.MainTest\r
+-------------------------------------------------------------------------------\r
+Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 1.085 s <<< FAILURE! - in hu.user.lis.app.MainTest\r
+contextLoads Time elapsed: 0.001 s <<< ERROR!\r
+java.lang.IllegalStateException: Failed to load ApplicationContext
+Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'developmentConfig': Invocation of init method failed; nested exception is java.lang.NullPointerException
+Caused by: java.lang.NullPointerException
+\r
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<project
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
+ xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>hu.user</groupId>
+ <artifactId>lis-db</artifactId>
+ <version>0.0.1-SNAPSHOT</version>
+ <parent>
+ <groupId>hu.user</groupId>
+ <artifactId>lis</artifactId>
+ <version>0.0.1-SNAPSHOT</version>
+ </parent>
+</project>
\ No newline at end of file
--- /dev/null
+package hu.user.lis.db;\r
+\r
+import lombok.AllArgsConstructor;\r
+import lombok.Builder;\r
+import lombok.Getter;\r
+import lombok.Setter;\r
+\r
+@Getter\r
+@Setter\r
+@Builder\r
+@AllArgsConstructor\r
+public class Supplier {\r
+ String id;\r
+ String name;\r
+ String zipCode;\r
+}\r
--- /dev/null
+version=0.0.1-SNAPSHOT\r
+groupId=hu.user\r
+artifactId=lis-db\r
--- /dev/null
+C:\work\user\lis\lis-db\src\main\java\hu\user\lis\db\Supplier.java
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>\r
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">\r
+ <modelVersion>4.0.0</modelVersion>\r
+ <groupId>hu.user</groupId>\r
+ <artifactId>lis-services</artifactId>\r
+ <version>0.0.1-SNAPSHOT</version>\r
+ <parent>\r
+ <groupId>hu.user</groupId>\r
+ <artifactId>lis</artifactId>\r
+ <version>0.0.1-SNAPSHOT</version>\r
+ </parent>\r
+ <dependencies>\r
+ <dependency>\r
+ <groupId>org.springframework</groupId>\r
+ <artifactId>spring-web</artifactId>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>org.apache.commons</groupId>\r
+ <artifactId>commons-lang3</artifactId>\r
+ <version>3.12.0</version>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>com.github.javafaker</groupId>\r
+ <artifactId>javafaker</artifactId>\r
+ <version>0.12</version>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>hu.user</groupId>\r
+ <artifactId>lis-db</artifactId>\r
+ <version>0.0.1-SNAPSHOT</version>\r
+ <scope>compile</scope>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>org.springframework</groupId>\r
+ <artifactId>spring-context</artifactId>\r
+ </dependency>\r
+ </dependencies>\r
+</project>\r
--- /dev/null
+package hu.user.lis.services;\r
+\r
+import org.springframework.http.MediaType;\r
+import org.springframework.web.bind.annotation.GetMapping;\r
+import org.springframework.web.bind.annotation.RequestMapping;\r
+import org.springframework.web.bind.annotation.RestController;\r
+\r
+import java.util.Arrays;\r
+import java.util.List;\r
+\r
+@RestController\r
+@RequestMapping(path = "/onetwo", produces = MediaType.APPLICATION_JSON_VALUE)\r
+public class OneTwoService {\r
+ @GetMapping\r
+ public List<String> findAll() {\r
+ return Arrays.asList("One2", "Two1");\r
+ }\r
+\r
+}\r
--- /dev/null
+package hu.user.lis.services.data;\r
+\r
+import hu.user.lis.db.Supplier;\r
+\r
+import java.util.List;\r
+\r
+public interface SupplierService {\r
+ List<Supplier> getAll();\r
+}\r
--- /dev/null
+package hu.user.lis.services.data;\r
+\r
+import com.github.javafaker.Faker;\r
+import hu.user.lis.db.Supplier;\r
+import org.apache.commons.lang3.RandomStringUtils;\r
+import org.springframework.stereotype.Service;\r
+\r
+import java.util.ArrayList;\r
+import java.util.List;\r
+\r
+@Service\r
+public class SupplierServiceImpl implements SupplierService {\r
+ private List<Supplier> suppliers;\r
+\r
+ @Override\r
+ public List<Supplier> getAll() {\r
+ if (suppliers == null) {\r
+ suppliers = generate();\r
+ }\r
+ return suppliers;\r
+ }\r
+\r
+ private List<Supplier> generate() {\r
+ List<Supplier> result = new ArrayList<>();\r
+ Faker faker = new Faker();\r
+ for (int i = 0; i < 100; i++) {\r
+ String id = RandomStringUtils.random(8, "0123456789abcdef");\r
+ String name = faker.name().fullName();\r
+ String zipCode = RandomStringUtils.random(4, "0123456789");\r
+ Supplier supplier = Supplier.builder().id(id).name(name).zipCode(zipCode).build();\r
+ result.add(supplier);\r
+ }\r
+ return result;\r
+ }\r
+}\r
--- /dev/null
+version=0.0.1-SNAPSHOT\r
+groupId=hu.user\r
+artifactId=lis-services\r
--- /dev/null
+C:\work\user\lis\lis-services\src\main\java\hu\user\lis\services\data\SupplierService.java
+C:\work\user\lis\lis-services\src\main\java\hu\user\lis\services\OneTwoService.java
+C:\work\user\lis\lis-services\src\main\java\hu\user\lis\services\data\SupplierServiceImpl.java
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>hu.user</groupId>
+ <artifactId>lis-ui</artifactId>
+ <version>0.0.1-SNAPSHOT</version>
+ <parent>
+ <groupId>hu.user</groupId>
+ <artifactId>lis</artifactId>
+ <version>0.0.1-SNAPSHOT</version>
+ </parent>
+ <repositories>
+ <repository>
+ <id>ZK CE</id>
+ <name>ZK CE Repository</name>
+ <url>http://mavensync.zkoss.org/maven2</url>
+ </repository>
+ </repositories>
+ <properties>
+ <zkspringboot.version>1.0.4</zkspringboot.version>
+ <zk.version>9.6.0</zk.version>
+ </properties>
+ <dependencies>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-web</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.javassist</groupId>
+ <artifactId>javassist</artifactId>
+ <version>3.26.0-GA</version>
+ </dependency>
+ <dependency>
+ <groupId>org.beanshell</groupId>
+ <artifactId>bsh</artifactId>
+ <version>2.0b5</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-fileupload</groupId>
+ <artifactId>commons-fileupload</artifactId>
+ <version>1.3</version>
+ </dependency>
+ <dependency>
+ <groupId>com.google.code.gson</groupId>
+ <artifactId>gson</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-beans</artifactId>
+ <version>5.2.0.RELEASE</version>
+ </dependency>
+ <!-- https://www.zkoss.org/wiki/ZK_Installation_Guide/Maven_Setup#ZK_EE -->
+ <dependency>
+ <groupId>org.zkoss.zkspringboot</groupId>
+ <artifactId>zkspringboot-starter</artifactId>
+ <version>${zkspringboot.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.zkoss.zk</groupId>
+ <artifactId>zk</artifactId>
+ <version>${zk.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.zkoss.zk</groupId>
+ <artifactId>zul</artifactId>
+ <version>${zk.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.zkoss.zk</groupId>
+ <artifactId>zkbind</artifactId>
+ <version>${zk.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.zkoss.zk</groupId>
+ <artifactId>zkplus</artifactId>
+ <version>${zk.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.zkoss.zk</groupId>
+ <artifactId>zhtml</artifactId>
+ <version>${zk.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.zkoss.theme</groupId>
+ <artifactId>silvertail</artifactId>
+ <version>${zk.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.zkoss.theme</groupId>
+ <artifactId>sapphire</artifactId>
+ <version>${zk.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.zkoss.theme</groupId>
+ <artifactId>atlantic</artifactId>
+ <version>${zk.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>hu.user</groupId>
+ <artifactId>lis-db</artifactId>
+ <version>0.0.1-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>hu.user</groupId>
+ <artifactId>lis-services</artifactId>
+ <version>0.0.1-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>hu.user</groupId>
+ <artifactId>lis-services</artifactId>
+ <version>0.0.1-SNAPSHOT</version>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-devtools</artifactId>
+ <optional>true</optional>
+ </dependency>
+ </dependencies>
+</project>
\ No newline at end of file
--- /dev/null
+package hu.user.lis.ui;\r
+\r
+import org.springframework.stereotype.Controller;\r
+import org.springframework.web.bind.annotation.GetMapping;\r
+\r
+@Controller\r
+public class ResourceConfigurer {\r
+ @GetMapping("/admin")\r
+ public String admin() {\r
+ return "admin/index";\r
+ }\r
+}\r
--- /dev/null
+package hu.user.lis.ui.config;\r
+\r
+import org.slf4j.Logger;\r
+import org.slf4j.LoggerFactory;\r
+import org.springframework.context.annotation.Configuration;\r
+import org.zkoss.lang.Library;\r
+import org.zkoss.zk.ui.WebApps;\r
+\r
+import javax.annotation.PostConstruct;\r
+\r
+@Configuration\r
+//@Profile("dev")\r
+public class DevelopmentConfig {\r
+ private static Logger logger = LoggerFactory.getLogger(DevelopmentConfig.class);\r
+\r
+ @PostConstruct\r
+ public void initDevelopmentProperties() throws Exception {\r
+ logger.info("**************************************************************");\r
+ logger.info("**** ZK-Springboot-Demo: development configuration active ****");\r
+ logger.info("**************************************************************");\r
+\r
+ //disable various caches to avoid server restarts\r
+ Library.setProperty("org.zkoss.zk.ZUML.cache", "false");\r
+ Library.setProperty("org.zkoss.zk.WPD.cache", "false");\r
+ Library.setProperty("org.zkoss.zk.WCS.cache", "false");\r
+ Library.setProperty("org.zkoss.web.classWebResource.cache", "false");\r
+ Library.setProperty("org.zkoss.util.label.cache", "false");\r
+\r
+ // enable non minified js\r
+ WebApps.getCurrent().getConfiguration().setDebugJS(true);\r
+\r
+ // enable for debugging MVVM commands and binding (very verbose)\r
+ Library.setProperty("org.zkoss.bind.DebuggerFactory.enable", "false");\r
+ }\r
+\r
+}
\ No newline at end of file
--- /dev/null
+package hu.user.lis.ui.converter;\r
+\r
+import hu.user.lis.db.Supplier;\r
+import org.zkoss.bind.BindContext;\r
+import org.zkoss.bind.Converter;\r
+import org.zkoss.zul.Bandbox;\r
+\r
+public class SupplierToNameConverter implements Converter<String, Supplier, Bandbox> {\r
+\r
+ @Override\r
+ public String coerceToUi(Supplier supplier, Bandbox bandbox, BindContext bindContext) {\r
+ return supplier == null ? null : supplier.getName();\r
+ }\r
+\r
+ @Override\r
+ public Supplier coerceToBean(String s, Bandbox bandbox, BindContext bindContext) {\r
+ return null;\r
+ }\r
+}
\ No newline at end of file
--- /dev/null
+package hu.user.lis.ui.data;\r
+\r
+import lombok.extern.log4j.Log4j2;\r
+import org.springframework.stereotype.Component;\r
+import org.zkoss.zk.ui.event.Event;\r
+import org.zkoss.zk.ui.event.EventListener;\r
+import org.zkoss.zk.ui.event.Events;\r
+import org.zkoss.zul.FieldComparator;\r
+import org.zkoss.zul.ListModelList;\r
+\r
+import java.util.ArrayList;\r
+import java.util.Comparator;\r
+import java.util.HashMap;\r
+import java.util.List;\r
+\r
+@Component\r
+@Log4j2\r
+public abstract class CachedDataModel<T> extends ListModelList<T> {\r
+ private int cacheSize = 10;\r
+ private int cacheStart;\r
+ private int cacheEnd;\r
+ private int resultSetSize = -1;\r
+ private HashMap<Integer, T> cache = new HashMap<>();\r
+ private ArrayList<EventListener> eventListenerList = new ArrayList<EventListener>();\r
+ private FieldComparator sortComparator;\r
+\r
+ public CachedDataModel() {\r
+ //reinit();\r
+ log.info("Initialized");\r
+ setMultiple(true);\r
+ }\r
+\r
+ // load cache event\r
+ public void addEventListener(EventListener listener) {\r
+ eventListenerList.add(listener);\r
+ }\r
+\r
+ public void reset() {\r
+ this.resultSetSize = -1;\r
+ this.cacheStart = 0;\r
+ this.cacheEnd = 0;\r
+\r
+ clearCache();\r
+ }\r
+\r
+ public void clearCache() {\r
+ cache.clear();\r
+ //fireEvent(ListDataEvent.STRUCTURE_CHANGED, -1, -1);\r
+ }\r
+\r
+ private void fireLoadCacheEvent() {\r
+ Event evt = new Event(Events.ON_SCROLL);\r
+ for (EventListener el : eventListenerList) {\r
+ try {\r
+ el.onEvent(evt);\r
+ } catch (Exception e) {\r
+ log.error("", e);\r
+ }\r
+ }\r
+ }\r
+\r
+ public int getCacheEnd() {\r
+ return cacheEnd;\r
+ }\r
+\r
+ // zul felulet hasznalja kiirashoz\r
+ public int getCacheStart() {\r
+ return cacheStart;\r
+ }\r
+\r
+ @Override\r
+ public T getElementAt(int index) {\r
+ // logger.debug("CachedListMode.getElementAt(): " + index);\r
+ T ret = cache.get(index);\r
+ if (ret == null) {\r
+ loadCache(index);\r
+ ret = cache.get(index);\r
+ if (ret == null) {\r
+ throw new RuntimeException("Element at index " + index + " cannot be found in the database.");\r
+ }\r
+ }\r
+ return ret;\r
+ }\r
+\r
+ // ListModelList method felulirva\r
+ // after 1. search ++++++++++\r
+ @Override\r
+ public int getSize() {\r
+ if (this.resultSetSize < 0) {\r
+ loadCache(0);\r
+ // logger.debug("CachedListMode.getSize(): " + this.resultSetSize);\r
+ }\r
+ return this.resultSetSize;\r
+ }\r
+\r
+ private void loadCache(int forIndex) {\r
+ try {\r
+ int halfSize = this.cacheSize / 2;\r
+ int rowLimit = this.cacheSize; // 200\r
+ int startPos = 0;\r
+ if ((forIndex - halfSize) > 0) { // forIndex=60 startPos=0\r
+ // cache=0-200, forIndex=150\r
+ // startPos=50 cache=50-250\r
+ startPos = (forIndex - halfSize);\r
+ }\r
+\r
+ int endPos = (startPos + rowLimit);\r
+ endPos = ((this.resultSetSize < 0) || (endPos <= this.resultSetSize)) ? endPos : this.resultSetSize;\r
+\r
+\r
+ if (this.resultSetSize < 0) {\r
+ this.resultSetSize = getResultSetCount();\r
+ log.info("Result item count is {}", resultSetSize);\r
+ }\r
+\r
+ log.info("Query result from {} to {}", startPos, endPos);\r
+ List<T> resList = getResultSet(startPos, endPos - startPos, sortComparator);\r
+\r
+ if (resList != null) {\r
+ log.info("Got {} records", resList.size());\r
+ for (int c = 0; c < resList.size(); c++) {\r
+ cache.put(startPos + c, resList.get(c));\r
+ cache.put(startPos + c, resList.get(c));\r
+ // logger.debug("CachedListMode.cached idx: " +\r
+ // (startPos + c));\r
+ }\r
+ }\r
+ // logger.debug("CachedListMode.cacheSize: " + cache.size());\r
+\r
+ cacheStart = startPos + 1;\r
+ cacheEnd = cacheStart + (cache.size() == 0 ? 0 : (cache.size() - 1));\r
+// BindUtils.postNotifyChange(null, null, this, "*");\r
+\r
+ } catch (Exception e) {\r
+ log.error("", e);\r
+ }\r
+ }\r
+\r
+ abstract protected List<T> getResultSet(long offset, int limit, FieldComparator sortComparator);\r
+\r
+ abstract public int getResultSetCount();\r
+\r
+\r
+ @Override\r
+ public void sort(Comparator<T> cmpr, boolean ascending) {\r
+ sortComparator = (FieldComparator) cmpr;\r
+ log.info("Sort {} {}", sortComparator.getOrderBy(), ascending);\r
+ reset();\r
+ }\r
+\r
+}
\ No newline at end of file
--- /dev/null
+package hu.user.lis.ui.data;\r
+\r
+import com.fasterxml.jackson.databind.ObjectMapper;\r
+import lombok.Builder;\r
+import lombok.extern.log4j.Log4j2;\r
+import org.zkoss.json.JSONObject;\r
+import org.zkoss.json.parser.JSONParser;\r
+import org.zkoss.lang.Strings;\r
+\r
+@Builder\r
+@Log4j2\r
+public class FormDocument<T> extends JSONObject {\r
+ private T data;\r
+\r
+ public FormDocument setData(T data) {\r
+ try {\r
+ ObjectMapper mapper = new ObjectMapper();\r
+ String json = mapper.writeValueAsString(data);\r
+ JSONParser jsonParser = new JSONParser();\r
+ JSONObject jsonObject = (JSONObject) jsonParser.parse(json);\r
+ putAll(jsonObject);\r
+ } catch (Exception e) {\r
+ log.error(Strings.EMPTY, e);\r
+ }\r
+ put("data", data);\r
+ return this;\r
+ }\r
+}\r
--- /dev/null
+package hu.user.lis.ui.data;\r
+\r
+import hu.user.lis.db.Supplier;\r
+import hu.user.lis.services.data.SupplierService;\r
+import lombok.extern.log4j.Log4j2;\r
+import org.apache.commons.lang3.StringUtils;\r
+import org.springframework.beans.factory.annotation.Autowired;\r
+import org.springframework.beans.factory.config.ConfigurableBeanFactory;\r
+import org.springframework.context.annotation.Scope;\r
+import org.springframework.stereotype.Component;\r
+import org.zkoss.bind.BindUtils;\r
+import org.zkoss.zul.FieldComparator;\r
+\r
+import java.util.Comparator;\r
+import java.util.List;\r
+import java.util.stream.Collectors;\r
+\r
+@Component\r
+@Log4j2\r
+@Scope(ConfigurableBeanFactory.SCOPE_PROTOTYPE)\r
+public class SuppliersDataModel extends CachedDataModel<Supplier> {\r
+ private String partialName;\r
+ private String partialZipCode;\r
+ private boolean listAll;\r
+ @Autowired\r
+ SupplierService supplierService;\r
+\r
+\r
+ private boolean canExecuteSearch() {\r
+ boolean result = StringUtils.isNotBlank(partialName) || StringUtils.isNotBlank(partialZipCode) || listAll;\r
+ log.info("Can execute search: {}", result);\r
+ return result;\r
+ }\r
+\r
+ private boolean filter(Supplier supplier) {\r
+ if (listAll) {\r
+ return true;\r
+ }\r
+\r
+ boolean result = true;\r
+ if (StringUtils.isNotBlank(partialName)) {\r
+ if (!supplier.getName().toLowerCase().startsWith(partialName.toLowerCase())) {\r
+ result = false;\r
+ }\r
+ }\r
+ if (StringUtils.isNotBlank(partialZipCode)) {\r
+ if (!supplier.getZipCode().toLowerCase().startsWith(partialZipCode.toLowerCase())) {\r
+ result = false;\r
+ }\r
+ }\r
+ return result;\r
+ }\r
+\r
+ @Override\r
+ protected List<Supplier> getResultSet(long offset, int limit, FieldComparator sortComparator) {\r
+ List<Supplier> result = null;\r
+ if (canExecuteSearch()) {\r
+ result = supplierService.getAll().stream()\r
+ .sorted(Comparator.comparing(Supplier::getName))\r
+ .filter(s -> filter(s))\r
+ .collect(Collectors.toList());\r
+ }\r
+ return result;\r
+ }\r
+\r
+ @Override\r
+ public int getResultSetCount() {\r
+ int result = 0;\r
+ if (canExecuteSearch()) {\r
+ result = (int) supplierService.getAll().stream()\r
+ .filter(s -> filter(s))\r
+ .count();\r
+ }\r
+ return result;\r
+ }\r
+\r
+ public void search(String partialName, String partialZipCode) {\r
+ log.info("Searching supplier using filters: name LIKE {}, ZIP code LIKE {}", partialName, partialZipCode);\r
+ listAll = false;\r
+ this.partialName = partialName;\r
+ this.partialZipCode = partialZipCode;\r
+ super.reset();\r
+ BindUtils.postNotifyChange(null, null, this, "*");\r
+ }\r
+\r
+ public void listAll() {\r
+ log.info("List all suppliers");\r
+ listAll = true;\r
+ super.reset();\r
+ BindUtils.postNotifyChange(null, null, this, "*");\r
+ }\r
+}\r
--- /dev/null
+package hu.user.lis.ui.data;\r
+\r
+import hu.user.lis.db.Supplier;\r
+import hu.user.lis.services.data.SupplierService;\r
+import lombok.extern.log4j.Log4j2;\r
+import org.apache.commons.lang3.StringUtils;\r
+import org.springframework.beans.factory.annotation.Autowired;\r
+import org.springframework.beans.factory.config.ConfigurableBeanFactory;\r
+import org.springframework.context.annotation.Scope;\r
+import org.springframework.stereotype.Component;\r
+import org.zkoss.bind.BindUtils;\r
+import org.zkoss.zul.FieldComparator;\r
+\r
+import java.util.Comparator;\r
+import java.util.List;\r
+import java.util.stream.Collectors;\r
+\r
+@Component\r
+@Log4j2\r
+@Scope(ConfigurableBeanFactory.SCOPE_PROTOTYPE)\r
+public class SuppliersSimpleDataModel extends CachedDataModel<Supplier> {\r
+ static private final int SEARCH_LIMIT = 10;\r
+ private String partialName;\r
+ @Autowired\r
+ SupplierService supplierService;\r
+\r
+ private boolean filter(Supplier supplier) {\r
+ if (StringUtils.isBlank(partialName)) {\r
+ return true;\r
+ } else {\r
+ if (supplier.getName().toLowerCase().startsWith(partialName.toLowerCase())) {\r
+ return true;\r
+ }\r
+ }\r
+ return false;\r
+ }\r
+\r
+ @Override\r
+ protected List<Supplier> getResultSet(long offset, int limit, FieldComparator sortComparator) {\r
+ List<Supplier> result = supplierService.getAll().stream()\r
+ .sorted(Comparator.comparing(Supplier::getName))\r
+ .filter(s -> filter(s))\r
+ .limit(SEARCH_LIMIT)\r
+ .collect(Collectors.toList());\r
+ return result;\r
+ }\r
+\r
+ @Override\r
+ public int getResultSetCount() {\r
+ int result = (int) supplierService.getAll().stream()\r
+ .filter(s -> filter(s))\r
+ .limit(SEARCH_LIMIT)\r
+ .count();\r
+ return result;\r
+ }\r
+\r
+ public void search(String partialName) {\r
+ log.info("Searching supplier using filter {}", partialName);\r
+ this.partialName = partialName;\r
+ super.reset();\r
+ BindUtils.postNotifyChange(null, null, this, "*");\r
+ }\r
+}\r
--- /dev/null
+package hu.user.lis.ui.form;\r
+\r
+import org.zkoss.zk.ui.Component;\r
+import org.zkoss.zul.Include;\r
+\r
+public class Field extends Include {\r
+ public static final String FIELD_POSTFIX_ERROR = "_error";\r
+ public static final String FIELD_POSTFIX_DATA = "_data";\r
+ public static final String FIELD_POSTFIX_UNIT = "_unit";\r
+\r
+ public static class Address extends Field {\r
+ public Address() {\r
+ super();\r
+ setSrc("~./fields/address.zul");\r
+ }\r
+ }\r
+\r
+ public static class Agreement extends Field {\r
+ public Agreement() {\r
+ super();\r
+ setSrc("~./fields/agreement.zul");\r
+ }\r
+ }\r
+\r
+ public static class Check extends Field {\r
+ public Check() {\r
+ super();\r
+ setSrc("~./fields/check.zul");\r
+ }\r
+ }\r
+\r
+ public static class CheckGroup extends Field {\r
+ public CheckGroup() {\r
+ super();\r
+ setSrc("~./fields/checkgroup.zul");\r
+ }\r
+ }\r
+\r
+ public static class Company extends Field {\r
+ public Company() {\r
+ super();\r
+ setSrc("~./fields/company.zul");\r
+ }\r
+ }\r
+\r
+ public static class CurrentDate extends Field {\r
+ public CurrentDate() {\r
+ super();\r
+ setSrc("~./fields/current-date.zul");\r
+ }\r
+ }\r
+\r
+ public static class Date extends Field {\r
+ public Date() {\r
+ super();\r
+ setSrc("~./fields/date.zul");\r
+ }\r
+ }\r
+\r
+ public static class Deadline extends Field {\r
+ public Deadline() {\r
+ super();\r
+ setSrc("~./fields/deadline.zul");\r
+ }\r
+ }\r
+\r
+ public static class Domain extends Field {\r
+ public Domain() {\r
+ super();\r
+ setSrc("~./fields/domain.zul");\r
+ }\r
+ }\r
+\r
+ public static class Double extends Field {\r
+ public Double() {\r
+ super();\r
+ setSrc("~./fields/double.zul");\r
+ }\r
+ }\r
+\r
+ public static class FreePerson extends Field {\r
+ public FreePerson() {\r
+ super();\r
+ setSrc("~./fields/freeperson.zul");\r
+ }\r
+ }\r
+\r
+ public static class InlineRadio extends Field {\r
+ public InlineRadio() {\r
+ super();\r
+ setSrc("~./fields/inline-radio.zul");\r
+ }\r
+ }\r
+\r
+ public static class Location extends Field {\r
+ public Location() {\r
+ super();\r
+ setSrc("~./fields/location.zul");\r
+ }\r
+ }\r
+\r
+ public static class NoBornPerson extends Field {\r
+ public NoBornPerson() {\r
+ super();\r
+ setSrc("~./fields/nobornperson.zul");\r
+ }\r
+ }\r
+\r
+ public static class Number extends Field {\r
+ public Number() {\r
+ super();\r
+ setSrc("~./fields/number.zul");\r
+ }\r
+ }\r
+\r
+ public static class Person extends Field {\r
+ public Person() {\r
+ super();\r
+ setSrc("~./fields/person.zul");\r
+ }\r
+ }\r
+\r
+ public static class PersonName extends Field {\r
+ public PersonName() {\r
+ super();\r
+ setSrc("~./fields/person-name.zul");\r
+ }\r
+ }\r
+\r
+ public static class Radio extends Field {\r
+ public Radio() {\r
+ super();\r
+ setSrc("~./fields/radio.zul");\r
+ }\r
+ }\r
+\r
+ public static class RadioDate extends Field {\r
+ public RadioDate() {\r
+ super();\r
+ setSrc("~./fields/radiodate.zul");\r
+ }\r
+ }\r
+\r
+ public static class RadioDouble extends Field {\r
+ public RadioDouble() {\r
+ super();\r
+ setSrc("~./fields/radiodouble.zul");\r
+ }\r
+ }\r
+\r
+ public static class RadioGroup extends Field {\r
+ public RadioGroup() {\r
+ super();\r
+ setSrc("~./fields/radiogroup.zul");\r
+ }\r
+ }\r
+\r
+ public static class RadioNumber extends Field {\r
+ public RadioNumber() {\r
+ super();\r
+ setSrc("~./fields/radionumber.zul");\r
+ }\r
+ }\r
+\r
+ public static class Rate extends Field {\r
+ public Rate() {\r
+ super();\r
+ setSrc("~./fields/rate.zul");\r
+ }\r
+ }\r
+\r
+ public static class Settlement extends Field {\r
+ public Settlement() {\r
+ super();\r
+ setSrc("~./fields/settlement.zul");\r
+ }\r
+ }\r
+\r
+ public static class Signature extends Field {\r
+ public Signature() {\r
+ super();\r
+ setSrc("~./fields/signature.zul");\r
+ }\r
+ }\r
+\r
+ public static class Stamp extends Field {\r
+ public Stamp() {\r
+ super();\r
+ setSrc("~./fields/stamp.zul");\r
+ }\r
+ }\r
+\r
+ public static class Text extends Field {\r
+ public Text() {\r
+ super();\r
+ setSrc("~./fields/text.zul");\r
+ }\r
+ }\r
+\r
+ public static class TextArea extends Field {\r
+ public TextArea() {\r
+ super();\r
+ setSrc("~./fields/textarea.zul");\r
+ }\r
+ }\r
+\r
+ public static class TitleDeed extends Field {\r
+ public TitleDeed() {\r
+ super();\r
+ setSrc("~./fields/title-deed.zul");\r
+ }\r
+ }\r
+\r
+ public static class ZipCode extends Field {\r
+ public ZipCode() {\r
+ super();\r
+ setSrc("~./fields/zipcode.zul");\r
+ }\r
+ }\r
+\r
+ private void set(String name, Object value) {\r
+ setAttribute(name, value, Component.SPACE_SCOPE);\r
+ }\r
+\r
+ @Override\r
+ public void setDynamicProperty(String name, Object value) {\r
+ super.setDynamicProperty(name, value);\r
+ // a dinamikus parametereket letoljuk az egesz szkopon + letrehozunk technikai\r
+ // parametereket\r
+ // ezek az include altal behuzott Composit-okban cimezhetoek pl. ${field}\r
+ set(name, value);\r
+ if ("field".equals(name)) {\r
+ String field = (String) value;\r
+ set("errorField", field + FIELD_POSTFIX_ERROR);\r
+ set("dataField", field + FIELD_POSTFIX_DATA);\r
+ set("unitField", field + FIELD_POSTFIX_UNIT);\r
+ }\r
+ }\r
+\r
+}\r
--- /dev/null
+package hu.user.lis.ui.form;\r
+\r
+import lombok.extern.log4j.Log4j2;\r
+import org.springframework.stereotype.Service;\r
+import org.zkoss.bind.ValidationContext;\r
+import org.zkoss.bind.validator.AbstractValidator;\r
+\r
+@Service\r
+@Log4j2\r
+public class FormValidator extends AbstractValidator {\r
+ @Override\r
+ public void validate(ValidationContext ctx) {\r
+ }\r
+}\r
--- /dev/null
+package hu.user.lis.ui.view;\r
+\r
+import hu.user.lis.db.Supplier;\r
+import hu.user.lis.ui.data.SuppliersSimpleDataModel;\r
+import lombok.Getter;\r
+import lombok.Setter;\r
+import lombok.extern.log4j.Log4j2;\r
+import org.springframework.boot.info.BuildProperties;\r
+import org.zkoss.bind.BindContext;\r
+import org.zkoss.bind.BindUtils;\r
+import org.zkoss.bind.annotation.Command;\r
+import org.zkoss.bind.annotation.ContextParam;\r
+import org.zkoss.bind.annotation.ContextType;\r
+import org.zkoss.bind.annotation.NotifyChange;\r
+import org.zkoss.zk.ui.Executions;\r
+import org.zkoss.zk.ui.event.InputEvent;\r
+import org.zkoss.zk.ui.event.OpenEvent;\r
+import org.zkoss.zk.ui.select.annotation.VariableResolver;\r
+import org.zkoss.zk.ui.select.annotation.WireVariable;\r
+import org.zkoss.zul.Window;\r
+\r
+import java.util.Objects;\r
+\r
+@Log4j2\r
+@VariableResolver(org.zkoss.zkplus.spring.DelegatingVariableResolver.class)\r
+public class Index {\r
+ @Getter\r
+ @Setter\r
+ @WireVariable\r
+ private SuppliersSimpleDataModel suppliersSimpleDataModel;\r
+ @Getter\r
+ private Supplier selectedSupplier;\r
+ @Getter\r
+ @Setter\r
+ private String selectedSupplierId;\r
+ @Getter\r
+ @WireVariable\r
+ BuildProperties buildProperties;\r
+\r
+ @Command\r
+ public void onBandChanging(@ContextParam(ContextType.BIND_CONTEXT) BindContext ctx) {\r
+ InputEvent event = (InputEvent) ctx.getTriggerEvent();\r
+ log.info("onBandChanging: {}", event.getValue());\r
+ suppliersSimpleDataModel.search(event.getValue());\r
+ }\r
+\r
+ @Command\r
+ public void onBandOpen(@ContextParam(ContextType.BIND_CONTEXT) BindContext ctx) {\r
+ OpenEvent event = (OpenEvent) ctx.getTriggerEvent();\r
+ log.info("onBandOpen: {}", event.isOpen());\r
+ suppliersSimpleDataModel.search(null);\r
+ }\r
+\r
+ @Command\r
+ public void onPopupSuppliers() {\r
+ String page = "~./suppliers.zul";\r
+ Window suppliersWindow = (Window) Executions.createComponents(page, null, null);\r
+ suppliersWindow.addEventListener("onClose", e -> {\r
+ log.info("Suppliers popup result {}", e.getData());\r
+ if (e.getData() != null) {\r
+ suppliersSimpleDataModel.clearSelection();\r
+ setSelectedSupplierId(((Supplier) e.getData()).getId());\r
+ BindUtils.postNotifyChange(null, null, this, "selectedSupplierId");\r
+ }\r
+ });\r
+\r
+ suppliersWindow.doModal();\r
+ }\r
+\r
+ @NotifyChange({"selectedSupplierId", "selectedSupplier"})\r
+ public void setSelectedSupplier(Supplier selectedSupplier) {\r
+ this.selectedSupplier = selectedSupplier;\r
+ if (Objects.isNull(selectedSupplier)) {\r
+ setSelectedSupplierId(null);\r
+ } else {\r
+ setSelectedSupplierId(selectedSupplier.getId());\r
+ }\r
+ }\r
+}\r
--- /dev/null
+package hu.user.lis.ui.view;
+
+import hu.user.lis.db.Supplier;
+import hu.user.lis.ui.data.FormDocument;
+import hu.user.lis.ui.data.SuppliersDataModel;
+import hu.user.lis.ui.form.FormValidator;
+import lombok.Getter;
+import lombok.Setter;
+import lombok.extern.log4j.Log4j2;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.zkoss.bind.annotation.BindingParam;
+import org.zkoss.bind.annotation.Command;
+import org.zkoss.bind.annotation.Init;
+import org.zkoss.bind.annotation.NotifyChange;
+import org.zkoss.zk.ui.event.Event;
+import org.zkoss.zk.ui.event.Events;
+import org.zkoss.zk.ui.select.annotation.VariableResolver;
+import org.zkoss.zk.ui.select.annotation.WireVariable;
+import org.zkoss.zkplus.spring.DelegatingVariableResolver;
+import org.zkoss.zul.Window;
+
+import java.util.Set;
+
+@Log4j2
+@Getter
+@Setter
+@VariableResolver(DelegatingVariableResolver.class)
+public class SuppliersViewModel {
+ private FormDocument formDocument;
+ private boolean canEdit;
+ private String partialName;
+ private String partialZipCode;
+
+ private Supplier selectedSupplier;
+ @WireVariable
+ SuppliersDataModel suppliersDataModel;
+ @Autowired
+ FormValidator formValidator;
+
+ @Init
+ public void init() {
+ log.info("Initialized");
+ //TODO atnevezni, mert forditva mukodik
+ setCanEdit(true);
+ }
+
+ public String getFieldStyle(String field, String baseStyle) {
+// Object error = getFormDocument().get(field + FIELD_POSTFIX_ERROR);
+// if (error != null && (boolean) error)
+// return baseStyle + " " + ERROR;
+// else
+// return baseStyle;
+ return baseStyle;
+ }
+
+ @Command
+ @NotifyChange("formDocument")
+ public void search() {
+ suppliersDataModel.clearSelection();
+ formDocument = null;
+ suppliersDataModel.search(partialName, partialZipCode);
+ }
+
+ @Command
+ @NotifyChange({"formDocument", "partialName", "partialZipCode"})
+ public void listAll() {
+ suppliersDataModel.clearSelection();
+ formDocument = null;
+ partialName = null;
+ partialZipCode = null;
+ suppliersDataModel.listAll();
+ }
+
+ @Command
+ @NotifyChange("formDocument")
+ public void onListSelection() {
+ formDocument = null;
+ selectedSupplier = null;
+ Set<Supplier> selections = suppliersDataModel.getSelection();
+ if (selections.iterator().hasNext()) {
+ selectedSupplier = selections.iterator().next();
+ formDocument = FormDocument.builder().build()
+ .setData(selectedSupplier);
+ log.info("Selected {}", formDocument);
+ }
+ }
+
+ @Command
+ public void onCloseWindow(@BindingParam("target") Window target, @BindingParam("select") boolean select) {
+ Event closeEvent = new Event("onClose", target, select ? selectedSupplier : null);
+ Events.postEvent(closeEvent);
+ }
+}
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>\r
+<zk>\r
+ <config-name/>\r
+ <system-config>\r
+ <ui-factory-class>org.zkoss.zk.ui.http.SerializableUiFactory</ui-factory-class>\r
+ </system-config>\r
+ <library-property>\r
+ <name>org.zkoss.theme.preferred</name>\r
+ <value>silvertail</value>\r
+ </library-property>\r
+ <library-property>\r
+ <name>org.zkoss.zul.grid.rod</name>\r
+ <value>true</value>\r
+ </library-property>\r
+ <library-property>\r
+ <name>org.zkoss.zul.grid.autohidePaging</name>\r
+ <value>false</value>\r
+ </library-property>\r
+ <library-property>\r
+ <name>org.zkoss.zul.listbox.rod</name>\r
+ <value>true</value>\r
+ </library-property>\r
+ <library-property>\r
+ <name>org.zkoss.zul.listbox.autohidePaging</name>\r
+ <value>false</value>\r
+ </library-property>\r
+ <library-property>\r
+ <name>org.zkoss.zul.nativebar</name>\r
+ <value>true</value>\r
+ </library-property>\r
+ <!-- PROD -->\r
+ <!-- <desktop-config>-->\r
+ <!-- <file-check-period>600</file-check-period><!– unit: seconds –>-->\r
+ <!-- </desktop-config>-->\r
+</zk>
\ No newline at end of file
--- /dev/null
+<?component name="text" class="hu.bitcity.form.field.Field$Text" ?>\r
+<?component name="number" class="hu.bitcity.form.field.Field$Number" ?>\r
+<?component name="domain" class="hu.bitcity.form.field.Field$Domain" ?>\r
+<?component name="zipcode" class="hu.bitcity.form.field.Field$ZipCode" ?>\r
+<?component name="location" class="hu.bitcity.form.field.Field$Location" ?>\r
+<div class="row">\r
+ <div class="row">\r
+ <zipcode class="one column" label="Irányítószám" origField="${field}" field="${field}_iranyitoszam" validators="${validators}" />\r
+ <text class="four columns" label="Helység" field="${field}_helyseg" validators="${validators}" />\r
+ <location class="four columns" label="Közterület neve" origField="${field}" field="${field}_kozterulet_nev" validators="${validators}"/>\r
+ <domain class="two columns" label="Közterület" origField="${field}" field="${field}_kozterulet" \r
+ values="${['-', 'árok','átjáró','dűlő','dűlőút','erdősor','fasor','forduló','gát','határsor','határút','kapu','körönd','körtér','körút','köz','lakótelep','lejáró','lejtő','lépcső','liget','mélyút','orom','ösvény','park','part','pincesor','rakpart','sétány','sikátor','sor','sugárút','tér','udvar','út','utca','üdülőpart']}" \r
+ validators="${validators}"/>\r
+ <text class="one column" label="Házszám" field="${field}_hazszam" validators="${validators}"/>\r
+ </div>\r
+ <div class="row">\r
+ <text class="three columns" label="Lépcsőház" field="${field}_lepcsohaz" />\r
+ <text class="three columns" label="Emelet" field="${field}_emelet" />\r
+ <text class="three columns" label="Ajtó" field="${field}_ajto" />\r
+ <text class="three columns" label="Egyéb" field="${field}_egyeb" />\r
+ </div>\r
+</div>
\ No newline at end of file
--- /dev/null
+<div class="agreement field">\r
+ <div class="row field-top">\r
+ <label xmlns:ca="client/attribute" ca:data-markdown="true">\r
+${text}\r
+ </label>\r
+ </div>\r
+</div>
\ No newline at end of file
--- /dev/null
+<div class="field" xmlns:w="client" w:onClick="console.log('field : ${field}')">\r
+ <div class="@load(vm.getFieldStyle(field, 'field-label'))">\r
+ <checkbox label="${label}" onCheck="@command('submit') @global-command('autosave', source=self)"\r
+ checked="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator)" \r
+ disabled="@load(vm.formDocument['ro'] || ro)" />\r
+ </div>\r
+\r
+</div> \r
--- /dev/null
+<div class="field">\r
+ <div class="row field-top">\r
+ <include src="/fields/field-label.zul"/>\r
+ </div> \r
+ <div class="row field-textbox field-top">\r
+ <zk forEach="${values}">\r
+ <checkbox label="${each}"\r
+ checked="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator)" \r
+ disabled="@load(vm.formDocument['ro'] || ro)" onCheck="@command('submit') @global-command('autosave', source=self)" >\r
+ <custom-attributes field="${field}_${forEachStatus.index + 1}" />\r
+ </checkbox>\r
+ </zk>\r
+ </div> \r
+</div>\r
--- /dev/null
+<?component name="address" class="hu.bitcity.form.field.Field$Address" ?>\r
+<?component name="date" class="hu.bitcity.form.field.Field$Date" ?>\r
+<?component name="text" class="hu.bitcity.form.field.Field$Text" ?>\r
+<?component name="personname" class="hu.bitcity.form.field.Field$PersonName" ?>\r
+<div class="row">\r
+ <div class="row">\r
+ <personname class="eight columns" label="Cégnév" origField="${field}" field="${field}_nev" validators="nonempty"/>\r
+ <text class="four columns" label="Adószám" field="${field}_adoszam" validators="nonempty" />\r
+ </div>\r
+ <address class="row" label="Székhely" field="${field}_cim" validators="nonempty,address" />\r
+ <div class="row">\r
+ <text class="four columns" label="Cégjegyzékszám" field="${field}_cegjegyzekszam" validators="nonempty"/>\r
+ <text class="eight columns" label="Képviseli" field="${field}_kepviseli" validators="nonempty" />\r
+ </div>\r
+ <div class="row no-print" if="${empty param.token or nocontacts}">\r
+ <text class="six columns" label="Telefonszám" field="${field}_telefon" validators="phone" />\r
+ <text class="six columns" label="E-mail" field="${field}_email" validators="email" />\r
+ </div>\r
+</div>
\ No newline at end of file
--- /dev/null
+<div class="row" style="margin-top: 10px; margin-bottom: 10px;">\r
+<label value="${isEmpty}"/>\r
+ <variables defaultValue="Budapest" isEmpty="${isEmpty}" />\r
+ <label class="form-label" >Kelt: </label>\r
+ <combobox class="@load(vm.getFieldStyle(field, 'inline-intbox'))" \r
+ model="@load(vm.settlementsModel)"\r
+ value="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator, parameters=validatorargs)" \r
+ onBlur="@command('submit') @global-command('autosave', source=self)"\r
+ disabled="@load(vm.formDocument['ro'] || ro)"\r
+ autodrop="true" buttonVisible="true" onCreate="if (self.getValue() == null || self.getValue().length() == 0) self.setValue(defaultValue)" >\r
+ <!-- \r
+ -->\r
+ </combobox>\r
+ <label>,</label>\r
+ <textbox class="inline-textbox" readonly="true" value="@load(vm.formDocument[dataField]) @save(vm.formDocument[dataField], before='submit') @converter('hu.bitcity.converter.CurrentDateConverter', field=dataField, isEmpty=isEmpty)"/>\r
+</div> \r
--- /dev/null
+<div class="field">\r
+ <div class="row field-top">\r
+ <include src="/fields/field-label.zul" />\r
+ </div> \r
+ <div class="row field-top">\r
+ <datebox class="field-textbox" value="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator, parameters=validatorargs) @converter('hu.bitcity.converter.JSONDateConverter')" \r
+ format="yyyy.MM.dd" disabled="@load(vm.formDocument['ro'] || ro)" onChange="@command('submit') @global-command('autosave', source=self)" />\r
+ </div> \r
+</div>\r
--- /dev/null
+<?component name="text" class="hu.bitcity.form.field.Field$Text" ?>\r
+<?component name="number" class="hu.bitcity.form.field.Field$Number" ?>\r
+<?component name="domain" class="hu.bitcity.form.field.Field$Domain" ?>\r
+<?component name="int" class="hu.bitcity.form.field.Field$ZipCode" ?>\r
+<div class="row">\r
+ <int class="four columns" label="Év" field="${field}_ev" validators="nonempty"/>\r
+ <domain class="four columns" label="Hónap" field="${field}_honap" readonly="true" \r
+ values="${['január','február','március','április','május','június','július','augusztus','szeptember','október','november','december']}" \r
+ validators="nonempty" />\r
+ <int class="four columns" label="Nap" field="${field}_nap" validators="nonempty"/>\r
+</div>
\ No newline at end of file
--- /dev/null
+<div class="field">\r
+ <div class="row field-top">\r
+ <include src="~./fields/field-label.zul"/>\r
+ </div> \r
+ <div class="row field-top">\r
+ <!-- \r
+ @converter('hu.bitcity.converter.ComboBoxConverter')\r
+ -->\r
+ <combobox class="field-textbox" autodrop="false" value="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator)" \r
+ disabled="@load(vm.canEdit || ro)" onBlur="@command('submit') @global-command('autosave', source=self)" readonly="${readonly}">\r
+ <comboitem label="${each}" value="${each}" forEach="${values}" />\r
+ </combobox> \r
+ </div> \r
+</div>
\ No newline at end of file
--- /dev/null
+<div class="field">\r
+ <div class="row field-top">\r
+ <include src="/fields/field-label.zul"/>\r
+ </div> \r
+ <div class="row field-top">\r
+ <doublebox class="field-textbox" value="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator, parameters=validatorargs)" format="#,##0.##" \r
+ disabled="@load(vm.formDocument['ro'] || ro)" onChange="@command('submit') @global-command('autosave', source=self)" />\r
+ </div> \r
+</div>
\ No newline at end of file
--- /dev/null
+<div xmlns:w="client" w:onClick="console.log('field : ${field}')">\r
+ <label class="@load(vm.getFieldStyle(field, 'field-label'))" value="${label}" visible="@load(!empty label)"/>\r
+</div>\r
--- /dev/null
+<?component name="address" class="hu.bitcity.form.field.Field$Address" ?>\r
+<?component name="date" class="hu.bitcity.form.field.Field$Date" ?>\r
+<?component name="text" class="hu.bitcity.form.field.Field$Text" ?>\r
+<?component name="personname" class="hu.bitcity.form.field.Field$PersonName" ?>\r
+<div class="row">\r
+ <div class="row">\r
+ <personname class="four columns" label="Név" origField="${field}" field="${field}_nev"/>\r
+ <text class="four columns" label="Állampolgárság" field="${field}_allampolgarsag" />\r
+ <text class="four columns" label="Szem. ig./Útlevél szám" field="${field}_azonosito_irat" />\r
+ </div>\r
+ <address class="row" label="Lakcím" field="${field}_cim" />\r
+ <div class="row">\r
+ <text class="six columns" label="Születési hely" field="${field}_szuletesi_hely" />\r
+ <date class="two columns" label="Születés dátuma" field="${field}_szuletes_datuma" />\r
+ <text class="four columns" label="Anyja neve" field="${field}_anyja_neve" />\r
+ </div>\r
+ <div class="row no-print" if="${empty param.token or nocontacts}">\r
+ <text class="six columns" label="Telefonszám" field="${field}_telefon" />\r
+ <text class="six columns" label="E-mail" field="${field}_email" />\r
+ </div>\r
+</div>
\ No newline at end of file
--- /dev/null
+<radio class="@load(vm.getFieldStyle(field, 'inline-radio'))" label="${label}" value="${value}" \r
+ onCheck="@command('onRadioCheck', target=self) @global-command('autosave', source=self)" \r
+ checked="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator) @converter('hu.bitcity.converter.RadioCheckConverter')" \r
+ disabled="@load(vm.formDocument['ro'] || ro)" />\r
--- /dev/null
+<div class="field">\r
+ <div class="row field-top">\r
+ <include src="/fields/field-label.zul" />\r
+ </div>\r
+ <div class="row field-top">\r
+ <combobox class="field-textbox" autodrop="false"\r
+ value="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator) @converter('hu.bitcity.converter.LocationConverter')"\r
+ disabled="@load(vm.formDocument['ro'] || ro)" onBlur="@command('decorateSettlementLocationType', source=self) @global-command('autosave', source=self)" >\r
+ <!-- \r
+ -->\r
+ <template name="model">\r
+ <comboitem label="${each.locationDisplay}" value="${each}" />\r
+ </template>\r
+ </combobox>\r
+ </div>\r
+</div>
\ No newline at end of file
--- /dev/null
+<?component name="address" class="hu.bitcity.form.field.Field$Address" ?>\r
+<?component name="date" class="hu.bitcity.form.field.Field$Date" ?>\r
+<?component name="text" class="hu.bitcity.form.field.Field$Text" ?>\r
+<?component name="personname" class="hu.bitcity.form.field.Field$PersonName" ?>\r
+<div class="row">\r
+ <div class="row">\r
+ <personname class="four columns" label="Név" origField="${field}" field="${field}_nev" validators="nonempty"/>\r
+ <text class="four columns" label="Állampolgárság" field="${field}_allampolgarsag" />\r
+ <text class="four columns" label="Szem. ig./Útlevél szám" field="${field}_azonosito_irat" />\r
+ </div>\r
+ <address class="row" label="Lakcím" field="${field}_cim" validators="nonempty,address" />\r
+ <div class="row">\r
+ <text class="six columns" label="Születési hely" field="${field}_szuletesi_hely" />\r
+ <date class="two columns" label="Születés dátuma" field="${field}_szuletes_datuma" />\r
+ <text class="four columns" label="Anyja neve" field="${field}_anyja_neve" validators="nonempty"/>\r
+ </div>\r
+ <div class="row no-print" if="${empty param.token or nocontacts}">\r
+ <text class="six columns" label="Telefonszám" field="${field}_telefon" validators="phone" />\r
+ <text class="six columns" label="E-mail" field="${field}_email" validators="email" />\r
+ </div>\r
+</div>
\ No newline at end of file
--- /dev/null
+<div class="field">\r
+ <div class="row field-top">\r
+ <include src="/fields/field-label.zul"/>\r
+ </div> \r
+ <div class="row field-top">\r
+ <longbox class="field-textbox" format=",###" disabled="@load(vm.formDocument['ro'] || ro)" \r
+ value="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator, parameters=validatorargs)" \r
+ onChange="@command('submit') @global-command('autosave', source=self)">\r
+<!-- \r
+ <attribute name="format" if="${format}">\r
+ \r
+ </attribute> \r
+ -->\r
+ </longbox>\r
+ </div> \r
+</div>
\ No newline at end of file
--- /dev/null
+<div class="field">\r
+ <div class="row field-top" if="${!noheader}">\r
+ <include src="/fields/field-label.zul" />\r
+ </div>\r
+ <div class="row field-top">\r
+ <combobox class="field-textbox" autodrop="true" model="@load(vm.personsModel)"\r
+ value="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator)"\r
+ disabled="@load(vm.formDocument['ro'] || ro)" onSelect="@command('decoratePersonFields', source=self) @global-command('autosave', source=self)">\r
+ <template name="model">\r
+ <comboitem label="@load(each.name)" content="@load(each.card)" value="@load(each)" />\r
+ </template>\r
+ </combobox>\r
+ </div>\r
+</div>
\ No newline at end of file
--- /dev/null
+<?component name="address" class="hu.bitcity.form.field.Field$Address" ?>\r
+<?component name="date" class="hu.bitcity.form.field.Field$Date" ?>\r
+<?component name="text" class="hu.bitcity.form.field.Field$Text" ?>\r
+<?component name="personname" class="hu.bitcity.form.field.Field$PersonName" ?>\r
+<div class="row">\r
+ <div class="row">\r
+ <personname class="four columns" label="Név" origField="${field}" field="${field}_nev" validators="nonempty"/>\r
+ <text class="four columns" label="Állampolgárság" field="${field}_allampolgarsag" />\r
+ <text class="four columns" label="Szem. ig./Útlevél szám" field="${field}_azonosito_irat" />\r
+ </div>\r
+ <address class="row" label="Lakcím" field="${field}_cim" validators="nonempty,address" />\r
+ <div class="row">\r
+ <text class="six columns" label="Születési hely" field="${field}_szuletesi_hely" validators="nonempty" />\r
+ <date class="two columns" label="Születés dátuma" field="${field}_szuletes_datuma" validators="nonempty"/>\r
+ <text class="four columns" label="Anyja neve" field="${field}_anyja_neve" validators="nonempty"/>\r
+ </div>\r
+ <div class="row no-print" if="${empty param.token or nocontacts}">\r
+ <text class="six columns" label="Telefonszám" field="${field}_telefon" validators="phone" />\r
+ <text class="six columns" label="E-mail" field="${field}_email" validators="email" />\r
+ </div>\r
+</div>
\ No newline at end of file
--- /dev/null
+<div class="field">\r
+ <div class="row field-top">\r
+ <include src="/fields/field-label.zul"/>\r
+ </div> \r
+ <div class="row field-top">\r
+ <combobox class="field-textbox" autodrop="true" value="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator)" \r
+ disabled="@load(vm.formDocument['ro'] || ro)" onChange="@command('submit') @global-command('autosave', source=self)" />\r
+ </div> \r
+</div>
\ No newline at end of file
--- /dev/null
+<div class="field" xmlns:w="client" w:onClick="console.log('field : ${field}')">\r
+ <div class="@load(vm.getFieldStyle(field, 'field-label'))">\r
+ <radio id="r" label="${label}" value="${value}" onCheck="@command('onRadioCheck', target=self) @global-command('autosave', source=self)" \r
+ checked="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator) @converter('hu.bitcity.converter.RadioCheckConverter')" \r
+ disabled="@load(vm.formDocument['ro'] || ro)" />\r
+ </div>\r
+</div> \r
--- /dev/null
+<div class="field">\r
+ <div class="@load(vm.getFieldStyle(field, 'field-label'))">\r
+ <radio id="r" label="${label}" value="${value}" onCheck="@command('onRadioCheck', target=self) @global-command('autosave', source=self)" \r
+ checked="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator) @converter('hu.bitcity.converter.RadioCheckConverter')" \r
+ disabled="@load(vm.formDocument['ro'] || ro)">\r
+ <custom-attributes dataField="${dataField}" checkData="true"/>\r
+ </radio>\r
+ <datebox value="@bind(vm.formDocument[dataField])" format="yyyy.MM.dd" disabled="@load(vm.formDocument['ro'] || arg.readonly)">\r
+ <!-- \r
+ onChange="@command('onForceRadioCheck', target=r, force=true)"\r
+ -->\r
+ <custom-attributes field="${dataField}"/>\r
+ </datebox> \r
+ </div>\r
+</div> \r
--- /dev/null
+<div class="field">\r
+ <div class="@load(vm.getFieldStyle(field, 'field-label'))">\r
+ <radio id="r" label="${label}" value="${value}" \r
+ onCheck="@command('onRadioCheck', target=self) @global-command('autosave', source=self)" \r
+ checked="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator) @converter('hu.bitcity.converter.RadioCheckConverter')" \r
+ disabled="@load(vm.formDocument['ro'] || ro)" >\r
+ <custom-attributes dataField="${dataField}" checkData="true"/>\r
+ </radio>\r
+ <doublebox class="radio-intbox" value="@bind(vm.formDocument[dataField])" format="#,##0.##" \r
+ disabled="@load(vm.formDocument['ro'] || arg.readonly)" onBlur="@command('submit')">\r
+ <custom-attributes field="${dataField}"/>\r
+ </doublebox>\r
+ ${postfix}\r
+ </div>\r
+</div> \r
--- /dev/null
+<div class="field">\r
+ <div class="row field-top">\r
+ <include src="/fields/field-label.zul" />\r
+ </div> \r
+ <div class="row field-textbox field-top">\r
+ <radio label="${each}" forEach="${arg.values}" value="'${forEachStatus.index + 1}'" \r
+ checked="@bind(vm.formDocument[field]) @converter('hu.bitcity.converter.RadioCheckConverter')" \r
+ onCheck="@command('onRadioCheck', target=self) @global-command('autosave', source=self)"\r
+ disabled="@load(vm.formDocument['ro'] || ro)" />\r
+ <textbox class="inline-textbox" value="@load(vm.formDocument[dataField]) @save(vm.formDocument[dataField], before='submit') @validator(vm.formValidator, parameters=validatorargs)" \r
+ disabled="@load(vm.formDocument['ro'] || ro)" onChange="@command('submit')" />\r
+ </div> \r
+</div>\r
--- /dev/null
+<div class="field">\r
+ <div class="@load(vm.getFieldStyle(field, 'field-label'))">\r
+ <radio id="r" label="${label}" value="${value}" \r
+ onCheck="@command('onRadioCheck', target=self) @global-command('autosave', source=self)" \r
+ checked="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator) @converter('hu.bitcity.converter.RadioCheckConverter')" \r
+ disabled="@load(vm.formDocument['ro'] || ro)">\r
+ <custom-attributes dataField="${dataField}" checkData="true"/>\r
+ </radio>\r
+ <intbox class="radio-intbox" value="@bind(vm.formDocument[dataField])" format=",###" \r
+ disabled="@load(vm.formDocument['ro'] || arg.readonly)" onBlur="@command('submit')"> \r
+ <custom-attributes field="${dataField}"/>\r
+ </intbox>\r
+ ${postfix}\r
+ </div>\r
+</div> \r
--- /dev/null
+<div class="field"> \r
+ <div class="row field-top">\r
+ <include src="/fields/field-label.zul" />\r
+ </div> \r
+ <div class="row field-top">\r
+ <doublebox class="ten columns field-textbox" format="#,##0.##" disabled="@load(vm.formDocument['ro'] || ro)"\r
+ value="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator)" onChange="@command('submit') @global-command('autosave', source=self)" />\r
+ <combobox id="combo" class="two columns field-textbox" readonly="true" autodrop="true" selectedItem="@bind(vm.formDocument[unitField])" disabled="@load(vm.formDocument['ro'] || ro)"\r
+ onChange="@command('submit')" >\r
+ <comboitem label="${each}" value="${each}" forEach="Ft, %" />\r
+ </combobox> \r
+ </div> \r
+</div>
\ No newline at end of file
--- /dev/null
+<div class="field">\r
+ <div class="row field-top">\r
+ <include src="/fields/field-label.zul" />\r
+ </div> \r
+ <div class="row">\r
+ <textbox class="field-textbox" value="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator, parameters=validatorargs)" \r
+ disabled="@load(vm.formDocument['ro'] || ro)" onChange="@command('submit') @global-command('autosave', source=self)" />\r
+ </div> \r
+</div>
\ No newline at end of file
--- /dev/null
+<div class="field">\r
+ <div class="row field-top">\r
+ <include src="/fields/field-label.zul" />\r
+ </div> \r
+ <div class="row field-textbox" style="background: white">\r
+ <button class="@load(vm.getFieldStyle(dataField, 'field-label no-print'))" label="Aláírás" onClick="@command('showSignDialog', field=field)" disabled="@load(vm.formDocument['ro'] || ro)" />\r
+ <image style="min-height:30px; max-height:30px; margin: 2px;" src="@bind(vm.formDocument[field])" />\r
+ <textbox value="@load(vm.formDocument[dataField]) @save(vm.formDocument[dataField], before='submit') @validator(vm.formValidator, force=true)" visible="false" />\r
+ </div> \r
+</div>
\ No newline at end of file
--- /dev/null
+<div class="row">\r
+ <div class="row field-top">\r
+ <include src="/fields/field-label.zul"/>\r
+ </div> \r
+ <div class="row field-textbox" style="text-align: center;">\r
+ <image class="logo-image" width="100%" src="/img/pecset.jpg" />\r
+ </div> \r
+</div>
\ No newline at end of file
--- /dev/null
+<div class="field">\r
+ <div class="row field-top" if="${!noheader}">\r
+ <include src="~./fields/field-label.zul" />\r
+ </div> \r
+ <div class="row field-top">\r
+ <textbox class="field-textbox" value="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator, parameters=$validatorargs)" \r
+ disabled="@load(vm.canEdit || ro)" onChange="@command('submit') @global-command('autosave', source=self)" />\r
+ </div> \r
+</div>\r
--- /dev/null
+<div class="field">\r
+ <textbox style="background: white" class="field-textbox" value="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator)" \r
+ multiline="true" inplace="true" rows="5" cols="42" disabled="@load(vm.formDocument['ro'] || ro)" onChange="@command('submit') @global-command('autosave', source=self)" />\r
+</div> \r
--- /dev/null
+<div xmlns:w="client" w:onClick='console.log("field : ${field}")'>\r
+ Megbízó\r
+ <radio class="@load(vm.getFieldStyle(field, 'inline-radio'))" value="1" onCheck="@command('onRadioCheck', target=self)" \r
+ checked="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator) @converter('hu.bitcity.converter.RadioCheckConverter')" \r
+ disabled="@load(vm.formDocument['ro'] || ro)" />\r
+ átad egy 60 napnál nem régebbi tulajdoni lapot, vagy\r
+ <radio class="@load(vm.getFieldStyle(field, 'inline-radio'))" value="2" onCheck="@command('onRadioCheck', target=self)" \r
+ checked="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator) @converter('hu.bitcity.converter.RadioCheckConverter')" \r
+ disabled="@load(vm.formDocument['ro'] || ro)" />\r
+ megbízza a Home Service képviselőjét, hogy szerezzen be egy tulajdoni lapot.\r
+</div>\r
--- /dev/null
+<?component name="field" class="hu.bitcity.form.field.Field" ?>\r
+<div class="row">\r
+ <field class="twelve columms agreement" src="/fields/title-deed-content.zul" visible="@load(not vm.formDocument[errorField])" field="${field}" />\r
+ <field class="twelve columms agreement error" src="/fields/title-deed-content.zul" visible="@load(vm.formDocument[errorField])" field="${field}" />\r
+</div>\r
--- /dev/null
+<div class="field">\r
+ <div class="row field-top">\r
+ <include src="/fields/field-label.zul"/>\r
+ </div> \r
+ <div class="row field-top">\r
+ <intbox class="field-textbox" disabled="@load(vm.formDocument['ro'] || ro)" \r
+ value="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator)" \r
+ onChange="@command('decorateSettlementFields', source=self) @global-command('autosave', source=self)" format="####">\r
+ </intbox>\r
+ </div> \r
+</div>
\ No newline at end of file
--- /dev/null
+<?link rel="stylesheet" type="text/css" href="~./static/css/skeleton.css" ?>\r
+<zk xmlns:c="client">\r
+ <div viewModel="@id('vm') @init('hu.user.lis.ui.view.Index')"\r
+ style="height: 100%;width: 100%; display: flex; justify-content: center;">\r
+ <window title="@load(vm.buildProperties.version)" border="true"\r
+ style="height: 50%; width: 50%; position: relative; position: absolute; top: 50%; transform: translate(0, -50%);">\r
+ <vlayout>\r
+ <hlayout>\r
+ <bandbox id="bd" autodrop="true" iconSclass="z-icon-sort-down"\r
+ value="@load(vm.selectedSupplier) @converter('hu.user.lis.ui.converter.SupplierToNameConverter')"\r
+ onChanging="@command('onBandChanging')" onOpen="@command('onBandOpen')">\r
+ <attribute c:name="_doKeyDown">\r
+ <![CDATA[\r
+ function (evt) {\r
+ var keyCode = evt.keyCode;\r
+ console.log(keyCode);\r
+ if (keyCode == 13){\r
+ zk.$("$bd").close();\r
+ zk.$("$bd").focus();\r
+ return;\r
+ }\r
+ if (keyCode == 40){\r
+ if (!zk.$("$bd").isOpen()) {\r
+ zk.$("$bd").open();\r
+ zAu.send(new zk.Event(zk.Widget.$('$bd'), "onOpen", {'open': true}, {toServer:true}));\r
+ }\r
+ zk.$("$bd-list").focus();\r
+ return;\r
+ }\r
+ if (keyCode == 27){\r
+ zk.$("$bd").close()\r
+ zk.$("$bd").focus();\r
+ return;\r
+ }\r
+ }\r
+ ]]>\r
+ </attribute>\r
+ <bandpopup>\r
+ <listbox id="bd-list" height="250px" width="450px"\r
+ model="@bind(vm.suppliersSimpleDataModel)"\r
+ selectedItem="@bind(vm.selectedSupplier)"\r
+ onClick="bd.close()"\r
+ onDoubleClick="bd.close()">\r
+ <listhead visible="false">\r
+ <listheader label="id" vflex="min"/>\r
+ <listheader label="name" vflex="max"/>\r
+ <listheader label="zip" vflex="min"/>\r
+ </listhead>\r
+ <template name="model">\r
+ <listitem>\r
+ <listcell label="@load(each.id)"/>\r
+ <listcell label="@load(each.name)"/>\r
+ <listcell label="@load(each.zipCode)"/>\r
+ </listitem>\r
+ </template>\r
+ </listbox>\r
+ </bandpopup>\r
+ </bandbox>\r
+ <button iconSclass="z-icon-search-plus" onClick="@command('onPopupSuppliers')"/>\r
+ </hlayout>\r
+\r
+ <hlayout>\r
+ <label value="Kiválasztott azonosító: "/>\r
+ <label value="@load(vm.selectedSupplierId)"/>\r
+ </hlayout>\r
+ </vlayout>\r
+ </window>\r
+ <!-- <combobox sclass="ten columns" model="@bind(m.supplierListModel)" selectedItem="@bind(m.selectedSupplier)"-->\r
+ <!-- autodrop="true" buttonVisible="true">-->\r
+ <!-- </combobox>-->\r
+\r
+ </div>\r
+</zk>
\ No newline at end of file
--- /dev/null
+/* Grid
+–––––––––––––––––––––––––––––––––––––––––––––––––– */
+.container {
+ position: relative;
+ width: 100%;
+ max-width: 960px;
+ margin: 0 auto;
+ padding: 0 20px;
+ box-sizing: border-box; }
+.column,
+.columns {
+ width: 100%;
+ float: left;
+ box-sizing: border-box; }
+
+/* For devices larger than 400px */
+@media (min-width: 400px) {
+ .container {
+ width: 85%;
+ padding: 0; }
+}
+
+/* For devices larger than 550px */
+@media (min-width: 550px) {
+ .container {
+ width: 80%;
+ }
+ .column,
+ .columns {
+ margin-left: 0;
+ padding-top: 5px;
+ padding-bottom: 5px;
+ padding-left: 10px;
+/*
+ padding-right: 10px;
+*/
+ }
+ .column:first-child,
+ .columns:first-child {
+ margin-left: 0;
+ padding-left: 0;
+ }
+ .column:last-child,
+ .columns:last-child {
+ float: right; }
+/*
+ .one.column,
+ .one.columns { width: 7.875%; }
+ .two.columns { width: 16.25%; }
+ .three.columns { width: 24.625%; }
+ .four.columns { width: 33%; }
+
+ .five.columns { width: 41.375%; }
+ .six.columns { width: 49.75%; }
+ .seven.columns { width: 58.125%; }
+ .eight.columns { width: 66.5%; }
+ .nine.columns { width: 74.875%; }
+ .ten.columns { width: 83.25%; }
+ .eleven.columns { width: 91.625%; }
+ .twelve.columns { width: 100%; margin-left: 0; }
+*/
+ .one.column,
+ .one.columns { width: 8.3333333334%; }
+ .two.columns { width: 16.6666666667%; }
+ .three.columns { width: 25%; }
+ .four.columns { width: 33.3333333334%; }
+ .five.columns { width: 41.6666666667%; }
+ .six.columns { width: 50%; }
+ .seven.columns { width: 58.3333333334%; }
+ .eight.columns { width: 66.6666666667%; }
+ .nine.columns { width: 75%; }
+ .ten.columns { width: 83.3333333334%; }
+ .eleven.columns { width: 91.66666666667%; }
+ .twelve.columns { width: 100%; margin-left: 0; }
+ .per-five.columns { width: 20%; }
+
+
+}
+
+/*
+@media only screen and (min-width: 550px) {
+ .column:first-child,
+ .columns:first-child {
+ float: right; }
+}
+
+@media only print and (min-width: 550px) {
+ .two.columns:last-child { background: red; width: 17%;}
+ .three.columns:last-child { background: red; width: 24.9%;}
+ .four.columns:last-child { background: red; width: 33.4%;}
+}
+*/
+
+
+/* Utilities
+–––––––––––––––––––––––––––––––––––––––––––––––––– */
+.u-vertical-container {
+ display: table;
+ padding: 10px;
+}
+.u-fill {
+ display: table-row;
+ height: 100%;
+ max-height: 100%;
+ width: 100%;
+}
+.u-full-width {
+ width: 100%;
+ box-sizing: border-box;
+}
+.u-max-full-width {
+ max-width: 100%;
+ box-sizing: border-box;
+}
+.u-full-height {
+ height: 100%;
+}
+.u-max-full-height {
+ max-height: 100%;
+}
+.u-form-width {
+ width: 94%;
+ box-sizing: border-box; }
+.u-max-form-width {
+ max-width: 94%;
+ box-sizing: border-box; }
+.u-pull-right {
+ float: right; }
+.u-pull-left {
+ float: left; }
+
+
+/* Clearing
+–––––––––––––––––––––––––––––––––––––––––––––––––– */
+
+/* Self Clearing Goodness */
+.container:after,
+.row:after,
+.u-cf {
+ content: "";
+ display: table;
+ clear: both; }
+
+
+/* Media Queries
+–––––––––––––––––––––––––––––––––––––––––––––––––– */
+/*
+Note: The best way to structure the use of media queries is to create the queries
+near the relevant code. For example, if you wanted to change the styles for buttons
+on small devices, paste the mobile query code up in the buttons section and style it
+there.
+*/
+
+
+/* Larger than mobile */
+@media (min-width: 400px) {}
+
+/* Larger than phablet (also point when grid becomes active) */
+@media (min-width: 550px) {}
+
+/* Larger than tablet */
+@media (min-width: 750px) {}
+
+/* Larger than desktop */
+@media (min-width: 1000px) {}
+
+/* Larger than Desktop HD */
+@media (min-width: 1200px) {}
--- /dev/null
+.z-loading {\r
+ left: 45% !important; \r
+/*\r
+ top: 50% !important; \r
+ align: center; \r
+ font-size: 18px;\r
+ font-weight: bold;\r
+ padding: 5px;\r
+*/\r
+}\r
+\r
+.container .form-label {\r
+ font-family: "Calibri";\r
+ line-height: 1.5em;\r
+}\r
+\r
+.container .bold {\r
+ font-weight: bold;\r
+}\r
+\r
+.row .field-textbox {\r
+ font-size: 12px;\r
+ padding: 0px; \r
+ padding-left: 5px; \r
+ line-height: 1.5em;\r
+ height: auto;\r
+ width: 100%;\r
+ border-radius: 0px;\r
+ -moz-border-radius: 0px; \r
+ -webkit-border-radius: 0px; \r
+ border: none;\r
+}\r
+\r
+.field-top {\r
+ background: white;\r
+}\r
+\r
+.container .separator {\r
+ height: 20px;\r
+ min-height: 20px;\r
+}\r
+\r
+.field {\r
+ padding-left: 1px;\r
+ padding-bottom: 1px;\r
+ background: black;\r
+}\r
+\r
+.agreement-field {\r
+ border-left: 1px solid black;\r
+ border-bottom: 1px solid black;\r
+ padding: 10px 0px 10px 10px;\r
+}\r
+\r
+.stamp-field {\r
+ border-left: 1px solid black;\r
+ border-bottom: 1px solid black;\r
+ padding: 10px 0px 10px 10px;\r
+ height: 124px;\r
+}\r
+\r
+.row .center {\r
+ text-align: center; \r
+}\r
+\r
+.row .field-label {\r
+ font-weight: normal;\r
+ /*\r
+ background-image: url('../img/label.png'); \r
+ background-repeat: no-repeat; \r
+ background-position: right top;*/\r
+ padding-right: 5px; \r
+ background-color: #CCCCCC;\r
+ border: none;\r
+ /*margin: 4px 0px 0px 0px;trbl*/ \r
+ padding-left: 5px;\r
+ padding-top: 1px;\r
+ padding-bottom: 1px;\r
+ /*line-height: 1em;\r
+ text-overflow: ellipsis;\r
+ overflow: hidden;*/\r
+ white-space: nowrap; \r
+}\r
+.row .field-label .error {\r
+ background: #ffbcaf;\r
+ border: 1px solid #ffbcaf;\r
+}\r
+.row .error {\r
+ background-color: #ffbcaf;\r
+/*\r
+ background-image: url('../img/label-error.png'); \r
+ background-repeat: no-repeat; \r
+ background-position: right top; \r
+*/\r
+}\r
+/*\r
+.row .field-label * {\r
+ margin: 0px;\r
+ /*overflow: hidden; inline date problem*/\r
+}\r
+*/\r
+.row .field-vlayout {\r
+ line-height: 1em;\r
+}\r
+\r
+.container .group-label {\r
+ display: block;\r
+ font-weight: bold;\r
+ font-size: 12px;\r
+}\r
+\r
+.container .buttongroup {\r
+ border-top: 1px solid #676767;\r
+ border-bottom: 1px solid #676767;\r
+ margin-top: 20px;\r
+ margin-bottom: 20px;\r
+ padding-top: 10px;\r
+ padding-bottom: 10px;\r
+ text-align: right;\r
+}\r
+\r
+.container .thinbuttongroup {\r
+/*\r
+ border-top: 1px solid #676767;\r
+ border-bottom: 1px solid #676767;\r
+*/\r
+ margin-top: 5px;\r
+ margin-bottom: 5px;\r
+ padding-top: 5px;\r
+ padding-bottom: 5px;\r
+ text-align: right;\r
+}\r
+\r
+.z-checkbox-content {\r
+ margin-bottom: 0px;\r
+}\r
+\r
+.row .z-datebox {\r
+ height: auto;\r
+ display: inline-block;\r
+}\r
+\r
+.row .radio-intbox {\r
+ height: auto;\r
+ display: initial;\r
+ padding: 0px; \r
+ line-height: 1em;\r
+ border-radius: 0;\r
+ webkit-border-radius: 0px;\r
+}\r
+\r
+.row .z-datebox-input {\r
+ padding: 0px;\r
+ height: auto;\r
+ border: none;\r
+}\r
+\r
+.row .z-datebox-button {\r
+ padding: 0px;\r
+ padding-top: 0px;\r
+ height: auto;\r
+ min-height: initial;\r
+}\r
+\r
+.row textarea.z-textbox {\r
+ overflow: hidden; \r
+ overflow-wrap: break-word; \r
+ resize: none; \r
+}\r
+\r
+.hidden {\r
+ display: none;\r
+}\r
+/*\r
+.bigfont {\r
+ font-size: 14px;\r
+}\r
+.bigfont * {\r
+ font-size: 14px;\r
+}\r
+.biggerfont {\r
+ font-size: 16px;\r
+}\r
+*/\r
+\r
+input[type="radio"] {\r
+ font-family: ZK85Icons,FontAwesome;\r
+}\r
+\r
+input[type="radio"]:focus {\r
+ outline: none;\r
+}\r
+input[type="radio"]:hover {\r
+ border-color: black\r
+}\r
+\r
+input[type="radio"]:checked {\r
+ border-color: black\r
+}\r
+\r
+input[type="radio"][disabled] {\r
+ border-color: black;\r
+ cursor: not-allowed;\r
+}\r
+\r
+input[type="radio"][disabled]:checked:before {\r
+ border-color: black;\r
+ background: black; \r
+}\r
+\r
+\r
+input[type="radio"][disabled]:checked {\r
+ border-color: black;\r
+}\r
+\r
+input[type="radio"][disabled]:checked:hover {\r
+ border-color: black;\r
+}\r
+\r
+.field-textbox[disabled] {\r
+ background: white !important;\r
+ color: black !important;\r
+ cursor: not-allowed !important;\r
+}\r
+\r
+input[type="radio"]:checked:before {\r
+ content: "\f00c";\r
+ color: white;\r
+}\r
+\r
+input[type="checkbox"]:focus {\r
+ outline: none;\r
+}\r
+\r
+input[type="radio"] {\r
+ width: 14px;\r
+ height: 14px;\r
+ margin: 0px 4px 2px 8px;\r
+ border-radius: 0px;\r
+ border: 1px solid black;\r
+}\r
+\r
+input[type="radio"]:before {\r
+/*\r
+ width: 12px;\r
+ height: 12px;\r
+ margin-right: 20px;*/\r
+ border-radius: 0px;\r
+}\r
+\r
+input[type="radio"]:checked:before {\r
+ background-color: black; \r
+}\r
+\r
+input[type="checkbox"] {\r
+ font-size: inherit;\r
+ width: 14px;\r
+ height: 14px;\r
+ border: 1px solid black;\r
+ border-radius: 0px;\r
+ margin: 2px 4px 2px 8px;\r
+}\r
+\r
+input[type="checkbox"]:checked {\r
+ background-color: black;\r
+}\r
+\r
+input[type="checkbox"]:hover {\r
+ border-color: black;\r
+}\r
+\r
+.row .agreement {\r
+ padding: 0px 0px 0px 0px;\r
+ line-height: 1em;\r
+ border: none;\r
+ margin: 2px 0px 0px 0px;\r
+}\r
+\r
+.row .agreement span {\r
+ font-family: "Calibri";\r
+ font-weight: normal;\r
+ line-height: 1em;\r
+ margin: 0px;\r
+}\r
+\r
+.agreement-small {\r
+ padding: 0px 0px 0px 0px;\r
+ line-height: 1em;\r
+ border: none;\r
+ margin: 2px 0px 0px 20px;\r
+}\r
+\r
+.row .agreement-small span {\r
+ font-family: "Calibri";\r
+ font-weight: normal;\r
+ line-height: 1em;\r
+ margin: 0px;\r
+}\r
+\r
+.row .agreement p {\r
+ margin: 10px 0px 10px 10px;\r
+}\r
+\r
+.row .md-content {\r
+ padding: 0px 0px 0px 0px;\r
+ line-height: 1em;\r
+ margin: 20px;\r
+}\r
+\r
+.row .md-content span {\r
+ font-family: "Calibri";\r
+ font-weight: normal;\r
+ font-size: 14px;\r
+ line-height: 1.5em;\r
+ margin: 0px;\r
+}\r
+\r
+.row .md-content p {\r
+ margin: 10px 0px 10px 10px;\r
+}\r
+\r
+.row .inline-textbox {\r
+ background: transparent;\r
+ height: auto;\r
+ margin: 0px;\r
+ padding: 0px;\r
+ border: none;\r
+ border-bottom: 1px dotted;\r
+ border-radius: 0;\r
+ webkit-border-radius: 0px;\r
+}\r
+\r
+\r
+.inline-intbox {\r
+ font-family: "Calibri";\r
+ font-weight: bolder;\r
+ font-size: 12px;\r
+ padding: 0px;\r
+ line-height: 1em;\r
+ height: auto;\r
+ border: none;\r
+ border-bottom: 1px dotted;\r
+ border-radius: 0;\r
+ webkit-border-radius: 0px;\r
+}\r
+/*\r
+.inline-radio {\r
+ width: 20px; \r
+ height: 20px;\r
+}\r
+*/\r
+.inline {\r
+ display: inline;\r
+}\r
+\r
+.row .z-combobox {\r
+ display: inline-block;\r
+ height: auto;\r
+ white-space: nowrap\r
+}\r
+\r
+.row .z-datebox-input {\r
+ color: rgba(0, 0, 0, 0.9);\r
+ height: auto;\r
+ border: none;\r
+ margin: 0px;\r
+ padding: 0px;\r
+ line-height: 1em;\r
+ background: white;\r
+ width: 100%;\r
+ -webkit-border-radius: 0px;\r
+ -moz-border-radius: 0px;\r
+ -o-border-radius: 0px;\r
+ -ms-border-radius: 0px;\r
+ border-radius: 0px;\r
+}\r
+\r
+.row .z-combobox-input {\r
+ color: rgba(0, 0, 0, 0.9);\r
+ height: auto;\r
+ border: none;\r
+ margin: 0px;\r
+ padding: 0px;\r
+ line-height: 1em;\r
+ background: transparent;\r
+ width: 100%;\r
+ -webkit-border-radius: 0px;\r
+ -moz-border-radius: 0px;\r
+ -o-border-radius: 0px;\r
+ -ms-border-radius: 0px;\r
+ border-radius: 0px;\r
+}\r
+\r
+.row .z-combobox-button,\r
+.row .z-datebox-button {\r
+ font-size: 1em;\r
+ color: rgba(0, 0, 0, 0.9);\r
+ display: inline-block;\r
+ min-width: 0px;\r
+ min-height: 0px;\r
+ height: auto;\r
+ -webkit-border-radius: 0 5px 5px 0;\r
+ -moz-border-radius: 0 5px 5px 0;\r
+ -o-border-radius: 0 5px 5px 0;\r
+ -ms-border-radius: 0 5px 5px 0;\r
+ border-radius: 0 5px 5px 0;\r
+ border: none;\r
+ border-left: 1px solid black;\r
+ position: relative;\r
+ left: -18px;\r
+ padding: 0px;\r
+ line-height: 1em;\r
+ background: #fff;\r
+ text-align: center;\r
+ vertical-align: middle;\r
+ cursor: pointer;\r
+ background: white;\r
+ overflow: hidden; \r
+/* display: inline-block;*/\r
+}\r
+\r
+\r
+.hairline {\r
+ height: 2px; \r
+ width: 100%;\r
+ background-color: black;\r
+}\r
+\r
+.a4page-content {\r
+ min-height: 1010px;\r
+ /* az alábbiakat kivenni releaskor!\r
+ max-height: 1010px;\r
+ height: 1010px;\r
+ */\r
+}\r
+\r
+.a4page {\r
+ border: 1px solid #676767;\r
+ margin: 40px;\r
+ -webkit-box-shadow: 10px 10px 5px 0px rgba(0,0,0,0.75);\r
+ -moz-box-shadow: 10px 10px 5px 0px rgba(0,0,0,0.75);\r
+ box-shadow: 10px 10px 5px 0px rgba(0,0,0,0.75);\r
+}\r
+\r
+\r
--- /dev/null
+.printModal{font-family:sans-serif;display:flex;text-align:center;font-weight:300;font-size:30px;left:0;top:0;position:absolute;color:#0460b5;width:100%;height:100%;background-color:hsla(0,0%,100%,.91)}.printClose{position:absolute;right:10px;top:10px}.printClose:before{content:"\00D7";font-family:Helvetica Neue,sans-serif;font-weight:100;line-height:1px;padding-top:.5em;display:block;font-size:2em;text-indent:1px;overflow:hidden;height:1.25em;width:1.25em;text-align:center;cursor:pointer}
\ No newline at end of file
--- /dev/null
+!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.printJS=t():e.printJS=t()}(window,function(){return function(n){var r={};function o(e){if(r[e])return r[e].exports;var t=r[e]={i:e,l:!1,exports:{}};return n[e].call(t.exports,t,t.exports,o),t.l=!0,t.exports}return o.m=n,o.c=r,o.d=function(e,t,n){o.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},o.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.t=function(t,e){if(1&e&&(t=o(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(o.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var r in t)o.d(n,r,function(e){return t[e]}.bind(null,r));return n},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="",o(o.s=4)}([function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,o=n(2),i=(r=o)&&r.__esModule?r:{default:r},a=n(1);var l={send:function(r,e){document.getElementsByTagName("body")[0].appendChild(e);var o=document.getElementById(r.frameId);o.onload=function(){if("pdf"!==r.type){var e=o.contentWindow||o.contentDocument;if(e.document&&(e=e.document),e.body.appendChild(r.printableElement),"pdf"!==r.type&&r.style){var t=document.createElement("style");t.innerHTML=r.style,e.head.appendChild(t)}var n=e.getElementsByTagName("img");0<n.length?function(e){var t=[],n=!0,r=!1,o=void 0;try{for(var i,a=e[Symbol.iterator]();!(n=(i=a.next()).done);n=!0){var l=i.value;l.src&&l.src!==window.location.href&&t.push(u(l))}}catch(e){r=!0,o=e}finally{try{!n&&a.return&&a.return()}finally{if(r)throw o}}return Promise.all(t)}(n).then(function(){return d(o,r)}):d(o,r)}else d(o,r)}}};function d(t,n){try{if(t.focus(),i.default.isEdge()||i.default.isIE())try{t.contentWindow.document.execCommand("print",!1,null)}catch(e){t.contentWindow.print()}else t.contentWindow.print()}catch(e){n.onError(e)}finally{(0,a.cleanUp)(n)}}function u(n){return new Promise(function(t){!function e(){n&&void 0!==n.naturalWidth&&0!==n.naturalWidth&&n.complete?t():setTimeout(e,500)}()})}t.default=l},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};t.addWrapper=function(e,t){return'<div style="font-family:'+t.font+" !important; font-size: "+t.font_size+' !important; width:100%;">'+e+"</div>"},t.capitalizePrint=function(e){return e.charAt(0).toUpperCase()+e.slice(1)},t.collectStyles=function(e,t){var n=document.defaultView||window,r="",o=n.getComputedStyle(e,"");return Object.keys(o).map(function(e){(-1!==t.targetStyles.indexOf("*")||-1!==t.targetStyle.indexOf(o[e])||function(e,t){for(var n=0;n<e.length;n++)if("object"===(void 0===t?"undefined":i(t))&&-1!==t.indexOf(e[n]))return!0;return!1}(t.targetStyles,o[e]))&&o.getPropertyValue(o[e])&&(r+=o[e]+":"+o.getPropertyValue(o[e])+";")}),r+="max-width: "+t.maxWidth+"px !important;"+t.font_size+" !important;"},t.addHeader=function(e,t){var n=document.createElement("div");if(l(t.header))n.innerHTML=t.header;else{var r=document.createElement("h1"),o=document.createTextNode(t.header);r.appendChild(o),r.setAttribute("style",t.headerStyle),n.appendChild(r)}e.insertBefore(n,e.childNodes[0])},t.cleanUp=function(t){t.showModal&&r.default.close();t.onLoadingEnd&&t.onLoadingEnd();(t.showModal||t.onLoadingStart)&&window.URL.revokeObjectURL(t.printable);if(t.onPrintDialogClose){var n="mouseover";(o.default.isChrome()||o.default.isFirefox())&&(n="focus");window.addEventListener(n,function e(){window.removeEventListener(n,e),t.onPrintDialogClose()})}},t.isRawHTML=l;var r=a(n(3)),o=a(n(2));function a(e){return e&&e.__esModule?e:{default:e}}function l(e){return new RegExp("<([A-Za-z][A-Za-z0-9]*)\\b[^>]*>(.*?)</\\1>").test(e)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r={isFirefox:function(){return"undefined"!=typeof InstallTrigger},isIE:function(){return-1!==navigator.userAgent.indexOf("MSIE")||!!document.documentMode},isEdge:function(){return!r.isIE()&&!!window.StyleMedia},isChrome:function(){return!!(0<arguments.length&&void 0!==arguments[0]?arguments[0]:window).chrome},isSafari:function(){return 0<Object.prototype.toString.call(window.HTMLElement).indexOf("Constructor")||-1!==navigator.userAgent.toLowerCase().indexOf("safari")},isIOSChrome:function(){return-1!==navigator.userAgent.toLowerCase().indexOf("crios")}};t.default=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var a={show:function(e){var t=document.createElement("div");t.setAttribute("style","font-family:sans-serif; display:table; text-align:center; font-weight:300; font-size:30px; left:0; top:0;position:fixed; z-index: 9990;color: #0460B5; width: 100%; height: 100%; background-color:rgba(255,255,255,.9);transition: opacity .3s ease;"),t.setAttribute("id","printJS-Modal");var n=document.createElement("div");n.setAttribute("style","display:table-cell; vertical-align:middle; padding-bottom:100px;");var r=document.createElement("div");r.setAttribute("class","printClose"),r.setAttribute("id","printClose"),n.appendChild(r);var o=document.createElement("span");o.setAttribute("class","printSpinner"),n.appendChild(o);var i=document.createTextNode(e.modalMessage);n.appendChild(i),t.appendChild(n),document.getElementsByTagName("body")[0].appendChild(t),document.getElementById("printClose").addEventListener("click",function(){a.close()})},close:function(){var e=document.getElementById("printJS-Modal");e.parentNode.removeChild(e)}};t.default=a},function(e,t,n){e.exports=n(5)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n(6);var r,o=n(7);var i=((r=o)&&r.__esModule?r:{default:r}).default.init;"undefined"!=typeof window&&(window.printJS=i),t.default=i},function(e,t,n){},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a=r(n(2)),l=r(n(3)),d=r(n(8)),u=r(n(9)),c=r(n(10)),f=r(n(11)),s=r(n(12));function r(e){return e&&e.__esModule?e:{default:e}}var p=["pdf","html","image","json","raw-html"];t.default={init:function(){var t={printable:null,fallbackPrintable:null,type:"pdf",header:null,headerStyle:"font-weight: 300;",maxWidth:800,font:"TimesNewRoman",font_size:"12pt",honorMarginPadding:!0,honorColor:!1,properties:null,gridHeaderStyle:"font-weight: bold; padding: 5px; border: 1px solid #dddddd;",gridStyle:"border: 1px solid lightgray; margin-bottom: -1px;",showModal:!1,onError:function(e){throw e},onLoadingStart:null,onLoadingEnd:null,onPrintDialogClose:null,onPdfOpen:null,onBrowserIncompatible:function(){return!0},modalMessage:"Retrieving Document...",frameId:"printJS",printableElement:null,documentTitle:"Document",targetStyle:["clear","display","width","min-width","height","min-height","max-height"],targetStyles:["border","box","break","text-decoration"],ignoreElements:[],imageStyle:"max-width: 100%;",repeatTableHeader:!0,css:null,style:null,scanStyles:!0,base64:!1},e=arguments[0];if(void 0===e)throw new Error("printJS expects at least 1 attribute.");switch(void 0===e?"undefined":i(e)){case"string":t.printable=encodeURI(e),t.fallbackPrintable=t.printable,t.type=arguments[1]||t.type;break;case"object":for(var n in t.printable=e.printable,t.base64=void 0!==e.base64,t.fallbackPrintable=void 0!==e.fallbackPrintable?e.fallbackPrintable:t.printable,t.fallbackPrintable=t.base64?"data:application/pdf;base64,"+t.fallbackPrintable:t.fallbackPrintable,t)"printable"!==n&&"fallbackPrintable"!==n&&"base64"!==n&&(t[n]=void 0!==e[n]?e[n]:t[n]);break;default:throw new Error('Unexpected argument type! Expected "string" or "object", got '+(void 0===e?"undefined":i(e)))}if(!t.printable)throw new Error("Missing printable information.");if(!t.type||"string"!=typeof t.type||-1===p.indexOf(t.type.toLowerCase()))throw new Error("Invalid print type. Available types are: pdf, html, image and json.");t.showModal&&l.default.show(t),t.onLoadingStart&&t.onLoadingStart();var r=document.getElementById(t.frameId);r&&r.parentNode.removeChild(r);var o=void 0;switch((o=document.createElement("iframe")).setAttribute("style","visibility: hidden; height: 0; width: 0; position: absolute;"),o.setAttribute("id",t.frameId),"pdf"!==t.type&&(o.srcdoc="<html><head><title>"+t.documentTitle+"</title>",t.css&&(Array.isArray(t.css)||(t.css=[t.css]),t.css.forEach(function(e){o.srcdoc+='<link rel="stylesheet" href="'+e+'">'})),o.srcdoc+="</head><body></body></html>"),t.type){case"pdf":if(a.default.isFirefox()||a.default.isEdge()||a.default.isIE())try{if(console.info("PrintJS currently doesn't support PDF printing in Firefox, Internet Explorer and Edge."),!0===t.onBrowserIncompatible())window.open(t.fallbackPrintable,"_blank").focus(),t.onPdfOpen&&t.onPdfOpen()}catch(e){t.onError(e)}finally{t.showModal&&l.default.close(),t.onLoadingEnd&&t.onLoadingEnd()}else d.default.print(t,o);break;case"image":f.default.print(t,o);break;case"html":u.default.print(t,o);break;case"raw-html":c.default.print(t,o);break;case"json":s.default.print(t,o)}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,o=n(0),i=(r=o)&&r.__esModule?r:{default:r},a=n(1);function l(e,t,n){var r=new window.Blob([n],{type:"application/pdf"});r=window.URL.createObjectURL(r),t.setAttribute("src",r),i.default.send(e,t)}t.default={print:function(e,t){if(e.base64){var n=Uint8Array.from(atob(e.printable),function(e){return e.charCodeAt(0)});l(e,t,n)}else{e.printable=/^(blob|http)/i.test(e.printable)?e.printable:window.location.origin+("/"!==e.printable.charAt(0)?"/"+e.printable:e.printable);var r=new window.XMLHttpRequest;r.responseType="arraybuffer",r.addEventListener("load",function(){if(-1===[200,201].indexOf(r.status))return(0,a.cleanUp)(e),void e.onError(r.statusText);l(e,t,r.response)}),r.open("GET",e.printable,!0),r.send()}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,f=n(1),o=n(0),i=(r=o)&&r.__esModule?r:{default:r};t.default={print:function(e,t){var n=document.getElementById(e.printable);n?(e.printableElement=function e(t,n){var r=t.cloneNode();var o=!0;var i=!1;var a=void 0;try{for(var l,d=t.childNodes[Symbol.iterator]();!(o=(l=d.next()).done);o=!0){var u=l.value;if(-1===n.ignoreElements.indexOf(u.id)){var c=e(u,n);r.appendChild(c)}}}catch(e){i=!0,a=e}finally{try{!o&&d.return&&d.return()}finally{if(i)throw a}}n.scanStyles&&1===t.nodeType&&r.setAttribute("style",(0,f.collectStyles)(t,n));switch(t.tagName){case"SELECT":r.value=t.value;break;case"CANVAS":r.getContext("2d").drawImage(t,0,0)}return r}(n,e),e.header&&(0,f.addHeader)(e.printableElement,e),i.default.send(e,t)):window.console.error("Invalid HTML element id: "+e.printable)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,o=n(0),i=(r=o)&&r.__esModule?r:{default:r};t.default={print:function(e,t){e.printableElement=document.createElement("div"),e.printableElement.setAttribute("style","width:100%"),e.printableElement.innerHTML=e.printable,i.default.send(e,t)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,o=n(1),i=n(0),a=(r=i)&&r.__esModule?r:{default:r};t.default={print:function(r,e){r.printable.constructor!==Array&&(r.printable=[r.printable]),r.printableElement=document.createElement("div"),r.printable.forEach(function(e){var t=document.createElement("img");t.setAttribute("style",r.imageStyle),t.src=e;var n=document.createElement("div");n.appendChild(t),r.printableElement.appendChild(n)}),r.header&&(0,o.addHeader)(r.printableElement,r),a.default.send(r,e)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},c=n(1),i=n(0),a=(r=i)&&r.__esModule?r:{default:r};t.default={print:function(t,e){if("object"!==o(t.printable))throw new Error("Invalid javascript data object (JSON).");if("boolean"!=typeof t.repeatTableHeader)throw new Error("Invalid value for repeatTableHeader attribute (JSON).");if(!t.properties||!Array.isArray(t.properties))throw new Error("Invalid properties array for your JSON data.");t.properties=t.properties.map(function(e){return{field:"object"===(void 0===e?"undefined":o(e))?e.field:e,displayName:"object"===(void 0===e?"undefined":o(e))?e.displayName:e,columnSize:"object"===(void 0===e?"undefined":o(e))&&e.columnSize?e.columnSize+";":100/t.properties.length+"%;"}}),t.printableElement=document.createElement("div"),t.header&&(0,c.addHeader)(t.printableElement,t),t.printableElement.innerHTML+=function(e){var t=e.printable,n=e.properties,r='<table style="border-collapse: collapse; width: 100%;">';e.repeatTableHeader&&(r+="<thead>");r+="<tr>";for(var o=0;o<n.length;o++)r+='<th style="width:'+n[o].columnSize+";"+e.gridHeaderStyle+'">'+(0,c.capitalizePrint)(n[o].displayName)+"</th>";r+="</tr>",e.repeatTableHeader&&(r+="</thead>");r+="<tbody>";for(var i=0;i<t.length;i++){r+="<tr>";for(var a=0;a<n.length;a++){var l=t[i],d=n[a].field.split(".");if(1<d.length)for(var u=0;u<d.length;u++)l=l[d[u]];else l=l[n[a].field];r+='<td style="width:'+n[a].columnSize+e.gridStyle+'">'+l+"</td>"}r+="</tr>"}return r+="</tbody></table>"}(t),a.default.send(t,e)}}}]).default});
\ No newline at end of file
--- /dev/null
+<?link rel="stylesheet" type="text/css" href="~./static/css/skeleton.css" ?>\r
+<?link rel="stylesheet" type="text/css" href="~./static/css/webclient.css" ?>\r
+<?component name="text" class="hu.user.lis.ui.form.Field$Text" ?>\r
+<zk xmlns:c="client">\r
+ <window id="supplierPopup" title="Szállítók" width="80%" height="60%" closable="true"\r
+ viewModel="@id('vm') @init('hu.user.lis.ui.view.SuppliersViewModel')">\r
+ <style>\r
+ .z-listitem-selected>.z-listcell>.z-listcell-content {\r
+ font-weight: bold,;\r
+ }\r
+ </style>\r
+\r
+ <borderlayout>\r
+ <north flex="true">\r
+ <toolbar>\r
+ <label value="Név"/>\r
+ <textbox id="partialName" value="@bind(vm.partialName)" onOK="@command('search')">\r
+ <attribute c:name="_doKeyDown">\r
+ <![CDATA[\r
+ function (evt) {\r
+ var keyCode = evt.keyCode;\r
+ console.log(keyCode);\r
+ Clients.log(keyCode);\r
+ if (keyCode == 13){\r
+ zk.$("$supplierSearchResult").focus();\r
+ zk.$("$partialName").fireEvent('onSearch', {}, {toServer: true});\r
+ return;\r
+ }\r
+ }\r
+ ]]>\r
+ </attribute>\r
+ </textbox>\r
+ <label value="Irányítószám"/>\r
+ <textbox instant="true" value="@bind(vm.partialZipCode)" onOK="@command('search')"/>\r
+ <toolbarbutton label="Keresés" iconSclass="z-icon-search" onClick="@command('search')"/>\r
+ <toolbarbutton label="Mind" iconSclass="z-icon-search-plus" onClick="@command('listAll')"/>\r
+ </toolbar>\r
+ </north>\r
+ <center border="none" flex="true">\r
+ <listbox id="suppliersSearchResult" vflex="true" model="@load(vm.suppliersDataModel)"\r
+ onSelect="@command('onListSelection')"\r
+ onDoubleClick="@command('onCloseWindow', target=supplierPopup, select=true)">\r
+ <listhead>\r
+ <listheader label="Név" align="left"/>\r
+ </listhead>\r
+ <listfoot>\r
+ <listfooter>\r
+ <hlayout>\r
+ <label value="Találatok: "/>\r
+ <label value="@load(vm.suppliersDataModel.resultSetCount)"/>\r
+ </hlayout>\r
+ </listfooter>\r
+ </listfoot>\r
+ <template name="model">\r
+ <listitem>\r
+ <listcell label="@load(empty each.name ? each.template : each.name)"/>\r
+ </listitem>\r
+ </template>\r
+ </listbox>\r
+ </center>\r
+ <east title="Adatlap" size="60%" flex="true" splittable="true" collapsible="true">\r
+ <div class="container u-form-width u-max-form-width">\r
+ <div class="row">\r
+ <text class="twelve columns" label="ID" field="id"/>\r
+ </div>\r
+ <div class="row">\r
+ <text class="twelve columns" label="Név" field="name"/>\r
+ </div>\r
+ <div class="row">\r
+ <text class="twelve columns" label="Irányítószám" field="zipCode"/>\r
+ </div>\r
+ </div>\r
+ </east>\r
+ <south flex="true" style="text-align: right; padding: 10px">\r
+ <hlayout>\r
+ <button label="Bezár" onClick="@command('onCloseWindow', target=supplierPopup, select=false)"\r
+ disabled="@load(vm.selectedSupplier)"/>\r
+ <button label="Kiválaszt" onClick="@command('onCloseWindow', target=supplierPopup, select=true)"/>\r
+ </hlayout>\r
+ </south>\r
+ </borderlayout>\r
+ </window>\r
+</zk>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>\r
+<zk>\r
+ <config-name/>\r
+ <system-config>\r
+ <ui-factory-class>org.zkoss.zk.ui.http.SerializableUiFactory</ui-factory-class>\r
+ </system-config>\r
+ <library-property>\r
+ <name>org.zkoss.theme.preferred</name>\r
+ <value>silvertail</value>\r
+ </library-property>\r
+ <library-property>\r
+ <name>org.zkoss.zul.grid.rod</name>\r
+ <value>true</value>\r
+ </library-property>\r
+ <library-property>\r
+ <name>org.zkoss.zul.grid.autohidePaging</name>\r
+ <value>false</value>\r
+ </library-property>\r
+ <library-property>\r
+ <name>org.zkoss.zul.listbox.rod</name>\r
+ <value>true</value>\r
+ </library-property>\r
+ <library-property>\r
+ <name>org.zkoss.zul.listbox.autohidePaging</name>\r
+ <value>false</value>\r
+ </library-property>\r
+ <library-property>\r
+ <name>org.zkoss.zul.nativebar</name>\r
+ <value>true</value>\r
+ </library-property>\r
+ <!-- PROD -->\r
+ <!-- <desktop-config>-->\r
+ <!-- <file-check-period>600</file-check-period><!– unit: seconds –>-->\r
+ <!-- </desktop-config>-->\r
+</zk>
\ No newline at end of file
--- /dev/null
+<?component name="text" class="hu.bitcity.form.field.Field$Text" ?>\r
+<?component name="number" class="hu.bitcity.form.field.Field$Number" ?>\r
+<?component name="domain" class="hu.bitcity.form.field.Field$Domain" ?>\r
+<?component name="zipcode" class="hu.bitcity.form.field.Field$ZipCode" ?>\r
+<?component name="location" class="hu.bitcity.form.field.Field$Location" ?>\r
+<div class="row">\r
+ <div class="row">\r
+ <zipcode class="one column" label="Irányítószám" origField="${field}" field="${field}_iranyitoszam" validators="${validators}" />\r
+ <text class="four columns" label="Helység" field="${field}_helyseg" validators="${validators}" />\r
+ <location class="four columns" label="Közterület neve" origField="${field}" field="${field}_kozterulet_nev" validators="${validators}"/>\r
+ <domain class="two columns" label="Közterület" origField="${field}" field="${field}_kozterulet" \r
+ values="${['-', 'árok','átjáró','dűlő','dűlőút','erdősor','fasor','forduló','gát','határsor','határút','kapu','körönd','körtér','körút','köz','lakótelep','lejáró','lejtő','lépcső','liget','mélyút','orom','ösvény','park','part','pincesor','rakpart','sétány','sikátor','sor','sugárút','tér','udvar','út','utca','üdülőpart']}" \r
+ validators="${validators}"/>\r
+ <text class="one column" label="Házszám" field="${field}_hazszam" validators="${validators}"/>\r
+ </div>\r
+ <div class="row">\r
+ <text class="three columns" label="Lépcsőház" field="${field}_lepcsohaz" />\r
+ <text class="three columns" label="Emelet" field="${field}_emelet" />\r
+ <text class="three columns" label="Ajtó" field="${field}_ajto" />\r
+ <text class="three columns" label="Egyéb" field="${field}_egyeb" />\r
+ </div>\r
+</div>
\ No newline at end of file
--- /dev/null
+<div class="agreement field">\r
+ <div class="row field-top">\r
+ <label xmlns:ca="client/attribute" ca:data-markdown="true">\r
+${text}\r
+ </label>\r
+ </div>\r
+</div>
\ No newline at end of file
--- /dev/null
+<div class="field" xmlns:w="client" w:onClick="console.log('field : ${field}')">\r
+ <div class="@load(vm.getFieldStyle(field, 'field-label'))">\r
+ <checkbox label="${label}" onCheck="@command('submit') @global-command('autosave', source=self)"\r
+ checked="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator)" \r
+ disabled="@load(vm.formDocument['ro'] || ro)" />\r
+ </div>\r
+\r
+</div> \r
--- /dev/null
+<div class="field">\r
+ <div class="row field-top">\r
+ <include src="/fields/field-label.zul"/>\r
+ </div> \r
+ <div class="row field-textbox field-top">\r
+ <zk forEach="${values}">\r
+ <checkbox label="${each}"\r
+ checked="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator)" \r
+ disabled="@load(vm.formDocument['ro'] || ro)" onCheck="@command('submit') @global-command('autosave', source=self)" >\r
+ <custom-attributes field="${field}_${forEachStatus.index + 1}" />\r
+ </checkbox>\r
+ </zk>\r
+ </div> \r
+</div>\r
--- /dev/null
+<?component name="address" class="hu.bitcity.form.field.Field$Address" ?>\r
+<?component name="date" class="hu.bitcity.form.field.Field$Date" ?>\r
+<?component name="text" class="hu.bitcity.form.field.Field$Text" ?>\r
+<?component name="personname" class="hu.bitcity.form.field.Field$PersonName" ?>\r
+<div class="row">\r
+ <div class="row">\r
+ <personname class="eight columns" label="Cégnév" origField="${field}" field="${field}_nev" validators="nonempty"/>\r
+ <text class="four columns" label="Adószám" field="${field}_adoszam" validators="nonempty" />\r
+ </div>\r
+ <address class="row" label="Székhely" field="${field}_cim" validators="nonempty,address" />\r
+ <div class="row">\r
+ <text class="four columns" label="Cégjegyzékszám" field="${field}_cegjegyzekszam" validators="nonempty"/>\r
+ <text class="eight columns" label="Képviseli" field="${field}_kepviseli" validators="nonempty" />\r
+ </div>\r
+ <div class="row no-print" if="${empty param.token or nocontacts}">\r
+ <text class="six columns" label="Telefonszám" field="${field}_telefon" validators="phone" />\r
+ <text class="six columns" label="E-mail" field="${field}_email" validators="email" />\r
+ </div>\r
+</div>
\ No newline at end of file
--- /dev/null
+<div class="row" style="margin-top: 10px; margin-bottom: 10px;">\r
+<label value="${isEmpty}"/>\r
+ <variables defaultValue="Budapest" isEmpty="${isEmpty}" />\r
+ <label class="form-label" >Kelt: </label>\r
+ <combobox class="@load(vm.getFieldStyle(field, 'inline-intbox'))" \r
+ model="@load(vm.settlementsModel)"\r
+ value="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator, parameters=validatorargs)" \r
+ onBlur="@command('submit') @global-command('autosave', source=self)"\r
+ disabled="@load(vm.formDocument['ro'] || ro)"\r
+ autodrop="true" buttonVisible="true" onCreate="if (self.getValue() == null || self.getValue().length() == 0) self.setValue(defaultValue)" >\r
+ <!-- \r
+ -->\r
+ </combobox>\r
+ <label>,</label>\r
+ <textbox class="inline-textbox" readonly="true" value="@load(vm.formDocument[dataField]) @save(vm.formDocument[dataField], before='submit') @converter('hu.bitcity.converter.CurrentDateConverter', field=dataField, isEmpty=isEmpty)"/>\r
+</div> \r
--- /dev/null
+<div class="field">\r
+ <div class="row field-top">\r
+ <include src="/fields/field-label.zul" />\r
+ </div> \r
+ <div class="row field-top">\r
+ <datebox class="field-textbox" value="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator, parameters=validatorargs) @converter('hu.bitcity.converter.JSONDateConverter')" \r
+ format="yyyy.MM.dd" disabled="@load(vm.formDocument['ro'] || ro)" onChange="@command('submit') @global-command('autosave', source=self)" />\r
+ </div> \r
+</div>\r
--- /dev/null
+<?component name="text" class="hu.bitcity.form.field.Field$Text" ?>\r
+<?component name="number" class="hu.bitcity.form.field.Field$Number" ?>\r
+<?component name="domain" class="hu.bitcity.form.field.Field$Domain" ?>\r
+<?component name="int" class="hu.bitcity.form.field.Field$ZipCode" ?>\r
+<div class="row">\r
+ <int class="four columns" label="Év" field="${field}_ev" validators="nonempty"/>\r
+ <domain class="four columns" label="Hónap" field="${field}_honap" readonly="true" \r
+ values="${['január','február','március','április','május','június','július','augusztus','szeptember','október','november','december']}" \r
+ validators="nonempty" />\r
+ <int class="four columns" label="Nap" field="${field}_nap" validators="nonempty"/>\r
+</div>
\ No newline at end of file
--- /dev/null
+<div class="field">\r
+ <div class="row field-top">\r
+ <include src="~./fields/field-label.zul"/>\r
+ </div> \r
+ <div class="row field-top">\r
+ <!-- \r
+ @converter('hu.bitcity.converter.ComboBoxConverter')\r
+ -->\r
+ <combobox class="field-textbox" autodrop="false" value="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator)" \r
+ disabled="@load(vm.canEdit || ro)" onBlur="@command('submit') @global-command('autosave', source=self)" readonly="${readonly}">\r
+ <comboitem label="${each}" value="${each}" forEach="${values}" />\r
+ </combobox> \r
+ </div> \r
+</div>
\ No newline at end of file
--- /dev/null
+<div class="field">\r
+ <div class="row field-top">\r
+ <include src="/fields/field-label.zul"/>\r
+ </div> \r
+ <div class="row field-top">\r
+ <doublebox class="field-textbox" value="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator, parameters=validatorargs)" format="#,##0.##" \r
+ disabled="@load(vm.formDocument['ro'] || ro)" onChange="@command('submit') @global-command('autosave', source=self)" />\r
+ </div> \r
+</div>
\ No newline at end of file
--- /dev/null
+<div xmlns:w="client" w:onClick="console.log('field : ${field}')">\r
+ <label class="@load(vm.getFieldStyle(field, 'field-label'))" value="${label}" visible="@load(!empty label)"/>\r
+</div>\r
--- /dev/null
+<?component name="address" class="hu.bitcity.form.field.Field$Address" ?>\r
+<?component name="date" class="hu.bitcity.form.field.Field$Date" ?>\r
+<?component name="text" class="hu.bitcity.form.field.Field$Text" ?>\r
+<?component name="personname" class="hu.bitcity.form.field.Field$PersonName" ?>\r
+<div class="row">\r
+ <div class="row">\r
+ <personname class="four columns" label="Név" origField="${field}" field="${field}_nev"/>\r
+ <text class="four columns" label="Állampolgárság" field="${field}_allampolgarsag" />\r
+ <text class="four columns" label="Szem. ig./Útlevél szám" field="${field}_azonosito_irat" />\r
+ </div>\r
+ <address class="row" label="Lakcím" field="${field}_cim" />\r
+ <div class="row">\r
+ <text class="six columns" label="Születési hely" field="${field}_szuletesi_hely" />\r
+ <date class="two columns" label="Születés dátuma" field="${field}_szuletes_datuma" />\r
+ <text class="four columns" label="Anyja neve" field="${field}_anyja_neve" />\r
+ </div>\r
+ <div class="row no-print" if="${empty param.token or nocontacts}">\r
+ <text class="six columns" label="Telefonszám" field="${field}_telefon" />\r
+ <text class="six columns" label="E-mail" field="${field}_email" />\r
+ </div>\r
+</div>
\ No newline at end of file
--- /dev/null
+<radio class="@load(vm.getFieldStyle(field, 'inline-radio'))" label="${label}" value="${value}" \r
+ onCheck="@command('onRadioCheck', target=self) @global-command('autosave', source=self)" \r
+ checked="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator) @converter('hu.bitcity.converter.RadioCheckConverter')" \r
+ disabled="@load(vm.formDocument['ro'] || ro)" />\r
--- /dev/null
+<div class="field">\r
+ <div class="row field-top">\r
+ <include src="/fields/field-label.zul" />\r
+ </div>\r
+ <div class="row field-top">\r
+ <combobox class="field-textbox" autodrop="false"\r
+ value="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator) @converter('hu.bitcity.converter.LocationConverter')"\r
+ disabled="@load(vm.formDocument['ro'] || ro)" onBlur="@command('decorateSettlementLocationType', source=self) @global-command('autosave', source=self)" >\r
+ <!-- \r
+ -->\r
+ <template name="model">\r
+ <comboitem label="${each.locationDisplay}" value="${each}" />\r
+ </template>\r
+ </combobox>\r
+ </div>\r
+</div>
\ No newline at end of file
--- /dev/null
+<?component name="address" class="hu.bitcity.form.field.Field$Address" ?>\r
+<?component name="date" class="hu.bitcity.form.field.Field$Date" ?>\r
+<?component name="text" class="hu.bitcity.form.field.Field$Text" ?>\r
+<?component name="personname" class="hu.bitcity.form.field.Field$PersonName" ?>\r
+<div class="row">\r
+ <div class="row">\r
+ <personname class="four columns" label="Név" origField="${field}" field="${field}_nev" validators="nonempty"/>\r
+ <text class="four columns" label="Állampolgárság" field="${field}_allampolgarsag" />\r
+ <text class="four columns" label="Szem. ig./Útlevél szám" field="${field}_azonosito_irat" />\r
+ </div>\r
+ <address class="row" label="Lakcím" field="${field}_cim" validators="nonempty,address" />\r
+ <div class="row">\r
+ <text class="six columns" label="Születési hely" field="${field}_szuletesi_hely" />\r
+ <date class="two columns" label="Születés dátuma" field="${field}_szuletes_datuma" />\r
+ <text class="four columns" label="Anyja neve" field="${field}_anyja_neve" validators="nonempty"/>\r
+ </div>\r
+ <div class="row no-print" if="${empty param.token or nocontacts}">\r
+ <text class="six columns" label="Telefonszám" field="${field}_telefon" validators="phone" />\r
+ <text class="six columns" label="E-mail" field="${field}_email" validators="email" />\r
+ </div>\r
+</div>
\ No newline at end of file
--- /dev/null
+<div class="field">\r
+ <div class="row field-top">\r
+ <include src="/fields/field-label.zul"/>\r
+ </div> \r
+ <div class="row field-top">\r
+ <longbox class="field-textbox" format=",###" disabled="@load(vm.formDocument['ro'] || ro)" \r
+ value="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator, parameters=validatorargs)" \r
+ onChange="@command('submit') @global-command('autosave', source=self)">\r
+<!-- \r
+ <attribute name="format" if="${format}">\r
+ \r
+ </attribute> \r
+ -->\r
+ </longbox>\r
+ </div> \r
+</div>
\ No newline at end of file
--- /dev/null
+<div class="field">\r
+ <div class="row field-top" if="${!noheader}">\r
+ <include src="/fields/field-label.zul" />\r
+ </div>\r
+ <div class="row field-top">\r
+ <combobox class="field-textbox" autodrop="true" model="@load(vm.personsModel)"\r
+ value="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator)"\r
+ disabled="@load(vm.formDocument['ro'] || ro)" onSelect="@command('decoratePersonFields', source=self) @global-command('autosave', source=self)">\r
+ <template name="model">\r
+ <comboitem label="@load(each.name)" content="@load(each.card)" value="@load(each)" />\r
+ </template>\r
+ </combobox>\r
+ </div>\r
+</div>
\ No newline at end of file
--- /dev/null
+<?component name="address" class="hu.bitcity.form.field.Field$Address" ?>\r
+<?component name="date" class="hu.bitcity.form.field.Field$Date" ?>\r
+<?component name="text" class="hu.bitcity.form.field.Field$Text" ?>\r
+<?component name="personname" class="hu.bitcity.form.field.Field$PersonName" ?>\r
+<div class="row">\r
+ <div class="row">\r
+ <personname class="four columns" label="Név" origField="${field}" field="${field}_nev" validators="nonempty"/>\r
+ <text class="four columns" label="Állampolgárság" field="${field}_allampolgarsag" />\r
+ <text class="four columns" label="Szem. ig./Útlevél szám" field="${field}_azonosito_irat" />\r
+ </div>\r
+ <address class="row" label="Lakcím" field="${field}_cim" validators="nonempty,address" />\r
+ <div class="row">\r
+ <text class="six columns" label="Születési hely" field="${field}_szuletesi_hely" validators="nonempty" />\r
+ <date class="two columns" label="Születés dátuma" field="${field}_szuletes_datuma" validators="nonempty"/>\r
+ <text class="four columns" label="Anyja neve" field="${field}_anyja_neve" validators="nonempty"/>\r
+ </div>\r
+ <div class="row no-print" if="${empty param.token or nocontacts}">\r
+ <text class="six columns" label="Telefonszám" field="${field}_telefon" validators="phone" />\r
+ <text class="six columns" label="E-mail" field="${field}_email" validators="email" />\r
+ </div>\r
+</div>
\ No newline at end of file
--- /dev/null
+<div class="field">\r
+ <div class="row field-top">\r
+ <include src="/fields/field-label.zul"/>\r
+ </div> \r
+ <div class="row field-top">\r
+ <combobox class="field-textbox" autodrop="true" value="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator)" \r
+ disabled="@load(vm.formDocument['ro'] || ro)" onChange="@command('submit') @global-command('autosave', source=self)" />\r
+ </div> \r
+</div>
\ No newline at end of file
--- /dev/null
+<div class="field" xmlns:w="client" w:onClick="console.log('field : ${field}')">\r
+ <div class="@load(vm.getFieldStyle(field, 'field-label'))">\r
+ <radio id="r" label="${label}" value="${value}" onCheck="@command('onRadioCheck', target=self) @global-command('autosave', source=self)" \r
+ checked="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator) @converter('hu.bitcity.converter.RadioCheckConverter')" \r
+ disabled="@load(vm.formDocument['ro'] || ro)" />\r
+ </div>\r
+</div> \r
--- /dev/null
+<div class="field">\r
+ <div class="@load(vm.getFieldStyle(field, 'field-label'))">\r
+ <radio id="r" label="${label}" value="${value}" onCheck="@command('onRadioCheck', target=self) @global-command('autosave', source=self)" \r
+ checked="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator) @converter('hu.bitcity.converter.RadioCheckConverter')" \r
+ disabled="@load(vm.formDocument['ro'] || ro)">\r
+ <custom-attributes dataField="${dataField}" checkData="true"/>\r
+ </radio>\r
+ <datebox value="@bind(vm.formDocument[dataField])" format="yyyy.MM.dd" disabled="@load(vm.formDocument['ro'] || arg.readonly)">\r
+ <!-- \r
+ onChange="@command('onForceRadioCheck', target=r, force=true)"\r
+ -->\r
+ <custom-attributes field="${dataField}"/>\r
+ </datebox> \r
+ </div>\r
+</div> \r
--- /dev/null
+<div class="field">\r
+ <div class="@load(vm.getFieldStyle(field, 'field-label'))">\r
+ <radio id="r" label="${label}" value="${value}" \r
+ onCheck="@command('onRadioCheck', target=self) @global-command('autosave', source=self)" \r
+ checked="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator) @converter('hu.bitcity.converter.RadioCheckConverter')" \r
+ disabled="@load(vm.formDocument['ro'] || ro)" >\r
+ <custom-attributes dataField="${dataField}" checkData="true"/>\r
+ </radio>\r
+ <doublebox class="radio-intbox" value="@bind(vm.formDocument[dataField])" format="#,##0.##" \r
+ disabled="@load(vm.formDocument['ro'] || arg.readonly)" onBlur="@command('submit')">\r
+ <custom-attributes field="${dataField}"/>\r
+ </doublebox>\r
+ ${postfix}\r
+ </div>\r
+</div> \r
--- /dev/null
+<div class="field">\r
+ <div class="row field-top">\r
+ <include src="/fields/field-label.zul" />\r
+ </div> \r
+ <div class="row field-textbox field-top">\r
+ <radio label="${each}" forEach="${arg.values}" value="'${forEachStatus.index + 1}'" \r
+ checked="@bind(vm.formDocument[field]) @converter('hu.bitcity.converter.RadioCheckConverter')" \r
+ onCheck="@command('onRadioCheck', target=self) @global-command('autosave', source=self)"\r
+ disabled="@load(vm.formDocument['ro'] || ro)" />\r
+ <textbox class="inline-textbox" value="@load(vm.formDocument[dataField]) @save(vm.formDocument[dataField], before='submit') @validator(vm.formValidator, parameters=validatorargs)" \r
+ disabled="@load(vm.formDocument['ro'] || ro)" onChange="@command('submit')" />\r
+ </div> \r
+</div>\r
--- /dev/null
+<div class="field">\r
+ <div class="@load(vm.getFieldStyle(field, 'field-label'))">\r
+ <radio id="r" label="${label}" value="${value}" \r
+ onCheck="@command('onRadioCheck', target=self) @global-command('autosave', source=self)" \r
+ checked="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator) @converter('hu.bitcity.converter.RadioCheckConverter')" \r
+ disabled="@load(vm.formDocument['ro'] || ro)">\r
+ <custom-attributes dataField="${dataField}" checkData="true"/>\r
+ </radio>\r
+ <intbox class="radio-intbox" value="@bind(vm.formDocument[dataField])" format=",###" \r
+ disabled="@load(vm.formDocument['ro'] || arg.readonly)" onBlur="@command('submit')"> \r
+ <custom-attributes field="${dataField}"/>\r
+ </intbox>\r
+ ${postfix}\r
+ </div>\r
+</div> \r
--- /dev/null
+<div class="field"> \r
+ <div class="row field-top">\r
+ <include src="/fields/field-label.zul" />\r
+ </div> \r
+ <div class="row field-top">\r
+ <doublebox class="ten columns field-textbox" format="#,##0.##" disabled="@load(vm.formDocument['ro'] || ro)"\r
+ value="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator)" onChange="@command('submit') @global-command('autosave', source=self)" />\r
+ <combobox id="combo" class="two columns field-textbox" readonly="true" autodrop="true" selectedItem="@bind(vm.formDocument[unitField])" disabled="@load(vm.formDocument['ro'] || ro)"\r
+ onChange="@command('submit')" >\r
+ <comboitem label="${each}" value="${each}" forEach="Ft, %" />\r
+ </combobox> \r
+ </div> \r
+</div>
\ No newline at end of file
--- /dev/null
+<div class="field">\r
+ <div class="row field-top">\r
+ <include src="/fields/field-label.zul" />\r
+ </div> \r
+ <div class="row">\r
+ <textbox class="field-textbox" value="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator, parameters=validatorargs)" \r
+ disabled="@load(vm.formDocument['ro'] || ro)" onChange="@command('submit') @global-command('autosave', source=self)" />\r
+ </div> \r
+</div>
\ No newline at end of file
--- /dev/null
+<div class="field">\r
+ <div class="row field-top">\r
+ <include src="/fields/field-label.zul" />\r
+ </div> \r
+ <div class="row field-textbox" style="background: white">\r
+ <button class="@load(vm.getFieldStyle(dataField, 'field-label no-print'))" label="Aláírás" onClick="@command('showSignDialog', field=field)" disabled="@load(vm.formDocument['ro'] || ro)" />\r
+ <image style="min-height:30px; max-height:30px; margin: 2px;" src="@bind(vm.formDocument[field])" />\r
+ <textbox value="@load(vm.formDocument[dataField]) @save(vm.formDocument[dataField], before='submit') @validator(vm.formValidator, force=true)" visible="false" />\r
+ </div> \r
+</div>
\ No newline at end of file
--- /dev/null
+<div class="row">\r
+ <div class="row field-top">\r
+ <include src="/fields/field-label.zul"/>\r
+ </div> \r
+ <div class="row field-textbox" style="text-align: center;">\r
+ <image class="logo-image" width="100%" src="/img/pecset.jpg" />\r
+ </div> \r
+</div>
\ No newline at end of file
--- /dev/null
+<div class="field">\r
+ <div class="row field-top" if="${!noheader}">\r
+ <include src="~./fields/field-label.zul" />\r
+ </div> \r
+ <div class="row field-top">\r
+ <textbox class="field-textbox" value="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator, parameters=$validatorargs)" \r
+ disabled="@load(vm.canEdit || ro)" onChange="@command('submit') @global-command('autosave', source=self)" />\r
+ </div> \r
+</div>\r
--- /dev/null
+<div class="field">\r
+ <textbox style="background: white" class="field-textbox" value="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator)" \r
+ multiline="true" inplace="true" rows="5" cols="42" disabled="@load(vm.formDocument['ro'] || ro)" onChange="@command('submit') @global-command('autosave', source=self)" />\r
+</div> \r
--- /dev/null
+<div xmlns:w="client" w:onClick='console.log("field : ${field}")'>\r
+ Megbízó\r
+ <radio class="@load(vm.getFieldStyle(field, 'inline-radio'))" value="1" onCheck="@command('onRadioCheck', target=self)" \r
+ checked="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator) @converter('hu.bitcity.converter.RadioCheckConverter')" \r
+ disabled="@load(vm.formDocument['ro'] || ro)" />\r
+ átad egy 60 napnál nem régebbi tulajdoni lapot, vagy\r
+ <radio class="@load(vm.getFieldStyle(field, 'inline-radio'))" value="2" onCheck="@command('onRadioCheck', target=self)" \r
+ checked="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator) @converter('hu.bitcity.converter.RadioCheckConverter')" \r
+ disabled="@load(vm.formDocument['ro'] || ro)" />\r
+ megbízza a Home Service képviselőjét, hogy szerezzen be egy tulajdoni lapot.\r
+</div>\r
--- /dev/null
+<?component name="field" class="hu.bitcity.form.field.Field" ?>\r
+<div class="row">\r
+ <field class="twelve columms agreement" src="/fields/title-deed-content.zul" visible="@load(not vm.formDocument[errorField])" field="${field}" />\r
+ <field class="twelve columms agreement error" src="/fields/title-deed-content.zul" visible="@load(vm.formDocument[errorField])" field="${field}" />\r
+</div>\r
--- /dev/null
+<div class="field">\r
+ <div class="row field-top">\r
+ <include src="/fields/field-label.zul"/>\r
+ </div> \r
+ <div class="row field-top">\r
+ <intbox class="field-textbox" disabled="@load(vm.formDocument['ro'] || ro)" \r
+ value="@load(vm.formDocument[field]) @save(vm.formDocument[field], before='submit') @validator(vm.formValidator)" \r
+ onChange="@command('decorateSettlementFields', source=self) @global-command('autosave', source=self)" format="####">\r
+ </intbox>\r
+ </div> \r
+</div>
\ No newline at end of file
--- /dev/null
+<?link rel="stylesheet" type="text/css" href="~./static/css/skeleton.css" ?>\r
+<zk xmlns:c="client">\r
+ <div viewModel="@id('vm') @init('hu.user.lis.ui.view.Index')"\r
+ style="height: 100%;width: 100%; display: flex; justify-content: center;">\r
+ <window title="@load(vm.buildProperties.version)" border="true"\r
+ style="height: 50%; width: 50%; position: relative; position: absolute; top: 50%; transform: translate(0, -50%);">\r
+ <vlayout>\r
+ <hlayout>\r
+ <bandbox id="bd" autodrop="true" iconSclass="z-icon-sort-down"\r
+ value="@load(vm.selectedSupplier) @converter('hu.user.lis.ui.converter.SupplierToNameConverter')"\r
+ onChanging="@command('onBandChanging')" onOpen="@command('onBandOpen')">\r
+ <attribute c:name="_doKeyDown">\r
+ <![CDATA[\r
+ function (evt) {\r
+ var keyCode = evt.keyCode;\r
+ console.log(keyCode);\r
+ if (keyCode == 13){\r
+ zk.$("$bd").close();\r
+ zk.$("$bd").focus();\r
+ return;\r
+ }\r
+ if (keyCode == 40){\r
+ if (!zk.$("$bd").isOpen()) {\r
+ zk.$("$bd").open();\r
+ zAu.send(new zk.Event(zk.Widget.$('$bd'), "onOpen", {'open': true}, {toServer:true}));\r
+ }\r
+ zk.$("$bd-list").focus();\r
+ return;\r
+ }\r
+ if (keyCode == 27){\r
+ zk.$("$bd").close()\r
+ zk.$("$bd").focus();\r
+ return;\r
+ }\r
+ }\r
+ ]]>\r
+ </attribute>\r
+ <bandpopup>\r
+ <listbox id="bd-list" height="250px" width="450px"\r
+ model="@bind(vm.suppliersSimpleDataModel)"\r
+ selectedItem="@bind(vm.selectedSupplier)"\r
+ onClick="bd.close()"\r
+ onDoubleClick="bd.close()">\r
+ <listhead visible="false">\r
+ <listheader label="id" vflex="min"/>\r
+ <listheader label="name" vflex="max"/>\r
+ <listheader label="zip" vflex="min"/>\r
+ </listhead>\r
+ <template name="model">\r
+ <listitem>\r
+ <listcell label="@load(each.id)"/>\r
+ <listcell label="@load(each.name)"/>\r
+ <listcell label="@load(each.zipCode)"/>\r
+ </listitem>\r
+ </template>\r
+ </listbox>\r
+ </bandpopup>\r
+ </bandbox>\r
+ <button iconSclass="z-icon-search-plus" onClick="@command('onPopupSuppliers')"/>\r
+ </hlayout>\r
+\r
+ <hlayout>\r
+ <label value="Kiválasztott azonosító: "/>\r
+ <label value="@load(vm.selectedSupplierId)"/>\r
+ </hlayout>\r
+ </vlayout>\r
+ </window>\r
+ <!-- <combobox sclass="ten columns" model="@bind(m.supplierListModel)" selectedItem="@bind(m.selectedSupplier)"-->\r
+ <!-- autodrop="true" buttonVisible="true">-->\r
+ <!-- </combobox>-->\r
+\r
+ </div>\r
+</zk>
\ No newline at end of file
--- /dev/null
+/* Grid
+–––––––––––––––––––––––––––––––––––––––––––––––––– */
+.container {
+ position: relative;
+ width: 100%;
+ max-width: 960px;
+ margin: 0 auto;
+ padding: 0 20px;
+ box-sizing: border-box; }
+.column,
+.columns {
+ width: 100%;
+ float: left;
+ box-sizing: border-box; }
+
+/* For devices larger than 400px */
+@media (min-width: 400px) {
+ .container {
+ width: 85%;
+ padding: 0; }
+}
+
+/* For devices larger than 550px */
+@media (min-width: 550px) {
+ .container {
+ width: 80%;
+ }
+ .column,
+ .columns {
+ margin-left: 0;
+ padding-top: 5px;
+ padding-bottom: 5px;
+ padding-left: 10px;
+/*
+ padding-right: 10px;
+*/
+ }
+ .column:first-child,
+ .columns:first-child {
+ margin-left: 0;
+ padding-left: 0;
+ }
+ .column:last-child,
+ .columns:last-child {
+ float: right; }
+/*
+ .one.column,
+ .one.columns { width: 7.875%; }
+ .two.columns { width: 16.25%; }
+ .three.columns { width: 24.625%; }
+ .four.columns { width: 33%; }
+
+ .five.columns { width: 41.375%; }
+ .six.columns { width: 49.75%; }
+ .seven.columns { width: 58.125%; }
+ .eight.columns { width: 66.5%; }
+ .nine.columns { width: 74.875%; }
+ .ten.columns { width: 83.25%; }
+ .eleven.columns { width: 91.625%; }
+ .twelve.columns { width: 100%; margin-left: 0; }
+*/
+ .one.column,
+ .one.columns { width: 8.3333333334%; }
+ .two.columns { width: 16.6666666667%; }
+ .three.columns { width: 25%; }
+ .four.columns { width: 33.3333333334%; }
+ .five.columns { width: 41.6666666667%; }
+ .six.columns { width: 50%; }
+ .seven.columns { width: 58.3333333334%; }
+ .eight.columns { width: 66.6666666667%; }
+ .nine.columns { width: 75%; }
+ .ten.columns { width: 83.3333333334%; }
+ .eleven.columns { width: 91.66666666667%; }
+ .twelve.columns { width: 100%; margin-left: 0; }
+ .per-five.columns { width: 20%; }
+
+
+}
+
+/*
+@media only screen and (min-width: 550px) {
+ .column:first-child,
+ .columns:first-child {
+ float: right; }
+}
+
+@media only print and (min-width: 550px) {
+ .two.columns:last-child { background: red; width: 17%;}
+ .three.columns:last-child { background: red; width: 24.9%;}
+ .four.columns:last-child { background: red; width: 33.4%;}
+}
+*/
+
+
+/* Utilities
+–––––––––––––––––––––––––––––––––––––––––––––––––– */
+.u-vertical-container {
+ display: table;
+ padding: 10px;
+}
+.u-fill {
+ display: table-row;
+ height: 100%;
+ max-height: 100%;
+ width: 100%;
+}
+.u-full-width {
+ width: 100%;
+ box-sizing: border-box;
+}
+.u-max-full-width {
+ max-width: 100%;
+ box-sizing: border-box;
+}
+.u-full-height {
+ height: 100%;
+}
+.u-max-full-height {
+ max-height: 100%;
+}
+.u-form-width {
+ width: 94%;
+ box-sizing: border-box; }
+.u-max-form-width {
+ max-width: 94%;
+ box-sizing: border-box; }
+.u-pull-right {
+ float: right; }
+.u-pull-left {
+ float: left; }
+
+
+/* Clearing
+–––––––––––––––––––––––––––––––––––––––––––––––––– */
+
+/* Self Clearing Goodness */
+.container:after,
+.row:after,
+.u-cf {
+ content: "";
+ display: table;
+ clear: both; }
+
+
+/* Media Queries
+–––––––––––––––––––––––––––––––––––––––––––––––––– */
+/*
+Note: The best way to structure the use of media queries is to create the queries
+near the relevant code. For example, if you wanted to change the styles for buttons
+on small devices, paste the mobile query code up in the buttons section and style it
+there.
+*/
+
+
+/* Larger than mobile */
+@media (min-width: 400px) {}
+
+/* Larger than phablet (also point when grid becomes active) */
+@media (min-width: 550px) {}
+
+/* Larger than tablet */
+@media (min-width: 750px) {}
+
+/* Larger than desktop */
+@media (min-width: 1000px) {}
+
+/* Larger than Desktop HD */
+@media (min-width: 1200px) {}
--- /dev/null
+.z-loading {\r
+ left: 45% !important; \r
+/*\r
+ top: 50% !important; \r
+ align: center; \r
+ font-size: 18px;\r
+ font-weight: bold;\r
+ padding: 5px;\r
+*/\r
+}\r
+\r
+.container .form-label {\r
+ font-family: "Calibri";\r
+ line-height: 1.5em;\r
+}\r
+\r
+.container .bold {\r
+ font-weight: bold;\r
+}\r
+\r
+.row .field-textbox {\r
+ font-size: 12px;\r
+ padding: 0px; \r
+ padding-left: 5px; \r
+ line-height: 1.5em;\r
+ height: auto;\r
+ width: 100%;\r
+ border-radius: 0px;\r
+ -moz-border-radius: 0px; \r
+ -webkit-border-radius: 0px; \r
+ border: none;\r
+}\r
+\r
+.field-top {\r
+ background: white;\r
+}\r
+\r
+.container .separator {\r
+ height: 20px;\r
+ min-height: 20px;\r
+}\r
+\r
+.field {\r
+ padding-left: 1px;\r
+ padding-bottom: 1px;\r
+ background: black;\r
+}\r
+\r
+.agreement-field {\r
+ border-left: 1px solid black;\r
+ border-bottom: 1px solid black;\r
+ padding: 10px 0px 10px 10px;\r
+}\r
+\r
+.stamp-field {\r
+ border-left: 1px solid black;\r
+ border-bottom: 1px solid black;\r
+ padding: 10px 0px 10px 10px;\r
+ height: 124px;\r
+}\r
+\r
+.row .center {\r
+ text-align: center; \r
+}\r
+\r
+.row .field-label {\r
+ font-weight: normal;\r
+ /*\r
+ background-image: url('../img/label.png'); \r
+ background-repeat: no-repeat; \r
+ background-position: right top;*/\r
+ padding-right: 5px; \r
+ background-color: #CCCCCC;\r
+ border: none;\r
+ /*margin: 4px 0px 0px 0px;trbl*/ \r
+ padding-left: 5px;\r
+ padding-top: 1px;\r
+ padding-bottom: 1px;\r
+ /*line-height: 1em;\r
+ text-overflow: ellipsis;\r
+ overflow: hidden;*/\r
+ white-space: nowrap; \r
+}\r
+.row .field-label .error {\r
+ background: #ffbcaf;\r
+ border: 1px solid #ffbcaf;\r
+}\r
+.row .error {\r
+ background-color: #ffbcaf;\r
+/*\r
+ background-image: url('../img/label-error.png'); \r
+ background-repeat: no-repeat; \r
+ background-position: right top; \r
+*/\r
+}\r
+/*\r
+.row .field-label * {\r
+ margin: 0px;\r
+ /*overflow: hidden; inline date problem*/\r
+}\r
+*/\r
+.row .field-vlayout {\r
+ line-height: 1em;\r
+}\r
+\r
+.container .group-label {\r
+ display: block;\r
+ font-weight: bold;\r
+ font-size: 12px;\r
+}\r
+\r
+.container .buttongroup {\r
+ border-top: 1px solid #676767;\r
+ border-bottom: 1px solid #676767;\r
+ margin-top: 20px;\r
+ margin-bottom: 20px;\r
+ padding-top: 10px;\r
+ padding-bottom: 10px;\r
+ text-align: right;\r
+}\r
+\r
+.container .thinbuttongroup {\r
+/*\r
+ border-top: 1px solid #676767;\r
+ border-bottom: 1px solid #676767;\r
+*/\r
+ margin-top: 5px;\r
+ margin-bottom: 5px;\r
+ padding-top: 5px;\r
+ padding-bottom: 5px;\r
+ text-align: right;\r
+}\r
+\r
+.z-checkbox-content {\r
+ margin-bottom: 0px;\r
+}\r
+\r
+.row .z-datebox {\r
+ height: auto;\r
+ display: inline-block;\r
+}\r
+\r
+.row .radio-intbox {\r
+ height: auto;\r
+ display: initial;\r
+ padding: 0px; \r
+ line-height: 1em;\r
+ border-radius: 0;\r
+ webkit-border-radius: 0px;\r
+}\r
+\r
+.row .z-datebox-input {\r
+ padding: 0px;\r
+ height: auto;\r
+ border: none;\r
+}\r
+\r
+.row .z-datebox-button {\r
+ padding: 0px;\r
+ padding-top: 0px;\r
+ height: auto;\r
+ min-height: initial;\r
+}\r
+\r
+.row textarea.z-textbox {\r
+ overflow: hidden; \r
+ overflow-wrap: break-word; \r
+ resize: none; \r
+}\r
+\r
+.hidden {\r
+ display: none;\r
+}\r
+/*\r
+.bigfont {\r
+ font-size: 14px;\r
+}\r
+.bigfont * {\r
+ font-size: 14px;\r
+}\r
+.biggerfont {\r
+ font-size: 16px;\r
+}\r
+*/\r
+\r
+input[type="radio"] {\r
+ font-family: ZK85Icons,FontAwesome;\r
+}\r
+\r
+input[type="radio"]:focus {\r
+ outline: none;\r
+}\r
+input[type="radio"]:hover {\r
+ border-color: black\r
+}\r
+\r
+input[type="radio"]:checked {\r
+ border-color: black\r
+}\r
+\r
+input[type="radio"][disabled] {\r
+ border-color: black;\r
+ cursor: not-allowed;\r
+}\r
+\r
+input[type="radio"][disabled]:checked:before {\r
+ border-color: black;\r
+ background: black; \r
+}\r
+\r
+\r
+input[type="radio"][disabled]:checked {\r
+ border-color: black;\r
+}\r
+\r
+input[type="radio"][disabled]:checked:hover {\r
+ border-color: black;\r
+}\r
+\r
+.field-textbox[disabled] {\r
+ background: white !important;\r
+ color: black !important;\r
+ cursor: not-allowed !important;\r
+}\r
+\r
+input[type="radio"]:checked:before {\r
+ content: "\f00c";\r
+ color: white;\r
+}\r
+\r
+input[type="checkbox"]:focus {\r
+ outline: none;\r
+}\r
+\r
+input[type="radio"] {\r
+ width: 14px;\r
+ height: 14px;\r
+ margin: 0px 4px 2px 8px;\r
+ border-radius: 0px;\r
+ border: 1px solid black;\r
+}\r
+\r
+input[type="radio"]:before {\r
+/*\r
+ width: 12px;\r
+ height: 12px;\r
+ margin-right: 20px;*/\r
+ border-radius: 0px;\r
+}\r
+\r
+input[type="radio"]:checked:before {\r
+ background-color: black; \r
+}\r
+\r
+input[type="checkbox"] {\r
+ font-size: inherit;\r
+ width: 14px;\r
+ height: 14px;\r
+ border: 1px solid black;\r
+ border-radius: 0px;\r
+ margin: 2px 4px 2px 8px;\r
+}\r
+\r
+input[type="checkbox"]:checked {\r
+ background-color: black;\r
+}\r
+\r
+input[type="checkbox"]:hover {\r
+ border-color: black;\r
+}\r
+\r
+.row .agreement {\r
+ padding: 0px 0px 0px 0px;\r
+ line-height: 1em;\r
+ border: none;\r
+ margin: 2px 0px 0px 0px;\r
+}\r
+\r
+.row .agreement span {\r
+ font-family: "Calibri";\r
+ font-weight: normal;\r
+ line-height: 1em;\r
+ margin: 0px;\r
+}\r
+\r
+.agreement-small {\r
+ padding: 0px 0px 0px 0px;\r
+ line-height: 1em;\r
+ border: none;\r
+ margin: 2px 0px 0px 20px;\r
+}\r
+\r
+.row .agreement-small span {\r
+ font-family: "Calibri";\r
+ font-weight: normal;\r
+ line-height: 1em;\r
+ margin: 0px;\r
+}\r
+\r
+.row .agreement p {\r
+ margin: 10px 0px 10px 10px;\r
+}\r
+\r
+.row .md-content {\r
+ padding: 0px 0px 0px 0px;\r
+ line-height: 1em;\r
+ margin: 20px;\r
+}\r
+\r
+.row .md-content span {\r
+ font-family: "Calibri";\r
+ font-weight: normal;\r
+ font-size: 14px;\r
+ line-height: 1.5em;\r
+ margin: 0px;\r
+}\r
+\r
+.row .md-content p {\r
+ margin: 10px 0px 10px 10px;\r
+}\r
+\r
+.row .inline-textbox {\r
+ background: transparent;\r
+ height: auto;\r
+ margin: 0px;\r
+ padding: 0px;\r
+ border: none;\r
+ border-bottom: 1px dotted;\r
+ border-radius: 0;\r
+ webkit-border-radius: 0px;\r
+}\r
+\r
+\r
+.inline-intbox {\r
+ font-family: "Calibri";\r
+ font-weight: bolder;\r
+ font-size: 12px;\r
+ padding: 0px;\r
+ line-height: 1em;\r
+ height: auto;\r
+ border: none;\r
+ border-bottom: 1px dotted;\r
+ border-radius: 0;\r
+ webkit-border-radius: 0px;\r
+}\r
+/*\r
+.inline-radio {\r
+ width: 20px; \r
+ height: 20px;\r
+}\r
+*/\r
+.inline {\r
+ display: inline;\r
+}\r
+\r
+.row .z-combobox {\r
+ display: inline-block;\r
+ height: auto;\r
+ white-space: nowrap\r
+}\r
+\r
+.row .z-datebox-input {\r
+ color: rgba(0, 0, 0, 0.9);\r
+ height: auto;\r
+ border: none;\r
+ margin: 0px;\r
+ padding: 0px;\r
+ line-height: 1em;\r
+ background: white;\r
+ width: 100%;\r
+ -webkit-border-radius: 0px;\r
+ -moz-border-radius: 0px;\r
+ -o-border-radius: 0px;\r
+ -ms-border-radius: 0px;\r
+ border-radius: 0px;\r
+}\r
+\r
+.row .z-combobox-input {\r
+ color: rgba(0, 0, 0, 0.9);\r
+ height: auto;\r
+ border: none;\r
+ margin: 0px;\r
+ padding: 0px;\r
+ line-height: 1em;\r
+ background: transparent;\r
+ width: 100%;\r
+ -webkit-border-radius: 0px;\r
+ -moz-border-radius: 0px;\r
+ -o-border-radius: 0px;\r
+ -ms-border-radius: 0px;\r
+ border-radius: 0px;\r
+}\r
+\r
+.row .z-combobox-button,\r
+.row .z-datebox-button {\r
+ font-size: 1em;\r
+ color: rgba(0, 0, 0, 0.9);\r
+ display: inline-block;\r
+ min-width: 0px;\r
+ min-height: 0px;\r
+ height: auto;\r
+ -webkit-border-radius: 0 5px 5px 0;\r
+ -moz-border-radius: 0 5px 5px 0;\r
+ -o-border-radius: 0 5px 5px 0;\r
+ -ms-border-radius: 0 5px 5px 0;\r
+ border-radius: 0 5px 5px 0;\r
+ border: none;\r
+ border-left: 1px solid black;\r
+ position: relative;\r
+ left: -18px;\r
+ padding: 0px;\r
+ line-height: 1em;\r
+ background: #fff;\r
+ text-align: center;\r
+ vertical-align: middle;\r
+ cursor: pointer;\r
+ background: white;\r
+ overflow: hidden; \r
+/* display: inline-block;*/\r
+}\r
+\r
+\r
+.hairline {\r
+ height: 2px; \r
+ width: 100%;\r
+ background-color: black;\r
+}\r
+\r
+.a4page-content {\r
+ min-height: 1010px;\r
+ /* az alábbiakat kivenni releaskor!\r
+ max-height: 1010px;\r
+ height: 1010px;\r
+ */\r
+}\r
+\r
+.a4page {\r
+ border: 1px solid #676767;\r
+ margin: 40px;\r
+ -webkit-box-shadow: 10px 10px 5px 0px rgba(0,0,0,0.75);\r
+ -moz-box-shadow: 10px 10px 5px 0px rgba(0,0,0,0.75);\r
+ box-shadow: 10px 10px 5px 0px rgba(0,0,0,0.75);\r
+}\r
+\r
+\r
--- /dev/null
+.printModal{font-family:sans-serif;display:flex;text-align:center;font-weight:300;font-size:30px;left:0;top:0;position:absolute;color:#0460b5;width:100%;height:100%;background-color:hsla(0,0%,100%,.91)}.printClose{position:absolute;right:10px;top:10px}.printClose:before{content:"\00D7";font-family:Helvetica Neue,sans-serif;font-weight:100;line-height:1px;padding-top:.5em;display:block;font-size:2em;text-indent:1px;overflow:hidden;height:1.25em;width:1.25em;text-align:center;cursor:pointer}
\ No newline at end of file
--- /dev/null
+!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.printJS=t():e.printJS=t()}(window,function(){return function(n){var r={};function o(e){if(r[e])return r[e].exports;var t=r[e]={i:e,l:!1,exports:{}};return n[e].call(t.exports,t,t.exports,o),t.l=!0,t.exports}return o.m=n,o.c=r,o.d=function(e,t,n){o.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},o.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.t=function(t,e){if(1&e&&(t=o(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(o.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var r in t)o.d(n,r,function(e){return t[e]}.bind(null,r));return n},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="",o(o.s=4)}([function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,o=n(2),i=(r=o)&&r.__esModule?r:{default:r},a=n(1);var l={send:function(r,e){document.getElementsByTagName("body")[0].appendChild(e);var o=document.getElementById(r.frameId);o.onload=function(){if("pdf"!==r.type){var e=o.contentWindow||o.contentDocument;if(e.document&&(e=e.document),e.body.appendChild(r.printableElement),"pdf"!==r.type&&r.style){var t=document.createElement("style");t.innerHTML=r.style,e.head.appendChild(t)}var n=e.getElementsByTagName("img");0<n.length?function(e){var t=[],n=!0,r=!1,o=void 0;try{for(var i,a=e[Symbol.iterator]();!(n=(i=a.next()).done);n=!0){var l=i.value;l.src&&l.src!==window.location.href&&t.push(u(l))}}catch(e){r=!0,o=e}finally{try{!n&&a.return&&a.return()}finally{if(r)throw o}}return Promise.all(t)}(n).then(function(){return d(o,r)}):d(o,r)}else d(o,r)}}};function d(t,n){try{if(t.focus(),i.default.isEdge()||i.default.isIE())try{t.contentWindow.document.execCommand("print",!1,null)}catch(e){t.contentWindow.print()}else t.contentWindow.print()}catch(e){n.onError(e)}finally{(0,a.cleanUp)(n)}}function u(n){return new Promise(function(t){!function e(){n&&void 0!==n.naturalWidth&&0!==n.naturalWidth&&n.complete?t():setTimeout(e,500)}()})}t.default=l},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};t.addWrapper=function(e,t){return'<div style="font-family:'+t.font+" !important; font-size: "+t.font_size+' !important; width:100%;">'+e+"</div>"},t.capitalizePrint=function(e){return e.charAt(0).toUpperCase()+e.slice(1)},t.collectStyles=function(e,t){var n=document.defaultView||window,r="",o=n.getComputedStyle(e,"");return Object.keys(o).map(function(e){(-1!==t.targetStyles.indexOf("*")||-1!==t.targetStyle.indexOf(o[e])||function(e,t){for(var n=0;n<e.length;n++)if("object"===(void 0===t?"undefined":i(t))&&-1!==t.indexOf(e[n]))return!0;return!1}(t.targetStyles,o[e]))&&o.getPropertyValue(o[e])&&(r+=o[e]+":"+o.getPropertyValue(o[e])+";")}),r+="max-width: "+t.maxWidth+"px !important;"+t.font_size+" !important;"},t.addHeader=function(e,t){var n=document.createElement("div");if(l(t.header))n.innerHTML=t.header;else{var r=document.createElement("h1"),o=document.createTextNode(t.header);r.appendChild(o),r.setAttribute("style",t.headerStyle),n.appendChild(r)}e.insertBefore(n,e.childNodes[0])},t.cleanUp=function(t){t.showModal&&r.default.close();t.onLoadingEnd&&t.onLoadingEnd();(t.showModal||t.onLoadingStart)&&window.URL.revokeObjectURL(t.printable);if(t.onPrintDialogClose){var n="mouseover";(o.default.isChrome()||o.default.isFirefox())&&(n="focus");window.addEventListener(n,function e(){window.removeEventListener(n,e),t.onPrintDialogClose()})}},t.isRawHTML=l;var r=a(n(3)),o=a(n(2));function a(e){return e&&e.__esModule?e:{default:e}}function l(e){return new RegExp("<([A-Za-z][A-Za-z0-9]*)\\b[^>]*>(.*?)</\\1>").test(e)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r={isFirefox:function(){return"undefined"!=typeof InstallTrigger},isIE:function(){return-1!==navigator.userAgent.indexOf("MSIE")||!!document.documentMode},isEdge:function(){return!r.isIE()&&!!window.StyleMedia},isChrome:function(){return!!(0<arguments.length&&void 0!==arguments[0]?arguments[0]:window).chrome},isSafari:function(){return 0<Object.prototype.toString.call(window.HTMLElement).indexOf("Constructor")||-1!==navigator.userAgent.toLowerCase().indexOf("safari")},isIOSChrome:function(){return-1!==navigator.userAgent.toLowerCase().indexOf("crios")}};t.default=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var a={show:function(e){var t=document.createElement("div");t.setAttribute("style","font-family:sans-serif; display:table; text-align:center; font-weight:300; font-size:30px; left:0; top:0;position:fixed; z-index: 9990;color: #0460B5; width: 100%; height: 100%; background-color:rgba(255,255,255,.9);transition: opacity .3s ease;"),t.setAttribute("id","printJS-Modal");var n=document.createElement("div");n.setAttribute("style","display:table-cell; vertical-align:middle; padding-bottom:100px;");var r=document.createElement("div");r.setAttribute("class","printClose"),r.setAttribute("id","printClose"),n.appendChild(r);var o=document.createElement("span");o.setAttribute("class","printSpinner"),n.appendChild(o);var i=document.createTextNode(e.modalMessage);n.appendChild(i),t.appendChild(n),document.getElementsByTagName("body")[0].appendChild(t),document.getElementById("printClose").addEventListener("click",function(){a.close()})},close:function(){var e=document.getElementById("printJS-Modal");e.parentNode.removeChild(e)}};t.default=a},function(e,t,n){e.exports=n(5)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n(6);var r,o=n(7);var i=((r=o)&&r.__esModule?r:{default:r}).default.init;"undefined"!=typeof window&&(window.printJS=i),t.default=i},function(e,t,n){},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a=r(n(2)),l=r(n(3)),d=r(n(8)),u=r(n(9)),c=r(n(10)),f=r(n(11)),s=r(n(12));function r(e){return e&&e.__esModule?e:{default:e}}var p=["pdf","html","image","json","raw-html"];t.default={init:function(){var t={printable:null,fallbackPrintable:null,type:"pdf",header:null,headerStyle:"font-weight: 300;",maxWidth:800,font:"TimesNewRoman",font_size:"12pt",honorMarginPadding:!0,honorColor:!1,properties:null,gridHeaderStyle:"font-weight: bold; padding: 5px; border: 1px solid #dddddd;",gridStyle:"border: 1px solid lightgray; margin-bottom: -1px;",showModal:!1,onError:function(e){throw e},onLoadingStart:null,onLoadingEnd:null,onPrintDialogClose:null,onPdfOpen:null,onBrowserIncompatible:function(){return!0},modalMessage:"Retrieving Document...",frameId:"printJS",printableElement:null,documentTitle:"Document",targetStyle:["clear","display","width","min-width","height","min-height","max-height"],targetStyles:["border","box","break","text-decoration"],ignoreElements:[],imageStyle:"max-width: 100%;",repeatTableHeader:!0,css:null,style:null,scanStyles:!0,base64:!1},e=arguments[0];if(void 0===e)throw new Error("printJS expects at least 1 attribute.");switch(void 0===e?"undefined":i(e)){case"string":t.printable=encodeURI(e),t.fallbackPrintable=t.printable,t.type=arguments[1]||t.type;break;case"object":for(var n in t.printable=e.printable,t.base64=void 0!==e.base64,t.fallbackPrintable=void 0!==e.fallbackPrintable?e.fallbackPrintable:t.printable,t.fallbackPrintable=t.base64?"data:application/pdf;base64,"+t.fallbackPrintable:t.fallbackPrintable,t)"printable"!==n&&"fallbackPrintable"!==n&&"base64"!==n&&(t[n]=void 0!==e[n]?e[n]:t[n]);break;default:throw new Error('Unexpected argument type! Expected "string" or "object", got '+(void 0===e?"undefined":i(e)))}if(!t.printable)throw new Error("Missing printable information.");if(!t.type||"string"!=typeof t.type||-1===p.indexOf(t.type.toLowerCase()))throw new Error("Invalid print type. Available types are: pdf, html, image and json.");t.showModal&&l.default.show(t),t.onLoadingStart&&t.onLoadingStart();var r=document.getElementById(t.frameId);r&&r.parentNode.removeChild(r);var o=void 0;switch((o=document.createElement("iframe")).setAttribute("style","visibility: hidden; height: 0; width: 0; position: absolute;"),o.setAttribute("id",t.frameId),"pdf"!==t.type&&(o.srcdoc="<html><head><title>"+t.documentTitle+"</title>",t.css&&(Array.isArray(t.css)||(t.css=[t.css]),t.css.forEach(function(e){o.srcdoc+='<link rel="stylesheet" href="'+e+'">'})),o.srcdoc+="</head><body></body></html>"),t.type){case"pdf":if(a.default.isFirefox()||a.default.isEdge()||a.default.isIE())try{if(console.info("PrintJS currently doesn't support PDF printing in Firefox, Internet Explorer and Edge."),!0===t.onBrowserIncompatible())window.open(t.fallbackPrintable,"_blank").focus(),t.onPdfOpen&&t.onPdfOpen()}catch(e){t.onError(e)}finally{t.showModal&&l.default.close(),t.onLoadingEnd&&t.onLoadingEnd()}else d.default.print(t,o);break;case"image":f.default.print(t,o);break;case"html":u.default.print(t,o);break;case"raw-html":c.default.print(t,o);break;case"json":s.default.print(t,o)}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,o=n(0),i=(r=o)&&r.__esModule?r:{default:r},a=n(1);function l(e,t,n){var r=new window.Blob([n],{type:"application/pdf"});r=window.URL.createObjectURL(r),t.setAttribute("src",r),i.default.send(e,t)}t.default={print:function(e,t){if(e.base64){var n=Uint8Array.from(atob(e.printable),function(e){return e.charCodeAt(0)});l(e,t,n)}else{e.printable=/^(blob|http)/i.test(e.printable)?e.printable:window.location.origin+("/"!==e.printable.charAt(0)?"/"+e.printable:e.printable);var r=new window.XMLHttpRequest;r.responseType="arraybuffer",r.addEventListener("load",function(){if(-1===[200,201].indexOf(r.status))return(0,a.cleanUp)(e),void e.onError(r.statusText);l(e,t,r.response)}),r.open("GET",e.printable,!0),r.send()}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,f=n(1),o=n(0),i=(r=o)&&r.__esModule?r:{default:r};t.default={print:function(e,t){var n=document.getElementById(e.printable);n?(e.printableElement=function e(t,n){var r=t.cloneNode();var o=!0;var i=!1;var a=void 0;try{for(var l,d=t.childNodes[Symbol.iterator]();!(o=(l=d.next()).done);o=!0){var u=l.value;if(-1===n.ignoreElements.indexOf(u.id)){var c=e(u,n);r.appendChild(c)}}}catch(e){i=!0,a=e}finally{try{!o&&d.return&&d.return()}finally{if(i)throw a}}n.scanStyles&&1===t.nodeType&&r.setAttribute("style",(0,f.collectStyles)(t,n));switch(t.tagName){case"SELECT":r.value=t.value;break;case"CANVAS":r.getContext("2d").drawImage(t,0,0)}return r}(n,e),e.header&&(0,f.addHeader)(e.printableElement,e),i.default.send(e,t)):window.console.error("Invalid HTML element id: "+e.printable)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,o=n(0),i=(r=o)&&r.__esModule?r:{default:r};t.default={print:function(e,t){e.printableElement=document.createElement("div"),e.printableElement.setAttribute("style","width:100%"),e.printableElement.innerHTML=e.printable,i.default.send(e,t)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,o=n(1),i=n(0),a=(r=i)&&r.__esModule?r:{default:r};t.default={print:function(r,e){r.printable.constructor!==Array&&(r.printable=[r.printable]),r.printableElement=document.createElement("div"),r.printable.forEach(function(e){var t=document.createElement("img");t.setAttribute("style",r.imageStyle),t.src=e;var n=document.createElement("div");n.appendChild(t),r.printableElement.appendChild(n)}),r.header&&(0,o.addHeader)(r.printableElement,r),a.default.send(r,e)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},c=n(1),i=n(0),a=(r=i)&&r.__esModule?r:{default:r};t.default={print:function(t,e){if("object"!==o(t.printable))throw new Error("Invalid javascript data object (JSON).");if("boolean"!=typeof t.repeatTableHeader)throw new Error("Invalid value for repeatTableHeader attribute (JSON).");if(!t.properties||!Array.isArray(t.properties))throw new Error("Invalid properties array for your JSON data.");t.properties=t.properties.map(function(e){return{field:"object"===(void 0===e?"undefined":o(e))?e.field:e,displayName:"object"===(void 0===e?"undefined":o(e))?e.displayName:e,columnSize:"object"===(void 0===e?"undefined":o(e))&&e.columnSize?e.columnSize+";":100/t.properties.length+"%;"}}),t.printableElement=document.createElement("div"),t.header&&(0,c.addHeader)(t.printableElement,t),t.printableElement.innerHTML+=function(e){var t=e.printable,n=e.properties,r='<table style="border-collapse: collapse; width: 100%;">';e.repeatTableHeader&&(r+="<thead>");r+="<tr>";for(var o=0;o<n.length;o++)r+='<th style="width:'+n[o].columnSize+";"+e.gridHeaderStyle+'">'+(0,c.capitalizePrint)(n[o].displayName)+"</th>";r+="</tr>",e.repeatTableHeader&&(r+="</thead>");r+="<tbody>";for(var i=0;i<t.length;i++){r+="<tr>";for(var a=0;a<n.length;a++){var l=t[i],d=n[a].field.split(".");if(1<d.length)for(var u=0;u<d.length;u++)l=l[d[u]];else l=l[n[a].field];r+='<td style="width:'+n[a].columnSize+e.gridStyle+'">'+l+"</td>"}r+="</tr>"}return r+="</tbody></table>"}(t),a.default.send(t,e)}}}]).default});
\ No newline at end of file
--- /dev/null
+<?link rel="stylesheet" type="text/css" href="~./static/css/skeleton.css" ?>\r
+<?link rel="stylesheet" type="text/css" href="~./static/css/webclient.css" ?>\r
+<?component name="text" class="hu.user.lis.ui.form.Field$Text" ?>\r
+<zk xmlns:c="client">\r
+ <window id="supplierPopup" title="Szállítók" width="80%" height="60%" closable="true"\r
+ viewModel="@id('vm') @init('hu.user.lis.ui.view.SuppliersViewModel')">\r
+ <style>\r
+ .z-listitem-selected>.z-listcell>.z-listcell-content {\r
+ font-weight: bold,;\r
+ }\r
+ </style>\r
+\r
+ <borderlayout>\r
+ <north flex="true">\r
+ <toolbar>\r
+ <label value="Név"/>\r
+ <textbox id="partialName" value="@bind(vm.partialName)" onOK="@command('search')">\r
+ <attribute c:name="_doKeyDown">\r
+ <![CDATA[\r
+ function (evt) {\r
+ var keyCode = evt.keyCode;\r
+ console.log(keyCode);\r
+ Clients.log(keyCode);\r
+ if (keyCode == 13){\r
+ zk.$("$supplierSearchResult").focus();\r
+ zk.$("$partialName").fireEvent('onSearch', {}, {toServer: true});\r
+ return;\r
+ }\r
+ }\r
+ ]]>\r
+ </attribute>\r
+ </textbox>\r
+ <label value="Irányítószám"/>\r
+ <textbox instant="true" value="@bind(vm.partialZipCode)" onOK="@command('search')"/>\r
+ <toolbarbutton label="Keresés" iconSclass="z-icon-search" onClick="@command('search')"/>\r
+ <toolbarbutton label="Mind" iconSclass="z-icon-search-plus" onClick="@command('listAll')"/>\r
+ </toolbar>\r
+ </north>\r
+ <center border="none" flex="true">\r
+ <listbox id="suppliersSearchResult" vflex="true" model="@load(vm.suppliersDataModel)"\r
+ onSelect="@command('onListSelection')"\r
+ onDoubleClick="@command('onCloseWindow', target=supplierPopup, select=true)">\r
+ <listhead>\r
+ <listheader label="Név" align="left"/>\r
+ </listhead>\r
+ <listfoot>\r
+ <listfooter>\r
+ <hlayout>\r
+ <label value="Találatok: "/>\r
+ <label value="@load(vm.suppliersDataModel.resultSetCount)"/>\r
+ </hlayout>\r
+ </listfooter>\r
+ </listfoot>\r
+ <template name="model">\r
+ <listitem>\r
+ <listcell label="@load(empty each.name ? each.template : each.name)"/>\r
+ </listitem>\r
+ </template>\r
+ </listbox>\r
+ </center>\r
+ <east title="Adatlap" size="60%" flex="true" splittable="true" collapsible="true">\r
+ <div class="container u-form-width u-max-form-width">\r
+ <div class="row">\r
+ <text class="twelve columns" label="ID" field="id"/>\r
+ </div>\r
+ <div class="row">\r
+ <text class="twelve columns" label="Név" field="name"/>\r
+ </div>\r
+ <div class="row">\r
+ <text class="twelve columns" label="Irányítószám" field="zipCode"/>\r
+ </div>\r
+ </div>\r
+ </east>\r
+ <south flex="true" style="text-align: right; padding: 10px">\r
+ <hlayout>\r
+ <button label="Bezár" onClick="@command('onCloseWindow', target=supplierPopup, select=false)"\r
+ disabled="@load(vm.selectedSupplier)"/>\r
+ <button label="Kiválaszt" onClick="@command('onCloseWindow', target=supplierPopup, select=true)"/>\r
+ </hlayout>\r
+ </south>\r
+ </borderlayout>\r
+ </window>\r
+</zk>
\ No newline at end of file
--- /dev/null
+version=0.0.1-SNAPSHOT\r
+groupId=hu.user\r
+artifactId=lis-ui\r
--- /dev/null
+C:\work\user\lis\lis-ui\src\main\java\hu\user\lis\ui\data\SuppliersDataModel.java
+C:\work\user\lis\lis-ui\src\main\java\hu\user\lis\ui\form\FormValidator.java
+C:\work\user\lis\lis-ui\src\main\java\hu\user\lis\ui\form\Field.java
+C:\work\user\lis\lis-ui\src\main\java\hu\user\lis\ui\converter\SupplierToNameConverter.java
+C:\work\user\lis\lis-ui\src\main\java\hu\user\lis\ui\config\DevelopmentConfig.java
+C:\work\user\lis\lis-ui\src\main\java\hu\user\lis\ui\view\Index.java
+C:\work\user\lis\lis-ui\src\main\java\hu\user\lis\ui\view\SuppliersViewModel.java
+C:\work\user\lis\lis-ui\src\main\java\hu\user\lis\ui\data\SuppliersSimpleDataModel.java
+C:\work\user\lis\lis-ui\src\main\java\hu\user\lis\ui\data\CachedDataModel.java
+C:\work\user\lis\lis-ui\src\main\java\hu\user\lis\ui\data\FormDocument.java
+C:\work\user\lis\lis-ui\src\main\java\hu\user\lis\ui\ResourceConfigurer.java
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>\r
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">\r
+ <modelVersion>4.0.0</modelVersion>\r
+ <groupId>hu.user</groupId>\r
+ <artifactId>lis</artifactId>\r
+ <version>0.0.1-SNAPSHOT</version>\r
+ <packaging>pom</packaging>\r
+ <modules>\r
+ <module>lis-services</module>\r
+ <module>lis-db</module>\r
+ <module>lis-ui</module>\r
+ <module>lis-app</module>\r
+ </modules>\r
+ <properties>\r
+ <java.version>1.8</java.version>\r
+ <maven.compiler.source>1.8</maven.compiler.source>\r
+ <maven.compiler.target>1.8</maven.compiler.target>\r
+ <spring.version>2.2.4.RELEASE</spring.version>\r
+ <springboot.version>2.2.4.RELEASE</springboot.version>\r
+ </properties>\r
+ <parent>\r
+ <groupId>org.springframework.boot</groupId>\r
+ <artifactId>spring-boot-starter-parent</artifactId>\r
+ <version>2.2.4.RELEASE</version>\r
+ <!-- lookup parent from repository -->\r
+ <relativePath/>\r
+ </parent>\r
+ <repositories>\r
+ </repositories>\r
+ <dependencies>\r
+ <dependency>\r
+ <groupId>org.projectlombok</groupId>\r
+ <artifactId>lombok</artifactId>\r
+ <version>1.18.26</version>\r
+ <scope>provided</scope>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>org.apache.logging.log4j</groupId>\r
+ <artifactId>log4j-api</artifactId>\r
+ <version>2.19.0</version>\r
+ </dependency>\r
+ <!-- <dependency>-->\r
+ <!-- <groupId>org.springframework</groupId>-->\r
+ <!-- <artifactId>spring-context</artifactId>-->\r
+ <!-- </dependency>-->\r
+ <!-- <dependency>-->\r
+ <!-- <groupId>org.springframework.boot</groupId>-->\r
+ <!-- <artifactId>spring-boot-devtools</artifactId>-->\r
+ <!-- <optional>true</optional>-->\r
+ <!-- </dependency>-->\r
+\r
+ </dependencies>\r
+</project>\r