|
106 | 106 | const only = languagesRaw.filter(i => i !== all); |
107 | 107 | console.log('allowed languages', languagesRaw); |
108 | 108 | if (only.length === 0) return all; |
109 | | - if (languagesRaw.length === 1) return only[0]; |
| 109 | + if (languagesRaw.length === 1) { |
| 110 | + const result = only[0]; |
| 111 | + console.log('selected the only available language', result); |
| 112 | + return result; |
| 113 | + } |
110 | 114 |
|
111 | 115 | const detected = detectAll(query, { only }); |
112 | | - console.log('detected languages', detected); |
| 116 | + console.log('detected languages', JSON.stringify(detected)); |
113 | 117 |
|
114 | 118 | const ranked = detected |
115 | 119 | .filter(i => i.accuracy > 0.01) |
116 | 120 | .sort((a, b) => b.accuracy - a.accuracy); |
117 | 121 |
|
118 | | - return ranked[0]?.lang || (languagesRaw.length > only.length ? all : only[0]); |
| 122 | + const result = ranked[0]?.lang || (languagesRaw.length > only.length ? all : only[0]); |
| 123 | + console.log('selected language', result); |
| 124 | + return result; |
119 | 125 | }; |
120 | 126 |
|
121 | 127 | const shuffle = xs => { |
|
144 | 150 |
|
145 | 151 | const query = queryFromForm || params.get('q') || ''; |
146 | 152 | console.log(`query "${query}"`); |
147 | | - newParams.set('language', detectLanguage(query, params)); |
| 153 | + newParams.set('language', params.get('language') || detectLanguage(query, params)); |
148 | 154 | newParams.set('q', query); |
149 | 155 | newParams.set('safesearch', params.get('safesearch') || '0'); |
150 | 156 | newParams.set('image_proxy', params.get('image_proxy') || 'True'); |
|
0 commit comments