public string ReturnRoster()
        {
            //Work down some of this queue
            int sheetQueue = RequestData.WorkRequestQueue(1);

            string output = "<div style=\"width:896px;overflow:hidden;text-align:center;vertical-align:top;\"><font size=\"+3\"><center><a>Guild Roster</a></center></font><br />\n";
            output += "<table style=\"vertical-align:top;\"><tr valign=\"top\"><td>\n";
            output += "<table width=\"400\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" style=\"background:#333333;\">\n";
            output += "<tr><td width=\"44\">&nbsp;</td><td width=\"200\" style=\"text-align:left;\"><a><b>Name</b></a>&nbsp;</td><td  style=\"text-align:center;\"><a><b>Achievement Points</b></a></td></tr>\n";
            lock (lockOn)
            {
                foreach (ArmoryCharacter c in members)
                {
                    if (c.level >= 80)
                    {
                        //output += c.ToHtml();
                        output += c.ToFormatedString("<tr><td width=\"44\">&nbsp;##R##&nbsp;##C##</td><td width=\"200\" style=\"text-align:left;\"><a href=\"http://overlordsofjustice.com/armory/CharacterSheet.aspx?"+c.armoryUrl+"\"><font color=\"##F##\" style=\"text-align:left;\">##N##</font></a>&nbsp;</td><td  style=\"text-align:center;\"><a>##A##</a></td></tr>\n");
                        if (mostAch == null) mostAch = c;
                        else if (mostAch.achPoints < c.achPoints)
                            mostAch = c;

                        if (leastAch == null) leastAch = c;
                        else if (leastAch.achPoints > c.achPoints)
                            leastAch = c;

                    }
                }
            }
            output += "</table>\n</td><td>\n";
            output += ReturnLeaderBoard();
            output += "</td></tr></table>\n";
            output += "Roster Loaded on " + LoadTime.ToShortDateString() + " " + LoadTime.ToShortTimeString() + " Queue Size: " + sheetQueue + "<br />\n";
            output += "</div>\n";
            return output;
        }
 public static int CompareByLevelAndRank(ArmoryCharacter x, ArmoryCharacter y)
 {
     if (x == null)
     {
         if (y == null)
         {
             // If x is null and y is null, they're
             // equal.
             return 0;
         }
         else
         {
             // If x is null and y is not null, y
             // is greater.
             return -1;
         }
     }
     else
     {
         // If x is not null...
         //
         if (y == null)
         // ...and y is null, x is greater.
         {
             return 1;
         }
         else
         {
             // ...and y is not null, compare the
             // lengths of the two strings.
             //
             if (x.level > y.level)
                 return -11;
             else if (x.level == y.level)
             {//If they are equal sort by rank
                 if (x.guildRank > y.guildRank) return 1;
                 else if (x.guildRank < y.guildRank) return -1;
                 else return 0;
             }
             else
                 return 1;
         }
     }
 }