/* * DC jQuery Slick Tabs - jQuery Slick Tabs * Copyright (c) 2011 Design Chemical * http://www.designchemical.com * * Dual licensed under the MIT and GPL licenses: * http://www.opensource.org/licenses/mit-license.php * http://www.gnu.org/licenses/gpl.html * */ (function($){ //define the new for the plugin ans how to call it $.fn.dcSlickTabs = function(options) { //set default options var defaults = { method: 'slide', classWrapper: 'dc-social', classContent: 'dc-social-content', idWrapper: 'dc-social-'+$(this).index(), slideWrap: 'slide-wrap', classTabContent: 'tab-content', location: 'left', align: 'top', offset: 50, speed: 'slow', autoClose: true, width: 300, height: 300, direction: 'horizontal', start: 0, slider: 'dcsmt', slides: 'tab-content', tabs: 'social-tabs', classOpen: 'dcsmt-open', classClose: 'dcsmt-close', classToggle: 'dcsmt-toggle', onLoad : function() {}, beforeOpen : function() {}, beforeClose: function() {} }; //call in the default otions var options = $.extend(defaults, options); var $dcSlickObj = this; //act upon the element that is passed into the design return $dcSlickObj.each(function(options){ // declare variables var clWrap = defaults.classWrapper; var idWrapper = defaults.idWrapper; var speed = defaults.speed; var offset = defaults.offset+'px'; var width = defaults.width; var height = defaults.height; var direction = defaults.direction; var linkOpen = $('.'+defaults.classOpen, this); var linkClose = $('.'+defaults.classClose, this); var linkToggle = $('.'+defaults.classToggle, this); $(this).addClass(defaults.classContent).wrap('
'); var $slider = $('#'+idWrapper); var $tab = $('.'+defaults.tabs,$slider); var widthPx = width+'px'; var heightPx = height+'px'; var bodyHeight = $(window).height(); if(defaults.method == 'slide'){ slickSetup($slider); sliderSetup(); if(defaults.autoClose == true){ $('body').mouseup(function(e){ if($slider.hasClass('active')){ if(!$(e.target).parents('#'+defaults.idWrapper+'.'+defaults.classWrapper).length){ slickClose(); } } }); } $('li a',$tab).click(function(e){ var i = parseInt($(this).attr('rel')); if(!$slider.hasClass('active')){ slickOpen(); } slickTabs(i); e.preventDefault(); }); $(linkOpen).click(function(e){ slickOpen(); e.preventDefault(); }); $(linkClose).click(function(e){ if($slider.hasClass('active')){ slickClose(); } e.preventDefault(); }); $(linkToggle).click(function(e){ if($slider.hasClass('active')){ slickClose(); } else { slickOpen(); } e.preventDefault(); }); } else { staticSetup($slider); sliderSetup(); $('li a',$tab).click(function(e){ var i = parseInt($(this).attr('rel')); slickTabs(i); e.preventDefault(); }); } slickTabs(defaults.start); function slickTabs(i){ $('li',$tab).removeClass('active'); $('li:eq('+i+')',$tab).addClass('active'); tabSlide(i); } function slickOpen(){ $('.'+clWrap).css({zIndex: 10000}); $slider.css({zIndex: 10001}); var init = {marginBottom: "-=5px"}; var params = {marginBottom: 0}; switch (defaults.location) { case 'top': init = {marginTop: "-=5px"}; params = {marginTop: 0}; break; case 'left': init = {marginLeft: "-=5px"}; params = {marginLeft: 0}; break; case 'right': init = {marginRight: "-=5px"}; params = {marginRight: 0}; break; } $slider.animate(init, "fast").animate(params, speed).addClass('active'); // onOpen callback; defaults.beforeOpen.call(this); } function slickClose(){ $slider.css({zIndex: 10000}); if($slider.hasClass('active')){ var params = {"marginBottom": "-"+heightPx}; switch (defaults.location) { case 'top': params = {"marginTop": "-"+heightPx}; break; case 'left': params = {"marginLeft": "-"+widthPx}; break; case 'right': params = {"marginRight": "-"+widthPx}; break; } $slider.removeClass('active').animate(params, speed); } // onClose callback; defaults.beforeClose.call(this); } function tabSlide(pos){ // Set animation based on direction var params = direction == 'vertical' ? {'marginTop' : height*(-pos)} : {'marginLeft' : width*(-pos)} ; $('#'+defaults.slideWrap).stop().animate(params); } function sliderSetup(){ var slideContainer = $('.'+defaults.slider); var slides = $('.'+defaults.slides); var numSlides = slides.length; slideContainer.css({height: height+'px', width: width+'px'}); slides.css({height: height+'px', width: width+'px'}); // Set CSS of slide-wrap based on direction wrapCss = direction == 'vertical' ? {height: height * numSlides} : {width: width * numSlides} ; // Wrap the slides & set the wrap width slides.wrapAll('
').css({'float' : 'left','width' : width}); $('#'+defaults.slideWrap).css(wrapCss); } function slickSetup(obj){ $tab.css({position: 'absolute'}); var $container = $('.'+defaults.classContent,obj); // Get slider border var bdrTop = $slider.css('border-top-width'); var bdrRight = $slider.css('border-right-width'); var bdrBottom = $slider.css('border-bottom-width'); var bdrLeft = $slider.css('border-left-width'); // Get tab dimension var tabWidth = $tab.outerWidth(); var tabWidthPx = tabWidth+'px'; var tabHeight = $tab.outerHeight(); var tabHeightPx = tabHeight+'px'; $(obj).addClass(defaults.location).addClass('align-'+defaults.align).css({position: 'fixed', zIndex: 10000}); $container.css({height: heightPx, width: widthPx, position: 'relative'}); switch(defaults.location){ case 'left': objcss = {marginLeft: '-'+widthPx, top: offset, left: 0}; tabWidth = $('li',$tab).outerWidth(); tabWidthPx = tabWidth+'px'; tabcss = {top: 0, right: 0, marginRight: '-'+tabWidthPx}; break; case 'right': objcss = {marginRight: '-'+widthPx, top: offset, right: 0}; tabWidth = $('li',$tab).outerWidth(); tabWidthPx = tabWidth+'px'; tabcss = {top: 0, right: 0, marginLeft: '-'+tabWidthPx}; break; case 'top': objcss = {marginTop: '-'+heightPx, top: 0}; tabHeight = $('li',$tab).outerHeight(); tabHeightPx = tabHeight+'px'; tabcss = {bottom: 0, marginBottom: '-'+tabHeightPx}; if(defaults.align == 'left'){ $(obj).css({left: offset}); $tab.css({left: 0}); } else { $(obj).css({right: offset}); $tab.css({right: 0}); } break; case 'bottom': objcss = {marginBottom: '-'+heightPx, bottom: 0}; tabHeight = $('li',$tab).outerHeight(); tabHeightPx = tabHeight+'px'; tabcss = {top: 0, marginTop: '-'+tabHeightPx}; if(defaults.align == 'left'){ $(obj).css({left: offset}); $tab.css({left: 0}); } else { $(obj).css({right: offset}); $tab.css({right: 0}); } break; } $(obj).css(objcss).addClass('sliding');; $tab.css(tabcss).css({height: tabHeightPx, width: tabWidthPx}); } function staticSetup(obj){ $(obj).addClass('static'); tabHeight = $('li',$tab).outerHeight(); $tab.css({height: tabHeight+'px'}); } }); }; })(jQuery); /* * DC Flickr - jQuery Flickr * Copyright (c) 2011 Design Chemical * http://www.designchemical.com/blog/ * * Dual licensed under the MIT and GPL licenses: * http://www.opensource.org/licenses/mit-license.php * http://www.gnu.org/licenses/gpl.html * */ (function($){ $.fn.dcFlickr = function(options) { //set default options var defaults = { base: 'http://api.flickr.com/services/feeds/', api: 'photos_public.gne', limit: 20, style: 'thumb', q: { lang: 'en-us', format: 'json', jsoncallback: '?' } }; //call the default otions var options = $.extend(defaults, options); var url = defaults.base + defaults.api + '?'; var qfirst = true; for(var key in defaults.q){ if(!qfirst) url += '&'; url += key + '=' + defaults.q[key]; qfirst = false; } var $dcFlickr = this; return $dcFlickr.each(function(options){ var html = []; limit = defaults.limit; $.getJSON(url, function(data){ // Cycle each flickr image $.each(data.items, function(i,item){ if(i < limit){ // var source = item.media.m.replace(/_m\.jpg$/, ".jpg"); var source = item.media.m; switch(defaults.style) { case 'thumb': html.push('
  • '); html.push(''); html.push(''); html.push('
  • '); break; case 'portfolio': html.push('
    '); break; } } }); if(defaults.style == 'portfolio'){ $('.items',$dcFlickr).html(html.join('')); } else { // append html to object $dcFlickr.html(html.join('')); } }).success(function() { }); }); }; })(jQuery); /* Google+ Activity Widget v1.0 Blog : http://www.moretechtips.net Project: http://code.google.com/p/googleplus-activity-widget/ Copyright 2009 [Mike @ moretechtips.net] Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 */ (function(f){f.fn.googlePlusActivity=function(o){o=f.extend({},f.fn.googlePlusActivity.defaults,o);return this.each(function(){var i=f(this),j=null,n=null,e=o,u=function(a){if(a.error)e.debug&&i.html('Error: '+a.error.message+"");else if(a.displayName){n=f('
    ').prependTo(i);n.html((a.image?'':"")+'
    '+a.displayName+'
    Add to circles');r()}},t=function(a,b){var c=a+(a.indexOf("?")<0?"?":"&"),g=true;for(var m in b){g||(c+="&");c=c+m+"="+encodeURIComponent(b[m]);g=false}return c},w=function(a){if(a.error)e.debug&&i.html('Error: '+a.error.message+"");else if(a.items){var b=a.items.length;if(b!=0){j=f('');if(n)j.insertAfter(n);else j=j.prependTo(i);j.append('
    ');for(b=b-1;b>=0;b--){var c=a.items[b],g=c.object.replies?c.object.replies.totalItems:0,m=c.object.plusoners?c.object.plusoners.totalItems:0,p=c.object.resharers?c.object.resharers.totalItems:0,d;d={src:"",imgLink:"",useLink:"",useTitle:""};var k=c.object.attachments;if(k)if(k.length){for(var l=0;l=0)d.src=d.w>=d.h?d.src.replace(/resize_h=\d+/i,"resize_h="+e.image_height):d.src.replace(/resize_h=\d+/i,"resize_w="+e.image_width)}d=d;j.append("
  • "+(e.show_image&&d.src?''+(d.useLink?'':"")+''+(d.useLink?"":"")+"":"")+''+(d.useLink?'':"")+(c.title?c.title:d.useTitle)+(d.useLink?"":"")+''+(e.show_plusones?'+'+q(m)+"":"")+(e.show_shares?''+q(p)+" shares":"")+(e.show_replies?''+q(g)+" comments":"")+(e.show_date?''+v(c.published)+"":"")+"
  • ")}r();e.rotate&&s()}}},q=function(a){var b=a;if(a>999999)b=Math.floor(a/1E6)+"M";else if(a>9999)b=Math.floor(a/1E3)+"K";else if(a>999)b=Math.floor(a/1E3)+","+a%1E3;return b},v=function(a){var b=a;if(/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d*)?(Z|[+-]\d{2}:\d{2})$/i.test(b)){a=b.slice(0,4);var c=["","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"][1*b.slice(5,7)],g=b.slice(8,10),m=b.slice(11,13),p=b.slice(14,16),d=b.slice(17,19),k="GMT";if(b.indexOf("Z")==-1){var l=b.lastIndexOf(":");k+=b.slice(l-3,l)+b.slice(l+1)}a=g+" "+c+" "+a+" "+m+":"+p+":"+d+" "+k}else a="";b=new Date;b.setTime(Date.parse(a));a=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];c=Math.floor((new Date-b)/1E3);if(c<0)c=0;return c<60?c+" seconds ago":c/60<60?Math.floor(c/60)+" minutes ago":c/60/60<24?Math.floor(c/60/60)+" hours ago":a[b.getMonth()]+" "+b.getDate()+", "+b.getFullYear()},s=function(){var a=f("li",j),b=a.size();if(!(b<=1)){var c=a.eq(0),g=a.eq(b-1);g.css({display:"none",visibility:"hidden"}).remove().insertBefore(c);g.animate({height:"show"},e.slide_time,"linear",function(){g.css({display:"none",visibility:"visible"});f(this).fadeIn(e.fade_time,x)})}},x=function(){j.animate({opacity:1},e.stay_time,"linear",s)},r=function(){f(".gpaw-info",i).show().css("display","block")};(function(){var a=i.attr("data-options");if(!a){var b=i.html().replace(/\n|\r\n/g,"");if(b)if((b=b.match(/