diff options
| author | Bhumi Thakkar (Open ERP) <bth@tinyerp.com> | 2011-10-07 17:52:46 +0530 |
|---|---|---|
| committer | Bhumi Thakkar (Open ERP) <bth@tinyerp.com> | 2011-10-07 17:52:46 +0530 |
| commit | d22c121a107ca9938f63cc9ed58cc2da5effad33 (patch) | |
| tree | cc56b488d27c00032b10bd62313b4cdee5037ee1 /addons/web_mobile/static/src | |
| parent | 2adffb46e5952945f2b22197afab65b00b5d38cb (diff) | |
[IMP]Fields attributes & format according to fields in formview.
bzr revid: bth@tinyerp.com-20111007122246-67cavlpebuldrmk6
Diffstat (limited to 'addons/web_mobile/static/src')
| -rw-r--r-- | addons/web_mobile/static/src/js/form_mobile.js | 76 | ||||
| -rwxr-xr-x | addons/web_mobile/static/src/web_mobile.html | 16 | ||||
| -rw-r--r-- | addons/web_mobile/static/src/xml/web_mobile.xml | 16 |
3 files changed, 96 insertions, 12 deletions
diff --git a/addons/web_mobile/static/src/js/form_mobile.js b/addons/web_mobile/static/src/js/form_mobile.js index 69182a92f65..96694f1f784 100644 --- a/addons/web_mobile/static/src/js/form_mobile.js +++ b/addons/web_mobile/static/src/js/form_mobile.js @@ -48,6 +48,24 @@ openerp.web_mobile.FormView = openerp.web.Widget.extend({ } self.$element.html(self.render({'get_fields': get_fields, 'notebooks': notebooks || false, 'fields' : fields, 'values' : self.datarecord ,'temp_flag':'1'})); for(var i=0;i<get_fields.length;i++) { + self.$element.find('input').each(function(){ + if($(this).attr('id')==get_fields[i].attrs.name){ + if(fields[get_fields[i].attrs.name].type=="date"){ + $("#"+get_fields[i].attrs.name).datepicker(); + $("#"+get_fields[i].attrs.name).attr('disabled','true'); + var dateresult = openerp.web.format_value(self.datarecord[get_fields[i].attrs.name], {"widget": result.fields[get_fields[i].attrs.name].type}); + $(this).val(dateresult); + } + else if(fields[get_fields[i].attrs.name].type=="datetime"){ + $("#"+get_fields[i].attrs.name).datetimepicker(); + $("#"+get_fields[i].attrs.name).attr('disabled','true'); + var dateresult = openerp.web.format_value(self.datarecord[get_fields[i].attrs.name], {"widget": result.fields[get_fields[i].attrs.name].type}); + $(this).val(dateresult); + } + } + $(this).attr('readonly','true'); + + }); if (get_fields[i].attrs.widget=="progressbar") { $("#progress").progressbar({value:self.datarecord[get_fields[i].attrs.name]}) } @@ -106,6 +124,38 @@ openerp.web_mobile.FormView = openerp.web.Widget.extend({ }else{ $(this).find('div#page_content').html(self.render({'get_fields': get_fields,'fields' : result.fields, 'values' : self.datarecord})); } + for(var i=0;i<get_fields.length;i++) { + self.$element.find('input').each(function(){ + if($(this).attr('id')==get_fields[i].attrs.name){ + if(fields[get_fields[i].attrs.name].type=="date"){ + $("#"+get_fields[i].attrs.name).datepicker(); + $(this).attr('disabled','true'); + var dateresult = openerp.web.format_value(self.datarecord[get_fields[i].attrs.name], {"widget": result.fields[get_fields[i].attrs.name].type}); + $(this).val(dateresult); + } + else if(fields[get_fields[i].attrs.name].type=="datetime"){ + $("#"+get_fields[i].attrs.name).datetimepicker(); + $("#"+get_fields[i].attrs.name).attr('disabled','true'); + var dateresult = openerp.web.format_value(self.datarecord[get_fields[i].attrs.name], {"widget": result.fields[get_fields[i].attrs.name].type}); + $(this).val(dateresult); + } + } + $(this).attr('readonly','true'); + + }); + } + $(this).find('div#page_content').find('select').each(function(){ + $(this).find('option').attr('disabled','true'); + if($(this).attr('id')=="slider"){ + $(this).attr('disable','true'); + } + }); + $(this).find('div#page_content').find('input').each(function(){ + $(this).attr('readonly','true') + }); + $(this).find('div#page_content').find('textarea').each(function(){ + $(this).attr('readonly','true') + }); $(this).find('div#page_content').find('#formbutton').click(function(){ var head = $(this).prev().find('select').find("option:selected").text(); var selected_id = $(this).prev().find('select').val(); @@ -231,7 +281,19 @@ openerp.web_mobile.FormView = openerp.web.Widget.extend({ } } }); - $.mobile.changePage('#oe_form_'+listid+result.fields[relational].relation, "slide", false, true); + $('[id^="oe_form_'+listid+result.fields[relational].relation+'"]').find('select').each(function(){ + $(this).find('option').attr('disabled','true'); + if($(this).attr('id')=="slider"){ + $(this).attr('disable','true'); + } + }); + $('[id^="oe_form_'+listid+result.fields[relational].relation+'"]').find('input').each(function(){ + $(this).attr('readonly','true') + }); + $('[id^="oe_form_'+listid+result.fields[relational].relation+'"]').find('textarea').each(function(){ + $(this).attr('readonly','true') + }); + $.mobile.changePage('#oe_form_'+listid+result.fields[relational].relation, "slide", false, true); }else{ $.mobile.changePage('#oe_form_'+listid+result.fields[relational].relation, "slide", false, true); } @@ -244,6 +306,18 @@ openerp.web_mobile.FormView = openerp.web.Widget.extend({ }); } }); + self.$element.find('select').each(function(){ + $(this).find('option').attr('disabled','true') + if($(this).attr('id')=="slider"){ + $(this).attr('disable','true'); + } + }); + self.$element.find('input').each(function(){ + $(this).attr('readonly','true') + }); + self.$element.find('textarea').each(function(){ + $(this).attr('readonly','true') + }); $.mobile.changePage("#"+self.element_id, "slide", false, true); }, get_fields: function(view_fields, fields) { diff --git a/addons/web_mobile/static/src/web_mobile.html b/addons/web_mobile/static/src/web_mobile.html index 3900b8ba0cc..8c5634a888d 100755 --- a/addons/web_mobile/static/src/web_mobile.html +++ b/addons/web_mobile/static/src/web_mobile.html @@ -4,7 +4,8 @@ <meta charset="utf-8" />
<title>OpenERP Web Mobile</title>
- <link rel="stylesheet" href="/web_mobile/static/lib/jquery_mobile/css/jquery-ui-1.8.9.custom.css"/>
+ <!-- <link rel="stylesheet" href="/web_mobile/static/lib/jquery_mobile/css/jquery-ui-1.8.9.custom.css"/>--> + <link rel="stylesheet" href="/web/static/lib/jquery.ui/css/smoothness/jquery-ui-1.8.9.custom.css"/>
<link rel="stylesheet" href="/web_mobile/static/lib/jquery_mobile/css/jquery.mobile-1.0a4.1.css"/>
<link rel="stylesheet" href="/web_mobile/static/src/css/web_mobile.css"/>
@@ -13,14 +14,23 @@ <script type="text/javascript" src="/web/static/lib/jquery.ba-bbq/jquery.ba-bbq.js"></script>
<script type="text/javascript" src="/web/static/lib/underscore/underscore.js"></script>
<script type="text/javascript" src="/web/static/lib/underscore/underscore.string.js"></script>
- <script type="text/javascript" src="/web_mobile/static/lib/jquery_mobile/js/jquery.mobile-1.0a4.1.js"></script>
+ <script type="text/javascript" src="/web_mobile/static/lib/jquery_mobile/js/jquery.mobile-1.0a4.1.js"></script> + + <script type="text/javascript" src="/web/static/lib/datejs/globalization/en-US.js"></script> + <script type="text/javascript" src="/web/static/lib/datejs/core.js"></script> + <script type="text/javascript" src="/web/static/lib/datejs/extras.js"></script> + <script type="text/javascript" src="/web/static/lib/datejs/parser.js"></script> + <script type="text/javascript" src="/web/static/lib/datejs/sugarpak.js"></script> + <script type="text/javascript" src="/web/static/lib/datejs/time.js"></script> + <script type="text/javascript" src="/web/static/lib/jquery.ui/js/jquery-ui-timepicker-addon.js"></script>
<script type="text/javascript" src="/web/static/lib/qweb/qweb2.js"></script>
<script type="text/javascript" src="/web/static/src/js/boot.js"></script>
<script type="text/javascript" src="/web/static/src/js/core.js"></script>
<script type="text/javascript" src="/web/static/src/js/chrome.js"></script>
<script type="text/javascript" src="/web/static/src/js/data.js"></script>
- <script type="text/javascript" src="/web/static/src/js/formats.js"></script>
+ <script type="text/javascript" src="/web/static/src/js/formats.js"></script> ++ <script type="text/javascript" src="/web/static/src/js/dates.js"></script>
<script type="text/javascript" src="/web_mobile/static/src/js/web_mobile.js"></script>
<script type="text/javascript" src="/web_mobile/static/src/js/chrome_mobile.js"></script>
diff --git a/addons/web_mobile/static/src/xml/web_mobile.xml b/addons/web_mobile/static/src/xml/web_mobile.xml index e4468fdeb15..1e9f2a93251 100644 --- a/addons/web_mobile/static/src/xml/web_mobile.xml +++ b/addons/web_mobile/static/src/xml/web_mobile.xml @@ -195,27 +195,27 @@ </t> </t> <t t-if="fields[field.attrs.name].type == 'date'"> - <label for=""> + <label t-att-for="field.attrs.name"> <t t-if="!(field.attrs.string)" t-esc="fields[field.attrs.name].string"></t> <t t-if="field.attrs.string" t-esc="field.attrs.string"></t>: </label> <t t-if="values[field.attrs.name]"> - <input id="" type="text" t-att-value="values[field.attrs.name]"/> + <input t-att-id="field.attrs.name" type="text" data-role="datebox" t-att-value="values[field.attrs.name]"/> </t> <t t-if="!(values[field.attrs.name])"> - <input id="" type="text" value=""/> + <input t-att-id="field.attrs.name" type="text" value=""/> </t> </t> <t t-if="fields[field.attrs.name].type == 'datetime'"> - <label for=""> + <label t-att-for="field.attrs.name"> <t t-if="!(field.attrs.string)" t-esc="fields[field.attrs.name].string"></t> <t t-if="field.attrs.string" t-esc="field.attrs.string"></t>: </label> <t t-if="values[field.attrs.name]"> - <input id="" type="text" t-att-value="values[field.attrs.name]"/> + <input t-att-id="field.attrs.name" type="text" t-att-value="values[field.attrs.name]"/> </t> <t t-if="!(values[field.attrs.name])"> - <input id="" type="text" value=""/> + <input t-att-id="field.attrs.name" type="text" value=""/> </t> </t> <t t-if="fields[field.attrs.name].type == 'boolean'"> @@ -234,11 +234,11 @@ </div> </t> <t t-if="fields[field.attrs.name].type == 'selection'"> - <label for="" class="select"> + <label t-att-for="field.attrs.name" class="select"> <t t-if="!(field.attrs.string)" t-esc="fields[field.attrs.name].string"></t> <t t-if="field.attrs.string" t-esc="field.attrs.string"></t>: </label> - <select id="" data-native-menu="false"> + <select t-att-id="field.attrs.name" data-native-menu="false"> <t t-foreach="fields[field.attrs.name].selection" t-as="opt"> <option t-att-value="opt[0]"><t t-esc="opt[1]"/></option> </t> |
