[Cherokee-commits] [3272] cherokee/trunk/admin:
SVN at cherokee-project.com
SVN at cherokee-project.com
Thu May 28 10:18:27 CEST 2009
Revision: 3272
http://svn.cherokee-project.com/changeset/3272
Author: alo
Date: 2009-05-28 10:18:27 +0200 (Thu, 28 May 2009)
Log Message:
-----------
Modified Paths:
--------------
cherokee/trunk/admin/Wizard_Django.py
cherokee/trunk/admin/validations.py
Modified: cherokee/trunk/admin/Wizard_Django.py
===================================================================
--- cherokee/trunk/admin/Wizard_Django.py 2009-05-28 01:00:10 UTC (rev 3271)
+++ cherokee/trunk/admin/Wizard_Django.py 2009-05-28 08:18:27 UTC (rev 3272)
@@ -1,3 +1,5 @@
+import validations
+
from config import *
from util import *
from Page import *
@@ -3,7 +5,10 @@
from Wizard import *
-NOTE_DJANGO_DIR = "Local path to the Django based project."
-NOTE_NEW_HOST = "Name of the new domain that will be created."
+NOTE_DJANGO_DIR = _("Local path to the Django based project.")
+NOTE_NEW_HOST = _("Name of the new domain that will be created.")
+ERROR_NO_DJANGO = _("It does not look like a Django based project directory.")
+ERROR_NO_DROOT = _("The document root directory does not exist.")
+
CONFIG_VSRV = """
%(vsrv_pre)s!nick = %(new_host)s
@@ -28,6 +33,19 @@
%(vsrv_pre)s!rule!1!handler!balancer!source!1 = %(src_num)d
"""
+def is_django_dir (path, cfg, nochroot):
+ path = validations.is_local_dir_exists (path, cfg, nochroot)
+ manage = os.path.join (path, "manage.py")
+ if not os.path.exists (manage):
+ raise ValueError, _("Directory doesn't look like a Django based project.")
+ return path
+
+DATA_VALIDATION = [
+ ("tmp!wizard_django!django_dir", (is_django_dir, 'cfg')),
+ ("tmp!wizard_django!new_host", (validations.is_new_host, 'cfg')),
+ ("tmp!wizard_django!document_root", (validations.is_local_dir_exists, 'cfg'))
+]
+
class Wizard_VServer_Django (WizardPage):
ICON = "django.png"
DESC = "New virtual server based on a Django project."
@@ -59,14 +77,16 @@
return txt
def _op_apply (self, post):
+ # Validation
+ self._ValidateChanges (post, DATA_VALIDATION)
+ if self.has_errors():
+ return
+
# Incoming info
django_dir = post.pop('tmp!wizard_django!django_dir')
new_host = post.pop('tmp!wizard_django!new_host')
document_root = post.pop('tmp!wizard_django!document_root')
- if not new_host or not django_dir or not document_root:
- return
-
# Locals
vsrv_pre = cfg_vsrv_get_next (self._cfg)
src_num, src_pre = cfg_source_get_next (self._cfg)
Modified: cherokee/trunk/admin/validations.py
===================================================================
--- cherokee/trunk/admin/validations.py 2009-05-28 01:00:10 UTC (rev 3271)
+++ cherokee/trunk/admin/validations.py 2009-05-28 08:18:27 UTC (rev 3272)
@@ -307,3 +307,10 @@
return value
+def is_new_host (value, cfg, nochroot):
+ for h in cfg.keys('vserver'):
+ if value == cfg.get_val('vserver!%s!nick'%(h)):
+ raise ValueError, _('Virtual host nick is already being used.')
+ return value
+
+
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.octality.com/pipermail/cherokee-commits/attachments/20090528/42d36b62/attachment.htm
More information about the Cherokee-commits
mailing list