Changeset 24
- Timestamp:
- 2008年07月29日 22时43分59秒 (4 years ago)
- Location:
- trunk
- Files:
-
- 2 added
- 10 modified
-
pysvnmanager/controllers/authz.py (modified) (3 diffs)
-
pysvnmanager/controllers/role.py (modified) (5 diffs)
-
pysvnmanager/controllers/security.py (modified) (2 diffs)
-
pysvnmanager/i18n/en/LC_MESSAGES/pysvnmanager.po (modified) (9 diffs)
-
pysvnmanager/i18n/pysvnmanager.pot (modified) (8 diffs)
-
pysvnmanager/i18n/zh/LC_MESSAGES/pysvnmanager.po (modified) (8 diffs)
-
pysvnmanager/lib/base.py (modified) (1 diff)
-
pysvnmanager/model/rcsbackup.py (added)
-
pysvnmanager/model/svnauthz.py (modified) (4 diffs)
-
pysvnmanager/tests/functional/test_role.py (modified) (1 diff)
-
pysvnmanager/tests/test_rcs_backup.py (added)
-
setup.cfg (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/pysvnmanager/controllers/authz.py
r22 r24 146 146 else: 147 147 isAddModule = False 148 149 log_message = _(u"User %(user)s changed authz rules. (rev:%(rev)s)") % \ 150 {'user':session.get('user'), 'rev': revision} 148 151 149 152 try: … … 173 176 if module: 174 177 self.authz.set_rules(reposname, path, rules); 175 self.authz.save(revision )176 except Exception, (e,):177 msg = unicode(e).encode('utf-8')178 179 log.info( _(u"User %(user)s changed authz rules. (rev:%(rev)s,%(msg)s)") % \180 {'user':session.get('user'), 'rev': revision, 'msg': msg})178 self.authz.save(revision, comment=log_message) 179 except Exception, e: 180 msg = get_unicode(e[0]) 181 182 log.info(log_message) 183 if msg: log.error(msg) 181 184 182 185 return msg … … 195 198 revision = d.get('revision', self.authz.version) 196 199 200 log_message = _(u"User %(user)s delete authz rules. (rev:%(rev)s)") % \ 201 {'user':session.get('user'), 'rev': revision} 197 202 try: 198 203 self.authz.del_module(reposname, path); 199 self.authz.save(revision )200 except Exception, (e,):201 msg = unicode(e).encode('utf-8')202 203 log.info( _(u"User %(user)s delete authz rules. (rev:%(rev)s,%(msg)s)") % \204 {'user':session.get('user'), 'rev': revision, 'msg': msg})205 206 return msg 207 204 self.authz.save(revision, comment=log_message) 205 except Exception, e: 206 msg = get_unicode(e[0]) 207 208 log.info(log_message) 209 if msg: log.error(msg) 210 211 return msg 212 -
trunk/pysvnmanager/controllers/role.py
r22 r24 13 13 self.authz = SvnAuthz(cfg.authz_file) 14 14 self.login_as = session.get('user') 15 # Used as checked in user to rcs file. 16 self.authz.login_as = self.login_as 15 17 self.aliaslist = map(lambda x:x.uname, self.authz.aliaslist) 16 18 self.userlist = map(lambda x:x.uname, self.authz.userlist) … … 109 111 member_list.extend(map(lambda x: x.strip(), members.split(','))) 110 112 113 log_message = _(u"User %(user)s changed group: %(grp)s. (rev:%(rev)s)") % \ 114 {'user':session.get('user'), 'grp': rolename, 'rev': revision} 115 111 116 try: 112 117 self.authz.set_group(rolename, member_list, autodrop=autodrop) 113 self.authz.save(revision )114 except Exception, (e,):115 msg = unicode(e)118 self.authz.save(revision, comment=log_message) 119 except Exception, e: 120 msg = get_unicode(e[0]) 116 121 117 log.info( _(u"User %(user)s changed group: %(grp)s. (rev:%(rev)s,%(msg)s)") % \118 {'user':session.get('user'), 'grp': rolename, 'rev': revision, 'msg': msg})122 log.info(log_message) 123 if msg: log.error(msg) 119 124 120 125 return msg … … 128 133 revision = d.get('revision', self.authz.version) 129 134 msg = '' 135 136 log_message = _(u"User %(user)s delete group: %(grp)s. (rev:%(rev)s)") % \ 137 {'user':session.get('user'), 'grp': rolename, 'rev': revision} 138 130 139 if rolename: 131 140 try: 132 141 self.authz.del_group(rolename) 133 self.authz.save(revision )134 except Exception, (e,):135 msg = unicode(e)142 self.authz.save(revision, comment=log_message) 143 except Exception, e: 144 msg = get_unicode(e[0]) 136 145 137 log.info( _(u"User %(user)s delete group: %(grp)s. (rev:%(rev)s,%(msg)s)") % \138 {'user':session.get('user'), 'grp': rolename, 'rev': revision, 'msg': msg})146 log.info(log_message) 147 if msg: log.error(msg) 139 148 140 149 return msg … … 149 158 revision = d.get('revision', self.authz.version) 150 159 msg = "" 160 161 log_message = _(u"User %(user)s changed alias: %(alias)s. (rev:%(rev)s)") % \ 162 {'user':session.get('user'), 'alias': aliasname, 'rev': revision} 163 151 164 try: 152 165 self.authz.add_alias(aliasname, username) 153 self.authz.save(revision )154 except Exception, (e,):155 msg = unicode(e)166 self.authz.save(revision, comment=log_message) 167 except Exception, e: 168 msg = get_unicode(e[0]) 156 169 157 log.info( _(u"User %(user)s changed alias: %(alias)s. (rev:%(rev)s,%(msg)s)") % \158 {'user':session.get('user'), 'alias': aliasname, 'rev': revision, 'msg': msg})170 log.info(log_message) 171 if msg: log.error(msg) 159 172 160 173 return msg … … 168 181 revision = d.get('revision', self.authz.version) 169 182 msg = '' 183 184 log_message = _(u"User %(user)s delete alias: %(alias)s. (rev:%(rev)s,%(msg)s)") % \ 185 {'user':session.get('user'), 'alias': aliasname, 'rev': revision, 'msg': msg} 186 170 187 if aliasname: 171 188 try: 172 189 self.authz.del_alias(aliasname) 173 self.authz.save(revision )174 except Exception, (e,):175 msg = unicode(e)190 self.authz.save(revision, comment=log_message) 191 except Exception, e: 192 msg = get_unicode(e[0]) 176 193 177 log.info( _(u"User %(user)s delete alias: %(alias)s. (rev:%(rev)s,%(msg)s)") % \178 {'user':session.get('user'), 'alias': aliasname, 'rev': revision, 'msg': msg})194 log.info(log_message) 195 if msg: log.error(msg) 179 196 180 197 return msg -
trunk/pysvnmanager/controllers/security.py
r22 r24 32 32 if auth_passed: 33 33 session['user'] = username 34 log.info(_( "User %s logged in") % session['user'])34 log.info(_(u"User %s logged in") % session['user']) 35 35 session.save() 36 36 … … 43 43 session.clear() 44 44 session.save() 45 c.login_message = _( "Login failed for user: %s") % username45 c.login_message = _(u"Login failed for user: %s") % username 46 46 return render('/login/login.mako') 47 47 -
trunk/pysvnmanager/i18n/en/LC_MESSAGES/pysvnmanager.po
r23 r24 10 10 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" 11 11 "POT-Creation-Date: 2008-07-03 22:14+0800\n" 12 "PO-Revision-Date: 2008-07-2 8 09:59+0800\n"12 "PO-Revision-Date: 2008-07-29 17:27+0800\n" 13 13 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" 14 14 "Language-Team: en <LL@li.org>\n" … … 37 37 msgstr "" 38 38 39 #: pysvnmanager/controllers/authz.py:38 pysvnmanager/controllers/role.py:5 540 #: pysvnmanager/controllers/role.py:7 539 #: pysvnmanager/controllers/authz.py:38 pysvnmanager/controllers/role.py:57 40 #: pysvnmanager/controllers/role.py:77 41 41 #: pysvnmanager/templates/authz/index.mako:155 42 42 #: pysvnmanager/templates/check/index.mako:17 … … 48 48 msgstr "" 49 49 50 #: pysvnmanager/controllers/authz.py:41 pysvnmanager/controllers/role.py:6 051 #: pysvnmanager/controllers/role.py:7 750 #: pysvnmanager/controllers/authz.py:41 pysvnmanager/controllers/role.py:62 51 #: pysvnmanager/controllers/role.py:79 52 52 #: pysvnmanager/templates/authz/index.mako:157 53 53 #: pysvnmanager/templates/check/index.mako:19 … … 60 60 61 61 #: pysvnmanager/controllers/authz.py:59 pysvnmanager/controllers/authz.py:82 62 #: pysvnmanager/controllers/check.py:91 pysvnmanager/controllers/role.py: 4862 #: pysvnmanager/controllers/check.py:91 pysvnmanager/controllers/role.py:50 63 63 #: pysvnmanager/templates/check/index.mako:9 64 64 #: pysvnmanager/templates/check/index.mako:23 … … 68 68 msgstr "" 69 69 70 #: pysvnmanager/controllers/authz.py:155 70 #: pysvnmanager/controllers/authz.py:149 71 #, python-format 72 msgid "User %(user)s changed authz rules. (rev:%(rev)s)" 73 msgstr "" 74 75 #: pysvnmanager/controllers/authz.py:158 71 76 #, python-format 72 77 msgid "Repository %s not exist." 73 78 msgstr "" 74 79 75 #: pysvnmanager/controllers/authz.py:16 380 #: pysvnmanager/controllers/authz.py:166 76 81 #, python-format 77 82 msgid "Module %s not exist." 78 83 msgstr "" 79 84 80 #: pysvnmanager/controllers/authz.py:1 6985 #: pysvnmanager/controllers/authz.py:172 81 86 msgid "You can not delete yourself from admin list." 82 87 msgstr "" 83 88 84 #: pysvnmanager/controllers/authz.py:179 85 #, python-format 86 msgid "User %(user)s changed authz rules. (rev:%(rev)s,%(msg)s)" 87 msgstr "" 88 89 #: pysvnmanager/controllers/authz.py:203 90 #, python-format 91 msgid "User %(user)s delete authz rules. (rev:%(rev)s,%(msg)s)" 89 #: pysvnmanager/controllers/authz.py:200 90 #, python-format 91 msgid "User %(user)s delete authz rules. (rev:%(rev)s)" 92 92 msgstr "" 93 93 … … 97 97 msgstr "" 98 98 99 #: pysvnmanager/controllers/role.py:11 7100 #, python-format 101 msgid "User %(user)s changed group: %(grp)s. (rev:%(rev)s ,%(msg)s)"102 msgstr "" 103 104 #: pysvnmanager/controllers/role.py:13 7105 #, python-format 106 msgid "User %(user)s delete group: %(grp)s. (rev:%(rev)s ,%(msg)s)"107 msgstr "" 108 109 #: pysvnmanager/controllers/role.py:1 57110 #, python-format 111 msgid "User %(user)s changed alias: %(alias)s. (rev:%(rev)s ,%(msg)s)"112 msgstr "" 113 114 #: pysvnmanager/controllers/role.py:1 7799 #: pysvnmanager/controllers/role.py:113 100 #, python-format 101 msgid "User %(user)s changed group: %(grp)s. (rev:%(rev)s)" 102 msgstr "" 103 104 #: pysvnmanager/controllers/role.py:136 105 #, python-format 106 msgid "User %(user)s delete group: %(grp)s. (rev:%(rev)s)" 107 msgstr "" 108 109 #: pysvnmanager/controllers/role.py:161 110 #, python-format 111 msgid "User %(user)s changed alias: %(alias)s. (rev:%(rev)s)" 112 msgstr "" 113 114 #: pysvnmanager/controllers/role.py:184 115 115 #, python-format 116 116 msgid "User %(user)s delete alias: %(alias)s. (rev:%(rev)s,%(msg)s)" … … 132 132 msgstr "" 133 133 134 #: pysvnmanager/model/svnauthz.py: 59134 #: pysvnmanager/model/svnauthz.py:61 135 135 msgid "Name is not given." 136 136 msgstr "" 137 137 138 #: pysvnmanager/model/svnauthz.py:6 1138 #: pysvnmanager/model/svnauthz.py:63 139 139 msgid "Name is not string." 140 140 msgstr "" 141 141 142 #: pysvnmanager/model/svnauthz.py:6 5142 #: pysvnmanager/model/svnauthz.py:67 143 143 #, python-format 144 144 msgid "Name (%s) contains invalid characters." 145 145 msgstr "" 146 146 147 #: pysvnmanager/model/svnauthz.py:47 3147 #: pysvnmanager/model/svnauthz.py:475 148 148 #, python-format 149 149 msgid "Recursive group membership for %s" 150 150 msgstr "" 151 151 152 #: pysvnmanager/model/svnauthz.py:56 7152 #: pysvnmanager/model/svnauthz.py:569 153 153 #, python-format 154 154 msgid "Not a valid username: %s" 155 155 msgstr "" 156 156 157 #: pysvnmanager/model/svnauthz.py:68 4157 #: pysvnmanager/model/svnauthz.py:686 158 158 #, python-format 159 159 msgid "Group %s is referenced by group %s." 160 160 msgstr "" 161 161 162 #: pysvnmanager/model/svnauthz.py:12 24162 #: pysvnmanager/model/svnauthz.py:1232 163 163 msgid "Update failed! You are working on a out-of-date revision." 164 164 msgstr "" 165 165 166 #: pysvnmanager/model/svnauthz.py:14 58 pysvnmanager/model/svnauthz.py:1465167 #: pysvnmanager/model/svnauthz.py:14 69166 #: pysvnmanager/model/svnauthz.py:1486 pysvnmanager/model/svnauthz.py:1493 167 #: pysvnmanager/model/svnauthz.py:1497 168 168 #, python-format 169 169 msgid "Unknown rule format: %s" 170 170 msgstr "" 171 171 172 #: pysvnmanager/model/svnauthz.py:1 483172 #: pysvnmanager/model/svnauthz.py:1511 173 173 #, python-format 174 174 msgid "No module exist for %s:%s" 175 175 msgstr "" 176 176 177 #: pysvnmanager/model/svnauthz.py:1 593177 #: pysvnmanager/model/svnauthz.py:1621 178 178 #, python-format 179 179 msgid "Alias %s is referenced by group %s." 180 180 msgstr "" 181 181 182 #: pysvnmanager/model/svnauthz.py:16 05182 #: pysvnmanager/model/svnauthz.py:1633 183 183 #, python-format 184 184 msgid "%s is referenced by [%s]." 185 185 msgstr "" 186 186 187 #: pysvnmanager/model/svnauthz.py:17 42187 #: pysvnmanager/model/svnauthz.py:1770 188 188 #, python-format 189 189 msgid "User %(username)s has Full (RW) rights for module %(repos)s:%(path)s" 190 190 msgstr "" 191 191 192 #: pysvnmanager/model/svnauthz.py:17 44192 #: pysvnmanager/model/svnauthz.py:1772 193 193 #, python-format 194 194 msgid "User %(username)s has ReadOnly (RO) rights for module %(repos)s:%(path)s" 195 195 msgstr "" 196 196 197 #: pysvnmanager/model/svnauthz.py:17 46197 #: pysvnmanager/model/svnauthz.py:1774 198 198 #, python-format 199 199 msgid "User %(username)s can *NOT* access to module %(repos)s:%(path)s" 200 200 msgstr "" 201 201 202 #: pysvnmanager/model/svnauthz.py:1 784202 #: pysvnmanager/model/svnauthz.py:1812 203 203 #, python-format 204 204 msgid "" … … 212 212 msgstr "" 213 213 214 #: pysvnmanager/model/svnauthz.py:18 03214 #: pysvnmanager/model/svnauthz.py:1831 215 215 #, python-format 216 216 msgid "" … … 517 517 msgstr "" 518 518 519 #~ msgid "User %(user)s changed authz rules. (rev:%(rev)s,%(msg)s)" 520 #~ msgstr "" 521 522 #~ msgid "User %(user)s delete authz rules. (rev:%(rev)s,%(msg)s)" 523 #~ msgstr "" 524 525 #~ msgid "User %(user)s changed group: %(grp)s. (rev:%(rev)s,%(msg)s)" 526 #~ msgstr "" 527 528 #~ msgid "User %(user)s delete group: %(grp)s. (rev:%(rev)s,%(msg)s)" 529 #~ msgstr "" 530 531 #~ msgid "User %(user)s changed alias: %(alias)s. (rev:%(rev)s,%(msg)s)" 532 #~ msgstr "" 533 -
trunk/pysvnmanager/i18n/pysvnmanager.pot
r23 r24 9 9 "Project-Id-Version: pySvnManager 0.1.2\n" 10 10 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" 11 "POT-Creation-Date: 2008-07-2 8 09:59+0800\n"11 "POT-Creation-Date: 2008-07-29 17:27+0800\n" 12 12 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" 13 13 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" … … 33 33 msgstr "" 34 34 35 #: pysvnmanager/controllers/authz.py:38 pysvnmanager/controllers/role.py:5 536 #: pysvnmanager/controllers/role.py:7 5pysvnmanager/templates/authz/index.mako:15535 #: pysvnmanager/controllers/authz.py:38 pysvnmanager/controllers/role.py:57 36 #: pysvnmanager/controllers/role.py:77 pysvnmanager/templates/authz/index.mako:155 37 37 #: pysvnmanager/templates/check/index.mako:17 38 38 #: pysvnmanager/templates/role/index.mako:18 … … 43 43 msgstr "" 44 44 45 #: pysvnmanager/controllers/authz.py:41 pysvnmanager/controllers/role.py:6 046 #: pysvnmanager/controllers/role.py:7 7pysvnmanager/templates/authz/index.mako:15745 #: pysvnmanager/controllers/authz.py:41 pysvnmanager/controllers/role.py:62 46 #: pysvnmanager/controllers/role.py:79 pysvnmanager/templates/authz/index.mako:157 47 47 #: pysvnmanager/templates/check/index.mako:19 48 48 #: pysvnmanager/templates/role/index.mako:23 … … 54 54 55 55 #: pysvnmanager/controllers/authz.py:59 pysvnmanager/controllers/authz.py:82 56 #: pysvnmanager/controllers/check.py:91 pysvnmanager/controllers/role.py: 4856 #: pysvnmanager/controllers/check.py:91 pysvnmanager/controllers/role.py:50 57 57 #: pysvnmanager/templates/check/index.mako:9 58 58 #: pysvnmanager/templates/check/index.mako:23 … … 62 62 msgstr "" 63 63 64 #: pysvnmanager/controllers/authz.py:155 64 #: pysvnmanager/controllers/authz.py:149 65 #, python-format 66 msgid "User %(user)s changed authz rules. (rev:%(rev)s)" 67 msgstr "" 68 69 #: pysvnmanager/controllers/authz.py:158 65 70 #, python-format 66 71 msgid "Repository %s not exist." 67 72 msgstr "" 68 73 69 #: pysvnmanager/controllers/authz.py:16 374 #: pysvnmanager/controllers/authz.py:166 70 75 #, python-format 71 76 msgid "Module %s not exist." 72 77 msgstr "" 73 78 74 #: pysvnmanager/controllers/authz.py:1 6979 #: pysvnmanager/controllers/authz.py:172 75 80 msgid "You can not delete yourself from admin list." 76 81 msgstr "" 77 82 78 #: pysvnmanager/controllers/authz.py:179 79 #, python-format 80 msgid "User %(user)s changed authz rules. (rev:%(rev)s,%(msg)s)" 81 msgstr "" 82 83 #: pysvnmanager/controllers/authz.py:203 84 #, python-format 85 msgid "User %(user)s delete authz rules. (rev:%(rev)s,%(msg)s)" 83 #: pysvnmanager/controllers/authz.py:200 84 #, python-format 85 msgid "User %(user)s delete authz rules. (rev:%(rev)s)" 86 86 msgstr "" 87 87 … … 90 90 msgstr "" 91 91 92 #: pysvnmanager/controllers/role.py:11 793 #, python-format 94 msgid "User %(user)s changed group: %(grp)s. (rev:%(rev)s ,%(msg)s)"95 msgstr "" 96 97 #: pysvnmanager/controllers/role.py:13 798 #, python-format 99 msgid "User %(user)s delete group: %(grp)s. (rev:%(rev)s ,%(msg)s)"100 msgstr "" 101 102 #: pysvnmanager/controllers/role.py:1 57103 #, python-format 104 msgid "User %(user)s changed alias: %(alias)s. (rev:%(rev)s ,%(msg)s)"105 msgstr "" 106 107 #: pysvnmanager/controllers/role.py:1 7792 #: pysvnmanager/controllers/role.py:113 93 #, python-format 94 msgid "User %(user)s changed group: %(grp)s. (rev:%(rev)s)" 95 msgstr "" 96 97 #: pysvnmanager/controllers/role.py:136 98 #, python-format 99 msgid "User %(user)s delete group: %(grp)s. (rev:%(rev)s)" 100 msgstr "" 101 102 #: pysvnmanager/controllers/role.py:161 103 #, python-format 104 msgid "User %(user)s changed alias: %(alias)s. (rev:%(rev)s)" 105 msgstr "" 106 107 #: pysvnmanager/controllers/role.py:184 108 108 #, python-format 109 109 msgid "User %(user)s delete alias: %(alias)s. (rev:%(rev)s,%(msg)s)" … … 125 125 msgstr "" 126 126 127 #: pysvnmanager/model/svnauthz.py: 59127 #: pysvnmanager/model/svnauthz.py:61 128 128 msgid "Name is not given." 129 129 msgstr "" 130 130 131 #: pysvnmanager/model/svnauthz.py:6 1131 #: pysvnmanager/model/svnauthz.py:63 132 132 msgid "Name is not string." 133 133 msgstr "" 134 134 135 #: pysvnmanager/model/svnauthz.py:6 5135 #: pysvnmanager/model/svnauthz.py:67 136 136 #, python-format 137 137 msgid "Name (%s) contains invalid characters." 138 138 msgstr "" 139 139 140 #: pysvnmanager/model/svnauthz.py:47 3140 #: pysvnmanager/model/svnauthz.py:475 141 141 #, python-format 142 142 msgid "Recursive group membership for %s" 143 143 msgstr "" 144 144 145 #: pysvnmanager/model/svnauthz.py:56 7145 #: pysvnmanager/model/svnauthz.py:569 146 146 #, python-format 147 147 msgid "Not a valid username: %s" 148 148 msgstr "" 149 149 150 #: pysvnmanager/model/svnauthz.py:68 4150 #: pysvnmanager/model/svnauthz.py:686 151 151 #, python-format 152 152 msgid "Group %s is referenced by group %s." 153 153 msgstr "" 154 154 155 #: pysvnmanager/model/svnauthz.py:12 24155 #: pysvnmanager/model/svnauthz.py:1232 156 156 msgid "Update failed! You are working on a out-of-date revision." 157 157 msgstr "" 158 158 159 #: pysvnmanager/model/svnauthz.py:14 58 pysvnmanager/model/svnauthz.py:1465160 #: pysvnmanager/model/svnauthz.py:14 69159 #: pysvnmanager/model/svnauthz.py:1486 pysvnmanager/model/svnauthz.py:1493 160 #: pysvnmanager/model/svnauthz.py:1497 161 161 #, python-format 162 162 msgid "Unknown rule format: %s" 163 163 msgstr "" 164 164 165 #: pysvnmanager/model/svnauthz.py:1 483165 #: pysvnmanager/model/svnauthz.py:1511 166 166 #, python-format 167 167 msgid "No module exist for %s:%s" 168 168 msgstr "" 169 169 170 #: pysvnmanager/model/svnauthz.py:1 593170 #: pysvnmanager/model/svnauthz.py:1621 171 171 #, python-format 172 172 msgid "Alias %s is referenced by group %s." 173 173 msgstr "" 174 174 175 #: pysvnmanager/model/svnauthz.py:16 05175 #: pysvnmanager/model/svnauthz.py:1633 176 176 #, python-format 177 177 msgid "%s is referenced by [%s]." 178 178 msgstr "" 179 179 180 #: pysvnmanager/model/svnauthz.py:17 42180 #: pysvnmanager/model/svnauthz.py:1770 181 181 #, python-format 182 182 msgid "User %(username)s has Full (RW) rights for module %(repos)s:%(path)s" 183 183 msgstr "" 184 184 185 #: pysvnmanager/model/svnauthz.py:17 44185 #: pysvnmanager/model/svnauthz.py:1772 186 186 #, python-format 187 187 msgid "User %(username)s has ReadOnly (RO) rights for module %(repos)s:%(path)s" 188 188 msgstr "" 189 189 190 #: pysvnmanager/model/svnauthz.py:17 46190 #: pysvnmanager/model/svnauthz.py:1774 191 191 #, python-format 192 192 msgid "User %(username)s can *NOT* access to module %(repos)s:%(path)s" 193 193 msgstr "" 194 194 195 #: pysvnmanager/model/svnauthz.py:1 784195 #: pysvnmanager/model/svnauthz.py:1812 196 196 #, python-format 197 197 msgid "" … … 205 205 msgstr "" 206 206 207 #: pysvnmanager/model/svnauthz.py:18 03207 #: pysvnmanager/model/svnauthz.py:1831 208 208 #, python-format 209 209 msgid "" -
trunk/pysvnmanager/i18n/zh/LC_MESSAGES/pysvnmanager.po
r23 r24 9 9 msgid "" 10 10 msgstr "" 11 "Project-Id-Version: pysvnmanager\n"11 "Project-Id-Version: pysvnmanager\n" 12 12 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" 13 13 "POT-Creation-Date: 2008-07-03 22:14+0800\n" 14 "PO-Revision-Date: 2008-07-2 8 09:59+0800\n"14 "PO-Revision-Date: 2008-07-29 17:29+0800\n" 15 15 "Last-Translator: Jiang Xin <worldhello.net@gmail.com>\n" 16 "Language-Team: <zh@li.org>\n"16 "Language-Team: <zh@li.org>\n" 17 17 "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION\n" 18 18 "MIME-Version: 1.0\n" 19 "Content-Type: text/plain; charset= utf-8\n"19 "Content-Type: text/plain; charset=UTF-8\n" 20 20 "Content-Transfer-Encoding: 8bit\n" 21 21 "Generated-By: Babel 0.9.2\n" 22 "X-Generator: KBabel 1.11.4\n" 22 23 23 24 #: pysvnmanager/controllers/authz.py:31 … … 39 40 msgstr "匿名用户" 40 41 41 #: pysvnmanager/controllers/authz.py:38 pysvnmanager/controllers/role.py:5 542 #: pysvnmanager/controllers/role.py:7 542 #: pysvnmanager/controllers/authz.py:38 pysvnmanager/controllers/role.py:57 43 #: pysvnmanager/controllers/role.py:77 43 44 #: pysvnmanager/templates/authz/index.mako:155 44 45 #: pysvnmanager/templates/check/index.mako:17 … … 50 51 msgstr "团队:" 51 52 52 #: pysvnmanager/controllers/authz.py:41 pysvnmanager/controllers/role.py:6 053 #: pysvnmanager/controllers/role.py:7 753 #: pysvnmanager/controllers/authz.py:41 pysvnmanager/controllers/role.py:62 54 #: pysvnmanager/controllers/role.py:79 54 55 #: pysvnmanager/templates/authz/index.mako:157 55 56 #: pysvnmanager/templates/check/index.mako:19 … … 62 63 63 64 #: pysvnmanager/controllers/authz.py:59 pysvnmanager/controllers/authz.py:82 64 #: pysvnmanager/controllers/check.py:91 pysvnmanager/controllers/role.py: 4865 #: pysvnmanager/controllers/check.py:91 pysvnmanager/controllers/role.py:50 65 66 #: pysvnmanager/templates/check/index.mako:9 66 67 #: pysvnmanager/templates/check/index.mako:23 … … 70 71 msgstr "请选择..." 71 72 72 #: pysvnmanager/controllers/authz.py:155 73 #: pysvnmanager/controllers/authz.py:149 74 #, python-format 75 #| msgid "User %(user)s changed authz rules. (rev:%(rev)s,%(msg)s)" 76 msgid "User %(user)s changed authz rules. (rev:%(rev)s)" 77 msgstr "用户 %(user)s 修改了授权策略。(rev:%(rev)s)" 78 79 #: pysvnmanager/controllers/authz.py:158 73 80 #, python-format 74 81 msgid "Repository %s not exist." 75 82 msgstr "版本库 %s 不存在。" 76 83 77 #: pysvnmanager/controllers/authz.py:16 384 #: pysvnmanager/controllers/authz.py:166 78 85 #, python-format 79 86 msgid "Module %s not exist." 80 87 msgstr "模组 %s 不存在。" 81 88 82 #: pysvnmanager/controllers/authz.py:1 6989 #: pysvnmanager/controllers/authz.py:172 83 90 msgid "You can not delete yourself from admin list." 84 91 msgstr "您不能将自己从管理员列表中删除。" 85 92 86 #: pysvnmanager/controllers/authz.py:179 87 #, python-format 88 msgid "User %(user)s changed authz rules. (rev:%(rev)s,%(msg)s)" 89 msgstr "用户 %(user)s 修改了授权策略。(rev:%(rev)s,%(msg)s)" 90 91 #: pysvnmanager/controllers/authz.py:203 92 #, python-format 93 msgid "User %(user)s delete authz rules. (rev:%(rev)s,%(msg)s)" 94 msgstr "用户 %(user)s 删除了授权策略。(rev:%(rev)s,%(msg)s)" 93 #: pysvnmanager/controllers/authz.py:200 94 #, python-format 95 #| msgid "User %(user)s delete authz rules. (rev:%(rev)s,%(msg)s)" 96 msgid "User %(user)s delete authz rules. (rev:%(rev)s)" 97 msgstr "用户 %(user)s 删除了授权策略。(rev:%(rev)s)" 95 98 96 99 #: pysvnmanager/controllers/check.py:68 … … 99 102 msgstr "没有权限。" 100 103 101 #: pysvnmanager/controllers/role.py:117 102 #, python-format 103 msgid "User %(user)s changed group: %(grp)s. (rev:%(rev)s,%(msg)s)" 104 msgstr "用户 %(user)s 修改用户组: %(grp)s。(rev:%(rev)s,%(msg)s)" 105 106 #: pysvnmanager/controllers/role.py:137 107 #, python-format 108 msgid "User %(user)s delete group: %(grp)s. (rev:%(rev)s,%(msg)s)" 109 msgstr "用户 %(user)s 删除用户组: %(grp)s。(rev:%(rev)s,%(msg)s)" 110 111 #: pysvnmanager/controllers/role.py:157 112 #, python-format 113 msgid "User %(user)s changed alias: %(alias)s. (rev:%(rev)s,%(msg)s)" 114 msgstr "用户 %(user)s 修改别名: %(alias)s。(rev:%(rev)s,%(msg)s)" 115 116 #: pysvnmanager/controllers/role.py:177 104 #: pysvnmanager/controllers/role.py:113 105 #, python-format 106 #| msgid "User %(user)s changed group: %(grp)s. (rev:%(rev)s,%(msg)s)" 107 msgid "User %(user)s changed group: %(grp)s. (rev:%(rev)s)" 108 msgstr "用户 %(user)s 修改用户组: %(grp)s。(rev:%(rev)s)" 109 110 #: pysvnmanager/controllers/role.py:136 111 #, python-format 112 #| msgid "User %(user)s delete group: %(grp)s. (rev:%(rev)s,%(msg)s)" 113 msgid "User %(user)s delete group: %(grp)s. (rev:%(rev)s)" 114 msgstr "用户 %(user)s 删除用户组: %(grp)s。(rev:%(rev)s)" 115 116 #: pysvnmanager/controllers/role.py:161 117 #, python-format 118 #| msgid "User %(user)s changed alias: %(alias)s. (rev:%(rev)s,%(msg)s)" 119 msgid "User %(user)s changed alias: %(alias)s. (rev:%(rev)s)" 120 msgstr "用户 %(user)s 修改别名: %(alias)s。(rev:%(rev)s)" 121 122 #: pysvnmanager/controllers/role.py:184 117 123 #, python-format 118 124 msgid "User %(user)s delete alias: %(alias)s. (rev:%(rev)s,%(msg)s)" … … 134 140 msgstr "用户 %s 登出" 135 141 136 #: pysvnmanager/model/svnauthz.py: 59142 #: pysvnmanager/model/svnauthz.py:61 137 143 msgid "Name is not given." 138 144 msgstr "未能提供名称。" 139 145 140 #: pysvnmanager/model/svnauthz.py:6 1146 #: pysvnmanager/model/svnauthz.py:63 141 147 msgid "Name is not string." 142 148 msgstr "名称不是字符串" 143 149 144 #: pysvnmanager/model/svnauthz.py:6 5150 #: pysvnmanager/model/svnauthz.py:67 145 151 #, python-format 146 152 msgid "Name (%s) contains invalid characters." 147 153 msgstr "名称(%s)中包含非法字符。" 148 154 149 #: pysvnmanager/model/svnauthz.py:47 3155 #: pysvnmanager/model/svnauthz.py:475 150 156 #, python-format 151 157 msgid "Recursive group membership for %s" 152 158 msgstr "%s 出现了循环组引用。" 153 159 154 #: pysvnmanager/model/svnauthz.py:56 7160 #: pysvnmanager/model/svnauthz.py:569 155 161 #, python-format 156 162 msgid "Not a valid username: %s" 157 163 msgstr "非法用户名: %s" 158 164 159 #: pysvnmanager/model/svnauthz.py:68 4165 #: pysvnmanager/model/svnauthz.py:686 160 166 #, python-format 161 167 msgid "Group %s is referenced by group %s." 162 168 msgstr "用户组 %s 被组 %s 引用。" 163 169 164 #: pysvnmanager/model/svnauthz.py:12 24170 #: pysvnmanager/model/svnauthz.py:1232 165 171 msgid "Update failed! You are working on a out-of-date revision." 166 172 msgstr "更新失败!您的更改是基于一个过期的版本,请先刷新再更改。" 167 173 168 #: pysvnmanager/model/svnauthz.py:14 58 pysvnmanager/model/svnauthz.py:1465169 #: pysvnmanager/model/svnauthz.py:14 69174 #: pysvnmanager/model/svnauthz.py:1486 pysvnmanager/model/svnauthz.py:1493 175 #: pysvnmanager/model/svnauthz.py:1497 170 176 #, python-format 171 177 msgid "Unknown rule format: %s" 172 178 msgstr "未知策略格式: %s" 173 179 174 #: pysvnmanager/model/svnauthz.py:1 483180 #: pysvnmanager/model/svnauthz.py:1511 175 181 #, python-format 176 182 msgid "No module exist for %s:%s" 177 183 msgstr "模块不存在: %s:%s" 178 184 179 #: pysvnmanager/model/svnauthz.py:1 593185 #: pysvnmanager/model/svnauthz.py:1621 180 186 #, python-format 181 187 msgid "Alias %s is referenced by group %s." 182 188 msgstr "别名 %s 为用户组 %s 引用。" 183 189 184 #: pysvnmanager/model/svnauthz.py:16 05190 #: pysvnmanager/model/svnauthz.py:1633 185 191 #, python-format 186 192 msgid "%s is referenced by [%s]." 187 193 msgstr "%s 在 [%s] 中被引用。" 188 194 189 #: pysvnmanager/model/svnauthz.py:17 42195 #: pysvnmanager/model/svnauthz.py:1770 190 196 #, python-format 191 197 msgid "User %(username)s has Full (RW) rights for module %(repos)s:%(path)s" 192 198 msgstr "用户 %(username)s 对模组 %(repos)s:%(path)s 具有完全权限 (RW)" 193 199 194 #: pysvnmanager/model/svnauthz.py:17 44200 #: pysvnmanager/model/svnauthz.py:1772 195 201 #, python-format 196 202 msgid "User %(username)s has ReadOnly (RO) rights for module %(repos)s:%(path)s" 197 203 msgstr "用户 %(username)s 对模组 %(repos)s:%(path)s 具有只读权限 (RO)" 198 204 199 #: pysvnmanager/model/svnauthz.py:17 46205 #: pysvnmanager/model/svnauthz.py:1774 200 206 #, python-format 201 207 msgid "User %(username)s can *NOT* access to module %(repos)s:%(path)s" 202 208 msgstr "用户 %(username)s 对模组 %(repos)s:%(path)s 没有访问权限 (XX)" 203 209 204 #: pysvnmanager/model/svnauthz.py:1 784210 #: pysvnmanager/model/svnauthz.py:1812 205 211 #, python-format 206 212 msgid "" … … 221 227 "\n" 222 228 223 #: pysvnmanager/model/svnauthz.py:18 03229 #: pysvnmanager/model/svnauthz.py:1831 224 230 #, python-format 225 231 msgid "" -
trunk/pysvnmanager/lib/base.py
r23 r24 22 22 #import logging 23 23 #log = logging.getLogger(__name__) 24 25 def get_unicode(msg, escape=False): 26 if isinstance(msg, basestring) and not isinstance(msg, unicode): 27 msg = unicode(msg, 'utf-8') 28 if escape and isinstance(msg, basestring): 29 msg = msg.encode('unicode_internal') 30 return msg 31 32 def get_utf8(msg, escape=False): 33 if isinstance(msg, unicode): 34 msg = msg.encode('utf-8') 35 if escape and isinstance(msg, basestring): 36 msg = msg.encode('unicode_internal') 37 return msg 24 38 25 39 class BaseController(WSGIController): -
trunk/pysvnmanager/model/svnauthz.py
r22 r24 8 8 9 9 from configobj import ConfigObj 10 import rcsbackup as rcs 10 11 import re 11 12 import sys 13 import os 12 14 import StringIO 13 15 import logging … … 1134 1136 self.__clear() 1135 1137 self.__file = None 1138 # Used as check-in username to rcs file. 1139 self.login_as = None 1140 # Used as check-in message to rcs file. 1141 self.comment = [] 1136 1142 self.load(fileobj) 1137 1143 … … 1214 1220 self.parse_module(section, contents) 1215 1221 1216 def save(self, revision): 1222 def save(self, revision, comment=""): 1223 if comment: self.comment.append(comment) 1224 1217 1225 if self.__file: 1218 assert isinstance(self.__file, (basestring, file,StringIO.StringIO))1226 assert isinstance(self.__file, (basestring, StringIO.StringIO)) 1219 1227 #if not revision: 1220 1228 # revision = self.version … … 1237 1245 f.seek(0,0) 1238 1246 f.flush() 1239 1247 1248 if isinstance(self.__file, basestring): 1249 try: 1250 self.validate_authz_file(self.__file) 1251 except Exception, e: 1252 rcs.restore(self.__file) 1253 raise Exception, e 1254 else: 1255 rcs.backup(self.__file, comment=self.comment, user=self.login_as) 1256 1257 self.comment = [] 1258 1259 def validate_authz_file(self, filename): 1260 if isinstance(filename, basestring): 1261 stat = os.stat(filename) 1262 if stat.st_size == 0: 1263 raise Exception, "Size of file (%s) is zero!" % filename 1264 1265 from svn import repos as _repos 1266 _repos.authz_read(filename, 1) 1267 1240 1268 def __str__(self): 1241 1269 buff = u"" -
trunk/pysvnmanager/tests/functional/test_role.py
r22 r24 278 278 userobj = authz.get_userobj('&admin') 279 279 self.assert_(unicode(userobj) == u'admin = 蒋鑫', unicode(userobj).encode('utf-8')) 280 self.assert_(authz.is_super_user('&admin')==True, authz.is_super_user('&admin')) 281 self.assert_(authz.is_super_user('蒋鑫')==True, authz.is_super_user('蒋鑫')) 282 283 self.login('蒋鑫') 284 #params = {'aliasname':'admin', 'username':'蒋鑫',} 285 params = {'aliasname':'admin2', 'username':'jiangxin',} 286 res = self.app.get(url_for(controller='role', action='save_alias'), params) 287 assert res.status == 200 288 assert "" == res.body, res.body 289 280 290 finally: 281 291 self.rollback() -
trunk/setup.cfg
r23 r24 64 64 with-pylons=test.ini 65 65 detailed-errors=1 66 with-coverage=166 #with-coverage=1 67 67 cover-package=pysvnmanager 68 68 cover-erase=1
![(please configure the [header_logo] section in trac.ini)](/trac/pysvnmanager/chrome/common/trac_banner.png)