Hedera.Ticket = new Class ({ Extends: Hedera.Form ,onTicketChange: function (ticket) { if (!ticket.value) return; var batch = new Sql.Batch (); batch.addValue ('ticket', ticket.value); this.conn.execQuery ('CALL myTicketLogAccess (#ticket)', null, batch); } ,onPrintClick: function () { var batch = new Sql.Batch (); batch.addValue ('ticket', this.$('ticket-id').value); this.gui.openReport ('delivery-note', batch); } ,subtotalRenderer: function (column, form) { column.value = this.subtotal (form); } ,repeaterFunc: function (res, form) { res.$('subtotal').value = this.subtotal (form); } ,subtotal: function (form) { var price = form.get ('price'); var discount = form.get ('discount'); return form.get ('quantity') * price * ((100 - discount) / 100); } ,onPackagesChanged: function (model) { this.$('packages').node.style.display = model.numRows > 0 ? 'block' : 'none'; } });