forked from science-ation/science-ation
bd4eb9a9cc
Remove registrations_id from field list Adjust remove dateofbirth in favour of birthdate
270 lines
8.8 KiB
PHP
270 lines
8.8 KiB
PHP
<?
|
|
include "common.inc.php";
|
|
?>
|
|
<html>
|
|
<head>
|
|
<script type="text/javascript" src="js/jquery/jquery-1.4.4.min.js"></script>
|
|
<script type="text/javascript">
|
|
$(document).ready(function(){
|
|
$.get('api/role/list', {}, function(results){
|
|
var list, disabled;
|
|
var selector = [];
|
|
selector[0] = $('<select name="role_id"></select>');
|
|
selector[1] = $('<select name="role_id"></select>');
|
|
eval('list = ' + results);
|
|
for(n in list['roles']){
|
|
disabled = '';
|
|
if(list['roles'][n].registration == 'not available'){
|
|
disabled = ' disabled ';
|
|
}
|
|
selector[0].append($('<option ' + disabled + ' value="' + list['roles'][n].id + '">' + list['roles'][n].name + '</option>'));
|
|
selector[1].append($('<option ' + disabled + ' value="' + list['roles'][n].id + '">' + list['roles'][n].name + '</option>'));
|
|
}
|
|
$('#rolediv_1').prepend(selector[0]);
|
|
$('#rolediv_2').prepend(selector[1]);
|
|
});
|
|
});
|
|
|
|
function submitAccountUpdate(){
|
|
// using this to avoid passing blank values to the account update API
|
|
var submitDat = {}, field, value, n, hasvals = false;
|
|
for(n = 0; n < 4; n++){
|
|
switch(n){
|
|
case 0: field = 'username'; value = $('#username').val(); break;
|
|
case 1: field = 'password'; value = $('#password').val(); break;
|
|
case 2: field = 'email'; value = $('#email').val(); break;
|
|
case 3: field = 'link_username_to_email'; value = $('[name=' + field + ']:checked').val(); break;
|
|
}
|
|
if(value != undefined && value != ''){
|
|
eval('submitDat.' + field + ' = value;');
|
|
hasvals = true;
|
|
}
|
|
}
|
|
if(hasvals){
|
|
$.post('api/account/edit', submitDat,
|
|
function(result){
|
|
alert(result);
|
|
}
|
|
);
|
|
}
|
|
}
|
|
|
|
function dateListForConference() {
|
|
var o=document.getElementById('conferences_id');
|
|
window.location.href='api/dates/'+o.value;
|
|
return false;
|
|
}
|
|
|
|
</script>
|
|
<style type="text/css">
|
|
div.subset {margin: 2em}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
|
|
<h1>Test API Page</h1>
|
|
<a href="apidoc.php">API Documentation</a><br />
|
|
<a href="doc/dictionary.php">Registration Group/Fields Dictionary Documentation</a><br/>
|
|
|
|
<!-- ******************************************** -->
|
|
<h2>General Commands</h2>
|
|
|
|
Login
|
|
<form method="post" action="api/auth/login">
|
|
<input type="text" name="username">
|
|
<input type="password" name="password">
|
|
<input type="submit" value="Login">
|
|
</form>
|
|
|
|
Logout
|
|
<form method="post" action="api/auth/logout">
|
|
<input type="submit" value="Logout">
|
|
</form>
|
|
|
|
<a href="api/conferences">Conference List</a><br />
|
|
Switch Conference
|
|
<form method="post" action="api/conferences/switch">
|
|
<input type="text" size=2 name="conferences_id">
|
|
<input type="submit" value="Switch Conference">
|
|
</form>
|
|
<a href="api/dates">Dates List (current conference)</a><br />
|
|
<form method="post" onsubmit="return dateListForConference()">
|
|
Date List
|
|
<input type="text" size=2 id="conferences_id" name="conferences_id">
|
|
<input type="submit" value="Conference Date List">
|
|
</form>
|
|
|
|
<!-- ******************************************** -->
|
|
<h2>Account Settings</h2>
|
|
<strong>Edit account information</strong><br/>
|
|
Username: <input type="text" id="username"></input><br/>
|
|
Password: <input type="text" id="password"></input><br/>
|
|
email: <input type="text" id="email"></input><br/>
|
|
Link username to email? <input type="radio" name="link_username_to_email" value="yes"></input>Yes <input type="radio" name="link_username_to_email" value="no"></input>No<br/>
|
|
<button onclick = "submitAccountUpdate(); return false;">Update account information</button>
|
|
|
|
<br/><br/><strong>Create an account:</strong><br/>
|
|
<form method="post" action="api/account/create">
|
|
username: <input type="text" name="username"></input><br/>
|
|
password: <input type="text" name="password"></input><br/>
|
|
email address: <input type="text" name="email"></input><br/>
|
|
<input type="submit" value="Create Account"></input>
|
|
</form>
|
|
|
|
<!-- ******************************************** -->
|
|
<h2>Project related commands</h2>
|
|
<div class="subset">
|
|
|
|
<h3>Start a new project</h3>
|
|
<a href="api/project/add">start a new project</a><br/>
|
|
<h3>Join a project</h3>
|
|
<form method = "post" action = "api/project/join">
|
|
<label>project e-mail address:<input type="text" name="email"></input></label><br/>
|
|
<label>registration number:<input type="text" name="registration_number"></input></label><br/>
|
|
<input type="submit" value="Join"></input>
|
|
</form>
|
|
|
|
<h3>Leave a project</h3>
|
|
<form method ="post" action = "api/project/remove">
|
|
<input type="submit" value="Leave"></input>
|
|
</form>
|
|
|
|
<h3>Manage mentors for the current project</h3>
|
|
<div class="subset">
|
|
<h4>Add a mentor</h4>
|
|
<form method="post" action="api/project/mentor/add">
|
|
<input type="submit" value="Submit"></input>
|
|
</form>
|
|
<h4>Remove a mentor</h4>
|
|
<form method="post" action="api/project/mentor/remove">
|
|
<label>mentor id:<input type="text" name="id"></input></label><br/>
|
|
<input type="submit" value="Submit"></input>
|
|
</form>
|
|
<h4>View mentors</h4>
|
|
<form method="post" action="api/project/mentor/view">
|
|
<input type="submit" value="Submit"></input>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
<!-- ******************************************** -->
|
|
<h2>Teacher Specific Commands</h2>
|
|
<a href="api/scienceolympics/teams/list">Science Olympic Teams List</a><br />
|
|
|
|
<form method="post" action="api/scienceolympics/teams/add">
|
|
<input type="text" name="teamname">
|
|
<input type="submit" value="Add Team">
|
|
</form>
|
|
|
|
<form method="post" action="api/scienceolympics/teams/delete">
|
|
<input type="text" size=2 name="id">
|
|
<input type="submit" value="Delete Team">
|
|
</form>
|
|
|
|
<form method="post" action="api/scienceolympics/teams/edit">
|
|
<input type="text" size=2 name="id">
|
|
<input type="text" name="teamname">
|
|
<input type="submit" value="Edit Team">
|
|
</form>
|
|
|
|
<!-- ******************************************** -->
|
|
<h2>User Stuff</h2>
|
|
<a href="api/user/view/">View the user</a><br/>
|
|
|
|
<br/><strong>List users of a specific role that I'm allowed to modify</strong><br/>
|
|
<form method="post" action="api/user/list">
|
|
role id: <input type="text" name="roles_id"></input><br/>
|
|
<input type="submit" value="Get List"></input>
|
|
</form>
|
|
|
|
<br/><strong>Invite a user:</strong><br/>
|
|
<form method="post" action="api/user/invite">
|
|
username: <input type="text" name="username"></input><br/>
|
|
password: <input type="text" name="password"></input><br/>
|
|
email address: <input type="text" name="email"></input><br/>
|
|
role id: <input type="text" name="roles_id"></input><br/>
|
|
<input type="submit" value="Invite User"></input>
|
|
</form>
|
|
|
|
<br/><strong>Uninvite a user:</strong><br/>
|
|
<form method="post" action="api/user/uninvite">
|
|
user id: <input type="text" name="users_id"></input><br/>
|
|
role id: <input type="text" name="roles_id"></input><br/>
|
|
<input type="submit" value="Uninvite User"></input>
|
|
</form>
|
|
|
|
<!-- ******************************************** -->
|
|
<h2>Event Schedule</h2>
|
|
<a href="api/schedule/list">Schedule Listing</a><br/>
|
|
|
|
<a href="api/locations/list">Location Listing</a><br/>
|
|
|
|
Register a team for a scheduled event<br/>
|
|
<form method="post" action="api/schedule/register">
|
|
Team Id: <input type="text" name="team_id"></input>,
|
|
Schedule ID: <input type="text" name="schedule_id"></input>
|
|
<input type="submit" value="Register"></input>
|
|
</form>
|
|
|
|
Un-Register a team for a scheduled event<br/>
|
|
<form method="post" action="api/schedule/unregister">
|
|
Team Id: <input type="text" name="team_id"></input>,
|
|
Schedule ID: <input type="text" name="schedule_id"></input>
|
|
<input type="submit" value="Unregister"></input>
|
|
</form>
|
|
|
|
<!-- ******************************************** -->
|
|
<h2>Roles</h2>
|
|
<a href="api/role/list">Get a list of roles for this conference</a><br/>
|
|
|
|
Add a role to this account
|
|
<form method="post" action="api/role/add">
|
|
<div id="rolediv_1">
|
|
Password: <input name="password" type="password"></input>
|
|
<input type="submit" value="Add Role"></input>
|
|
</div>
|
|
</form>
|
|
|
|
Remove a role from this account
|
|
<form method="post" action="api/role/remove">
|
|
<div id="rolediv_2">
|
|
<input type="submit" value="Remove Role"></input>
|
|
</div>
|
|
</form>
|
|
|
|
<!-- ******************************************** -->
|
|
<h2>Registration Fields</h2>
|
|
<a href="api/registration/dictionary">View the dictionary of registration fields</a>
|
|
<a href="doc/dictionary.php">View Documentation Generated by this API call</a><br/>
|
|
<br />
|
|
(leave all blank to use currently logged in users fields)<br />
|
|
<form method="post" action="api/registration/fields">
|
|
<?
|
|
foreach($roles AS $role=>$r) {
|
|
echo "<label><input type=\"checkbox\" name=\"roles[]\" value=\"{$r['type']}\">$role</label><br />\n";
|
|
}?>
|
|
<input type="submit" value="List Registration Fields for Selected Roles">
|
|
</form>
|
|
|
|
<!-- ******************************************** -->
|
|
<h2>Schools</h2>
|
|
<a href="api/school/list">School Listing</a><br/>
|
|
|
|
<form method="post" action="api/user/connect_to_school">
|
|
<input type="text" size=4 name="schools_id">
|
|
<input type="text" size=6 name="accesscode">
|
|
<input type="submit" value="Set user's school">
|
|
</form>
|
|
|
|
|
|
<!-- ******************************************** -->
|
|
<h2>Session Variables</h2>
|
|
<?
|
|
echo json_encode($_SESSION);
|
|
?>
|
|
|
|
|
|
</body>
|
|
</html>
|
|
|
|
|