[IMP] opportunity CSS
bzr revid: fp@tinyerp.com-20120601153211-ctugrclqh2z26qck
This commit is contained in:
commit
75f18a1402
|
@ -1,4 +1,4 @@
|
|||
@charset "UTF-8";
|
||||
@charset "utf-8";
|
||||
@font-face {
|
||||
font-family: "mnmliconsRegular";
|
||||
src: url("/web/static/src/font/mnmliconsv21-webfont.eot") format("eot");
|
||||
|
@ -34,7 +34,7 @@
|
|||
background: white;
|
||||
/* http://www.quirksmode.org/dom/inputfile.html
|
||||
* http://stackoverflow.com/questions/2855589/replace-input-type-file-by-an-image
|
||||
*/
|
||||
*/ */
|
||||
}
|
||||
.openerp a {
|
||||
text-decoration: none;
|
||||
|
@ -1554,7 +1554,8 @@
|
|||
.openerp .oe_form_button_save_dirty:hover {
|
||||
background: #ed6f6a;
|
||||
}
|
||||
.openerp .oe_form_topbar {
|
||||
.openerp header {
|
||||
position: relative;
|
||||
border-bottom: 1px solid #cacaca;
|
||||
background-color: #fcfcfc;
|
||||
background-image: -webkit-gradient(linear, left top, left bottom, from(#fcfcfc), to(#dedede));
|
||||
|
@ -1566,7 +1567,7 @@
|
|||
padding: 0 8px;
|
||||
line-height: 30px;
|
||||
}
|
||||
.openerp .oe_form_topbar button {
|
||||
.openerp header button {
|
||||
font-size: 12px;
|
||||
height: 24px !important;
|
||||
line-height: 24px;
|
||||
|
@ -1574,11 +1575,11 @@
|
|||
padding: 0 10px;
|
||||
margin: 3px 4px 3px 0;
|
||||
}
|
||||
.openerp .oe_form_topbar button span.i {
|
||||
.openerp header button span.i {
|
||||
line-height: 20px;
|
||||
height: 24px;
|
||||
}
|
||||
.openerp .oe_form_topbar ul {
|
||||
.openerp header ul {
|
||||
height: 30px;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
|
@ -1586,7 +1587,7 @@
|
|||
border-left: 1px solid #cacaca;
|
||||
border-right: 1px solid #cacaca;
|
||||
}
|
||||
.openerp .oe_form_topbar ul li {
|
||||
.openerp header ul li {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
float: left;
|
||||
|
@ -1595,35 +1596,40 @@
|
|||
height: 30px;
|
||||
padding: 0 12px;
|
||||
}
|
||||
.openerp .oe_form_topbar ul li:first-child {
|
||||
.openerp header ul li:first-child {
|
||||
border-left: 1px solid #cacaca;
|
||||
}
|
||||
.openerp .oe_form_topbar ul li a {
|
||||
.openerp header ul li a {
|
||||
color: #4c4c4c;
|
||||
}
|
||||
.openerp .oe_form_topbar ul li a:hover {
|
||||
.openerp header ul li a:hover {
|
||||
color: black;
|
||||
}
|
||||
.openerp .oe_form_topbar .oe_form_steps img {
|
||||
.openerp header .oe_form_steps {
|
||||
display: inline-block;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
}
|
||||
.openerp header .oe_form_steps img {
|
||||
margin: 0 8px;
|
||||
vertical-align: top;
|
||||
}
|
||||
.openerp .oe_form_topbar .oe_form_steps li {
|
||||
.openerp header .oe_form_steps li {
|
||||
border-right: none;
|
||||
padding: 0;
|
||||
}
|
||||
.openerp .oe_form_topbar .oe_form_steps li:first-child {
|
||||
.openerp header .oe_form_steps li:first-child {
|
||||
margin-left: 12px;
|
||||
border-left: none;
|
||||
}
|
||||
.openerp .oe_form_topbar .oe_form_steps li:last-child {
|
||||
.openerp header .oe_form_steps li:last-child {
|
||||
margin-right: 12px;
|
||||
}
|
||||
.openerp .oe_form_topbar .oe_form_steps_active {
|
||||
.openerp header .oe_form_steps_active {
|
||||
font-weight: bold;
|
||||
color: #b33630;
|
||||
}
|
||||
.openerp .oe_form_topbar.oe_form_topbar_hifirst button:first-child, .openerp button.oe_form_button_hi {
|
||||
.openerp header.oe_form_topbar_hifirst button:first-child, .openerp button.oe_form_button_hi {
|
||||
color: white;
|
||||
background: #dc5f59;
|
||||
background: -moz-linear-gradient(#dc5f59, #b33630);
|
||||
|
@ -1633,7 +1639,7 @@
|
|||
-webkit-box-shadow: none;
|
||||
-box-shadow: none;
|
||||
}
|
||||
.openerp .oe_form_topbar.oe_form_topbar_hifirst button:first-child:hover, .openerp button.oe_form_button_hi:hover {
|
||||
.openerp header.oe_form_topbar_hifirst button:first-child:hover, .openerp button.oe_form_button_hi:hover {
|
||||
background: #df6b66;
|
||||
background: -moz-linear-gradient(#df6b66, #bf3a33);
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(#df6b66), to(#bf3a33));
|
||||
|
@ -1647,7 +1653,7 @@
|
|||
padding: 8px 0;
|
||||
border-bottom: 1px solid #dddddd;
|
||||
}
|
||||
.openerp .oe_application .oe_form_sheet_width, .openerp .oe_application .oe_form_bottom {
|
||||
.openerp .oe_application .oe_form_sheet_width, .openerp .oe_application footer {
|
||||
min-width: 650px;
|
||||
max-width: 980px;
|
||||
margin: 0 auto;
|
||||
|
@ -1661,6 +1667,19 @@
|
|||
-webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
|
||||
-box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
|
||||
}
|
||||
.openerp .oe_form_editable .oe_form_editable_hidden {
|
||||
display: none;
|
||||
}
|
||||
.openerp .oe_form_readonly .oe_form_readonly_hidden {
|
||||
display: none;
|
||||
}
|
||||
.openerp .oe_form .oe_form_field_text,
|
||||
.openerp .oe_form .oe_form_field_char {
|
||||
width: 100%;
|
||||
}
|
||||
.openerp .oe_form .oe_form_inline {
|
||||
width: auto;
|
||||
}
|
||||
.openerp .oe_form .oe_form_group_cell {
|
||||
line-height: 18px;
|
||||
padding: 2px;
|
||||
|
@ -1676,12 +1695,21 @@
|
|||
.openerp .oe_form .oe_form_group_cell > .oe_form_field_url input,
|
||||
.openerp .oe_form .oe_form_group_cell > .oe_form_field_float input,
|
||||
.openerp .oe_form .oe_form_group_cell > .oe_form_field_selection select,
|
||||
.openerp .oe_form .oe_form_group_cell > div > .oe_datepicker_root,
|
||||
.openerp .oe_form .oe_form_group_cell > div > .oe_datepicker_root > input.oe_datepicker_master {
|
||||
.openerp .oe_form .oe_form_group_cell > .oe_form_field_progressbar,
|
||||
.openerp .oe_form .oe_form_group_cell > span > .oe_datepicker_root,
|
||||
.openerp .oe_form .oe_form_group_cell > span > .oe_datepicker_root > input.oe_datepicker_master {
|
||||
width: 100%;
|
||||
}
|
||||
.openerp .oe_form .oe_form_group_cell.oe_form_group_nested {
|
||||
padding: 0;
|
||||
.openerp .oe_form h1, .openerp .oe_form h2, .openerp .oe_form h3, .openerp .oe_form h4, .openerp .oe_form h5, .openerp .oe_form h6 {
|
||||
margin: 0 0 4px 0;
|
||||
width: 55%;
|
||||
}
|
||||
.openerp .oe_form h1 input, .openerp .oe_form h2 input, .openerp .oe_form h3 input, .openerp .oe_form h4 input, .openerp .oe_form h5 input, .openerp .oe_form h6 input {
|
||||
height: inherit !important;
|
||||
font-size: inherit;
|
||||
}
|
||||
.openerp .oe_form h1 input {
|
||||
width: 100%;
|
||||
}
|
||||
.openerp .oe_form .oe_form_label_help[for], .openerp .oe_form .oe_form_label[for] {
|
||||
font-weight: bold;
|
||||
|
@ -1698,6 +1726,7 @@
|
|||
}
|
||||
.openerp .oe_form textarea {
|
||||
resize: vertical;
|
||||
width: 100%;
|
||||
}
|
||||
.openerp .oe_form input[type="text"],
|
||||
.openerp .oe_form input[type="password"],
|
||||
|
@ -1768,8 +1797,11 @@
|
|||
.openerp .oe_form .oe_form_field_boolean {
|
||||
padding-top: 4px;
|
||||
}
|
||||
.openerp .oe_form .oe_form_field_date input {
|
||||
width: 7em;
|
||||
}
|
||||
.openerp .oe_form .oe_form_field_datetime input {
|
||||
min-width: 11em;
|
||||
width: 11em;
|
||||
}
|
||||
.openerp .oe_form .oe_form_field_many2manytags .text-wrap {
|
||||
width: 100% !important;
|
||||
|
@ -1808,17 +1840,6 @@
|
|||
background-color: #ff6666 !important;
|
||||
border: 1px solid #dd0000 !important;
|
||||
}
|
||||
.openerp .oe_form .oe_button.oe_field_button {
|
||||
display: block;
|
||||
-webkit-border-top-left-radius: 0px;
|
||||
-webkit-border-bottom-left-radius: 0px;
|
||||
-moz-border-radius-topleft: 0px;
|
||||
-moz-border-radius-bottomleft: 0px;
|
||||
border-top-left-radius: 0px;
|
||||
border-bottom-left-radius: 0px;
|
||||
margin-right: -1px;
|
||||
height: 22px;
|
||||
}
|
||||
.openerp .oe_form .oe_input_icon {
|
||||
cursor: pointer;
|
||||
margin: 3px 0 0 -21px;
|
||||
|
@ -1835,6 +1856,38 @@
|
|||
.openerp .oe_form .oe_form_group_cell .oe_kanban_view {
|
||||
position: static;
|
||||
}
|
||||
.openerp .oe_form .oe_form_field_with_button {
|
||||
display: inline-block;
|
||||
}
|
||||
.openerp .oe_form .oe_form_field_with_button > .oe_button {
|
||||
float: right;
|
||||
-webkit-border-top-left-radius: 0px;
|
||||
-webkit-border-bottom-left-radius: 0px;
|
||||
-moz-border-radius-topleft: 0px;
|
||||
-moz-border-radius-bottomleft: 0px;
|
||||
border-top-left-radius: 0px;
|
||||
border-bottom-left-radius: 0px;
|
||||
margin-right: -1px;
|
||||
height: 22px;
|
||||
}
|
||||
.openerp .oe_form .oe_form_field_with_button > div {
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
}
|
||||
.openerp .oe_form .oe_form_field_with_button > div > input {
|
||||
line-height: 23px;
|
||||
margin-right: 0;
|
||||
}
|
||||
.openerp .oe_form .oe_form_button_box {
|
||||
width: 200px;
|
||||
text-align: center;
|
||||
}
|
||||
.openerp .oe_form .oe_form_group {
|
||||
margin: 5px 0px 5px 0px;
|
||||
}
|
||||
.openerp .oe_form .oe_form_group_cell .oe_kanban_view {
|
||||
position: static;
|
||||
}
|
||||
.openerp .oe_form .oe_form_button.oe_button {
|
||||
height: 22px;
|
||||
color: #4c4c4c;
|
||||
|
@ -1856,6 +1909,7 @@
|
|||
.openerp .oe_form .oe-binary-file-set {
|
||||
overflow: hidden;
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
width: 45px;
|
||||
height: 30px;
|
||||
}
|
||||
|
@ -1872,6 +1926,9 @@
|
|||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
.openerp .oe_form .oe_binary_image {
|
||||
display: inline-block;
|
||||
}
|
||||
.openerp .oe_horizontal_border {
|
||||
border-bottom: 1px solid black;
|
||||
}
|
||||
|
@ -1944,6 +2001,10 @@
|
|||
.openerp .ui-tabs-hide {
|
||||
display: none;
|
||||
}
|
||||
.openerp .oe_form .oe_form_field_progressbar {
|
||||
display: inline-block;
|
||||
min-width: 70px;
|
||||
}
|
||||
.openerp .oe_form .oe_form_field_progressbar.ui-progressbar {
|
||||
height: 22px;
|
||||
font-size: 10px;
|
||||
|
@ -1984,22 +2045,14 @@
|
|||
.openerp .oe-select-create-popup-view-form > .oe_formview > .oe_form_pager {
|
||||
display: none;
|
||||
}
|
||||
.openerp .oe_form .oe_form_title, .openerp .oe_form .oe_form_title input {
|
||||
font-size: 20px;
|
||||
font-weight: bold;
|
||||
height: 30px;
|
||||
}
|
||||
.openerp .oe_form .oe_form_group_odd_border > tbody > tr.oe_form_group_row > td.oe_form_group_cell:nth-child(odd),
|
||||
.openerp .oe_form .oe_form_group_label_border > tbody > tr.oe_form_group_row > td.oe_form_group_cell_label {
|
||||
.openerp .oe_form td.oe_form_group_cell_label {
|
||||
border-right: 1px solid #dddddd;
|
||||
}
|
||||
.openerp .oe_form .oe_form_group_odd_border > tbody > tr.oe_form_group_row > td.oe_form_group_cell:nth-child(odd) label,
|
||||
.openerp .oe_form .oe_form_group_label_border > tbody > tr.oe_form_group_row > td.oe_form_group_cell_label label {
|
||||
.openerp .oe_form td.oe_form_group_cell_label label {
|
||||
display: block;
|
||||
min-width: 120px;
|
||||
}
|
||||
.openerp .oe_form .oe_form_group_odd_border > tbody > tr.oe_form_group_row > td.oe_form_group_cell,
|
||||
.openerp .oe_form .oe_form_group_label_border > tbody > tr.oe_form_group_row > td.oe_form_group_cell {
|
||||
.openerp .oe_form td.oe_form_group_cell_label + .oe_form_group_cell {
|
||||
padding-left: 8px;
|
||||
}
|
||||
.openerp .oe_form .oe_form_subtotal_footer {
|
||||
|
@ -2090,7 +2143,7 @@
|
|||
.openerp .oe-listview-content > tbody > tr > td.oe_list_checkbox:first-child:after, .openerp .oe-listview-content > tbody > tr th.oe_list_checkbox:first-child:after {
|
||||
border-width: 0;
|
||||
}
|
||||
.openerp .oe-listview-content > tbody > tr > td.oe-number {
|
||||
.openerp .oe-listview-content > tbody > tr > td.oe_number {
|
||||
text-align: right !important;
|
||||
}
|
||||
.openerp .oe-listview-content > tbody > tr:nth-child(odd) {
|
||||
|
|
|
@ -1231,7 +1231,8 @@ $colour4: #8a89ba
|
|||
background: #ED6F6A
|
||||
// }}}
|
||||
// FormView.customdivs {{{
|
||||
.oe_form_topbar
|
||||
header
|
||||
position: relative
|
||||
border-bottom: 1px solid #cacaca
|
||||
@include vertical-gradient(#fcfcfc, #dedede)
|
||||
padding: 0 8px
|
||||
|
@ -1268,10 +1269,13 @@ $colour4: #8a89ba
|
|||
&:hover
|
||||
color: black
|
||||
.oe_form_steps
|
||||
img
|
||||
display: inline-block
|
||||
position: absolute
|
||||
right: 0
|
||||
img
|
||||
margin: 0 8px
|
||||
vertical-align: top
|
||||
li
|
||||
li
|
||||
border-right: none
|
||||
padding: 0
|
||||
&:first-child
|
||||
|
@ -1282,7 +1286,7 @@ $colour4: #8a89ba
|
|||
.oe_form_steps_active
|
||||
font-weight: bold
|
||||
color: #b33630
|
||||
.oe_form_topbar.oe_form_topbar_hifirst button:first-child, button.oe_form_button_hi
|
||||
header.oe_form_topbar_hifirst button:first-child, button.oe_form_button_hi
|
||||
color: white
|
||||
background: #DC5F59
|
||||
background: -moz-linear-gradient(#DC5F59, #B33630)
|
||||
|
@ -1291,7 +1295,7 @@ $colour4: #8a89ba
|
|||
-moz-box-shadow: none
|
||||
-webkit-box-shadow: none
|
||||
-box-shadow: none
|
||||
.oe_form_topbar.oe_form_topbar_hifirst button:first-child:hover, button.oe_form_button_hi:hover
|
||||
header.oe_form_topbar_hifirst button:first-child:hover, button.oe_form_button_hi:hover
|
||||
background: #DF6B66
|
||||
background: -moz-linear-gradient( #DF6B66, #BF3A33)
|
||||
background: -webkit-gradient(linear, left top, left bottom, from( #DF6B66), to( #BF3A33))
|
||||
|
@ -1304,7 +1308,7 @@ $colour4: #8a89ba
|
|||
background: url(/web/static/src/img/form_sheetbg.png)
|
||||
padding: 8px 0
|
||||
border-bottom: 1px solid #ddd
|
||||
.oe_form_sheet_width, .oe_form_bottom
|
||||
.oe_form_sheet_width, footer
|
||||
min-width: 650px
|
||||
max-width: 980px
|
||||
margin: 0 auto
|
||||
|
@ -1316,7 +1320,15 @@ $colour4: #8a89ba
|
|||
@include box-shadow(0 0 10px rgba(0,0,0,0.3))
|
||||
// }}}
|
||||
// FormView.layout {{{
|
||||
.oe_form_editable .oe_form_editable_hidden
|
||||
display: none
|
||||
.oe_form_readonly .oe_form_readonly_hidden
|
||||
display: none
|
||||
.oe_form
|
||||
.oe_form_field_text
|
||||
width: 100%
|
||||
.oe_form_inline
|
||||
width: auto
|
||||
.oe_form_group_cell
|
||||
line-height: 18px
|
||||
padding: 2px
|
||||
|
@ -1331,11 +1343,19 @@ $colour4: #8a89ba
|
|||
.oe_form_group_cell > .oe_form_field_url input,
|
||||
.oe_form_group_cell > .oe_form_field_float input,
|
||||
.oe_form_group_cell > .oe_form_field_selection select,
|
||||
.oe_form_group_cell > div > .oe_datepicker_root,
|
||||
.oe_form_group_cell > div > .oe_datepicker_root > input.oe_datepicker_master
|
||||
.oe_form_group_cell > .oe_form_field_progressbar,
|
||||
.oe_form_group_cell > span > .oe_datepicker_root,
|
||||
.oe_form_group_cell > span > .oe_datepicker_root > input.oe_datepicker_master
|
||||
width: 100%
|
||||
.oe_form_group_cell.oe_form_group_nested
|
||||
padding: 0
|
||||
h1, h2, h3, h4, h5, h6
|
||||
margin: 0 0 4px 0
|
||||
width: 55%
|
||||
input
|
||||
height: inherit !important
|
||||
font-size: inherit
|
||||
h1 input
|
||||
width: 100%
|
||||
|
||||
// }}}
|
||||
// FormView.label {{{
|
||||
.oe_form
|
||||
|
@ -1355,6 +1375,7 @@ $colour4: #8a89ba
|
|||
.oe_form
|
||||
textarea
|
||||
resize: vertical
|
||||
width: 100%
|
||||
input[type="text"],
|
||||
input[type="password"],
|
||||
input[type="file"],
|
||||
|
@ -1412,8 +1433,10 @@ $colour4: #8a89ba
|
|||
white-space: nowrap
|
||||
.oe_form_field_boolean
|
||||
padding-top: 4px
|
||||
.oe_form_field_date input
|
||||
width: 7em
|
||||
.oe_form_field_datetime input
|
||||
min-width: 11em
|
||||
width: 11em
|
||||
.oe_form_field_many2manytags
|
||||
.text-wrap
|
||||
width: 100% !important
|
||||
|
@ -1446,16 +1469,6 @@ $colour4: #8a89ba
|
|||
input, select, textarea
|
||||
background-color: #F66 !important
|
||||
border: 1px solid #D00 !important
|
||||
.oe_button.oe_field_button
|
||||
display: block
|
||||
-webkit-border-top-left-radius: 0px
|
||||
-webkit-border-bottom-left-radius: 0px
|
||||
-moz-border-radius-topleft: 0px
|
||||
-moz-border-radius-bottomleft: 0px
|
||||
border-top-left-radius: 0px
|
||||
border-bottom-left-radius: 0px
|
||||
margin-right: -1px
|
||||
height: 22px
|
||||
.oe_input_icon
|
||||
cursor: pointer
|
||||
margin: 3px 0 0 -21px
|
||||
|
@ -1470,6 +1483,35 @@ $colour4: #8a89ba
|
|||
.oe_form_group_cell .oe_kanban_view
|
||||
// Hack due to absolute positioning of kanban view messing with o2m
|
||||
position: static
|
||||
.oe_form_field_with_button
|
||||
display: inline-block
|
||||
> .oe_button
|
||||
float: right
|
||||
-webkit-border-top-left-radius: 0px
|
||||
-webkit-border-bottom-left-radius: 0px
|
||||
-moz-border-radius-topleft: 0px
|
||||
-moz-border-radius-bottomleft: 0px
|
||||
border-top-left-radius: 0px
|
||||
border-bottom-left-radius: 0px
|
||||
margin-right: -1px
|
||||
height: 22px
|
||||
> div
|
||||
position: relative
|
||||
overflow: hidden
|
||||
> input
|
||||
line-height: 23px
|
||||
margin-right: 0
|
||||
|
||||
.oe_form_button_box
|
||||
width: 200px
|
||||
text-align: center
|
||||
|
||||
.oe_form_group
|
||||
margin: 5px 0px 5px 0px
|
||||
|
||||
.oe_form_group_cell .oe_kanban_view
|
||||
// Hack due to absolute positioning of kanban view messing with o2m
|
||||
position: static
|
||||
// }}}
|
||||
// FormView.buttons {{{
|
||||
.oe_form
|
||||
|
@ -1496,6 +1538,7 @@ $colour4: #8a89ba
|
|||
.oe-binary-file-set
|
||||
overflow: hidden
|
||||
position: relative
|
||||
display: inline-block
|
||||
width: 45px
|
||||
height: 30px
|
||||
input.oe-binary-file
|
||||
|
@ -1511,6 +1554,8 @@ $colour4: #8a89ba
|
|||
-ms-filter: "alpha(opacity=0)"
|
||||
margin: 0
|
||||
padding: 0
|
||||
.oe_binary_image
|
||||
display: inline-block
|
||||
// }}}
|
||||
// FormView.separator {{{
|
||||
.oe_horizontal_border
|
||||
|
@ -1573,6 +1618,9 @@ $colour4: #8a89ba
|
|||
// }}}
|
||||
// FormView.progressbar {{{
|
||||
.oe_form
|
||||
.oe_form_field_progressbar
|
||||
display: inline-block
|
||||
min-width: 70px
|
||||
.oe_form_field_progressbar.ui-progressbar
|
||||
height: 22px
|
||||
font-size: 10px
|
||||
|
@ -1615,18 +1663,12 @@ $colour4: #8a89ba
|
|||
// }}}
|
||||
// FormView.classes for openerp views {{{
|
||||
.oe_form
|
||||
.oe_form_title, .oe_form_title input
|
||||
font-size: 20px
|
||||
font-weight: bold
|
||||
height: 30px
|
||||
.oe_form_group_odd_border > tbody > tr.oe_form_group_row > td.oe_form_group_cell:nth-child(odd),
|
||||
.oe_form_group_label_border > tbody > tr.oe_form_group_row > td.oe_form_group_cell_label
|
||||
td.oe_form_group_cell_label
|
||||
border-right: 1px solid #ddd
|
||||
label
|
||||
display: block
|
||||
min-width: 120px
|
||||
.oe_form_group_odd_border > tbody > tr.oe_form_group_row > td.oe_form_group_cell,
|
||||
.oe_form_group_label_border > tbody > tr.oe_form_group_row > td.oe_form_group_cell
|
||||
td.oe_form_group_cell_label + .oe_form_group_cell
|
||||
padding-left: 8px
|
||||
.oe_form_subtotal_footer
|
||||
float: right
|
||||
|
@ -1702,7 +1744,7 @@ $colour4: #8a89ba
|
|||
width: 17px
|
||||
&:after
|
||||
border-width: 0
|
||||
> td.oe-number
|
||||
> td.oe_number
|
||||
text-align: right !important
|
||||
> tr:nth-child(odd)
|
||||
background-color: #f0f0fa
|
||||
|
|
|
@ -521,6 +521,7 @@ instance.web.FormView = instance.web.View.extend(_.extend({}, instance.web.form.
|
|||
switch_mode: function() {
|
||||
var self = this;
|
||||
if(this.get("mode") == "view") {
|
||||
self.$element.removeClass('oe_form_editable').addClass('oe_form_readonly');
|
||||
self.$buttons.find('.oe_form_buttons_edit').hide();
|
||||
self.$buttons.find('.oe_form_buttons_view').show();
|
||||
self.$sidebar.show();
|
||||
|
@ -528,6 +529,7 @@ instance.web.FormView = instance.web.View.extend(_.extend({}, instance.web.form.
|
|||
field.set({"force_readonly": true});
|
||||
});
|
||||
} else {
|
||||
self.$element.removeClass('oe_form_readonly').addClass('oe_form_editable');
|
||||
self.$buttons.find('.oe_form_buttons_edit').show();
|
||||
self.$buttons.find('.oe_form_buttons_view').hide();
|
||||
self.$sidebar.hide();
|
||||
|
@ -919,9 +921,6 @@ instance.web.form.FormRenderingEngine = instance.web.form.FormRenderingEngineInt
|
|||
// but one day, we will have to get rid of xml2json
|
||||
var xml = instance.web.json_node_to_xml(this.fvg.arch);
|
||||
this.$form = $('<div class="oe_form">' + xml + '</div>');
|
||||
if (this.fvg.arch.attrs && this.fvg.arch.attrs['layout'] !== 'manual') {
|
||||
this.$form.attr('layout', 'auto');
|
||||
}
|
||||
|
||||
this.fields_to_init = [];
|
||||
this.tags_to_init = [];
|
||||
|
@ -953,16 +952,13 @@ instance.web.form.FormRenderingEngine = instance.web.form.FormRenderingEngineInt
|
|||
var obj = self.tags_registry.get_object(tag_name);
|
||||
var w = new (obj)(self.view, instance.web.xml_to_json($elem[0]));
|
||||
w.replace($elem);
|
||||
})
|
||||
});
|
||||
// TODO: return a deferred
|
||||
},
|
||||
render_element: function(template, layout/* dictionaries */) {
|
||||
var dicts = [].slice.call(arguments).slice(2);
|
||||
dicts.unshift({ 'layout' : layout });
|
||||
render_element: function(template /* dictionaries */) {
|
||||
var dicts = [].slice.call(arguments).slice(1);
|
||||
var dict = _.extend.apply(_, dicts);
|
||||
dict['classnames'] = dict['class'] || ''; // class is a reserved word and might caused problem to Safari when used from QWeb
|
||||
var alt_template = template + '.' + layout;
|
||||
template = QWeb.has_template(alt_template) ? alt_template : template;
|
||||
return $(QWeb.render(template, dict));
|
||||
},
|
||||
alter_field: function(field) {
|
||||
|
@ -977,10 +973,8 @@ instance.web.form.FormRenderingEngine = instance.web.form.FormRenderingEngineInt
|
|||
}
|
||||
this.$target.toggleClass('oe_layout_debugging');
|
||||
},
|
||||
process: function($tag, layout) {
|
||||
process: function($tag) {
|
||||
var self = this;
|
||||
layout = $tag.attr('layout') || layout || 'auto';
|
||||
$tag.removeAttr('layout');
|
||||
var tagname = $tag[0].nodeName.toLowerCase();
|
||||
if (this.tags_registry.contains(tagname)) {
|
||||
this.tags_to_init.push($tag);
|
||||
|
@ -990,39 +984,42 @@ instance.web.form.FormRenderingEngine = instance.web.form.FormRenderingEngineInt
|
|||
if (fn) {
|
||||
var args = [].slice.call(arguments);
|
||||
args[0] = $tag;
|
||||
args[1] = layout;
|
||||
return fn.apply(self, args);
|
||||
} else {
|
||||
// generic tag handling, just process children
|
||||
$tag.children().each(function() {
|
||||
self.process($(this), layout);
|
||||
self.process($(this));
|
||||
});
|
||||
self.handle_common_properties($tag, $tag);
|
||||
$tag.removeAttr("modifiers");
|
||||
return $tag;
|
||||
}
|
||||
},
|
||||
process_sheet: function($sheet, layout) {
|
||||
var $new_sheet = this.render_element('FormRenderingSheet', layout, $sheet.getAttributes());
|
||||
process_sheet: function($sheet) {
|
||||
var $new_sheet = this.render_element('FormRenderingSheet', $sheet.getAttributes());
|
||||
this.handle_common_properties($new_sheet, $sheet);
|
||||
var $dst = (layout === 'auto') ? $new_sheet.find('group:first') : $new_sheet.find('.oe_form_sheet');
|
||||
$sheet.children().appendTo($dst);
|
||||
var $dst = $new_sheet.find('.oe_form_sheet');
|
||||
$sheet.contents().appendTo($dst);
|
||||
$sheet.before($new_sheet).remove();
|
||||
this.process($new_sheet, layout);
|
||||
this.process($new_sheet);
|
||||
},
|
||||
process_form: function($form, layout) {
|
||||
var $new_form = this.render_element('FormRenderingForm', layout, $form.getAttributes());
|
||||
process_form: function($form) {
|
||||
var $new_form = this.render_element('FormRenderingForm', $form.getAttributes());
|
||||
this.handle_common_properties($new_form, $form);
|
||||
var $dst = (layout === 'auto') ? $new_form.find('group:first') : $new_form;
|
||||
$form.children().appendTo($dst);
|
||||
$form.contents().appendTo($new_form);
|
||||
if ($form[0] === this.$form[0]) {
|
||||
// If root element, replace it
|
||||
this.$form = $new_form;
|
||||
} else {
|
||||
$form.before($new_form).remove();
|
||||
}
|
||||
this.process($new_form, layout);
|
||||
this.process($new_form);
|
||||
},
|
||||
/*
|
||||
* Used by direct <field> children of a <group> tag only
|
||||
* This method will add the implicit <label...> for every field
|
||||
* in the <group>
|
||||
*/
|
||||
preprocess_field: function($field) {
|
||||
var self = this;
|
||||
var name = $field.attr('name'),
|
||||
|
@ -1055,31 +1052,34 @@ instance.web.form.FormRenderingEngine = instance.web.form.FormRenderingEngineInt
|
|||
}
|
||||
return $label;
|
||||
},
|
||||
process_field: function($field, layout) {
|
||||
var $label = this.preprocess_field($field);
|
||||
if ($label)
|
||||
this.process($label, layout);
|
||||
process_field: function($field) {
|
||||
if ($field.parent().is('group')) {
|
||||
// No implicit labels for normal fields, only for <group> direct children
|
||||
var $label = this.preprocess_field($field);
|
||||
if ($label) {
|
||||
this.process($label);
|
||||
}
|
||||
}
|
||||
this.fields_to_init.push($field);
|
||||
return $field;
|
||||
},
|
||||
process_group: function($group, layout) {
|
||||
process_group: function($group) {
|
||||
var self = this;
|
||||
if ($group.parent().is('.oe_form_group_cell')) {
|
||||
$group.parent().addClass('oe_form_group_nested');
|
||||
}
|
||||
$group.children('field').each(function() {
|
||||
self.preprocess_field($(this));
|
||||
});
|
||||
var $new_group = this.render_element('FormRenderingGroup', layout, $group.getAttributes()),
|
||||
$table;
|
||||
if ($new_group.is('table')) {
|
||||
var $new_group = this.render_element('FormRenderingGroup', $group.getAttributes());
|
||||
var $table;
|
||||
if ($new_group.first().is('table.oe_form_group')) {
|
||||
$table = $new_group;
|
||||
} else if ($new_group.filter('table.oe_form_group').length) {
|
||||
$table = $new_group.filter('table.oe_form_group').first();
|
||||
} else {
|
||||
$table = $new_group.find('table:first');
|
||||
$table = $new_group.find('table.oe_form_group').first();
|
||||
}
|
||||
$table.addClass('oe_form_group');
|
||||
|
||||
var $tr, $td,
|
||||
cols = parseInt($group.attr('col') || 4, 10),
|
||||
cols = parseInt($group.attr('col') || 2, 10),
|
||||
row_cols = cols;
|
||||
|
||||
var children = [];
|
||||
|
@ -1089,6 +1089,8 @@ instance.web.form.FormRenderingEngine = instance.web.form.FormRenderingEngineInt
|
|||
var tagName = $child[0].tagName.toLowerCase();
|
||||
var $td = $('<td/>').addClass('oe_form_group_cell').attr('colspan', colspan);
|
||||
var newline = tagName === 'newline';
|
||||
|
||||
// Note FME: those classes are used in layout debug mode
|
||||
if ($tr && row_cols > 0 && (newline || row_cols < colspan)) {
|
||||
$tr.addClass('oe_form_group_row_incomplete');
|
||||
if (newline) {
|
||||
|
@ -1118,7 +1120,6 @@ instance.web.form.FormRenderingEngine = instance.web.form.FormRenderingEngineInt
|
|||
}
|
||||
$group.before($new_group).remove();
|
||||
|
||||
// Now compute width of cells
|
||||
$table.find('> tbody > tr').each(function() {
|
||||
var to_compute = [],
|
||||
row_cols = cols,
|
||||
|
@ -1176,7 +1177,7 @@ instance.web.form.FormRenderingEngine = instance.web.form.FormRenderingEngineInt
|
|||
this.handle_common_properties($new_group, $group);
|
||||
return $new_group;
|
||||
},
|
||||
process_notebook: function($notebook, layout) {
|
||||
process_notebook: function($notebook) {
|
||||
var self = this;
|
||||
var pages = [];
|
||||
$notebook.find('> page').each(function() {
|
||||
|
@ -1184,14 +1185,13 @@ instance.web.form.FormRenderingEngine = instance.web.form.FormRenderingEngineInt
|
|||
var page_attrs = $page.getAttributes();
|
||||
page_attrs.id = _.uniqueId('notebook_page_');
|
||||
pages.push(page_attrs);
|
||||
var $new_page = self.render_element('FormRenderingNotebookPage', layout, page_attrs);
|
||||
var $dst = (layout === 'auto') ? $new_page.find('group:first') : $new_page;
|
||||
$page.children().appendTo($dst);
|
||||
var $new_page = self.render_element('FormRenderingNotebookPage', page_attrs);
|
||||
$page.contents().appendTo($new_page);
|
||||
$page.before($new_page).remove();
|
||||
self.handle_common_properties($new_page, $page);
|
||||
});
|
||||
var $new_notebook = this.render_element('FormRenderingNotebook', layout, { pages : pages });
|
||||
$notebook.children().appendTo($new_notebook);
|
||||
var $new_notebook = this.render_element('FormRenderingNotebook', { pages : pages });
|
||||
$notebook.contents().appendTo($new_notebook);
|
||||
$notebook.before($new_notebook).remove();
|
||||
$new_notebook.children().each(function() {
|
||||
self.process($(this));
|
||||
|
@ -1200,13 +1200,13 @@ instance.web.form.FormRenderingEngine = instance.web.form.FormRenderingEngineInt
|
|||
this.handle_common_properties($new_notebook, $notebook);
|
||||
return $new_notebook;
|
||||
},
|
||||
process_separator: function($separator, layout) {
|
||||
var $new_separator = this.render_element('FormRenderingSeparator', layout, $separator.getAttributes());
|
||||
process_separator: function($separator) {
|
||||
var $new_separator = this.render_element('FormRenderingSeparator', $separator.getAttributes());
|
||||
$separator.before($new_separator).remove();
|
||||
this.handle_common_properties($new_separator, $separator);
|
||||
return $new_separator;
|
||||
},
|
||||
process_label: function($label, layout) {
|
||||
process_label: function($label) {
|
||||
var name = $label.attr("for"),
|
||||
field_orm = this.fvg.fields[name];
|
||||
var dict = {
|
||||
|
@ -1223,7 +1223,7 @@ instance.web.form.FormRenderingEngine = instance.web.form.FormRenderingEngineInt
|
|||
align = 'center';
|
||||
}
|
||||
dict.align = align;
|
||||
var $new_label = this.render_element('FormRenderingLabel', layout, dict);
|
||||
var $new_label = this.render_element('FormRenderingLabel', dict);
|
||||
$label.before($new_label).remove();
|
||||
this.handle_common_properties($new_label, $label);
|
||||
if (name) {
|
||||
|
@ -2036,11 +2036,12 @@ instance.web.DateTimeWidget = instance.web.OldWidget.extend({
|
|||
|
||||
instance.web.DateWidget = instance.web.DateTimeWidget.extend({
|
||||
jqueryui_object: 'datepicker',
|
||||
template: "web.datepicker",
|
||||
type_of_date: "date"
|
||||
});
|
||||
|
||||
instance.web.form.FieldDatetime = instance.web.form.AbstractField.extend(_.extend({}, instance.web.form.ReinitializeFieldMixin, {
|
||||
template: "EmptyComponent",
|
||||
tagName: "span",
|
||||
build_widget: function() {
|
||||
return new instance.web.DateTimeWidget(this);
|
||||
},
|
||||
|
@ -4088,7 +4089,7 @@ instance.web.form.FieldBinaryImage = instance.web.form.FieldBinary.extend({
|
|||
});
|
||||
|
||||
instance.web.form.FieldStatus = instance.web.form.AbstractField.extend({
|
||||
template: "EmptyComponent",
|
||||
tagName: "span",
|
||||
start: function() {
|
||||
this._super();
|
||||
this.selected_value = null;
|
||||
|
|
|
@ -1338,7 +1338,7 @@ instance.web.ListView.Groups = instance.web.Class.extend( /** @lends instance.we
|
|||
} else if (column.id in group.aggregates) {
|
||||
var r = {};
|
||||
r[column.id] = {value: group.aggregates[column.id]};
|
||||
$('<td class="oe-number">')
|
||||
$('<td class="oe_number">')
|
||||
.html(instance.web.format_cell(
|
||||
r, column, {process_modifiers: false}))
|
||||
.appendTo($row);
|
||||
|
|
|
@ -591,7 +591,7 @@
|
|||
t-if="!field.attrs.modifiers.tree_invisible"
|
||||
t-att-data-id="record.id"
|
||||
t-att-style="color_for(record) + style "
|
||||
t-attf-class="#{class} #{rank} #{(fields[field.attrs.name].type === 'float') or (fields[field.attrs.name].type === 'integer') ? 'oe-number' : ''}">
|
||||
t-attf-class="#{class} #{rank} #{(fields[field.attrs.name].type === 'float') or (fields[field.attrs.name].type === 'integer') ? 'oe_number' : ''}">
|
||||
|
||||
<span t-if="!field.attrs.modifiers.invisible" >
|
||||
<t t-esc="render(record[field.attrs.name], fields[field.attrs.name])" />
|
||||
|
@ -634,7 +634,7 @@
|
|||
<tfoot>
|
||||
<tr>
|
||||
<td t-if="options.selectable"/>
|
||||
<td t-foreach="aggregate_columns" t-as="column" class="oe-list-footer oe-number"
|
||||
<td t-foreach="aggregate_columns" t-as="column" class="oe-list-footer oe_number"
|
||||
t-att-data-field="column.id" t-att-title="column.label">
|
||||
</td>
|
||||
<td t-if="options.deletable"/>
|
||||
|
@ -679,7 +679,7 @@
|
|||
<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-att-class="'oe-field-cell' + (align ? ' oe-number' : '')
|
||||
t-att-class="'oe-field-cell' + (align ? ' oe_number' : '')
|
||||
+ (column.tag === 'button' ? ' oe-button' : '')"
|
||||
t-att-data-field="column.id">
|
||||
<t t-raw="render_cell(record, column)"/>
|
||||
|
@ -773,31 +773,19 @@
|
|||
</table>
|
||||
</form>
|
||||
|
||||
<t t-name="FormRenderingForm.manual">
|
||||
<div class="oe_form_manual_layout"/>
|
||||
</t>
|
||||
<t t-name="FormRenderingForm">
|
||||
<div t-attf-class="#{classnames}">
|
||||
</div>
|
||||
</t>
|
||||
<t t-name="FormRenderingSheet">
|
||||
<div class="oe_form_sheetbg">
|
||||
<div t-attf-class="oe_form_sheet oe_form_sheet_width #{classnames}">
|
||||
<group t-if="layout === 'auto'" col="4"/>
|
||||
</div>
|
||||
</div>
|
||||
</t>
|
||||
<t t-name="FormRenderingSheet" t-extend="FormRenderingForm">
|
||||
</t>
|
||||
<t t-name="FormRenderingGroup">
|
||||
<t t-set="table">
|
||||
<table border="0" cellpadding="0" cellspacing="0" width="100%" t-att-class="classnames"/>
|
||||
</t>
|
||||
<t t-if="string">
|
||||
<fieldset class="oe_group_box">
|
||||
<legend><t t-esc="string"/></legend>
|
||||
<t t-raw="table"/>
|
||||
</fieldset>
|
||||
</t>
|
||||
<t t-if="!string">
|
||||
<t t-raw="table"/>
|
||||
</t>
|
||||
<t t-if="string" t-call="FormRenderingSeparator"/>
|
||||
<table border="0" cellpadding="0" cellspacing="0" width="100%" t-attf-class="oe_form_group #{classnames}"/>
|
||||
</t>
|
||||
<t t-name="FormRenderingNotebook">
|
||||
<div>
|
||||
|
@ -812,7 +800,6 @@
|
|||
</t>
|
||||
<t t-name="FormRenderingNotebookPage">
|
||||
<div t-attf-class="oe_form_notebook_page #{classnames}" t-att-id="id">
|
||||
<group t-if="layout === 'auto'" col="4"/>
|
||||
</div>
|
||||
</t>
|
||||
<t t-name="FormRenderingSeparator">
|
||||
|
@ -895,71 +882,44 @@
|
|||
</ul>
|
||||
</t>
|
||||
<t t-name="FieldChar">
|
||||
<t t-if="!widget.get('effective_readonly')">
|
||||
<div class="oe_form_field_char">
|
||||
<span class="oe_form_field_char">
|
||||
<t t-if="!widget.get('effective_readonly')">
|
||||
<input t-att-type="widget.password ? 'password' : 'text'"
|
||||
t-att-id="widget.id_for_label"
|
||||
t-att-tabindex="widget.node.attrs.tabindex"
|
||||
t-att-autofocus="widget.node.attrs.autofocus"
|
||||
t-attf-class="field_char #{widget.is_field_number ? 'oe-number' : ''}"
|
||||
class="field_char"
|
||||
t-att-placeholder="widget.node.attrs.placeholder"
|
||||
/><img class="oe_field_translate oe_input_icon" t-if="widget.field.translate" t-att-src='_s + "/web/static/src/img/icons/terp-translate.png"' width="16" height="16" border="0"/>
|
||||
</div>
|
||||
</t>
|
||||
<t t-if="widget.get('effective_readonly')">
|
||||
<span t-attf-class="oe_form_field_char #{widget.is_field_number ? 'oe-number' : ''}"/>
|
||||
</t>
|
||||
</t>
|
||||
</span>
|
||||
</t>
|
||||
<t t-name="FieldEmail">
|
||||
<t t-if="!widget.get('effective_readonly')">
|
||||
<table class="oe_form_field_email" cellpadding="0" cellspacing="0" border="0">
|
||||
<tr>
|
||||
<td>
|
||||
<span class="oe_form_field_email oe_form_field_with_button">
|
||||
<a t-if="widget.get('effective_readonly')" href="#" class="oe_form_uri"/>
|
||||
<t t-if="!widget.get('effective_readonly')">
|
||||
<button class="oe_button" tabindex="-1" type="button" title="Send an e-mail with your default e-mail client">
|
||||
<img t-att-src='_s + "/web/static/src/img/icons/terp-mail-message-new.png"'/>
|
||||
</button>
|
||||
<div>
|
||||
<input type="text"
|
||||
t-att-id="widget.id_for_label"
|
||||
t-att-tabindex="widget.node.attrs.tabindex"
|
||||
t-att-autofocus="widget.node.attrs.autofocus"
|
||||
t-att-placeholder="widget.node.attrs.placeholder"
|
||||
/>
|
||||
</td>
|
||||
<td width="16">
|
||||
<button class="oe_button oe_field_button" tabindex="-1" type="button" title="Send an e-mail with your default e-mail client">
|
||||
<img t-att-src='_s + "/web/static/src/img/icons/terp-mail-message-new.png"'/>
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</t>
|
||||
<t t-if="widget.get('effective_readonly')">
|
||||
<span>
|
||||
<a href="#" class="oe_form_uri"/>
|
||||
</span>
|
||||
</t>
|
||||
</div>
|
||||
</t>
|
||||
</span>
|
||||
</t>
|
||||
<t t-name="FieldUrl">
|
||||
<t t-if="!widget.get('effective_readonly')">
|
||||
<table class="oe_form_field_url" cellpadding="0" cellspacing="0" border="0">
|
||||
<tr>
|
||||
<td>
|
||||
<input type="text"
|
||||
t-att-id="widget.id_for_label"
|
||||
t-att-tabindex="widget.node.attrs.tabindex"
|
||||
t-att-autofocus="widget.node.attrs.autofocus"
|
||||
t-att-placeholder="widget.node.attrs.placeholder"
|
||||
/>
|
||||
</td>
|
||||
<td width="16">
|
||||
<button class="oe_button oe_field_button" tabindex="-1" type="button" title="Open this resource">
|
||||
<img t-att-src='_s + "/web/static/src/img/icons/gtk-ok.png"'/>
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<t t-name="FieldUrl" t-extend="FieldEmail">
|
||||
<t t-jquery="span:first">
|
||||
this.removeClass('oe_form_field_email').addClass('oe_form_field_url');
|
||||
</t>
|
||||
<t t-if="widget.get('effective_readonly')">
|
||||
<span>
|
||||
<a href="#" class="oe_form_uri"/>
|
||||
</span>
|
||||
<t t-jquery="button.oe_button" t-operation="replace">
|
||||
<button class="oe_button" tabindex="-1" type="button" title="Open this resource">
|
||||
<img t-att-src='_s + "/web/static/src/img/icons/gtk-ok.png"'/>
|
||||
</button>
|
||||
</t>
|
||||
</t>
|
||||
<t t-name="FieldText">
|
||||
|
@ -975,9 +935,9 @@
|
|||
t-att-src='_s + "/web/static/src/img/icons/terp-translate.png"' width="16" height="16" border="0"/>
|
||||
</div>
|
||||
</t>
|
||||
<t t-name="web.datetimepicker">
|
||||
<t t-name="web.datepicker">
|
||||
<t t-set="placeholder" t-value="widget.getParent().node and widget.getParent().node.attrs.placeholder"/>
|
||||
<div class="oe_datepicker_root oe_form_field_datetime">
|
||||
<span class="oe_datepicker_root oe_form_field_date">
|
||||
<input type="text" class="oe_datepicker_container" disabled="disabled" style="display: none;"/>
|
||||
<input type="text"
|
||||
t-att-name="widget.name"
|
||||
|
@ -985,31 +945,41 @@
|
|||
t-attf-class="oe_datepicker_master field_#{widget.type_of_date} oe_form_field_#{widget.type_of_date}"
|
||||
/><img class="oe_input_icon oe_datepicker_trigger" t-att-src='_s + "/web/static/src/img/ui/field_calendar.png"'
|
||||
title="Select date" width="16" height="16" border="0"/>
|
||||
</div>
|
||||
</span>
|
||||
</t>
|
||||
<t t-name="web.datetimepicker">
|
||||
<t t-set="placeholder" t-value="widget.getParent().node and widget.getParent().node.attrs.placeholder"/>
|
||||
<span class="oe_datepicker_root oe_form_field_datetime">
|
||||
<input type="text" class="oe_datepicker_container" disabled="disabled" style="display: none;"/>
|
||||
<input type="text"
|
||||
t-att-name="widget.name"
|
||||
t-att-placeholder="placeholder"
|
||||
t-attf-class="oe_datepicker_master field_#{widget.type_of_date} oe_form_field_#{widget.type_of_date}"
|
||||
/><img class="oe_input_icon oe_datepicker_trigger" t-att-src='_s + "/web/static/src/img/ui/field_calendar.png"'
|
||||
title="Select date" width="16" height="16" border="0"/>
|
||||
</span>
|
||||
</t>
|
||||
<t t-name="FieldSelection">
|
||||
<t t-if="!widget.get('effective_readonly')">
|
||||
<div class="oe_form_field_selection">
|
||||
<select
|
||||
t-att-name="widget.name"
|
||||
t-att-tabindex="widget.node.attrs.tabindex"
|
||||
t-att-autofocus="widget.node.attrs.autofocus"
|
||||
t-att-id="widget.id_for_label">
|
||||
<t t-foreach="widget.values" t-as="option">
|
||||
<option><t t-esc="option[1]"/></option>
|
||||
</t>
|
||||
</select>
|
||||
</div>
|
||||
</t>
|
||||
<t t-if="widget.get('effective_readonly')">
|
||||
<span class="field_selection"/>
|
||||
</t>
|
||||
<span class="oe_form_field_selection">
|
||||
<select t-if="!widget.get('effective_readonly')"
|
||||
t-att-name="widget.name"
|
||||
t-att-tabindex="widget.node.attrs.tabindex"
|
||||
t-att-autofocus="widget.node.attrs.autofocus"
|
||||
t-att-id="widget.id_for_label">
|
||||
<t t-foreach="widget.values" t-as="option">
|
||||
<option><t t-esc="option[1]"/></option>
|
||||
</t>
|
||||
</select>
|
||||
</span>
|
||||
</t>
|
||||
<t t-name="FieldMany2One">
|
||||
<t t-if="!widget.get('effective_readonly')">
|
||||
<table class="oe_form_field_many2one" cellpadding="0" cellspacing="0" border="0">
|
||||
<tr>
|
||||
<td valign="top">
|
||||
<span class="oe_form_field_many2one oe_form_field_with_button">
|
||||
<a t-if="widget.get('effective_readonly')" href="#" class="oe_form_uri"/>
|
||||
<t t-if="!widget.get('effective_readonly')">
|
||||
<button class="oe_button oe-m2o-cm-button" title="Open Resource">
|
||||
<img t-att-src='_s + "/web/static/src/img/icons/terp-folder-yellow.png"'/>
|
||||
</button>
|
||||
<div>
|
||||
<input type="text"
|
||||
t-att-id="widget.id_for_label"
|
||||
t-att-tabindex="widget.node.attrs.tabindex"
|
||||
|
@ -1017,21 +987,11 @@
|
|||
t-att-placeholder="widget.node.attrs.placeholder"
|
||||
/>
|
||||
<span class="oe-m2o-drop-down-button">
|
||||
<img t-att-src='_s + "/web/static/src/img/down-arrow.png"' /></span>
|
||||
</td>
|
||||
<td width="16">
|
||||
<button class="oe_button oe_field_button oe-m2o-cm-button" title="Open Resource">
|
||||
<img t-att-src='_s + "/web/static/src/img/icons/terp-folder-yellow.png"'/>
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</t>
|
||||
<t t-if="widget.get('effective_readonly')">
|
||||
<span>
|
||||
<a href="#" class="oe_form_uri"/>
|
||||
</span>
|
||||
</t>
|
||||
<img t-att-src='_s + "/web/static/src/img/down-arrow.png"'/>
|
||||
</span>
|
||||
</div>
|
||||
</t>
|
||||
</span>
|
||||
</t>
|
||||
<t t-name="FieldMany2ManyTags">
|
||||
<div class="oe_form_field_many2manytags">
|
||||
|
@ -1070,9 +1030,9 @@
|
|||
</span>
|
||||
</t>
|
||||
<t t-name="FieldProgressBar">
|
||||
<div class="oe_form_field_progressbar" t-opentag="true">
|
||||
<span class="oe_form_field_progressbar" t-opentag="true">
|
||||
<span></span>
|
||||
</div>
|
||||
</span>
|
||||
</t>
|
||||
<t t-name="FieldStatus.content">
|
||||
<ul class="oe_form_steps">
|
||||
|
@ -1086,49 +1046,33 @@
|
|||
</ul>
|
||||
</t>
|
||||
<t t-name="FieldBinaryImage">
|
||||
<table cellpadding="0" cellspacing="0" border="0" width="100%">
|
||||
<tr>
|
||||
<td class="oe_form_field-binary-image-placeholder" align="center">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center" valign="bottom" height="25">
|
||||
<div class="oe-binary">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td>
|
||||
<div class="oe-binary-file-set">
|
||||
<form class="oe-binary-form" t-att-target="widget.iframe"
|
||||
method="post" enctype="multipart/form-data" action="/web/binary/upload">
|
||||
<input type="hidden" name="session_id" value=""/>
|
||||
<input type="hidden" name="callback" t-att-value="widget.iframe"/>
|
||||
<button class="oe_button" type="button" title="Set Image">
|
||||
<img t-att-src='_s + "/web/static/src/img/icons/STOCK_DIRECTORY.png"'/>
|
||||
</button>
|
||||
<input type="file" class="oe-binary-file" name="ufile"
|
||||
t-att-tabindex="widget.node.attrs.tabindex"
|
||||
t-att-autofocus="widget.node.attrs.autofocus"
|
||||
/>
|
||||
</form>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<button class="oe_button oe-binary-file-clear" type="button" title="Clear">
|
||||
<img t-att-src='_s + "/web/static/src/img/icons/STOCK_MISSING_IMAGE.png"'/>
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<span class="oe_binary_image">
|
||||
<div class="oe_form_field-binary-image-placeholder"></div>
|
||||
<div class="oe-binary">
|
||||
<div class="oe-binary-file-set">
|
||||
<form class="oe-binary-form" t-att-target="widget.iframe"
|
||||
method="post" enctype="multipart/form-data" action="/web/binary/upload">
|
||||
<input type="hidden" name="session_id" value=""/>
|
||||
<input type="hidden" name="callback" t-att-value="widget.iframe"/>
|
||||
<button class="oe_button" type="button" title="Set Image">
|
||||
<img t-att-src='_s + "/web/static/src/img/icons/STOCK_DIRECTORY.png"'/>
|
||||
</button>
|
||||
<input type="file" class="oe-binary-file" name="ufile"
|
||||
t-att-tabindex="widget.node.attrs.tabindex"
|
||||
t-att-autofocus="widget.node.attrs.autofocus"
|
||||
/>
|
||||
</form>
|
||||
</div>
|
||||
<div class="oe-binary-progress" style="display: none">
|
||||
<img t-att-src='_s + "/web/static/src/img/throbber.gif"' width="16" height="16"/>
|
||||
<b>Uploading ...</b>
|
||||
</div>
|
||||
<iframe t-att-id="widget.iframe" t-att-name="widget.iframe" style="display: none"/>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<button class="oe_button oe-binary-file-clear" type="button" title="Clear">
|
||||
<img t-att-src='_s + "/web/static/src/img/icons/STOCK_MISSING_IMAGE.png"'/>
|
||||
</button>
|
||||
</div>
|
||||
<div class="oe-binary-progress" style="display: none">
|
||||
<img t-att-src='_s + "/web/static/src/img/throbber.gif"' width="16" height="16"/>
|
||||
<b>Uploading ...</b>
|
||||
</div>
|
||||
<iframe t-att-id="widget.iframe" t-att-name="widget.iframe" style="display: none"/>
|
||||
</span>
|
||||
</t>
|
||||
<t t-name="FieldBinaryImage-img">
|
||||
<img t-att-src='url' class="oe-binary-image field_image"
|
||||
|
|
Loading…
Reference in New Issue