function Player(id, fn, ln, pos, pos2, pos3, pos4, tm, avg, hr, rbi, sb, r, era, w, l, s, k, whip, rk, pr, a1, a2, a3, a4, ul1, d, q) {
   this.id = id;
   this.firstname = fn;
   this.lastname = ln;
   this.position = pos;
   this.position2 = pos2;
   this.position3 = pos3;
   this.position4 = pos4;
   this.team = tm;
   this.avg = avg;
   this.hr = hr;
   this.rbi = rbi;
   this.sb = sb;
   this.r = r;
   this.era = era;
   this.w = w;
   this.l = l;
   this.s = s;
   this.k = k;
   this.whip = whip;
   this.rk = rk;
   this.pr = pr;
   this.mystat1 = a1;
   this.mystat2 = a2;
   this.mystat3 = a3;
   this.mystat4 = a4;
   this.ul1 = ul1;
   this.drafted = d;
   this.queued = q;
}

function loadOptions() {
   var list1 = document.f1.list1;
   var position = document.f1.pos.value;

   if(document.f1.rankings.value=="my") {
      loadRankings();
      return;
   }
   clearList1();

   for (i=1; i<playerArray.length; i++) {
      if(!playerArray[i].drafted && !isinQueue(i) && isPosition(playerArray[i].id, position)) {
         optionsArray[i-1] = playerArray[i].id;
         if(playerArray[i].position == "SP" || playerArray[i].position == "RP") {
            list1.options[list1.options.length] = new Option (
               playerArray[i].lastname + ", " +
               playerArray[i].firstname + " " +
               playerArray[i].position + " " +
               playerArray[i].team + " ..... " +
               playerArray[i].w + "-" +
               playerArray[i].l + " " +
               playerArray[i].s + "S " +
               playerArray[i].era + "ERA " +
               playerArray[i].k + "K",
               playerArray[i].id
            );
         } else {
            list1.options[list1.options.length] = new Option (
               playerArray[i].lastname + ", " +
               playerArray[i].firstname + " " +
               playerArray[i].position + " " +
               playerArray[i].team + " ..... " +
               playerArray[i].avg + "-" +
               playerArray[i].hr + "-" +
               playerArray[i].rbi + " " +
               playerArray[i].sb + "SB",
               playerArray[i].id
            );
         }
      }
   }
}

function sortBy(sortFunction) {
   if(document.f1.rankings.selectedIndex == 1) my_sort = document.f1.stat.selectedIndex;
   else default_sort = document.f1.stat.selectedIndex;

   var myArray = new Array();
   var m = "";

   if(document.f1.rankings.selectedIndex == 0) { // sorting default rankings
      var box = document.getElementById("ul1");
      for(var i=1; i<playerArray.length; i++) {
         if(playerArray[i].ul1 == true) {
            myArray[i] = i;
         }
      }
   } else { // sorting my rankings
      var box = document.getElementById("ul3");
      m = "_my";
      for(var i=1; i<myRankings.length; i++) {
         if(playerArray[myRankings[i]].drafted == false && !isinQueue(myRankings[i])) {
            myArray[i] = myRankings[i];
         }
      }
   }
   myArray.sort(eval(sortFunction));

   for(i=0; i<myArray.length; i++) {
      if(document.getElementById(myArray[i]+m)) box.appendChild(document.getElementById(myArray[i]+m));
   }

}

function sortByx(sortFunction) {
   my_sort = sortFunction;
   var list1 = document.f1.list1;
   var len = list1.options.length;
   var position = document.f1.pos.value;

   var myArray = new Array();
   for(var i=0; i<len; i++) {
      myArray[i] = list1.options[i].value;
   }
   clearList1();
   myArray.sort(sortFunction);
   for (i=0; i<len; i++) {
      if(!playerArray[myArray[i]].drafted && !isinQueue(myArray[i]) && isPosition(playerArray[myArray[i]].id, position)) {
         if(playerArray[myArray[i]].position == "SP" || playerArray[myArray[i]].position == "RP") {
            list1.options[list1.options.length] = new Option (
               playerArray[myArray[i]].lastname + ", " +
               playerArray[myArray[i]].firstname + " " +
               playerArray[myArray[i]].position + " " +
               playerArray[myArray[i]].team + " ..... " +
               playerArray[myArray[i]].w + "-" +
               playerArray[myArray[i]].l + " " +
               playerArray[myArray[i]].s + "S " +
               playerArray[myArray[i]].era + "ERA " +
               playerArray[myArray[i]].k + "K",
               playerArray[myArray[i]].id
            );
         } else { // not a pitcher
            list1.options[list1.options.length] = new Option (
               playerArray[myArray[i]].lastname + ", " +
               playerArray[myArray[i]].firstname + " " +
               playerArray[myArray[i]].position + " " +
               playerArray[myArray[i]].team + " ..... " +
               playerArray[myArray[i]].avg + "-" +
               playerArray[myArray[i]].hr + "-" +
               playerArray[myArray[i]].rbi + " " +
               playerArray[myArray[i]].sb + "SB",
               playerArray[myArray[i]].id
            );
         }
      }
   }
}

function isPosition(id, p) {
//return true;

   if(p == "all") return true;

   var pos = playerArray[id].position;

   if(p == pos) return true;

   if((pos == "SP" || pos == "RP") && p == "P") return true;

   if((pos != "SP" && pos != "RP") && p == "H") return true;

   return false;
}

function alpha_rank(x, y) {
   var a = playerArray[x].lastname.toLowerCase();
   var b = playerArray[y].lastname.toLowerCase();
   return ((a < b) ? -1 : ((a > b) ? 1 : 0));
}

function rk(x, y) {
   return (playerArray[x].rk - playerArray[y].rk);
}

function avg(x, y) {
   return (playerArray[y].avg - playerArray[x].avg);
}

function hr(x, y) {
   return (playerArray[y].hr - playerArray[x].hr);
}

function rbi(x, y) {
   return (playerArray[y].rbi - playerArray[x].rbi);
}

function sb(x, y) {
   return (playerArray[y].sb - playerArray[x].sb);
}

function r(x, y) {
   return (playerArray[y].r - playerArray[x].r);
}

function w(x, y) {
   return (playerArray[y].w - playerArray[x].w);
}

function s(x, y) {
   return (playerArray[y].s - playerArray[x].s);
}

function era(x, y) {
   return (playerArray[x].era - playerArray[y].era);
}

function k(x, y) {
   return (playerArray[y].k - playerArray[x].k);
}

function whip(x, y) {
   return (playerArray[x].whip - playerArray[y].whip);
}

function filterPositions(p) {
   if(document.f1.rankings.selectedIndex == 1) { // filtering my rankings
      my_pos = document.f1.pos.selectedIndex;
      for(var i=1; i<myRankings.length; i++) {
         if(!isinQueue(myRankings[i]) && playerArray[myRankings[i]].drafted == false && pos_match(myRankings[i], p)) {
            if(document.getElementById(myRankings[i]+"_my")) document.getElementById(myRankings[i]+"_my").style.display = "block";
         } else if(document.getElementById(myRankings[i]+"_my")) document.getElementById(myRankings[i]+"_my").style.display = "none";
      }
   } else { // filtering default rankings
      default_pos = document.f1.pos.selectedIndex;
      for(var i=1; i<playerArray.length; i++) {
         if(playerArray[i].ul1 == true) {
            if(!isinQueue(i) && !playerArray[i].drafted && pos_match(i, p)) {
               if(document.getElementById(i)) document.getElementById(i).style.display = "block";
            } else if(document.getElementById(i)) document.getElementById(i).style.display = "none";
         }
      }
   }
}

function filterPositionsx(p) {

   var f1 = document.f1;

   clearList1();

   if(f1.rankings.value=="my") {
      for(var i=1; i<myRankings.length; i++) {
         if(!isinQueue(myRankings[i]) && !playerArray[myRankings[i]].drafted) {

            if(p=="P" || p=="H") {

               if(p=="P") {
                  if(playerArray[myRankings[i]].position == "SP" || playerArray[myRankings[i]].position == "RP") {
                     createPlayerString(myRankings[i], 1);
                  }
               } else { // H
                  if(playerArray[myRankings[i]].position != "SP" && playerArray[myRankings[i]].position != "RP") {
                     createPlayerString(myRankings[i], 1);
                  }
               }
            } else if(p!="all") { // not P or H but not "all"
               if(playerArray[myRankings[i]].position == p) {
                  createPlayerString(myRankings[i], 1);
               }
            } else { // p is "all"
               createPlayerString(myRankings[i], 1);
            }
         }
      }

   } else {
      if(p=="all") {
         loadOptions();
         return;
      }
      for(var i=1; i<playerArray.length; i++) {
         if(!isinQueue(i) && !playerArray[i].drafted) {
            if(p=="P" || p=="H") {
               if(p=="P") {
                  if(playerArray[i].position == "SP" || playerArray[i].position == "RP") {
                     createPlayerString(i, 1);
                  }
               } else { // H
                  if(playerArray[i].position != "SP" && playerArray[i].position != "RP") {
                     createPlayerString(i, 1);
                  }
               }
            } else { // not P or H
               if(playerArray[i].position == p) {
                  createPlayerString(i, 1);
               }
            }
         }
      }
   }
}

function createPlayerString(id, listnum) {
   if(listnum==1)
      var f1 = document.f1.list1;
   else
      var f1 = document.f1.list2;

      if(playerArray[id].position == "SP" || playerArray[id].position == "RP") {
               f1.options[f1.options.length] = new Option(
                  playerArray[id].lastname + ", " + playerArray[id].firstname +
                  " " + playerArray[id].position + " " + playerArray[id].team +
                  " ..... " + playerArray[id].w + "-" + playerArray[id].l + " " +
                  playerArray[id].s + "S " + playerArray[id].era + "ERA" + " " +
                  playerArray[id].k + "K",
               playerArray[id].id
               );
      } else {
               f1.options[f1.options.length] = new Option(
                  playerArray[id].lastname + ", " + playerArray[id].firstname +
                  " " + playerArray[id].position + " " + playerArray[id].team +
                  " ..... " + playerArray[id].avg + "-" + playerArray[id].hr + "-" +
                  playerArray[id].rbi + " " + playerArray[id].sb + "SB",
               playerArray[id].id
               );

      }
}

function loadRankings() {
   clearList1();
   var f1 = document.f1;
   var position = document.f1.pos.value;

   f1.pos.options[0].selected = "true";
   if(f1.rankings.value=="my") {
      for(var i=1; i<myRankings.length; i++) {
         if(!isinQueue(myRankings[i]) && !playerArray[myRankings[i]].drafted && isPosition(playerArray[myRankings[i]].id, position)) {
            createPlayerString(myRankings[i], 1);
         }
      }
   } else {
      loadOptions();
      return;
      for(var i=1; i<playerArray.length; i++) {
         if(!playerArray[i].queued && !playerArray[i].drafted) {
            createPitcherString(i, 1);
         }
      }
      orderByRank();
   }
}

function getText(id, listnum) {
   var temp_id = id.toString();
   id = id.toString();
   id = id.split("_", 1);
   var returnText = "";
   var rk = playerArray[id].rk;
   if(rk<10) rk = " " + rk;
   var ln = playerArray[id].lastname;
   var fn = playerArray[id].firstname;
   var pos = playerArray[id].position;
   var tm = playerArray[id].team;
   var s1 = playerArray[id].mystat1;
   var s2 = playerArray[id].mystat2;
   var s3 = playerArray[id].mystat3;
   var s4 = playerArray[id].mystat4;
   s1 = s1.toString();
   if(s1.charAt(1)==".") {
      if(s1.charAt(0)=="0") s1 = s1.charAt(1) + "" + s1.charAt(2) + "" + s1.charAt(3) + "" + s1.charAt(4);
   }
   if(s1.length == 3) s1 += "" + "0";
   s4 = s4.toString();
   if(s4.charAt(1)==".") if(s4.length == 3 || s4.length == 4) s4 += "" + "0";
   returnText += '<div class="player_name_'+pos+'">';
   returnText += '<div class="player_fullname">';
   returnText += '<a href="javascript:confirm_draft_player('+id+');">';
   returnText += ln+', '+fn+'</a></div>';
   returnText += '<div class="player_pos_team">'+pos+' - '+tm+'</div>';
   returnText += '<div class="player_stats">'+s1+' '+s2+' '+s3+' '+s4+'</div>';
   if(listnum == "list1") {
      returnText += "<div class=\"player_link\">";
      returnText += "<a href=\"javascript:;\" onclick=\"addToList('"+temp_id+"');\">Q+</a>"+rk+"</div>";
   } else {
      returnText += '<div class="player_link">';
      returnText += '<a style="color:red;text-decoration:none;background-color:#000" ';
      returnText += 'href="javascript:queue_remove(\''+id+'_q1_'+qctr+'\');">[X]</a>'+rk+'</div>';
   }
   returnText += '</div>';
   returnText += '<div class="clear"></div>';
   return returnText;
}


