[MERGE] Merged with web/trunk.
bzr revid: tde@openerp.com-20120720143542-i30g07waybug8cts
This commit is contained in:
commit
5729e9c663
|
@ -28,6 +28,7 @@ import werkzeug.wsgi
|
|||
from . import nonliterals
|
||||
from . import session
|
||||
from . import openerplib
|
||||
import urlparse
|
||||
|
||||
__all__ = ['Root', 'jsonrequest', 'httprequest', 'Controller',
|
||||
'WebRequest', 'JsonRequest', 'HttpRequest']
|
||||
|
@ -422,7 +423,9 @@ class DisableCacheMiddleware(object):
|
|||
self.app = app
|
||||
def __call__(self, environ, start_response):
|
||||
def start_wrapped(status, headers):
|
||||
debug = environ.get('HTTP_REFERER', '').find('debug') != -1
|
||||
referer = environ.get('HTTP_REFERER', '')
|
||||
parsed = urlparse.urlparse(referer)
|
||||
debug = not urlparse.parse_qs(parsed.query).has_key('debug')
|
||||
filtered_headers = [(k,v) for k,v in headers if not (k=='Last-Modified' or (debug and k=='Cache-Control'))]
|
||||
if debug:
|
||||
filtered_headers.append(('Cache-Control', 'no-cache'))
|
||||
|
|
|
@ -80,7 +80,7 @@ instance.web.FormView = instance.web.View.extend(instance.web.form.FieldManagerM
|
|||
this.reload_mutex = new $.Mutex();
|
||||
this.__clicked_inside = false;
|
||||
this.__blur_timeout = null;
|
||||
this.rendering_engine = new instance.web.form.FormRenderingEngineReadonly(this);
|
||||
this.rendering_engine = new instance.web.form.FormRenderingEngine(this);
|
||||
this.qweb = null; // A QWeb instance will be created if the view is a QWeb template
|
||||
},
|
||||
destroy: function() {
|
||||
|
@ -680,7 +680,7 @@ instance.web.FormView = instance.web.View.extend(instance.web.form.FieldManagerM
|
|||
if (!first_invalid_field) {
|
||||
first_invalid_field = f;
|
||||
}
|
||||
} else if (f.name !== 'id' && !f.get("readonly") && (!self.datarecord.id || f._dirty_flag)) {
|
||||
} else if (f.name !== 'id' && (!self.datarecord.id || (!f.get("readonly") && f._dirty_flag))) {
|
||||
// Special case 'id' field, do not save this field
|
||||
// on 'create' : save all non readonly fields
|
||||
// on 'edit' : save non readonly modified fields
|
||||
|
@ -1347,12 +1347,6 @@ instance.web.form.FormRenderingEngine = instance.web.form.FormRenderingEngineInt
|
|||
},
|
||||
});
|
||||
|
||||
instance.web.form.FormRenderingEngineReadonly = instance.web.form.FormRenderingEngine.extend({
|
||||
alter_field: function(field) {
|
||||
field.set({"force_readonly": true});
|
||||
},
|
||||
});
|
||||
|
||||
instance.web.form.FormDialog = instance.web.Dialog.extend({
|
||||
init: function(parent, options, view_id, dataset) {
|
||||
this._super(parent, options);
|
||||
|
@ -1813,6 +1807,7 @@ instance.web.form.AbstractField = instance.web.form.FormWidget.extend(instance.w
|
|||
// some events to make the property "effective_readonly" sync automatically with "readonly" and
|
||||
// "force_readonly"
|
||||
this.set({"readonly": this.modifiers['readonly'] === true});
|
||||
this.set({"force_readonly": false});
|
||||
var test_effective_readonly = function() {
|
||||
this.set({"effective_readonly": this.get("readonly") || !!this.get("force_readonly")});
|
||||
};
|
||||
|
@ -2815,7 +2810,7 @@ instance.web.form.FieldMany2One = instance.web.form.AbstractField.extend(instanc
|
|||
});
|
||||
return false;
|
||||
});
|
||||
$(".oe_form_m2o_follow").html(follow);
|
||||
$(".oe_form_m2o_follow", this.$element).html(follow);
|
||||
}
|
||||
},
|
||||
set_value: function(value_) {
|
||||
|
@ -3925,14 +3920,16 @@ instance.web.form.AbstractFormPopup = instance.web.OldWidget.extend({
|
|||
display_popup: function() {
|
||||
var self = this;
|
||||
this.renderElement();
|
||||
new instance.web.Dialog(this, {
|
||||
var dialog = new instance.web.Dialog(this, {
|
||||
min_width: '800px',
|
||||
dialogClass: 'oe_act_window',
|
||||
dialogClass: 'oe_act_window',
|
||||
close: function() {
|
||||
self.check_exit(true);
|
||||
},
|
||||
title: this.options.title || "",
|
||||
buttons: [{text:"tmp"}],
|
||||
}, this.$element).open();
|
||||
this.$buttonpane = dialog.$element.dialog("widget").find(".ui-dialog-buttonpane").html("");
|
||||
this.start();
|
||||
},
|
||||
on_write_completed: function() {},
|
||||
|
@ -3948,16 +3945,18 @@ instance.web.form.AbstractFormPopup = instance.web.OldWidget.extend({
|
|||
if (this.row_id !== null) {
|
||||
options.initial_mode = this.options.readonly ? "view" : "edit";
|
||||
}
|
||||
_.extend(options, {
|
||||
$buttons: this.$buttonpane,
|
||||
});
|
||||
this.view_form = new instance.web.FormView(this, this.dataset, false, options);
|
||||
if (this.options.alternative_form_view) {
|
||||
this.view_form.set_embedded_view(this.options.alternative_form_view);
|
||||
}
|
||||
this.view_form.appendTo(this.$element.find(".oe_popup_form"));
|
||||
this.view_form.on_loaded.add_last(function() {
|
||||
var $buttons = self.view_form.$element.find(".oe_form_buttons");
|
||||
var multi_select = self.row_id === null && ! self.options.disable_multiple_selection;
|
||||
$buttons.html(QWeb.render("AbstractFormPopup.buttons", {multi_select: multi_select}));
|
||||
var $snbutton = $buttons.find(".oe_abstractformpopup-form-save-new");
|
||||
self.$buttonpane.html(QWeb.render("AbstractFormPopup.buttons", {multi_select: multi_select}));
|
||||
var $snbutton = self.$buttonpane.find(".oe_abstractformpopup-form-save-new");
|
||||
$snbutton.click(function() {
|
||||
$.when(self.view_form.do_save()).then(function() {
|
||||
self.view_form.reload_mutex.exec(function() {
|
||||
|
@ -3965,7 +3964,7 @@ instance.web.form.AbstractFormPopup = instance.web.OldWidget.extend({
|
|||
});
|
||||
});
|
||||
});
|
||||
var $sbutton = $buttons.find(".oe_abstractformpopup-form-save");
|
||||
var $sbutton = self.$buttonpane.find(".oe_abstractformpopup-form-save");
|
||||
$sbutton.click(function() {
|
||||
$.when(self.view_form.do_save()).then(function() {
|
||||
self.view_form.reload_mutex.exec(function() {
|
||||
|
@ -3973,7 +3972,7 @@ instance.web.form.AbstractFormPopup = instance.web.OldWidget.extend({
|
|||
});
|
||||
});
|
||||
});
|
||||
var $cbutton = $buttons.find(".oe_abstractformpopup-form-close");
|
||||
var $cbutton = self.$buttonpane.find(".oe_abstractformpopup-form-close");
|
||||
$cbutton.click(function() {
|
||||
self.check_exit();
|
||||
});
|
||||
|
@ -4082,6 +4081,7 @@ instance.web.form.SelectCreatePopup = instance.web.form.AbstractFormPopup.extend
|
|||
'selectable': !self.options.disable_multiple_selection,
|
||||
'read_only': true,
|
||||
'import_enabled': false,
|
||||
'$buttons': self.$buttonpane,
|
||||
}, self.options.list_view_options || {}));
|
||||
self.view_list.popup = self;
|
||||
self.view_list.appendTo($(".oe_popup_list", self.$element)).pipe(function() {
|
||||
|
@ -4090,16 +4090,12 @@ instance.web.form.SelectCreatePopup = instance.web.form.AbstractFormPopup.extend
|
|||
self.searchview.do_search();
|
||||
});
|
||||
self.view_list.on_loaded.add_last(function() {
|
||||
var $buttons = self.view_list.$element.find(".oe-actions");
|
||||
$buttons.prepend(QWeb.render("SelectCreatePopup.search.buttons"));
|
||||
var $cbutton = $buttons.find(".oe_selectcreatepopup-search-close");
|
||||
self.$buttonpane.html(QWeb.render("SelectCreatePopup.search.buttons", {widget:self}));
|
||||
var $cbutton = self.$buttonpane.find(".oe_selectcreatepopup-search-close");
|
||||
$cbutton.click(function() {
|
||||
self.destroy();
|
||||
});
|
||||
var $sbutton = $buttons.find(".oe_selectcreatepopup-search-select");
|
||||
if(self.options.disable_multiple_selection) {
|
||||
$sbutton.hide();
|
||||
}
|
||||
var $sbutton = self.$buttonpane.find(".oe_selectcreatepopup-search-select");
|
||||
$sbutton.click(function() {
|
||||
self.on_select_elements(self.selected_ids);
|
||||
self.destroy();
|
||||
|
|
|
@ -1468,8 +1468,11 @@
|
|||
</div>
|
||||
</t>
|
||||
<t t-name="SelectCreatePopup.search.buttons">
|
||||
<button type="button" class="oe_button oe_selectcreatepopup-search-select" disabled="disabled">Select</button>
|
||||
<button type="button" class="oe_button oe_selectcreatepopup-search-close">Cancel</button>
|
||||
<t t-if="! widget.options.disable_multiple_selection">
|
||||
<button type="button" class="oe_button oe_selectcreatepopup-search-select" disabled="disabled">Select</button>
|
||||
or
|
||||
</t>
|
||||
<a class="oe_button oe_selectcreatepopup-search-close oe_bold oe_form_button_cancel" href="javascript:void(0)">Cancel</a>
|
||||
</t>
|
||||
<t t-name="AbstractFormPopup.buttons">
|
||||
<t t-if="! multi_select">
|
||||
|
@ -1479,7 +1482,7 @@
|
|||
<button type="button" class="oe_button oe_abstractformpopup-form-save-new oe_highlight">Save & New</button>
|
||||
<button type="button" class="oe_button oe_abstractformpopup-form-save oe_highlight">Save & Close</button>
|
||||
</t>
|
||||
<button type="button" class="oe_button oe_abstractformpopup-form-close">Cancel</button>
|
||||
or <a class="oe_button oe_abstractformpopup-form-close oe_bold oe_form_button_cancel" href="javascript:void(0)">Cancel</a>
|
||||
</t>
|
||||
<t t-extend="ListView.row">
|
||||
<!-- adds back padding to row being rendered after edition, if necessary
|
||||
|
|
Loading…
Reference in New Issue