Example #1
0
/**
*	purpose	Returns GamePoints for Player, either cummulated as record or detailed as RecordSet
*	params		Event_class, Player,detail=0/1
*	returns		integer : sum of points
* 						Recordset(x) player,game,points
*/
function lsdb_stat_ReturnGamePointsForPlayer($DB, $event_class, $player_id, $detail = 0)
{
    $sumpoints = 0;
    $points = 0;
    // generate detailed gamedata + points
    $RS = DB_retStatQueryArrayDetail($DB, $player_id, $event_class);
    $GDATA = array();
    foreach ($RS as $aGRec) {
        $GD = DB_getGame($DB, $aGRec[1]);
        // debug($GD);
        // stuff is paired in GD ... => pass to calculation function
        $aGP = lsdb_stat_ReturnGamePoints($GD);
        // debug($aGP);
        // fetch correct data from return array and slip into GDATA
        if ($aGP[0][0] == $player_id) {
            $points = $aGP[0][1];
            $sumpoints = $sumpoints + $points;
        } elseif ($aGP[1][0] == $player_id) {
            $points = $aGP[1][1];
            $sumpoints = $sumpoints + $points;
        }
        $aGRec[10] = $points;
        // attach field=with points
        $GDATA[] = $aGRec;
    }
    /*
     * According to DETAIL=0/1 pass back summary RS or detail RS
     */
    if ($detail == 0) {
        // generate summary row RS
        return $sumpoints;
    } elseif ($detail == 1) {
        return $GDATA;
    }
}
Example #2
0
/**
*	purpose	generate a detailed statcodelist breakdown per Player for a specific event
*	params		eventid,playerid
*	returns		HTML Table page
*/
function _showStatCodeListForEventDetail($player_id)
{
    global $event, $dbi;
    $aTH = array('Vorname', 'Nachname', 'Runde', 'Datum', 'Legs+', 'Sets+', 'Matches+', 'Punkte');
    $target = 'ls_system.php?func=showmatch&vmkey=%P1%&eventid=' . $event['id'];
    /* 
     * supported for different type of statcodelists (9,13,16,17)
     *	the default is to return a detailed game list without any points or calculations
     * if special calcs are needed use the switch clause on stat_code
     */
    switch ($event['evstatcode_id']) {
        case 16:
            // BDSO Punkte 7,6,3,0
            // retrieve all games -> for each game get game data
            $RS = lsdb_stat_ReturnGamePointsForPlayer($dbi, $event, $player_id, 1);
            break;
        default:
            $RS = DB_retStatQueryArrayDetail($dbi, $player_id, $event);
    }
    // OUTPUT
    $OUT = _MakeStatPageHeader($event['id'], 0);
    $OUT = $OUT . '<h3>Detailed List</h3>';
    $OUT = $OUT . OpenTable('statlistdetail', 1);
    $OUT = $OUT . ArrayToTableHead($aTH);
    // skip fields: pid,gid
    $OUT = $OUT . RecordsetToClickTable($RS, 2, $target, 4);
    $OUT = $OUT . CloseTable(1);
    echo $OUT;
}