diff rhodecode/model/forms.py @ 1515:da8f1d1b22de

merge stable with beta
author Marcin Kuzminski <marcin@python-works.com>
date Fri, 07 Oct 2011 02:53:29 +0200
parents bf263968da47 87ec80c280bb
children 752b0a7b7679
line wrap: on
line diff
--- a/rhodecode/model/forms.py	Fri Oct 07 01:13:36 2011 +0200
+++ b/rhodecode/model/forms.py	Fri Oct 07 02:53:29 2011 +0200
@@ -283,6 +283,19 @@
 def ValidForkName():
     class _ValidForkName(formencode.validators.FancyValidator):
         def to_python(self, value, state):
+
+            repo_name = value.get('fork_name')
+
+            slug = repo_name_slug(repo_name)
+            if slug in ['_admin', '']:
+                e_dict = {'repo_name': _('This repository name is disallowed')}
+                raise formencode.Invalid('', value, state, error_dict=e_dict)
+
+            if RepoModel().get_by_repo_name(repo_name):
+                e_dict = {'fork_name':_('This repository '
+                                        'already exists')}
+                raise formencode.Invalid('', value, state,
+                                         error_dict=e_dict)
             return value
     return _ValidForkName