mirror of
https://github.com/moodle/moodle.git
synced 2025-04-21 00:12:56 +02:00
javascript cleanup: MDL-16583 clean up the close_window function in weblib.php.
This commit is contained in:
parent
ff9b4ea40a
commit
b166403f18
@ -1686,6 +1686,7 @@ within the course so that we can learn more about you:
|
||||
$a->profileurl';
|
||||
$string['whattocallzip'] = 'What do you want to call the zip file?';
|
||||
$string['whattodo'] = 'What to do';
|
||||
$string['windowclosing'] = 'This window should close automatically. If not, please close it now.';
|
||||
$string['withchosenfiles'] = 'With chosen files';
|
||||
$string['withoutuserdata'] = 'without user data';
|
||||
$string['withselectedusers'] = 'With selected users...';
|
||||
|
@ -731,4 +731,20 @@ collapsible_region.prototype.handle_animation_complete = function() {
|
||||
if (this.collapsed) {
|
||||
this.div.className += ' collapsed';
|
||||
}
|
||||
}
|
||||
|
||||
/** Close the current browser window. */
|
||||
function close_window() {
|
||||
window.close();
|
||||
}
|
||||
|
||||
/**
|
||||
* Close the current browser window, forcing the window/tab that opened this
|
||||
* popup to reload itself. */
|
||||
function close_window_reloading_opener() {
|
||||
if (window.opener) {
|
||||
window.opener.location.reload(1);
|
||||
close_window();
|
||||
// Intentionally, only try to close the window if there is some evidence we are in a popup.
|
||||
}
|
||||
}
|
@ -675,26 +675,31 @@ function close_window_button($name='closewindow', $return=false, $reloadopener =
|
||||
}
|
||||
|
||||
/*
|
||||
* Try and close the current window immediately using Javascript
|
||||
* @param int $delay the delay in seconds before closing the window
|
||||
* Try and close the current window using JavaScript, either immediately, or after a delay.
|
||||
* @param integer $delay a delay in seconds before closing the window. Default 0.
|
||||
* @param boolean $reloadopener if true, we will see if this window was a pop-up, and try
|
||||
* to reload the parent window before this one closes.
|
||||
*/
|
||||
function close_window($delay=0) {
|
||||
?>
|
||||
<script type="text/javascript">
|
||||
//<![CDATA[
|
||||
function close_this_window() {
|
||||
self.close();
|
||||
}
|
||||
setTimeout("close_this_window()", <?php echo $delay * 1000 ?>);
|
||||
//]]>
|
||||
</script>
|
||||
<noscript><center>
|
||||
<?php print_string('pleaseclose') ?>
|
||||
</center></noscript>
|
||||
<?php
|
||||
die;
|
||||
}
|
||||
function close_window($delay = 0, $reloadopener = false) {
|
||||
global $THEME;
|
||||
|
||||
if (!defined('HEADER_PRINTED')) {
|
||||
print_header(get_string('closewindow'));
|
||||
} else {
|
||||
print_container_end_all(false, $THEME->open_header_containers);
|
||||
}
|
||||
|
||||
if ($reloadopener) {
|
||||
$function = 'close_window_reloading_opener';
|
||||
} else {
|
||||
$function = 'close_window';
|
||||
}
|
||||
echo '<p class="centerpara">' . get_string('windowclosing') . '</p>';
|
||||
print_delayed_js_call($delay, $function);
|
||||
|
||||
print_footer('empty');
|
||||
exit;
|
||||
}
|
||||
|
||||
/**
|
||||
* Given an array of values, output the HTML for a select element with those options.
|
||||
|
Loading…
x
Reference in New Issue
Block a user