Commit Graph

743 Commits

Author SHA1 Message Date
Tom Russell
f05c1b5552 Use view-only notes 2019-08-23 12:58:40 +01:00
Tom Russell
a9cd7a58ea Location view-only entries 2019-08-23 12:58:40 +01:00
Tom Russell
4fcc256f16 Team view-only notes 2019-08-23 12:58:40 +01:00
Tom Russell
b6ae8f4a55 Sustainability view-only notes 2019-08-23 12:58:40 +01:00
Tom Russell
3dff7cf34b Greenery view-only notes 2019-08-23 12:58:40 +01:00
Tom Russell
19d08c9c97 Community view-only notes 2019-08-23 12:58:40 +01:00
Tom Russell
f3fb8f12e0 Fix back button spacing 2019-08-23 12:58:40 +01:00
Tom Russell
8d7f80ed90 Age data fields - view only 2019-08-23 12:58:40 +01:00
Tom Russell
f26aa19051 Sketch out view-only data components 2019-08-23 12:58:40 +01:00
Tom Russell
1997c34470 Avoid dependency loop
- building-view contained BuildingVIew and withCopyEdit
- and imported each data-container
- which each imported withCopyEdit to create their data-container

seemed okay from ts/webpack dev environment
but failed in jest test
2019-08-23 12:58:40 +01:00
Tom Russell
22db157e6e Create (empty) DataContainers for each category
Fields/children will be written as components, rather than generated declaratively.

BuildingEdit will be folded into the withCopyEdit higher-order-component,
hopefully removing some duplicated structure and functionality.
2019-08-23 12:58:40 +01:00
Tom Russell
c7b7174f55 Fix Sidebar use in multi-edit 2019-08-23 12:56:22 +01:00
Tom Russell
a3254544e7 Pull BuildingNotFound out of view/edit 2019-08-23 12:56:22 +01:00
Tom Russell
566b738f91 Fix building edit details on props change
- EditForm owns form state
- fully uncontrolled component
- when props change (e.g. when clicking on another building) the
  component should completely re-render
2019-08-23 12:56:22 +01:00
Tom Russell
44bd5e67d1 Simplify sidebar container - no title 2019-08-23 12:56:22 +01:00
Tom Russell
1ab015e4df Fix duplicate slug 2019-08-23 12:56:22 +01:00
Tom Russell
7301d6efda Fix category block width 2019-08-23 12:56:22 +01:00
Tom Russell
ae0d7855f7 Style edit/view section header 2019-08-23 12:56:22 +01:00
Tom Russell
dec4801688 Category sidebar block styles 2019-08-23 12:56:22 +01:00
Tom Russell
94d158c59e Pull out categories.css 2019-08-23 12:56:22 +01:00
Tom Russell
1c265b828d Declarative categories list 2019-08-23 12:56:22 +01:00
Tom Russell
43f239c853 Render single section in view/edit 2019-08-23 12:56:22 +01:00
Tom Russell
99456e2431 Move building (sidebar) and map components to nested dirs 2019-08-23 12:56:22 +01:00
Tom Russell
f8f2b5e3e8 Collect user pages in nested subdirectory 2019-08-23 12:56:22 +01:00
Tom Russell
b0f9aa3900 DRYer logo 2019-08-23 12:55:15 +01:00
Tom Russell
b0bfe70e9d Move common components to nested directory 2019-08-23 12:55:15 +01:00
Tom Russell
fefdab7ab4 Move frontend pages to nested directory 2019-08-23 12:54:21 +01:00
Tom Russell
a5447e6ee3 Use React.FunctionComponent when typing 2019-08-23 12:52:25 +01:00
Tom Russell
2127521094
Merge pull request #392 from mz8i/feature/63-delete-account-frontend
Feature 63: delete user account (frontend code)
2019-08-23 12:43:53 +01:00
Tom Russell
a35289d9b8
Merge branch 'master' into feature/63-delete-account-frontend 2019-08-23 12:42:03 +01:00
Tom Russell
df902d21a2
Merge pull request #399 from mz8i/feature/61-forgotten-password
Feature 61: forgotten password
2019-08-23 12:39:41 +01:00
Maciej Ziarkowski
7cc358dcb7 Introduce env variable for webapp origin 2019-08-22 15:56:04 +01:00
Maciej Ziarkowski
a3ab275378 Remove nested state from ForgottenPassword 2019-08-22 14:48:51 +01:00
Maciej Ziarkowski
072128268c Add frontend for forgotten password 2019-08-22 14:40:38 +01:00
Maciej Ziarkowski
2791e7673d Rename tsx file to follow naming convention 2019-08-22 10:48:37 +01:00
Maciej Ziarkowski
6d4c514c00 Remove always failing error commited accidentally 2019-08-22 10:29:40 +01:00
Maciej Ziarkowski
2622269f77 Add global error handler 2019-08-21 14:47:44 +01:00
Maciej Ziarkowski
4d27c3b889 Add controller and route for password reset 2019-08-21 14:47:23 +01:00
Maciej Ziarkowski
fc2666364d Add backend services for password reset 2019-08-21 14:46:14 +01:00
Maciej Ziarkowski
4259778224 Add email service and config template 2019-08-21 14:42:27 +01:00
Maciej Ziarkowski
9c67b46f02 Add password reset token database migrations 2019-08-21 14:20:53 +01:00
Maciej Ziarkowski
54bd565cc8 Split /users into routes/controller/service 2019-08-19 14:31:35 +01:00
Maciej Ziarkowski
28ffdcf19e Improve modal popup CSS 2019-08-16 15:40:38 +01:00
Maciej Ziarkowski
4ad62eb196 Add simple CSS to show/hide modal 2019-08-16 15:20:54 +01:00
Maciej Ziarkowski
423f35958d Add delete account action to my-account page 2019-08-16 13:21:12 +01:00
Maciej Ziarkowski
d54cc5df41 Add ConfirmationModal component 2019-08-16 13:20:44 +01:00
Maciej Ziarkowski
90da2a1522 Add user delete API endpoint
The deleted user username will be changed to 'deleted_'
plus the 13 initial characters of the standard format user_id.
Email, hashed password and API key are all cleared for the user.
The endpoint is currently only available through /api/users/me
and only allows a logged-in user to delete their own account.
2019-08-16 11:12:18 +01:00
Maciej Ziarkowski
1901ebad42 Add user delete database migrations
Apart from adding the delete-related columns, this migration replaces
the existing unique constraint on the username with a unique index
which has a WHERE clause, so that deleted usernames need not be unique.
This is to avoid having to implement a special function for generating
unique IDs just to keep the deleted username unique and under 30 chars.
The deleted username can still use e.g. the initial part of the user_id
but the uniqueness is not required.
2019-08-16 11:12:18 +01:00
Tom Russell
cb64457cca
Merge pull request #386 from mz8i/feature/383-refactor-routes
Refactor API and modify routes
2019-08-16 11:11:39 +01:00
mz8i
b5b72e7152
Switch from express app to router in API
Co-Authored-By: Tom Russell <tomalrussell@gmail.com>
2019-08-16 10:57:15 +01:00