From b3f0a0e744a14f4f2e0c1736ba06e88d6ed2877b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20van=20der=20Essen?= Date: Tue, 20 Jan 2015 18:09:31 +0100 Subject: [PATCH] [IMP] pos_reprint: port the module to the new internal pos api --- addons/pos_reprint/__openerp__.py | 9 ++-- addons/pos_reprint/reprint.py | 4 +- addons/pos_reprint/static/src/js/reprint.js | 57 +++++++++------------ addons/pos_reprint/views/templates.xml | 2 +- addons/pos_reprint/views/views.xml | 6 +-- 5 files changed, 36 insertions(+), 42 deletions(-) diff --git a/addons/pos_reprint/__openerp__.py b/addons/pos_reprint/__openerp__.py index 80dd849574d..ef28ec38307 100644 --- a/addons/pos_reprint/__openerp__.py +++ b/addons/pos_reprint/__openerp__.py @@ -21,16 +21,16 @@ { - 'name': 'Point of Sale Reprint', + 'name': 'Point of Sale Receipt Reprinting', 'version': '1.0', 'category': 'Point of Sale', 'sequence': 6, - 'summary': 'Allow cashier to reprint tickets', + 'summary': 'Allow cashier to reprint receipts', 'description': """ ======================= -Allow cashier to reprint tickets +Allow cashier to reprint receipts """, 'author': 'Odoo SA', @@ -39,6 +39,9 @@ Allow cashier to reprint tickets 'views/templates.xml', 'views/views.xml', ], + 'qweb': [ + 'static/src/xml/reprint.xml', + ], 'installable': True, 'website': 'https://www.odoo.com/page/point-of-sale', 'auto_install': False, diff --git a/addons/pos_reprint/reprint.py b/addons/pos_reprint/reprint.py index ed0effbc9ec..49e5b972a91 100644 --- a/addons/pos_reprint/reprint.py +++ b/addons/pos_reprint/reprint.py @@ -25,8 +25,8 @@ from openerp.osv import fields, osv class pos_config(osv.osv): _inherit = 'pos.config' _columns = { - 'reprint': fields.boolean('Reprint Receipt', help='Reprint Receipt'), + 'iface_reprint': fields.boolean('Receipt Reprinting', help="This allows you to reprint a previously printed receipt."), } _defaults = { - 'reprint': False, + 'iface_reprint': False, } diff --git a/addons/pos_reprint/static/src/js/reprint.js b/addons/pos_reprint/static/src/js/reprint.js index d99d77e12e9..5942498ac29 100644 --- a/addons/pos_reprint/static/src/js/reprint.js +++ b/addons/pos_reprint/static/src/js/reprint.js @@ -3,40 +3,33 @@ openerp.pos_reprint = function(instance){ var QWeb = instance.web.qweb; var _t = instance.web._t; - QWeb.add_template('/pos_reprint/static/src/xml/reprint.xml'); - - module.PosWidget.include({ - build_widgets: function(){ - var self = this; - this._super(); - this.pos.old_receipt = null; - - if(!this.pos.config.reprint) return; - - var reprint = $(QWeb.render('ReprintButton')); - - reprint.click(function(){ - if(self.pos.old_receipt) { - self.pos.proxy.print_receipt(self.pos.old_receipt); - } - else { - self.pos_widget.screen_selector.show_popup("error", { - message: _t("Nothing to Print"), - comment: _t("There is no previous receipt to print."), - }); - } - }); - - reprint.appendTo(this.$('.control-buttons')); - this.$('.control-buttons').removeClass('oe_hidden'); + module.ProxyDevice.include({ + print_receipt: function(receipt) { + this._super(receipt); + this.pos.old_receipt = receipt || this.pos.old_receipt; }, }); - module.ProxyDevice.include({ - print_receipt: function(receipt) { - this.pos.old_receipt = receipt || this.pos.old_receipt; - this._super(receipt); - } + module.ReprintButton = module.ActionButtonWidget.extend({ + template: 'ReprintButton', + button_click: function() { + if (this.pos.old_receipt) { + this.pos.proxy.print_receipt(this.pos.old_receipt); + } else { + this.gui.show_popup('error', { + 'title': _t('Nothing to Print'), + 'body': _t('There is no previous receipt to print.'), + }); + } + }, }); -}; \ No newline at end of file + module.define_action_button({ + 'name': 'reprint', + 'widget': module.ReprintButton, + 'condition': function(){ + return this.pos.config.iface_reprint && this.pos.config.iface_print_via_proxy; + }, + }); + +}; diff --git a/addons/pos_reprint/views/templates.xml b/addons/pos_reprint/views/templates.xml index 88d3e91a6c2..a1bef644a85 100644 --- a/addons/pos_reprint/views/templates.xml +++ b/addons/pos_reprint/views/templates.xml @@ -2,7 +2,7 @@ -