[merge] put the web client in a div
bzr revid: nicolas.vanhoren@openerp.com-20120217134701-7t3iklv6ndv30hln
This commit is contained in:
@@ -103,11 +103,12 @@ html_template = """<!DOCTYPE html>
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
var s = new openerp.init(%(modules)s);
|
||||
%(init)s
|
||||
var wc = new s.web.WebClient();
|
||||
wc.appendTo($(document.body));
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
<body class="openerp" id="oe"></body>
|
||||
<body></body>
|
||||
</html>
|
||||
"""
|
||||
|
||||
@@ -270,7 +271,6 @@ class WebClient(openerpweb.Controller):
|
||||
'js': js,
|
||||
'css': css,
|
||||
'modules': simplejson.dumps(self.server_wide_modules(req)),
|
||||
'init': 'new s.web.WebClient().start();',
|
||||
}
|
||||
return r
|
||||
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
body.openerp {
|
||||
body {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
overflow-y: scroll;
|
||||
height: 100%;
|
||||
}
|
||||
.openerp {
|
||||
padding: 0;
|
||||
|
||||
@@ -45,6 +45,12 @@ openerp.web.Notification = openerp.web.OldWidget.extend(/** @lends openerp.web.
|
||||
|
||||
});
|
||||
|
||||
openerp.web.dialog = function(element) {
|
||||
var result = element.dialog.apply(element, _.rest(_.toArray(arguments)));
|
||||
result.dialog("widget").addClass("openerp");
|
||||
return result;
|
||||
}
|
||||
|
||||
openerp.web.Dialog = openerp.web.OldWidget.extend(/** @lends openerp.web.Dialog# */{
|
||||
dialog_title: "",
|
||||
/**
|
||||
@@ -86,7 +92,7 @@ openerp.web.Dialog = openerp.web.OldWidget.extend(/** @lends openerp.web.Dialog#
|
||||
if (this.dialog_options.autoOpen) {
|
||||
this.open();
|
||||
} else {
|
||||
this.$element.dialog(this.get_options());
|
||||
openerp.web.dialog(this.$element, this.get_options());
|
||||
}
|
||||
},
|
||||
get_options: function(options) {
|
||||
@@ -125,7 +131,7 @@ openerp.web.Dialog = openerp.web.OldWidget.extend(/** @lends openerp.web.Dialog#
|
||||
this.$element.html(this.render());
|
||||
}
|
||||
var o = this.get_options(options);
|
||||
this.$element.dialog(o).dialog('open');
|
||||
openerp.web.dialog(this.$element, o).dialog('open');
|
||||
if (o.height === 'auto' && o.max_height) {
|
||||
this.$element.css({ 'max-height': o.max_height, 'overflow-y': 'auto' });
|
||||
}
|
||||
@@ -166,7 +172,7 @@ openerp.web.CrashManager = openerp.web.CallbackEnabled.extend({
|
||||
}
|
||||
},
|
||||
on_managed_error: function(error) {
|
||||
$('<div>' + QWeb.render('CrashManagerWarning', {error: error}) + '</div>').dialog({
|
||||
openerp.web.dialog($('<div>' + QWeb.render('CrashManagerWarning', {error: error}) + '</div>'), {
|
||||
title: "OpenERP " + _.str.capitalize(error.type),
|
||||
buttons: [
|
||||
{text: _t("Ok"), click: function() { $(this).dialog("close"); }}
|
||||
@@ -407,7 +413,7 @@ openerp.web.Database = openerp.web.OldWidget.extend(/** @lends openerp.web.Datab
|
||||
* @param {String} error.error message of the error dialog
|
||||
*/
|
||||
display_error: function (error) {
|
||||
return $('<div>').dialog({
|
||||
return openerp.web.dialog($('<div>'), {
|
||||
modal: true,
|
||||
title: error.title,
|
||||
buttons: [
|
||||
@@ -704,7 +710,7 @@ openerp.web.Header = openerp.web.OldWidget.extend(/** @lends openerp.web.Header
|
||||
window.location = $.param.querystring(
|
||||
window.location.href, 'debug');
|
||||
});
|
||||
$help.dialog({autoOpen: true,
|
||||
openerp.web.dialog($help, {autoOpen: true,
|
||||
modal: true, width: 960, title: _t("About")});
|
||||
});
|
||||
},
|
||||
@@ -828,7 +834,7 @@ openerp.web.Header = openerp.web.OldWidget.extend(/** @lends openerp.web.Header
|
||||
});
|
||||
},
|
||||
display_error: function (error) {
|
||||
return $('<div>').dialog({
|
||||
return openerp.web.dialog($('<div>'), {
|
||||
modal: true,
|
||||
title: error.title,
|
||||
buttons: [
|
||||
@@ -1073,9 +1079,11 @@ openerp.web.WebClient = openerp.web.OldWidget.extend(/** @lends openerp.web.WebC
|
||||
|
||||
this._current_state = null;
|
||||
},
|
||||
render_element: function() {
|
||||
this.$element.addClass("openerp");
|
||||
},
|
||||
start: function() {
|
||||
var self = this;
|
||||
this.$element = $(document.body);
|
||||
if (jQuery.param != undefined && jQuery.deparam(jQuery.param.querystring()).kitten != undefined) {
|
||||
this.$element.addClass("kitten-mode-activated");
|
||||
this.$element.delegate('img.oe-record-edit-link-img', 'hover', function(e) {
|
||||
|
||||
@@ -151,7 +151,7 @@ openerp.web.DataImport = openerp.web.Dialog.extend({
|
||||
});
|
||||
},
|
||||
toggle_import_button: function (newstate) {
|
||||
this.$element.dialog('widget')
|
||||
openerp.web.dialog(this.$element, 'widget')
|
||||
.find('.oe-dialog-import-button')
|
||||
.button('option', 'disabled', !newstate);
|
||||
},
|
||||
|
||||
@@ -232,7 +232,7 @@ openerp.web.SearchView = openerp.web.OldWidget.extend(/** @lends openerp.web.Sea
|
||||
context.add({"group_by": groupbys});
|
||||
var dial_html = QWeb.render("SearchView.managed-filters.add");
|
||||
var $dial = $(dial_html);
|
||||
$dial.dialog({
|
||||
openerp.web.dialog($dial, {
|
||||
modal: true,
|
||||
title: _t("Filter Entry"),
|
||||
buttons: [
|
||||
@@ -281,7 +281,7 @@ openerp.web.SearchView = openerp.web.OldWidget.extend(/** @lends openerp.web.Sea
|
||||
selected_menu_id : menu.$element.find('a.active').data('menu')
|
||||
}));
|
||||
$dialog.find('input').val(this.fields_view.name);
|
||||
$dialog.dialog({
|
||||
openerp.web.dialog($dialog, {
|
||||
modal: true,
|
||||
title: _t("Add to Dashboard"),
|
||||
buttons: [
|
||||
|
||||
@@ -422,7 +422,7 @@ openerp.web.FormView = openerp.web.View.extend( /** @lends openerp.web.FormView#
|
||||
this.on_form_changed();
|
||||
}
|
||||
if (!_.isEmpty(result.warning)) {
|
||||
$(QWeb.render("CrashManagerWarning", result.warning)).dialog({
|
||||
openerp.web.dialog($(QWeb.render("CrashManagerWarning", result.warning)), {
|
||||
modal: true,
|
||||
buttons: [
|
||||
{text: _t("Ok"), click: function() { $(this).dialog("close"); }}
|
||||
@@ -1249,7 +1249,7 @@ openerp.web.form.WidgetButton = openerp.web.form.Widget.extend({
|
||||
var exec_action = function() {
|
||||
if (self.node.attrs.confirm) {
|
||||
var def = $.Deferred();
|
||||
var dialog = $('<div>' + self.node.attrs.confirm + '</div>').dialog({
|
||||
var dialog = openerp.web.dialog($('<div>' + self.node.attrs.confirm + '</div>'), {
|
||||
title: _t('Confirm'),
|
||||
modal: true,
|
||||
buttons: [
|
||||
@@ -2043,6 +2043,7 @@ openerp.web.form.FieldMany2One = openerp.web.form.Field.extend({
|
||||
minLength: 0,
|
||||
delay: 0
|
||||
});
|
||||
this.$input.autocomplete("widget").addClass("openerp");
|
||||
// used to correct a bug when selecting an element by pushing 'enter' in an editable list
|
||||
this.$input.keyup(function(e) {
|
||||
if (e.which === 13) {
|
||||
@@ -3026,7 +3027,7 @@ openerp.web.form.FormOpenPopup = openerp.web.OldWidget.extend(/** @lends openerp
|
||||
this.context = context || {};
|
||||
this.options = _.defaults(options || {}, {"auto_write": true});
|
||||
this.render_element();
|
||||
this.$element.dialog({
|
||||
openerp.web.dialog(this.$element, {
|
||||
title: options.title || '',
|
||||
modal: true,
|
||||
width: 960,
|
||||
|
||||
@@ -916,7 +916,7 @@ session.web.Sidebar = session.web.OldWidget.extend({
|
||||
var ids = self.widget_parent.get_selected_ids();
|
||||
if (ids.length == 0) {
|
||||
//TODO: make prettier warning?
|
||||
$("<div />").text(_t("You must choose at least one record.")).dialog({
|
||||
openerp.web.dialog($("<div />").text(_t("You must choose at least one record.")), {
|
||||
title: _t("Warning"),
|
||||
modal: true
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user