Select Git revision
LocaleNames.h
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
base.html 9.22 KiB
{% set page_border = page_border|default(1) %}
{% set global_permissions = [] %}
{% set min_announcement_level = min_announcement_level|default(1) %}
{% set levels = {0: ('info', 'Nur auf Hauptseite sichtbar'), 1: ('info', 'Auf allen Unterseiten sichtbar (Hinweis)'), 2: ('warning', 'Auf allen Unterseiten sichtbar (Warnung)'), 3: ('danger', 'Auch auf Embed-Page sichtbar (Wichtig)')} %}
{% from 'macros.html' import moderator_editor, moderator_checkbox, moderator_delete %}
<!DOCTYPE html>
<html lang="de">
<head>
{% block header %}
<title>Video AG {% block title %}{% for endpoint, caption, iconlib, gly, visible in navbar if ((visible or ismod()) and (endpoint == request.endpoint)) %}- {{ caption }}{% else%}{% endfor %}{% endblock %}</title>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link rel="icon" type="image/png" href="{{url_for('static', filename='favicon.png')}}">
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="{{url_for('static', filename='bootstrap/bootstrap.css')}}" rel="stylesheet">
<link rel="stylesheet" type="text/css" href="{{url_for('static', filename='style.css')}}">
<link rel="stylesheet" href="{{url_for('static', filename='font-awesome/css/font-awesome.css')}}">
<link rel="stylesheet" type="text/css" href="{{url_for('static', filename='videojs/video-js.css')}}">
<link rel="stylesheet" type="text/css" href="{{url_for('static', filename='videojs/videojs.markers.css')}}">
<link rel="stylesheet" type="text/css" href="{{url_for('static', filename='videojs/videojs-resolution-switcher.css')}}">
<script src="{{url_for('static', filename='jquery.js')}}"></script>
<script src="{{url_for('static', filename='bootstrap/bootstrap.js')}}"></script>
<script src="{{url_for('static', filename='js.cookie.js')}}"></script>
{%if ismod() %}
<script src="{{url_for('static', filename='moderator.js')}}"></script>
<script src="{{url_for('static', filename='plotly.min.js')}}"></script>
{% endif %}
<script src="{{url_for('static', filename='videojs/video.js')}}"></script>
<script src="{{url_for('static', filename='videojs/lang/de.js')}}"></script>
<script src="{{url_for('static', filename='videojs/ie8/videojs-ie8.js')}}"></script>
<script src="{{url_for('static', filename='videojs/videojs-resolution-switcher.js')}}"></script>
<script src="{{url_for('static', filename='videojs/videojs-contrib-hls.js')}}"></script>
<script src="{{url_for('static', filename='videojs/videojs.hotkeys.js')}}"></script>
<script src="{{url_for('static', filename='videojs/videojs-markers.js')}}"></script>
{% endblock %}
</head>
<body>
{% block navbar %}
<nav class="hidden-print navbar navbar-default navbar-static-top" {% if config.DEBUG %} style="background-color: red" {% endif %} >
<div class="container-fluid">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="/" style="padding: 3px;">
<img alt="Brand" src="{{url_for('static', filename='logo.png')}}" style="height: 44px; width: 44px" >
</a>
<ul class="nav nav-pills" style="margin-top: 5px; padding-left: 40px;">
{% for endpoint, caption, iconlib, gly, visible in navbar if visible %}
<li{% if endpoint == request.endpoint %} class="active"{% endif %}>
<a href="{{ url_for(endpoint) }}" style="padding: 10px 6px;">
{% if gly != '' %}
{% if iconlib == 'bootstrap' %}
<span aria-hidden="true" class="glyphicon glyphicon-{{ gly }}"></span>
{% elif iconlib == 'fa' %}
<span aria-hidden="true" class="fa fa-{{ gly }}"></span>
{% endif %}
{{ caption }}
{% endif %}
</a>
</li>
{% endfor %}
</ul>
</div>
<div class="collapse navbar-collapse">
<ul class="nav nav-pills" style="margin-top: 5px;">
{% for endpoint, caption, iconlib, gly, visible in navbar if (not visible) and ismod() %}
<li{% if endpoint == request.endpoint %} class="active"{% endif %}>
<a href="{{ url_for(endpoint) }}">
{% if gly != '' %}
{% if iconlib == 'bootstrap' %}
<span aria-hidden="true" class="glyphicon glyphicon-{{ gly }}"></span>
{% elif iconlib == 'fa' %}
<span aria-hidden="true" class="fa fa-{{ gly }}"></span>
{% endif %}
{{ caption }}
{% endif %}
</a>
</li>
{% endfor %}
<li class="col-xs-9 col-sm-4 pull-right">
<form action="{{ url_for('search') }}" role="search">
<div class="input-group" style="margin-top: 3px">
<input class="form-control" type="text" name="q" placeholder="Search" value="{{ searchtext }}">
<span class="input-group-btn"><button class="btn btn-secondary" type="submit"><span class="glyphicon glyphicon-search"></span> </button></span>
</div>
</form>
</li>
<li class="navbar-right">
{% if not ismod() %}
<a href="{{url_for('login', ref=request.url)}}" id="loginpopover" data-container="body" data-toggle="popover" data-placement="bottom">
<span class="glyphicon glyphicon-log-in"></span>
</a>
<script>
$('#loginpopover').on('click',function(e){
e.preventDefault();
}).popover(
{
html:true,
title:'Login für Moderatoren',
content:'<form method="post" action="{{url_for('login', ref=request.values.get('ref', request.url))}}"><input autofocus placeholder="User" name="user" type="text" class="form-control"><input placeholder="Password" name="password" type="password" class="form-control"><br><input type="submit" value="Login" class="btn btn-default"></form>'
}
)
</script>
{% else %}
<a href="{{url_for('logout', ref=request.url)}}">
{{ session.user.givenName }}
<span class="glyphicon glyphicon-log-out"></span>
</a>
{% endif %}
</li>
</ul>
</div>
</div>
</nav>
{% endblock %}
<div class="container-fluid" style="margin-bottom: 30px;">
<div class="row">
{% if page_border == 0 %}
<div class="col-xs-12">
{% else %}
<div class="col-xs-12 col-md-offset-{{ page_border }} col-md-{{ 12-(2*page_border) }}">
{% endif %}
{% block announcements %}
{% for msg in get_announcements(min_announcement_level) if (not request.cookies['alert-info-'+msg.id|string]) %}
<div class="hidden-print alert alert-{{levels.get(msg.level, ('info', ''))[0]}}" role="alert">
<a href="#" class="close" data-dismiss="alert" aria-label="close" onclick="Cookies.set('alert-info-{{msg.id}}', '1');">×</a>
{{ msg.text|safe }}
</div>
{% endfor %}
{% endblock %}
{% block alerts %}
{% for msg in get_flashed_messages(category_filter=["message"]) %}
<div class="hidden-print alert alert-danger" role="alert">{{ msg|safe }}</div>
{% endfor %}
{% endblock %}
{% block content %}
{% endblock %}
</div>
</div>
</div>
{% block footer %}
<footer class="footer hidden-print" {% if config.DEBUG %} style="background-color: red" {% endif %} >
<div class="container-fluid">
<ul class="list-inline" style="margin-top: 5px;">
<li>
<a href="https://www.fsmpi.rwth-aachen.de/">Fachschaft I/1</a>
</li>
<li>
<a href="http://www.vampir.rwth-aachen.de/">Vampir e.V.</a>
</li>
<li>
<a href="https://www.youtube.com/channel/UCxh5snRN7yZyBsytNbGNuEQ">Youtube</a>
</li>
<li>
<a href="https://www.facebook.com/videoag">Facebook</a>
</li>
<li>
<a href="https://twitter.com/rwthvideo">Twitter</a>
</li>
{% if ismod() or config.DEBUG %}
<li class="pull-right">
<a target="_blank" href="https://git.fsmpi.rwth-aachen.de/videoaginfra/website/commit/{{ gitversion.longhash }}"><span title="{{ gitversion.branch }} {{ gitversion.hash }}: {{ gitversion.msg }}" data-toggle="tooltip">{{ gitversion.hash }}</span></a>
<span>{{ gethostname() }}</span>
{% if is_readonly() %}
<span>(read-only)</span>
{% endif %}
</li>
{% endif %}
</ul>
</div>
</footer>
{% endblock %}
{% block modals %}
<div class="modal fade" id="modal_apierror" role="dialog">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 style="color:red;"><span class="glyphicon glyphicon-exclamation-sign"></span> Error</h4>
</div>
<div class="modal-body">
</div>
<div class="modal-footer">
</div>
</div>
</div>
</div>
{% endblock %}
{% if ismod() %}
<script>
$( function () {
moderator.permissioneditor.setpermissions({{global_permissions|tojson|safe}});
moderator.api.setcsrftoken('{{ session['_csrf_token'] }}');
});
</script>
{% endif %}
<script>
$( function () {
$('[data-toggle="tooltip"]').tooltip(
{
trigger: 'hover',
html: true
});
});
</script>
</body>
</html>