diff --git a/boot.php b/boot.php
index e69b59d70..023c5807c 100644
--- a/boot.php
+++ b/boot.php
@@ -520,6 +520,19 @@ if(! class_exists('App')) {
 			$this->is_tablet = $mobile_detect->isTablet();
 		}
 
+		function get_basepath() {
+
+			$basepath = get_config("system", "basepath");
+
+			if ($basepath == "")
+				$basepath = $_SERVER["DOCUMENT_ROOT"];
+
+			if ($basepath == "")
+				$basepath = $_SERVER["PWD"];
+
+			return($basepath);
+		}
+
 		function get_baseurl($ssl = false) {
 
 			$scheme = $this->scheme;
@@ -1895,7 +1908,7 @@ function clear_cache($basepath = "", $path = "") {
 			$fullpath = $path."/".$file;
 			if ((filetype($fullpath) == "dir") and ($file != ".") and ($file != ".."))
 				clear_cache($basepath, $fullpath);
-			if ((filetype($fullpath) == "file") and filectime($fullpath) < (time() - $cachetime))
+			if ((filetype($fullpath) == "file") and (filectime($fullpath) < (time() - $cachetime)))
 				unlink($fullpath);
 		}
 		closedir($dh);
diff --git a/include/bb2diaspora.php b/include/bb2diaspora.php
index 75fe1ef35..ffe6b3b97 100644
--- a/include/bb2diaspora.php
+++ b/include/bb2diaspora.php
@@ -155,6 +155,9 @@ function bb2diaspora($Text,$preserve_nl = false, $fordiaspora = true) {
 	//	$Text = preg_replace("/\[url\=([^\[\]]*)\]\s*\[img\](.*?)\[\/img\]\s*\[\/url\]/ism",
 	//				"[url]$1[/url]\n[img]$2[/img]", $Text);
 
+	// Remove the avatar picture since that isn't looking good on the other side
+	//$Text = preg_replace("/\[share(.*?)avatar\s?=\s?'.*?'\s?(.*?)\]\s?(.*?)\s?\[\/share\]\s?/ism","\n[share$1$2]$3[/share]",$Text);
+
 	// Convert it to HTML - don't try oembed
 	$Text = bbcode($Text, $preserve_nl, false);
 
diff --git a/include/bbcode.php b/include/bbcode.php
index d83fe6c12..b3f6aa826 100644
--- a/include/bbcode.php
+++ b/include/bbcode.php
@@ -206,7 +206,59 @@ function bb_replace_images($body, $images) {
 	return $newbody;
 }}
 
+function bb_ShareAttributes($match) {
 
+        $attributes = $match[1];
+
+        $author = "";
+        preg_match("/author='(.*?)'/ism", $attributes, $matches);
+        if ($matches[1] != "")
+                $author = $matches[1];
+
+        preg_match('/author="(.*?)"/ism', $attributes, $matches);
+        if ($matches[1] != "")
+                $author = $matches[1];
+
+        $link = "";
+        preg_match("/link='(.*?)'/ism", $attributes, $matches);
+        if ($matches[1] != "")
+                $link = $matches[1];
+
+        preg_match('/link="(.*?)"/ism', $attributes, $matches);
+        if ($matches[1] != "")
+                $link = $matches[1];
+
+        $avatar = "";
+        preg_match("/avatar='(.*?)'/ism", $attributes, $matches);
+        if ($matches[1] != "")
+                $avatar = $matches[1];
+
+        preg_match('/avatar="(.*?)"/ism', $attributes, $matches);
+        if ($matches[1] != "")
+                $avatar = $matches[1];
+
+        $profile = "";
+        preg_match("/profile='(.*?)'/ism", $attributes, $matches);
+        if ($matches[1] != "")
+                $profile = $matches[1];
+
+        preg_match('/profile="(.*?)"/ism', $attributes, $matches);
+        if ($matches[1] != "")
+                $profile = $matches[1];
+
+        $headline = '<div class="shared_header">';
+
+	if ($avatar != "")
+		$headline .= '<img src="'.$avatar.'" height="32" width="32" >';
+
+	$headline .= sprintf(t('<span><a href="%s">%s</a> wrote the following <a href="%s">post</a>:</span>'), $profile, $author, $link);
+
+        $headline .= "</div>";
+
+        $text = "<br />".$headline.'<blockquote class="shared_content">'.trim($match[2])."</blockquote>";
+
+        return($text);
+}
 
 	// BBcode 2 HTML was written by WAY2WEB.net
 	// extended to work with Mistpark/Friendica - Mike Macgirvin
@@ -248,6 +300,13 @@ function bbcode($Text,$preserve_nl = false, $tryoembed = true) {
 	$Text = str_replace("<", "&lt;", $Text);
 	$Text = str_replace(">", "&gt;", $Text);
 
+	// remove some newlines before the general conversion
+	$Text = preg_replace("/\s?\[share(.*?)\]\s?(.*?)\s?\[\/share\]\s?/ism","[share$1]$2[/share]",$Text);
+
+	// when the content is meant exporting to other systems then remove the avatar picture since this doesn't really look good on these systems
+	if (!$tryoembed)
+		$Text = preg_replace("/\[share(.*?)avatar\s?=\s?'.*?'\s?(.*?)\]\s?(.*?)\s?\[\/share\]\s?/ism","\n[share$1$2]$3[/share]",$Text);
+
 	// Convert new line chars to html <br /> tags
 
 	// nlbr seems to be hopelessly messed up
@@ -271,7 +330,7 @@ function bbcode($Text,$preserve_nl = false, $tryoembed = true) {
 
 	// Perform URL Search
 
-	$Text = preg_replace("/([^\]\=]|^)(https?\:\/\/[a-zA-Z0-9\:\/\-\?\&\;\.\=\_\~\#\%\$\!\+\,]+)/ism", '$1<a href="$2" target="external-link">$2</a>', $Text);
+	$Text = preg_replace("/([^\]\='".'"'."]|^)(https?\:\/\/[a-zA-Z0-9\:\/\-\?\&\;\.\=\_\~\#\%\$\!\+\,]+)/ism", '$1<a href="$2" target="external-link">$2</a>', $Text);
 
 	if ($tryoembed)
 		$Text = preg_replace_callback("/\[bookmark\=([^\]]*)\].*?\[\/bookmark\]/ism",'tryoembed',$Text);
@@ -422,7 +481,8 @@ function bbcode($Text,$preserve_nl = false, $tryoembed = true) {
 	// [img]pathtoimage[/img]
 	$Text = preg_replace("/\[img\](.*?)\[\/img\]/ism", '<img src="$1" alt="' . t('Image/photo') . '" />', $Text);
 
-
+	// Shared content
+	$Text = preg_replace_callback("/\[share(.*?)\](.*?)\[\/share\]/ism","bb_ShareAttributes",$Text);
 
 	$Text = preg_replace("/\[crypt\](.*?)\[\/crypt\]/ism",'<br/><img src="' .$a->get_baseurl() . '/images/lock_icon.gif" alt="' . t('Encrypted content') . '" title="' . t('Encrypted content') . '" /><br />', $Text);
 	$Text = preg_replace("/\[crypt=(.*?)\](.*?)\[\/crypt\]/ism",'<br/><img src="' .$a->get_baseurl() . '/images/lock_icon.gif" alt="' . t('Encrypted content') . '" title="' . '$1' . ' ' . t('Encrypted content') . '" /><br />', $Text);
diff --git a/include/delivery.php b/include/delivery.php
index 428035973..c56d7d288 100644
--- a/include/delivery.php
+++ b/include/delivery.php
@@ -458,13 +458,17 @@ function delivery_run(&$argv, &$argc){
 
 					// only expose our real email address to true friends
 
-					if(($contact['rel'] == CONTACT_IS_FRIEND) && (! $contact['blocked']))
-						$headers  = 'From: ' . email_header_encode($local_user[0]['username'],'UTF-8') . ' <' . $local_user[0]['email'] . '>' . "\n";
-					else
+					if(($contact['rel'] == CONTACT_IS_FRIEND) && (! $contact['blocked'])) {
+						if($reply_to) {
+							$headers  = 'From: '.email_header_encode($local_user[0]['username'],'UTF-8').' <'.$reply_to.'>'."\n";
+							$headers .= 'Sender: '.$local_user[0]['email']."\n";
+						} else
+							$headers  = 'From: '.email_header_encode($local_user[0]['username'],'UTF-8').' <'.$local_user[0]['email'].'>'."\n";
+					} else
 						$headers  = 'From: ' . email_header_encode($local_user[0]['username'],'UTF-8') . ' <' . t('noreply') . '@' . $a->get_hostname() . '>' . "\n";
 
-					if($reply_to)
-						$headers .= 'Reply-to: ' . $reply_to . "\n";
+					//if($reply_to)
+					//	$headers .= 'Reply-to: ' . $reply_to . "\n";
 
 					// for testing purposes: Collect exported mails
 					// $file = tempnam("/tmp/friendica/", "mail-out-");
diff --git a/include/nav.php b/include/nav.php
index 3c058e04f..d94bf03be 100644
--- a/include/nav.php
+++ b/include/nav.php
@@ -44,14 +44,14 @@ function nav(&$a) {
 
 	if(local_user()) {
 		$nav['logout'] = Array('logout',t('Logout'), "", t('End this session'));
-		
+
 		// user menu
 		$nav['usermenu'][] = Array('profile/' . $a->user['nickname'], t('Status'), "", t('Your posts and conversations'));
 		$nav['usermenu'][] = Array('profile/' . $a->user['nickname']. '?tab=profile', t('Profile'), "", t('Your profile page'));
 		$nav['usermenu'][] = Array('photos/' . $a->user['nickname'], t('Photos'), "", t('Your photos'));
 		$nav['usermenu'][] = Array('events/', t('Events'), "", t('Your events'));
 		$nav['usermenu'][] = Array('notes/', t('Personal notes'), "", t('Your personal photos'));
-		
+
 		// user info
 		$r = q("SELECT micro FROM contact WHERE uid=%d AND self=1", intval($a->user['uid']));
 		$userinfo = array(
@@ -130,11 +130,13 @@ function nav(&$a) {
 		$nav['messages']['inbox'] = array('message', t('Inbox'), "", t('Inbox'));
 		$nav['messages']['outbox']= array('message/sent', t('Outbox'), "", t('Outbox'));
 		$nav['messages']['new'] = array('message/new', t('New Message'), "", t('New Message'));
-		
+
 		if(is_array($a->identities) && count($a->identities) > 1) {
 			$nav['manage'] = array('manage', t('Manage'), "", t('Manage other pages'));
 		}
 
+		$nav['delegations'] = Array('delegate', t('Delegations'), "", t('Delegate Page Management'));
+
 		$nav['settings'] = array('settings', t('Settings'),"", t('Account settings'));
 		if(feature_enabled(local_user(),'multi_profiles'))
 			$nav['profiles'] = array('profiles', t('Profiles'),"", t('Manage/Edit Profiles'));
diff --git a/include/network.php b/include/network.php
index 599088a2d..5877dda41 100644
--- a/include/network.php
+++ b/include/network.php
@@ -854,8 +854,7 @@ function scale_external_images($s, $include_link = true, $scale_replace = false)
 	}
 
 	// replace the special char encoding
-
-	$s = htmlspecialchars($s,ENT_QUOTES,'UTF-8');
+	$s = htmlspecialchars($s,ENT_NOQUOTES,'UTF-8');
 	return $s;
 }
 
diff --git a/include/notifier.php b/include/notifier.php
index 3398254b6..b685e1b99 100644
--- a/include/notifier.php
+++ b/include/notifier.php
@@ -771,14 +771,17 @@ function notifier_run(&$argv, &$argc){
 						$subject  = (($it['title']) ? email_header_encode($it['title'],'UTF-8') : t("\x28no subject\x29")) ;
 
 						// only expose our real email address to true friends
-
 						if(($contact['rel'] == CONTACT_IS_FRIEND) && (! $contact['blocked']))
-							$headers  = 'From: ' . email_header_encode($local_user[0]['username'],'UTF-8') . ' <' . $local_user[0]['email'] . '>' . "\n";
+							if($reply_to) {
+								$headers  = 'From: ' . email_header_encode($local_user[0]['username'],'UTF-8') . ' <' . $reply_to . '>' . "\n";
+								$headers .= 'Sender: '.$local_user[0]['email']."\n";
+							} else
+								$headers  = 'From: ' . email_header_encode($local_user[0]['username'],'UTF-8') . ' <' . $local_user[0]['email'] . '>' . "\n";
 						else
 							$headers  = 'From: ' . email_header_encode($local_user[0]['username'],'UTF-8') . ' <' . t('noreply') . '@' . $a->get_hostname() . '>' . "\n";
 
-						if($reply_to)
-							$headers .= 'Reply-to: ' . $reply_to . "\n";
+						//if($reply_to)
+						//	$headers .= 'Reply-to: ' . $reply_to . "\n";
 
 						// for testing purposes: Collect exported mails
 						//$file = tempnam("/tmp/friendica/", "mail-out2-");
diff --git a/include/onepoll.php b/include/onepoll.php
index 8fabede11..1e11f2ca1 100644
--- a/include/onepoll.php
+++ b/include/onepoll.php
@@ -2,6 +2,13 @@
 
 require_once("boot.php");
 
+function RemoveReply($subject) {
+	while (in_array(strtolower(substr($subject, 0, 3)), array("re:", "aw:")))
+		$subject = trim(substr($subject, 4));
+
+	return($subject);
+}
+
 function onepoll_run(&$argv, &$argc){
 	global $a, $db;
 
@@ -374,10 +381,6 @@ function onepoll_run(&$argv, &$argc){
 	//							$datarray['parent-uri'] = $r[0]['uri'];
 						}
 
-
-						if(! x($datarray,'parent-uri'))
-							$datarray['parent-uri'] = $datarray['uri'];
-
 						// Decoding the header
 						$subject = imap_mime_header_decode($meta->subject);
 						$datarray['title'] = "";
@@ -392,11 +395,26 @@ function onepoll_run(&$argv, &$argc){
 						//$datarray['title'] = notags(trim($meta->subject));
 						$datarray['created'] = datetime_convert('UTC','UTC',$meta->date);
 
-						// Is it  reply?
+						// Is it a reply?
 						$reply = ((substr(strtolower($datarray['title']), 0, 3) == "re:") or
 							(substr(strtolower($datarray['title']), 0, 3) == "re-") or
 							(raw_refs != ""));
 
+						// Remove Reply-signs in the subject
+						$datarray['title'] = RemoveReply($datarray['title']);
+
+						// If it seems to be a reply but a header couldn't be found take the last message with matching subject
+						if(!x($datarray,'parent-uri') and $reply) {
+							$r = q("SELECT `uri` , `parent-uri` FROM `item` WHERE MATCH (`title`) AGAINST ('".'"%s"'."' IN BOOLEAN MODE) ORDER BY `created` DESC LIMIT 1",
+								dbesc(protect_sprintf($datarray['title'])));
+							if(count($r))
+								$datarray['parent-uri'] = $r[0]['parent-uri'];
+						}
+
+						if(! x($datarray,'parent-uri'))
+							$datarray['parent-uri'] = $datarray['uri'];
+
+
 						$r = email_get_msg($mbox,$msg_uid, $reply);
 						if(! $r) {
 							logger("Mail: can't fetch msg ".$msg_uid." for ".$mailconf[0]['user']);
diff --git a/include/poller.php b/include/poller.php
index 6f2eeed82..4eb5e8a2b 100644
--- a/include/poller.php
+++ b/include/poller.php
@@ -105,6 +105,9 @@ function poller_run(&$argv, &$argc){
 	// clear old item cache files
 	clear_cache();
 
+	// clear cache for photos
+	clear_cache($a->get_basepath(), $a->get_basepath()."/photo");
+
 	$manual_id  = 0;
 	$generation = 0;
 	$hub_update = false;
diff --git a/include/text.php b/include/text.php
index a32641241..7d26d3550 100644
--- a/include/text.php
+++ b/include/text.php
@@ -292,11 +292,11 @@ function alt_pager(&$a, $i) {
         $o .= '<div class="pager">';
 
 	if($a->pager['page']>1)
-	  $o .= "<a href=\"$url"."&page=".($a->pager['page'] - 1).'">' . t('newer') . '</a>';
+	  $o .= "<a href=\"$url"."&page=".($a->pager['page'] - 1).'" class="pager_newer">' . t('newer') . '</a>';
         if($i>0) {
           if($a->pager['page']>1)
 	          $o .= "&nbsp;-&nbsp;";
-	  $o .= "<a href=\"$url"."&page=".($a->pager['page'] + 1).'">' . t('older') . '</a>';
+	  $o .= "<a href=\"$url"."&page=".($a->pager['page'] + 1).'" class="pager_older">' . t('older') . '</a>';
 	}
 
 
diff --git a/mod/photo.php b/mod/photo.php
index e37b92738..93db82a64 100644
--- a/mod/photo.php
+++ b/mod/photo.php
@@ -7,6 +7,7 @@ function photo_init(&$a) {
 	global $_SERVER;
 
 	$prvcachecontrol = false;
+	$file = "";
 
 	switch($a->argc) {
 		case 4:
@@ -20,6 +21,7 @@ function photo_init(&$a) {
 			break;
 		case 2:
 			$photo = $a->argv[1];
+			$file = $photo;
 			break;
 		case 1:
 		default:
@@ -42,7 +44,6 @@ function photo_init(&$a) {
 		exit;
 	}
 
-
 	$default = 'images/person-175.jpg';
 
 	if(isset($type)) {
@@ -94,7 +95,7 @@ function photo_init(&$a) {
 		foreach( Photo::supportedTypes() as $m=>$e){
 			$photo = str_replace(".$e",'',$photo);
 		}
-	
+
 		if(substr($photo,-2,1) == '-') {
 			$resolution = intval(substr($photo,-1,1));
 			$photo = substr($photo,0,-2);
@@ -115,6 +116,8 @@ function photo_init(&$a) {
 				intval($resolution)
 			);
 
+			$public = ($r[0]['allow_cid'] == '') AND ($r[0]['allow_gid'] == '') AND ($r[0]['deny_cid']  == '') AND ($r[0]['deny_gid']  == '');
+
 			if(count($r)) {
 				$data = $r[0]['data'];
 				$mimetype = $r[0]['type'];
@@ -198,6 +201,12 @@ function photo_init(&$a) {
 		header("Cache-Control: max-age=31536000");
 	}
 	echo $data;
+
+	// If the photo is public and there is an existing photo directory store the photo there
+	if ($public and ($file != ""))
+		if (is_dir($_SERVER["DOCUMENT_ROOT"]."/photo"))
+			file_put_contents($_SERVER["DOCUMENT_ROOT"]."/photo/".$file, $data);
+
 	killme();
 	// NOTREACHED
 }
diff --git a/mod/settings.php b/mod/settings.php
index 1e464de18..7cfdbb1cd 100644
--- a/mod/settings.php
+++ b/mod/settings.php
@@ -209,6 +209,7 @@ function settings_post(&$a) {
 					intval($mail_pubmail),
 					intval(local_user())
 				);
+				logger("mail: updating mailaccount. Response: ".print_r($r, true));
 				$r = q("SELECT * FROM `mailacct` WHERE `uid` = %d LIMIT 1",
 					intval(local_user())
 				);
@@ -731,7 +732,7 @@ function settings_content(&$a) {
 			'$mail_ssl'		=> array('mail_ssl', 	 t('Security:'), strtoupper($mail_ssl), '', array( 'notls'=>t('None'), 'TLS'=>'TLS', 'SSL'=>'SSL')),
 			'$mail_user'	=> array('mail_user',    t('Email login name:'), $mail_user, ''),
 			'$mail_pass'	=> array('mail_pass', 	 t('Email password:'), '', ''),
-			'$mail_replyto'	=> array('mail_replyto', t('Reply-to address:'), '', 'Optional'),
+			'$mail_replyto'	=> array('mail_replyto', t('Reply-to address:'), $mail_replyto, 'Optional'),
 			'$mail_pubmail'	=> array('mail_pubmail', t('Send public posts to all email contacts:'), $mail_pubmail, ''),
 			'$mail_action'	=> array('mail_action',	 t('Action after import:'), $mail_action, '', array(0=>t('None'), /*1=>t('Delete'),*/ 2=>t('Mark as seen'), 3=>t('Move to folder'))),
 			'$mail_movetofolder'	=> array('mail_movetofolder',	 t('Move to folder:'), $mail_movetofolder, ''),
diff --git a/view/theme/vier/nav.tpl b/view/theme/vier/nav.tpl
index b2b6cc785..f615be85f 100644
--- a/view/theme/vier/nav.tpl
+++ b/view/theme/vier/nav.tpl
@@ -41,6 +41,7 @@
 				{{ if $nav.help }} <li><a class="$nav.help.2" target="friendica-help" href="$nav.help.0" title="$nav.help.3" >$nav.help.1</a></li>{{ endif }}
 				<li><a class="$nav.search.2" href="friendica" title="Site Info / Impressum" >Info/Impressum</a></li>
 				<li><a class="$nav.directory.2" href="$nav.directory.0" title="$nav.directory.3" >$nav.directory.1</a></li>
+				{{ if $nav.delegations }}<li><a class="$nav.delegations.2" href="$nav.delegations.0" title="$nav.delegations.3">$nav.delegations.1</a></li>{{ endif }}
 				{{ if $nav.settings }}<li><a class="$nav.settings.2" href="$nav.settings.0" title="$nav.settings.3">$nav.settings.1</a></li>{{ endif }}
 				{{ if $nav.admin }}<li><a class="$nav.admin.2" href="$nav.admin.0" title="$nav.admin.3" >$nav.admin.1</a></li>{{ endif }}
 
@@ -74,7 +75,6 @@
 					{{ for $nav.usermenu as $usermenu }}
 						<li><a class="$usermenu.2" href="$usermenu.0" title="$usermenu.3">$usermenu.1</a></li>
 					{{ endfor }}
-					
 					{{ if $nav.notifications }}<li><a class="$nav.notifications.2" href="$nav.notifications.0" title="$nav.notifications.3" >$nav.notifications.1</a></li>{{ endif }}
 					{{ if $nav.messages }}<li><a class="$nav.messages.2" href="$nav.messages.0" title="$nav.messages.3" >$nav.messages.1</a></li>{{ endif }}
 					{{ if $nav.contacts }}<li><a class="$nav.contacts.2" href="$nav.contacts.0" title="$nav.contacts.3" >$nav.contacts.1</a></li>{{ endif }}	
diff --git a/view/theme/vier/style.css b/view/theme/vier/style.css
index f5e64ca47..d6acade69 100644
--- a/view/theme/vier/style.css
+++ b/view/theme/vier/style.css
@@ -314,6 +314,66 @@
 }
 
 
+div.pager, .birthday-notice {
+  text-align: center;
+  height: 1.2em;
+  padding-bottom: 12px;
+  -webkit-border-radius: 6px;
+  -moz-border-radius: 6px;
+  border-radius: 6px;
+  background-color: #f2f2f2;
+  clear: left;
+  margin-top: 15px;
+  padding: 1%;
+  height: 1em;
+  margin-bottom: 15px;
+}
+
+.birthday-notice {
+  margin-top: 5px;
+  margin-bottom: 5px;
+}
+
+#live-network {
+/*  border-bottom: 1px solid #BDCDD4; */
+  border-bottom: 1px solid #D2D2D2;
+  width: 100%;
+  height: 10px;
+}
+
+.pager a {
+}
+
+.pager a.pager_older {
+  float: right;
+}
+
+.pager a.pager_newer {
+  float: left;
+}
+
+.shared_header {
+  height: 32px;
+  color: #999;
+  border-top: 1px solid #D2D2D2;
+  padding-top: 16px;
+  margin-top: 16px;
+}
+
+.shared_header img {
+  float: left;
+}
+
+.shared_header span {
+  margin-left: 9px;
+}
+
+blockquote.shared_content {
+  margin-left: 32px;
+  color: #000;
+  border: none;
+}
+
 #contact-edit-links ul {
   list-style: none;
   list-style-type: none;
@@ -332,10 +392,10 @@
 /* global */
 body {
   font-family: 'Lato', "Helvetica Neue", Helvetica, Arial, sans-serif;
-  font-size: 13px;
+  font-size: 14px;
   background-color: #ffffff;
   color: #2d2d2d;
-  margin: 50px 0px 0px 0px;
+  margin: 37px 0px 0px 0px;
   display: table;
 }
 h4 {
@@ -345,7 +405,8 @@ h4 {
 a {
 	/*  color: #36C; */
 	/* color: #3e3e8c; */
-	color: #3465A4;
+	/* color: #3465A4; */
+	color: #3E3E8C;
 	text-decoration: none;
 }
 a:hover {
@@ -379,7 +440,8 @@ a:hover {
 .fakelink {
   /* color: #36c; */
   /* color: #3e3e8c; */
-  color: #3465A4;
+  /* color: #3465A4; */
+  color: #3E3E8C;
   text-decoration: none;
   cursor: pointer;
 }
@@ -580,7 +642,7 @@ nav .nav-menu {
   padding-left: 5px;
   padding-right: 5px;
   margin: 3px 3px 0px;
-  font-size: 13px;
+  font-size: 14px;
   border-bottom: 3px solid #364A84;
 }
 nav .nav-menu.selected {
@@ -790,6 +852,8 @@ aside {
   width: 185px;
   padding: 0px 10px 0px 20px;
   border-right: 1px solid #D2D2D2;
+  background-color: #ECECF2;
+  font-size: 14px;
   /* background: #F1F1F1; */
 }
 aside .vcard .fn {
@@ -983,7 +1047,8 @@ section {
 }
 /* wall item */
 .tread-wrapper {
-  border-bottom: 1px solid #D2D2D2;
+/*    border-bottom: 1px solid #BDCDD4; */
+border-bottom: 1px solid #D2D2D2;
   position: relative;
   padding: 5px;
   margin-bottom: 0px;
@@ -1006,7 +1071,7 @@ section {
   display: table-row;
 }
 .wall-item-bottom {
-  font-size: 13px;
+  font-size: 14px;
 }
 .wall-item-container .wall-item-bottom {
   opacity: 0.5;
@@ -1045,10 +1110,10 @@ section {
 }
 
 .wall-item-container .wall-item-content {
-  font-size: 13px;
+  font-size: 14px;
   max-width: 660px;
   word-wrap: break-word;
-  line-height: 1.4;
+  line-height: 1.36;
 }
 
 .wall-item-container .wall-item-content img {
@@ -1620,15 +1685,51 @@ section {
 ul.tabs {
   list-style-type: none;
   padding-bottom: 10px;
-  font-size: 13px;
+  font-size: 14px;
 }
 ul.tabs li {
   float: left;
   margin-left: 7px;
 }
-ul.tabs li .active {
+/*ul.tabs li .active {
   border-bottom: 1px solid #005c94;
+}*/
+ul.tabs a {
+    display: block;
+    float: left;
+    padding: 0px 10px 1px 10px;
+    -webkit-border-radius: 4px;
+    -moz-border-radius: 4px;
+    border-radius: 4px;
+    border: 1px solid #ECECF2;
+    font-weight: bold;
+    line-height: 1.4em;
+    color: #3e3e8c;
+    text-shadow: 0px 1px 0px rgba(255, 255, 255, 0.9);
+    background: #ececf2;
+    background: -moz-linear-gradient(top, #ffffff 0%, #ececf2 100%);
+    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#ececf2));
+    background: -webkit-linear-gradient(top, #ffffff 0%,#ececf2 100%);
+    background: -o-linear-gradient(top, #ffffff 0%,#ececf2 100%);
+    background: -ms-linear-gradient(top, #ffffff 0%,#ececf2 100%);
+    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ececf2',GradientType=0 );
+    background: linear-gradient(top, #ffffff 0%,#ececf2 100%);
 }
+ul.tabs li .active, ul.tabs a:hover {
+    color: #fff;
+    text-shadow: 0px 1px 0px rgba(0, 0, 0, 0.5);
+    border: 1px solid #ececf2;
+    background: #364a84;
+    background: -moz-linear-gradient(top, #7b8dbb 0%, #364a84 100%);
+    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#7b8dbb), color-stop(100%,#364a84));
+    background: -webkit-linear-gradient(top, #7b8dbb 0%,#364a84 100%);
+    background: -o-linear-gradient(top, #7b8dbb 0%,#364a84 100%);
+    background: -ms-linear-gradient(top, #7b8dbb 0%,#364a84 100%);
+    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#7b8dbb', endColorstr='#364a84',GradientType=0 );
+    background: linear-gradient(top, #7b8dbb 0%,#364a84 100%);
+    text-decoration: none;
+}
+
 /**
  * Form fields
  */
@@ -1808,7 +1909,7 @@ ul.tabs li .active {
 
 /* page footer */
 footer {
-  height: 100px;
+  /* height: 100px; */
   display: table-row;
 }
 
diff --git a/view/theme/vier/theme.php b/view/theme/vier/theme.php
index 7dd3797ef..5e483c5ad 100644
--- a/view/theme/vier/theme.php
+++ b/view/theme/vier/theme.php
@@ -6,4 +6,101 @@
  * Author: Ike <http://pirati.ca/profile/heluecht>
  * Maintainer: Ike <http://pirati.ca/profile/heluecht>
  */
- 
+
+$a->theme_info = array();
+
+function vier_init(&$a) {
+$a->page['htmlhead'] .= <<< EOT
+<script>
+/*function insertFormatting(comment,BBcode,id) {
+
+		var tmpStr = $("#comment-edit-text-" + id).val();
+		if(tmpStr == comment) {
+			tmpStr = "";
+			$("#comment-edit-text-" + id).addClass("comment-edit-text-full");
+			$("#comment-edit-text-" + id).removeClass("comment-edit-text-empty");
+			openMenu("comment-edit-submit-wrapper-" + id);
+			$("#comment-edit-text-" + id).val(tmpStr);
+		}
+
+	textarea = document.getElementById("comment-edit-text-" +id);
+	if (document.selection) {
+		textarea.focus();
+		selected = document.selection.createRange();
+		if (BBcode == "url"){
+			selected.text = "["+BBcode+"]" + "http://" +  selected.text + "[/"+BBcode+"]";
+			} else			
+		selected.text = "["+BBcode+"]" + selected.text + "[/"+BBcode+"]";
+	} else if (textarea.selectionStart || textarea.selectionStart == "0") {
+		var start = textarea.selectionStart;
+		var end = textarea.selectionEnd;
+		if (BBcode == "url"){
+			textarea.value = textarea.value.substring(0, start) + "["+BBcode+"]" + "http://" + textarea.value.substring(start, end) + "[/"+BBcode+"]" + textarea.value.substring(end, textarea.value.length);
+			} else
+		textarea.value = textarea.value.substring(0, start) + "["+BBcode+"]" + textarea.value.substring(start, end) + "[/"+BBcode+"]" + textarea.value.substring(end, textarea.value.length);
+	}
+	return true;
+}
+*/
+
+function showThread(id) {
+	$("#collapsed-comments-" + id).show()
+	$("#collapsed-comments-" + id + " .collapsed-comments").show()
+}
+function hideThread(id) {
+	$("#collapsed-comments-" + id).hide()
+	$("#collapsed-comments-" + id + " .collapsed-comments").hide()
+}
+
+/*
+function cmtBbOpen(id) {
+	$("#comment-edit-bb-" + id).show();
+}
+function cmtBbClose(id) {
+	$("#comment-edit-bb-" + id).hide();
+}
+$(document).ready(function() {
+
+$('html').click(function() { $("#nav-notifications-menu" ).hide(); });
+
+$('.group-edit-icon').hover(
+	function() {
+		$(this).addClass('icon'); $(this).removeClass('iconspacer');},
+	function() {
+		$(this).removeClass('icon'); $(this).addClass('iconspacer');}
+	);
+
+$('.sidebar-group-element').hover(
+	function() {
+		id = $(this).attr('id');
+		$('#edit-' + id).addClass('icon'); $('#edit-' + id).removeClass('iconspacer');},
+
+	function() {
+		id = $(this).attr('id');
+		$('#edit-' + id).removeClass('icon');$('#edit-' + id).addClass('iconspacer');}
+	);
+
+
+$('.savedsearchdrop').hover(
+	function() {
+		$(this).addClass('drop'); $(this).addClass('icon'); $(this).removeClass('iconspacer');},
+	function() {
+		$(this).removeClass('drop'); $(this).removeClass('icon'); $(this).addClass('iconspacer');}
+	);
+
+$('.savedsearchterm').hover(
+	function() {
+		id = $(this).attr('id');
+		$('#drop-' + id).addClass('icon'); 	$('#drop-' + id).addClass('drophide'); $('#drop-' + id).removeClass('iconspacer');},
+
+	function() {
+		id = $(this).attr('id');
+		$('#drop-' + id).removeClass('icon');$('#drop-' + id).removeClass('drophide'); $('#drop-' + id).addClass('iconspacer');}
+	);
+
+});
+
+*/
+</script>
+EOT;
+}