import java.sql.*;
import java.io.*;

class GenerateclassforMPdatabase{
	
	
public static void main(String [] ss) throws Exception
{

PrintStream ps= new PrintStream (new FileOutputStream("out.html"));
	   Class.forName("com.mysql.jdbc.Driver");
       Connection conn = DriverManager.getConnection("jdbc:mysql:censored","censored","censored");


				java.sql.Statement s = conn.createStatement ();
 		   		String query = "SELECT * FROM mpgames"; 

   				s.executeQuery(query);
   				java.sql.ResultSet rs = s.getResultSet ();

ps.println("<table border=\"1\">");
   				while (rs.next ())
   				{

boolean noBluetooth = true;
boolean noWifi = true;
boolean noLounge = true;
boolean noDirectIP = true;


boolean only2Players = true;
boolean requiringMoreThan2Players = false;

boolean gametypeHeadToHead = false;
boolean gametypeCollaborative = false;
boolean gametypeParallel = false;
boolean gametypeNoTeamPlay = true;

boolean moreThanDollar1 = false;
boolean moreThanDollar2 = false;
boolean moreThanDollar3 = false;
boolean moreThanDollar4 = false;
boolean moreThanDollar5 = false;
//boolean gametype = false;

int appstoreratingall = 0;
int appstoreratingcurr = 0;
int ownRatingMP = 0;
int ownRatingSP = 0;
int ownRatingComparedto = 0;

   					String classString = "";
   					
    //game type
String gameType = rs.getString("Game_type").toLowerCase();
if (gameType.indexOf("head-to-head")!=-1) gametypeHeadToHead = true;
if (gameType.indexOf("collaborative")!=-1) gametypeCollaborative = true;
if (gameType.indexOf("parallel")!=-1) gametypeParallel = true;
if (gameType.indexOf("team")!=-1) gametypeNoTeamPlay = false;
   					
   					if (gametypeHeadToHead) classString += " gametypeHeadToHead ";
   					if (gametypeCollaborative) classString += " gametypeCollaborative ";
   					if (gametypeParallel) classString += " gametypeParallel ";
   					if (gametypeNoTeamPlay) classString += " gametypeNoTeamPlay ";
   					
// connection
   String connType = rs.getString("Networking_model").toLowerCase();
	if (connType.indexOf("bt")==-1) classString += " noBluetooth ";
	if (connType.indexOf("wi-fi")==-1 && connType.indexOf("wifi")==-1) classString += " noWifi ";
	if (connType.indexOf("lounge")==-1 && connType.indexOf("remote")==-1) classString += " noLounge ";
	if (connType.indexOf("direct")==-1) classString += " noDirectIP ";
	
		
String price = rs.getString("Price");
price = price.replaceAll("$10", "$9.99");
if (price.toLowerCase().startsWith("free")) classString += " fr3e ";
else {if (price.indexOf("$1")==-1) classString += " moreThanDollar1 ";
if (price.indexOf("$1")==-1 && price.indexOf("$2")==-1) classString += " moreThanDollar2 ";
if (price.indexOf("$1")==-1 && price.indexOf("$2")==-1 && price.indexOf("$3")==-1) classString += " moreThanDollar3 ";
if (price.indexOf("$1")==-1 && price.indexOf("$2")==-1 && price.indexOf("$3")==-1 && price.indexOf("$4")==-1) classString += " moreThanDollar4 ";
if (price.indexOf("$1")==-1 && price.indexOf("$2")==-1 && price.indexOf("$3")==-1 && price.indexOf("$4")==-1 && price.indexOf("$5")==-1) classString += " moreThanDollar5 ";
if (price.indexOf("$1")==-1 && price.indexOf("$2")==-1 && price.indexOf("$3")==-1 && price.indexOf("$4")==-1 && price.indexOf("$5")==-1 && price.indexOf("$6")==-1) classString += " moreThanDollar6 ";
if (price.indexOf("$1")==-1 && price.indexOf("$2")==-1 && price.indexOf("$3")==-1 && price.indexOf("$4")==-1 && price.indexOf("$5")==-1 && price.indexOf("$6")==-1 && price.indexOf("$7")==-1) classString += " moreThanDollar7 ";
if (classString.indexOf("moreThanDollar")!=-1) classString += " nonfree ";}


String asratingall = rs.getString("All_version_avg_rating").trim();
if (asratingall.equals("1")) classString += " asratingall1 ";
if (asratingall.equals("1.5")) classString += " asratingall2 ";
if (asratingall.equals("2")) classString += " asratingall3 ";
if (asratingall.equals("2.5")) classString += " asratingall4 ";
if (asratingall.equals("3")) classString += " asratingall5 ";
if (asratingall.equals("3.5")) classString += " asratingall6 ";
if (asratingall.equals("4")) classString += " asratingall7 ";
if (asratingall.equals("4.5")) classString += " asratingall8 ";
if (asratingall.equals("5")) classString += " asratingall9 ";

asratingall = rs.getString("Current_version_avg_rating").trim();
if (asratingall.equals("1")) classString += " asratingcurr1 ";
if (asratingall.equals("1.5")) classString += " asratingcurr2 ";
if (asratingall.equals("2")) classString += " asratingcurr3 ";
if (asratingall.equals("2.5")) classString += " asratingcurr4 ";
if (asratingall.equals("3")) classString += " asratingcurr5 ";
if (asratingall.equals("3.5")) classString += " asratingcurr6 ";
if (asratingall.equals("4")) classString += " asratingcurr7 ";
if (asratingall.equals("4.5")) classString += " asratingcurr8 ";
if (asratingall.equals("5")) classString += " asratingcurr9 ";


String myratingMP = rs.getString("My_rating_MP").trim();
if (myratingMP.equals("1")) classString += " myratingMP1 ";
if (myratingMP.equals("1.5")) classString += " myratingMP2 ";
if (myratingMP.equals("2")) classString += " myratingMP3 ";
if (myratingMP.equals("2.5")) classString += " myratingMP4 ";
if (myratingMP.equals("3")) classString += " myratingMP5 ";
if (myratingMP.equals("3.5")) classString += " myratingMP6 ";
if (myratingMP.equals("4")) classString += " myratingMP7 ";
if (myratingMP.equals("4.5")) classString += " myratingMP8 ";
if (myratingMP.equals("5")) classString += " myratingMP9 ";

myratingMP = rs.getString("How_it_compares_to_titles").trim();
if (myratingMP.equals("1")) classString += " myratingCat1 ";
if (myratingMP.equals("1.5")) classString += " myratingCat2 ";
if (myratingMP.equals("2")) classString += " myratingCat3 ";
if (myratingMP.equals("2.5")) classString += " myratingCat4 ";
if (myratingMP.equals("3")) classString += " myratingCat5 ";
if (myratingMP.equals("3.5")) classString += " myratingCat6 ";
if (myratingMP.equals("4")) classString += " myratingCat7 ";
if (myratingMP.equals("4.5")) classString += " myratingCat8 ";
if (myratingMP.equals("5")) classString += " myratingCat9 ";

   					
   					String nrOfPlayers = rs.getString("Number_of_concurrent_players");
   					//String nrOfPlayersStr = "";
   					if (nrOfPlayers.equals("2")) classString += " only2players ";
   					if (nrOfPlayers.indexOf("2")==-1) classString += " morethan2playersrequired ";
   					
   					//System.out.println();
   					//rs.getString("")
   					ps.println("<tr class=\""+classString+"\"><td>"+rs.getString("App")+"</td><td>"+rs.getString("iTunes_link")+"</td><td>"+rs.getString("Genre")+"</td><td>"+
   						rs.getString("Price")+"</td><td>"+rs.getString("Game_speed_on_3G_or_3G_S")+"</td><td>"+rs.getString("Game_type")+"</td><td>"+
   						rs.getString("Number_of_concurrent_players")+"</td><td>"+rs.getString("Networking_model")+"</td><td>"+rs.getString("If_remote_in-game_chat")+"</td><td>"+
   						rs.getString("Number_of_remote_players_in_lounge")+"</td><td>"+rs.getString("Game_lounge")+"</td><td>"+rs.getString("In-game_sound_or_music")+"</td><td>"+
   						rs.getString("Control_method")+"</td><td>"+rs.getString("All_version_avg_rating")+"</td><td>"+rs.getString("Current_version_avg_rating")+"</td><td>"+
   						rs.getString("Nr_of_voters_for_all_versions")+"</td><td>"+rs.getString("My_rating_MP")+"</td><td>"+rs.getString("Single_Player")+"</td><td>"+
   						rs.getString("How_it_compares_to_titles")+"</td><td>"+rs.getString("Recommended")+"</td><td>"+rs.getString("Remark")+"</td></tr>");	
				}				
				
ps.println("</table>");
ps.close();
}
}