Ready for review

This commit is contained in:
gnikwo
2017-11-28 14:43:05 +01:00
parent 21b24f2891
commit 5cd031f579
12 changed files with 155 additions and 344 deletions

View File

@ -519,7 +519,7 @@ class User(AbstractBaseUser):
return infos
def get_clubs_with_rights(self):
return [m.club.id for m in self.memberships.filter(end_date__gte=timezone.now()).all() if m.club.has_rights_in_club(self)]
return [m.club.id for m in self.memberships.filter(models.Q(end_date__isnull=True) | models.Q(end_date__gte=timezone.now())).all() if m.club.has_rights_in_club(self)]
class AnonymousUser(AuthAnonymousUser):

View File

@ -1,6 +1,5 @@
$(document).ready(function(){
wait_time = 40 * 1000;
transition_time = 1000;
i = 0;
@ -39,16 +38,18 @@ $(document).ready(function(){
function init_progress_bar()
{
$("#slideshow #progress_bar").css("transition", "none");
$("#slideshow #progress_bar").removeClass("progress");
$("#slideshow #progress_bar").addClass("init");
}
function start_progress_bar()
function start_progress_bar(display_time)
{
$("#slideshow #progress_bar").removeClass("init");
$("#slideshow #progress_bar").addClass("progress");
$("#slideshow #progress_bar").css("transition", "width " + display_time + "s linear")
}
@ -63,6 +64,7 @@ $(document).ready(function(){
next_slide = $($("#slideshow .slide").get((i + 1) % max));
next_slide.removeClass("right");
next_slide.addClass("center");
display_time = next_slide.attr("display_time") || 2;
$("#slideshow .bullet").removeClass("active");
bullet = $("#slideshow .bullet")[(i + 1) % max];
@ -76,19 +78,20 @@ $(document).ready(function(){
others_left.removeClass("left");
others_left.addClass("right");
start_progress_bar();
next_trigger = setTimeout(next, wait_time);
start_progress_bar(display_time);
next_trigger = setTimeout(next, display_time * 1000);
}, transition_time);
}
display_time = $("#slideshow .center").attr("display_time");
init_progress_bar();
setTimeout(function(){
if(max > 1){
start_progress_bar();
setTimeout(next, wait_time);
start_progress_bar(display_time);
setTimeout(next, display_time * 1000);
}
}, 10);

View File

@ -1,36 +1,28 @@
body{
position: absolute;
width: 100vw;
height: 100vh;
padding: 0;
margin: 0;
}
#slideshow
{
#slideshow{
position: relative;
background-color: lightgrey;
height: 100%;
*
{
*{
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
&:hover{
&::before
{
&::before{
position: absolute;
width: 100%;
@ -51,9 +43,7 @@ body{
}
&.fullscreen
{
&.fullscreen{
position: fixed;
width: 100%;
height: 100%;
@ -61,36 +51,23 @@ body{
left: 0;
background: none;
&:before
{
&:before{
display:none;
}
#slides
{
#slides{
height: 100vh;
}
}
#slides
{
#slides{
position: relative;
height: 100%;
overflow: hidden;
.slide
{
.slide{
position: absolute;
width: 100%;
height: 100%;
@ -100,52 +77,32 @@ body{
top: 0px;
background-color: grey;
transition: left 1s ease-out;
img
{
img{
max-width: 100%;
max-height: 100%;
}
}
.slide.left
{
.slide.left{
left: -100%;
}
.slide.center
{
.slide.center{
left: 0px;
}
.slide.right
{
.slide.right{
left: 100%;
transition: none;
}
}
#progress_bullets
{
#progress_bullets{
position: absolute;
bottom: 10px;
width: 100%;
height: 10px;
@ -154,9 +111,7 @@ body{
margin-bottom: 10px;
.bullet
{
.bullet{
height: 10px;
width: 10px;
@ -167,43 +122,27 @@ body{
background-color: grey;
&.active
{
&.active{
background-color: #c99836;
}
}
}
#progress_bar
{
#progress_bar{
position: absolute;
bottom: 0px;
height: 10px;
background-color: #304c83;
&.init
{
&.init{
width: 0px;
transition: none;
}
&.progress
{
&.progress{
width: 100%;
transition: width 40s linear;
transition: width 10s linear;
}
}
}

View File

@ -1,35 +0,0 @@
{% extends "core/base.jinja" %}
{% block title %}
{% trans %}Poster{% endtrans %}
{% endblock %}
{% block content %}
<div id="poster_edit">
<div id="title">
<div id="links" class="left">
<a id="list" class="link" href="{{ url(poster_list_url_name) }}">{% trans %}List{% endtrans %}</a>
</div>
<h3>{% trans %}Posters - edit{% endtrans %}</h3>
<div id="links" class="right">
<a class="link delete" href="{{ url("com:poster_delete", poster.id) }}">{% trans %}Delete{% endtrans %}</a>
</div>
</div>
<div id="poster">
<form action="" method="post" enctype="multipart/form-data">
{% csrf_token %}
{{ form.as_p() }}
<p><input type="submit" value="{% trans %}Save{% endtrans %}" /></p>
</form>
</div>
</div>
{% endblock %}

View File

@ -16,7 +16,7 @@
<div id="title">
<h3>{% trans %}Posters{% endtrans %}</h3>
<div id="links" class="right">
<a id="create" class="link" href="{{ url(poster_create_url_name) }}">{% trans %}Create{% endtrans %}</a>
<a id="create" class="link" href="{{ url(app + ":poster_list") }}">{% trans %}Create{% endtrans %}</a>
{% if app == "com" %}
<a id="moderation" class="link" href="{{ url("com:poster_moderate_list") }}">{% trans %}Moderation{% endtrans %}</a>
{% endif %}

View File

@ -1,39 +0,0 @@
{% extends "core/base.jinja" %}
{% block script %}
{{ super() }}
<script src="{{ static('com/js/poster_list.js') }}"></script>
{% endblock %}
{% block content %}
<div id="poster_list">
<div id="title">
<div id="links" class="left">
<a id="list" class="link" href="{{ url("com:poster_list") }}">{% trans %}List{% endtrans %}</a>
</div>
<h3>{% trans %}Posters - moderation{% endtrans %}</h3>
</div>
<div id="posters">
{% if object_list.count == 0 %}
<div id="no-posters">{% trans %}No objects{% endtrans %}</div>
{% else %}
{% for poster in object_list %}
<div class="poster">
<div class="name"> {{ poster.name }} </div>
<div class="image"> <img src="{{ poster.file.url }}"></img> </div>
<a class="moderate" href="{{ url(moderation_url, object_id=poster.id) }}">Moderate</a>
</div>
{% endfor %}
{% endif %}
</div>
<div id="view"><div id="placeholder"></div></div>
</div>
{% endblock %}

View File

@ -1,34 +0,0 @@
{% extends "core/base.jinja" %}
{% block title %}
{% trans %}Screen{% endtrans %}
{% endblock %}
{% block content %}
<div id="screen_edit">
<div id="title">
<div id="links" class="left">
<a id="list" class="link" href="{{ url(screen_list_url_name) }}">{% trans %}List{% endtrans %}</a>
</div>
<h3>{% trans %}Screen - edit{% endtrans %}</h3>
<div id="links" class="right">
<a class="link delete" href="{{ url("com:screen_delete", screen.id) }}">{% trans %}Delete{% endtrans %}</a>
</div>
</div>
<div id="screen">
<form action="" method="post" enctype="multipart/form-data">
{% csrf_token %}
{{ form.as_p() }}
<p><input type="submit" value="{% trans %}Save{% endtrans %}" /></p>
</form>
</div>
</div>
{% endblock %}

View File

@ -1,39 +0,0 @@
{% extends "core/base.jinja" %}
{% block title %}
{% trans %}Screens{% endtrans %}
{% endblock %}
{% block content %}
<div id="screen_list">
<div id="title">
<h3>{% trans %}Screens{% endtrans %}</h3>
<div id="links" class="right">
<a id="create" class="link" href="{{ url(screen_create_url_name) }}">{% trans %}Create{% endtrans %}</a>
</div>
</div>
<div id="screens">
{% if screen_list.count() == 0 %}
<div id="no-screens">{% trans %}No screens{% endtrans %}</div>
{% else %}
{% for screen in screen_list %}
<div class="screen">
<div class="name">{{ screen.name }}</div>
<a class="edit" href="{{ url(screen_edit_url_name, screen.id) }}">{% trans %}Edit{% endtrans %}</a>
<a class="slideshow" href="{{ url("com:screen_slideshow", screen.id) }}" target="_blank">{% trans %}Slideshow{% endtrans %}</a>
</div>
{% endfor %}
{% endif %}
</div>
</div>
{% endblock %}

View File

@ -9,7 +9,7 @@
<div id="slides">
{% for poster in posters %}
<div class="slide {% if loop.first %}center{% else %}right{% endif %}">
<div class="slide {% if loop.first %}center{% else %}right{% endif %}" display_time="{{ poster.display_time }}">
<img src="{{ poster.file.url }}"></img>
</div>
{% endfor %}