[IMP] only display last 3 log items, add link to display everything
[odoo/odoo.git] / addons / web / static / src / xml / base.xml
index 4bbee04..507db6d 100644 (file)
     <tr>
         <td class="view-manager-main-content">
             <div class="oe-view-manager-header">
+                <h2 class="oe_view_title" t-if="self.flags.display_title !== false">
+                    <t t-esc="self.display_title()"/>
+                </h2>
                 <div class="oe_vm_switch">
                     <t t-if="views.length != 1" t-foreach="views" t-as="view">
                         <button type="button" t-att-data-view-type="view.view_type">
         <button t-if="self.session.debug" class="oe_get_xml_view">
             View#<span></span>
         </button>
-        <h2 class="oe_view_title" t-if="self.flags.display_title !== false">
-            <t t-if="self.flags.display_title !== false" t-esc="self.action.name"/>
-        </h2>
     </t>
     <t t-jquery=".oe-view-manager-header" t-operation="after">
-        <ul class="oe-view-manager-logs"></ul>
+        <div class="oe-view-manager-logs oe-folded">
+            <ul></ul>
+            <a class="oe-more-logs" href="#">Moreā€¦</a>
+        </div>
     </t>
 </t>
 
         <h2><t t-esc="name"/></h2>
     </div>
 </t>
-
-
 <t t-name="Sidebar.section.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="#">
         </span>
     </td>
 </tr>
+
 <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)"/>
     <thead class="ui-widget-header">
                     <t t-esc="column.string"/>
                 </th>
             </t>
-            <th t-if="options.selectable" width="1"/>
+            <th t-if="options.selectable" width="1"  >
+                <input type="checkbox" class="all-record-selector"/> </th>
             <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)">
         </tr>
     </tfoot>
 </table>
-<th t-name="Listview.navigation.button" t-if="options.pager !== false" 
+<th t-name="Listview.navigation.button" t-if="options.pager !== false"
         class="oe-list-pager" t-att-colspan="columns_count">
     <button type="button" disabled="disabled"
-        data-pager-action="first">First</button>
+            data-pager-action="first">First</button>
     <button type="button" disabled="disabled"
-           data-pager-action="previous">&lt;</button>
+            data-pager-action="previous">&lt;</button>
 
     <span class="oe-pager-state">
     </span>
 
     <button type="button" disabled="disabled"
-        data-pager-action="next">&gt;</button>
+            data-pager-action="next">&gt;</button>
     <button type="button" disabled="disabled"
-        data-pager-action="last">Last</button>
+            data-pager-action="last">Last</button>
 </th>
 <t t-name="ListView.rows" t-foreach="records.length" t-as="index">
     <t t-call="ListView.row">
 
         </td>
     </t>
-    <th t-if="options.selectable" class="oe-record-selector" width="1">
-        <input type="checkbox"/>
-    </th>
+    <t t-if="options.radio">
+        <th t-if="options.selectable" class="oe-record-selector" width="1">
+            <input type="radio" name ="radiogroup"/>
+        </th>
+    </t>
+    <t t-if="!options.radio">
+        <th t-if="options.selectable" class="oe-record-selector" width="1">
+            <input type="checkbox"/>
+        </th>
+    </t>
+
+
     <t t-foreach="columns" t-as="column">
         <t t-set="align" t-value="column.type === 'integer' or column.type == 'float'"/>
         <td t-if="!column.meta and column.invisible !== '1'" t-att-title="column.help"
 <t t-name="ListView.row.form">
     <t t-raw="frame.render()"/>
 </t>
+
 <t t-name="FormView">
     <div class="oe_form_header">
-        <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>
+        <div class="oe_form_buttons" t-if="widget.options.action_buttons !== false">
+            <button type="button" class="oe_form_button_save oe_form_on_editable">Save</button>
+            <button type="button" class="oe_form_button_toggle">
+                <span class="oe_form_on_editable">Cancel</span>
+                <span class="oe_form_on_readonly">Edit</span>
             </button>
-            <button type="button" class="oe_form_button_new">New</button>
-            <button type="button" class="oe_form_button_duplicate oe_form_on_update">Duplicate</button>
-            <button type="button" class="oe_form_button_toggle">Readonly/Editable</button>
+            <button type="button" class="oe_form_button_new oe_form_on_readonly">Create</button>
+            <button type="button" class="oe_form_button_duplicate oe_form_on_readonly">Duplicate</button>
+            <button type="button" class="oe_form_button_delete oe_form_on_readonly">Delete</button>
         </div>
-        <div class="oe_form_pager" t-if="view.options.pager !== false">
+        <div class="oe_form_pager" t-if="widget.options.pager !== false">
             <button type="button" data-pager-action="first">First</button>
             <button type="button" data-pager-action="previous">&lt;&lt;</button>
 
         <t t-call="WidgetFrame"/>
     </div>
 </t>
-<t t-name="WidgetNotebook.readonly">
-    <t t-foreach="widget.pages" t-as="page">
-        <h3><t t-esc="page.string"/></h3>
-        <t t-raw="page.render()"/>
-    </t>
-</t>
 <t t-name="WidgetSeparator">
     <div t-if="widget.orientation !== 'vertical'" t-att-class="'separator ' + widget.orientation">
         <t t-esc="widget.string"/>
 </t>
 <t t-name="WidgetLabel">
     <label t-att-for="widget.element_id"
-           t-att-class="'oe_label' + (widget.help ? '_help' : '')"
+           t-attf-class="oe_label#{widget.help ? '_help' : ''} oe_align_#{widget.align}"
            t-att-title="widget.help">
         <t t-esc="widget.string"/>
         <span t-if="widget.help">?</span>
     </label>
 </t>
 <t t-name="WidgetParagraph">
-    <p class="oe_form_paragraph"><t t-esc="widget.string"/></p>
+    <p t-attf-class="oe_form_paragraph oe_align_#{widget.align}"><t t-esc="widget.string"/></p>
 </t>
 <t t-name="FieldChar">
-    <input type="text" size="1"
+    <input t-att-type="widget.password ? 'password' : 'text'" size="1"
         t-att-name="widget.name"
         t-att-id="widget.element_id"
         t-attf-class="field_#{widget.type}"
 </t>
 <t t-name="FieldMany2One.context_menu">
     <ul>
-        <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'" class="oe_m2o_menu_item_mandatory">Search...</li>
+        <li t-att-id="widget.cm_id + '_open'" style="color:grey" class="oe_m2o_menu_item_mandatory">Open...</li>
+        <li t-att-id="widget.cm_id + '_create'" class="oe_m2o_menu_item_noreadonly">Create...</li>
+        <li t-att-id="widget.cm_id + '_search'" class="oe_m2o_menu_item_noreadonly">Search...</li>
         <t t-set="i" t-value="0"/>
         <t t-foreach="widget.related_entries" t-as="entry">
             <li t-att-id="widget.cm_id + '_related_' + i" style="color:grey" class="oe_m2o_menu_item_mandatory">
         <span t-if="widget.string"><t t-esc="widget.string"/></span>
     </button>
 </t>
+
 <t t-name="SearchView">
     <form class="oe_forms">
         <t t-call="SearchView.render_lines"/>
             .unwrap();
     </t>
 </t>
+<t t-name="view_editor">
+    <table class="oe_view_editor">
+        <t t-call="view_editor.row"/>
+    </table>
+</t>
+<tr t-name="view_editor.row"  class="oe_view_editor_row" t-att-id="'viewedit-' + rec.id"  t-att-level="rec.level" t-foreach="data" t-as="rec">
+    <td class="oe_view_editor_colum"  width="85%">
+        <table class="oe_view_editor_tree_grid">
+            <tr>
+                <td width="16px" t-att-style="'background-position: ' + 20*rec.level + 'px; padding-left: ' + 20*rec.level + 'px'">
+                    <img t-if="rec.child_id.length" t-att-id="'parentimg-' + rec.id"
+                        src="/web/static/src/img/collapse.gif" width="16" height="16" border="0"/>
+                </td>
+                <td style="cursor: pointer;">
+                    <a style="text-decoration:none" href="javascript:void(0);"> <t t-esc="rec.name"/> </a>
+                </td>
+            </tr>
+        </table>
+    </td>
+    <td align="left" class="oe_view_editor_colum"  width="15%">
+        <table  width="100%">
+            <tr>
+                <td width="20%">
+                    <img t-if="rec.att_list.length"
+                        id="side-add" src="/web/static/src/img/icons/gtk-add.png" style="cursor: pointer;"/>
+                </td>
+                <td width="20%">
+                    <img  id="side-remove" src="/web/static/src/img/icons/gtk-remove.png" style="cursor: pointer;"/>
+                </td>
+                <td width="20%">
+                    <img t-if="rec.att_list.length"
+                        id="side-edit" src="/web/static/src/img/icons/gtk-edit.png" style="cursor: pointer;"/>
+                </td>
+                <td width="20%">
+                    <img t-if="rec.att_list.length"
+                        id="side-up" src="/web/static/src/img/icons/gtk-go-up.png" style="cursor: pointer;"/>
+                </td>
+                <td width="20%">
+                    <img t-if="rec.att_list.length"
+                        id="side-down" src="/web/static/src/img/icons/gtk-go-down.png" style="cursor: pointer;"/>
+                </td>
+            </tr>
+        </table>
+    </td>
+    <t t-if="rec.child_id.length">
+        <t t-set="data" t-value="rec.child_id"/>
+        <t t-call="view_editor.row"/>
+    </t>
+</tr>
 
 <t t-name="ExportView">
     <a id="exportview" href="javascript: void(0)" style="text-decoration: none;color: #3D3D3D;">Export</a>
     <a id="importview" href="javascript: void(0)" style="text-decoration: none;color: #3D3D3D;">Import</a>
 </t>
 <t t-name="ImportDataView">
-<form name="import_data" id="import_data" action="" method="post" enctype="multipart/form-data">
+<form name="import_data" id="import_data" action="" method="post" enctype="multipart/form-data"
+        class="oe-import oe-import-no-result">
     <input type="hidden" name="session_id" t-att-value="session.session_id"/>
     <h2 class="separator horizontal">1. Import a .CSV file</h2>
     <p>Select a .CSV file to import. If you need a sample of file to import,
         <label for="csvfile">CSV File:</label>
         <input type="file" id="csvfile" size="50" name="csvfile"/>
     </p>
-    <h2 class="separator horizontal">2. Check your file format</h2>
-    <div id="result"></div>
-    <fieldset>
-        <legend style="cursor:pointer;">Import Options</legend>
-        <table style="display:none">
+    <h2 class="separator horizontal oe-import-result">2. Check your file format</h2>
+    <div id="result" class="oe-import-result"></div>
+    <fieldset class="oe-closed oe-import-result">
+        <legend>Import Options</legend>
+        <table>
             <tr>
                 <td colspan="4">
                     <label for="file_has_headers">Does your file have titles?</label>
     </fieldset>
 </form>
 </t>
-<table t-name="ImportView.result"
-        class="oe_import_grid" width="100%" style="margin: 5px 0;">
-    <tr t-if="headers" class="oe_import_grid-header">
-        <td t-foreach="headers" t-as="header" class="oe_import_grid-cell">
-            <t t-esc="header"/></td>
-    </tr>
-    <tr>
-        <td t-foreach="records[0]" t-as="column">
-            <input class="sel_fields"/>
-        </td>
-    </tr>
-    <tr t-foreach="records" t-as="record" class="oe_import_grid-row">
-        <td t-foreach="record" t-as="cell" class="oe_import_grid-cell">
-            <t t-esc="cell"/></td>
-    </tr>
-</table>
+<t t-name="ImportView.result">
+    <table class="oe_import_grid" width="100%" style="margin: 5px 0;">
+        <tr t-if="headers" class="oe_import_grid-header">
+            <td t-foreach="headers" t-as="header" class="oe_import_grid-cell">
+                <t t-esc="header"/></td>
+        </tr>
+        <tr>
+            <td t-foreach="records[0]" t-as="column">
+                <input class="sel_fields" placeholder="--- Don't Import ---"/><span class="oe-m2o-drop-down-button">
+                        <img src="/web/static/src/img/down-arrow.png" /></span>
+            </td>
+        </tr>
+        <tr t-foreach="records" t-as="record" class="oe_import_grid-row">
+            <td t-foreach="record" t-as="cell" class="oe_import_grid-cell">
+                <t t-esc="cell"/></td>
+        </tr>
+    </table>
+</t>
 <t t-name="ImportView.error">
     <p style="white-space:pre-line;">The import failed due to:<t t-esc="error.message"/></p>
     <t t-if="error.preview">