function pp_admin_settings() { $options = pp_get_options(); add_filter('wp_dropdown_cats', 'pp_admin_empty_category_alert'); ?> <div class="wrap"> <h2><?php _e('Project Settings', 'prologue-projects'); ?> </h2> <form method="post" action="admin.php?page=prologue-projects-settings"> <?php wp_nonce_field('prologue-projects-settings'); ?> <input type="hidden" name="option_page" value="prologue-projects-settings" /> <h3><?php _e('Projects', 'prologue-projects'); ?> </h3> <table class="form-table"> <tr valign="top"> <th scope="row"><label for="category_projects"><?php _e('Projects category', 'prologue-projects'); ?> </label></th> <td> <?php wp_dropdown_categories(array('show_option_none' => __('-- select --', 'prologue-projects'), 'hide_empty' => 0, 'name' => 'category_projects', 'orderby' => 'name', 'selected' => $options['category_projects'], 'hierarchical' => true)); ?> <br /> <span class="setting-description"><?php _e('Select the category which contains all your projects.', 'prologue-projects'); ?> </span> </td> </tr> <tr valign="top"> <th scope="row"><label for="featured_project"><?php _e('Featured project', 'prologue-projects'); ?> </label></th> <td> <?php if ($project_category_id = pp_get_category_id('projects')) { ?> <?php wp_dropdown_categories(array('show_option_none' => __('-- select --', 'prologue-projects'), 'child_of' => $project_category_id, 'hide_empty' => 0, 'name' => 'featured_project', 'orderby' => 'name', 'selected' => $options['featured_project'], 'hierarchical' => true)); ?> <br /> <span class="setting-description"><?php _e('Select the project to be featured on the projects base page.', 'prologue-projects'); ?> </span> <?php } else { ?> <span class="setting-description"><?php _e('You must select and save the "projects" category above first.', 'prologue-projects'); ?> </span> <?php } ?> </td> </tr> <tr valign="top"> <th scope="row"><label for="project_sidebars"><?php _e('Create project sidebars', 'prologue-projects'); ?> </label></th> <td> <?php $project_sidebars_checked = $options['project_sidebars'] ? 'checked="checked" ' : ''; ?> <input id="project_sidebars" name="project_sidebars" type="checkbox" value="1" <?php echo $project_sidebars_checked; ?> /> <?php _e('Create unique widget areas for each project\'s page.', 'prologue-projects'); ?> </td> </tr> </table> <h3><?php _e('Updates', 'prologue-projects'); ?> </h3> <table class="form-table"> <tr valign="top"> <th scope="row"><label for="category_updates"><?php _e('Updates category', 'prologue-projects'); ?> </label></th> <td> <?php wp_dropdown_categories(array('show_option_none' => __('-- select --', 'prologue-projects'), 'hide_empty' => 0, 'name' => 'category_updates', 'orderby' => 'name', 'selected' => $options['category_updates'], 'hierarchical' => true)); ?> <br /> <span class="setting-description"><?php _e('Select the category which will contain updates.', 'prologue-projects'); ?> </span> </td> </tr> </table> <h3><?php _e('Tasks', 'prologue-projects'); ?> </h3> <table class="form-table"> <tr valign="top"> <th scope="row"><label for="category_tasks"><?php _e('Tasks category', 'prologue-projects'); ?> </label></th> <td> <?php wp_dropdown_categories(array('show_option_none' => __('-- select --', 'prologue-projects'), 'hide_empty' => 0, 'name' => 'category_tasks', 'orderby' => 'name', 'selected' => $options['category_tasks'], 'hierarchical' => true)); ?> <br /> <span class="setting-description"><?php _e('Select the category which will contain tasks.', 'prologue-projects'); ?> </span> </td> </tr> <tr valign="top"> <th scope="row"><label for="default_task_level"><?php _e('Default task level', 'prologue-projects'); ?> </label></th> <td> <?php if ($task_category_id = pp_get_category_id('tasks')) { ?> <?php wp_dropdown_categories(array('show_option_none' => __('-- select --', 'prologue-projects'), 'child_of' => $task_category_id, 'hide_empty' => 0, 'name' => 'default_task_level', 'orderby' => 'name', 'selected' => $options['default_task_level'], 'hierarchical' => true)); ?> <br /> <span class="setting-description"><?php _e('Select the level which new tasks will be set to by default.', 'prologue-projects'); ?> </span> <?php } else { ?> <span class="setting-description"><?php _e('You must select and save the "tasks" category above first.', 'prologue-projects'); ?> </span> <?php } ?> </td> </tr> </table> <h3><?php _e('Questions', 'prologue-projects'); ?> </h3> <table class="form-table"> <tr valign="top"> <th scope="row"><label for="category_questions"><?php _e('Questions category', 'prologue-projects'); ?> </label></th> <td> <?php wp_dropdown_categories(array('show_option_none' => __('-- select --', 'prologue-projects'), 'hide_empty' => 0, 'name' => 'category_questions', 'orderby' => 'name', 'selected' => $options['category_questions'], 'hierarchical' => true)); ?> <br /> <span class="setting-description"><?php _e('Select the category which will contain questions.', 'prologue-projects'); ?> </span> </td> </tr> <tr valign="top"> <th scope="row"><label for="default_question_state"><?php _e('Default question state', 'prologue-projects'); ?> </label></th> <td> <?php if ($question_category_id = pp_get_category_id('questions')) { ?> <?php wp_dropdown_categories(array('show_option_none' => __('-- select --', 'prologue-projects'), 'child_of' => $question_category_id, 'hide_empty' => 0, 'name' => 'default_question_state', 'orderby' => 'name', 'selected' => $options['default_question_state'], 'hierarchical' => true)); ?> <br /> <span class="setting-description"><?php _e('Select the state which new questions will be set to by default.', 'prologue-projects'); ?> </span> <?php } else { ?> <span class="setting-description"><?php _e('You must select and save the "questions" category above first.', 'prologue-projects'); ?> </span> <?php } ?> </td> </tr> </table> <h3><?php _e('Authors', 'prologue-projects'); ?> </h3> <table class="form-table"> <tr valign="top"> <th scope="row"><label for="author_sidebars"><?php _e('Create author sidebars', 'prologue-projects'); ?> </label></th> <td> <?php $author_sidebars_checked = $options['author_sidebars'] ? 'checked="checked" ' : ''; ?> <input id="author_sidebars" name="author_sidebars" type="checkbox" value="1" <?php echo $author_sidebars_checked; ?> /> <?php _e('Create unique widget areas for each author\'s page.', 'prologue-projects'); ?> </td> </tr> </table> <p class="submit"> <input class="button-primary" type="submit" name="Submit" value="<?php _e('Save Changes', 'prologue-projects'); ?> " /> <input type="hidden" name="action" value="update" /> </p> </form> </div> <?php }
function _pp_prepend_parent_link_to_breadcrumbs($breadcrumbs, $category_id = 0) { if ($category_id == pp_get_category_id('projects')) { return $breadcrumbs; } if (!($data = pp_get_project_data($category_id))) { return $breadcrumbs; } $category_id = $data['id']; $url = $data['url']; if (isset($_GET['tasks'])) { $url = $url . '?tasks'; } elseif (isset($_GET['questions'])) { $url = $url . '?questions'; } $link = '<a href="' . attribute_escape($url) . '">' . $data['name'] . '</a>'; array_unshift($breadcrumbs, $link); if ((int) $data['id'] === (int) pp_get_category_id('projects')) { return $breadcrumbs; } return _pp_prepend_parent_link_to_breadcrumbs($breadcrumbs, $data['parent_id']); }
function control($instance = false) { if (is_array($instance)) { $instance = $instance['number']; } if (!$instance || !is_numeric($instance) || 1 > $instance) { $instance = '%i%'; } $options = $this->options; if ('POST' == strtoupper($_SERVER['REQUEST_METHOD']) && isset($_POST['pp_widget_user_projects'])) { foreach ($_POST['pp_widget_user_projects'] as $_instance => $_value) { if (!$_value) { continue; } $options[$_instance]['title'] = strip_tags(stripslashes($_POST['pp_widget_user_projects'][$_instance]['title'])); } if ($this->options != $options) { $this->options = $options; update_option('pp_widget_user_projects', $this->options); } } $options['%i%']['title'] = ''; $title = attribute_escape(stripslashes($options[$instance]['title'])); if (!($project_category_id = pp_get_category_id('projects'))) { ?> <p> <?php _e('You must select and save the "projects" category in the project settings.', 'prologue-projects'); ?> </p> <?php } else { ?> <p> <label for="pp_widget_user_projects_title_<?php echo $instance; ?> "> <?php _e('Title:', 'prologue-projects'); ?> <input class="widefat" id="pp_widget_user_projects_title_<?php echo $instance; ?> " name="pp_widget_user_projects[<?php echo $instance; ?> ][title]" type="text" value="<?php echo $title; ?> " /> </label> </p> <input type="hidden" id="pp_widget_user_projects_submit" name="pp_widget_user_projects[<?php echo $instance; ?> ][submit]" value="1" /> <?php } }
break; } $query_categories = array(); $project_id = pp_get_project_data(0, 'id'); if ($project_id && (int) pp_get_category_id('projects') !== (int) $project_id) { $query_categories[] = $project_id; } switch ($mode) { case 'updates': $query_categories[] = pp_get_category_id('updates'); break; case 'tasks': $query_categories[] = pp_get_category_id('tasks'); break; case 'questions': $query_categories[] = pp_get_category_id('questions'); break; } if (1 < count($query_categories)) { $query_args = array('category__and' => $query_categories); } else { $query_args = array('cat' => $query_categories[0]); } if ($paged) { $query_args['paged'] = get_query_var('paged'); } if ($is_author) { $query_args['author'] = $author_id; } query_posts($query_args); if (have_posts()) {