323 lines
17 KiB
Plaintext
323 lines
17 KiB
Plaintext
# --
|
|
# Copyright (C) 2001-2019 OTRS AG, https://otrs.com/
|
|
# --
|
|
# This software comes with ABSOLUTELY NO WARRANTY. For details, see
|
|
# the enclosed file COPYING for license information (GPL). If you
|
|
# did not receive this file, see https://www.gnu.org/licenses/gpl-3.0.txt.
|
|
# --
|
|
|
|
<div class="MainBox ARIARoleMain">
|
|
<div class="ClearLeft"></div>
|
|
<div class="Headline">
|
|
<div class="Flag">
|
|
<span class="[% Data.WorkOrderStateSignal | html %]">[% Translate(Data.WorkOrderState) | html %]</span>
|
|
</div>
|
|
<h1 title="[% Config("ITSMWorkOrder::Hook") %]: [% Data.ChangeNumber | html %]-[% Data.WorkOrderNumber | html %] – [% Data.WorkOrderTitle | html %]">
|
|
[% Config("ITSMWorkOrder::Hook") %]: [% Data.ChangeNumber | html %]-[% Data.WorkOrderNumber | html %] <span>—</span> [% Data.WorkOrderTitle | truncate(70) | html %]
|
|
</h1>
|
|
</div>
|
|
|
|
<div class="LayoutFixedSidebar SidebarLast">
|
|
<div class="SidebarColumn">
|
|
<div class="WidgetSimple">
|
|
<div class="Header">
|
|
<div class="WidgetAction Toggle">
|
|
<a href="#" title="[% Translate("Show or hide the content") | html %]"><i class="fa fa-caret-right"></i><i class="fa fa-caret-down"></i></a>
|
|
</div>
|
|
<h2>[% Translate("Workorder Information") | html %]</h2>
|
|
</div>
|
|
<div class="Content">
|
|
[% RenderBlockStart("Meta") %]
|
|
<fieldset class="TableLike FixedLabelSmall">
|
|
<label>[% Translate("Workorder State") | html %]:</label>
|
|
<div class="Value">
|
|
<div class="Flag Small">
|
|
<span class="[% Data.WorkOrderStateSignal | html %]">[% Translate(Data.WorkOrderState) | html %]</span>
|
|
</div>
|
|
[% Translate(Data.WorkOrderState) | html %]
|
|
</div>
|
|
<div class="Clear"></div>
|
|
|
|
<label>[% Translate("Workorder Type") | html %]:</label>
|
|
[% RenderBlockStart("EmptyWorkOrderType") %]
|
|
<p class="Value" title="-">-</p>
|
|
[% RenderBlockEnd("EmptyWorkOrderType") %]
|
|
[% RenderBlockStart("WorkOrderType") %]
|
|
<p class="Value">[% Data.WorkOrderType | html %]</p>
|
|
[% RenderBlockEnd("WorkOrderType") %]
|
|
<div class="Clear"></div>
|
|
</fieldset>
|
|
|
|
<fieldset class="TableLike FixedLabelSmall">
|
|
<label>[% Translate("Planned Start Time") | html %]:</label>
|
|
[% RenderBlockStart("EmptyPlannedStartTime") %]
|
|
<p class="Value" title="-">-</p>
|
|
[% RenderBlockEnd("EmptyPlannedStartTime") %]
|
|
[% RenderBlockStart("PlannedStartTime") %]
|
|
<p class="Value">[% Data.PlannedStartTime | Localize("TimeLong") %]</p>
|
|
[% RenderBlockEnd("PlannedStartTime") %]
|
|
<div class="Clear"></div>
|
|
|
|
|
|
<label>[% Translate("Planned End Time") | html %]: </label>
|
|
[% RenderBlockStart("EmptyPlannedEndTime") %]
|
|
<p class="Value" title="-">-</p>
|
|
[% RenderBlockEnd("EmptyPlannedEndTime") %]
|
|
[% RenderBlockStart("PlannedEndTime") %]
|
|
<p class="Value">[% Data.PlannedEndTime | Localize("TimeLong") %]</p>
|
|
[% RenderBlockEnd("PlannedEndTime") %]
|
|
<div class="Clear"></div>
|
|
|
|
<label>[% Translate("Actual Start Time") | html %]: </label>
|
|
[% RenderBlockStart("EmptyActualStartTime") %]
|
|
<p class="Value" title="-">-</p>
|
|
[% RenderBlockEnd("EmptyActualStartTime") %]
|
|
[% RenderBlockStart("ActualStartTime") %]
|
|
<p class="Value">[% Data.ActualStartTime | Localize("TimeLong") %]</p>
|
|
[% RenderBlockEnd("ActualStartTime") %]
|
|
<div class="Clear"></div>
|
|
|
|
<label>[% Translate("Actual End Time") | html %]: </label>
|
|
[% RenderBlockStart("EmptyActualEndTime") %]
|
|
<p class="Value" title="-">-</p>
|
|
[% RenderBlockEnd("EmptyActualEndTime") %]
|
|
[% RenderBlockStart("ActualEndTime") %]
|
|
<p class="Value">[% Data.ActualEndTime | Localize("TimeLong") %]</p>
|
|
[% RenderBlockEnd("ActualEndTime") %]
|
|
<div class="Clear"></div>
|
|
</fieldset>
|
|
|
|
<fieldset class="TableLike FixedLabelSmall">
|
|
[% RenderBlockStart("ShowPlannedEffort") %]
|
|
<label>[% Translate("Planned Effort") | html %]: </label>
|
|
[% RenderBlockStart("EmptyPlannedEffort") %]
|
|
<p class="Value" title="-">-</p>
|
|
[% RenderBlockEnd("EmptyPlannedEffort") %]
|
|
[% RenderBlockStart("PlannedEffort") %]
|
|
<p class="Value">[% Data.PlannedEffort | html %]</p>
|
|
[% RenderBlockEnd("PlannedEffort") %]
|
|
<div class="Clear"></div>
|
|
[% RenderBlockEnd("ShowPlannedEffort") %]
|
|
|
|
[% RenderBlockStart("ShowAccountedTime") %]
|
|
<label>[% Translate("Accounted Time") | html %]: </label>
|
|
[% RenderBlockStart("EmptyAccountedTime") %]
|
|
<p class="Value" title="-">-</p>
|
|
[% RenderBlockEnd("EmptyAccountedTime") %]
|
|
[% RenderBlockStart("AccountedTime") %]
|
|
<p class="Value">[% Data.AccountedTime | html %]</p>
|
|
[% RenderBlockEnd("AccountedTime") %]
|
|
<div class="Clear"></div>
|
|
[% RenderBlockEnd("ShowAccountedTime") %]
|
|
</fieldset>
|
|
|
|
# show dynamic fields
|
|
<fieldset class="TableLike FixedLabelSmall Narrow">
|
|
[% RenderBlockStart("DynamicField") %]
|
|
<label>[% Translate(Data.Label) | html %]:</label>
|
|
<p class="Value">
|
|
[% RenderBlockStart("DynamicFieldLink") %]
|
|
<span title="[% Data.Title | html %]"><a href="[% Data.Link | Interpolate %]" target="_blank" class="DynamicFieldLink">[% Data.Value %]</a></span>
|
|
[% RenderBlockEnd("DynamicFieldLink") %]
|
|
[% RenderBlockStart("DynamicFieldPlain") %]
|
|
<span title="[% Data.Title | html %]">[% Data.Value %]</span>
|
|
[% RenderBlockEnd("DynamicFieldPlain") %]
|
|
</p>
|
|
<div class="Clear"></div>
|
|
[% RenderBlockEnd("DynamicField") %]
|
|
</fieldset>
|
|
|
|
# example of how to use fixed dynamic field blocks for customizations
|
|
# Note: Field1 and Field2 are the names of the fields and had to be replaced with the actual
|
|
# field names
|
|
# <fieldset class="TableLike FixedLabelSmall Narrow">
|
|
#[% RenderBlockStart("DynamicField_Field1") %]
|
|
# <label>[% Translate(Data.Label) | html %]:</label>
|
|
# <p class="Value">
|
|
#[% RenderBlockStart("DynamicField_Field1_Link") %]
|
|
# <span title="[% Data.Title | html %]"><a href="[% Data.Link %]" target="_blank">[% Data.Value %]</a></span>
|
|
#[% RenderBlockEnd("DynamicField_Field1_Link") %]
|
|
#[% RenderBlockStart("DynamicField_Field1_Plain") %]
|
|
# <span title="[% Data.Title | html %]">[% Data.Value %]</span>
|
|
#[% RenderBlockEnd("DynamicField_Field1_Plain") %]
|
|
# </p>
|
|
#[% RenderBlockEnd("DynamicField_Field1") %]
|
|
# </fieldset>
|
|
# <fieldset class="TableLike FixedLabelSmall Narrow">
|
|
#[% RenderBlockStart("DynamicField_Field2") %]
|
|
# <label>[% Translate(Data.Label) | html %]:</label>
|
|
# <p class="Value">
|
|
#[% RenderBlockStart("DynamicField_Field2_Link") %]
|
|
# <span title="[% Data.Title | html %]"><a href="[% Data.Link %]" target="_blank">[% Data.Value %]</a></span>
|
|
#[% RenderBlockEnd("DynamicField_Field2_Link") %]
|
|
#[% RenderBlockStart("DynamicField_Field2_Plain") %]
|
|
# <span title="[% Data.Title | html %]">[% Data.Value %]</span>
|
|
#[% RenderBlockEnd("DynamicField_Field2_Plain") %]
|
|
# </p>
|
|
#[% RenderBlockEnd("DynamicField_Field2") %]
|
|
# </fieldset>
|
|
|
|
<fieldset class="TableLike FixedLabelSmall">
|
|
<label>[% Translate("Change Builder") | html %]:</label>
|
|
[% RenderBlockStart("EmptyChangeBuilder") %]
|
|
<p class="Value" title="-">-</p>
|
|
[% RenderBlockEnd("EmptyChangeBuilder") %]
|
|
[% RenderBlockStart("ChangeBuilder") %]
|
|
<p class="Value" title="[% Data.ChangeBuilderUserFullname | html %]">
|
|
[% Data.ChangeBuilderUserFullname | html %]
|
|
</p>
|
|
[% RenderBlockEnd("ChangeBuilder") %]
|
|
<div class="Clear"></div>
|
|
</fieldset>
|
|
|
|
<fieldset class="TableLike FixedLabelSmall">
|
|
<label>[% Translate("Workorder Agent") | html %]:</label>
|
|
[% RenderBlockStart("EmptyWorkOrderAgent") %]
|
|
<p class="Value" title="-">-</p>
|
|
[% RenderBlockEnd("EmptyWorkOrderAgent") %]
|
|
[% RenderBlockStart("WorkOrderAgent") %]
|
|
<p class="Value" title="[% Data.WorkOrderAgentUserFullname | html %]">
|
|
[% Data.WorkOrderAgentUserFullname | html %]
|
|
</p>
|
|
[% RenderBlockEnd("WorkOrderAgent") %]
|
|
<div class="Clear"></div>
|
|
</fieldset>
|
|
|
|
<fieldset class="TableLike FixedLabelSmall">
|
|
<label>[% Translate("Created") | html %]:</label>
|
|
<p class="Value">[% Data.CreateTime | Localize("TimeLong") %]</p>
|
|
<div class="Clear"></div>
|
|
|
|
<label>[% Translate("Created by") | html %]:</label>
|
|
<p class="Value" title="[% Data.CreateUserFullname | html %]">
|
|
[% Data.CreateUserFullname | html %]
|
|
</p>
|
|
<div class="Clear"></div>
|
|
</fieldset>
|
|
|
|
<fieldset class="TableLike FixedLabelSmall">
|
|
<label>[% Translate("Last changed") | html %]:</label>
|
|
<p class="Value">[% Data.ChangeTime | Localize("TimeLong") %]</p>
|
|
<div class="Clear"></div>
|
|
|
|
<label>[% Translate("Last changed by") | html %]:</label>
|
|
<p class="Value" title="[% Data.ChangeUserFullname | html %]">
|
|
[% Data.ChangeUserFullname | html %]
|
|
</p>
|
|
<div class="Clear"></div>
|
|
|
|
[% RenderBlockStart("LinkTableSimple") %]
|
|
[% Data.LinkTableStrg %]
|
|
[% RenderBlockEnd("LinkTableSimple") %]
|
|
</fieldset>
|
|
</div>
|
|
[% RenderBlockEnd("Meta") %]
|
|
</div>
|
|
</div>
|
|
|
|
<div class="ContentColumn">
|
|
<div class="ControlRow"></div>
|
|
<div class="ActionRow">
|
|
<ul class="Actions">
|
|
[% RenderBlockStart("Menu") %]
|
|
[% RenderBlockStart("MenuItem") %]
|
|
<li>
|
|
<a href="[% Env("Baselink") %][% Data.Link | Interpolate %]" id="Menu[% Data.MenuID | html %]" class="[% Data.MenuClass | html %]" title="[% Translate(Data.Description) | html %]">[% Translate(Data.Name) | html %]</a>
|
|
</li>
|
|
[% RenderBlockEnd("MenuItem") %]
|
|
[% RenderBlockEnd("Menu") %]
|
|
</ul>
|
|
</div>
|
|
|
|
<div class="WidgetSimple SpacingTop Expanded">
|
|
<div class="Header">
|
|
<div class="WidgetAction Toggle"><a href="#" title="[% Translate("Show or hide the content.") | html %]"><i class="fa fa-caret-right"></i><i class="fa fa-caret-down"></i></a></div>
|
|
<h2>[% Translate("Workorder") | html %] - [% Data.WorkOrderTitle | truncate(70) | html %]</h2>
|
|
</div>
|
|
<div class="Content">
|
|
<fieldset class="TableLike FixedLabelSmall">
|
|
<label><strong>[% Translate("ITSM Change") | html %]</strong></label>
|
|
<div class="Value">
|
|
<div class="Flag Small">
|
|
<span class="[% Data.ChangeStateSignal | html %]">[% Translate(Data.ChangeState) | html %]</span>
|
|
</div>
|
|
[% Data.ChangeNumber | html %]
|
|
<a href="[% Env("Baselink") %]Action=AgentITSMChangeZoom;ChangeID=[% Data.ChangeID | uri %]">
|
|
[% Data.ChangeTitle | truncate(70) | html %]
|
|
</a>
|
|
</div>
|
|
<div class="Clear"></div>
|
|
|
|
<label><strong>[% Translate("Workorder") | html %]</strong></label>
|
|
<div class="Value">
|
|
<div class="Flag Small">
|
|
<span class="[% Data.WorkOrderStateSignal | html %]">[% Translate(Data.WorkOrderState) | html %]</span>
|
|
</div>
|
|
[% Data.ChangeNumber | html %] - [% Data.WorkOrderNumber | html %]
|
|
<strong>[% Data.WorkOrderTitle | truncate(70) | html %]</strong>
|
|
</div>
|
|
<div class="Clear"></div>
|
|
|
|
[% RenderBlockStart("BrowserLinkMessage") %]
|
|
# Show info, that links within the iframe must be clicked with strg/cmd/shift (depending on the used browser and os)
|
|
# to open the links in a new window without the security permissions given to the iframe
|
|
<div class="ITSMMessageBrowser">
|
|
<p>
|
|
[% Translate("To open links in the following description blocks, you might need to press Ctrl or Cmd or Shift key while clicking the link (depending on your browser and OS).") | html %]
|
|
</p>
|
|
<a class="Close" title="[% Translate("Close this message") | html %]" href="#"><i class="fa fa-times"></i></a>
|
|
</div>
|
|
[% RenderBlockEnd("BrowserLinkMessage") %]
|
|
|
|
[% RenderBlockStart("ITSMContent") %]
|
|
<label>[% Translate( Data.Field ) | html %]: </label>
|
|
<div>
|
|
# Use the HTML5 sandbox attribute to prevent plugins and scripts from being executed in the browser.
|
|
# Use IE's (non-standard) security attribute to achieve something similar in older IE browsers. Append session info to URL because IE will not send cookies.
|
|
# Set 'allow-popups' to allow IE10+ to open links. ref: http://www.w3.org/html/wg/wiki/ChangeProposals/sandbox_allow_popups
|
|
<iframe sandbox="allow-same-origin allow-popups allow-popups-to-escape-sandbox" [% Data.MSSecurityRestricted %] class="Field" id="IframeITSM[% Data.Field | html %]" onload="if (typeof ITSM === 'object' && typeof ITSM.Agent === 'object' && typeof ITSM.Agent.ChangeManagement === 'object' && typeof ITSM.Agent.ChangeManagement.Zoom === 'object') { ITSM.Agent.ChangeManagement.Zoom.IframeAutoHeight($('#IframeITSM[% Data.Field | html %]')); };" src="#" data-src="[% Env("Baselink") %]Action=AgentITSMWorkOrderZoom;Subaction=HTMLView;WorkOrderID=[% Data.WorkOrderID | html %];Field=[% Data.Field | html %];[% Env("SessionName") | html %]=[% Env("SessionID") | html %]"></iframe>
|
|
</div>
|
|
<div class="Clear"></div>
|
|
[% RenderBlockEnd("ITSMContent") %]
|
|
|
|
|
|
<label>[% Translate("Attachment") | html %] ([% Translate("Workorder") | html %]):</label>
|
|
<div class="Field">
|
|
[% RenderBlockStart("AttachmentRow") %]
|
|
<span class="DownloadAttachment" title="[% Translate("Download Attachment") | html %]">
|
|
<a href="[% Env("Baselink") %]Action=[% Env("Action") %];Subaction=DownloadAttachment;Filename=[% Data.Filename | uri %];WorkOrderID=[% Data.WorkOrderID | uri %]">
|
|
[% Data.Filename | html %]
|
|
</a>
|
|
([% Data.Filesize | Localize('Filesize') | html %])
|
|
</span>
|
|
<br/>
|
|
[% RenderBlockEnd("AttachmentRow") %]
|
|
</div>
|
|
<div class="Clear"></div>
|
|
|
|
<label>[% Translate("Attachment") | html %] ([% Translate("Report") | html %]):</label>
|
|
<div class="Field">
|
|
[% RenderBlockStart("ReportAttachmentRow") %]
|
|
<span class="DownloadAttachment" title="[% Translate("Download Attachment") | html %]">
|
|
<a href="[% Env("Baselink") %]Action=[% Env("Action") %];Subaction=DownloadAttachment;Filename=[% Data.Filename | uri %];Type=WorkOrderReport;WorkOrderID=[% Data.WorkOrderID | uri %]">
|
|
[% Data.Filename | html %]
|
|
</a>
|
|
, [% Data.Filesize | html %]
|
|
</span>
|
|
<br/>
|
|
[% RenderBlockEnd("ReportAttachmentRow") %]
|
|
</div>
|
|
<div class="Clear"></div>
|
|
|
|
</fieldset>
|
|
</div>
|
|
</div>
|
|
[% RenderBlockStart("LinkTableComplex") %]
|
|
<div class="Content">
|
|
[% Data.LinkTableStrg %]
|
|
</div>
|
|
[% RenderBlockEnd("LinkTableComplex") %]
|
|
</div>
|
|
</div>
|
|
</div>
|