var $lang;var $scrolling=false;var $start=true;var $portfolio=false;var $portfolio_open=false;var $content=new Array();$content['en']=new Array('portfolio','profile','lab','contact','connect');$content['de']=new Array('portfolio','profil','lab','kontakt','connect');var $connect_obj=new Array();var $tweets;var $hash_pos=new Array();var $gallery_img=new Array();var $current_gallery_img=0;var $start_delay=450;var $path='';var $loading_txt='';var $current_iphone=0;var $max_iphone=0;var $connect_error=false;$(document).ready(function(){if($('#gallery').length>0)setGallery();if($('#iphone_gallery').length>0)setiPhoneGallery();jQuery(window).hashchange(function(){checkHashTag($(location).attr('hash'));var hash=location.hash.replace('#','/')||'';var query_string=location.search||'';_gaq.push(['_trackPageview',location.pathname+query_string+hash])});if($('body').attr('id')=='connect'){$('.nojs').css('display','none');$path='../../../';getInstagram()}$(window).resize(function(){if($start)$('#header').css({'padding-top':($(window).height()-48)+'px'}).addClass('up')})});function redirect($_lang){window.location="http://philippoehrlein.de/html/"+$_lang+"/ie6"}var $page_loaded=0;function initSinglePage($_lang){$lang=$_lang;$('#header').css({'padding-top':($(window).height()-48)+'px'}).addClass('up');$loading_txt=($lang=='de')?'lädt':'loading';if($('body').is('.line'))$('body').addClass('js');$('#start .block').append('<div class="loader loader_white"></div>');loadSinglePageItem($content[$lang][0])}function loadSinglePageItem($item){$.post('html/'+$lang+'/'+$item+'/content.php?lang='+$lang,function(data){$('#wrap #content').append(data);$page_loaded++;if($page_loaded<$content[$lang].length){$('#wrap #content').append('<hr />');loadSinglePageItem($content[$lang][$page_loaded],$lang)}else{finishInit()}})}function finishInit(){$('#header').fadeIn(250);$('#footer').clone().appendTo('#wrap #content');$('#wrap>#footer').remove();if($('#connect'))getInstagram();$('#start .loader').fadeOut(250);$('#header').addClass('vis');setMail();setScrolling();setJumpNav()}function setScrolling(){$('#content').scroll(function(){if($scrolling)return;for(var $i=0;$i<$hash_pos.length;$i++){if($('#content').scrollTop()>$hash_pos[$i].pos-100&&$('#content').scrollTop()<$hash_pos[($i+1)].pos-100){$('.jumpNav a.active').removeClass('active');$('.jumpNav .'+$hash_pos[$i].hash).addClass('active');document.title='PHILIPP OEHRLEIN - '+$hash_pos[$i].hash.toUpperCase()}}})}function setJumpNav(){$('.jumpNav li a').each(function(){var $url=$(this).attr('href').split('/');var $hash=$url[2];$(this).attr('href','#'+$hash);var $hash_obj=new Object();$hash_obj.hash=$hash;$hash_obj.pos=$('#'+$hash).position().top;$hash_pos.push($hash_obj);$(this).bind("click",function(event){event.preventDefault();if($start){$('#start').css('-webkit-transition','all 1s');$('#start').css('-moz-transition','all 1s');$('#js_start').addClass('open');$('#header').addClass('dark');$start=false}$('a.active').removeClass('active');$(this).addClass('active');var $scrollto=$(this).attr("href");$scrollto=$scrollto.substring(1);animatedScroll($scrollto,true)})});var $hash_obj=new Object();$hash_obj.hash='';$hash_obj.pos=99999;$hash_pos.push($hash_obj);setPortfolioNav()}function animatedScroll($hash,$click){if($('#'+$hash).length==0)return;$scrolling=true;var $ypos;document.title='PHILIPP OEHRLEIN - '+$hash.toUpperCase();$ypos=$('#'+$hash).offset().top+$('#content').scrollTop();$('#content').delay($start_delay).animate({scrollTop:$ypos},500,function(){if($click)$(location).attr('hash',$hash);$scrolling=false;$start_delay=0})}function setScrollPos(){$(document).oneTime(500,function(){for(var $i=0;$i<$hash_pos.length-1;$i++)$hash_pos[$i].pos=$('#'+$hash_pos[$i].hash).position().top})}function setPortfolioNav(){$('#portfolio .section:first').prepend('<div id="portfolio_content"></div>');$('#portfolio .portfolio_item').each(function(){var url=$(this).children('a').attr('href').split('/');$(this).children('a').attr('href','#portfolio/'+(url[url.length-1]));$(this).children('h3').children('a').attr('href','#portfolio/'+(url[url.length-1]))});$('#portfolio_nav #back').click(function(){closePortfolioItem()});if($(location).attr('hash')!=''){checkHashTag($(location).attr('hash'))}}function getTweets(){try{$('#connectlabel').text($loading_txt+' tweets…');$.get($path+'php/connect.php?target=twitter',function(data){if(IsJsonString(data)){$tweets=jQuery.parseJSON(data);for(var $i=0;$i<$tweets.length;$i++){var $item=new Object();$item.type='tweet';$item.date=new Date($tweets[$i].created_at);if($item.date=='NaN'||$item.date=='undefined'){$connect_error=true}$item.html=setTweetHtml($tweets[$i],$item.date);$connect_obj.push($item)}}getZootool()})}catch(err){getZootool()}}function setTweetHtml($item,$date){var $html='<div class="connect_item tweet">';var $tweet=new Object();if(!$item.retweeted_status)$tweet=$item;else $tweet=$item.retweeted_status;$html+='<img src="'+$tweet.user.profile_image_url+'" width="48px" height="48px" />';$html+='<h3><a target="_blank" href="http://twitter.com/#!/'+$tweet.user.screen_name+'">'+$tweet.user.screen_name+'</a></h3><span class="tweet_name">'+$tweet.user.name+'</span>';$text=$tweet.text;$text=$text.replace(/(https{0,1}:\/\/[\w\-\.\/#?&=]*)/,'<a href="$1">$1<\/a>');$text=$text.replace(/@(\w+)/,'@<a target="_blank" href="http://twitter.com/$1" class="at">$1</a>');$text=$text.replace(/\s#(\w+)/,' <a target="_blank" href="http://twitter.com/#!/search?q=%23$1" class="hashtag">#$1</a>');$html+='<p>'+$text+'</p>';$html+='<span class="small">';if($item.retweet_count==0)$html+='<a target="_blank" class="tweet_link" href="http://twitter.com/#!/philippoehrlein/status/'+$item.id_str+'">'+prettyDate($date,$lang)+'</a>';else $html+='<a target="_blank" class="re tweet_link" href="http://twitter.com/#!/philippoehrlein/status/'+$item.id_str+'">'+prettyDate($date,$lang)+'</a>';$html+=' via ';$via=$item.source;$html+=$via;$html+='</span>';$html+='</div>';return $html}function IsJsonString(str){try{JSON.parse(str)}catch(e){return false}return true}function getInstagram(){$('#connect').addClass('loading');$('#connect>.block').append('<div class="loader loader_dark"><p id="connectlabel">'+$loading_txt+' instagram…</p></div>');$.ajax({type:"GET",url:$path+'php/connect.php?target=instagram',dataType:"xml",timeout:5000,success:function(xml){$(xml).find('entry').each(function(){var $item=new Object();$item.type='instagram';$item.date=new Date($(this).children('published').text());if($item.date=='NaN'||$item.date=='undefined'){$connect_error=true}$item.html=setInstagramHtml($(this),$item.date);$connect_obj.push($item)});getTweets()}})}function setInstagramHtml($item,$date){$link=$item.children('link').attr('href');var $html='<div class="connect_item instagram">';$html+='<a target="_blank" class="instagram_link instagram_link_img" href="'+$link+'"><span class="overlay"></span><img src="'+$item.children(':last').children('div').children('img').attr('src')+'" width="187px" height="187px" /></a>';$html+='<a target="_blank" class="instagram_link" href="'+$link+'">'+shortenStr($item.children('title').text())+'</a><br />';$html+='<a target="_blank" class="instagram_link_int small" href="'+$item.children('link').text()+'">'+prettyDate($date,$lang)+'</a>';$html+='</div>';return $html}function getZootool(){$('#connectlabel').text($loading_txt+' zootool…');$.ajax({type:"GET",url:$path+'php/connect.php?target=zootool',dataType:"xml",timeout:5000,success:function(xml){$(xml).children('rss').children('channel').find('item').each(function(){var $item=new Object();$item.type='zootool';$item.date=new Date($(this).children('pubDate').text().replace());$item.html=setZootoolHtml($(this),$item.date);$connect_obj.push($item)});showContent()}})}function setZootoolHtml($item,$date){$link=$item.children('description').text();$link_a=new Array();$link_a=$link.split('(<a href="');$link_b=new Array();$link_b=$link_a[1].split('">via</a>)');$link=$link_b[0];$link_z=$item.children('link').text();$('body').append('<div class="loadzoo hidden">'+$item.children('description').text()+'</div>');var $zimg=$('.loadzoo div img').attr('src');var $zwidth=$('.loadzoo div img').attr('width');var $zheight=$('.loadzoo div img').attr('height');var $zclass="";if($zwidth>187&&$zheight>187){if($zwidth+0>=$zheight+0)$zclass='landscape';else $zclass='portrait'}$('.loadzoo').remove();var $html='<div class="connect_item zootool">';$html+='<a target="_blank" class="zootool_link zootool_link_img" href="'+$link_z+'"><span class="overlay"></span><span class="img_container"><img class="'+$zclass+'" src="'+$zimg+'"  /></span></a>';$html+='<a target="_blank" class="zootool_link" href="'+$link+'">'+shortenStr($item.children('title').text())+'</a><br />';$html+='<a target="_blank" class="zootool_link_int small" href="'+$item.children('link').text()+'">'+prettyDate($date,$lang)+'</a>';$html+='</div>';return $html}function showContent(){$('#connect>.block .loader').fadeOut(125);$('#connect>.block').append('<div class="section block" id="connect_nav"></div>');$('#connect>.block #connect_nav').append('<a target="_blank" class="connect_instagram" href="http://instagram.heroku.com/users/philippstagram">Instagram</a>');$('#connect>.block #connect_nav').append('<a target="_blank" class="connect_twitter" href="http://www.twitter.com/philippoehrlein">Twitter</a>');$('#connect>.block #connect_nav').append('<a target="_blank" class="connect_instagram" href="http://vimeo.com/philippoehrlein">Vimeo</a>');$('#connect>.block #connect_nav').append('<a target="_blank" class="connect_zootool" href="http://www.zootool.com/user/philippoehrlein">Zootool</a>');if($connect_error)return;$connect_obj.sort(compareDates);for(var $i=0;$i<9;$i++){$('#connect>.block:first').append($connect_obj[$i].html)}$('#connect>.block:first').append('<br class="clear" />')}function compareDates(a,b){return b.date-a.date}function shortenStr(str){if(str.length>27)return str.substring(0,26)+'…';else return str}function setMail(){$('#contact_form').css('min-height',$('#contact_form').height()+'px');$('#contact_form #submit').bind("click",function(event){event.preventDefault();var $has_errors=0;$('#contact_form .mail_input').each(function(){if($(this).attr('value')==''){$('#label_'+$(this).attr('id')).addClass('error');$has_errors++}else{$('#label_'+$(this).attr('id')).removeClass('error')}if($(this).attr('id')=='email'){if(!EMail($(this).attr('value'))){$('#label_'+$(this).attr('id')).addClass('error');$(this).focus();$has_errors++}else{$('#label_'+$(this).attr('id')).removeClass('error')}}});$('#contact_form .error:eq(0)').focus();if($('#contact_form .error:eq(0)').is('#label_email')&&$('#email').attr('value')!=''){switch($lang){case'de':showAlert('Bitte eine gültige Email-Adresse eintagen!',1000);break;case'en':showAlert('Please use a valid Email-Address!',1000);break}}else if($has_errors!=0){switch($lang){case'de':showAlert('Bitte alle Felder ausfüllen!',1000);break;case'en':showAlert('Please fill in all form fields!',1000);break}}if($('#contact_form textarea').val()==''){$('#contact_form #label_message').addClass('error');if($has_errors==0)$('#contact_form textarea').focus();$has_errors++}else{$('#contact_form #label_message').removeClass('error')}if($has_errors==0){$.ajax({type:"GET",url:$path+'php/mail/ajax.php?n='+$('#name').attr('value')+'&e='+$('#email').attr('value')+'&s='+$('#subject').attr('value')+'&m='+$('#contact_form textarea').val(),dataType:"text",timeout:5000,success:function(data){if(data!=''){showAlert(data,2500)}else{if($lang=='de')$msg_sent='Vielen Dank für deine Nachricht.';else $msg_sent='Thanks for your message.';$('#contact_form form').fadeOut(250);$('#contact_form #msg').append($msg_sent).delay(250).fadeIn(125)}}})}})}function showAlert($txt,$delay){$('#wrap').append('<div class="alert"><p>'+$txt+'</p></div>');$('.alert').fadeIn(125).delay($delay).fadeOut(250,function(){$('.alert').remove()})}function EMail(s){var a=false;var res=false;if(typeof(RegExp)=='function'){var b=new RegExp('abc');if(b.test('abc')==true){a=true}}if(a==true){reg=new RegExp('^([a-zA-Z0-9\\-\\.\\_]+)'+'(\\@)([a-zA-Z0-9\\-\\.]+)'+'(\\.)([a-zA-Z]{2,4})$');res=(reg.test(s))}else{res=(s.search('@')>=1&&s.lastIndexOf('.')>s.search('@')&&s.lastIndexOf('.')>=s.length-5)}return(res)}function setGallery(){$('#gallery ul').css('left','745px');$gallery_img=new Array();$('#gallery li').each(function(){var $obj=new Object();if($(this).children('img').length==1){$obj.type='img';$obj.src=$(this).children('img').attr('src')}else{$obj.type='iframe';$obj.src=$(this).children('iframe').attr('src')}$gallery_img.push($obj);$(this).remove()});$('#gallery').append('<div class="loader loader_white"></div>');loadGalleryImage()}function loadGalleryImage(){var $count=$('#gallery li').length;$('#gallery ul').width(($count+1)*745);if($gallery_img[$count].type=='img'){$('#gallery ul').append('<li><img id="gallery_'+$count+'" src="'+$gallery_img[$count].src+'" width="745" height="384" /></li>');$('#gallery_'+$count).load(function(){$('#gallery_nav').append('<li><a id="gallery_button_'+$count+'" href="#'+$count+'">'+($count+1)+'</a></li>');$('#gallery_button_'+$count).bind("click",function(event){event.preventDefault();showGalleryImage($(this).text()-1);$('#gallery_nav .active').removeClass('active');$(this).addClass('active')});if($count<$gallery_img.length-1)loadGalleryImage();else{$('#gallery .loader').fadeOut(125);showGalleryImage(0);$('#gallery_button_0').addClass('active');setGalleryMainNav()}})}else{$('#gallery ul').append('<li><iframe src="'+$gallery_img[$count].src+'" width="745" height="384" frameborder="0"></iframe></li>');$('#gallery ul li:last').children('iframe').attr('id','gallery_'+$count);$('#gallery_nav').append('<li><a id="gallery_button_'+$count+'" href="#'+$count+'">'+($count+1)+'</a></li>');$('#gallery_button_'+$count).bind("click",function(event){event.preventDefault();showGalleryImage($(this).text()-1);$('#gallery_nav .active').removeClass('active');$(this).addClass('active')});if($count<$gallery_img.length-1)loadGalleryImage();else{$('#gallery .loader').fadeOut(125);showGalleryImage(0);$('#gallery_button_0').addClass('active');setGalleryMainNav()}}}function setGalleryMainNav(){$('#gallery').prepend('<a id="gallery_next" href="#"><span class="gallery_icon">»</span></a>');$('#gallery_next').bind("click",function(event){event.preventDefault();if($current_gallery_img!=$('#gallery ul li').length-1)var $next=$current_gallery_img+1;else $next=0;showGalleryImage($next);$('#gallery_nav .active').removeClass('active');$('#gallery_button_'+$next).addClass('active')});$('#gallery').prepend('<a id="gallery_prev" href="#"><span class="gallery_icon">«</span></a>');$('#gallery_prev').bind("click",function(event){event.preventDefault();if($current_gallery_img!=0)var $prev=$current_gallery_img-1;else $prev=$('#gallery ul li').length-1;showGalleryImage($prev);$('#gallery_nav .active').removeClass('active');$('#gallery_button_'+$prev).addClass('active')})}function showGalleryImage($id){$('#gallery ul').css('left',(0-($id*745))+'px');$current_gallery_img=$id}function setiPhoneGallery(){$('#iphone_gallery #iphone_gallery_mask ul').fadeOut(0);$('#iphone_gallery_mask').append('<div class="loader loader_white"></div>');$gallery_img=new Array();$('#iphone_gallery_mask ul li').each(function(){$gallery_img.push($(this).children('img').attr('src'));$(this).remove()});loadiPhoneGalleryImage()}function loadiPhoneGalleryImage(){var $count=$('#iphone_gallery_mask ul li').length;$('#iphone_gallery_mask ul').append('<li><img id="gallery_'+$count+'" src="'+$gallery_img[$count]+'" width="250" height="375" /></li>');$('#gallery_'+$count).load(function(){$('#iphone_gallery_nav').append('<li><a id="gallery_button_'+$count+'" href="#'+$count+'">'+($count+1)+'</a></li>');$('#gallery_button_'+$count).bind("click",function(event){event.preventDefault();$('#iphone_gallery_mask ul').animate({left:(($(this).text()-1)*-250)+'px'},350);$current_iphone=($(this).text()-1);$('#iphone_gallery_nav .active').removeClass('active');$(this).addClass('active')});if($count<$gallery_img.length-1)loadiPhoneGalleryImage();else{$('#iphone_gallery_mask .loader').fadeOut(125);$('#iphone_gallery #iphone_gallery_mask ul').fadeIn(250);$('#gallery_button_0').addClass('active');$max_iphone=$count;$('#iphone_gallery #iphone_gallery_mask').append('<a href="#" class="next"><span>»</span></a>');$('#iphone_gallery .next').bind('click',function(event){event.preventDefault();if($current_iphone==$max_iphone)$current_iphone=0;else $current_iphone++;$('#iphone_gallery_mask ul').animate({left:($current_iphone*-250)+'px'},350);$('#iphone_gallery_nav .active').removeClass('active');$('#iphone_gallery_nav li a').each(function(){if(parseInt($(this).text())==($current_iphone+1))$(this).addClass('active')})})}})}function loadPortfolioItem($id){closePortfolioItem();$('body').append('<div class="hidden" id="data"></div>');$.post('html/'+$lang+'/portfolio/'+$id+'/content.php?lang='+$lang,function(data){$('#portfolio_content .article').remove();$('#data').append(data);$height=$('#data').height();$('#data h2').remove();$('#portfolio_content').append($('#data .article'));$('#portfolio_content').height($height).css('opacity',1);if($('#gallery').length>0)setGallery();if($('#iphone_gallery').length>0)setiPhoneGallery();$('#data').remove();$('#portfolio_nav').fadeIn(250);document.title='PHILIPP OEHRLEIN - '+$id.toUpperCase().replace('_',' ');$portfolio_open=true;setScrollPos()})}function closePortfolioItem(){$('#portfolio_nav').fadeOut(250);var $pre_height=$('#portfolio_content').height();$('#portfolio_content').height(0).css('opacity',0);animatedScroll('portfolio',false);$portfolio_open=false;setScrollPos()}function checkHashTag($hashtag){if($start){$('#start').css('-webkit-transition','all 1s');$('#start').css('-moz-transition','all 1s');$('#js_start').addClass('open');$('#header').addClass('dark');$start=false}$hashtag=$hashtag.substring(1);$hashsplit=$hashtag.split('/');if($hashsplit.length>1){switch($hashsplit[0]){case'portfolio':loadPortfolioItem($hashsplit[1]);break}}else{if($hashsplit[0]=='portfolio'&&$portfolio_open)closePortfolioItem();animatedScroll($hashtag)}}
