forked from extern/egroupware
110 lines
5.2 KiB
XML
110 lines
5.2 KiB
XML
<?xml version="1.0"?>
|
|
<!-- $Id$ -->
|
|
<overlay>
|
|
<template id="timesheet.index.dates" template="" lang="" group="0" version="1.2.001" >
|
|
<hbox cols="1" rows="1" >
|
|
<description value="Start"/>
|
|
<date id="startdate"/>
|
|
<description value="End"/>
|
|
<date statustext="Leave it empty for a full week" id="enddate"/>
|
|
</hbox>
|
|
</template>
|
|
<template id="timesheet.index.add" template="" lang="" group="0" version="1.7.001">
|
|
<buttononly label="Add" id="add" onclick="egw.open('timesheet');"/>
|
|
</template>
|
|
<template id="timesheet.index.rows" template="" lang="" group="0" version="1.9.001">
|
|
<grid width="100%">
|
|
<columns>
|
|
<column width="15%"/>
|
|
<column width="50%"/>
|
|
<column/>
|
|
<column/>
|
|
<column disabled="@no_ts_quantity"/>
|
|
<column disabled="@no_ts_unitprice"/>
|
|
<column disabled="@no_ts_total"/>
|
|
<column disabled="@no_owner_col"/>
|
|
<column disabled="@no_ts_status"/>
|
|
<column/>
|
|
<column/>
|
|
</columns>
|
|
<rows>
|
|
<row class="th">
|
|
<nextmatch-sortheader label="Date" id="ts_start"/>
|
|
<grid spacing="0" padding="0">
|
|
<columns>
|
|
<column/>
|
|
</columns>
|
|
<rows>
|
|
<row disabled="@pm_integration=full">
|
|
<nextmatch-filterheader id="ts_project" no_lang="1" options="All projects" search="false"/>
|
|
</row>
|
|
<row disabled="!@pm_integration=full">
|
|
<nextmatch-customfilter id="pm_id" onchange="1" options="projectmanager-select,All projects"/>
|
|
</row>
|
|
<row>
|
|
<nextmatch-customfilter id="linked" onchange="1" options="link-entry"/>
|
|
</row>
|
|
<row>
|
|
<nextmatch-sortheader label="Title" id="ts_title"/>
|
|
</row>
|
|
</rows>
|
|
</grid>
|
|
<nextmatch-sortheader label="Category" id="cat_id"/>
|
|
<vbox>
|
|
<nextmatch-sortheader label="Duration" id="ts_duration"/>
|
|
<date-duration id="duration" readonly="true" options=",h,,,1"/>
|
|
</vbox>
|
|
<vbox options="0,0">
|
|
<nextmatch-sortheader label="Quantity" id="ts_quantity"/>
|
|
<textbox type="float" id="quantity" readonly="true" precision="3"/>
|
|
</vbox>
|
|
<nextmatch-sortheader label="Price" id="ts_unitprice"/>
|
|
<vbox>
|
|
<nextmatch-sortheader label="Total" id="ts_total"/>
|
|
<textbox type="float" id="price" readonly="true" precision="2"/>
|
|
</vbox>
|
|
<nextmatch-filterheader id="ts_owner" no_lang="1" options="User" class="$cont[ownerClass]"/>
|
|
<nextmatch-filterheader id="ts_status" options="Status"/>
|
|
<nextmatch-customfields id="customfields"/>
|
|
<hbox class="noPrint">
|
|
<nextmatch-header align="right" label="Actions" id="legacy_actions" class="noPrint"/>
|
|
<button statustext="Check all" label="Check all" id="check_all" needed="1" onclick="egw_globalObjectManager.getObjectById('timesheet.index.rows').toggleAllSelected(); return false;" image="check"/>
|
|
</hbox>
|
|
</row>
|
|
<row class="$row_cont[cat_id] $row_cont[class]">
|
|
<date-time id="${row}[ts_start]" readonly="true" options=",8"/>
|
|
<vbox options="0,0">
|
|
<link id="${row}[ts_link]" no_lang="1"/>
|
|
<description id="${row}[ts_title]" no_lang="1" class="$row_cont[titleClass]"/>
|
|
<description id="${row}[ts_description]" no_lang="1"/>
|
|
</vbox>
|
|
<menulist class="noWrap">
|
|
<menupopup type="select-cat" id="${row}[cat_id]" readonly="true"/>
|
|
</menulist>
|
|
<date-duration id="${row}[ts_duration]" readonly="true" options=",h,,,1"/>
|
|
<textbox type="float" id="${row}[ts_quantity]" no_lang="1" readonly="true" precision="3"/>
|
|
<description id="${row}[ts_unitprice]" no_lang="1"/>
|
|
<textbox type="float" id="${row}[ts_total]" no_lang="1" readonly="true" precision="2"/>
|
|
<menulist class="$cont[ownerClass]">
|
|
<menupopup type="select-account" id="${row}[ts_owner]" readonly="true"/>
|
|
</menulist>
|
|
<menulist>
|
|
<menupopup id="${row}[ts_status]" readonly="true"/>
|
|
</menulist>
|
|
<customfields-list id="$row" readonly="true"/>
|
|
<hbox align="right" class="noPrint">
|
|
<button statustext="View this entry" label="View" id="view[$row_cont[ts_id]]" onclick="window.open(egw::link('/index.php','menuaction=timesheet.timesheet_ui.view&ts_id=$row_cont[ts_id]'),'_blank','dependent=yes,width=600,height=400,scrollbars=yes,status=yes'); return false;" image="view"/>
|
|
<button statustext="Edit this entry" label="Edit" id="edit[$row_cont[ts_id]]" onclick="window.open(egw::link('/index.php','menuaction=timesheet.timesheet_ui.edit&ts_id=$row_cont[ts_id]'),'_blank','dependent=yes,width=600,height=400,scrollbars=yes,status=yes'); return false;" image="edit"/>
|
|
<button label="Insert in document" id="document[$row_cont[ts_id]]" image="etemplate/merge" class="image16"/>
|
|
<button statustext="Delete this entry" label="Delete" id="delete[$row_cont[ts_id]]" onclick="et2_dialog.confirm(widget,'Delete this entry','Delete')" image="delete"/>
|
|
<checkbox statustext="Select multiple timeshhets for a further action" id="checked[]" options="$row_cont[ts_id]"/>
|
|
</hbox>
|
|
</row>
|
|
</rows>
|
|
</grid>
|
|
</template>
|
|
<template id="timesheet.index" template="" lang="" group="0" version="1.9.001">
|
|
<description align="center" id="msg" no_lang="1" class="message"/>
|
|
<nextmatch id="nm" options="timesheet.index.rows" header_left="timesheet.index.dates" header_right="timesheet.index.add"/>
|
|
</template>
|
|
</overlay> |