/* 
merchant_landing.js: library of javascript for animation / branding effects
    david.kelly@fanore.com (http://www.fanore.com/website_design.htm)
    
    
    
*/


//check_merchant_landing_page: validate merchant landing page
function check_merchant_landing_page(){
var progress_bar_url=$F('progress_bar_url');
//        companyID=0
    var n=fix_telephone($F('companyid'));
    $('companyid').value=n;
    if ($F('companyid').blank()){
         show_error_message("please enter the merchant account id!",'error_message_panel');
        $('companyid').focus();
        return false;
    }
    if ($F('userid').blank()){
         show_error_message("please enter the merchant account user id!",'error_message_panel');
        $('userid').focus();
        return false;
    }
    if ($F('userpassword').blank()){
         show_error_message("please enter the merchant account password!",'error_message_panel');
        $('userpassword').focus();
        return false;
    }

//        caption=""
    if ($F('caption').blank()){
         show_error_message("please enter the merchant name!",'error_message_panel');
        $('caption').focus();
        return false;
    }

//        strap_line=""
    //if ($F('caption').blank()){
    //     show_error_message("please enter the merchant name!",'error_message_panel');
    //    $('caption').focus();
    //    return false;
    //}
//        email=""
    if ($F('email').blank()){
         show_error_message("please enter the merchant's email address!",'error_message_panel');
        $('email').focus();
        return false;
    }
//validate email address
    var e=$F('email')
	if (!fixstring(e,true)){
		alert("The email address is invalid - this system only supports the format 'anything@address.com' !");
        $('email').focus();
		return false;
	}
    
//        URL=""
    var u=urlSafe($F('url'));
    $('url').value=u;
    if ($F('url').blank()){
         show_error_message("please enter a folder name (only alphabetical characters are allowed!",'error_message_panel');
        $('url').focus();
        return false;
    }
//        seo_title=""
//        seo_keywords=""
//        seo_description=""
//        status=0
//        companyID=0
//        sendEmail=0
//        notifyAdmin=0
//        welcomeMessage=""
    var el=get_el('FCKDATASOURCE');
    if (el){    
        var cEditor = FCKeditorAPI.GetInstance('txtHTML');
        var datasource_name = 'fd_description';
        //alert(datasource_name);
       $(datasource_name).value= cEditor.GetXHTML(true);
         
    }       
    var el=get_el('secondFCKDATASOURCE');
    if (el){    
        var kEditor = FCKeditorAPI.GetInstance('txtSecondHTML');
        var datasource_name = 'fd_terms';
        //alert(datasource_name);
        var bTermsBuffer=kEditor.GetXHTML(true);
        if (bTermsBuffer){
            if (bTermsBuffer.length > 100){
               $(datasource_name).value= bTermsBuffer;
            }
            else{
            $(datasource_name).value= '';
            }
        }
        else{
           $(datasource_name).value= '';
        }
         
    }       
    $('url_payload').value=$F('url_params')
//        thankYouMessage=""
//        picture=session("userurl") & "images/merchantPlaceholder.jpg"
//        has_picture=0/
//        change_picture=0
    var has_picture=parseInt($F('has_picture')) //does this product already have an image ?
    var n_file=$F('picture') // has user selected an image
    
    //default value for replacing an image is NO
    $('change_picture').value=0 
    //if file not blank then reset replace image
    if (!n_file.blank()){
        //check that file is a JPG
        var m=n_file.toString().toLowerCase();
        var c=m.lastIndexOf(".")
        m=m.substr((c+1),4)
        if (m !='jpg'){
           show_error_message("please select a JPG for the picture !",'error_message_panel'); 
           $('product_image').focus()
           return false;
        }
        $('change_picture').value=1
        //double check that user wants to perform this action
        if (has_picture==1){
            if (!confirm("Please confirm that you wish to replace the picture used for this record!")){
                $('change_picture').value=0
            }
        }
    }
    
    validateFolder($F('uid'),u,progress_bar_url);
 
  
}



function validateFolder(paramID,paramFolder,progress_bar_url){
    var d=new Date();
    var url="../asp/object_administration.asp?objectid=1205&mode=6&tag=_checkMerchantFolder&uid=" + paramID + "&folder=" + paramFolder;
    //window.location.href=url;
    //return void[0];
    new Ajax.Request(url, {
        method: 'get',
        onSuccess: function(transport) {
            if (parseInt(transport.responseJSON.errors)!=0){
                show_error_message("The folder name you have entered is already in use!",'error_message_panel');
                 $('url').focus();
            }
            else{
                $('save').target='keyhole'; 
                progress_window(progress_bar_url);
                $('save').submit();  
            }
        }  
     }); 
}

//checkPhonePrefix: check the phone prefix has been entered
function checkPhonePrefix(){
var progress_bar_url=$F('progress_bar_url');
//        companyID=0
    var n=fixPrefix($F('phonePrefix'));
    $('phonePrefix').value=n;
    if ($F('phonePrefix').blank()){
         show_error_message("Please enter the prefix in the form +{countrycode}{operator code} - e.g. +35386!",'error_message_panel');
        $('phonePrefix').focus();
        return false;
    }
                $('save').target='keyhole'; 
                progress_window(progress_bar_url);
                $('save').submit();  

}
function fixPrefix(param_value){
   var ret_value='';
    var wip_value=param_value;
    var a_values='+1234567890'
    //alert(wip_value.length);
    for (var i=0;i<=wip_value.length;i++){
    //alert(wip_value.charAt(i))
        for (var x=0;x<=a_values.length;x++){
            
            if (wip_value.charAt(i)==a_values.charAt(x)){
                ret_value+=wip_value.charAt(i)
            }
        }
    } 
    //alert(ret_value);
    return ret_value;   
}


function urlSafe(paramValue){
    var allowedCharacters="abcdefghijklmnopqrstuvwxyz1234567890"
    var returnValue='';
    var checkValue=paramValue.toLowerCase();
    for (var i=0;i<checkValue.length;i++){
        if (allowedCharacters.indexOf(checkValue.substr(i,1))!=-1){
            returnValue+=checkValue.substr(i,1);
        }
    }
    //ensure we aren't using one of the reserved folder names
    if (returnValue=="asp"){returnValue=''}
    if (returnValue=="images"){returnValue=''}
    if (returnValue=="common"){returnValue=''}
    if (returnValue=="resources"){returnValue=''}
    if (returnValue=="style_sheets"){returnValue=''}
    if (returnValue=="wip"){returnValue=''}
    if (returnValue=="model"){returnValue=''}
    if (returnValue=="remote"){returnValue=''}
    
    
    return returnValue;
}

//check_merchant_form_element: validate merchant form element
function check_merchant_form_element(){
var progress_bar_url=$F('progress_bar_url');
//        capture model required value
    var required=parseInt($F('modelrequired'));
    if (required==1){
        //must display and be required
        if (parseInt($F('isenabled'))==0){
            show_error_message("This field is required and must be enabled!",'error_message_panel');
            $('isenabled').focus();
            return false;
        }
        if (parseInt($F('ismandatory'))==0){
            show_error_message("This field is required and cannot be made optional!",'error_message_panel');
            $('ismandatory').focus();
            return false;
        }
    }
$('save').target='keyhole'; 
                progress_window(progress_bar_url);
                $('save').submit(); 

}



//check_merchant_group: validate a group
function check_merchant_group(){
    var progress_bar_url=$F('progress_bar_url');
    //caption
    if ($F('caption').blank()){
         show_error_message("please enter the prompt to be displayed!",'error_message_panel');
        $('caption').focus();
        return false;
    }
    //groupName
    if ($F('groupName').blank()){
         show_error_message("please enter the actual group name!",'error_message_panel');
        $('groupName').focus();
        return false;
    }
    //payload
    if ($F('payload').blank()){
         show_error_message("please enter the name of the subgroups seperated by a semi-colon!",'error_message_panel');
        $('payload').focus();
        return false;
    }
$('save').target='keyhole'; 
                progress_window(progress_bar_url);
                $('save').submit(); 

}
