def __init__(self):
     self.__webclient = httplib2.Http(
         disable_ssl_certificate_validation=True)
     self.__webclient.follow_redirects = False
     self.__userAgent = 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36 Vivaldi/2.2.1388.37'
     self.__logHTTPConn = logging.getLogger('bot.HTTPConn')
     self.__logHTTPConn.setLevel(logging.DEBUG)
     self.__Session = Session()
     self.__token = None
     self.__userID = None
Ejemplo n.º 2
0
def main():

    session = Session()
    #Set up the logging config
    logger = logging.getLogger("blenderq")

    # create logging handlers
    handler = logging.FileHandler(session['log_file'])
    ch = logging.StreamHandler()

    # create a logging format
    formatter = logging.Formatter(
        '%(asctime)s - %(name)s - %(levelname)s - %(message)s')
    handler.setFormatter(formatter)
    ch.setFormatter(formatter)

    # add the handlers to the logger
    logger.addHandler(handler)
    logger.addHandler(ch)

    if session['log_level'] == 'Debug':
        logger.setLevel(logging.DEBUG)
        handler.setLevel(logging.DEBUG)
        ch.setLevel(logging.DEBUG)
    elif session['log_level'] == 'Info':
        logger.setLevel(logging.INFO)
        handler.setLevel(logging.INFO)
        ch.setLevel(logging.INFO)
    elif session['log_level'] == 'Warning':
        logger.setLevel(logging.WARNING)
        handler.setLevel(logging.WARNING)
        ch.setLevel(logging.WARNING)
    elif session['log_level'] == 'Error':
        logger.setLevel(logging.ERROR)
        handler.setLevel(logging.ERROR)
        ch.setLevel(logging.ERROR)
    else:
        print(
            "Log level not set to one of the given options, defaulting to debug level"
        )
        logger.setLevel(logging.DEBUG)
        handler.setLevel(logging.DEBUG)
        ch.setLevel(logging.DEBUG)

    # Start the main app
    renderer = BlenderRenderer(session['blender_location'])
    loader = ProjectLoader()
    root = Tk()
    root.geometry("900x550+300+300")
    app = BlenderQFrame(renderer,
                        loader,
                        default_ops=session['default_ops'],
                        hidden_ops=session['hidden_ops'])
    root.mainloop()
Ejemplo n.º 3
0
    def add_sessions(self, name, capacity, location, start_time, end_time):
        try:
            if len(name) == 0:
                raise MessageError(
                    'Please enter a valid name of this session.')

            date_format = "%Y-%m-%d"
            start_time = datetime.strptime(start_time, date_format)
            end_time = datetime.strptime(end_time, date_format)
            now = datetime.now()

            if not now < start_time:
                raise MessageError('Make start_time later than today')
            if not now < start_time or not start_time < end_time:
                raise MessageError(
                    'Please enter start_time, end_time in days order')
            if len(location) == 0:
                raise MessageError('Please enter a valid location name.')

        except ValueError as error:
            return "Enter time in Y-m-d format"
        except MessageError as error:
            return error

        try:
            capacity = int(capacity)

            if capacity < 1:
                raise MessageError('let capacity greater than 1')

        except ValueError as error:
            return "Enter an integer at capacity"
        except MessageError as error:
            return error
        session = Session(name, capacity, location, start_time, end_time)
        self._sessions.append(session)
        return session
Ejemplo n.º 4
0
 def addSession(self, staff, seminarId, startDateTime, endDateTime, name,
                descr, capacity, presenter):
     seminar = self.getEvent(seminarId)
     venue = seminar.getVenue()
     if (venue.getMaxCapacity() < capacity):
         raise VenueCapacityException(
             'Capacity', 'Venue Capacity is less than session capacity')
     if (startDateTime < seminar.getStartDateTime()):
         raise SessionDateTimeException(
             'StartDateTime',
             'Session start date time > seminar start date time')
     if (endDateTime > seminar.getEndDateTime()):
         raise SessionDateTimeException(
             'EndDateTime',
             'Session end date time <= seminar end date time')
     id = self.getUniqueEventId()
     session = Session(seminarId,id,startDateTime,endDateTime,name,descr,seminar.getVenue(),\
     seminar.getConvener(),capacity,seminar.getDeregEnd(),presenter,seminar.getFee(),seminar.getEarlyBirdEnd())
     if seminar.sessionPeriodOverlaps(session.getPeriod()):
         raise OverlappingBookingException(
             'Session',
             'Session time overlaps with previous booking at this venue')
     if not self.__seminarManager.addSession(seminarId, session):
         raise ExistingEventException(
             'Session',
             'Session in this seminar, with this name already exists')
     staff.addPostedCurrEvent(session)
     # if you are making the session and set the presenter to be yourself then you automatically accept the request
     if staff.get_id() != presenter.get_id():
         guestRequestNotification = AcceptRejectNotification(
             "{0} has asked you to be the presenter to '{1}' session".
             format(staff.getName(), name), session.getId())
         presenter.addNotification(guestRequestNotification)
     else:
         session.setIsPending(False)
     return id