admin: implement Enter keypress on search

This commit is contained in:
nemunaire 2020-01-29 18:18:25 +01:00
parent cb97af2f8a
commit 7c84301c04
4 changed files with 51 additions and 3 deletions

View File

@ -1284,6 +1284,22 @@ angular.module("FICApp")
$scope.themes = Theme.query();
$scope.fields = ["name", "authors", "headline", "path"];
$scope.validateSearch = function(keyEvent) {
if (keyEvent.which === 13) {
var myTheme = null;
$scope.themes.forEach(function(theme) {
if (String(theme.name.toLowerCase()).indexOf($scope.query.toLowerCase()) >= 0) {
if (myTheme === null)
myTheme = theme;
else
myTheme = false;
}
});
if (myTheme)
$location.url("themes/" + myTheme.id);
}
};
$scope.show = function(id) {
$location.url("/themes/" + id);
};
@ -1343,6 +1359,22 @@ angular.module("FICApp")
$scope.exercice = {}; // Array used to save fields to updates in selected exercices
$scope.fields = ["title", "headline"];
$scope.validateSearch = function(keyEvent) {
if (keyEvent.which === 13) {
var myExercice = null;
$scope.exercices.forEach(function(exercice) {
if (String(exercice.title.toLowerCase()).indexOf($scope.query.toLowerCase()) >= 0) {
if (myExercice === null)
myExercice = exercice;
else
myExercice = false;
}
});
if (myExercice)
$location.url("exercices/" + myExercice.id);
}
};
$scope.toggleSelectAll = function() {
angular.forEach($filter('filter')($scope.exercices, $scope.query), function(ex) {
ex.selected = !$scope.selectall
@ -1833,6 +1865,22 @@ angular.module("FICApp")
$scope.teams = Team.query();
$scope.fields = ["id", "name"];
$scope.validateSearch = function(keyEvent) {
if (keyEvent.which === 13) {
var myTeam = null;
$scope.teams.forEach(function(team) {
if (String(team.name.toLowerCase()).indexOf($scope.query.toLowerCase()) >= 0) {
if (myTeam === null)
myTeam = team;
else
myTeam = false;
}
});
if (myTeam)
$location.url("teams/" + myTeam.id);
}
};
$scope.desactiveTeams = function() {
$http.post("/api/disableinactiveteams").then(function() {
$scope.teams = Team.query();

View File

@ -20,7 +20,7 @@
</div>
<div>
<p><input type="search" class="form-control" placeholder="Search" ng-model="query" autofocus></p>
<p><input type="search" class="form-control" placeholder="Search" ng-model="query" ng-keypress="validateSearch($event)" autofocus></p>
<table class="table table-hover table-bordered table-striped table-sm">
<thead class="thead-dark">
<tr>

View File

@ -6,7 +6,7 @@
<button type="button" ng-click="desactiveTeams()" class="float-right btn btn-sm btn-danger mr-2" title="Cliquer pour marquer les équipes sans certificat comme inactives (et ainsi éviter que ses fichiers ne soient générés)"><span class="glyphicon glyphicon-leaf" aria-hidden="true"></span> Désactiver les équipes inactives</button>
</h2>
<p><input type="search" class="form-control" placeholder="Search" ng-model="query" autofocus></p>
<p><input type="search" class="form-control" placeholder="Search" ng-model="query" ng-keypress="validateSearch($event)" autofocus></p>
<table class="table table-hover table-bordered table-striped table-sm">
<thead class="thead-dark">
<tr>

View File

@ -4,7 +4,7 @@
<button type="button" ng-click="sync()" ng-class="{'disabled': inSync}" class="float-right btn btn-sm btn-secondary ml-2"><span class="glyphicon glyphicon-refresh" aria-hidden="true"></span> Synchroniser</button>
</h2>
<p><input type="search" class="form-control" placeholder="Search" ng-model="query" autofocus></p>
<p><input type="search" class="form-control" placeholder="Search" ng-model="query" ng-keypress="validateSearch($event)" autofocus></p>
<table class="table table-hover table-bordered table-striped">
<thead class="thead-dark">
<tr>