mirror of https://github.com/BOINC/boinc.git
445 lines
15 KiB
PHP
445 lines
15 KiB
PHP
<?php
|
|
|
|
require_once("util.inc");
|
|
require_once("db.inc");
|
|
|
|
function print_teams_display() {
|
|
|
|
page_head("Teams");
|
|
echo "<table width=780>";
|
|
echo "<tr><td><h2>BOINC Teams</h2></td></tr>";
|
|
echo "<tr><td>";
|
|
echo "<p>";
|
|
echo "BOINC users may form "teams" - ";
|
|
echo "for example, students in a school, employees of a company, etc. ";
|
|
echo "<p>";
|
|
echo "Teams may compete against other teams to analyze the most data, ";
|
|
echo "or they may meet and discuss BOINC projects via the web. ";
|
|
echo "Team members may view their individual records and compare ";
|
|
echo "personals statistics with other team members' statistics, in addition ";
|
|
echo "to viewing their team's total statistics on the team's statistics page.";
|
|
echo "<p>";
|
|
echo "<br>";
|
|
echo "To create a team click on the below link. ";
|
|
echo "Team founder's have more privileges than normal team members.";
|
|
echo "<p>";
|
|
echo "<a href=team_create_form.php>Create a new team</a>";
|
|
echo "<p>";
|
|
echo "<br>";
|
|
echo "<br>";
|
|
echo "To search for a team type in the team name below and hit the Search button. ";
|
|
echo "You may join teams through these team pages.";
|
|
echo "<p>";
|
|
echo "It may be more effective to type in only a portion of the team name ";
|
|
echo "and choose from the search results in order to assure ";
|
|
echo "that you do not overlook a variation of the team. ";
|
|
echo "(i.e. If you work for a team affiliated with Apple Computer, Inc. it will be more effective ";
|
|
echo "to search for \"Apple\" and to choose fromt eh search results than to search for the entire name of the company.)";
|
|
echo "<p>";
|
|
echo "<form method=post action=team_lookup.php>";
|
|
echo "Search for a team: ";
|
|
echo "<input name=team_name>";
|
|
echo "<input type=submit name=search value=\"Search\">";
|
|
echo "</form>";
|
|
echo "</td></tr></table>";
|
|
page_tail();
|
|
}
|
|
|
|
function display_team_page($team) {
|
|
|
|
page_head("$team->name");
|
|
if ($team->name_html != null) {
|
|
echo "<p>";
|
|
echo "$team->name_html";
|
|
}
|
|
echo "<p>";
|
|
echo "[<a href=team_join_form.php?id=$team->id><b>Join</b></a>] ";
|
|
echo "[<a href=team_quit_form.php?id=$team->id><b>Quit</b></a>] ";
|
|
echo "[<a href=team_edit_form.php?id=$team->id><b>Edit*</b></a>] ";
|
|
echo "[<a href=team_remove_inactive_form.php?id=$team->id><b>Remove Inactive Members*</b></a>] ";
|
|
echo "[<a href=team_disband_form.php?id=$team->id><b>Disband Team*</b></a>] ";
|
|
echo "[<a href=team_email_list.php?id=$team->id><b>View Team Emails*</b></a>]";
|
|
echo "<br><font size=2>* Team founder only</font>";
|
|
echo "<table width=780>";
|
|
echo "<tr><td>";
|
|
echo "<ul>";
|
|
echo "<li>Anyone may join a team at any time.</li>";
|
|
echo "<li>Likewise, anyone may quit a team at any time.</li>";
|
|
echo "<li>Only the team founder may edit a team's fields (i.e. name, html code, ";
|
|
echo "description, etc.).</li>";
|
|
echo "<li>In addition, team founder's have the right of removing inactive members ";
|
|
echo "from a team.</li>";
|
|
echo "<li>Only the team founder may disband a team, however, in order to successfully disband a ";
|
|
echo "team all members of the team must no longer be members of the team, including the team founder. ";
|
|
echo "Then the team founder may go to the team page and disband the team. ";
|
|
echo "A team may not be disbanded if it still has members.</li>";
|
|
echo "<li>Finally, the team founder has access to all team members' email addresses.</li>";
|
|
echo "</ul>";
|
|
echo "</td></tr></table>";
|
|
|
|
echo "<br>";
|
|
echo "<p>";
|
|
echo "<table border=0 width=580>";
|
|
echo "<tr bgcolor=#708090><td colspan=2><font size=+1>";
|
|
echo "<b>Team Info:</b></font></td></tr></table>";
|
|
echo "<table>";
|
|
if (strlen($team->description)) {
|
|
row("<b>Description: </b>", $team->description);
|
|
}
|
|
if (strlen($team->url)) {;
|
|
row("<b>Web site: </b>", "<a href=http://$team->url>http://$team->url</a>");
|
|
}
|
|
row("<b>Members: </b>", $team->nusers);
|
|
|
|
$query = sprintf(
|
|
"select * from user where teamid = %d",
|
|
$team->id
|
|
);
|
|
$result = mysql_query($query);
|
|
$total_credit = 0;
|
|
for ($i = 0; $i < $team->nusers; $i++) {
|
|
$user = mysql_fetch_object($result);
|
|
$total_credit = $total_credit + $user->total_credit;
|
|
}
|
|
|
|
row("<b>Total Credit: </b>", $total_credit);
|
|
$query = sprintf(
|
|
"select * from user where id = %d",
|
|
$team->userid
|
|
);
|
|
$result = mysql_query($query);
|
|
$user = mysql_fetch_object($result);
|
|
row("<b>Founder: </b>", $user->name);
|
|
echo "</table>";
|
|
echo "<p>";
|
|
echo "<table border=0 width=580>";
|
|
echo "<tr bgcolor=#708090><td colspan=2><font size=+1>";
|
|
echo "<b>Team Members:</b></font></td></tr></table>";
|
|
echo "<table border=1 cellpadding=2 width=40%><tr>";
|
|
echo "<th>Name</th>";
|
|
echo "<th>Total credit</th>";
|
|
echo "<th>Recent average CPU<br>time per work unit</th>";
|
|
echo "<th>Country</th>";
|
|
echo "</tr>";
|
|
|
|
$query = sprintf(
|
|
"select * from user where teamid = %d",
|
|
$team->id
|
|
);
|
|
$result = mysql_query($query);
|
|
|
|
for ($i = 0; $i < $team->nusers; $i++) {
|
|
$user = mysql_fetch_object($result);
|
|
$j = $i+1;
|
|
echo "<tr><td align=left>$j) $user->name";
|
|
echo "<td align=center>$user->total_credit</td>";
|
|
echo "<td align=center>$user->expavg_time</td>";
|
|
echo "<td align=center>$user->country</td>";
|
|
echo "</tr>";
|
|
}
|
|
echo "</table>";
|
|
page_tail();
|
|
}
|
|
|
|
|
|
function print_team_create_form() {
|
|
|
|
page_head("Create Team");
|
|
echo "<h2>Create a BOINC Team</h2>";
|
|
echo "<table width=780>";
|
|
echo "<tr><td>";
|
|
echo "<p>";
|
|
echo "Use this form to create a team. ";
|
|
echo "<p>";
|
|
echo "You'll become the first member of the team. ";
|
|
echo "Then tell your friends/co-workers/etc. about the team. ";
|
|
echo "They may join it using the BOINC "Teams" page. ";
|
|
echo "</td></tr></table>";
|
|
echo "<p>";
|
|
echo "<form method=post action=team_create_action.php>";
|
|
echo "<table>";
|
|
echo "<tr>";
|
|
echo "<td>Team name (plain-text version):<br><br> </td>";
|
|
echo "<td><input name=name type=text size=50>";
|
|
echo "<br><font size=2>This name will be printed as-is and is the name ";
|
|
echo "you should use <br>when searching for your Team.";
|
|
echo "</td>";
|
|
echo "</tr><tr>";
|
|
echo "<td>Team name (HTML version):<br><br> </td>";
|
|
echo "<td><input name=name_html type=text size=50>";
|
|
echo "<br><font size=2>This name will be printed as HTML source, so you may include any HTML";
|
|
echo "<br>code that you want. This will only be displayed in your teams' page.";
|
|
echo "<br>If you don't know HTML, just leave this box blank.";
|
|
echo "</td>";
|
|
echo "</tr><tr>";
|
|
echo "<td>URL of team web page, if any:<br><font size=2>(without "http://")</td>";
|
|
echo "<td><input name=url size=60>";
|
|
echo "<br><font size=2>This URL will be linked to from the team's page.</td>";
|
|
echo "</tr><tr>";
|
|
echo "<td valign=top>Description of team:</td>";
|
|
echo "<td><textarea name=description cols=60 rows=10></textarea></td>";
|
|
echo "</tr><tr>";
|
|
echo "<td valign=top>Type of team:</td>";
|
|
echo "<td>";
|
|
echo "<input type=radio name=type value=4 checked>Club";
|
|
echo "<br>";
|
|
echo "<input type=radio name=type value=1>Small Company (< 50 employees)";
|
|
echo "<br>";
|
|
echo "<input type=radio name=type value=2>Medium Company (50-1000 employees)";
|
|
echo "<br>";
|
|
echo "<input type=radio name=type value=3>Large Company (> 1000 employees)";
|
|
echo "<br>";
|
|
echo "<input type=radio name=type value=5>Primary School";
|
|
echo "<br>";
|
|
echo "<input type=radio name=type value=6>Secondary School";
|
|
echo "<br>";
|
|
echo "<input type=radio name=type value=8>Junior College";
|
|
echo "<br>";
|
|
echo "<input type=radio name=type value=7>University or Department";
|
|
echo "<br>";
|
|
echo "<input type=radio name=type value=9>Government Agency";
|
|
echo "</td>";
|
|
echo "</td>";
|
|
echo "</tr></table>";
|
|
echo "<input type=submit name=new value=\"Create Team\">";
|
|
echo "</form>";
|
|
page_tail();
|
|
}
|
|
|
|
function print_team_join_form($id) {
|
|
|
|
$query = sprintf(
|
|
"select * from team where id = %d",
|
|
$id
|
|
);
|
|
$result = mysql_query($query);
|
|
if ($result) {
|
|
$team = mysql_fetch_object($result);
|
|
mysql_free_result($result);
|
|
}
|
|
$team_name = $team->name;
|
|
$team_id = $team->id;
|
|
page_head("Join $team_name");
|
|
echo "<h2>Join $team_name</h2>";
|
|
echo "<table width=780>";
|
|
echo "<tr><td>";
|
|
echo "<p><b>Please note before joining or switching to a new team:</b>";
|
|
echo "<ul>";
|
|
echo "<li>If this is the first team you have ever joined ";
|
|
echo "then all of your current credit will be given to this ";
|
|
echo "team, in addition to all new credit you receive.";
|
|
echo "<li>If you are currently a member of a team ";
|
|
echo "and are switching to another team, the new team will receive ";
|
|
echo "all of your credits, the old teams total will be decreased by ";
|
|
echo "your credit amount.";
|
|
echo "<li>Joining a team does not affect your personal credit ";
|
|
echo "statistics in any way.";
|
|
echo "<li>Joining a team gives your team's founder access to your email address.";
|
|
echo "</ul>";
|
|
echo "</p>";
|
|
echo "<hr>";
|
|
echo "<form method=post action=team_join_action.php>";
|
|
echo "<input type=hidden name=id value=$team_id>";
|
|
echo "<input type=submit value=\"Join Team\">";
|
|
echo "</form>";
|
|
echo "</td></tr></table>";
|
|
page_tail();
|
|
}
|
|
|
|
function print_team_quit_form($id) {
|
|
|
|
$query = sprintf(
|
|
"select * from team where id = %d",
|
|
$id
|
|
);
|
|
$result = mysql_query($query);
|
|
if ($result) {
|
|
$team = mysql_fetch_object($result);
|
|
mysql_free_result($result);
|
|
}
|
|
$team_name = $team->name;
|
|
$team_id = $team->id;
|
|
page_head("Quit $team_name");
|
|
echo "<h2>Quit $team_name</h2>";
|
|
echo "<table width=780>";
|
|
echo "<tr><td>";
|
|
echo "<p><b>Please note before quitting a team:</b>";
|
|
echo "<ul>";
|
|
echo "<li>By quitting a team you remove your name from the team listing. ";
|
|
echo "Your credit contribution to the team is also removed";
|
|
echo "<li>Even if you quit a team, you may rejoin later, ";
|
|
echo "or join any other team you desire ";
|
|
echo "<li>Quitting a team does not affect your personal credit ";
|
|
echo "statistics in any way.";
|
|
echo "</ul>";
|
|
echo "</p>";
|
|
echo "<hr>";
|
|
echo "<form method=post action=team_quit_action.php>";
|
|
echo "<input type=hidden name=id value=$team_id>";
|
|
echo "<input type=submit value=\"Quit Team\">";
|
|
echo "</form>";
|
|
echo "</td></tr></table>";
|
|
page_tail();
|
|
}
|
|
|
|
function print_team_edit_form($id) {
|
|
|
|
$query = sprintf(
|
|
"select * from team where id = %d",
|
|
$id
|
|
);
|
|
$result = mysql_query($query);
|
|
if ($result) {
|
|
$team = mysql_fetch_object($result);
|
|
mysql_free_result($result);
|
|
}
|
|
$team_name = $team->name;
|
|
$team_id = $team->id;
|
|
$team_name_html = $team->name_html;
|
|
$team_url = $team->url;
|
|
$team_description = $team->description;
|
|
$team_type = $team->type;
|
|
page_head("Edit $team_name");
|
|
echo "<h2>Edit $team_name</h2>";
|
|
echo "<table width=780>";
|
|
echo "<tr><td>";
|
|
echo "<p><b>Please note before editing a team:</b>";
|
|
echo "<ul>";
|
|
echo "<li>Only the founder may edit a team";
|
|
echo "</ul>";
|
|
echo "</p>";
|
|
echo "<hr>";
|
|
echo "<form method=post action=team_edit_action.php>";
|
|
echo "<input type=hidden name=id value=$team_id>";
|
|
echo "</td></tr></table>";
|
|
echo "<table><tr>";
|
|
echo "<td>Team name (plain-text version):<br><br> </td>";
|
|
echo "<td><input name=name size=50 value=$team_name>";
|
|
echo "<br><font size=2>This name will be print as-is";
|
|
echo "<br>and is the name you should use when searching for your team.";
|
|
echo "</td></tr></tr>";
|
|
echo "<td>Team name (HTML version):<br><br> </td>";
|
|
echo "<td><input name=name_html size=50 value='$team_name_html'>";
|
|
echo "<br><font size=2>This name will be printed as HTML source, so you may include any HTML";
|
|
echo "<br>code that you want. This will only be displayed in your team's page.";
|
|
echo "<br>If you don't know HTML, just leave this box blank.";
|
|
echo "</td></tr><tr>";
|
|
echo "<td>URL of team web page, if any:<br><font size=2>(without "http://")</td>";
|
|
echo "<td><input name=url size=60 value=$team_url>";
|
|
echo "<br><font size=2>This page will be linked to from the project's team page.";
|
|
echo "</td></tr><tr>";
|
|
echo "<td valign=top>Description of team:</td>";
|
|
echo "<td><textarea name=description value=$team_description cols=60 rows=10>$team_description</textarea>";
|
|
echo "</td></tr><tr>";
|
|
echo "<td valign=top>Type of team:</td><td>";
|
|
printf("<input type=radio name=type value=4%s>Club<br>", ($team->type==4)?" checked":"");
|
|
printf("<input type=radio name=type value=1%s>Small Company (< 50 employees)<br>", ($team->type==1)?" checked":"");
|
|
printf("<input type=radio name=type value=2%s>Medium Company (50-1000 employees)<br>", ($team->type==2)?" checked":"");
|
|
printf("<input type=radio name=type value=3%s>Large Company (> 1000 employees)<br>", ($team->type==3)?" checked":"");
|
|
printf("<input type=radio name=type value=5%s>Primary School<br>", ($team->type==5)?" checked":"");
|
|
printf("<input type=radio name=type value=6%s>Secondary School<br>", ($team->type==6)?" checked":"");
|
|
printf("<input type=radio name=type value=8%s>Junior College<br>", ($team->type==8)?" checked":"");
|
|
printf("<input type=radio name=type value=7%s>University or Department<br>", ($team->type==7)?" checked":"");
|
|
printf("<input type=radio name=type value=9%s>Government Agency</td>", ($team->type==9)?" checked":"");
|
|
echo "</tr></table>";
|
|
echo "<input type=submit value=\"Edit Team\">";
|
|
echo "</form>";
|
|
page_tail();
|
|
}
|
|
|
|
function print_team_remove_inactive_form($id) {
|
|
|
|
$query = sprintf(
|
|
"select * from team where id = %d",
|
|
$id
|
|
);
|
|
$result = mysql_query($query);
|
|
if ($result) {
|
|
$team = mysql_fetch_object($result);
|
|
mysql_free_result($result);
|
|
}
|
|
$team_name = $team->name;
|
|
$team_id = $team->id;
|
|
$nusers = $team->nusers;
|
|
page_head("Remove Members from $team_name");
|
|
echo "<h2>Remove members from $team_name</h2>";
|
|
echo "<table width=780>";
|
|
echo "<tr><td>";
|
|
echo "<p><b>Please note:</b>";
|
|
echo "<ul>";
|
|
echo "<li>Only the founder may remove members from a team";
|
|
echo "<li>By removing a member, you will also remove their credit and CPU time ";
|
|
echo "contributions to the team.";
|
|
echo "</ul>";
|
|
echo "</p>";
|
|
echo "<hr>";
|
|
echo "<form method=post action=team_remove_inactive_action.php>";
|
|
echo "<input type=hidden name=id value=$team_id>";
|
|
echo "<br></td></tr></table>";
|
|
echo "<table border=1><tr><th>Remove?</th>";
|
|
echo "<th>Name</th>";
|
|
echo "<th>Total<br>Credit</th>";
|
|
|
|
$query = sprintf(
|
|
"select * from user where teamid = %d",
|
|
$team_id
|
|
);
|
|
$result = mysql_query($query);
|
|
|
|
$ninactive_users = 0;
|
|
for ($i = 0; $i < $nusers; $i++) {
|
|
$user = mysql_fetch_object($result);
|
|
echo "<tr><td align=center><input type=checkbox name=remove_$ninactive_users value=$user->id>";
|
|
echo "<td>$user->name</td>";
|
|
echo "<td>$user->total_credit</td>";
|
|
$ninactive_users++;
|
|
}
|
|
echo "<input type=hidden name=ninactive_users value=$ninactive_users>";
|
|
if ($result) {
|
|
mysql_free_result($result);
|
|
}
|
|
echo "</table>";
|
|
echo "<input type=submit value=\"Remove Users\">";
|
|
echo "</form>";
|
|
page_tail();
|
|
}
|
|
|
|
function print_team_disband_form($id) {
|
|
|
|
$query = sprintf(
|
|
"select * from team where id = %d",
|
|
$id
|
|
);
|
|
$result = mysql_query($query);
|
|
if ($result) {
|
|
$team = mysql_fetch_object($result);
|
|
mysql_free_result($result);
|
|
}
|
|
$team_name = $team->name;
|
|
$team_id = $team->id;
|
|
page_head("Disband $team_name");
|
|
echo "<h2>Disband $team_name</h2>";
|
|
echo "<table width=780>";
|
|
echo "<tr><td>";
|
|
echo "<p><b>Please note:</b>";
|
|
echo "<ul>";
|
|
echo "<li>Only the found may disband a team.";
|
|
echo "<li>Only teams with no members may be disbanded. The founder of a team ";
|
|
echo "may email the members of a team to inform them of the disbanding of the team.";
|
|
echo "<li>After a team is disbanded, all members will no longer belong to a team, ";
|
|
echo "though they may join another team if desired.";
|
|
echo "<li>Disbanding a team is permanent, make sure you know what you're doing!";
|
|
echo "</ul>";
|
|
echo "</p>";
|
|
echo "Press "Disband Team" when you're ready.";
|
|
echo "<hr>";
|
|
echo "<form method=post action=team_disband_action.php>";
|
|
echo "<input type=hidden name=id value=$team_id>";
|
|
echo "<input type=submit value=\"Disband Team\">";
|
|
echo "</form>";
|
|
echo "</tr></td></table>";
|
|
page_tail();
|
|
}
|
|
|
|
?>
|