=== Jock On Air Now (JOAN) === Contributors: ganddser Donate link: https://gandenterprisesinc.com Tags: radio, schedule, broadcast, jock, host Requires at least: 5.0 Tested up to: 6.8 Requires PHP: 7.2 Stable tag: 6.0.2 License: GPLv2 or later License URI: https://www.gnu.org/licenses/gpl-2.0.html The ultimate radio station scheduling plugin. Manage DJs, display current shows, and engage your audience with real-time on-air information. == Description == **🎙️ Transform Your Radio Station's Online Presence** Jock On Air Now (JOAN) is the most comprehensive WordPress plugin for radio stations, offering professional schedule management with intelligent features that adapt to your content. From small internet radio stations to major broadcasting networks, JOAN delivers. **✨ Revolutionary Features in Version 6.0:** **🎯 Smart Display System** - **NEW**: Intelligent image positioning - **UPDATED**: Customizable widget title centering and custom text options - **NEW**: Real-time green/red notification system with visual feedback - **NEW**: Auto-timezone detection with visitor override capability - **ENHANCED**: Mobile-optimized responsive design for all devices - **ENHANCED**: Clean, professional styling with modern UX **📅 Advanced Schedule Management** - **NEW**: Visual weekly schedule editor with inline editing capabilities - **UPDATED**: WordPress media library integration for seamless image management - **UPDATED**: Clickable show/jock links throughout all displays - **NEW**: Support for overnight shows (11 PM to AM next day) **🔗 Enhanced User Experience** - **NEW**: Three powerful shortcodes: `[joan-now]`, `[joan-schedule]`, `[schedule-today]` - **NEW**: Real-time AJAX updates with proper error handling - **UPDATED**: "What's on today" focused daily schedule view - **ENHANCED**: WordPress widgets integration with customization options - **ENHANCED**: Professional admin interface with modern design **🎨 Advertisement & Partnership System** - **NEW**: Partner advertisement management with lazy loading - **NEW**: Cached advertisement system for optimal performance - **UPDATED**: Support for multiple advertising partners - **NEW**: Fallback text support for failed image loads **⚡ Modern Technical Foundation** - **REBUILT**: Complete codebase redesign - **NEW**: Enhanced security with proper nonce verification - **NEW**: Multisite compatibility with improved performance - **NEW**: SEO-friendly markup throughout - **IMPROVED**: Cross-browser compatibility and WordPress optimization - **NEW**: Button loading states and notification positioning Perfect for radio stations, podcasters, streaming services, TV stations, and any organization needing sophisticated scheduling capabilities with professional presentation. == Installation == 1. **Upload** the `joan` folder to `/wp-content/plugins/` directory 2. **Activate** the plugin through WordPress 'Plugins' menu 3. **Configure** your schedule at *JOAN > Schedule Manager* 4. **Add shows** using the intuitive form interface 5. **Display** current show with `[joan-now]` shortcode or widget 6. **Show full schedule** with `[joan-schedule]` or `[schedule-today]` 7. **Customize** display options in *JOAN > Display Settings* 8. **Manage** advertisements in *JOAN > Advertisements* (optional) == Frequently Asked Questions == = How do I display the current on-air show? = Use the `[joan-now]` shortcode anywhere on your site, or add the JOAN widget to your sidebar. The display automatically updates and shows the currently scheduled content with smart image positioning. = What shortcodes are available? = - **`[joan-now]`** - Displays currently scheduled show with jock info and smart image positioning - **`[joan-schedule]`** - Shows complete weekly schedule in table format with clickable links - **`[schedule-today]`** - Displays only today's schedule with current show highlighting titled "What's on today" = How does the smart image positioning work? = JOAN automatically positions images based on their dimensions: - **100-250px wide**: Displayed to the right of show information - **250-300px wide**: Centered below show details, above "Up Next" - **Other sizes**: Standard placement with 300px maximum width = Can I customize the widget title and centering? = Yes! In JOAN Settings > Display Options, you can: - Enable "Center Widget Title" to center all widget titles - Set a custom default title (e.g., "Live Now", "On Air", "Currently Playing") - Individual widgets can still override the title if needed = What are the partner advertisements and can I disable them? = Partner advertisements help support JOAN plugin development and showcase useful services for radio stations. You can: - Enable/disable advertisements in JOAN > Advertisements - Advertisements are cached and lazy-loaded for optimal performance - All ads include fallback text if images fail to load - The advertisement system is completely separate from main plugin functionality = Can visitors see times in their local timezone? = Yes! JOAN detects visitor timezones automatically and provides a dropdown for manual override. All times display in the visitor's preferred timezone. = My schedule from version 5.x isn't showing = **⚠️ IMPORTANT**: Version 6.0.0 is a complete redesign. Schedules from versions 5.9.0 and below cannot be automatically imported. Please save your existing schedule information before upgrading, as you'll need to re-enter your shows after updating. = How do I add clickable links to shows? = In the admin schedule manager, simply enter a URL in the "Jock Link" field. This link will appear on the show name throughout all schedule displays and open in a new tab. = Can I backup my schedule data? = Schedule backup and export functionality is available exclusively in **JOAN Premium**. This professional feature allows you to export, backup, and transfer schedules between sites with ease. = Can I customize the appearance? = Yes! JOAN includes clean CSS classes for customization. The plugin follows WordPress design standards and integrates seamlessly with most themes. Premium users get additional styling options and custom layouts. == Screenshots == 1. **Schedule Manager** - Modern admin interface with inline editing and smart notifications 2. **Full Schedule Display** - Professional weekly schedule with clickable links and highlighting 3. **General Settings Tab** - Manage your station timezone, format, allow visitors to use their own timezone 4. **Display Options** - Decide what visitors see on your widget 5. **Schedule Control Tab** - Activate, deactivate your schedule, customize your off air message 6. **What's on today -** - Shows the shows scheduled for each day 7. **Jock on Air Now Widget** - Shows the show and host/DJ currently on air and (optionally) the upcoming show 8. **Smart Notifications** - Informs you of admin actions on schedule manager 9. **Custom CSS Editor** - Use your own CSS to style JOAN widgets and schedules 10.**Help Tab** - We've added a help tab so you don't have to leave the plugin to get basic assitance for JOAN == Changelog == = 6.0.0 - 2025-08-06 = **🚨 BREAKING CHANGE: Complete Plugin Redesign** * **WARNING**: Schedules from versions 5.9.0 and below cannot be imported. Please save your schedule information before upgrading. **🎨 NEW DISPLAY FEATURES** * **NEW**: Widget title centering option in Display Settings * **NEW**: Custom widget title text setting (default "On Air Now") * **NEW**: Advertisement management system with partner integrations * **NEW**: Lazy-loaded and cached advertisements with fallback support * **IMPROVED**: "Today's Schedule" label changed to "What's on today" for better UX * **IMPROVED**: Mobile responsiveness for all widget sizes * **ADDED**: Cache management system for optimal performance **🎯 CORE REDESIGN FEATURES** * **NEW**: Complete visual admin interface redesign with modern UX * **NEW**: Smart image positioning system * **NEW**: Real-time green/red notification system * **NEW**: Clickable show/jock links in all schedule displays (`[joan-schedule]`, `[schedule-today]`) * **NEW**: Updated `[schedule-today]` shortcode with current show highlighting * **NEW**: Inline editing with immediate visual feedback * **NEW**: Auto-timezone detection with visitor override capability * **NEW**: Mobile-optimized responsive design throughout * **IMPROVED**: AJAX performance with proper error handling and timeout management * **IMPROVED**: Database schema optimization and legacy cleanup * **IMPROVED**: Security enhancements * **FIXED**: Cross-browser compatibility improvements = 5.9.0 - 2024-12-15 = * Updated for compatibility with WordPress 6.8 * Fixed: Minor timezone handling errors * Improved: Better admin feedback and schedule stability * Updated: Deprecated code modernization = 5.8.1 - 2024-10-22 = * Improved localization support * Minor performance optimizations * Enhanced error handling = 5.8.0 - 2024-09-10 = * Enhanced widget display options * Improved mobile responsiveness * Added basic timezone support * Fixed: Schedule display issues on some themes = 5.7.2 - 2024-07-18 = * WordPress 6.6 compatibility * Security improvements * Performance optimizations * Bug fixes for edge cases = 5.0.0 - 2024-01-15 = * Major interface redesign * Improved shortcode functionality * Enhanced admin experience * Better mobile support == Upgrade Notice == = 6.0.0 = **⚠️ CRITICAL UPGRADE NOTICE**: This is a complete plugin redesign with major new features including smart image positioning, widget customization, advertisement management, and enhanced display options. **BACKUP YOUR CURRENT SCHEDULE** before upgrading! Schedules from versions 5.9.0 and below cannot be automatically imported and will need to be re-entered. This version includes major improvements in user experience, functionality, modern coding standards, and professional broadcasting capabilities. = 5.9.0 = Recommended update for WordPress 6.8 compatibility. Includes important bug fixes and performance improvements. == Premium Features - JOAN Premium == **🚀 Take Your Radio Station to the Next Level** Upgrade to JOAN Premium for professional broadcasting features: **🎯 Advanced Management** * **Schedule Backup & Export** - Backup and transfer schedules effortlessly with one-click export/import * **Social Media Integration** - Auto-post current shows to Facebook & Twitter * **User Role Management** - Designate staff to manage schedules without full admin access * **Multi-site Support** - Manage multiple stations from one dashboard **🎨 Enhanced Display Options** * **Multiple Layout Options** - Grid view, list view, and custom layouts * **Advanced Image Features** - Automatic resizing, default jock images, custom dimensions * **24-Hour Format Support** - Professional time display options * **Custom Styling Options** - Brand colors, fonts, and layout customization **⚡ Professional Tools** * **Bulk Schedule Operations** - Duplicate shows, mass updates, recurring schedules * **Advanced Shortcodes** - Additional display options and filtering * **Show Status Management** - Live, recorded, repeat indicators * **Analytics Integration** - Track listener engagement with schedules **🛠️ Premium Support** * **Priority Support** - Direct access to our development team * **Lifetime Updates** - Never pay for upgrades again * **Early Access** - Beta features and new releases first * **Custom Development** - Request specific features for your station **💰 Investment Protection** * **One-time Purchase** - No recurring subscription fees * **Lifetime License** - Use forever with unlimited updates * **30-Day Money Back** - Risk-free upgrade guarantee * **Multi-site Licensing** - Manage all your properties **Purchase exclusively from our website:** [JOAN Premium](https://gandenterprisesinc.com/premium-plugins/ "Upgrade to JOAN Premium - Professional Broadcasting Features") *Transform your radio station's digital presence with professional-grade scheduling and display capabilities.*