Investigate Custom Devise Mailer
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 35/100
- Type d'issue
- Refactorisation
- Clarté
- Plutôt claire
- Activité
- À l'abandon
- Domaine
- authentication, backend
Piste de recherche
Commencez par app/mailers/custom_devise_mailer.rb et spec/mailers/custom_devise_mailer_spec.rb, puis examinez les commits historiques et les pull requests associés afin de retracer le comportement des invitations. Vérifiez chaque critère de réalisation, confirmez les vérifications pertinentes de l’expéditeur et du rôle, et exécutez la spec du mailer ; le travail est terminé lorsque la logique est justifiée et que toute modification nécessaire est couverte par des tests.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Summary
So we have a custom devise mailer that seems to be responsible for setting the subject line for Partner invitations.. Tests for reference
The code looks something like this:
if resource.has_role?(Role::PARTNER, :any) && resource.id == resource.partner.primary_user&.id
# do something
elsif resource.has_role?(Role::PARTNER, :any) && resource.id != resource.partner.primary_user&.id
# do something else
This code (I think at least) sends one message if the user being invited is the primary user for the Partner and another if they are not.
Criteria for Completion
Figure out if this code is correct:
- Does it make sense to check for
resource.has_role?(Role::PARTNER, :any)as opposed to a specific partner - does it make sense for these invitations to get sent from a Partner vs a Org?
- Do they even get sent from a Partner and not an Org?
- If we change the code to check for a specific partner will there be any issues?
- If it seems reasonable and necessary make the change 🙂
Historical context:
The mailer was originally added here: https://github.com/rubyforgood/human-essentials/commit/ff961af7f5051ec6e05dd9cdd4d055b5e650431d. It simply changed the invite message for inviting Partners instead of Orgs.
if resource.is_a?(PartnerUser)
"You've been invited to be a partner with #{resource.partner.organization.name}"
https://github.com/rubyforgood/human-essentials/pull/2232 allowed Partners to invite coworkers by checking that the inviter was the primary user for that Partner:
if resource.is_a?(PartnerUser) && resource.id != resource.partner.primary_user&.id
"You've been invited to #{resource.partner.name}'s partnerbase account"
https://github.com/rubyforgood/human-essentials/pull/3050 got rid of PartnerUsers and instead used partner_id
if resource.try(:partner_id) && resource.id == resource.partner.primary_user&.id
"You've been invited to be a partner with #{resource.partner.organization.name}"
https://github.com/rubyforgood/human-essentials/pull/3117 finally when roles got added we started checking by role instead of partner_id
if resource.has_role?(Role::PARTNER, :any) && resource.id == resource.partner.primary_user&.id
"You've been invited to be a partner with #{resource.partner.organization.name}"
- Langage dominant
- Ruby
- Étoiles
- 594
- Forks
- 596
- Merge moyen
- 1 j 17 h
- PR mergées (30 j)
- 12
Préparer son environnement
Lance le conteneur de développement du projet dans votre navigateur, avec votre propre compte GitHub.
- Aucun Dockerfile ni fichier Docker Compose
- Propose un modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de rubyforgood/human-essentials
-
Export button on annual report should revert to "Export Report" from "Please Wait..." once report generated.Peut-être pris @costajohnt l’a pris il y a 17 jours. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 74/100
rubyforgood/human-essentials#5691 · 1 commentaire · 1 personne assignée ·
Les mainteneurs répondent en général sous 1 jour
-
stale
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
rubyforgood/human-essentials#5603 · 8 commentaires · 1 personne assignée ·
Les mainteneurs répondent en général sous 1 jour
-
Proposal: forecast-based reorder points and shortage allocation ("Replenishment Planner")Peut-être pris @arnavt687 l’a pris il y a 20 jours. Ouverte
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 25/100
rubyforgood/human-essentials#5728 · 3 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
Ruby for Good 2026 DC stale
rubyforgood/human-essentials#5694 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
Add optional phone number to users (esp Partner Users)Peut-être pris @costajohnt l’a pris il y a 22 jours. OuverteDifficulty—Intermediate Ruby for Good 2026 DC
Difficulté 3/5 1-2 jours Accessibilité débutants 68/100
rubyforgood/human-essentials#5687 ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de rubyforgood/human-essentials
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
Les mainteneurs répondent en général sous 8 jours
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
Les mainteneurs répondent en général sous 1 jour
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
drwl/annotaterb#406 ·
Les mainteneurs répondent en général sous 2 jours
-
bug: "Conversation information" accordion renders blank with 0px height when conversation has no attributesPeut-être pris @gihovani l’a pris aujourd’hui. Ouverte
Difficulté 1/5 Moins d'une heure Accessibilité débutants 88/100
Les mainteneurs répondent en général sous 2 jours
-
`hanami generate repository` would be a nice alias for `hanami generate repo`Peut-être pris @sandbergja l’a pris aujourd’hui. Ouvertebug help wanted
Difficulté 2/5 1-3 heures Accessibilité débutants 74/100
hanami/hanami-cli#455 ·