X-Git-Url: https://mop.ddnsfree.com/gitweb/?a=blobdiff_plain;f=doc%2FARCHITECTURE.txt;h=b89ba88ca3fc7a9104b6757b7353aa3b9297721e;hb=db5d6355c39327ba7f8052f360f1e846ba4ad01c;hp=45d7c24d7b24944fc9a88224dc946b4f1b8f3011;hpb=22b71dd0fd76bf5af565d56c3e82ea77b4b44bc5;p=brisk.git diff --git a/doc/ARCHITECTURE.txt b/doc/ARCHITECTURE.txt index 45d7c24..b89ba88 100644 --- a/doc/ARCHITECTURE.txt +++ b/doc/ARCHITECTURE.txt @@ -1,4 +1,46 @@ -Sparse documentation about Brisk. +===== Sparse documentation about Brisk. ===== + +==== Form Workflow ==== + +- div on page + + +User cleanup: + spush::garbage_manager() + if (user->the_end) + close opened socket + + brisk->users_cleanup() to reset all users with the_end set + +==== brisk/table/user relationships ==== + +=== points management === + +read from db: + * continue a match + * calculate placings + * calculate explain + +write to db: + * finish a game + +=== in the room === + +// when standup +bri->user[user_idx] = user +user->idx = user_idx +user->idx_orig = user_idx + +// when sitdown +table->player[player_idx] = user_idx +user->table_pos = player_idx + +=== in the game === + +bin5->user[user_idx] = user +table->player[player_idx] = user_idx +user->table_pos = player_idx + Many things aren't documented at all, but I start with authentication workflow. @@ -26,7 +68,7 @@ index.php: --- CLI ------------ POST index.php with passid_private field equal to calcMD5(tokens[1]+calcMD5(form.elements['passid'].value)) - + add_user -> validate_name, login_verify ===== Game Lifecycle ===== @@ -45,3 +87,48 @@ index.php: - align many status var with briskin5 user values - room_join_wakeup() +==== Chunk flow ==== + + +$ret = $user->maincheck($old_stat, $old_subst, $old_step, $this->rd_stat, $this->rd_subst, $this->rd_step, + $splashdate, $table_idx, $table_token)) +$user->rd_transp->chunk($this->rd_scristp++, $ret); + + +===== New users workflow ===== + + UserA UserB Admin +------------------------------------------------------------------------- + guarante UserB + | + v + Save on mail + table, + email to UserB + (Disabled, MAILED) +------------------------------------------------------------------------- + Receive email + to check address + | + v + Click on link + | + v + Check on mail + table, + update user status, + delete mail rec + (Disabled, TOBECHK) +------------------------------------------------------------------------- + admin panel + accept user + | + v + send email with + password, + update user status + (Normal, NONE) +------------------------------------------------------------------------- + Receive email + with password +-------------------------------------------------------------------------