/* 
grids.js: library of javascript for animation / branding effects
    david.kelly@fanore.com (http://www.fanore.com/website_design.htm)
    
    
    
*/
/* BEGIN  Comparison Grid related functions */

function add_column(){
   $('column_command').insert('after','<p>test</p>')
    
}
//check_template: validates a comparison grid template 
function check_template(){
    if ($F('txt_title').blank()){
         show_error_message("please enter a name for this template!",'error_message_panel');
        //alert("please enter a name for this template");
        $('txt_title').focus();
        return false;
    }

    if ($F('txt_columns').blank()){
         show_error_message("please enter the number of columns required for this template!",'error_message_panel');
        //alert("please enter the number of columns required for this template");
        $('txt_columns').focus();
        return false;
    }
    if (isNaN($F('txt_columns'))){
         show_error_message("please enter only numeric values !",'error_message_panel');
//        alert("please enter only numeric values");
        $('txt_columns').value="";        
        $('txt_columns').focus();
        return false;
    
    }

    if (parseInt($F('txt_columns')) < 1){
         show_error_message("please enter at least one column !",'error_message_panel');
        $('txt_columns').value="1";        
        $('txt_columns').focus();
        return false;
    
    }
    var el=get_el('list_content');
    if (el.selectedIndex < 1 ){
        show_error_message("please select the page on which this comparison chart will be displayed!",'error_message_panel');
        //alert("please select the page on which this comparison chart will be displayed!");
        $('list_content').focus();
        return false;
    }
    $('save').submit();
}

/*check_columns: validate that all required information entered for columns */
function check_columns(){
    var column_ids=$F('uid_list')
    var array_ids=column_ids.split(',')
    var uid=0;
    for (var i=0; i < array_ids.length;i++){
        uid=array_ids[i];
        //alert(uid);
        if ($F('title_' + uid).blank()){
            show_error_message("please enter a name for this column!",'error_message_panel');
            $('title_' + uid).focus();
            return false;
        }
    
    }
    $('save').submit();
}

//edit_row: pops up the row editor 
function edit_row(url, params){
    var param_url=url + "?" + params 
    var d=new Date()
    //alert(url);
    
    //open_new_window(param_url, '', 0, 1,1,0,0)
    //return void[0];
            var myAjax = new Ajax.Request( 
                url, 
                {
                    evalJSON: 'force',
                    method: 'get', 
                    parameters: params + '&d=' + d.toString(),
                    onFailure: function(){alert("sorry, but we were unable to process your request");},
                    onSuccess :function(transport, json){
                        //alert(transport.responseText);
                        var j=transport.getHeader('X-JSON').evalJSON();
                        var column_ids=$F('column_ids');
                        var array_ids=column_ids.split(',')
                        var columnid=0;
                        for (var i=0; i < array_ids.length;i++){
                            columnid=array_ids[i];
                            var u_name='uid'+ columnid; // uid field 
                            var r_name='rowid'+ columnid; // row id field
                            var t_name='title' + columnid; // title field
                            var c_name='columnid' + columnid; // column field
                            
                            /*
                            alert(eval('j.' + u_name));
                            alert(eval('j.' + r_name));
                            alert(eval('j.' + t_name));
                            alert(eval('j.' + c_name));
                            alert('u_name == ' + $F(u_name));
                            alert('r_name == ' + $F(r_name));
                            alert('t_name == ' + $F(t_name));
                            alert('c_name == ' + $F(c_name));
                            */
                            var s = eval('j.' + t_name);
                            //alert(s);
                            //alert(s.unescapeHTML())
                            $(u_name).value=eval('j.' + u_name);
                            $(r_name).value=eval('j.' + r_name);
                            $(t_name).value=s.unescapeHTML();
                            $(c_name).value=eval('j.' + c_name);
                              
                        }
 //                       $('row_id').value=json.uid;
                        // now display the popup and position it
                        display_row_editor();
                        
                  }  
                });        
                
}

function delete_grid_row(param_row){
    var c_text='are you sure you want to delete this row ?';
    var c_url='';
    var c_winflag=0;
    var c_ajaxurl='';
    var c_ajaxparams='';
    var c_ajax_target='';
    var c_ajax_function='';
    var c_debug_target='ajax_debug';
    var row_id='grow_' + param_row;
            c_url='../asp/ajax_2008.asp';
            c_winflag=2;
            c_ajaxurl='../asp/ajax_2008.asp';
            c_ajaxparams='objectid=1151&recordid=' + param_row + '&action=delete_grid_row'
            c_ajax_target=''
            c_ajax_function=''
            
            //window.location.href=c_ajaxurl + '?' + c_ajaxparams
            //return void[0];
            if (confirm_action(c_text,c_url,c_winflag,c_ajaxurl,c_ajaxparams,c_ajax_target,c_ajax_function,c_debug_target)){
                Element.remove(row_id);
            }
            
            //confirm_action(c_text,c_url,c_winflag,c_ajaxurl,c_ajaxparams,c_ajax_target,c_ajax_function)


}
function display_row_editor(){
    $('utility').innerHTML=$('popup_editor').innerHTML;
    $('popup_editor').innerHTML='';
    current_element=$('admin_new');
    position_utility();
//    new Effect.BlindDown('utility');
}
function close_row_editor(){
//    new Effect.Fade('utility');
    $('popup_editor').innerHTML=$('utility').innerHTML;
    new Effect.DropOut('utility');
}

function validate_row(){
    var column_ids=$F('column_ids');
    var array_ids=column_ids.split(',')
    var columnid=0;
    var b_valid=false;
    for (var i=0; i < array_ids.length;i++){
        columnid=array_ids[i];
        var u_name='uid'+ columnid; // uid field 
        var r_name='rowid'+ columnid; // row id field
        var t_name='title' + columnid; // title field
        var c_name='columnid' + columnid; // column field
        if (!$F(t_name).blank()){
            b_valid=true;
        }
    }
    if (b_valid){ // it's ok to submit the form
            $('save_row').request({
               method: 'get',
               onComplete: function(obj){ self.location.reload();}}) ;       
    }
    
    close_row_editor();
    return void[0];    
}

/* END  Comparison Grid related functions */

