[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