/** * Create or update new group and return id of group. * * @param object $booking * @param object $option * @return int */ public function group($bookingtmp = NULL, $optiontmp = NULL) { global $DB; $booking = clone $bookingtmp; $option = clone $optiontmp; if ($booking->addtogroup == 1 && $option->courseid > 0) { $cm = get_coursemodule_from_instance('booking', $booking->id); $tags = new booking_tags($cm); $booking = $tags->bookingReplace($booking); $option = $tags->optionReplace($option); $newGroupData = new stdClass(); if (isset($option->id)) { $groupid = $DB->get_field('booking_options', 'groupid', array('id' => $option->id)); if (!is_null($groupid) && $groupid > 0) { $newGroupData->id = $groupid; } $newGroupData->courseid = $option->courseid; $newGroupData->name = $booking->name . ' - ' . $option->text . ' - ' . $option->id; $newGroupData->description = $booking->name . ' - ' . $option->text; $newGroupData->descriptionformat = FORMAT_HTML; if (isset($newGroupData->id)) { groups_update_group($newGroupData); return $newGroupData->id; } else { return groups_create_group($newGroupData); } } } else { return 0; } }
if (!($booking = booking_get_booking($cm, ''))) { error("Course module is incorrect"); } if (!($context = context_module::instance($cm->id))) { print_error('badcontext'); } require_capability('mod/booking:updatebooking', $context); $PAGE->navbar->add(get_string("tagtemplates", "booking")); $PAGE->set_title(format_string(get_string("tagtemplates", "booking"))); $PAGE->set_heading(get_string("tagtemplates", "booking")); $PAGE->set_pagelayout('standard'); echo $OUTPUT->header(); echo $OUTPUT->heading(get_string("tagtemplates", "booking"), 3, 'helptitle', 'uniqueid'); $table = new html_table(); $table->head = array(get_string('tagtag', 'booking'), get_string('tagtext', 'booking')); $tags = new booking_tags($cm); $tagsTable = array(); foreach ($tags->get_all_tags() as $tag) { $edit = new moodle_url('tagtemplatesadd.php', array('cmid' => $cm->id, 'tid' => $tag->id)); $button = $OUTPUT->single_button($edit, get_string('edittag', 'booking'), 'get'); $tagsTable[] = array("[{$tag->tag}]", nl2br($tag->text), html_writer::tag('span', $button, array('style' => 'text-align: right; display:table-cell;'))); } $table->data = $tagsTable; echo html_writer::table($table); $cancel = new moodle_url('view.php', array('id' => $cm->id)); $addnew = new moodle_url('tagtemplatesadd.php', array('cmid' => $cm->id)); echo '<div style="width: 100%; text-align: center; display:table;">'; $button = $OUTPUT->single_button($cancel, get_string('cancel', 'booking'), 'get'); echo html_writer::tag('span', $button, array('style' => 'text-align: right; display:table-cell;')); $button = $OUTPUT->single_button($addnew, get_string('addnewtagtemplate', 'booking'), 'get'); echo html_writer::tag('span', $button, array('style' => 'text-align: left; display:table-cell;'));