:: Version 3.2.0 ::
Portal: Create Ticket for various Customers
- name:
- How to allow Portal Users to create Ticket for
- type:
- How To
- audience:
- Administrator, Integrator, Developer
- level:
- Advanced
- keyword:
- Portal, Customization
- iTop version:
- 2.3.0
Objective
Within an existing iTop portal (itop-portal
or any
other portal), we want to allow some Users to Create Ticket not for
themself but for someone else
Let's decide that we have or we create a new Profile
Business partner user
, which will be given to those
Users
Scopes
Those Users will need to see
-
All Orgs for whom they need to create Tickets
-
All Contacts for whom they need to create Tickets
-
All Services on which they need to create Tickets
-
…
- itop-design
-
<class id="Organization"> <scopes> <scope id="portal-partner-user" _delta="define"> <oql_view><![CDATA[SELECT Organization]]></oql_view> <allowed_profiles> <allowed_profile id="Business partner user"/> </allowed_profiles> </scope> </scopes> </class> <class id="Contact"> <scopes> <scope id="portal-partner-user" _delta="define"> <oql_view><![CDATA[SELECT Contact]]></oql_view> <allowed_profiles> <allowed_profile id="Business partner user"/> </allowed_profiles> </scope> </scopes> </class> <class id="Service"> <scopes> <scope id="portal-partner-user" _delta="define"> <oql_view><![CDATA[SELECT Service]]></oql_view> <allowed_profiles> <allowed_profile id="Business partner user"/> </allowed_profiles> </scope> </scopes> </class> <!-- And so on with other classes such as ServiceSubcategory, Ticket, ... -->
Brick
Those Users will need to have access to a new BrowseBrick to select the CustomerContracts
- itop-design
-
<brick id="new-request-for-partner" xsi:type="Combodo\iTop\Portal\Brick\BrowseBrick" _delta="define"> <active>true</active> <width>6</width> <rank> <default>11</default> </rank> <title> <default>Brick:Portal:NewRequest:Title</default> </title> <description>Brick:Portal:NewRequest:Title+</description> <decoration_class> <default>fc fc-new-request fc-2x</default> </decoration_class> <levels> <level id="1"> <class>Organization</class> <tooltip_att>description</tooltip_att> <title>Class:Organization</title> <actions> <action id="drilldown" xsi:type="drilldown"/> </actions> <levels> <level id="1"> <oql><![CDATA[SELECT CustomerContract]]></oql> <parent_att>org_id</parent_att> <name_att>name</name_att> <tooltip_att>service_id_friendlyname</tooltip_att> <title>Class:CustomerContract</title> <actions> <action id="create_from_this" xsi:type="create_from_this"> <class>UserRequest</class> <icon_class>fc fc-new-request fc-1-6x fc-flip-horizontal</icon_class> <rules> <rule id="contact-to-userrequest"/> <rule id="contract-to-userrequest"/> </rules> </action> <action id="view" xsi:type="view"/> </actions> <levels/> </level> </levels> </level> </levels> <browse_modes> <availables> <mode id="list"/> </availables> <default>list</default> </browse_modes> <security> <allowed_profiles><![CDATA[SELECT URP_Profiles WHERE name = 'Business partner user']]></allowed_profiles> </security> <data_loading>auto</data_loading> </brick>
Form
Create or modify the Ticket creation form, to allow selection of the caller, and service sub-category
- itop-design
-
<form id="ticket-create"> <twig _delta="redefine"> <div class="row"> <div class="col-sm-9"> <div class="row"> <div class="col-sm-6"> <div class="form_field" data-field-id="service_id" data-field-flags="mandatory"/> <div class="form_field" data-field-id="impact"/> </div> <div class="col-sm-6"> <div class="form_field" data-field-id="servicesubcategory_id" data-field-flags="mandatory"/> <div class="form_field" data-field-id="urgency"/> </div> </div> <div class="row"> <div class="col-sm-12"> <div class="form_field" data-field-id="title"/> </div> </div> </div> <div class="col-sm-3"> <div class="form_field" data-field-id="service_details"/> </div> </div> <div> <div class="form_field" data-field-id="description"/> <div class="form_field" data-field-id="contacts_list"/> </div> </twig> </properties> </form>
3_2_0/customization/portal_howto_ticket_multi_org.txt ·
Last modified: 2025/08/12 15:12 by 127.0.0.1