--
-- Table structure for table `webchess_games`
--

DROP TABLE IF EXISTS `webchess_games`;
CREATE TABLE `webchess_games` (
  `gameID` smallint(6) NOT NULL auto_increment,
  `whitePlayer` mediumint(9) NOT NULL default '0',
  `blackPlayer` mediumint(9) NOT NULL default '0',
  `gameMessage` enum('playerInvited','inviteDeclined','draw','playerResigned','checkMate','ruled AutoWin','under Review','request Delete') default NULL,
  `messageFrom` enum('black','white') default NULL,
  `dateCreated` datetime NOT NULL default '0000-00-00 00:00:00',
  `lastMove` datetime NOT NULL default '0000-00-00 00:00:00',
  `llr_calculations` text NOT NULL,
  `llr_result` text NOT NULL,
  `slr_calculations` text NOT NULL,
  `slr_result` text NOT NULL,
  PRIMARY KEY  (`gameID`),
  KEY `gameMessage_idx` (`gameMessage`)
) ENGINE=MyISAM AUTO_INCREMENT=4765 DEFAULT CHARSET=latin1;

--
-- Table structure for table `webchess_history`
--

DROP TABLE IF EXISTS `webchess_history`;
CREATE TABLE `webchess_history` (
  `timeOfMove` datetime NOT NULL default '0000-00-00 00:00:00',
  `gameID` smallint(6) NOT NULL default '0',
  `curPiece` enum('pawn','bishop','knight','rook','queen','king') NOT NULL default 'pawn',
  `curColor` enum('white','black') NOT NULL default 'white',
  `fromRow` smallint(6) NOT NULL default '0',
  `fromCol` smallint(6) NOT NULL default '0',
  `toRow` smallint(6) NOT NULL default '0',
  `toCol` smallint(6) NOT NULL default '0',
  `replaced` enum('pawn','bishop','knight','rook','queen','king') default NULL,
  `promotedTo` enum('pawn','bishop','knight','rook','queen','king') default NULL,
  `isInCheck` tinyint(1) NOT NULL default '0',
  PRIMARY KEY  (`timeOfMove`,`gameID`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

--
-- Table structure for table `webchess_messages`
--

DROP TABLE IF EXISTS `webchess_messages`;
CREATE TABLE `webchess_messages` (
  `msgID` int(11) NOT NULL auto_increment,
  `gameID` smallint(6) NOT NULL default '0',
  `msgType` enum('undo','draw','under Review') default NULL,
  `msgStatus` enum('request','approved','denied') NOT NULL default 'request',
  `destination` enum('black','white') NOT NULL default 'black',
  PRIMARY KEY  (`msgID`)
) ENGINE=MyISAM AUTO_INCREMENT=1387 DEFAULT CHARSET=latin1;

--
-- Table structure for table `webchess_messaging`
--

DROP TABLE IF EXISTS `webchess_messaging`;
CREATE TABLE `webchess_messaging` (
  `timestamp` timestamp NOT NULL default '0000-00-00 00:00:00' on update CURRENT_TIMESTAMP,
  `gameID` int(11) NOT NULL default '0',
  `uid` int(11) NOT NULL default '0',
  `message` varchar(250) NOT NULL default '',
  PRIMARY KEY  (`timestamp`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

--
-- Table structure for table `webchess_pieces`
--

DROP TABLE IF EXISTS `webchess_pieces`;
CREATE TABLE `webchess_pieces` (
  `gameID` smallint(6) NOT NULL default '0',
  `color` enum('white','black') NOT NULL default 'white',
  `piece` enum('pawn','rook','knight','bishop','queen','king') NOT NULL default 'pawn',
  `col` smallint(6) NOT NULL default '0',
  `row` smallint(6) NOT NULL default '0'
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

--
-- Table structure for table `webchess_preferences`
--

DROP TABLE IF EXISTS `webchess_preferences`;
CREATE TABLE `webchess_preferences` (
  `uid` int(11) NOT NULL default '0',
  `preference` char(20) NOT NULL default '',
  `value` char(50) default NULL,
  PRIMARY KEY  (`uid`,`preference`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

--
-- Table structure for table `webchess_statistics`
--

DROP TABLE IF EXISTS `webchess_statistics`;
CREATE TABLE `webchess_statistics` (
  `uid` varchar(6) NOT NULL default '',
  `career_W` decimal(3,1) NOT NULL default '0.0',
  `career_L` int(3) NOT NULL default '0',
  `career_T` int(3) NOT NULL default '0',
  `white_W` decimal(3,1) NOT NULL default '0.0',
  `white_L` int(3) NOT NULL default '0',
  `white_T` int(3) NOT NULL default '0',
  `black_W` decimal(3,1) NOT NULL default '0.0',
  `black_L` int(3) NOT NULL default '0',
  `black_T` int(3) NOT NULL default '0',
  `white_invite_declined` int(3) NOT NULL default '0',
  `black_invite_declined` int(3) NOT NULL default '0',
  `white_opp_invite_declined` int(3) NOT NULL default '0',
  `black_opp_invite_declined` int(3) NOT NULL default '0',
  `autowins_involved` int(3) NOT NULL default '0',
  `W_AutoWins` int(3) NOT NULL default '0',
  `W_AutoLosses` int(3) NOT NULL default '0',
  `B_AutoWins` int(3) NOT NULL default '0',
  `B_AutoLosses` int(3) NOT NULL default '0',
  `championships` int(2) NOT NULL default '0',
  `current_nick` varchar(35) NOT NULL default '',
  `career_W_pct` decimal(7,3) NOT NULL default '00.000',
  `white_W_pct` decimal(7,3) NOT NULL default '00.000',
  `black_W_pct` decimal(7,3) NOT NULL default '00.000',
  `total_ended_games` int(5) NOT NULL default '0',
  `stats_comment` varchar(50) default NULL,
  `ladder_rating` int(4) NOT NULL default '1000',
  `lifetime_ladder_rating` int(4) NOT NULL default '1000',
  `undo_requests` int(11) NOT NULL default '0',
  `draw_requests` int(11) NOT NULL default '0',
  PRIMARY KEY  (`uid`),
  UNIQUE KEY `current_nick` (`current_nick`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='data updated daily from raw games table';

--
-- Table structure for table `webchess_tbl_updates`
--

DROP TABLE IF EXISTS `webchess_tbl_updates`;
CREATE TABLE `webchess_tbl_updates` (
  `app` varchar(50) NOT NULL default '',
  `date` datetime NOT NULL default '0000-00-00 00:00:00',
  `comments` varchar(250) NOT NULL default '',
  PRIMARY KEY  (`app`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;


