Skip to content
Snippets Groups Projects
index.html 5.54 KiB
Newer Older
Joseph Walton-Rivers's avatar
Joseph Walton-Rivers committed
<!doctype html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">

    <title>Group Allocator</title>
Joseph Walton-Rivers's avatar
Joseph Walton-Rivers committed
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3" crossorigin="anonymous">
    <link href="css/main.css" rel="stylesheet" />
Joseph Walton-Rivers's avatar
Joseph Walton-Rivers committed
  </head>
  <body onload="start();" class="bg-light">
Joseph Walton-Rivers's avatar
Joseph Walton-Rivers committed

    <div id="header" class="bg-dark text-light">
      <div class="container">
        <h1 class="display-1">Allocator</h1>
      </div>
Joseph Walton-Rivers's avatar
Joseph Walton-Rivers committed
    </div>
    <div class="container">

      <!-- Name Entry Stage -->
      <div id="stage-name" class="stage">
	<form class="form" onsubmit="changeName(); return false;">
	  <div class="form-group">
	    <label for="input-name" class="display-2">Hi, my name is...</label>
	    <input required class="form-control mt-3" name="studentName" id="input-name" placeholder="Matt Watkins" />
	  </div>

      <!-- <div class="form-group">
	    <label for="input-code" class="display-3">The code is...</label>
	    <input required class="form-control" name="studentName" id="input-code" placeholder="COMP140-12" />
	  <button type="submit" class="btn my-2 btn-primary">Ready</button>

	  <hr />
      <h2 onclick="showPassword();">Staff Options</h2>
	  <div class="form-group staff-only d-none">
	    <label for="input-password" class="display-3">The password is...</label>
	    <input class="form-control" name="password" id="input-password" type="password" />
	  </div>
	</form>
      </div>

      <!-- Application Stage -->
      <div id="stage-submitted" class="d-none">
        <h2 class="display-2">Hi, <span id="span-name">NAME</span></h2>
        <hr />
        <div id="stage-wait" class="stage">
          <p class="display-3 pulse bg-dark text-center p-3">Waiting for students...</p>
        </div>
        <div id="stage-allocated" class="stage d-none">
          <!-- Allocation Page -->
          <p class="display-3 text-center p-3 m-0">Group <span id="span-team">GROUP</span></p>
          <ul class="display-4 list-unstyled p-3 m-0" id="span-members">
          </ul>
        </div>

        <span onclick="logout();">logout</span>
      <div id="stage-error" class="stage d-none">
          <h2 class="display-1">Error</h2>
          <p class="lead">An error has occoured and the server has killed the connection. Refresh the page.</p>
      </div>

      <!-- Staff Stage -->
      <div id="stage-staff" class="stage d-none">
		<form class="row row-cols-lg-auto g-3 align-items-center" onsubmit="onStartAllocate(); return false;">
		  <div class="col-12">
		    <div class="input-group"></div>
		    <input class="form-control" type="number" min="0" max="999" id="input-ideal" />
		  </div>
		  <div class="col-12">
		      <select class="form-select" id="input-method">
Joseph Walton-Rivers's avatar
Joseph Walton-Rivers committed
    			<option value="groups">groups in total</option>
	    		<option value="members">students per group</option>
		      </select>
		  </div>
		  <div class="col-12">
		    <div class="input-group"></div>
Joseph Walton-Rivers's avatar
Joseph Walton-Rivers committed
		    <input class="form-control" type="number" min="1" value="2" max="999" id="input-minsize" />
            <span class="input-group-text">minimum</span>
		  </div>
		  <div class="col-12">
		    <button class="btn btn-primary" />Start</button>
		  </div>
		</form>
		<hr />

        <ul class="nav nav-tabs" id="tab-groupings">
            <li class="nav-item" role="presentation">
                <button class="nav-link active" id="staff-groupings-label" data-bs-toggle="tab" data-bs-target="#staff-groupings-panel" type="button" role="tab">Groups</button>
            </li>
            <li class="nav-item" role="presentation">
                <button class="nav-link" id="staff-students-label" data-bs-toggle="tab" data-bs-target="#staff-students-panel" type="button" role="tab">Students</button>
            </li>
        </ul>
        <div class="tab-content">
		  <div class="tab-pane fade show active" id="staff-groupings-panel">
              <div id="staff-groupings" class="row row-cols-1 row-cols-md-2 g-4 mt-2"></div>
          </div>
		  <div class="tab-pane fade" id="staff-students-panel" class="row row-cols-1 row-cols-md-2 g-4">
              <div id="staff-students" class="row row-cols-1 row-cols-md-2 g-4 mt-2"></div>
          </div>
    <template id="tpl-group">
Joseph Walton-Rivers's avatar
Joseph Walton-Rivers committed
      <div class="col">
        <div class="card h-100">
          <div class="card-body">
            <h3 class="card-title">Group name</h3>
          </div>
          <ul class="list-group list-group-flush"></ul>
        </div>
    <template id="tpl-student">
        <div class="col">
            <div class="card h-100">
                <div class="card-body">
                    <h3 class="card-title">Student name</h3>
                    <a href="#" class="rename card-link">Rename</a>
                    <a href="#" class="notify card-link">Notify</a>
                    <a href="#" class="kick card-link">Kick</a>
                </div>
            </div>
        </div>
    </template>
Joseph Walton-Rivers's avatar
Joseph Walton-Rivers committed
    <div class="container">
        <hr />
        <p>This browser-toy was created by <a href="https://joseph.walton-rivers.uk">Joseph Walton-Rivers</a></p>
    </div>

Joseph Walton-Rivers's avatar
Joseph Walton-Rivers committed
    <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-ka7Sk0Gln4gmtz2MlQnikT1wXgYsOg+OMhuP+IlRH9sENBO0LRn5q+8nbTov4+1p" crossorigin="anonymous"></script>
Joseph Walton-Rivers's avatar
Joseph Walton-Rivers committed
    <script src="js/client.js"></script>
  </body>
</html>