2016-01-12 03:54:26 +00:00
< style >
.editable {
outline: none;
border: 1px solid rgba(0, 0, 0, 0);
}
.editable:hover {
border: 1px solid #999;
}
.editable:focus {
border: 1px solid #999;
background-color: #FFF;
}
.padded {
display: inline-block;
padding: 15px;
}
< / style >
2016-01-16 21:12:32 +00:00
< div ng-show = "team['tid'] >= 0" >
2016-01-12 03:54:26 +00:00
< div class = "jumbotron" >
< center >
< div ng-show = "team['in_team']==true" >
2016-03-04 00:44:58 +00:00
< div ng-show = "team['is_owner']==true" >
< h1 > < span data-toggle = "tooltip" data-placement = "top" title = "Click to edit team name." id = "teamname_edit" class = "padded editable" contenteditable > {{ team['teamname'] }}< / span > < / h1 >
< h4 > < i class = "fa fa-fw fa-university" > < / i > < span data-toggle = "tooltip" data-placement = "top" title = "Click to edit school." id = "school_edit" class = "padded editable" contenteditable > {{ team['school'] || 'Add School' }}< / span > < / h4 >
< / div >
< div ng-show = "team['is_owner']==false" >
< h1 > < span class = "padded" > {{ team['teamname'] }}< / span > < / h1 >
< h4 > < i class = "fa fa-fw fa-university" > < / i > < span class = "padded" > {{ team['school'] || 'Unknown Affiliation' }}< / span > < / h4 >
< / div >
2016-03-04 00:39:09 +00:00
< div class = "row" >
< div class = "label label-success" >
< i class = "fa fa-fw fa-flag" > < / i >
I'm in the team!
< / div >
2016-03-12 07:34:26 +00:00
< div class = "label label-warning" ng-show = "team['observer']==true" >
2016-03-04 00:39:09 +00:00
< i class = "fa fa-fw fa-globe" > < / i >
OBSERVER
< / div >
2016-01-13 04:41:59 +00:00
< / div >
2016-01-12 03:54:26 +00:00
< / div >
< div ng-show = "team['in_team']!=true" >
< h1 > < span class = "padded" > {{ team['teamname'] }}< / span > < / h1 >
< h4 > < i class = "fa fa-fw fa-university" > < / i > < span class = "padded" > {{ team['school'] || 'Unknown Affiliation' }}< / span > < / h4 >
2016-03-04 00:39:09 +00:00
< div class = "row" >
2016-03-12 07:34:26 +00:00
< div class = "label label-warning" ng-show = "team['observer']==true" >
2016-03-04 00:39:09 +00:00
< i class = "fa fa-fw fa-globe" > < / i >
OBSERVER
< / div >
< / div >
2016-01-12 03:54:26 +00:00
< / div >
< / center >
< / div >
2016-01-16 21:12:32 +00:00
< div class = "row" >
< div class = "col-sm-3 col-xs-12" >
< div class = "panel panel-default" >
< div class = "panel-heading" >
< h4 class = "panel-title" > Team Members< / h4 >
< / div >
< div class = "list-group" >
< div class = "list-group-item" ng-repeat = "member in team['members']" >
2016-02-29 18:35:40 +00:00
< h4 class = "list-group-item-heading" style = "display:inline-block;" > {{ member['name'] }}< / h4 >
< div class = "label label-info" ng-show = "member['captain']==true" > Owner< / div >
2016-03-03 05:36:51 +00:00
< p class = "list-group-item-text" > < a href = "/profile/{{ member['username'] }}" > @{{ member['username'] }}< / a > < / p >
2016-01-16 21:12:32 +00:00
< / div >
< / div >
< div class = "panel-footer" ng-show = "team['is_owner']==true" >
2016-01-17 02:23:34 +00:00
< form id = "add_member" onsubmit = "add_member(); return false;" style = "margin: 0;" >
2016-01-16 21:12:32 +00:00
< div class = "row" >
< div class = "col-xs-12" >
< div class = "input-group" >
< input type = "text" class = "form-control" id = "new_member" name = "new_member" placeholder = "Add member..." autocomplete = "off" >
< span class = "input-group-btn" >
< button class = "btn btn-success" type = "submit" > < i class = "fa fa-fw fa-plus" > < / i > < / button >
< / span >
< / div >
< / div >
< / div >
< / form >
< / div >
< div class = "panel-footer" ng-show = "team['in_team']!=true && config.navbar['logged_in']==true" >
< div class = "row" >
< div class = "col-xs-12" >
2016-01-17 02:23:34 +00:00
< a ng-href = "javascript:request_invitation({{ team['tid'] }});" class = "btn btn-primary col-xs-12" ng-show = "team['invited']!=true && team['requested']!=true" > < i class = "fa fa-fw fa-plus" > < / i > Join this team< / a >
< a class = "btn btn-primary col-xs-12 disabled" ng-show = "team['invited']!=true && team['requested']==true" > < i class = "fa fa-fw fa-check" > < / i > Sent Request< / a >
< a ng-href = "javascript:accept_invitation({{ team['tid'] }});" class = "btn btn-success col-xs-12" ng-show = "team['invited']==true" > < i class = "fa fa-fw fa-check" > < / i > Accept Invitation< / a >
2016-01-16 21:12:32 +00:00
< / div >
< / div >
< / div >
< / div >
< div class = "panel panel-default" ng-show = "team['is_owner']==true && team['pending_invitations'].length > 0" >
< div class = "panel-heading" >
< h4 class = "panel-title" > Pending Invitations< / h4 >
< / div >
< div class = "list-group" >
2016-03-03 05:36:51 +00:00
< div class = "list-group-item" ng-repeat = "member in team['pending_invitations']" href = "/profile/{{ member['username'] }}" >
2016-01-16 21:12:32 +00:00
< a class = "badge" ng-href = "javascript:rescind_invitation({{ member['uid'] }});" > < i class = "fa fa-fw fa-times" > < / i > < / a >
< h4 class = "list-group-item-heading" > {{ member['name'] }}< / h4 >
2016-03-03 05:36:51 +00:00
< p class = "list-group-item-text" > < a href = "/profile/{{ member['username'] }}" > @{{ member['username'] }}< / a > < / p >
2016-01-16 21:12:32 +00:00
< / div >
< / div >
< / div >
2016-01-17 02:23:34 +00:00
< div class = "panel panel-default" ng-show = "team['is_owner']==true && team['invitation_requests'].length > 0" >
< div class = "panel-heading" >
< h4 class = "panel-title" > Invitation Requests< / h4 >
< / div >
< div class = "list-group" >
2016-03-03 05:36:51 +00:00
< div class = "list-group-item" ng-repeat = "member in team['invitation_requests']" href = "/profile/{{ member['username'] }}" >
2016-01-17 02:23:34 +00:00
< a class = "badge" ng-href = "javascript:accept_invitation_request({{ member['uid'] }});" > < i class = "fa fa-fw fa-check" > < / i > < / a >
< h4 class = "list-group-item-heading" > {{ member['name'] }}< / h4 >
2016-03-03 05:36:51 +00:00
< p class = "list-group-item-text" > < a href = "/profile/{{ member['username'] }}" > @{{ member['username'] }}< / a > < / p >
2016-01-17 02:23:34 +00:00
< / div >
< / div >
< / div >
2016-01-16 21:12:32 +00:00
< / div >
< div class = "col-sm-9 col-xs-12" >
2016-03-03 05:36:51 +00:00
< ul class = "nav nav-tabs" role = "tablist" >
< li role = "presentation" class = "active" > < a href = "#profile" aria-controls = "profile" role = "tab" data-toggle = "tab" > Profile< / a > < / li >
< li role = "presentation" > < a href = "#activity" aria-controls = "activity" role = "tab" data-toggle = "tab" > Activity< / a > < / li >
< / ul >
< div class = "tab-content" >
< div role = "tabpanel" class = "tab-pane active" id = "profile" >
< / div >
< div role = "tabpanel" class = "tab-pane" id = "activity" >
< / div >
< / div >
2016-01-16 21:12:32 +00:00
< / div >
< / div >
2016-01-12 03:54:26 +00:00
< / div >
2016-01-16 21:12:32 +00:00
< div ng-show = "!(team['tid'] >= 0) && config.navbar['logged_in']==true" >
2016-01-12 03:54:26 +00:00
< div class = "page-header" >
< h1 > Team< / h1 >
< / div >
2016-02-29 18:35:40 +00:00
< div class = "row" >
< div class = "col-md-6" >
< div class = "page-header" >
< h3 > New Team< / h3 >
< / div >
< p > To participate in EasyCTF, you must be on a < b > team< / b > . If you'd like to go solo, just create a team by yourself. Read about team eligibility in the < a href = "/rules" > rules< / a > .< / p >
2016-01-12 03:54:26 +00:00
2016-02-29 18:35:40 +00:00
< form class = "form-horizontal" onsubmit = "create_team(); return false;" id = "create_team" >
< fieldset >
< div id = "create_team_msg" > < / div >
< / fieldset >
< fieldset class = "container-fluid" >
< div class = "col-md-12" >
< div class = "panel panel-default" >
< div class = "panel-heading" >
< h2 class = "panel-title" > Create a Team< / h2 >
< / div >
< div class = "panel-body" >
< form class = "form-horizontal" onsubmit = "login_form(); return false;" id = "login_form" >
< fieldset >
< div id = "login_msg" > < / div >
< / fieldset >
< fieldset class = "container-fluid" >
< div class = "row" >
< div class = "col-sm-12 form-group" >
< label class = "col-sm-12" for = "teamname" > < small > Team Name< / small > < / label >
< div class = "col-sm-12" >
< input class = "form-control" type = "text" required name = "teamname" id = "teamname" placeholder = "Create a team name..." autocomplete = "off" / >
< / div >
< / div >
2016-01-16 06:53:35 +00:00
< / div >
2016-02-29 18:35:40 +00:00
< div class = "row" >
< div class = "col-sm-12 form-group" >
< label class = "col-sm-12" for = "school" > < small > School Name< / small > < / label >
< div class = "col-sm-12" >
< input class = "form-control" type = "text" required name = "school" id = "school" placeholder = "School Name" autocomplete = "off" / >
< / div >
< / div >
2016-01-16 06:53:35 +00:00
< / div >
2016-02-29 18:35:40 +00:00
< div class = "row" >
< div class = "col-sm-12 form-group" >
< center >
< input type = "submit" class = "btn btn-success btn-lg" value = "Create Team" / >
< / center >
< / div >
< / div >
< / fieldset >
< / form >
< / div >
< / div >
2016-01-16 06:53:35 +00:00
< / div >
2016-02-29 18:35:40 +00:00
< / fieldset >
< / form >
< / div >
< div class = "col-md-6" >
< div class = "page-header" >
< h3 > Invitations< / h3 >
< / div >
< p ng-show = "team['invitations'].length==0" > You need an invitation to join another team. If you'd like to request to be a member of their team, go to their team page and click the Request button.< / p >
< div ng-show = "team['invitations'].length>0" class = "list-group" >
< div class = "list-group-item" ng-repeat = "invitation in team['invitations']" >
2016-03-04 00:44:58 +00:00
< a ng-href = "/team/{{ invitation['team'] }}" > {{ invitation['team'] }}< / a >
< a ng-href = "javascript:accept_invitation({{ invitation['tid'] }});" class = "badge" > Accept » < / a >
2016-01-12 03:54:26 +00:00
< / div >
< / div >
2016-02-29 18:35:40 +00:00
< / div >
2016-01-12 03:54:26 +00:00
< / div >
< / div >
2016-01-16 21:12:32 +00:00
< div ng-show = "!(team['tid'] >= 0) && config.navbar['logged_in']!=true" >
< div class = "page-header" >
< h1 > Team Not Found< / h1 >
< / div >
< p > The team you were looking for doesn't exist. Check to make sure you've spelled the name right.< / p >
< / div >
2016-01-12 03:54:26 +00:00
< script type = "text/javascript" >
$("#teamname_edit").on("keypress", function(e) {
if (e.keyCode == 13) {
e.preventDefault();
}
});
2016-03-03 05:36:51 +00:00
$(document).ready(function() {
$("[data-toggle=tooltip]").tooltip();
$("ul[role=tablist]").tab();
$("a[role=tab]").click(function(e) {
e.preventDefault();
});
});
< / script >