Skip to content

Create a login page that redirects to the browser: #1237#1336

Open
Shafaatul-Islam wants to merge 36 commits into
masterfrom
feature/1237-login-page-that-redirects-to-the-browser
Open

Create a login page that redirects to the browser: #1237#1336
Shafaatul-Islam wants to merge 36 commits into
masterfrom
feature/1237-login-page-that-redirects-to-the-browser

Conversation

@Shafaatul-Islam
Copy link
Copy Markdown
Contributor

@Shafaatul-Islam Shafaatul-Islam commented Feb 27, 2026

⁉️ Related Issue

closes: #1237

📖 Description

Created a new page with a login button and FAQ button. At startup, it will redirect to this new page instead of sending the user to the authentication page.

🧪 How Has This Been Tested?

-Flutter analyze
-All unit tests
-On-device tests

☑️ Checklist before requesting a review

  • I have performed a self-review of my code.
  • If it is a core feature, I have added thorough tests.
  • If needed, I added analytics.
  • Make sure to add either one of the following labels: version: Major,version: Minor or version: Patch.

🖼️ Screenshots (if useful):

image

@Shafaatul-Islam Shafaatul-Islam changed the title sgokuswag@gmail.com Pull request - Create a login page that redirects to the browser #1237 Feb 27, 2026
@Shafaatul-Islam Shafaatul-Islam changed the title Pull request - Create a login page that redirects to the browser #1237 Create a login page that redirects to the browser: #1237 Feb 27, 2026
Copy link
Copy Markdown
Member

@LouisPhilippeHeon LouisPhilippeHeon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Comments in bulk:

  • Buttons should have icons
  • We should add ÉTS's logo on top of the screen (instead of AppETS)
  • Login button should be bigger and styled differently
  • We should make a gradient for the background color
  • The loading indicator should be directly on the login button

@Shafaatul-Islam
Copy link
Copy Markdown
Contributor Author

image

Comment thread lib/ui/login/view_model/login_viewmodel.dart Outdated
Comment thread linux/flutter/generated_plugin_registrant.cc Outdated
Comment thread macos/Flutter/ephemeral/Flutter-Generated.xcconfig Outdated
Comment thread test/ui/login/view_model/login_viewmodel_test.dart
Comment thread lib/domain/constants/router_paths.dart Outdated
Comment thread lib/ui/login/widgets/login_view.dart Outdated
Comment thread lib/ui/login/view_model/login_viewmodel.dart Outdated
…agement in login_view + use of the exception pattern in login_viewmodel
Comment thread lib/ui/login/view_model/login_viewmodel.dart Outdated
@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud Bot commented May 5, 2026

@sonarqubecloud
Copy link
Copy Markdown

@github-actions
Copy link
Copy Markdown

Coverage after merging feature/1237-login-page-that-redirects-to-the-browser into master will be

78.25%

Coverage Report
FileStmtsBranchesFuncsLinesUncovered Lines
lib
   locator.dart3.57%100%100%3.57%33, 35–45, 47–49, 52–60, 63–65
lib/data/models
   broadcast_message.dart0%100%100%0%14
   quick_link.dart100%100%100%100%
   quick_link_data.dart100%100%100%100%
   dynamic_message.dart100%100%100%100%
   dynamic_message_context.dart100%100%100%100%
   event_data.dart100%100%100%100%
   quick_links.dart100%100%100%100%
   navigation_menu_callback.dart100%100%100%100%
   emergency_procedures.dart100%100%100%100%
   emergency_procedure.dart100%100%100%100%
   session_reminder.dart100%100%100%100%
lib/data/models/hello
   organizer.dart100%100%100%100%
   paginated_news.dart30.43%100%100%30.43%36–41, 44, 47–53, 55, 57
   activity_area.dart56.52%100%100%56.52%37, 40–46, 48–49
   news.dart50.91%100%100%50.91%100–101, 103, 105–116, 88–99
   news_tags.dart5%100%100%5%13–17, 20–24, 27, 30–35, 37–38
   report.dart25%100%100%25%12–13, 15
   report_news.dart100%100%100%100%
lib/data/repositories
   author_repository.dart0%100%100%0%13–14
   broadcast_message_repository.dart0%100%100%0%13–16, 19–25
   course_repository.dart83.26%100%100%83.26%115–117, 119, 135–136, 188, 190, 195–197, 201, 204, 207–211, 213–214, 218, 220, 223–227, 231, 235–236, 238, 241, 293, 300, 302, 449, 459–460, 87
   list_sessions_repository.dart100%100%100%100%
   news_repository.dart0%100%100%0%16–17
   quick_link_repository.dart83.33%100%100%83.33%34–35
   settings_repository.dart100%100%100%100%
   user_repository.dart95.24%100%100%95.24%139–140
   base_stream_repository.dart100%100%100%100%
lib/data/services
   calendar_service.dart0%100%100%0%103, 107, 109–114, 116, 119–120, 125–126, 129, 132, 134, 141–142, 145, 147, 15, 152, 156–157, 16, 161–166, 170, 172, 18, 20, 22, 24, 26, 40, 42–46, 49, 53–56, 64, 68–69, 72–73, 76, 82, 84–85, 88, 92–93, 97–99
   analytics_service.dart0%100%100%0%14, 17–19, 22, 27–29, 33–34, 36, 39
   auth_service.dart0%100%100%0%101, 103, 105, 107, 109–110, 112–113, 118–119, 122, 124–126, 128–129, 20, 23–24, 26, 28–30, 33, 36, 39, 43, 45, 48–49, 55–56, 61–62, 67, 69–70, 74–76, 78–79, 84, 86–89, 91–92, 94–95
   cache_service.dart0%100%100%0%32–33, 36–37, 40, 44, 46–48, 54, 56–58, 63, 65–67
   dynamic_messages_service.dart100%100%100%100%
   in_app_review_service.dart0%100%100%0%16, 20, 23–24
   launch_url_service.dart0%100%100%0%11–14, 16, 20–23, 25, 29–32, 34
   navigation_service.dart0%100%100%0%20, 23–24, 26–27, 34–35, 38–39, 42–43, 45, 50, 55, 57–58, 61–62, 64, 66
   remote_config_service.dart0%100%100%0%102–104, 107–109, 112–114, 117–119, 122–124, 127–129, 132–134, 137–139, 142–144, 147–149, 152–153, 155–158, 162–165, 57–59, 62–64, 67–69, 72–74, 77–79, 82–84, 87–89, 92–94, 97–99
   networking_service.dart0%100%100%0%10, 12–14, 17–19
   preferences_service.dart94.44%100%100%94.44%84–85
   schedule_service.dart100%100%100%100%
   signets_client.g.dart87.88%100%100%87.88%51, 54, 65, 84
lib/data/services/hello
   hello_service.dart100%100%100%100%
lib/data/services/hello/commands
   get_events_command.dart68.18%100%100%68.18%50, 55, 58, 61, 64, 67, 70
   get_organizer_command.dart90%100%100%90%26
   report_news_command.dart90%100%100%90%27
lib/data/services/signets-api
   signets_api_client.dart72.92%100%100%72.92%152–154, 48–49, 51–55, 57–58, 61
   request_builder_service.dart89.47%100%100%89.47%56, 59
lib/data/services/signets-api/commands
   get_course_reviews_command.dart100%100%100%100%
   get_course_summary_command.dart100%100%100%100%
   get_courses_activities_command.dart100%100%100%100%
   get_courses_command.dart100%100%100%100%
   get_programs_command.dart100%100%100%100%
   get_replaced_days_command.dart0%100%100%0%22, 24, 26–28, 30, 34
   get_schedule_activities_command.dart100%100%100%100%
   get_sessions_command.dart100%100%100%100%
   get_student_info_command.dart100%100%100%100%
lib/data/services/signets-api/models
   course.dart84%100%100%84%105, 121, 123–132
   course_activity.dart84.31%100%100%84.31%104, 106–112
   replaced_day.dart57.69%100%100%57.69%18–21, 37, 39–42, 54–55
   schedule_activity.dart81.08%100%100%81.08%77, 79–84
   session.dart69.89%100%100%69.89%144, 146–158, 160, 162–174
   profile_student.dart93.10%100%100%93.10%67–68
   program.dart100%100%100%100%
   course_review.dart51.92%100%100%51.92%100–104, 51–58, 71, 73–80, 96, 98–99
   course_summary.dart85.07%100%100%85.07%101, 103–111
   course_evaluation.dart68.63%100%100%68.63%157, 159–172, 174, 176–190, 49
lib/domain/models
   session_progress.dart100%100%100%100%
lib/domain/models/signets-api
   session.dart100%100%100%100%
   session.g.dart100%100%100%100%
   signets_api_response.dart58.33%100%100%58.33%16, 18, 25–27
lib/logic
   session_progress_use_case.dart77.27%100%100%77.27%19–20, 38, 43–44
lib/ui/choose_language/view_model
   choose_language_viewmodel.dart100%100%100%100%
lib/ui/choose_language/widgets
   choose_language_view.dart94.29%100%100%94.29%35–36
lib/ui/core/themes
   app_palette.dart100%100%100%100%
   app_colors_extension.dart1.49%100%100%1.49%102–132, 136, 138, 140, 144–174, 69
   app_theme.dart7.87%100%100%7.87%122–123, 125–127, 129–130, 132, 134–135, 14, 141, 147–148, 151, 154–159, 16, 160–162, 164–167, 169, 17, 170–172, 174–175, 177, 18, 181, 183, 190–191, 209, 21, 210, 22, 24–26, 28,

@BorealApple0939 BorealApple0939 self-requested a review May 13, 2026 14:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Create a login page that redirects to the browser

2 participants