/** * Displays and updates the options menu of BuddyPress Media Component * * @since BP Media 2.0 */ function bp_media_admin_menu() { $bp_media_errors = array(); $bp_media_messages = array(); global $bp_media_options; $bp_media_options = get_option('bp_media_options', array('videos_enabled' => true, 'audio_enabled' => true, 'images_enabled' => true)); if (array_key_exists('submit', $_POST)) { check_admin_referer('bp_media_update_options'); if (array_key_exists('refresh_media_count', $_POST)) { if (!bp_media_update_count()) { $bp_media_errors[] = "Recounting Failed"; } else { $bp_media_messages[] = "Recounting of media files done successfully"; } } if (array_key_exists('remove_linkback', $_POST) && $_POST['remove_linkback'] == '1') { update_option('bp_media_remove_linkback', '1'); } else { update_option('bp_media_remove_linkback', '0'); } if (array_key_exists('enable_videos', $_POST)) { $bp_media_options['videos_enabled'] = true; } else { $bp_media_options['videos_enabled'] = false; } if (array_key_exists('enable_audio', $_POST)) { $bp_media_options['audio_enabled'] = true; } else { $bp_media_options['audio_enabled'] = false; } if (array_key_exists('enable_images', $_POST)) { $bp_media_options['images_enabled'] = true; } else { $bp_media_options['images_enabled'] = false; } update_option('bp_media_options', $bp_media_options); } ?> <div class="metabox-fixed metabox-holder alignright"> <?php bp_media_default_admin_sidebar(); ?> </div> <div class="wrap bp-media-admin"> <div id="icon-bp-media" class="icon32"><br/></div> <h2>BuddyPress Media Component Settings</h2> <?php if (count($bp_media_errors)) { ?> <div class="error"><p><?php foreach ($bp_media_errors as $error) { echo $error . '<br/>'; } ?> </p></div> <?php } if (count($bp_media_messages)) { ?> <div class="updated"><p><?php foreach ($bp_media_messages as $message) { echo $message . '<br/>'; } ?> </p></div> <?php } ?> <form method="post"> <?php wp_nonce_field('bp_media_update_options'); ?> <h3>General Settings</h3> <table class="form-table "> <tbody> <tr valign="top"> <th scope="row"><label for="refresh_media_count">Re-Count Media Entries</label></th> <td> <fieldset><legend class="screen-reader-text"><span>Re-Count Media Entries</span></legend><label for="refresh_media_count"> <input name="refresh_media_count" type="checkbox" id="refresh_media_count" value="1"> Check for Re-Count</label> </fieldset></td> </tr> <tr valign="top"> <th scope="row"><label for="remove_linkback">Remove Linkback</label></th> <td> <fieldset> <legend class="screen-reader-text"><span>Remove Linkback</span></legend> <label for="remove_linkback"><input name="remove_linkback" type="checkbox" id="remove_linkback" value="1" <?php if (get_option('bp_media_remove_linkback') == '1') { echo 'checked="checked"'; } ?> > Removes the link to MediaBP from footer</label> </fieldset> </td> </tr> </tbody> </table> <h3>Media Types Enabled</h3> <table class="form-table "> <tbody> <tr valign="top"> <th scope="row"><label for="enable_videos">Videos</label></th> <td> <fieldset> <legend class="screen-reader-text"><span>Enable Videos</span></legend> <label for="enable_videos"><input name="enable_videos" type="checkbox" id="enable_videos" value="1" <?php global $bp_media_options; checked($bp_media_options['videos_enabled'], true); ?> > (Check to enable video upload functionality)</label> </fieldset> </td> </tr> <tr valign="top"> <th scope="row"><label for="enable_audio">Audio</label></th> <td> <fieldset> <legend class="screen-reader-text"><span>Enable Audio</span></legend> <label for="enable_audio"><input name="enable_audio" type="checkbox" id="enable_audio" value="1" <?php checked($bp_media_options['audio_enabled'], true); ?> > (Check to enable audio upload functionality)</label> </fieldset> </td> </tr> <tr valign="top"> <th scope="row"><label for="enable_images">Images</label></th> <td> <fieldset> <legend class="screen-reader-text"><span>Enable Images</span></legend> <label for="enable_images"><input name="enable_images" type="checkbox" id="enable_images" value="1" <?php checked($bp_media_options['images_enabled'], true); ?> > (Check to enable images upload functionality)</label> </fieldset> </td> </tr> </tbody> </table> <p class="submit"><input type="submit" name="submit" id="submit" class="button-primary" value="Save Changes"></p></form> </div> <?php }
function bp_media_settings_page() { $tab = isset($_GET['page']) ? $_GET['page'] : "bp-media-settings"; ?> <div class="wrap bp-media-admin"> <?php //screen_icon( 'buddypress' ); ?> <div id="icon-buddypress" class="icon32"><br></div> <h2 class="nav-tab-wrapper"><?php bp_core_admin_tabs(__('Media', 'bp-media')); ?> </h2> <div class="metabox-holder columns-2"><?php if (array_key_exists('bp_media_refresh_count', $_GET) && empty($_REQUEST['settings-updated'])) { check_admin_referer('bp_media_refresh_count', 'wp_nonce'); if (!bp_media_update_count()) { $bp_media_errors[] = "Recounting Failed"; } else { $bp_media_messages[] = "Recounting of media files done successfully"; } if (isset($bp_media_errors) && count($bp_media_errors)) { ?> <div class="error"><p><?php foreach ($bp_media_errors as $error) { echo $error . '<br/>'; } ?> </p></div><?php } if (isset($bp_media_messages) && count($bp_media_messages)) { ?> <div class="updated"><p><?php foreach ($bp_media_messages as $message) { echo $message . '<br/>'; } ?> </p></div><?php } } else { settings_errors(); } ?> <div class="bp-media-settings-tabs"><?php // Check to see which tab we are on if (current_user_can('manage_options')) { $tabs_html = ''; $idle_class = 'media-nav-tab'; $active_class = 'media-nav-tab media-nav-tab-active'; $tabs = array(); // Check to see which tab we are on $tab = isset($_GET['page']) ? $_GET['page'] : "bp-media-settings"; /* BP Media */ $tabs[] = array('href' => bp_get_admin_url(add_query_arg(array('page' => 'bp-media-settings'), 'admin.php')), 'title' => __('BP Media Settings', 'bp-media'), 'name' => __('Settings', 'bp-media'), 'class' => $tab == 'bp-media-settings' ? $active_class : $idle_class . ' first_tab'); $tabs[] = array('href' => bp_get_admin_url(add_query_arg(array('page' => 'bp-media-addons'), 'admin.php')), 'title' => __('BP Media Addons', 'bp-media'), 'name' => __('Addons', 'bp-media'), 'class' => $tab == 'bp-media-addons' ? $active_class : $idle_class); $tabs[] = array('href' => bp_get_admin_url(add_query_arg(array('page' => 'bp-media-support'), 'admin.php')), 'title' => __('BP Media Support', 'bp-media'), 'name' => __('Support', 'bp-media'), 'class' => $tab == 'bp-media-support' ? $active_class : $idle_class . ' last_tab'); $pipe = '|'; $i = '1'; foreach ($tabs as $tab) { if ($i != 1) { $tabs_html .= $pipe; } $tabs_html .= '<a title=""' . $tab['title'] . '" " href="' . $tab['href'] . '" class="' . $tab['class'] . '">' . $tab['name'] . '</a>'; $i++; } echo $tabs_html; } ?> </div> <div id="bp-media-settings-boxes"> <form id="bp_media_settings_form" name="bp_media_settings_form" action="options.php" method="post" enctype="multipart/form-data"> <?php settings_fields('bp_media_options_settings'); do_settings_fields('bp_media_options_settings', ''); do_meta_boxes('bp-media-settings', 'normal', ''); ?> <script type="text/javascript"> //<![CDATA[ jQuery(document).ready( function($) { // close postboxes that should be closed $('.if-js-closed').removeClass('if-js-closed').addClass('closed'); // postboxes setup postboxes.add_postbox_toggles('bp-media-settings'); }); //]]> </script> </form> </div><!-- .bp-media-settings-boxes --> <div class="metabox-fixed metabox-holder alignright bp-media-metabox-holder"> <?php bp_media_default_admin_sidebar(); ?> </div> </div><!-- .metabox-holder --> </div><!-- .bp-media-admin --><?php }