
function complete_hover(e) {
    var btn = document.getElementById('complete_btn');
    if(e.type == 'mouseover')
        btn.src = complete_reading_img.src;
    else if(e.type == "mouseout")
        btn.src = "http://gfx.tarot.com/images/tarot2/nav-btns/karmacoinbag-anim-off.gif";
}

function steps_display(e)
{
  var target;
  var myClass;
  var imgsrc;
  if(e.srcElement){
    target=e.srcElement.id;
    myClass=e.srcElement.className;
  }
  else if(e.target){
    target = e.target.id; 
    myClass=e.target.className;
  } else if ( e = 'rshuffle'){
    target = 'rshuffle';
  }

 if(target == 'rshuffle' || target == 'flash_shuffle' || target == 'flash_shuffle2' || myClass == 'mix_card1' || myClass == 'mix_card2' || target == 'skip_shuffle' || target == 'rshuffle_text')
 {
   document.getElementById('step1').style.display="none";
   document.getElementById('step2').style.display="block";
   if ( document.getElementById('fan_cover')){
       document.getElementById('fan_cover').style.display='none';
   }
   spread_div = 'spread';
   if (mydeck.pick_number > 0){
       spread_div = spread_div + '_' + mydeck.pick_number;
   }
   if ( document.getElementById(spread_div) ){
       document.getElementById(spread_div).style.display="block";
   }
   if ( document.getElementById('spread_background') ){
       document.getElementById('spread_background').style.display="block";
   }
   //if (typeof disableScrolls != 'undefined' && disableScrolls ){
       //document.getElementById('scroll_image').src="http://gfx.tarot.com/images/blank.gif";
   //}
 }
 /*if(mydeck.position_count == mydeck.nocardspicked)
	{
	  document.getElementById('step1').style.display="none";
      document.getElementById('step2').style.display="none";
	  document.getElementById('step3').style.display="block";
	}
 */
}

function shuffle_assign_cards(e)
{
  var type = ReadingData['Reading']['ShuffleType'];
  mydeck.upright_shuffle(1);
}

function shuffle_event_handler(e)
{
  var type = ReadingData['Reading']['ShuffleType'];
  var target;
  var imgsrc;
  if(e.srcElement){
    target=e.srcElement.id;
	imgt=e.srcElement;	
  }
  else if(e.target){
    target = e.target.id; 
	imgt = e.target;
  }

  if(type == 'mandala')
  {
	imgt.src = shuffle_img.src;
    mydeck.rotate_shuffle(1);
  }
  else
  {
    imgt.src = shuffle_img.src;
    mydeck.upright_shuffle(1);
  }
}

var picked_cards = new Array();
//reference to name property of ghost image
var inames = new Array();


function flip_all()
{
  if(mydeck.position_count == mydeck.nocardspicked)
  {

        var flip_interval = window.setInterval(flip_all_helper,7);
  }
  else
  {
        alert("Please pick more cards to continue with this reading");   
  }
  return false;
}
var flipped_count =0;
var flipped = new Array();
flip_interval=0;

function flip_all_helper()
{  
	if(flipped_count==mydeck.position_count)
    {
       window.clearInterval(flip_interval);
    }
    else
    {
        flipped_count++;
		flip_over(flipped_count);
    }

}

function flip_over(num) {
  num=num-1; //to get array position
  for(var i=0; i<flipped.length; i++)
  {
    if(flipped[i]==num)
	{
		return i;
	}
  }
  if(mydeck.position_count != mydeck.nocardspicked && (typeof autoFlipCards == 'undefined' || ! autoFlipCards))
  {
    alert("Please Pick All Your Cards"); 
	return;
  }  
  else{
    if(document.images){
        document.images[inames[num]+"_img"].src = picked_cards[num].src;
        document.images[inames[num]+"_img"].alt = picked_cards[num].alt;
        document.images[inames[num]+"_img"].prototype = picked_cards[num].prototype;
        card_name_container = document.getElementById(inames[num]+'_txt');
        card_name_container.innerHTML = document.images[inames[num]+"_img"].alt;
        document.images[inames[num]+"_img"].onclick=null;
        if (typeof product_id != 'undefined'){
            /*  This is to open the enlarged image in a div, disable in the product specific javascript file */
            if ( typeof disableFlipCards == 'undefined' ){
                document.images[inames[num]+"_img"].onmouseover = show_blowup;
                $do_not = false;
                if (typeof no_hide_blowup == 'object'){
                    for($y=0;$y<no_hide_blowup.length;$y++){
                       if (num == no_hide_blowup[$y] - 1 ){ $do_not = true; }
                    }
                }
                if (! $do_not){
                   document.images[inames[num]+"_img"].onmouseout = hide_blowup;
                } 
            }
            if (typeof disableCardName == 'undefined' || disableCardName ){
              card_name_container.style.display = 'none';
            }
            if(flipped.length + 1 == mydeck.position_count)
            {
                present_submit_page();
            }
        }
        
		document.images[inames[num]+"_img"].style.cursor='default';
		mydeck.revealed++;
		flipped[flipped.length] = num;
    }
  }
	if ( mydeck.position_count ==  flipped.length  && typeof(product_id) != 'undefined'){
		for (var n=1;n<=mydeck.position_count;n++){
             document.getElementById("position"+ n +"_img").onclick = check_numbers;
             document.getElementById("position"+ n +"_img").style.cursor = "pointer";
		}
	}
}

function flip_all_hidden(){
    for(var g=0; g<mydeck.position_count;g++){
        flipped[g] = g;
    }
    present_submit_page();
}

function present_submit_page(){
        /* Swap the background and make scroll div invisble */
        document.getElementById('scroll_container3').style.display = 'none';
        if ( typeof PURCHASE_BG != 'undefined' && PURCHASE_BG ){
          document.getElementById('your_concerns').style.background = 'url("' + IMAGES_URL + 'images/product/en_us/' + product_id + '/backgrounds/purchase.jpg") no-repeat';
        }
        document.getElementById('complete_btn_container').style.display = "block";
       	$('.hdr_help_button').href = "javascript:readingHelp2(" + product_id +", '');";
       	$('.ftr_help_button').href = "javascript:readingHelp2(" + product_id +", '');";
}

// change the picked cards laying there in the spread
// to use the new deck.
// called by the change_deck method in the deck.js
function change_picked_cards_deck (new_deck)
{
  var total_cards_picked = mydeck.position_count;
  // card back is the same for all picked cards
  var new_card_back = new Image();
  var new_card_face = new Image();

  //loop thru the picked cards & update each
  for (var i = 1; i <= total_cards_picked; i++)
  {
    // ref to the div that holds the img
    var card_img_div_id = "position"+i;
    if (  mydeck.pick_number > 0){
        card_img_div_id = card_img_div_id + '_' + mydeck.pick_number;
    }
    var card_img_div = document.getElementById(card_img_div_id);
    if (document["hidden_form"]){
        var card_id = document["hidden_form"]["TF_card"+i].value;
    } else {
        var card_id = document["main"]["card_"+i+"_tarot"].value;
    }
    
    // update card name
    var card_name_div_id = document.getElementById(card_img_div_id+"_txt");
    var card_name_str = mydeck.card_names_by_id[card_id];
        
    // reference to each card image
    var cur_img_obj = document.getElementById(card_img_div_id+"_img");

    // card front
    var card_in_deck = mydeck.picked_cards_access[card_id];
    new_card_face.src = mydeck.cards[card_in_deck].get_card_image_src(card_img_div_id);
    new_card_face.prototype = mydeck.cards[card_in_deck].get_large_image_src(card_img_div_id);
    new_card_back.src = mydeck.cards[card_in_deck].get_ghost_image_src(card_img_div_id);
    // this takes care of cards that haven't been flipped yet
    picked_cards[i-1].src = new_card_face.src;
    picked_cards[i-1].prototype = new_card_face.prototype;
    picked_cards[i-1].alt = card_name_str;
    
    // see if the card has been flipped by looping thru the flipped array
    // i is the picked card, 1 based
    // flipped stores flipped cards, 0 based
    var flipped_test = false;
    for (var q = 0; q < flipped.length; q++)
    {
      if (flipped[q] == i-1)
      {
        flipped_test = true;
        break;
      }
    }
    
    // now do the image swaps based on card flipped status
    if (flipped_test && typeof disableFlipCards == 'undefined')
    {
      cur_img_obj.src = new_card_face.src;
      cur_img_obj.prototype = new_card_face.prototype;
      cur_img_obj.alt = card_name_str;
      // update card name if the card has been fliped 
      card_name_div_id.innerHTML = card_name_str;
    } else {
      cur_img_obj.src = new_card_back.src;
    }

  }   // end of for each picked card loop


  
} // end of function 


function complete_reading() {
    var newdeck ='';

    if(mydeck.position_count != mydeck.nocardspicked) {
        alert("You must finish choosing your cards before you can complete your reading.");
        return;
    }
    if(mydeck.revealed != mydeck.position_count) {
        alert("You must finish revealing your cards before you can complete your reading.");
        return;
    }
    if ( typeof document.forms["hidden_form"] != 'undefined' ){
        document.hidden_form.submit();
    } else {
        document.getElementById("default_submit").click();
    }
}

function raise_card(){
    var increase_height = '0px';
    // Raise and lower
    $("#" + this.id ).animate({top:"-=9px"},150).animate({top:"+=9px"},300);
}


