Difference between revisions of "Design Document For DRAFT1846"

From BOARD18 Project WIKI
Jump to navigation Jump to search
(→‎JASON Data Object: added == Some Fields of Note == section)
Line 103: Line 103:


=== The D1846.draft.status field ===
=== The D1846.draft.status field ===
The D1846.draft.status field is used to track the progress of the draft.
The D1846.draft.status field is used to track the progress of the draft.<br>It can have one of these vallues:
It can have one of these vallues:
*Pending: Still waiting for at least one player to confirm.
*Pending: Still waiting for at least one player to confirm.
*Confirmed: All players have confirmed their emai addresses.
*Confirmed: All players have confirmed their emai addresses.

Revision as of 04:15, 14 May 2020

DraftFlow.png

Introduction

DRAFT1846 has been designed to look and feel as much like BOARD18 as possible.

This means that a couple of the sections of the BOARD18 design document can be applied, for the most part, directly to DRAFT1846.

These sections are:

The diagram to the right shows the general control flow between the DRAFT1846 components.
Note that many details have been omitted from this diagram.

Database Structure

The DRAFT1846 database is structured as follows:

 
mysql> show columns from draft_table;
+---------------+------------------+------+-----+-------------------+-----------------------------+
| Field         | Type             | Null | Key | Default           | Extra                       |
+---------------+------------------+------+-----+-------------------+-----------------------------+
| draft_id      | int(11) unsigned | NO   | PRI | NULL              | auto_increment              |
| draft         | text             | YES  |     | NULL              |                             |
| activity_date | timestamp        | NO   |     | CURRENT_TIMESTAMP | on update CURRENT_TIMESTAMP |
+---------------+------------------+------+-----+-------------------+-----------------------------+
3 rows in set (0.00 sec)

The draft field is a text string containing the stringafied JSON data object as shown below.

JASON Data Object

This Object contains all of the information about a given draft except for the Draft ID.

 
array (
  'status' => 'Active',
  'updtCount' => 0,
  'numbPlayers' => 4,
  'curPlayer' => 1,
  'deck' => 
  array (
    0 => 'Ohio and Indiana',
    1 => 'Michigan Central',
    2 => 'Meat Packing Co.',
    3 => 'Blank Card',
    4 => 'Mail Contract',
    5 => 'Big 4',
    6 => 'Tunnel Blasting Co.',
    7 => 'Blank Card',
    8 => 'Michigan Southern',
    9 => 'Blank Card',
    10 => 'Blank Card',
    11 => 'Chicago and W. Indiana',
  ),
  'hand' => 
  array (
  ),
  'players' => 
  array (
    0 => 
    array (
      'name' => 'Paul',
      'email' => 'paul.zieske@gmail.com',
      'confirmed' => 'Yes',
      'cash' => 400,
      'privates' => 
      array (
      ),
    ),
    1 => 
    array (
      'name' => 'Chris',
      'email' => 'garden.nomad@gmail.com',
      'confirmed' => 'Yes',
      'cash' => 400,
      'privates' => 
      array (
      ),
    ),
    2 => 
    array (
      'name' => 'Rich',
      'email' => 'rich02@board18.org',
      'confirmed' => 'Yes',
      'cash' => 400,
      'privates' => 
      array (
      ),
    ),
    3 => 
    array (
      'name' => 'Frank',
      'email' => 'franktaw@netscape.net',
      'confirmed' => 'Yes',
      'cash' => 400,
      'privates' => 
      array (
      ),
    ),
  ),
  'return' => 'success',
)

Some Fields of Note

The D1846.draft.status field

The D1846.draft.status field is used to track the progress of the draft.
It can have one of these vallues:

  • Pending: Still waiting for at least one player to confirm.
  • Confirmed: All players have confirmed their emai addresses.
  • Active: The draft is active and more than one card is left.
  • Last: The last remaining private is being processed.
  • Done: The draft is completed.


This page is a stub.
The BOARD18 Project will soon be expanding it.