×

微信扫一扫,快捷登录!

二次开发-调整门户-门户XML引用

标签: 暂无标签
本帖最后由 adminlily 于 2020-12-16 11:32 编辑

客户门户XML引用

您必须熟悉以下基础知识[ ttps://www.itophub.io/wiki/page?id=2_7_0%3Acustomization%3Axml_reference#principles]iTop XML设计.[/url]

有关客户门户定制功能的概述,请查看页面[ ttps://www.itophub.io/wiki/page?id=2_7_0%3Acustomization%3Astart#customizing_the_portal]自定义您的客户门户[/url]

iTop的版本2.5对门户块(仪表板)进行了许多更改。本章介绍了新格式引入的修改的完整列表[ ttps://www.itophub.io/wiki/page?id=2_7_0%3Acustomization%3Aportal_xml#changes_history]变更记录[/url].

结构体

此结构特定于在itop-门户基础库上开发的门户。

标签用法描述
<module_design id="PORTAL_UNIQUE_ID" xsi:type="portal">强制性的为门户实例定义配置的结构化节点
<properties>强制性的实例的全局属性
<name>portal:itop-portal</name>强制性的门户名称
<logo>../images/itop-logo.png</logo>可选的在实例中使用的徽标。如果已定义,它将覆盖Designer中的一个或env-xxxxbranding/portal-logo.png
<themes>强制性的声明的CSS样式表
<theme id="custom">sample-portal-custom-css/custom.css</theme>零或更多CSS样式表列表。首先加载ID bootstrap |portal| custom ID,重新定义它们将覆盖默认文件。然后将加载其他ID。路径必须相对于env-xxx
<templates>强制性的声明的TWIG模板
<template id="layout">sample-portal-alter-twig/layout.html.twig</template>零或更多要覆盖的TWIG模板列表。可用值是整个页面的“布局”或主页内容的“主页”。 (砖块内容布局可以直接在每个砖块中定义)
<urlmaker_class>iTopPortalViewUrlMaker</urlmaker_class>可选的用于生成对象的类查看URL(例如,在通知,链接集中)
<triggers_query>SELECT TriggerOnPortalUpdate AS t WHERE t.target_class IN (:parent_classes)</triggers_query>强制性的OQL查询在更新实例上的对象时检索触发器
<attachments>强制性的结构节点
<allow_delete>true</allow_delete>强制性的可以在门户上删除附件吗?可用值为true | false
<allowed_portals>强制性的结构节点
<opening_mode>tab</opening_mode>强制性的定义如何打开其他门户-当前用户允许的门户。可用值为“ tab” |“ self”。 “选项卡”在新选项卡中打开门户,“自我”在当前选项卡中打开。默认价值是“ tab”。
<bricks>强制性的申报砖
<brick id="BRICK_UNIQUE_ID" xsi:type="ANY_FQCN_BRICK">零或更多一块砖的宣言。 ID在集合中必须唯一。 xsi:type必须是完全限定的类名(包括名称空间)。相同的xsi:type块可以有多个实例,只要它们的ID不同即可。在本节中查看各种类型的积木[  :8082/bin/view/5/5.5/5.5.3/#bricks]砖块[/url] (请注意,只有公共标签显示在此节点下)
<active>true</active>可选的门户上的砖是否处于活动状态。请注意,仍然可以通过其URL访问在主页和导航菜单上均不可见的活动砖。可用值为true | false,默认值为true
<width>6</width>可选的主页上图块的宽度。价值必须是1-12之间的整数,其中12是整个行的宽度。默认价值为3。
<rank>可选的主页和导航菜单上砖的等级。如果未指定,将放在第一位。
<default>1</default>可选的在首页和导航菜单上均排名。价值必须是浮点数。
<home>1</home>可选的仅在首页上排名。价值必须是浮点数。
<navigation_menu>1</navigation_menu>可选的在导航菜单上排名。价值必须是浮点数。
<title>可选的主页和导航菜单上砖的标题。
<default>Brick:Portal:Foo:Bar</default>可选的主页和导航菜单上的标题。
<home>Brick:Portal:Foo:Bar</home>可选的仅在首页上显示标题。
<navigation_menu>Brick:Portal:Foo:Bar</navigation_menu>可选的标题仅在导航菜单上。
<description>Brick:Portal:Foo:Bar+</description>可选的将在主页上显示的砖块说明。
<visible>可选的砖在主页和导航菜单上是否可见。如果未指定,则两者均默认为true。
<home>true</home>可选的砖在主页上可见吗?可用值为true | false,默认值为true
<navigation_menu>true</navigation_menu>可选的导航菜单上是否显示砖块。可用值为true | false,默认值为true
<decoration_class>强制性的主页和导航菜单上砖的图标的CSS类。可以使用Glyphicon,Font Awesome或您自己的CSS类。
<default>fa fa-user fa-2x</default>可选的CSS类应用于首页和导航菜单。
<home>fa fa-user fa-2x</home>可选的主页上应用的CSS类。
<navigation_menu>fa fa-user fa-2x</navigation_menu>可选的在导航菜单上应用的CSS类。
<templates>可选的可以覆盖的砖块模板
<template id="page">零或更多TWIG模板的路径,用于覆盖默认模板。路径必须相对于env-xxx。可以用来裁切砖块(主页)或页面的模板。 ID属性是必填项,并且必须为“ tile”或“ page”。
<security>可选的简档能否看到此积木的限制
<allowed_profiles>SELECT URP_Profiles WHERE name = 'Portal user'</allowed_profiles>可选的OQL返回简档(角色)的成员可以看到此积木。如果省略,则所有未明确拒绝的简档(角色)都可以看到它。
<denied_profiles>OQL</denied_profiles>可选的简档(角色)无法看到此积木。
<forms>强制性的申报表格
<form id="name">零或更多表单的声明。 ID必须是唯一的
<class>ServiceSubcategory</class>强制性的表单的对象类。如果未定义子类,则子类将继承此表单
<properties>可选的结构节点
<display_mode>cosy</display_mode>可选的表单字段的显示模式。 “舒适”用于在值布局上放置常规标签; “紧凑”,用于并排布局,标签留出25%的空间,输入留出75%的空间; “密集”并排布局,输入填充所有可用空间。您还可以使用自定义的CSS类,该类将在表单上用作“form_xxx”,在字段上用作“form_field_xxx”。可用值是cosy | compact | dense | CUSTOM_form,默认值为cosy。
<always_show_submit>false</always_show_submit>可选的设置为false时,对象上的转换可用时,提交按钮将隐藏。可用值为true | false,默认值为false。
<navigation_rules>可选的导航规则适用于此表单。
<submit>可选的NR适用于commit/update按钮。请注意,不考虑转换按钮。
<default>go-to-object</default>强制性的在整页打开表单时要应用的导航规则的ID。
<modal>go-to-object</modal>强制性的将使用以模式打开表单时要应用的导航规则的ID(如果不存在)。
<cancel>可选的NR应用于取消按钮。
<default>close-form</default>强制性的在整页打开表单时要应用的导航规则的ID。
<modal>close-form</modal>强制性的将使用以模式打开表单时要应用的导航规则的ID(如果不存在)。
<fields>可选的声明的字段。如果为空,将仅显示树枝标签的字段。如果省略,则仅显示zlist详细信息中的字段,树枝标签将被忽略
<field id="title">零或更多字段的声明。 ID必须是该类的有效属性代码。如果不放在树枝标签中,将一个接一个地放置。缺少必填属性将自动添加到表单
<slave>true</slave>可选的是现场奴隶。如果存在,则标志将与来自datamodel/lifecycle的标志合并。可用值为true | false,默认值为true
<read_only>true</read_only>可选的注意!该标志不起作用,如果有需要,请使用TWIG。
<mandatory>true</mandatory>可选的是必填字段。如果存在,则标志将与来自datamodel/lifecycle的标志合并。可用值为true | false,默认值为true
<hidden>true</hidden>可选的被隐藏的领域。如果存在,则标志将与来自datamodel/lifecycle的标志合并。可用值为true | false,默认值为true
<must_prompt>true</must_prompt>可选的是字段必须提示。如果存在,则标志将与来自datamodel/lifecycle的标志合并。可用值为true | false,默认值为true
<must_change>true</must_change>可选的是变更字段。如果存在,则标志将与来自datamodel/lifecycle的标志合并。可用值为true | false,默认值为true
<twig>可选的表单布局。您可以在此菜单下使用任何HTML标记,以制作出完美的表单模板。如果未定义,则字段将一个接一个地放置。
<div class="form_field" data-field-id="title" data-field-flags="mandatory" data-field-display-mode="cosy">零或更多将带有“数据-field-id”属性的div放入表单。标签类是强制性的,必须包含“form_field”类。属性“数据-field-id”必须是该类的有效属性代码。可选地,您可以在该特定字段的布局中向表单添加“data-field-display-mode”属性(值可以紧凑)。
<modes>可选的声明的模式。如果未定义,则表单将适用于所有模式
<mode id="apply_stimulus">零或更多定义表单在此类中可用的模式。可用值是view | edit | create | apply_stimulus
<stimuli>可选的仅适用于apply_stimulus模式,定义了适用的刺激
<stimulus id="name">零或更多基于此激励代码,当前的表单将用于转换
<classes>强制性的宣告班
<class id="Contact">零或更多上课声明。类(或其祖先之一)必须定义为在实例中显示。 ID必须是有效的对象类
<scopes>强制性的声明范围
<scope id="name">零或更多范围的声明。范围定义了范围可以访问的对象集,这些对象对于简档是累积的用户
<oql_view>SELECT Contact WHERE org_id = :current_contact->org_id</oql_view>强制性的OQL查询,它定义了允许查看的对象集
<oql_edit>SELECT Contact WHERE id = :current_contact_id</oql_edit>可选的OQL查询,它定义了允许编辑的对象集。请注意,这仅适用于oql_view中的子集。
<ignore_silos>false</ignore_silos>可选的当设置为“ true”时,此范围的OQL将不限于当前用户的允许组织。值可以为true | false,默认为“ false”
<allowed_profiles>可选的声明了将可以访问该范围的简档(角色)。如果不存在此标签,则所有简档(角色)都可以访问范围。
<allowed_profile id="Portal User">零或更多可以访问该范围的简档的名称。 ID必须是唯一的,并且是有效的简档。
<lists>可选的演示列表。到目前为止,仅在门户中的对象的LinkedSet中使用。
<list id="default">零或更多声明清单。 ID必须是唯一的。支持的值是“列表”(用于对象的链接集)和“默认”(用作后备)
<items>强制性的声明的属性显示在列表中。
<item id="status">零或更多属性的声明。 ID必须是唯一的,并且必须是对象类的有效属性代码
<rank>10</rank>可选的属性在列表中的排名。最低至上。
<lifecycle>可选的生命周期:如果省略,则按简档(角色)拒绝刺激用户简档(角色)定义已应用
<stimuli>强制性的门户上禁用的事件列表
<stimulus id="stimulus_code">最后一个使用其代码作为ID声明刺激。
<denied_profiles>可选的宣布简档(角色)将无法访问该刺激。如果不存在此标签,则将拒绝所有简档(角色)进行刺激。
<denied_profile id="Portal User">零或更多在门户中将无法访问该激励的简档的名称。 ID必须是有效的简档。
<action_rules>可选的宣布功能规则。 AR是操作活动,将应用于特定功能上特定砖块中的对象表单。它们可以组合。
<action_rule id="contact-to-userrequest">零或更多功能规则的声明。 ID必须是唯一的。
<source_oql><![CDATA[SELECT Contact AS C WHERE C.id = :current_contact_id]]></source_oql>可选的将值从特定的对象复制到另一个时,请使用此标签指定OQL查询。 (例如,当前的联系人)注意:请使用source_oql或source_class,但不能两者都使用。注意2:source_class标签不支持抽象类,因为现在您必须为每个叶类重复标签规则。
<source_class>Service</source_class>可选的从砖块中单击的对象复制值时,请使用此标签指定对象类。 (例如,服务目录中的对象或ServiceSubCategory)注意:请使用source_oql或source_class,但不能两者都使用。
<presets>可选的声明的预设
<preset id="1">set(caller_id, $current_contact_id$)</preset>零或更多预设声明。 ID是唯一的。与source_oql | source_class结合使用时,将预置对象的属性价值。语法与ObjectCopier相似,支持的动词被设置| copy | add_to_list。
<navigation_rules>可选的声明的导航规则。 NR是操作活动,它将定义在单击对象表单的Submit/cancel按钮之后要去的地方。
<navigation_rule id="contact-to-userrequest" xsi:type="go-to-manage-brick">零或更多导航规则的声明。 ID在集合中必须唯一。 xsi:type必须是可用的之一,请参见“导航规则”部分。 (请注意,仅公共标签显示在此节点下)。
砖块
以下是基于itop-门户库构建的功能。您可以在单独的模块中实现自己的积木,只要它的名称(即xsi:type)不干扰现有积木即可。
标签用法描述
<brick id="UNIQUE_ID" xsi:type="Combodo\iTop\Portal\Brick\UserProfileBrick">强制性的连接了用户描述版砖。
<show_picture_form>true</show_picture_form>可选的显示隐藏的用户描述图片表单。可用值为true | false,默认值为true。
<show_preferences_form>true</show_preferences_form>可选的显示隐藏的用户偏好表单。可用值为true | false,默认值为true。
<show_password_form>true</show_password_form>可选的显示隐藏的用户密码表单。可用值为true | false,默认值为true。
<form>强制性的联系人信息版本表单用于所连接的用户。行为与门户的全局形式完全相同,请检查相应部分。
<brick id="UNIQUE_ID" xsi:type="Combodo\iTop\Portal\Brick\BrowseBrick">零或更多浏览对象的分层并为每个级别指定操作活动(查看或编辑对象,然后从该对象创建另一个对象)。可以从多个视图(例如常规列表或树)中进行导航。用例可能是浏览对象目录,以查找用于创建您的请求的目录。
<levels>强制性的申报的水平
<level id="UNIQUE_ID">强制性的等级声明。 ID必须是唯一的,整数是更安全的,避免使用'-'
<class>ServiceFamily</class>可选的对象类在此级别上显示。忽略是否&#8203;&#8203;存在标签。
<oql><![CDATA[SELECT ServiceFamily]]></oql>可选的OQL查询定义要显示的对象类的子集。如果已定义,则将优先级替换为类标签。
<title>可选的该级别的标题。主要在列表模式下用作列标题。
<name_att>可选的属性类将显示为对象名称。默认值为“名称”。如果定义了操作活动,则该属性上的第一个可用
<tooltip_att>可选的属性类将显示在工具提示中
<description_att>可选的属性类将在对象名称旁边以短文本显示。 (注意:这在“列表”模式下不使用)
<image_att>可选的属性类将作为对象名称旁边的图像显示。 (注意:目前仅在“马赛克”模式下使用)
<fields>可选的在列表模式下显示的其他字段的列表(仅用于其他模式下的过滤)
<field id="UNIQUE_ID">零或更多属性类以显示为附加信息。将在过滤时使用。必须是该类的有效属性代码
<hidden>false</hidden>可选的隐藏该字段,使其不会显示,但仍由过滤器使用。可用值true | false,默认值为false。
<actions>可选的适用于该级别对象的操作活动。
<action id="UNIQUE_ID" xsi:type="drilldown">零或更多ID必须是唯一的。 xsi:type定义功能的类型。可用的类型为rilldown | view | create_from_this。
<title>Create a user request</title>可选的显示为功能标题的字符串
<icon_class>fc fc-new-request fc-1-6x fc-flip-horizontal</icon_class>可选的用于功能装饰的CSS类。除了您自己的类之外,还支持Bootstrap字形和FontAwesome类。
<opening_target>modal</opening_target>可选的定义如何完成功能。值可以是“模式”(在模式窗口中打开),“新”(在新窗口中)或“自身”(在当前窗口中)。默认价值为“模态”
<rank>1</rank>可选的功能菜单中的功能显示等级。最小的数字将是功能的主要操作活动。
<rules>可选的功能的功能规则
<rule id="UNIQUE_ID">零或更多ID必须是唯一的,并且对应于门户定义的有效功能规则。
<class>UserRequest</class>可选的未指定factory_method标签时,仅适用于功能[xsi:type =“ create_from_this”]。要创建的对象的类名。
<factory_method><![CDATA[\Ticket::CreateFromServiceSubcategory]]></factory_method>可选的未指定类标签时,仅适用于功能[xsi:type =“ create_from_this”]。将返回要使用的DBObject的标准方法名称(例如,返回标准门户中的ServiceSubcategory的UserRequest或事件依赖)。
<levels>可选的可选子级别。必须通过属性链接到父级别
<level id="UNIQUE_ID">强制性的子级别的声明。与父级别具有相同的标签,另外还包含以下内容。
<parent_att>servicefamily_id</parent_att>强制性的属性类将当前类链接到父级别的类
<browse_modes>强制性的浏览模式列表
<availables>强制性的可用浏览模式列表
<mode id="UNIQUE_ID">零或更多可用的浏览模式。 ID必须是唯一的并且是有效的浏览模式。标准模式是列表。
<default>list</default>强制性的默认浏览模式。必须是可用的浏览模式之一:list | tree | mosaic
<default_list_length>20</default_list_length>可选的设置项目列表的默认数量将显示。可用值为10 | 20 | 50 | -1
<data_loading>auto</data_loading>强制性的定义如何加载数据。可用值是自动的。 auto表示如果数据的计数小于实例的“ lazy_loading_阈值”模块_参数,则将以一次射击的方式加载数据。完整意味着所有数据将被立即加载。惰性意味着数据将在每个页面级别动态加载。该参数应该调整为数据的性能。
<brick id="UNIQUE_ID" xsi:type="Combodo\iTop\Portal\Brick\ManageBrick">零或更多允许通过在2轴上对对象进行分组和编辑来管理对象。通常用于管理正在进行的请求或一组配置项。
<class>Ticket</class>可选的对象类在砖块中管理。如果未定义标签,则为必填项,否则忽略。
<oql><![CDATA[SELECT Ticket]]></oql>可选的OQL查询定义了要在模块中管理的对象的子集。优先于标签类。
<opening_target>modal</opening_target>可选的定义如何完成功能。值可以是“模式”(在模式窗口中打开),“新”(新窗口)或“自身”(当前窗口)。默认价值为“模态”
<opening_mode>edit</opening_mode>可选的定义应如何打开对象。值可以编辑|查看,默认为“编辑”。请注意,即使将其设置为“ edit”,用户(范围和安全图层)在版本中不允许的对象也将在“视图”模式下打开。
<fields>可选的在对象列表中显示的属性列表,如果省略,将使用zlist“ list”。
<field id="UNIQUE_ID">零或更多属性显示在列表中,将在过滤时使用。 ID必须是该类的有效代码属性。
<display_modes>可选的显示模式列表,如果省略,将使用“列表”作为唯一显示类型
<availables>可选的可用显示模式列表
<mode id="UNIQUE_ID">零或更多可用的显示模式。 ID必须是唯一的并且是有效的显示模式。标准模式是列表|条形图|条形图。
<default>强制性的默认显示模式。如果省略标签'display_modes',则使用'list'。必须是已声明的可用显示模式之一
<tile>可选的砖块的显示模式。必须为以下之一:文字|徽章|饼图|条形图|顶部列表。默认为“文本”
<export>可选的从详细列表视图允许用户到导出数据。提供导出的``fields''或设置为true的导出``导出_default_fields''
<fields>可选的导出的属性列表(如果不需要默认值)。
<field id="UNIQUE_ID">零或更多属性至导出。 ID必须是该类的有效代码属性。
<export_default_fields>true</export_default_fields>可选的如果设置为true,则将使用在列表DataModel上定义的字段,并且即使提供了“字段”标签也将被忽略;如果设置为false并且未定义“字段”,则不会显示导出按钮。
<grouping>强制性的宣布分组。
<tabs>强制性的选项卡上的分组是通过OQL查询完成的,而表上的分组是在finalclass上完成的。
<show_tab_counts>false</show_tab_counts>可选的为每个选项卡显示对象计数。可用值为true | false。默认为false。
<attribute>operational_status</attribute>可选的根据属性的不同值进行分组。如果存在标签组,则为可选。
<limit>5</limit>可选的通过属性进行分组时,请限制组数。
<show_others>true</show_others>可选的设置限制后,将其他结果汇总到一个称为“其他”的结果中。可用值为true | false。默认为false。
<groups>可选的通过显式OQL查询进行分组。如果存在标签属性,则为可选。
<group id="UNIQUE_ID">零或更多团体宣言
<rank>1</rank>可选的选项卡在组中的排名
<title>Brick:Portal:OngoingRequests:Tab:OnGoing</title>强制性的标签标题
<description>Brick:Portal:OngoingRequests:Tab:OnGoing+</description>可选的标签说明,将显示在页面标题下方
<condition><![CDATA[SELECT Ticket AS T WHERE operational_status NOT IN ("closed", "resolved")]]></condition>强制性的OQL查询将应用于砖块的对象,以使该组
<default_list_length>20</default_list_length>可选的设置项目列表的默认数量将显示。可用值为10 | 20 | 50 | -1
<data_loading>auto</data_loading>强制性的定义如何加载数据。可用值是自动的。 auto表示如果数据的计数小于实例的“ lazy_loading_阈值”model_参数,则将以一次射击的方式加载数据。完整意味着所有数据将被立即加载。惰性意味着数据将在每个页面级别动态加载。该参数应该调整为数据的性能。
<brick id="UNIQUE_ID" xsi:type="Combodo\iTop\Portal\Brick\CreateBrick">零或更多显示对象创建表单。
<modal>true</modal>强制性的表单应该在模式对话框中还是在整个页面上。可用值为true | false,默认值为true。
<class>UserRequest</class>强制性的要创建的对象的类。
<rules>强制性的功能规则适用于表单。
<rule id="*UNIQUE_ID*">零或更多功能规则的声明。 ID必须是唯一的。有关更多信息,请参见功能规则部分。
<brick id="UNIQUE_ID" xsi:type="Combodo\iTop\Portal\Brick\FilterBrick">零或更多预过滤另一块砖。
<search_placeholder_value>eg. install office</search_placeholder_value>可选的在过滤器字段中显示为占位符的字符串。默认值为“ Brick:门户:过滤器:SearchInput:占位符”。
<search_submit_label>Search</search_submit_label>可选的提交按钮的标签。默认值为“ Brick:门户:过滤器:SearchInput:Submit”。
<search_submit_class>glyphicon glyphicon-search</search_submit_class>可选的CSS类添加在提交按钮上。例如,这可用于设置Glyphicon或Font Awesome图标。
<target_brick>强制性的结构节点。
<id>ongoing-tickets-for-portal-user</id>强制性的必须对应于目标砖的ID。
<type>Combodo\iTop\Portal\Brick\ManageBrick</type>强制性的必须对应于目标砖的xsi:type。截至今天,仅支持BrowseBrick和ManageBrick
<tab>list</tab>强制性的BrowseBrick:用于显示结果的浏览模式(镶嵌除外)。对于ManageBrick:要显示的选项卡(组ID)。
<brick id="UNIQUE_ID" xsi:type="Combodo\iTop\Portal\Brick\AggregatePageBrick">零或更多具有一对多砖瓦的页面。
<aggregate_page_bricks>强制性的要包括在页面中的砖块列表。
<aggregate_page_brick id="PAGE_BRICK_ID">最后一个要包含的砖ID
<rank>1</rank>可选的页面中图块的等级


变更记录
增强门户的数据模型可通过2016年夏季发布的iTop 2.3进行编辑

XML版本1.4
该版本随2017年7月发布的iTop 2.4 beta一起发布。

砖块
  • 过滤器块:扩展包含在核心应用中。
  • UserProfileBrick:可以禁用简档图片,偏好和密码表单。从PHP 5.5.16起可用
   
<brick xsi:type=UserProfileBrick>
      <show_picture_form>true</show_picture_form>
      <show_password_form>false</show_password_form>
      <show_preferences_form>true</show_preferences_form>

  BrowseBrick:

  • “树”模式在名称的顶部显示说明。
  • 默认功能是第一个声明的功能,添加了一个汉堡菜单,建议所有功能
  • 新模式“马赛克”在小型设备上很方便,允许显示与浏览对象相关的图像。
  
<brick xsi:type=BrowseBrick>
     <browse_modes><availables><mode id="mosaic"/></availables></browse_modes>
     <levels><level><image_att>class_field_id</image_att></level></levels>

在同一窗口的选项卡或弹出窗口中打开表单

<brick xsi:type=BrowseBrick><levels><level><actions><action><opening_target>new</opening_target>... <brick xsi:type=ManageBrick><opening_target>self</opening_target>...

ManageBrick在选项卡上显示计数

<brick xsi:type=ManageBrick><groupings><tabs><show_tab_count>true</show_tab_count>...
Create Brick现在支持抽象类,对此没有特定的标签

形式
  • 词典条目现在可以形式使用。
  <legend>{{'Form:Portal:TicketEdit:Fieldset:General'|dict_s}}</legend>

  • 表单上可配置的显示模式为变更的mmpropertiessdisplay_mode布局
  • 变更布局的字段上可配置的显示模式
<div class="form_field" data-field-id="title" data-field-display-mode="cosy">

  • LinkedSet属性现在可以默认在表单打开时打开。
  <div class="form_field" data-field-id="contacts_list" data-field-opened="true">

  • 可以添加操作活动按钮
  • 可以为特定的转换专门定义表单,因此您可以决定要提示哪些字段,从而覆盖控制台行为。在这里检查[  :8082/bin/view/5/5.5/5.5.3/#portaloverwriting_a_form]更多细节[/url]

例如,显示一个只读字段:

<div class="form_field" data-field-id="org_id" data-field-flags="read_only"/>

  • 默认情况下,建议进行转换时,表单上的“提交”按钮现在处于隐藏状态。如果要复原以前的行为,请在XML定义的表单上使用此标签<always_show_submit>。

   <module_design id="itop-portal">
      <forms>
        <form id="ticket-create" _delta="if_exists">
          <properties _delta="define_if_not_exists">
            <always_show_submit _delta="force">true</always_show_submit>
          </properties>
        </form>
      </forms>
    </module_design>


其他
  • 可配置其他门户网站的开放模式
  • 您可以将转换隐藏给某些门户用户,例如,可以允许支持人员在门户中对分派和工单进行隐藏,而其他所有用户则不允许。但是,一旦定义了门户生命周期,就必须明确描述所有被拒绝的事件(刺激),除非所有被明确列出的被拒绝的简档(角色),否则此拒绝是针对所有简档(角色)的。
   
<module_design id="itop-portal">
      <classes>
        <class id="Ticket">
          <lifecycle>
            <stimuli>
              <!-- ev_assigned and ev_resolved will NEVER be available in portal -


->
              <stimulus id="ev_assign">
              </stimulus>
              <stimulus id="ev_resolved">
              </stimulus>
              <!-- ev_pending will be available in portal to other profiles than


Support Agent -->
              <stimulus id="ev_pending">
                <denied_profiles>
                   <&#8203;denied_profile id="&#8203;Support Agent"/&#8203;>
                </denied_profiles>
              </stimulus>
            </stimuli>
          </lifecycle>
        </class>
      </classes>
    </module_design>



XML版本1.5砖块
  • ManageBrick:此版本为Manage Brick提供了新的显示类型(饼图,条形图和徽章)。


<brick xsi:type="Combodo\iTop\Portal\Brick\ManageBrick">

   <display_modes>
      <availables>
          <mode id="list"/>
          <mode id="pie-chart"/>
         <mode id="bar-chart"/>
      </availables>
      <default>pie-chart</default>
      <tile>badge</tile>
   </display_modes>

  • 它还允许将导出数据转换为Excel。
  
<export><export_default_fields>true</export_default_fields>...

可以指定导出的字段:

<export><fields><field id="title"/>....

  组数可以限制:

  <grouping><tabs><limit>5</limit>...

当组的数量受到限制时,其余的可以汇总:

  <grouping><tabs><limit>5</limit><show_others>true</show_others>...

  Aggregated Brick_:要在页面中显示的新砖,另一块砖中的砖

XML版本1.7形式
  • LinkedSet属性可以显示(或不显示)范围之外的项目。
<div class="form_field" data-field-id="contacts_list" data-field-ignore-scopes="true"/>


ManagedBrick上的选项卡描述
  • 现在可以指定标签说明,显示在砖标题的正下方。
  • 像往常一样,它可以是一个字典条目,例如Br&#8203;&#8203;ick:门户:OngoingRequest:Tab:OnGoing +,它不存在,需要并行创建。
[ ttps://www.itophub.io/wiki/page?do=export_code&id=2_7_0%3Acustomization%3Aportal_xml&codeblock=17]ManageBrick[/url]


  <grouping><tabs><groups><group id="MyTab"><description>enter there your tab description...


在浏览和管理方块上列出大小
  • 变更现在可以使用“管理并浏览”模块的默认大小。
  • 可能的选项是10、20、50和-1,这表示不分页显示所有对象。默认值为20,就像无法设置时一样。


<default_list_length>-1</default_list_length>



在Browse Brick中使用n:n关系
  • 现在可以通过n-n关系在“浏览”模块中导航。
  • 您可以在“服务”和“服务”子类别的下方显示与应用解决方案,团队相关的文档,并在其成员或“客户合同”下方显示。
  • [ ttps://www.itophub.io/wiki/page?do=export_code&id=2_7_0%3Acustomization%3Aportal_xml&codeblock=19]module-designs / module-design@itop-portal / bricks[/url]


<brick id="team-members" xsi:type="Combodo\iTop\Portal\Brick\BrowseBrick"

_delta="define">
  <title><default>Teams members</default></title>
  <description>Browse brick navigation using n-n relation.</description>
  <decoration_class><default>fa fa-arrow-circle-o-left fa-

2x</default></decoration_class>
  <levels>
    <level id="1">
      <class>Team</class>
      <levels>
        <level id="1">
          <class>Person</class>
          <--! parent_att can be an AttributeLinkedsetIndirect -->
          <--! before only AttributeExternalKey was possible -->
          <parent_att>team_list</parent_att>
          <name_att/>
          <tooltip_att>email</tooltip_att>
          <description_att>function</description_att>
          <title>Class:Person</title>
          <levels/>
          <actions>
            <action id="view" xsi:type="view"><rank>1</rank></action>
          </actions>
        </level>
      </levels>
    </level>
  </levels>
  <browse_modes>
    <availables>
      <mode id="list"/>
      <mode id="tree"/>
    </availables>
    <default>tree</default>
  </browse_modes>
  <default_list_length>-1</default_list_length>
  <data_loading>lazy</data_loading>
</brick>



导航规则
您可以创建导航规则并从任何表单调用它们

可能的规则


[ ttps://www.itophub.io/wiki/page?do=export_code&id=2_7_0%3Acustomization%3Aportal_xml&codeblock=20]Close window[/url]

<navigation_rule id="close-form" xsi:type="close"/>


[ ttps://www.itophub.io/wiki/page?do=export_code&id=2_7_0%3Acustomization%3Aportal_xml&codeblock=21]Go to the homepage[/url]


  <navigation_rule id="go-to-homepage" xsi:type="go-to-homepage"/>


[ ttps://www.itophub.io/wiki/page?do=export_code&id=2_7_0%3Acustomization%3Aportal_xml&codeblock=22]Open a manage brick[/url]


  <navigation_rule id="go-to-resolved-requests" xsi:type="go-to-manage-brick">
    <!-- Mandatory, ID of the ManageBrick to go to -->
    <id>ongoing-tickets-for-portal-user</id>
    <!-- Optional, must be an ID of the available display modes of the brick  -->
    <display_mode>list</display_mode>
    <!-- Optional, must be an ID of the grouping tab of the brick -->
    <grouping_tab>resolved</grouping_tab>
    <!-- Optional, a string to preset as filter in the brick. -->
    <!-- <filter>:this->caller_id_friendlyname</filter> -->
  </navigation_rule>



[ ttps://www.itophub.io/wiki/page?do=export_code&id=2_7_0%3Acustomization%3Aportal_xml&codeblock=23]Open a browse brick[/url]


<navigation_rule id="go-to-services" xsi:type="go-to-browse-brick">
    <!-- Mandatory, ID of the BrowseBrick to go to -->
    <id>services</id>
    <!-- Optional, must be an ID of the available browse modes of the brick -->
    <!-- <browse_mode>tree</browse_mode> -->
    <!-- Optional, a string to preset as filter in the brick. -->
    <!-- <filter>computer</filter> -->
  </navigation_rule>



[ ttps://www.itophub.io/wiki/page?do=export_code&id=2_7_0%3Acustomization%3Aportal_xml&codeblock=24]Open a brick, developer method[/url]
  <navigation_rule id="go-to-change-overview" xsi:type="go-to-brick">
    <route>
      <id>p_aggregatepage_brick</id>
      <params>
        <param id="sBrickId">change-overview</param>
      </params>
    </route>
  </navigation_rule>
  <navigation_rule id="go-to-ongoing-tickets" xsi:type="go-to-brick">
    <route>
      <id>p_manage_brick_display_as</id>
      <params>
        <param id="sBrickId">ongoing-tickets-for-portal-user</param>
        <param id="sDisplayMode">list</param>
        <param id="sGroupingTab">resolved</param>
      </params>
    </route>
  </navigation_rule>



[ ttps://www.itophub.io/wiki/page?do=export_code&id=2_7_0%3Acustomization%3Aportal_xml&codeblock=25]Open an object[/url]


  <navigation_rule id="go-to-object" xsi:type="go-to-object">
    <!-- Mandatory, opens the first result from the OQL. Result may vary ˉ\_(ツ)_/ˉ


but ":this" available! -->
    <oql>SELECT Ticket WHERE id = :this->id</oql>
    <!-- Optional, mode of the object form, either view|edit -->
    <mode>view</mode>
    <!-- Optional, how to open the object form, replace the current form (current),


in a modal (modal) or in the page (page) -->
    <opening_target>modal</opening_target>
  </navigation_rule>

然后,您可以从任何表单调用这些导航规则

[ ttps://www.itophub.io/wiki/page?do=export_code&id=2_7_0%3Acustomization%3Aportal_xml&codeblock=26]module_design@itop-portal / forms[/url]


<form id="ticket-apply-stimulus">
  <properties>
    <navigation_rules _delta="define">
      <submit>
        <default>go-to-resolved-requests</default>
      </submit>
      <cancel>
        <default>go-to-homepage</default>
        <modal>close-form</modal>
      </cancel>
    </navigation_rules>
  </properties>
</form>






上一篇:二次开发-调整门户-门户限制
下一篇:二次开发-调整门户-门户调整示例
忘我之境

写了 303 篇文章,拥有财富 1636,被 3 人关注

您需要登录后才可以回帖 登录 | 立即注册
B Color Link Quote Code Smilies

成为第一个吐槽的人

Powered by IT 运维管理
返回顶部