<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Terry.Li-彬

    虛其心,可解天下之問;專其心,可治天下之學;靜其心,可悟天下之理;恒其心,可成天下之業(yè)。

      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      143 隨筆 :: 344 文章 :: 130 評論 :: 0 Trackbacks
    /**
    ?* Author : Larry Li
    ?* Date : 2013-12-5
    ?* Email : larry.li@aicent.com
    ?*/
    var Session = function() {
    ?? ?var defaults = {
    ?? ??? ??? ?title??????? : 'Session Notification',
    ?? ??? ??? ?message????? : 'Your session is about to expire.',
    ?? ??? ??? ?keepAliveUrl : '/admin/session/keep-alive',
    ?? ??? ??? ?redirUrl???? : '/account/timed-out',
    ?? ??? ??? ?logoutUrl??? : '/account/logout',
    ?? ??? ??? ?warnAfter??? : 900000, // 15 minutes
    ?? ??? ??? ?redirAfter?? : 1200000 // 20 minutes
    ?? ?};
    ?? ?
    ?? ?var o = defaults, dialogTimer, redirTimer;
    ?? ?
    ?? ?var controlRedirTimer = function(action) {
    ?? ??? ?switch(action) {
    ?? ??? ??? ?case 'start':
    ?? ??? ??? ??? ?// Dialog has been shown, if no action taken during redir period, redirect
    ?? ??? ??? ??? ?redirTimer = setTimeout(function(){
    ?? ??? ??? ??? ??? ?window.location = o.redirUrl;
    ?? ??? ??? ??? ?}, o.redirAfter - o.warnAfter);
    ?? ??? ??? ??? ?break;
    ?? ?
    ?? ??? ??? ?case 'stop':
    ?? ??? ??? ??? ?clearTimeout(redirTimer);
    ?? ??? ??? ??? ?break;
    ?? ??? ??? ?case 'restart':
    ?? ??? ??? ??? ?clearTimeout(redirTimer);
    ?? ??? ??? ??? ?redirTimer = setTimeout(function(){
    ?? ??? ??? ??? ??? ?window.location = o.redirUrl;
    ?? ??? ??? ??? ?}, o.redirAfter - o.warnAfter);
    ?? ??? ??? ??? ?break;
    ?? ??? ?}
    ?? ?};
    ?? ?
    ?? ?var controlDialogTimer = function(action) {
    ?? ??? ?switch(action) {
    ?? ??? ??? ?case 'start':
    ?? ??? ??? ??? ?dialogTimer = setTimeout(function(){
    ?? ??? ??? ??? ??? ?$('#sessionTimeout-dialog').modal('show');
    ?? ??? ??? ??? ??? ?controlRedirTimer('start');
    ?? ??? ??? ??? ?}, o.warnAfter);
    ?? ??? ??? ??? ?break;
    ?? ??? ??? ?case 'stop':
    ?? ??? ??? ??? ?clearTimeout(dialogTimer);
    ?? ??? ??? ??? ?break;
    ?? ??? ??? ?case 'restart':
    ?? ??? ??? ??? ?clearTimeout(dialogTimer);
    ?? ??? ??? ??? ?dialogTimer = setTimeout(function(){
    ?? ??? ??? ??? ??? ?$('#sessionTimeout-dialog').modal('show');
    ?? ??? ??? ??? ??? ?controlRedirTimer('restart');
    ?? ??? ??? ??? ?}, o.warnAfter);
    ?? ??? ??? ??? ?break;
    ?? ??? ?}
    ?? ?};
    ?? ?
    ?? ?var doKeepAlive = function() {
    ?? ??? ?$.ajax({
    ?? ??? ??? ?type: 'POST',
    ?? ??? ??? ?url: o.keepAliveUrl,
    ?? ??? ??? ?success: function() {
    ?? ??? ??? ??? ?// Stop redirect timer and restart warning timer
    ?? ??? ??? ??? ?controlRedirTimer('restart');
    ?? ??? ??? ??? ?controlDialogTimer('restart');
    ?? ??? ??? ?}
    ?? ??? ?});
    ?? ?};
    ?? ?
    ?? ?return {
    ?? ??? ?sessionTimeout: function(options) {
    ?? ??? ??? ?if ( options ) { o = $.extend( defaults, options ); }
    ?? ??? ??? ?
    ?? ??? ??? ?var warning_dialog = '<div class="modal fade" id="sessionTimeout-dialog">'
    ?? ??? ??? ??? ??? ??? ??? ??? ?+'?? ?<div class="modal-dialog modal-small">'
    ?? ??? ??? ??? ??? ??? ??? ??? ?+'?? ??? ?<div class="modal-content">'
    ?? ??? ??? ??? ??? ??? ??? ??? ?+'?? ??? ??? ?<div class="modal-header">'
    ?? ??? ??? ??? ??? ??? ??? ??? ?+'?? ??? ??? ??? ?<button id="_close" type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>'
    ?? ??? ??? ??? ??? ??? ??? ??? ?+'?? ??? ??? ??? ?<h4 class="modal-title">'+ o.title +'</h4>'
    ?? ??? ??? ??? ??? ??? ??? ??? ?+'?? ??? ??? ?</div>'
    ?? ??? ??? ??? ??? ??? ??? ??? ?+'?? ??? ??? ?<div class="modal-body">'+ o.message +'</div>'
    ?? ??? ??? ??? ??? ??? ??? ??? ?+'?? ??? ??? ?<div class="modal-footer">'
    ?? ??? ??? ??? ??? ??? ??? ??? ?+'?? ??? ??? ??? ?<button id="sessionTimeout-dialog-logout" type="button" class="btn btn-default">Logout</button>'
    ?? ??? ??? ??? ??? ??? ??? ??? ?+'?? ??? ??? ??? ?<button id="sessionTimeout-dialog-keepalive" type="button" class="btn btn-primary" data-dismiss="modal">Stay Connected</button>'
    ?? ??? ??? ??? ??? ??? ??? ??? ?+'?? ??? ??? ?</div>'
    ?? ??? ??? ??? ??? ??? ??? ??? ?+'?? ??? ?</div>'
    ?? ??? ??? ??? ??? ??? ??? ??? ?+'?? ?</div>'
    ?? ??? ??? ??? ??? ??? ??? ??? ?+'</div>';
    ?? ??? ??? ?
    ?? ??? ??? ?$('body').append(warning_dialog);
    ?? ??? ??? ?
    ?? ??? ??? ?$('#sessionTimeout-dialog-logout').on('click', function () { window.location = o.logoutUrl; });
    ?? ??? ??? ?
    ?? ??? ??? ?$('#_close,#sessionTimeout-dialog-keepalive').click(function() {
    ?? ??? ??? ??? ?doKeepAlive();
    ?? ??? ??? ?});
    ?? ??? ??? ?// Begin warning period
    ?? ??? ??? ?controlDialogTimer('start');
    ?? ??? ?},
    ?? ??? ?
    ?? ??? ?sessionTimeoutKeepAlive: function() {
    ?? ??? ??? ?controlRedirTimer('restart');
    ?? ??? ??? ?controlDialogTimer('restart');
    ?? ??? ?}
    ?? ?};
    }();

    $(function() {
    ?? ?Session.sessionTimeout({
    ?? ??? ?title: 'Session Timeout Notification',
    ?? ??? ?message: 'Your session is about to expire.',
    ?? ??? ?keepAliveUrl: contextPath + '/admin/session/keep-alive',
    ?? ??? ?redirUrl: contextPath + '/account/login',
    ?? ??? ?logoutUrl: contextPath + '/account/logout',
    ?? ??? ?warnAfter: 1500000,
    ?? ??? ?redirAfter: 1780000
    ?? ?});
    ?? ?
    ?? ?$(document).ajaxComplete(function() {
    ?? ??? ?Session.sessionTimeoutKeepAlive();
    ?? ?});
    });
    posted on 2013-12-05 16:11 禮物 閱讀(1380) 評論(1)  編輯  收藏 所屬分類: javascriptAjaxjqueryWeb前端

    評論

    # re: Ajax Session Timeout 超時 處理 2015-08-03 11:14 11
    sads  回復  更多評論
      

    主站蜘蛛池模板: 91福利免费体验区观看区| 久久久久久国产精品免费无码| 亚洲精品成人在线| 国产一级淫片a免费播放口| 亚洲一区二区三区久久| 亚洲国产小视频精品久久久三级| 日韩精品免费视频| 麻豆亚洲AV成人无码久久精品| 国产成A人亚洲精V品无码| 国产美女在线精品免费观看| 国产福利免费视频 | 国产精品亚洲四区在线观看| yy6080久久亚洲精品| 99在线免费观看视频| 免费视频精品一区二区| 亚洲成人免费网址| 亚洲无码在线播放| 免费看美女让人桶尿口| 99视频在线精品免费| 一级毛片aaaaaa视频免费看| 精品亚洲成在人线AV无码| 亚洲精品国产精品乱码视色| 国产高清在线免费视频| 亚洲最大免费视频网| 中文字幕视频在线免费观看| 亚洲av永久无码| 亚洲精品国产福利在线观看| 亚洲乱码日产一区三区| 国产免费观看网站| 97碰公开在线观看免费视频| 成全视频免费观看在线看| 国产精品亚洲精品日韩电影| 亚洲一区二区久久| 亚洲黄色在线视频| 亚洲狠狠婷婷综合久久久久| 亚洲av无码不卡私人影院| 韩国18福利视频免费观看| 最近最新MV在线观看免费高清| 久久青草免费91线频观看站街| 久久精品免费大片国产大片| 免费的黄色的网站|