egroupware/addressbook/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

449 lines
29 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="addressbook.editname" template="" lang="" group="0" version="1.9.001">
<grid class="editname">
<columns>
<column width="85"/>
<column width="210"/>
</columns>
<rows>
<row>
<et2-description for="n_prefix" value="prefix"></et2-description>
<et2-textbox id="n_prefix" tabindex="1" onchange="app.addressbook.check_value(widget,'$cont[id]');" maxlength="64" autocomplete="honorific-prefix"></et2-textbox>
</row>
<row>
<et2-description for="n_given" value="first name"></et2-description>
<et2-textbox id="n_given" tabindex="2" onchange="app.addressbook.check_value(widget,'$cont[id]');" maxlength="64" autocomplete="given-name"></et2-textbox>
</row>
<row>
<et2-description for="n_middle" value="middle name"></et2-description>
<et2-textbox id="n_middle" tabindex="3" onchange="app.addressbook.check_value(widget,'$cont[id]');" maxlength="64" autocomplete="additional-name"></et2-textbox>
</row>
<row>
<et2-description for="n_family" value="last name"></et2-description>
<et2-textbox id="n_family" tabindex="4" onchange="app.addressbook.check_value(widget,'$cont[id]');" maxlength="64" autocomplete="family-name"></et2-textbox>
</row>
<row>
<et2-description for="n_suffix" value="suffix"></et2-description>
<et2-textbox id="n_suffix" tabindex="5" onchange="app.addressbook.check_value(widget,'$cont[id]');" maxlength="64" autocomplete="honorific-suffix"></et2-textbox>
</row>
<row>
<et2-description></et2-description>
<et2-button label="Ok" tabindex="6" id="button[ok]" class="button_ok" onclick="jQuery('table.editname').css('display','none'); jQuery('#'+form::name('org_name')).focus(); return false;" image="check"></et2-button>
</row>
</rows>
</grid>
</template>
<template id="addressbook.edit.general" template="" lang="" group="0" version="1.9.003">
<grid width="94%">
<columns>
<column width="92"/>
<column width="230"/>
<column width="50"/>
<column width="92"/>
<column width="230"/>
</columns>
<rows>
<row>
<et2-description for="role" value="Role"></et2-description>
<et2-hbox>
<et2-textbox id="role" tabindex="20" width="60%" maxlength="64" autocomplete="section-one"></et2-textbox>
<et2-textbox id="room" tabindex="21" placeholder="Room"></et2-textbox>
</et2-hbox>
<et2-description></et2-description>
<et2-description for="adr_one_street" value="street"></et2-description>
<et2-textbox id="adr_one_street" tabindex="11" maxlength="64" autocomplete="address-line1"></et2-textbox>
</row>
<row>
<et2-description for="assistent" value="Assistent"></et2-description>
<et2-textbox id="assistent" tabindex="22"></et2-textbox>
<et2-description></et2-description>
<et2-description></et2-description>
<et2-textbox statustext="address line 2" id="adr_one_street2" tabindex="12" maxlength="64" autocomplete="address-line2"></et2-textbox>
</row>
<row disabled="@addr_format=city_state_postcode">
<et2-description for="tel_assistent" value="Assistent phone"></et2-description>
<et2-url-phone id="tel_assistent" tabindex="23"></et2-url-phone>
<radio statustext="select phone number as prefered way of contact" id="tel_prefer"
set_value="tel_assistent" ro_true="&amp;hearts;" />
<et2-description for="adr_one_locality" value="city"></et2-description>
<et2-hbox class="city_state_postcode">
<et2-textbox statustext="ZIP Code" id="adr_one_postalcode" tabindex="13" width="24%" maxlength="64" autocomplete="postal-code"></et2-textbox>
<et2-textbox statustext="City" id="adr_one_locality" tabindex="14" maxlength="64" autocomplete="address-level2"></et2-textbox>
</et2-hbox>
</row>
<row disabled="@addr_format=city_state_postcode">
<et2-description for="tel_fax" value="fax"></et2-description>
<et2-url-fax id="tel_fax" tabindex="24" autocomplete="fax"></et2-url-fax>
<radio statustext="select phone number as prefered way of contact" id="tel_prefer"
set_value="tel_fax" ro_true="&amp;hearts;" />
<et2-description for="adr_one_countryname" value="country"></et2-description>
<et2-select-country id="adr_one_countrycode" tabindex="15" allowFreeEntries="true" autocomplete="country" onchange="app.addressbook.regionSetCountry" emptyLabel="Select one"></et2-select-country>
</row>
<row disabled="@addr_format=city_state_postcode">
<et2-description for="tel_other" value="Other phone"></et2-description>
<et2-url-phone id="tel_other" tabindex="25" autocomplete="tel"></et2-url-phone>
<radio statustext="select phone number as prefered way of contact" id="tel_prefer"
set_value="tel_other" ro_true="&amp;hearts;" />
<et2-description value="Region"></et2-description>
<et2-select-state class="city_state_postcode" statustext="State" allowFreeEntries="true" id="adr_one_region" tabindex="16" maxlength="64" countryCode="$cont[adr_one_countrycode]" emptyLabel="Select one"></et2-select-state>
</row>
<row disabled="!@addr_format=city_state_postcode">
<et2-description for="tel_assistent" value="Assistent phone"></et2-description>
<et2-url-phone id="tel_assistent" tabindex="23"></et2-url-phone>
<radio statustext="select phone number as prefered way of contact" id="tel_prefer"
set_value="tel_assistent" ro_true="&amp;hearts;" />
<et2-description value="City"></et2-description>
<et2-hbox>
<et2-textbox statustext="City" id="adr_one_locality" maxlength="64" tabindex="13" autocomplete="address-level2"></et2-textbox>
<et2-select-state statustext="State" id="adr_one_region" tabindex="14" allowFreeEntries="true" width="130" countryCode="$cont[adr_one_countrycode]" emptyLabel="Select one"></et2-select-state>
<et2-textbox statustext="ZIP Code" id="adr_one_postalcode" maxlength="64" tabindex="15" autocomplete="postal-code"></et2-textbox>
</et2-hbox>
</row>
<row disabled="!@addr_format=city_state_postcode">
<et2-description for="tel_fax" value="fax"></et2-description>
<et2-url-fax id="tel_fax" tabindex="24" autocomplete="fax"></et2-url-fax>
<radio statustext="select phone number as prefered way of contact" id="tel_prefer"
set_value="tel_fax" ro_true="&amp;hearts;" />
<et2-description for="adr_one_countryname" value="country"></et2-description>
<et2-select-country tabindex="16" id="adr_one_countrycode" allowFreeEntries="true" autocomplete="country" onchange="app.addressbook.regionSetCountry" emptyLabel="Select one"></et2-select-country>
</row>
<row disabled="!@addr_format=city_state_postcode">
<et2-description for="tel_other" value="Other Phone"></et2-description>
<et2-url-phone id="tel_other" tabindex="25" autocomplete="tel"></et2-url-phone>
<radio statustext="select phone number as prefered way of contact" id="tel_prefer"
set_value="tel_other" ro_true="&amp;hearts;" />
<et2-description></et2-description>
<et2-description></et2-description>
</row>
<row>
<et2-description for="tel_car" value="car phone"></et2-description>
<et2-url-phone id="tel_car" tabindex="26"></et2-url-phone>
<radio statustext="select phone number as prefered way of contact" id="tel_prefer"
set_value="tel_car" ro_true="&amp;hearts;" />
<et2-description disabled="@no_tid" for="tid" value="Type"></et2-description>
<et2-select id="tid" onchange="1" disabled="@no_tid" noLang="1"></et2-select>
</row>
<row disabled="@shared_disabled" valign="top">
<et2-vbox>
<et2-description for="shared" value="Shared with"></et2-description>
<et2-checkbox id="shared_writable" label="writable" statustext="Create new shares writable"></et2-checkbox>
</et2-vbox>
<et2-select-account id="shared_values" multiple="true" span="all"
onchange="app.addressbook.shared_changed"
accountType="both"></et2-select-account>
</row>
</rows>
</grid>
</template>
<template id="addressbook.edit.details" template="" lang="" group="0" version="1.9.002">
<grid width="100%" overflow="auto">
<columns>
<column disabled="!@cat_tab=Tree" width="312"/>
<column disabled="@cat_tab=Tree" width="312"/>
<column width="50"/>
<column width="312"/>
<column width="50"/>
</columns>
<rows>
<row valign="top">
<et2-tree-cat id="cat_id_tree" multiple="true" placeholder="Category"/>
<et2-select-cat id="cat_id" width="100%" height="195" multiple="true" placeholder="Category"></et2-select-cat>
<et2-description></et2-description>
<grid width="100%">
<columns>
<column width="92"/>
<column width="230"/>
</columns>
<rows>
<row valign="top">
<et2-description value="Notes"></et2-description>
<et2-textarea id="note" rows="10" height="100"></et2-textarea>
</row>
<row disabled="@hidebuttons">
<et2-description value="Last date"></et2-description>
<et2-link id="last_link" app=""></et2-link>
</row>
<row disabled="@hidebuttons">
<et2-description value="Next date"></et2-description>
<et2-link id="next_link" app=""></et2-link>
</row>
<row valign="top" class="smime_section_border">
<et2-description value="SMIME key"></et2-description>
<vfs-upload id="addressbook:$cont[id]:.files/smime-pubkey.crt"
accept=".crt,.pem,application/x-x509-ca-cert,application/x-x509-user-cert"
mime="/application\/(x-x509-(ca|user)|pkix)-cert/"
callback="addressbook.addressbook_ui.pubkey_uploaded"/>
</row>
<row valign="top">
<et2-description value="PGP key"></et2-description>
<vfs-upload id="addressbook:$cont[id]:.files/pgp-pubkey.asc"
accept=".asc,application/pgp-keys"
mime="/(application\/pgp-keys|text\/plain)/"
callback="addressbook.addressbook_ui.pubkey_uploaded"/>
</row>
<row valign="top">
<et2-description for="pubkey" value="Public key"></et2-description>
<et2-textarea id="pubkey" rows="4" resizeRatio="0"></et2-textarea>
</row>
</rows>
</grid>
<et2-description></et2-description>
</row>
</rows>
</grid>
</template>
<template id="addressbook.edit.home" template="" lang="" group="0" version="1.9.001">
<grid width="100%">
<columns>
<column width="92"/>
<column width="230"/>
<column width="50"/>
<column width="92"/>
<column width="230"/>
<column width="50"/>
</columns>
<rows>
<row>
<et2-description for="tel_home" value="Home phone"></et2-description>
<et2-url-phone id="tel_home" tabindex="27" autocomplete="section-two home tel"></et2-url-phone>
<radio statustext="select phone number as prefered way of contact" id="tel_prefer"
set_value="tel_home" ro_true="&amp;hearts;" />
<et2-description for="adr_two_street" tabindex="32" value="street"></et2-description>
<et2-textbox id="adr_two_street" tabindex="33" maxlength="64" autocomplete="section-two address-line1"></et2-textbox>
<et2-description></et2-description>
</row>
<row>
<et2-description for="tel_cell_private" value="mobile phone"></et2-description>
<et2-url-phone id="tel_cell_private" tabindex="28" autocomplete="section-two mobile tel"></et2-url-phone>
<radio statustext="select phone number as prefered way of contact" id="tel_prefer"
set_value="tel_cell_private" ro_true="&amp;hearts;" />
<et2-description></et2-description>
<et2-textbox statustext="address line 2" id="adr_two_street2" tabindex="34" maxlength="64" autocomplete="section-two address-line2"></et2-textbox>
<et2-description></et2-description>
</row>
<row disabled="@addr_format=city_state_postcode">
<et2-description for="tel_fax_home" value="fax"></et2-description>
<et2-url-fax id="tel_fax_home" tabindex="29" autocomplete="section-two fax tel"></et2-url-fax>
<radio statustext="select phone number as prefered way of contact" id="tel_prefer"
set_value="tel_fax_home" ro_true="&amp;hearts;" />
<et2-description for="adr_two_locality" value="city"></et2-description>
<et2-hbox class="city_state_postcode">
<et2-textbox statustext="ZIP Code" id="adr_two_postalcode" tabindex="34" width="24%" maxlength="64" autocomplete="section-two postal-code"></et2-textbox>
<et2-textbox statustext="City" id="adr_two_locality" maxlength="64" tabindex="36" autocomplete="section-two address-level2"></et2-textbox>
</et2-hbox>
<et2-description></et2-description>
</row>
<row disabled="@addr_format=city_state_postcode">
<et2-description for="tel_pager" value="pager" autocomplete="section-two pager tel"></et2-description>
<et2-url-phone id="tel_pager" tabindex="30"></et2-url-phone>
<radio statustext="select phone number as prefered way of contact" id="tel_prefer"
set_value="tel_pager" ro_true="&amp;hearts;" />
<et2-description for="adr_two_countryname" value="country"></et2-description>
<et2-select-country tabindex="37" id="adr_two_countrycode" allowFreeEntries="true" autocomplete="section-two country" onchange="app.addressbook.regionSetCountry" emptyLabel="Select one"></et2-select-country>
<et2-description></et2-description>
</row>
<row disabled="@addr_format=city_state_postcode">
<et2-description for="bday" value="Birthday"></et2-description>
<et2-date id="bday" tabindex="31" dataFormat="Y-m-d" yearRange="c-90:c+2"></et2-date>
<et2-description></et2-description>
<et2-description value="Region"></et2-description>
<et2-select-state statustext="State" id="adr_two_region" tabindex="38" allowFreeEntries="true" maxlength="64" class="city_state_postcode" countryCode="$cont[adr_two_countrycode]" emptyLabel="Select one"></et2-select-state>
<et2-description></et2-description>
</row>
<row disabled="!@addr_format=city_state_postcode">
<et2-description for="tel_fax_home" value="fax"></et2-description>
<et2-url-fax id="tel_fax_home" autocomplete="fax tel"></et2-url-fax>
<radio statustext="select phone number as prefered way of contact" id="tel_prefer"
set_value="tel_fax_home" ro_true="&amp;hearts;" />
<et2-description value="City"></et2-description>
<et2-hbox>
<et2-textbox statustext="City" id="adr_two_locality" maxlength="64" autocomplete="section-two address-level2"></et2-textbox>
<et2-select-state statustext="State" id="adr_two_region" allowFreeEntries="true" width="130" autocomplete="section-two address-level1" countryCode="$cont[adr_one_countrycode]" emptyLabel="Select one"></et2-select-state>
<et2-textbox statustext="ZIP Code" id="adr_two_postalcode" maxlength="64" autocomplete="section-two postal-code"></et2-textbox>
</et2-hbox>
<et2-description></et2-description>
</row>
<row disabled="!@addr_format=city_state_postcode">
<et2-description for="tel_pager" value="pager"></et2-description>
<et2-url-phone id="tel_pager"></et2-url-phone>
<radio statustext="select phone number as prefered way of contact" id="tel_prefer"
set_value="tel_pager" ro_true="&amp;hearts;" />
<et2-description for="adr_two_countryname" value="country"></et2-description>
<et2-select-country id="adr_two_countrycode" allowFreeEntries="true" autocomplete="section-two country" onchange="app.addressbook.regionSetCountry" emptyLabel="Select one"></et2-select-country>
<et2-description></et2-description>
</row>
<row disabled="!@addr_format=city_state_postcode">
<et2-description for="bday" value="Birthday"></et2-description>
<et2-date id="bday" dataFormat="Y-m-d" ></et2-date>
<et2-description></et2-description>
<et2-description></et2-description>
<et2-description></et2-description>
<et2-description></et2-description>
</row>
<row>
<et2-description for="email_home" value="EMail"></et2-description>
<et2-url-email id="email_home" tabindex="32" onchange="app.addressbook.check_value(widget,'$cont[id]');" autocomplete="section-two home email"></et2-url-email>
<et2-description></et2-description>
<et2-description for="url_home" value="URL"></et2-description>
<et2-url id="url_home" tabindex="39" autocomplete="section-two url"></et2-url>
<et2-description></et2-description>
</row>
</rows>
</grid>
</template>
<template id="addressbook.edit.links" template="" lang="" group="0" version="1.9.001">
<grid width="100%" overflow="auto">
<columns>
<column/>
</columns>
<rows>
<row>
<et2-link-to id="link_to"></et2-link-to>
</row>
<row class="th">
<et2-description value="Existing links"></et2-description>
</row>
<row>
<et2-link-list id="link_to"></et2-link-list>
</row>
</rows>
</grid>
</template>
<template id="addressbook.edit.distribution_list" template="" lang="" group="0" version="1.9.001">
<et2-box width="100%" overflow="auto">
<et2-description id="distrib_lists" span="all"></et2-description>
</et2-box>
</template>
<template id="addressbook.edit.custom" template="" lang="" group="0" version="1.9.001">
<et2-box width="100%" overflow="auto">
<customfields private="$cont[no_private_cfs]" type_filter="$cont[tid]"/>
</et2-box>
</template>
<template id="addressbook.edit.custom_private" template="" lang="" group="0" version="1.9.001">
<et2-box width="100%" overflow="auto">
<customfields id="private_cfs" private="1" type_filter="$cont[tid]"/>
</et2-box>
</template>
<template id="addressbook.edit.history" template="" lang="" group="0" version="1.9.001">
<historylog id="history" width="100%"/>
</template>
<template id="addressbook.edit" template="" lang="" group="0" version="1.9.004" class="addressbook_edit">
<template id="addressbook.editname"/>
<grid class="addressbook_edit" border="1" width="100%">
<columns>
<column width="100"/>
<column width="250"/>
<column width="50"/>
<column width="100"/>
<column width="250"/>
<column width="50"/>
</columns>
<rows>
<row class="dialogHeader">
<et2-box align="center">
<et2-hbox disabled="@hidebuttons">
<et2-avatar id="jpegphoto" contactId="$cont[id]" src="$cont[photo]" crop="false" editable="true"></et2-avatar>
</et2-hbox>
</et2-box>
<et2-textbox id="n_fn" tabindex="-1" class="cursorHand" onclick="jQuery('table.editname').css('display','inline'); var focElem = document.getElementById(form::name('n_prefix')); if (!(typeof(focElem) == 'undefined') &amp;&amp; typeof(focElem.focus)=='function') document.getElementById(form::name('n_prefix')).focus();" autocomplete="name" placeholder="Name" noLang="1"></et2-textbox>
<et2-description></et2-description>
<et2-description for="org_name" value="Organisation"></et2-description>
<et2-textbox id="org_name" onchange="app.addressbook.check_value(widget,'$cont[id]');" maxlength="128" tabindex="7" autocomplete="organization"></et2-textbox>
<et2-appicon></et2-appicon>
</row>
<row class="dialogHeader2">
<et2-description for="tel_work" value="Business phone"></et2-description>
<et2-url-phone id="tel_work" tabindex="17" class="telNumbers" autocomplete="work tel"></et2-url-phone>
<radio statustext="select phone number as prefered way of contact" id="tel_prefer"
set_value="tel_work" ro_true="&amp;hearts;" />
<et2-description for="org_unit" value="department"></et2-description>
<et2-textbox id="org_unit" onchange="app.addressbook.check_value(widget,'$cont[id]');" tabindex="8" maxlength="64"></et2-textbox>
<et2-description></et2-description>
</row>
<row class="dialogHeader3">
<et2-description for="tel_cell" value="mobile phone"></et2-description>
<et2-url-phone id="tel_cell" tabindex="18" class="telNumbers" autocomplete="mobile tel"></et2-url-phone>
<radio statustext="select phone number as prefered way of contact" id="tel_prefer"
set_value="tel_cell" ro_true="&amp;hearts;" />
<et2-description for="title" value="Title"></et2-description>
<et2-textbox id="title" maxlength="64" tabindex="9" autocomplete="organization-title"></et2-textbox>
<et2-description></et2-description>
</row>
<row class="dialogHeader4">
<et2-description for="email" value="email"></et2-description>
<et2-url-email id="email" onchange="app.addressbook.check_value(widget,'$cont[id]');" tabindex="19" autocomplete="work email"></et2-url-email>
<et2-description></et2-description>
<et2-description for="url" value="url"></et2-description>
<et2-url id="url" tabindex="10" autocomplete="url"></et2-url>
<et2-description></et2-description>
</row>
<row>
<et2-tabbox id="tabs" span="all" width="100%" tabHeight="340" cfPrivateTab="!$cont[no_private_cfs]" cfTypeFilter="$cont[tid]">
<tabs>
<tab id="general" label="Organisation"/>
<tab id="home" label="Private" statustext="Home address, Birthday, ..."/>
<tab id="details" label="Details" statustext="Categories, Notes, ..."/>
<tab id="links" label="Links" statustext="Links"/>
<tab id="distribution_list" label="Distribution lists" statustext="Distribution lists, ..."/>
<tab id="history" label="History"/>
</tabs>
<tabpanels>
<template id="addressbook.edit.general"/>
<template id="addressbook.edit.home"/>
<template id="addressbook.edit.details"/>
<template id="addressbook.edit.links"/>
<template id="addressbook.edit.distribution_list"/>
<template id="addressbook.edit.history"/>
</tabpanels>
</et2-tabbox>
</row>
<row class="dialogOperators">
<et2-description value="Addressbook"></et2-description>
<et2-select class="owner" statustext="Addressbook the contact should be saved to" id="owner" onchange="widget.getInstanceManager().submit(null,false,true); return false;" noLang="1"></et2-select>
<et2-description></et2-description>
<et2-description value="own sorting"></et2-description>
<et2-select id="fileas_type" class="fileas" placeholder="Name" noLang="1"></et2-select>
<et2-description></et2-description>
</row>
<row class="dialogOperators">
<et2-description value="Created"></et2-description>
<et2-hbox width="100%">
<et2-select-account id="creator" readonly="true"></et2-select-account>
<et2-date-time id="created" readonly="true" align="right"></et2-date-time>
</et2-hbox>
<et2-description></et2-description>
<et2-description value="Last modified"></et2-description>
<et2-hbox width="100%">
<et2-select-account id="modifier" readonly="true"></et2-select-account>
<et2-date-time id="modified" readonly="true" align="right"></et2-date-time>
</et2-hbox>
<et2-description></et2-description>
</row>
<row disabled="@hidebuttons" class="dialogFooterToolbar">
<et2-hbox span="all" width="100%">
<et2-button accesskey="s" label="Save" id="button[save]" class="button_save" image="save"></et2-button>
<et2-button label="Apply" id="button[apply]" class="button_apply" image="apply"></et2-button>
<et2-button label="Cancel" id="button[cancel]" class="button_cancel" onclick="if($cont[view] || false) return true; window.close(); return false;" image="cancel"></et2-button>
<et2-checkbox statustext="Apply changes to all members, whose fields have the same previous content" label="change all organisation members" id="change_org" span="all" disabled="@hide_change_org"></et2-checkbox>
<et2-button align="right" label="Delete" id="button[delete]" class="button_delete" onclick="et2_dialog.confirm(widget,'Do you really want to delete this contact?','Delete')" image="delete"></et2-button>
</et2-hbox>
</row>
<row disabled="!@showsearchbuttons" class="dialogOperators">
<et2-hbox span="all">
<et2-select label="Operator" id="operator" noLang="1"></et2-select>
<et2-select id="meth_select" noLang="1"></et2-select>
</et2-hbox>
</row>
<row disabled="!@showsearchbuttons" class="dialogFooterToolbar">
<et2-hbox span="all">
<et2-button label="Search" id="button[search]" image="search"></et2-button>
<et2-button label="Cancel" id="button[cancelsearch]" image="cancel"></et2-button>
</et2-hbox>
</row>
</rows>
</grid>
</template>
</overlay>