diff --git a/controllers/kalachakra.py b/controllers/kalachakra.py index 14efede..0d0c6cc 100644 --- a/controllers/kalachakra.py +++ b/controllers/kalachakra.py @@ -447,7 +447,8 @@ class kalachakra_event(WebsiteEventController,PaymentProcessing): vals['event_id']=request.session['event_id'] vals['partner_id']=request.session['partner_id'] if event.online_event: - vals['online']=post.get('online') + if post.get('online')=='yes':vals['online']=True + else:vals['online']=False else: vals['online']=False vals['state']='open' diff --git a/models/booking_room.py b/models/booking_room.py index 77e3a62..d0e438a 100644 --- a/models/booking_room.py +++ b/models/booking_room.py @@ -1,6 +1,6 @@ from odoo import models, fields, api from odoo.exceptions import UserError, ValidationError,Warning - +from datetime import date,datetime,timedelta class booking_room(models.Model): _name = 'booking.room' @@ -10,14 +10,24 @@ class booking_room(models.Model): name=fields.Char('room name',compute='_compute_room_name') description = fields.Text('description') capacity = fields.Integer('max capacity') - available_seats = fields.Integer('available seats') + available_seats = fields.Integer('available seats', compute='_compute_available_seats') location_id=fields.Many2one('booking.location', string='location') + def _compute_available_seats(self): + for reg in self: + today=date.today() + events=self.env['event.event'].search([('booking_event','=',True),('date_end','>=',today)]) + count_room_seats=0 + if events: + for event in events: + count_room_seats=count_room_seats+self.env['event.registration'].search_count([('room_id','=',int(reg.id))]) + reg.available_seats=count_room_seats + def _compute_room_name(self): for rec in self: rec.name='' if rec.name2: - rec.name=rec.name2+'('+str(rec.capacity)+')' + rec.name=rec.name2+'('+str(rec.available_seats)+'/'+str(rec.capacity)+')' class booking_room_occupation(models.Model):