106 Commits

Author SHA1 Message Date
Greg Kaleka
e0fe6d61e1 Integrate Wagtail CMS and set up landing page structure (#2014) 2025-11-21 18:56:59 -05:00
daveoconnor
8cdb57b08c Customize Profile Pic (#1876) (#1994) 2025-11-04 12:08:20 -08:00
daveoconnor
5f022aca0a Upgrade django to 5.2, python to 3.13 (#1915) 2025-10-22 13:24:26 -07:00
daveoconnor
029756e576 Account for CDN with csrf cookie generation (#1958) (#1963) 2025-10-16 11:05:17 -07:00
daveoconnor
724ece3ab9 Fix for github profile PNGs being saved in the root directory (#1930) 2025-10-08 13:59:48 -07:00
Dave O'Connor
bf7041184d Update avatars to add hq_image, use with fiscal committee list (#1869( 2025-09-08 10:05:56 -04:00
daveoconnor
adebb47258 Added contributor email address claim validation (#1710) (#1866) 2025-09-05 13:55:33 -07:00
daveoconnor
e9f93befcd Updated references of boost.io to boost.org (#1870) (#1892) 2025-08-21 11:31:18 -07:00
daveoconnor
0257bc3b9d Refresh user photos from github profiles (#1853) (#1855) 2025-08-01 13:33:35 -07:00
Greg Kaleka
3881237c6f Fix issue with user avatars (#1757) 2025-04-17 11:03:04 -04:00
Greg Kaleka
937c799c7f Don't crash for missing profile image (#1727) 2025-04-03 13:50:20 -04:00
daveoconnor
1344c85617 Link commit authors to users (#1709, #1711) (#1717) 2025-03-31 11:34:25 -07:00
Greg Kaleka
de2cbe97af Add unaccent lookup to username in user admin search (#1692) 2025-03-10 16:24:00 -04:00
Foo Bar
a55111ca74 Use display_name for "username" instead of first_name, last_name (#1640) (#1638) 2025-03-03 11:03:49 -08:00
daveoconnor
c4e6302360 Financial steering committee page member images (#1613) 2025-01-27 10:18:23 -08:00
daveoconnor
91f36c3eeb Simplified/centralised version dropdowns population (#1500) (#1510) 2024-12-10 09:29:50 -08:00
Gavin Wahl
527a5cf83e 10-day grace period for user deletion (#1445) 2024-11-15 08:27:18 -05:00
Greg Kaleka
6b0fafd70e Profile Setting Option to receive email on material Privacy and Terms changes (#1418)
Fixes #986 

- Adds a new notification preference to the existing `Preferences` model
and associated form.
- Adds data migration to populate the new preference
- Adds a new test and modifies several others to reflect the new
preference and its behavior

Note the ability to actually send notification will be added
post-launch. If the need comes up in the meantime, it would be
straightforward to manually trigger a notification to opted-in users.

### Manual testing
UI
<img width="553" alt="Screenshot 2024-11-06 at 9 52 52 AM"
src="https://github.com/user-attachments/assets/e7d8ef21-8e21-4fe4-81b0-2e401d10203f">

Data
<img width="478" alt="Screenshot 2024-11-06 at 10 35 11 AM"
src="https://github.com/user-attachments/assets/44237931-05dd-4c38-972f-057321c93945">

---------

Co-authored-by: Greg Kaleka <gkaleka@energy-solution.com>
2024-11-06 12:35:07 -05:00
Gavin Wahl
3f30722d6b Option to delete user data (#1368)
Fixes #965
2024-10-25 13:49:12 -06:00
daveoconnor
8022c5c969 Resolve issue with avatars on docs/guide page (#1349)
Related to #1307, couldn't reproduce that specific issue, but did see an
issue with the avatar sizing and styling, so added tailwind to docs
template
2024-10-09 17:28:18 -07:00
daveoconnor
274777a2e6 Track user last login option and fixes (#1312)
This also hides the pop up notifications after 6 seconds

For review, a review and merge of #1311 on which this is built would
make this easier to review.
2024-10-04 10:23:25 -07:00
daveoconnor
4c17724f00 Updated login flow to match Figma (#1167, #1128) (#1311)
Includes email for various signup/login related events which we'll need
to ensure there's support for in staging and prod
2024-10-04 10:09:44 -07:00
Brian Perrett
a2771593ce Update avatars. (#1317)
- fixes #1309
2024-10-03 14:16:27 -07:00
Brian Perrett
9bf6f156ad Add ability to highlight new contributors. (#1299)
In the library detail page, if a contributor has never contributed
before the selected release, highlight them as a new contributor.
2024-10-02 13:26:41 -07:00
Brian Perrett
45a3fa7870 Create an avatar tag to be usable anywhere we need an avatar. (#1298)
- fixes https://github.com/boostorg/website-v2/issues/1285
- Use a django tag to render an avatar component.
2024-09-27 15:30:46 -07:00
Kenneth Reitz
ea025f812c Refactor UserProfilePhotoForm to strip leading period from file extension 2024-03-25 16:49:32 -04:00
Lacey Williams Henschel
10298f3ceb Add django-auth-toolkit
- Add task to clear expired oauth tokens
- Add setting for oauth app name
- Add docs
2024-01-23 15:23:34 -08:00
Greg Newman
ae84eb9d77 🐛 sets user on mobile 2023-12-15 09:43:13 -05:00
Lacey Williams Henschel
bdb4af609c Rename user profile photo filename when uploaded
- Add cached property to get user image filename root
- Rename new profile photo in form, update test
2023-12-12 14:13:24 -08:00
Greg Newman
c6d6b85bab adds an api call to get Avatar
The user avatar content in the header is now populated with a htmx get request. The request object is used to show either the join link, avatar or no avatar icon.

Issue: #850
2023-12-08 12:03:36 -05:00
Greg Newman
cdc2824afe 🐛 skip user views tests 2023-12-05 09:35:09 -05:00
Greg Newman
c69b017770 🚧 cleanup from rebases 2023-12-05 09:35:09 -05:00
Lacey Williams Henschel
1148248452 Delete old image file when user uploads new image 2023-11-08 16:06:56 -08:00
Lacey Williams Henschel
8db6603814 Allow admin users to disallow other users from updating profile pictures.
- Add field can_update_image to User model and user admin
- Prevent user from updating photo if they field is false
- Add docs
2023-11-08 11:23:40 -08:00
Lacey Williams Henschel
7507fa50b3 Limit file types of user and news images
- Add file type validator
- Apply validator to user image
- Save validator class to variable
- Add image validator to news image model field
- Add file size validator
- Enable file size validator on news and user model image fields
- Fix test
2023-11-03 10:21:36 -07:00
Lacey Williams Henschel
0519ff98aa Change color of alert when existing contributor tries to create an account 2023-10-20 12:44:46 -07:00
Lacey Williams Henschel
2ede94073c Update message when user has unclaimed account 2023-10-13 12:46:31 -07:00
Lacey Williams Henschel
73c310fd1c Mark users as claimed when they reset passwords
from key

Mark users as claimed when they reset password from profile page

Add method to claim user, and use that method instead

Add docs on unclaimed user accounts
2023-10-06 08:10:30 -07:00
Lacey Williams Henschel
db542663fb Allow user to claim account via password reset when trying to connect via social auth 2023-10-05 06:18:26 -07:00
Frank Wiles
3da73c0229 Remove randomness 2023-10-04 17:08:46 -05:00
Frank Wiles
fa7c5f15cb Github profile image save bug
The original code incorrectly assumed that the User object would
always have a first and last name and that they would be unique across
users.

This changes the filename to be "profile-{user.pk}-{10 random
characters}.png" which should ensure there is no overwritting happening.
2023-10-04 14:46:59 -07:00
Lacey Williams Henschel
f638c3d930 Allow users to claim existing accts via pw reset
- Start intercepting signup process to catch existing, unclaimed users
- Add message for unclaimed user trying to register, refactoring as I figured out what I actually needed to touch.
- Got the happy path working; no tests yet
- Need to add tests, docs, the ability to switch the user to `claimed` once they have successfully reset their password
2023-09-29 14:34:52 -07:00
Lacey Williams Henschel
7e847cc17f - Move GitHub retrieval and parser classes to the core/ app from the libraries/ app; moved tests, too, and updated import statements
- Add `verbose` flag to `import_versions` to allow user to silence the output
- Removed some unused options from `import_versions`
- Moved the exclusion logic in `import_versions` to its own function
- Stop getting the `github_url` from the github API. Instead, generate it from the tag. (reason: in older tags, the best URL GitHub gives us is a less-useful one to a _commit_ and not a tag. We can generate the url, though.)
- Move the retrieval of the `release_date` to its own task, so it can be loaded async. (reason: it's a separate API call per version to get the date)
- Make `release_date` optional on the `Version` model (reason: make the field easier to load async)
- Simplify logic to retrieve `release_date` and just always retrieve it from the commit
- Stop loading the version `description` from GitHub. We don't use it on the frontend anyway, and in all but the most recent couple of versions, the `description` is the comment from the commit, which is usually not useful.
2023-08-31 15:32:16 -07:00
Lacey Williams Henschel
9e23ceb533 Use new template instead of old template 2023-08-08 12:19:46 -07:00
Lacey Williams Henschel
69565648b0 Remove preferences url, old profile templates 2023-08-08 12:19:46 -07:00
Lacey Williams Henschel
ebe07d249e Remove old profile page 2023-08-08 12:19:46 -07:00
Lacey Williams Henschel
ffb20e4c79 Allow logged-in user to connect social accounts
- Add link to social account management from the profile page
- Override allauth templated related to managing social account connections
- Did my best to apply reasonable styles per other pages
2023-08-03 12:42:38 -07:00
Lacey Williams Henschel
ff193d9811 Add first name, last name, and email to profile form 2023-07-28 10:13:06 -04:00
Lacey Williams Henschel
ea2b45b49e Add a single-page profile update form
- Add password reset form to single-page profile
- Add profile photo form to single-page profile
- Add button to import photo from GitHub
- Add preferences form to single-page profile
- Add tests for unauthenticated/authenticated users
- Add tests that forms are present
- Add tests that the forms submit, without changing other data
2023-07-26 15:08:06 -04:00
Frank Wiles
0e2c98817b Remove leftover forum bits 2023-07-18 08:03:09 -05:00