} collection of status objects to render.
* @param isTranslatable {Boolean} whether a user can translate status names and descriptions or not.
* @param isIconUrlFieldVisible {Boolean} whether iconUrl field should be visible or not.
* @param? statusCategoryHelpData {HelpUtil.HelpPath} the data used for rendering help link.
*/
{template .success}
{let $activeStatus}{call .activeStatus /}{/let}
{let $inactiveStatus}{call .inactiveStatus /}{/let}
{getText('admin.issuesettings.statuses.view.statuses')}
{call aui.page.pageHeader}
{param content}
{call aui.page.pageHeaderMain}
{param content}
{getText('admin.issuesettings.statuses.view.statuses')}
{/param}
{/call}
{/param}
{/call}
{getText('admin.issuesettings.statuses.the.table.below')}
{getText('admin.issuesettings.statuses.all.statuses.have.one.of.two.modes')}
{getText('admin.issuesettings.statuses.active', $activeStatus)|noAutoescape}
{getText('admin.issuesettings.statuses.inactive', $inactiveStatus)|noAutoescape}
{getText('admin.issuesettings.statuses.to.delete.a.status')}
{if $isTranslatable}
{call aui.message.info}
{param content}
// TODO: Better UX
{getText('admin.issuesettings.statuses.translate.statuses', '', ' ')|noAutoescape}
{/param}
{/call}
{/if}
{call aui.table}
{param extraClasses}aui-table-rowhover{/param}
{param theadContent}
{getText('admin.issuesettings.statuses.status.details')}
{getText('admin.issuesettings.statuses.mode')}
{getText('admin.issuesettings.statuses.workflows')}
{getText('common.words.operations')}
{/param}
{param content}
{foreach $status in $statuses}
{call .statusRow}{param status: $status /}{/call}
{/foreach}
{/param}
{/call}
// Render a form to allow new statuses to be created.
{call .statusForm data="all"}{param isNew: true /}{/call}
{/template}
/**
* Render a row in the status table
* @param status {Status} the status to render
*/
{template .statusRow}
{call JIRA.Template.Util.Issue.Status.issueStatusResolver}
{param issueStatus: $status /}
{param isSubtle: false /}
{param maxWidth: 'long' /}
{/call}
{if $status.description}
{$status.description}
{/if}
// Mode column - is staus active?
{if $status.isActive}
{call .activeStatus /}
{else}
{call .inactiveStatus /}
{/if}
// Workflows column - display associated workflows
{if length($status.workflows) > 0}
{foreach $workflow in $status.workflows}
{$workflow}
{/foreach}
{else}
{sp}
{/if}
// Operations
{/template}
/**
* Page for creating a new or editing an existing status.
* @param isNew {Boolean} set to false if the form is for an existing Status (one with an ID.
* @param? status {Status} the status the form is for
* @param? statusCategoryHelpData {HelpUtil.HelpPath} the data used for rendering help link.
* @param? statusCategoryOptions {List>} the category of statuses available to assign to a status.
* @param? errors {Map} errors for the add status fields, if any exist.
* @param? token XSRF security token
*/
{template .input}
{getText('admin.issuesettings.statuses.view.statuses')}
{call .statusForm data="all" /}
{/template}
/**
* Form to create a new status.
* @param isNew {Boolean} set to false if the form is for an existing Status (one with an ID.
* @param isIconUrlFieldVisible {Boolean} whether iconUrl field should be visible or not.
* @param? status {Status} the status the form is for
* @param? statusCategoryHelpData {HelpUtil.HelpPath} the data used for rendering help link.
* @param? statusCategoryOptions {List>} the category of statuses available to assign to a status.
* @param? errors {Map} errors for the add status fields, if any exist.
* @param? token XSRF security token
*/
{template .statusForm}
{let $formName: ($isNew ? 'add' : 'edit') + '-status-form' /}
{if $isNew}
{getText('admin.issuesettings.statuses.add.new.status')}
{else}
{getText('admin.issuesettings.statuses.edit.status')}
{/if}
{call aui.form.form}
{param action: ($isNew ? 'Add' : 'Edit') + 'Status.jspa' /}
{param extraAttributes: [ 'name': $formName ] /}
{param content}
{call aui.form.textField}
{param id: 'name' /}
{param isRequired: true /}
{param labelContent: getText('common.words.name') /}
{param value: ($status) ? $status.name : '' /}
{param errorTexts: ($errors and $errors.name) ? [$errors.name] : null /}
{/call}
{call aui.form.textareaField}
{param id: 'description' /}
{param labelContent: getText('common.words.description') /}
{param descriptionText: getText('admin.issuesettings.statuses.status.description.explanation') /}
{param value: ($status) ? $status.description : '' /}
{param errorTexts: ($errors and $errors.description) ? [$errors.description] : null /}
{/call}
{if length($statusCategoryOptions) > 0}
{call .statusCategorySelectField data="all" /}
{/if}
{if $isIconUrlFieldVisible}
{call .statusIconUrlField}
{param iconUrl: ($status) ? $status.iconUrl : '' /}
{param formName: $formName /}
{param errorText: ($errors and $errors.iconurl) ? $errors.iconurl : null /}
{/call}
{/if}
{if (not $isNew) and $status}
{/if}
{/param}
{/call}
{/template}
/**
* Form field to output selector for a status category.
* @param? statusCategoryOptions {List>} the category of statuses available to assign to a status.
* @param? errors
*/
{template .statusCategorySelectField}
{call JIRA.Templates.Fields.Pickers.Statuses.statusCategorySelectField data="all"}
{param id: 'statusCategory'/}
{/call}
{/template}
/**
* @param formName
* @param? iconUrl
* @param? errorText
*/
{template .statusIconUrlField}
{call aui.form.label}
{param forField : 'iconurl' /}
{param isRequired : true /}
{param content : getText('admin.common.phrases.icon.url') /}
{/call}
{call aui.form.input}
{param id: 'iconurl' /}
{param type: 'text' /}
{param value: $iconUrl /}
{/call}
{sp}[
{getText('admin.text.image.select.image')} ]
{call aui.form.fieldDescription}
{param message : getText('admin.common.phrases.relative.to.jira') /}
{/call}
{if $errorText}
{call aui.form.fieldError}
{param message: $errorText /}
{/call}
{/if}
{/template}
/**
* Remove a status from the system.
* @param status
* @param token XSRF token
* @param? errorMessages
*/
{template .deleteConfirm}
{getText('admin.issuesettings.statuses.delete.title')}
{getText('admin.issuesettings.statuses.delete.status', $status.name)}
{call aui.form.form}
{param action: 'DeleteStatus.jspa' /}
{param content}
{if $errorMessages and length($errorMessages) > 0}
{call aui.message.error}
{param content}
{foreach $error in $errorMessages}
{$error}
{/foreach}
{/param}
{/call}
{/if}
{getText('admin.issuesettings.statuses.delete.confirmation')}
{/param}
{/call}
{/template}