Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Addition of Half Signup #128

Merged
merged 5 commits into from
Dec 26, 2024
Merged

Conversation

AyakorK
Copy link
Contributor

@AyakorK AyakorK commented Dec 20, 2024

🎩 Description

Please describe your pull request.

This PR adds the "Half Signup" feature through middleware, allowing users to create a "partial" account using their email or phone number. This ensures easier voting while verifying user identity for each voting action. Additionally, untested overrides or not matching the last versions of it, such as User model extensions and the account/show.erb view, have been added to align with Decidim's release/0.27-stable branch, incorporating "Half Signup" adjustments like phone number editing.

📌 Related Issues

🔧 How to test

💻 App Setup

  • You'll need to add multiple environment variables if you want to test that the gateway works correctly
SMS_GATEWAY_USERNAME=<provider_username>
SMS_GATEWAY_PASSWORD=<provider_password>
SMS_GATEWAY_SERVICE="Decidim::SmsGatewayService"
SMS_GATEWAY_URL=<provider_url> 

💾 Backoffice setup

  • Access to BackOffice
  • Enable HalfSignup any method you want (may be great to test both of them individually then together)
  • Go into a participatory process
  • Click on categories
  • Create some custom categories using the gem budget_category_voting (precompile deface if it's not displaying correctly)
  • Access a budgets component settings
  • Enable the option to ensure the user choose at least one project
  • Access the budgets edition (not the setting but the place where every budgets are listed onto your component)
  • Click on a budget
  • Setup your budget using budget_category_voting and select at least one project of a created category to make sure about the compatibility of budgets booth and budget_category_voting
  • Access the projects onto your budget and modify some categories or create new ones to make sure your conditions can be fullfilled

🖼️ Front Office Test

✂️ Half Signup account
  • Click to vote
  • Make sure you are redirected
  • Put a random phone number (SMS method case)
  • Put a random email (EMAIL method case)
  • Follow the given instructions
  • Access the budgets booth page
  • Select your projects
  • Leave the page by cancelling the vote
  • You must be disconnected
  • You should not be able to vote unless you selected a project of your required category
  • Confirm your vote
  • Make sure you are logged out afterwards
🇪🇸 Decidim Account
  • Log in as a decidim user
  • Click to vote
  • Make sure even if the activated that you're not redirected to the email confirmation (totally counterproductive regarding the UX)
  • Put a phone number (If sms method is enabled)
  • Verify that you are directly redirected to the budget (if sms method is disabled)
  • Access the budgets booth page
  • Select your projects
  • You should not be able to vote unless you selected a project of your required category
  • Leave the page by cancelling the vote
  • You mustn't be disconnected
  • Try to reaccess the same budget or another one
  • Make sure you are redirected to the quick_auth page before accessing again to the vote (if sms method is enabled)

Tasks

  • Add module
  • Change branch of EUF to ensure compatibility
  • Add migrations
  • Add the SMS Gateway to ensure the SMS sending
  • Update env variables
  • Update the secrets to match new env vars and addition of the Gateway
  • Fix multiple specs that were crashing due to Half Signup modifications

@AyakorK AyakorK marked this pull request as ready for review December 20, 2024 09:56
@Quentinchampenois Quentinchampenois merged commit bbf4025 into develop Dec 26, 2024
14 checks passed
@Quentinchampenois Quentinchampenois deleted the feat/add_half_signup branch December 26, 2024 09:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants