Author: eallen
Date: 2008-08-25 14:26:57 -0400 (Mon, 25 Aug 2008)
New Revision: 2351
Modified:
mgmt/trunk/cumin/python/cumin/brokerlink.py
mgmt/trunk/cumin/python/cumin/brokerlink.strings
Log:
Make "transient" the default for adding links
Change wording for durable/transient to "Save/Don't Save" when adding
links.
Add help to "Add Route" for tag and exclude
Make tag and exclude fields hidden by default and give them default values.
Modified: mgmt/trunk/cumin/python/cumin/brokerlink.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/brokerlink.py 2008-08-25 15:35:39 UTC (rev 2350)
+++ mgmt/trunk/cumin/python/cumin/brokerlink.py 2008-08-25 18:26:57 UTC (rev 2351)
@@ -428,16 +428,41 @@
self.excludes.set_title("Excludes")
self.add_field(self.excludes)
+ self.tag_excludes = list()
+ self.tag_excludes.append(self.tag)
+ self.tag_excludes.append(self.excludes)
def get_args(self, session):
return self.frame.get_args(session)
+ def render_fields(self, session, *args):
+ writer = Writer()
+
+ for field in self.fields:
+ if not field in self.tag_excludes:
+ writer.write(field.render(session))
+
+ return writer.to_string()
+
+ def render_hidden_fields(self, session, *args):
+ writer = Writer()
+
+ for field in self.tag_excludes:
+ writer.write(field.render(session))
+
+ return writer.to_string()
+
def render_title(self, session, link):
return "Add Route to '%s:%d'" % (link.host, link.port)
def pre_process(self, session, *args):
self.exchange.pre_process(session, *args)
+ if not self.tag.get(session):
+ self.tag.set(session, args[0].managedBroker)
+ if not self.excludes.get(session):
+ self.excludes.set(session, "%s:%s" % (args[0].host, args[0].port))
+
def process_cancel(self, session, *args):
self.key.set(session, "")
self.tag.set(session, "")
@@ -458,7 +483,7 @@
excludes = self.excludes.get(session)
exchange_id = self.exchange.get(session)
exchange = Exchange.get(int(exchange_id))
- durable = exchange.durable
+ durable = link.durable
args = {"durable": durable,
"exchange": exchange.name,
@@ -481,7 +506,7 @@
self.add_parameter(self.host)
self.add_form_parameter(self.host)
- self.durable = DurabilityField(app, "durable", self)
+ self.durable = SavedField(app, "saved", self)
self.add_field(self.durable)
self.errors = dict()
Modified: mgmt/trunk/cumin/python/cumin/brokerlink.strings
===================================================================
--- mgmt/trunk/cumin/python/cumin/brokerlink.strings 2008-08-25 15:35:39 UTC (rev 2350)
+++ mgmt/trunk/cumin/python/cumin/brokerlink.strings 2008-08-25 18:26:57 UTC (rev 2351)
@@ -228,3 +228,87 @@
[PeerRouteSetClose.item_html]
<tr>{item_content}</tr>
+[BridgeAdd.css]
+div#BridgeAdd div#more_button {
+ border:1px solid #333333;
+ background-color: #EEEEEE;
+ color: #333333;
+ cursor: pointer;
+ float:left; /* shrink to fit */
+ margin: 0 0 1em 2em;
+ padding: 4px 8px;
+}
+
+div#BridgeAdd div#hidden_fields {
+ margin-left: 2em;
+ display: none;
+}
+
+div#BridgeAdd div.clear_left {
+ clear:left;
+ font-size:0;
+ line-height:0;
+}
+
+div#BridgeAdd div.hidden_help {
+ color:#333333;
+ margin-right:1em;
+}
+div#BridgeAdd span.tag1 {
+ color:red;
+}
+div#BridgeAdd span.tag2 {
+ color:green;
+}
+
+[BridgeAdd.html]
+<div id="BridgeAdd">
+<form id="{id}" class="mform" method="post"
action="?">
+ <div class="head">{title}</div>
+ <div class="body">{fields}</div>
+
+ <div id="more_button">Show More Options...</div>
+ <div class="clear_left"><!-- --></div>
+ <div id="hidden_fields">
+ <div class="hidden_help">
+ <p>The <strong>Tag</strong> and
<strong>Excludes</strong> are used to prevent a message from routing back
+ to the source broker and causing an infinite loop.</p>
+ <p>Enter a short <strong>tag</strong> that will be associated with
the source exchange.
+ Then <strong>exclude</strong> any tags that were used for the destination
exchanges.</p>
+ <p class="example">
+ <em>broker1</em> <==> <em>broker2</em> tag:
<span class="tag2">tag2</span> excludes: <span
class="tag1">tag1</span><br/>
+ <em>broker2</em> <==> <em>broker1</em> tag:
<span class="tag1">tag1</span> excludes: <span
class="tag2">tag2</span>
+ </p>
+ </div>
+ {hidden_fields}
+ </div>
+ {form_error}
+ <div class="foot">
+ {help}
+ {submit}
+ {cancel}
+ </div>
+ <div>{hidden_inputs}</div>
+</form>
+</div>
+<script type="text/javascript">
+<![CDATA[
+ wooly.doc().elembyid("{id}").node.elements[0].focus();
+ document.getElementById("more_button").onclick = click_more;
+ function click_more() {
+ var hfields = document.getElementById("hidden_fields");
+ if (hfields) {
+ if (hfields.style.display == "block") {
+ hfields.style.display = "none";
+ this.innerHTML = "Show More Options...";
+ document.getElementById("{more_path}").value = "f";
+ }
+ else {
+ hfields.style.display = "block";
+ this.innerHTML = "Hide Options";
+ document.getElementById("{more_path}").value = "t";
+ }
+ }
+ }
+]]>
+</script>
Show replies by date