implemented a heartbeat request which is calls the server every 15 minutes to prevent a session timeout

This commit is contained in:
Bernhard Posselt 2013-02-26 19:34:46 +01:00
parent b987c76d16
commit 4e55348054
2 changed files with 20 additions and 0 deletions

View File

@ -584,6 +584,7 @@ function fillWindow(selector) {
} }
$(document).ready(function(){ $(document).ready(function(){
sessionHeartBeat();
if(!SVGSupport()){ //replace all svg images with png images for browser that dont support svg if(!SVGSupport()){ //replace all svg images with png images for browser that dont support svg
replaceSVG(); replaceSVG();
@ -815,3 +816,17 @@ OC.set=function(name, value) {
} }
context[tail]=value; context[tail]=value;
}; };
/**
* Calls the server periodically every 15 mins to ensure that session doesnt
* time out
*/
function sessionHeartBeat(){
OC.Router.registerLoadedCallback(function(){
setInterval(function(){
var url = OC.Router.generate('heartbeat');
$.post(url);
}, 15000);
});
}

View File

@ -69,3 +69,8 @@ $this->create('app_script', '/apps/{app}/{file}')
->defaults(array('file' => 'index.php')) ->defaults(array('file' => 'index.php'))
->requirements(array('file' => '.*.php')) ->requirements(array('file' => '.*.php'))
->action('OC', 'loadAppScriptFile'); ->action('OC', 'loadAppScriptFile');
// used for heartbeat
$this->create('heartbeat', '/heartbeat')->action(function(){
// do nothing
});