הבדלים בין גרסאות בדף "מדיה ויקי:Mobile.js"

מאגר הידע של דואלוג: מאגר הידע המקיף בעברית בתחומי האסטרטגיה והחשיבה המערכתית
קפיצה לניווט קפיצה לחיפוש
imported>Office
שורה 2: שורה 2:
 
window.onload=function(){
 
window.onload=function(){
 
var d1 = document.getElementById( 'mw-mf-page-left' ).getElementsByTagName( 'ul' )[0];
 
var d1 = document.getElementById( 'mw-mf-page-left' ).getElementsByTagName( 'ul' )[0];
d1.insertAdjacentHTML('beforeend', '<li><a href="/wiki/פורטלים" class="icon-portal icon icon-text" id="portalButton">פורטלים</a></li><li><a href="/blog" class="icon-blog icon icon-text" id="blogButton">בלוג</a></li><li><a href="/wiki/ייעוץ_אסטרטגי" class="icon-strat icon  icon-text" id="stratButton">ייעוץ אסטרטגי</a></li><li><a href="/wiki/קורסים_והכשרות" class="icon-course icon icon-text" id="courseButton">קורסים והכשרות</a></li><li><a href="/#contact" class="icon-contact icon icon-text" id="contactButton">צור קשר</a></li><li id="contact-icons"><a href="tel:+972544702895" class="icon-phone icon-text" id="phoneButton"></a><a href="//www.facebook.com/doalogue" class="icon-facebook icon-text" id="FBButton"></a><a href="//twitter.com/doalogue" class="icon-twitter icon-text" id="twitterButton"></a><a href="//linkedin.com/company/doalogue" class="icon-linkedin icon-text" id="twitterButton"></a></li>');
+
d1.insertAdjacentHTML('beforeend', '<li><a href="/wiki/פורטלים" class="icon-portal icon icon-text" id="portalButton">פורטלים</a></li><li><a href="/blog" class="icon-blog icon icon-text" id="blogButton">בלוג</a></li><ul id="contact-icons"><li><a href="//www.facebook.com/doalogue" class="icon-facbook icon icon-text" id="FBButton">facebook</a></li><li><a href="/blog" class="icon-blog icon icon-text" id="contactButton"></a></li><li><a href="/blog" class="icon-phone icon icon-text" id="phoneButton"></a></li><li><a href="/blog" class="icon-twitter icon icon-text" id="twitterButton"></a></li><li><a href="//linkedin.com/company/doalogue" class="icon-linkedin icon icon-text" id="twitterButton">/a></li></ul>');
 
}
 
}
 
// banner
 
// banner
  
 
$( document ).ready(function(){
 
$( document ).ready(function(){
$('head').append('<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css" type="text/css" /><meta name="theme-color" content="#52A3F6"><meta name="msapplication-navbutton-color" content="#52A3F6"><meta name="apple-mobile-web-app-status-bar-style" content="#52A3F6">');
 
 
if ($('#image-banner').length > 0) {  
 
if ($('#image-banner').length > 0) {  
 
$('#image-banner').css('background-image', 'url(' + $('.image img').attr('src') + ')').css('opacity', '1');
 
$('#image-banner').css('background-image', 'url(' + $('.image img').attr('src') + ')').css('opacity', '1');
שורה 16: שורה 15:
 
var PageHeader = document.getElementById("image-banner");
 
var PageHeader = document.getElementById("image-banner");
 
var clnPageHeader = PageHeader.cloneNode(true);
 
var clnPageHeader = PageHeader.cloneNode(true);
 
+
document.write('<link rel="stylesheet" type="text/css" href="http://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.0.3/css/font-awesome.min.css">');
  
 
if ($('.image').length > 0) {     
 
if ($('.image').length > 0) {     
שורה 25: שורה 24:
 
}
 
}
 
}
 
}
});
 
 
if (typeof jQuery != 'undefined') {
 
  jQuery(document).ready(function($) {
 
    var filetypes = /\.(zip|exe|dmg|pdf|doc.*|xls.*|ppt.*|mp3|txt|rar|wma|mov|avi|wmv|flv|wav)$/i;
 
    var baseHref = '';
 
    if (jQuery('base').attr('href') != undefined) baseHref = jQuery('base').attr('href');
 
 
    jQuery('a').on('click', function(event) {
 
      var el = jQuery(this);
 
      var track = true;
 
      var href = (typeof(el.attr('href')) != 'undefined' ) ? el.attr('href') :"";
 
      var isThisDomain = href.match(document.domain.split('.').reverse()[1] + '.' + document.domain.split('.').reverse()[0]);
 
      if (!href.match(/^javascript:/i)) {
 
    var elEv = []; elEv.value=0, elEv.non_i=false;
 
        if (href.match(/^mailto\:/i)) {
 
          elEv.category = "email";
 
          elEv.action = "click";
 
          elEv.label = href.replace(/^mailto\:/i, '');
 
          elEv.loc = href;
 
        }
 
        else if (href.match(filetypes)) {
 
          var extension = (/[.]/.exec(href)) ? /[^.]+$/.exec(href) : undefined;
 
          elEv.category = "download";
 
          elEv.action = "click-" + extension[0];
 
          elEv.label = href.replace(/ /g,"-");
 
          elEv.loc = baseHref + href;
 
        }
 
        else if (href.match(/^https?\:/i) && !isThisDomain) {
 
          elEv.category = "external";
 
          elEv.action = "click";
 
          elEv.label = href.replace(/^https?\:\/\//i, '');
 
          elEv.non_i = true;
 
          elEv.loc = href;
 
        }
 
        else if (href.match(/^tel\:/i)) {
 
          elEv.category = "telephone";
 
          elEv.action = "click";
 
          elEv.label = href.replace(/^tel\:/i, '');
 
          elEv.loc = href;
 
        }
 
        else track = false;
 
 
      if (track) {
 
          _gaq.push(['_trackEvent', elEv.category.toLowerCase(), elEv.action.toLowerCase(), elEv.label.toLowerCase(), elEv.value, elEv.non_i]);
 
          if ( el.attr('target') == undefined || el.attr('target').toLowerCase() != '_blank') {
 
            setTimeout(function() { location.href = elEv.loc; }, 400);
 
            return false;
 
  }
 
}
 
      }
 
    });
 
  });
 
}
 
 
/*!***************************************************
 
* mark.js v8.6.0
 
* https://github.com/julmot/mark.js
 
* Copyright (c) 2014–2017, Julian Motz
 
* Released under the MIT license https://git.io/vwTVl
 
*****************************************************/
 
( function ( $ ) {
 
  /*!***************************************************
 
* mark.js v8.11.1
 
* https://markjs.io/
 
* Copyright (c) 2014–2018, Julian Kühnel
 
* Released under the MIT license https://git.io/vwTVl
 
*****************************************************/
 
 
(function (global, factory) {
 
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('jquery')) :
 
typeof define === 'function' && define.amd ? define(['jquery'], factory) :
 
(global.Mark = factory(global.jQuery));
 
}(this, (function ($) { 'use strict';
 
 
$ = $ && $.hasOwnProperty('default') ? $['default'] : $;
 
 
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) {
 
  return typeof obj;
 
} : function (obj) {
 
  return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
 
};
 
 
 
 
 
 
 
 
 
 
 
 
var classCallCheck = function (instance, Constructor) {
 
  if (!(instance instanceof Constructor)) {
 
    throw new TypeError("Cannot call a class as a function");
 
  }
 
};
 
 
var createClass = function () {
 
  function defineProperties(target, props) {
 
    for (var i = 0; i < props.length; i++) {
 
      var descriptor = props[i];
 
      descriptor.enumerable = descriptor.enumerable || false;
 
      descriptor.configurable = true;
 
      if ("value" in descriptor) descriptor.writable = true;
 
      Object.defineProperty(target, descriptor.key, descriptor);
 
    }
 
  }
 
 
  return function (Constructor, protoProps, staticProps) {
 
    if (protoProps) defineProperties(Constructor.prototype, protoProps);
 
    if (staticProps) defineProperties(Constructor, staticProps);
 
    return Constructor;
 
  };
 
}();
 
 
 
 
 
 
 
 
var _extends = Object.assign || function (target) {
 
  for (var i = 1; i < arguments.length; i++) {
 
    var source = arguments[i];
 
 
    for (var key in source) {
 
      if (Object.prototype.hasOwnProperty.call(source, key)) {
 
        target[key] = source[key];
 
      }
 
    }
 
  }
 
 
  return target;
 
};
 
 
var DOMIterator = function () {
 
  function DOMIterator(ctx) {
 
    var iframes = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
 
    var exclude = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
 
    var iframesTimeout = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 5000;
 
    classCallCheck(this, DOMIterator);
 
 
    this.ctx = ctx;
 
    this.iframes = iframes;
 
    this.exclude = exclude;
 
    this.iframesTimeout = iframesTimeout;
 
  }
 
 
  createClass(DOMIterator, [{
 
    key: 'getContexts',
 
    value: function getContexts() {
 
      var ctx = void 0,
 
          filteredCtx = [];
 
      if (typeof this.ctx === 'undefined' || !this.ctx) {
 
        ctx = [];
 
      } else if (NodeList.prototype.isPrototypeOf(this.ctx)) {
 
        ctx = Array.prototype.slice.call(this.ctx);
 
      } else if (Array.isArray(this.ctx)) {
 
        ctx = this.ctx;
 
      } else if (typeof this.ctx === 'string') {
 
        ctx = Array.prototype.slice.call(document.querySelectorAll(this.ctx));
 
      } else {
 
        ctx = [this.ctx];
 
      }
 
      ctx.forEach(function (ctx) {
 
        var isDescendant = filteredCtx.filter(function (contexts) {
 
          return contexts.contains(ctx);
 
        }).length > 0;
 
        if (filteredCtx.indexOf(ctx) === -1 && !isDescendant) {
 
          filteredCtx.push(ctx);
 
        }
 
      });
 
      return filteredCtx;
 
    }
 
  }, {
 
    key: 'getIframeContents',
 
    value: function getIframeContents(ifr, successFn) {
 
      var errorFn = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : function () {};
 
 
      var doc = void 0;
 
      try {
 
        var ifrWin = ifr.contentWindow;
 
        doc = ifrWin.document;
 
        if (!ifrWin || !doc) {
 
          throw new Error('iframe inaccessible');
 
        }
 
      } catch (e) {
 
        errorFn();
 
      }
 
      if (doc) {
 
        successFn(doc);
 
      }
 
    }
 
  }, {
 
    key: 'isIframeBlank',
 
    value: function isIframeBlank(ifr) {
 
      var bl = 'about:blank',
 
          src = ifr.getAttribute('src').trim(),
 
          href = ifr.contentWindow.location.href;
 
      return href === bl && src !== bl && src;
 
    }
 
  }, {
 
    key: 'observeIframeLoad',
 
    value: function observeIframeLoad(ifr, successFn, errorFn) {
 
      var _this = this;
 
 
      var called = false,
 
          tout = null;
 
      var listener = function listener() {
 
        if (called) {
 
          return;
 
        }
 
        called = true;
 
        clearTimeout(tout);
 
        try {
 
          if (!_this.isIframeBlank(ifr)) {
 
            ifr.removeEventListener('load', listener);
 
            _this.getIframeContents(ifr, successFn, errorFn);
 
          }
 
        } catch (e) {
 
          errorFn();
 
        }
 
      };
 
      ifr.addEventListener('load', listener);
 
      tout = setTimeout(listener, this.iframesTimeout);
 
    }
 
  }, {
 
    key: 'onIframeReady',
 
    value: function onIframeReady(ifr, successFn, errorFn) {
 
      try {
 
        if (ifr.contentWindow.document.readyState === 'complete') {
 
          if (this.isIframeBlank(ifr)) {
 
            this.observeIframeLoad(ifr, successFn, errorFn);
 
          } else {
 
            this.getIframeContents(ifr, successFn, errorFn);
 
          }
 
        } else {
 
          this.observeIframeLoad(ifr, successFn, errorFn);
 
        }
 
      } catch (e) {
 
        errorFn();
 
      }
 
    }
 
  }, {
 
    key: 'waitForIframes',
 
    value: function waitForIframes(ctx, done) {
 
      var _this2 = this;
 
 
      var eachCalled = 0;
 
      this.forEachIframe(ctx, function () {
 
        return true;
 
      }, function (ifr) {
 
        eachCalled++;
 
        _this2.waitForIframes(ifr.querySelector('html'), function () {
 
          if (! --eachCalled) {
 
            done();
 
          }
 
        });
 
      }, function (handled) {
 
        if (!handled) {
 
          done();
 
        }
 
      });
 
    }
 
  }, {
 
    key: 'forEachIframe',
 
    value: function forEachIframe(ctx, filter, each) {
 
      var _this3 = this;
 
 
      var end = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : function () {};
 
 
      var ifr = ctx.querySelectorAll('iframe'),
 
          open = ifr.length,
 
          handled = 0;
 
      ifr = Array.prototype.slice.call(ifr);
 
      var checkEnd = function checkEnd() {
 
        if (--open <= 0) {
 
          end(handled);
 
        }
 
      };
 
      if (!open) {
 
        checkEnd();
 
      }
 
      ifr.forEach(function (ifr) {
 
        if (DOMIterator.matches(ifr, _this3.exclude)) {
 
          checkEnd();
 
        } else {
 
          _this3.onIframeReady(ifr, function (con) {
 
            if (filter(ifr)) {
 
              handled++;
 
              each(con);
 
            }
 
            checkEnd();
 
          }, checkEnd);
 
        }
 
      });
 
    }
 
  }, {
 
    key: 'createIterator',
 
    value: function createIterator(ctx, whatToShow, filter) {
 
      return document.createNodeIterator(ctx, whatToShow, filter, false);
 
    }
 
  }, {
 
    key: 'createInstanceOnIframe',
 
    value: function createInstanceOnIframe(contents) {
 
      return new DOMIterator(contents.querySelector('html'), this.iframes);
 
    }
 
  }, {
 
    key: 'compareNodeIframe',
 
    value: function compareNodeIframe(node, prevNode, ifr) {
 
      var compCurr = node.compareDocumentPosition(ifr),
 
          prev = Node.DOCUMENT_POSITION_PRECEDING;
 
      if (compCurr & prev) {
 
        if (prevNode !== null) {
 
          var compPrev = prevNode.compareDocumentPosition(ifr),
 
              after = Node.DOCUMENT_POSITION_FOLLOWING;
 
          if (compPrev & after) {
 
            return true;
 
          }
 
        } else {
 
          return true;
 
        }
 
      }
 
      return false;
 
    }
 
  }, {
 
    key: 'getIteratorNode',
 
    value: function getIteratorNode(itr) {
 
      var prevNode = itr.previousNode();
 
      var node = void 0;
 
      if (prevNode === null) {
 
        node = itr.nextNode();
 
      } else {
 
        node = itr.nextNode() && itr.nextNode();
 
      }
 
      return {
 
        prevNode: prevNode,
 
        node: node
 
      };
 
    }
 
  }, {
 
    key: 'checkIframeFilter',
 
    value: function checkIframeFilter(node, prevNode, currIfr, ifr) {
 
      var key = false,
 
          handled = false;
 
      ifr.forEach(function (ifrDict, i) {
 
        if (ifrDict.val === currIfr) {
 
          key = i;
 
          handled = ifrDict.handled;
 
        }
 
      });
 
      if (this.compareNodeIframe(node, prevNode, currIfr)) {
 
        if (key === false && !handled) {
 
          ifr.push({
 
            val: currIfr,
 
            handled: true
 
          });
 
        } else if (key !== false && !handled) {
 
          ifr[key].handled = true;
 
        }
 
        return true;
 
      }
 
      if (key === false) {
 
        ifr.push({
 
          val: currIfr,
 
          handled: false
 
        });
 
      }
 
      return false;
 
    }
 
  }, {
 
    key: 'handleOpenIframes',
 
    value: function handleOpenIframes(ifr, whatToShow, eCb, fCb) {
 
      var _this4 = this;
 
 
      ifr.forEach(function (ifrDict) {
 
        if (!ifrDict.handled) {
 
          _this4.getIframeContents(ifrDict.val, function (con) {
 
            _this4.createInstanceOnIframe(con).forEachNode(whatToShow, eCb, fCb);
 
          });
 
        }
 
      });
 
    }
 
  }, {
 
    key: 'iterateThroughNodes',
 
    value: function iterateThroughNodes(whatToShow, ctx, eachCb, filterCb, doneCb) {
 
      var _this5 = this;
 
 
      var itr = this.createIterator(ctx, whatToShow, filterCb);
 
      var ifr = [],
 
          elements = [],
 
          node = void 0,
 
          prevNode = void 0,
 
          retrieveNodes = function retrieveNodes() {
 
        var _getIteratorNode = _this5.getIteratorNode(itr);
 
 
        prevNode = _getIteratorNode.prevNode;
 
        node = _getIteratorNode.node;
 
 
        return node;
 
      };
 
      while (retrieveNodes()) {
 
        if (this.iframes) {
 
          this.forEachIframe(ctx, function (currIfr) {
 
            return _this5.checkIframeFilter(node, prevNode, currIfr, ifr);
 
          }, function (con) {
 
            _this5.createInstanceOnIframe(con).forEachNode(whatToShow, function (ifrNode) {
 
              return elements.push(ifrNode);
 
            }, filterCb);
 
          });
 
        }
 
        elements.push(node);
 
      }
 
      elements.forEach(function (node) {
 
        eachCb(node);
 
      });
 
      if (this.iframes) {
 
        this.handleOpenIframes(ifr, whatToShow, eachCb, filterCb);
 
      }
 
      doneCb();
 
    }
 
  }, {
 
    key: 'forEachNode',
 
    value: function forEachNode(whatToShow, each, filter) {
 
      var _this6 = this;
 
 
      var done = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : function () {};
 
 
      var contexts = this.getContexts();
 
      var open = contexts.length;
 
      if (!open) {
 
        done();
 
      }
 
      contexts.forEach(function (ctx) {
 
        var ready = function ready() {
 
          _this6.iterateThroughNodes(whatToShow, ctx, each, filter, function () {
 
            if (--open <= 0) {
 
              done();
 
            }
 
          });
 
        };
 
        if (_this6.iframes) {
 
          _this6.waitForIframes(ctx, ready);
 
        } else {
 
          ready();
 
        }
 
      });
 
    }
 
  }], [{
 
    key: 'matches',
 
    value: function matches(element, selector) {
 
      var selectors = typeof selector === 'string' ? [selector] : selector,
 
          fn = element.matches || element.matchesSelector || element.msMatchesSelector || element.mozMatchesSelector || element.oMatchesSelector || element.webkitMatchesSelector;
 
      if (fn) {
 
        var match = false;
 
        selectors.every(function (sel) {
 
          if (fn.call(element, sel)) {
 
            match = true;
 
            return false;
 
          }
 
          return true;
 
        });
 
        return match;
 
      } else {
 
        return false;
 
      }
 
    }
 
  }]);
 
  return DOMIterator;
 
}();
 
 
var Mark = function () {
 
  function Mark(ctx) {
 
    classCallCheck(this, Mark);
 
 
    this.ctx = ctx;
 
    this.ie = false;
 
    var ua = window.navigator.userAgent;
 
    if (ua.indexOf('MSIE') > -1 || ua.indexOf('Trident') > -1) {
 
      this.ie = true;
 
    }
 
  }
 
 
  createClass(Mark, [{
 
    key: 'log',
 
    value: function log(msg) {
 
      var level = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'debug';
 
 
      var log = this.opt.log;
 
      if (!this.opt.debug) {
 
        return;
 
      }
 
      if ((typeof log === 'undefined' ? 'undefined' : _typeof(log)) === 'object' && typeof log[level] === 'function') {
 
        log[level]('mark.js: ' + msg);
 
      }
 
    }
 
  }, {
 
    key: 'escapeStr',
 
    value: function escapeStr(str) {
 
      return str.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, '\\$&');
 
    }
 
  }, {
 
    key: 'createRegExp',
 
    value: function createRegExp(str) {
 
      if (this.opt.wildcards !== 'disabled') {
 
        str = this.setupWildcardsRegExp(str);
 
      }
 
      str = this.escapeStr(str);
 
      if (Object.keys(this.opt.synonyms).length) {
 
        str = this.createSynonymsRegExp(str);
 
      }
 
      if (this.opt.ignoreJoiners || this.opt.ignorePunctuation.length) {
 
        str = this.setupIgnoreJoinersRegExp(str);
 
      }
 
      if (this.opt.diacritics) {
 
        str = this.createDiacriticsRegExp(str);
 
      }
 
      str = this.createMergedBlanksRegExp(str);
 
      if (this.opt.ignoreJoiners || this.opt.ignorePunctuation.length) {
 
        str = this.createJoinersRegExp(str);
 
      }
 
      if (this.opt.wildcards !== 'disabled') {
 
        str = this.createWildcardsRegExp(str);
 
      }
 
      str = this.createAccuracyRegExp(str);
 
      return str;
 
    }
 
  }, {
 
    key: 'createSynonymsRegExp',
 
    value: function createSynonymsRegExp(str) {
 
      var syn = this.opt.synonyms,
 
          sens = this.opt.caseSensitive ? '' : 'i',
 
          joinerPlaceholder = this.opt.ignoreJoiners || this.opt.ignorePunctuation.length ? '\0' : '';
 
      for (var index in syn) {
 
        if (syn.hasOwnProperty(index)) {
 
          var value = syn[index],
 
              k1 = this.opt.wildcards !== 'disabled' ? this.setupWildcardsRegExp(index) : this.escapeStr(index),
 
              k2 = this.opt.wildcards !== 'disabled' ? this.setupWildcardsRegExp(value) : this.escapeStr(value);
 
          if (k1 !== '' && k2 !== '') {
 
            str = str.replace(new RegExp('(' + this.escapeStr(k1) + '|' + this.escapeStr(k2) + ')', 'gm' + sens), joinerPlaceholder + ('(' + this.processSynomyms(k1) + '|') + (this.processSynomyms(k2) + ')') + joinerPlaceholder);
 
          }
 
        }
 
      }
 
      return str;
 
    }
 
  }, {
 
    key: 'processSynomyms',
 
    value: function processSynomyms(str) {
 
      if (this.opt.ignoreJoiners || this.opt.ignorePunctuation.length) {
 
        str = this.setupIgnoreJoinersRegExp(str);
 
      }
 
      return str;
 
    }
 
  }, {
 
    key: 'setupWildcardsRegExp',
 
    value: function setupWildcardsRegExp(str) {
 
      str = str.replace(/(?:\\)*\?/g, function (val) {
 
        return val.charAt(0) === '\\' ? '?' : '\x01';
 
      });
 
      return str.replace(/(?:\\)*\*/g, function (val) {
 
        return val.charAt(0) === '\\' ? '*' : '\x02';
 
      });
 
    }
 
  }, {
 
    key: 'createWildcardsRegExp',
 
    value: function createWildcardsRegExp(str) {
 
      var spaces = this.opt.wildcards === 'withSpaces';
 
      return str.replace(/\u0001/g, spaces ? '[\\S\\s]?' : '\\S?').replace(/\u0002/g, spaces ? '[\\S\\s]*?' : '\\S*');
 
    }
 
  }, {
 
    key: 'setupIgnoreJoinersRegExp',
 
    value: function setupIgnoreJoinersRegExp(str) {
 
      return str.replace(/[^(|)\\]/g, function (val, indx, original) {
 
        var nextChar = original.charAt(indx + 1);
 
        if (/[(|)\\]/.test(nextChar) || nextChar === '') {
 
          return val;
 
        } else {
 
          return val + '\0';
 
        }
 
      });
 
    }
 
  }, {
 
    key: 'createJoinersRegExp',
 
    value: function createJoinersRegExp(str) {
 
      var joiner = [];
 
      var ignorePunctuation = this.opt.ignorePunctuation;
 
      if (Array.isArray(ignorePunctuation) && ignorePunctuation.length) {
 
        joiner.push(this.escapeStr(ignorePunctuation.join('')));
 
      }
 
      if (this.opt.ignoreJoiners) {
 
        joiner.push('\\u00ad\\u200b\\u200c\\u200d');
 
      }
 
      return joiner.length ? str.split(/\u0000+/).join('[' + joiner.join('') + ']*') : str;
 
    }
 
  }, {
 
    key: 'createDiacriticsRegExp',
 
    value: function createDiacriticsRegExp(str) {
 
      var sens = this.opt.caseSensitive ? '' : 'i',
 
          dct = this.opt.caseSensitive ? ['aàáảãạăằắẳẵặâầấẩẫậäåāą', 'AÀÁẢÃẠĂẰẮẲẴẶÂẦẤẨẪẬÄÅĀĄ', 'cçćč', 'CÇĆČ', 'dđď', 'DĐĎ', 'eèéẻẽẹêềếểễệëěēę', 'EÈÉẺẼẸÊỀẾỂỄỆËĚĒĘ', 'iìíỉĩịîïī', 'IÌÍỈĨỊÎÏĪ', 'lł', 'LŁ', 'nñňń', 'NÑŇŃ', 'oòóỏõọôồốổỗộơởỡớờợöøō', 'OÒÓỎÕỌÔỒỐỔỖỘƠỞỠỚỜỢÖØŌ', 'rř', 'RŘ', 'sšśșş', 'SŠŚȘŞ', 'tťțţ', 'TŤȚŢ', 'uùúủũụưừứửữựûüůū', 'UÙÚỦŨỤƯỪỨỬỮỰÛÜŮŪ', 'yýỳỷỹỵÿ', 'YÝỲỶỸỴŸ', 'zžżź', 'ZŽŻŹ'] : ['aàáảãạăằắẳẵặâầấẩẫậäåāąAÀÁẢÃẠĂẰẮẲẴẶÂẦẤẨẪẬÄÅĀĄ', 'cçćčCÇĆČ', 'dđďDĐĎ', 'eèéẻẽẹêềếểễệëěēęEÈÉẺẼẸÊỀẾỂỄỆËĚĒĘ', 'iìíỉĩịîïīIÌÍỈĨỊÎÏĪ', 'lłLŁ', 'nñňńNÑŇŃ', 'oòóỏõọôồốổỗộơởỡớờợöøōOÒÓỎÕỌÔỒỐỔỖỘƠỞỠỚỜỢÖØŌ', 'rřRŘ', 'sšśșşSŠŚȘŞ', 'tťțţTŤȚŢ', 'uùúủũụưừứửữựûüůūUÙÚỦŨỤƯỪỨỬỮỰÛÜŮŪ', 'yýỳỷỹỵÿYÝỲỶỸỴŸ', 'zžżźZŽŻŹ'];
 
      var handled = [];
 
      str.split('').forEach(function (ch) {
 
        dct.every(function (dct) {
 
          if (dct.indexOf(ch) !== -1) {
 
            if (handled.indexOf(dct) > -1) {
 
              return false;
 
            }
 
            str = str.replace(new RegExp('[' + dct + ']', 'gm' + sens), '[' + dct + ']');
 
            handled.push(dct);
 
          }
 
          return true;
 
        });
 
      });
 
      return str;
 
    }
 
  }, {
 
    key: 'createMergedBlanksRegExp',
 
    value: function createMergedBlanksRegExp(str) {
 
      return str.replace(/[\s]+/gmi, '[\\s]+');
 
    }
 
  }, {
 
    key: 'createAccuracyRegExp',
 
    value: function createAccuracyRegExp(str) {
 
      var _this = this;
 
 
      var chars = '!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~¡¿';
 
      var acc = this.opt.accuracy,
 
          val = typeof acc === 'string' ? acc : acc.value,
 
          ls = typeof acc === 'string' ? [] : acc.limiters,
 
          lsJoin = '';
 
      ls.forEach(function (limiter) {
 
        lsJoin += '|' + _this.escapeStr(limiter);
 
      });
 
      switch (val) {
 
        case 'partially':
 
        default:
 
          return '()(' + str + ')';
 
        case 'complementary':
 
          lsJoin = '\\s' + (lsJoin ? lsJoin : this.escapeStr(chars));
 
          return '()([^' + lsJoin + ']*' + str + '[^' + lsJoin + ']*)';
 
        case 'exactly':
 
          return '(^|\\s' + lsJoin + ')(' + str + ')(?=$|\\s' + lsJoin + ')';
 
      }
 
    }
 
  }, {
 
    key: 'getSeparatedKeywords',
 
    value: function getSeparatedKeywords(sv) {
 
      var _this2 = this;
 
 
      var stack = [];
 
      sv.forEach(function (kw) {
 
        if (!_this2.opt.separateWordSearch) {
 
          if (kw.trim() && stack.indexOf(kw) === -1) {
 
            stack.push(kw);
 
          }
 
        } else {
 
          kw.split(' ').forEach(function (kwSplitted) {
 
            if (kwSplitted.trim() && stack.indexOf(kwSplitted) === -1) {
 
              stack.push(kwSplitted);
 
            }
 
          });
 
        }
 
      });
 
      return {
 
        'keywords': stack.sort(function (a, b) {
 
          return b.length - a.length;
 
        }),
 
        'length': stack.length
 
      };
 
    }
 
  }, {
 
    key: 'isNumeric',
 
    value: function isNumeric(value) {
 
      return Number(parseFloat(value)) == value;
 
    }
 
  }, {
 
    key: 'checkRanges',
 
    value: function checkRanges(array) {
 
      var _this3 = this;
 
 
      if (!Array.isArray(array) || Object.prototype.toString.call(array[0]) !== '[object Object]') {
 
        this.log('markRanges() will only accept an array of objects');
 
        this.opt.noMatch(array);
 
        return [];
 
      }
 
      var stack = [];
 
      var last = 0;
 
      array.sort(function (a, b) {
 
        return a.start - b.start;
 
      }).forEach(function (item) {
 
        var _callNoMatchOnInvalid = _this3.callNoMatchOnInvalidRanges(item, last),
 
            start = _callNoMatchOnInvalid.start,
 
            end = _callNoMatchOnInvalid.end,
 
            valid = _callNoMatchOnInvalid.valid;
 
 
        if (valid) {
 
          item.start = start;
 
          item.length = end - start;
 
          stack.push(item);
 
          last = end;
 
        }
 
      });
 
      return stack;
 
    }
 
  }, {
 
    key: 'callNoMatchOnInvalidRanges',
 
    value: function callNoMatchOnInvalidRanges(range, last) {
 
      var start = void 0,
 
          end = void 0,
 
          valid = false;
 
      if (range && typeof range.start !== 'undefined') {
 
        start = parseInt(range.start, 10);
 
        end = start + parseInt(range.length, 10);
 
        if (this.isNumeric(range.start) && this.isNumeric(range.length) && end - last > 0 && end - start > 0) {
 
          valid = true;
 
        } else {
 
          this.log('Ignoring invalid or overlapping range: ' + ('' + JSON.stringify(range)));
 
          this.opt.noMatch(range);
 
        }
 
      } else {
 
        this.log('Ignoring invalid range: ' + JSON.stringify(range));
 
        this.opt.noMatch(range);
 
      }
 
      return {
 
        start: start,
 
        end: end,
 
        valid: valid
 
      };
 
    }
 
  }, {
 
    key: 'checkWhitespaceRanges',
 
    value: function checkWhitespaceRanges(range, originalLength, string) {
 
      var end = void 0,
 
          valid = true,
 
          max = string.length,
 
          offset = originalLength - max,
 
          start = parseInt(range.start, 10) - offset;
 
      start = start > max ? max : start;
 
      end = start + parseInt(range.length, 10);
 
      if (end > max) {
 
        end = max;
 
        this.log('End range automatically set to the max value of ' + max);
 
      }
 
      if (start < 0 || end - start < 0 || start > max || end > max) {
 
        valid = false;
 
        this.log('Invalid range: ' + JSON.stringify(range));
 
        this.opt.noMatch(range);
 
      } else if (string.substring(start, end).replace(/\s+/g, '') === '') {
 
        valid = false;
 
        this.log('Skipping whitespace only range: ' + JSON.stringify(range));
 
        this.opt.noMatch(range);
 
      }
 
      return {
 
        start: start,
 
        end: end,
 
        valid: valid
 
      };
 
    }
 
  }, {
 
    key: 'getTextNodes',
 
    value: function getTextNodes(cb) {
 
      var _this4 = this;
 
 
      var val = '',
 
          nodes = [];
 
      this.iterator.forEachNode(NodeFilter.SHOW_TEXT, function (node) {
 
        nodes.push({
 
          start: val.length,
 
          end: (val += node.textContent).length,
 
          node: node
 
        });
 
      }, function (node) {
 
        if (_this4.matchesExclude(node.parentNode)) {
 
          return NodeFilter.FILTER_REJECT;
 
        } else {
 
          return NodeFilter.FILTER_ACCEPT;
 
        }
 
      }, function () {
 
        cb({
 
          value: val,
 
          nodes: nodes
 
        });
 
      });
 
    }
 
  }, {
 
    key: 'matchesExclude',
 
    value: function matchesExclude(el) {
 
      return DOMIterator.matches(el, this.opt.exclude.concat(['script', 'style', 'title', 'head', 'html']));
 
    }
 
  }, {
 
    key: 'wrapRangeInTextNode',
 
    value: function wrapRangeInTextNode(node, start, end) {
 
      var hEl = !this.opt.element ? 'mark' : this.opt.element,
 
          startNode = node.splitText(start),
 
          ret = startNode.splitText(end - start);
 
      var repl = document.createElement(hEl);
 
      repl.setAttribute('data-markjs', 'true');
 
      if (this.opt.className) {
 
        repl.setAttribute('class', this.opt.className);
 
      }
 
      repl.textContent = startNode.textContent;
 
      startNode.parentNode.replaceChild(repl, startNode);
 
      return ret;
 
    }
 
  }, {
 
    key: 'wrapRangeInMappedTextNode',
 
    value: function wrapRangeInMappedTextNode(dict, start, end, filterCb, eachCb) {
 
      var _this5 = this;
 
 
      dict.nodes.every(function (n, i) {
 
        var sibl = dict.nodes[i + 1];
 
        if (typeof sibl === 'undefined' || sibl.start > start) {
 
          if (!filterCb(n.node)) {
 
            return false;
 
          }
 
          var s = start - n.start,
 
              e = (end > n.end ? n.end : end) - n.start,
 
              startStr = dict.value.substr(0, n.start),
 
              endStr = dict.value.substr(e + n.start);
 
          n.node = _this5.wrapRangeInTextNode(n.node, s, e);
 
          dict.value = startStr + endStr;
 
          dict.nodes.forEach(function (k, j) {
 
            if (j >= i) {
 
              if (dict.nodes[j].start > 0 && j !== i) {
 
                dict.nodes[j].start -= e;
 
              }
 
              dict.nodes[j].end -= e;
 
            }
 
          });
 
          end -= e;
 
          eachCb(n.node.previousSibling, n.start);
 
          if (end > n.end) {
 
            start = n.end;
 
          } else {
 
            return false;
 
          }
 
        }
 
        return true;
 
      });
 
    }
 
  }, {
 
    key: 'wrapMatches',
 
    value: function wrapMatches(regex, ignoreGroups, filterCb, eachCb, endCb) {
 
      var _this6 = this;
 
 
      var matchIdx = ignoreGroups === 0 ? 0 : ignoreGroups + 1;
 
      this.getTextNodes(function (dict) {
 
        dict.nodes.forEach(function (node) {
 
          node = node.node;
 
          var match = void 0;
 
          while ((match = regex.exec(node.textContent)) !== null && match[matchIdx] !== '') {
 
            if (!filterCb(match[matchIdx], node)) {
 
              continue;
 
            }
 
            var pos = match.index;
 
            if (matchIdx !== 0) {
 
              for (var i = 1; i < matchIdx; i++) {
 
                pos += match[i].length;
 
              }
 
            }
 
            node = _this6.wrapRangeInTextNode(node, pos, pos + match[matchIdx].length);
 
            eachCb(node.previousSibling);
 
            regex.lastIndex = 0;
 
          }
 
        });
 
        endCb();
 
      });
 
    }
 
  }, {
 
    key: 'wrapMatchesAcrossElements',
 
    value: function wrapMatchesAcrossElements(regex, ignoreGroups, filterCb, eachCb, endCb) {
 
      var _this7 = this;
 
 
      var matchIdx = ignoreGroups === 0 ? 0 : ignoreGroups + 1;
 
      this.getTextNodes(function (dict) {
 
        var match = void 0;
 
        while ((match = regex.exec(dict.value)) !== null && match[matchIdx] !== '') {
 
          var start = match.index;
 
          if (matchIdx !== 0) {
 
            for (var i = 1; i < matchIdx; i++) {
 
              start += match[i].length;
 
            }
 
          }
 
          var end = start + match[matchIdx].length;
 
          _this7.wrapRangeInMappedTextNode(dict, start, end, function (node) {
 
            return filterCb(match[matchIdx], node);
 
          }, function (node, lastIndex) {
 
            regex.lastIndex = lastIndex;
 
            eachCb(node);
 
          });
 
        }
 
        endCb();
 
      });
 
    }
 
  }, {
 
    key: 'wrapRangeFromIndex',
 
    value: function wrapRangeFromIndex(ranges, filterCb, eachCb, endCb) {
 
      var _this8 = this;
 
 
      this.getTextNodes(function (dict) {
 
        var originalLength = dict.value.length;
 
        ranges.forEach(function (range, counter) {
 
          var _checkWhitespaceRange = _this8.checkWhitespaceRanges(range, originalLength, dict.value),
 
              start = _checkWhitespaceRange.start,
 
              end = _checkWhitespaceRange.end,
 
              valid = _checkWhitespaceRange.valid;
 
 
          if (valid) {
 
            _this8.wrapRangeInMappedTextNode(dict, start, end, function (node) {
 
              return filterCb(node, range, dict.value.substring(start, end), counter);
 
            }, function (node) {
 
              eachCb(node, range);
 
            });
 
          }
 
        });
 
        endCb();
 
      });
 
    }
 
  }, {
 
    key: 'unwrapMatches',
 
    value: function unwrapMatches(node) {
 
      var parent = node.parentNode;
 
      var docFrag = document.createDocumentFragment();
 
      while (node.firstChild) {
 
        docFrag.appendChild(node.removeChild(node.firstChild));
 
      }
 
      parent.replaceChild(docFrag, node);
 
      if (!this.ie) {
 
        parent.normalize();
 
      } else {
 
        this.normalizeTextNode(parent);
 
      }
 
    }
 
  }, {
 
    key: 'normalizeTextNode',
 
    value: function normalizeTextNode(node) {
 
      if (!node) {
 
        return;
 
      }
 
      if (node.nodeType === 3) {
 
        while (node.nextSibling && node.nextSibling.nodeType === 3) {
 
          node.nodeValue += node.nextSibling.nodeValue;
 
          node.parentNode.removeChild(node.nextSibling);
 
        }
 
      } else {
 
        this.normalizeTextNode(node.firstChild);
 
      }
 
      this.normalizeTextNode(node.nextSibling);
 
    }
 
  }, {
 
    key: 'markRegExp',
 
    value: function markRegExp(regexp, opt) {
 
      var _this9 = this;
 
 
      this.opt = opt;
 
      this.log('Searching with expression "' + regexp + '"');
 
      var totalMatches = 0,
 
          fn = 'wrapMatches';
 
      var eachCb = function eachCb(element) {
 
        totalMatches++;
 
        _this9.opt.each(element);
 
      };
 
      if (this.opt.acrossElements) {
 
        fn = 'wrapMatchesAcrossElements';
 
      }
 
      this[fn](regexp, this.opt.ignoreGroups, function (match, node) {
 
        return _this9.opt.filter(node, match, totalMatches);
 
      }, eachCb, function () {
 
        if (totalMatches === 0) {
 
          _this9.opt.noMatch(regexp);
 
        }
 
        _this9.opt.done(totalMatches);
 
      });
 
    }
 
  }, {
 
    key: 'mark',
 
    value: function mark(sv, opt) {
 
      var _this10 = this;
 
 
      this.opt = opt;
 
      var totalMatches = 0,
 
          fn = 'wrapMatches';
 
 
      var _getSeparatedKeywords = this.getSeparatedKeywords(typeof sv === 'string' ? [sv] : sv),
 
          kwArr = _getSeparatedKeywords.keywords,
 
          kwArrLen = _getSeparatedKeywords.length,
 
          sens = this.opt.caseSensitive ? '' : 'i',
 
          handler = function handler(kw) {
 
        var regex = new RegExp(_this10.createRegExp(kw), 'gm' + sens),
 
            matches = 0;
 
        _this10.log('Searching with expression "' + regex + '"');
 
        _this10[fn](regex, 1, function (term, node) {
 
          return _this10.opt.filter(node, kw, totalMatches, matches);
 
        }, function (element) {
 
          matches++;
 
          totalMatches++;
 
          _this10.opt.each(element);
 
        }, function () {
 
          if (matches === 0) {
 
            _this10.opt.noMatch(kw);
 
          }
 
          if (kwArr[kwArrLen - 1] === kw) {
 
            _this10.opt.done(totalMatches);
 
          } else {
 
            handler(kwArr[kwArr.indexOf(kw) + 1]);
 
          }
 
        });
 
      };
 
 
      if (this.opt.acrossElements) {
 
        fn = 'wrapMatchesAcrossElements';
 
      }
 
      if (kwArrLen === 0) {
 
        this.opt.done(totalMatches);
 
      } else {
 
        handler(kwArr[0]);
 
      }
 
    }
 
  }, {
 
    key: 'markRanges',
 
    value: function markRanges(rawRanges, opt) {
 
      var _this11 = this;
 
 
      this.opt = opt;
 
      var totalMatches = 0,
 
          ranges = this.checkRanges(rawRanges);
 
      if (ranges && ranges.length) {
 
        this.log('Starting to mark with the following ranges: ' + JSON.stringify(ranges));
 
        this.wrapRangeFromIndex(ranges, function (node, range, match, counter) {
 
          return _this11.opt.filter(node, range, match, counter);
 
        }, function (element, range) {
 
          totalMatches++;
 
          _this11.opt.each(element, range);
 
        }, function () {
 
          _this11.opt.done(totalMatches);
 
        });
 
      } else {
 
        this.opt.done(totalMatches);
 
      }
 
    }
 
  }, {
 
    key: 'unmark',
 
    value: function unmark(opt) {
 
      var _this12 = this;
 
 
      this.opt = opt;
 
      var sel = this.opt.element ? this.opt.element : '*';
 
      sel += '[data-markjs]';
 
      if (this.opt.className) {
 
        sel += '.' + this.opt.className;
 
      }
 
      this.log('Removal selector "' + sel + '"');
 
      this.iterator.forEachNode(NodeFilter.SHOW_ELEMENT, function (node) {
 
        _this12.unwrapMatches(node);
 
      }, function (node) {
 
        var matchesSel = DOMIterator.matches(node, sel),
 
            matchesExclude = _this12.matchesExclude(node);
 
        if (!matchesSel || matchesExclude) {
 
          return NodeFilter.FILTER_REJECT;
 
        } else {
 
          return NodeFilter.FILTER_ACCEPT;
 
        }
 
      }, this.opt.done);
 
    }
 
  }, {
 
    key: 'opt',
 
    set: function set$$1(val) {
 
      this._opt = _extends({}, {
 
        'element': '',
 
        'className': '',
 
        'exclude': [],
 
        'iframes': false,
 
        'iframesTimeout': 5000,
 
        'separateWordSearch': true,
 
        'diacritics': true,
 
        'synonyms': {},
 
        'accuracy': 'partially',
 
        'acrossElements': false,
 
        'caseSensitive': false,
 
        'ignoreJoiners': false,
 
        'ignoreGroups': 0,
 
        'ignorePunctuation': [],
 
        'wildcards': 'disabled',
 
        'each': function each() {},
 
        'noMatch': function noMatch() {},
 
        'filter': function filter() {
 
          return true;
 
        },
 
        'done': function done() {},
 
        'debug': false,
 
        'log': window.console
 
      }, val);
 
    },
 
    get: function get$$1() {
 
      return this._opt;
 
    }
 
  }, {
 
    key: 'iterator',
 
    get: function get$$1() {
 
      return new DOMIterator(this.ctx, this.opt.iframes, this.opt.exclude, this.opt.iframesTimeout);
 
    }
 
  }]);
 
  return Mark;
 
}();
 
 
$.fn.mark = function (sv, opt) {
 
  new Mark(this.get()).mark(sv, opt);
 
  return this;
 
};
 
$.fn.markRegExp = function (regexp, opt) {
 
  new Mark(this.get()).markRegExp(regexp, opt);
 
  return this;
 
};
 
$.fn.markRanges = function (ranges, opt) {
 
  new Mark(this.get()).markRanges(ranges, opt);
 
  return this;
 
};
 
$.fn.unmark = function (opt) {
 
  new Mark(this.get()).unmark(opt);
 
  return this;
 
};
 
 
return $;
 
 
})));
 
}( jQuery ) );
 
 
/* סינון מונחון */
 
$(function() {
 
  var $input = $("input[name='keyword']"),
 
    $context = $("#context ul li");
 
  $outofcontext = $("#context h3 "),
 
  $input.on("input", function() {
 
    var term = $(this).val();
 
    $context.show().unmark();
 
    if (term) {
 
      $context.mark(term, {
 
        done: function() {
 
          $context.not(":has(mark)").hide();
 
          $outofcontext.hide();
 
        }
 
      });
 
    }  else {
 
          $outofcontext.show();
 
    }
 
  });
 
});
 
 
 
//Smooth scrolling with links
 
$('#heroButton a').on('click', function(event){   
 
    event.preventDefault();
 
    $('html,body').animate({scrollTop:$(this.hash).offset().top-48}, 500);
 
});
 
 
// Smooth scrolling when the document is loaded and ready
 
$(document).ready(function(){
 
  $('html,body').animate({scrollTop:$(location.hash).offset().top}, 500);
 
 
});
 
});

גרסה מ־19:15, 15 ביוני 2020

// menu
window.onload=function(){
var d1 = document.getElementById( 'mw-mf-page-left' ).getElementsByTagName( 'ul' )[0];
d1.insertAdjacentHTML('beforeend', '<li><a href="/wiki/פורטלים" class="icon-portal icon icon-text" id="portalButton">פורטלים</a></li><li><a href="/blog" class="icon-blog icon icon-text" id="blogButton">בלוג</a></li><ul id="contact-icons"><li><a href="//www.facebook.com/doalogue" class="icon-facbook icon icon-text" id="FBButton">facebook</a></li><li><a href="/blog" class="icon-blog icon icon-text" id="contactButton"></a></li><li><a href="/blog" class="icon-phone icon icon-text" id="phoneButton"></a></li><li><a href="/blog" class="icon-twitter icon icon-text" id="twitterButton"></a></li><li><a href="//linkedin.com/company/doalogue" class="icon-linkedin icon icon-text" id="twitterButton">/a></li></ul>');
}
// banner

$( document ).ready(function(){
if ($('#image-banner').length > 0) { 
$('#image-banner').css('background-image', 'url(' + $('.image img').attr('src') + ')').css('opacity', '1');

var PageHead = document.getElementById("section_0");
// Copy the element and its child nodes
var clnPageHead = PageHead.cloneNode(true);
var PageHeader = document.getElementById("image-banner");
var clnPageHeader = PageHeader.cloneNode(true);
document.write('<link rel="stylesheet" type="text/css" href="http://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.0.3/css/font-awesome.min.css">');

if ($('.image').length > 0) {    
    document.getElementById("image-banner").remove();    
    $(".header").after(clnPageHeader);
document.getElementById("section_0").remove();    
document.getElementById("newHeading").appendChild(clnPageHead);
}
}
});

הודפס מתוך מאגר הידע של דואלוג בכתובת: "https://doalogue.co.il/wiki/index.php?title=מדיה_ויקי:Mobile.js&oldid=9226"

משותף תחת רישיון CC-BY 4.0. ניתן להפיץ באופן חופשי תוך מתן קרדיט לדואלוג וקישור למקור.