mirror of
				https://github.com/usmannasir/cyberpanel.git
				synced 2025-10-31 10:26:01 +01:00 
			
		
		
		
	bug fix: login issues
This commit is contained in:
		| @@ -312,7 +312,7 @@ | |||||||
|                                 <div class="input-group"> |                                 <div class="input-group"> | ||||||
|                                     <input ng-keypress="initiateLogin($event)" ng-model="password" type="password" |                                     <input ng-keypress="initiateLogin($event)" ng-model="password" type="password" | ||||||
|                                            class="form-control" id="password" placeholder="Password" required |                                            class="form-control" id="password" placeholder="Password" required | ||||||
|                                            name="password" style="height: 45px;"> |                                            name="password" style="height: 45px;" autocomplete="current-password"> | ||||||
|                                     <span class="input-group-addon bg-blue"> |                                     <span class="input-group-addon bg-blue"> | ||||||
|                       <i class="glyph-icon icon-unlock-alt"></i> |                       <i class="glyph-icon icon-unlock-alt"></i> | ||||||
|                     </span> |                     </span> | ||||||
| @@ -366,7 +366,7 @@ | |||||||
|                 </div> |                 </div> | ||||||
|             </form> |             </form> | ||||||
|             <div id="loginFailed" class="alert alert-danger"> |             <div id="loginFailed" class="alert alert-danger"> | ||||||
|                 <p>Could Not Login, Error message: {$ errorMessage $}</p> |                 <p>Could Not Login, Error message: <span ng-bind="errorMessage"></span></p> | ||||||
|             </div> |             </div> | ||||||
|         </div> |         </div> | ||||||
|     </div> |     </div> | ||||||
|   | |||||||
| @@ -32,46 +32,61 @@ def verifyLogin(request): | |||||||
|  |  | ||||||
|         try: |         try: | ||||||
|             if request.method == "POST": |             if request.method == "POST": | ||||||
|  |                 try: | ||||||
|                     data = json.loads(request.body) |                     data = json.loads(request.body) | ||||||
|  |                 except json.JSONDecodeError as e: | ||||||
|  |                     print(f"JSON decode error: {e}") | ||||||
|  |                     print(f"Raw request body: {request.body}") | ||||||
|  |                     data = {'userID': 0, 'loginStatus': 0, 'error_message': 'Invalid request format'} | ||||||
|  |                     json_data = json.dumps(data) | ||||||
|  |                     return HttpResponse(json_data) | ||||||
|  |  | ||||||
|                 username = data['username'] |                 username = data.get('username', '') | ||||||
|                 password = data['password'] |                 password = data.get('password', '') | ||||||
|  |  | ||||||
|  |                 # Debug logging | ||||||
|  |                 print(f"Login attempt - Username: {username}, Password length: {len(password) if password else 0}") | ||||||
|  |                 print(f"Password contains '$': {'$' in password if password else False}") | ||||||
|  |                 print(f"Raw password: {repr(password)}") | ||||||
|  |  | ||||||
|                 try: |                 try: | ||||||
|                     if data['languageSelection'] == "English": |                     language_selection = data.get('languageSelection', 'english') | ||||||
|  |                     if language_selection == "English": | ||||||
|                         user_Language = "en" |                         user_Language = "en" | ||||||
|                     elif data['languageSelection'] == "Chinese": |                     elif language_selection == "Chinese": | ||||||
|                         user_Language = "cn" |                         user_Language = "cn" | ||||||
|                     elif data['languageSelection'] == "Bulgarian": |                     elif language_selection == "Bulgarian": | ||||||
|                         user_Language = "br" |                         user_Language = "br" | ||||||
|                     elif data['languageSelection'] == "Portuguese": |                     elif language_selection == "Portuguese": | ||||||
|                         user_Language = "pt" |                         user_Language = "pt" | ||||||
|                     elif data['languageSelection'] == "Japanese": |                     elif language_selection == "Japanese": | ||||||
|                         user_Language = "ja" |                         user_Language = "ja" | ||||||
|                     elif data['languageSelection'] == "Bosnian": |                     elif language_selection == "Bosnian": | ||||||
|                         user_Language = "bs" |                         user_Language = "bs" | ||||||
|                     elif data['languageSelection'] == "Greek": |                     elif language_selection == "Greek": | ||||||
|                         user_Language = "gr" |                         user_Language = "gr" | ||||||
|                     elif data['languageSelection'] == "Russian": |                     elif language_selection == "Russian": | ||||||
|                         user_Language = "ru" |                         user_Language = "ru" | ||||||
|                     elif data['languageSelection'] == "Turkish": |                     elif language_selection == "Turkish": | ||||||
|                         user_Language = "tr" |                         user_Language = "tr" | ||||||
|                     elif data['languageSelection'] == "Spanish": |                     elif language_selection == "Spanish": | ||||||
|                         user_Language = "es" |                         user_Language = "es" | ||||||
|                     elif data['languageSelection'] == "French": |                     elif language_selection == "French": | ||||||
|                         user_Language = "fr" |                         user_Language = "fr" | ||||||
|                     elif data['languageSelection'] == "Polish": |                     elif language_selection == "Polish": | ||||||
|                         user_Language = "pl" |                         user_Language = "pl" | ||||||
|                     elif data['languageSelection'] == "Vietnamese": |                     elif language_selection == "Vietnamese": | ||||||
|                         user_Language = "vi" |                         user_Language = "vi" | ||||||
|                     elif data['languageSelection'] == "Italian": |                     elif language_selection == "Italian": | ||||||
|                         user_Language = "it" |                         user_Language = "it" | ||||||
|                     elif data['languageSelection'] == "German": |                     elif language_selection == "German": | ||||||
|                         user_Language = "de" |                         user_Language = "de" | ||||||
|                     elif data['languageSelection'] == "Indonesian": |                     elif language_selection == "Indonesian": | ||||||
|                         user_Language = "id" |                         user_Language = "id" | ||||||
|                     elif data['languageSelection'] == "Bangla": |                     elif language_selection == "Bangla": | ||||||
|                         user_Language = "bn" |                         user_Language = "bn" | ||||||
|  |                     else: | ||||||
|  |                         user_Language = 'en' | ||||||
|  |  | ||||||
|                     translation.activate(user_Language) |                     translation.activate(user_Language) | ||||||
|                     response = HttpResponse() |                     response = HttpResponse() | ||||||
| @@ -83,6 +98,7 @@ def verifyLogin(request): | |||||||
|                     response.set_cookie(settings.LANGUAGE_COOKIE_NAME, user_Language) |                     response.set_cookie(settings.LANGUAGE_COOKIE_NAME, user_Language) | ||||||
|  |  | ||||||
|             admin = Administrator.objects.get(userName=username) |             admin = Administrator.objects.get(userName=username) | ||||||
|  |             print(f"Found admin user: {admin.userName}, password hash length: {len(admin.password) if admin.password else 0}") | ||||||
|  |  | ||||||
|             if admin.state == 'SUSPENDED': |             if admin.state == 'SUSPENDED': | ||||||
|                 data = {'userID': 0, 'loginStatus': 0, 'error_message': 'Account currently suspended.'} |                 data = {'userID': 0, 'loginStatus': 0, 'error_message': 'Account currently suspended.'} | ||||||
| @@ -99,7 +115,10 @@ def verifyLogin(request): | |||||||
|                     response.write(json_data) |                     response.write(json_data) | ||||||
|                     return response |                     return response | ||||||
|  |  | ||||||
|             if hashPassword.check_password(admin.password, password): |             password_check_result = hashPassword.check_password(admin.password, password) | ||||||
|  |             print(f"Password check result: {password_check_result}") | ||||||
|  |  | ||||||
|  |             if password_check_result: | ||||||
|                 if admin.twoFA: |                 if admin.twoFA: | ||||||
|                     if request.session.get('twofa', 1) == 0: |                     if request.session.get('twofa', 1) == 0: | ||||||
|                         import pyotp |                         import pyotp | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user