public function __construct()
{
global $rtmedia;
// Actions and filters
add_action('init', array($this, 'video_transcoding_survey_response'));
add_filter('plugin_action_links_' . RTMEDIA_BASE_NAME, array(&$this, 'plugin_add_settings_link'));
$this->rtmedia_support = new RTMediaSupport();
add_action('wp_ajax_rtmedia_select_request', array($this->rtmedia_support, 'get_form'), 1);
add_action('wp_ajax_rtmedia_cancel_request', array($this->rtmedia_support, 'rtmedia_cancel_request'), 1);
add_action('wp_ajax_rtmedia_submit_request', array($this->rtmedia_support, 'submit_request'), 1);
add_action('wp_ajax_rtmedia_linkback', array($this, 'linkback'), 1);
//fixme : is it being used ?
add_action('wp_ajax_rtmedia_rt_album_deactivate', 'BPMediaAlbumimporter::bp_album_deactivate', 1);
add_action('wp_ajax_rtmedia_rt_album_import', 'BPMediaAlbumimporter::bpmedia_ajax_import_callback', 1);
add_action('wp_ajax_rtmedia_rt_album_import_favorites', 'BPMediaAlbumimporter::bpmedia_ajax_import_favorites', 1);
add_action('wp_ajax_rtmedia_rt_album_import_step_favorites', 'BPMediaAlbumimporter::bpmedia_ajax_import_step_favorites', 1);
add_action('wp_ajax_rtmedia_rt_album_cleanup', 'BPMediaAlbumimporter::cleanup_after_install');
add_action('wp_ajax_rtmedia_convert_videos_form', array($this, 'convert_videos_mailchimp_send'), 1);
//fixme : is it being used ?
add_action('wp_ajax_rtmedia_correct_upload_filetypes', array($this, 'correct_upload_filetypes'), 1);
add_filter('plugin_row_meta', array($this, 'plugin_meta_premium_addon_link'), 1, 2);
add_action('wp_dashboard_setup', array($this, 'add_dashboard_widgets'), 0);
add_action('wp_ajax_rtmedia_hide_addon_update_notice', array($this, 'rtmedia_hide_addon_update_notice'), 1);
add_filter('media_row_actions', array($this, 'modify_medialibrary_permalink'), 10, 2);
if (!isset($rtmedia->options)) {
$rtmedia->options = rtmedia_get_site_option('rtmedia-options');
}
// Show admin notice to install transcoder plugin.
if (!class_exists('RT_Transcoder_Admin')) {
if (is_multisite()) {
add_action('network_admin_notices', array($this, 'install_transcoder_admin_notice'));
}
add_action('admin_notices', array($this, 'install_transcoder_admin_notice'));
add_action('wp_ajax_install_transcoder_hide_admin_notice', array($this, 'install_transcoder_hide_admin_notice'));
}
$rtmedia_option = filter_input(INPUT_POST, 'rtmedia-options', FILTER_DEFAULT, FILTER_SANITIZE_NUMBER_INT);
if (isset($rtmedia_option)) {
if (isset($rtmedia_option['general_showAdminMenu']) && 1 === intval($rtmedia_option['general_showAdminMenu'])) {
add_action('admin_bar_menu', array($this, 'admin_bar_menu'), 100, 1);
}
} else {
if (1 === intval($rtmedia->options['general_showAdminMenu'])) {
add_action('admin_bar_menu', array($this, 'admin_bar_menu'), 100, 1);
}
}
if (is_admin()) {
add_action('admin_enqueue_scripts', array($this, 'ui'));
add_action('admin_menu', array($this, 'menu'), 1);
add_action('init', array($this, 'bp_admin_tabs'));
if (is_multisite()) {
add_action('network_admin_edit_rtmedia', array($this, 'save_multisite_options'));
}
}
$this->rtmedia_settings = new RTMediaSettings();
if (!class_exists('BuddyPress')) {
add_action('admin_init', array($this, 'check_permalink_admin_notice'));
}
add_action('wp_ajax_rtmedia_hide_template_override_notice', array($this, 'rtmedia_hide_template_override_notice'), 1);
add_action('admin_init', array($this, 'rtmedia_bp_add_update_type'));
add_action('wp_ajax_rtmedia_hide_inspirebook_release_notice', array($this, 'rtmedia_hide_inspirebook_release_notice'), 1);
add_action('wp_ajax_rtmedia_hide_social_sync_notice', array($this, 'rtmedia_hide_social_sync_notice'), 1);
add_action('wp_ajax_rtmedia_hide_premium_addon_notice', array($this, 'rtmedia_hide_premium_addon_notice'), 1);
new RTMediaMediaSizeImporter();
// do not delete this line. We only need to create object of this class if we are in admin section
if (class_exists('BuddyPress')) {
new RTMediaActivityUpgrade();
}
add_action('admin_notices', array($this, 'rtmedia_admin_notices'));
add_action('network_admin_notices', array($this, 'rtmedia_network_admin_notices'));
add_action('admin_init', array($this, 'rtmedia_addon_license_save_hook'));
add_action('admin_init', array($this, 'rtmedia_migration'));
add_filter('removable_query_args', array($this, 'removable_query_args'), 10, 1);
add_action('admin_footer', array($this, 'rtm_admin_templates'));
// Display invalid add-on license notices to admins.
add_action('admin_notices', array($this, 'rtm_addon_license_notice'));
}