@@ -330,13 +330,20 @@ class LoginPageLogic extends GetxController {
330330 return ;
331331 }
332332
333- String ? username = await webview.evaluateJavaScript ('''
333+ String ? rawUsername = await webview.evaluateJavaScript ('''
334334 document.querySelector('.home > b > a')?.innerText ?? ""
335335 ''' );
336- if (isEmptyOrNull (username ) || username == 'null' ) {
336+ if (isEmptyOrNull (rawUsername ) || rawUsername == 'null' ) {
337337 return ;
338338 }
339339
340+ String username;
341+ try {
342+ username = jsonDecode (rawUsername! );
343+ } catch (e) {
344+ username = rawUsername! ;
345+ }
346+
340347 await ehRequest.storeEHCookies ([
341348 Cookie ('ipb_member_id' , state.ipbMemberId! ),
342349 Cookie ('ipb_pass_hash' , state.ipbPassHash! ),
@@ -348,7 +355,7 @@ class LoginPageLogic extends GetxController {
348355 ehSetting.site.value = 'EX' ;
349356 }
350357 await userSetting.saveUserInfo (
351- userName: jsonDecode ( username! ) ,
358+ userName: username,
352359 ipbMemberId: int .parse (state.ipbMemberId! ),
353360 ipbPassHash: state.ipbPassHash! ,
354361 );
@@ -385,20 +392,26 @@ class LoginPageLogic extends GetxController {
385392 return ;
386393 }
387394
388- String ? username = await controller.runJavaScriptReturningResult ('''
395+ String ? rawUsername = await controller.runJavaScriptReturningResult ('''
389396 document.querySelector('.home > b > a')?.innerText ?? ""
390397 ''' ) as String ? ;
391- log.info (username ?? '' );
392- if (isEmptyOrNull (username) || username == 'null' ) {
398+ if (isEmptyOrNull (rawUsername) || rawUsername == 'null' ) {
393399 return ;
394400 }
395401
402+ String username;
403+ try {
404+ username = jsonDecode (rawUsername! );
405+ } catch (e) {
406+ username = rawUsername! ;
407+ }
408+
396409 await ehRequest.storeEHCookies (cookies);
397410 if (useExSite) {
398411 ehSetting.site.value = 'EX' ;
399412 }
400413 await userSetting.saveUserInfo (
401- userName: jsonDecode ( username! ) ,
414+ userName: username,
402415 ipbMemberId: int .parse (state.ipbMemberId! ),
403416 ipbPassHash: state.ipbPassHash! ,
404417 );
0 commit comments