ryan
0d651129cb
feat: Implement account deletion (mark for removal) feature
...
Gitea Actions Demo / build-and-push (push) Successful in 23s
- Added `marked_for_deletion` and `marked_for_deletion_at` fields to User model (Python and TypeScript) with serialization updates
- Created POST /api/user/mark-for-deletion endpoint with JWT auth, error handling, and SSE event trigger
- Blocked login and password reset for marked users; added new error codes ACCOUNT_MARKED_FOR_DELETION and ALREADY_MARKED
- Updated UserProfile.vue with "Delete My Account" button, confirmation modal (email input), loading state, success/error modals, and sign-out/redirect logic
- Synced error codes and model fields between backend and frontend
- Added and updated backend and frontend tests to cover all flows and edge cases
- All Acceptance Criteria from the spec are complete and verified
2026-02-06 16:19:08 -05:00
ryan
47541afbbf
Add unit tests for LoginButton component with comprehensive coverage
Gitea Actions Demo / build-and-push (push) Successful in 46s
2026-02-05 16:37:10 -05:00
ryan
fd70eca0c9
feat: add restriction to prevent deletion of system tasks and rewards
...
Gitea Actions Demo / build-and-push (push) Successful in 23s
- Implemented logic to hide delete button for system tasks and rewards in ItemList.vue, TaskView.vue, and RewardView.vue.
- Added backend checks in task_api.py and reward_api.py to return 403 for delete requests on system items.
- Ensured that items without a user_id are treated as system items across frontend and backend.
- Updated acceptance criteria to include UI and backend tests for the new functionality.
2026-02-03 14:54:38 -05:00
ryan
99d3aeb068
refactor: Update layout and styling components; remove unused CSS files and enhance button styles
Gitea Actions Demo / build-and-push (push) Successful in 46s
2026-02-02 23:53:04 -05:00
ryan
5351932194
feat: Enhance task and reward assignment logic to prioritize user items over system items with the same name; add corresponding tests
Gitea Actions Demo / build-and-push (push) Successful in 15s
2026-02-01 23:39:55 -05:00
ryan
e42c6c1ef2
feat: Implement logic to prevent deletion of system tasks and rewards; update APIs and tests accordingly
Gitea Actions Demo / build-and-push (push) Successful in 34s
2026-02-01 16:57:12 -05:00
ryan
f14de28daa
feat: Implement user validation and ownership checks for image, reward, and task APIs
...
Gitea Actions Demo / build-and-push (push) Successful in 36s
- Added `get_validated_user_id` utility function to validate user authentication across multiple APIs.
- Updated image upload, request, and listing endpoints to ensure user ownership and proper error handling.
- Enhanced reward management endpoints to include user validation and ownership checks.
- Modified task management endpoints to enforce user authentication and ownership verification.
- Updated models to include `user_id` for images, rewards, tasks, and children to track ownership.
- Implemented frontend changes to ensure UI reflects the ownership of tasks and rewards.
- Added a new feature specification to prevent deletion of system tasks and rewards.
2026-01-31 19:48:51 -05:00
ryan
6f5b61de7f
feat: normalize email handling in signup, login, and verification processes; refactor event handling in task and reward components
Gitea Actions Demo / build-and-push (push) Successful in 50s
2026-01-28 16:42:06 -05:00
ryan
3066d7d356
feat: add parent PIN setup functionality and email notifications
...
Gitea Actions Demo / build-and-push (push) Successful in 23s
- Implemented User model updates to include PIN and related fields.
- Created email sender utility for sending verification and reset emails.
- Developed ParentPinSetup component for setting up a parent PIN with verification code.
- Enhanced UserProfile and EntityEditForm components to support new features.
- Updated routing to include PIN setup and authentication checks.
- Added styles for new components and improved existing styles for consistency.
- Introduced loading states and error handling in various components.
2026-01-27 14:47:49 -05:00
ryan
cd9070ec99
Refactor build workflow to separate backend and frontend image builds; enhance clarity and structure
Gitea Actions Demo / build-and-push (push) Successful in 36s
2026-01-23 22:10:25 -05:00
ryan
74d6f5819c
Refactor forms to use EntityEditForm component; enhance styles and improve structure
Gitea Actions Demo / build-and-push (push) Failing after 6s
2026-01-23 19:29:27 -05:00
ryan
63769fbe32
Refactor components to use ModalDialog and StatusMessage; update styles and remove unused files
...
Gitea Actions Demo / build-and-push (push) Failing after 9s
- Replaced inline modal dialogs in ParentView with a reusable ModalDialog component.
- Introduced StatusMessage component for loading and error states in ParentView.
- Updated styles to use new colors.css and styles.css for consistent theming.
- Removed ChildRewardList.vue and ChildTaskList.vue components as they were no longer needed.
- Adjusted RewardAssignView and TaskAssignView to use new styles and shared button styles.
- Cleaned up imports across components to reflect the new styles and removed unused CSS files.
2026-01-22 16:37:53 -05:00
ryan
a0a059472b
Moved things around
Gitea Actions Demo / build-and-push (push) Failing after 6s
2026-01-21 17:18:58 -05:00
ryan
a47df7171c
Add detailed Copilot instructions and enhance child API logging
...
Gitea Actions Demo / build-and-push (push) Successful in 14s
- Introduced a comprehensive instructions document for the Reward project, outlining architecture, data flow, key patterns, and developer workflows.
- Enhanced logging in the child API to track points and reward costs, improving error handling for insufficient points.
- Updated Vue components to reflect changes in reward handling and improve user experience with pending rewards.
2026-01-21 16:35:50 -05:00
ryan
59b480621e
refactoring
Gitea Actions Demo / build-and-push (push) Successful in 12s
2026-01-18 21:56:19 -05:00
ryan
904185e5c8
refactoring
Gitea Actions Demo / build-and-push (push) Successful in 12s
2026-01-15 16:42:01 -05:00
ryan
dcac2742e9
refactoring
Gitea Actions Demo / build-and-push (push) Successful in 13s
2026-01-14 14:42:54 -05:00
ryan
c7c3cce76d
added in gitea actions
Gitea Actions Demo / build-and-push (push) Successful in 10s
2026-01-13 16:09:38 -05:00
ryan
7de7047a4d
added in gitea actions
Gitea Actions Demo / build-and-push (push) Successful in 9s
2026-01-13 16:05:34 -05:00
ryan
49c175c01d
added in gitea actions
Gitea Actions Demo / build-and-push (push) Failing after 9s
2026-01-13 16:04:13 -05:00
ryan
35c4fcb9bb
added in gitea actions
Gitea Actions Demo / build-and-push (push) Failing after 8s
2026-01-13 16:03:12 -05:00
ryan
3b1e1eae6d
added in gitea actions
Gitea Actions Demo / build-and-push (push) Failing after 9s
2026-01-13 16:00:51 -05:00
ryan
6cec6bdb50
added in gitea actions
Gitea Actions Demo / build-and-push (push) Failing after 10s
2026-01-13 15:59:29 -05:00
ryan
cc436798d1
added in gitea actions
Gitea Actions Demo / build-and-push (push) Has been cancelled
2026-01-13 15:54:57 -05:00
ryan
cd34d27f76
added in gitea actions
Gitea Actions Demo / build-and-push (push) Has been cancelled
2026-01-13 15:54:16 -05:00
ryan
92020e68ce
added in gitea actions
Gitea Actions Demo / build-and-push (push) Failing after 0s
2026-01-13 15:52:57 -05:00
ryan
7b91d2c8a4
added in gitea actions
Gitea Actions Demo / build-and-push (push) Has been cancelled
2026-01-13 15:38:57 -05:00
ryan
696683cf30
added in gitea actions
Gitea Actions Demo / build-and-push (push) Failing after 9s
2026-01-13 15:37:39 -05:00
ryan
96ccc1b04c
added in gitea actions
Gitea Actions Demo / build-and-push (push) Failing after 7s
2026-01-13 15:36:42 -05:00
ryan
007187020b
added in gitea actions
Gitea Actions Demo / build-and-push (push) Failing after 8s
2026-01-13 15:34:45 -05:00
ryan
39eea3ed07
added in gitea actions
Gitea Actions Demo / build-and-push (push) Failing after 27s
2026-01-13 15:33:36 -05:00
ryan
eac6f4b848
added in gitea actions
Gitea Actions Demo / build-and-push (push) Has been cancelled
2026-01-13 14:54:51 -05:00
ryan
caa28a3a2b
added in gitea actions
Gitea Actions Demo / build-and-push (push) Failing after 7s
2026-01-13 14:51:44 -05:00
ryan
fd5a828084
added in gitea actions
Gitea Actions Demo / build-and-push (push) Has been cancelled
2026-01-13 14:29:52 -05:00
ryan
76091ff06c
added in gitea actions
Gitea Actions Demo / build-and-push (push) Failing after 15s
2026-01-13 14:11:32 -05:00
ryan
4b1b3cedd1
added in gitea actions
Gitea Actions Demo / build-and-push (push) Failing after 6s
2026-01-13 14:07:50 -05:00
ryan
40a835cfd2
added in gitea actions
Gitea Actions Demo / build-and-push (push) Failing after 7s
2026-01-13 14:06:55 -05:00
ryan
a6936ce609
added in gitea actions
Gitea Actions Demo / build-and-push (push) Failing after 10s
2026-01-13 13:59:34 -05:00
ryan
0fd9c2618d
added in gitea actions
Gitea Actions Demo / build-and-push (push) Failing after 16s
2026-01-13 10:35:35 -05:00
ryan
3091c5ca97
added in gitea actions
Gitea Actions Demo / build-and-push (push) Successful in 21s
2026-01-13 10:30:14 -05:00
ryan
ee903f8bd6
added in gitea actions
Gitea Actions Demo / build-and-push (push) Failing after 11s
2026-01-13 10:04:44 -05:00
ryan
c4713dd9ef
added in gitea actions
Gitea Actions Demo / Explore-Gitea-Actions (push) Successful in 11s
2026-01-12 21:22:35 -05:00
ryan
a89d3d7313
starting refactor styling
2026-01-10 22:19:23 -05:00
ryan
9a6fbced15
added password reset
2026-01-07 15:28:07 -05:00
ryan
5b0fe2adc2
added password reset
2026-01-07 15:16:17 -05:00
ryan
fd1057662f
added seperate users for backend events
2026-01-06 16:25:09 -05:00
ryan
d7fc3c0cab
Added beginning of login functionality
2026-01-05 16:58:38 -05:00
ryan
1900667328
Added beginning of login functionality
2026-01-05 16:58:10 -05:00
ryan
03356d813f
Added beginning of login functionality
2026-01-05 16:51:04 -05:00
ryan
f65d97a50a
Added beginning of login functionality
2026-01-05 16:18:59 -05:00
ryan
46af0fb959
Added beginning of login functionality
2026-01-05 15:08:29 -05:00
ryan
3b7798369f
Made changes to CSS and merged together.
2025-12-19 16:44:57 -05:00
ryan
8c656ca6d5
Made changes to CSS and merged together.
2025-12-19 16:30:34 -05:00
ryan
7717c70dd9
Made changes to CSS and merged together.
2025-12-19 16:22:03 -05:00
ryan
990364e651
Made changes to CSS and merged together.
2025-12-18 17:41:00 -05:00
ryan
cee0c922d2
Made changes to CSS and merged together.
2025-12-18 16:44:25 -05:00
ryan
9b71c82c7d
Made changes to CSS and merged together.
2025-12-17 23:38:02 -05:00
ryan
176cf537a6
Made changes to CSS and merged together.
2025-12-17 23:27:46 -05:00
ryan
5fd71f8c94
Made changes to CSS and merged together.
2025-12-17 23:16:20 -05:00
ryan
2402645911
Made changes to CSS and merged together.
2025-12-17 22:50:13 -05:00
ryan
6d506fc636
made some changes for testing (UI)
2025-12-16 20:41:26 -05:00
ryan
712c77f10c
made some changes for testing (UI)
2025-12-16 20:18:15 -05:00
ryan
fca1626921
made some changes for testing (UI)
2025-12-16 17:07:39 -05:00
ryan
946d7d6003
made some changes for testing (UI)
2025-12-16 16:30:44 -05:00
ryan
24f165edec
made some changes for testing (UI)
2025-12-15 16:58:29 -05:00
ryan
4575f46abc
made some changes for testing (UI)
2025-12-15 16:24:09 -05:00
ryan
a40776f55d
added defaults for now.
...
reworked tasks and pending rewards
2025-12-15 15:14:19 -05:00
ryan
3b3d14e454
added defaults for now.
...
reworked tasks and pending rewards
2025-12-15 15:08:27 -05:00
ryan
c375c34ed2
versioning
2025-12-15 13:30:25 -05:00
ryan
9c1af895c4
versioning
2025-12-15 12:18:32 -05:00
ryan
d0378aba9e
versioning
2025-12-15 10:44:16 -05:00
ryan
9742c66fea
versioning
2025-12-15 10:35:50 -05:00
ryan
c23d281832
versioning
2025-12-14 23:43:59 -05:00
ryan
6ac4f70c9e
versioning
2025-12-14 23:41:54 -05:00
ryan
c8336b7a8d
versioning
2025-12-14 23:33:15 -05:00
ryan
0af9ac9c92
versioning
2025-12-14 23:26:39 -05:00
ryan
68a4f1800c
versioning
2025-12-14 23:20:51 -05:00
ryan
596cb97a28
fixed more layout
2025-12-14 21:54:06 -05:00
ryan
5897edc0b8
fixed more layout
2025-12-12 21:47:50 -05:00
ryan
e1736f7a5d
fixed more layout
2025-12-12 16:31:24 -05:00
ryan
f8d709f292
added user images partitioning
2025-12-12 16:17:23 -05:00
ryan
9b90ca12fb
removed junk files
2025-12-12 16:15:41 -05:00
ryan
ad42b6edd0
moving database files
2025-12-10 23:22:21 -05:00
ryan
8f1fa1cf6a
moving database files
2025-12-10 23:14:10 -05:00
ryan
93c88ade01
moving database files
2025-12-10 22:21:00 -05:00
ryan
600e993dfd
added promotion
2025-12-10 17:10:21 -05:00
ryan
eadec67940
added promotion
2025-12-10 16:55:37 -05:00
ryan
2f04fdff9f
added promotion
2025-12-10 16:39:52 -05:00
ryan
168dec7f15
added promotion
2025-12-10 16:29:38 -05:00
ryan
accae56cd1
added promotion
2025-12-10 16:26:36 -05:00
ryan
235a207df6
added promotion
2025-12-10 16:19:18 -05:00
ryan
2e7a7f61cd
added jenkins deployment
2025-12-10 15:33:09 -05:00
ryan
1b76e0e03a
added jenkins deployment
2025-12-10 15:25:04 -05:00
ryan
8704cabed3
added jenkins deployment
2025-12-10 15:23:15 -05:00
ryan
9740db54f7
added jenkins deployment
2025-12-10 15:20:34 -05:00
ryan
80314380cc
added jenkins deployment
2025-12-10 15:18:09 -05:00
ryan
ad5a43310f
added jenkins deployment
2025-12-10 15:16:30 -05:00
ryan
c9bcee437b
added jenkins deployment
2025-12-10 15:11:01 -05:00
ryan
4ae1ba7bed
added jenkins deployment
2025-12-10 15:09:35 -05:00
ryan
6cf243b987
added jenkins deployment
2025-12-10 15:08:40 -05:00