1 openerp.web.page = function (openerp) {
2 var _t = openerp.web._t,
5 openerp.web.views.add('page', 'openerp.web.PageView');
6 openerp.web.PageView = openerp.web.FormView.extend({
8 display_name: _lt('Page'),
10 this._super.apply(this, arguments);
11 this.set({"force_readonly": true});
14 if (this.dataset.index == null) {
16 return $.Deferred().reject().promise();
20 on_loaded: function(data) {
22 this.$form_header.find('button.oe_form_button_edit').click(this.on_button_edit);
23 this.$form_header.find('button.oe_form_button_create').click(this.on_button_create);
24 this.$form_header.find('button.oe_form_button_duplicate').click(this.on_button_duplicate);
25 this.$form_header.find('button.oe_form_button_delete').click(this.on_button_delete);
27 on_button_edit: function() {
28 return this.do_switch_view('form');
30 on_button_create: function() {
31 this.dataset.index = null;
32 return this.do_switch_view('form');
34 on_button_duplicate: function() {
36 var def = $.Deferred();
37 $.when(this.has_been_loaded).then(function() {
38 self.dataset.call('copy', [self.datarecord.id, {}, self.dataset.context]).then(function(new_id) {
39 return self.on_created({ result : new_id });
41 return self.do_switch_view('form');
48 on_button_delete: function() {
50 var def = $.Deferred();
51 $.when(this.has_been_loaded).then(function() {
52 if (self.datarecord.id && confirm(_t("Do you really want to delete this record?"))) {
53 self.dataset.unlink([self.datarecord.id]).then(function() {
54 self.on_pager_action('next');
58 $.async_when().then(function () {