function local_obu_forms_extend_navigation($navigation) { global $CFG, $USER, $PAGE; if (!isloggedin() || isguestuser()) { return; } $context = context_system::instance(); $staff_manager = has_capability('local/obu_forms:manage_pg', $context) || has_capability('local/obu_forms:manage_ump_staff', $context); $students_manager = has_capability('local/obu_forms:manage_pg', $context) || has_capability('local/obu_forms:manage_ump_students', $context); $manager = $staff_manager || $students_manager; $staff = is_staff($USER->username); // Has a 'p' number? $student = is_student($USER->id); // Enrolled on a PIP-based course (programme)? // Add the 'My Forms' option if ($manager || $staff || $student || !empty(get_form_data($USER->id))) { // Find the 'myprofile' node $nodeParent = $navigation->find('myprofile', navigation_node::TYPE_UNKNOWN); // Add the option to list their completed forms if ($nodeParent) { $node = $nodeParent->add(get_string('myforms', 'local_obu_forms'), '/local/obu_forms/index.php?userid=' . $USER->id); } } if (!$manager && !$staff && !$student) { // Move on now please, nothing more to see here... return; } // Find the 'forms' node $nodeParent = $navigation->find(get_string('forms', 'local_obu_forms'), navigation_node::TYPE_SYSTEM); // If necessary, add the 'forms' node to 'home' if (!$nodeParent) { $nodeHome = $navigation->children->get('1')->parent; if ($nodeHome) { $nodeParent = $nodeHome->add(get_string('forms', 'local_obu_forms'), null, navigation_node::TYPE_SYSTEM); } } if ($nodeParent) { // For form managers, add the privileged maintenance and enquiry options if ($manager) { $node = $nodeParent->add(get_string('settings_nav', 'local_obu_forms'), '/local/obu_forms/forms.php'); $node = $nodeParent->add(get_string('template_nav', 'local_obu_forms'), '/local/obu_forms/template.php'); $node = $nodeParent->add(get_string('auths_nav', 'local_obu_forms'), '/local/obu_forms/auths.php'); $node = $nodeParent->add(get_string('sc_auths', 'local_obu_forms'), '/local/obu_forms/auths.php?authoriser=csa'); $node = $nodeParent->add(get_string('list_users_forms', 'local_obu_forms'), '/local/obu_forms/list.php'); $node = $nodeParent->add(get_string('formslist', 'local_obu_forms'), '/local/obu_forms/formslist.php'); } else { // For other users, add the option(s) to list all the relevant forms if ($staff) { $node = $nodeParent->add(get_string('staff_forms', 'local_obu_forms'), '/local/obu_forms/formslist.php?type=staff'); } $node = $nodeParent->add(get_string('student_forms', 'local_obu_forms'), '/local/obu_forms/formslist.php?type=student'); // Both staff and students can view student forms if ($staff) { $node = $nodeParent->add(get_string('list_users_forms', 'local_obu_forms'), '/local/obu_forms/list.php'); } } } }
/** * Adds extra post classes * * @since 1.0.0 * @param array $classes * @return array */ function wpcm_post_class($classes) { if (is_sponsor()) { $classes[] = 'wpcm-single-sponsors'; } if (is_club()) { $classes[] = 'wpcm-single-club'; } if (is_player()) { $classes[] = 'wpcm-single-player'; } if (is_staff()) { $classes[] = 'wpcm-single-staff'; } if (is_match()) { $classes[] = 'wpcm-single-match'; } return $classes; }
/** * is_wpclubmanager - Returns true if on a page which uses WPClubManager templates (cart and checkout are standard pages with shortcodes and thus are not included) * * @access public * @return bool */ function is_wpclubmanager() { return apply_filters('is_wpclubmanager', is_match() || is_club() || is_player() || is_staff() || is_sponsor() ? true : false); }
* OBU Forms - Get a user ID and list all their forms * * @package local_obu_forms * @author Peter Welham * @copyright 2016, Oxford Brookes University * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later * */ require_once '../../config.php'; require_once './locallib.php'; require_once './db_update.php'; require_once './user_input.php'; require_login(); $home = new moodle_url('/'); // Can only list someone else's forms if we are a form manager or a member of staff if (!is_manager() && !is_staff($USER->username)) { redirect($home); } $dir = $home . '/local/obu_forms/'; $program = $dir . 'list.php'; $heading = get_string('list_users_forms', 'local_obu_forms'); $PAGE->set_pagelayout('standard'); $PAGE->set_url($program); $PAGE->set_context(context_system::instance()); $PAGE->set_heading($SITE->fullname); $PAGE->set_title($heading); $message = ''; $mform = new user_input(null, array()); if ($mform->is_cancelled()) { redirect($home); } else {
require_once './locallib.php'; require_login(); // Determine if the user can list the requested forms if (!is_manager() && !is_staff($USER->username)) { // Students can only see their own forms $user = $USER; } else { $user_id = optional_param('userid', 0, PARAM_INT); if ($user_id == 0 || $user_id == $USER->id) { $user = $USER; } else { $user = $DB->get_record('user', array('id' => $user_id)); if (!$user) { print_error('invaliduserid'); } if (is_staff($user->username) && !is_manager()) { // Only managers can view forms for other staff members $user = $USER; } } } $url = new moodle_url('/local/obu_forms/index.php', array('userid' => $user_id)); $redirect_form = new moodle_url('/local/obu_forms/redirect.php'); $PAGE->set_url($url); $PAGE->set_pagelayout('standard'); if ($user->id == $USER->id) { $currentuser = true; $heading = get_string('myforms', 'local_obu_forms'); } else { $currentuser = false; // If we're looking at someone else's forms we may need to lock/remove some UI elements