Commit Graph

79 Commits

Author SHA1 Message Date
Daniel Ternyak 7f065b4163
setup 'FUNDING BY ZOMG' 2021-02-01 19:32:12 -06:00
Daniel Ternyak 5a15022987
ZF Grants 2.1 (#496)
* fix ccr pagination defaults

* add ccr admin tests

* add ccr user tests

* checkpoint

* fix tslint

* request changes discussion flow mvp

* admin - add discussion status

* backend - add live drafts

* admin - add live drafts

* frontend - add live drafts

* frontend - add edit discussion proposal

* fix tsc

* include DISCUSSION status in propsal listview

* do not make live draft on admin request changes

* hide live drafts from user proposal draft list

* fix backend tests

* add admin tests

* add user tests

* fix: liking, viewing discussion proposals, admin menu

* admin - update hints for live drafts

* fe - add better messaging when updating a proposal

* be - fix like test

* remove TODO comments

* add new email types

* fix storybook

* add revision tab story

* backend - implement proposal revisions

* frontend - implement proposal revisions

* update revision tab story

* fix lint

* remove set detection

* email proposal followers on revision

* restrict banner to team members only

* misc bug fixes

* update, add backend tests

* add milestone title change to revision history story

* fix milestones display in preview

* allow archived proposals to be queried

* implement archived proposal page

* fix tsc

* implement archived proposal get route

* move styling into less

* remove proposal archive parent id

* handle archived proposal status

* cleanup

* remove contributions, switch to USD, implement quarters

* use Qs to preserve formatting

* handle edit only kyc

* prevent ARCHIVED proposals from being sent to admin

* display latest revision first

* admin - proposal & ccr reject permanently

* backend - proposal & ccr reject permanently

* frontend - proposal & ccr reject permanently

* fix tsc

* use $ in milestone payout email

* introduce custom filters to proposal listview

* hide archive link on first revision

* upgrade packages

* add bech32 implementation

* add z address validation with tests

* fix tslint

* use local address validation

* fix tests, remove blockchain mock gets

* add additional bad addresses

* update briefs to include page break message

* remove contributions routes, menu entry

* disable countribution count admin stats

* remove matching and pretty print in finance

* fix tslint

* separate out rejected permanently proposals

* make removing proposals generic

* allow linked tabs to be ignored

* remove rejected permanently, bugfix

* update preview link to point to rejected tab

* implement rejected permanently tab, add tab message

* refactor variable

* fix tslint

* fix tslint

* send ccr reject permanently email on rejection

* fix preview message

* wire up proposal arbiter and rejected emails

* disable tip jar in proposal and profile

* sync ccr/proposal drafts on create form init

* check invites on submit modal open

* update team invite language

* update team text when edit

* fix ccr rejected permanently tag

* text changes, email preview fix

* display changes requested tag when in discussion with changes requested

* enable social share on open for discussion proposals, update language

* place sort below filter

* derive filter from query string

* use better filter names in query params

* fix tslint

* create snapshot of original proposal on first revision

* clear invites between edits, account for additional changes not tracked in revisions

* update tests

* fix test

* remove print

* SameSite Fixes (#150)

* QA Fixes 2 (#151)

* set filters as query strings on change

* remove rejected permanently tags

* add dollar sign in financials legend

* fix tsc

* Copy Touchups (#152)

* Email Fixes (#155)

* fix ZEC in milestone payout emails

* fix links in rejected permanently CCR/proposal emails

* Poll for Team and Invite Changes in Create Flow (#153)

* poll for team and invite changes in create flow

* fix tslint

Co-authored-by: Daniel Ternyak <dternyak@gmail.com>

* pretty print payouts by quarter (#156)

Co-authored-by: Daniel Ternyak <dternyak@gmail.com>

* Remove Blockchain Module (#154)

* remove blockchain route from backend, remove calls to node

* revert blockchain_get removal

* Add Tags to Proposal Cards (#157)

* add tag to proposals and dynamically set v1 card height

* listen on window resize

* make card height props optional

* set tag in bottom right, remove dynamic card resize, add dynamic tag resize

* cleanup

* cleanup

Co-authored-by: Daniel Ternyak <dternyak@gmail.com>

* Improve Frontend Address Validation (#158)

Co-authored-by: Daniel Ternyak <dternyak@gmail.com>

* Remove blockchain module (#162)

* remove blockchain route from backend, remove calls to node

* revert blockchain_get removal

* Remove Blockchain App (#160)

* remove blockchain app

* remove blockchain app from travis

Co-authored-by: Danny Skubak <skubakdj@gmail.com>

* Proposal Edit Fixes (#161)

* fe - display error if edit creation fails

* be - restrict live draft publish

Co-authored-by: Daniel Ternyak <dternyak@gmail.com>

* Restrict Arbiter Assignment (#159)

Co-authored-by: Daniel Ternyak <dternyak@gmail.com>

* Email Copy updates

* Remove Admin Financials Card

* Hookup 'proposal_approved_without_funding' to admin email example

* bump various package versions

* Update yarn.lock files

* Attach 'proposal_approved_without_funding' to backend example email

* bump package versions

Co-authored-by: Danny Skubak <skubakdj@gmail.com>
2020-04-07 21:56:32 -05:00
Daniel Ternyak 3311be8e98
CCRs (#86)
* CCRs API / Models boilerplate

* start on frontend

* backendy things

* Create CCR redux module, integrate API endpoints, create types

* Fix/Cleanup API

* Wire up CreateRequestDraftList

* bounty->target

* Add 'Create Request Flow' MVP

* cleanup

* Tweak filenames

* Simplify migrations

* fix migrations

* CCR Staking MVP

* tslint

* Get Pending Requests into Profile

* Remove staking requirement

* more staking related removals

* MVP Admin integration

* Make RFP when CCR is accepted

* Add pagination to CCRs in Admin
Improve styles for Proposals

* Hookup notifications
Adjust copy

* Simplify ccr->rfp relationship
Add admin approval email
Fixup copy

* Show Message on RFP Detail
Make Header CTAs change based on draft status
Adjust proposal card style

* Bugfix: Show header for non signed in users

* Add 'create a request' to intro

* Profile Created CCRs
RFP CCR attribution

* ignore

* CCR Price in USD  (#85)

* init profile tipjar backend

* init profile tipjar frontend

* fix lint

* implement tip jar block

* fix wrapping, hide tip block on self

* init backend proposal tipjar

* init frontend proposal tipjar

* add hide title, fix bug

* uncomment rate limit

* rename vars, use null check

* allow address and view key to be unset

* add api tests

* fix tsc errors

* fix lint

* fix CopyInput styling

* fix migrations

* hide tipping in proposal if address not set

* add tip address to create flow

* redesign campaign block

* fix typo

* init backend changes

* init admin changes

* init frontend changes

* fix backend tests

* update campaign block

* be - init rfp usd changes

* admin - init rfp usd changes

* fe - fully adapt api util functions to usd

* fe - init rfp usd changes

* adapt profile created to usd

* misc usd changes

* add tip jar to dedicated card

* fix tipjar bug

* use zf light logo

* switch to zf grants logo

* hide profile tip jar if address not set

* add comment, run prettier

* conditionally add info icon and tooltip to funding line

* admin - disallow decimals in RFPs

* fe - cover usd string edge case

* add Usd as rfp bounty type

* fix migration order

* fix email bug

* adapt CCRs to USD

* implement CCR preview

* fix tsc

* Copy Updates and UX Tweaks (#87)

* Add default structure to proposal content

* Landing page copy

* Hide contributors tab for v2 proposals

* Minor UX tweaks for Liking/Following/Tipping

* Copy for Tipping Tooltip, proposal explainer for review, and milestone day estimate notice.

* Fix header styles bug and remove commented out styles.

* Revert "like" / "unfollow" hyphenication

* Comment out unused tests related to staking
Increase PROPOSAL_TARGET_MAX in .env.example

* Comment out ccr approval email send until ready

* Adjust styles, copy.

* fix proposal prune test (#88)

* fix USD display in preview, fix non-unique key (#90)

* Pre-stepper explainer for CCRs.

* Tweak styles

* Default content for CCRs

* fix tsc

* CCR approval and rejection emails

* add back admin_approval_ccr email templates

* Link ccr author name to profile in RFPs

* copy tweaks

* copy tweak

* hookup mangle user command

* Fix/add endif in jinja

* fix tests

* review

* fix review
2019-12-05 19:01:02 -06:00
Danny Skubak db49fbc7e1 Tip Jar Proposal (#65)
* init profile tipjar backend

* init profile tipjar frontend

* fix lint

* implement tip jar block

* fix wrapping, hide tip block on self

* init backend proposal tipjar

* init frontend proposal tipjar

* add hide title, fix bug

* uncomment rate limit

* rename vars, use null check

* allow address and view key to be unset

* add api tests

* fix tsc errors

* fix lint

* fix CopyInput styling

* fix migrations

* hide tipping in proposal if address not set

* add tip address to create flow
2019-11-20 15:37:26 -06:00
Danny Skubak d98b255378 Tip Jar Profile (#64)
* init profile tipjar backend

* init profile tipjar frontend

* fix lint

* implement tip jar block

* fix wrapping, hide tip block on self

* add hide title, fix bug

* rename vars, use null check

* allow address and view key to be unset

* add api tests

* fix migrations
2019-11-13 17:44:35 -06:00
Danny Skubak 67fbbae9bf Port Landing Hooks (#30)
* port & adapt landing hooks from grant-base

* fix type guard

* CSS Adjustments for Illustration and Content layout.
2019-11-07 22:58:55 -05:00
Danny Skubak 5f049d899b Add Signalling of Support (#41)
* init proposal subscribe be and fe

* add subscription email templates

* wire up subscription emails

* email subscribers on proposal milestone, update, cancel

* disallow subscriptions if email not verified

* update spelling, titles

* disallow proposal subscribe if user is team member

* hide subscribe if not signed in, is team member, canceled

* port follow from grant-base

* remove subscribed

* convert subscribed to follower

* backend - update tests

* frontend - fix typings

* finish follower port

* update comment

* fix email button display issues

* init liking backend

* init liking frontend

* fix lint

* add liking backend tests

* refactor like component
2019-10-24 12:32:00 -05:00
Danny Skubak 5799ffab19 Proposal Subscription (#31)
* init proposal subscribe be and fe

* add subscription email templates

* wire up subscription emails

* email subscribers on proposal milestone, update, cancel

* disallow subscriptions if email not verified

* update spelling, titles

* disallow proposal subscribe if user is team member

* hide subscribe if not signed in, is team member, canceled

* port follow from grant-base

* remove subscribed

* convert subscribed to follower

* backend - update tests

* frontend - fix typings

* finish follower port

* update comment

* fix email button display issues

* remove loading on AuthButton to prevent two spinners
2019-10-23 16:34:10 -05:00
AMStrix 8819ee3035 Rework Contribution Privacy (#456)
* rework contribution privacy
- add ProposalContribution.privacy
- remove ProposalContribution.no_refund
- anonymous contribution only if not logged in
- logged in contributions can be optionally attributed
- refunds can happen if a user has  a refund address

* admin: upgrade react-easy-state (had memory leak)

* be: filter users private contributions for others

* Adjust copy to be more accurate.

* Add copy for setting refund addresses (#458)
2019-06-11 21:49:14 -05:00
William O'Beirne 9d0591918e Require refund address or confirm donation (#354)
* Add API check to disallow unsetting refund address.

* Require either refund address to be set or explicit consent for a donation. Dont have them show up as refundable in admin.

* Show donations on financials page

* Continue after entry

* Consider no_refund when checking for duplicate contribution.

* Fix types.

* Add a filter for all contributions that are considered donations. Update financial query to include donations.

* Elaborate in message.
2019-03-13 18:36:24 -05:00
AMStrix 1d2228a394 Flexible Matching/Bounties + KYC (#277)
* BE: proposal rfp opt in & proposal bounty

* admin: proposal rfp opt in display & modify bounty

* FE: proposal rfp opt in / proposal.contributionBounty

* fix github merge (so close)

* add status field to update_rfp

* handle only showing canel and refund popover correctly

* undo unneeded change

* BE: make sure rfp.bounty is None when it is set to '0' or null during create/update
2019-03-06 14:25:58 -06:00
Will O'Beirne 06add917b5
Merge branch 'develop' into anonymous-contributions 2019-02-23 16:53:59 -05:00
William O'Beirne 8bf7013b0f
Cancel proposal (#253)
* Backend setup for proposal canceling.

* Cancelable in admin, update all states to properly reflect a canceled proposal.

* Replace REFUNDING stage with CANCELED and FAILED to distinguish between the 2

* Fix pending contributions showing up as needing refunds.

* Fix some refund cases.

* Dont show failed & canceled proposals on list view. Hide their filters.

* Show when proposal was canceled.

* Remove edit action, make cancel an explanation to contact support.

* Fix PR comments

* Fix issues from develop merge.
2019-02-23 16:38:06 -05:00
Will O'Beirne 115b127962
Initial pass at anon contributions on frontend. 2019-02-23 15:31:07 -05:00
Will O'Beirne 6f50a7ae28
Merge develop in. 2019-02-21 12:17:48 -05:00
Daniel Ternyak 5a7235ab49
Merge branch 'develop' into comment-moderation 2019-02-19 16:46:03 -06:00
Will O'Beirne 5163d87172
Add link for unlinking proposals from requests. 2019-02-19 14:48:51 -05:00
Aaron 1a87cadc4d
Merge branch 'develop' into comment-moderation
# Conflicts:
#	backend/grant/utils/pagination.py
#	frontend/client/components/Proposal/Comments/index.tsx
2019-02-18 15:36:31 -06:00
Aaron e8c7dad87f
be & admin moderation & reporting for proposal comments 2019-02-18 15:31:20 -06:00
AMStrix 709a370284 Proposal stage and comment pagination (#214)
* hook up proposal stage filters

* paginate comments & "All" stages filter in frontend

* Add 'status' to 'create-proposals'
2019-02-17 21:13:24 -05:00
Will O'Beirne cbe0ed659c
Add refund address to settings, editable on the account page. 2019-02-16 11:49:32 -05:00
Aaron 00dedfbfc0
trigger redux auth state update based on custom auth header 2019-02-15 21:07:41 -06:00
Aaron 16ed593304
Merge branch 'develop' into zcash-milestones
# Conflicts:
#	frontend/client/modules/create/utils.ts
2019-02-13 14:38:52 -06:00
Aaron fd9a4c5393
full payout flow operational 2019-02-13 10:54:46 -06:00
Aaron 380eec005e
payout endpoints + redux actions + ms UX refactors 2019-02-11 23:10:09 -06:00
Daniel Ternyak 7d6d38552c
remove DApp category 2019-02-10 16:15:36 -06:00
Daniel Ternyak f15c110f92
Merge branch 'develop' into arbiter-management 2019-02-10 15:53:29 -06:00
Aaron 7a036058f6
FE: more robust arbiter + arbiter accept email validation code page 2019-02-09 21:03:19 -06:00
Will O'Beirne 2a0e12194c
Add resend button to email settings 2019-02-08 14:57:54 -05:00
Aaron 048cda8216
FE: user profile arbitrations tab 2019-02-06 16:37:45 -06:00
AMStrix d696f7978d Proposal pagination & 404 fix (#151)
* BE: command to create fake proposals

* BE: pagination system + implemented for GET proposals/

* FE: overlay mode for Loader component

* FE: paginated Proposals

* refactor pagination.py a bit

* Proposals: set search input from store on construction

* admin: switch proposals to new pagination regime

* BE: test adjustments

* set app.proposals.page after fetch in a less-creepy way

* optimictic proposal.detail from proposal.page

* keep api interfacing on the api surface (one-dimentional page filters vs structured)

* rem MOST & LEAST_FUNDED prop sort + rename NEWST & OLDEST

* ProposalPagination fix default sort
2019-02-05 15:34:19 -05:00
William O'Beirne c17145986f
Request for Proposal (Pt. 3 - Create & Link Proposals) (#131)
* Adjust rfp <-> proposal models. Add button to rfp detail page to make linked proposal.

* Add a block that links to the original request. Fix a bunch of preview issues.

* List proposals on RFP.

* Admin view for connected RFPs and proposals

* Fix TSC issues.

* Fix tab badge misalignment

* Redesign list page.

* Resolve PR issues.
2019-02-01 14:13:30 -05:00
AMStrix f8f3bd1707 Proposal staking (#134)
* BE: proposal/<id>/stake end-point basics

* BE: proposal staking tests

* add STAKING to ProposalStatusEnum

* BE: incremental staking related changes

* admin: staking status

* FE: proposal staking first pass

* ZCash -> Zcash spelling

* staking contribution confirmed email

* FE: staking related minor style changes

* FE proposal staking env var

* notify user of partially staked proposal contributions
2019-01-31 17:56:16 -05:00
William O'Beirne 4091deaf2f
Request for Proposal (Pt. 1 - Models & Admin) (#120)
* Convert constants into enums

* Initial RFP models and views.

* Fix model and enums

* RFP admin fully fleshed out.

* Fix tsc

* Fix tests and tsc

* Fix closed tag display

* Request for Proposal (Pt. 2 - Public View) (#125)

* RFP list page and backend endpoints. Scaffold of detail view.

* RFP detail view. Fix faulty addRfp action.

* Fix 0 showing up

* PR cleanup
2019-01-30 12:59:15 -05:00
Will O'Beirne 3b9d15e62e
Implement change email & email confirmation. Adjust layout of settings more. 2019-01-24 13:53:26 -05:00
Will O'Beirne b6e921879e
Rework settings page frontend. Add account tab for email changes. 2019-01-23 17:28:27 -05:00
AMStrix 8de3b4e3c8 Email settings + unsubscribe (#75)
* user subscription_settings utils + tests

* UserSettings user/models updates

* GET /<user_id>/settings endpoint

* PUT /<user_id>/settings + more tests + refactoring

* Email Notifications settings tab

* email subscription verbiage

* email-unsubscribe page + refactors

* hook up send_email for proposal approval + add subscription checks to send_email

* fix merge bug

* Send email on contribution. Dont double-count contributions from the blockchain watcher.

* Proposal contribution email, and fix email admin.

* Send email to team on contribution received.

* Email comment creator of their replies.

* Send comments to proposal creator. Adjust templates for all comment emails.

* Send email on contribution update.
2019-01-16 17:26:44 -05:00
Will O'Beirne 6c8ce3f87d
Show send instructions on profile pending contributions. 2019-01-09 17:26:28 -05:00
Will O'Beirne 5a922cefee
Merge latest develop in. 2019-01-09 16:57:15 -05:00
Will O'Beirne 7a7cbb77c7
Delete expired transactions. 2019-01-09 16:32:51 -05:00
Will O'Beirne b338fc9d2e
Contributions tab on proposal view. 2019-01-09 15:48:41 -05:00
William O'Beirne 7ade6b5715
Merge branch 'develop' into zcash-contributions 2019-01-09 14:08:51 -05:00
AMStrix 47c695f43b Proposal Approval Process (#39)
* endpoints and model support for proposal approval

* admin test + proposal approval tests

* GET user/<id> withPending support

* basic withPending suport for Profile

* change create publish to sumbit for approval

* admin proposal filter by status + some refactoring

* admin: update antd

* backend: admin get single proposal + populate date_approved

* admin: rework Proposals + support approval

* backend: approval process updates

* admin: review count on home + cosmetic

* frontend: proposal approval flow

* Profile ZEC/ZAT adjustments

* fix regression in formatUserFromGet + update error type in users/reducers

* fix merge tsc issues

* publish warning vebiage change

* fix ssr fetchProposal 404 hang bug

* proposals/<id> - limit status non-LIVE to team member, exclude DELETED

* various adjustments to Proposal based on `status`

* remove comments

* Proposal statuses to banner style + fix up CreateFlow - Preview mode

* Proposal tsc fix
2019-01-09 13:23:08 -05:00
Will O'Beirne c444e5152d
Hook up blockchain to backend, backend to frontend for contributions. 2019-01-07 01:58:33 -05:00
AMStrix 15acce1865 Rework Proposal Comments & Updates (#36)
* test proposal updates + adjustments for comments

* remove comment signed message stuff

* use authed user id to check if user can update, remove 'account'

* ts adjustment
2019-01-04 14:03:37 -05:00
AMStrix 22f8a0415c Verify User Social via OAuth (#30)
* BE social oauth verify

* FE social oauth verification

* readme updates

* README social verification setup instructions

* adjust tests socialMedias

* BE add social verify tests

* save changes before leaving to OAuth

* Fix migration.

* Adjust social button styles.

* Remove question mark.

* merge fix

* fix migration branch
2019-01-02 12:23:02 -06:00
William O'Beirne ec76cb414f Initial Proposal rework (#32)
* Rework proposal model to remove ethereum specific stuff. Removed most traces of those fields around the backend.

* Refactor to a state where /proposlas loads.

* Get rid of the ProposalWithCrowdFund type.

* Fix padding on create flow.
2018-12-28 17:05:34 -06:00
AMStrix 6ea75e6bda User Recovery Flow (#26) 2018-12-17 12:33:33 -06:00
AMStrix 50cc377b48 User Auth Conversion (#19) 2018-12-14 13:36:22 -06:00
AMStrix 4980670e8c Populate Profile Data (#233)
* BE profile deets

* BE real user data web3 populate + misc

* FE real profile data
2018-11-30 17:52:00 -06:00