Commit Graph

222 Commits

Author SHA1 Message Date
Yoga Pangestu
44ee744615 refactor: Remove sort_order field and its associated logic from location and sub-location models, migrations, and Filament resources. 2026-03-13 09:06:55 +07:00
Yoga Pangestu
1885b2c7a3 refactor: Remove sort_order column and related functionality from classification and sub-classification models, migrations, and Filament resources. 2026-03-13 09:02:19 +07:00
Yoga Pangestu
5968377f5d feat: Add visibility condition for timestamp columns based on user role 2026-03-13 08:23:30 +07:00
Yoga Pangestu
edd0e92971 refactor: modify form field validation by removing journalist email uniqueness and adjusting various text input maximum lengths. 2026-03-12 12:05:46 +07:00
Yoga Pangestu
28ca845adb feat: Enable edit, delete, force delete, and restore actions for all user roles. 2026-03-12 11:59:53 +07:00
Yoga Pangestu
427805ebd1 refactor: Update dashboard layout to a 2-column grid and adjust widget column spans accordingly. 2026-03-12 11:48:37 +07:00
Yoga Pangestu
c2a4964e1e refactor: Remove maxLength constraint from the URL input field in MediaMonitoringForm. 2026-03-12 11:27:44 +07:00
Yoga Pangestu
8ff0317c98 feat: remove email verification from user registration and web routes. 2026-03-03 09:25:59 +07:00
Yoga Pangestu
09c4a83deb feat: implement must verify email 2026-03-02 10:15:20 +07:00
Yoga Pangestu
e4cd88136e feat: Implement local scopes for report statuses in the Report model and update the TaskRealizationChart to filter by ApprovalStatus enum. 2026-02-24 11:11:18 +07:00
Yoga Pangestu
02070f3d5f feat(user): add recordTitleAttribute in resource 2026-02-09 10:46:11 +07:00
Yoga Pangestu
a97c4d9f2d feat: Increase maximum length for link/URL fields in forms and database migrations. 2026-02-04 14:07:13 +07:00
Yoga Pangestu
c547f8f5c1 feat: increase max length for company document and director name fields to 150 characters in both the UI and database. 2026-02-04 14:04:29 +07:00
Yoga Pangestu
d343dbf6f9 refactor(content recap): change data type title from string to text and adjust maxlength validation 2026-02-04 11:04:00 +07:00
Yoga Pangestu
f278a2d9c0 fix(announcement): change width modal 2026-02-02 15:33:27 +07:00
Yoga Pangestu
b1bcb5dd14 feat: Store cooperation banners in a dedicated 'banner' media collection and update display logic to support both new and old storage. 2026-02-02 13:45:50 +07:00
Yoga Pangestu
2d7f4ee0e8 feat: Enhance cooperation and reporting workflows with refined relationships, new payment management, and updated actions. 2026-02-02 11:56:49 +07:00
Yoga Pangestu
693d1f001c feat: Add empty state icons and descriptions to Filament relation managers, update CooperationMedia payment relationship to HasOne, and adjust media manager visibility. 2026-01-30 15:32:31 +07:00
Yoga Pangestu
c4347f980e feat: Conditionally render cooperation table filters based on user role and set the status filter to non-native. 2026-01-30 15:21:10 +07:00
Yoga Pangestu
9a63d33991 refactor: Standardize role checks by using RoleEnum for the 'Developer' role across multiple Filament resources and tables. 2026-01-30 14:56:42 +07:00
Yoga Pangestu
ebd748fe83 feat: Enhance table filter UI by removing default date type selection, setting filter layout above content, and standardizing date/select input styles. 2026-01-30 14:50:22 +07:00
Yoga Pangestu
01fe159d52 fix: Adjust 'Media Terverifikasi' count to reflect company's approved verification status in the OverviewStats widget. 2026-01-30 14:46:40 +07:00
Yoga Pangestu
ca912e5d6a feat: display partner media names as badges in the announcement table using custom state retrieval. 2026-01-30 14:39:10 +07:00
Yoga Pangestu
0d4662086a feat: Restrict TrashedFilter visibility to only the Developer role in various resource tables. 2026-01-30 14:28:42 +07:00
Yoga Pangestu
f06d8d100c refactor: move verification logic from VerificationService to the Verification Filament page. 2026-01-30 14:23:52 +07:00
Yoga Pangestu
9005f9cbec feat: Implement company-based verification status for media and journalist data change requests, and refine admin verification UI/UX. 2026-01-30 13:26:43 +07:00
Yoga Pangestu
94f1a06b44 feat: Filter location and sub-location selections in issue management forms to only display active records. 2026-01-29 21:38:08 +07:00
Yoga Pangestu
ac36fe3051 feat(auth): enforce panel access check and notify inactive users 2026-01-29 21:28:38 +07:00
Yoga Pangestu
dceeabdf7e refactor: Adjust password field to set a default value only on creation and be visible only during creation. 2026-01-29 21:20:35 +07:00
Yoga Pangestu
705dfe6537 feat: Add custom cheerful saved notifications to general, SEO, and social media settings pages. 2026-01-29 21:12:04 +07:00
Yoga Pangestu
69e3db9ce3 refactor: Consolidate journalist statistics into OverviewStats widget, removing dedicated JournalistMetricsStats and JournalistUkwChart widgets and their permissions. 2026-01-29 15:21:03 +07:00
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
2e80c19c19 feat: Implement advanced filtering and Excel export functionality for Cooperation, Issue Management, Media Monitoring, and Content Recap tables. 2026-01-29 13:22:57 +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
9fdba64499 refactor: Use class imports and scope methods for improved readability in chart widgets. 2026-01-29 10:32:13 +07:00
Yoga Pangestu
7d970587fa feat: Add Filament widgets to visualize verification performance and issue distribution by location. 2026-01-29 10:24:56 +07:00
Yoga Pangestu
56535076ad feat: add Popular News and Visitor Traffic Filament chart widgets 2026-01-29 10:23:18 +07:00
Yoga Pangestu
416739e25f feat: add new Filament dashboard widgets for media cooperation ranking, task realization, and cooperation status. 2026-01-29 10:21:48 +07:00
Yoga Pangestu
a44c7181fd feat: Add Filament widgets for journalist metrics, registration trend, and UKW certification status. 2026-01-29 10:19:40 +07:00
Yoga Pangestu
2a7b1cf875 feat: Introduce new Filament chart widgets for media classification, registration trends, type distribution, and top media by journalist count, and update the OverviewStats widget's column span. 2026-01-29 10:17:54 +07:00
Yoga Pangestu
98535a3c03 feat: Add OverviewStats Filament widget to display key statistics for companies, media, journalists, and pending requests. 2026-01-29 10:13:35 +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
27b25f6193 refactor: introduce a reusable BackAction component and apply it to standardize back buttons across various Filament pages. 2026-01-29 09:50:40 +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
7761eaed2e feat: Extract contact reply action into a dedicated class and add a reply status filter to the contact table. 2026-01-27 23:43:50 +07:00
Yoga Pangestu
829b857ce9 feat: Enhance visitor resource filters with improved date pickers and non-native selects, and configure table empty state, default sorting, and filter deferral. 2026-01-27 23:35:45 +07:00
Yoga Pangestu
15024705e0 refactor: remove empty getRelations method from ContentRecapResource 2026-01-27 22:51:03 +07:00
Yoga Pangestu
f041ed98e7 feat: Change MediaMonitoring to HasOne relationship, restrict media_monitoring_id selection in the form to unique entries, and add sub-location and sub-classification columns to the table. 2026-01-27 22:33:25 +07:00
Yoga Pangestu
f159bea411 chore: Remove empty getRelations() method from MediaMonitoringResource. 2026-01-27 21:55:16 +07:00
Yoga Pangestu
e35a4c5985 feat: Automatically assign author ID in news creation form and update news table views column. 2026-01-27 21:45:59 +07:00
Yoga Pangestu
5b19314ef5 refactor: Remove the empty getRelations method from AnnouncementResource. 2026-01-27 21:36:28 +07:00
Yoga Pangestu
d8370430c9 Remove table reordering by sort_order from PartnerResource. 2026-01-27 21:33:06 +07:00
Yoga Pangestu
ef446ef862 feat: Change Company partnerMedia relationship to HasOne and enhance PartnerResource company description display. 2026-01-27 21:32:24 +07:00
Yoga Pangestu
9ce3d72153 refactor: Extract user password reset action into a dedicated ChangePasswordAction class. 2026-01-27 21:24:40 +07:00
Yoga Pangestu
cc210345f0 feat: Add BulkActionGroup and TextInput imports to CategoryResource. 2026-01-27 21:17:42 +07:00
Yoga Pangestu
09717f8652 Remove autocomplete(false) from the location_id select field and reorder the $title property in ManageSubLocations. 2026-01-27 21:14:19 +07:00
Yoga Pangestu
d8cf50ce1f refactor: Rename 'Lokasi' to 'Lokus' and 'Sub Lokasi' to 'Sub Lokus' in Filament resource labels and titles. 2026-01-27 21:11:59 +07:00
Yoga Pangestu
221b301d89 refactor: Remove autocomplete(false) from the classification ID select field. 2026-01-27 21:10:17 +07:00
Yoga Pangestu
394525bcc2 style: Standardize arrow function spacing and apply minor formatting adjustments across several Filament resources. 2026-01-27 21:05:00 +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
337238b518 feat: Add a reset password action to user records with a new password input and notification. 2026-01-27 15:49:56 +07:00
Yoga Pangestu
bf59f1afc6 refactor: Remove recordTitleAttribute from all Filament resource tables. 2026-01-27 15:29:28 +07:00
Yoga Pangestu
f1d1058868 feat: Auto-verify new user emails upon creation and remove recordTitleAttribute and autocomplete(false) from the user resource. 2026-01-27 15:28:14 +07:00
Yoga Pangestu
974d8ac92b feat: Restrict TrashedFilter visibility to the Developer role across multiple Filament resources and apply minor code formatting adjustments. 2026-01-27 15:16:37 +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
ad7789dd3f feat: Add a console command to simulate cooperation time, improve date validation, and refine UI texts and report creation conditions. 2026-01-19 08:23:56 +07:00
Yoga Pangestu
416905af9f fix(task assigmnet): delete locale 2026-01-14 15:47:15 +07:00
Yoga Pangestu
1d52463286 feat(cooperation): refactor workflow and implement payment system
- Refactored cooperation workflow to include manual status transitions.
- Implemented payment tracking with CooperationPayment model and PayAction.
- Updated UpdateCooperationStatusCommand for automatic assignment and verification transitions.
- Removed deprecated date columns (assignment_deadline, verification_deadline).
- Enhanced Filament UI with new actions (Complete, Proceed to Payment, Pay).
- Added CooperationSeeder for testing purposes.
2026-01-14 15:41:23 +07:00
Yoga Pangestu
ad6335542e fix(report): add success notification after report submission 2026-01-14 11:11:24 +07:00
Yoga Pangestu
0055761ab3 refactor: translated format date 2026-01-14 10:47:59 +07:00
Yoga Pangestu
969fc0c4a0 refactor: change display format for date input 2026-01-14 10:42:31 +07:00
Yoga Pangestu
7915e1ce38 feat(cooperation): auto reject when media not responding 2026-01-14 10:41:08 +07:00
Yoga Pangestu
f038da6735 refactor(cooperation): change relation to task assignment from has many to has one and adjust related logic 2026-01-14 10:23:30 +07:00
Yoga Pangestu
627cd694d7 fic(cooperation): change validation date for final_submission_date 2026-01-14 10:20:11 +07:00
Yoga Pangestu
61238444c1 fix: change default action to cheerful action 2026-01-14 10:16:40 +07:00
Yoga Pangestu
6d5479b9f7 fix(cooperation): change validation for final_submission_date 2026-01-14 10:10:55 +07:00
Yoga Pangestu
5ef72831c3 feat(category): use BackedEnum 2026-01-14 09:59:23 +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
2983cd243f refactor: centralize cheerful notifications and cleanup auth calls
- Introduce `CheerfulNotification` utility class to standardize cheerful and expressive notifications across the application.
- Refactor custom "Cheerful" actions (Create, Edit, Delete, etc.) and `DefaultBulkActions` to utilize the new utility class.
- Update all `ToggleColumn` status updates in Master Data modules to use `CheerfulNotification::statusUpdated()`.
- Replace inline `Notification::make()` calls in custom actions (Reply, Crawl News, Cooperation actions) and Resource Pages with `CheerfulNotification` methods.
- Address various lint errors by standardizing the use of the `Auth` facade and improving type hinting for the authenticated `User` model.
2026-01-14 09:54:46 +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
a05e46fd12 fix(announcement): move namespace to top 2026-01-13 08:35:28 +07:00
Yoga Pangestu
283f5de065 feat(partner): add status to table 2026-01-13 08:30:37 +07:00
Yoga Pangestu
c397ff3c55 fix: change name action to camel case 2026-01-13 08:22:33 +07:00
Yoga Pangestu
74122961f8 refactor: remove autocomplete from date pickers in task assignment and cooperation forms
- Removed the autocomplete option from date picker components in CreateTaskAssignmentAction and CooperationForm to enhance user experience and ensure consistent behavior across forms.
- Added type hinting for the Set utility in CooperationForm for improved clarity and type safety.
2026-01-12 15:52:27 +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
95dbcb1c75 refator(partner): change back url in show 2026-01-12 13:25:31 +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