@@ -3,6 +3,7 @@ $(document).ready(function(){
33 var close_icon = $ ( '.contributors-section .fa-close' ) ;
44 var results_body = $ ( '.search-results-tbody' ) ;
55 var searched_keyword = null ;
6+ var contributors_card = $ ( '.contributor-card' ) ;
67
78 function appendChildren ( element , username , el_result_value ,
89 hide_all_contributors ) {
@@ -13,52 +14,71 @@ $(document).ready(function(){
1314 var row_id = result_td . id ;
1415 var login = row_id . replace ( 'td-' , '' ) ;
1516 $ ( '.contributor-card' ) . css ( 'display' , 'none' ) ;
16- $ ( '[login=' + login + ']' ) . css ( 'display' , 'block' ) ;
17+ var contrib_card = $ ( '[login=' + login + ']' ) ;
18+ if ( contrib_card . hasClass ( 'meta-reviewer' ) ) {
19+ contrib_card . css ( 'display' , 'flex' ) ;
20+ }
21+ else {
22+ contrib_card . css ( 'display' , 'block' ) ;
23+ }
1724 $ ( '.search-results' ) . css ( 'display' , 'none' ) ;
1825 } ) ;
1926 }
2027 element . append ( result_td ) ;
2128 }
2229
30+ function match ( search , element , attribute ) {
31+ return $ ( element ) . attr ( attribute ) . toLowerCase ( ) . indexOf ( search ) > - 1 ;
32+ }
33+
2334 search_input . on ( 'keypress keyup' , function ( ) {
24- searched_keyword = search_input . val ( ) ;
35+ searched_keyword = search_input . val ( ) . toLowerCase ( ) ;
2536 if ( searched_keyword === '' ) {
2637 $ ( '.search-results' ) . css ( 'display' , 'none' ) ;
2738 close_icon . css ( 'display' , 'none' ) ;
2839 }
2940 else {
3041 $ ( '.search-results' ) . css ( 'display' , 'block' ) ;
3142 close_icon . css ( 'display' , 'block' ) ;
32- var search_by_login = $ ( '[login^=' + searched_keyword + ']' ) ;
33- var search_by_name = $ ( '[name^=' + searched_keyword + ']' ) ;
43+ var all_results = [ ] ;
44+ contributors_card . filter ( function ( ) {
45+ if ( match ( searched_keyword , this , 'login' ) ||
46+ match ( searched_keyword , this , 'name' ) ) {
47+ all_results . push ( $ ( this ) ) ;
48+ }
49+ } ) ;
3450 var results_tbody_tr = $ ( '.search-results-tbody tr' ) ;
3551 results_tbody_tr . remove ( ) ;
36- if ( search_by_login . length + search_by_name . length === 0 ) {
52+ if ( all_results . length === 0 ) {
3753 appendChildren ( results_body , null , 'No results found!' , false ) ;
3854 }
3955 else {
40- var all_results = search_by_login . add ( search_by_name ) ;
41- for ( var contrib in all_results . get ( ) ) {
42- if ( all_results [ contrib ] ) {
43- var login = all_results [ contrib ] . getAttribute ( 'login' ) ;
44- var name = all_results [ contrib ] . getAttribute ( 'name' ) ;
45- var result_value = null ;
46- if ( name ) {
47- result_value = login + " (" + name + ")" ;
48- }
49- else {
50- result_value = login ;
51- }
52- appendChildren ( results_body , login , result_value , true ) ;
56+ all_results . forEach ( function ( result ) {
57+ var login = result . attr ( 'login' ) ;
58+ var name = result . attr ( 'name' ) ;
59+ var result_value = null ;
60+ if ( name ) {
61+ result_value = login + " (" + name + ")" ;
5362 }
54- }
63+ else {
64+ result_value = login ;
65+ }
66+ appendChildren ( results_body , login , result_value , true ) ;
67+ } ) ;
5568 }
5669 }
5770 } ) ;
5871
5972 close_icon . on ( 'click' , function ( ) {
60- $ ( '.contributor-card' ) . css ( 'display' , 'block' ) ;
73+ var all_contrib_cards = $ ( '.contributor-card' ) ;
74+ if ( all_contrib_cards . hasClass ( 'meta-reviewer' ) ) {
75+ all_contrib_cards . css ( 'display' , 'flex' ) ;
76+ }
77+ else {
78+ all_contrib_cards . css ( 'display' , 'block' ) ;
79+ }
6180 close_icon . css ( 'display' , 'none' ) ;
6281 search_input . val ( null ) ;
82+ $ ( '.search-results' ) . css ( 'display' , 'none' ) ;
6383 } ) ;
6484} ) ;
0 commit comments