mirror of
https://gitlab.crans.org/bde/nk20
synced 2024-12-27 01:42:22 +00:00
71 lines
2.2 KiB
HTML
71 lines
2.2 KiB
HTML
{% extends "base.html" %}
|
|
{% load render_table from django_tables2 %}
|
|
{% load i18n %}
|
|
{% block content %}
|
|
<div class="row justify-content-center mb-4">
|
|
<div class="col-md-10 text-center">
|
|
<h4>
|
|
{% trans "search clubs" %}
|
|
</h4>
|
|
<input class="form-control mx-auto w-25" type="text" onkeyup="search_field_moved();return(false);" id="search_field"/>
|
|
<hr>
|
|
<a class="btn btn-primary text-center my-4" href="{% url 'member:club_create' %}">{% trans "Create club" %}</a>
|
|
</div>
|
|
</div>
|
|
<div class="row justify-content-center">
|
|
<div class="col-md-10">
|
|
<div class="card card-border shadow">
|
|
<div class="card-header text-center">
|
|
<h5> {% trans "Club listing" %}</h5>
|
|
</div>
|
|
<div class="card-body px-0 py-0" id="club_table">
|
|
{% render_table table %}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
{% endblock %}
|
|
{% block extrajavascript %}
|
|
<script type="text/javascript">
|
|
|
|
function getInfo() {
|
|
var asked = $("#search_field").val();
|
|
/* on ne fait la requête que si on a au moins un caractère pour chercher */
|
|
var sel = $(".table-row");
|
|
if (asked.length >= 1) {
|
|
$.getJSON("/api/members/club/?format=json&search="+asked, function(buttons){
|
|
let selected_id = buttons.results.map((a => "#row-"+a.id));
|
|
$(".table-row,"+selected_id.join()).show();
|
|
$(".table-row").not(selected_id.join()).hide();
|
|
|
|
});
|
|
}else{
|
|
// show everything
|
|
$('table tr').show();
|
|
}
|
|
}
|
|
var timer;
|
|
var timer_on;
|
|
/* Fontion appelée quand le texte change (délenche le timer) */
|
|
function search_field_moved(secondfield) {
|
|
if (timer_on) { // Si le timer a déjà été lancé, on réinitialise le compteur.
|
|
clearTimeout(timer);
|
|
timer = setTimeout("getInfo(" + secondfield + ")", 300);
|
|
}
|
|
else { // Sinon, on le lance et on enregistre le fait qu'il tourne.
|
|
timer = setTimeout("getInfo(" + secondfield + ")", 300);
|
|
timer_on = true;
|
|
}
|
|
}
|
|
|
|
// clickable row
|
|
$(document).ready(function($) {
|
|
$(".table-row").click(function() {
|
|
window.document.location = $(this).data("href");
|
|
});
|
|
});
|
|
|
|
</script>
|
|
{% endblock %}
|