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


PHP course_get_cm_edit_actions函数代码示例

本文整理汇总了PHP中course_get_cm_edit_actions函数的典型用法代码示例。如果您正苦于以下问题:PHP course_get_cm_edit_actions函数的具体用法?PHP course_get_cm_edit_actions怎么用?PHP course_get_cm_edit_actions使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


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

示例1: make_editing_buttons

/**
 * Produces the editing buttons for a module
 *
 * Deprecated. Please use:
 * $courserenderer = $PAGE->get_renderer('core', 'course');
 * $actions = course_get_cm_edit_actions($mod, $indent, $section);
 * return ' ' . $courserenderer->course_section_cm_edit_actions($actions);
 *
 * @deprecated since 2.5
 * @see course_get_cm_edit_actions()
 * @see core_course_renderer->course_section_cm_edit_actions()
 *
 * @param stdClass $mod The module to produce editing buttons for
 * @param bool $absolute_ignored (argument ignored) - all links are absolute
 * @param bool $moveselect (argument ignored)
 * @param int $indent The current indenting
 * @param int $section The section to link back to
 * @return string XHTML for the editing buttons
 */
function make_editing_buttons(stdClass $mod, $absolute_ignored = true, $moveselect = true, $indent = -1, $section = null)
{
    global $PAGE;
    debugging('Function make_editing_buttons() is deprecated, please see PHPdocs in ' . 'lib/deprecatedlib.php on how to replace it', DEBUG_DEVELOPER);
    if (!$mod instanceof cm_info) {
        $modinfo = get_fast_modinfo($mod->course);
        $mod = $modinfo->get_cm($mod->id);
    }
    $actions = course_get_cm_edit_actions($mod, $indent, $section);
    $courserenderer = $PAGE->get_renderer('core', 'course');
    // The space added before the <span> is a ugly hack but required to set the CSS property white-space: nowrap
    // and having it to work without attaching the preceding text along with it. Hopefully the refactoring of
    // the course page HTML will allow this to be removed.
    return ' ' . $courserenderer->course_section_cm_edit_actions($actions);
}
开发者ID:Hirenvaghasiya,项目名称:moodle,代码行数:34,代码来源:deprecatedlib.php

示例2: get_content


//.........这里部分代码省略.........
     }
     // extra fast view mode
     $modinfo = get_fast_modinfo($course);
     if (!$isediting) {
         if (!empty($modinfo->sections[$this->config->section])) {
             $options = array('overflowdiv' => true);
             foreach ($modinfo->sections[$this->config->section] as $cmid) {
                 $cm = $modinfo->cms[$cmid];
                 if (!$cm->uservisible) {
                     continue;
                 }
                 $content = $cm->get_formatted_content(array('overflowdiv' => true, 'noclean' => true));
                 $instancename = $cm->get_formatted_name();
                 if (!($url = $cm->url)) {
                     $this->content->items[] = $content;
                     $this->content->icons[] = '';
                 } else {
                     $linkcss = $cm->visible ? '' : ' class="dimmed" ';
                     // Accessibility: incidental image - should be empty Alt text
                     $icon = '<img src="' . $cm->get_icon_url() . '" class="icon" alt="" />&nbsp;';
                     $this->content->items[] = '<a title="' . $cm->modplural . '" ' . $linkcss . ' ' . $cm->extra . ' href="' . $url . '">' . $icon . $instancename . '</a>';
                 }
             }
         }
         return $this->content;
     }
     // slow & hacky editing mode
     $courserenderer = $this->page->get_renderer('core', 'course');
     $ismoving = ismoving($course->id);
     if (!($cs = $DB->get_record('course_sections', array('section' => $this->config->section, 'course' => $course->id)))) {
         debugging('Could not get course section record for section ' . $this->config->section, DEBUG_DEVELOPER);
         return $this->content;
     }
     $modinfo = get_fast_modinfo($course);
     $section = $modinfo->get_section_info($this->config->section);
     $modnames = get_module_types_names();
     $groupbuttons = $course->groupmode;
     $groupbuttonslink = !$course->groupmodeforce;
     if ($ismoving) {
         $strmovehere = get_string('movehere');
         $strmovefull = strip_tags(get_string('movefull', '', "'{$USER->activitycopyname}'"));
         $strcancel = get_string('cancel');
         $stractivityclipboard = $USER->activitycopyname;
     } else {
         $strmove = get_string('move');
     }
     // Casting $course->modinfo to string prevents one notice when the field is null
     $editbuttons = '';
     if ($ismoving) {
         $this->content->icons[] = '<img src="' . $OUTPUT->pix_url('t/move') . '" class="iconsmall" alt="" />';
         $this->content->items[] = $USER->activitycopyname . '&nbsp;(<a href="' . $CFG->wwwroot . '/course/mod.php?cancelcopy=true&amp;sesskey=' . sesskey() . '">' . $strcancel . '</a>)';
     }
     if (!empty($modinfo->sections[$this->config->section])) {
         $options = array('overflowdiv' => true);
         foreach ($modinfo->sections[$this->config->section] as $modnumber) {
             $mod = $modinfo->cms[$modnumber];
             if (!$mod->uservisible) {
                 continue;
             }
             if (!$ismoving) {
                 $actions = course_get_cm_edit_actions($mod, -1);
                 // Prepend list of actions with the 'move' action.
                 $actions = array('move' => new action_menu_link_primary(new moodle_url('/course/mod.php', array('sesskey' => sesskey(), 'copy' => $mod->id)), new pix_icon('t/move', $strmove, 'moodle', array('class' => 'iconsmall', 'title' => '')), $strmove)) + $actions;
                 $editactions = $courserenderer->course_section_cm_edit_actions($actions, $mod, array('donotenhance' => true));
                 $editbuttons = html_writer::tag('div', $editactions, array('class' => 'buttons'));
             } else {
                 $editbuttons = '';
             }
             if ($mod->visible || has_capability('moodle/course:viewhiddenactivities', $context)) {
                 if ($ismoving) {
                     if ($mod->id == $USER->activitycopy) {
                         continue;
                     }
                     $this->content->items[] = '<a title="' . $strmovefull . '" href="' . $CFG->wwwroot . '/course/mod.php' . '?moveto=' . $mod->id . '&amp;sesskey=' . sesskey() . '"><img style="height:16px; width:80px; border:0px"' . ' src="' . $OUTPUT->pix_url('movehere') . '" alt="' . $strmovehere . '" /></a>';
                     $this->content->icons[] = '';
                 }
                 $content = $mod->get_formatted_content(array('overflowdiv' => true, 'noclean' => true));
                 $instancename = $mod->get_formatted_name();
                 $linkcss = $mod->visible ? '' : ' class="dimmed" ';
                 if (!($url = $mod->url)) {
                     $this->content->items[] = $content . $editbuttons;
                     $this->content->icons[] = '';
                 } else {
                     // Accessibility: incidental image - should be empty Alt text
                     $icon = '<img src="' . $mod->get_icon_url() . '" class="icon" alt="" />&nbsp;';
                     $this->content->items[] = '<a title="' . $mod->modfullname . '" ' . $linkcss . ' ' . $mod->extra . ' href="' . $url . '">' . $icon . $instancename . '</a>' . $editbuttons;
                 }
             }
         }
     }
     if ($ismoving) {
         $this->content->items[] = '<a title="' . $strmovefull . '" href="' . $CFG->wwwroot . '/course/mod.php?' . 'movetosection=' . $section->id . '&amp;sesskey=' . sesskey() . '"><img style="height' . ':16px; width:80px; border:0px" src="' . $OUTPUT->pix_url('movehere') . '" alt="' . $strmovehere . '" /></a>';
         $this->content->icons[] = '';
     }
     $this->content->footer = $courserenderer->course_section_add_cm_control($course, $this->config->section, null, array('inblock' => true));
     // Replace modchooser with dropdown
     $this->content->footer = str_replace('hiddenifjs addresourcedropdown', 'visibleifjs addresourcedropdown', $this->content->footer);
     $this->content->footer = str_replace('visibleifjs addresourcemodchooser', 'hiddenifjs addresourcemodchooser', $this->content->footer);
     return $this->content;
 }
开发者ID:bostelm,项目名称:moodle-block_side_bar,代码行数:101,代码来源:block_side_bar.php

示例3: get_content

 function get_content()
 {
     global $USER, $CFG, $DB, $OUTPUT;
     if ($this->content !== NULL) {
         return $this->content;
     }
     $this->content = new stdClass();
     $this->content->items = array();
     $this->content->icons = array();
     $this->content->footer = '';
     if (empty($this->instance)) {
         return $this->content;
     }
     $course = $this->page->course;
     require_once $CFG->dirroot . '/course/lib.php';
     $context = context_course::instance($course->id);
     $isediting = $this->page->user_is_editing() && has_capability('moodle/course:manageactivities', $context);
     /// extra fast view mode
     if (!$isediting) {
         $modinfo = get_fast_modinfo($course);
         if (!empty($modinfo->sections[0])) {
             foreach ($modinfo->sections[0] as $cmid) {
                 $cm = $modinfo->cms[$cmid];
                 if (!$cm->uservisible) {
                     continue;
                 }
                 if ($cm->indent > 0) {
                     $indent = '<div class="mod-indent mod-indent-' . $cm->indent . '"></div>';
                 } else {
                     $indent = '';
                 }
                 if (!empty($cm->url)) {
                     $attrs = array();
                     $attrs['title'] = $cm->modfullname;
                     $attrs['class'] = $cm->extraclasses . ' activity-action';
                     if ($cm->onclick) {
                         $attrs['id'] = html_writer::random_id('onclick');
                         $OUTPUT->add_action_handler(new component_action('click', $cm->onclick), $attrs['id']);
                     }
                     if (!$cm->visible) {
                         $attrs['class'] .= ' dimmed';
                     }
                     $icon = '<img src="' . $cm->get_icon_url() . '" class="icon" alt="" />';
                     $content = html_writer::link($cm->url, $icon . $cm->get_formatted_name(), $attrs);
                 } else {
                     $content = $cm->get_formatted_content(array('overflowdiv' => true, 'noclean' => true));
                 }
                 $this->content->items[] = $indent . html_writer::div($content, 'main-menu-content');
             }
         }
         return $this->content;
     }
     // Slow & hacky editing mode.
     /** @var core_course_renderer $courserenderer */
     $courserenderer = $this->page->get_renderer('core', 'course');
     $ismoving = ismoving($course->id);
     course_create_sections_if_missing($course, 0);
     $modinfo = get_fast_modinfo($course);
     $section = $modinfo->get_section_info(0);
     if ($ismoving) {
         $strmovehere = get_string('movehere');
         $strmovefull = strip_tags(get_string('movefull', '', "'{$USER->activitycopyname}'"));
         $strcancel = get_string('cancel');
         $stractivityclipboard = $USER->activitycopyname;
     } else {
         $strmove = get_string('move');
     }
     $editbuttons = '';
     if ($ismoving) {
         $this->content->icons[] = '<img src="' . $OUTPUT->pix_url('t/move') . '" class="iconsmall" alt="" />';
         $this->content->items[] = $USER->activitycopyname . '&nbsp;(<a href="' . $CFG->wwwroot . '/course/mod.php?cancelcopy=true&amp;sesskey=' . sesskey() . '">' . $strcancel . '</a>)';
     }
     if (!empty($modinfo->sections[0])) {
         $options = array('overflowdiv' => true);
         foreach ($modinfo->sections[0] as $modnumber) {
             $mod = $modinfo->cms[$modnumber];
             if (!$mod->uservisible) {
                 continue;
             }
             if (!$ismoving) {
                 $actions = course_get_cm_edit_actions($mod, $mod->indent);
                 // Prepend list of actions with the 'move' action.
                 $actions = array('move' => new action_menu_link_primary(new moodle_url('/course/mod.php', array('sesskey' => sesskey(), 'copy' => $mod->id)), new pix_icon('t/move', $strmove, 'moodle', array('class' => 'iconsmall', 'title' => '')), $strmove)) + $actions;
                 $editbuttons = html_writer::tag('div', $courserenderer->course_section_cm_edit_actions($actions, $mod, array('donotenhance' => true)), array('class' => 'buttons'));
             } else {
                 $editbuttons = '';
             }
             if ($mod->visible || has_capability('moodle/course:viewhiddenactivities', $mod->context)) {
                 if ($ismoving) {
                     if ($mod->id == $USER->activitycopy) {
                         continue;
                     }
                     $this->content->items[] = '<a title="' . $strmovefull . '" href="' . $CFG->wwwroot . '/course/mod.php?moveto=' . $mod->id . '&amp;sesskey=' . sesskey() . '">' . '<img style="height:16px; width:80px; border:0px" src="' . $OUTPUT->pix_url('movehere') . '" alt="' . $strmovehere . '" /></a>';
                     $this->content->icons[] = '';
                 }
                 if ($mod->indent > 0) {
                     $indent = '<div class="mod-indent mod-indent-' . $mod->indent . '"></div>';
                 } else {
                     $indent = '';
                 }
//.........这里部分代码省略.........
开发者ID:Keneth1212,项目名称:moodle,代码行数:101,代码来源:block_site_main_menu.php

示例4: course_section_cm

 /**
  * Renders HTML to display one course module in a course section
  *
  * This includes link, content, availability, completion info and additional information
  * that module type wants to display (i.e. number of unread forum posts)
  *
  * This function calls:
  * {@link core_course_renderer::course_section_cm_name()}
  * {@link core_course_renderer::course_section_cm_text()}
  * {@link core_course_renderer::course_section_cm_availability()}
  * {@link core_course_renderer::course_section_cm_completion()}
  * {@link course_get_cm_edit_actions()}
  * {@link core_course_renderer::course_section_cm_edit_actions()}
  *
  * @param stdClass $course
  * @param completion_info $completioninfo
  * @param cm_info $mod
  * @param int|null $sectionreturn
  * @param array $displayoptions
  * @return string
  */
 public function course_section_cm($course, &$completioninfo, cm_info $mod, $sectionreturn, $displayoptions = array())
 {
     $output = '';
     // We return empty string (because course module will not be displayed at all)
     // if:
     // 1) The activity is not visible to users
     // and
     // 2) The 'availableinfo' is empty, i.e. the activity was
     //     hidden in a way that leaves no info, such as using the
     //     eye icon.
     if (!$mod->uservisible && empty($mod->availableinfo)) {
         return $output;
     }
     $indentclasses = 'mod-indent';
     if (!empty($mod->indent)) {
         $indentclasses .= ' mod-indent-' . $mod->indent;
         if ($mod->indent > 15) {
             $indentclasses .= ' mod-indent-huge';
         }
     }
     $output .= html_writer::start_tag('div');
     if ($this->page->user_is_editing()) {
         $output .= course_get_cm_move($mod, $sectionreturn);
     }
     $output .= html_writer::start_tag('div', array('class' => 'mod-indent-outer'));
     // This div is used to indent the content.
     $output .= html_writer::div('', $indentclasses);
     // Start a wrapper for the actual content to keep the indentation consistent
     $output .= html_writer::start_tag('div');
     // Display the link to the module (or do nothing if module has no url)
     $cmname = $this->course_section_cm_name($mod, $displayoptions);
     if (!empty($cmname)) {
         // Start the div for the activity title, excluding the edit icons.
         $output .= html_writer::start_tag('div', array('class' => 'activityinstance'));
         $output .= $cmname;
         // Module can put text after the link (e.g. forum unread)
         $output .= $mod->afterlink;
         // Closing the tag which contains everything but edit icons. Content part of the module should not be part of this.
         $output .= html_writer::end_tag('div');
         // .activityinstance
     }
     // If there is content but NO link (eg label), then display the
     // content here (BEFORE any icons). In this case cons must be
     // displayed after the content so that it makes more sense visually
     // and for accessibility reasons, e.g. if you have a one-line label
     // it should work similarly (at least in terms of ordering) to an
     // activity.
     $contentpart = $this->course_section_cm_text($mod, $displayoptions);
     $url = $mod->url;
     if (empty($url)) {
         $output .= $contentpart;
     }
     $modicons = '';
     if ($this->page->user_is_editing()) {
         $editactions = course_get_cm_edit_actions($mod, $mod->indent, $sectionreturn);
         $modicons .= ' ' . $this->course_section_cm_edit_actions($editactions, $mod, $displayoptions);
         $modicons .= $mod->afterediticons;
     }
     $modicons .= $this->course_section_cm_completion($course, $completioninfo, $mod, $displayoptions);
     if (!empty($modicons)) {
         $output .= html_writer::span($modicons, 'actions');
     }
     // If there is content AND a link, then display the content here
     // (AFTER any icons). Otherwise it was displayed before
     if (!empty($url)) {
         $output .= $contentpart;
     }
     // show availability info (if module is not available)
     $output .= $this->course_section_cm_availability($mod, $displayoptions);
     $output .= html_writer::end_tag('div');
     // $indentclasses
     // End of indentation div.
     $output .= html_writer::end_tag('div');
     $output .= html_writer::end_tag('div');
     return $output;
 }
开发者ID:rushi963,项目名称:moodle,代码行数:97,代码来源:renderer.php

示例5: send_response

 /**
  * Send the details of the newly created activity back to the client browser
  *
  * @param cm_info $mod details of the mod just created
  */
 protected function send_response($mod)
 {
     global $OUTPUT, $PAGE;
     $courserenderer = $PAGE->get_renderer('core', 'course');
     $resp = new stdClass();
     $resp->error = self::ERROR_OK;
     $resp->icon = $mod->get_icon_url()->out();
     $resp->name = $mod->name;
     if ($mod->has_view()) {
         $resp->link = $mod->get_url()->out();
     } else {
         $resp->link = null;
     }
     $resp->content = $mod->get_content();
     $resp->elementid = 'module-' . $mod->id;
     $actions = course_get_cm_edit_actions($mod, 0, $mod->sectionnum);
     $resp->commands = ' ' . $courserenderer->course_section_cm_edit_actions($actions);
     $resp->onclick = $mod->get_on_click();
     $resp->visible = $mod->visible;
     // if using groupings, then display grouping name
     if (!empty($mod->groupingid) && has_capability('moodle/course:managegroups', $this->context)) {
         $groupings = groups_get_all_groupings($this->course->id);
         $resp->groupingname = format_string($groupings[$mod->groupingid]->name);
     }
     echo $OUTPUT->header();
     echo json_encode($resp);
     die;
 }
开发者ID:masaterutakeno,项目名称:MoodleMobile,代码行数:33,代码来源:dnduploadlib.php

示例6: get_content

 function get_content()
 {
     global $USER, $CFG, $DB, $OUTPUT;
     if ($this->content !== NULL) {
         return $this->content;
     }
     $this->content = new stdClass();
     $this->content->items = array();
     $this->content->icons = array();
     $this->content->footer = '';
     if (empty($this->instance)) {
         return $this->content;
     }
     $course = $this->page->course;
     require_once $CFG->dirroot . '/course/lib.php';
     $context = context_course::instance($course->id);
     $isediting = $this->page->user_is_editing() && has_capability('moodle/course:manageactivities', $context);
     $modinfo = get_fast_modinfo($course);
     /// extra fast view mode
     if (!$isediting) {
         if (!empty($modinfo->sections[0])) {
             $options = array('overflowdiv' => true);
             foreach ($modinfo->sections[0] as $cmid) {
                 $cm = $modinfo->cms[$cmid];
                 if (!$cm->uservisible) {
                     continue;
                 }
                 $content = $cm->get_formatted_content(array('overflowdiv' => true, 'noclean' => true));
                 $instancename = $cm->get_formatted_name();
                 if (!($url = $cm->get_url())) {
                     $this->content->items[] = $content;
                     $this->content->icons[] = '';
                 } else {
                     $linkcss = $cm->visible ? '' : ' class="dimmed" ';
                     //Accessibility: incidental image - should be empty Alt text
                     $icon = '<img src="' . $cm->get_icon_url() . '" class="icon" alt="" />&nbsp;';
                     $this->content->items[] = '<a title="' . $cm->modplural . '" ' . $linkcss . ' ' . $cm->extra . ' href="' . $url . '">' . $icon . $instancename . '</a>';
                 }
             }
         }
         return $this->content;
     }
     // Slow & hacky editing mode.
     /** @var core_course_renderer $courserenderer */
     $courserenderer = $this->page->get_renderer('core', 'course');
     $ismoving = ismoving($course->id);
     $modinfo = get_fast_modinfo($course);
     $section = $modinfo->get_section_info(0);
     if ($ismoving) {
         $strmovehere = get_string('movehere');
         $strmovefull = strip_tags(get_string('movefull', '', "'{$USER->activitycopyname}'"));
         $strcancel = get_string('cancel');
         $stractivityclipboard = $USER->activitycopyname;
     }
     $editbuttons = '';
     if ($ismoving) {
         $this->content->icons[] = '&nbsp;<img align="bottom" src="' . $OUTPUT->pix_url('t/move') . '" class="iconsmall" alt="" />';
         $this->content->items[] = $USER->activitycopyname . '&nbsp;(<a href="' . $CFG->wwwroot . '/course/mod.php?cancelcopy=true&amp;sesskey=' . sesskey() . '">' . $strcancel . '</a>)';
     }
     if (!empty($modinfo->sections[0])) {
         $options = array('overflowdiv' => true);
         foreach ($modinfo->sections[0] as $modnumber) {
             $mod = $modinfo->cms[$modnumber];
             if (!$mod->uservisible) {
                 continue;
             }
             if (!$ismoving) {
                 $actions = course_get_cm_edit_actions($mod, -1);
                 $editbuttons = '<br />' . $courserenderer->course_section_cm_edit_actions($actions, $mod);
             } else {
                 $editbuttons = '';
             }
             if ($mod->visible || has_capability('moodle/course:viewhiddenactivities', $context)) {
                 if ($ismoving) {
                     if ($mod->id == $USER->activitycopy) {
                         continue;
                     }
                     $this->content->items[] = '<a title="' . $strmovefull . '" href="' . $CFG->wwwroot . '/course/mod.php?moveto=' . $mod->id . '&amp;sesskey=' . sesskey() . '">' . '<img style="height:16px; width:80px; border:0px" src="' . $OUTPUT->pix_url('movehere') . '" alt="' . $strmovehere . '" /></a>';
                     $this->content->icons[] = '';
                 }
                 $content = $mod->get_formatted_content(array('overflowdiv' => true, 'noclean' => true));
                 $instancename = $mod->get_formatted_name();
                 $linkcss = $mod->visible ? '' : ' class="dimmed" ';
                 if (!($url = $mod->get_url())) {
                     $this->content->items[] = $content . $editbuttons;
                     $this->content->icons[] = '';
                 } else {
                     //Accessibility: incidental image - should be empty Alt text
                     $icon = '<img src="' . $mod->get_icon_url() . '" class="icon" alt="" />&nbsp;';
                     $this->content->items[] = '<a title="' . $mod->modfullname . '" ' . $linkcss . ' ' . $mod->extra . ' href="' . $url . '">' . $icon . $instancename . '</a>' . $editbuttons;
                 }
             }
         }
     }
     if ($ismoving) {
         $this->content->items[] = '<a title="' . $strmovefull . '" href="' . $CFG->wwwroot . '/course/mod.php?movetosection=' . $section->id . '&amp;sesskey=' . sesskey() . '">' . '<img style="height:16px; width:80px; border:0px" src="' . $OUTPUT->pix_url('movehere') . '" alt="' . $strmovehere . '" /></a>';
         $this->content->icons[] = '';
     }
     $this->content->footer = $courserenderer->course_section_add_cm_control($course, 0, null, array('inblock' => true));
     return $this->content;
//.........这里部分代码省略.........
开发者ID:covex-nn,项目名称:moodle,代码行数:101,代码来源:block_social_activities.php

示例7: course_get_cm_edit_actions

 /**
  * Wrapper around course_get_cm_edit_actions
  *
  * @param cm_info $mod The module
  * @param int $sr The section to link back to (used for creating the links)
  * @return array Of action_link or pix_icon objects
  */
 protected function course_get_cm_edit_actions(cm_info $mod, $sr = null)
 {
     $actions = course_get_cm_edit_actions($mod, -1, $sr);
     $actions = array_filter($actions, function ($action) {
         return !$action instanceof action_menu_filler;
     });
     $rename = course_get_cm_rename_action($mod, $mod->indent, $sr);
     $edittitle = get_string('edittitle');
     $rename = str_replace('</a>', "{$edittitle}</a>", $rename);
     $actions['edit-rename'] = $rename;
     return $actions;
 }
开发者ID:nadavkav,项目名称:moodle-theme_snap,代码行数:19,代码来源:course_renderer.php

示例8: get_content

 function get_content()
 {
     global $USER, $CFG, $DB, $OUTPUT;
     if ($this->content !== NULL) {
         return $this->content;
     }
     $this->content = new stdClass();
     $this->content->items = array();
     $this->content->icons = array();
     $this->content->footer = '';
     if (empty($this->instance)) {
         return $this->content;
     }
     $course = $this->page->course;
     $courserenderer = $this->page->get_renderer('core', 'course');
     require_once $CFG->dirroot . '/course/lib.php';
     $context = context_course::instance($course->id);
     $isediting = $this->page->user_is_editing() && has_capability('moodle/course:manageactivities', $context);
     $modinfo = get_fast_modinfo($course);
     /// extra fast view mode
     if (!$isediting) {
         if (!empty($modinfo->sections[0])) {
             foreach ($modinfo->sections[0] as $cmid) {
                 $cm = $modinfo->cms[$cmid];
                 if (!$cm->uservisible) {
                     continue;
                 }
                 if (!$cm->url) {
                     $content = $cm->get_formatted_content(array('overflowdiv' => true, 'noclean' => true));
                     $this->content->items[] = $content;
                     $this->content->icons[] = '';
                 } else {
                     $this->content->items[] = html_writer::div($courserenderer->course_section_cm_name($cm), 'activity');
                 }
             }
         }
         return $this->content;
     }
     // Slow & hacky editing mode.
     $ismoving = ismoving($course->id);
     $section = $modinfo->get_section_info(0);
     if ($ismoving) {
         $strmovehere = get_string('movehere');
         $strmovefull = strip_tags(get_string('movefull', '', "'{$USER->activitycopyname}'"));
         $strcancel = get_string('cancel');
     } else {
         $strmove = get_string('move');
     }
     if ($ismoving) {
         $this->content->icons[] = '&nbsp;<img align="bottom" src="' . $OUTPUT->pix_url('t/move') . '" class="iconsmall" alt="" />';
         $this->content->items[] = $USER->activitycopyname . '&nbsp;(<a href="' . $CFG->wwwroot . '/course/mod.php?cancelcopy=true&amp;sesskey=' . sesskey() . '">' . $strcancel . '</a>)';
     }
     if (!empty($modinfo->sections[0])) {
         foreach ($modinfo->sections[0] as $modnumber) {
             $mod = $modinfo->cms[$modnumber];
             if (!$mod->uservisible) {
                 continue;
             }
             if (!$ismoving) {
                 $actions = course_get_cm_edit_actions($mod, -1);
                 // Prepend list of actions with the 'move' action.
                 $actions = array('move' => new action_menu_link_primary(new moodle_url('/course/mod.php', array('sesskey' => sesskey(), 'copy' => $mod->id)), new pix_icon('t/move', $strmove, 'moodle', array('class' => 'iconsmall', 'title' => '')), $strmove)) + $actions;
                 $editbuttons = html_writer::tag('div', $courserenderer->course_section_cm_edit_actions($actions, $mod, array('donotenhance' => true)), array('class' => 'buttons'));
             } else {
                 $editbuttons = '';
             }
             if ($mod->visible || has_capability('moodle/course:viewhiddenactivities', $mod->context)) {
                 if ($ismoving) {
                     if ($mod->id == $USER->activitycopy) {
                         continue;
                     }
                     $this->content->items[] = '<a title="' . $strmovefull . '" href="' . $CFG->wwwroot . '/course/mod.php?moveto=' . $mod->id . '&amp;sesskey=' . sesskey() . '">' . '<img style="height:16px; width:80px; border:0px" src="' . $OUTPUT->pix_url('movehere') . '" alt="' . $strmovehere . '" /></a>';
                     $this->content->icons[] = '';
                 }
                 if (!$mod->url) {
                     $content = $mod->get_formatted_content(array('overflowdiv' => true, 'noclean' => true));
                     $this->content->items[] = $content . $editbuttons;
                     $this->content->icons[] = '';
                 } else {
                     $this->content->items[] = html_writer::div($courserenderer->course_section_cm_name($mod), 'activity') . $editbuttons;
                 }
             }
         }
     }
     if ($ismoving) {
         $this->content->items[] = '<a title="' . $strmovefull . '" href="' . $CFG->wwwroot . '/course/mod.php?movetosection=' . $section->id . '&amp;sesskey=' . sesskey() . '">' . '<img style="height:16px; width:80px; border:0px" src="' . $OUTPUT->pix_url('movehere') . '" alt="' . $strmovehere . '" /></a>';
         $this->content->icons[] = '';
     }
     $this->content->footer = $courserenderer->course_section_add_cm_control($course, 0, null, array('inblock' => true));
     return $this->content;
 }
开发者ID:evltuma,项目名称:moodle,代码行数:91,代码来源:block_social_activities.php

示例9: print_section_fn


//.........这里部分代码省略.........
                     // Display greyed-out text of link
                     echo '<div ' . $textcss . $mod->extra . ' >' . '<img src="' . $mod->get_icon_url() . '" class="activityicon" alt="' . $modulename . '" /> <span>' . $instancename . $altname . '</span></div>';
                     // Do not display content after link when it is greyed out like this.
                 } else {
                     // No link, so display only content (also greyed)
                     $contentpart = '<div ' . $textcss . $mod->extra . '>' . $accesstext . $content . '</div>';
                 }
             }
             // Module can put text after the link (e.g. forum unread)
             echo $mod->get_after_link();
             // If there is content but NO link (eg label), then display the
             // content here (BEFORE any icons). In this case cons must be
             // displayed after the content so that it makes more sense visually
             // and for accessibility reasons, e.g. if you have a one-line label
             // it should work similarly (at least in terms of ordering) to an
             // activity.
             if (empty($url)) {
                 echo $contentpart;
             }
             if ($isediting) {
                 if ($groupbuttons and plugin_supports('mod', $mod->modname, FEATURE_GROUPS, 0)) {
                     if (!($mod->groupmodelink = $groupbuttonslink)) {
                         $mod->groupmode = $course->groupmode;
                     }
                 } else {
                     $mod->groupmode = false;
                 }
                 echo '&nbsp;&nbsp;';
                 //echo make_editing_buttons($mod, $absolute, true, $mod->indent, $section->section);
                 if (!$mod instanceof cm_info) {
                     $modinfo = get_fast_modinfo($mod->course);
                     $mod = $modinfo->get_cm($mod->id);
                 }
                 $actions = course_get_cm_edit_actions($mod, $mod->indent, $section->section);
                 $courserenderer = $PAGE->get_renderer('core', 'course');
                 // The space added before the <span> is a ugly hack but required to set the CSS property white-space: nowrap
                 // and having it to work without attaching the preceding text along with it. Hopefully the refactoring of
                 // the course page HTML will allow this to be removed.
                 echo ' ' . $courserenderer->course_section_cm_edit_actions($actions);
                 echo $mod->get_after_edit_icons();
             }
             // Completion
             require_once 'modulelib.php';
             $completion = $hidecompletion ? COMPLETION_TRACKING_NONE : $completioninfo->is_enabled($mod);
             if ($completion != COMPLETION_TRACKING_NONE && isloggedin() && !isguestuser() && $mod->uservisible) {
                 $completiondata = $completioninfo->get_data($mod, true);
                 $completionicon = '';
                 if ($isediting) {
                     switch ($completion) {
                         case COMPLETION_TRACKING_MANUAL:
                             $completionicon = 'manual-enabled';
                             break;
                         case COMPLETION_TRACKING_AUTOMATIC:
                             $completionicon = 'auto-enabled';
                             break;
                         default:
                             // wtf
                     }
                 } else {
                     if (is_siteadmin() || !has_capability('mod/assignment:submit', get_context_instance(CONTEXT_COURSE, $course->id))) {
                         switch ($completion) {
                             case COMPLETION_TRACKING_MANUAL:
                                 $completionicon = 'manual-enabled';
                                 break;
                             case COMPLETION_TRACKING_AUTOMATIC:
                                 $completionicon = 'auto-enabled';
开发者ID:oncampus,项目名称:mooin_course_format_octabs,代码行数:67,代码来源:course_format_fn.class.php


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