Commit Graph

370 Commits

Author SHA1 Message Date
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 25c622360d
fix test 2019-01-29 16:43:04 -06: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 1e8b63d2a1
fix test 2019-01-28 19:06:24 -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 b607163fce
Really get tests working 2019-01-27 21:09:31 -06:00
Daniel Ternyak 50c2812208
really fix tests 2019-01-27 20:51:05 -06:00
Daniel Ternyak c4736b18a2
fix tests 2019-01-27 20:20:11 -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 4d84f11f78
Add tests 2019-01-27 16:30:15 -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
William O'Beirne 2658f0d77e
Add try catch around bootstrap. (#100)
* Add try catch around bootstrap.

* pep8 formatting
2019-01-23 12:23:02 -05:00
Daniel Ternyak c51e850cb0 Run reformatter on all files (#98) 2019-01-23 10:00:30 -05: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
AMStrix c0557a9fa6 Admin - rework user list/user detail (#80)
* fix UserCommentSchema to no longer exclude contributions (no longer on ProposalSchema)

* return more detail for /admin/users/<id>

* admin: add UserDetail + refactoring

* remove unused state from UserItem.tsx
2019-01-17 00:01:29 -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
William O'Beirne 994b680f04
Link to specific tabs from query param (#71)
* Linkable tabs with scrolling behaior. Replace all tabs with linkable tabs.

* Link to specific tab wherever relevant.

* Fix bad tab name.
2019-01-15 15:19:59 -05:00
Will O'Beirne 4540dbde1a
Remove flask-sendgrid. Use sendgrid directly. Improve error logging. 2019-01-10 18:48:44 -05:00
William O'Beirne b01b7726a7 Log sendgrid error (#62) 2019-01-10 17:21:41 -06:00
Will O'Beirne 16051f5f7a
PR fixes 2019-01-10 12:27:04 -05:00
Will O'Beirne 311fdb298d
Dont show unconfirmed txs unless its you 2019-01-09 17:54:41 -05:00
Will O'Beirne 5a922cefee
Merge latest develop in. 2019-01-09 16:57:15 -05:00
Will O'Beirne 749dc40ea4
Re-wipe migrations. 2019-01-09 16:35:47 -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
Will O'Beirne da537e2498
Calculate funded from confirmed contributions. 2019-01-09 14:45:16 -05:00
Will O'Beirne f97a8dfb8d
Convert webhook amount to zcash from zats. Order contributions correctly. 2019-01-09 14:35:37 -05:00
William O'Beirne 7ade6b5715
Merge branch 'develop' into zcash-contributions 2019-01-09 14:08:51 -05:00
William O'Beirne b65f02a29f
Email admin + more email templates (#37)
* Email admin page with previews.

* Move example args to backend since emails take in Python classes.

* Text version of invite email.

* Proposal approval / rejection emails.

* Back button.

* Contribution confirmed email.
2019-01-09 14:08:25 -05:00
Will O'Beirne 57e65e26d5
Rework proposal api a bit, render contributions and their status. 2019-01-09 14:07:50 -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 00ee2888b4
Convert blockchain microservice to use webhooks instead of websocket. Confirm contributions via webhook. 2019-01-08 17:58:32 -05:00
Will O'Beirne 6066b7adf0
Wipe migrations. Fix tests. 2019-01-08 12:44:54 -05:00
Will O'Beirne c444e5152d
Hook up blockchain to backend, backend to frontend for contributions. 2019-01-07 01:58:33 -05:00
William O'Beirne 99fdedb816 Initial work on contribution modal flow and contribution model overhaul. 2019-01-06 17:48:07 -05:00
William O'Beirne 98d68961b5 Merge develop in. 2019-01-04 14:29:09 -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
Will O'Beirne f954646170
Fill in target and funded amounts from real proposal data. Funded is stubbed. 2018-12-27 13:00:04 -05:00
Will O'Beirne 5931de5460
Refactor to a state where /proposlas loads. 2018-12-21 13:27:39 -05:00
Will O'Beirne eea3eea0f7
Rework proposal model to remove ethereum specific stuff. Removed most traces of those fields around the backend. 2018-12-19 16:27:58 -05: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
Daniel Ternyak 73f3756f57
Update prod.txt 2018-12-06 11:36:47 -06:00
Daniel Ternyak 35eecc24db
Setup in-app SSL redirects for Heroku (#238)
* setup in-app ssl redirects for Heroku

* add typings

* use trustProtoHeader

* BE w3 read fix for read_user_proposal

* No HTTPS redirect on dev
2018-12-05 17:49:45 -06:00
AMStrix 00561f5121 Fix BE web3 read when proposal has no address (#239) 2018-12-05 12:05:57 -06:00
William O'Beirne 3b42295097 Team invite email (#237) 2018-12-03 20:45:18 -06:00
William O'Beirne 4d0a6f2cf2
Merge branch 'develop' into tests-tests-tests 2018-12-01 01:30:46 -05: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
Will O'Beirne c05bd6ab43
Add draft, publish, and update tests for proposals. 2018-11-29 20:55:14 -05:00
Will O'Beirne e40d046dd4
Invite acceptance tests. 2018-11-29 16:54:26 -05:00
Will O'Beirne b1b2717360
Tests around invites, and a few fixes along the way. 2018-11-28 16:56:19 -05:00
Will O'Beirne 043999c310
Dont send email in test environment. 2018-11-27 15:35:16 -05:00
Will O'Beirne e24ed31367
More invalid comment tests. 2018-11-27 15:29:41 -05:00
Will O'Beirne 8c6d5265bf
Comment tests. 2018-11-27 15:26:36 -05:00
Will O'Beirne 1b3f6e86e8
Fixed & improved tests. 2018-11-27 14:07:09 -05:00
Will O'Beirne c3985a07a3
Merge in develop 2018-11-27 13:21:11 -05:00
Will O'Beirne bc076c8736
Remove prints. 2018-11-27 12:39:36 -05:00
Will O'Beirne 5754a84f79
Fix wrong test key. 2018-11-27 12:22:54 -05:00
Will O'Beirne 708eaca511
Merge upstream changes. 2018-11-26 20:29:33 -05:00
Will O'Beirne 1b1797be54
Merge branch 'server-side-drafts' into team-invites 2018-11-26 20:21:44 -05:00
Will O'Beirne 9c69f28179
Fix test mocks. 2018-11-26 20:20:23 -05:00
Will O'Beirne 02b1260573
Merge in latest changes. 2018-11-26 20:14:00 -05:00
Will O'Beirne c95dde2cda
Merge upstream changes. 2018-11-26 18:51:48 -05:00
Will O'Beirne f9b4f65ac4
Merge develop in. 2018-11-26 18:47:24 -05:00
Will O'Beirne 5afdb2011d
Merge develop in. 2018-11-26 18:25:02 -05:00
Daniel Ternyak 00219e65c8
Only Runtime Contracts (#225) 2018-11-25 22:02:35 -06:00
AMStrix 7abeac7bd7 Sentry Integration (#221)
* BE sentry setup w/ user scope

* FE sentry integration + user scope

* FE env adjustments

* FE: use NODE_ENV for Sentry

* BE: use FLASK_ENV for Sentry

* BE: remove email, acct & ip from Sentry user scope

* comment .env.example SENTRY* for CI

* fix merge artifact
2018-11-21 23:45:29 -06:00
AMStrix d367e6e474 Track proposal contributions (#219)
* BE proposal contribution tracking

* FE proposal contribution tracking

* validate contributions

* make sure we catch errors in the 'confirmation' listener

* remove console.log

* lowercase from address compare

* remove validate_contribution_tx from post_proposal_contribution
2018-11-21 21:18:22 -06:00
Daniel Ternyak a95f693467
Merge branch 'develop' into server-side-drafts 2018-11-21 17:26:38 -06:00
Daniel Ternyak f8910b1e09
Contract Build Improvements (#215) 2018-11-21 17:24:33 -06:00
Aaron cd2bd8f0b7
interpolate AVATAR_MAX_SIZE into error message 2018-11-19 17:58:30 -06:00
Will O'Beirne c51b1e2dab
Finish up user and social media conversions. 2018-11-19 15:23:56 -05:00
Aaron 52f1f54442
avatar upload & download 2018-11-16 21:33:25 -06:00
Will O'Beirne d7e4c1c533
Check in user refactor. Incomplete, but computer is crashing routinely. 2018-11-16 18:05:17 -05:00
Will O'Beirne 95a963f2c8
Fix cyclic dependency. 2018-11-16 14:17:09 -05:00
Will O'Beirne df9ea60300
Invite tab on profile, allow accepting and rejecting invites. 2018-11-16 13:50:47 -05:00
Will O'Beirne a3cfbda3e2
Working invitations + deletions. 2018-11-16 11:16:52 -05:00
Will O'Beirne c378c1d1bb
Nail down team invite model. 2018-11-15 16:51:32 -05:00
Will O'Beirne 755ee8f5a0
Remove redundant check. 2018-11-15 11:11:54 -05:00
Will O'Beirne f40d88c4b5
Remove print. 2018-11-15 11:10:15 -05:00
Will O'Beirne 50cdf45882
Draft deleting. 2018-11-15 11:02:16 -05:00
AMStrix b177e7efa9 Backend Proposal Reads Pt. 2 (#209)
* web3 flask + read proposal

* tests

* use build/contracts indtead of build/abi

* fail if endpoint not set

* batched calls

* add web3 read to GET proposal(s) endpoints

* basic  integration of BE crowdFund data into FE

* handle dead contracts & omit on FE

* allow web3-free viewing & move crowdFundContract out of redux store

* upgrade flask-yolo2API to 0.2.6

* MetaMaskRequiredButton + use it in CampaignBlock

* convert to tuples

* farewell tuples

* flter dead proposals on BE

* give test_proposal_funded deadline more time
2018-11-14 17:24:56 -05:00
Will O'Beirne e11be1569d
Publish proposal 2018-11-14 17:03:50 -05:00
Will O'Beirne 8fc00d7d70
Remove team editing, always defaults to 1 member team of authd user. 2018-11-14 16:18:40 -05:00
Will O'Beirne d29aed36de
Fix tests 2018-11-14 16:12:24 -05:00
Will O'Beirne 415b1b7d5c
Blow away migrations due to sqllite issues. 2018-11-14 13:57:05 -05:00
Will O'Beirne 84daa1cba9
Rename a bunch of fields to their original values. Get draft saves working. 2018-11-14 12:59:48 -05:00
Will O'Beirne 8aceac0c45
Get backend draft updates working. 2018-11-14 12:27:40 -05:00
Will O'Beirne a6175e530c
Merge in develop 2018-11-14 12:03:40 -05:00
Will O'Beirne 8245795306
Temporary checkin, fuckup all of the types on the frontend. 2018-11-14 11:43:00 -05:00
AMStrix 03de8c2543 Backend Proposal Reads Pt. 1 (#198)
* web3 flask + read proposal

* tests

* use build/contracts indtead of build/abi

* fail if endpoint not set

* batched calls
2018-11-14 09:30:18 -05:00
Daniel Ternyak 8c2e43c51b
Update Flask-YoloAPI (#207)
* Update to latest flask-yolo2api

* Fix related tests
2018-11-13 22:45:55 -05:00
Will O'Beirne 829d072b8c
Check in work on proposals, drafts 2018-11-13 11:07:09 -05:00
Daniel Ternyak 56df655c05
Merge branch 'auth-endpoints' into working-comments 2018-11-13 15:24:25 +01:00
William O'Beirne a418f3d5b6 Authenticate endpoints (#193)
* Add auth to endpoints.
2018-11-13 15:17:06 +01:00
Daniel Ternyak c579820dc3
Auth Endpoints Tests (#203)
Auth Endpoints Tests
2018-11-13 14:58:02 +01:00
Will O'Beirne 7c023da066
Create and show replies to comments succesfully. 2018-11-08 13:42:19 -05:00
Will O'Beirne 1862b69169
Properly signing, creating, fetching comments. Fix incorrect types. Setup scaffolding for replies. 2018-11-08 13:29:29 -05:00
Will O'Beirne 5a1cf5ae2a
Add auth to endpoints. 2018-11-07 14:19:12 -05:00
William O'Beirne 250d5fb7a9
EIP-712 signatures for login & signup (#189)
* Signup requires valid EIP-712 signature. Refactor some auth reducer nomenclature for consistency.

* Add auth endpoint for logging in that checks for valid signature, like create user.

* Fix tests, move dummy data into test_data.py.

* No strict slashes.
2018-11-07 14:08:42 -05:00
AMStrix d8eba48847 Readable Proposal URLs (#190)
* proposal_id -> proposal_address & exposed proposal_id is prooposal.id

* FE proposalId to number + proposalUrlId generation and use
2018-11-07 12:33:19 -05:00
Daniel Ternyak d3191c6cd8
Fix Migrations (#176) 2018-11-04 23:03:43 +01:00
AMStrix 2e743cc5a5 Standardize Backend Serialization (#175) 2018-11-04 19:33:22 +01:00
William O'Beirne 118d7b645e
Proposal updates (#171)
* Add models & endpoints

* Implement proposal updates.

* Reset state on close. Add missing key. Prompt on close if they will lose stuff.

* Dont warn if they submitted.
2018-11-02 12:24:28 -04:00
William O'Beirne cdc3ea0107
Email verification (#172)
* Add email_verification table and endpoints, setup email verification page, adjust emails to actually verify.

* Add User.create method
2018-11-02 12:07:06 -04:00
AMStrix 7c651be138 Admin adjustments (#167)
* disable admin delete user & proposal endpoints

* handle absence of web3 gracefully
2018-11-02 02:35:14 +01:00
AMStrix d4298e62cc Admin (#164)
* admin backend

* admin ui

* tslint ignore contracts

* fix name

* build & serve
2018-10-30 12:35:47 -04:00
AMStrix 2d75150dff Profile edit (#160)
* cleanClone helper

* redux/store support for user update

* ProfileEdit and supporting UI

* ts fix

* fix spelling

* backend update user basics

* delete photo

* remove comments

* ignore leftover errors from previous update attempts

* fix ts unused arg

* make update user endpoint params optional

* connect ProfileUser for authUser & updateUser

* improve cleanClone function
2018-10-30 10:40:21 -04:00
Daniel Ternyak 357b4248c7
Tighten Backend Patterns (#159) 2018-10-22 17:31:33 -05:00
Daniel Ternyak abc824b17e
EIP-712 User Authorization (#138)
* example auth service

* prep for merge

* MVP signed transaction based auth

* update auth service endpoint and delete checked-in auth service

* add readme explanation for AUTH_URL

* rename eip-712 headers

* fix test errors
2018-10-20 00:18:27 -05:00
William O'Beirne e63b03e5c3 Email Scaffolding + Signup Email (#153)
* Scaffolding for emails + signup email.

* Better docs and handling around config
2018-10-19 17:20:51 -05:00
William O'Beirne 7ca1fc8de4 User Authentication UI (Pt 2 - Real Users) (#125)
* Check in auth flow work.

* More work on auth steps. Check in before redux state.

* Create auth reducer and actions

* Stubbed out profile page to test auth aware routes. Minor style fixes.

* Fill out provider components

* Handle missing origin

* Fix reducer mistake. Show user info in profile page.

* Reflect auth state in header.

* tslint

* Actual user creation.

* Implement sign in

* Fix redux types.
2018-10-01 18:22:56 -05:00
Daniel Ternyak 9e0ecaef02
User Resource Enhancements (#113)
* add tests to ensure already existing users get associated with a new proposal when they are specified in team

* serilaize avatar, social_medias on user; add tests

* add user resource GET API; test

* remove commented out serializer stuff
2018-09-26 14:42:40 -05:00
Daniel Ternyak 28d0ab76e6
Backend Regression Tests (#112) 2018-09-26 14:35:22 -05:00
Daniel Ternyak 0510cf3c8d
Fix Proposal Create 2018-09-26 03:46:30 -05:00
Daniel Ternyak 397079869a
"Fuller" Users (#96)
* check in progress

* revert

* fix up API, add tests

* remove unused milestone commands

* support filtering users via proposalId

* get UI working

* refactoring / add minimum team size.

* fix proposal create API to properly support both email and account based
2018-09-25 15:09:25 -05:00
Daniel Ternyak 0e3302ccfe
Update test_api.py 2018-09-18 17:59:04 -05:00
Daniel Ternyak 6613d99e8a
Route Enhacements (#70) 2018-09-18 17:20:17 -05:00
Daniel Ternyak 02d703a32a
Create Proposal Comment API (#29)
* Create Proposal Comment API
Flesh out Testing Frameworks
Create initial test

* add flask_testing to requirements.txt

* Fix test client table setup in sqlite.

Apparently there are some issues when using flask with sqlite in memory, so simply persisting sqlite to disk fixes migrations.

* Fix resource creation status codes 204 -> 201.

* Fix and add tests

* add signing stub

* remove front-end changes
2018-09-18 17:17:34 -05:00
Will O'Beirne 08afe6cec2
Start ganache. Example test for python to pass. 2018-09-11 16:00:15 -04:00
Daniel Ternyak 2f513d0ce6
initial commit 2018-09-10 11:55:26 -05:00