}
if (strpos($jump, $CFG->wwwroot) === 0) { // Anything on this site
- redirect(urldecode($jump));
+ redirect(new moodle_url(urldecode($jump)));
} else if (preg_match('/^[a-z]+\.php\?/', $jump)) {
- redirect(urldecode($jump));
+ redirect(new moodle_url(urldecode($jump)));
}
- redirect($_SERVER['HTTP_REFERER']); // Return to sender, just in case
+ redirect(new moodle_url($_SERVER['HTTP_REFERER'])); // Return to sender, just in case
?>
// debugging('popup_form() has been deprecated. Please change your code to use $OUTPUT->select($dateselector).');
- if (!empty($optionsextra)) {
- debugging('the optionsextra param has been deprecated in popup_form, it will be ignored.', DEBUG_DEVELOPER);
- }
-
if (empty($options)) {
return '';
}
- $select = moodle_select::make_popup_form($baseurl, $options, $formid, $submitvalue, $selected);
- $select->disabled = $disabled;
- // Extract the last param of the baseurl for the name of the select
- if (preg_match('/([a-z_]*)=$/', $baseurl, $matches)) {
- $select->name = $matches[1];
- $select->form->url->remove_params(array($matches[1]));
+ foreach ($options as $var => $val) {
+ $url = new moodle_url($baseurl . $var);
+ if (!empty($optionsextra[$var])) {
+ new moodle_url($baseurl . $var . $optionsextra[$var]);
+ }
+ $options[$url->out(false, array(), false)] = $val;
+ unset($options[$var]);
}
+ $select = moodle_select::make_popup_form($options, $formid, $submitvalue, $selected);
+ $select->disabled = $disabled;
+
if ($nothing == 'choose') {
$select->nothinglabel = '';
} else {
$this->prepare_event_handlers($image);
$attributes = array('class' => $image->get_classes_string(),
- 'style' => $this->prepare_legacy_width_and_height($image),
'src' => prepare_url($image->src),
'alt' => $image->alt,
+ 'style' => $image->style,
'title' => $image->title,
'id' => $image->id);
-
+
+ if (!empty($image->height) || !empty($image->width)) {
+ $attributes['style'] .= $this->prepare_legacy_width_and_height($image);
+ }
return $this->output_empty_tag('img', $attributes);
}
* @var string $alt value to use for the alt attribute of this HTML tag.
*/
public $alt = '';
+ /**
+ * @var string $style value to use for the style attribute of this HTML tag.
+ */
+ public $style = '';
/**
* @var array class names to add to this HTML element.
*/
} else {
$inoptgroup = false;
$optgroup = false;
+
foreach ($options as $value => $display) {
if ($display == '--') { /// we are ending previous optgroup
$this->options[] = $optgroup;
$this->options[] = $optgroup;
}
}
-
parent::prepare();
}
* @param string $selected The option that is initially selected
* @return moodle_select A menu initialised as a popup form.
*/
- public function make_popup_form($baseurl, $options, $formid, $submitvalue='', $selected=null) {
+ public function make_popup_form($options, $formid, $submitvalue='', $selected=null) {
+ global $CFG;
$select = self::make($options, 'jump', $selected);
$select->form = new html_form();
$select->form->id = $formid;
$select->form->method = 'get';
$select->form->add_class('popupform');
- $select->form->url = new moodle_url($baseurl);
+ $select->form->url = new moodle_url($CFG->wwwroot . '/course/jumpto.php', array('sesskey' => sesskey()));
$select->form->button->text = get_string('go');
if (!empty($submitvalue)) {
}
$select->id = $formid . '_jump';
- $select->baseurl = $baseurl;
$select->add_action('change', 'submit_form_by_id', array('id' => $formid, 'selectid' => $select->id));