Beispiel #1
0
    def post(self, vanity_url=None, operation=None, key=None):
        logging.info('ProviderScheduleHandler POST')        
        # instantiate and fill the form
        schedule_form = ProviderScheduleForm().get_form(self.request.POST, obj=Schedule())
        provider = db.get_provider_from_vanity_url(vanity_url)
        error_messages = None
        
        if schedule_form.validate():
            # Store schedule
            if operation == 'add':
                new_schedule = Schedule()
                schedule_form.populate_obj(new_schedule)
                new_schedule.provider = provider.key
                new_schedule.put()
                # stored eduction
                logging.debug("(ProviderSchedule.post) New schedule %s " % new_schedule)
                
            elif operation == 'edit':
                schedule_key = ndb.Key(urlsafe=key)
        
                if schedule_key:
                    schedule = schedule_key.get()
                    schedule_form.populate_obj(schedule)
                    schedule.put()
                    # stored
                    logging.info("(ProviderEducationHandler.post) Stored schedule key=%s" % schedule.key)
                else:
                    logging.info("(ProviderEducationHandler.post) No schedule found for key %s" % key)

            else:
                logging.error('Operation Not handled %s' % operation)
                
            self.redirect('/provider/schedule/%s' % provider.vanity_url)

        else:
            error_messages = schedule_form.errors
            logging.info('Schedule form did not validate: %s' % error_messages)
            
            kwargs = {}
            kwargs['schedule_form'] = schedule_form
            kwargs['edit_key'] = key

            self.render_schedule(provider, **kwargs)
Beispiel #2
0
    def post(self, vanity_url=None, operation=None, key=None):
        logging.info('ProviderScheduleHandler POST')
        # instantiate and fill the form
        schedule_form = ProviderScheduleForm().get_form(self.request.POST,
                                                        obj=Schedule())
        provider = db.get_provider_from_vanity_url(vanity_url)
        error_messages = None

        if schedule_form.validate():
            # Store schedule
            if operation == 'add':
                new_schedule = Schedule()
                schedule_form.populate_obj(new_schedule)
                new_schedule.provider = provider.key
                new_schedule.put()
                # stored eduction
                logging.debug("(ProviderSchedule.post) New schedule %s " %
                              new_schedule)

            elif operation == 'edit':
                schedule_key = ndb.Key(urlsafe=key)

                if schedule_key:
                    schedule = schedule_key.get()
                    schedule_form.populate_obj(schedule)
                    schedule.put()
                    # stored
                    logging.info(
                        "(ProviderEducationHandler.post) Stored schedule key=%s"
                        % schedule.key)
                else:
                    logging.info(
                        "(ProviderEducationHandler.post) No schedule found for key %s"
                        % key)

            else:
                logging.error('Operation Not handled %s' % operation)

            self.redirect('/provider/schedule/%s' % provider.vanity_url)

        else:
            error_messages = schedule_form.errors
            logging.info('Schedule form did not validate: %s' % error_messages)

            kwargs = {}
            kwargs['schedule_form'] = schedule_form
            kwargs['edit_key'] = key

            self.render_schedule(provider, **kwargs)
Beispiel #3
0
 def get_schedules(self):
     return Schedule.query(Schedule.provider == self.key).order(Schedule.day, Schedule.start_time)
Beispiel #4
0
 def get_schedules(self):
     return Schedule.query(Schedule.provider == self.key).order(
         Schedule.day, Schedule.start_time)