
$j = jQuery.noConflict();

Ajax.Base.prototype.initialize = Ajax.Base.prototype.initialize.wrap(
    function(p, options){
        p(options);
        this.options.parameters = this.options.parameters || {};
        this.options.parameters.authenticity_token = window._token || '';
    }
);

function get_element_checked(type_element){
    var  selected_elements = "";
    $$('input.'+type_element).each(function(elt) {
        if (elt.checked == true){
            selected_elements += elt.value + '$';
        }
    });
    return selected_elements;
}

function choose_right_values(value){
    if(value == 1){
        return false;
    }
    else{
        return true;
    }
}

function get_input_text(type_element){
    var basket_name = "";
    $$('input.'+type_element).each(function(elt) {
        basket_name += elt.value;
    });    
    return basket_name;
}

function change_input_text_status(elt){
    input = $j(elt).parent().parent().find('input')
    if (elt.value == '0'){
        input.attr('readonly', true);
        input.val("");
    }
    else{
        input.removeAttr('readonly');
    }
}

function empty_values_for_photographer_references_line(elt){
    $j(elt).parent().parent().find('.column2').find('select').val('');
    $j(elt).parent().parent().find('.column3').find('select').val('');
    $j(elt).parent().parent().find('input').val('');
}

function activate_user(elt){  
    login = $j('.login').find('input')
    password = $j('.password').find('input')
    if (elt.checked){
        login.removeAttr('disabled');
        password.removeAttr('disabled');
    }
    else{
        login.attr('disabled', true);
        password.attr('disabled', true);
    }
}

function show_popup(div_id){
    $j.prompt($j('#'+div_id).html(),{
        show:'slideDown'
    });
}


function verify_parameters(msg1, msg2, method){
    count = 0;
    if(method == "edit"){
        $$('div.checked').each(function(elt) {
            count += 1;
        });
    }
    else {
        $$('input.portfolio_categ_checked').each(function(elt) {
            if (elt.checked == true){
                count += 1;
            }
        });
    }
    if($('specialized').checked == true){
        if(count == 1) { 
            return true;
        } else { 
        alert(msg1);
    }
}  // fin if specialized
else{
    if(count == 1 || count == 2 || count == 3) {           
        return true;
    } else { 
    alert(msg2);
}
// fin if
}  // fin else
return false;
}

function close_popup(){
    $j.modal.close();
}

function show_popup_modal(div_id){
    if(div_id == "edit_portfolio" || div_id == "new_portfolio")
        $j("ul.tree").checkTree({});
    $j('#'+div_id).modal();
}





$j(document).ready(function () {
    $j('a.basic').click(function (e) {
        e.preventDefault();
        $j('#basicModalContent').modal();
    });
});


Ajax.Responders.register({
    onComplete: function(responder, request){
        var response = (request.responseText.evalJSON(true)); 
        
        if (response.object)  {
            
            // Remove old errors
            $(response.object + "_form").select(".input_error").invoke("removeClassName", "input_error");
            $(response.object + "_form").select(".error_message").invoke("remove");
            
            // Success: clear all input with text
            if (response.success) {
                
                var form = $(response.object + "_form");
                form.select(".text").each(function(element) {
                    element.value = ""
                });
            }
            // Else add error by creating a div with error message
            else {
                
                response.errors.each(function(error) {
                    var element = $(response.object + "_" + error[0]);
                    if (element) {
                        element.addClassName("input_error");
                        if (error[0] != "first_name" && error[0] != "last_name" && error[0] != "tel_direct_line" && error[0] != "password_confirmation" && error[1] != "can't be blank" && error[0] != "events_name"){
                            element.insert({
                                after: new Element("div", {
                                    className: "error_message"
                                }).update(error[1])
                            });
                        }
                    }
                })
            }
        }
    }
});

function select_check_box(check_id, token_name, checked, name_list_euro, name_list_dollar){
    var e = name_list_euro.split(',')
    var d = name_list_dollar.split(',')
    
    $j('#regular_price_euro').hide();   
    $j('#regular_price_dollar').hide();
    
    for (var i = 0; i < e.length; i++){
        $(e[i]+'_tokens_e').checked = false;
        $j('#regular_'+e[i]+'_tokens_euro').hide();
        
    }
    for (var i = 0; i < d.length; i++){
        $(d[i]+'_tokens_d').checked = false;
        $j('#regular_'+d[i]+'_tokens_dollar').hide();
    }
    
    if (checked == true){
        $(check_id).checked = true;        
        document.getElementById("client_price_id").value = $(check_id).value ;
        $('client_subscription_regular').checked = true;
        $j('#regular_'+token_name+'_tokens_euro').show();
        $j('#regular_'+token_name+'_tokens_dollar').show();
        $j('#regular_price_euro').hide();
        $j('#regular_price_dollar').hide();        
    }
    else{        
        $(check_id).checked = false;
        document.getElementById("client_price_id").value = "";
        $j('#regular_'+token_name+'_tokens_euro').hide();
        $j('#regular_'+token_name+'_tokens_dollar').hide();
        $j('#regular_price_euro').show();
        $j('#regular_price_dollar').show();            
    }    
}

function display_regular_price(name_list_euro, name_list_dollar){
    var e = name_list_euro.split(',')
    var d = name_list_dollar.split(',')    
    
    for (var i = 0; i < e.length; i++){
        $(e[i]+'_tokens_e').checked = false;
        $j('#regular_'+e[i]+'_tokens_euro').hide();
        
    }
    for (var i = 0; i < d.length; i++){
        $(d[i]+'_tokens_d').checked = false;
        $j('#regular_'+d[i]+'_tokens_dollar').hide();
    }
    
    $j('#regular_price_euro').show();
    $j('#regular_price_dollar').show();
    
    
}

function select_check_box_2(check_id, token_name, checked, name_list_euro, name_list_dollar){
    var e = name_list_euro.split(',')
    var d = name_list_dollar.split(',')
    
    $j('#regular_price_euro').hide();
    $j('#regular_price_dollar').hide();
    
    for (var i = 0; i < e.length; i++){
        $(e[i]+'_tokens_e').checked = false;
        $j('#regular_'+e[i]+'_tokens_euro').hide();
        
    }
    for (var i = 0; i < d.length; i++){
        $(d[i]+'_tokens_d').checked = false;
        $j('#regular_'+d[i]+'_tokens_dollar').hide();
    }
    
    if (checked == true){
        $(check_id).checked = true;
        document.getElementById("client_credits_token_id").value = $(check_id).value ;
        $('client_credits_subscription_extra_tokens').checked = true;
        $j('#regular_'+token_name+'_tokens_euro').show();
        $j('#regular_'+token_name+'_tokens_dollar').show();
        $j('#regular_price_euro').hide();
        $j('#regular_price_dollar').hide();
    }
    else{
        $(check_id).checked = false;
        document.getElementById("client_credits_token_id").value = $(check_id).value ;
        $j('#regular_'+token_name+'_tokens_euro').hide();
        $j('#regular_'+token_name+'_tokens_dollar').hide();
        $j('#regular_price_euro').show();
        $j('#regular_price_dollar').show();
    }
}

function display_regular_price_2(name_list_euro, name_list_dollar){
    var e = name_list_euro.split(',')
    var d = name_list_dollar.split(',')
    
    for (var i = 0; i < e.length; i++){
        $(e[i]+'_tokens_e').checked = false;
        $j('#regular_'+e[i]+'_tokens_euro').hide();
        
    }
    for (var i = 0; i < d.length; i++){
        $(d[i]+'_tokens_d').checked = false;
        $j('#regular_'+d[i]+'_tokens_dollar').hide();
    }
}


function change_selected_input(text){
    jQuery("input:text").parent().html(jQuery("input:text").attr('alt'));
}



function verify_formatt_of_email(tag_id, message_id, message){
    $j(".error, .success").empty();
    $j(".error, .success").hide();
    if ($(tag_id).value== '') {
        $j("#"+message_id).append('<div class="error">'+message+'</div>');
        $j("#"+message_id).animate({
            left: 50,
            opacity: 'show'
        }, "slow");
        return false ;
    }else{
    return true ;
}
}

function verify_format_of_email(){
    var regular_exp =/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
    var result = true
    var email;
    for(i=1; i<6; i++){
        email = $j('#email_'+i).val();
        
        if (regular_exp.exec(email) == null && email != ""){
            result = false;
            if(email != ""){
                $j('#email_'+i).css({border:'2px solid red'});
            }
            $j('#message_error').show();
        }
        else{
            if(email != ""){
                $j('#email_'+i).css({border:'1px solid black'});
            }
        }        
    }    
    return result;
}

function set_helper(elt){
    new Ajax.Request('/set_helper', {asynchronous:true, evalScripts:true, method:'get', parameters:'element_id=' + elt })
}

$j(document).ready(function(){   
    $j(".edit_photo").editInPlace({    
        url: "/set_legende",
        params: "legende=photo"   
    });
});

$j(document).ready(function(){   
    $j(".edit_video").editInPlace({    
        url: "/set_legende",
        params: "legende=video"    
    });
});

$j(document).ready(function(){   
    $j(".edit_photo_rep_photo").editInPlace({    
        url: "/set_legende_rep_photographer",
        params: "legende=photo"   
    });
});

$j(document).ready(function(){   
    $j(".edit_video_rep_photo").editInPlace({    
        url: "/set_legende_rep_photographer",
        params: "legende=video"    
    });
});

function set_dates(ref, input){
    if ($j('#'+ref).find('.begin').find('input').val() != ""){  
        var begin_date_string = $j('#'+ref).find('.begin').find('input').val();
        var begin_date = new Date(begin_date_string.substr(0,4), begin_date_string.substr(5,2), begin_date_string.substr(8,2));
    }
    
    if ($j('#'+ref).find('.end').find('input').val() != ""){    
        var end_date_string = $j('#'+ref).find('.end').find('input').val();
        var end_date = new Date(end_date_string.substr(0,4), end_date_string.substr(5,2), end_date_string.substr(8,2));
    }
    
    if (input == "begin"){   
        if ($j('#'+ref).find('.end').find('input').val() == "" || begin_date > end_date){$j('#'+ref).find('.end').find('input').val($j('#'+ref).find('.begin').find('input').val());}
    }
    else{        
        if (begin_date > end_date){$j('#'+ref).find('.begin').find('input').val($j('#'+ref).find('.end').find('input').val());}
    }
}

function search_main_category(category_type){  
    var categories = new Array();
    i = 0;
    $j("input[name^='portfolio_categories[]']:checkbox").each(function(){
        if(this.checked) {      
            categories[i] = $j(this).parent().find("label").html();
            i += 1;
        }
    });  
    if (categories.length == 0){
        $j("#cat-selected").removeClass("link");    
    }
    else{
        $j("#cat-selected").addClass("link");     
    }
    $j("#cat-selected").html(categories.join(", "));    
    if (category_type == "sports"){
        $j("#head-sport-space").toggle();
        $j('#sport-selected').html("");
        $j("input[name^='sport_categories']:radio").each(function(){
            if(this.checked) {
                $j(this).removeAttr("checked");
            }
        });
    }  
}

function search_sub_sport_category(category_name){
    $j('#sport-selected').addClass("link");
    $j('#sport-selected').html(category_name);  
    $j('#sport-space').hide();
}

function search_assignments(){
    var assignments = new Array();
    i = 0;
    $j("input[name^='assignments[]']:checkbox").each(function(){
        if(this.checked) {      
            assignments[i] = $j(this).parent().find("label").html();
            i += 1;
        }
    }); 
    if (assignments.length == 0){
        $j("#assignments-selected").removeClass("link");    
    }
    else{
        $j("#assignments-selected").addClass("link");     
    }
    $j("#assignments-selected").html(assignments.join(", "));
}

function search_clear_all(){
    $j("#photographer").removeAttr("checked");
    $j("#videographer").removeAttr("checked");
    $j("#cat-space").hide();
    $j("#head-sport-space").hide();
    $j("#sport-space").hide();
    $j('#ass-space').hide();
    $j("#cat-selected").html("");
    $j("#sport-selected").html("");
    $j("#assignments-selected").html("");
    $j("input[name^='sport_categories']:radio").each(function(){
        if(this.checked) {
            $j(this).removeAttr("checked");
        }
    });
    $j("input[name^='portfolio_categories[]']:checkbox").each(function(){
        if(this.checked) {
            $j(this).removeAttr("checked");
        }
    });
    $j("input[name^='assignments[]']:checkbox").each(function(){
        if(this.checked) {
            $j(this).removeAttr("checked");
        }
    });   
    $j('#country_id').selectOptions('');
    $j('#state_id').selectOptions('');
    $j('#city_id').selectOptions('');
    $j('#whereabout_begin_date').val('');
    $j('#whereabout_end_date').val('');
    $j('#digital').removeAttr('checked');
    $j('#analog').removeAttr('checked');
    $j('#male').removeAttr('checked');
    $j('#female').removeAttr('checked');
    $j('#language_id').selectOptions('');
    $j('#nationality_id').selectOptions('');
    $j("#tech-selected").html("");
    $j("input[name^='tech_infos[]']:checkbox").each(function(){
        if(this.checked) {
            $j(this).removeAttr("checked");
        }
    });
    $j('#award').val('');
    $j('#client_name').val('');
    $j('#country_visa').selectOptions('');
    $j('#ability_id').selectOptions('');
    $j('.form-checkbox').each(function(){
        if(this.checked) {
            $j(this).removeAttr("checked");
        }
    });   
}

function verify_empty_elements(message){
    var empty_category = true;
    var empty_assignment = true;
    $j("input[name^='portfolio_categories[]']:checkbox").each(function(){
        if(this.checked){empty_category = false;}
    });
    $j("input[name^='assignments[]']:checkbox").each(function(){
        if(this.checked){empty_assignment = false;}
    });
    if (empty_assignment || empty_category){    
        $j(".error").html(message);
        $j(".error").show();
    }
    return (!empty_assignment && !empty_category);
}

function verify_empty_event(message){
    if ($j('#event_event').val() == ""){
        $j(".error").html(message);
        $j(".error").show();
    }
    return ($j('#event_event').val() != "");
}

function search_tech_infos(){  
    var techs = new Array();
    i = 0;
    $j("input[name^='tech_infos[]']:checkbox").each(function(){
        if(this.checked) {            
            techs[i] = $j(this).parent().find("label").html();
            i += 1;
        }
    });
    $j("#tech-selected").addClass("link");
    $j("#tech-selected").html(techs.join(", "));
}

function empty_tech_infos(){
    $j("#tech-selected").removeClass("link");
    $j("#tech-selected").html("");
    $j("input[name^='tech_infos[]']:checkbox").each(function(){
        if(this.checked) {
            $j(this).removeAttr("checked");
        }
    });
}

function show_loading(){
    show_popup_modal('indicator');
    return true;
}

function show_loading_indicator(){
    show_popup_modal('loading_indicator');
    return true;
}


function toggle_row(month_id){
    hide_rows_by_months(month_id);
    $$('tr.class_month_id_'+month_id).each(function(elt) {
        elt.toggle();
    });
}

function hide_rows_by_months(month_id){
        $$('tr.month_id_'+ month_id).each(function(elt) {
            elt.hide();
        });
}

function toggle_categories_rows(month_id, class_id){
    if(class_id == 3){
        $$('tr.month_class_'+month_id + '_' + class_id).each(function(elt) {
            elt.toggle();
        });

    }
    else{
        hide_rows_by_class(month_id, class_id);
            $$('tr.category_class_'+month_id + '_' + class_id).each(function(elt) {
            elt.toggle();
        });
    }
    
}

function hide_rows_by_class(month_id, class_id){
    $$('tr.month_class_'+ month_id + '_' + class_id).each(function(elt) {
            elt.hide();
        });
}
function toggle_class_row(month_id, class_id){
    $$('tr.category_month_id_'+ month_id + '_' + class_id).each(function(elt) {
        elt.toggle();
    });
}

function toggle_categorie_row(month_id, class_id, category_id){
    $$('tr.status_id_'+ month_id + '_' + class_id + '_' + category_id).each(function(elt) {
        elt.toggle();
    });
}


function get_select_country(category_id, msg){
    country_id = $j("#rss_country").val();       
    if(country_id > 0)
        window.location = "/rss_feeds?category_id="+category_id+"&country_id="+country_id;
    else
        alert(msg);
    return true
}

function desactivate_all_checkbox(checkbox_class){
    var e;
    var i;
    
    if(checkbox_class == "activate_client"){
        e = get_element_checked('prospect_client');
        $('prospect_client_checkbox_' + e.split('$')[0]).checked = false;
    }
    
    if(checkbox_class == "confirmed_invoice"){
        e = get_element_checked('invoice_client');
        $('invoice_client_checkbox_' + e.split('$')[0]).checked = false;
    }
    
    if(checkbox_class == "confirmed_source_invoice"){
        e = get_element_checked('source_invoice');
        $('source_invoice_checkbox_' + e.split('$')[0]).checked = false;
    }
    if(checkbox_class == "delete_reduction"){
        e = get_element_checked('delete_reduction');
        $('reduction_checkbox_' + e.split('$')[0]).checked = false;
    }
    if(checkbox_class == "client_price_checked"){
        $$('input.client_price_checked').each(function(elt) {
            if (elt.checked == true){
                elt.checked = false;
            }
        });
    }
    
}


function get_value_radio(payment_method){
    return $j("input[name='" + payment_method +"']:checked").val();
}

function imprime_recap(div_id){
    var div_for_print = document.getElementById(div_id).innerHTML;
    var f = window.open("", "Recap", "height=500, width=600, toolbar=0, menubar=0, scrollbars=1, resizable=1, status=0, location=0, left=10, top=10"); 
    f.document.body.style.color = '#000000';
    f.document.body.style.backgroundColor = '#FFFFFF';
    f.document.body.style.padding = "10px";
    f.document.body.style.fontWeight = "bold";
    f.document.title = "Recap";
    f.document.body.innerHTML +=  div_for_print; 
    f.window.print();
    f.window.close();
    return true;
} 

function get_number_of_invoice(type_element){
    var  selected_elements = "";
    $$('input.'+type_element).each(function(elt) {
        selected_elements += elt.value + '$';
    });
    return selected_elements;
}

function payment_type(card_type){
    if ($j("input[type=radio][name^='payment_method']:checked").val() == "CB"){
        if (card_type == "VISA"){     
            $j('#visa_card').addClass('selected_payment');
            $j('#master_card').removeClass('selected_payment');
            
        }
        else{
            $j('#master_card').addClass('selected_payment');
            $j('#visa_card').removeClass('selected_payment');
        }    
    }  
}

function activate_token_chekbox(checkbox_id, price, button_name, token_price_id){
    if( $('token_price_id_' + checkbox_id).checked == true){
        if($(button_name).checked == false){
            $(button_name).checked = true;
        }
        desactivate_all_checkbox("client_price_checked");
        $('token_price_id_' + checkbox_id).checked = true;
        $('token_id').value = token_price_id;
    }
    else{
        desactivate_all_checkbox("client_price_checked")
        $('token_id').value = ""
    }
    if($('token_price_id_' + checkbox_id).checked == true){
        document.getElementById('regular-price').innerHTML = price;
    }
    else{
        document.getElementById('regular-price').innerHTML = "";
    }
    
}

function initialize_token_id_value(premium_suscribtion_price_id){
    desactivate_all_checkbox("client_price_checked")
    $('token_id').value = premium_suscribtion_price_id;
}

function get_currency_id(){
    if($('client_currency_id_1').checked == true) {
        return 1;
    }
    else{
        return 2;    
    }
}

function initialize_regular_amount(){
    document.getElementById('regular-price').innerHTML = "";
}

function verify_disabling_reason(){  
  if ($j.trim($j('#disabling_reason').val()) == ""){
    $j("#disabling_reason").css({border:'2px solid red'});
    return false;
  }
  else{
    return true;
  }
}
