<? include "common.inc.php"; ?> <html> <head> <script type="text/javascript" src="js/jquery/1.3.2/jquery.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> </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> <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>