Exemple #1
0
 def _executeOU(self, userID):
     # backend db:
     backend = BackendHelper()
     values = self.word[2].split(',')
     for objectName in values:
         obj = LBEObjectTemplate.objects.filter(Q(name=objectName) | Q(displayName=objectName))[0]
         if backend.getUserUIDForObject(obj, userID):
             return True
     # No value:
     return False
Exemple #2
0
 def _executeOU(self, userID):
     # backend db:
     backend = BackendHelper()
     values = self.word[2].split(',')
     for objectName in values:
         obj = LBEObjectTemplate.objects.filter(
             Q(name=objectName) | Q(displayName=objectName))[0]
         if backend.getUserUIDForObject(obj, userID):
             return True
     # No value:
     return False
Exemple #3
0
 def _executePerson(self, userID):
     # backend db:
     backend = BackendHelper()
     obj = backend.getUserUIDForObject(self.object, userID)
     # check if characters:
     if self.word[3] != '':
         # split ',' values:
         val = self.word[3].split(',')
         try:
             for value in obj['attributes'][self.attribute]:
                 for attrValue in val:
                     if self.operator == '=':
                         if attrValue == value:
                             return True
                     elif self.operator == '!=':
                         if attrValue == value:
                             return False
         except BaseException as e:
             # e
             # attribute does not exist for user:
             pass
         return self.operator == '!='
     # only a number:
     elif self.number:
         try:
             if self.operator == '=':
                 number = self.number.split(',')
                 for nb in number:
                     if int(nb) == int(
                             obj['attributes'][self.attribute][0]):
                         return True
                 return False
             elif self.operator == '!=':
                 number = self.number.split(',')
                 for nb in number:
                     if int(nb) == int(
                             obj['attributes'][self.attribute][0]):
                         return False
                 return True
             elif self.operator == '>':
                 return int(
                     obj['attributes'][self.attribute][0]) > self.number
             elif self.operator == '<':
                 return int(
                     obj['attributes'][self.attribute][0]) < self.number
             elif self.operator == '<=':
                 return int(
                     obj['attributes'][self.attribute][0]) <= self.number
             elif self.operator == '>=':
                 return int(
                     obj['attributes'][self.attribute][0]) >= self.number
         except:
             # wrong key
             self.traceback = "The key " + self.attribute + "does not exist to the Backend Server for " + userID + "."
             return False
     # number range:
     elif self.numberTo and self.numberFrom:
         try:
             if self.operator == '=':
                 return self.numberTo <= int(obj['attributes'][self.attribute][0]) and \
                        self.numberFrom >= int(obj['attributes'][self.attribute][0])
             elif self.operator == '!=':
                 return self.numberTo <= int(obj['attributes'][self.attribute][0]) and \
                        self.numberFrom >= int(obj['attributes'][self.attribute][0])
         except:
             # wrong key
             self.traceback = "The key " + self.attribute + "does not exist to the Backend Server for " + userID + "."
             return False
     # not necessary:
     return False
Exemple #4
0
 def _executePerson(self, userID):
     # backend db:
     backend = BackendHelper()
     obj = backend.getUserUIDForObject(self.object, userID)
     # check if characters:
     if self.word[3] != '':
         # split ',' values:
         val = self.word[3].split(',')
         try:
             for value in obj['attributes'][self.attribute]:
                 for attrValue in val:
                     if self.operator == '=':
                         if attrValue == value:
                             return True
                     elif self.operator == '!=':
                         if attrValue == value:
                             return False
         except BaseException as e:
             # e
             # attribute does not exist for user:
             pass
         return self.operator == '!='
     # only a number:
     elif self.number:
         try:
             if self.operator == '=':
                 number = self.number.split(',')
                 for nb in number:
                     if int(nb) == int(obj['attributes'][self.attribute][0]):
                         return True
                 return False
             elif self.operator == '!=':
                 number = self.number.split(',')
                 for nb in number:
                     if int(nb) == int(obj['attributes'][self.attribute][0]):
                         return False
                 return True
             elif self.operator == '>':
                 return int(obj['attributes'][self.attribute][0]) > self.number
             elif self.operator == '<':
                 return int(obj['attributes'][self.attribute][0]) < self.number
             elif self.operator == '<=':
                 return int(obj['attributes'][self.attribute][0]) <= self.number
             elif self.operator == '>=':
                 return int(obj['attributes'][self.attribute][0]) >= self.number
         except:
             # wrong key
             self.traceback = "The key " + self.attribute + "does not exist to the Backend Server for " + userID + "."
             return False
     # number range:
     elif self.numberTo and self.numberFrom:
         try:
             if self.operator == '=':
                 return self.numberTo <= int(obj['attributes'][self.attribute][0]) and \
                        self.numberFrom >= int(obj['attributes'][self.attribute][0])
             elif self.operator == '!=':
                 return self.numberTo <= int(obj['attributes'][self.attribute][0]) and \
                        self.numberFrom >= int(obj['attributes'][self.attribute][0])
         except:
             # wrong key
             self.traceback = "The key " + self.attribute + "does not exist to the Backend Server for " + userID + "."
             return False
     # not necessary:
     return False