diff --git a/amd/build/suivi.js b/amd/build/suivi.js
index 0a2c975065a6085bc0fb997d1d707074fa986e88..52d7dee3b4c07d11d5b50c7c3ecb52a9a6a8001e 100644
--- a/amd/build/suivi.js
+++ b/amd/build/suivi.js
@@ -60,6 +60,8 @@ define(['jquery', 'core/ajax', 'core/templates', 'core/str'],
                 });
                 $('#iena-button-search').on('click', function(e){
                 	searchStudent();
+                	e.preventDefault()
+         			e.stopPropagation()
                 })
                
 	    		
@@ -425,43 +427,52 @@ define(['jquery', 'core/ajax', 'core/templates', 'core/str'],
 
 
 	function searchStudent(){
-		$(".iena-filters .custom-select").prop('disabled', true);
-		$(".iena-filters .iena-custom-dropdown > button").prop('disabled', true);
+		var searchinput= $('input[name="iena-search-student"]').val();
+		var searchform=document.querySelector("#iena-search-form");
+		 
+		if(searchinput.length<=2){
+			
+			$('input[name="iena-search-student"]').css("border-color","#dc3545");
+			$("#iena-search-error").show();
 
-		if($("#iena-close-tag").length == 0){
-			console.log("on a pas encore cherché");
-			old_data=$.extend(true,{},data);
 		}
 		else{
-			console.log("le tag existe : on a déjà cherché");
-		}
- 		
-		var completeUrl=getCompleteUrl();
-    	var searchinput= $('input[name="iena-search-student"]').val();
- 		$('#iena-search-tag').html(`<span role="option" data-value="`+searchinput+`" aria-selected="true" class="badge badge-secondary clickable text-wrap text-break line-height-4 m-1" id="form_autocomplete_selection-1739873966209-0" data-active-selection="true">
-        `+searchinput+`<i id="iena-close-tag" class="icon fa fa-times pl-2 mr-0"></i>
-    </span>`);
- 		
-    	$('#iena-search-tag').on('click', 'i', function(e){
-    		
-    		deleteSearch(old_data);
-    	});
-
-    	$.ajax({ url: completeUrl,
-        	data: {action: 'search_student', search_input:searchinput},
-        	type: 'post',
-        	success: function(request) { 
-        		showHideActivities();
-        		data=calcPercentage(JSON.parse(request));
-        		showHideStudents();
-        		if(!request.error){
+			
+			$('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);
 
-        		}
-        		$('input[name="iena-search-student"]').val("");
-        		reloadTable(data);
-        		updateGroupsFilterLabel(false);
+			if($("#iena-close-tag").length == 0){
+				old_data=$.extend(true,{},data);
 			}
-		});
+	 		
+			var completeUrl=getCompleteUrl();
+	    	
+	 		$('#iena-search-tag').html(`<span role="option" data-value="`+searchinput+`" aria-selected="true" class="badge badge-secondary clickable text-wrap text-break line-height-4 m-1" id="form_autocomplete_selection-1739873966209-0" data-active-selection="true">
+	        `+searchinput+`<i id="iena-close-tag" class="icon fa fa-times pl-2 mr-0"></i></span>`);
+	 		
+	    	$('#iena-search-tag').on('click', 'i', function(e){
+	    		
+	    		deleteSearch(old_data);
+	    	});
+
+	    	$.ajax({ url: completeUrl,
+	        	data: {action: 'search_student', search_input:searchinput},
+	        	type: 'post',
+	        	success: function(request) { 
+	        		showHideActivities();
+	        		data=calcPercentage(JSON.parse(request));
+	        		showHideStudents();
+	        		
+	        		$('input[name="iena-search-student"]').val("");
+	        		reloadTable(data);
+	        		updateGroupsFilterLabel(false);
+				}
+			});
+		}
+		
 	}
 
 	function deleteSearch(old_data){
diff --git a/styles.css b/styles.css
index cbee038b4e35d02b7c275a5f96b03a22ea94e852..6ff2685189911bc298548f8f6343ef995a1f4a61 100644
--- a/styles.css
+++ b/styles.css
@@ -935,6 +935,18 @@ tbody th{
 	padding-bottom: .5rem;
 }
 
+.group-column-iena{
+	padding-left: 6px;
+	padding-right: 10px;
+
+}
+
+th.group-column-iena{
+	background: white;
+	  z-index: 200;
+	  position: sticky;
+}
+
 #caption-iena .caption-status{
 	display: flex;
 	margin-right: 20px;
@@ -943,7 +955,7 @@ tbody th{
 
 #caption-iena .caption-status .pointer-help{
 	width: 32px;
-	height: 25px;
+	height: 26px;
 	margin-right: 7px;
 	display: flex;
     align-items: center;
@@ -1253,10 +1265,16 @@ border-bottom: 1px solid #dee2e6;
 }
 
 #iena-search-tag{
-	display: inline-block;
+	display: block;
 	vertical-align: middle;
 }
 
 #iena-search-bar{
 	margin-top: 30px;
-}
\ No newline at end of file
+}
+
+#iena-search-bar input{
+	width: auto;
+  	display: inline-block;
+  	vertical-align: middle;
+}
diff --git a/templates/suivi.mustache b/templates/suivi.mustache
index 36d82eb21de0e463cd94b36e20a6ac726ed6da3f..ed6996ada941fa8f9027e89088d15b373f0db304 100644
--- a/templates/suivi.mustache
+++ b/templates/suivi.mustache
@@ -143,13 +143,19 @@
 
 	<div id="iena-search-bar">
 		<h4>{{# str }} searchstudent, format_iena {{/ str}}</h4>
-		<input type="text" name="iena-search-student" placeholder="{{# str }} searchplaceholder, format_iena {{/ str}}"></input>
+		<form class="needs-validation" id="iena-search-form">
+			<input type="text" class="form-control" name="iena-search-student" placeholder="{{# str }} searchplaceholder, format_iena {{/ str}}"></input>
+			
+			<button id="iena-button-search" type="submit" class="btn btn-primary">Rechercher</button>
+			<div id="iena-search-tag">
+				<div class="form-autocomplete-selection d-inline-block my-0 form-autocomplete-multiple h5" role="listbox" aria-atomic="true" tabindex="0"></div>
+
+			</div>
+			<div id="iena-search-error" class="invalid-feedback">
+				Veuillez entrer au moins 3 caractères.
+			</div>
+		</form>
 		
-		<button id="iena-button-search" class="btn btn-primary">Rechercher</button>
-		<div id="iena-search-tag">
-			<div class="form-autocomplete-selection d-inline-block my-0 form-autocomplete-multiple h5" role="listbox" aria-atomic="true" tabindex="0"></div>
-
-		</div>
 	</div>
 </div>