3
0
Fork 0
mirror of https://github.com/nanoy42/coope synced 2024-12-23 23:43:47 +00:00

Automatic logout

This commit is contained in:
Yoann Pétri 2019-01-20 12:14:53 +01:00
parent 2329f938d1
commit 75329f510d
5 changed files with 49 additions and 0 deletions

View file

@ -39,3 +39,9 @@ def global_message():
gp,_ = GeneralPreferences.objects.get_or_create(pk=1)
messages = gp.global_message.split("\n")
return random.choice(messages)
@register.simple_tag
def logout_time():
gp, _ = GeneralPreferences.objects.get_or_create(pk=1)
logout_time = gp.automatic_logout_time
return logout_time

View file

@ -0,0 +1,23 @@
# Generated by Django 2.1 on 2019-01-20 11:08
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('preferences', '0006_auto_20190119_2326'),
]
operations = [
migrations.AddField(
model_name='generalpreferences',
name='automatic_logout_time',
field=models.PositiveIntegerField(null=True),
),
migrations.AddField(
model_name='historicalgeneralpreferences',
name='automatic_logout_time',
field=models.PositiveIntegerField(null=True),
),
]

View file

@ -35,6 +35,7 @@ class GeneralPreferences(models.Model):
lost_pintes_allowed = models.PositiveIntegerField(default=0)
floating_buttons = models.BooleanField(default=False)
home_text = models.TextField(blank=True)
automatic_logout_time = models.PositiveIntegerField(null=True)
history = HistoricalRecords()
class Cotisation(models.Model):

View file

@ -136,6 +136,14 @@
</div>
</div>
<br>
<h3>Déconnexion automatique</h3>
<div class="row uniform">
<div class="12u">
{{form.automatic_logout_time}}
<label for="{{form.automatic_logout_time.id_for_label}}">Temps (en minutes) au bout duquel l'utilisateur est déconnecté automatiquement (0 pour qu'il reste connecté)</label>
</div>
</div>
<br>
<h3>Texte de la page d'accueil</h3>
<div class="row uniform">
<div class="12u">

View file

@ -44,5 +44,16 @@
{% include 'footer.html'%}
</footer>
</div>
{% if request.user.is_authenticated %}
<script>
time = {% logout_time %};
function logout(){
window.location.replace("{% url 'users:logout' %}");
}
if(time != 0){
setTimeout(logout, 60000 * time);
}
</script>
{% endif %}
</body>
</html>