[Pysvnmanager-svn] SF.net SVN: pysvnmanager:[32] trunk/pysvnmanager
Status: Alpha
Brought to you by:
jiangx
From: <ji...@us...> - 2008-07-30 15:05:01
|
Revision: 32 http://pysvnmanager.svn.sourceforge.net/pysvnmanager/?rev=32&view=rev Author: jiangx Date: 2008-07-30 15:05:05 +0000 (Wed, 30 Jul 2008) Log Message: ----------- Use Controller's __before__ method to check authz. Controller's __before__ call BaseClass's __before__ at the begining. Modified Paths: -------------- trunk/pysvnmanager/controllers/authz.py trunk/pysvnmanager/controllers/check.py trunk/pysvnmanager/controllers/logs.py trunk/pysvnmanager/controllers/role.py trunk/pysvnmanager/controllers/security.py trunk/pysvnmanager/templates/logs/index.mako Modified: trunk/pysvnmanager/controllers/authz.py =================================================================== --- trunk/pysvnmanager/controllers/authz.py 2008-07-30 11:04:34 UTC (rev 31) +++ trunk/pysvnmanager/controllers/authz.py 2008-07-30 15:05:05 UTC (rev 32) @@ -16,16 +16,12 @@ self.authz.login_as = self.login_as self.reposlist = self.authz.get_manageable_repos_list(self.login_as) - def __auth_failed(self): + def __before__(self, action): + super(AuthzController, self).__before__(action) if not self.reposlist: - return True - else: - return False + return redirect_to(h.url_for(controller='security', action='failed')) def index(self): - if self.__auth_failed(): - return render('/auth_failed.mako') - c.revision = self.authz.version c.reposlist = self.reposlist @@ -50,9 +46,6 @@ return render('/authz/index.mako') def init_repos_list(self): - if self.__auth_failed(): - return render('/auth_failed.mako') - total = 0; msg = '' @@ -69,9 +62,6 @@ return msg def repos_changed(self): - if self.__auth_failed(): - return render('/auth_failed.mako') - total = 0; msg = '' d = request.params @@ -94,9 +84,6 @@ return msg def path_changed(self): - if self.__auth_failed(): - return render('/auth_failed.mako') - total = 0; msg = '' @@ -120,9 +107,6 @@ return msg def save_authz(self): - if self.__auth_failed(): - return render('/auth_failed.mako') - d = request.params member_list = [] @@ -187,9 +171,6 @@ return msg def delete_authz(self): - if self.__auth_failed(): - return render('/auth_failed.mako') - d = request.params member_list = [] Modified: trunk/pysvnmanager/controllers/check.py =================================================================== --- trunk/pysvnmanager/controllers/check.py 2008-07-30 11:04:34 UTC (rev 31) +++ trunk/pysvnmanager/controllers/check.py 2008-07-30 15:05:05 UTC (rev 32) @@ -16,16 +16,12 @@ self.authz.login_as = self.login_as self.reposlist = self.authz.get_manageable_repos_list(self.login_as) - def __authz_failed(self): + def __before__(self, action): + super(CheckController, self).__before__(action) if not self.reposlist: - return True - else: - return False - + return redirect_to(h.url_for(controller='security', action='failed')) + def index(self): - if self.__authz_failed(): - return render('/auth_failed.mako') - c.reposlist = self.reposlist c.userlist = map(lambda x:x.uname, self.authz.grouplist) c.userlist.extend(map(lambda x:x.uname, self.authz.aliaslist)) @@ -34,9 +30,6 @@ return render('/check/index.mako') def access_map(self): - if self.__authz_failed(): - return render('/auth_failed.mako') - msg = "" d = request.params @@ -77,9 +70,6 @@ return msg def get_auth_path(self, repos=None, type=None, path=None): - if self.__authz_failed(): - return render('/auth_failed.mako') - total = 0; msg = '' d = request.params Modified: trunk/pysvnmanager/controllers/logs.py =================================================================== --- trunk/pysvnmanager/controllers/logs.py 2008-07-30 11:04:34 UTC (rev 31) +++ trunk/pysvnmanager/controllers/logs.py 2008-07-30 15:05:05 UTC (rev 32) @@ -14,25 +14,18 @@ self.login_as = session.get('user') self.rcslog = _rcs.RcsLog(cfg.authz_file) # Default logs per page is 10 - #self.rcslog.log_per_page = 10 - - def __auth_failed(self): - if self.authz.is_super_user(self.login_as): - return False - else: - return True + self.rcslog.log_per_page = 1 + def __before__(self, action): + super(LogsController, self).__before__(action) + if not self.authz.is_super_user(self.login_as): + return redirect_to(h.url_for(controller='security', action='failed')) + def index(self): - if self.__auth_failed(): - return render('/auth_failed.mako') - c.display = self.__get_log_display(1) return render('/logs/index.mako') def paginate(self): - if self.__auth_failed(): - return render('/auth_failed.mako') - d = request.params page = int(d.get('page', '1')) return self.__get_log_display(page) @@ -44,8 +37,9 @@ return "" paginate = self.__get_paginate(current) - buff = '<span>%s</span>' % paginate + buff = '<div>%s</div>' % paginate buff +=''' +<div> <table> <tr> <th>%(rev)s</th> @@ -70,8 +64,8 @@ 'why' : logs[i].get('log',''), } buff += ''' -<span>%s</span> -</table>''' % paginate +</table></div> +<div>%s</div>''' % paginate return buff @@ -90,16 +84,24 @@ sep = " " buff = _("Page: ") - for i in range(1, total_page+1): + + i=1 + while True: + if i > total_page: + break if i == current: buff += '%d%s' % (i, sep) + i+=1 elif i == 1 or i == total_page or i == current-1 or i == current+1: buff += '%s%s' % (link(i), sep) + i+=1 elif i < current-1: - buff += '...' + buff += '...%s' % sep i = current-1 elif i > current+1: - buff += '...' + buff += '...%s' % sep i = total_page + else: + i+=1 return buff \ No newline at end of file Modified: trunk/pysvnmanager/controllers/role.py =================================================================== --- trunk/pysvnmanager/controllers/role.py 2008-07-30 11:04:34 UTC (rev 31) +++ trunk/pysvnmanager/controllers/role.py 2008-07-30 15:05:05 UTC (rev 32) @@ -18,16 +18,12 @@ self.userlist = map(lambda x:x.uname, self.authz.userlist) self.grouplist = map(lambda x:x.uname, self.authz.grouplist) - def __auth_failed(self): - if self.authz.is_super_user(self.login_as): - return False - else: - return True + def __before__(self, action): + super(RoleController, self).__before__(action) + if not self.authz.is_super_user(self.login_as): + return redirect_to(h.url_for(controller='security', action='failed')) def index(self): - if self.__auth_failed(): - return render('/auth_failed.mako') - c.revision = self.authz.version c.aliaslist = self.aliaslist c.userlist = self.userlist @@ -35,9 +31,6 @@ return render('/role/index.mako') def get_role_info(self, role=None): - if self.__auth_failed(): - return render('/auth_failed.mako') - members_count = 0; msg = '' if not role: @@ -91,9 +84,6 @@ return msg def save_group(self): - if self.__auth_failed(): - return render('/auth_failed.mako') - d = request.params member_list = [] msg = "" @@ -125,9 +115,6 @@ return msg def delete_group(self): - if self.__auth_failed(): - return render('/auth_failed.mako') - d = request.params rolename = d.get('role') revision = d.get('revision', self.authz.version) @@ -149,9 +136,6 @@ return msg def save_alias(self): - if self.__auth_failed(): - return render('/auth_failed.mako') - d = request.params aliasname = d.get('aliasname') username = d.get('username') @@ -173,9 +157,6 @@ return msg def delete_alias(self): - if self.__auth_failed(): - return render('/auth_failed.mako') - d = request.params aliasname = d.get('aliasname') revision = d.get('revision', self.authz.version) Modified: trunk/pysvnmanager/controllers/security.py =================================================================== --- trunk/pysvnmanager/controllers/security.py 2008-07-30 11:04:34 UTC (rev 31) +++ trunk/pysvnmanager/controllers/security.py 2008-07-30 15:05:05 UTC (rev 32) @@ -54,3 +54,6 @@ del session['user'] session.save() redirect_to(h.url_for(controller="security")) + + def failed(self): + return render('/auth_failed.mako') \ No newline at end of file Modified: trunk/pysvnmanager/templates/logs/index.mako =================================================================== --- trunk/pysvnmanager/templates/logs/index.mako 2008-07-30 11:04:34 UTC (rev 31) +++ trunk/pysvnmanager/templates/logs/index.mako 2008-07-30 15:05:05 UTC (rev 32) @@ -16,7 +16,8 @@ {asynchronous:true, evalScripts:true, method:'post', onComplete: function(request) - {hideNoticesPopup();}, + {hideNoticesPopup(); + new Effect.Highlight("logs",{duration:1});}, parameters:params}); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |