]> TLD Linux GIT Repositories - tld-ftp-admin.git/blob - modules/user.py
- raw from PLD
[tld-ftp-admin.git] / modules / user.py
1 # vi: encoding=utf-8 ts=8 sts=4 sw=4 et
2
3 import Cookie, time, ftpio
4
5 UserNotLoggedIn="UserNotLoggedIn"
6
7 class User:
8     def __init__(self, cookies, options):
9         self.loggedin=False
10         ftpio.connect('wwwiface')
11         if 'ftpsessid' in cookies and cookies['ftpsessid']:
12             self.login=ftpio.login_cookie(cookies['ftpsessid'])
13             if self.login:
14                 self.loggedin=True
15
16         if 'action' in options:
17             if options['action'] == 'register':
18                 self.checkloginpass(options)
19             elif options['action'] == 'logout':
20                 self.logout()
21
22     def checkloginpass(self, options):
23         if 'login' not in options or 'pass' not in options:
24             return
25         self.cookie=ftpio.login_passwd(options['login'], options['pass'])
26         if self.cookie:
27             self.login=options['login']
28             self.loggedin=True
29             C = Cookie.SimpleCookie()
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))
34             print C
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
44