$(function() {  
        //setup 
   $("#history").children('h1').click(function() {$(this).siblings('ol').toggleClass('hide')});     
   $('#hand > li ').livequery('click', function (event) {
       $(this).toggleClass('draw').children('input').click(); 
       }).addClass('hide');
  $('#hand').sortable();
  $('.start').addClass('hide'); 
  $('.s').addClass('hide');
  $('#nocards').addClass('hide');

makecall= function (domid){  
     $(domid).removeClass('hide');
     setTimeout(function(){$(domid).addClass('hide')}, 4000);
     }; 
 
     $('#hail >span').addClass('hide'); 

//ajaxsubmit funcs     
//
befsub = function () {
switch ( ($("li > input").fieldValue()).length) {
  case 4: 
   if (count>1) 
     {makecall('#dr4');}
     else {makecall('#m4');}
   break;
  case 5: 
   if (count>1) 
     {makecall('#dr5');}
     else {makecall('#m5');}
   break;
   };
};

sucsub = function() {
 count++;
 $("#hand > li").children('input').clearFields().end().removeClass('draw');
 var htype = $('#htype').text(); 
 var score = $('#score').text();
 $('#history ol').append('<li>'+htype+'<br/>'+score+'</li>');
 $('.tomove').removeClass('tomove'); 
};

   $('#gs').ajaxForm({
beforeSubmit: befsub,
 success: sucsub
 });  

//new game
//
newgame = function ()  {
       $('input[name=gid]').val('');
       count = 0; 
       $('#history ol').empty();
       $('.s').addClass('hide');
       return true;
};

   $('input[name=shuffle]').click(newgame); 
//   $.taconite.debug = true;

 //end game  
   namescore = function (type) {
   $('#gs').prepend("<p id='scoreentry' class='s'> Enter name for "+type+" score: <input type=text name='name' />    <br />   <input type='submit' name='sun' value='Submit your name' /></p>");
   $('html').unbind('keyup', akeys); keyun = true; 
   $('input[name=name]').focus(); 
 };

loadscores = function () {
    $('#scoreentry').remove(); 
    $('.s').removeClass('hide');
    $('input[name=gid]').val('');
    $('#hand >li').addClass('hide');
    $('.start').addClass('hide');
    $('#nocards').addClass('hide');
    if (keyun) {$('html').bind('keyup', akeys); keyun=false;};
 };
 }
);


switchcards = function (card) {
    var a = ($('.tomove'))[0]
    if (!(a)) {      
       $('#hand > li:nth-child('+card+')').addClass('tomove'); 
    } else {
      current = $('#hand > li').index(a) +1;
      cardcur = card; 
      if (card < current) {
        $(a).removeClass('tomove').insertBefore('#hand > li:nth-child('+card+')');
      } else {
        $(a).removeClass('tomove').insertAfter('#hand > li:nth-child('+card+')');
      }
    };
  };

akeys = function akeys (evnt) {
        var key = evnt.keyCode; 
       switch (key) {
        case 49: $('#hand > li:nth-child(1)').click(); break;//1 card as visible
        case 50: $('#hand > li:nth-child(2)').click(); break;
        case 51: $('#hand > li:nth-child(3)').click(); break;
        case 52: $('#hand > li:nth-child(4)').click(); break;
        case 53: $('#hand > li:nth-child(5)').click(); break;
        case 83: 
                 newgame(); 
                 $('#gs')
                     .append('<input id="trash" type="hidden" name="shuffle" value="New Game" />')
                     .ajaxSubmit({beforeSubmit: befsub, success: sucsub}) 
                     .children('#trash').remove()
                     ; 
                 break;//s shuffle
        case 32:  $('#gs').ajaxSubmit({beforeSubmit: befsub, success: sucsub}); break;//space drawcards
        case 77:  $('#gs').ajaxSubmit({beforeSubmit: befsub, success: sucsub}); break;//m drawcards
        case 72: $('#history >h1').click(); break;//h history
        case 69:                  
                 $('#gs')
                     .append('<input id="trash" type="hidden" name="end" value="New Game" />')
                     .ajaxSubmit({beforeSubmit: befsub, success: sucsub}) 
                     .children('#trash').remove()
                     ; 
                 break; //e         
        case 54: switchcards(1); break;//visible 1 card to be moved                 
        case 55: switchcards(2); break;//visible 2 card to be moved                 
        case 56: switchcards(3); break;//visible 3 card to be moved                                  
        case 57: switchcards(4); break;//visible 4 card to be moved                                  
        case 48: switchcards(5); break;//visible 5 card to be moved                                                   
       };
        };
var keyun = false; 
$('html').bind('keyup', akeys);
