Changeset 3363

Show
Ignore:
Timestamp:
03/31/08 17:20:59 (13 years ago)
Author:
jerome
Message:

Fixed encoding problems for LDAP.

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • pykota/trunk/pykota/storages/ldapstorage.py

    r3307 r3363  
    366366            user.Description = databaseToUnicode(fields.get("description", [None])[0]) 
    367367            user.Email = fields.get(self.info["usermail"], [None])[0] 
    368             user.LimitBy = fields.get("pykotaLimitBy", ["quota"])[0] 
     368            user.LimitBy = databaseToUnicode(fields.get("pykotaLimitBy", ["quota"])[0]) 
    369369            result = self.doSearch("(&(objectClass=pykotaAccountBalance)(|(pykotaUserName=%s)(%s=%s)))" % (username, self.info["balancerdn"], username), ["pykotaBalance", "pykotaLifeTimePaid", "pykotaPayments", "pykotaOverCharge"], base=self.info["balancebase"]) 
    370370            if not result : 
     
    414414            group.Name = fields.get("pykotaGroupName", [databaseToUnicode(groupname)])[0]  
    415415            group.Description = databaseToUnicode(fields.get("description", [None])[0]) 
    416             group.LimitBy = fields.get("pykotaLimitBy", ["quota"])[0] 
     416            group.LimitBy = databaseToUnicode(fields.get("pykotaLimitBy", ["quota"])[0]) 
    417417            group.AccountBalance = 0.0 
    418418            group.LifeTimePaid = 0.0 
     
    659659                    group.LimitBy = fields.get("pykotaLimitBy") 
    660660                    if group.LimitBy is not None : 
    661                         group.LimitBy = group.LimitBy[0] 
     661                        group.LimitBy = databaseToUnicode(group.LimitBy[0]) 
    662662                    else :     
    663                         group.LimitBy = "quota" 
     663                        group.LimitBy = u"quota" 
    664664                    group.AccountBalance = 0.0 
    665665                    group.LifeTimePaid = 0.0 
     
    746746                    user.ident = userid 
    747747                    user.Email = fields.get(self.info["usermail"], [None])[0] 
    748                     user.LimitBy = fields.get("pykotaLimitBy", ["quota"])[0] 
     748                    user.LimitBy = databaseToUnicode(fields.get("pykotaLimitBy", ["quota"])[0]) 
    749749                    user.Description = databaseToUnicode(fields.get("description", [""])[0])  
    750750                    uname = unicodeToDatabase(username) 
     
    812812                    group = StorageGroup(self, groupname) 
    813813                    group.ident = groupid 
    814                     group.Name = fields.get("pykotaGroupName", [databaseToUnicode(groupname)])[0]  
    815                     group.LimitBy = fields.get("pykotaLimitBy", ["quota"])[0] 
     814                    group.Name = fields.get("pykotaGroupName", [groupname])[0]  
     815                    group.LimitBy = databaseToUnicode(fields.get("pykotaLimitBy", ["quota"])[0]) 
    816816                    group.Description = databaseToUnicode(fields.get("description", [""])[0])  
    817817                    group.AccountBalance = 0.0 
     
    921921        newfields = { 
    922922                       "pykotaUserName" : uname, 
    923                        "pykotaLimitBy" : (user.LimitBy or "quota"), 
     923                       "pykotaLimitBy" : unicodeToDatabase(user.LimitBy or u"quota"), 
    924924                       "description" : unicodeToDatabase(user.Description or ""), 
    925925                       self.info["usermail"] : user.Email or "", 
     
    996996        newfields = {  
    997997                      "pykotaGroupName" : gname, 
    998                       "pykotaLimitBy" : (group.LimitBy or "quota"), 
     998                      "pykotaLimitBy" : unicodeToDatabase(group.LimitBy or u"quota"), 
    999999                      "description" : unicodeToDatabase(group.Description or "") 
    10001000                    }  
     
    11271127        """Saves the user to the database in a single operation.""" 
    11281128        newfields = { 
    1129                        "pykotaLimitBy" : (user.LimitBy or "quota"), 
     1129                       "pykotaLimitBy" : unicodeToDatabase(user.LimitBy or u"quota"), 
    11301130                       "description" : unicodeToDatabase(user.Description or ""),  
    11311131                       self.info["usermail"] : user.Email or "", 
     
    11421142        """Saves the group to the database in a single operation.""" 
    11431143        newfields = { 
    1144                        "pykotaLimitBy" : (group.LimitBy or "quota"), 
     1144                       "pykotaLimitBy" : unicodeToDatabase(group.LimitBy or u"quota"), 
    11451145                       "description" : unicodeToDatabase(group.Description or ""),  
    11461146                    }