/**
* ZSL - Javascript
* string-funktionen
*
* @author heiko pfefferkorn
* @copyright 2005 heiko pfefferkorn
* @version $Id: string.js,v 1.2 2006/04/22 08:15:52 erik Exp $
*
*/



/* rTrim
 *
 * entfernt alle leerzeichen rechts neben einem strings
 */

function CL_rTrim( el ){
    var rx_spaces = /^([\w\W]*)(\b\s*)$/;

    if( rx_spaces.tmp(el) ) return el.replace(rx_spaces, '$1');

    return el;
}

/* lTrim
 *
 * entfernt alle leerzeichen links neben einem strings
 */
function CL_lTrim( el ){
    var rx_spaces = /^(\s*)(\b[\w\W]*)$/;

    if( rx_spaces.tmp(el) ) return el.replace(rx_spaces, '$2');

    return el;
}

/* trim
 *
 * entfernt alle leerzeichen am anfang und ende eines strings
 */
function CL_trim( el ){
    if( el!='' && el.length>0 ){
        var rx_spaces                   = /^(\s*)$/;
        var rx_leadingTrailingSlashes   = /^(\s*)([\W\w]*)(\b\s*$)/;

        if( rx_spaces.test(el) ){
            el = el.replace(rx_spaces, '');
            if( el.length==0 )
                return el;
        }

        if( rx_leadingTrailingSlashes.test(el) )
            el = el.replace(rx_leadingTrailingSlashes, '$2');
    }

    return el;
}

/* validateNotEmpty
 *
 * prueft ob ein uebergebener string leer ist oder nicht,
 * entfernt vorher alle leerzeichen links und rechts neben dem string ('CL_trim')
 */
function CL_validateNotEmpty( el ){
    var temp = CL_trim(el);

    return ( temp.length>0 ) ? true : false;
}