def buildSittings(self): if ISitting.providedBy(self.context): trusted = removeSecurityProxy(self.context) order = "real_order" trusted.item_schedule.sort(key=operator.attrgetter(order)) self.sittings.append(trusted) else: sittings = ISchedulingContext(self.context).get_sittings( self.start_date, self.end_date).values() self.sittings = map(removeSecurityProxy, sittings) self.sittings = [ExpandedSitting(sitting) for sitting in self.sittings]
def build_context(self): if ISitting.providedBy(self.context): sittings = [removeSecurityProxy(self.context)] else: sittings = map(removeSecurityProxy, ISchedulingContext(self.context).get_sittings( self.start_date, self.end_date).values()) # sort sittings chronologically sittings.sort(key=operator.attrgetter("start_date")) # ensure item_schedule is sorted via "real_order" within each sitting for sitting in sittings: sitting.item_schedule.sort(key=operator.attrgetter("real_order")) self.sittings = [ ExpandedSitting(s) for s in sittings ]
def buildSittings(self, start_date, end_date): if ISitting.providedBy(self.context): trusted = removeSecurityProxy(self.context) order="real_order" trusted.item_schedule.sort(key=operator.attrgetter(order)) self.sittings.append(trusted) else: sittings = ISchedulingContext(self.context).get_sittings( start_date, end_date ).values() self.sittings = map(removeSecurityProxy, sittings) self.sittings = [ ExpandedSitting(sitting) for sitting in self.sittings ]
def build_context(self): if ISitting.providedBy(self.context): sittings = [removeSecurityProxy(self.context)] else: sittings = map( removeSecurityProxy, ISchedulingContext(self.context).get_sittings( self.start_date, self.end_date).values()) # sort sittings chronologically sittings.sort(key=operator.attrgetter("start_date")) # ensure item_schedule is sorted via "real_order" within each sitting for sitting in sittings: sitting.item_schedule.sort(key=operator.attrgetter("real_order")) self.sittings = [ExpandedSitting(s) for s in sittings]
def handle_save(self, action, data): report = domain.Report() session = Session() report.body = data["body"] report.start_date = data["start_date"] report.end_date = data["end_date"] report.note = data["note"] report.short_name = data["short_name"] report.owner_id = get_login_user().user_id # !+GROUP_AS_OWNER report.language = get_default_language() report.created_date = datetime.datetime.now() if not hasattr(self.context, "group_id"): report.group_id = ISchedulingContext(self.context).group_id else: report.group_id = self.context.group_id session.add(report) session.flush() notify(ObjectCreatedEvent(report)) if "sittings" in data.keys(): try: ids = data["sittings"].split(",") for id_number in ids: sit_id = int(id_number) sitting = session.query(domain.Sitting).get(sit_id) sr = domain.SittingReport() sr.report = report sr.sitting = sitting session.add(sr) notify(ObjectCreatedEvent(report)) except: #if no sittings are present in report or some other error occurs pass session.flush() if ISitting.providedBy(self.context): back_link = "./schedule" else: back_link = "./" self.request.response.redirect(back_link)
def handle_save(self, action, data): report = domain.Report() session = Session() report.body = data["body"] report.start_date = data["start_date"] report.end_date = data["end_date"] report.note = data["note"] report.short_name = data["short_name"] report.owner_id = get_db_user_id() # !+GROUP_AS_OWNER report.language = get_default_language() report.created_date = datetime.datetime.now() if not hasattr(self.context, "group_id"): report.group_id = ISchedulingContext(self.context).group_id else: report.group_id = self.context.group_id session.add(report) session.flush() notify(ObjectCreatedEvent(report)) if "sittings" in data.keys(): try: ids = data["sittings"].split(",") for id_number in ids: sit_id = int(id_number) sitting = session.query(domain.Sitting).get(sit_id) sr = domain.SittingReport() sr.report = report sr.sitting = sitting session.add(sr) notify(ObjectCreatedEvent(report)) except: #if no sittings are present in report or some other error occurs pass session.flush() if ISitting.providedBy(self.context): back_link = "./schedule" else: back_link = "./" self.request.response.redirect(back_link)