PageSourceSearch

https://www.unisa.ac.za/sites/scripts/messaging/wem-messaging-min.js

js unisa.ac.za collected 2026-09-24 08:59:36 UTC 6,628 bytes, 209 lines download raw bytes

1(function(_1){
2if((typeof _1.OT.wem.messaging!=="undefined")){
3return;
4}
5OT.wem.messaging={MESSAGING_CONTEXT_KEY:"wemMessagingContextKey",MESSAGING_CONTEXT_OLD_VALUE:"wemMessagingContextOldValue",MESSAGING_CONTEXT_NEW_VALUE:"wemMessagingContextNewValue",IS_WEM_MESSAGING_TYPE:"isWEMMessagingType",MESSAGE_EVENT:"message",post:function(_2,_3,_4){
6_4=_4||this.internal.getWindowUrl();
7if(_1.postMessage){
8var _5=JSON.stringify(this.internal.createMessage(_2,_3));
9_4=OT.wem.query.isArray(_4)?_4:[_4];
10for(var i=0;i<_4.length;i++){
11_1.postMessage(_5,_4[i]);
12}
13}else{
14var _7=OT.wem.messaging.Event();
15_7.eventType=_2;
16_7.data=_3;
17OT.wem.query(_1).trigger(OT.wem.messaging.MESSAGE_EVENT,_7);
18}
19},listen:function(_8,_9,_a,_b,_c){
20_a=_a||this.internal.getWindowUrl();
21if(_c&&this.internal.getListener(_8,_c)){
22return;
23}
24var _d=this.internal.createListener(_8,_9,_a,_b,_c);
25if(_d){
26OT.wem.query(_1).on(OT.wem.messaging.MESSAGE_EVENT,_d);
27}
28},removeListener:function(_e,_f){
29if(typeof _f==="function"){
30if(_f.wemMessagingWrapperFn){
31OT.wem.messaging.event.unsubscribe(_e,_f.wemMessagingWrapperFn);
32}
33}else{
34var _10=this.internal.getListener(_e,_f);
35OT.wem.messaging.event.unsubscribe(_e,_10);
36}
37},addContext:function(key,_12){
38if(key&&_12&&!OT.wem.messaging.context.exists(key)){
39OT.wem.messaging.context.set(key,_12);
40var _13={};
41_13[OT.wem.messaging.MESSAGING_CONTEXT_KEY]=key;
42_13[OT.wem.messaging.MESSAGING_CONTEXT_NEW_VALUE]=_12;
43OT.wem.messaging.post(OT.wem.messaging.event.CONTEXT_ADD,_13);
44OT.wem.messaging.post(OT.wem.messaging.event.CONTEXT_CHANGE,_13);
45}
46},removeContext:function(key){
47if(key&&OT.wem.messaging.context.exists(key)){
48var _15=OT.wem.messaging.context.get(key);
49OT.wem.messaging.context.remove(key);
50var _16={};
51_16[OT.wem.messaging.MESSAGING_CONTEXT_KEY]=key;
52_16[OT.wem.messaging.MESSAGING_CONTEXT_OLD_VALUE]=_15;
53OT.wem.messaging.post(OT.wem.messaging.event.CONTEXT_REMOVE);
54OT.wem.messaging.post(OT.wem.messaging.event.CONTEXT_CHANGE,_16);
55}
56},toggleContext:function(key,_18){
57if(key&&_18){
58var _19={};
59_19[OT.wem.messaging.MESSAGING_CONTEXT_KEY]=key;
60if(OT.wem.messaging.context.exists(key)){
61var _1a=OT.wem.messaging.context.get(key);
62OT.wem.messaging.context.set(key,_18);
63_19[OT.wem.messaging.MESSAGING_CONTEXT_NEW_VALUE]=_18;
64_19[OT.wem.messaging.MESSAGING_CONTEXT_OLD_VALUE]=_1a;
65OT.wem.messaging.post(OT.wem.messaging.event.CONTEXT_UPDATE,_19);
66}else{
67OT.wem.messaging.context.set(key,_18);
68_19[OT.wem.messaging.MESSAGING_CONTEXT_NEW_VALUE]=_18;
69OT.wem.messaging.post(OT.wem.messaging.event.CONTEXT_ADD,_19);
70}
71OT.wem.messaging.post(OT.wem.messaging.event.CONTEXT_CHANGE,_19);
72}
73},existsContext:function(key){
74return OT.wem.messaging.context.exists(key);
75},internal:{getWindowUrl:function(_1c){
76_1c=_1c||_1;
77var _1d=_1c.location;
78return _1d.protocol+"//"+_1d.hostname+(_1d.port?":"+_1d.port:"");
79},createMessage:function(_1e,_1f){
80return {isWEMMessagingType:true,eventType:_1e,data:_1f||{}};
81},getListener:function(_20,_21){
82var _22;
83if(OT.wem.query._data(_1,"events")&&OT.wem.query._data(_1,"events")[OT.wem.messaging.event.TOPIC+"/"+_20]){
84var _23=OT.wem.query._data(_1,"events")[OT.wem.messaging.event.TOPIC+"/"+_20];
85for(var i=0;i<_23.length;i++){
86if(_23[i].handler&&_23[i].handler.wemListenerId===_21){
87_22=_23[i].handler;
88break;
89}
90}
91}
92return _22;
93},getMessageWrapper:function(_25){
94var _26;
95if(OT.wem.query._data(_1,"events")&&OT.wem.query._data(_1,"events")[OT.wem.messaging.MESSAGE_EVENT]){
96var _27=OT.wem.query._data(_1,"events")[OT.wem.messaging.MESSAGE_EVENT];
97for(var i=0;i<_27.length;i++){
98if(_27[i].handler&&_27[i].handler.wemEventType===_25){
99_26=_27[i].handler;
100break;
101}
102}
103}
104return _26;
105},createListener:function(_29,_2a,_2b,_2c,_2d){
106var _2e=OT.wem.query.isArray(_2b)?_2b:[_2b];
107var _2f=function(_30,_31){
108_2a.wemMessagingWrapperFn=_2f;
109if(_2c){
110OT.wem.messaging.event.unsubscribe(_31.eventType,_2f);
111}
112_2a(_31);
113};
114_2f.wemListenerId=_2d;
115OT.wem.messaging.event.subscribe(_29,_2f);
116var _32=this.getMessageWrapper(_29);
117if(!_32){
118var _33=function(_34,_35){
119var _36,_37,_38,_39;
120if(_34.type===OT.wem.messaging.MESSAGE_EVENT){
121var _3a=OT.wem.messaging.internal.getWindowUrl(_34.source);
122if(OT.wem.query.inArray(_3a,_2e)===-1){
123return;
124}
125var _3b=JSON.parse(_34.originalEvent.data);
126if(!_3b[OT.wem.messaging.IS_WEM_MESSAGING_TYPE]){
127return;
128}
129_37=_3b.eventType;
130_36=_3b.data;
131_38=_34.origin;
132_39=_34.source;
133}else{
134_37=_35.eventType;
135_36=_35.data;
136}
137if(_37!==_29){
138return;
139}
140var _3c=new OT.wem.messaging.Event();
141_3c.eventType=_37;
142_3c.data=_36;
143_3c.source=_39;
144_3c.origin=_38;
145_3c.originalEvent=_34;
146_3c.context=OT.wem.messaging.context.getContext();
147if(_36[OT.wem.messaging.MESSAGING_CONTEXT_KEY]){
148_3c.contextKey=_36[OT.wem.messaging.MESSAGING_CONTEXT_KEY];
149}
150if(_36[OT.wem.messaging.MESSAGING_CONTEXT_OLD_VALUE]){
151_3c.contextOldValue=_36[OT.wem.messaging.MESSAGING_CONTEXT_OLD_VALUE];
152}
153if(_36[OT.wem.messaging.MESSAGING_CONTEXT_NEW_VALUE]){
154_3c.contextNewValue=_36[OT.wem.messaging.MESSAGING_CONTEXT_NEW_VALUE];
155}
156OT.wem.messaging.event.publish(_37,_3c);
157};
158_33.wemEventType=_29;
159return _33;
160}else{
161return undefined;
162}
163}}};
164OT.wem.messaging.context={getContext:function(){
165var ctx={};
166ctx=OT.wem.combine(ctx,this.internal.context);
167return ctx;
168},get:function(key){
169if(key&&OT.wem.messaging.context.exists(key)){
170return this.internal.context[key];
171}else{
172return undefined;
173}
174},set:function(key,_40){
175if(key&&_40){
176this.internal.context[key]=_40;
177return true;
178}else{
179return false;
180}
181},remove:function(key){
182if(key&&this.internal.context[key]){
183delete this.internal.context[key];
184return true;
185}else{
186return false;
187}
188},exists:function(key){
189return this.internal.context.hasOwnProperty(key);
190},internal:{context:{}}};
191OT.wem.messaging.event={TOPIC:"/ot/wem/messaging/event",RELOAD_COMPONENT:"RELOAD_COMPONENT",RELOAD_PAGE:"RELOAD_PAGE",CONTEXT_ADD:"CONTEXT_ADD",CONTEXT_REMOVE:"CONTEXT_REMOVE",CONTEXT_UPDATE:"CONTEXT_UPDATE",CONTEXT_CHANGE:"CONTEXT_CHANGE",subscribe:function(_43,_44){
192OT.wem.query(_1).on(OT.wem.messaging.event.TOPIC+"/"+_43,_44);
193},unsubscribe:function(_45,_46){
194OT.wem.query(_1).off(OT.wem.messaging.event.TOPIC+"/"+_45,_46);
195},clearSubscriptions:function(_47){
196OT.wem.query(_1).off(OT.wem.messaging.event.TOPIC+"/"+_47);
197},publish:function(_48,_49){
198var _4a=OT.wem.query.Event(OT.wem.messaging.event.TOPIC+"/"+_48);
199_4a.preventDefault();
200OT.wem.query(_1).trigger(_4a,_49);
201}};
202OT.wem.messaging.Event=function(){
203if((arguments.length==1)&&(typeof arguments[0]=="object")){
204OT.wem.combine(this,arguments[0]);
205}
206};
207OT.wem.extend(OT.wem.messaging.Event,{eventType:"",data:{},origin:"",source:null,contextKey:"",contextValue:"",originalEvent:null,ports:[]});
208})(window);
209

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.