@@ -131,15 +131,14 @@ class SearchViewReactor: Reactor {
131
131
self . removeSearchWord ( text)
132
132
return . just( . removeRecentSearchWord( indexPath) )
133
133
case . selectLanguage( let language) :
134
- // self.userdefaultsService.set(value: language, forKey: UserDefaultsKey.langauge)
134
+ guard self . currentState . segmentType == SearchTypes . repositories else { return . empty ( ) }
135
135
self . userdefaultsService. setStruct ( value: language, forKey: UserDefaultsKey . langauge)
136
136
let languageMutation : Observable < Mutation > = . just( . setLanguage( language) )
137
137
138
138
guard let query = self . currentState. query, !query. isEmpty else { return . empty( ) }
139
139
let startLoadingMutation : Observable < Mutation > = . just( . setLoading( true ) )
140
140
let endLoadingMutation : Observable < Mutation > = . just( . setLoading( false ) )
141
- let requestMutation : Observable < Mutation > = ( self . currentState. segmentType == SearchTypes . users) ?
142
- self . searchUsersMutation ( query: query) : self . searchRepositoriesMutation ( query: query)
141
+ let requestMutation : Observable < Mutation > = self . searchRepositoriesMutation ( query: query, language: language)
143
142
144
143
return . concat( [ languageMutation, startLoadingMutation, requestMutation, endLoadingMutation] )
145
144
}
@@ -204,18 +203,17 @@ class SearchViewReactor: Reactor {
204
203
private func searchUsersMutation( query: String ) -> Observable < Mutation > {
205
204
let currentPage = SearchViewReactor . INITIAL_PAGE
206
205
guard !query. isEmpty else { return . just( . setSearchUsers( [ ] , nextPage: currentPage, canLoadMore: false ) ) }
207
- let language = self . currentState. language
208
- return self . searchService. searchUser ( query: query, page: currentPage, language: language? . name)
206
+ return self . searchService. searchUser ( query: query, page: currentPage)
209
207
. map { ( lists, canLoadMore) -> Mutation in
210
208
let newPage = !canLoadMore ? currentPage : currentPage + 1
211
209
return . setSearchUsers( lists, nextPage: newPage, canLoadMore: canLoadMore)
212
210
} . catchErrorJustReturn ( . setSearchUsers( [ ] , nextPage: currentPage, canLoadMore: false ) )
213
211
}
214
212
215
- private func searchRepositoriesMutation( query: String ) -> Observable < Mutation > {
213
+ private func searchRepositoriesMutation( query: String , language : Language ? = nil ) -> Observable < Mutation > {
216
214
let currentPage = SearchViewReactor . INITIAL_PAGE
217
215
guard !query. isEmpty else { return . just( . setSearchRepos( [ ] , nextPage: currentPage, canLoadMore: false ) ) }
218
- let language = self . currentState. language
216
+ let language = language ?? self . currentState. language
219
217
return self . searchService. searchRepo ( query: query, page: currentPage, language: language? . name)
220
218
. map { ( lists, canLoadMore) -> Mutation in
221
219
let newPage = !canLoadMore ? currentPage : currentPage + 1
@@ -241,7 +239,7 @@ class SearchViewReactor: Reactor {
241
239
242
240
switch currentSearchType {
243
241
case . users:
244
- return self . searchService. searchUser ( query: query, page: currentPage, language : language ? . name )
242
+ return self . searchService. searchUser ( query: query, page: currentPage)
245
243
. map { ( lists, canLoadMore) -> Mutation in
246
244
let newPage = !canLoadMore ? currentPage : currentPage + 1
247
245
return . setMoreSearchUsers( lists, nextPage: newPage, canLoadMore: canLoadMore)
0 commit comments