~azzar1/unity/add-show-desktop-key

« back to all changes in this revision

Viewing changes to ivle/makeuser.py

  • Committer: matt.giuca
  • Date: 2009-01-14 10:10:12 UTC
  • mto: This revision was merged to the branch mainline in revision 1090.
  • Revision ID: svn-v3-trunk0:2b9c9e99-6f39-0410-b283-7f802c844ae2:branches%2Fstorm:1132
The new ivle.database.User class is now used in Request and usrmgt, which
    means it is now almost universally used in favour of ivle.user.User (now
    deprecated).

Noticeable change: The minor bug where the change to a user object in the
    database is not reflected in the user's session (eg. changing nick doesn't
    update title until log out).

ivle.dispatch:
    Session now contains 'login' (username string) rather than 'user' (full
        ivle.user.User object). This is a unicode string now.

    req.user is now a ivle.database.User object rather than an ivle.user.User
        object. This makes for a whole lot of really subtle differences, but
        largely conforms to the same interface. Note that strings must now all
        be unicode.

    login: Removed use of ivle.db. Now uses User object.

    html: Now handles unicode login and config options.

ivle.db: Removed update_user. Now replaced with Storm model.

ivle.database: Renamed has_cap back to hasCap (saved for later). Fixed small
    unicode bug.

ivle.makeuser.make_svn_auth now takes a store object.

usrmgt-server: Use new User class.

userservice: Now uses User class internally.
    get_user action now returns ISO 8601 date format, rather than a
        time tuple. (Wasn't being used).
    get_user action no longer transmits local_password (small security risk;
        note that it wasn't possible to see this for any user other than
        yourself unless admin).

ivle.util - added function object_to_dict.

Show diffs side-by-side

added added

removed removed

Lines of Context:
129
129
    os.rename(ivle.conf.svn_group_conf + ".new", ivle.conf.svn_group_conf)
130
130
    chown_to_webserver(ivle.conf.svn_group_conf)
131
131
 
132
 
def make_svn_auth(login, throw_on_error=True):
 
132
def make_svn_auth(store, login, throw_on_error=True):
133
133
    """Setup svn authentication for the given user.
 
134
       Uses the given DB store object. Does not commit to the db.
134
135
       FIXME: create local.auth entry
135
136
    """
136
137
    passwd = md5.new(uuid.uuid4().bytes).digest().encode('hex')
139
140
    else:
140
141
        create = "c"
141
142
 
142
 
    ivle.db.DB().update_user(login, svn_pass=passwd)
 
143
    user = ivle.database.User.get_by_login(store, login)
 
144
    user.svn_pass = unicode(passwd)
143
145
 
144
146
    res = os.system("htpasswd -%smb %s %s %s" % (create,
145
147
                                              ivle.conf.svn_auth_ivle,