Ejemplo n.º 1
0
async def get_by_secret(secret):
    """Get a file by secret. Returns MotorGridOut."""
    file_id = await get_file_id(str(secret))
    if file_id:
        return await get(file_id)
    else:
        raise error.NotFoundError(secret)
Ejemplo n.º 2
0
Archivo: user.py Proyecto: hguandl/vj4
 async def get(self):
     if self.has_priv(builtin.PRIV_USER_PROFILE):
         self.redirect(self.reverse_url('domain_main'))
     else:
         if len(self.request.query_string) > 0:
             if self.request.query_string.startswith("ticket="):
                 ticket = self.request.query_string[7:]
                 uinfo = await casclient.get_user_info(ticket)
                 uname = uinfo['sid'][0]
                 udoc = await user.get_by_uname(uname)
                 if udoc is not None:
                     uid = udoc['_id']
                     await asyncio.gather(
                         user.set_by_uid(uid,
                                         loginat=datetime.datetime.utcnow(),
                                         loginip=self.remote_ip),
                         self.update_session(new_saved=True, uid=uid))
                     self.json_or_redirect(self.referer_or_main)
                 else:
                     uid = await system.inc_user_counter()
                     password = uuid.uuid4().hex
                     if 'email' in uinfo:
                         email = uinfo['email'][0]
                     else:
                         email = f'{uname}@mail.sustech.edu.cn'
                     await user.add(uid, uname, password, email,
                                    self.remote_ip)
                     await self.update_session(new_saved=False, uid=uid)
                     self.json_or_redirect(self.reverse_url('domain_main'))
             else:
                 raise error.NotFoundError(self.url)
         else:
             self.redirect('https://cas.sustech.edu.cn/cas/login?service=' +
                           options.url_prefix + '/auth/login')
Ejemplo n.º 3
0
 async def get(self):
     raise error.NotFoundError(self.url)