egroupware_official/timesheet/templates/default/edit.xet
ralf 2e37f9bd34 WIP allow to place custom-fields in specified tabs and automatic tab generation
- no more need to add custom-field tabs to the template, if a et2-tabs is used
- new custom-field options for et2-tabs:
  + cfTypeFilter propagated to type_filter of customfields widget
  + cfPrivateTab use an extra tab for private cfs
  + cfPrepend where to add cf tabs, default before history tab or at the end, if no history tab
2024-03-25 16:03:48 +02:00

196 lines
9.4 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE overlay PUBLIC "-//EGroupware GmbH//eTemplate 2.0//EN" "https://www.egroupware.org/etemplate2.0.dtd">
<overlay>
<template id="timesheet.edit.general" template="" lang="" group="0" version="1.7.002">
<grid width="100%" >
<columns>
<column width="92"/>
<column width="185"/>
<column width="30"/>
<column width="92" disabled="@ts_viewtype"/>
<column width="105" disabled="@ts_viewtype"/>
<column width="30"/>
<column width="50"/>
</columns>
<rows>
<row>
<et2-description value="Project" for="ts_project"></et2-description>
<et2-hbox disabled="@pm_integration=none">
<et2-link-entry id="pm_id" onchange="app.timesheet.pm_id_changed" width="99%" onlyApp="projectmanager" placeholder="None"></et2-link-entry>
</et2-hbox>
<et2-description></et2-description>
<et2-hbox disabled="@pm_integration=full" span="all">
<et2-textbox id="ts_project" maxlength="80" placeholder="@ts_project_blur"></et2-textbox>
</et2-hbox>
</row>
<row disabled="@ts_viewtype">
<et2-description value="Unitprice" for="ts_unitprice"></et2-description>
<et2-hbox disabled="@pm_integration=none" >
<projectmanager-pricelist id="pl_id" class="et2_fullWidth"
onchange="let option = this.select_options.find(e=>e.value == this.value) || {label:''};window.app.timesheet.et2.getWidgetById('ts_unitprice').set_value(option.label.lastIndexOf('(') &lt; 0 ? '' : option.label.slice(option.label.lastIndexOf('(')+1,-1));"
emptyLabel="None"/>
</et2-hbox>
<et2-description></et2-description>
<et2-hbox disabled="@pm_integration=none">
<et2-number id="ts_unitprice" span="all"></et2-number>
</et2-hbox>
</row>
<row class="row" disabled="!@ts_viewtype">
<et2-description value="comment"></et2-description>
<et2-textarea id="ts_description_short" rows="5" cols="50"></et2-textarea>
<et2-description></et2-description>
<et2-description></et2-description>
<et2-description></et2-description>
</row>
<row class="row" disabled="@ts_viewtype">
<et2-description value="Quantity" for="ts_quantity"></et2-description>
<et2-number statustext="empty if identical to duration" id="ts_quantity" precision="3" placeholder="@ts_quantity_blur"></et2-number>
<et2-description></et2-description>
</row>
<row class="row" disabled="@ts_viewtype">
<et2-description value="Category" for="cat_id"></et2-description>
<et2-select-cat span="all" id="cat_id" application="timesheet" emptyLabel="None"></et2-select-cat>
</row>
</rows>
</grid>
</template>
<template id="timesheet.edit.notes" template="" lang="" group="0" version="1.5.001">
<et2-textarea id="ts_description" rows="9" cols="70"></et2-textarea>
</template>
<template id="timesheet.edit.links" template="" lang="" group="0" version="0.1.001">
<grid width="100%" overflow="auto">
<columns>
<column width="99%"/>
</columns>
<rows>
<row class="row" disabled="@status_only">
<et2-link-to id="link_to"></et2-link-to>
</row>
<row class="th">
<et2-description value="Existing links"></et2-description>
</row>
<row class="row_off" >
<et2-link-list id="link_to"></et2-link-list>
</row>
</rows>
</grid>
</template>
<template id="timesheet.edit.history" template="" lang="" group="0" version="1.7.001">
<historylog id="history"/>
</template>
<template id="timesheet.edit.events" template="" lang="" group="0" version="0.1.001">
<grid width="100%" overflow="auto" id="events">
<columns>
<column/>
<column/>
<column/>
<column/>
<column/>
</columns>
<rows>
<row class="th">
<et2-description value="Time"></et2-description>
<et2-description value="Recorded"></et2-description>
<et2-description value="Type"></et2-description>
<et2-description value="Duration"></et2-description>
<et2-description value="Sum"></et2-description>
</row>
<row id="timesheet-events::$row_cont[tse_id]">
<et2-date-time id="${row}[tse_time]" readonly="true" class="et2_clickable" onclick="app.timesheet.editEventTime"></et2-date-time>
<et2-date-time id="${row}[tse_timestamp]" readonly="true"></et2-date-time>
<et2-select id="${row}[tse_type]" readonly="true"></et2-select>
<et2-date-duration id="${row}[time]" readonly="true" displayFormat="h:m" dataFormat="s"></et2-date-duration>
<et2-date-duration id="${row}[total]" readonly="true" displayFormat="h:m" dataFormat="s"></et2-date-duration>
</row>
</rows>
</grid>
</template>
<template id="timesheet.edit.events.change" template="" lang="" group="0" version="1.7.002">
<et2-date-time id="time" required="true"/>
</template>
<template id="timesheet.edit" template="" lang="" group="0" version="1.9.002">
<grid width="100%">
<columns>
<column width="100"/>
<column width="185"/>
<column width="30"/>
<column width="100"/>
<column width="105"/>
<column width="30"/>
<column width="30"/>
</columns>
<rows>
<row disabled="@ts_viewtype" class="dialogHeader">
<et2-description value="Title" for="ts_title"></et2-description>
<et2-textbox id="ts_title" maxlength="255" class="et2_required" tabindex="1" span="4" placeholder="@ts_title_blur"></et2-textbox>
<et2-number id="ts_id" readonly="true" precision="0"></et2-number>
<et2-appicon src="timesheet"></et2-appicon>
</row>
<row class="dialogHeader2">
<et2-description value="Date" for="ts_start"></et2-description>
<et2-date id="ts_start" required="1"></et2-date>
<et2-description></et2-description>
<et2-description value="Starttime"></et2-description>
<et2-date-timeonly id="start_time" freeMinuteEntry="true"></et2-date-timeonly>
</row>
<row class="row dialogHeader3">
<et2-description value="Duration" for="ts_duration"></et2-description>
<et2-date-duration id="ts_duration" displayFormat="hm"
onchange="app.timesheet.update_quantity"></et2-date-duration>
<et2-description></et2-description>
<et2-description value="or endtime" class="et2_noWrap"></et2-description>
<et2-date-timeonly id="end_time" freeMinuteEntry="true"></et2-date-timeonly>
</row>
<row>
<et2-tabbox id="tabs" class="et2_nowrap" width="100%" span="all" tabHeight="200">
<tabs>
<tab id="notes" label="Description"/>
<tab id="general" label="Details"/>
<tab id="links" label="Links"/>
<tab id="history" label="History"/>
<tab id="events" label="Events"/>
</tabs>
<tabpanels class="dialog-main-timeframe">
<template id="timesheet.edit.notes"/>
<template id="timesheet.edit.general"/>
<template id="timesheet.edit.links"/>
<template id="timesheet.edit.history"/>
<template id="timesheet.edit.events"/>
</tabpanels>
</et2-tabbox>
</row>
<row class="dialogOperators">
<et2-description value="User" for="ts_owner"></et2-description>
<et2-select id="ts_owner" span="2" noLang="1"></et2-select>
<et2-description value="Status" disabled="@no_ts_status"></et2-description>
<et2-select span="3" statustext="select a status of the timesheet" id="ts_status" disabled="@no_ts_status" emptyLabel="please select"></et2-select>
</row>
<row class="dialogOperators">
<et2-description value="Last modified"></et2-description>
<et2-hbox span="3">
<et2-select-account id="ts_modifier" readonly="true"></et2-select-account>
<et2-date-time id="ts_modified" readonly="true" align="left" disabled="!@ts_modified"></et2-date-time>
</et2-hbox>
<et2-hbox>
<et2-description value="Created"></et2-description>
<et2-date-time id="ts_created" readonly="true" align="left"></et2-date-time>
</et2-hbox>
</row>
<row class="dialogFooterToolbar">
<et2-hbox orient="0" span="all">
<et2-hbox>
<et2-button hideOnReadonly="true" statustext="Edit this entry" label="Edit" id="button[edit]" image="edit"></et2-button>
<et2-button hideOnReadonly="true" statustext="Saves this entry and add a new one" label="Save &amp; New" id="button[save_new]" image="save_new"></et2-button>
<et2-button hideOnReadonly="true" statustext="Saves the changes made" label="Save" id="button[save]" image="save"></et2-button>
<et2-button hideOnReadonly="true" statustext="Applies the changes made" label="Apply" id="button[apply]" image="apply"></et2-button>
<et2-button statustext="closes the window without saving the changes" label="Cancel" id="button[cancel]" onclick="window.close();" image="cancel"></et2-button>
<html id="js"/>
</et2-hbox>
<et2-button hideOnReadonly="true" align="right" statustext="Delete this entry" label="Delete" id="button[delete]" onclick="et2_dialog.confirm(widget,'Delete this entry','Delete')" image="delete"></et2-button>
<et2-button hideOnReadonly="true" align="right" statustext="Restore this entry" label="Undelete" id="button[undelete]" image="undelete"></et2-button>
</et2-hbox>
</row>
</rows>
</grid>
</template>
</overlay>