Skip to content

Commit

Permalink
MDL-19756 Fixed regression in popup_form()
Browse files Browse the repository at this point in the history
  • Loading branch information
nicolasconnault committed Aug 4, 2009
1 parent b0a5e1b commit 0affac4
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 19 deletions.
6 changes: 3 additions & 3 deletions course/jumpto.php
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,11 @@
}

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

?>
20 changes: 10 additions & 10 deletions lib/deprecatedlib.php
Original file line number Diff line number Diff line change
Expand Up @@ -3339,22 +3339,22 @@ function popup_form($baseurl, $options, $formid, $selected='', $nothing='choose'

// 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 {
Expand Down
19 changes: 13 additions & 6 deletions lib/outputlib.php
Original file line number Diff line number Diff line change
Expand Up @@ -2684,12 +2684,15 @@ public function image($image) {
$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);
}

Expand Down Expand Up @@ -3417,6 +3420,10 @@ class moodle_html_component {
* @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.
*/
Expand Down Expand Up @@ -3755,6 +3762,7 @@ public function prepare() {
} else {
$inoptgroup = false;
$optgroup = false;

foreach ($options as $value => $display) {
if ($display == '--') { /// we are ending previous optgroup
$this->options[] = $optgroup;
Expand Down Expand Up @@ -3813,7 +3821,6 @@ public function prepare() {
$this->options[] = $optgroup;
}
}

parent::prepare();
}

Expand Down Expand Up @@ -3915,21 +3922,21 @@ public static function make_time_selector($type, $name, $currenttime=0, $step=5)
* @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->form->button->text = $submitvalue;
}

$select->id = $formid . '_jump';
$select->baseurl = $baseurl;

$select->add_action('change', 'submit_form_by_id', array('id' => $formid, 'selectid' => $select->id));

Expand Down

0 comments on commit 0affac4

Please sign in to comment.