コード例 #1
0
ファイル: userStats.php プロジェクト: ChapResearch/CROMA
function viewUserStats()
{
    global $user;
    $params = drupal_get_query_parameters();
    if (isset($params["UID"])) {
        $UID = $params["UID"];
    } else {
        $UID = $user->uid;
    }
    $currentTeam = getCurrentTeam();
    $TID = $currentTeam['TID'];
    $teamNumber = $currentTeam['number'];
    $numOfOutreachesForUser = dbGetNumOutreachForUser($UID);
    $markup = "<script src=\"https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0-beta1/jquery.js\"></script>";
    $markup .= '<script src="numberCounting.js"></script>';
    $form['script'] = array('#markup' => $markup);
    // create page header and table
    $form['mainHeader'] = array('#markup' => '<h1>My Dashboard</h1>');
    $form['table'] = array('#markup' => '<table><tr><td>');
    // displays users total stats
    $markup = '<table id="myTotalStats"><tr><td colspan="2" style="text-align:center">';
    $markup .= '<div class="help tooltip2">';
    $markup .= '<h2><b>My Total Stats</b></h2>';
    $markup .= '<span id="helptext"; class="helptext tooltiptext2">';
    $markup .= 'These are your total numbers of hours and outreaches.';
    $markup .= '</span></div>';
    $markup .= '</td></tr>';
    $markup .= '<tr><td style="text-align:center"><a href="?q=viewHours&UID=' . $UID . '"><b>HOURS</b></a></td>';
    $markup .= '<td style="text-align:center"><a href="?q=outreach"><b>OUTREACHES</b></a></td></tr>';
    $markup .= '<tr style="font-size:48pt; font-family: "Open Sans", sans-serif;"><td style="text-align:center"><b class="countUp">' . dbGetUserHours($UID) . '</b></td>';
    $markup .= '<td style="text-align:center"><b class="countUp">' . $numOfOutreachesForUser;
    $markup .= '</b></td></tr></table></td>';
    $form['myStatsTable'] = array('#markup' => $markup);
    // if user has more than one team, displays stats for user on current team
    if (count(dbGetTeamsForUser($UID)) > 1) {
        // dropdown allows user to switch teams
        $form['TID'] = array('#prefix' => '<td><table id="myStatsOnTeamNumber"><tr><td id ="myStatsOnMultTeams1" style="text-align:right; padding:0px"><div class="help tooltip2"><h2><b>My Stats On</b></h2><span id="helptext"; class="helptext tooltiptext2">These are your total numbers of hours and outreaches for your currently active team.</span></div></td><td id="myStatsOnMultTeams2"> ', '#type' => 'select', '#attributes' => array('onChange' => 'document.getElementById("viewuserstats").submit();'), '#chosen' => true, '#options' => dbGetTeamsListForUser($UID), '#default_value' => $TID, '#suffix' => '</td></tr>');
        $markup = '<tr><td style="text-align:center"><a href="?q=userHoursForTeam&UID=' . $UID . '&TID=' . $TID . '"><b>HOURS</b></a></td>';
        $markup .= '<td style="text-align:center"><a href="?q=userEventsForTeam&UID=' . $UID . '&TID=' . $TID . '"><b>OUTREACHES</b></a></td></tr>';
        $markup .= '<tr style="font-size:48pt; font-family:"Open Sans", sans-serif;"><td style="text-align:center"><b class="countUp">' . dbGetUserHoursForTeam($UID, $TID) . '</b></td>';
        $markup .= '<td style="text-align:center"><b class="countUp">' . dbGetNumOutreachesForUserForTeam($UID, $TID) . '</b></td></tr></table></td></tr></table>';
        $form['teamStatsTable'] = array('#markup' => $markup);
        $form['submit'] = array('#type' => 'submit', '#value' => 'Update', '#attributes' => array('style' => array('display: none;')));
    } else {
        // if user does not have more than one team, displays what team the user is on
        $markup = '<td><table id="myStatsOnTeamNumber"><tr><td colspan="2" style="text-align:center">';
        $markup .= '<div class="help tooltip2">';
        $markup .= '<h2>My Team</h2>';
        $markup .= '<span id="helptext"; class="helptext tooltiptext2">';
        $markup .= 'This is the team number and CROMA permission for your user.';
        $markup .= '</span></div>';
        $markup .= '</td></tr>';
        $markup .= '<tr style="font-size:48pt; font-family:"Open Sans", sans-serif;"><td style="text-align:center"><b>' . $currentTeam['number'] . '</b></td></tr>';
        $role = dbGetRoleForTeam($UID, $TID) == '' ? 'Team Member' : dbGetRoleForTeam($UID, $TID);
        $markup .= '<tr><td style="text-align:center"><b>CROMA Role: </b>' . $role . '</td></tr>';
        $markup .= '</table></td></tr></table>';
        $form['TID'] = array('#markup' => $markup);
    }
    return $form;
}
コード例 #2
0
ファイル: manageTeams.php プロジェクト: ChapResearch/CROMA
function manageUserTeams()
{
    global $user;
    $UID = $user->uid;
    $markup = '<table><tr><td><h1>Manage My Teams</h1></td><td style="text-align:right">';
    $markup .= '<a href="?q=teamForm&destination=' . current_path() . '"><button>Create Team</button></a>';
    $markup .= '<a href="?q=applyForTeamForm&url=manageUserTeams"><button>Apply to Join Team</button></a></td></tr></table>';
    $currentTeams = dbGetTeamsForUser($UID);
    $pendingTeams = dbGetPendingTeams($UID);
    $unapprovedTeams = dbGetUnapprovedTeamsForUser($UID);
    foreach ($pendingTeams as &$pendingTeam) {
        $pendingTeam['isPending'] = true;
        $pendingTeam['name'] = "<i>{$pendingTeam['name']}</i>";
        $pendingTeam['number'] = "<i>{$pendingTeam['number']}</i>";
    }
    foreach ($unapprovedTeams as &$unapprovedTeam) {
        $unapprovedTeam['isUnapproved'] = true;
        $unapprovedTeam['name'] = "<i>{$unapprovedTeam['name']}</i>";
        $unapprovedTeam['number'] = "<i>{$unapprovedTeam['number']}</i>";
    }
    $teams = array_merge($currentTeams, $pendingTeams, $unapprovedTeams);
    if (empty($teams)) {
        $markup .= '<table class="infoTable">';
        $markup .= '<th></th><tr><td style="text-align:center">';
        $markup .= "You don't have any teams yet! Click the buttons above to create or join one.</td></tr></table>";
    } else {
        $markup .= '<table class="infoTable">';
        $markup .= '<th>Team Name</th>';
        $markup .= '<th>Team Number</th>';
        $markup .= '<th>CROMA Role</th>';
        $markup .= '<th></th>';
        foreach ($teams as $team) {
            if (isset($team['isUnapproved'])) {
                $role = "<i>Team awaiting approval</i>";
            } else {
                if (isset($team['isPending'])) {
                    $role = "<i>Application Pending</i>";
                    $isPending = true;
                } else {
                    // beautify the names of the roles
                    $role = dbGetRoleForTeam($UID, $team['TID']);
                    if (empty($role)) {
                        $role = "Member";
                    }
                    $isPending = false;
                }
            }
            $markup .= '<tr>';
            $markup .= '<td><a href="?q=viewTeam&TID=' . $team['TID'] . '">' . $team['name'] . '</a></td>';
            $markup .= '<td>' . $team['number'] . '</td>';
            $markup .= '<td>' . $role . '</td>';
            if ($role == 'Team Owner') {
                $markup .= '<td><a href="?q=teamForm&TID=' . $team['TID'] . '"><button><img class="editIcon" src="/images/icons/editWhite.png"></button></a>';
                $markup .= '<a href="?q=deleteTeamPage&TID=' . $team['TID'] . '"><button><img class="trashIcon" src="/images/icons/trashWhite.png"></button></a></td>';
            } else {
                if (isset($team['isPending'])) {
                    $markup .= '<td><a href="?q=rescindTeamApplication/' . $team['TID'] . '">';
                    $markup .= '<button>Withdraw Application</button></a>';
                } else {
                    if (isset($team['isUnapproved'])) {
                        $markup .= '<td><a href="?q=teamForm&TID=' . $team['TID'] . '"><button><img class="editIcon" src="/images/icons/editWhite.png"></button></a></td>';
                    } else {
                        $markup .= "<td><a href=\"?q=leaveTeam/{$team['TID']}\"><button>Leave Team</button></a></td>";
                    }
                }
            }
            $markup .= '</tr>';
        }
    }
    $markup .= '</table>';
    $array['#markup'] = $markup;
    return $array;
}