Example #1
0
 function displayTimeoutScripts()
 {
     global $survey, $engine;
     $returnStr = "";
     if (!isRegisteredScript("js/session/timeout-min.js")) {
         registerScript('js/session/timeout-min.js');
         $returnStr .= getScript("js/session/timeout-min.js");
     }
     $logouturl = $engine->replaceFills($survey->getTimeoutLogoutURL());
     if ($logouturl == "") {
         $logouturl = Config::sessionLogoutURL();
     }
     $logout = "";
     if ($logouturl != "") {
         $logout = "logoutUrl: '" . $logouturl . "',";
     }
     $aliveurl = Config::sessionAliveURL();
     $alive = "";
     if ($aliveurl != "") {
         $alive = "keepAliveUrl: '" . $aliveurl . "',";
     }
     $redirurl = $engine->replaceFills($survey->getTimeoutRedirectURL());
     if ($redirurl == "") {
         $redirurl = Config::sessionRedirectURL();
     }
     $redir = "";
     $length = $engine->replaceFills($survey->getTimeoutLength());
     if ($length == "") {
         $length = Config::sessionTimeout();
     }
     if ($redirurl != "") {
         $redir = "redirUrl: '" . $redirurl . "',";
         $redirafter = "redirAfter: " . $length * 1000;
     }
     $warnafter = $length * 1000 * Config::sessionExpiredWarnPoint();
     // warn after 60% of the time has passed
     $timeleft = ($length - $length * Config::sessionExpiredWarnPoint()) / 60;
     // in minutes
     $message = Language::sessionExpiredMessage(round($timeleft));
     $alivebutton = $engine->replaceFills($survey->getTimeoutAliveButton());
     if ($alivebutton == "") {
         $alivebutton = Language::sessionExpiredKeepAliveButton();
     }
     $logoutbutton = $engine->replaceFills($survey->getTimeoutLogoutButton());
     if ($logoutbutton == "") {
         $logoutbutton = Language::sessionExpiredLogoutButton();
     }
     $title = $engine->replaceFills($survey->getTimeoutTitle());
     if ($title == "") {
         $title = Language::sessionExpiredTitle();
     }
     $ping = Config::sessionExpiredPingInterval();
     $returnStr .= "<script type='text/javascript'>" . minifyScript("\n            \$(document).ready(function(){\n                \$.sessionTimeout({\n                    title: '{$title}',\n                    keepAliveButton: '{$alivebutton}',\n                    keepAliveInterval: {$ping},    \n                    logoutButton: '{$logoutbutton}',\n                    message: '{$message}',\n                    {$alive}\n                    {$logout}\n                    {$redir}                    \n                    warnAfter: {$warnafter},\n                    {$redirafter}\n                });\n              });") . "  \n            </script>";
     return $returnStr;
 }