--- a/includes/clientside/static/expander.js Sun Mar 28 21:49:26 2010 -0400
+++ b/includes/clientside/static/expander.js Sun Mar 28 23:10:46 2010 -0400
@@ -4,134 +4,134 @@
var expander_onload = function()
{
- var sets = document.getElementsByTagName('fieldset');
- if ( sets.length < 1 )
- return false;
- var init_us = [];
- for ( var index = 0; index < sets.length; index++ )
- {
- var mode = sets[index].getAttribute('enano:expand');
- if ( mode == 'closed' || mode == 'open' )
- {
- init_us.push(sets[index]);
- }
- }
- for ( var k = 0; k < init_us.length; k++ )
- {
- expander_init_element(init_us[k]);
- }
+ var sets = document.getElementsByTagName('fieldset');
+ if ( sets.length < 1 )
+ return false;
+ var init_us = [];
+ for ( var index = 0; index < sets.length; index++ )
+ {
+ var mode = sets[index].getAttribute('enano:expand');
+ if ( mode == 'closed' || mode == 'open' )
+ {
+ init_us.push(sets[index]);
+ }
+ }
+ for ( var k = 0; k < init_us.length; k++ )
+ {
+ expander_init_element(init_us[k]);
+ }
}
function expander_init_element(el)
{
- // get the legend tag
- var legend = el.getElementsByTagName('legend')[0];
- if ( !legend )
- return false;
- // existing content
- var existing_inner = legend.innerHTML;
- // blank the innerHTML and replace it with a link
- legend.innerHTML = '';
- var button = document.createElement('a');
- button.className = 'expander expander-open';
- button.innerHTML = existing_inner;
- button.href = '#';
-
- legend.appendChild(button);
-
- button.onclick = function()
- {
- try
- {
- expander_handle_click(this);
- }
- catch(e)
- {
- console.debug('Exception caught: ', e);
- }
- return false;
- }
-
- if ( el.getAttribute('enano:expand') == 'closed' )
- {
- expander_close(el);
- }
+ // get the legend tag
+ var legend = el.getElementsByTagName('legend')[0];
+ if ( !legend )
+ return false;
+ // existing content
+ var existing_inner = legend.innerHTML;
+ // blank the innerHTML and replace it with a link
+ legend.innerHTML = '';
+ var button = document.createElement('a');
+ button.className = 'expander expander-open';
+ button.innerHTML = existing_inner;
+ button.href = '#';
+
+ legend.appendChild(button);
+
+ button.onclick = function()
+ {
+ try
+ {
+ expander_handle_click(this);
+ }
+ catch(e)
+ {
+ console.debug('Exception caught: ', e);
+ }
+ return false;
+ }
+
+ if ( el.getAttribute('enano:expand') == 'closed' )
+ {
+ expander_close(el);
+ }
}
function expander_handle_click(el)
{
- if ( el.parentNode.parentNode.tagName != 'FIELDSET' )
- return false;
- var parent = el.parentNode.parentNode;
- if ( parent.getAttribute('enano:expand') == 'closed' )
- {
- expander_open(parent);
- }
- else
- {
- expander_close(parent);
- }
+ if ( el.parentNode.parentNode.tagName != 'FIELDSET' )
+ return false;
+ var parent = el.parentNode.parentNode;
+ if ( parent.getAttribute('enano:expand') == 'closed' )
+ {
+ expander_open(parent);
+ }
+ else
+ {
+ expander_close(parent);
+ }
}
function expander_close(el)
{
- var children = el.childNodes;
- for ( var i = 0; i < children.length; i++ )
- {
- var child = children[i];
- if ( child.tagName == 'LEGEND' )
- {
- var a = child.getElementsByTagName('a')[0];
- $dynano(a).rmClass('expander-open');
- $dynano(a).addClass('expander-closed');
- continue;
- }
- if ( child.style )
- {
- child.expander_meta_old_state = child.style.display;
- child.style.display = 'none';
- }
- }
- el.expander_meta_padbak = el.style.padding;
- el.setAttribute('enano:expand', 'closed');
+ var children = el.childNodes;
+ for ( var i = 0; i < children.length; i++ )
+ {
+ var child = children[i];
+ if ( child.tagName == 'LEGEND' )
+ {
+ var a = child.getElementsByTagName('a')[0];
+ $dynano(a).rmClass('expander-open');
+ $dynano(a).addClass('expander-closed');
+ continue;
+ }
+ if ( child.style )
+ {
+ child.expander_meta_old_state = child.style.display;
+ child.style.display = 'none';
+ }
+ }
+ el.expander_meta_padbak = el.style.padding;
+ el.setAttribute('enano:expand', 'closed');
}
function expander_open(el)
{
- var children = el.childNodes;
- for ( var i = 0; i < children.length; i++ )
- {
- var child = children[i];
- if ( child.tagName == 'LEGEND' )
- {
- var a = child.getElementsByTagName('a')[0];
- $dynano(a).rmClass('expander-closed');
- $dynano(a).addClass('expander-open');
- continue;
- }
- if ( child.expander_meta_old_state && child.style )
- {
- child.style.display = child.expander_meta_old_state;
- child.expander_meta_old_state = null;
- }
- else
- {
- if ( child.style )
- {
- child.style.display = null;
- }
- }
- }
- if ( el.expander_meta_padbak )
- {
- el.style.padding = el.expander_meta_padbak;
- el.expander_meta_padbak = null;
- }
- else
- {
- el.style.padding = null;
- }
- el.setAttribute('enano:expand', 'open');
+ var children = el.childNodes;
+ for ( var i = 0; i < children.length; i++ )
+ {
+ var child = children[i];
+ if ( child.tagName == 'LEGEND' )
+ {
+ var a = child.getElementsByTagName('a')[0];
+ $dynano(a).rmClass('expander-closed');
+ $dynano(a).addClass('expander-open');
+ continue;
+ }
+ if ( child.expander_meta_old_state && child.style )
+ {
+ child.style.display = child.expander_meta_old_state;
+ child.expander_meta_old_state = null;
+ }
+ else
+ {
+ if ( child.style )
+ {
+ child.style.display = null;
+ }
+ }
+ }
+ if ( el.expander_meta_padbak )
+ {
+ el.style.padding = el.expander_meta_padbak;
+ el.expander_meta_padbak = null;
+ }
+ else
+ {
+ el.style.padding = null;
+ }
+ el.setAttribute('enano:expand', 'open');
}
addOnloadHook(expander_onload);