[Cherokee-commits] [2927] cherokee/trunk:

SVN at cherokee-project.com SVN at cherokee-project.com
Fri Mar 6 00:29:26 CET 2009


Revision: 2927
          http://svn.cherokee-project.com/changeset/2927
Author:   aperez
Date:     2009-03-06 00:29:25 +0100 (Fri, 06 Mar 2009)

Log Message:
-----------


Modified Paths:
--------------
    cherokee/trunk/ChangeLog
    cherokee/trunk/admin/PageEntry.py
    cherokee/trunk/admin/PageVServer.py
    cherokee/trunk/admin/Rule.py
    cherokee/trunk/admin/static/css/cherokee.css

Modified: cherokee/trunk/ChangeLog
===================================================================
--- cherokee/trunk/ChangeLog	2009-03-05 15:58:27 UTC (rev 2926)
+++ cherokee/trunk/ChangeLog	2009-03-05 23:29:25 UTC (rev 2927)
@@ -1,3 +1,9 @@
+2009-03-06  Antonio Perez  <aperez at skarcha.com>
+
+	* admin/PageEntry.py, admin/Rule.py, admin/PageVServer.py,
+	admin/static/css/cherokee.css: Visual enhancements to Complex
+	Rules configuration.
+
 2009-03-05  Alvaro Lopez Ortega  <alvaro at octality.com>
 
 	* admin/PageEntry.py, admin/server.py, admin/ModuleGeoip.py,

Modified: cherokee/trunk/admin/PageEntry.py
===================================================================
--- cherokee/trunk/admin/PageEntry.py	2009-03-05 15:58:27 UTC (rev 2926)
+++ cherokee/trunk/admin/PageEntry.py	2009-03-05 23:29:25 UTC (rev 2927)
@@ -100,7 +100,7 @@
             checks.append ('%s!encoder!%s' % (self._conf_prefix, e))
 
         pre = '%s!match'%(self._conf_prefix)
-        rule = Rule (self._cfg, pre, self.submit_url)
+        rule = Rule (self._cfg, pre, self.submit_url, 0)
         checks += rule.get_checks()
 
         # Apply changes
@@ -125,7 +125,7 @@
 
         # Load the rule plugin
         pre = "%s!match"%(self._conf_prefix)
-        rule = Rule (self._cfg, pre, self.submit_url)
+        rule = Rule (self._cfg, pre, self.submit_url, 0)
 
         txt += rule.get_title()
         return txt
@@ -185,7 +185,7 @@
     def _render_rule (self):
         txt  = "<h2>Matching Rule</h2>"
         pre  = "%s!match"%(self._conf_prefix)
-        rule = Rule (self._cfg, pre, self.submit_url)
+        rule = Rule (self._cfg, pre, self.submit_url, 0)
         txt += rule._op_render()
 
         return txt

Modified: cherokee/trunk/admin/PageVServer.py
===================================================================
--- cherokee/trunk/admin/PageVServer.py	2009-03-05 15:58:27 UTC (rev 2926)
+++ cherokee/trunk/admin/PageVServer.py	2009-03-05 23:29:25 UTC (rev 2927)
@@ -313,7 +313,7 @@
             pre   = '%s!%s!match' % (cfg_key, prio)
 
             # Try to load the rule plugin
-            rule = Rule(self._cfg, pre, self.submit_url)
+            rule = Rule(self._cfg, pre, self.submit_url, 0)
             name      = rule.get_name()
             name_type = rule.get_type_name()
 

Modified: cherokee/trunk/admin/Rule.py
===================================================================
--- cherokee/trunk/admin/Rule.py	2009-03-05 15:58:27 UTC (rev 2926)
+++ cherokee/trunk/admin/Rule.py	2009-03-05 23:29:25 UTC (rev 2927)
@@ -8,9 +8,10 @@
 import validations
 
 class Rule (Module, FormHelper):
-    def __init__ (self, cfg, prefix, submit_url):
+    def __init__ (self, cfg, prefix, submit_url, depth):
         FormHelper.__init__ (self, 'rule', cfg)
         Module.__init__ (self, 'rule', cfg, prefix, submit_url)
+        self.depth = depth
 
     def get_checks (self):
         matcher = self._cfg.get_val(self._prefix)
@@ -32,12 +33,12 @@
             return "Unknown"
 
         if matcher == 'not':
-            r = Rule(self._cfg, '%s!right'%(self._prefix), self.submit_url)
+            r = Rule(self._cfg, '%s!right'%(self._prefix), self.submit_url, self.depth+1)
             return "Not (%s)"%(r.get_title())
         elif matcher in ['or', 'and']:
             op = ['AND', 'OR'][matcher == 'or']
-            r1 = Rule(self._cfg, '%s!left'%(self._prefix), self.submit_url)
-            r2 = Rule(self._cfg, '%s!right'%(self._prefix), self.submit_url)
+            r1 = Rule(self._cfg, '%s!left'%(self._prefix), self.submit_url, self.depth+1)
+            r2 = Rule(self._cfg, '%s!right'%(self._prefix), self.submit_url, self.depth+1)
             return "(%s) %s (%s)"%(r1.get_title(), op, r2.get_title())
 
         rule_module = module_obj_factory (matcher, self._cfg, self._prefix, self.submit_url)
@@ -64,30 +65,31 @@
 
         matcher = self._cfg.get_val(pre)
         if matcher == "not":
-            rule = Rule (self._cfg, "%s!right"%(self._prefix), self.submit_url)
+            rule = Rule (self._cfg, "%s!right"%(self._prefix), self.submit_url, self.depth+1)
             rule_txt = rule._op_render()
             txt = """
-            <table border="1" width="100%%">
-             <tr><td>NOT*</td><td></td></tr>
-             <tr><td></td><td>%(rule_txt)s</td></tr>
-            </table>
+            <div class="rule_not">
+              <div class="rule_not_title">NOT</div>
+              %(rule_txt)s
+            </div>
             """ % (locals())
             return txt
 
         elif matcher in ["or", "and"]:
             op = ["AND", "OR"][matcher == "or"]
             
-            rule1 = Rule (self._cfg, "%s!right"%(self._prefix), self.submit_url)
+            depth = self.depth + 1
+            rule1 = Rule (self._cfg, "%s!right"%(self._prefix), self.submit_url, depth)
             rule1_txt = rule1._op_render()
-            rule2 = Rule (self._cfg, "%s!left"%(self._prefix), self.submit_url)
+            rule2 = Rule (self._cfg, "%s!left"%(self._prefix), self.submit_url, depth)
             rule2_txt = rule2._op_render()
 
             txt = """
-            <table border="1" width="100%%">
-             <tr><td></td><td>%(rule1_txt)s</td></tr>
-             <tr><td>%(op)s</td><td></td></tr>
-             <tr><td></td><td>%(rule2_txt)s</td></tr>
-            </table>
+            <div class="rule_group rule_group_%(depth)s">
+              %(rule1_txt)s
+              <div class="rule_operation">%(op)s</div>
+              %(rule2_txt)s
+            </div>
             """ % (locals())
             return txt
 
@@ -106,11 +108,10 @@
         _del = '<input type="button" value="Remove" onClick="" />'
 
         txt += """
-        <table border="1" width="100%%">
-          <tr><td>%(_not)s</td><td></td><td></td></tr>
-          <tr><td></td><td>%(rule)s</td><td>%(_del)s</td></tr>
-          <tr><td></td><td align="right">%(_and)s , %(_or)s</td><td></td></tr>
-        </table>""" % (locals())
+        <div class="rule_box">
+          <div class="rule_content">%(rule)s</div>
+          <div class="rule_toolbar">%(_not)s%(_and)s%(_or)s%(_del)s</div>
+        </div>""" % (locals())
 
         return txt
 

Modified: cherokee/trunk/admin/static/css/cherokee.css
===================================================================
--- cherokee/trunk/admin/static/css/cherokee.css	2009-03-05 15:58:27 UTC (rev 2926)
+++ cherokee/trunk/admin/static/css/cherokee.css	2009-03-05 23:29:25 UTC (rev 2927)
@@ -534,6 +534,64 @@
 }
 
 /**************************/
+/* PageVServer.py styles */
+/**************************/
+
+.rule_group {
+	padding: 10px 8px;
+}
+
+.rule_group_1 {
+	margin-top: 15px;
+}
+
+.rule_group_1, .rule_group_3, .rule_group_5, .rule_group_7, .rule_group_9 {
+	background-color: #ddd;
+	border: #aaa 1px solid;
+}
+
+.rule_group_2, .rule_group_4, .rule_group_6, .rule_group_8, .rule_group_10 {
+	background-color: #eee;
+	border: #aaa 1px solid;
+}
+
+.rule_not {
+	margin: 0;
+	padding: 0;
+}
+
+.rule_not_title {
+	color: white;
+	background-color: #c97983;
+	font-size: 14pt;
+	font-weight: bold;
+	text-align: center;
+}
+
+.rule_box {
+	background-color: #fff;
+	border: #aaa 1px solid;
+}
+
+.rule_content {
+	margin: 5px;
+}
+
+.rule_toolbar {
+	background-color: #f3fbfb;
+	padding: 0;
+	text-align: right;
+	border-top: #8eadbc 1px solid;
+}
+
+.rule_operation {
+	font-size: 14pt;
+	font-weight: bold;
+	text-align: center;
+	margin: 10px 0px;
+}
+
+/**************************/
 /* PageIcons.py styles    */
 /**************************/
 #tab_icon div input[type="text"] {

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.octality.com/pipermail/cherokee-commits/attachments/20090306/7c43db29/attachment-0001.htm 


More information about the Cherokee-commits mailing list