Hedera.Orders = new Class ({ Extends: Hedera.Form ,activate: function () { this.tpv = new Hedera.Tpv ({conn: this.conn}); this.tpv.check (this._onTpvCheck.bind (this)); } ,_onTpvCheck: function (tpv, tpvOrder, tpvStatus) { if (tpvStatus === 'ko') this.$('error-dialog').show (); } ,onBasketClick: function () { this.hash.set ({form: 'ecomerce/basket'}); } ,repeaterFunc: function (res, form) { res.$('link').href = this.hash.make ({ form: 'ecomerce/ticket', ticket: form.get ('id') }); } // TPV ,balanceConditionalFunc: function (field, value) { if (value >= 0) Vn.Node.removeClass (this.$('balance'), 'negative'); else Vn.Node.addClass (this.$('balance'), 'negative'); } ,onPayButtonClick: function () { var amount = -this.$('debt').value; amount = amount <= 0 ? null : amount; var defaultAmountStr = ''; if (amount !== null) defaultAmountStr = Vn.Value.format (amount, '%.2d'); amount = prompt (_('AmountToPay:'), defaultAmountStr); if (amount != null) { amount = parseFloat (amount.replace (',', '.')); this.tpv.pay (amount, null); } } ,onDialogResponse: function (dialog, response) { if (response == Htk.Dialog.Button.RETRY) this.tpv.retryPay (); } });