    
    //case sensitive array search
    function arr__exists(value, search_array){
        for (var i = 0; i < search_array.length; i++){
            if(search_array[i] == value) return true;
        }
        return false;
    } 

    //case isensitive  array search  
    function arr__exists_i(value, search_array){
        for (var i = 0; i < search_array.length; i++){
            if(lower_case(search_array[i]) == lower_case(value)) return true;
        }
        return false;
    } 
    
    //creates a string imploding array values
    function arr__implode(glue, array){
        var result = '';
        for(var key in array){
            result += array[key] + glue;         
        }
        if(result.length > 0) result = result.substr(0, result.length - 1);
        return result;
    }
    
    //creates a string imploding values taken from a multidimensional array of type Array(0: Array(name1: value, name2: value, ...), 1: Array(name1: value, name2: value, ...) ...)
    //values are taken in each row for a particular key
    function arr__mimplode(glue, array, key){
        var implode_array = new Array();
        for(var row_key in array){
            implode_array[implode_array.length] = array[row_key][key];                   
        }  
        return arr__implode(glue, implode_array);
    }
  
