Open sagesharp opened 5 years ago
Looking into this...
Thank you for implementing the "Send organizers an email when a new community is submitted" part of this issue! Re-opening to keep track of the "Distinguish between communities that have participated in the past and ones that haven't completed the sign up process on the community CFP page" part.
There's a two-step process for new communities to sign up to participate in Outreachy. First, they have to fill out information about their community, such as governance structure and whether their project benefits or builds upon proprietary software. Second, they have to fill out a form about who will be sponsoring their community in this round.
Communities often start the sign-up process, but stop when they discover they need to provide internship funding. Sometimes that's because they need to check with their sponsors, and sometimes it's because they didn't realize that all communities are required to have funding for at least one intern. It would be good for Outreachy organizers to follow up with those communities that stop before they submit their sponsorship information.
The problem is that organizers only get an email when the coordinator submits the form with the sponsorship information (
class ParticipationAction
in/home/views.py
). We don't get an email if the coordinator abandons the form without submitting sponsorship information. We can't even easily notice this issue, because the community just ends up in the list of 'past participating communities' on the community CFP page. Some of those communities are ones that participated in Outreachy before we made the new website, and some are abandoned community signups.The following new features would make new community signups more visible to Outreachy organizers:
For the email, you'll need to add a new email template. You can make a similar one to what's in
home/templates/home/email/participation-pending.txt
. You'll need to make a new function that uses that template to send email. You can make a function similar toproject_nonfree_warning
inhome/email.py
. That uses the organizer email as the recipient of the email. Then call that function when a new community form is submitted inform_valid
inclass CommunityCreate
inhome/views.py
When a community is one that has participated in a past Outreachy round, there will be a
class Community
object without an associatedclass NewCommunity
object. So we know the communities that have signed up since we started using the website has a NewCommunity object. Communities that abandoned their signup don't have a participation object. The following two lines of Python will find communities that abandoned their signups:We can use this code to modify how
home/templates/home/community_cfp.html
displays past communities. We should pass in a new variable into the templatesincomplete_community_signups
with the list of communities that match that look up. Thenot_participating_communities
should exclude any communities that are in theincomplete_community_signups
list.You'll need to create a new section in that template to display communities with incomplete signups. It should be above the
{% if pending_communities %}
line in the template. Perhaps the section should say something like "The community coordinator for these communities started signing up to participate, but they have not filled out sponsorship information:".