Commit Graph

52 Commits

Author SHA1 Message Date
Yoga Pangestu
98d30a80e6 feat: Implement granular access control and permissions for Filament widgets, pages, and data change requests using Filament Shield and a new policy. 2026-01-29 15:05:26 +07:00
Yoga Pangestu
3285fa196c refactor: extract dashboard filter reset logic into a dedicated method that also clears session filters. 2026-01-29 13:32:34 +07:00
Yoga Pangestu
c507d0f8ef refactor: remove resetFilters method and inline filter reset logic directly into the dashboard button action. 2026-01-29 13:28:42 +07:00
Yoga Pangestu
a62ea370f4 feat: Implement global date range filtering across all dashboard widgets and add corresponding UI controls to the dashboard page. 2026-01-29 10:52:20 +07:00
Yoga Pangestu
8f1cb16dc9 feat: Introduce custom dashboard page with date range filters. 2026-01-29 10:36:26 +07:00
Yoga Pangestu
c3166bfdee chore: Adjust the navigation sort order for various Filament pages and resources. 2026-01-29 10:02:33 +07:00
Yoga Pangestu
2626d890a4 feat: introduce a comprehensive data change request and review system with new Filament resources, models, migrations, and actions for managing data changes. 2026-01-29 09:44:52 +07:00
Yoga Pangestu
0757696f24 chore: Update email placeholders and refine the journalist resource empty state description. 2026-01-28 09:06:29 +07:00
Yoga Pangestu
9c9d13368b chore: update login form placeholder email 2026-01-28 08:54:46 +07:00
Yoga Pangestu
d355af39af refactor: reorder class properties and apply minor formatting adjustments across Filament pages. 2026-01-28 08:53:33 +07:00
Yoga Pangestu
3f0529a53e refactor: Reorder static properties and adjust function syntax in Filament resources and pages for consistency. 2026-01-27 20:47:04 +07:00
Yoga Pangestu
b4c6ed7229 refactor: Remove commented-out sendEmailVerificationNotification method for cleaner code 2026-01-19 10:56:36 +07:00
Yoga Pangestu
3ba104c1a1 refactor: Replace hardcoded role checks with RoleEnum for consistency across cooperation and journalist actions 2026-01-19 10:48:44 +07:00
Yoga Pangestu
b522b4ff6f feat: Implement CheerfulNotification for login, registration, and email verification processes to enhance user experience and feedback. 2026-01-19 10:34:07 +07:00
Yoga Pangestu
8ddad47c01 refactor: Replace Notification with CheerfulNotification for improved user feedback and enhance error logging in various services 2026-01-19 09:52:32 +07:00
Yoga Pangestu
6574684f46 refactor: Update modal headings and descriptions for clarity, enhance date formatting, and improve user notifications in verification processes. 2026-01-19 09:40:46 +07:00
Yoga Pangestu
ee39b1f33a feat: Send cheerful notification to super admins upon new user registration. 2026-01-19 09:01:10 +07:00
Yoga Pangestu
098d3d0df2 refactor: move Filament login and registration pages to an Auth subdirectory. 2026-01-19 08:37:22 +07:00
Yoga Pangestu
95562c87fb refactor: change Auth:: to auth()-> and remove comment /** @var \App\Models\User $user */ 2026-01-14 09:55:52 +07:00
Yoga Pangestu
ab318a030b feat(notification): enhance user notifications for cooperation and verification processes
- Added detailed notifications for users and admins upon acceptance, rejection, and submission of proposals, verifications, and reports.
- Improved user experience with personalized messages and actionable links in notifications.
- Refactored notification logic across various actions to ensure consistent messaging and clarity.
- Introduced new notification titles and bodies to better reflect the status of actions taken.
2026-01-13 15:53:07 +07:00
Yoga Pangestu
c397ff3c55 fix: change name action to camel case 2026-01-13 08:22:33 +07:00
Yoga Pangestu
fefa67cb11 fix(company and media): change return type in attachment 2026-01-12 15:23:27 +07:00
Yoga Pangestu
6fe5e81717 refactor: add type hinting to closures and fix logic errors in Filament codebase
- Added comprehensive parameter and return type hinting to closures across various Filament resources, actions, and relation managers to improve type safety and static analysis.
- Fixed logic in ReportRelationManager where report count was incorrectly compared, preventing the 'Buat Laporan' button from showing correctly.
- Corrected namespaces for RepeatableEntry and TextEntry in ViewCooperation (changed from Filament\Schemas to Filament\Infolists).
- Fixed component rendering in JournalistResource form by ensuring sections are correctly returned in the mapping.
- Added @var docblocks to resolve lint errors related to auth()->user() and verified query builder return types.
- Standardized file retrieval logic in PartnerResource and improved overall code reliability."
2026-01-12 15:17:21 +07:00
Yoga Pangestu
c793c8e67a refactor: standardize action naming conventions and organization
- Refactor custom Filament actions into resource-specific subfolders (Cooperation, Proposal, Report).
- Standardize all action identifiers to snake_case for consistency.
- Move action identifiers directly into ::make('name') calls.
- Remove getDefaultName() from custom action classes to favor explicit naming.
- Update relation managers and resources to use the new namespaced action classes.
- Standardize closure syntax (fn) and string formatting across schemas and actions.
2026-01-12 13:20:56 +07:00
Yoga Pangestu
9ca4e68de9 refactor: implement local scopes for enums with #[Scope] attribute across models
- Added local scopes for Enum-based fields (status, type, decision) in models: Cooperation, VerificationRequest, PartnerMedia, CooperationProposal, CooperationMedia, and VerificationReview.
- Refactored query logic in Commands, Services, and Filament Resources to use the new scopes for better readability and maintainability.
- Added specific pivot status scopes in PartnerMedia model for cleaner relationship filtering.
- Fixed incorrect Enum usage in ViewCooperation.php during the refactoring process.
- Standardized code style for closures and string concatenation in the modified files.
2026-01-12 11:14:22 +07:00
Yoga Pangestu
2d362b54dc feat: Remove custom page classes for login, registration, media, company, and verification management 2026-01-12 09:46:54 +07:00
Yoga Pangestu
57eece15db feat: Add navigationSort property to various resources for improved navigation order 2026-01-08 14:14:23 +07:00
Yoga Pangestu
69c86e5d3c Refactor verification process and UI updates
- Updated JournalistResource to conditionally display actions based on user roles and verification status.
- Modified ManageJournalists page to hide header actions if verification request status is not NEED_REVISION.
- Changed CategoryResource navigation label from 'Kategori Berita' to 'Kategori'.
- Adjusted ManageCategories page to reflect the new category label and modal headings.
- Refactored Company model to change verificationRequest relationship from MorphOne to HasOne.
- Removed verificationRequest method from Journalist and PartnerMedia models.
- Updated VerificationRequest model to change verifiable relationship from MorphTo to BelongsTo.
- Introduced VerificationService to handle verification logic, including data completeness checks and submission processes.
- Created a new migration to adjust the verification_requests table structure.
- Enhanced admin verification view to display detailed verification progress and review history.
- Updated company and media forms to conditionally show the save button based on verification request status.
2026-01-08 13:55:37 +07:00
Yoga Pangestu
bd122f77b9 feat: Add navigation badge for pending verification requests and implement pending scope in VerificationRequest model 2026-01-08 09:42:40 +07:00
Yoga Pangestu
57ed5e3cda feat: Implement policy classes for Category, Contact, and Visitor with authorization methods 2026-01-08 09:11:30 +07:00
Yoga Pangestu
926d25d6cf refactor: Remove navigationSort property from various Filament resource classes for cleaner code 2026-01-08 08:40:18 +07:00
Yoga Pangestu
3ae2054ebd feat: Implement contact management system with email reply functionality and database migration 2026-01-06 09:37:55 +07:00
Yoga Pangestu
a0da450e52 feat: Enhance form fields with autofocus, disabled autocomplete, and placeholders for better UX. 2026-01-05 15:03:09 +07:00
Yoga Pangestu
0ffc7a1d92 feat: Implement Spatie Laravel Settings with Filament pages for general, SEO, and social media management. 2026-01-05 11:57:56 +07:00
Yoga Pangestu
3760eeb00d fix: Improve Filament component behavior, update dependencies, and adjust styling. 2026-01-05 09:29:57 +07:00
Yoga Pangestu
eb72bac3cb refactor: update internal Filament navigation to use getUrl() methods and remove redundant getRedirectUrl() implementations. 2026-01-05 09:18:10 +07:00
Yoga Pangestu
b4d2ae52f0 feat: Implement a comprehensive verification system with dedicated pages, models, and UI components for companies, media, and journalists. 2025-12-22 15:00:19 +07:00
Yoga Pangestu
904552bd68 feat: Restrict company user access to media and journalist management until company and partner media data is complete, and remove journalist permissions from seeders. 2025-12-19 15:33:10 +07:00
Yoga Pangestu
ccc5d36c0e feat: Implement email verification for user registration. 2025-12-19 14:31:54 +07:00
Yoga Pangestu
79893f0177 fix: Corrected accepted file types for image uploads from images/* to image/* and adjusted minor code formatting. 2025-12-16 14:30:29 +07:00
Yoga Pangestu
630cbe8893 feat: Make director NIK upload field required. 2025-12-16 14:27:22 +07:00
Yoga Pangestu
825c1b210c style: Apply minor formatting adjustments to anonymous function syntax and string concatenations. 2025-12-16 14:22:06 +07:00
Yoga Pangestu
32afed7f7b feat: Add View:CustomCompany and View:CustomMedia permissions to the "Perusahaan" role. 2025-12-16 14:21:53 +07:00
Yoga Pangestu
cbd36d29e8 feat: Add HasPageShield trait to CustomMedia and CustomCompany pages. 2025-12-16 14:13:24 +07:00
Yoga Pangestu
c7a72a169e feat: implement comprehensive cooperation management module with models, migrations, and Filament resources 2025-12-16 12:37:53 +07:00
Yoga Pangestu
e8061bb41b fix(register): change max length username 2025-12-05 09:25:15 +07:00
Yoga Pangestu
a697511a99 feat(media): implement media crud with custom page
- fic relation parternMedia -> partnerMedia in Company model
- feat model and migration
2025-12-04 15:28:51 +07:00
Yoga Pangestu
5dd5d8316c deat(company): add required file input 2025-12-04 15:27:44 +07:00
Yoga Pangestu
9aa585d8c9 feat(company): implement custom company for 'Perusahaan' role
- crud with custom page
- create model and migration for database schema
- custom view
- company relation from User model
2025-12-04 14:44:46 +07:00
Yoga Pangestu
b5b23a254b fix(register): fix unique validation 2025-12-04 14:23:34 +07:00