//  Add tracks to shopping cart without reloading page
function AddTracks(form_id)
{
    isTrackSelected = false;
    
	form = $(form_id);
	for(i = 0; i < form.elements.length; i++){
		if(form.elements[i].type == "checkbox" && form.elements[i].checked){			
			isTrackSelected = true;
            break;			
		}
	}   
    
	if(!isTrackSelected){
        showDialog('Message', 'Please, select tracks for download', 'warning');              
		return false;
	}    
   
    new Ajax.Request('/AjAddTracksToCart',
    {        
        parameters: $(form_id).serialize(),
        onCreate: function(transport){
            Loader(true);
        },
        onSuccess: function(transport){
            Loader(false);
            var response = transport.responseText.evalJSON();
            if(response.registered){
                $('shopping_tracks').innerHTML = response.shopping_tracks;                
            }else{                
                location = '/login';
            }             
        },
        onFailure: function(transport){
            Loader(false);
            showDialog('Message', 'Something went wrong...Try again...', 'warning');
        },
        onException: function(transport){
            Loader(false);
            showDialog('Message', 'Exeption... Try again...', 'warning');
        }
    });    

    for(i = 0; i < form.elements.length; i++){
        form.elements[i].checked = false;		
	}
       
	return false;
}

//  Add album to shopping cart without reloading page

function AddAlbum(alb_id)
{    
    new Ajax.Request('/AjAddAlbumsToCart',
    {        
        parameters: {album_id: alb_id},
        onCreate: function(transport){
            Loader(true);
        },
        onSuccess: function(transport){
            Loader(false);            
            var response = transport.responseText.evalJSON();            
            if(response.registered){
                $('shopping_tracks').innerHTML = response.shopping_tracks;                
            }else{
                location = '/login';
            }            
        },
        onFailure: function(transport){
            Loader(false);
            showDialog('Message', 'Something went wrong...Try again...', 'warning');            
        },
        onException: function(transport){
            Loader(false);
            showDialog('Message', 'Exeption... Try again...', 'warning');
        }
    });   
    
	return false;
}

function Test()
{
    alert("This is test");
    return;
}

function Profile(form_id)
{    
    new Ajax.Request('/AjHandlerProfile', {
        parameters: $(form_id).serialize(true),
        onCreate: function(transport){
            Loader(true);
        },
        onSuccess: function(transport){
            Loader(false);
            var response = transport.responseText.evalJSON();
            $('prof_passwd_msg').innerHTML = response.prof_passwd_msg;
            $('prof_repasswd_msg').innerHTML = response.prof_repasswd_msg;
            if(response.status){
                showDialog('Message', response.status_msg, 'warning');
                $('prof_passwd_id').value = '';
                $('prof_repasswd_id').value = '';
            }            
        },
        onFailure: function(transport){
            Loader(false);
            showDialog('Message', 'Something went wrong...Try again...', 'warning');            
        },
        onException: function(transport){
            Loader(false);
            showDialog('Message', 'Exeption... Try again...', 'warning');            
        }
    });
    
    return false;    
}

function Support(form_id)
{    
    new Ajax.Request('/AjHandlerSupport',
    {
        parameters: $(form_id).serialize(true),
        onCreate: function(transport){
            Loader(true);
        },
        onSuccess: function(transport){
            Loader(false);        
            var response = transport.responseText.evalJSON();
            $('warn_supp_msg').innerHTML = response.warn_supp_msg;
            if(response.status){
                showDialog('Message', response.status_msg, 'warning');
                $('supp_msg_id').value = '';
            }           
        },
        onFailure: function(transport){
            Loader(false);
            showDialog('Message', 'Something went wrong...Try again...', 'warning');
        },
        onException: function(transport){
            Loader(false);
            showDialog('Message', 'Exeption... Try again...', 'warning');
        }        
    });
    
    return false;    
}

function Login(form_id)
{    
    new Ajax.Request('/AjHandlerLogin',
    {
        parameters: $(form_id).serialize(true),
        onCreate: function(transport){
            Loader(true);
        },
        onSuccess: function(transport){
            Loader(false);
            var response = transport.responseText.evalJSON();
            if(response.status_code == 0){
                $('login_msg').innerHTML = response.login_msg;
            }            
            if(response.status_code == 1){
                document.location = response.url_redirect;            
            }
        },
        onFailure: function(transport){
            Loader(false);
            showDialog('Message', 'Something went wrong...Try again...', 'warning');            
        },
        onException: function(transport){
            Loader(false);
            showDialog('Message', 'Exeption... Try again...', 'warning');            
        }
    });   
    
	return false;
}

function Recovery(form_id)
{    
    new Ajax.Request('/AjHandlerRecovery',
    {
        parameters: $(form_id).serialize(true),
        onCreate: function(transport){
            Loader(true);
        },
        onSuccess: function(transport){
            Loader(false);
            var response = transport.responseText.evalJSON();
            $('rec_email_msg').innerHTML = response.rec_email_msg;
            $('rec_protcode_msg').innerHTML = response.rec_protcode_msg;            
            $('rec_protcode_img').src = response.rec_protcode_img;           
            if(response.rec_status_code == 1){
                showDialog('Message', response.rec_popup_msg, 'warning');
                $('rec_email_id').value = '';
                $('rec_protcode_id').value = '';
            }           
        },
        onFailure: function(transport){
            Loader(false);
            showDialog('Message', 'Something went wrong...Try again...', 'warning');
        },
        onException: function(transport){
            Loader(false);
            showDialog('Message', 'Exeption... Try again...', 'warning');
        }
    });
    
	return false;
}

function Registration(form_id)
{    
    new Ajax.Request('/AxRegistrationHandler',
    {
        parameters: $(form_id).serialize(true),
        onCreate: function(transport){
            Loader(true);
        },
        onSuccess: function(transport){
            Loader(false);
            var response = transport.responseText.evalJSON();
            if(!response.reg_status_code){
                if(response.reg_ip_address_msg != ''){
                    showDialog('Message', response.reg_ip_address_msg, 'warning');
                }else{
                    $('reg_email_msg').innerHTML = response.reg_email_msg;
                    $('reg_passwd_msg').innerHTML = response.reg_password_msg;
                    $('reg_repasswd_msg').innerHTML = response.reg_repassword_msg;
                    $('reg_protcode_msg').innerHTML = response.reg_prot_code_msg;
                    $('reg_protcode_img').src = response.reg_prot_code_img;
                }
            }else{
                document.location = response.reg_url_redirect;
            }
        },
        onFailure: function(transport){   
            Loader(false);
            showDialog('Message', 'Something went wrong...Try again...', 'warning');
        },
        onException: function(transport){
            Loader(false);
            showDialog('Message', 'Exeption... Try again...', 'warning');
        }
    });
    
	return false;
}

function CreateArchive(id)
{    
    if($('archive_url_' + id).name != ''){
        return true;
    }
    
    new Ajax.Request('/AxCreateArchive', {
        parameters: $('archive_form_id_' + id).serialize(),
        onCreate: function(transport){
            Loader(true);
        },
        onSuccess: function(transport){
            Loader(false);
            var response = transport.responseText.evalJSON();
            if(response.status_code == 1){
                $('archive_url_' + id).href  = response.archive_url;
                $('archive_url_' + id).name  = response.archive_url;
                $('archive_img_' + id).src   = '/img/download_zip.png';
            }
        },
        onFailure: function(transport){   
            Loader(false);
            showDialog('Message', 'Internal Server Error...', 'warning');
        },
        onException: function(transport){
            Loader(false);
            showDialog('Message', 'Internal Server Error...', 'warning');
        }
    });
    
	return false;
}


