12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- <template>
- </template>
- <script>
- export default {
- name: 'Kicker',
- data: function () {
- return {
- events: ['click', 'mousedown', 'scroll', 'keypress', 'load'],
- logoutTimer: null
- }
- },
- mounted() {
- this.events.forEach(function (event) {
- window.addEventListener(event, this.resetTimer)
- }, this);
- this.setTimer()
- },
- destroyed() {
- this.events.forEach(function (event) {
- window.removeEventListener(event, this.resetTimer)
- }, this);
- clearTimeout(this.logoutTimer)
- },
- methods: {
- setTimer: function() {
- this.logoutTimer = setTimeout(this.logoutUser, this.$root.appSettings.kickUserAfter * 60 * 1000)
- },
- logoutUser: function() {
- clearTimeout(this.logoutTimer)
- this.$router.push({ name: 'autolock' })
- },
- resetTimer: function() {
- clearTimeout(this.logoutTimer)
- this.setTimer()
- }
- }
- }
- </script>
|