. */ // Run 'Install' script on plugin activation register_activation_hook( __FILE__, 'InstallScript' ); function InstallScript(){ require_once('install-script.php'); } // Translate all text & lebals of plugin add_action('plugins_loaded', 'LoadPluginLanguage'); function LoadPluginLanguage() { load_plugin_textdomain('appointzilla', FALSE, dirname( plugin_basename(__FILE__)).'/languages/' ); } // Admin dashboard Menu Pages For Booking Calendar Plugin add_action('admin_menu','appointment_calendar_menu'); function appointment_calendar_menu() { //create new top-level menu 'appointment-calendar' $menu = add_menu_page('Appointment Calendar', __('Appointment Calendar', 'appointzilla'), 'administrator', 'appointment-calendar'); // Calendar Page $submenu1 = add_submenu_page( 'appointment-calendar', 'Appointment Calendar', __('Appointment Calendar', 'appointzilla'), 'administrator', 'appointment-calendar', 'dispaly_calendar_page' ); // Time sloat Page $submenu2 = add_submenu_page( 'appointment-calendar', 'Manage Time Sloat', '', 'administrator', 'time_sloat', 'dispaly_time_sloat_page' ); // Data Save Page $submenu3 = add_submenu_page( 'appointment-calendar', 'Data Save', '', 'administrator', 'data_save', 'dispaly_datasave_page' ); // Service Page $submenu4 = add_submenu_page( 'appointment-calendar', 'Service', __('Service', 'appointzilla'), 'administrator', 'service', 'dispaly_service_page' ); // manage Service Page $submenu5 = add_submenu_page( 'appointment-calendar', 'Manage Service', '', 'administrator', 'manage-service', 'dispaly_manageservice_page' ); // Time-Off Page $submenu6 = add_submenu_page( 'appointment-calendar', 'Time Off', __('Time Off', 'appointzilla'), 'administrator', 'timeoff', 'dispaly_timeoff_page' ); // Update Time-Off Page $submenu7 = add_submenu_page( 'appointment-calendar', 'Update TimeOff', '', 'administrator', 'update-timeoff', 'dispaly_updatetimeoff_page' ); // Manage Appointment Page $submenu8 = add_submenu_page( 'appointment-calendar', 'Manage Appointments', __('Manage Appointments', 'appointzilla'), 'administrator', 'manage-appointments', 'dispaly_manageappointment_page' ); // Update Appointments Page $submenu9 = add_submenu_page( 'appointment-calendar', 'Update Appointment', '', 'administrator', 'update-appointment', 'dispaly_updateappointment_page' ); // Settings Page $submenu10 = add_submenu_page( 'appointment-calendar', 'Settings', __('Settings', 'appointzilla'), 'administrator', 'settings', 'dispaly_settings_page' ); // Manage Settings Page $submenu11 = add_submenu_page( 'appointment-calendar', 'Manage Settings', '', 'administrator', 'manage-settings', 'dispaly_managesettings_page' ); // Email Settings Page $submenu12 = add_submenu_page( 'appointment-calendar', 'Notification Settings', __('Notification Settings', 'appointzilla'), 'administrator', 'notificationsettings', 'dispaly_notificationsettings_page' ); // Manage Email Settings Page $submenu13 = add_submenu_page( 'appointment-calendar', 'Manage Notification Settings', '', 'administrator', 'manage-notificationsettings', 'dispaly_managenotificationsettings_page' ); // Export Lists $submenu17 = add_submenu_page( 'appointment-calendar', 'Export Lists', __('Export Lists', 'appointzilla'), 'administrator', 'apcal-export-lists', 'dispaly_export_lists_page' ); // Remove Plugin $submenu14 = add_submenu_page( 'appointment-calendar', 'Remove Plugin', __('Remove Plugin', 'appointzilla'), 'administrator', 'uninstall-plugin', 'dispaly_uninstallplugin_page' ); // Get Premium Plugin $submenu15 = add_submenu_page( 'appointment-calendar', 'Get Appointment Calendar Premium Plugin', __('Get Premium Plugin', 'appointzilla'), 'administrator', 'get-premium-plugin', 'dispaly_getpremiumplugin_page' ); //Get Premium Themes //$submenu18 = add_submenu_page( 'appointment-calendar', 'Webriti Premium Themes', __('Get Premium Themes', 'appointzilla'), 'administrator', 'get-premium-themes', 'dispaly_getpremiumthemes_page' ); // Help & Support $submenu16 = add_submenu_page( 'appointment-calendar', 'Help & Support', __('Help & Support', 'appointzilla'), 'administrator', 'help-support', 'dispaly_helpnsupport_page' ); add_action( 'admin_print_styles-' . $menu, 'calendar_css_js' ); //calendar add_action( 'admin_print_styles-' . $submenu1, 'calendar_css_js' ); add_action( 'admin_print_styles-' . $submenu2, 'calendar_css_js' ); add_action( 'admin_print_styles-' . $submenu3, 'calendar_css_js' ); //service add_action( 'admin_print_styles-' . $submenu4, 'otherpages_css_js' ); add_action( 'admin_print_styles-' . $submenu5, 'otherpages_css_js' ); //time-off add_action( 'admin_print_styles-' . $submenu6, 'otherpages_css_js' ); add_action( 'admin_print_styles-' . $submenu7, 'otherpages_css_js' ); //manage app add_action( 'admin_print_styles-' . $submenu8, 'otherpages_css_js' ); add_action( 'admin_print_styles-' . $submenu9, 'otherpages_css_js' ); //calendar settings add_action( 'admin_print_styles-' . $submenu10, 'otherpages_css_js' ); //notification settings add_action( 'admin_print_styles-' . $submenu11, 'otherpages_css_js' ); //manage notification settings add_action( 'admin_print_styles-' . $submenu12, 'otherpages_css_js' ); //settings add_action( 'admin_print_styles-' . $submenu13, 'otherpages_css_js' ); //remove plugin add_action( 'admin_print_styles-' . $submenu14, 'otherpages_css_js' ); //Get Premium plugin add_action( 'admin_print_styles-' . $submenu15, 'otherpages_css_js' ); //help & support add_action( 'admin_print_styles-' . $submenu16, 'otherpages_css_js' ); //export lists add_action('admin_print_styles-' . $submenu17, 'otherpages_css_js'); //get premium themes //add_action('admin_print_styles-' . $submenu18, 'otherpages_css_js'); }//end of menu function function calendar_css_js() { wp_register_script( 'jquery-custom', plugins_url('menu-pages/fullcalendar-assets-new/js/jquery-ui-1.8.23.custom.min.js', __FILE__), array('jquery'), true); wp_enqueue_script('full-calendar-min-js',plugins_url('/menu-pages/fullcalendar-assets-new/js/fullcalendar.min.js', __FILE__),array('jquery','jquery-custom')); wp_register_style('bootstrap-css',plugins_url('/menu-pages/bootstrap-assets/css/bootstrap.css', __FILE__)); wp_enqueue_style('bootstrap-css'); wp_enqueue_style('fullcalendar-css',plugins_url('/menu-pages/fullcalendar-assets-new/css/fullcalendar.css', __FILE__)); wp_enqueue_style('datepicker-css',plugins_url('/menu-pages/datepicker-assets/css/jquery-ui-1.8.23.custom.css', __FILE__)); } function otherpages_css_js() { wp_register_style('bootstrap-css',plugins_url('/menu-pages/bootstrap-assets/css/bootstrap.css', __FILE__)); wp_enqueue_style('bootstrap-css'); wp_enqueue_style('datepicker-css',plugins_url('/menu-pages/datepicker-assets/css/jquery-ui-1.8.23.custom.css', __FILE__)); wp_enqueue_script('tooltip',plugins_url('/menu-pages/bootstrap-assets/js/bootstrap-tooltip.js', __FILE__),array('jquery')); wp_enqueue_script('bootstrap-affix',plugins_url('/menu-pages/bootstrap-assets/js/bootstrap-affix.js', __FILE__)); wp_enqueue_script('bootstrap-application',plugins_url('/menu-pages/bootstrap-assets/js/application.js', __FILE__)); } function shortcode_detect() { global $wp_query; $posts = $wp_query->posts; $pattern = get_shortcode_regex(); foreach ($posts as $post){ if ( preg_match_all( '/'. $pattern .'/s', $post->post_content, $matches ) && array_key_exists( 2, $matches ) && in_array( 'APCAL_PC', $matches[2] ) || in_array( 'APCAL_MOBILE', $matches[2] ) || in_array( 'APCAL', $matches[2] ) ) { wp_register_script( 'jquery-custom', plugins_url('menu-pages/fullcalendar-assets-new/js/jquery-ui-1.8.23.custom.min.js', __FILE__), array('jquery'), true); wp_enqueue_script('full-calendar',plugins_url('/menu-pages/fullcalendar-assets-new/js/fullcalendar.min.js', __FILE__),array('jquery','jquery-custom')); wp_enqueue_script('calendar',plugins_url('calendar/calendar.js', __FILE__)); wp_enqueue_script('moment-min',plugins_url('calendar/moment.min.js', __FILE__)); wp_enqueue_style('bootstrap-apcal',plugins_url('/menu-pages/bootstrap-assets/css/bootstrap-apcal.css', __FILE__)); wp_enqueue_style('fullcalendar-css',plugins_url('/menu-pages/fullcalendar-assets-new/css/fullcalendar.css', __FILE__)); wp_enqueue_style('datepicker-css',plugins_url('/menu-pages/datepicker-assets/css/jquery-ui-1.8.23.custom.css', __FILE__)); break; } } } add_action( 'wp', 'shortcode_detect' ); //calendar page function dispaly_calendar_page() { require_once('menu-pages/calendar.php'); } //time slot page function dispaly_time_sloat_page() { require_once("menu-pages/appointment-form2.php"); } //appointment save page function dispaly_datasave_page() { require_once("menu-pages/data_save.php"); } //service page function dispaly_service_page() { require_once("menu-pages/service.php"); } //manage service page function dispaly_manageservice_page() { require_once("menu-pages/manage-service.php"); } //time-off page function dispaly_timeoff_page() { require_once("menu-pages/timeoff.php"); } //update-time-off page function dispaly_updatetimeoff_page() { require_once("menu-pages/update-timeoff.php"); } //manage-appointment page function dispaly_manageappointment_page() { require_once("menu-pages/manage-appointments.php"); } function dispaly_updateappointment_page() { require_once("menu-pages/update-appointments.php"); } //settings page function dispaly_settings_page() { require_once("menu-pages/settings.php"); } //add/update settings page function dispaly_managesettings_page() { require_once("menu-pages/manage-settings.php"); } //email-settings page function dispaly_notificationsettings_page() { require_once("menu-pages/notification-settings.php"); } //manage-emailsettings page function dispaly_managenotificationsettings_page() { require_once("menu-pages/manage-notificationsettings.php"); } // Remove plugin function dispaly_uninstallplugin_page() { require_once("uninstall-plugin.php"); } //get-premium-plugin page function dispaly_getpremiumplugin_page() { require_once("menu-pages/get-premium-plugin.php"); } //get-premium-themes page function dispaly_getpremiumthemes_page() { require_once("menu-pages/get-premium-themes.php"); } //help & support page function dispaly_helpnsupport_page() { require_once("menu-pages/helpnsupport.php"); } //Export Lists function dispaly_export_lists_page() { require_once("menu-pages/export-lists.php"); } // Including Calendar Short-Code Page require_once("appointment-calendar-shortcode.php"); require_once("appointment-calendar-mobile.php"); ?>