var _____WB$wombat$assign$function_____ = function(name) {return (self._wb_wombat && self._wb_wombat.local_init && self._wb_wombat.local_init(name)) || self[name]; }; if (!self.__WB_pmw) { self.__WB_pmw = function(obj) { this.__WB_source = obj; return this; } } { let window = _____WB$wombat$assign$function_____("window"); let self = _____WB$wombat$assign$function_____("self"); let document = _____WB$wombat$assign$function_____("document"); let location = _____WB$wombat$assign$function_____("location"); let top = _____WB$wombat$assign$function_____("top"); let parent = _____WB$wombat$assign$function_____("parent"); let frames = _____WB$wombat$assign$function_____("frames"); let opener = _____WB$wombat$assign$function_____("opener"); (function ($) { /** * A progressbar object. Initialized with the given id. Must be inserted into * the DOM afterwards through progressBar.element. * * method is the function which will perform the HTTP request to get the * progress bar state. Either "GET" or "POST". * * e.g. pb = new progressBar('myProgressBar'); * some_element.appendChild(pb.element); */ Drupal.progressBar = function (id, updateCallback, method, errorCallback) { var pb = this; this.id = id; this.method = method || 'GET'; this.updateCallback = updateCallback; this.errorCallback = errorCallback; // The WAI-ARIA setting aria-live="polite" will announce changes after users // have completed their current activity and not interrupt the screen reader. this.element = $('
'); this.element.html('
' + '
' + '
 
'); }; /** * Set the percentage and status message for the progressbar. */ Drupal.progressBar.prototype.setProgress = function (percentage, message) { if (percentage >= 0 && percentage <= 100) { $('div.bar', this.element).css('width', percentage + '%'); $('div.percentage', this.element).html(percentage + '%'); } $('div.message', this.element).html(message); if (this.updateCallback) { this.updateCallback(percentage, message, this); } }; /** * Start monitoring progress via Ajax. */ Drupal.progressBar.prototype.startMonitoring = function (uri, delay) { this.delay = delay; this.uri = uri; this.sendPing(); }; /** * Stop monitoring progress via Ajax. */ Drupal.progressBar.prototype.stopMonitoring = function () { clearTimeout(this.timer); // This allows monitoring to be stopped from within the callback. this.uri = null; }; /** * Request progress data from server. */ Drupal.progressBar.prototype.sendPing = function () { if (this.timer) { clearTimeout(this.timer); } if (this.uri) { var pb = this; // When doing a post request, you need non-null data. Otherwise a // HTTP 411 or HTTP 406 (with Apache mod_security) error may result. $.ajax({ type: this.method, url: this.uri, data: '', dataType: 'json', success: function (progress) { // Display errors. if (progress.status == 0) { pb.displayError(progress.data); return; } // Update display. pb.setProgress(progress.percentage, progress.message); // Schedule next timer. pb.timer = setTimeout(function () { pb.sendPing(); }, pb.delay); }, error: function (xmlhttp) { pb.displayError(Drupal.ajaxError(xmlhttp, pb.uri)); } }); } }; /** * Display errors on the page. */ Drupal.progressBar.prototype.displayError = function (string) { var error = $('
×

Error message

').append(string); $(this.element).before(error).hide(); if (this.errorCallback) { this.errorCallback(this); } }; })(jQuery); ; $ = jQuery; // rotate.js (function ($) { $.easy = { rotate: function (_30) { var _31 = { selector: ".rotate", initPause: 0, pause: 7000, randomize: false, callback: function () {} }; if (typeof _30 == "string") { _31.selector = _30; } var _30 = $.extend(_31, _30); return $(_30.selector).each(function () { var obj = $(this); var _32 = $(obj).children().length; var _33 = 0; function _34() { var ran = Math.floor(Math.random() * _32) + 1; return ran; }; function _35() { if (_30.randomize) { var ran = _34(); while (ran == _33) { ran = _34(); } _33 = ran; } else { _33 = (_33 == _32) ? 1 : _33 + 1; } $(obj).children().hide(); $(obj).children(":nth-child(" + _33 + ")").fadeIn("slow", function () { _30.callback(); }); }; function _36() { _35(); setInterval(_35, _30.pause); }; if (_32 > 1) { setTimeout(_36, _30.initPause); } }); } }; })(jQuery); $(function(){ $.easy.rotate(); //caches a jQuery object containing the header element var animate = $("#progress"); $(window).scroll(function() { var scroll = $(window).scrollTop(); if (scroll >= 825) { animate.removeClass('display-none').addClass("display"); } }); }); !function ($) { $(function(){ $('#header').carousel() }) }(window.jQuery) $(document).ready(function (){ $("#btn-focus").click(function (){ $('html, body').animate({ scrollTop: $("#focus").offset().top() }, 1000); }); }); ; (function ($) { $.easy = { rotate: function (_30) { var _31 = { selector: ".rotate", initPause: 0, pause: 7000, randomize: false, callback: function () {} }; if (typeof _30 == "string") { _31.selector = _30; } var _30 = $.extend(_31, _30); return $(_30.selector).each(function () { var obj = $(this); var _32 = $(obj).children().length; var _33 = 0; function _34() { var ran = Math.floor(Math.random() * _32) + 1; return ran; }; function _35() { if (_30.randomize) { var ran = _34(); while (ran == _33) { ran = _34(); } _33 = ran; } else { _33 = (_33 == _32) ? 1 : _33 + 1; } $(obj).children().hide(); $(obj).children(":nth-child(" + _33 + ")").fadeIn("slow", function () { _30.callback(); }); }; function _36() { _35(); setInterval(_35, _30.pause); }; if (_32 > 1) { setTimeout(_36, _30.initPause); } }); } }; })(jQuery); $(function(){ $.easy.rotate(); }); ; // Twitter Feed function twitterCallback2(twitters) { var statusHTML = []; for (var i=0; i]*[^.,;'">\:\s\<\>\)\]\!])/g, function(url) { return ''+url+''; }).replace(/\B@([_a-z0-9]+)/ig, function(reply) { return reply.charAt(0)+''+reply.substring(1)+''; }); statusHTML.push('
  • '+status+'
    '+relative_time(twitters[i].created_at)+'
  • '); } document.getElementById('twitter_update_list').innerHTML = statusHTML.join(''); } function relative_time(time_value) { var values = time_value.split(" "); time_value = values[1] + " " + values[2] + ", " + values[5] + " " + values[3]; var parsed_date = Date.parse(time_value); var relative_to = (arguments.length > 1) ? arguments[1] : new Date(); var delta = parseInt((relative_to.getTime() - parsed_date) / 1000); delta = delta + (relative_to.getTimezoneOffset() * 60); if (delta < 60) { return 'less than a minute ago'; } else if(delta < 120) { return 'about a minute ago'; } else if(delta < (60*60)) { return (parseInt(delta / 60)).toString() + ' minutes ago'; } else if(delta < (120*60)) { return 'about an hour ago'; } else if(delta < (24*60*60)) { return 'about ' + (parseInt(delta / 3600)).toString() + ' hours ago'; } else if(delta < (48*60*60)) { return '1 day ago'; } else { return (parseInt(delta / 86400)).toString() + ' days ago'; } }; (function ($) { $(document).ready(function() { // Expression to check for absolute internal links. var isInternal = new RegExp("^(https?):\/\/" + window.location.host, "i"); // Attach onclick event to document only and catch clicks on all elements. $(document.body).click(function(event) { // Catch the closest surrounding link of a clicked element. $(event.target).closest("a,area").each(function() { var ga = Drupal.settings.googleanalytics; // Expression to check for special links like gotwo.module /go/* links. var isInternalSpecial = new RegExp("(\/go\/.*)$", "i"); // Expression to check for download links. var isDownload = new RegExp("\\.(" + ga.trackDownloadExtensions + ")$", "i"); // Is the clicked URL internal? if (isInternal.test(this.href)) { // Skip 'click' tracking, if custom tracking events are bound. if ($(this).is('.colorbox')) { // Do nothing here. The custom event will handle all tracking. } // Is download tracking activated and the file extension configured for download tracking? else if (ga.trackDownload && isDownload.test(this.href)) { // Download link clicked. var extension = isDownload.exec(this.href); _gaq.push(["_trackEvent", "Downloads", extension[1].toUpperCase(), this.href.replace(isInternal, '')]); } else if (isInternalSpecial.test(this.href)) { // Keep the internal URL for Google Analytics website overlay intact. _gaq.push(["_trackPageview", this.href.replace(isInternal, '')]); } } else { if (ga.trackMailto && $(this).is("a[href^='mailto:'],area[href^='mailto:']")) { // Mailto link clicked. _gaq.push(["_trackEvent", "Mails", "Click", this.href.substring(7)]); } else if (ga.trackOutbound && this.href.match(/^\w+:\/\//i)) { if (ga.trackDomainMode == 2 && isCrossDomain(this.hostname, ga.trackCrossDomains)) { // Top-level cross domain clicked. document.location is handled by _link internally. event.preventDefault(); _gaq.push(["_link", this.href]); } else { // External link clicked. _gaq.push(["_trackEvent", "Outbound links", "Click", this.href]); } } } }); }); // Colorbox: This event triggers when the transition has completed and the // newly loaded content has been revealed. $(document).bind("cbox_complete", function() { var href = $.colorbox.element().attr("href"); if (href) { _gaq.push(["_trackPageview", href.replace(isInternal, '')]); } }); }); /** * Check whether the hostname is part of the cross domains or not. * * @param string hostname * The hostname of the clicked URL. * @param array crossDomains * All cross domain hostnames as JS array. * * @return boolean */ function isCrossDomain(hostname, crossDomains) { /** * jQuery < 1.6.3 bug: $.inArray crushes IE6 and Chrome if second argument is * `null` or `undefined`, http://bugs.jquery.com/ticket/10076, * https://github.com/jquery/jquery/commit/a839af034db2bd934e4d4fa6758a3fed8de74174 * * @todo: Remove/Refactor in D8 */ if (!crossDomains) { return false; } else { return $.inArray(hostname, crossDomains) > -1 ? true : false; } } })(jQuery); ; }