﻿$('document').ready(function(){        
    //reset and init form        
    $('form :input').each(function() {
        var type = this.type, tag = this.tagName.toLowerCase();
        if (type == 'text' || type == 'password' || tag == 'textarea')
            this.value = '';
        else if (type == 'checkbox' || type == 'radio')
            this.checked = false;
        else if (tag == 'select')
            this.selectedIndex = -1;
    });
    //show hide newsletter signup
    $('#newsletter_yes').click(function(){
        $('#pc-form-additional-newsletter').slideDown('slow');
    });
    $('#newsletter_no').click(function(){
        $('#pc-form-additional-newsletter').slideUp('slow');
    });
    
    arrChecklistImages = [
    "face_left_on",
    "face_right_on",
    "torso_left_on",
    "torso_right_on",
    "chest_left_on",
    "chest_right_on",
    "leg_f_left_on",
    "leg_f_right_on",
    "upper_arm_left_on",
    "upper_arm_right_on",
    "lower_arm_left_on",
    "lower_arm_right_on",
    "hand_f_left_on",
    "hand_f_right_on",
    
    "face_left_over",
    "face_right_over",
    "torso_left_over",
    "torso_right_over",
    "chest_left_over",
    "chest_right_over",
    "leg_f_left_over",
    "leg_f_right_over",
    "upper_arm_left_over",
    "upper_arm_right_over",
    "lower_arm_left_over",
    "lower_arm_right_over",
    "hand_f_left_over",
    "hand_f_right_over",
    
    "face_left_active",
    "face_right_active",
    "torso_left_active",
    "torso_right_active",
    "chest_left_active",
    "chest_right_active",
    "leg_f_left_active",
    "leg_f_right_active",
    "upper_arm_left_active",
    "upper_arm_right_active",
    "lower_arm_left_active",
    "lower_arm_right_active",
    "hand_f_left_active",
    "hand_f_right_active",
    
    "lower_back_left_on",
    "lower_back_right_on",
    "upper_back_left_on",
    "upper_back_right_on",
    "leg_b_left_on",
    "leg_b_right_on",
    "upper_arm_b_left_on",
    "upper_arm_b_right_on",
    "lower_arm_b_left_on",
    "lower_arm_b_right_on",
    "hand_b_left_on",
    "hand_b_right_on",
    
    "lower_back_left_over",
    "lower_back_right_over",
    "upper_back_left_over",
    "upper_back_right_over",
    "leg_b_left_over",
    "leg_b_right_over",
    "upper_arm_b_left_over",
    "upper_arm_b_right_over",
    "lower_arm_b_left_over",
    "lower_arm_b_right_over",
    "hand_b_left_over",
    "hand_b_right_over",
    
    "lower_back_left_active",
    "lower_back_right_active",
    "upper_back_left_active",
    "upper_back_right_active",
    "leg_b_left_active",
    "leg_b_right_active",
    "upper_arm_b_left_active",
    "upper_arm_b_right_active",
    "lower_arm_b_left_active",
    "lower_arm_b_right_active",
    "hand_b_left_active",
    "hand_b_right_active"
    ];
    
    
    $(arrChecklistImages).preload({
        onFinish: function(data){
          //completed loading
          //reveal checklist
          $('#loader').css('display','none');
          $('#pain-checklist').css('display','block');
          initChecklist();
        },
        base: "../img/checklist/",
        ext: ".png"
    });
    
    var initChecklist = function(){
        //init checklist hotspots
        var activeItem = null;        
        $('area').mouseover(function(){
            if (!activeItem) $("#pc-"+this.id).addClass("pc-"+this.id+"-over");
        }).mouseout(function(){
            if (!activeItem) $("#pc-"+this.id).removeClass("pc-"+this.id+"-over");
        }).click(function(e){
            if (!activeItem) {
                //get form values and set form
                $("#pain-checklist-form input:checked").attr("checked", false);
                itemVals = $("input[name='pc-"+ this.id +"-values']").val().split("&");
                for (i=0;i<itemVals.length;i++){
                    $("input[name='" + itemVals[i].split("=")[0] +"']").attr("checked", true);
                }
                //show active style, disable rollovers, set title, position form and show it
                $("#pc-"+this.id).addClass("pc-"+ this.id+"-active");
                var painFormDiv = $('#pain-checklist-form-wrapper');
                painFormDiv.css('top',e.pageY - $('#pain-checklist').offset().top - 80);
                painFormDiv.css('left',e.pageX - $('#pain-checklist').offset().left+ 12);
                painFormDiv.css('display','block');
                $('#pain-checklist-form-title').text($(this).attr("name"))
                activeItem = this.id;
             }
        });
        
        $('#pain-checklist-form-close').click(function(){
            //revert mouseevents, close form
            $("#pc-"+activeItem).removeClass("pc-"+activeItem+"-active");                
            $("#pc-"+activeItem).removeClass("pc-"+activeItem+"-over");
            activeItem = null;
            $('#pain-checklist-form-wrapper').css('display','none');
        });
        
        //init save feature
        $('#saveButton').click(function(){
            //store checkbox values in hidden fields 
            var vals = "";           
            $('#pain-checklist-form input:checked').each(function(i,val){
                vals += val.id + "=On&"
            });
            //show completed body part, list, and add values to hidden fields
            if (vals.length > 0) {
                $("#pc-"+activeItem).addClass("pc-"+activeItem+"-on");
                $("input[name='pc-"+ activeItem +"-values']").val(vals);
                var view = $("#pc-front").css("display") == "block" ? "front" : "back";
                if (!$("#list-"+ activeItem).length > 0 ) $("#"+ view +"-list").append('<li id="list-'+ activeItem +'">' + $('#pain-checklist-form-title').text() + '</li>');
            } else {
                $("#list-"+ activeItem).remove();
                $("#pc-"+activeItem).removeClass("pc-"+activeItem+"-on");
                $("input[name='pc-"+ activeItem +"-values']").val("");
            }
            $("#pain-checklist-form-close").trigger('click');
        });
        
        //animate checklist
        $(this).delay(500,function(){$("#face-right").trigger('mouseover');});
        $(this).delay(1000,function(){$("#face-right").trigger('mouseout');});

        $(this).delay(1000,function(){$("#face-left").trigger('mouseover');});
        $(this).delay(1500,function(){$("#face-left").trigger('mouseout');});

        $(this).delay(1500,function(){$("#torso-left").trigger('mouseover');});
        $(this).delay(2000,function(){$("#torso-left").trigger('mouseout');});

        $(this).delay(2000,function(){$("#torso-right").trigger('mouseover');});
        $(this).delay(2500,function(){$("#torso-right").trigger('mouseout');});

        $(this).delay(2500,function(){$("#chest-left").trigger('mouseover');});
        $(this).delay(3000,function(){$("#chest-left").trigger('mouseout');});

        $(this).delay(3000,function(){$("#chest-right").trigger('mouseover');});
        $(this).delay(3500,function(){$("#chest-right").trigger('mouseout');});

        $(this).delay(3500,function(){$("#upperarm-right").trigger('mouseover');});
        $(this).delay(4000,function(){$("#upperarm-right").trigger('mouseout');});

        $(this).delay(4000,function(){$("#upperarm-left").trigger('mouseover');});
        $(this).delay(4500,function(){$("#upperarm-left").trigger('mouseout');});

        $(this).delay(4500,function(){$("#lowerarm-left").trigger('mouseover');});
        $(this).delay(5000,function(){$("#lowerarm-left").trigger('mouseout');});

        $(this).delay(5000,function(){$("#lowerarm-right").trigger('mouseover');});
        $(this).delay(5500,function(){$("#lowerarm-right").trigger('mouseout');});

        $(this).delay(5500,function(){$("#hand-right").trigger('mouseover');});
        $(this).delay(6000,function(){$("#hand-right").trigger('mouseout');});

        $(this).delay(6000,function(){$("#hand-left").trigger('mouseover');});
        $(this).delay(6500,function(){$("#hand-left").trigger('mouseout');});

        $(this).delay(6500,function(){$("#leg-left").trigger('mouseover');});
        $(this).delay(7000,function(){$("#leg-left").trigger('mouseout');});

        $(this).delay(7000,function(){$("#leg-right").trigger('mouseover');});
        $(this).delay(7500,function(){$("#leg-right").trigger('mouseout');});
        
        $(this).delay(7500,function(){
            //init view toggle
            $('#viewButton').click(function(){
                if ($('#pc-front').css('display') == 'block'){
                    $('#pc-front').css('display','none');
                    $('#pc-back').css('display','block');
                    $('#viewButton').addClass("viewButtonBack");
                } else {
                    $('#pc-front').css('display','block');
                    $('#pc-back').css('display','none');
                    $('#viewButton').removeClass("viewButtonBack");
                }
            });
        });
    }
});
