]> git.pld-linux.org Git - projects/pld-ftp-admin.git/blame - modules/user.py
- do not break when pkg name has '+' or '.' signs in it
[projects/pld-ftp-admin.git] / modules / user.py
CommitLineData
1610d209
MM
1# vi: encoding=utf-8 ts=8 sts=4 sw=4 et
2
6992b18d 3import Cookie, time, ftpio
1610d209
MM
4
5UserNotLoggedIn="UserNotLoggedIn"
6
7class User:
8 def __init__(self, cookies, options):
9 self.loggedin=False
a2a38501 10 ftpio.connect('wwwiface')
6992b18d
MM
11 if 'ftpsessid' in cookies and cookies['ftpsessid']:
12 self.login=ftpio.login_cookie(cookies['ftpsessid'])
13 if self.login:
14 self.loggedin=True
1610d209 15
6992b18d 16 if 'action' in options:
1610d209
MM
17 if options['action'] == 'register':
18 self.checkloginpass(options)
19 elif options['action'] == 'logout':
20 self.logout()
21
22 def checkloginpass(self, options):
6992b18d 23 if 'login' not in options or 'pass' not in options:
1610d209 24 return
6992b18d
MM
25 self.cookie=ftpio.login_passwd(options['login'], options['pass'])
26 if self.cookie:
27 self.login=options['login']
28 self.loggedin=True
1610d209 29 C = Cookie.SimpleCookie()
6992b18d
MM
30 C['ftpsessid']=self.cookie
31 #C['ftpsessid']['expires']=time.strftime(
32 #"%a, %d-%b-%y %H:%M:%S GMT",
33 #time.gmtime(time.time()+86400))
1610d209 34 print C
6992b18d
MM
35
36 def logout(self):
37 self.loggedin=False
38 ftpio.logout()
39 C = Cookie.SimpleCookie()
40 C['ftpsessid']=''
41 C['ftpsessid']['expires']=time.strftime("%a, %d-%b-%y %H:%M:%S GMT",
42 time.gmtime(time.time()-31536000))
43 print C
1610d209 44
This page took 0.033138 seconds and 4 git commands to generate.