<?xml version="1.0" encoding="ISO-8859-1"?>
<definitions xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="tns:eUsnIDM" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns="http://schemas.xmlsoap.org/wsdl/" targetNamespace="tns:eUsnIDM">
  <types>
    <xsd:schema targetNamespace="tns:eUsnIDM">
      <xsd:import namespace="http://schemas.xmlsoap.org/soap/encoding/" />
      <xsd:import namespace="http://schemas.xmlsoap.org/wsdl/" />
      <xsd:complexType name="result">
        <xsd:all>
          <xsd:element name="status" type="xsd:string"/>
          <xsd:element name="description" type="xsd:string"/>
        </xsd:all>
      </xsd:complexType>
      <xsd:complexType name="unit">
        <xsd:all>
          <xsd:element name="unitID" type="xsd:int"/>
          <xsd:element name="unitName" type="xsd:string"/>
          <xsd:element name="unitAbbreviation" type="xsd:string"/>
          <xsd:element name="ancestorID" type="xsd:int"/>
          <xsd:element name="active" type="xsd:int"/>
        </xsd:all>
      </xsd:complexType>
      <xsd:complexType name="unitArray">
        <xsd:sequence>
          <xsd:element name="unit" type="tns:unit" maxOccurs="unbounded" minOccurs="0" nillable="true"/>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="right">
        <xsd:all>
          <xsd:element name="rightName" type="xsd:string"/>
          <xsd:element name="value" type="xsd:int"/>
        </xsd:all>
      </xsd:complexType>
      <xsd:complexType name="rightArray">
        <xsd:sequence>
          <xsd:element name="right" type="tns:right" maxOccurs="unbounded" minOccurs="0" nillable="true"/>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="role">
        <xsd:all>
          <xsd:element name="roleID" type="xsd:int"/>
          <xsd:element name="roleName" type="xsd:string"/>
          <xsd:element name="unitAbbreviation" type="xsd:int"/>
          <xsd:element name="active" type="xsd:int"/>
          <xsd:element name="rights" type="tns:rightArray" nillable="true"/>
        </xsd:all>
      </xsd:complexType>
      <xsd:complexType name="roleArray">
        <xsd:sequence>
          <xsd:element name="role" type="tns:role" maxOccurs="unbounded" minOccurs="0" nillable="true"/>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="user">
        <xsd:all>
          <xsd:element name="surname" type="xsd:string"/>
          <xsd:element name="firstname" type="xsd:string"/>
          <xsd:element name="degree_infrontof" type="xsd:string"/>
          <xsd:element name="degree_behind" type="xsd:string"/>
          <xsd:element name="login" type="xsd:string"/>
          <xsd:element name="loginNew" type="xsd:string"/>
          <xsd:element name="email" type="xsd:string"/>
          <xsd:element name="tel_work" type="xsd:string"/>
          <xsd:element name="mob_work" type="xsd:string"/>
          <xsd:element name="tel_home" type="xsd:string"/>
          <xsd:element name="mob_home" type="xsd:string"/>
          <xsd:element name="active" type="xsd:int"/>
          <xsd:element name="party" type="xsd:string"/>
          <xsd:element name="roles" type="tns:roleArray" nillable="true"/>
        </xsd:all>
      </xsd:complexType>
      <xsd:complexType name="userArray">
        <xsd:sequence>
          <xsd:element name="user" type="tns:user" maxOccurs="unbounded" minOccurs="0" nillable="true"/>
        </xsd:sequence>
      </xsd:complexType>
    </xsd:schema>
  </types>
  <message name="GetUnitsRequest">
    <part name="null" type="xsd:string" />
  </message>
  <message name="GetUnitsResponse">
    <part name="result" type="tns:result" />
    <part name="units" type="tns:unitArray" />
  </message>
  <message name="SetUnitRequest">
    <part name="unit" type="tns:unit" />
  </message>
  <message name="SetUnitResponse">
    <part name="result" type="tns:result" />
  </message>
  <message name="GetUsersRolesAndRightsRequest">
    <part name="userLogin" type="xsd:string" />
  </message>
  <message name="GetUsersRolesAndRightsResponse">
    <part name="result" type="tns:result" />
    <part name="users" type="tns:userArray" />
  </message>
  <message name="SetUsersRolesAndRightsRequest">
    <part name="user" type="tns:user" />
  </message>
  <message name="SetUsersRolesAndRightsResponse">
    <part name="result" type="tns:result" />
    <part name="users" type="tns:userArray" />
  </message>
  <message name="SetActiveRequest">
    <part name="userLogin" type="xsd:string" />
    <part name="active" type="xsd:int" />
  </message>
  <message name="SetActiveResponse">
    <part name="result" type="tns:result" />
  </message>
  <message name="SetRightsRequest">
    <part name="roleID" type="xsd:int" />
    <part name="rights" type="tns:rightArray" />
  </message>
  <message name="SetRightsResponse">
    <part name="result" type="tns:result" />
  </message>
  <message name="SetRoleRequest">
    <part name="userLogin" type="xsd:string" />
    <part name="role" type="tns:role" />
  </message>
  <message name="SetRoleResponse">
    <part name="result" type="tns:result" />
  </message>
  <message name="SetUserRequest">
    <part name="user" type="tns:user" />
  </message>
  <message name="SetUserResponse">
    <part name="result" type="tns:result" />
  </message>
  <portType name="eUsnIDMPortType">
    <operation name="GetUnits">
      <documentation>Metoda vrati seznam unit evidovanych v aplikaci</documentation>
      <input message="tns:GetUnitsRequest"/>
      <output message="tns:GetUnitsResponse"/>
    </operation>
    <operation name="SetUnit">
      <documentation>Metoda vrati seznam unit evidovanych v aplikaci</documentation>
      <input message="tns:SetUnitRequest"/>
      <output message="tns:SetUnitResponse"/>
    </operation>
    <operation name="GetUsersRolesAndRights">
      <documentation>Metoda vrati seznam uzivatelu evidovanych v aplikaci vcetne vsech roli uzivatele a prav nastavenych u roli</documentation>
      <input message="tns:GetUsersRolesAndRightsRequest"/>
      <output message="tns:GetUsersRolesAndRightsResponse"/>
    </operation>
    <operation name="SetUsersRolesAndRights">
      <documentation>Metoda umozni nastavit vlastnosti uzivatele evidovaneho v aplikaci vcetne vsech roli uzivatele a prav nastavenych u roli</documentation>
      <input message="tns:SetUsersRolesAndRightsRequest"/>
      <output message="tns:SetUsersRolesAndRightsResponse"/>
    </operation>
    <operation name="SetActive">
      <documentation>Metoda umozni nastavit, jestli je uzivatel aktivni (active=1) nebo neaktivni (active=0)</documentation>
      <input message="tns:SetActiveRequest"/>
      <output message="tns:SetActiveResponse"/>
    </operation>
    <operation name="SetRights">
      <documentation>Metoda umozni nastavit prava k zadane roli</documentation>
      <input message="tns:SetRightsRequest"/>
      <output message="tns:SetRightsResponse"/>
    </operation>
    <operation name="SetRole">
      <documentation>Metoda umozni zmenit roli (zarazeni usera v org. strukture). Pokud ID role nebude uvedeno, bude zalozena nova role. Pokud active nebude uvedeno, bude role nastavena na active=1</documentation>
      <input message="tns:SetRoleRequest"/>
      <output message="tns:SetRoleResponse"/>
    </operation>
    <operation name="SetUser">
      <documentation>Metoda umozni vlastnosti uzivatele. Pokud active nebude uvedeno, bude role nastavena na active=1. Pokud login uzivatele nebude nalezen v databazi, bude tento uzivatel vytvoren.</documentation>
      <input message="tns:SetUserRequest"/>
      <output message="tns:SetUserResponse"/>
    </operation>
  </portType>
  <binding name="eUsnIDMBinding" type="tns:eUsnIDMPortType">
    <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
    <operation name="GetUnits">
      <soap:operation soapAction="tns" style="rpc"/>
      <input>
        <soap:body use="literal" namespace="tns"/>
      </input>
      <output>
        <soap:body use="literal" namespace="tns"/>
      </output>
    </operation>
    <operation name="SetUnit">
      <soap:operation soapAction="tns" style="rpc"/>
      <input>
        <soap:body use="literal" namespace="tns"/>
      </input>
      <output>
        <soap:body use="literal" namespace="tns"/>
      </output>
    </operation>
    <operation name="GetUsersRolesAndRights">
      <soap:operation soapAction="tns" style="rpc"/>
      <input>
        <soap:body use="literal" namespace="tns"/>
      </input>
      <output>
        <soap:body use="literal" namespace="tns"/>
      </output>
    </operation>
    <operation name="SetUsersRolesAndRights">
      <soap:operation soapAction="tns" style="rpc"/>
      <input>
        <soap:body use="literal" namespace="tns"/>
      </input>
      <output>
        <soap:body use="literal" namespace="tns"/>
      </output>
    </operation>
    <operation name="SetActive">
      <soap:operation soapAction="tns" style="rpc"/>
      <input>
        <soap:body use="literal" namespace="tns"/>
      </input>
      <output>
        <soap:body use="literal" namespace="tns"/>
      </output>
    </operation>
    <operation name="SetRights">
      <soap:operation soapAction="tns" style="rpc"/>
      <input>
        <soap:body use="literal" namespace="tns"/>
      </input>
      <output>
        <soap:body use="literal" namespace="tns"/>
      </output>
    </operation>
    <operation name="SetRole">
      <soap:operation soapAction="tns" style="rpc"/>
      <input>
        <soap:body use="literal" namespace="tns"/>
      </input>
      <output>
        <soap:body use="literal" namespace="tns"/>
      </output>
    </operation>
    <operation name="SetUser">
      <soap:operation soapAction="tns" style="rpc"/>
      <input>
        <soap:body use="literal" namespace="tns"/>
      </input>
      <output>
        <soap:body use="literal" namespace="tns"/>
      </output>
    </operation>
  </binding>
  <service name="eUsnIDM">
    <port name="eUsnIDMPort" binding="tns:eUsnIDMBinding">
      <soap:address location="http://localhost:8090/rt/plugins/idm/server.php?debug=1"/>
    </port>
  </service>
</definitions>