Commit Graph

72 Commits

Author SHA1 Message Date
Yoga Pangestu
03bf59e11e feat: Disable and hide user management actions for the PERUSAHAAN role. 2026-01-05 08:43:33 +07:00
Yoga Pangestu
fa6e2ef92d refactor: rename cooperation resource navigation group to 'Kelola' 2026-01-05 08:41:57 +07:00
Yoga Pangestu
0dcb798894 feat: Add news detail page with view increment and media loading 2026-01-02 23:02:30 +07:00
Yoga Pangestu
5ae26b7036 refactor: replace color mode dropdown menu with a direct light/dark toggle button. 2025-12-24 15:24:15 +07:00
Yoga Pangestu
7fec6751de feat: Introduce NavLink component to refactor Navbar navigation, update authentication button labels, and rename news route to news.index. 2025-12-24 15:21:09 +07:00
Yoga Pangestu
861aff3c78 feat: Implement news listing page with search, filter, and pagination, and update news table schema. 2025-12-24 14:50:26 +07:00
Yoga Pangestu
2eaed7bb27 feat: Install and publish lottie 2025-12-24 14:45:47 +07:00
Yoga Pangestu
19934bbe89 feat: Implement news categories and status management with a new category resource and updated news form fields for excerpt, categories, and status. 2025-12-24 08:56:11 +07:00
Yoga Pangestu
4faaebdc59 feat: Implement Inertia.js with React for a new frontend architecture, including home, posts, and profile pages, along with theme customizations. 2025-12-23 14:27:57 +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
7637bcc8b5 feat: install custom themes 2025-12-22 14:57:21 +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
25b856acde feat: Implement resource locking and add role-based journalist filtering. 2025-12-19 14:54:58 +07:00
Yoga Pangestu
ab4b04b1d8 feat: Set email_verified_at for seeded user. 2025-12-19 14:33:08 +07:00
Yoga Pangestu
ccc5d36c0e feat: Implement email verification for user registration. 2025-12-19 14:31:54 +07:00
Yoga Pangestu
fcc09599e8 feat: add partner view page with detailed infolist and link from cooperation media manager 2025-12-19 14:14:34 +07:00
Yoga Pangestu
ee7192a087 feat: Add role-based navigation badge count for cooperations and update arrow function syntax. 2025-12-16 14:51:57 +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
b88660b8c8 feat: Add force delete and restore actions to Partner and Announcement resources, and apply minor formatting adjustments across several Filament resources and relation managers. 2025-12-16 14:05:04 +07:00
Yoga Pangestu
ff54d97d98 refactor: Standardize anonymous function syntax and update modal width definitions to use Filament's Width enum. 2025-12-16 13:59:46 +07:00
Yoga Pangestu
89f0d511e4 feat: Organize Filament resources with navigation groups, update modal width enum usage, and add clean code documentation. 2025-12-16 13:53:59 +07:00
Yoga Pangestu
2603d90271 feat: Introduce RoleEnum and update user role selection to exclude developer and company roles. 2025-12-16 13:34:16 +07:00
Yoga Pangestu
1fb21e9a5b feat: Add comprehensive permissions for various new resources to the Shield seeder. 2025-12-16 13:26:02 +07:00
Yoga Pangestu
aa77c1c940 feat: Add ContentRecap, Cooperation, IssueManagement, Journalist, MediaMonitoring, News, and Announcement policies. 2025-12-16 13:01:14 +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
b9a266d35a feat(announcement): create AnnouncementMedia model, factory, and migration
- Introduced the AnnouncementMedia model, removing soft deletes for a simplified structure.
- Added AnnouncementMediaFactory for generating test data with relationships to Announcement and PartnerMedia.
- Created migration for the announcement_media table without soft deletes.
2025-12-12 11:30:36 +07:00
Yoga Pangestu
2dbbe62aa9 refactor: standardize icon imports across monitoring and publication tables
- Added the Heroicon import to ContentRecapsTable, IssueManagementTable, MediaMonitoringsTable, and NewsTable for consistency in icon usage across various resources.
2025-12-12 10:51:05 +07:00
Yoga Pangestu
7f1d10f4be refactor: update empty state icons across various resources
- Replaced the default empty state icon 'heroicon-o-bookmark' with specific Heroicon variants for improved visual representation in the Journalist, Partner, Classification, Department, Location, SubClassification, SubLocation, Theme, User, ContentRecaps, IssueManagements, MediaMonitorings, Announcement, and News resources.
- Updated the empty state description to ensure consistency across resources.
2025-12-12 10:11:24 +07:00
Yoga Pangestu
8386ea0d93 feat(models): add relationships to PartnerMedia and User models
- Introduced a many-to-many relationship in PartnerMedia for announcements.
- Added a has-many relationship in User for news authored by the user.
- Implemented an active scope in User for filtering active users.
2025-12-12 10:06:18 +07:00
Yoga Pangestu
2c5b057958 feat(news): implement news resource with CRUD functionality
- Created NewsResource for managing news entries.
- Added pages for creating, editing, and listing news.
- Defined NewsForm schema for news entry forms.
- Configured NewsTable for displaying news records with actions.
- Implemented News model with relationships and soft deletes.
- Added factories for generating test data for news and tags.
- Created migrations for news and tags tables.
2025-12-12 09:48:34 +07:00
Yoga Pangestu
73daf8b80d chore: update composer dependencies to include spatie/laravel-sluggable and spatie/laravel-tags
- Added spatie/laravel-sluggable version 3.7 for slug generation in Eloquent models.
- Added spatie/laravel-tags version 4.10 for tag management functionality.
- Updated composer.lock to reflect new dependencies.
2025-12-12 09:46:48 +07:00
Yoga Pangestu
97cdfd6e0b test: add comprehensive test suite and model factories
- Add HasFactory trait to all model classes for factory support
- Create factory classes for all models (Classification, Company, ContentRecap, Department, IssueManagement, Journalist, Location, MediaMonitoring, MediaMonitoringTheme, PartnerMedia, SubClassification, SubLocation, Theme, User)
- Add unit tests for all models with relationship and attribute validation
- Add unit tests for all enums (Channel, ContentType, IsActive, IssueSentiment, MediaClassification, MediaType, SocialMedia)
- Add feature tests for factory integration and basic application functionality
- Add tests for Filament actions, columns, and media library utilities
- Add tests for model policies (Classification, Theme) and traits (WithComment, WithValue)
- Update phpunit.xml configuration for test environment
- Add test documentation and working tests reference guide
- Add ContentType enum casting to ContentRecap model
- Add MediaMonitoringTheme relationships and factory support
- Establish comprehensive testing infrastructure for improved code quality and reliability
2025-12-11 14:50:37 +07:00
Yoga Pangestu
7522056280 feat: ignore .kiro 2025-12-11 11:34:22 +07:00
Yoga Pangestu
ae31d8f37f feat: Introduce Issue Management module, refactor enum implementations, and remove rich editors from location forms. 2025-12-11 10:41:43 +07:00
Yoga Pangestu
f9f1e60b2e feat(content recap): implement crud
- create model and migration
- relation to classification
- create resource
- create enum for support option
2025-12-09 15:36:50 +07:00
Yoga Pangestu
2f2de29dd5 refactor(provider): change navigationSort fot FilamentShieldPlugin to 999 2025-12-09 11:28:45 +07:00
Yoga Pangestu
a6ea4cfdc5 feat(media monitoring): implement crud
- create enums for channel
- create model and migration
- create many to many relation to theme
- feat resource
2025-12-09 11:27:59 +07:00
Yoga Pangestu
6161126d9f refactor(theme): change label airing proof theme to theme only 2025-12-05 09:59:02 +07:00
Yoga Pangestu
e9513b7634 feat(partner): partner page 2025-12-05 09:46:47 +07:00
Yoga Pangestu
2eb99fa9c7 feat(seeder): add 'Administrator' and 'Perusahaan' role 2025-12-05 09:46:23 +07:00
Yoga Pangestu
e8061bb41b fix(register): change max length username 2025-12-05 09:25:15 +07:00
Yoga Pangestu
facd36688e refactor(action): move bulk action to class and used it in module and adjust emptyStateDescription 2025-12-05 09:21:24 +07:00
Yoga Pangestu
2f8c862ee9 fix(journalist): remove $this 2025-12-05 09:09:44 +07:00
Yoga Pangestu
0167811e47 feat(table): move timestamp column to Columns Folder and adjust in module 2025-12-05 09:02:43 +07:00
Yoga Pangestu
0341d452a0 feat(journalist): implement journalist crud and create migration and model 2025-12-05 08:53:27 +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