function foogallery_album_get_current_gallery() { $slug = foogallery_album_gallery_url_slug(); $gallery = get_query_var($slug); if (empty($gallery)) { $gallery = safe_get_from_request($slug); } return apply_filters('foogallery_album_get_current_gallery', $gallery); }
function listen_for_boilerplate_download() { $nonce = safe_get_from_request('foogallery_boilerplate_nonce'); $action = safe_get_from_request('action'); if (empty($nonce) || empty($action)) { return; } if (!empty($nonce) && wp_verify_nonce($nonce, 'foogallery_boilerplate')) { $boilerplate_type = $_POST['boilerplate_type']; $boilerplate_name = $_POST['boilerplate_name']; $boilerplate_desc = $_POST['boilerplate_desc']; $boilerplate_author = $_POST['boilerplate_author']; $boilerplate_author_link = $_POST['boilerplate_author_link']; if ('download' === $action) { $this->run($boilerplate_name, $boilerplate_type, $boilerplate_desc, $boilerplate_author, $boilerplate_author_link); } } }
function admin_print_scripts() { $page = safe_get_from_request('page'); $foogallery = FooGallery_Plugin::get_instance(); $foogallery->register_and_enqueue_js('admin-page-' . $page . '.js'); }
<?php $link_actions_filters = 'http://foo.gallery/developers#actions_filters'; $link_tutorial = 'http://foo.gallery/developers#extensions'; $link_submit = 'http://foo.gallery/submit-extension/'; $nonce = safe_get_from_request('foogallery_boilerplate_nonce'); if (!empty($nonce) && wp_verify_nonce($nonce, 'foogallery_boilerplate')) { $boilerplate_type = $_POST['boilerplate_type']; $boilerplate_name = $_POST['boilerplate_name']; $boilerplate_desc = $_POST['boilerplate_desc']; $boilerplate_author = $_POST['boilerplate_author']; $boilerplate_author_link = $_POST['boilerplate_author_link']; $boilerplate_error = ''; if (empty($boilerplate_type) || empty($boilerplate_name) || empty($boilerplate_desc) || empty($boilerplate_author) || empty($boilerplate_author_link)) { $boilerplate_error = __('Please fill in all form fields!', 'foogallery'); } else { } } else { $current_user = wp_get_current_user(); $boilerplate_name = __('Cool Thing', 'foogallery'); $boilerplate_type = 'template'; $boilerplate_desc = __('A cool description about what your cool thing can do', 'foogallery'); $boilerplate_author = $current_user->user_firstname . ' ' . $current_user->user_lastname; $boilerplate_author_link = site_url(); } ?> <style> .build_your_own_main_content { width:600px; float:left; margin-right:50px;
function ajax_get_gallery_info() { $nonce = safe_get_from_request('nonce'); wp_verify_nonce($nonce, 'foogallery-timymce-nonce'); $id = safe_get_from_request('foogallery_id'); $gallery = FooGallery::get_by_id($id); $image_src = $gallery->featured_image_src('thumbnail', true); $json_array = array('id' => $id, 'name' => $gallery->name, 'count' => $gallery->image_count(), 'src' => $image_src); header('Content-type: application/json'); echo json_encode($json_array); die; }
<?php $instance = FooGallery_Plugin::get_instance(); $api = new FooGallery_Extensions_API(); $extensions = $api->get_all(); $has_errors = $api->has_extension_loading_errors(); $categories = $api->get_all_categories(); $show_message = safe_get_from_request('show_message'); if ('yes' === $show_message) { $result = get_transient(FOOGALLERY_EXTENSIONS_MESSAGE_TRANSIENT_KEY); } $tagline = apply_filters('foogallery_admin_extensions_tagline', sprintf(__('Extensions make %s even more awesome, without bloating the core plugin.', 'foogallery'), foogallery_plugin_name())); $show_foobot = apply_filters('foogallery_admin_show_foobot', true); ?> <style> .foogallery-badge-foobot { position: absolute; top: 5px; right: 0; background: url(<?php echo FOOGALLERY_URL; ?> assets/foobot_small.png) no-repeat; width: 82px; height: 150px; z-index: 100; } .foogallery-text { font-size: 18px; margin: 10px 0; }
function handle_extension_action() { $action = safe_get_from_request('action'); $extension_slug = safe_get_from_request('extension'); $has_error = safe_get_from_request('has_error'); if ($action && $extension_slug) { $api = new FooGallery_Extensions_API(); $fatal_error_redirect = remove_query_arg('action'); wp_redirect(add_query_arg('has_error', 'yes', $fatal_error_redirect)); // we'll override this later if the plugin can be included without fatal error ob_start(); switch ($action) { case 'download': $result = $api->download($extension_slug); break; case 'activate': $result = $api->activate($extension_slug); break; case 'deactivate': $result = $api->deactivate($extension_slug); break; } //if we get here then no fatal error - cool! ob_end_clean(); //store the result in a short-lived transient if (isset($result)) { set_transient(FOOGALLERY_EXTENSIONS_MESSAGE_TRANSIENT_KEY, $result, 30); } //first, remove unwanted query args $redirect_url = remove_query_arg(array('extension', 'action')); //then add a query arg for our message $redirect_url = add_query_arg('show_message', 'yes', $redirect_url); //finally, allow extensions to override their own redirect $redirect_url = apply_filters('foogallery_extensions_redirect_url-' . $extension_slug, $redirect_url, $action); //redirect to this page, so the plugin can be properly activated/deactivated etc if ($redirect_url) { wp_redirect($redirect_url); die; } } else { if ('reload' === $action) { $api = new FooGallery_Extensions_API(); $api->reload(); //first, remove unwanted query args $redirect_url = remove_query_arg(array('extension', 'action')); if (!$api->has_extension_loading_errors()) { $result = array('message' => __('The extensions have been reloaded', 'foogallery'), 'type' => 'success'); set_transient(FOOGALLERY_EXTENSIONS_MESSAGE_TRANSIENT_KEY, $result, 30); //then add a query arg for our message $redirect_url = add_query_arg('show_message', 'yes', $redirect_url); } wp_redirect($redirect_url); die; } else { if ($has_error) { $api = new FooGallery_Extensions_API(); $api->deactivate($extension_slug, true, false); $result = array('message' => __('The extension could not be activated due to an error!', 'foogallery'), 'type' => 'error'); set_transient(FOOGALLERY_EXTENSIONS_MESSAGE_TRANSIENT_KEY, $result, 30); $api->add_to_error_extensions($extension_slug, __('Activation Error!', 'foogallery')); //first, remove unwanted query args $redirect_url = remove_query_arg(array('extension', 'action', 'has_error')); //then add a query arg for our message $redirect_url = add_query_arg('show_message', 'yes', $redirect_url); wp_redirect($redirect_url); } } } }