def read_communities(): global communities if proximatedir == None: warning('No Proximate directory\n') return # Read community meta datas for dentry in os.listdir(proximatedir): if not dentry.startswith('c_'): continue if str_to_int(dentry[2:], None) == None: continue cdir = '%s/%s' %(proximatedir, dentry) if not os.path.isdir(cdir): continue cfile = '%s/profile' %(cdir) community = Community() try: f = open(cfile, 'r') except IOError: continue profile = f.read() f.close() if community.read_profile(profile): communities[community.get('cid')] = community defcom = get_ordinary_community(DEFAULT_COMMUNITY_NAME) if defcom == None: create_community(DEFAULT_COMMUNITY_NAME)
def create_community(name): global communities community = Community() cid = new_integer_key(communities) community.set('cid', cid) community.set('name', name) communities[cid] = community return community