
///
/// $Id: nrlc_main.js,v 1.9 2009-11-30 23:53:25-07 chadwick Exp chadwick $
///
/// Copyright (c) 2008 - 2009 All rights reserved.
///
/// THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
/// KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
/// WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
/// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS
/// OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
/// OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
/// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
/// SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
///

function NRLC_adminOnload() {
	
	NRLC_doLockReadonlyFields();
	// alert( "loaded" );
	
} // NRLC_adminOnload


function NRLC_doFetchPage( n ) {
    var obj = document.getElementById( 'pagenum' );
    if ( obj != null ) {
        obj.value = n;
        document.forms['pgctl'].submit();
    }
} // NRLC_doFetchpage


function NRLC_gotoPage() {
    var obj = document.getElementById('gotoPage');
    if ( !obj )
        return false;
    var n = parseInt(obj.value);
    if ( n > 0 && n < 99999 )
        NRLC_doFetchPage( n );
	else
		alert( "Please enter a valid page number." );
    return false;
} // NRLC_gotoPage


//
// This function disables input fields that have the
// 'readonly' class specified.
//

function NRLC_doLockReadonlyFields() {

    var fields = null;

    fields = document.getElementsByTagName('select');
    for (var i = 0; i < fields.length; i++)
        if (fields[i].className.indexOf('readonly') > -1) {
            fields[i].disabled = true;
            //fields[i].style.backgroundColor = fields[i].parent.style.backgroundColor;
        }

    fields = document.getElementsByTagName('input');
	//alert( "Locking " + fields.length + " input fields" );
    for (var i = 0; i < fields.length; i++)
        if (fields[i].className.indexOf('readonly') >- 1) {
            fields[i].readOnly = true;
			fields[i].disabled = true;
            fields[i].style.backgroundColor = 'rgb(255,255,255)'; 
			fields[i].style.color = 'rgb(80,80,80)';
        }

    fields = document.getElementsByTagName('textarea');
    for (var i = 0; i < fields.length; i++)
        if (fields[i].className.indexOf('readonly') >- 1) {
            fields[i].readOnly = true;
            //fields[i].style.backgroundColor = fields[i].parent.style.backgroundColor;
        }
		
    return;

} // NRLC_doLockReadonlyFields


function NRLC_popBox(id,up) {
    var obj = id ? document.getElementById( id ) : null;
    if ( obj ) obj.style.display = ( up ? 'block' : 'none' );
	return false;
} // NRLC_popBox


function unselect_all( opts ) {
    if ( !opts ) return;
	for(var i = 0; i < opts.length; i++) opts[i].selected = false;
	return;
} // unselect_all


function NRLC_searchReset( mode ) {
	
    var obj = null;
	var i = 0;
	
	if (obj = document.getElementById( 'kw' ))
	    obj.value = '';
	
	if ( mode == 'basic' || mode == 'advanced' ) {
		
  	    if (obj = document.getElementById( 'cat' )) {
            unselect_all( obj.options );
	        obj.options[0].selected=true;
	    }
	    if (obj = document.getElementById( 'loc' )) {
	        unselect_all( obj.options );
	        obj.options[0].selected=true;
	    }

	} // basic or advanced
	
    if ( mode == 'advanced' ) {

        // reset advanced search options
	    if (obj = document.getElementById( 'spec' )) {
	            unselect_all( obj.options );
		        obj.options[0].selected=true;
	    }
		if (obj = document.getElementById( 'fname' )) {
		    obj.options[0].selected=true;
	    }
		if (obj = document.getElementById( 'field' )) {
	        unselect_all( obj.options );			
		    obj.options[0].selected=true;
	    }		
		if (obj = document.getElementById( 'timing' )) {
	        unselect_all( obj.options );			
		    obj.options[0].selected=true;
	    }
		if (obj = document.getElementById( 'citextra' )) {
            obj.checked = false;
	    }
		if (obj = document.getElementById( 'showdocs' )) {
            obj.checked = false;
	    }		
		if (obj = document.getElementById( 'reqgcom' )) {
            obj.checked = false;
	    }
		if (obj = document.getElementById( 'reqecom' )) {
            obj.checked = false;
	    }
		if (obj = document.getElementById( 'sortby' )) {
		    obj.options[1].selected=true;    // default search is on short title (option 1)
	    }
		if (obj = document.getElementById( 'sortby2' )) {
		    obj.options[0].selected=true;
	    }
		i = 0;
		while( obj = document.getElementById( 'disp'+i ) ) {
			if ( ! obj.disabled ) obj.checked = false;
			i++;
		} // end while
		
	} // advanced
	
	if ( mode == 'biblio' ) {
		
		var ids = [ 'showanno', 'showsect', 'showcnt' ];
		for (var i=0, l=ids.length; i<l; i++)
		    if ( obj = document.getElementById( ids[i] ) ) obj.checked = false;
		
		if (obj = document.getElementById( 'sortby' )) {
		    obj.options[0].selected=true;
	    }
		if (obj = document.getElementById( 'sortby2' )) {
		    obj.options[0].selected=true;
	    }
		i = 0;
		while( obj = document.getElementById( 'disp'+i ) ) {
			if ( ! obj.disabled ) obj.checked = false;
			i++;
		} // end while
				
	} // biblio

	return true;
	
} // NRCL_searchReset

///
/// EOF $RCSfile: nrlc_main.js,v $
///