/*** DOCUMENTATION LAYER
Basic Document Object Functions
File: lime_basic.js
Last Update: Jul 2006
Author: Tom Atwell (klenwell@gmail.com)
Website: http://phosphorusandlime.blogspot.com/
FUNCTIONS:
js_trim(str)
js_echo(str)
js_echo_block(str, class_name, id_name)
dom_display_id(id, display="block")
dom_no_display_id(id)
dom_set_id_html(id, str_html)
dom_form_set_value(id, value)
NOTES:
To link:
______________________________________________________________________________*/
// js_trim
/*____________________________________________________________________________*/
function js_trim(str)
{
// *** DATA
// Regex
var regex = /^\s*|\s*$/g;
// Return
var trimmed = '';
// *** MANIPULATE
trimmed = str.replace(regex,"");
// *** RETURN
return trimmed;
} // end Fx
/*____________________________________________________________________________*/
// js_echo
/*____________________________________________________________________________*/
function js_echo(str)
{
// *** DATA
// Return
// void
// *** MANIPULATE
if ( str === undefined )
{
alert('js_echo: empty string -> aborting');
return;
}
document.write(str);
// *** RETURN
return;
} // end Fx
/*____________________________________________________________________________*/
// js_echo_block
/*____________________________________________________________________________*/
function js_echo_block(str, class_name, id_name)
{
// *** DATA
// Internal
var id = '';
var cl = '';
var block = '';
// Return
// void
// *** MANIPULATE
// Sanity Check
if ( !str.length )
{
js_echo(str);
return;
}
// Set ID
if ( id_name !== undefined )
{
id = 'id="' + '" ';
}
// Set Class
if ( class_name !== undefined )
{
cl = 'class="' + '" ';
}
// Build Block
attr = id + cl;
if ( attr.length ) attr = attr.substr(0, attr.length-1);
block = '
' + str + '
';
// Write
document.write(block);
// *** RETURN
return;
} // end Fx
/*____________________________________________________________________________*/
// dom_display_id
/*____________________________________________________________________________*/
function dom_display_id(id, display)
{
// *** DATA
// Internal
var _dom_block;
var _is_valid = -1;
// Return
// void
// *** MANIPULATE
// Default Setting: block
if ( display == null ) display = "block";
// Validation Array (basic types only)
DISPLAY_TYPE = new Array("none", "block", "inline", "list-item", "compact", "table");
// Sanity Check (IE 6 lacks indexOf method!)
if ( DISPLAY_TYPE.indexOf )
{
_is_valid = DISPLAY_TYPE.indexOf(display);
if ( _is_valid == -1 )
{
alert('display [' + display + '] is not a valid type');
return 0;
}
}
_dom_block = document.getElementById(id);
_dom_block.style.display = display;
// *** RETURN
return;
} // end Fx
/*____________________________________________________________________________*/
// dom_hide_id
/*____________________________________________________________________________*/
function dom_no_display_id(id)
{
dom_display_id(id, 'none')
}
/*____________________________________________________________________________*/
// dom_set_id_html
/*____________________________________________________________________________*/
function dom_set_id_html(id, str_html)
{
// *** DATA
// Internal
var _dom_block;
// Return
// void
// *** MANIPULATE
_dom_block = document.getElementById(id);
_dom_block.innerHTML = str_html;
// *** RETURN
return;
} // end Fx
/*____________________________________________________________________________*/
// dom_form_set_value
/*____________________________________________________________________________*/
function dom_form_set_value(name, value)
{
// *** DATA
// Document Objects
var _dom_form_field = document.getElementsByName(name)[0];
// Return
// void
// *** MANIPULATE
// Sanity Check
if ( _dom_form_field === undefined )
{
alert('name [' + name + '] not found');
return;
}
_dom_form_field.value = value;
// *** RETURN
return;
} // end Fx
/*____________________________________________________________________________*/