diff options
| author | Fabien Meghazi <fme@openerp.com> | 2011-08-01 11:26:17 +0200 |
|---|---|---|
| committer | Fabien Meghazi <fme@openerp.com> | 2011-08-01 11:26:17 +0200 |
| commit | a291c46b27bedda79273331ca601f528bf8d0bd2 (patch) | |
| tree | c64f50b40269dca17c6d3997d6c5c7c116743fd5 /addons/base/static/src/xml/base.xml | |
| parent | 26c20c4f23724563bc56021fd661671ad35421f6 (diff) | |
| parent | c8e7b43acbc3cd5c1dc40ceffe567b12a072cf40 (diff) | |
[MERGE] Merged with trunk
bzr revid: fme@openerp.com-20110801092617-f4vcc8dhx31n5ot3
Diffstat (limited to 'addons/base/static/src/xml/base.xml')
| -rw-r--r-- | addons/base/static/src/xml/base.xml | 398 |
1 files changed, 275 insertions, 123 deletions
diff --git a/addons/base/static/src/xml/base.xml b/addons/base/static/src/xml/base.xml index 9bef00147d3..c51284ad63a 100644 --- a/addons/base/static/src/xml/base.xml +++ b/addons/base/static/src/xml/base.xml @@ -62,7 +62,7 @@ <td><label for="db">Database:</label></td> <td> <t t-if="!db_list"> - <input type="text" name="db" value="trunk" autofocus="true"/> + <input type="text" name="db" t-att-value="selected_db || ''" autofocus="true"/> </t> <t t-if="db_list"> <select name="db"> @@ -87,18 +87,7 @@ <tr> <td><label for="password">Password:</label></td> <td><input type="password" name="password" - t-att-value="selected_password || ''"/></td> - </tr> - <tr t-if="has_local_storage"> - <td><label for="remember">Remember password:</label></td> - <td class="oe_remember"> - <t t-if="remember"> - <input type="checkbox" name="remember" checked="yes"/> - </t> - <t t-if="!remember"> - <input type="checkbox" name="remember"/> - </t> - </td> + t-att-value="selected_password || ''"/></td> </tr> <tr> <td></td> @@ -114,7 +103,7 @@ <div class="oe_login_right_pane"> <p>We think that daily job activities can be more intuitive, efficient, automated, .. and even fun.</p> <h3>OpenERP's vision to be:</h3> - + <table cellpadding="0" cellspacing="0" width="100%" style="border:none;"> <tbody> <tr> @@ -146,7 +135,7 @@ </tr> </tbody> </table> - + </div> </t> <t t-name="Header"> @@ -154,8 +143,8 @@ <div class="company_logo" /> </a> <h1 class="header_title" t-if="session.session_is_valid()"> - <span class="company">$company</span> - (<span class="database">$database</span>)<br/> - <small class="username">$username session_id: <t t-esc="session.session_id"/></small> + <span class="database"><t t-esc="session.db"/></span> - <t t-esc="session.login"/> <br/> + <small class="username">rpc_session_id: <t t-esc="session.session_id"/></small> </h1> <div class="header_corner"> <ul class="block" t-if="session.session_is_valid()"> @@ -243,42 +232,66 @@ </t> </td> <td class="view-manager-main-sidebar" height="100%"> + <t t-foreach="views" t-as="view"> + <div t-attf-id="#{prefix}_sidebar_#{view.view_type}" class="sidebar-main-div closed-sidebar" style="display: none"/> + </t> </td> </tr> </table> </t> -<table t-name="ListView"> +<t t-name="Sidebar"> + <a class="toggle-sidebar"></a> + <div class="sidebar-content"> + <div class="sidebar-actions"> + </div> + </div> +</t> +<t t-name="Sidebar.section"> + <h2><t t-esc="name"/></h2> + <div t-att-id="section_id" t-att-class="classname"> + <ul t-if="items"> + <li t-foreach="items" t-as="item" t-att-class="item.classname"> + <a class="oe_sidebar_action_a" t-att-id="item.element_id" t-att-title="item.title" href="#"> + <t t-esc="item.label"/> + </a> + </li> + </ul> + </div> +</t> +<table t-name="ListView" class="oe-listview-content"> <t t-set="columns_count" t-value="visible_columns.length + (options.selectable ? 1 : 0) + (options.deletable ? 1 : 0)"/> - <t t-set="actions_span" t-value="Math.floor((options.deletable or options.addable) ? columns_count/2 : 0)"/> <thead class="ui-widget-header"> - <tr> - <th t-if="actions_span" t-att-colspan="actions_span" - class="oe-actions"> - <t t-if="flags.action_buttons !== false"> - <button type="button" id="oe-list-add" - t-if="options.addable"> - <t t-esc="options.addable"/> - </button> - <button type="button" id="oe-list-delete" - t-if="options.selectable and options.deletable"> - Delete - </button> - </t> - </th> - <th t-att-colspan="columns_count - actions_span" - class="oe-list-pager"> - <t t-if="flags.pager !== false"> - <button type="button" data-pager-action="first">First</button> - <button type="button" data-pager-action="previous" - ><<</button> + <tr t-if="options.action_buttons !== false or options.pager !== false"> + <th t-att-colspan="columns_count"> + <table> + <tr> + <td t-if="options.action_buttons !== false" class="oe-actions"> + <button type="button" class="oe-list-add" + t-if="options.addable"> + <t t-esc="options.addable"/> + </button> + <button type="button" class="oe-list-delete" + t-if="options.selectable and options.deletable"> + Delete + </button> + </td> + <th t-if="options.pager !== false" class="oe-list-pager"> + <button type="button" disabled="disabled" + data-pager-action="first">First</button> + <button type="button" disabled="disabled" + data-pager-action="previous" + ><</button> - <span class="oe-pager-first">1</span> - to <span class="oe-pager-last">1</span> - of <span class="oe-pager-total">1</span> + <span class="oe-pager-state"> + </span> - <button type="button" data-pager-action="next">>></button> - <button type="button" data-pager-action="last">Last</button> - </t> + <button type="button" disabled="disabled" + data-pager-action="next">></button> + <button type="button" disabled="disabled" + data-pager-action="last">Last</button> + </th> + </tr> + </table> </th> </tr> <tr t-if="options.header"> @@ -287,24 +300,22 @@ <t t-esc="column.string"/> </th> </t> - <th t-if="options.selectable"/> + <th t-if="options.selectable" width="1"/> <t t-foreach="columns" t-as="column"> <th t-if="!column.meta and column.invisible !== '1'" t-att-data-id="column.id" t-att-class="((options.sortable and column.tag !== 'button') ? 'oe-sortable' : null)"> - <t t-if="column.tag !== 'button'"> - <t t-esc="column.string"/> - <span t-att-class="(fields_view.sorted.field === column.id) ? ('ui-icon' + (fields_view.sorted.reversed ? ' ui-icon-triangle-1-n' : ' ui-icon-triangle-1-s')) : ''"/> - </t> + <t t-if="column.tag !== 'button'" + ><t t-esc="column.string"/></t> </th> </t> - <th t-if="options.deletable"/> + <th t-if="options.deletable" width="1"/> </tr> </thead> <tfoot class="ui-widget-header"> <tr> <td t-if="options.selectable"/> <td t-foreach="aggregate_columns" t-as="column" class="oe-list-footer oe-number" - t-att-data-field="column.field" t-att-title="column.label"> + t-att-data-field="column.id" t-att-title="column.label"> </td> <td t-if="options.deletable"/> </tr> @@ -322,10 +333,10 @@ t-att-data-index="row_index"> <t t-foreach="columns" t-as="column"> <td t-if="column.meta"> - + </td> </t> - <th t-if="options.selectable" class="oe-record-selector"> + <th t-if="options.selectable" class="oe-record-selector" width="1"> <input type="checkbox"/> </th> <t t-foreach="columns" t-as="column"> @@ -333,23 +344,10 @@ <td t-if="!column.meta and column.invisible !== '1'" t-att-title="column.help" t-att-class="'oe-field-cell' + (align ? ' oe-number' : '')" t-att-data-field="column.id"> - <t t-set="attrs" t-value="column.attrs_for(row.data)"/> - <t t-if="!attrs.invisible"> - <t t-set="is_button" t-value="column.tag === 'button'"/> - <!-- TODO: get correct widget from form --> - <t t-if="!is_button and row['data'][column.id].value !== false"> - <t t-set="value" t-value="row['data'][column.id].value"/> - <t t-esc="value instanceof Array ? value[1] : value"/> - </t> - <button type="button" t-att-title="column.string" - t-if="is_button"> - <img t-att-src="'/base/static/src/img/icons/' + column.icon + '.png'" - t-att-alt="column.string"/> - </button> - </t> + <t t-raw="render_cell(row.data, column)"/> </td> </t> - <td t-if="options.deletable" class='oe-record-delete'> + <td t-if="options.deletable" class='oe-record-delete' width="1"> <button type="button" name="delete">♻</button> </td> </tr> @@ -357,9 +355,9 @@ <t t-raw="frame.render()"/> </t> <t t-name="FormView"> - <h2 class="oe_view_title"><t t-esc="view.fields_view.arch.attrs.string"/></h2> <div class="oe_form_header" t-att-id="view.element_id + '_header'"> - <div class="oe_form_buttons" t-if="view.flags.action_buttons !== false"> + <h2 class="oe_view_title"><t t-esc="view.fields_view.arch.attrs.string"/> <button class="oe_get_xml_view">xml</button></h2> + <div class="oe_form_buttons" t-if="view.options.action_buttons !== false"> <!--<button type="button" class="oe_form_button_save"> <span class="oe_form_on_update">Save</span> <span class="oe_form_on_create">Create</span> @@ -371,7 +369,7 @@ <!--<button type="button" class="oe_form_button_cancel">Cancel</button>--> <button type="button" class="oe_form_button_new">New</button> </div> - <div class="oe_form_pager" t-if="view.flags.pager !== false"> + <div class="oe_form_pager" t-if="view.options.pager !== false"> <button type="button" data-pager-action="first">First</button> <button type="button" data-pager-action="previous"><<</button> @@ -384,21 +382,20 @@ <t t-raw="frame.render()"/> </t> <t t-name="FormView.sidebar.attachments"> - <h2>Attachments</h2> <div class="oe-sidebar-attachments-toolbar"> <div class="oe-binary-file-set" style="float: right"> <form class="oe-binary-form" t-attf-target="#{element_id}_iframe" method="post" enctype="multipart/form-data" action="/base/binary/upload_attachment"> <input type="hidden" name="session_id" t-att-value="session.session_id"/> <input type="hidden" name="callback" t-attf-value="#{element_id}_iframe"/> - <input type="hidden" name="model" t-att-value="dataset.model"/> - <input type="hidden" name="id" t-att-value="datarecord.id"/> + <input type="hidden" name="model" t-att-value="view.dataset.model"/> + <input type="hidden" name="id" t-att-value="view.datarecord.id"/> <button class="button" type="button"> <img src="/base/static/src/img/throbber.gif" width="16" height="16" style="display: none"/> <span>Add</span> </button> <input type="file" class="oe-binary-file" name="ufile" title="Add attachment" - t-att-onclick="datarecord.id ? null : 'alert(\'No record selected ! You can only attach to existing record.\'); return false;'"/> + t-att-onclick="view.datarecord.id ? null : 'alert(\'No record selected ! You can only attach to existing record.\'); return false;'"/> </form> <iframe t-attf-id="#{element_id}_iframe" t-attf-name="#{element_id}_iframe" style="display: none"> </iframe> </div> @@ -408,7 +405,7 @@ <li t-foreach="attachments" t-as="attachment"> <t t-if="attachment.type == 'binary'" t-set="attachment.url" t-value="'/base/binary/saveas?session_id=' + session.session_id + '&model=ir.attachment&id=' + attachment.id - + '&field=datas' + '&fieldname=name' + '&t=' + (new Date().getTime())"/> + + '&field=datas&fieldname=name&t=' + (new Date().getTime())"/> <a class="oe-sidebar-attachments-link" t-att-href="attachment.url" target="_blank"> <t t-esc="attachment.name"/> </a> @@ -441,18 +438,21 @@ </t> <t t-name="WidgetNotebook"> <ul> - <li t-foreach="widget.pages" t-as="page"> - <a t-att-href="'#' + widget.element_id + '-' + page_index"> + <li t-foreach="widget.pages" t-as="page" t-att-id="page.element_tab_id"> + <a t-att-href="'#' + page.element_id"> <t t-esc="page.string"/> </a> </li> </ul> <t t-foreach="widget.pages" t-as="page"> - <div t-att-id="widget.element_id + '-' + page_index"> - <t t-raw="page.render()"/> - </div> + <t t-raw="page.render()"/> </t> </t> +<t t-name="WidgetNotebookPage"> + <div t-att-id="widget.element_id"> + <t t-call="WidgetFrame"/> + </div> +</t> <t t-name="WidgetSeparator"> <div t-att-class="'separator ' + (widget.node.attrs.orientation || 'horizontal')"> <t t-esc="widget.string"/> @@ -526,9 +526,9 @@ t-att-id="widget.element_id + '_field'" t-att-class="'field_' + widget.type" style="width: 100%"> - <t t-foreach="widget.field.selection" t-as="options"> - <option t-att-value="options[0]"> - <t t-esc="options[1]"/> + <t t-foreach="widget.field_index" t-as="options"> + <option t-att-value="options.ikey"> + <t t-esc="options.label"/> </option> </t> </select> @@ -541,9 +541,9 @@ <span class="oe-m2o-cm-button" t-att-id="widget.name + '_open'"> <img src="/base/static/src/img/icons/gtk-index.png"/></span> <div t-att-id="widget.cm_id" class="contextMenu" style="display:none"><ul> - <li t-att-id="widget.cm_id + '_search'">Search</li> - <li t-att-id="widget.cm_id + '_create'">Create New</li> - <li t-att-id="widget.cm_id + '_open'" style="color:grey">Open</li> + <li t-att-id="widget.cm_id + '_open'" style="color:grey">Open...</li> + <li t-att-id="widget.cm_id + '_create'">Create...</li> + <li t-att-id="widget.cm_id + '_search'">Search...</li> </ul></div> </div> </t> @@ -685,14 +685,28 @@ <input type="reset" value="Clear"/> <button class="oe_search-view-custom-filter-btn"><span>Advanced Filter</span></button> <select class="oe_search-view-filters-management"> - <option value="_filters">-- Filters --</option> - <option value="_actions">-- Actions --</option> - <option value="save_filter">Save Filter</option> - <option value="manage_filters">Manage Filters</option> </select> </div> </form> </t> +<t t-name="SearchView.managed-filters"> + <option value="_filters">-- Filters --</option> + <t t-set="i" t-value="0"/> + <t t-foreach="filters" t-as="filter"> + <option t-att-value="'get:' + i"><t t-esc="filter.name"/></option> + <t t-set="i" t-value="i+1"/> + </t> + <option value="_actions">-- Actions --</option> + <option value="save_filter">Save Filter</option> + <option value="manage_filters">Manage Filters</option> +</t> +<t t-name="SearchView.managed-filters.add"> + <div> + <p>Filter Name:</p> + <input type="text"/> + <p>(Any existing filter with the same name will be replaced)</p> + </div> +</t> <t t-name="SearchView.render_lines"> <table class="oe-searchview-render-line" border="0" cellspacing="0" cellpadding="0" t-foreach="lines" t-as="line"> @@ -803,11 +817,11 @@ <t t-name="SearchView.extended_search.group"> <div t-att-id="element_id" class="searchview_extended_group"> <select class="searchview_extended_group_choice"> - <option value="all">All the following conditions must match</option> <option value="any">Any of the following conditions must match</option> + <option value="all">All the following conditions must match</option> <option value="none">None of the following conditions must match</option> </select> - <a class="searchview_extended_delete_group" + <a class="searchview_extended_delete_group" href="javascript:void(0)"><span></span></a> <div class="searchview_extended_propositions_list"> </div> @@ -829,7 +843,7 @@ <select class="searchview_extended_prop_op"/> <span class="searchview_extended_prop_value"/> <a class="searchview_extended_delete_prop" - href="javascript:void(0)"><span></span></a> + href="javascript:void(0)"><span> </span></a> </div> </t> <t t-name="SearchView.extended_search.proposition.char"> @@ -856,29 +870,6 @@ </t> </select> </t> -<t t-name="ViewManager.sidebar"> - <div t-att-id="element_id" class="sidebar-main-div closed-sidebar"> - - </div> -</t> -<t t-name="ViewManager.sidebar.internal"> - <a class="toggle-sidebar"></a> - <div class="sidebar-content"> - <div class="sidebar-attachments" t-if="view == 'form'"> </div> - <div class="sidebar-actions"> - <t t-foreach="sidebar.sections" t-as="section" t-if="section.elements.length"> - <h2><t t-esc="section.label"/></h2> - <ul> - <li t-foreach="section.elements" t-as="element"> - <a class="oe_sidebar_action_a" t-attf-data-index="#{section_index}-#{element_index}" href="#"> - <t t-esc="element.name"/> - </a> - </li> - </ul> - </t> - </div> - </div> -</t> <t t-name="DialogWarning"> <table cellspacing="0" cellpadding="0" border="0" class="oe-dialog-warning"> <tr> @@ -886,7 +877,9 @@ <td> <p> <t t-js="d"> - d.html_error = context.engine.tools.html_escape(d.error.data.fault_code).replace(/\n/g, '<br/>'); + var message = d.message ? d.message : d.error.data.fault_code; + d.html_error = context.engine.tools.html_escape(message) + .replace(/\n/g, '<br/>'); </t> <t t-raw="html_error"/> </p> @@ -901,9 +894,19 @@ </t> <t t-name="SelectCreatePopup"> <div t-att-id="element_id"> - <div t-att-id="element_id + '_search'"></div> - <div t-att-id="element_id + '_view_list'"></div> - <div t-att-id="element_id + '_view_form'"></div> + <table style="width:100%"> + <tr style="width:100%"> + <td style="width:100%"> + <div t-att-id="element_id + '_search'" style="width:100%"></div> + </td> + </tr> + <tr style="width:100%"> + <td style="width:100%"> + <div t-att-id="element_id + '_view_list'" style="width:100%"></div> + </td> + </tr> + </table> + <div t-att-id="element_id + '_view_form'" style="width:100%"></div> </div> </t> <t t-name="SelectCreatePopup.search.buttons"> @@ -914,7 +917,15 @@ <button type="button" class="oe_selectcreatepopup-form-save">Save</button> <button type="button" class="oe_selectcreatepopup-form-close">Close</button> </t> - +<t t-name="FormOpenPopup"> + <div t-att-id="element_id"> + <div t-att-id="element_id + '_view_form'" style="width:100%"></div> + </div> +</t> +<t t-name="FormOpenPopup.form.buttons"> + <button type="button" class="oe_formopenpopup-form-save">Save</button> + <button type="button" class="oe_formopenpopup-form-close">Close</button> +</t> <t t-name="ListView.row.frame" t-extend="WidgetFrame"> <t t-jquery="tr"> $(document.createElement('t')) @@ -933,4 +944,145 @@ .unwrap(); </t> </t> + +<t t-name="ExportView"> + <a id="exportview" href="javascript: void(0)" style="text-decoration: none;color: #3D3D3D;">Export</a> +</t> + +<t t-name="ExportTreeView"> + <table class="view" style="background-color: #F3F3F3;"> + <tr> + <td align="left"> + This wizard will export all data that matches the current search criteria to a CSV file. + You can export all data or only the fields that can be reimported after modification. + </td> + </tr> + <tr> + <td> + <table> + <tr> + <td class="label"><label>Export Type:</label></td> + <td> + <select id="import_compat" name="import_compat"> + <option value="1">Import Compatible Export</option> + <option value="0">Export all Data</option> + </select> + </td> + <td class="label"><label>Export Format</label></td> + <td> + <select id="export_format" name="export_format"> + <option value="csv">CSV</option> + <option value="xls">Excel</option> + </select> + </td> + + </tr> + </table> + </td> + </tr> + + <tr> + <td> + <table class="oe_export_fields_selector_export"> + <tr> + <th class="oe_view_title" valign="bottom">Available fields</th> + <th class="oe_view_title"></th> + <th class="oe_view_title">Fields to export + <a style="color: blue; text-decoration: none;" href="#" id="export_new_list">Save fields list</a> + <div id="savenewlist"></div> + <div id="ExistsExportList"></div> + </th> + </tr> + <tr> + <td class="oe_export_fields_selector_left"> + <div id="left_field_panel"> + </div> + </td> + <td> + <table class="oe_export_fields_selector_center"> + <tr> + <td align="center"> + <button id="add_field" class="oe_export_button_export">Add</button> + </td> + </tr> + <tr> + <td align="center"> + <button id="remove_field" class="oe_export_button_export">Remove</button> + </td> + </tr> + <tr> + <td align="center"> + <button id="remove_all_field" class="oe_export_button_export">Remove All</button> + </td> + </tr> + </table> + </td> + <td class="oe_export_fields_selector_right"> + <select name="fields_list" id="fields_list" multiple="multiple"></select> + </td> + </tr> + </table> + </td> + </tr> + </table> +</t> + +<t t-name="ExportTreeView-Secondary"> + <table id="field-tree-structure" class="oe_export_fields_selector_export" cellspacing="0" cellpadding="0"> + <tr><th class="oe_export_tree_header"> Name </th></tr> + <t t-call="ExportTreeView-Secondary.children"/> + </table> +</t> +<t t-name="ExportTreeView-Secondary.children"> + <t t-foreach="fields" t-as="field" > + <tr t-att-id="'treerow-' + field.id" class="oe_export_row"> + <td> + <table class="tree_grid" border="0"> + <tr class="oe_export_row"> + <t t-foreach="(field.id).split('/')" t-as="level" > + <t t-if="(field.id).split('/')[0] != level"> + <td width="18">&nbsp;</td> + </t> + </t> + <td valign="top" align="left" style="cursor: pointer;" width="18"> + <t t-if="(field.children).length >= 1"> + <t t-if="(field.id).split('/').length != 3"> + <img t-att-id="'parentimg-' + field.id" src="/base/static/src/img/expand.gif" width="16" height="16" border="0"/> + </t> + </t> + </td> + <td id="tree-column" valign="middle" align="left" style="cursor: pointer;"> + <a t-att-id="'export-' + field.id" t-att-string="field.string" href="javascript: void(0);" style="text-decoration: none;"> + <t t-esc="field.string"/> + </a> + </td> + </tr> + </table> + </td> + </tr> + </t> +</t> + +<t t-name="ExportNewList"> + <tr> + <th><label>Save as:</label></th> + <td><input size="10" type="text" id="savelist_name"/></td> + <td><button class="oe_export_button_export" id="add_export_list">Ok</button></td> + </tr> +</t> + +<t t-name="Exists.ExportList"> + <tr><th align="right"><label >Saved exports:</label></th></tr> + <tr align="left"> + <td> + <select id="saved_export_list" style="width: 100%;"> + <option></option> + <t t-foreach="existing_exports" t-as="export"> + <option t-att-value="export.id"><t t-esc="export.name"/></option> + </t> + </select> + </td> + <td><button class="oe_export_button_export" id="delete_export_list">Delete</button></td> + </tr> +</t> </templates> |
