Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in / Register
  • funkwhale funkwhale
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 379
    • Issues 379
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
    • Requirements
  • Merge requests 20
    • Merge requests 20
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
    • Test Cases
  • Deployments
    • Deployments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Container Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Code review
    • Insights
    • Issue
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • funkwhalefunkwhale
  • funkwhalefunkwhale
  • Merge requests
  • !900

Resolve "Add optional donation/contribution link in-app"

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Agate requested to merge 839-donation-links into develop Sep 20, 2019
  • Overview 3
  • Commits 6
  • Pipelines 3
  • Changes 17

Closes #839 (closed)

So, this adds two separate messages:

  1. One message to support Funkwhale (the project)
  2. One message to support the pod where the user is logged in

Message 1. can be disabled entirely via a setting, and message 2. is disabled unless an admin fill in the corresponding field in the settings. The pod message supports markdown, so it's rather flexible.

Both messages are displayed in the notification tab for the first time 15 days after a user signed up. The notifications count in the sidebar will reflect that. When displayed, the messages offer to schedule a reminder in 30, 60 or 90 days, but can also be disabled completely. I'm not really sure about the wording, so any feedback is welcome!

It seemed appropriate to use the notification tab, because adding a popup or message somewhere else in the frontend would be a bit off, and likely to affect user experience negatively (users would simply want to get rid of the message as fast as possible). It's more discrete this way, but I also think it will yield better results. It's also way easier to design, because we have less constraints in the notifications page than in the sidebar.

At the backend level, I've simply added two new columns on the user table:

  • funkwhale_support_message_display_date
  • instance_support_message_display_date

Both columns store a date (or null value). When the date is lower than now() the message is displayed to the client. To schedule a reminder, you set a date in the future, and to hide it, you set it to null.

cc @funkwhale/reviewers-front @funkwhale/reviewers-python

Demonstration

Peek_2019-09-20_14-20

Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: 839-donation-links