Fixed a bunch of styles
parent
754f07be1b
commit
507ea9dd13
|
@ -99,6 +99,22 @@ body {
|
||||||
padding-right: 14px;
|
padding-right: 14px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.page-title
|
||||||
|
{
|
||||||
|
font-weight: 300;
|
||||||
|
font-size: 3.2rem;
|
||||||
|
display: inline-block;
|
||||||
|
margin-left: -3px;
|
||||||
|
padding-right: 0.5rem;
|
||||||
|
padding-left: 0.5rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.page-title-tag
|
||||||
|
{
|
||||||
|
font-size: 3.2rem;
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
|
||||||
.form-title
|
.form-title
|
||||||
{
|
{
|
||||||
font-weight: 300;
|
font-weight: 300;
|
||||||
|
@ -131,6 +147,15 @@ body {
|
||||||
margin: 30px;
|
margin: 30px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.card-header {
|
||||||
|
color: white;
|
||||||
|
padding: 1rem;
|
||||||
|
padding-top: 1.5rem;
|
||||||
|
padding-bottom: 0.5rem;
|
||||||
|
font-size: 2rem;
|
||||||
|
font-weight: 300;
|
||||||
|
}
|
||||||
|
|
||||||
/* MEDIUM */
|
/* MEDIUM */
|
||||||
@media only screen and (max-width : 992px) {
|
@media only screen and (max-width : 992px) {
|
||||||
.cont {
|
.cont {
|
||||||
|
|
|
@ -77,7 +77,7 @@
|
||||||
{% if logged_in %}
|
{% if logged_in %}
|
||||||
|
|
||||||
<li><a href="{{ url_for('team_dashboard') }}">
|
<li><a href="{{ url_for('team_dashboard') }}">
|
||||||
<div class="side-icon"><i class="material-icons teal-text">track_changes</i></div>
|
<div class="side-icon"><i class="material-icons indigo-text">track_changes</i></div>
|
||||||
<div class="side-text">My Team</div>
|
<div class="side-text">My Team</div>
|
||||||
</a></li>
|
</a></li>
|
||||||
<li><a href="{{ url_for('user_dashboard') }}">
|
<li><a href="{{ url_for('user_dashboard') }}">
|
||||||
|
|
|
@ -30,7 +30,10 @@
|
||||||
</style>
|
</style>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<h2>{{ team.name }}</h2>
|
<div class="page-title-wrapper">
|
||||||
|
<div class="page-title-tag indigo indigo-text">_</div>
|
||||||
|
<div class="page-title white">{{ team.name }}</div>
|
||||||
|
</div>
|
||||||
<section>
|
<section>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col s12">
|
<div class="col s12">
|
||||||
|
@ -43,75 +46,90 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
<section>
|
<div class="row">
|
||||||
<h4>Team information</h4>
|
<div class="col s12 m6">
|
||||||
<p>Your score is currently {{ team_score }}. <a href="{{ url_for('challenges') }}">Go solve more challenges!</a></p>
|
<div class="card">
|
||||||
<p>Your team email is <code>{{ team.email }}</code>, and you are affiliated with
|
<div class="card-header teal">
|
||||||
{{ team.affiliation }}.</p>
|
Team
|
||||||
<p>Your team is currently marked {{ "eligible" if team.eligible() else "ineligible" }}.</p>
|
</div>
|
||||||
</section>
|
<div class="card-content">
|
||||||
<section>
|
<p>Your score is currently {{ team_score }}. <a href="{{ url_for('challenges') }}">Go solve more challenges!</a></p>
|
||||||
<h4>Edit information</h4>
|
{{ team.affiliation }}.</p>
|
||||||
<form method="POST">
|
<p>Your team is currently marked {{ "eligible" if team.eligible() else "ineligible" }}.</p>
|
||||||
<div class="input-field">
|
</div>
|
||||||
<label for="team-name">Team Name</label>
|
</div>
|
||||||
<input required maxlength="50" id="team-name" name="team_name" type="text" value="{{ team.name }}" />
|
|
||||||
</div>
|
</div>
|
||||||
<div class="input-field">
|
<div class="col s12 m6">
|
||||||
<label for="affiliation">Affiliation</label>
|
<div class="card">
|
||||||
<input required maxlength="100" id="affiliation" name="team_affiliation" type="text" value="{{ team.affiliation }}" />
|
<div class="card-header purple">Edit Information</div>
|
||||||
|
<div class="card-content">
|
||||||
|
<form method="POST">
|
||||||
|
<div class="input-field">
|
||||||
|
<label for="team-name">Team Name</label>
|
||||||
|
<input required maxlength="50" id="team-name" name="team_name" type="text" value="{{ team.name }}" />
|
||||||
|
</div>
|
||||||
|
<div class="input-field">
|
||||||
|
<label for="affiliation">Affiliation</label>
|
||||||
|
<input required maxlength="100" id="affiliation" name="team_affiliation" type="text" value="{{ team.affiliation }}" />
|
||||||
|
</div>
|
||||||
|
<input name="_csrf_token" type="hidden" value="{{ csrf_token() }}" />
|
||||||
|
<br /><br />
|
||||||
|
<button class="btn waves-effect waves-light right" type="submit">Update</button>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<input name="_csrf_token" type="hidden" value="{{ csrf_token() }}" />
|
</div>
|
||||||
<br /><br />
|
<div class="row">
|
||||||
<button class="btn waves-effect waves-light" type="submit">Update team</button>
|
<div class="card">
|
||||||
</form>
|
<div class="card-header orange">Score Calculation</div>
|
||||||
</section>
|
<div class="card-content">
|
||||||
<section>
|
{% if team_solves.count() %}
|
||||||
<h4>Score calculation</h4>
|
<h5>Solved problems</h5>
|
||||||
{% if team_solves.count() %}
|
<div class="row">
|
||||||
<h5>Solved problems</h5>
|
<div class="col s10 offset-s1">
|
||||||
<div class="row">
|
<table>
|
||||||
<div class="col s10 offset-s1">
|
<thead>
|
||||||
<table>
|
<tr><th>Name</th><th>Category</th><th>Time</th><th>Value</th></tr>
|
||||||
<thead>
|
</thead>
|
||||||
<tr><th>Name</th><th>Category</th><th>Time</th><th>Value</th></tr>
|
<tbody>
|
||||||
</thead>
|
{% for solve in team_solves %}
|
||||||
<tbody>
|
<tr>
|
||||||
{% for solve in team_solves %}
|
<td>{{ solve.challenge.name }}</td>
|
||||||
<tr>
|
<td>{{ solve.challenge.category }}</td>
|
||||||
<td>{{ solve.challenge.name }}</td>
|
<td><abbr class="time" title="{{ solve.time }}">{{ solve.time }}</abbr></td>
|
||||||
<td>{{ solve.challenge.category }}</td>
|
<td>{{ solve.challenge.points }}</td>
|
||||||
<td><abbr class="time" title="{{ solve.time }}">{{ solve.time }}</abbr></td>
|
{% endfor %}
|
||||||
<td>{{ solve.challenge.points }}</td>
|
</tbody>
|
||||||
{% endfor %}
|
</table>
|
||||||
</tbody>
|
</div>
|
||||||
</table>
|
</div>
|
||||||
</div>
|
{% else %}
|
||||||
|
<p>No problems have been solved.</p>
|
||||||
|
{% endif %}
|
||||||
|
{% if team_adjustments.count() %}
|
||||||
|
<h5>Score adjustments</h5>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col s10 offset-s1">
|
||||||
|
<table>
|
||||||
|
<thead>
|
||||||
|
<tr><th>Reason</th><th>Value</th></tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
{% for adj in team_adjustments %}
|
||||||
|
<tr>
|
||||||
|
<td>{{ adj.reason }}</td>
|
||||||
|
<td>{{ adj.value }}</td>
|
||||||
|
</tr>
|
||||||
|
{% endfor %}
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{% else %}
|
||||||
|
<p>No score adjustments have been made.</p>
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{% else %}
|
</div>
|
||||||
<p>No problems have been solved.</p>
|
|
||||||
{% endif %}
|
|
||||||
{% if team_adjustments.count() %}
|
|
||||||
<h5>Score adjustments</h5>
|
|
||||||
<div class="row">
|
|
||||||
<div class="col s10 offset-s1">
|
|
||||||
<table>
|
|
||||||
<thead>
|
|
||||||
<tr><th>Reason</th><th>Value</th></tr>
|
|
||||||
</thead>
|
|
||||||
<tbody>
|
|
||||||
{% for adj in team_adjustments %}
|
|
||||||
<tr>
|
|
||||||
<td>{{ adj.reason }}</td>
|
|
||||||
<td>{{ adj.value }}</td>
|
|
||||||
</tr>
|
|
||||||
{% endfor %}
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
{% else %}
|
|
||||||
<p>No score adjustments have been made.</p>
|
|
||||||
{% endif %}
|
|
||||||
</section>
|
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
|
@ -30,7 +30,11 @@
|
||||||
</style>
|
</style>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<h2>{{ user.username }}</h2>
|
<div class="page-title-wrapper">
|
||||||
|
<div class="page-title-tag teal teal-text">_</div>
|
||||||
|
<div class="page-title white">{{ user.username }}</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
{% if not user.email_confirmed %}
|
{% if not user.email_confirmed %}
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col s12">
|
<div class="col s12">
|
||||||
|
@ -52,74 +56,74 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
<section>
|
<div class="card">
|
||||||
<h4>Edit information</h4>
|
<div class="card-header purple">Edit Information</div>
|
||||||
<form method="POST">
|
<div class="card-content">
|
||||||
<div class="row no-bot">
|
<form method="POST">
|
||||||
<div class="input-field col s12">
|
<div class="row no-bot">
|
||||||
<input class="validate" required maxlength="50" id="username" name="username" type="text" value="{{ user.username }}" />
|
<div class="input-field col s12">
|
||||||
<label for="team-name">Username</label>
|
<input class="validate" required maxlength="50" id="username" name="username" type="text" value="{{ user.username }}" />
|
||||||
</div>
|
<label for="team-name">Username</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="row no-bot">
|
</div>
|
||||||
<div class="input-field col s12">
|
<div class="row no-bot">
|
||||||
<input class="validate" required id="email" name="email" type="email" value="{{ user.email }}" />
|
<div class="input-field col s12">
|
||||||
<label for="email">Email</label>
|
<input class="validate" required id="email" name="email" type="email" value="{{ user.email }}" />
|
||||||
</div>
|
<label for="email">Email</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="row no-bot">
|
</div>
|
||||||
<div class="input-field col s6">
|
<div class="row no-bot">
|
||||||
<input class="validate" id="password" name="password" type="password" />
|
<div class="input-field col s6">
|
||||||
<label for="password">Password</label>
|
<input class="validate" id="password" name="password" type="password" />
|
||||||
</div>
|
<label for="password">Password</label>
|
||||||
<div class="input-field col s6">
|
</div>
|
||||||
<input class="validate" id="confirm_password" name="confirm_password" type="password" />
|
<div class="input-field col s6">
|
||||||
<label for="confirm_password">Confirm Password</label>
|
<input class="validate" id="confirm_password" name="confirm_password" type="password" />
|
||||||
</div>
|
<label for="confirm_password">Confirm Password</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="row no-bot">
|
</div>
|
||||||
<div class="input-field col s6">
|
<div class="row no-bot">
|
||||||
<select required id="background" name="background">
|
<div class="input-field col s6">
|
||||||
{{select.genoption(select.Backgrounds, selected=user.background)|safe}}
|
<select required id="background" name="background">
|
||||||
</select>
|
{{select.genoption(select.Backgrounds, selected=user.background)|safe}}
|
||||||
<label for="background">Background</label>
|
</select>
|
||||||
</div>
|
<label for="background">Background</label>
|
||||||
<div class="input-field col s6">
|
</div>
|
||||||
<select required name="country" id="country">
|
<div class="input-field col s6">
|
||||||
{{select.genoption(select.Countries, selected=user.country)|safe}}
|
<select required name="country" id="country">
|
||||||
</select>
|
{{select.genoption(select.Countries, selected=user.country)|safe}}
|
||||||
<label>Country</label>
|
</select>
|
||||||
</div>
|
<label>Country</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="row no-bot">
|
</div>
|
||||||
<div class="input-field col s6">
|
<div class="row no-bot">
|
||||||
<select required name="tshirt_size" id="tshirt_size">
|
<div class="input-field col s6">
|
||||||
{{select.genoption(select.TShirts, selected=user.tshirt_size)|safe}}
|
<select required name="tshirt_size" id="tshirt_size">
|
||||||
</select>
|
{{select.genoption(select.TShirts, selected=user.tshirt_size)|safe}}
|
||||||
<label>Shirt Size</label>
|
</select>
|
||||||
</div>
|
<label>Shirt Size</label>
|
||||||
<div class="input-field col s6">
|
</div>
|
||||||
{% if user.gender == 'M' %}
|
<div class="input-field col s6">
|
||||||
<input name="gender" type="radio" id="male" value="M" checked="checked" />
|
{% if user.gender == 'M' %}
|
||||||
<label for="male">Male</label>
|
<input name="gender" type="radio" id="male" value="M" checked="checked" />
|
||||||
<input name="gender" type="radio" id="female" value="F" />
|
<label for="male">Male</label>
|
||||||
<label for="female" style="margin-left: 1rem;">Female</label>
|
<input name="gender" type="radio" id="female" value="F" />
|
||||||
{% elif user.gender == 'F' %}
|
<label for="female" style="margin-left: 1rem;">Female</label>
|
||||||
<input name="gender" type="radio" id="male" value="M" />
|
{% elif user.gender == 'F' %}
|
||||||
<label for="male">Male</label>
|
<input name="gender" type="radio" id="male" value="M" />
|
||||||
<input name="gender" type="radio" id="female" value="F" checked="checked" />
|
<label for="male">Male</label>
|
||||||
<label for="female" style="margin-left: 1rem;">Female</label>
|
<input name="gender" type="radio" id="female" value="F" checked="checked" />
|
||||||
{% endif %}
|
<label for="female" style="margin-left: 1rem;">Female</label>
|
||||||
</div>
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
<div class="row no-bot">
|
</div>
|
||||||
<div class="col s12 m6">
|
<div class="row no-bot">
|
||||||
<button class="btn waves-effect waves-light right register-submit" type="submit">Update information</button>
|
<button class="btn waves-effect waves-light right register-submit" type="submit">Update</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<input name="_csrf_token" type="hidden" value="{{ csrf_token() }}" />
|
||||||
<input name="_csrf_token" type="hidden" value="{{ csrf_token() }}" />
|
</form>
|
||||||
</form>
|
</div>
|
||||||
</section>
|
</div>
|
||||||
<div id="firstlogin" class="modal">
|
<div id="firstlogin" class="modal">
|
||||||
<div class="modal-content">
|
<div class="modal-content">
|
||||||
<h4>Welcome to {{ config.ctf_name }}!</h4>
|
<h4>Welcome to {{ config.ctf_name }}!</h4>
|
||||||
|
|
Loading…
Reference in New Issue