Calendar plugin for AppGini
Calendar plugin for AppGini
The Calendar plugin for AppGini makes it easy to visualize and manage your date-driven records, such as tasks, projects, orders, or events, in a dynamic calendar view. You can add new records directly within the calendar to ensure accurate scheduling and avoid conflicts, and now you can also edit event start times and durations effortlessly by dragging or resizing events for a smoother, more interactive experience.
Switch Between 4 Views: Month, Week, Day, and Agenda
The Calendar plugin lets users seamlessly switch between four distinct views to display events from your database:
- Month view: A full calendar month at a glance.
- Week view: A 7-day layout with a detailed time grid.
- Day view: A focused view of a single day with a time grid.
- Agenda view: A concise list of events for the entire week.
Switching between views is instant and effortless with just a button click, ensuring a smooth and responsive experience.
Flexible, Color-Coded Event Types
The Calendar plugin allows you to create multiple calendars and configure events to either display together in a single calendar or show each event type in its own calendar. You can assign a unique color to each event type, making it easy for users to quickly distinguish between different events at a glance.
Easily View and Edit Event Details
With a simple click on an event, users can open a modal window displaying the detail view of the corresponding record. From there, users can view or edit event details (with the appropriate permissions), and any changes are instantly reflected in the calendar upon closing the modal. Additionally, events can be quickly updated by dragging them to a new start date/time or resizing them to adjust their duration, making event management seamless and intuitive.
Quickly Add New Events Directly in the Calendar
Users with insert permissions can easily create new events by clicking anywhere on the calendar, just like in Google Calendar. The new event's date and time fields are automatically set based on where the user clicked, saving time and streamlining the process.
Fully Customize Calendars to Fit Your Needs
The Calendar plugin offers extensive customization options to adapt to all your use cases:
Custom WHERE Clauses: When creating events, you can define custom SQL
WHERE
conditions to filter records. For example, you could distinguish non-shipped orders (displayed in red) from shipped ones (displayed in green) by creating two separate event types for orders, each with its ownWHERE
clause.JavaScript Handlers: Add JavaScript handlers to new events to dynamically set default values for specific fields based on the event type, streamlining the event creation process.
Custom Calendar Options: Starting with Calendar plugin version 2.0, you can pass custom options to modify the calendar's behavior. For instance, you can hide weekends, limit the displayed time range to working hours, or implement other configurations to suit your requirements.
The plugin is built on the powerful open-source FullCalendar, which features comprehensive and well-organized documentation, making it easy to further tailor the calendar's behavior to your specific needs.
Frequently asked questions
hooks/links-home.php
and hooks/links-navmenu.php
files. The inserted code is wrapped inside easily recognizable comments, and will not overwrite any code you already have in these files.The plugin also modifies the files
hooks/tablename-dv.js
for every table that contains events.We highly recommend that you use Git to manage customized code in your applications.
What's new?
- Calendar 2.0, Jan 6, 2025
What's New
-
Intuitive Event Editing
-
Drag-and-Drop Events: Easily modify event dates by dragging them directly on the calendar.
-
Event Duration Editing: Adjust event durations seamlessly within the calendar interface.
-
Undo Changes: Made a mistake? Quickly undo event updates with the new Undo button.
-
The video below shows dragging an event to another day, undoing that, resizing the event duration, then moving it to a different day.
-
-
Multiple Calendar Management
-
Manage and toggle between separate calendars with synchronized titles and navigation tools.
-
Ideal for organizing events across different categories or contexts.
-
The video below demonstrates enabling the option to use a separate calendar for each event type:
-
-
Custom Calendar Options
-
Added support for passing custom fullCalendar options, allowing greater flexibility in calendar behavior.
-
Examples include:
- Hiding weekends.
- Specifying custom time ranges.
- Adjusting other calendar settings to fit your needs.
-
In the following video, we added custom options to hide weekends (Saturday and Sunday), and limit time range to the interval 8:00 AM to 8:00 PM (20:00):
The code used in the custom fullCalendar options box in the above video is:
hiddenDays: [0, 6], minTime: '8:00', maxTime: '20:00'
-
-
Enhanced Toolbar
- A more mobile-friendly toolbar design.
- Improved UI controls for better usability in separate calendars mode.
Bug Fixes
- Resolved issues with:
- Calendar event refetching.
- Scroll time handling.
- Deprecated date format errors.
- Improved compatibility with file uploads and RTL (Right-to-Left) languages.
- Fixed various UI inconsistencies and functional glitches.
UI Enhancements
- Improved Responsiveness: Optimized for better usability across all devices, with refined grid layouts and padding.
- Enhanced Multiple Calendar Views: Added clear headings and better visual separation between calendars.
- Code Refinements: Refactored logic for improved performance, maintainability, and cleaner styling.
-
- Calendar 1.7, Dec 13, 2023
- Fix PHP 8.x warnings.
- Calendar 1.6, May 4, 2022
- Drop support for IE 8, 9.
- Compatibility with AppGini 22.13.
- Fix error when creating
plugins/projects
folder in some scenarios.
- Calendar 1.5, Oct 31, 2021
- Fixed stored xss vulnerability in calendar event title.
- Fix compatibility issues with PHP 8, 8.1
- Calendar 1.4, Jan 19, 2021
- Compatibility with apps created by AppGini 5.93.
- Calendar 1.3, Dec 2, 2020
- Add plugin version checker/notifier.
- Calendar 1.2, Oct 28, 2020
- Improved handling of non-Latin and accented characters.
- Fix bug with date calculations.
- Add option to configure event text and background colors separately (to avoid display issues with some dark themes).
- Calendar 1.1, Apr 19, 2020
- Fixed a bug where projects with tables that contain a single field failed to load.
- Calendar 1.0, Mar 29, 2020
- First release.