Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- __d("Primer", ["function-extensions", "Bootloader", "CSS", "ErrorUtils", "Parent", "clickRefAction", "trackReferrer", "userAction"], function (a, b, c, d, e, f) {
- b('function-extensions');
- var g = b('Bootloader'),
- h = b('CSS'),
- i = b('ErrorUtils'),
- j = b('Parent'),
- k = b('clickRefAction'),
- l = b('trackReferrer'),
- m = b('userAction'),
- n = null,
- o = /async(?:-post)?|dialog(?:-post)?|theater|toggle/,
- p = document.documentElement;
- function q(t, u) {
- t = j.byAttribute(t, u);
- if (!t) return;
- do {
- var v = t.getAttribute(u);
- JSON.parse(v).forEach(function (w) {
- var x = t;
- g.loadModules.call(g, [w[0]], function (y) {
- y[w[1]](x);
- });
- });
- } while (t = j.byAttribute(t.parentNode, u));
- return false;
- }
- p.onclick = i.guard(function (t) {
- t = t || window.event;
- n = t.target || t.srcElement;
- var u = q(n, 'data-onclick'),
- v = j.byTag(n, 'A');
- if (!v) return u;
- var w = v.getAttribute('ajaxify'),
- x = v.href,
- y = w || x;
- if (y) {
- k('a', v, t).coalesce_namespace('primer');
- var z = m('primer', v, t, {
- mode: 'DEDUP'
- }).uai_fallback('click');
- if (a.ArbiterMonitor) a.ArbiterMonitor.initUA(z, [v]);
- }
- if (w && x && !(/#$/).test(x)) {
- var aa = t.which && t.which === 2,
- ba = t.altKey || t.ctrlKey || t.metaKey || t.shiftKey;
- if (aa || ba) return;
- }
- l(v, y);
- var ca = v.rel && v.rel.match(o);
- ca = ca && ca[0];
- switch (ca) {
- case 'dialog':
- case 'dialog-post':
- g.loadModules(['AsyncDialog'], function (da) {
- da.bootstrap(y, v, ca);
- });
- break;
- case 'async':
- case 'async-post':
- g.loadModules(['AsyncRequest'], function (da) {
- da.bootstrap(y, v);
- });
- break;
- case 'theater':
- g.loadModules(['PhotoSnowlift'], function (da) {
- da.bootstrap(y, v);
- });
- break;
- case 'toggle':
- h.toggleClass(v.parentNode, 'openToggler');
- g.loadModules(['Toggler'], function (da) {
- da.bootstrap(v);
- });
- break;
- default:
- return u;
- }
- return false;
- });
- p.onsubmit = i.guard(function (t) {
- t = t || window.event;
- var u = t.target || t.srcElement;
- if (u && u.nodeName == 'FORM' && u.getAttribute('rel') == 'async') {
- k('f', u, t).coalesce_namespace('primer');
- var v = m('primer', u, t, {
- mode: 'DEDUP'
- }).uai_fallback('submit');
- if (a.ArbiterMonitor) a.ArbiterMonitor.initUA(v, [u]);
- var w = n;
- g.loadModules(['Form'], function (x) {
- x.bootstrap(u, w);
- });
- return false;
- }
- });
- var r = null,
- s = i.guard(function (t, u) {
- u = u || window.event;
- r = u.target || u.srcElement;
- q(r, 'data-on' + t);
- var v = j.byAttribute(r, 'data-hover');
- if (!v) return;
- switch (v.getAttribute('data-hover')) {
- case 'tooltip':
- g.loadModules(['Tooltip'], function (w) {
- w.process(v, r);
- });
- break;
- }
- });
- p.onmouseover = s.curry('mouseover');
- if (p.addEventListener) {
- p.addEventListener('focus', s.curry('focus'), true);
- } else p.attachEvent('onfocusin', s.curry('focus'));
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement