本文整理汇总了PHP中moodle_url::get_param方法的典型用法代码示例。如果您正苦于以下问题:PHP moodle_url::get_param方法的具体用法?PHP moodle_url::get_param怎么用?PHP moodle_url::get_param使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类moodle_url
的用法示例。
在下文中一共展示了moodle_url::get_param方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: simpletest
/**
* Execute test client WS request
* @param string $serverurl server url (including token parameter or username/password parameters)
* @param string $function function name
* @param array $params parameters of the called function
* @return mixed
*/
public function simpletest($serverurl, $function, $params)
{
global $CFG;
$url = new moodle_url($serverurl);
$token = $url->get_param('wstoken');
require_once $CFG->dirroot . '/webservice/xmlrpc/lib.php';
$client = new webservice_xmlrpc_client($serverurl, $token);
return $client->call($function, $params);
}
示例2: get_filename
/**
* Obtains the filename from the moodle_url.
* @param moodle_url $url URL
* @return string Filename only (not escaped)
*/
public function get_filename(moodle_url $url)
{
// Use the 'file' parameter if provided (for links created when
// slasharguments was off). If not present, just use URL path.
$path = $url->get_param('file');
if (!$path) {
$path = $url->get_path();
}
// Remove everything before last / if present. Does not use textlib as / is UTF8-safe.
$slash = strrpos($path, '/');
if ($slash !== false) {
$path = substr($path, $slash + 1);
}
return $path;
}
示例3: get_filter_options_from_url
/**
*
*/
public static function get_filter_options_from_url(moodle_url $url = null)
{
$filteroptions = array('id' => array('filter', 0, PARAM_INT), 'entrytype' => array('uentrytype', 0, PARAM_TEXT), 'perpage' => array('uperpage', 0, PARAM_INT), 'selection' => array('uselection', 0, PARAM_INT), 'groupby' => array('ugroupby', 0, PARAM_INT), 'search' => array('usearch', '', PARAM_RAW), 'customsort' => array('usort', '', PARAM_RAW), 'customsearch' => array('ucsearch', '', PARAM_RAW), 'filters' => array('ufilter', array(), PARAM_INT), 'page' => array('page', 0, PARAM_INT), 'eids' => array('eids', '', PARAM_TAGLIST), 'users' => array('users', '', PARAM_SEQUENCE), 'groups' => array('groups', '', PARAM_SEQUENCE));
$options = array();
foreach ($filteroptions as $option => $args) {
list($name, $default, $type) = $args;
// Get the value.
if ($url) {
$val = $url->get_param($name);
} else {
if (is_array($default)) {
$val = optional_param_array($name, null, $type);
} else {
$val = optional_param($name, null, $type);
}
}
// Get the option.
if (!is_null($val)) {
if ($option == 'customsort') {
$options[$option] = self::get_sort_options_from_query($val);
} else {
if ($option == 'customsearch') {
$searchoptions = self::get_search_options_from_query($val);
$options[$option] = $searchoptions;
} else {
if ($option == 'search') {
$options[$option] = urldecode($val);
} else {
$options[$option] = $val;
}
}
}
}
}
return $options;
}
示例4: view_bulk_certificates
public function view_bulk_certificates(moodle_url $url, array $selectedusers = null)
{
global $OUTPUT, $CFG, $DB;
$course_context = context_course::instance($this->get_course()->id);
$page = $url->get_param('page');
$perpage = $url->get_param('perpage');
$issuelist = $url->get_param('issuelist');
$action = $url->get_param('action');
$groupid = 0;
$groupmode = groups_get_activity_groupmode($this->coursemodule);
if ($groupmode) {
$groupid = groups_get_activity_group($this->coursemodule, true);
}
$page_start = intval($page * $perpage);
$usercount = 0;
if (!$selectedusers) {
$users = get_enrolled_users($course_context, '', $groupid);
$usercount = count($users);
$users = array_slice($users, $page_start, $perpage);
} else {
list($sqluserids, $params) = $DB->get_in_or_equal($selectedusers);
$sql = "SELECT * FROM {user} WHERE id {$sqluserids}";
//Adding sort
$sort = '';
$override = new stdClass();
$override->firstname = 'firstname';
$override->lastname = 'lastname';
$fullnamelanguage = get_string('fullnamedisplay', '', $override);
if ($CFG->fullnamedisplay == 'firstname lastname' or $CFG->fullnamedisplay == 'firstname' or $CFG->fullnamedisplay == 'language' and $fullnamelanguage == 'firstname lastname') {
$sort = " ORDER BY firstname, lastname";
} else {
// ($CFG->fullnamedisplay == 'language' and $fullnamelanguage == 'lastname firstname')
$sort = " ORDER BY lastname, firstname";
}
$users = $DB->get_records_sql($sql . $sort, $params);
}
if (!$action) {
echo $OUTPUT->header();
$this->show_tabs($url);
groups_print_activity_menu($this->coursemodule, $url);
$selectoptions = array('completed' => get_string('completedusers', 'simplecertificate'), 'allusers' => get_string('allusers', 'simplecertificate'));
$select = new single_select($url, 'issuelist', $selectoptions, $issuelist);
$select->label = get_string('showusers', 'simplecertificate');
echo $OUTPUT->render($select);
echo '<br>';
echo '<form id="bulkissue" name="bulkissue" method="post" action="view.php">';
echo html_writer::label(get_string('bulkaction', 'simplecertificate'), 'menutype', true);
echo ' ';
$selectoptions = array('pdf' => get_string('onepdf', 'simplecertificate'), 'zip' => get_string('multipdf', 'simplecertificate'), 'email' => get_string('sendtoemail', 'simplecertificate'));
echo html_writer::select($selectoptions, 'type', 'pdf');
$table = new html_table();
$table->width = "95%";
$table->tablealign = "center";
//strgrade
$table->head = array(' ', get_string('fullname'), get_string('grade'));
$table->align = array("left", "left", "center");
$table->size = array('1%', '89%', '10%');
foreach ($users as $user) {
$canissue = $this->can_issue($user, $issuelist != 'allusers');
if (empty($canissue)) {
$chkbox = html_writer::checkbox('selectedusers[]', $user->id, false);
$name = $OUTPUT->user_picture($user) . fullname($user);
$table->data[] = array($chkbox, $name, $this->get_grade($user->id));
}
}
$downloadbutton = $OUTPUT->single_button($url->out_as_local_url(false, array('action' => 'download')), get_string('bulkbuttonlabel', 'simplecertificate'));
echo $OUTPUT->paging_bar($usercount, $page, $perpage, $url);
echo '<br />';
echo html_writer::table($table);
echo html_writer::tag('div', $downloadbutton, array('style' => 'text-align: center'));
echo '</form>';
} else {
if ($action == 'download') {
$type = $url->get_param('type');
// Calculate file name
$filename = str_replace(' ', '_', clean_filename($this->get_instance()->coursename . ' ' . get_string('modulenameplural', 'simplecertificate') . ' ' . strip_tags(format_string($this->get_instance()->name, true)) . '.' . strip_tags(format_string($type, true))));
switch ($type) {
//One pdf with all certificates
case 'pdf':
$pdf = $this->create_pdf_object();
foreach ($users as $user) {
$canissue = $this->can_issue($user, $issuelist != 'allusers');
if (empty($canissue)) {
//To one pdf file
$issuecert = $this->get_issue($user);
$this->create_pdf($issuecert, $pdf, true);
//Save certificate PDF
if (!$this->issue_file_exists($issuecert)) {
//To force file creation
$issuecert->haschage = true;
$this->get_issue_file($issuecert);
}
}
}
$pdf->Output($filename, 'D');
break;
//One zip with all certificates in separated files
//One zip with all certificates in separated files
case 'zip':
$filesforzipping = array();
//.........这里部分代码省略.........
示例5: cohort_edit_controls
/**
* Returns navigation controls (tabtree) to be displayed on cohort management pages
*
* @param context $context system or category context where cohorts controls are about to be displayed
* @param moodle_url $currenturl
* @return null|renderable
*/
function cohort_edit_controls(context $context, moodle_url $currenturl)
{
$tabs = array();
$currenttab = 'view';
$viewurl = new moodle_url('/cohort/index.php', array('contextid' => $context->id));
if ($searchquery = $currenturl->get_param('search')) {
$viewurl->param('search', $searchquery);
}
if ($context->contextlevel == CONTEXT_SYSTEM) {
$tabs[] = new tabobject('view', new moodle_url($viewurl, array('showall' => 0)), get_string('systemcohorts', 'cohort'));
$tabs[] = new tabobject('viewall', new moodle_url($viewurl, array('showall' => 1)), get_string('allcohorts', 'cohort'));
if ($currenturl->get_param('showall')) {
$currenttab = 'viewall';
}
} else {
$tabs[] = new tabobject('view', $viewurl, get_string('cohorts', 'cohort'));
}
if (has_capability('moodle/cohort:manage', $context)) {
$addurl = new moodle_url('/cohort/edit.php', array('contextid' => $context->id));
$tabs[] = new tabobject('addcohort', $addurl, get_string('addcohort', 'cohort'));
if ($currenturl->get_path() === $addurl->get_path() && !$currenturl->param('id')) {
$currenttab = 'addcohort';
}
$uploadurl = new moodle_url('/cohort/upload.php', array('contextid' => $context->id));
$tabs[] = new tabobject('uploadcohorts', $uploadurl, get_string('uploadcohorts', 'cohort'));
if ($currenturl->get_path() === $uploadurl->get_path()) {
$currenttab = 'uploadcohorts';
}
}
if (count($tabs) > 1) {
return new tabtree($tabs, $currenttab);
}
return null;
}
示例6: random_question_form
/**
* Return random question form.
* @param \moodle_url $thispageurl the canonical URL of this page.
* @param \question_edit_contexts $contexts the relevant question bank contexts.
* @param array $pagevars the variables from {@link \question_edit_setup()}.
* @return string HTML to output.
*/
protected function random_question_form(\moodle_url $thispageurl, \question_edit_contexts $contexts, array $pagevars)
{
if (!$contexts->have_cap('moodle/question:useall')) {
return '';
}
$randomform = new \offlinequiz_add_random_form(new \moodle_url('/mod/offlinequiz/addrandom.php'), array('contexts' => $contexts, 'cat' => $pagevars['cat'], 'groupnumber' => $thispageurl->get_param('groupnumber')));
$randomform->set_data(array('category' => $pagevars['cat'], 'returnurl' => $thispageurl->out_as_local_url(true), 'randomnumber' => 1, 'cmid' => $thispageurl->param('cmid')));
return html_writer::div($randomform->render(), 'randomquestionformforpopup');
}
示例7: dirname
*
* @package mod
* @subpackage oublog
* @copyright 2014 The Open University
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
define('AJAX_SCRIPT', true);
require_once dirname(__FILE__) . '/../../config.php';
header('Content-Type: text/plain');
try {
// Test session - These functions throw exceptions so trap and exit if they fail.
// This saves 404 errors and sends a smaller page.
require_login(null, true);
require_sesskey();
} catch (moodle_exception $e) {
$pid = 0;
$url = '/mod/oublog/editpost.php';
if (!empty($_SERVER['HTTP_REFERER'])) {
$url = new moodle_url($_SERVER['HTTP_REFERER']);
$rpid = $url->get_param('post');
if (!empty($rpid)) {
$pid = $rpid;
}
$url = $url->out_as_local_url();
}
$params = array('context' => context_system::instance(), 'other' => array('page' => $url, 'pid' => $pid));
$event = \mod_oublog\event\save_failed::create($params);
$event->trigger();
exit;
}
echo 'ok';
示例8: dirname
*
* @package mod
* @subpackage ouwiki
* @copyright 2013 The Open University
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
define('AJAX_SCRIPT', true);
require_once dirname(__FILE__) . '/../../config.php';
header('Content-Type: text/plain');
try {
// Test session - These functions throw exceptions so trap and exit if they fail.
// This saves 404 errors and sends a smaller page.
require_login(null, true);
require_sesskey();
} catch (moodle_exception $e) {
$pid = 0;
$url = '/mod/ouwiki/edit.php';
if (!empty($_SERVER['HTTP_REFERER'])) {
$url = new moodle_url($_SERVER['HTTP_REFERER']);
$rpid = $url->get_param('id');
if (!empty($rpid)) {
$pid = $rpid;
}
$url = $url->out_as_local_url();
}
$params = array('context' => context_system::instance(), 'other' => array('page' => $url, 'pid' => $pid));
$event = \mod_ouwiki\event\save_failed::create($params);
$event->trigger();
exit;
}
echo 'ok';
示例9: upgrade
/**
* Upgrade the submission from the old assignment to the new one
*
* @param context $oldcontext - the database for the old assignment context
* @param stdClass $oldassignment The data record for the old assignment
* @param stdClass $oldsubmission The data record for the old submission
* @param stdClass $submission The data record for the new submission
* @param string $log Record upgrade messages in the log
* @return bool true or false - false will trigger a rollback
*/
public function upgrade(context $oldcontext, stdClass $oldassignment, stdClass $oldsubmission, stdClass $submission, &$log)
{
global $DB;
$maharadata = unserialize($oldsubmission->data2);
$maharasubmission = new stdClass();
$maharasubmission->viewid = $maharadata['id'];
$maharasubmission->viewurl = $maharadata['url'];
$maharasubmission->viewtitle = $maharadata['title'];
$url = new moodle_url($maharadata['url']);
if ($url->get_param('mt')) {
$maharasubmission->viewstatus = self::STATUS_SUBMITTED;
}
$maharasubmission->submission = $submission->id;
$maharasubmission->assignment = $this->assignment->get_instance()->id;
if (!$DB->insert_record('assignsubmission_mahara', $maharasubmission) > 0) {
$log .= get_string('couldnotconvertsubmission', 'mod_assign', $submission->userid);
return false;
}
return true;
}