소스 검색

Merge branch 'master' of bn.git:plabudda/se

Piotr Labudda 8 년 전
부모
커밋
c5d1428015

+ 9 - 7
SE/build_SE.xml

@@ -10,6 +10,7 @@
     <!-- @2018 property correct structure -->
     <include file="${basedir}/build_SE_basedir/build.p5build_SE.PRODUCT.xml"/>
     <include file="${basedir}/build_SE_basedir/build.p5build_SE.SYSTEM.xml" as="SYSTEM"/>
+    <include file="${basedir}/build.p5build.GLOBALS.xml"/>
     <!--<property name="p5build_SE.PRODUCT.name" value="p5build_SE"/>
         <property name="p5build_SE.PRODUCT.vendor-domain" value="pl.procesy5"/>
         <property name="p5build_SE.PRODUCT.name.PROCESY5.basedir" value="${basedir}/build_SE_basedir"/>
@@ -226,16 +227,16 @@
         <echoproperties destfile="${p5build_SE.properties.xml}" format="xml"/>
             <chmod file="${p5build_SE.properties}" perm="777" failonerror="false"/>
             <chmod file="${p5build_SE.properties.xml}" perm="777"/>
-        <chown file="${p5build_SE.properties}" owner="${p5build_SE.SYSTEM.local-user}" failonerror="false"/>
-        <chown file="${p5build_SE.properties.xml}" owner="${p5build_SE.SYSTEM.local-user}" failonerror="false"/>
+        <chown file="${p5build_SE.properties}" owner="${p5build_SE.SYSTEM.local-user}" failonerror="false" failifexecutionfails="false"/>
+        <chown file="${p5build_SE.properties.xml}" owner="${p5build_SE.SYSTEM.local-user}" failonerror="false" failifexecutionfails="false"/>
     </target>
     
     <target name="build_SE.install_dirs">
         <echo level="verbose">#232 will make dir="${p5build_SE.basedir}"  dir="${p5build_SE.temp}" and  owner="${p5build_SE.SYSTEM.local-user}" </echo>
         <mkdir dir="${p5build_SE.basedir}"/>
         <mkdir dir="${p5build_SE.temp}"/>
-        <chown file="${p5build_SE.basedir}" owner="${p5build_SE.SYSTEM.local-user}" />
-        <chown file="${p5build_SE.temp}" owner="${p5build_SE.SYSTEM.local-user}"/>
+        <chown file="${p5build_SE.basedir}" owner="${p5build_SE.SYSTEM.local-user}" failonerror="false" failifexecutionfails="false" />
+        <chown file="${p5build_SE.temp}" owner="${p5build_SE.SYSTEM.local-user}" failonerror="false" failifexecutionfails="false"/>
     </target>
     
     
@@ -254,7 +255,8 @@
     <target if="build_SE_read_procesy5_file_properties_check" name="build_SE_read_procesy5_file_properties" depends="build_SE_read_procesy5_file_properties_check,build_SE.install_dirs" description="TO read from procesy5_config.folders and procesy5_config.folders.server further do another direction this in install">
         <!--<loadfile property="procesy5_config.folders_loadfile" srcfile="${procesy5_config.folders}"/>-->
         <loadfile property="procesy5_config.folders.server_loadfile" srcfile="${procesy5_config.folders.server}"/>
-        <tempfile property="procesy5_config.folders_loadfile_xml" destdir="${build_SE_basedir.temp}" prefix="procesy5_config.folders_loadfile_xml" suffix=".xml" deleteonexit="no"/>
+        <mkdir dir="${build_SE_basedir.temp}"/>
+        <tempfile property="procesy5_config.folders_loadfile_xml" destdir="${build_SE_basedir.temp}" prefix="procesy5_config.folders_loadfile_xml" suffix=".xml" deleteonexit="yes" />
 
         <echoxml file="${procesy5_config.folders_loadfile_xml}">
             <procesy5_config>
@@ -262,7 +264,7 @@
                 <procesy5_config.folders.server>${procesy5_config.folders.server_loadfile}</procesy5_config.folders.server>
             </procesy5_config>
         </echoxml>
-        <chown file="${procesy5_config.folders_loadfile_xml}" owner="${p5build_SE.SYSTEM.local-user}"/>
+        <chown file="${procesy5_config.folders_loadfile_xml}" owner="${p5build_SE.SYSTEM.local-user}" failonerror="false" failifexecutionfails="false"/>
         <xslt basedir="./" style="${procesy5_config.folders.xsl}" in="${procesy5_config.folders_loadfile_xml}"  destdir="./" out="${procesy5_config.folders.properties.xml}" force="yes">
             <factory name="net.sf.saxon.TransformerFactoryImpl">    
                 <attribute name="http://saxon.sf.net/feature/xinclude-aware" value="true"/>
@@ -272,7 +274,7 @@
             <!--<param name="main_build_recurse_ant.dita" expression="${main_build_recurse_ant.dita}"/>-->
             <!--<param name="basedir" expression="${basedir}"/>-->
         </xslt>
-        <chown file="${procesy5_config.folders.properties.xml}" owner="${p5build_SE.SYSTEM.local-user}"/>
+        <chown file="${procesy5_config.folders.properties.xml}" owner="${p5build_SE.SYSTEM.local-user}" failonerror="false" failifexecutionfails="false"/>
         <loadfile property="procesy5_config.folders.properties.xml.file" srcfile="${procesy5_config.folders.properties.xml}"/>
         <!--<echo>#60 reading $procesy5_config.folders.properties.xml ${procesy5_config.folders.properties.xml.file}
             ${procesy5_config.folders.properties.xml.file}

+ 2 - 0
SE/changePassword.php

@@ -0,0 +1,2 @@
+<?php
+header('Location: index.php?_route=ChangePassword');

+ 1 - 1
SE/projects/bocian

@@ -1 +1 @@
-Subproject commit b92c86787a2aa1398b511a9340590080b9796c29
+Subproject commit 075a63bddb714e34d8c63fd35df12896bbef4bec

+ 797 - 65
SE/schema/ant-object/default_db.DEVICES/DEVICES/DEVICES.xsd

@@ -1,105 +1,837 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
-   xmlns:default_db__x3A__DEVICES="https://biuro.biall-net.pl/wfs/default_db/table/DEVICES.xsd"
-   xmlns:gml="http://www.opengis.net/gml/3.2"
-   xmlns:default_db__x3A__COMPANIES="https://biuro.biall-net.pl/wfs/default_db/table/COMPANIES.xsd"
-   xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning"
-   xmlns:system_cache__appinfo="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd"
-   elementFormDefault="qualified"
-   targetNamespace="https://biuro.biall-net.pl/wfs/default_db/table/DEVICES.xsd" vc:minVersion="1.0"
-   vc:maxVersion="1.1">
-   <xs:import namespace="http://www.opengis.net/gml/3.2" schemaLocation="../Types/gml.xsd"/>
-   <xs:simpleType name="T_DEVICE_TYPE" id="a3A__DEVICES___d5e8554-1_T_DEVICE_T">
+           xmlns:gml="http://www.opengis.net/gml/3.2"
+           xmlns:Types__x3A__default_Default="https://biuro.biall-net.pl/wfs/default_db/Types/Default.xsd"
+           xmlns:default_db__x3A__IN7_DZIENNIK_KORESP="https://biuro.biall-net.pl/wfs/default_db/table/IN7_DZIENNIK_KORESP.xsd"
+           xmlns:hfp="http://www.w3.org/2001/XMLSchema-hasFacetAndProperty"
+           xmlns:default_db__x3A__ADMIN_USERS="https://biuro.biall-net.pl/wfs/default_db/table/ADMIN_USERS.xsd"
+           xmlns:default_db__x3A__IN7_MK_BAZA_DYSTRYBUCJI="https://biuro.biall-net.pl/wfs/default_db/table/IN7_MK_BAZA_DYSTRYBUCJI.xsd"
+           xmlns:SystemObjects__x3A__AccessGroup="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessGroup.xsd"
+           xmlns:SystemObjects__x3A__AccessOwner="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessOwner.xsd"
+           xmlns:default_db__x3A__DEVICES="https://biuro.biall-net.pl/wfs/default_db/table/DEVICES.xsd"
+           xmlns:p5_tr_map="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/procesy5_translate_map.xsd"
+           xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning"
+           xmlns:system_cache__resources_tree_generate_xsl_required_occurs_raport="http://biuro.biall-net.pl/xmlschema_procesy5/system_cache/resources_tree_generate_xsl_require_occurs_raport"
+           xmlns:system_cache__appinfo="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd"
+           targetNamespace="https://biuro.biall-net.pl/wfs/default_db/table/DEVICES.xsd"
+           vc:minVersion="1.1">
+   <xs:import namespace="http://www.opengis.net/gml/3.2"
+              schemaLocation="../Types/gml.xsd"/>
+   <xs:import namespace="https://biuro.biall-net.pl/wfs/default_db/table/IN7_DZIENNIK_KORESP.xsd"
+              schemaLocation="../table/IN7_DZIENNIK_KORESP.xsd"/>
+   <xs:import namespace="https://biuro.biall-net.pl/wfs/default_db/table/IN7_MK_BAZA_DYSTRYBUCJI.xsd"
+              schemaLocation="../table/IN7_MK_BAZA_DYSTRYBUCJI.xsd"/>
+   <xs:import namespace="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessGroup.xsd"
+              schemaLocation="../SystemObjects/AccessGroup.xsd"/>
+   <xs:import namespace="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/AccessOwner.xsd"
+              schemaLocation="../SystemObjects/AccessOwner.xsd"/>
+   <xs:simpleType name="A_STATUS_Type" id="a3A__DEVICES___d5e78873-1_A_STATUS_T">
+      <xs:restriction base="xs:string">
+         <xs:enumeration value="NORMAL"/>
+         <xs:enumeration value="WAITING"/>
+         <xs:enumeration value="MONITOR"/>
+         <xs:enumeration value="DELETED"/>
+         <xs:enumeration value="WARNING"/>
+         <xs:enumeration value="OFF_SOFT"/>
+         <xs:enumeration value="OFF_HARD"/>
+      </xs:restriction>
+   </xs:simpleType>
+   <xs:simpleType id="a3A__DEVICES___d5e8554-1_T_DEVICE_T" name="T_DEVICE_TYPE">
       <xs:restriction base="xs:string"/>
    </xs:simpleType>
-   <xs:simpleType name="T_DEVICE_TYPE_forma" id="a3A__DEVICES___d5e8556-1_T_DEVICE_T">
+   <xs:simpleType id="a3A__DEVICES___d5e8556-1_T_DEVICE_T" name="T_DEVICE_TYPE_forma">
       <xs:restriction base="default_db__x3A__DEVICES:T_DEVICE_TYPE">
          <xs:enumeration value="FORMA"/>
       </xs:restriction>
    </xs:simpleType>
-   <xs:simpleType name="T_DEVICE_TYPE_maszyna" id="a3A__DEVICES___d5e8559-1_T_DEVICE_T">
+   <xs:simpleType id="a3A__DEVICES___d5e8559-1_T_DEVICE_T" name="T_DEVICE_TYPE_maszyna">
       <xs:restriction base="default_db__x3A__DEVICES:T_DEVICE_TYPE">
          <xs:enumeration value="MASZYNA"/>
       </xs:restriction>
    </xs:simpleType>
-   <xs:complexType name="DEVICES" id="a3A__DEVICES___d5e8562-1_DEVICES">
-      <xs:sequence id="a3A__DEVICES___d5e8563-1">
-         <xs:element name="ID" type="xs:int" id="a3A__DEVICES___d5e8564-1_ID"/>
-         <xs:element minOccurs="0" name="PARENT_ID" type="xs:int"/>
-         <xs:element name="T_DEVICE_TYPE" type="default_db__x3A__DEVICES:T_DEVICE_TYPE"
-            id="a3A__DEVICES___d5e8565-1_T_DEVICE_T"/>
-         <xs:element name="T_DEVICE_INFO" type="xs:string" id="a3A__DEVICES___d5e8566-1_T_DEVICE_I"/>
-         <xs:element name="T_DEVICE_SERIAL" type="xs:string"
-            id="a3A__DEVICES___d5e8567-1_T_DEVICE_S"/>
-         <xs:element ref="default_db__x3A__DEVICES:DEVICES" id="a3A__DEVICES___d5e8567-1_T_DEV1"
-            minOccurs="0">
+   <xs:complexType name="DEVICES" id="a3A__DEVICES___d5e78890-1_DEVICES">
+      <xs:sequence id="a3A__DEVICES___d5e78891-1">
+         <xs:element ref="SystemObjects__x3A__AccessOwner:AccessOwner"
+                     id="a3A__DEVICES___d5e78892-1">
+            <xs:annotation>
+               <xs:appinfo>
+                  <system_cache__appinfo:flat_relation_cache>
+                     <system_cache__appinfo:source system_cache__appinfo:name="L_APPOITMENT_USER"
+                                                   system_cache__appinfo:xpath="SystemObjects__x3A__AccessOwner:AccessOwner/login"/>
+                  </system_cache__appinfo:flat_relation_cache>
+               </xs:appinfo>
+            </xs:annotation>
+         </xs:element>
+         <xs:element ref="SystemObjects__x3A__AccessGroup:AccessGroupRead"
+                     id="a3A__DEVICES___d5e78897-1">
             <xs:annotation>
-            <xs:appinfo>
-               <system_cache__appinfo:flat_relation_cache>
-                  <system_cache__appinfo:source system_cache__appinfo:name="ID" system_cache__appinfo:xpath="default_db__x3A__DEVICES:DEVICES/PARENT_ID"/>
-               </system_cache__appinfo:flat_relation_cache>
-            </xs:appinfo>
+               <xs:appinfo>
+                  <system_cache__appinfo:flat_relation_cache>
+                     <system_cache__appinfo:source system_cache__appinfo:name="A_CLASSIFIED"
+                                                   system_cache__appinfo:xpath="SystemObjects__x3A__AccessGroup:AccessGroupRead/uid"/>
+                  </system_cache__appinfo:flat_relation_cache>
+               </xs:appinfo>
             </xs:annotation>
          </xs:element>
+         <xs:element ref="SystemObjects__x3A__AccessGroup:AccessGroupWrite"
+                     id="a3A__DEVICES___d5e78902-1">
+            <xs:annotation>
+               <xs:appinfo>
+                  <system_cache__appinfo:flat_relation_cache>
+                     <system_cache__appinfo:source system_cache__appinfo:name="A_ADM_COMPANY"
+                                                   system_cache__appinfo:xpath="SystemObjects__x3A__AccessGroup:AccessGroupWrite/uid"/>
+                  </system_cache__appinfo:flat_relation_cache>
+               </xs:appinfo>
+            </xs:annotation>
+         </xs:element>
+         <xs:element name="ID" type="xs:integer" id="a3A__DEVICES___d5e78907-1_ID"/>
+         <xs:element name="PARENT_ID"
+                     type="xs:integer"
+                     id="a3A__DEVICES___d5e78908-1_PARENT_ID"/>
+         <xs:element name="A_RECORD_CREATE_DATE"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78909-1_A_RECORD_C"/>
+         <xs:element name="A_RECORD_CREATE_AUTHOR"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78910-1_A_RECORD_C"/>
+         <xs:element name="A_RECORD_UPDATE_DATE"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78911-1_A_RECORD_U"/>
+         <xs:element name="A_RECORD_UPDATE_AUTHOR"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78912-1_A_RECORD_U"/>
+         <xs:element name="A_PROBLEM"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78913-1_A_PROBLEM"/>
+         <xs:element name="A_PROBLEM_DESC"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78914-1_A_PROBLEM_"/>
+         <xs:element name="A_PROBLEM_DATE"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78916-1_A_PROBLEM_"/>
+         <xs:element name="A_STATUS"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78917-1_A_STATUS"/>
+         <xs:element name="A_STATUS_EV"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78918-1_A_STATUS_E"/>
+         <xs:element name="A_STATUS_INFO"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78919-1_A_STATUS_I"/>
+         <xs:element name="A_STATUS_LASTCHANGE_DATE"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78920-1_A_STATUS_L"/>
+         <xs:element name="IN7_DZIENNIK_KORESP_ID"
+                     type="xs:integer"
+                     id="a3A__DEVICES___d5e78921-1_IN7_DZIENN"/>
+         <xs:element name="IN7_DZIENNIK_KORESP_ID_ZAMOWIENIE"
+                     type="xs:integer"
+                     id="a3A__DEVICES___d5e78922-1_IN7_DZIENN"/>
+         <xs:element name="A_UPDATE_DATE"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78923-1_A_UPDATE_D"/>
+         <xs:element name="A_ADM_COMPANY"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78924-1_A_ADM_COMP"/>
+         <xs:element name="S_ADDRESS_CITY"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78925-1_S_ADDRESS_"/>
+         <xs:element name="S_ADDRESS_POST_CODE"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78926-1_S_ADDRESS_"/>
+         <xs:element name="S_ADDRESS_POST_OFFICE"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78928-1_S_ADDRESS_"/>
+         <xs:element name="S_ADDRESS_STREET"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78929-1_S_ADDRESS_"/>
+         <xs:element name="S_ADDRESS_HOUSE"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78930-1_S_ADDRESS_"/>
+         <xs:element name="S_OTHER_INFO"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78931-1_S_OTHER_IN"/>
+         <xs:element name="S_IP" type="xs:string" id="a3A__DEVICES___d5e78932-1_S_IP"/>
+         <xs:element name="T_NETWORK_SERVER"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78933-1_T_NETWORK_"/>
+         <xs:element name="T_TOPOLOGY_PLACE"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78934-1_T_TOPOLOGY"/>
+         <xs:element name="T_DEVICE_SERIAL"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78935-1_T_DEVICE_S"/>
+         <xs:element name="T_DEVICE_TYPE"
+                     type="default_db__x3A__DEVICES:T_DEVICE_TYPE"
+                     id="a3A__DEVICES___d5e78936-1_T_DEVICE_T"/>
+         <xs:element name="T_DEVICE_PORTS_OK"
+                     type="xs:integer"
+                     id="a3A__DEVICES___d5e78937-1_T_DEVICE_P"/>
+         <xs:element name="T_DEVICE_INFO"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78938-1_T_DEVICE_I"/>
+         <xs:element name="T_DEVICE_POWER"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78940-1_T_DEVICE_P"/>
+         <xs:element name="T_TELBOX_NEIGHBOUR_IN"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78941-1_T_TELBOX_N"/>
+         <xs:element name="T_TELBOX_NEIGHBOUR_IN_ID"
+                     type="xs:integer"
+                     id="a3A__DEVICES___d5e78942-1_T_TELBOX_N"/>
+         <xs:element name="the_geom"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78943-1_the_geom"/>
+         <xs:element name="T_WORKPOINTS"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78944-1_T_WORKPOIN"/>
+         <xs:element name="T_WORKPOINTS_VALUE"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78945-1_T_WORKPOIN"/>
+         <xs:element name="T_WORKPOINTS_TYPE"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78946-1_T_WORKPOIN"/>
+         <xs:element name="T_WORKPOINTS_USER"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78947-1_T_WORKPOIN"/>
+         <xs:element name="T_WORKPOINTS_DATE"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78948-1_T_WORKPOIN"/>
+         <xs:element name="T_PENALTIES"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78949-1_T_PENALTIE"/>
+         <xs:element name="T_PENALTIES_TYPE"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78950-1_T_PENALTIE"/>
+         <xs:element name="T_PENALTIES_VALUE"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78952-1_T_PENALTIE"/>
+         <xs:element name="T_WHO_CONNECTED"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78953-1_T_WHO_CONN"/>
+         <xs:element name="T_WHEN_CONNECTED"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78954-1_T_WHEN_CON"/>
+         <xs:element name="T_PRODUCER"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78955-1_T_PRODUCER"/>
+         <xs:element name="T_PRODUCTION_DATE"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78956-1_T_PRODUCTI"/>
+         <xs:element name="T_BUY_DATE"
+                     type="xs:token"
+                     id="a3A__DEVICES___d5e78957-1_T_BUY_DATE"/>
+         <xs:element name="T_SELLER"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78958-1_T_SELLER"/>
+         <xs:element name="T_OWNER"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78959-1_T_OWNER"/>
+         <xs:element name="T_GUARRANTY_EXPIRE"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78960-1_T_GUARRANT"/>
+         <xs:element name="T_PAPERBOX_LOCATION"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78961-1_T_PAPERBOX"/>
+         <xs:element name="F_BILL_DATE"
+                     type="xs:token"
+                     id="a3A__DEVICES___d5e78962-1_F_BILL_DAT"/>
+         <xs:element name="F_BILL_NUMBER"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78964-1_F_BILL_NUM"/>
+         <xs:element name="F_BILL_POSITION"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78965-1_F_BILL_POS"/>
+         <xs:element name="F_BILL_COST"
+                     type="xs:double"
+                     id="a3A__DEVICES___d5e78966-1_F_BILL_COS"/>
+         <xs:element name="F_MONTHLY_LEASE_COST"
+                     type="xs:double"
+                     id="a3A__DEVICES___d5e78967-1_F_MONTHLY_"/>
+         <xs:element name="F_DEPTECIATION_LENGTH_YEARS"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78968-1_F_DEPTECIA"/>
+         <xs:element name="S_HW" type="xs:string" id="a3A__DEVICES___d5e78969-1_S_HW"/>
+         <xs:element name="CRM_LISTA_ZASOBOW_ID"
+                     type="xs:integer"
+                     id="a3A__DEVICES___d5e78970-1_CRM_LISTA_"/>
+         <xs:element name="CRM_LISTA_ZASOBOW_xpath"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78971-1_CRM_LISTA_"/>
+         <xs:element name="ID_PROJECT"
+                     type="xs:integer"
+                     id="a3A__DEVICES___d5e78972-1_ID_PROJECT"/>
+         <xs:element name="L_APPOITMENT_DATE"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78973-1_L_APPOITME"/>
+         <xs:element name="L_APPOITMENT_USER"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78974-1_L_APPOITME"/>
+         <xs:element name="L_APPOITMENT_PERIOD"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78976-1_L_APPOITME"/>
+         <xs:element name="L_APPOITMENT_INFO"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78977-1_L_APPOITME"/>
+         <xs:element name="L_APPOITMENT_TYPE"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78978-1_L_APPOITME"/>
+         <xs:element name="L_CALENDAR"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78979-1_L_CALENDAR"/>
+         <xs:element name="P_ACCOUNT"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78980-1_P_ACCOUNT"/>
+         <xs:element name="ID_BILLING_USERS"
+                     type="xs:integer"
+                     id="a3A__DEVICES___d5e78981-1_ID_BILLING"/>
+         <xs:element name="ID_SERVICES"
+                     type="xs:integer"
+                     id="a3A__DEVICES___d5e78982-1_ID_SERVICE"/>
+         <xs:element name="A_CLASSIFIED"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78983-1_A_CLASSIFI"/>
+         <xs:element name="ADM_PASSWD"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78984-1_ADM_PASSWD"/>
+         <xs:element name="S_PASSWD"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78985-1_S_PASSWD"/>
+         <xs:element name="SYNC_SQIX_STATUS"
+                     type="xs:string"
+                     id="a3A__DEVICES___d5e78986-1_SYNC_SQIX_"/>
+         <xs:element name="ADMIN_USERS_ID"
+                     type="xs:integer"
+                     id="a3A__DEVICES___d5e78988-1_ADMIN_USER"/>
       </xs:sequence>
    </xs:complexType>
-   <xs:element name="DEVICES" type="default_db__x3A__DEVICES:DEVICES"
-      id="a3A__DEVICES___d5e8568-1_DEVICES"/>
-   <xs:complexType name="MASZYNA" id="a3A__DEVICES___d5e8569-1_MASZYNA">
+   <xs:element name="DEVICES"
+               type="default_db__x3A__DEVICES:DEVICES"
+               id="a3A__DEVICES___d5e78989-1_DEVICES"/>
+   <xs:complexType id="a3A__DEVICES___d5e8569-1_MASZYNA" name="MASZYNA">
       <xs:complexContent id="a3A__DEVICES___d5e8570-1">
          <xs:restriction base="default_db__x3A__DEVICES:DEVICES">
-            <xs:sequence id="a3A__DEVICES___d5e8572-1">
-               <xs:element name="ID" type="xs:int" id="a3A__DEVICES___d5e8573-1_ID" />
-               <xs:element minOccurs="0" name="PARENT_ID" type="xs:int" id="a3A__DEVICES___d5e8564-1_PID1"/>
-               <xs:element name="T_DEVICE_TYPE"
-                  type="default_db__x3A__DEVICES:T_DEVICE_TYPE_maszyna"
-                  id="a3A__DEVICES___d5e8574-1_T_DEVICE_T"/>
-               <xs:element name="T_DEVICE_INFO" type="xs:string"
-                  id="a3A__DEVICES___d5e8575-1_T_DEVICE_I"/>
-               <xs:element name="T_DEVICE_SERIAL" type="xs:string"
-                  id="a3A__DEVICES___d5e8576-1_T_DEVICE_S"/>
-               <xs:element ref="default_db__x3A__DEVICES:DEVICES"
-                  id="a3A__DEVICES___d5e8567-1_T_DEV2">
+            <xs:sequence id="a3A__DEVICES___d5e78994-1">
+               <xs:element ref="SystemObjects__x3A__AccessOwner:AccessOwner"
+                           id="a3A__DEVICES___d5e78995-1">
+                  <xs:annotation>
+                     <xs:appinfo>
+                        <system_cache__appinfo:flat_relation_cache>
+                           <system_cache__appinfo:source system_cache__appinfo:name="L_APPOITMENT_USER"
+                                                         system_cache__appinfo:xpath="SystemObjects__x3A__AccessOwner:AccessOwner/login"/>
+                        </system_cache__appinfo:flat_relation_cache>
+                     </xs:appinfo>
+                  </xs:annotation>
+               </xs:element>
+               <xs:element ref="SystemObjects__x3A__AccessGroup:AccessGroupRead"
+                           id="a3A__DEVICES___d5e79000-1">
                   <xs:annotation>
-                  <xs:appinfo>
-                     <system_cache__appinfo:flat_relation_cache>
-                        <system_cache__appinfo:source system_cache__appinfo:name="ID" system_cache__appinfo:xpath="default_db__x3A__DEVICES:DEVICES/PARENT_ID"/>
-                     </system_cache__appinfo:flat_relation_cache>
-                  </xs:appinfo>
+                     <xs:appinfo>
+                        <system_cache__appinfo:flat_relation_cache>
+                           <system_cache__appinfo:source system_cache__appinfo:name="A_CLASSIFIED"
+                                                         system_cache__appinfo:xpath="SystemObjects__x3A__AccessGroup:AccessGroupRead/uid"/>
+                        </system_cache__appinfo:flat_relation_cache>
+                     </xs:appinfo>
                   </xs:annotation>
                </xs:element>
+               <xs:element ref="SystemObjects__x3A__AccessGroup:AccessGroupWrite"
+                           id="a3A__DEVICES___d5e79005-1">
+                  <xs:annotation>
+                     <xs:appinfo>
+                        <system_cache__appinfo:flat_relation_cache>
+                           <system_cache__appinfo:source system_cache__appinfo:name="A_ADM_COMPANY"
+                                                         system_cache__appinfo:xpath="SystemObjects__x3A__AccessGroup:AccessGroupWrite/uid"/>
+                        </system_cache__appinfo:flat_relation_cache>
+                     </xs:appinfo>
+                  </xs:annotation>
+               </xs:element>
+               <xs:element name="ID" type="xs:integer" id="a3A__DEVICES___d5e79010-1_ID"/>
+               <xs:element name="PARENT_ID"
+                           type="xs:integer"
+                           id="a3A__DEVICES___d5e79011-1_PARENT_ID"/>
+               <xs:element name="A_RECORD_CREATE_DATE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79012-1_A_RECORD_C"/>
+               <xs:element name="A_RECORD_CREATE_AUTHOR"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79013-1_A_RECORD_C"/>
+               <xs:element name="A_RECORD_UPDATE_DATE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79014-1_A_RECORD_U"/>
+               <xs:element name="A_RECORD_UPDATE_AUTHOR"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79015-1_A_RECORD_U"/>
+               <xs:element name="A_PROBLEM"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79016-1_A_PROBLEM"/>
+               <xs:element name="A_PROBLEM_DESC"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79017-1_A_PROBLEM_"/>
+               <xs:element name="A_PROBLEM_DATE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79019-1_A_PROBLEM_"/>
+               <xs:element name="A_STATUS"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79020-1_A_STATUS"/>
+               <xs:element name="A_STATUS_EV"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79021-1_A_STATUS_E"/>
+               <xs:element name="A_STATUS_INFO"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79022-1_A_STATUS_I"/>
+               <xs:element name="A_STATUS_LASTCHANGE_DATE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79023-1_A_STATUS_L"/>
+               <xs:element name="IN7_DZIENNIK_KORESP_ID"
+                           type="xs:integer"
+                           id="a3A__DEVICES___d5e79024-1_IN7_DZIENN"/>
+               <xs:element name="IN7_DZIENNIK_KORESP_ID_ZAMOWIENIE"
+                           type="xs:integer"
+                           id="a3A__DEVICES___d5e79025-1_IN7_DZIENN"/>
+               <xs:element name="A_UPDATE_DATE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79026-1_A_UPDATE_D"/>
+               <xs:element name="A_ADM_COMPANY"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79027-1_A_ADM_COMP"/>
+               <xs:element name="S_ADDRESS_CITY"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79028-1_S_ADDRESS_"/>
+               <xs:element name="S_ADDRESS_POST_CODE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79029-1_S_ADDRESS_"/>
+               <xs:element name="S_ADDRESS_POST_OFFICE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79031-1_S_ADDRESS_"/>
+               <xs:element name="S_ADDRESS_STREET"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79032-1_S_ADDRESS_"/>
+               <xs:element name="S_ADDRESS_HOUSE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79033-1_S_ADDRESS_"/>
+               <xs:element name="S_OTHER_INFO"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79034-1_S_OTHER_IN"/>
+               <xs:element name="S_IP" type="xs:string" id="a3A__DEVICES___d5e79035-1_S_IP"/>
+               <xs:element name="T_NETWORK_SERVER"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79036-1_T_NETWORK_"/>
+               <xs:element name="T_TOPOLOGY_PLACE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79037-1_T_TOPOLOGY"/>
+               <xs:element name="T_DEVICE_SERIAL"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79038-1_T_DEVICE_S"/>
+               <xs:element name="T_DEVICE_TYPE"
+                           type="default_db__x3A__DEVICES:T_DEVICE_TYPE_maszyna"
+                           id="a3A__DEVICES___d5e79039-1_T_DEVICE_T"/>
+               <xs:element name="T_DEVICE_PORTS_OK"
+                           type="xs:integer"
+                           id="a3A__DEVICES___d5e79040-1_T_DEVICE_P"/>
+               <xs:element name="T_DEVICE_INFO"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79041-1_T_DEVICE_I"/>
+               <xs:element name="T_DEVICE_POWER"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79043-1_T_DEVICE_P"/>
+               <xs:element name="T_TELBOX_NEIGHBOUR_IN"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79044-1_T_TELBOX_N"/>
+               <xs:element name="T_TELBOX_NEIGHBOUR_IN_ID"
+                           type="xs:integer"
+                           id="a3A__DEVICES___d5e79045-1_T_TELBOX_N"/>
+               <xs:element name="the_geom"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79046-1_the_geom"/>
+               <xs:element name="T_WORKPOINTS"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79047-1_T_WORKPOIN"/>
+               <xs:element name="T_WORKPOINTS_VALUE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79048-1_T_WORKPOIN"/>
+               <xs:element name="T_WORKPOINTS_TYPE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79049-1_T_WORKPOIN"/>
+               <xs:element name="T_WORKPOINTS_USER"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79050-1_T_WORKPOIN"/>
+               <xs:element name="T_WORKPOINTS_DATE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79051-1_T_WORKPOIN"/>
+               <xs:element name="T_PENALTIES"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79052-1_T_PENALTIE"/>
+               <xs:element name="T_PENALTIES_TYPE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79053-1_T_PENALTIE"/>
+               <xs:element name="T_PENALTIES_VALUE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79055-1_T_PENALTIE"/>
+               <xs:element name="T_WHO_CONNECTED"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79056-1_T_WHO_CONN"/>
+               <xs:element name="T_WHEN_CONNECTED"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79057-1_T_WHEN_CON"/>
+               <xs:element name="T_PRODUCER"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79058-1_T_PRODUCER"/>
+               <xs:element name="T_PRODUCTION_DATE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79059-1_T_PRODUCTI"/>
+               <xs:element name="T_BUY_DATE"
+                           type="xs:token"
+                           id="a3A__DEVICES___d5e79060-1_T_BUY_DATE"/>
+               <xs:element name="T_SELLER"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79061-1_T_SELLER"/>
+               <xs:element name="T_OWNER"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79062-1_T_OWNER"/>
+               <xs:element name="T_GUARRANTY_EXPIRE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79063-1_T_GUARRANT"/>
+               <xs:element name="T_PAPERBOX_LOCATION"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79064-1_T_PAPERBOX"/>
+               <xs:element name="F_BILL_DATE"
+                           type="xs:token"
+                           id="a3A__DEVICES___d5e79065-1_F_BILL_DAT"/>
+               <xs:element name="F_BILL_NUMBER"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79067-1_F_BILL_NUM"/>
+               <xs:element name="F_BILL_POSITION"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79068-1_F_BILL_POS"/>
+               <xs:element name="F_BILL_COST"
+                           type="xs:double"
+                           id="a3A__DEVICES___d5e79069-1_F_BILL_COS"/>
+               <xs:element name="F_MONTHLY_LEASE_COST"
+                           type="xs:double"
+                           id="a3A__DEVICES___d5e79070-1_F_MONTHLY_"/>
+               <xs:element name="F_DEPTECIATION_LENGTH_YEARS"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79071-1_F_DEPTECIA"/>
+               <xs:element name="S_HW" type="xs:string" id="a3A__DEVICES___d5e79072-1_S_HW"/>
+               <xs:element name="CRM_LISTA_ZASOBOW_ID"
+                           type="xs:integer"
+                           id="a3A__DEVICES___d5e79073-1_CRM_LISTA_"/>
+               <xs:element name="CRM_LISTA_ZASOBOW_xpath"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79074-1_CRM_LISTA_"/>
+               <xs:element name="ID_PROJECT"
+                           type="xs:integer"
+                           id="a3A__DEVICES___d5e79075-1_ID_PROJECT"/>
+               <xs:element name="L_APPOITMENT_DATE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79076-1_L_APPOITME"/>
+               <xs:element name="L_APPOITMENT_USER"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79077-1_L_APPOITME"/>
+               <xs:element name="L_APPOITMENT_PERIOD"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79079-1_L_APPOITME"/>
+               <xs:element name="L_APPOITMENT_INFO"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79080-1_L_APPOITME"/>
+               <xs:element name="L_APPOITMENT_TYPE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79081-1_L_APPOITME"/>
+               <xs:element name="L_CALENDAR"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79082-1_L_CALENDAR"/>
+               <xs:element name="P_ACCOUNT"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79083-1_P_ACCOUNT"/>
+               <xs:element name="ID_BILLING_USERS"
+                           type="xs:integer"
+                           id="a3A__DEVICES___d5e79084-1_ID_BILLING"/>
+               <xs:element name="ID_SERVICES"
+                           type="xs:integer"
+                           id="a3A__DEVICES___d5e79085-1_ID_SERVICE"/>
+               <xs:element name="A_CLASSIFIED"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79086-1_A_CLASSIFI"/>
+               <xs:element name="ADM_PASSWD"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79087-1_ADM_PASSWD"/>
+               <xs:element name="S_PASSWD"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79088-1_S_PASSWD"/>
+               <xs:element name="SYNC_SQIX_STATUS"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79089-1_SYNC_SQIX_"/>
+               <xs:element name="ADMIN_USERS_ID"
+                           type="xs:integer"
+                           id="a3A__DEVICES___d5e79091-1_ADMIN_USER"/>
             </xs:sequence>
          </xs:restriction>
       </xs:complexContent>
    </xs:complexType>
-   <xs:element name="MASZYNA" type="default_db__x3A__DEVICES:MASZYNA"
-      id="a3A__DEVICES___d5e8577-1_MASZYNA"/>
-   <xs:complexType name="FORMA" id="a3A__DEVICES___d5e8578-1_FORMA">
+   <xs:element id="a3A__DEVICES___d5e8586-1_FORMA"
+               name="FORMA"
+               type="default_db__x3A__DEVICES:FORMA"/>
+   <xs:complexType id="a3A__DEVICES___d5e8578-1_FORMA" name="FORMA">
       <xs:complexContent id="a3A__DEVICES___d5e8579-1">
          <xs:restriction base="default_db__x3A__DEVICES:DEVICES">
-            <xs:sequence id="a3A__DEVICES___d5e8581-1">
-               <xs:element name="ID" type="xs:int" id="a3A__DEVICES___d5e8582-1_ID"/>
-               <xs:element minOccurs="0" name="PARENT_ID" type="xs:int" id="a3A__DEVICES___d5e8564-1_PID2"/>
-               <xs:element name="T_DEVICE_TYPE" type="default_db__x3A__DEVICES:T_DEVICE_TYPE_forma"
-                  id="a3A__DEVICES___d5e8583-1_T_DEVICE_T"/>
-               <xs:element name="T_DEVICE_INFO" type="xs:string"
-                  id="a3A__DEVICES___d5e8584-1_T_DEVICE_I"/>
-               <xs:element name="T_DEVICE_SERIAL" type="xs:string"
-                  id="a3A__DEVICES___d5e8585-1_T_DEVICE_S"/>
-               <xs:element ref="default_db__x3A__DEVICES:DEVICES"
-                  id="a3A__DEVICES___d5e8567-1_T_DEV3">
+            <xs:sequence id="a3A__DEVICES___d5e79096-1">
+               <xs:element ref="SystemObjects__x3A__AccessOwner:AccessOwner"
+                           id="a3A__DEVICES___d5e79097-1">
                   <xs:annotation>
                      <xs:appinfo>
                         <system_cache__appinfo:flat_relation_cache>
-                           <system_cache__appinfo:source system_cache__appinfo:name="ID" system_cache__appinfo:xpath="default_db__x3A__DEVICES:DEVICES/PARENT_ID"/>
+                           <system_cache__appinfo:source system_cache__appinfo:name="L_APPOITMENT_USER"
+                                                         system_cache__appinfo:xpath="SystemObjects__x3A__AccessOwner:AccessOwner/login"/>
                         </system_cache__appinfo:flat_relation_cache>
                      </xs:appinfo>
                   </xs:annotation>
                </xs:element>
+               <xs:element ref="SystemObjects__x3A__AccessGroup:AccessGroupRead"
+                           id="a3A__DEVICES___d5e79102-1">
+                  <xs:annotation>
+                     <xs:appinfo>
+                        <system_cache__appinfo:flat_relation_cache>
+                           <system_cache__appinfo:source system_cache__appinfo:name="A_CLASSIFIED"
+                                                         system_cache__appinfo:xpath="SystemObjects__x3A__AccessGroup:AccessGroupRead/uid"/>
+                        </system_cache__appinfo:flat_relation_cache>
+                     </xs:appinfo>
+                  </xs:annotation>
+               </xs:element>
+               <xs:element ref="SystemObjects__x3A__AccessGroup:AccessGroupWrite"
+                           id="a3A__DEVICES___d5e79107-1">
+                  <xs:annotation>
+                     <xs:appinfo>
+                        <system_cache__appinfo:flat_relation_cache>
+                           <system_cache__appinfo:source system_cache__appinfo:name="A_ADM_COMPANY"
+                                                         system_cache__appinfo:xpath="SystemObjects__x3A__AccessGroup:AccessGroupWrite/uid"/>
+                        </system_cache__appinfo:flat_relation_cache>
+                     </xs:appinfo>
+                  </xs:annotation>
+               </xs:element>
+               <xs:element name="ID" type="xs:integer" id="a3A__DEVICES___d5e79112-1_ID"/>
+               <xs:element name="PARENT_ID"
+                           type="xs:integer"
+                           id="a3A__DEVICES___d5e79113-1_PARENT_ID"/>
+               <xs:element name="A_RECORD_CREATE_DATE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79114-1_A_RECORD_C"/>
+               <xs:element name="A_RECORD_CREATE_AUTHOR"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79115-1_A_RECORD_C"/>
+               <xs:element name="A_RECORD_UPDATE_DATE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79116-1_A_RECORD_U"/>
+               <xs:element name="A_RECORD_UPDATE_AUTHOR"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79117-1_A_RECORD_U"/>
+               <xs:element name="A_PROBLEM"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79118-1_A_PROBLEM"/>
+               <xs:element name="A_PROBLEM_DESC"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79119-1_A_PROBLEM_"/>
+               <xs:element name="A_PROBLEM_DATE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79121-1_A_PROBLEM_"/>
+               <xs:element name="A_STATUS"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79122-1_A_STATUS"/>
+               <xs:element name="A_STATUS_EV"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79123-1_A_STATUS_E"/>
+               <xs:element name="A_STATUS_INFO"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79124-1_A_STATUS_I"/>
+               <xs:element name="A_STATUS_LASTCHANGE_DATE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79125-1_A_STATUS_L"/>
+               <xs:element name="IN7_DZIENNIK_KORESP_ID"
+                           type="xs:integer"
+                           id="a3A__DEVICES___d5e79126-1_IN7_DZIENN"/>
+               <xs:element name="IN7_DZIENNIK_KORESP_ID_ZAMOWIENIE"
+                           type="xs:integer"
+                           id="a3A__DEVICES___d5e79127-1_IN7_DZIENN"/>
+               <xs:element name="A_UPDATE_DATE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79128-1_A_UPDATE_D"/>
+               <xs:element name="A_ADM_COMPANY"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79129-1_A_ADM_COMP"/>
+               <xs:element name="S_ADDRESS_CITY"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79130-1_S_ADDRESS_"/>
+               <xs:element name="S_ADDRESS_POST_CODE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79131-1_S_ADDRESS_"/>
+               <xs:element name="S_ADDRESS_POST_OFFICE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79133-1_S_ADDRESS_"/>
+               <xs:element name="S_ADDRESS_STREET"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79134-1_S_ADDRESS_"/>
+               <xs:element name="S_ADDRESS_HOUSE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79135-1_S_ADDRESS_"/>
+               <xs:element name="S_OTHER_INFO"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79136-1_S_OTHER_IN"/>
+               <xs:element name="S_IP" type="xs:string" id="a3A__DEVICES___d5e79137-1_S_IP"/>
+               <xs:element name="T_NETWORK_SERVER"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79138-1_T_NETWORK_"/>
+               <xs:element name="T_TOPOLOGY_PLACE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79139-1_T_TOPOLOGY"/>
+               <xs:element name="T_DEVICE_SERIAL"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79140-1_T_DEVICE_S"/>
+               <xs:element name="T_DEVICE_TYPE"
+                           type="default_db__x3A__DEVICES:T_DEVICE_TYPE_forma"
+                           id="a3A__DEVICES___d5e79141-1_T_DEVICE_T"/>
+               <xs:element name="T_DEVICE_PORTS_OK"
+                           type="xs:integer"
+                           id="a3A__DEVICES___d5e79142-1_T_DEVICE_P"/>
+               <xs:element name="T_DEVICE_INFO"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79143-1_T_DEVICE_I"/>
+               <xs:element name="T_DEVICE_POWER"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79145-1_T_DEVICE_P"/>
+               <xs:element name="T_TELBOX_NEIGHBOUR_IN"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79146-1_T_TELBOX_N"/>
+               <xs:element name="T_TELBOX_NEIGHBOUR_IN_ID"
+                           type="xs:integer"
+                           id="a3A__DEVICES___d5e79147-1_T_TELBOX_N"/>
+               <xs:element name="the_geom"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79148-1_the_geom"/>
+               <xs:element name="T_WORKPOINTS"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79149-1_T_WORKPOIN"/>
+               <xs:element name="T_WORKPOINTS_VALUE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79150-1_T_WORKPOIN"/>
+               <xs:element name="T_WORKPOINTS_TYPE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79151-1_T_WORKPOIN"/>
+               <xs:element name="T_WORKPOINTS_USER"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79152-1_T_WORKPOIN"/>
+               <xs:element name="T_WORKPOINTS_DATE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79153-1_T_WORKPOIN"/>
+               <xs:element name="T_PENALTIES"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79154-1_T_PENALTIE"/>
+               <xs:element name="T_PENALTIES_TYPE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79155-1_T_PENALTIE"/>
+               <xs:element name="T_PENALTIES_VALUE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79157-1_T_PENALTIE"/>
+               <xs:element name="T_WHO_CONNECTED"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79158-1_T_WHO_CONN"/>
+               <xs:element name="T_WHEN_CONNECTED"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79159-1_T_WHEN_CON"/>
+               <xs:element name="T_PRODUCER"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79160-1_T_PRODUCER"/>
+               <xs:element name="T_PRODUCTION_DATE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79161-1_T_PRODUCTI"/>
+               <xs:element name="T_BUY_DATE"
+                           type="xs:token"
+                           id="a3A__DEVICES___d5e79162-1_T_BUY_DATE"/>
+               <xs:element name="T_SELLER"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79163-1_T_SELLER"/>
+               <xs:element name="T_OWNER"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79164-1_T_OWNER"/>
+               <xs:element name="T_GUARRANTY_EXPIRE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79165-1_T_GUARRANT"/>
+               <xs:element name="T_PAPERBOX_LOCATION"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79166-1_T_PAPERBOX"/>
+               <xs:element name="F_BILL_DATE"
+                           type="xs:token"
+                           id="a3A__DEVICES___d5e79167-1_F_BILL_DAT"/>
+               <xs:element name="F_BILL_NUMBER"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79169-1_F_BILL_NUM"/>
+               <xs:element name="F_BILL_POSITION"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79170-1_F_BILL_POS"/>
+               <xs:element name="F_BILL_COST"
+                           type="xs:double"
+                           id="a3A__DEVICES___d5e79171-1_F_BILL_COS"/>
+               <xs:element name="F_MONTHLY_LEASE_COST"
+                           type="xs:double"
+                           id="a3A__DEVICES___d5e79172-1_F_MONTHLY_"/>
+               <xs:element name="F_DEPTECIATION_LENGTH_YEARS"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79173-1_F_DEPTECIA"/>
+               <xs:element name="S_HW" type="xs:string" id="a3A__DEVICES___d5e79174-1_S_HW"/>
+               <xs:element name="CRM_LISTA_ZASOBOW_ID"
+                           type="xs:integer"
+                           id="a3A__DEVICES___d5e79175-1_CRM_LISTA_"/>
+               <xs:element name="CRM_LISTA_ZASOBOW_xpath"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79176-1_CRM_LISTA_"/>
+               <xs:element name="ID_PROJECT"
+                           type="xs:integer"
+                           id="a3A__DEVICES___d5e79177-1_ID_PROJECT"/>
+               <xs:element name="L_APPOITMENT_DATE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79178-1_L_APPOITME"/>
+               <xs:element name="L_APPOITMENT_USER"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79179-1_L_APPOITME"/>
+               <xs:element name="L_APPOITMENT_PERIOD"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79181-1_L_APPOITME"/>
+               <xs:element name="L_APPOITMENT_INFO"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79182-1_L_APPOITME"/>
+               <xs:element name="L_APPOITMENT_TYPE"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79183-1_L_APPOITME"/>
+               <xs:element name="L_CALENDAR"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79184-1_L_CALENDAR"/>
+               <xs:element name="P_ACCOUNT"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79185-1_P_ACCOUNT"/>
+               <xs:element name="ID_BILLING_USERS"
+                           type="xs:integer"
+                           id="a3A__DEVICES___d5e79186-1_ID_BILLING"/>
+               <xs:element name="ID_SERVICES"
+                           type="xs:integer"
+                           id="a3A__DEVICES___d5e79187-1_ID_SERVICE"/>
+               <xs:element name="A_CLASSIFIED"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79188-1_A_CLASSIFI"/>
+               <xs:element name="ADM_PASSWD"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79189-1_ADM_PASSWD"/>
+               <xs:element name="S_PASSWD"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79190-1_S_PASSWD"/>
+               <xs:element name="SYNC_SQIX_STATUS"
+                           type="xs:string"
+                           id="a3A__DEVICES___d5e79191-1_SYNC_SQIX_"/>
+               <xs:element name="ADMIN_USERS_ID"
+                           type="xs:integer"
+                           id="a3A__DEVICES___d5e79193-1_ADMIN_USER"/>
             </xs:sequence>
          </xs:restriction>
       </xs:complexContent>
    </xs:complexType>
-   <xs:element name="FORMA" type="default_db__x3A__DEVICES:FORMA"
-      id="a3A__DEVICES___d5e8586-1_FORMA"/>
+   <xs:element id="a3A__DEVICES___d5e8577-1_MASZYNA"
+               name="MASZYNA"
+               type="default_db__x3A__DEVICES:MASZYNA"/>
 </xs:schema>

+ 1 - 1
SE/schema/build.p5build.GLOBALS.xml

@@ -8,5 +8,5 @@
     <property name="mysql" value="mysql"/>
     <property name="mysqldump" value="mysqldump"/>
     <property name="PATH_ADD" value="/opt/local/bin:/usr/bin:/bin"/> <!-- to use in mapserver_gml_to_png ant kw -->
-    
+    <property name="chown" location="/usr/sbin/chown"/>
 </project>

+ 4 - 0
SE/schema/config/build.p5build_SE.SYSTEM.local-root.xml

@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project basedir="/Users/a.binder/Documents/xmlschema_procesy5/src-xmlschema/public_html" name="build_SE.SYSTEM.local-root">
+  <property name="p5build_SE.SYSTEM.local-root" value="root" />
+</project>

+ 4 - 0
SE/schema/config/build.p5build_SE.SYSTEM.local-user.xml

@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project basedir="/Users/a.binder/Documents/xmlschema_procesy5/src-xmlschema/public_html" name="build_SE.SYSTEM.local-user">
+  <property name="p5build_SE.SYSTEM.local-user" value="server" />
+</project>

+ 17 - 0
SE/schema/default_db_xml_cache.public/ant/ant.xsd

@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
+    xmlns:xp5r="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache.public/xinclude_p5_recurse/xinclude_p5_recurse.xsd"
+    xmlns:p5ant="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache.public/ant/ant.xsd"
+    vc:minVersion="1.1" xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning"
+    targetNamespace="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache.public/ant/ant.xsd"
+    xmlns:p5ant-interface="http://biuro.biall-net.pl/xmlschema_procesy5/WPS_Functions/ant_interface/ant_interface.xsd">
+    <xs:annotation>
+        <xs:documentation>To document input/output functions for mainly generate documentations and test functionability</xs:documentation>
+    </xs:annotation>
+    <xs:include
+        
+        schemaLocation="../../WPS_Functions/documentation_generator/repository/p5dg.documentation.files.antstructure.xsd"/>
+    <xs:import
+        namespace="http://biuro.biall-net.pl/xmlschema_procesy5/WPS_Functions/ant_interface/ant_interface.xsd"
+        schemaLocation="../../WPS_Functions/ant_interface/ant_interface.xsd"/>
+</xs:schema>

+ 18 - 0
SE/schema/default_db_xml_cache.public/build/default_db.xsd

@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
+    targetNamespace="http://biuro.biall-net.pl/xmlschema_procesy5/default_db/" vc:minVersion="1.1"
+    xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning"
+    xmlns:SystemObjects__x3A__File="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/File.xsd"
+    xmlns:system_cache__appinfo="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd"
+    xmlns:default_db="http://biuro.biall-net.pl/xmlschema_procesy5/default_db/">
+    <!--<xs:import schemaLocation="../namespaceNode.xsd"
+        namespace="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd"/>-->
+    <xs:annotation>
+        <xs:documentation>Definicja struktury informacji w schematach domyslnych, trzymanych w katalogu /default_db/</xs:documentation>
+    </xs:annotation>
+    <xs:import
+        namespace="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd"
+        schemaLocation="../appinfo.xsd"/>
+    <xs:element name="schema-file" type="system_cache__appinfo:schema-file"/>
+    <xs:element name="schema" type="system_cache__appinfo:schema"/>
+</xs:schema>

+ 18 - 0
SE/schema/default_db_xml_cache.public/build/external_schema_id_namespace_prefix.xsd

@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
+    targetNamespace="http://biuro.biall-net.pl/xmlschema_procesy5/external_schema_id_namespace_prefix/"
+    vc:minVersion="1.1" xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning"
+    xmlns:SystemObjects__x3A__File="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/File.xsd"
+    xmlns:system_cache__appinfo="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd"
+    xmlns:external_schema_id_namespace_prefix="http://biuro.biall-net.pl/xmlschema_procesy5/external_schema_id_namespace_prefix/">
+    <!--<xs:import schemaLocation="../namespaceNode.xsd"
+        namespace="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd"/>-->
+    <xs:annotation>
+        <xs:documentation>Definicja struktury informacji w schematach domyslnych, trzymanych w katalogu /external_schema_id_namespace_prefix</xs:documentation>
+    </xs:annotation>
+    <xs:import
+        namespace="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd"
+        schemaLocation="../appinfo.xsd"/>
+    <xs:element name="schema-file" type="system_cache__appinfo:schema-file"/>
+    <xs:element name="schema" type="system_cache__appinfo:schema"/>
+</xs:schema>

+ 18 - 0
SE/schema/default_db_xml_cache.public/build/table.xsd

@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
+    targetNamespace="http://biuro.biall-net.pl/xmlschema_procesy5/table/" vc:minVersion="1.1"
+    xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning"
+    xmlns:SystemObjects__x3A__File="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/File.xsd"
+    xmlns:system_cache__appinfo="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd"
+    xmlns:get_all_xsd="http://biuro.biall-net.pl/xmlschema_procesy5/table/">
+    <!--<xs:import schemaLocation="../namespaceNode.xsd"
+        namespace="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd"/>-->
+    <xs:annotation>
+        <xs:documentation>Definicja struktury informacji w schematach domyslnych, trzymanych w katalogu /table</xs:documentation>
+    </xs:annotation>
+    <xs:import
+        namespace="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd"
+        schemaLocation="../appinfo.xsd"/>
+    <xs:element name="schema-file" type="system_cache__appinfo:schema-file"/>
+    <xs:element name="schema" type="system_cache__appinfo:schema"/>
+</xs:schema>

+ 3 - 3
SE/schema/default_db_xml_cache.public/default_db/dateTime.xsl

@@ -18,15 +18,15 @@
         <xsl:choose>
             
             <xsl:when test="string($date) castable as xs:dateTime">
-                <xsl:message>#20 passed as dateTime</xsl:message>
+                <!--<xsl:message>#20 passed as dateTime</xsl:message>-->
                 <xsl:value-of select="format-date(xs:date(xs:dateTime($date)),'[Y]')"/>
             </xsl:when>
             <xsl:when test="string($date) castable as xs:date">
-                <xsl:message>#20 passed as date</xsl:message>
+                <!--<xsl:message>#20 passed as date</xsl:message>-->
                 <xsl:value-of select="format-date(xs:date($date),'[Y]')"/>
             </xsl:when>
             <xsl:when test="tokenize(string($date),'\.')[3]">
-                <xsl:message>#20 passed as tokenize</xsl:message>
+                <!--<xsl:message>#20 date passed as tokenize</xsl:message>-->
                 <xsl:value-of select="tokenize($date,'\.')[3]"/>
             </xsl:when>
             <xsl:otherwise>

+ 68 - 0
SE/schema/default_db_xml_cache.public/maven-simpleType.xsd

@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
+    targetNamespace="http://maven.apache.org/POM/4.0.0" vc:minVersion="1.1"
+    xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning"
+    xmlns:maven="http://maven.apache.org/POM/4.0.0">
+    <xs:redefine schemaLocation="https://maven.apache.org/xsd/maven-4.0.0.xsd"/>
+    <xs:simpleType name="downloadUrl">
+        <xs:restriction base="xs:string"/>
+    </xs:simpleType>
+    <xs:simpleType name="url">
+        <xs:restriction base="xs:string"/>
+    </xs:simpleType>
+    <xs:simpleType name="version">
+        <xs:restriction base="xs:string"/>
+    </xs:simpleType>
+    <xs:simpleType name="conf.dir">
+        <xs:restriction base="xs:string"/>
+    </xs:simpleType>
+    <xs:simpleType name="deploy.dir">
+        <xs:restriction base="xs:string"/>
+    </xs:simpleType>
+    <xs:simpleType name="data.dir">
+        <xs:restriction base="xs:string"/>
+    </xs:simpleType>
+    <xs:simpleType name="home">
+        <xs:annotation>
+            <xs:documentation>alias for  basedir option in SE build style modules</xs:documentation>
+        </xs:annotation>
+        <xs:restriction base="xs:string"/>
+    </xs:simpleType>
+    <xs:complexType name="driver">
+        <xs:sequence>
+            <xs:element name="jar">
+                <xs:complexType>
+                    <xs:sequence>
+                        <xs:element name="name" type="maven:name"/>
+                    </xs:sequence>
+                </xs:complexType>
+            </xs:element>
+            <xs:element name="download">
+                <xs:complexType>
+                    <xs:sequence>
+                        <xs:element name="url" type="maven:downloadUrl"/>
+                    </xs:sequence>
+                </xs:complexType>
+            </xs:element>
+        </xs:sequence>
+    </xs:complexType>
+    <xs:element name="driver" type="maven:driver"/>
+    <xs:simpleType name="parent">
+        <xs:restriction base="xs:string"/>
+    </xs:simpleType>
+    <xs:simpleType name="name">
+        <xs:restriction base="xs:string"/>
+    </xs:simpleType>
+    <xs:simpleType name="groupId">
+        <xs:restriction base="maven:name"/>
+    </xs:simpleType>
+    <xs:simpleType name="artifactId">
+        <xs:restriction base="maven:name"/>
+    </xs:simpleType>
+    <xs:simpleType name="configuration">
+        <xs:restriction base="xs:string"/>
+    </xs:simpleType>
+    <xs:simpleType name="configuration.dir">
+        <xs:restriction base="xs:string"/>
+    </xs:simpleType>
+</xs:schema>

+ 45 - 7
SE/schema/default_db_xml_cache.public/system_cache__appinfo/PRODUCT.xsd

@@ -3,13 +3,18 @@
     xmlns:system_cache__appinfo="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd"
     vc:minVersion="1.1" xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning"
     xmlns:SystemObjects__x3A__File="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/File.xsd"
-    targetNamespace="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd">
+    targetNamespace="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd"
+    xmlns:maven="http://maven.apache.org/POM/4.0.0">
     <xs:annotation>
-        <xs:documentation>To define in system schema transformations rules for targetNamespace and prefixes in object modelling</xs:documentation>
+        <xs:documentation>To define in system schema transformations rules for targetNamespace and prefixes in object modelling.
+
+Should be trasformed into $$product.xml in maven style preferences</xs:documentation>
     </xs:annotation>
     <xs:import namespace="https://biuro.biall-net.pl/wfs/default_db/SystemObjects/File.xsd"
         schemaLocation="../../SystemObjects/File.xsd"/>
     <xs:include schemaLocation="SERVER.xsd"/>
+    <xs:import namespace="http://maven.apache.org/POM/4.0.0"
+        schemaLocation="../maven-simpleType.xsd"/>
     <xs:group name="PRODUCT">
         <xs:sequence>
             <xs:element name="name" type="system_cache__appinfo:name"/>
@@ -28,16 +33,25 @@
         <xs:sequence>
             <xs:element minOccurs="0" name="project.basedir"
                 type="system_cache__appinfo:project.basedir"/>
-            <xs:element name="name" type="system_cache__appinfo:name"/>
+            <xs:element name="name" type="maven:name"/>
             <xs:element name="vendor-domain" type="system_cache__appinfo:vendor-domain"/>
+            <xs:element name="prefix" type="system_cache__appinfo:prefix"/>
+            <xs:element name="namespace" type="system_cache__appinfo:namespace"/>
             <xs:element name="basedir" type="system_cache__appinfo:basedir"/>
             <xs:element name="temp" type="system_cache__appinfo:temp"/>
             <xs:element name="repository" type="system_cache__appinfo:repository"/>
+            <xs:element name="configuration.dir" minOccurs="0" type="maven:configuration.dir"/>
             <xs:element name="build">
                 <xs:simpleType>
                     <xs:restriction base="SystemObjects__x3A__File:FilePath"/>
                 </xs:simpleType>
             </xs:element>
+            <xs:element name="version" type="system_cache__appinfo:version"/>
+            <xs:element minOccurs="0" name="xsl" type="system_cache__appinfo:xsl"/>
+            <xs:choice>
+                <xs:element name="parent" type="system_cache__appinfo:PARENT"/>
+                <xs:element name="root_module" type="system_cache__appinfo:root_module"/>
+            </xs:choice>
         </xs:sequence>
     </xs:complexType>
     <xs:complexType name="GLOBALS">
@@ -67,20 +81,29 @@
             <xs:element name="StandardErrorPath" type="SystemObjects__x3A__File:FilePath"/>
         </xs:sequence>
     </xs:group>
+    <xs:complexType name="PARENT">
+        <xs:complexContent>
+            <xs:extension base="maven:Parent">
+                <xs:all>
+                    <xs:element name="name" type="maven:name"/>
+                </xs:all>
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
     <xs:simpleType name="name">
-        <xs:restriction base="xs:string"/>
+        <xs:restriction base="maven:name"/>
     </xs:simpleType>
     <xs:simpleType name="vendor-domain">
-        <xs:restriction base="xs:string"/>
+        <xs:restriction base="maven:artifactId"/>
     </xs:simpleType>
     <xs:simpleType name="basedir">
-        <xs:restriction base="SystemObjects__x3A__File:DirPath"/>
+        <xs:restriction base="maven:home"/>
     </xs:simpleType>
     <xs:simpleType name="temp">
         <xs:restriction base="SystemObjects__x3A__File:DirPath"/>
     </xs:simpleType>
     <xs:simpleType name="repository">
-        <xs:restriction base="SystemObjects__x3A__File:DirPath"/>
+        <xs:restriction base="maven:data.dir"/>
     </xs:simpleType>
     <xs:simpleType name="PATH_ADD">
         <xs:annotation>
@@ -100,4 +123,19 @@
         </xs:annotation>
         <xs:restriction base="SystemObjects__x3A__File:DirPath"/>
     </xs:simpleType>
+    <xs:simpleType name="version">
+        <xs:restriction base="maven:version"/>
+    </xs:simpleType>
+    <xs:simpleType name="prefix">
+        <xs:restriction base="xs:string"/>
+    </xs:simpleType>
+    <xs:simpleType name="namespace">
+        <xs:restriction base="xs:anyURI"/>
+    </xs:simpleType>
+    <xs:simpleType name="xsl">
+        <xs:restriction base="xs:string"/>
+    </xs:simpleType>
+    <xs:simpleType name="root_module">
+        <xs:restriction base="xs:boolean"/>
+    </xs:simpleType>
 </xs:schema>

+ 85 - 0
SE/schema/default_db_xml_cache.public/system_cache__appinfo/PRODUCT.xsl

@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+    xmlns:xs="http://www.w3.org/2001/XMLSchema"
+    xmlns:maven="http://maven.apache.org/POM/4.0.0"
+    xmlns:system_cache__appinfo="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd"
+    xmlns:graph="http://biuro.biall-net.pl/xmlschema_procesy5/WPS_Functions/graph/graph.xsd"
+    exclude-result-prefixes="xs"
+    version="2.0">
+    
+    <xsl:output indent="yes"/>
+    
+    <xsl:strip-space elements="*"/>
+    
+    <xsl:param name="PRODUCT.xsd" select="'PRODUCT.xsd'"/>
+    
+    <xsl:param name="project.basedir" required="yes"/> <!-- it is for project basedir - for detecting relatives from include properties etc..  -->
+    
+    
+    <xsl:template mode="maven:server" match="graph:graph-to-analyze-evaluated.xml">
+        <maven:server>
+            <xsl:apply-templates mode="maven:root_module.PRODUCT"/>
+        </maven:server>
+    </xsl:template>
+    
+    <xsl:template match="text()|comment()" mode="maven:root_module.PRODUCT"/>
+    
+    <xsl:template mode="maven:root_module.PRODUCT" match="*">
+        <xsl:apply-templates mode="#current"/>
+    </xsl:template>
+    
+    <xsl:template mode="maven:root_module.PRODUCT" match="property[ contains(@name,'PRODUCT.root_module')]">
+        <!--<xsl:copy-of select="."/>-->
+        <xsl:variable name="name.part" select=" substring-before(@name,'.')"/>
+        <xsl:variable name="prefix" select="../property[@name=concat($name.part,'.PRODUCT.prefix')]/concat(@value,@location)"/>
+        <maven:root_module.PRODUCT>
+            <name><xsl:value-of select="../property[@name=concat($name.part,'.PRODUCT.name')]/concat(@value,@location)"/></name>
+            <vendor-domain><xsl:value-of select="../property[@name=concat($name.part,'.PRODUCT.vendor-domain')]/concat(@value,@location)"/></vendor-domain>
+            <prefix><xsl:value-of select="$prefix"/></prefix>
+            <namespace><xsl:value-of select="../property[@name=concat($name.part,'.PRODUCT.namespace')]/concat(@value,@location)"/></namespace>
+            <basedir><xsl:value-of select="../property[@name=concat($name.part,'.basedir')]/concat(@value,@location)"/></basedir>
+            <build><xsl:value-of select="../property[@name=concat($name.part,'.build')]/concat(@value,@location)"/></build>
+            <temp><xsl:value-of select="../property[@name=concat($name.part,'.temp')]/concat(@value,@location)"/></temp>
+            <repository><xsl:value-of select="../property[@name=concat($name.part,'.repository')]/concat(@value,@location)"/></repository>
+            <configuration.dir><xsl:value-of select="../property[@name=concat($name.part,'.configuration.dir')]/concat(@value,@location)"/></configuration.dir>
+        </maven:root_module.PRODUCT>
+    </xsl:template>
+    
+    <!-- to be generated in maven style like that:
+    
+    <project>
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>com.vogella.build.maven.java</groupId>
+    <artifactId>com.vogella.build.maven.java</artifactId>
+    <packaging>jar</packaging>
+    <version>1.0-SNAPSHOT</version>
+    <name>com.vogella.build.maven.java</name>
+    <url>http://maven.apache.org</url>
+    <dependencies>
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <version>3.8.1</version>
+            <scope>test</scope>
+        </dependency>
+    </dependencies>
+</project>
+    
+    default locations for MODULE name ${module}
+     with prefix of module name ${prefix}
+    
+ 
+   /MODULE/build_${module}.xml -   main build:
+   /MODULE/build.${prefix}.PRODUCT.xml  - product properties and build for it
+   /MODULE/build.${prefix}.SYSTEM.xml  - system properties and build for it
+   /MODULE/build.${prefix}.SERVER.xml  - optional server properties and build for it
+
+  aliases  - home = basedir
+
+    -->
+    
+    
+    
+    
+    
+</xsl:stylesheet>

+ 53 - 0
SE/schema/default_db_xml_cache.public/system_cache__appinfo/heritage.instance.xml

@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<system_cache__appinfo:heritage xmlns:system_cache__appinfo="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd"
+ xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd file:/Users/a.binder/Documents/xmlschema_procesy5/src-xmlschema/public_html/default_db_xml_cache.public/system_cache__appinfo/heritage.xsd">
+<!--    <system_cache__appinfo:exherit_all system_cache__appinfo:heritage_acl="false" system_cache__appinfo:heritage_sort="false">
+        <system_cache__appinfo:acl_rule_local_inherit system_cache__appinfo:acl_rule_inherit_local_element_name="acl_rule_inherit_local_element_name0" system_cache__appinfo:acl_rule_exherit_local_element_name="acl_rule_exherit_local_element_name0"
+             system_cache__appinfo:acl_rule_inherit_acl_set=""/>
+        <system_cache__appinfo:acl_rule_inherit_to_all_refs_by_primary>
+        </system_cache__appinfo:acl_rule_inherit_to_all_refs_by_primary>
+    </system_cache__appinfo:exherit_all>-->
+    <system_cache__appinfo:exherit system_cache__appinfo:exherit_ref="exherit_ref0" system_cache__appinfo:heritage_sort="false" system_cache__appinfo:heritage_acl="false">
+<!--        <system_cache__appinfo:acl_rule_inherit_to_all_refs_by_primary>
+        </system_cache__appinfo:acl_rule_inherit_to_all_refs_by_primary>-->
+<!--        <system_cache__appinfo:acl_rule_inherit_to_single_refs_by_primary acl_rule_exherit_local_element_name="acl_rule_exherit_local_element_name0"/>-->
+<!--        <system_cache__appinfo:acl_rule_local_inherit system_cache__appinfo:acl_rule_inherit_local_element_name="acl_rule_inherit_local_element_name1" system_cache__appinfo:acl_rule_exherit_local_element_name="acl_rule_exherit_local_element_name1"
+             system_cache__appinfo:acl_rule_inherit_acl_set=""/>-->
+        <system_cache__appinfo:acl_rule_inherit_to_all_refs_by_local_element system_cache__appinfo:acl_rule_inherit_local_element_name="acl_rule_inherit_local_element_name2" system_cache__appinfo:acl_rule_inherit_acl_set=""/>
+<!--        <system_cache__appinfo:acl_rule_inherit_to_single_refs_by_local_element system_cache__appinfo:acl_rule_inherit_local_element_name="acl_rule_inherit_local_element_name3" system_cache__appinfo:acl_rule_exherit_local_element_name="acl_rule_exherit_local_element_name2"
+             system_cache__appinfo:acl_rule_inherit_acl_set=""/>-->
+        <system_cache__appinfo:acl_rule_inherit_to_all_refs_by_primary>
+        </system_cache__appinfo:acl_rule_inherit_to_all_refs_by_primary>
+<!--        <system_cache__appinfo:acl_rule_inherit_to_single_refs_by_primary acl_rule_exherit_local_element_name="acl_rule_exherit_local_element_name1"/>-->
+<!--        <system_cache__appinfo:acl_rule_local_inherit system_cache__appinfo:acl_rule_inherit_local_element_name="acl_rule_inherit_local_element_name4" system_cache__appinfo:acl_rule_exherit_local_element_name="acl_rule_exherit_local_element_name3"
+             system_cache__appinfo:acl_rule_inherit_acl_set=""/>-->
+<!--        <system_cache__appinfo:acl_rule_inherit_to_all_refs_by_local_element system_cache__appinfo:acl_rule_inherit_local_element_name="acl_rule_inherit_local_element_name5" system_cache__appinfo:acl_rule_inherit_acl_set=""/>-->
+<!--        <system_cache__appinfo:acl_rule_inherit_to_single_refs_by_local_element system_cache__appinfo:acl_rule_inherit_local_element_name="acl_rule_inherit_local_element_name6" system_cache__appinfo:acl_rule_exherit_local_element_name="acl_rule_exherit_local_element_name4"
+             system_cache__appinfo:acl_rule_inherit_acl_set=""/>-->
+    </system_cache__appinfo:exherit>
+    <system_cache__appinfo:exherit system_cache__appinfo:exherit_ref="exherit_ref1" system_cache__appinfo:heritage_sort="false" system_cache__appinfo:heritage_acl="false">
+<!--        <system_cache__appinfo:acl_rule_inherit_to_all_refs_by_primary>
+        </system_cache__appinfo:acl_rule_inherit_to_all_refs_by_primary>-->
+<!--        <system_cache__appinfo:acl_rule_inherit_to_single_refs_by_primary acl_rule_exherit_local_element_name="acl_rule_exherit_local_element_name2"/>-->
+<!--        <system_cache__appinfo:acl_rule_local_inherit system_cache__appinfo:acl_rule_inherit_local_element_name="acl_rule_inherit_local_element_name7" system_cache__appinfo:acl_rule_exherit_local_element_name="acl_rule_exherit_local_element_name5"
+             system_cache__appinfo:acl_rule_inherit_acl_set=""/>-->
+<!--        <system_cache__appinfo:acl_rule_inherit_to_all_refs_by_local_element system_cache__appinfo:acl_rule_inherit_local_element_name="acl_rule_inherit_local_element_name8" system_cache__appinfo:acl_rule_inherit_acl_set=""/>-->
+        <system_cache__appinfo:acl_rule_inherit_to_single_refs_by_local_element system_cache__appinfo:acl_rule_inherit_local_element_name="acl_rule_inherit_local_element_name9" system_cache__appinfo:acl_rule_exherit_local_element_name="acl_rule_exherit_local_element_name6"
+             system_cache__appinfo:acl_rule_inherit_acl_set=""/>
+        <system_cache__appinfo:acl_rule_inherit_to_all_refs_by_primary>
+        </system_cache__appinfo:acl_rule_inherit_to_all_refs_by_primary>
+<!--        <system_cache__appinfo:acl_rule_inherit_to_single_refs_by_primary acl_rule_exherit_local_element_name="acl_rule_exherit_local_element_name3"/>-->
+<!--        <system_cache__appinfo:acl_rule_local_inherit system_cache__appinfo:acl_rule_inherit_local_element_name="acl_rule_inherit_local_element_name10" system_cache__appinfo:acl_rule_exherit_local_element_name="acl_rule_exherit_local_element_name7"
+             system_cache__appinfo:acl_rule_inherit_acl_set=""/>-->
+<!--        <system_cache__appinfo:acl_rule_inherit_to_all_refs_by_local_element system_cache__appinfo:acl_rule_inherit_local_element_name="acl_rule_inherit_local_element_name11" system_cache__appinfo:acl_rule_inherit_acl_set=""/>-->
+<!--        <system_cache__appinfo:acl_rule_inherit_to_single_refs_by_local_element system_cache__appinfo:acl_rule_inherit_local_element_name="acl_rule_inherit_local_element_name12" system_cache__appinfo:acl_rule_exherit_local_element_name="acl_rule_exherit_local_element_name8"
+             system_cache__appinfo:acl_rule_inherit_acl_set=""/>-->
+    </system_cache__appinfo:exherit>
+<!--    <system_cache__appinfo:inherit system_cache__appinfo:inherit_ref="inherit_ref0" system_cache__appinfo:heritage_sort="false" system_cache__appinfo:heritage_acl="false">
+        <system_cache__appinfo:acl_rule_local_inherit system_cache__appinfo:acl_rule_inherit_local_element_name="acl_rule_inherit_local_element_name13" system_cache__appinfo:acl_rule_exherit_local_element_name="acl_rule_exherit_local_element_name9"
+             system_cache__appinfo:acl_rule_inherit_acl_set=""/>
+        <system_cache__appinfo:acl_rule_inherit_to_all_refs_by_local_element system_cache__appinfo:acl_rule_inherit_local_element_name="acl_rule_inherit_local_element_name14" system_cache__appinfo:acl_rule_inherit_acl_set=""/>
+    </system_cache__appinfo:inherit>-->
+</system_cache__appinfo:heritage>

+ 170 - 0
SE/se-lib/Route/ChangePassword.php

@@ -0,0 +1,170 @@
+<?php
+
+Lib::loadClass('RouteBase');
+
+class Route_ChangePassword extends RouteBase {
+
+	public function handleAuth() {
+		if (!User::logged()) {
+			User::authByRequest();
+		}
+	}
+
+	public function defaultAction() {
+		SE_Layout::gora();
+		try {
+			$action = V::get('action', 'showForm', $_POST);
+			switch ($action) {
+				case "showForm":
+					self::showForm();
+					break;
+				case "changePassword":
+					self::changePassword();
+					break;
+				default:
+					throw new Exception("Błąd formularza");
+			}
+		} catch (Exception $e) {
+			SE_Layout::alert('danger', $e->getMessage());
+		}
+	}
+
+	private static function showForm() {
+?>
+<div class="container">
+  <div class="row">
+    <div class="col-sm-12 text-center">
+      <h2>Zmiana hasła</h2>
+    </div>
+  </div>
+  <form method="post" id="passwordForm">
+    <div class="row">
+      <div class="col-sm-6 col-sm-offset-3">
+        <div style="height:0px; overflow:hidden;">
+          <input type="text" name="fake_safari_username">
+          <input type="password" name="fake_safari_password">
+        </div>
+        <input type="password" class="input-lg form-control" name="oldPass" id="oldPass" placeholder="Stare hasło">
+      </div>
+    </div>
+    <div class="row">
+      <div class="col-sm-6 col-sm-offset-3">
+        <br/>
+        <input type="password" class="input-lg form-control" name="newPass" id="newPass" placeholder="Nowe hasło">
+        <div class="row">
+          <div class="col-sm-6">
+            <span id="8char" class="glyphicon glyphicon-remove" style="color:#FF0004;"></span> 8 znaków długości<br>
+            <span id="ucase" class="glyphicon glyphicon-remove" style="color:#FF0004;"></span> Jedna duża litera
+          </div>
+          <div class="col-sm-6">
+            <span id="lcase" class="glyphicon glyphicon-remove" style="color:#FF0004;"></span> Jedna mała litera<br>
+            <span id="num" class="glyphicon glyphicon-remove" style="color:#FF0004;"></span> Jedna cyfra
+          </div>
+        </div>
+        <input type="password" class="input-lg form-control" name="newPassConfirm" id="newPassConfirm" placeholder="Powtórz nowe hasło">
+        <div class="row">
+          <div class="col-sm-12">
+            <span id="pwmatch" class="glyphicon glyphicon-remove" style="color:#FF0004;"></span> Zgodność nowego hasła
+          </div>
+        </div>
+        <br/>
+        <button type="submit" id="submit" name="action" value="changePassword" class="col-xs-12 btn btn-primary btn-load btn-lg" disabled>Zmień hasło</button>
+      </div>
+    </div>
+  </form>
+</div>
+<script language="JavaScript">
+<!--
+$("input[type=password]").keyup(function(){
+    var ucase = new RegExp("[A-Z]+");
+	var lcase = new RegExp("[a-z]+");
+	var num = new RegExp("[0-9]+");
+	ok = 0;
+
+	if($("#oldPass").val().length > 0){
+		ok++;
+	}
+	
+	if($("#newPass").val().length >= 8){
+		$("#8char").removeClass("glyphicon-remove");
+		$("#8char").addClass("glyphicon-ok");
+		$("#8char").css("color","#00A41E");
+		ok++;
+	}else{
+		$("#8char").removeClass("glyphicon-ok");
+		$("#8char").addClass("glyphicon-remove");
+		$("#8char").css("color","#FF0004");
+	}
+	
+	if(ucase.test($("#newPass").val())){
+		$("#ucase").removeClass("glyphicon-remove");
+		$("#ucase").addClass("glyphicon-ok");
+		$("#ucase").css("color","#00A41E");
+		ok++;
+	}else{
+		$("#ucase").removeClass("glyphicon-ok");
+		$("#ucase").addClass("glyphicon-remove");
+		$("#ucase").css("color","#FF0004");
+	}
+	
+	if(lcase.test($("#newPass").val())){
+		$("#lcase").removeClass("glyphicon-remove");
+		$("#lcase").addClass("glyphicon-ok");
+		$("#lcase").css("color","#00A41E");
+		ok++;
+	}else{
+		$("#lcase").removeClass("glyphicon-ok");
+		$("#lcase").addClass("glyphicon-remove");
+		$("#lcase").css("color","#FF0004");
+	}
+	
+	if(num.test($("#newPass").val())){
+		$("#num").removeClass("glyphicon-remove");
+		$("#num").addClass("glyphicon-ok");
+		$("#num").css("color","#00A41E");
+		ok++;
+	}else{
+		$("#num").removeClass("glyphicon-ok");
+		$("#num").addClass("glyphicon-remove");
+		$("#num").css("color","#FF0004");
+	}
+	
+	if(($("#newPass").val() == $("#newPassConfirm").val()) && ($("#newPass").val().length > 0)){
+		$("#pwmatch").removeClass("glyphicon-remove");
+		$("#pwmatch").addClass("glyphicon-ok");
+		$("#pwmatch").css("color","#00A41E");
+		ok++;
+	}else{
+		$("#pwmatch").removeClass("glyphicon-ok");
+		$("#pwmatch").addClass("glyphicon-remove");
+		$("#pwmatch").css("color","#FF0004");
+	}
+
+	if(ok == 6) {
+		document.getElementById('submit').disabled = false;
+	}else{
+		document.getElementById('submit').disabled = true;
+	}
+});
+-->
+</script>
+<?php
+	}
+
+	private function changePassword() {
+		$oldPass = V::get('oldPass', '', $_POST);
+		$newPass = V::get('newPass', '', $_POST);
+		$newPassConfirm = V::get('newPassConfirm', '', $_POST);
+		if (!($oldPass && $newPass && ($newPass == $newPassConfirm))) throw new Exception("Błąd formularza");
+
+		try {
+			$result = User::changePassword($oldPass, $newPass);
+			if ($result) SE_Layout::alert('success', "Pomyślnie zmieniono hasło");
+			else SE_Layout::alert('warning', "Nie zmieniono hasła");
+		} catch (Exception $e) {
+			SE_Layout::alert('danger', $e->getMessage());
+			self::showForm();
+		}
+	}
+
+}

+ 1 - 1
SE/se-lib/Route/Install.php

@@ -971,7 +971,7 @@ ssh {$sshArgs} {$this->sshArgsSkipHostKey} {$sshHostUsr} 'rm /Library/Server/Web
 ssh {$sshArgs} {$this->sshArgsSkipHostKey} {$sshHostUsr} 'ln -s ~/se.encrypted.upgrade/SE /Library/Server/Web/Data/Sites/Default/se.encrypted.upgrade'
 scp {$this->sshArgsSkipHostKey}  {$scpArgs} /Library/Server/Web/Data/Sites/SE-production-git/SE/config/.config_base_structure.php {$sshHostUsr}:
 ssh {$sshArgs} {$this->sshArgsSkipHostKey} {$sshHostUsr} 'mv ~/.config_base_structure.php /Library/Server/Web/Data/Sites/Default/se.encrypted.upgrade/config'
-ssh {$sshArgs} {$this->sshArgsSkipHostKey} {$sshHostUsr} 'cp  /Applications/SourceGuardian.app/Contents/MacOS/Loaders/Mac\ OS\ X/ixed.5.6.dar /opt/local/lib/php56/extensions/no-debug-non-zts-20131226/'
+ssh {$sshArgs} {$this->sshArgsSkipHostKey} {$sshHostUsr} 'cp  /Users/server/se.encrypted.upgrade/SE/stuff/SourceGuardian/Loaders/Mac\ OS\ X/ixed.5.6.dar /opt/local/lib/php56/extensions/no-debug-non-zts-20131226/'
 		"; //todo rsync ... -e \"{$this->sshArgsSkipHostKey}\" - maybe not working
 		// --exclude='schema/default_db_xml_cache.public' \
 		// --exclude='stuff' \

+ 86 - 41
SE/se-lib/Route/UrlAction/BiAuditGenerate.php

@@ -1001,6 +1001,7 @@ ini_set("error_log", "/var/log/apache2/error_log");
 
 $_SERVER["SERVER_NAME"] = "' . $_SERVER['SERVER_NAME'] . '";
 require_once(APP_PATH_ROOT . DS . "se-lib" . DS . "bootstrap.php");
+date_default_timezone_set("Europe/Warsaw");
 
 Lib::loadClass("Router");
 Router::getRoute("UrlAction_BiAuditGenerate")->' . $function . ';
@@ -1968,7 +1969,7 @@ SQL;
 			} while ($activeReloadingCache);
 			
 			BiAuditPowiazania::saveToLog("Uruchamiam częściowe odświeżenie cache");
-			$this->doReloadCache();
+			$this->doReloadCache(); //DUPA testowe wylaczanie
 			BiAuditPowiazania::saveToLog("Odświeżono częściowo cache");
 
 			$sqlArr = [
@@ -1984,7 +1985,7 @@ SQL;
 			$sqlArr = ['FILE_STATUS_info' => 'Generuję raporty PDF i HTML'];
 			DB::getPDO()->update('BI_audit_ENERGA_RUM_KONTRAHENCI_POWIAZANIA', "ID", $ID, $sqlArr);
 			
-			$BiAuditPowiazania->saveXml();
+			//$BiAuditPowiazania->saveXml();
 			$BiAuditPowiazania->generatePdfAndHtml();
 			file_put_contents($resultFile, json_encode(['result' => 'ok', 'parts' => $BiAuditPowiazania->getPartsCount()]));
 		} catch (Exception $e) {
@@ -2216,18 +2217,17 @@ class BiAuditPowiazania {
 	}
 
 	private static function exec($cmd) {
+		$path = 'export PATH=$PATH:/usr/sbin;';
+		$cmd = "{$path} {$cmd}";
 		echo "CMD :: {$cmd}\n";
 		shell_exec($cmd);
 	}
 
-	private function saveProgress($args) {
+	private function saveProgress($args = []) {
 		$timestamp = microtime(true);
 		if (isset($args['progress']) && $this->i) {
 			$elapsed = $timestamp - $this->startTimestamp;
 			if ($args['progress']) {
-				//$lastElapsed = $timestamp - $this->lastTimestamp;
-				//$lastProgress = $progress - $this->lastProgress;
-				//$estimated = (($elapsed * (1 - $progress)) / $progress + ($lastElapsed * (1 - $lastProgress)) / $lastProgress) / 2;
 				$estimated = ($elapsed * (1 - $args['progress'])) / $args['progress'];
 			} else $estimated = "N/A";
 			$this->lastProgress = $args['progress'];
@@ -2238,7 +2238,7 @@ class BiAuditPowiazania {
 		}
 		if (isset($args['message'])) $this->progress['summary']['message'] = $args['message'];
 		if (isset($args['step'])) $this->progress['summary']['step'] = $args['step'];
-		if (isset($args['reportsCreated'])) $this->progress['summary']['reportsCreated'] += $args['reportsCreated'];
+		if (isset($args['reportsCreated'])) $this->progress['summary']['reportsCreated'] = round($this->progress['summary']['reportsCreated'] + $args['reportsCreated'], 2);
 		$this->progress['summary']['ts'] = $timestamp;
 		file_put_contents($this->progressFile, json_encode($this->progress));
 	}
@@ -2349,6 +2349,9 @@ class BiAuditPowiazania {
 					self::saveToLog("Zbyt dużo rekurencji, zmniejszono maksymalną głębokość poszukiwań do {$this->maxDepth} dla bieżącego pracownika");
 				}
 			} else $this->lowProgressCount = 0;
+		}
+
+		if ((($this->step) % 100000) == 0) {
 			$this->saveProgress(['progress' => $progress]);
 		}
 
@@ -2481,12 +2484,16 @@ class BiAuditPowiazania {
 	}
 
 	private function generateItemsResults($resultsPart = null) {
-		self::saveToLog("Generuję dane na potrzeby utworzenia pliku XML ({$resultsPart})");
+		if ($resultsPart === null) self::saveToLog("Generuję dane na potrzeby utworzenia pojedynczego pliku XML");
+		else {
+			self::saveToLog("Generuję dane na potrzeby utworzenia pliku XML ({$resultsPart})");
+			if  ($resultsPart >= $this->getPartsCount()) throw new Exception("generateItemsResults() error - bad part number");
+		}
+
 		$xmlTask = "BI_audit_ENERGA_RUM_KONTRAHENCI_POWIAZANIA";
 		$xmlRow = "BI_audit_ENERGA_RUM_KONTRAHENCI_POWIAZANIA_row";
 		$xmlObject = "BI_audit_ENERGA_RUM_KONTRAHENCI_POWIAZANIA_row_object";
 
-		$this->items_results = [];
 		$items_kontrahenci = [];
 		$items_kw_person = [];
 		$kontrahenci = [];
@@ -2496,10 +2503,13 @@ class BiAuditPowiazania {
 		$refUmowyToKontrahenci = BiAuditRefTables::getRefTable('BI_audit_ENERGA_RUM_UMOWY', 'BI_audit_ENERGA_RUM_KONTRAHENCI', true);
 		$refKwRequestedToKwRequestedPerson = BiAuditRefTables::getRefTable('BI_audit_KW_requested', 'BI_audit_KW_requested_person', true);
 
+		$this->items_results[$resultsPart] = [];
 		$this->items_results[$resultsPart]['@attributes'] = ['xmlns:system_cache__dita' => 'http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/dita.xsd'];
 		$this->items_results[$resultsPart][$xmlTask]['@attributes'] = ['fid' => "{$xmlTask}.{$this->ID}"];
-		if ($resultsPart === null) $results = $this->results;
-		else {
+
+		if ($resultsPart === null) {
+			$results = $this->results;
+		} else {
 			$results = (!empty($this->splittedResults[$resultsPart])) ? $this->splittedResults[$resultsPart] : [];
 			$this->items_results[$resultsPart][$xmlTask]['@attributes']['system_cache__dita:part'] = ($resultsPart + 1);
 		}
@@ -2608,20 +2618,29 @@ class BiAuditPowiazania {
 		}
 	}
 
-	public function saveXml() {
+	public function saveXml($resultsPart = null) {
 		if ($this->getPartsCount()) {
-			self::saveToLog("Generuję pliki XML (liczba plików do wygenerowania: {$this->getPartsCount()})");
-			for ($i =0; $i < $this->getPartsCount(); $i++) {
-				$partNo = str_pad($i + 1, 6, '0', STR_PAD_LEFT);
+			if ($resultsPart === null) {
+				self::saveToLog("Generuję pliki XML (liczba plików do wygenerowania: {$this->getPartsCount()})");
+				for ($i =0; $i < $this->getPartsCount(); $i++) {
+					$partNo = str_pad($i + 1, 6, '0', STR_PAD_LEFT);
+					$xmlFile = "{$this->tasksDirLocation}/generatePowiazania-{$this->ID}_{$partNo}.xml";
+					file_put_contents($xmlFile, $this->asXml($i));
+				}
+				self::saveToLog("Zakończono generowanie plików XML");
+			} else {
+				if ($resultsPart >= $this->getPartsCount()) {
+					self::saveToLog("saveXml() error - bad result number");
+					return;
+				}
+				$partNo = str_pad($resultsPart + 1, 6, '0', STR_PAD_LEFT);
 				$xmlFile = "{$this->tasksDirLocation}/generatePowiazania-{$this->ID}_{$partNo}.xml";
-				file_put_contents($xmlFile, $this->asXml($i));
+				file_put_contents($xmlFile, $this->asXml($resultsPart));
 			}
-			self::saveToLog("Zakończono generowanie plików XML");
 		} else {
 			$xmlFile = "{$this->tasksDirLocation}/generatePowiazania-{$this->ID}.xml";
 			file_put_contents($xmlFile, $this->asXml());
 		}
-		
 	}
 
 	public function asXml($resultsPart = null) {
@@ -2657,6 +2676,15 @@ class BiAuditPowiazania {
 	}
 
 	public function generatePdfAndHtml() {
+		$antDir = "/Library/Server/Web/Data/Sites/Default/SE/schema/WPS_Functions/default_db/recurse_ant/out";
+		if (!file_exists($antDir)) mkdir($antDir, 0770, true);
+		if (!is_dir($antDir)) {
+			$sqlArr['FILE_STATUS_info'] .= ", ale nie udało się utworzyć plików PDF i HTML";
+			self::saveToLog("Nie wygenerowano plików PDF oraz HTML - problem z utworzeniem katalogu dla ant ({$resultsPart})");
+			$this->saveProgress(['reportsCreated' => 1]);
+			return;
+		}
+
 		$this->saveProgress(['step' => 'reports']);
 		if ($this->getPartsCount()) {
 			self::saveToLog("Generuję raporty w plikach PDF oraz HTML (liczba raportów do wygenerowania: {$this->getPartsCount()})");
@@ -2673,33 +2701,50 @@ class BiAuditPowiazania {
 		$htmlDestDir = "{$this->tasksDirLocation}/generatePowiazania-{$id_part}.html";
 		$htmlZipDestFile = "{$this->tasksDirLocation}/generatePowiazania-{$id_part}.zip";
 		$antDir = "/Library/Server/Web/Data/Sites/Default/SE/schema/WPS_Functions/default_db/recurse_ant/out";
-		if (!is_dir($antDir)) mkdir($antDir, 0777, true);
 		$antXmlFilename = "relations-{$id_part}.out_task.dita.final_with_RelatedFeatureLoop.xml";
 		$antXmlFile = $antDir . "/" . $antXmlFilename;
+		$ditamapFile = "/Library/Server/Web/Data/Sites/Default/SE/schema/WPS_Functions/default_db/CRM_PROCES_tree/temp/relations-{$id_part}/relations-{$id_part}.ditamap";
 		$pdfFile = "/Library/Server/Web/Data/Sites/Default/SE/schema/WPS_Functions/default_db/CRM_PROCES_tree/temp/relations-{$id_part}/pdf/relations-{$id_part}.pdf";
 		$htmlDir = "/Library/Server/Web/Data/Sites/Default/SE/schema/WPS_Functions/default_db/CRM_PROCES_tree/temp/relations-{$id_part}/html";
-		if (!file_exists($antDir)) mkdir($antDir, 0770, true);
-		if (!is_dir($antDir)) {
-			$sqlArr['FILE_STATUS_info'] .= ", ale nie udało się utworzyć plików PDF i HTML";
-			self::saveToLog("Nie wygenerowano plików PDF oraz HTML - problem z utworzeniem katalogu dla ant ({$resultsPart})");
+
+		if (!file_exists($xmlFile)) $this->saveXml($resultsPart);
+		if (!file_exists($xmlFile)) {
+			$sqlArr['FILE_STATUS_info'] .= ", ale nie udało się utworzyć plików XML, PDF i HTML";
+			self::saveToLog("Nie wygenerowano plików XML, PDF oraz HTML - problem z wygenerowaniem pliku XML ({$resultsPart})");
+			$this->saveProgress(['reportsCreated' => 1]);
+			return;
+		}
+		 $this->saveProgress(['reportsCreated' => 0.05]);
+
+		copy($xmlFile, $antXmlFile);
+		self::saveToLog("Generuję plik przejściowy do wygenerowania plików PDF i HTML ({$resultsPart})");
+		self::exec("cd /Library/Server/Web/Data/Sites/Default/SE/schema/WPS_Functions/default_db/CRM_PROCES_tree && /opt/local/bin/ant -f build_CRM_PROCES_tree.xml default_db:PROCES_INIT:tree:dita -Duuid=relations-{$id_part}");
+		if (file_exists($ditamapFile))
+		{
+			self::saveToLog("Wygenerowano plik przejściowy");
+			$this->saveProgress(['reportsCreated' => 0.15]);
 		} else {
-			copy($xmlFile, $antXmlFile);
-			self::exec("cd /Library/Server/Web/Data/Sites/Default/SE/schema/WPS_Functions/default_db/CRM_PROCES_tree && /opt/local/bin/ant -f build_CRM_PROCES_tree.xml default_db:PROCES_INIT:tree:dita -Duuid=relations-{$id_part}");
-			self::saveToLog("Generuję plik PDF ({$resultsPart})");
-			self::exec("cd \"/Library/Server/Web/Data/Sites/Default/SE/schema/WPS_Functions/default_db/CRM_PROCES_tree/temp/relations-{$id_part}\" && /Library/Server/Web/Data/Sites/Default/SE/stuff/dita-ot-2.3.3/bin/dita -o pdf -i relations-{$id_part}.ditamap -f pdf");
-			if (file_exists($pdfFile)) {
-				rename($pdfFile, $pdfDestFile);
-				self::saveToLog("Wygenerowano plik PDF ({$resultsPart})");
-			} else self::saveToLog("Nie udało się wygenerować pliku PDF ({$resultsPart})");
-			self::saveToLog("Generuję pliki HTML ({$resultsPart})");
-			self::exec("cd \"/Library/Server/Web/Data/Sites/Default/SE/schema/WPS_Functions/default_db/CRM_PROCES_tree/temp/relations-{$id_part}\" && /Library/Server/Web/Data/Sites/Default/SE/stuff/dita-ot-2.3.3/bin/dita -o html -i relations-{$id_part}.ditamap -f tocjs");
-			if (file_exists($htmlDir) && is_dir($htmlDir)) {
-				self::exec("cd \"/Library/Server/Web/Data/Sites/Default/SE/schema/WPS_Functions/default_db/CRM_PROCES_tree/temp/relations-{$id_part}\" && zip -r \"{$htmlZipDestFile}\" html");
-				if (file_exists($htmlDestDir)) self::exec("rm -rf \"{$htmlDestDir}\"");
-				self::exec("mv \"{$htmlDir}\" \"{$htmlDestDir}\"");
-				self::saveToLog("Wygenerowano pliki HTML ({$resultsPart})");
-			} else self::saveToLog("Nie udało się wygenerować plików HTML {$resultsPart})");
-		}
-		$this->saveProgress(['reportsCreated' => 1]);
+			self::saveToLog("Nie udało się wygenerować pliku przejściowego, przerywm");
+			$this->saveProgress(['reportsCreated' => 1]);
+			return;
+		}
+
+		self::saveToLog("Generuję plik PDF ({$resultsPart})");
+		self::exec("cd \"/Library/Server/Web/Data/Sites/Default/SE/schema/WPS_Functions/default_db/CRM_PROCES_tree/temp/relations-{$id_part}\" && /Library/Server/Web/Data/Sites/Default/SE/stuff/dita-ot-2.3.3/bin/dita -o pdf -i relations-{$id_part}.ditamap -f pdf");
+		if (file_exists($pdfFile)) {
+			rename($pdfFile, $pdfDestFile);
+			self::saveToLog("Wygenerowano plik PDF ({$resultsPart})");
+		} else self::saveToLog("Nie udało się wygenerować pliku PDF ({$resultsPart})");
+		$this->saveProgress(['reportsCreated' => 0.45]);
+
+		self::saveToLog("Generuję pliki HTML ({$resultsPart})");
+		self::exec("cd \"/Library/Server/Web/Data/Sites/Default/SE/schema/WPS_Functions/default_db/CRM_PROCES_tree/temp/relations-{$id_part}\" && /Library/Server/Web/Data/Sites/Default/SE/stuff/dita-ot-2.3.3/bin/dita -o html -i relations-{$id_part}.ditamap -f tocjs");
+		if (file_exists($htmlDir) && is_dir($htmlDir)) {
+			self::exec("cd \"/Library/Server/Web/Data/Sites/Default/SE/schema/WPS_Functions/default_db/CRM_PROCES_tree/temp/relations-{$id_part}\" && zip -r \"{$htmlZipDestFile}\" html");
+			if (file_exists($htmlDestDir)) self::exec("rm -rf \"{$htmlDestDir}\"");
+			self::exec("mv \"{$htmlDir}\" \"{$htmlDestDir}\"");
+			self::saveToLog("Wygenerowano pliki HTML ({$resultsPart})");
+		} else self::saveToLog("Nie udało się wygenerować plików HTML {$resultsPart})");
+		$this->saveProgress(['reportsCreated' => 0.35]);
 	}
 }

+ 36 - 1
SE/se-lib/User.php

@@ -538,6 +538,7 @@ class User {
 				from ADMIN_USERS u
 				where u.ADM_ACCOUNT = :login
 					and ( u.ADM_PASSWD = :pass or u.ADM_PASSWD = md5( :pass ) )
+					and u.ADM_PASSWD != ''
 					and u.A_STATUS in('WAITING', 'NORMAL')
 			", [
 				':login' => $login,
@@ -608,7 +609,7 @@ class User {
 		return false;
 	}
 
-	public static function changePasswd($oldPass, $newPass) {
+	public static function changePasswd($oldPass, $newPass) { //TODO chyba nieuzywane - Bzyk @ 2018-02-15
 		$db = DB::getDB();
 		$newPass = $db->_($newPass);
 		$oldPass = $db->_($oldPass);
@@ -624,6 +625,40 @@ class User {
 		return ($db->affected_rows() > 0);
 	}
 
+	public static function changePassword($oldPass, $newPass) {
+		if (!is_string($newPass)) throw new Exception("Błąd parametru");
+		if (strlen($newPass) < 8) throw new Exception("Hasło zbyt krótkie (min. 8 znaków)"); // TODO regex 1 mala litera, 1 mala litera, 1 cyfra, min. 8 znakow
+		if (!self::logged()) throw new Exception("Użytkownik niezalogwany");
+
+		Lib::loadClass('LDAP');
+		$ldap = LDAP::getInstance();
+
+		if ($ldap != null && $ldap->isConnected()) {
+			return self::changePasswordLDAP($oldPass, $newPass);
+		} else {
+			return self::changePasswordDB($oldPass, $newPass);
+		}
+	}
+
+	public static function changePasswordLDAP($oldPass, $newPass) {
+		throw new Exception("changePassword::LDAP not implemented yet"); // TODO
+	}
+
+	public static function changePasswordDB($oldPass, $newPass) {
+		try {
+			$user = self::loginByDB(self::getLogin(), $oldPass);
+		} catch (Exception $e) {
+			throw new Exception("Błędne hasło");
+		}
+		if (!$user) throw new Exception("Błąd weryfikacji użytkownika");
+
+		$affected = DB::getPDO()->update('ADMIN_USERS', 'ID', $user->ID, [
+			'ADM_PASSWD' => '',
+			'ADM_PASSWD_AES' => hash('sha512', $newPass), // Mysql: SHA2('{$pass}', 512)
+		]);
+		return ($affected > 0);
+	}
+
 	/**
 	 * Check user access.
 	 * @param string $name

+ 71 - 0
SE/stuff/scripts/BI_audit_generate/script.truncate_all_data.php

@@ -0,0 +1,71 @@
+#!/usr/bin/env php
+<?php
+error_reporting(E_ALL & ~E_NOTICE);
+$_SERVER['SERVER_NAME'] = gethostname();
+//require("/Library/Server/Web/Data/Sites/Default/dev-bzyk/se-lib/bootstrap.php");
+require("/Library/Server/Web/Data/Sites/Default/SE/se-lib/bootstrap.php");
+date_default_timezone_set('Europe/Warsaw');
+
+
+$query = "show tables";
+$result = DB::getPDO()->fetchAll($query);
+$tables = array_map("reset", $result);
+$mainTables = array_filter($tables, function ($table) {
+	if (preg_match('/^BI_audit/', $table)) return true;
+	return false;
+});
+sort($mainTables);
+
+$refTables = [];
+foreach ($mainTables as $tableFrom) {
+	foreach ($mainTables as $tableTo) {
+		try {
+			$refTables[] = ACL::getRefTable("default_db/{$tableFrom}/{$tableFrom}", "default_db__x3A__{$tableTo}:{$tableTo}");
+		} catch (Exception $e) {
+		}
+	}
+}
+$refTables = array_filter($refTables, function ($table) {
+	if (preg_match('/_VIEW$/', $table)) return false;
+	return true;
+});
+sort($refTables);
+
+echo "Główne tabele do wyczyszczenia: (" . count($mainTables) . "):\n" . implode(", ", $mainTables) . "\n\n";
+echo "Tabele relacyjne do wyczyszczenia (" . count($refTables) . "):\n" . implode(", ", $refTables) . "\n\n";
+
+$prompt = null;
+while (!in_array($prompt, ['t', 'n'])) {
+	$prompt = strtolower(readline("Jesteś pewien, że chcesz wyczyścić te wszystkie tabele? [T/N]: "));
+}
+if ($prompt === 'n') die("Przerywam\n");
+
+try {
+	Lib::loadClass('Token');
+	$pass = Config::getConfFile('default_db')['pass'];
+	$tokenObj = new Token($pass);
+	$token = $tokenObj->genToken();
+	echo "Token: {$token}\n";
+	$hash = readline("Hash: ");
+	if ($pass !== $tokenObj->verify($hash)) die("Błędny token, przerywam\n"); 
+} catch (Exception $e) {
+	die("Wystąpił nieznany błąd, przerywam\n");
+}
+
+$prompt = null;
+while (!in_array($prompt, ['t', 'n'])) {
+	$prompt = strtolower(readline("Na pewno jesteś pewien, że chcesz wyczyścić te wszystkie tabele? [T/N]: "));
+}
+if ($prompt === 'n') die("Przerywam\n");
+
+echo  "\nCzyszczę tabele:\n";
+
+foreach (array_merge($mainTables, $refTables) as $table) {
+	echo $table;
+	try {
+		DB::getPDO()->query("truncate table `{$table}`");
+		echo " - OK\n";
+	} catch (Exception $e) {
+		echo " - ERROR\n";
+	}
+}