PageSourceSearch

https://www.askersund.se/webapp-resource/4.4b0b056217dc77c7b641c0/…/1696268663248/webapp-assets.js

js askersund.se collected 2026-09-25 20:48:16 UTC 3,802 bytes, 109 lines download raw bytes

1AppRegistry.registerBundle({applicationId:'menu|1.0.1',bundle: {}});
2AppRegistry.registerModule({applicationId:'menu|1.0.1',path:'/module/client/updateMenu',module:function(define){'use strict';define(function (require) {
3  'use strict';
4
5  var $ = require('jquery'),
6      router = require('router'),
7      requester = require('requester');
8
9  return {
10    fetchNewItems: function fetchNewItems(e, className) {
11      var target = $(e.currentTarget),
12          id = target.data("id"),
13          parent = target.parents('.' + className + '__item').first(),
14          openClass = className + "__toggle--open",
15          activeClass = className + "__item--active",
16          openClassSelector = "." + className + "__toggle--open";
17      var targetText = $(e.currentTarget).prev().text();
18
19      if (target.hasClass(openClass)) {
20        parent.find("ul").hide();
21        target.removeClass(openClass);
22        parent.find(openClassSelector).parent().find("ul").hide();
23        parent.find(openClassSelector).removeClass(openClass);
24        parent.removeClass(activeClass);
25        target.attr("aria-expanded", false);
26        target.attr("aria-label", "Öppna menystruktur för " + targetText);
27        return false;
28      } else {
29        if (parent.data("load") === true) {
30          parent.find("ul").first().show();
31          target.addClass(openClass);
32          parent.addClass(activeClass);
33          target.attr("aria-expanded", true);
34          target.attr("aria-label", "Stäng menystruktur för " + targetText);
35        } else {
36          requester.doPut({
37            url: router.getUrl('/update-menu'),
38            data: {
39              id: id
40            }
41          }).done(function (response) {
42            if (response) {
43              parent.append(response.startMenu);
44              parent.data("load", true);
45              target.addClass(openClass);
46              parent.addClass(activeClass);
47              target.attr("aria-expanded", true);
48              target.attr("aria-label", "Stäng menystruktur för " + targetText);
49            }
50          });
51        }
52
53        return false;
54      }
55    }
56  };
57});}});
58AppRegistry.registerModule({applicationId:'menu|1.0.1',path:'/template/main',module:function(define){define(function(require){var _=require('underscore');return function(obj){
59var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};
60with(obj||{}){
61__p+='\n';
62 if (menuType === 'submenu') { 
63__p+=' \n    <nav class="ask-sub-menu" id="'+
64((__t=( menuID ))==null?'':__t)+
65'">\n        '+
66((__t=( renderStartNode ))==null?'':__t)+
67'\n        '+
68((__t=( startMenu ))==null?'':__t)+
69'\n    </nav>\n';
70 } else { 
71__p+=' \n    <nav class="ask-mobile-menu" id="'+
72((__t=( menuID ))==null?'':__t)+
73'">\n        '+
74((__t=( startMenu ))==null?'':__t)+
75'\n    </nav>\n';
76 } 
77__p+='';
78}
79return __p;
80};});}});
81AppRegistry.registerModule({applicationId:'menu|1.0.1',path:'/main',module:function(define){'use strict';define(function (require) {
82  'use strict';
83
84  var _ = require('underscore'),
85      Component = require('Component'),
86      template = require('/template/main'),
87      updateMenu = require('/module/client/updateMenu');
88
89  return Component.extend({
90    template: template,
91    events: {
92      dom: {
93        'click button.ask-sub-menu__toggle': 'handleUpdateSubMenu',
94        'click button.ask-mobile-menu__toggle': 'handleUpdateMobileMenu'
95      }
96    },
97    handleUpdateMobileMenu: function handleUpdateMobileMenu(e) {
98      updateMenu.fetchNewItems(e, 'ask-mobile-menu');
99    },
100    handleUpdateSubMenu: function handleUpdateSubMenu(e) {
101      updateMenu.fetchNewItems(e, 'ask-sub-menu');
102    },
103    filterState: function filterState(state) {
104      return _.extend({}, {
105        startMenu: state.startMenu
106      });
107    }
108  });
109});}});

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.