Commit Graph

346 Commits

Author SHA1 Message Date
Will O'Beirne 400774c4d3
Remove unused endpoint / test, fix another test. 2019-03-04 17:20:47 -05:00
Will O'Beirne ae625cb3e1
Generate random ID for public facing entities. 2019-03-04 16:47:52 -05:00
Will O'Beirne 4779299fb3
Reduce payload size for bootstrap. Fix invalid response to bootstrap. Bootstrap height now starts at N - min confs. 2019-03-04 14:40:37 -05:00
Will O'Beirne 89da528c4a
Dont move to failed if it was canceled. 2019-03-04 14:24:13 -05:00
Will O'Beirne 58ee787ab8
Remove print. 2019-03-04 13:56:57 -05:00
Will O'Beirne 2cc5ade673
Sort homepage rfps by bounty. Fix admin views and some bounty logic. 2019-03-04 13:52:57 -05:00
Daniel Ternyak 3e65df3e5d
Merge branch 'develop' into various-fixes 2019-03-01 14:13:41 -06:00
Daniel Ternyak f950e17397
Webargs Request Parsing (#228) 2019-03-01 14:11:03 -06:00
Daniel Ternyak f5d721c0b4
Update template.txt 2019-03-01 11:23:13 -06:00
Daniel Ternyak a52fda5c58
Set Admin Command (#273) 2019-02-28 18:26:38 -06:00
Daniel Ternyak 56b63eda6c
Merge branch 'various-fixes' of https://github.com/dternyak/zcash-grant-system into various-fixes 2019-02-27 21:44:09 -06:00
Daniel Ternyak a3d1cbf427
replace fake address with real address 2019-02-27 21:28:12 -06:00
Daniel Ternyak 6aa6ea5624
Merge branch 'develop' into various-fixes 2019-02-27 17:15:12 -06:00
Daniel Ternyak 85ba0d7348
ensure comments are not greater than 1000 chars 2019-02-27 17:05:01 -06:00
Will O'Beirne 8a193756b3
Fix unsafe behavior in marshmallow class for contributions. 2019-02-25 15:04:33 -05:00
Will O'Beirne 5cb08a1f14
Only bootstrap with contributions made in the last 24h, to reduce payload size. 2019-02-25 15:03:52 -05:00
Will O'Beirne 560f63847e
More considerations for anonymous contributions on the frontend. 2019-02-25 14:46:47 -05:00
Will O'Beirne 31d458e067
Make contribution code handle not having a user in all cases. 2019-02-25 14:26:43 -05:00
Will O'Beirne 6f7de989e7
Merge branch 'develop' into anonymous-contributions 2019-02-25 11:43:36 -05:00
AMStrix 77e25b1c7c Various fixes (#260)
* remove linkedin social media option

* fix ProfileEdit social media button white-space

* fix default profile tab for non-authed user

* filter out non live proposal contributions for GET user/<id>

* admin: remove 255 char limit on reject_reason
2019-02-25 11:41:00 -05: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
William O'Beirne 076bcc67bf
Merge branch 'develop' into admin-users 2019-02-23 16:08:06 -05:00
William O'Beirne c35b62b6c4
Email subscription fixes (#243)
* Lookup user email subscription settings by email instead of hoping a user is passed.

* Functioning unsubscribe URLs
2019-02-23 15:33:19 -05:00
Will O'Beirne 115b127962
Initial pass at anon contributions on frontend. 2019-02-23 15:31:07 -05:00
William O'Beirne ae62b726ce
Rip sprout out. (#254) 2019-02-23 15:19:33 -05:00
Aaron a71f65a387
admin: add allow_stale option to throw_on_2fa_not_allowed 2019-02-22 11:55:45 -06:00
Aaron e3fd6aa398
clean recovery codes before saving and checking 2019-02-22 10:13:29 -06:00
Aaron 35661a0672
admin Settings & reset MFA 2019-02-21 23:22:16 -06:00
Aaron 3f7c90a381
admin: require email verification for admin login/setup 2019-02-21 19:39:37 -06:00
Aaron 64740b9f37
merge fixes: migration & admin/views 2019-02-21 18:56:00 -06:00
Aaron 43ee574899
Merge branch 'develop' into admin-users
# Conflicts:
#	backend/grant/admin/views.py
2019-02-21 18:44:58 -06:00
Aaron e1572de3f6
fix tests and add 2fa setup flow test 2019-02-21 18:39:41 -06:00
Aaron c30fa69152
2fa admin setup + login process 2019-02-21 16:23:46 -06:00
Will O'Beirne 6994bd9a67
Fix staking, fix being unable to edit contributions while staking. 2019-02-21 13:21:46 -05:00
Will O'Beirne 733a664cc6
Exclude staking contributions from funding amount or contribution lists. 2019-02-21 13:07:11 -05:00
Will O'Beirne a65c061f1d
Add staking column to contribution. Exclude staking contributions from refunds. 2019-02-21 13:02:29 -05:00
Will O'Beirne 6f50a7ae28
Merge develop in. 2019-02-21 12:17:48 -05:00
Aaron f49b58dca4
totp basics + remove old admin env key stuff 2019-02-20 16:35:13 -06:00
Will O'Beirne 05372e572b
PR feedback fixes. 2019-02-20 16:44:12 -05:00
Aaron cc07fb7797
admin: edit user admin status 2019-02-20 12:04:25 -06:00
Aaron c067d3e9ad
user is_admin field with working migration 2019-02-20 11:35:47 -06:00
Daniel Ternyak 5a7235ab49
Merge branch 'develop' into comment-moderation 2019-02-19 16:46:03 -06:00
Aaron abcfc64dcc
filter out top-level comments via sql so pagination is not borked 2019-02-19 15:30:32 -06:00
Aaron 6749626249
prune "dead" comments during serialization 2019-02-19 15:01:25 -06:00
Will O'Beirne 5163d87172
Add link for unlinking proposals from requests. 2019-02-19 14:48:51 -05:00
Will O'Beirne 58c0f8cfdc
Remove unused imports 2019-02-19 12:20:17 -05:00
Will O'Beirne af7bc08828
Simplify logic. 2019-02-19 12:19:47 -05:00
Will O'Beirne ea35f7874c
Fail emails and task. 2019-02-19 12:13:13 -05:00
Aaron 10d70ec4f6
fix UserCommentSchema 2019-02-18 17:59:22 -06:00
Aaron 8ef9a7e5e4
comment reporting for moderation 2019-02-18 16:35:21 -06: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
Aaron e8d6f659e8
basic comment pagination + admin moderation 2019-02-17 13:15:40 -06:00
Will O'Beirne 7314631ea5
Admin refunds of contributions 2019-02-17 11:52:35 -05:00
William O'Beirne 1be2c5c945
Add bounty banner to campaign block. Reflect bounty in funded amount. Fix some of the cases that opens up. (#213) 2019-02-16 12:32:26 -05:00
Will O'Beirne cbe0ed659c
Add refund address to settings, editable on the account page. 2019-02-16 11:49:32 -05:00
AMStrix be259af0cd
Merge branch 'develop' into redux-alien-auth-events 2019-02-16 08:50:37 -06:00
AMStrix 877bc53332 Milestone & Arbiter adjustments (#211)
* ms emails: fix link underline extra space

* fe: team member no arbiter ms action verbiage

* BE: no proposal matching changes after funding + pull proposal state changing into model funcs

* when funding reached with immediate payout skip MS to ACCEPTED (waiting for payment)

* email: fix another trailing link space

* arbiter may not be team-member

* add proposal hybrid property is_failed, true if not funded past deadline

* do not allow setting arbiter on failed proposals

* fix matching and arbiter related tests
2019-02-15 22:35:25 -05:00
Aaron 00dedfbfc0
trigger redux auth state update based on custom auth header 2019-02-15 21:07:41 -06:00
Daniel Ternyak 7b365a28c7
Address user directly in error messages 2019-02-15 13:09:51 -06:00
Daniel Ternyak d01827ec43
Merge branch 'develop' into user-banning 2019-02-15 12:12:18 -06:00
Aaron f30d53c21c
Merge branch 'develop' into user-banning
# Conflicts:
#	backend/grant/utils/pagination.py
2019-02-14 22:25:03 -06:00
Aaron 1d811bb7d3
BE: user banning + silencing + pagination 2019-02-14 22:11:47 -06:00
Will O'Beirne 31345c57b6
Merge develop in 2019-02-14 19:08:18 -05: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 47f827693d
mileston payout emails + some bug fixes 2019-02-13 14:30:58 -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
Aaron dc92d3f297
Merge branch 'develop' into zcash-milestones
# Conflicts:
#	backend/grant/proposal/models.py
#	backend/grant/utils/enums.py
#	frontend/client/modules/create/utils.ts
#	frontend/stories/props.tsx
#	frontend/types/proposal.ts
2019-02-11 16:51:31 -06:00
Daniel Ternyak f2e685b1d6
Merge branch 'develop' into finalize-categories 2019-02-11 16:47:07 -06:00
Aaron 72c3d6b507
join arbiter filter queries + use flush to get proposal.id on create 2019-02-11 15:59:29 -06:00
Aaron 4e5c0eaea7
BE: more milestone fields 2019-02-11 15:08:51 -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 5ec50718dd
fix indentation bug 2019-02-09 22:03:55 -06:00
Aaron 9831bc03db
BE: more robust arbiter + arbiter status + arbiter accept email code 2019-02-09 20:58:40 -06:00
William O'Beirne 2dcc1c8cad
Merge branch 'develop' into resend-verification 2019-02-08 15:18:31 -05:00
William O'Beirne 9d82140c48
Fix parser error by parsing unix with 'datetime' instead of dateutil 2019-02-08 15:12:44 -05:00
Will O'Beirne 2a0e12194c
Add resend button to email settings 2019-02-08 14:57:54 -05:00
Will O'Beirne 74fba18f99
Fix contribution matching. Add deets to rfp detail admin. 2019-02-08 14:11:52 -05:00
Will O'Beirne 263764255b
Frontend for new RFP fields. 2019-02-08 14:02:34 -05:00
Will O'Beirne 1d1f3bb007
Admin interface for new fields. 2019-02-08 11:54:20 -05:00
Will O'Beirne b03a9d3caf
Update RFP model with new fields, api endpoint for editing them. 2019-02-07 15:35:33 -05:00
Aaron 60575b4024
Merge branch 'develop' into proposal-arbiter
# Conflicts:
#	admin/src/components/Proposals/index.tsx
#	admin/src/store.ts
#	backend/grant/admin/views.py
#	backend/grant/proposal/models.py
2019-02-07 09:57:56 -06:00
Daniel Ternyak 33251d678c
Merge branch 'develop' into contribution-admin 2019-02-06 18:53:51 -06:00
Daniel Ternyak bd9c870e5c
Merge branch 'develop' into stake-topoff 2019-02-06 17:58:45 -06:00
Aaron 048cda8216
FE: user profile arbitrations tab 2019-02-06 16:37:45 -06:00
Will O'Beirne 9fd60cabaa
Button to create contribution. 2019-02-06 17:24:07 -05:00
Aaron 2b78a17973
proposal_arbiter email 2019-02-06 14:56:21 -06:00
Will O'Beirne e4290c76cf
Contribution create / edit form 2019-02-06 14:01:46 -05:00
Aaron 6fd885c274
order admin arbiter search by display_name 2019-02-06 12:56:08 -06:00
Aaron 40e73f9ee6
arbiters: admin views + pagination filter imp. 2019-02-06 12:31:53 -06:00
Will O'Beirne 2f3161ae4b
Generecize pageable. List view of contributions. 2019-02-06 12:47:47 -05:00
Will O'Beirne aeb0932120
Initial crack at admin endpoints. 2019-02-06 11:21:19 -05:00
Aaron 54e9889090
arbiter & related schema adjustments 2019-02-06 08:31:38 -06:00
Aaron eb8c1ec258
add ARBITER proposal filter 2019-02-05 21:30:31 -06:00
Will O'Beirne a1283f24eb
Allow topping off of partial stake contributions. Fix float innaccuracy errors in python. Allow staking proposals to be deleted. 2019-02-05 20:45:57 -05:00
Will O'Beirne f4f8d9312d
Merge branch 'develop' into proposal-date-fixes 2019-02-05 16:29:46 -05:00
Will O'Beirne a3a2392135
Convert milestone dates to unix timestamps to be inline with the rest of our entities. 2019-02-05 16:25:58 -05:00
Aaron 3f51b4f774
Merge branch 'develop' into proposal-arbiter 2019-02-05 14:46:16 -06:00
Aaron 2868d93fa1
proposal arbiter BE basics + initial admin work 2019-02-05 14:45:26 -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 08ed3e0417
Address validation (#156)
* Fix create step query

* Add basic regex validation for addresses to frontend.

* Check with zcash node if address is valid before final proposal submission.

* tsc

* Mock requests where needed. Come up with a function that mocks all blockchain requests.

* Remove print
2019-02-05 15:26:37 -05:00
Will O'Beirne a7fb3bcd81
Remove print 2019-02-05 15:16:39 -05:00
Aaron 6310e7ca90
remove old proposal model ENUMs 2019-02-05 11:01:57 -06:00
Will O'Beirne a2ddcf07c4
Mock requests where needed. Come up with a function that mocks all blockchain requests. 2019-02-05 06:17:07 -05:00
Will O'Beirne fa462175f3
Merge branch 'develop' into address-validation 2019-02-05 01:25:20 -05:00
Will O'Beirne df4b077a4a
Check with zcash node if address is valid before final proposal submission. 2019-02-05 01:24:17 -05:00
Daniel Ternyak 2dc3e1df86
Merge branch 'develop' into gdpr-and-cookies 2019-02-04 21:58:52 -06:00
Will O'Beirne 77bf47bf18
Implement user deleting. 2019-02-04 16:18:50 -05:00
Will O'Beirne 9415992bc1
Remove previews from update and comment emails. 2019-02-04 14:45:38 -05:00
William O'Beirne b920b73a4b
Enforce email verification server side (#142)
* Add new auth middleware for ensuring user has verified email account.

* Fix test.
2019-02-01 15:43:43 -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
AMStrix b0d16ace7d Proposal contribution matching (#117)
* BE: contribution_matching + admin proposal update end-point + tests

* admin: set proposal matching status

* frontend: contributionMatching

* improve CampaignBlock matching callout - thx Will

* adjust ProposalDetail matching confirmation popover child scope

* contributed & funded Proposal fields (hybrid props) + remove funded derivation from FE

* include "contributed" sum for ProposalDetail view

* fix branched migration revision
2019-01-29 18:50:27 -05:00
Daniel Ternyak 2deb8c8cfa
PR review additions 2019-01-29 16:21:06 -06:00
Daniel Ternyak 357517278d
Merge branch 'develop' into task-scheduler 2019-01-29 13:29:40 -06:00
Daniel Ternyak f1ddc7d0cf
PR review adjustments 2019-01-28 21:00:55 -06:00
Daniel Ternyak 2c8a52013c
simplify authorization/validation logic for verified users making proposals. Prevent unverified users from making proposals of any kind 2019-01-28 18:51:10 -06:00
Daniel Ternyak 8d8dda46e6
Oofdah. Backend refactoring based on PR review, and adding a more obvious UI for users who haven't yet verified their email before posting comments. 2019-01-28 16:46:04 -06:00
Daniel Ternyak f9237c8544
Merge branch 'develop' of https://github.com/dternyak/zcash-grant-system into require-email-verification 2019-01-28 15:48:29 -06:00
Daniel Ternyak 5b985e7fd7
Merge branch 'develop' into remove-profile 2019-01-28 15:45:36 -06:00
Daniel Ternyak 77c02502be
Fix schema and add test 2019-01-28 15:34:57 -06:00
Daniel Ternyak 18bab43a65
Merge branch 'develop' into explorer-url-env-var 2019-01-28 15:21:24 -06:00
Daniel Ternyak b9a88d7276
MVP task architecture 2019-01-27 22:59:15 -06:00
Daniel Ternyak 50c2812208
really fix tests 2019-01-27 20:51:05 -06:00
Daniel Ternyak 55820746ab
undo 2019-01-27 20:10:49 -06:00
Daniel Ternyak 09c49ca44f
undo 2019-01-27 20:09:58 -06:00
Daniel Ternyak 85c50a47c1
Prevent publishing proposal without email verification + refactor 2019-01-27 20:04:11 -06:00
Daniel Ternyak b0a5a8e03d
Handle comment prevention without email verification 2019-01-27 20:03:38 -06:00
Daniel Ternyak 893101b480
Revert "Don't duplicate UserSchema schema, use"
This reverts commit 6f38b8c8fa.
2019-01-27 16:43:03 -06:00
Daniel Ternyak 494b03ec7d
Revert "Don't duplicate UserSchema schema, use"
This reverts commit 6f38b8c8fa.
2019-01-27 16:42:02 -06:00
Daniel Ternyak 6f38b8c8fa
Don't duplicate UserSchema schema, use 2019-01-27 16:33:27 -06:00
Daniel Ternyak 97db9d69f9
Merge branch 'develop' of https://github.com/dternyak/zcash-grant-system into remove-profile 2019-01-27 16:13:49 -06:00
Daniel Ternyak 5ecf3d83fb
Partition UserSchema into SelfUserSchema (mostly used to power /me/ endpoint) and UserSchema (used everywhere else). 2019-01-27 16:13:12 -06:00
Will O'Beirne 1a41012c31
Replace all instances of grant.io and its palette with zf grants branding. 2019-01-24 15:17:24 -05:00
Will O'Beirne 3654bcb854
Send notif email to old email address on email change. 2019-01-24 14:47:22 -05:00
Will O'Beirne f22acfede0
Change password email. 2019-01-24 14:08: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 3c8894fb12
Env var-ify the block explorer url 2019-01-23 16:30:03 -05:00
Daniel Ternyak c51e850cb0 Run reformatter on all files (#98) 2019-01-23 10:00:30 -05:00
Daniel Ternyak 9727134ac0
Run reformatter on all files 2019-01-22 23:35:22 -06:00
Will O'Beirne 244a9f9168
Merge branch 'develop' into sentry-release-env-no-git 2019-01-21 12:52:35 -05:00
William O'Beirne 0e4626157f
Blockchain watcher bootstrap (#92)
* Initial work on bootstrap refactor. Still results in delayed bootstrapping and double bootstrapping.

* Remove logging.

* Fix invalid json in body on non-post requests. Reduce error verbosity.

* Adjust error output.
2019-01-21 12:51:49 -05:00
Aaron 4687ed6033
do not register default blueprint for flask-security 2019-01-18 13:07:00 -06:00
Aaron 3383c0757b
remove git hashes for SENTRY_RELEASE 2019-01-18 12:33:51 -06:00
AMStrix b3e3a28957 Admin authentication environment variable + generation command (#78)
* store admin pass hash in ENV + add gen-admin-auth command

* allow custom salt for hash generation

* remove unused import

* dynamically pull salt for testing admin password hash generator func

* Fix middleware name.
2019-01-17 00:20:10 -05:00