Difference between revisions of "Membermatters"
(→TODO) |
(→TODO) |
||
| Line 111: | Line 111: | ||
# '' Contact Info (Constance Config) - some of that is still membermatters / defaults (notably the email!) | # '' Contact Info (Constance Config) - some of that is still membermatters / defaults (notably the email!) | ||
# '' Post-Signup page: Where do we have them go afterwards? | # '' Post-Signup page: Where do we have them go afterwards? | ||
# '' Landing Page Cards (Request an Issue, some default template cards | # '' Landing Page Cards (Request an Issue, some default template cards) - Should we add a paypal link for one time donations? | ||
# '' Where's the place to change the Membership Plan Tier? Martin tried to do this and didn't find an easy way to do it | # '' Where's the place to change the Membership Plan Tier? Martin tried to do this and didn't find an easy way to do it | ||
Revision as of 23:08, 7 February 2026
this is the notes for the membermatters installation
to create a new user
to check the logs from the docker instance
github
- the changes juul made to add sendmail as an option
- the changes rechner and jake made to build our docker for postgres
- we are using the sudoroom branch in our docker
- we also need to edit frontend/src/i18n/en-AU/index.ts to change "mobile number" to "Phone Number (or X)" (it builds to /usr/src/app/frontend/dist/spa/assets/index.*.js )
- we are working on mounting the docker image with git on the server, so we can make changes to production and try them
- we should set up a schedule for rebasing in changes from upstream, then shoving our changes back on top. then we can deploy to docker directly from our github fork
we are not spam
- emails sent by this system for people to validate their account, or reset their password, are important
- emails are being accepted by gmail (for now) but not by some other platforms, and maybe not for some gmail users?
- we should look for ways to find out why the emails are rejected by some servers
- we probably need to format the emails with plaintext and MIME to make them look normal to spam checkers
- Our server is postfix based, but yeah, postfix has very good logging on exactly what happens to each message. Though you as the sender can't know if it went into spam, only if it got outright rejected.
- emails to an MIT address were rejected by Microsoft: "Access denied, banned sending IP [198.199.116.180]. To request removal from this list please visit https://sender.office.com/ and follow the directions" and then Sean followed the directions and asked them to unblock our IP address
- we need to setup monitoring of emails that were outright rejected, and take action each time. Dealing with emails marked as spam will be more challenging unless people have access to the spam filter information on their receiving end.
- we need to encourage more and people to sign up to the new system as we make progress, AFTER setting up rejection monitoring
certbot
- juul used pipx to install, and then had to manually make a systemd job to check it twice a day
Help us build and test
- prioritized bugs: https://github.com/orgs/sudoroom/projects/1/views/1
- submit a bug: https://github.com/sudoroom/MemberMatters/issues
Making a dev environment
(this assumes you already have git installed and docker setup!)
- `cd` to a directory you want to put the repo
- `git clone https://github.com/sudoroom/MemberMatters.git`
- `git checkout -b branch-name` to make a new branch based of the default (sudoroom)
- `touch /usr/app/django.log` (this is where the logs will go, and not creating it as a file seemed to create it as a dir which docker hated)
- 'echo "MM_ENV=Development" > ./docker/.env` - I am not sure if this needs to go into the docker directory, or just exist? .env files are .gitignored anyway, but it looks like this is used by docker to set some environment vars in the docker-compose.yml
- `cd ./docker`
- `docker pull` (this make take a while)
- `docker compose up -d` to start your docker image
- `docker ps` will list your running containers processes that are created by the docker yaml file
- `docker stop $(docker ps -q)` will stop all the containers by doing `docker stop` on all of the running containers (the -q flag lists by ID)
Some in-progress notetaking
- doing all that, and then going to localhost:8000 takes me to the BMS login page instead of sudoroom's. possibly, since on my setup i ran `docker pull membermatters/membermatters` initially before following the rest of those setups, that is what broke it - i would think that the config files (the database?) would supercede that
- there is also a dev.env file at the top of the repo that might be worth checking out. possible you could `docker run --env_file /path/to/dev.env` and it would use that env instead of the one in the docker-compose.yml ? I don't know if there is a `docker compose` equivalent, need to keep poking at that
some updates: RechnerFox made a github action to update prod from a staging instance after that was added by jake 2026-01-28: Martin and Nicholas did some work hacking on the vps to backup, delete, and recreate the database so we could start from scratch. This required doing a pg_dump of the existing db, and then entering the postgres docker container with exec, using pgsl -U membermatters. Then we renamed the existing database, and then went back to the [https://membermatters.org/en/latest/GETTING_STARTED.html getting started page of the mm docs and picking up after the "docker start" commands to load the initial data to the database.
Then Martin added himself and Judy, both times it threw errors because the email wasn't setup. MM says you need postmark, but in our fork we have code to get around that, but requires the postmark api key to be blank and the email default to be changed. 2026-01-30: Jake did those two fixes and confirmed he got a password reset email! 2026-02-05: Martin double confirmed email setup by sending a welcome email to himself and started trying to configure the logos, which he got from looking at the old mm email when it was setup and seeing what url was embedded in that email.
Django logs are doing a bunch of Warnings about not finding various /api stuff? Logo changes aren't loading to the page :( Looks like it is attempting to load but no dice. Confirmed a matching format (png) and square size within favicon specs when linking to one from the wiki's logo page, and then linked to the old one but neither seem to be taking. --- Possible this is still due to all the Not Found /api stuff
Nicholas suggested that was just some scrapers or bots hitting the page, tested with him trying to load /api/nicksun
Currently ( 2026-02-07 )
Martin added two payment plans and tested one and put in his card and it worked! Got an email and got to next steps
Membership Plan Setup
Adding a Membership Payment Plan
Left Side Bar > Admin Tools > Membership Plan > Plus Icon, make sure you click the checkbox for 'visible to members'
Adding a new tier to the existing payment plans
Click the plan you made, click _that_ plus icon Popup window shows up, Name your plan, CHANGE THE CURRENCY TO USD, and then add the amount Notes: Make sure you also click the checkbox for 'visible to members' - if you don't do this, you have to go to the django page to set it (ie its not changeable by in the front end)
MEMBERSHIP PROCESS- DISCUSSION
ivan & anca working on this
martin and ivan talked a bit about this 2026-01-06:
- subscription statuses can be: active (currently paying) / inactive (not paying)
- member status can be: active (currently a member) / inactive (not a member, but possibly still paying as a dono or something) / new (unsure, maybe we use this as 'signed up, but still pending endorsements/waiting period? what's the order of operations?) / or account only (signed up but not paying/no payment info in MM)
I want to become a member!! Onboarding Steps
- Hang Out, attend an event, join lists, discord
- I Like this! - Fill out the Intent to Join Form!!!
- Attend the next meeting, and get endorsements
- Get a mentor!!
Setup payment on Member Matters
- Create an account, verify via email
- I'm on Sudo Humans, what do I do?
- I use PayPal, or checks, or Bitcoin. What do I do?
Get door access
- Get an email?
- How many door access systems will we have?
Need to Setup, Immediate Actions
- Set up membership tiers
- Set up payment plans
Pain points: We need to fix these issues ... later
- need to check for verification email from member matters
- free accounts need billing info
- get access card process needs work
- members can see each others activities on member matters
- need to edit dashboard, landing page - Where do we want the post signup page to go to?
- update welcome and alert emails
TODO
- Contact Info (Constance Config) - some of that is still membermatters / defaults (notably the email!)
- Post-Signup page: Where do we have them go afterwards?
- Landing Page Cards (Request an Issue, some default template cards) - Should we add a paypal link for one time donations?
- Where's the place to change the Membership Plan Tier? Martin tried to do this and didn't find an easy way to do it