예제 #1
0
파일: manage.py 프로젝트: cbrand/vpnchooser
def reset_password(username, password=None, config=None):
    _init_app(config)
    user = session.query(User).filter(User.name == username).first()
    if user is None:
        print('User %s not found' % username)
    if password is None:
        password = getpass('Enter new password: '******'Password reset done for user %s' % username)
예제 #2
0
def reset_password(username, password=None, config=None):
    _init_app(config)
    user = session.query(User).filter(User.name == username).first()
    if user is None:
        print('User %s not found' % username)
    if password is None:
        password = getpass('Enter new password: '******'Password reset done for user %s' % username)
예제 #3
0
    def decorated(*args, **kwargs):
        auth = request.authorization
        if not auth:
            return authenticate()

        user = session.query(User).filter(User.name == auth.username).first()
        if user and user.check(auth.password):
            g.user = user
            return func(*args, **kwargs)
        else:
            return authenticate()
예제 #4
0
    def decorated(*args, **kwargs):
        auth = request.authorization
        if not auth:
            return authenticate()

        user = session.query(User).filter(
            User.name == auth.username
        ).first()
        if user and user.check(auth.password):
            g.user = user
            return func(*args, **kwargs)
        else:
            return authenticate()
예제 #5
0
파일: device.py 프로젝트: cbrand/vpnchooser
    def _update_vpn(args, device: Device) -> Device:
        orig_vpn = device.vpn
        if args.vpn:
            try:
                vpn_id = id_from_url(args.vpn, 'vpn_id')
                device.vpn = session.query(Vpn).filter(
                    Vpn.id == vpn_id).first()
            except ValueError:
                device.vpn = None
        else:
            device.vpn = None

        if orig_vpn != device.vpn:
            sync.delay()
        return device
예제 #6
0
파일: device.py 프로젝트: cbrand/vpnchooser
    def _update_vpn(args, device: Device) -> Device:
        orig_vpn = device.vpn
        if args.vpn:
            try:
                vpn_id = id_from_url(args.vpn, 'vpn_id')
                device.vpn = session.query(Vpn).filter(
                    Vpn.id == vpn_id
                ).first()
            except ValueError:
                device.vpn = None
        else:
            device.vpn = None

        if orig_vpn != device.vpn:
            sync.delay()
        return device
예제 #7
0
파일: device.py 프로젝트: cbrand/vpnchooser
 def _get_by_id(device_id: int) -> Device:
     return session.query(Device).filter(
         Device.id == device_id
     ).first()
예제 #8
0
파일: device.py 프로젝트: cbrand/vpnchooser
 def get(self):
     devices = list(session.query(Device))
     return devices
예제 #9
0
파일: vpn.py 프로젝트: cbrand/vpnchooser
 def _get_by_name(vpn_id: int) -> Vpn:
     return session.query(Vpn).filter(
         Vpn.id == vpn_id
     ).first()
예제 #10
0
파일: vpn.py 프로젝트: cbrand/vpnchooser
 def get(self):
     return list(session.query(Vpn))
예제 #11
0
파일: device.py 프로젝트: cbrand/vpnchooser
 def _get_by_id(device_id: int) -> Device:
     return session.query(Device).filter(Device.id == device_id).first()
예제 #12
0
파일: device.py 프로젝트: cbrand/vpnchooser
 def get(self):
     devices = list(session.query(Device))
     return devices
예제 #13
0
 def rules(self):
     qry = session.query(Device).filter(Device.vpn_id != None)
     return [item.rule for item in qry]
예제 #14
0
파일: user.py 프로젝트: cbrand/vpnchooser
 def _get_by_username(user_name: str) -> User:
     return session.query(User).filter(
         User.name == user_name
     ).first()
예제 #15
0
파일: user.py 프로젝트: cbrand/vpnchooser
 def get(self):
     user = current_user()
     query = session.query(User)
     if not user.is_admin:
         query = query.filter(User.name == user.name)
     return list(query)
예제 #16
0
파일: syncer.py 프로젝트: cbrand/vpnchooser
 def rules(self):
     qry = session.query(Device).filter(Device.vpn_id != None)
     return [
         item.rule
         for item in qry
     ]