Add a subscription/membership system for activities with defined durations. This includes subscription plans with name, code, duration (e.g., semester, quarter, full year), start/end dates, activity association, and student subscription management (tracking active status, expiry, cancellation, auto-calculated end dates, and multiple subscriptions).
## Feature: Time-Based Subscriptions Add subscription/membership system for activities with defined durations. ### Requirements: - [ ] Subscription plans for activities: - Plan name and code - Duration (e.g., semester, quarter, full year) - Start and end dates - Activity association - [ ] Student subscription management: - Active subscription tracking - Subscription status (active, expired, cancelled) - Auto-calculated end dates based on plan duration - Multiple subscriptions per student - Subscription history - [ ] Automatic status updates: - Auto-expire subscriptions past end date - Status badges (active/expired/upcoming) - [ ] Renewal system: - Renewal reminders before expiration - Easy renewal process - [ ] Subscription reporting: - Active subscriptions by activity - Expiring soon report - Renewal rate tracking ### Benefits: - Track activity participation over time - Know when students' participation ends - Proactive renewal reminders - Better cap