Skip to content
Snippets Groups Projects
Commit 6b9fe01e authored by DELARUELLE Myriam's avatar DELARUELLE Myriam
Browse files

completion advanced filter (overkill)

parent 0c674b08
No related branches found
No related tags found
No related merge requests found
......@@ -109,10 +109,19 @@ define(['jquery', 'core/ajax', 'core/templates', 'core/str'],
},
initTable:function(){
data=fetchProgress();
$("#link-more-filters").on("click", function(){
$("#iena-more-filters").toggle();
});
$("#check-more-filters").on("click", function(){
applyMoreFilters();
});
}
},
......@@ -132,7 +141,7 @@ define(['jquery', 'core/ajax', 'core/templates', 'core/str'],
localStorage.setItem("groups",request);
}
console.log(request);
initActivityFilter(false);
updateActivitiesFilterLabel(false);
initGroupFilter(false);
......@@ -440,7 +449,7 @@ define(['jquery', 'core/ajax', 'core/templates', 'core/str'],
$('input[name="iena-search-student"]').css("border-color","#8f959e");
$("#iena-search-error").hide();
$(".iena-filters .custom-select").prop('disabled', true);
$(".iena-filters .iena-custom-dropdown > button").prop('disabled', true);
......@@ -485,6 +494,146 @@ define(['jquery', 'core/ajax', 'core/templates', 'core/str'],
}
function applyMoreFilters(){
if ($("#check-more-filters").is(":checked")){
$("#symbol-select").prop("disabled", true);
$("#completion-select").prop("disabled", true);
}
else{
$("#symbol-select").prop("disabled", false);
$("#completion-select").prop("disabled", false);
}
symbolBegin=$("#symbol-select-begin").val();
completionBegin=$("#completion-select-begin").val();
symbolEnd=$("#symbol-select-end").val();
completionEnd=$("#completion-select-end").val();
if((typeof completionBegin != Number && (completionBegin <0 || completionBegin > 100)) || (typeof completionEnd != Number && (completionEnd <0 || completionBegin > 100)) ){
console.log(typeof completionBegin);
}
else{
console.log("on montre les étyd");
showHideStudentsAdvancedFilters(symbolBegin, completionBegin, symbolEnd, completionEnd);
reloadTable(data);
}
}
function showHideStudentsAdvancedFilters(symbolBegin, completionBegin, symbolEnd, completionEnd){
data.count_results=0;
console.log(data.students);
for(var i=0; i<data.students.length; i++){
/*if(data.display_groups==1){
data.students[i].display_groups=true;
}*/
console.log(symbolBegin);
console.log(symbolEnd);
switch(symbolBegin){
case ">":
switch(symbolEnd){
case "<":
console.log("on devrait arriver ic");
if(data.students[i].percentage > completionBegin && data.students[i].percentage < completionEnd){
data.count_results++;
data.students[i].visible=true;
}
else{
data.students[i].visible=false;
}
break;
case "=":
if(data.students[i].percentage > completionBegin && data.students[i].percentage == completionEnd){
data.count_results++;
data.students[i].visible=true;
}
else{
data.students[i].visible=false;
}
break;
case "":
if(data.students[i].percentage > completionBegin && data.students[i].percentage <= completionEnd){
data.count_results++;
data.students[i].visible=true;
}
else{
data.students[i].visible=false;
}
break;
}
break;
case "=":
switch(symbolEnd){
case "<":
if(data.students[i].percentage == completionBegin && data.students[i].percentage < completionEnd){
data.count_results++;
data.students[i].visible=true;
}
else{
data.students[i].visible=false;
}
break;
case "=":
if(data.students[i].percentage == completionBegin && data.students[i].percentage == completionEnd){
data.count_results++;
data.students[i].visible=true;
}
else{
data.students[i].visible=false;
}
break;
case "":
if(data.students[i].percentage == completionBegin && data.students[i].percentage <= completionEnd){
data.count_results++;
data.students[i].visible=true;
}
else{
data.students[i].visible=false;
}
break;
}
break;
case "":
switch(symbolEnd){
case "<":
if(data.students[i].percentage >= completionBegin && data.students[i].percentage < completionEnd){
data.count_results++;
data.students[i].visible=true;
}
else{
data.students[i].visible=false;
}
break;
case "=":
if(data.students[i].percentage >= completionBegin && data.students[i].percentage == completionEnd){
data.count_results++;
data.students[i].visible=true;
}
else{
data.students[i].visible=false;
}
break;
case "":
if(data.students[i].percentage >= completionBegin && data.students[i].percentage <= completionEnd){
data.count_results++;
data.students[i].visible=true;
}
else{
data.students[i].visible=false;
}
break;
}
break;
}
}
}
......
......@@ -204,6 +204,13 @@ function set_filters($data, $filters, $symbols, $sections, $currentusergroups, $
$data['filters'] = array_values($filters);
$data['symbols'] = array_values($symbols);
$data['symbolsAdvancedBegin']=array($data['symbols'][0],$data['symbols'][2],$data['symbols'][4]);
$data['symbolsAdvancedEnd']=array($data['symbols'][0],$data['symbols'][1],$data['symbols'][3]);
$data["sections"] = $sections;
//Ici on récupère les groupes "autres" auxquels je n'appartiens pas
//$data["groups"] = array_values($groups);
......@@ -405,6 +412,8 @@ $symbols = [
]
];
//On s'occupe des options ici
......
......@@ -137,6 +137,35 @@
</select>
</div>
<div>
<a href="#" id="link-more-filters">Filtres avancés</a>
<div id="iena-more-filters" style="display:none">
<input type="checkbox" id="check-more-filters"></input>
<div class="input-group">
<div class="input-group-prepend">
<label>Plage d'achèvement</label>
</div>
<select class="custom-select mr-sm-2" id="symbol-select-begin" name="filter">
{{#symbolsAdvancedBegin}}
<option {{selected}} value='{{value}}'>{{name}}</option>
{{/symbolsAdvancedBegin}}
</select>
<input type="text" class="form-control" id="completion-select-begin"></input>
<span>et</span>
<select class="custom-select mr-sm-2" id="symbol-select-end" name="filter">
{{#symbolsAdvancedEnd}}
<option {{selected}} value='{{value}}'>{{name}}</option>
{{/symbolsAdvancedEnd}}
</select>
<input type="text" class="form-control" id="completion-select-end"></input>
</div>
</div>
</div>
</form>
<div>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment