Exemplo n.º 1
0
    def post(self):
        launch = LTI_Launch(self)
        if launch.complete: return
        if launch.loaded is False:
            self.response.out.write(
                '<p>This tool must be launched using IMS Basic LTI.</p>')
            return

        wiskey = 'WisCrowd-' + str(launch.getCourseKey())
        data = self.getmodel(wiskey)
        logging.info('WisHandler Loading Wis Key=' + wiskey)

        name = self.request.get('name')
        if len(name) < 1: name = launch.getUserName()
        if name is None or len(name) < 1:
            self.display(launch, data, 'You must enter a user name')
            return

        guess = self.request.get('guess')
        try:
            guess = int(guess)
        except:
            guess = -1

        msg = ''
        if guess < 1:
            msg = 'Please enter a valid, numeric guess'
        elif len(name) < 1:
            msg = 'No Name Found'
        elif name in data:
            msg = 'You already have answered this'
        elif len(data) > 1000:
            msg = 'Game only supports 1000 players.'
        else:
            data[name] = guess
            memcache.set(wiskey, data, 3600)
            logging.info('Storing Wis Key=' + wiskey)
            # Retrieve and check to see if it was stored
            data = self.getmodel(wiskey)
            if data.get(name, None) == guess:
                msg = 'Thank you for your guess'
            else:
                msg = 'Unable to store your guess please re-submit'
                logging.warning('Failed to Store Wis Key=' + wiskey)

        self.display(launch, data, msg)
Exemplo n.º 2
0
  def post(self):
    launch = LTI_Launch(self)
    if launch.complete: return
    if launch.loaded is False:
        self.response.out.write('<p>This tool must be launched using IMS Basic LTI.</p>')
        return
    
    wiskey = 'WisCrowd-'+str(launch.getCourseKey())
    data = self.getmodel(wiskey)
    logging.info('WisHandler Loading Wis Key='+wiskey)

    name = self.request.get('name')
    if len(name) < 1 : name = launch.getUserName()
    if name is None or len(name) < 1:
        self.display(launch, data, 'You must enter a user name')
        return

    guess = self.request.get('guess')
    try: guess = int(guess)
    except: guess = -1

    msg = ''
    if guess < 1 :
       msg = 'Please enter a valid, numeric guess'
    elif  len(name) < 1 : 
       msg = 'No Name Found'
    elif name in data : 
       msg = 'You already have answered this'
    elif len(data) > 1000 : 
       msg = 'Game only supports 1000 players.'
    else:
       data[name] = guess
       memcache.set(wiskey, data, 3600)
       logging.info('Storing Wis Key='+wiskey)
       # Retrieve and check to see if it was stored
       data = self.getmodel(wiskey)
       if data.get(name,None) == guess :
         msg = 'Thank you for your guess'
       else:
         msg = 'Unable to store your guess please re-submit'
         logging.warning('Failed to Store Wis Key='+wiskey)

    self.display(launch, data, msg)
Exemplo n.º 3
0
  def get(self):
    launch = LTI_Launch(self)
    if launch.complete: return
    if launch.loaded is False:
        self.response.out.write('<p>This tool must be launched using IMS Basic LTI.</p>')
        return
    
    msg = None
    wiskey = 'WisCrowd-'+str(launch.getCourseKey())
    logging.info('WisHandler.render Loading Wis Key='+wiskey)

    self.action = self.request.get('action')
    if launch.isInstructor() and self.action == 'reset':
       data = dict()
       logging.info('Resetting Wis Key='+wiskey)
       memcache.set(wiskey, data, 3600)
       msg = 'Data reset'
    else:
       data = self.getmodel(wiskey)

    self.display(launch, data, msg)