/*! TimelineJS Version 1.71 Designed and built by Zach Wise at VéritéCo This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. http://www.gnu.org/licenses/ *//*********************************************** Begin VMM.js ***********************************************//* VéritéCo JS Master Version: 0.6 Date: June 19, 2012 Copyright 2012 VéritéCo unless part of TimelineJS, if part of TimelineJS then it inherits TimelineJS's license. Designed and built by Zach Wise digitalartwork.net ================================================== *//* Simple JavaScript Inheritance By John Resig http://ejohn.org/ MIT Licensed. ================================================== */function trace(e){VMM.debug&&(window.console?console.log(e):typeof jsTrace!="undefined"&&jsTrace.send(e))}function onYouTubePlayerAPIReady(){trace("GLOBAL YOUTUBE API CALLED");VMM.ExternalAPI.youtube.onAPIReady()}(function(){var e=!1,t=/xyz/.test(function(){xyz})?/\b_super\b/:/.*/;this.Class=function(){};Class.extend=function(n){function o(){!e&&this.init&&this.init.apply(this,arguments)}var r=this.prototype;e=!0;var i=new this;e=!1;for(var s in n)i[s]=typeof n[s]=="function"&&typeof r[s]=="function"&&t.test(n[s])?function(e,t){return function(){var n=this._super;this._super=r[e];var i=t.apply(this,arguments);this._super=n;return i}}(s,n[s]):n[s];o.prototype=i;o.prototype.constructor=o;o.extend=arguments.callee;return o}})();var global=function(){return this||(1,eval)("this")}();if(typeof VMM=="undefined"){var VMM=Class.extend({});VMM.debug=!0;VMM.master_config={init:function(){return this},sizes:{api:{width:0,height:0}},vp:"Pellentesque nibh felis, eleifend id, commodo in, interdum vitae, leo",api_keys_master:{flickr:"RAIvxHY4hE/Elm5cieh4X5ptMyDpj7MYIxziGxi0WGCcy1s+yr7rKQ==",google:"jwNGnYw4hE9lmAez4ll0QD+jo6SKBJFknkopLS4FrSAuGfIwyj57AusuR0s8dAo=",twitter:""},timers:{api:7e3},api:{pushques:[]},twitter:{active:!1,array:[],api_loaded:!1,que:[]},flickr:{active:!1,array:[],api_loaded:!1,que:[]},youtube:{active:!1,array:[],api_loaded:!1,que:[]},vimeo:{active:!1,array:[],api_loaded:!1,que:[]},googlemaps:{active:!1,map_active:!1,places_active:!1,array:[],api_loaded:!1,que:[]},googledocs:{active:!1,array:[],api_loaded:!1,que:[]},googleplus:{active:!1,array:[],api_loaded:!1,que:[]},wikipedia:{active:!1,array:[],api_loaded:!1,que:[],tries:0},soundcloud:{active:!1,array:[],api_loaded:!1,que:[]}}.init();VMM.createElement=function(e,t,n,r,i){var s="";if(e!=null&&e!=""){s+="<"+e;n!=null&&n!=""&&(s+=" class='"+n+"'");r!=null&&r!=""&&(s+=" "+r);i!=null&&i!=""&&(s+=" style='"+i+"'");s+=">";t!=null&&t!=""&&(s+=t);s=s+""+e+">"}return s};VMM.createMediaElement=function(e,t,n){var r="",i=!1;r+="
";typeof t.entities.media!="undefined"&&t.entities.media[0].type=="photo";r+=" ";VMM.attachElement("#"+e.id.toString(),r);VMM.attachElement("#text_thumb_"+e.id.toString(),t.text)}).error(function(t,n,r){trace("TWITTER error");trace("TWITTER ERROR: "+n+" "+t.responseText);VMM.attachElement("#"+e.id,VMM.MediaElement.loadingmessage("ERROR LOADING TWEET "+e.mid))}).success(function(e){clearTimeout(s);clearTimeout(o);t()})},errorTimeOut:function(e){trace("TWITTER JSON ERROR TIMEOUT "+e.mid);VMM.attachElement("#"+e.id.toString(),VMM.MediaElement.loadingmessage("Still waiting on Twitter: "+e.mid));VMM.getJSON("http://api.twitter.com/1/account/rate_limit_status.json",function(t){trace("REMAINING TWITTER API CALLS "+t.remaining_hits);trace("TWITTER RATE LIMIT WILL RESET AT "+t.reset_time );var n="";if(t.remaining_hits==0){n="",i=VMM.Util.linkify_with_twitter(t.text,"_blank");r+=i;r+="
You've reached the maximum number of tweets you can load in an hour.
";n+="You can view tweets again starting at:
"+t.reset_time+"
Still waiting on Twitter. "+e.mid+"
";VMM.attachElement("#"+e.id.toString(),VMM.MediaElement.loadingmessage(n))})},pushQue:function(){if(VMM.master_config.twitter.que.length>0){VMM.ExternalAPI.twitter.create(VMM.master_config.twitter.que[0],VMM.ExternalAPI.twitter.pushQue);VMM.master_config.twitter.que.remove(0)}},getHTML:function(e){var t="http://api.twitter.com/1/statuses/oembed.json?id="+e+"&callback=?";VMM.getJSON(t,VMM.ExternalAPI.twitter.onJSONLoaded)},onJSONLoaded:function(e){trace("TWITTER JSON LOADED");var t=e.id;VMM.attachElement("#"+t,VMM.Util.linkify_with_twitter(e.html))},parseTwitterDate:function(e){var t=new Date(Date.parse(e));return t},prettyParseTwitterDate:function(e){var t=new Date(Date.parse(e));return VMM.Date.prettyDate(t,!0)},getTweets:function(e){var t=[],n=e.length;for(var r=0;r",s=VMM.Util.linkify_with_twitter(e.text,"_blank");i+=s;i+="
";i+="— "+e.user.name+" (@"+e.user.screen_name+") "+VMM.ExternalAPI.twitter.prettyParseTwitterDate(e.created_at)+"
";n.content=r;n.raw=e.results[t];i.push(n)}var o={tweetdata:i};VMM.fireEvent(global,"TWEETSLOADED",o)})},prettyHTML:function(e,t){var e=e.toString(),n={twitterid:e},r="http://api.twitter.com/1/statuses/show.json?id="+e+"&include_entities=true&callback=?",i=setTimeout(VMM.ExternalAPI.twitter.errorTimeOut,VMM.master_config.timers.api,e);VMM.getJSON(r,VMM.ExternalAPI.twitter.formatJSON).error(function(t,n,r){trace("TWITTER error");trace("TWITTER ERROR: "+n+" "+t.responseText);VMM.attachElement("#twitter_"+e,"",s=VMM.Util.linkify_with_twitter(e.results[t].text,"_blank");r+=s;r+="
";r+="— "+e.results[t].from_user_name+" (@"+e.results[t].from_user+") "+VMM.ExternalAPI.twitter.prettyParseTwitterDate(e.results[t].created_at)+"
ERROR LOADING TWEET "+e+"
")}).success(function(e){clearTimeout(i);t&&VMM.ExternalAPI.twitter.secondaryMedia(e)})},formatJSON:function(e){var t=e.id_str,n="";n+=" ";typeof e.entities.media!="undefined"&&e.entities.media[0].type=="photo"&&(n+="");VMM.attachElement("#twitter_"+t.toString(),n);VMM.attachElement("#text_thumb_"+t.toString(),e.text)}},googlemaps:{get:function(e){var t,n,r,i,s;r=VMM.Util.getUrlVars(e.id);VMM.master_config.Timeline.api_keys.google!=""?n=VMM.master_config.Timeline.api_keys.google:n=Aes.Ctr.decrypt(VMM.master_config.api_keys_master.google,VMM.master_config.vp,256);i="http://maps.googleapis.com/maps/api/js?key="+n+"&libraries=places&sensor=false&callback=VMM.ExternalAPI.googlemaps.onMapAPIReady";s={url:e.id,vars:r,id:e.uid};if(VMM.master_config.googlemaps.active)VMM.master_config.googlemaps.que.push(s);else{VMM.master_config.googlemaps.que.push(s);VMM.master_config.googlemaps.api_loaded||VMM.LoadLib.js(i,function(){trace("Google Maps API Library Loaded")})}},create:function(e){function i(e){if(e in VMM.ExternalAPI.googlemaps.map_providers){t=VMM.ExternalAPI.googlemaps.map_attribution[VMM.ExternalAPI.googlemaps.map_providers[e].attribution];return VMM.ExternalAPI.googlemaps.map_providers[e]}if(VMM.ExternalAPI.googlemaps.defaultType(e)){trace("GOOGLE MAP DEFAULT TYPE");return google.maps.MapTypeId[e.toUpperCase()]}trace("Not a maptype: "+e)}function d(){var t=e.url+"&output=kml";t=t.replace("&output=embed","");var n=new google.maps.KmlLayer(t,{preserveViewport:!0}),i=new google.maps.InfoWindow;n.setMap(r);google.maps.event.addListenerOnce(n,"defaultviewport_changed",function(){r.fitBounds(n.getDefaultViewport());a&&r.panTo(s);f&&r.setZoom(u)});google.maps.event.addListener(n,"click",function(e){function n(e){i.setContent(e);i.open(r)}var t=e.featureData.description;n(t)})}var t="",n,r;google.maps.VeriteMapType=function(e){if(VMM.ExternalAPI.googlemaps.defaultType(e))return google.maps.MapTypeId[e.toUpperCase()];var t=i(e);return google.maps.ImageMapType.call(this,{getTileUrl:function(e,n){var r=(n+e.x+e.y)%VMM.ExternalAPI.googlemaps.map_subdomains.length;return[t.url.replace("{S}",VMM.ExternalAPI.googlemaps.map_subdomains[r]).replace("{Z}",n).replace("{X}",e.x).replace("{Y}",e.y).replace("{z}",n).replace("{x}",e.x).replace("{y}",e.y)]},tileSize:new google.maps.Size(256,256),name:e,minZoom:t.minZoom,maxZoom:t.maxZoom})};google.maps.VeriteMapType.prototype=new google.maps.ImageMapType("_");type.of(VMM.master_config.Timeline.maptype)=="string"?VMM.ExternalAPI.googlemaps.defaultType(VMM.master_config.Timeline.maptype)?n=google.maps.MapTypeId[VMM.master_config.Timeline.maptype.toUpperCase()]:n=VMM.master_config.Timeline.maptype:n="toner";var s=new google.maps.LatLng(41.875696,-87.624207),o,u=11,a=!1,f=!1,l;if(type.of(VMM.Util.getUrlVars(e.url)["ll"])=="string"){a=!0;o=VMM.Util.getUrlVars(e.url).ll.split(",");s=new google.maps.LatLng(parseFloat(o[0]),parseFloat(o[1]))}else if(type.of(VMM.Util.getUrlVars(e.url)["sll"])=="string"){o=VMM.Util.getUrlVars(e.url).sll.split(",");s=new google.maps.LatLng(parseFloat(o[0]),parseFloat(o[1]))}if(type.of(VMM.Util.getUrlVars(e.url)["z"])=="string"){f=!0;u=parseFloat(VMM.Util.getUrlVars(e.url).z)}var c={zoom:u,disableDefaultUI:!0,mapTypeControl:!1,zoomControl:!0,zoomControlOptions:{style:google.maps.ZoomControlStyle.SMALL,position:google.maps.ControlPosition.TOP_RIGHT},center:s,mapTypeId:n,mapTypeControlOptions:{mapTypeIds:[n]}},h=e.id.toString()+"_gmap";VMM.attachElement("#"+e.id,"");var r=new google.maps.Map(document.getElementById(h),c);if(!VMM.ExternalAPI.googlemaps.defaultType(VMM.master_config.Timeline.maptype)){r.mapTypes.set(n,new google.maps.VeriteMapType(n));var p="",r=VMM.Util.linkify_with_twitter(e.text,"_blank");n+=r;n+="
"+t.object.attachments[r].content+"
";o+="";o+="ERROR LOADING GOOGLE+
"+i.error.message+"
"))}).success(function(e){clearTimeout(googleplus_timeout);clearTimeout(callback_timeout);t()})},pushQue:function(){if(VMM.master_config.googleplus.que.length>0){VMM.ExternalAPI.googleplus.create(VMM.master_config.googleplus.que[0],VMM.ExternalAPI.googleplus.pushQue);VMM.master_config.googleplus.que.remove(0)}},errorTimeOut:function(e){trace("GOOGLE+ JSON ERROR TIMEOUT "+e.activity);VMM.attachElement("#googleplus_"+e.activity,VMM.MediaElement.loadingmessage("Still waiting on GOOGLE+
"+e.activity+"
"))}},googledocs:{get:function(e){var t={url:e.id,id:e.uid};VMM.master_config.googledocs.que.push(t);VMM.master_config.googledocs.active=!0},create:function(e){var t="";e.url.match(/docs.google.com/i)?t="":t="";VMM.attachElement("#"+e.id,t)},pushQue:function(){for(var e=0;eWikipedia entry unable to load using Internet Explorer 8 or below.
";VMM.attachElement("#"+e.id,r)}VMM.getJSON(n,function(t){if(t.query){var n,r,i="",s="",o=1,u=[];n=VMM.Util.getObjectAttributeByIndex(t.query.pages,0).extract;r=VMM.Util.getObjectAttributeByIndex(t.query.pages,0).title;n.match("")?u=n.split("
"):u.push(n);for(var a=0;a Wikipedia is not responding"+r+"
";i+=""+VMM.master_config.language.messages.wikipedia+"";i+=VMM.Util.linkify_wikipedia(s);n.match("REDIRECT")||VMM.attachElement("#"+e.id,i)}}).error(function(n,r,i){trace("WIKIPEDIA error");trace("WIKIPEDIA ERROR: "+r+" "+n.responseText);trace(i);VMM.attachElement("#"+e.id,VMM.MediaElement.loadingmessage("