Difference between revisions of "Membermatters"

From Sudo Room
Jump to navigation Jump to search
Line 105: Line 105:
# ''get access card process needs work''
# ''get access card process needs work''
# ''members can see each others activities on member matters''
# ''members can see each others activities on member matters''
# ''need to edit dashboard, landing page''
# ''need to edit dashboard, landing page'' - Where do we want the post signup page to go to?
# ''update welcome and alert emails''
# ''update welcome and alert emails''

Revision as of 22:26, 7 February 2026

this is the notes for the membermatters installation

https://backers.sudoroom.org

to create a new user

to check the logs from the docker instance

github

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

Making a dev environment

(this assumes you already have git installed and docker setup!)

  1. `cd` to a directory you want to put the repo
  2. `git clone https://github.com/sudoroom/MemberMatters.git`
  3. `git checkout -b branch-name` to make a new branch based of the default (sudoroom)
  4. `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)
  5. '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
  6. `cd ./docker`
  7. `docker pull` (this make take a while)
  8. `docker compose up -d` to start your docker image
  9. `docker ps` will list your running containers processes that are created by the docker yaml file
  10. `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)

`==== where I got to/next steps ====

  1. 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
  2. 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

  1. Hang Out, attend an event, join lists, discord
  2. I Like this! - Fill out the Intent to Join Form!!!
  3. Attend the next meeting, and get endorsements
  4. Get a mentor!!

Setup payment on Member Matters

  1. Create an account, verify via email
  2. I'm on Sudo Humans, what do I do?
  3. I use PayPal, or checks, or Bitcoin. What do I do?

Get door access

  1. Get an email?
  2. How many door access systems will we have?

Need to Setup, Immediate Actions

  1. Set up membership tiers
  2. Set up payment plans

Pain points: We need to fix these issues ... later

  1. need to check for verification email from member matters
  2. free accounts need billing info
  3. get access card process needs work
  4. members can see each others activities on member matters
  5. need to edit dashboard, landing page - Where do we want the post signup page to go to?
  6. update welcome and alert emails