aboutsummaryrefslogtreecommitdiffstats
path: root/server/user.py
blob: a2ca732db4832e144f352c73dcc58efb8bff5e8f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import os
import os.path
import shutil
import hashlib

class UserHandler:

    def __init__(self, root):
        self.root = root

    def register(self, name):
        userDir = self.root + '/' + name
        self.hash = hashlib.sha1(name).hexdigest()
        root_node = userDir + '/' + self.hash[:2] + '/' + self.hash[2:]
        os.makedirs(root_node)
        os.utime(root_node + '/permissions')
        os.utime(root_node + '/childs')
        os.utime(root_node + '/object')

    def registered(self, name):
        return os.path.exists(self.root + '/' + name)

    def unregister(self, name):
        shutil.rmtree(self.root + '/' + name)

    def get_user_list(self):
        return os.listdir(self.root)

class User:

    def __init__(self, name):
        self.name = name
        self.rootObject = hashlib.sha1(name).hexdigest()