как работает приведенный ниже код? (Extjs)

Я хотел бы узнать, как работает приведенный ниже скрипт. Я пытаюсь реализовать всплывающее окно для каждого часа, чтобы дать пользователю возможность продолжить, иначе он автоматически выйдет из системы. Это работает, но я сомневаюсь, что произойдет, когда несколько пользователей войдут в систему. будут ли другие выходить из системы, когда вы нажмете выход на вашей странице? Если быть точным, будет

Ext.TaskMgr.stop(taskPoll1);
Ext.TaskMgr.stop(taskPoll);

остановить taskPoll текущего скрипта?

<script>
var counter = 3600;
var counter1 = 20;
var taskPoll = 
{
  run: function()
  {
    counter -= 1;
    if( counter < 1 )
    {
       Ext.TaskMgr.stop(taskPoll);
       countDownComplete();
       return false;
    } 
    else 
    {
    }
 },
 interval:1000
}
    countDownComplete = function()
    {
      var taskPoll1 = 
      {
         run: function()
         {
            counter1 -= 1;
            if( counter1 < 1 )
            {
                Ext.TaskMgr.stop(taskPoll1);
            Ext.TaskMgr.stop(taskPoll);
        //  Ext.TaskMgr.stopAll();
            logout('imagelogout');
            return false;
        } 
            else 
            {
            Ext.MessageBox.updateText('You will be logged out in next <b>' + counter1+' </b> seconds. Please click on  <b> Continue </b> if you do not wish to be logged out.');

            }
    },
    interval:1000
    }
    Ext.MessageBox.maxWidth=420;
    Ext.MessageBox.buttonText.yes = 'Continue';
    Ext.MessageBox.buttonText.no = 'LogOut';
    Ext.MessageBox.confirm('Attention', 'You will be logged out in next 30 seconds. Please click on <b> Continue </b> if you do not wish to be logged out.',
    function(btn)
    {
      if(btn == 'yes')
      {
            counter=3600;
        counter1=20;
        Ext.TaskMgr.stop(taskPoll1);
        Ext.TaskMgr.start(taskPoll);
        return false;
      } 
      else
      {
        Ext.TaskMgr.stop(taskPoll1);
        Ext.TaskMgr.stop(taskPoll);
      //    Ext.TaskMgr.stopAll();
        logout('imagelogout');
        return false;
      }
    }); 
    Ext.TaskMgr.start(taskPoll1);
    }
    // Ext.TaskMgr.start(taskPoll); is the starting point of timeout Pop up
    Ext.TaskMgr.start(taskPoll);
    </script>

person JackAss    schedule 20.09.2012    source источник


Ответы (1)


Вы говорите о внешнем скрипте, который работает локально... И я не знаю ни одного сайта, на котором несколько пользователей оставались бы авторизованными на одном сайте, так где же проблема с несколькими пользователями?

Говоря об объеме и задачах: в этом случае я бы порекомендовал вам уничтожить все задачи при выходе из системы и создать новые при запуске, иначе у вас могут возникнуть проблемы с все еще выполняющимися задачами.

person sra    schedule 20.09.2012