Esempio n. 1
0
def sortOnlineUsers(onlines,sort_by,desc):
    sort_by_list=["user_id","normal_username","login_time_epoch","duration_secs","in_bytes","out_bytes","ras_ip","owner_name","unique_id_val","voip_username"]
    if sort_by not in sort_by_list:
	sort_by="login_time_epoch"
    sorted_list=SortedList(onlines)
    sorted_list.sortByPostText("[\"%s\"]"%sort_by,desc)
    return sorted_list.getList()
Esempio n. 2
0
    def getRasPorts(self,request):
	request.needAuthType(request.ADMIN)
    	request.checkArgs("ras_ip")
	creator_obj=request.getAuthNameObj()
	creator_obj.canDo("GET RAS INFORMATION")
	sorted=SortedList(ras_main.getLoader().getRasByIP(request["ras_ip"]).getPorts().values())
	sorted.sortByPostText("[\"port_name\"]",0)
	return sorted.getList()
Esempio n. 3
0
 def getAllDefs(self, request):
     request.needAuthType(request.ADMIN)
     request.getAuthNameObj().canDo("CHANGE IBS DEFINITIONS")
     def_vars = defs.getDefsLoader().getAllVars()
     defs_list = self.__getDefsListFromDefVars(def_vars)
     sorted = SortedList(defs_list)
     sorted.sortByPostText('["name"]', 0)
     return sorted.getList()
Esempio n. 4
0
    def getAllDefs(self,request):
	request.needAuthType(request.ADMIN)
	request.getAuthNameObj().canDo("CHANGE IBS DEFINITIONS")
	def_vars=defs.getDefsLoader().getAllVars()
	defs_list=self.__getDefsListFromDefVars(def_vars)
	sorted=SortedList(defs_list)
	sorted.sortByPostText('["name"]',0)
	return sorted.getList()
Esempio n. 5
0
    def listChargeRules(self,request):
	request.needAuthType(request.ADMIN)
	request.checkArgs("charge_name")
	request.getAuthNameObj().canUseCharge(request["charge_name"])
	charge_rules=charge_main.getLoader().getChargeByName(request["charge_name"]).getRules()
	infos=map(lambda charge_rule_obj:charge_rule_obj.getInfo(),charge_rules.values())
	sorted=SortedList(infos)
	sorted.sortByPostText('["rule_id"]',0)
	return sorted.getList()
Esempio n. 6
0
 def getRasPorts(self, request):
     request.needAuthType(request.ADMIN)
     request.checkArgs("ras_ip")
     creator_obj = request.getAuthNameObj()
     creator_obj.canDo("GET RAS INFORMATION")
     sorted = SortedList(ras_main.getLoader().getRasByIP(
         request["ras_ip"]).getPorts().values())
     sorted.sortByPostText("[\"port_name\"]", 0)
     return sorted.getList()
Esempio n. 7
0
 def listChargeRules(self, request):
     request.needAuthType(request.ADMIN)
     request.checkArgs("charge_name")
     request.getAuthNameObj().canUseCharge(request["charge_name"])
     charge_rules = charge_main.getLoader().getChargeByName(
         request["charge_name"]).getRules()
     infos = map(lambda charge_rule_obj: charge_rule_obj.getInfo(),
                 charge_rules.values())
     sorted = SortedList(infos)
     sorted.sortByPostText('["rule_id"]', 0)
     return sorted.getList()
Esempio n. 8
0
    def getPermsOfAdmin(self,request):
	"""
	    return a list of dics containing admin permission and sorted by permission name
	    each dic has "name, value, description, value_type, category" keys
	"""
	request.needAuthType(request.ADMIN)
	request.checkArgs("admin_username")
        admin_perms=admin_main.getLoader().getAdminByName(request["admin_username"]).getPerms()
	perms_list=self.__getPermsListFromAdminPerms(admin_perms)
	sorted=SortedList(perms_list)
	sorted.sortByPostText('["name"]',0)
	return sorted.getList()
Esempio n. 9
0
    def listTariffs(self,request):
	"""
	    return a list of tariff infos in format [{"tariff_name":,"tariff_id":,"comment":}]
	    note that prefixes aren't included
	"""
	request.needAuthType(request.ADMIN)
	request.getAuthNameObj().canDo("SEE VOIP TARIFF")
	tariffs=map(lambda tariff_name:tariff_main.getLoader().getTariffByName(tariff_name).getInfo(),
		   tariff_main.getLoader().getAllTariffNames())
	sorted=SortedList(tariffs)
	sorted.sortByPostText("['tariff_name']",False)
	return sorted.getList()
Esempio n. 10
0
 def getPermsOfAdmin(self, request):
     """
         return a list of dics containing admin permission and sorted by permission name
         each dic has "name, value, description, value_type, category" keys
     """
     request.needAuthType(request.ADMIN)
     request.checkArgs("admin_username")
     admin_perms = admin_main.getLoader().getAdminByName(
         request["admin_username"]).getPerms()
     perms_list = self.__getPermsListFromAdminPerms(admin_perms)
     sorted = SortedList(perms_list)
     sorted.sortByPostText('["name"]', 0)
     return sorted.getList()
Esempio n. 11
0
 def getAllPerms(self, request):
     """
         return a list of dics of all perms sorted by permission name
         optional argument category tells handler to return only permission of specified category
         each dic has "name, description, value_type, category, affected_pages, dependencies" keys
     """
     request.needAuthType(request.ADMIN)
     request.getAuthNameObj().canDo("CHANGE ADMIN PERMISSIONS")
     all_perms_dic = perm_loader.getLoader().getAllPerms()
     if request.has_key("category"):
         category = request["category"]
     else:
         category = "all"
     all_perms_list = self.__getPermsListFromPerms(all_perms_dic, category)
     sorted = SortedList(all_perms_list)
     sorted.sortByPostText('["name"]', 0)
     return sorted.getList()
Esempio n. 12
0
    def getAllPerms(self,request):
	"""
	    return a list of dics of all perms sorted by permission name
	    optional argument category tells handler to return only permission of specified category
	    each dic has "name, description, value_type, category, affected_pages, dependencies" keys
	"""
	request.needAuthType(request.ADMIN)
	request.getAuthNameObj().canDo("CHANGE ADMIN PERMISSIONS")
	all_perms_dic=perm_loader.getLoader().getAllPerms()
	if request.has_key("category"):
	    category=request["category"]
	else:
	    category="all"
	all_perms_list=self.__getPermsListFromPerms(all_perms_dic,category)
	sorted=SortedList(all_perms_list)
	sorted.sortByPostText('["name"]',0)
	return sorted.getList() 
Esempio n. 13
0
def _sortOnlines(list, sort_by, desc, valid_sortbys):
    """
        sort "list" by post text of sort_by and desc.
        sort_by should be in valid_sortbys or default will be chosen
    """
    if sort_by in ("","login_time"):
        sort_by="login_time_epoch"
    elif sort_by not in valid_sortbys:
        toLog("SortOnlines: Invalid sort by %s %s"%(sort_by,valid_sortbys),LOG_DEBUG)
        sort_by="login_time_epoch"

    sorted_list=SortedList(list)
    if sort_by.startswith("attrs_"):
        sort_by_post_text='["attrs"]["%s"]'%sort_by[6:]
        sorted_list.sortByPostText(sort_by_post_text,desc)
    else:
        sorted_list.sortByValueDicKey(sort_by, desc)
        
    return sorted_list.getList()
Esempio n. 14
0
    def __getPrefixesInfo(self):
	prefixes=map(lambda prefix:prefix.getInfo(),self.prefixes_id.itervalues())
	sorted=SortedList(prefixes)
	sorted.sortByPostText("['prefix_name']",False)
	return sorted.getList()