当前位置: 首页>>代码示例>>PHP>>正文


PHP moodle_url::remove_params方法代码示例

本文整理汇总了PHP中moodle_url::remove_params方法的典型用法代码示例。如果您正苦于以下问题:PHP moodle_url::remove_params方法的具体用法?PHP moodle_url::remove_params怎么用?PHP moodle_url::remove_params使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在moodle_url的用法示例。


在下文中一共展示了moodle_url::remove_params方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: display

 function display()
 {
     $search = trim(optional_param('search', '', PARAM_TEXT));
     $alpha = optional_param('alpha', '', PARAM_ALPHA);
     // TODO: with a little more work, we could keep the previously selected sort here
     $params = $_GET;
     unset($params['page']);
     // We want to go back to the first page
     unset($params['search']);
     // And clear the search
     $target = $this->page->get_new_page($params);
     echo "<table class=\"searchbox\" style=\"margin-left:auto;margin-right:auto\" cellpadding=\"10\"><tr><td>";
     echo "<form action=\"" . $target->get_url() . "\" method=\"post\">";
     echo "<fieldset class=\"invisiblefieldset\">";
     echo "<input type=\"text\" name=\"search\" value=\"" . s($search, true) . "\" size=\"20\" />";
     echo '<input type="submit" value="' . get_string('search') . '" />';
     //remove the "bare" parameter to prevent from loading only part of the page
     $moodleurl = new moodle_url($target->get_url());
     $moodleurl->remove_params('mode');
     if ($search) {
         echo "<input type=\"button\" onclick=\"document.location='" . $moodleurl->out() . "';\" " . "value=\"Show all items\" />";
     }
     echo "</fieldset></form>";
     echo "</td></tr></table>";
 }
开发者ID:remotelearner,项目名称:elis.cm,代码行数:25,代码来源:cmsearchbox.class.php

示例2: get_progress_bar

 /**
  * Customises the backup progress bar
  *
  * @global moodle_page $PAGE
  * @return array
  */
 public function get_progress_bar()
 {
     global $PAGE;
     $stage = self::STAGE_COMPLETE;
     $currentstage = $this->stage->get_stage();
     $items = array();
     while ($stage > 0) {
         $classes = array('backup_stage');
         if (floor($stage / 2) == $currentstage) {
             $classes[] = 'backup_stage_next';
         } else {
             if ($stage == $currentstage) {
                 $classes[] = 'backup_stage_current';
             } else {
                 if ($stage < $currentstage) {
                     $classes[] = 'backup_stage_complete';
                 }
             }
         }
         $item = array('text' => strlen(decbin($stage * 2)) . '. ' . get_string('importcurrentstage' . $stage, 'backup'), 'class' => join(' ', $classes));
         if ($stage < $currentstage && $currentstage < self::STAGE_COMPLETE && (!self::$skipcurrentstage || $stage * 2 != $currentstage)) {
             $item['link'] = new moodle_url($PAGE->url, $this->stage->get_params() + array('backup' => $this->get_backupid(), 'stage' => $stage));
         }
         array_unshift($items, $item);
         $stage = floor($stage / 2);
     }
     $selectorlink = new moodle_url($PAGE->url, $this->stage->get_params());
     $selectorlink->remove_params('importid');
     array_unshift($items, array('text' => '1. ' . get_string('importcurrentstage0', 'backup'), 'class' => join(' ', $classes), 'link' => $selectorlink));
     return $items;
 }
开发者ID:vuchannguyen,项目名称:web,代码行数:37,代码来源:import_extensions.php

示例3: edit_question

 /**
  * Edit a RTQ question
  *
  * @param int $questionid the RTQ questionid
  *
  * @return mixed
  */
 public function edit_question($questionid)
 {
     global $DB;
     $actionurl = clone $this->baseurl;
     $actionurl->param('action', 'editquestion');
     $actionurl->param('rtqquestionid', $questionid);
     $rtqquestion = $DB->get_record('activequiz_questions', array('id' => $questionid), '*', MUST_EXIST);
     $qrecord = $DB->get_record('question', array('id' => $rtqquestion->questionid), '*', MUST_EXIST);
     $mform = new add_question_form($actionurl, array('rtq' => $this->rtq, 'questionname' => $qrecord->name, 'defaultmark' => $qrecord->defaultmark, 'showhistoryduringquiz' => $rtqquestion->showhistoryduringquiz, 'edit' => true));
     // form handling
     if ($mform->is_cancelled()) {
         // redirect back to list questions page
         $this->baseurl->remove_params('action');
         redirect($this->baseurl, null, 0);
     } else {
         if ($data = $mform->get_data()) {
             // process data from the form
             $question = new \stdClass();
             $question->id = $rtqquestion->id;
             $question->activequizid = $this->rtq->getRTQ()->id;
             $question->questionid = $rtqquestion->questionid;
             $question->notime = $data->notime;
             $question->questiontime = $data->indvquestiontime;
             $question->tries = $data->numberoftries;
             $question->points = number_format($data->points, 2);
             $DB->update_record('activequiz_questions', $question);
             // ensure there is no action or questionid in the baseurl
             $this->baseurl->remove_params('action', 'questionid');
             redirect($this->baseurl, null, 0);
         } else {
             // display the form
             $mform->set_data(array('indvquestiontime' => $rtqquestion->questiontime, 'notime' => $rtqquestion->notime, 'numberoftries' => $rtqquestion->tries, 'points' => $rtqquestion->points));
             $this->renderer->print_editpage_header();
             $this->renderer->editrender_addquestionform($mform);
             $this->renderer->end_editpage();
         }
     }
 }
开发者ID:agarnav,项目名称:moodle-mod_activequiz,代码行数:45,代码来源:questionmanager.php

示例4: starred

 public function starred($message, $userid, $type, $offset = 0, $view = false) {
     $params = array(
             'starred' => $message->id(),
             'sesskey' => sesskey()
     );
     $url = new moodle_url($this->page->url, $params);
     $url->param('offset', $offset);
     $output = html_writer::start_tag('span', array('class' => 'mail_flags'));
     if ($view) {
         $url->param('m', $message->id());
         $url->remove_params(array('offset'));
     }
     if ($message->starred($userid)) {
         $linkparams = array('title' => get_string('starred', 'local_mail'));
         $output .= html_writer::link($url, html_writer::tag('span', '', array('class' => 'mail_starred')), $linkparams);
     } else {
         $linkparams = array('title' => get_string('unstarred', 'local_mail'));
         $output .= html_writer::link($url, html_writer::tag('span', '', array('class' => 'mail_unstarred')), $linkparams);
     }
     $output .= html_writer::end_tag('span');
     return $output;
 }
开发者ID:narasimhaeabyas,项目名称:tataaiapro,代码行数:22,代码来源:renderer.php

示例5: array

$urlparams['userid'] = $userid;
$urlparams['start'] = $start;
$urlparams['end'] = $end;
$course = $DB->get_record('course', array('id' => $courseid), '*', MUST_EXIST);
$PAGE->set_course($course);
$context = $PAGE->context;
if (has_capability('block/timetracker:manageworkers', $context)) {
    //supervisor
    print_error('This page is not accessible by a supervisor');
}
$worker = $DB->get_record('block_timetracker_workerinfo', array('id' => $userid));
if (!$worker) {
    print_error('usernotexist', 'block_timetracker', $CFG->wwwroot . '/blocks/timetracker/index.php?id=' . $course->id);
}
$index = new moodle_url($CFG->wwwroot . '/blocks/timetracker/index.php', $urlparams);
$index->remove_params('userid', 'start', 'end');
$timesheeturl = new moodle_url($CFG->wwwroot . '/blocks/timetracker/timesheet.php', $urlparams);
$timesheeturl->remove_params('start', 'end');
$workersigurl = new moodle_url($CFG->wwwroot . '/blocks/timetracker/workersig.php', $urlparams);
$conflicts = check_worker_hours_for_conflicts($userid, $start, $end);
if (sizeof($conflicts) == 0) {
    redirect($workersigurl);
}
$strtitle = get_string('pluginname', 'block_timetracker');
$PAGE->set_url($timesheeturl);
$PAGE->set_title($strtitle);
$PAGE->set_heading($strtitle);
$PAGE->set_pagelayout('base');
echo $OUTPUT->header();
$tabs = get_tabs($urlparams, false, $courseid);
$tabs = array($tabs);
开发者ID:hughesbradc,项目名称:TimeTracker,代码行数:31,代码来源:conflict_report.php

示例6: get_nojslink

 /**
  * Gets a link for this page that will work with JS disabled.
  *
  * @global moodle_page $PAGE
  * @param moodle_page $page
  * @return moodle_url
  */
 public function get_nojslink(moodle_page $page = null)
 {
     if ($page === null) {
         global $PAGE;
         $page = $PAGE;
     }
     $link = new moodle_url($page->url, array('nonjscomment' => true, 'comment_itemid' => $this->itemid, 'comment_context' => $this->context->id, 'comment_area' => $this->commentarea));
     $link->remove_params(array('comment_page'));
     return $link;
 }
开发者ID:EmmanuelYupit,项目名称:educursos,代码行数:17,代码来源:lib.php

示例7: output

    /**
     * Prepare comment code in html
     * @param  boolean $return
     * @return mixed
     */
    public function output($return = true)
    {
        global $PAGE, $OUTPUT;
        static $template_printed;
        $this->link = $PAGE->url;
        $murl = new moodle_url($this->link);
        $murl->remove_params('nonjscomment');
        $murl->param('nonjscomment', 'true');
        $murl->param('comment_itemid', $this->itemid);
        $murl->param('comment_context', $this->context->id);
        $murl->param('comment_area', $this->commentarea);
        $murl->remove_params('comment_page');
        $this->link = $murl->out();
        $options = new stdClass();
        $options->client_id = $this->cid;
        $options->commentarea = $this->commentarea;
        $options->itemid = $this->itemid;
        $options->page = 0;
        $options->courseid = $this->courseid;
        $options->contextid = $this->contextid;
        $options->env = $this->env;
        $options->component = $this->component;
        if ($this->env == 'block_comments') {
            $options->notoggle = true;
            $options->autostart = true;
        }
        $PAGE->requires->js_init_call('M.core_comment.init', array($options), true);
        if (!empty(self::$nonjs)) {
            // return non js comments interface
            return $this->print_comments(self::$comment_page, $return, true);
        }
        $strsubmit = get_string('savecomment');
        $strcancel = get_string('cancel');
        $strshowcomments = get_string('showcommentsnonjs');
        $sesskey = sesskey();
        $html = '';
        // print html template
        // Javascript will use the template to render new comments
        if (empty($template_printed) && !empty($this->viewcap)) {
            $html .= '<div style="display:none" id="cmt-tmpl">' . $this->template . '</div>';
            $template_printed = true;
        }
        if (!empty($this->viewcap)) {
            // print commenting icon and tooltip
            $icon = $OUTPUT->pix_url('t/collapsed');
            $html .= <<<EOD
<div class="mdl-left">
<a class="showcommentsnonjs" href="{$this->link}">{$strshowcomments}</a>
EOD;
            if ($this->env != 'block_comments') {
                $html .= <<<EOD
<a id="comment-link-{$this->cid}" class="comment-link" href="#">
    <img id="comment-img-{$this->cid}" src="{$icon}" alt="{$this->linktext}" title="{$this->linktext}" />
    <span id="comment-link-text-{$this->cid}">{$this->linktext} {$this->count}</span>
</a>
EOD;
            }
            $html .= <<<EOD
<div id="comment-ctrl-{$this->cid}" class="comment-ctrl">
    <ul id="comment-list-{$this->cid}" class="comment-list">
        <li class="first"></li>
EOD;
            // in comments block, we print comments list right away
            if ($this->env == 'block_comments') {
                $html .= $this->print_comments(0, true, false);
                $html .= '</ul>';
                $html .= $this->get_pagination(0);
            } else {
                $html .= <<<EOD
    </ul>
    <div id="comment-pagination-{$this->cid}" class="comment-pagination"></div>
EOD;
            }
            // print posting textarea
            if (!empty($this->postcap)) {
                $html .= <<<EOD
<div class='comment-area'>
    <div class="bd">
        <textarea name="content" rows="2" cols="20" id="dlg-content-{$this->cid}"></textarea>
    </div>
    <div class="fd" id="comment-action-{$this->cid}">
        <a href="#" id="comment-action-post-{$this->cid}"> {$strsubmit} </a>
EOD;
                if ($this->env != 'block_comments') {
                    $html .= "<span> | </span><a href=\"#\" id=\"comment-action-cancel-{$this->cid}\"> {$strcancel} </a>";
                }
                $html .= <<<EOD
    </div>
</div>
<div class="clearer"></div>
EOD;
            }
            $html .= <<<EOD
</div><!-- end of comment-ctrl -->
</div>
//.........这里部分代码省略.........
开发者ID:vuchannguyen,项目名称:web,代码行数:101,代码来源:lib.php

示例8: display_instances_list

 /**
  * Display a repository instance list (with edit/delete/create links)
  *
  * @static
  * @param stdClass $context the context for which we display the instance
  * @param string $typename if set, we display only one type of instance
  */
 public static function display_instances_list($context, $typename = null)
 {
     global $CFG, $USER, $OUTPUT;
     $output = $OUTPUT->box_start('generalbox');
     //if the context is SYSTEM, so we call it from administration page
     $admin = $context->id == SYSCONTEXTID ? true : false;
     if ($admin) {
         $baseurl = new moodle_url('/' . $CFG->admin . '/repositoryinstance.php', array('sesskey' => sesskey()));
         $output .= $OUTPUT->heading(get_string('siteinstances', 'repository'));
     } else {
         $baseurl = new moodle_url('/repository/manage_instances.php', array('contextid' => $context->id, 'sesskey' => sesskey()));
     }
     $namestr = get_string('name');
     $pluginstr = get_string('plugin', 'repository');
     $settingsstr = get_string('settings');
     $deletestr = get_string('delete');
     // Retrieve list of instances. In administration context we want to display all
     // instances of a type, even if this type is not visible. In course/user context we
     // want to display only visible instances, but for every type types. The repository::get_instances()
     // third parameter displays only visible type.
     $params = array();
     $params['context'] = array($context);
     $params['currentcontext'] = $context;
     $params['return_types'] = 0;
     $params['onlyvisible'] = !$admin;
     $params['type'] = $typename;
     $instances = repository::get_instances($params);
     $instancesnumber = count($instances);
     $alreadyplugins = array();
     $table = new html_table();
     $table->head = array($namestr, $pluginstr, $settingsstr, $deletestr);
     $table->align = array('left', 'left', 'center', 'center');
     $table->data = array();
     $updowncount = 1;
     foreach ($instances as $i) {
         $settings = '';
         $delete = '';
         $type = repository::get_type_by_id($i->options['typeid']);
         if ($type->get_contextvisibility($context)) {
             if (!$i->readonly) {
                 $settingurl = new moodle_url($baseurl);
                 $settingurl->param('type', $i->options['type']);
                 $settingurl->param('edit', $i->id);
                 $settings .= html_writer::link($settingurl, $settingsstr);
                 $deleteurl = new moodle_url($baseurl);
                 $deleteurl->param('delete', $i->id);
                 $deleteurl->param('type', $i->options['type']);
                 $delete .= html_writer::link($deleteurl, $deletestr);
             }
         }
         $type = repository::get_type_by_id($i->options['typeid']);
         $table->data[] = array(format_string($i->name), $type->get_readablename(), $settings, $delete);
         //display a grey row if the type is defined as not visible
         if (isset($type) && !$type->get_visible()) {
             $table->rowclasses[] = 'dimmed_text';
         } else {
             $table->rowclasses[] = '';
         }
         if (!in_array($i->name, $alreadyplugins)) {
             $alreadyplugins[] = $i->name;
         }
     }
     $output .= html_writer::table($table);
     $instancehtml = '<div>';
     $addable = 0;
     //if no type is set, we can create all type of instance
     if (!$typename) {
         $instancehtml .= '<h3>';
         $instancehtml .= get_string('createrepository', 'repository');
         $instancehtml .= '</h3><ul>';
         $types = repository::get_editable_types($context);
         foreach ($types as $type) {
             if (!empty($type) && $type->get_visible()) {
                 // If the user does not have the permission to view the repository, it won't be displayed in
                 // the list of instances. Hiding the link to create new instances will prevent the
                 // user from creating them without being able to find them afterwards, which looks like a bug.
                 if (!has_capability('repository/' . $type->get_typename() . ':view', $context)) {
                     continue;
                 }
                 $instanceoptionnames = repository::static_function($type->get_typename(), 'get_instance_option_names');
                 if (!empty($instanceoptionnames)) {
                     $baseurl->param('new', $type->get_typename());
                     $instancehtml .= '<li><a href="' . $baseurl->out() . '">' . get_string('createxxinstance', 'repository', get_string('pluginname', 'repository_' . $type->get_typename())) . '</a></li>';
                     $baseurl->remove_params('new');
                     $addable++;
                 }
             }
         }
         $instancehtml .= '</ul>';
     } else {
         $instanceoptionnames = repository::static_function($typename, 'get_instance_option_names');
         if (!empty($instanceoptionnames)) {
             //create a unique type of instance
//.........这里部分代码省略.........
开发者ID:isuruAb,项目名称:moodle,代码行数:101,代码来源:lib.php

示例9: foreach

     $users = $DB->get_records_sql($sql, $params);
     if ($page * $perpage > count($users)) {
         $page = 0;
     }
     $url = new moodle_url($PAGE->url);
     $url->remove_params(array('page'));
     echo $OUTPUT->paging_bar(count($users), $page, $perpage, $url, 'page');
     $users = array_slice($users, $page * $perpage, $perpage, true);
     foreach ($users as $user) {
         $user->fullname = fullname($user);
         $user->score = 0;
     }
     $strtotals = get_string('totals', 'realtimequiz');
     list($usql, $uparams) = $DB->get_in_or_equal(array_keys($users), SQL_PARAMS_NAMED);
     $nousersurl = new moodle_url($PAGE->url);
     $nousersurl->remove_params(array('showusers'));
     $userlink = html_writer::link($nousersurl, get_string('hideusers', 'realtimequiz'));
 } else {
     $usersurl = new moodle_url($PAGE->url);
     $usersurl->param('showusers', 1);
     $userlink = html_writer::link($usersurl, get_string('showusers', 'realtimequiz'));
 }
 echo html_writer::tag('p', $userlink);
 echo '<br /><table border="1" style="border-style: none;">';
 if (!empty($questions)) {
     foreach ($questions as $question) {
         echo '<tr class="realtimequiz_report_question"><td width="30%">' . $question->questionnum . '</td>';
         $answers = $DB->get_records('realtimequiz_answer', array('questionid' => $question->id), 'id');
         if (!empty($answers)) {
             $iscorrectanswer = false;
             foreach ($answers as $answer) {
开发者ID:OctaveBabel,项目名称:moodle-itop,代码行数:31,代码来源:responses.php

示例10: course_filter_selector

 /**
  * Displays a course filter selector
  *
  * @param moodle_url $returnurl The URL that the user should be taken too upon selecting a course.
  * @param string $label The label to use for the course select.
  * @return string
  */
 protected function course_filter_selector(moodle_url $returnurl, $label = null)
 {
     global $USER, $SESSION, $CFG;
     if (!isloggedin() or isguestuser()) {
         return '';
     }
     if (has_capability('moodle/calendar:manageentries', context_system::instance()) && !empty($CFG->calendar_adminseesall)) {
         $courses = get_courses('all', 'c.shortname', 'c.id,c.shortname');
     } else {
         $courses = enrol_get_my_courses();
     }
     unset($courses[SITEID]);
     $courseoptions = array();
     $courseoptions[SITEID] = get_string('fulllistofcourses');
     foreach ($courses as $course) {
         $coursecontext = context_course::instance($course->id);
         $courseoptions[$course->id] = format_string($course->shortname, true, array('context' => $coursecontext));
     }
     if ($this->page->course->id !== SITEID) {
         $selected = $this->page->course->id;
     } else {
         $selected = '';
     }
     $courseurl = new moodle_url($returnurl);
     $courseurl->remove_params('course');
     $select = new single_select($courseurl, 'course', $courseoptions, $selected, null);
     $select->class = 'cal_courses_flt';
     if ($label !== null) {
         $select->set_label($label);
     } else {
         $select->set_label(get_string('listofcourses'), array('class' => 'accesshide'));
     }
     return $this->output->render($select);
 }
开发者ID:abhilash1994,项目名称:moodle,代码行数:41,代码来源:renderer.php

示例11: message_remove_url_params

/**
 * strip off action parameters like 'removecontact'
 * @param moodle_url/string $moodleurl a URL. Typically the current page URL.
 * @return string the URL minus parameters that perform actions (like adding/removing/blocking a contact).
 */
function message_remove_url_params($moodleurl) {
    $newurl = new moodle_url($moodleurl);
    $newurl->remove_params('addcontact','removecontact','blockcontact','unblockcontact');
    return $newurl->out();
}
开发者ID:nfreear,项目名称:moodle,代码行数:10,代码来源:lib.php

示例12: stdClass

echo $OUTPUT->header();
$ratingoptions = new stdClass();
$ratingoptions->context = $context;
$ratingoptions->component = $component;
$ratingoptions->ratingarea = $ratingarea;
$ratingoptions->itemid = $itemid;
$ratingoptions->sort = $sqlsort;
$rm = new rating_manager();
$ratings = $rm->get_all_ratings_for_item($ratingoptions);
if (!$ratings) {
    $msg = get_string('noratings', 'rating');
    echo html_writer::tag('div', $msg, array('class' => 'mdl-align'));
} else {
    // To get the sort URL, copy the current URL and remove any previous sort.
    $sorturl = new moodle_url($url);
    $sorturl->remove_params('sort');
    $table = new html_table();
    $table->cellpadding = 3;
    $table->cellspacing = 3;
    $table->attributes['class'] = 'generalbox ratingtable';
    $table->head = array('', html_writer::link(new moodle_url($sorturl, array('sort' => 'firstname')), $strname), html_writer::link(new moodle_url($sorturl, array('sort' => 'rating')), $strrating), html_writer::link(new moodle_url($sorturl, array('sort' => 'time')), $strtime));
    $table->colclasses = array('', 'firstname', 'rating', 'time');
    $table->data = array();
    // If the scale was changed after ratings were submitted some ratings may have a value above the current maximum.
    // We can't just do count($scalemenu) - 1 as custom scales start at index 1, not 0.
    $maxrating = max(array_keys($scalemenu));
    foreach ($ratings as $rating) {
        if (!$canviewallratings and $USER->id != $rating->userid) {
            continue;
        }
        // Undo the aliasing of the user id column from user_picture::fields().
开发者ID:Keneth1212,项目名称:moodle,代码行数:31,代码来源:index.php

示例13: get_string

    $cm = get_coursemodule_from_instance("giportfolio", $giportfolio->id, $course->id, false, MUST_EXIST);
    $url->param('p', $p);
}
if ($currenttab !== 'all') {
    $url->param('tab', $currenttab);
}
$PAGE->set_url($url);
require_login($course->id, false, $cm);
$context = context_module::instance($cm->id);
require_capability('mod/giportfolio:gradegiportfolios', $context);
require_capability('mod/giportfolio:viewgiportfolios', $context);
$PAGE->set_title(format_string($giportfolio->name));
echo $OUTPUT->header();
// Set up the list of tabs.
$allurl = new moodle_url($PAGE->url);
$allurl->remove_params('tab');
$sincelastloginurl = new moodle_url($PAGE->url, array('tab' => 'sincelastlogin'));
$nocommentsurl = new moodle_url($PAGE->url, array('tab' => 'nocomments'));
$tabs = array(new tabobject('all', $allurl, get_string('allusers', 'mod_giportfolio')), new tabobject('sincelastlogin', $sincelastloginurl, get_string('sincelastlogin', 'mod_giportfolio')), new tabobject('nocomments', $nocommentsurl, get_string('nocomments', 'mod_giportfolio')));
echo get_string('studentgiportfolios', 'mod_giportfolio');
echo '</br>';
if ($CFG->version > 2013051400) {
    echo $OUTPUT->tabtree($tabs, $currenttab);
} else {
    $tabs = array($tabs);
    echo print_tabs($tabs, $currenttab, array(), array(), true);
}
echo get_string('filterlist', 'mod_giportfolio');
$tabindex = 1;
// Tabindex for quick grading tabbing; Not working for dropdowns yet.
// Check to see if groups are being used in this assignment.
开发者ID:andrewhancox,项目名称:moodle-mod_giportfolio,代码行数:31,代码来源:submissions.php

示例14: definition


//.........这里部分代码省略.........
                             if ($subunit->timein > $this->reportstart) {
                                 $start = $subunit->timein;
                             } else {
                                 $start = $this->reportstart;
                             }
                             $currelapsed = $subunit->timeout - $start;
                         }
                         $hrs = get_hours($currelapsed, $subunit->courseid);
                         $total += $hrs;
                         $row .= $hrs . ' hour(s)';
                         $row .= '<br />';
                     }
                 }
                 $row .= '</td>' . "\n";
             } else {
                 //unit occurs all in one repstart-repend
                 $row .= '<td style="text-align: center">';
                 $row .= userdate($unit->timein, get_string('datetimeformat', 'block_timetracker'));
                 $row .= ' to ' . userdate($unit->timeout, get_string('datetimeformat', 'block_timetracker'));
                 $row .= '</td>';
                 $row .= '<td style="text-align: center">';
                 $currelapsed = $unit->timeout - $unit->timein;
                 $hrs = get_hours($currelapsed, $unit->courseid);
                 $total += $hrs;
                 $row .= $hrs . ' hour(s)</td>';
             }
             if ($canmanage || $canview) {
                 $urlparams['id'] = $unit->courseid;
                 $urlparams['userid'] = $unit->userid;
                 $urlparams['sesskey'] = sesskey();
                 $urlparams['unitid'] = $unit->id;
                 $unitdateinfo = usergetdate($unit->timein);
                 if ($unit->timesheetid && !$unit->submitted) {
                     //show greyed out icons and no URL
                     $row .= '<td style="text-align: center">' . html_writer::empty_tag('img', array('src' => $CFG->wwwroot . '/blocks/timetracker/pix/wait.png', 'class' => 'icon')) . '</td>';
                 } else {
                     if ($unit->timesheetid && $unit->submitted) {
                         $row .= '<td style="text-align: center">' . html_writer::empty_tag('img', array('src' => $CFG->wwwroot . '/blocks/timetracker/pix/certified.png', 'class' => 'icon')) . '</td>';
                     } else {
                         if (!$unit->canedit) {
                             //show greyed out icons and no URL
                             $row .= '<td style="text-align: center">' . html_writer::empty_tag('img', array('src' => $CFG->wwwroot . '/blocks/timetracker/pix/clock_edit_bw.png', 'class' => 'icon')) . ' ' . html_writer::empty_tag('img', array('src' => $CFG->wwwroot . '/blocks/timetracker/pix/clock_delete_bw.png', 'class' => 'icon')) . '</td>';
                         } else {
                             $deleteurl = new moodle_url($baseurl . '/deleteworkunit.php', $urlparams);
                             $deleteicon = new pix_icon('clock_delete', get_string('delete'), 'block_timetracker');
                             $deleteaction = $OUTPUT->action_icon($deleteurl, $deleteicon, new confirm_action('Are you sure you want to delete this work unit?'));
                             //error_log (($now - $unit->timein)-(86400*35));
                             $editurl = new moodle_url($baseurl . '/editunit.php', $urlparams);
                             $editurl->remove_params('sesskey');
                             $editaction = $OUTPUT->action_icon($editurl, new pix_icon('clock_edit', get_string('edit'), 'block_timetracker'));
                             $row .= '<td style="text-align: center">';
                             if ($canmanage) {
                                 $row .= $editaction . ' ' . $deleteaction . '</td>';
                             } else {
                                 $row .= '&nbsp;';
                             }
                             $row .= '</td>';
                         }
                     }
                 }
             } else {
                 $urlparams['id'] = $this->courseid;
                 $urlparams['userid'] = $unit->userid;
                 $urlparams['sesskey'] = sesskey();
                 $urlparams['unitid'] = $unit->id;
                 $unitdateinfo = usergetdate($unit->timein);
                 if ($unit->timesheetid && !$unit->submitted) {
                     //show greyed out icons and no URL
                     $row .= '<td style="text-align: center">' . html_writer::empty_tag('img', array('src' => $CFG->wwwroot . '/blocks/timetracker/pix/wait.png', 'class' => 'icon')) . '</td>';
                 } else {
                     if ($unit->timesheetid && $unit->submitted) {
                         $row .= '<td style="text-align: center">' . html_writer::empty_tag('img', array('src' => $CFG->wwwroot . '/blocks/timetracker/pix/certified.png', 'class' => 'icon')) . '</td>';
                     } else {
                         if (!$unit->canedit) {
                             //show greyed out icons and no URL
                             $alertaction = html_writer::empty_tag('img', array('src' => $CFG->wwwroot . '/blocks/timetracker/pix/alert_bw.gif', 'class' => 'icon'));
                         } else {
                             $alerturl = new moodle_url($baseurl . '/alert.php', $urlparams);
                             $alerticon = new pix_icon('alert', 'Alert Supervisor of Error', 'block_timetracker');
                             $alertaction = $OUTPUT->action_icon($alerturl, $alerticon);
                             $row .= '<td style="text-align:center">' . $alertaction . '</td>';
                         }
                     }
                 }
             }
             $row .= '</tr>';
             $mform->addElement('html', $row);
         }
         $finalrow = '<tr>';
         if ($canmanage) {
             $finalrow .= '<td>&nbsp;</td>';
         }
         $finalrow .= '<td>&nbsp;</td>
                 <td>&nbsp;</td>
                 <td style="text-align: center; border-top: 1px solid black"><b>Total: 
                 </b>' . round($total, 3) . ' hour(s)</td>
                 <td>&nbsp;</td></tr></table>';
         $mform->addElement('html', $finalrow);
     }
 }
开发者ID:hughesbradc,项目名称:TimeTracker,代码行数:101,代码来源:timetracker_reports_form.php

示例15: view_overview

 /**
  * view overview tab
  */
 public function view_overview()
 {
     global $PAGE, $OUTPUT;
     $groupid = optional_param('groupid', 0, PARAM_INT);
     $groupingid = optional_param('groupingid', 0, PARAM_INT);
     $orientation = optional_param('orientation', 0, PARAM_BOOL);
     $url = new moodle_url($PAGE->url, array('sesskey' => sesskey(), 'groupid' => $groupid, 'groupingid' => $groupingid, 'orientation' => $orientation));
     // Process submitted form!
     if (data_submitted() && confirm_sesskey() && optional_param('confirm', 0, PARAM_BOOL)) {
         // Execution has been confirmed?!
         $hideform = 0;
         $pushtomdl = optional_param('pushtomdl', 0, PARAM_BOOL);
         if ($pushtomdl) {
             list($error, $message) = $this->push_registrations($groupid, $groupingid);
         }
         if ($error) {
             echo $OUTPUT->notification($message, 'notifyproblem');
         } else {
             echo $OUTPUT->notification($message, 'notifysuccess');
         }
     } else {
         if (data_submitted() && confirm_sesskey()) {
             // Display confirm-dialog!
             $hideform = 1;
             $pushtomdl = optional_param('pushtomdl', 0, PARAM_BOOL);
             if ($pushtomdl) {
                 // Try only!
                 list($error, $message) = $this->push_registrations($groupid, $groupingid, true);
                 $attr = array();
                 $attr['confirm'] = 1;
                 $attr['pushtomdl'] = 1;
                 $attr['sesskey'] = sesskey();
                 $continue = new moodle_url($PAGE->url, $attr);
                 $cancel = new moodle_url($PAGE->url);
                 if ($error) {
                     $continue->remove_params('confirm', 'group');
                     $continue = new single_button($continue, get_string('continue'), 'get');
                     $cancel = null;
                 }
                 echo $this->confirm($message, $continue, $cancel);
             } else {
                 $hideform = 0;
             }
         } else {
             $hideform = 0;
         }
     }
     if (!$hideform) {
         $groupings = groups_get_all_groupings($this->course->id);
         $options = array(0 => get_string('all'));
         if (count($groupings)) {
             foreach ($groupings as $grouping) {
                 $options[$grouping->id] = $grouping->name;
             }
         }
         $groupingselect = new single_select($url, 'groupingid', $options, $groupingid, false);
         $groups = $this->get_active_groups(false, false, 0, 0, $groupingid);
         $options = array(0 => get_string('all'));
         if (count($groups)) {
             foreach ($groups as $group) {
                 $options[$group->id] = $group->name;
             }
         }
         if (!key_exists($groupid, $options)) {
             $groupid = 0;
             $url->param('groupid', 0);
             echo $OUTPUT->box($OUTPUT->notification(get_string('group_not_in_grouping', 'grouptool') . html_writer::empty_tag('br') . get_string('switched_to_all_groups', 'grouptool'), 'notifyproblem'), 'generalbox centered');
         }
         $groupselect = new single_select($url, 'groupid', $options, $groupid, false);
         $options = array(0 => get_string('portrait', 'grouptool'), 1 => get_string('landscape', 'grouptool'));
         $orientationselect = new single_select($url, 'orientation', $options, $orientation, false);
         $syncstatus = $this->get_sync_status();
         if ($syncstatus[0]) {
             /*
              * Out of sync? --> show button to get registrations from grouptool to moodle
              * (just register not already registered persons and let the others be)
              */
             $url = new moodle_url($PAGE->url, array('pushtomdl' => 1, 'sesskey' => sesskey()));
             $button = new single_button($url, get_string('updatemdlgrps', 'grouptool'));
             echo $OUTPUT->box(html_writer::empty_tag('br') . $OUTPUT->render($button) . html_writer::empty_tag('br'), 'generalbox centered');
         }
         echo html_writer::tag('div', get_string('grouping', 'group') . '&nbsp;' . $OUTPUT->render($groupingselect), array('class' => 'centered grouptool_overview_filter')) . html_writer::tag('div', get_string('group', 'group') . '&nbsp;' . $OUTPUT->render($groupselect), array('class' => 'centered grouptool_overview_filter')) . html_writer::tag('div', get_string('orientation', 'grouptool') . '&nbsp;' . $OUTPUT->render($orientationselect), array('class' => 'centered grouptool_userlist_filter'));
         // If we don't only get the data, the output happens directly per group!
         $this->group_overview_table($groupingid, $groupid);
     }
 }
开发者ID:rimacher,项目名称:moodle-mod_grouptool,代码行数:89,代码来源:locallib.php


注:本文中的moodle_url::remove_params方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。