View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
4916 | Composr | points | public | 2022-09-01 19:31 | 2022-09-12 19:20 |
Reporter | PDStig | Assigned To | PDStig | ||
Priority | normal | Severity | major | ||
Status | resolved | Resolution | fixed | ||
Summary | 4916: Sweeping points system changes | ||||
Description | Massively overhaul the points system. * Tighten the terminology and make it more appropriate for a robustly designed micro-economy * Add new points escrow system via 4778; members should be able to escrow points to each other as a trust / payment for some outside product or service (which includes a written agreement sent between the members). The points are held in the system until both members indicate the escrow is satisfied. Any member can dispute an escrow. And those with moderate escrow privilege can either cancel (refund the points to the sender), complete (give the points to the recipient), partially complete (give some of the points to the recipient and refund the rest to the sender), or edit the text of an escrow. * Conform the language, especially points.ini, with the new terminology and escrow * Combine the gifts and chargelog tables into one points_ledger table (be sure to modify cms_merge as well) * Ensure records in the ledger are never deleted anymore; create new records to "reverse" old records by using a status column and an AUTO_LINK column relating the two transactions * Ledger records added from content submissions should be linked to said content via a JSON encoded column so the transaction can easily and reliably be reversed when the content is removed (and reverse points is ticked). * Add single point ledger transaction screen so staff can view individual transactions, including which transaction it reverses or is being reversed by when applicable. * Rename the points privileges as applicable using our new terminology set * Remove all privileges pertaining to negative points, and never allow transacting negative points or having negative points anymore (except as a consequence of a warnings charge) * Add privilege to replace has_actual_page_access for admin_points when viewing the points ledger. * Add ability to edit the reasons in points ledger if member has privilege * Add privileges for reversing or editing points transactions (separate privilege each) * Reversing or editing transactions should be able to be done on member points profile, not just points ledger, so add an actions column when the viewing member has privilege * When sending or escrowing points, and gift points are enabled, system should prioritise the gift points balance, and if there are not enough gift points, the rest should be sent from the member's regular points. * Add confirmation screens when about to perform point transactions to ensure member knows exactly what is about to happen, including how many points in a transaction will be sent as gift points. Add a current timestamp to indicate "accurate as of (date/time)" in case their balance changes before proceeding. * Overhaul point transaction notifications to include notifications for all types of point transactions (sending, receiving, debiting, crediting, and refunding), not just for receiving points. Language strings should be constructed as appropriate. * Ensure members can view their own anonymous transactions (but not who sent the points), which was not the case before. | ||||
Tags | Roadmap: v11 | ||||
Attach Tags | |||||
Time estimation (hours) | |||||
Sponsorship open | |||||
Date Modified | Username | Field | Change |
---|---|---|---|
2022-09-01 19:31 | PDStig | New Issue | |
2022-09-01 19:31 | PDStig | Assigned To | => user4172 |
2022-09-01 19:31 | PDStig | Status | Not Assigned => Assigned |
2022-09-01 19:31 | PDStig | Tag Attached: Roadmap: v11 | |
2022-09-02 20:54 | PDStig | Description Updated | |
2022-09-02 20:54 | PDStig | Relationship added | related to 4778 |
2022-09-03 20:30 | Chris Graham | Summary | Changelog of points system changes => Sweeping points system changes |
2022-09-12 19:20 | PDStig | Status | Assigned => Resolved |
2022-09-12 19:20 | PDStig | Resolution | open => fixed |