blog: more work

This commit is contained in:
fabrixxm 2013-01-22 09:28:45 -05:00
parent 3116607684
commit 311a3625f4
26 changed files with 555 additions and 26 deletions

View File

@ -0,0 +1,5 @@
<ul class="tabs">
{{ for $tabs as $tab }}
<li id="$tab.id"><a href="$tab.url" class="$tab.sel"{{ if $tab.title }} title="$tab.title"{{ endif }}>$tab.label</a></li>
{{ endfor }}
</ul>

View File

@ -5,7 +5,10 @@
<script>var baseurl="<?php echo $a->get_baseurl() ?>";</script>
<?php if(x($page,'htmlhead')) echo $page['htmlhead'] ?>
</head>
<body>
<?php $bodyclass="";
if (!x($page,'aside') && !x($page,'right_aside')) $bodyclass.=" singular";
?>
<body class="<?php echo $bodyclass;?>">
<div id="page">
<?php
if(x($page,'nav')){
@ -25,10 +28,12 @@
<?php if(x($page,'content')) echo $page['content']; ?>
</div>
</div>
<div id="secondary" class="widget-area" role="complementary">
<?php if (x($page,'aside') || x($page,'right_aside')) { ?>
<div id="secondary" class="widget-area <?php if (in_array($a->module, array('profile','photos'))) echo 'overlap'; ?>" role="complementary">
<?php if(x($page,'aside')) echo $page['aside']; ?>
<?php if(x($page,'right_aside')) echo $page['right_aside']; ?>
</div>
<?php }?>
</div>
<footer id="colophon" role="contentinfo">
<div id="site-generator">

Binary file not shown.

After

Width:  |  Height:  |  Size: 322 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 319 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 292 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 209 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 341 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 302 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 212 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 201 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 230 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 777 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 488 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 926 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 714 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1001 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 596 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 534 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 826 B

View File

View File

@ -0,0 +1,336 @@
<script language="javascript" type="text/javascript">
var editor=false;
var textlen = 0;
var plaintext = '$editselect';
function initEditor(cb){
if (editor==false){
$("#profile-jot-text-loading").show();
if(plaintext == 'none') {
$("#profile-jot-text-loading").hide();
$("#profile-jot-text").css({ 'height': 200, 'color': '#000' });
$("#profile-jot-text").contact_autocomplete(baseurl+"/acl");
editor = true;
$("a#jot-perms-icon").fancybox({
transitionIn : 'elastic',
transitionOut : 'elastic',
afterClose : function() {
$.fancybox("#profile-jot-wrapper");
}
});
$(".jothidden").show();
if (typeof cb!="undefined") cb();
return;
}
tinyMCE.init({
theme : "advanced",
mode : "specific_textareas",
editor_selector: $editselect,
auto_focus: "profile-jot-text",
plugins : "bbcode,paste,autoresize, inlinepopups",
theme_advanced_buttons1 : "bold,italic,underline,undo,redo,link,unlink,image,forecolor,formatselect,code",
theme_advanced_buttons2 : "",
theme_advanced_buttons3 : "",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "center",
theme_advanced_blockformats : "blockquote,code",
gecko_spellcheck : true,
paste_text_sticky : true,
entity_encoding : "raw",
add_unload_trigger : false,
remove_linebreaks : false,
force_p_newlines : false,
force_br_newlines : true,
forced_root_block : '',
convert_urls: false,
content_css: "$baseurl/view/custom_tinymce.css",
theme_advanced_path : false,
file_browser_callback : "fcFileBrowser",
setup : function(ed) {
cPopup = null;
ed.onKeyDown.add(function(ed,e) {
if(cPopup !== null)
cPopup.onkey(e);
});
ed.onKeyUp.add(function(ed, e) {
var txt = tinyMCE.activeEditor.getContent();
match = txt.match(/@([^ \n]+)$/);
if(match!==null) {
if(cPopup === null) {
cPopup = new ACPopup(this,baseurl+"/acl");
}
if(cPopup.ready && match[1]!==cPopup.searchText) cPopup.search(match[1]);
if(! cPopup.ready) cPopup = null;
}
else {
if(cPopup !== null) { cPopup.close(); cPopup = null; }
}
textlen = txt.length;
if(textlen != 0 && $('#jot-perms-icon').is('.unlock')) {
$('#profile-jot-desc').html(ispublic);
}
else {
$('#profile-jot-desc').html('&nbsp;');
}
//Character count
if(textlen <= 140) {
$('#character-counter').removeClass('red');
$('#character-counter').removeClass('orange');
$('#character-counter').addClass('grey');
}
if((textlen > 140) && (textlen <= 420)) {
$('#character-counter').removeClass('grey');
$('#character-counter').removeClass('red');
$('#character-counter').addClass('orange');
}
if(textlen > 420) {
$('#character-counter').removeClass('grey');
$('#character-counter').removeClass('orange');
$('#character-counter').addClass('red');
}
$('#character-counter').text(textlen);
});
ed.onInit.add(function(ed) {
ed.pasteAsPlainText = true;
$("#profile-jot-text-loading").hide();
$(".jothidden").show();
if (typeof cb!="undefined") cb();
});
}
});
editor = true;
// setup acl popup
$("a#jot-perms-icon").fancybox({
transitionIn : 'elastic',
transitionOut : 'elastic',
afterClose : function() {
$.fancybox("#profile-jot-wrapper");
}
});
} else {
if (typeof cb!="undefined") cb();
}
}
function enableOnUser(){
if (editor) return;
$(this).val("");
initEditor();
}
</script>
<script type="text/javascript" src="$baseurl/js/ajaxupload.js" ></script>
<script>
var ispublic = '$ispublic';
$(document).ready(function() {
$("a.showjot").fancybox({
transitionIn : 'elastic',
transitionOut : 'elastic',
beforeShow : function() {
enableOnUser();
}
});
/* enable tinymce on focus and click */
$("#profile-jot-text").focus(enableOnUser);
$("#profile-jot-text").click(enableOnUser);
var uploader = new window.AjaxUpload(
'wall-image-upload',
{ action: 'wall_upload/$nickname',
name: 'userfile',
onSubmit: function(file,ext) { $('#profile-rotator').show(); },
onComplete: function(file,response) {
addeditortext(response);
$('#profile-rotator').hide();
}
}
);
var file_uploader = new window.AjaxUpload(
'wall-file-upload',
{ action: 'wall_attach/$nickname',
name: 'userfile',
onSubmit: function(file,ext) { $('#profile-rotator').show(); },
onComplete: function(file,response) {
addeditortext(response);
$('#profile-rotator').hide();
}
}
);
});
function deleteCheckedItems() {
if(confirm('$delitems')) {
var checkedstr = '';
$("#item-delete-selected").hide();
$('#item-delete-selected-rotator').show();
$('.item-select').each( function() {
if($(this).is(':checked')) {
if(checkedstr.length != 0) {
checkedstr = checkedstr + ',' + $(this).val();
}
else {
checkedstr = $(this).val();
}
}
});
$.post('item', { dropitems: checkedstr }, function(data) {
window.location.reload();
});
}
}
function jotGetLink() {
reply = prompt("$linkurl");
if(reply && reply.length) {
reply = bin2hex(reply);
$('#profile-rotator').show();
$.get('parse_url?binurl=' + reply, function(data) {
addeditortext(data);
$('#profile-rotator').hide();
});
}
}
function jotVideoURL() {
reply = prompt("$vidurl");
if(reply && reply.length) {
addeditortext('[video]' + reply + '[/video]');
}
}
function jotAudioURL() {
reply = prompt("$audurl");
if(reply && reply.length) {
addeditortext('[audio]' + reply + '[/audio]');
}
}
function jotGetLocation() {
reply = prompt("$whereareu", $('#jot-location').val());
if(reply && reply.length) {
$('#jot-location').val(reply);
}
}
function jotShare(id) {
if ($('#jot-popup').length != 0) $('#jot-popup').show();
$('#like-rotator-' + id).show();
$.get('share/' + id, function(data) {
if (!editor) $("#profile-jot-text").val("");
initEditor(function(){
addeditortext(data);
$('#like-rotator-' + id).hide();
$(window).scrollTop(0);
});
});
}
function linkdropper(event) {
var linkFound = event.dataTransfer.types.contains("text/uri-list");
if(linkFound)
event.preventDefault();
}
function linkdrop(event) {
var reply = event.dataTransfer.getData("text/uri-list");
event.target.textContent = reply;
event.preventDefault();
if(reply && reply.length) {
reply = bin2hex(reply);
$('#profile-rotator').show();
$.get('parse_url?binurl=' + reply, function(data) {
if (!editor) $("#profile-jot-text").val("");
initEditor(function(){
addeditortext(data);
$('#profile-rotator').hide();
});
});
}
}
function itemTag(id) {
reply = prompt("$term");
if(reply && reply.length) {
reply = reply.replace('#','');
if(reply.length) {
commentBusy = true;
$('body').css('cursor', 'wait');
$.get('tagger/' + id + '?term=' + reply);
if(timer) clearTimeout(timer);
timer = setTimeout(NavUpdate,3000);
liking = 1;
}
}
}
function itemFiler(id) {
var bordercolor = $("input").css("border-color");
$.get('filer/', function(data){
$.fancybox(data);
$("#id_term").keypress(function(){
$(this).css("border-color",bordercolor);
})
$("#select_term").change(function(){
$("#id_term").css("border-color",bordercolor);
})
$("#filer_save").click(function(e){
e.preventDefault();
reply = $("#id_term").val();
if(reply && reply.length) {
commentBusy = true;
$('body').css('cursor', 'wait');
$.get('filer/' + id + '?term=' + reply, NavUpdate);
// if(timer) clearTimeout(timer);
// timer = setTimeout(NavUpdate,3000);
liking = 1;
$.fancybox.close();
} else {
$("#id_term").css("border-color","#FF0000");
}
return false;
});
});
}
function jotClearLocation() {
$('#jot-coord').val('');
$('#profile-nolocation-wrapper').hide();
}
function addeditortext(data) {
if(plaintext == 'none') {
var currentText = $("#profile-jot-text").val();
$("#profile-jot-text").val(currentText + data);
}
else
tinyMCE.execCommand('mceInsertRawHTML',false,data);
}
$geotag
</script>

61
view/theme/blog/jot.tpl Normal file
View File

@ -0,0 +1,61 @@
<div style="display: none;">
<div id="profile-jot-wrapper" >
<div id="profile-jot-banner-wrapper">
<div id="profile-jot-desc" >&nbsp;</div>
<div id="character-counter" class="grey"></div>
</div>
<div id="profile-jot-banner-end"></div>
<form id="profile-jot-form" action="$action" method="post" >
<input type="hidden" name="type" value="$ptyp" />
<input type="hidden" name="profile_uid" value="$profile_uid" />
<input type="hidden" name="return" value="$return_path" />
<input type="hidden" name="location" id="jot-location" value="$defloc" />
<input type="hidden" name="coord" id="jot-coord" value="" />
<input type="hidden" name="post_id" value="$post_id" />
<input type="hidden" name="preview" id="jot-preview" value="0" />
<input type="hidden" name="post_id_random" value="$rand_num" />
<div id="jot-title-wrap"><input name="title" id="jot-title" type="text" placeholder="$placeholdertitle" value="$title"></div>
{{ if $placeholdercategory }}
<div id="jot-category-wrap"><input name="category" id="jot-category" type="text" placeholder="$placeholdercategory" value="$category" /></div>
{{ endif }}
<div id="jot-text-wrap">
<img id="profile-jot-text-loading" src="images/rotator.gif" alt="$wait" title="$wait" style="display: none;" />
<textarea rows="5" cols="64" class="profile-jot-text" id="profile-jot-text" name="body" >{{ if $content }}$content{{ else }}$share{{ endif }}</textarea>
</div>
<dl class="toolbox">
<dd style="{{if $visitor=none}}display: none;{{endif}}"><a href="#" onclick="return false;" id="wall-image-upload" class="icon camera" title="$upload"></a></dd>
<dd style="{{if $visitor=none}}display: none;{{endif}}"><a href="#" onclick="return false;" id="wall-file-upload" class="icon attach" title="$attach"></a></dd>
<dd style="{{if $visitor=none}}display: none;{{endif}}"><a href="#" id="profile-link" class="icon link" title="$weblink" ondragenter="return linkdropper(event);" ondragover="return linkdropper(event);" ondrop="linkdrop(event);" onclick="jotGetLink(); return false;"></a></dd>
<dd style="{{if $visitor=none}}display: none;{{endif}}"><a href="#" id="profile-video" class="icon video" title="$video" onclick="jotVideoURL();return false;"></a></dd>
<dd style="{{if $visitor=none}}display: none;{{endif}}"><a href="#" id="profile-audio" class="icon audio" title="$audio" onclick="jotAudioURL();return false;"></a></dd>
<dd style="{{if $visitor=none}}display: none;{{endif}}"> <a href="#" id="profile-location" class="icon globe" title="$setloc" onclick="jotGetLocation();return false;"></a></dd>
<dd style="display: none;"><a href="#" id="profile-nolocation" class="icon noglobe" title="$noloc" onclick="jotClearLocation();return false;"></a></dd>
<dd style="{{if $visitor=none}}display: none;{{endif}}"><a href="#profile-jot-acl-wrapper" id="jot-perms-icon" class="icon $lockstate" title="$permset" ></a>$bang</dd>
</dl>
<dl class="toolbox right">
<dd style="{{if $visitor=none}}display: none;{{endif}}"><img id="profile-rotator" src="$baseurl/view/theme/blog/images/rotator.gif" alt="$wait" title="$wait" style="display: none;" /></dd>
<dd><input type="submit" id="profile-jot-submit" name="submit" value="$share" class="button" /></dd>
<dd><a href="#" onclick="preview_post(); return false;" id="jot-preview-link" class="button">$preview</a></dd>
</dl>
</form>
<div id="jot-preview-content" style="display:none;"></div>
</div>
</div>
<div style="display: none;">
<div id="profile-jot-acl-wrapper" style="width:auto;height:auto;overflow:auto;">
$acl
<hr style="clear:both"/>
<div id="profile-jot-email-label">$emailcc</div><input type="text" name="emailcc" id="profile-jot-email" title="$emtitle" />
<div id="profile-jot-email-end"></div>
$jotnets
</div>
</div>
<a href="#profile-jot-wrapper" class="showjot button">$share</a>

View File

@ -0,0 +1,8 @@
if(navigator.geolocation) {
navigator.geolocation.getCurrentPosition(function(position) {
$('#jot-coord').val(position.coords.latitude + ' ' + position.coords.longitude);
$('#profile-nolocation-wrapper').show();
});
}

View File

@ -20,8 +20,7 @@
<div class="menu">
<ul>
{{ if $nav.home }}
<li class="$sel.home"><a id="nav-home-link" class="nav-commlink $nav.home.2" href="$nav.home.0" title="$nav.home.3" >$nav.home.1</a></li>
<span id="home-update" class="nav-ajax-left"></span>
<li class="$sel.home"><a id="nav-home-link" class="nav-commlink $nav.home.2" href="$nav.home.0" title="$nav.home.3" >$nav.home.1 <span id="home-update" class="nav-ajax-left"></span></a></li>
{{ endif }}
{{ if $nav.community }}<li class="$sel.community"><a id="nav-community-link" class="nav-commlink $nav.community.2 " href="$nav.community.0" title="$nav.community.3" >$nav.community.1</a></li>{{ endif }}
@ -54,6 +53,8 @@
{{ if $nav.contacts }}<li><a class="$nav.contacts.2" href="$nav.contacts.0" title="$nav.contacts.3" >$nav.contacts.1</a></li>{{ endif }}
{{ if $nav.profiles }}<li><a class="$nav.profiles.2" href="$nav.profiles.0" title="$nav.profiles.3" >$nav.profiles.1</a></li>{{ endif }}
{{ if $nav.manage }}<li><a class="$nav.manage.2 sep" href="$nav.manage.0" title="$nav.manage.3">$nav.manage.1</a></li>{{ endif }}
{{ if $nav.settings }}<li><a class="$nav.settings.2 sep" href="$nav.settings.0" title="$nav.settings.3">$nav.settings.1</a></li>{{ endif }}
@ -66,15 +67,13 @@
{{ if $nav.network }}
<li class="$sel.network">
<a class="$nav.network.2" href="$nav.network.0" title="$nav.network.3" >$nav.network.1</a>
<span id="net-update" class="nav-notify"></span>
<a class="$nav.network.2" href="$nav.network.0" title="$nav.network.3" >$nav.network.1 <span id="net-update" class="nav-notify"></span></a>
</li>
{{ endif }}
{{ if $nav.notifications }}
<li class="$sel.notifications dropmenu">
<a id="nav-notifications-linkmenu" class="nav-commlink" href="$nav.notifications.0" rel="#nav-notifications-menu" title="$nav.notifications.1">$nav.notifications.1</a>
<span id="notify-update" class="nav-ajax-left"></span>
<a id="nav-notifications-linkmenu" class="nav-commlink" href="$nav.notifications.0" rel="#nav-notifications-menu" title="$nav.notifications.1">$nav.notifications.1 <span id="notify-update" class="nav-ajax-left"></span></a>
<ul id="nav-notifications-menu" class="menu-popup">
<li id="nav-notifications-see-all"><a href="$nav.notifications.all.0">$nav.notifications.all.1</a></li>
<li id="nav-notifications-mark-all"><a href="#" onclick="notifyMarkAll(); return false;">$nav.notifications.mark.1</a></li>
@ -85,15 +84,13 @@
{{ if $nav.introductions }}
<li class="$sel.introductions">
<a id="nav-notify-link" class="nav-commlink $nav.introductions.2" href="$nav.introductions.0" title="$nav.introductions.3" >$nav.introductions.1</a>
<span id="intro-update" class="nav-ajax-left"></span>
<a id="nav-notify-link" class="nav-commlink $nav.introductions.2" href="$nav.introductions.0" title="$nav.introductions.3" >$nav.introductions.1 <span id="intro-update" class="nav-ajax-left"></span></a>
</li>
{{ endif }}
{{ if $nav.messages }}
<li class="$sel.messages">
<a id="nav-messages-link" class="nav-commlink $nav.messages.2" href="$nav.messages.0" title="$nav.messages.3" >$nav.messages.1</a>
<span id="mail-update" class="nav-ajax-left"></span>
<a id="nav-messages-link" class="nav-commlink $nav.messages.2" href="$nav.messages.0" title="$nav.messages.3" >$nav.messages.1 <span id="mail-update" class="nav-ajax-left"></span></a>
</li>
{{ endif }}
</ul>

View File

@ -1,12 +1,11 @@
<aside class="vcard">
<div id="profile-photo-wrapper"><img class="photo" src="$profile.photo?rev=$profile.picdate" alt="$profile.name"></div>
<h2 class="fn label">$profile.name</h2>
{{ if $pdesc }}<div class="title">$profile.pdesc</div>{{ endif }}
<div id="profile-photo-wrapper"><img class="photo" width="175" height="175" src="$profile.photo?rev=$profile.picdate" alt="$profile.name"></div>
{{ if $pdesc }}<div class="title">$profile.pdesc</div>{{ endif }}
{{ if $location }}
@ -36,10 +35,10 @@
<div id="profile-extra-links">
<ul>
{{ if $connect }}
<li><a id="dfrn-request-link" href="dfrn_request/$profile.nickname">$connect</a></li>
<li><a id="dfrn-request-link" href="dfrn_request/$profile.nickname" class="button">$connect</a></li>
{{ endif }}
{{ if $wallmessage }}
<li><a id="wallmessage-link" href="wallmessage/$profile.nickname">$wallmessage</a></li>
<li><a id="wallmessage-link" href="wallmessage/$profile.nickname" class="button">$wallmessage</a></li>
{{ endif }}
</ul>
</div>

View File

@ -1,8 +1,27 @@
@import url('twentyeleven_style.css');
/* varie */
input.button,
a.button {
border: 0px;
background-color: #1982D1; color: #ffffff;
text-align: center; text-decoration: none; padding: 0.5em 1em;
-webkit-border-radius: 2px 2px 2px 2px;
-moz-border-radius: 2px 2px 2px 2px;
border-radius: 2px 2px 2px 2px;
}
input.button:hover,
a.button:hover {
background-color: #5fabe5;
}
/* header */
input#search {
background: url("images/search.png") no-repeat scroll 5px 6px transparent;
border-radius: 2px 2px 2px 2px;
-webkit-border-radius: 2px 2px 2px 2px;
-moz-border-radius: 2px 2px 2px 2px;
border-radius: 2px 2px 2px 2px;
font-size: 14px;
height: 22px;
line-height: 1.2em;
@ -48,7 +67,7 @@ input#searchsubmit {
position: absolute;
right: 7.6%;
text-align: right;
top: 13.5em;
top: 8.5em;
}
/* user bar */
@ -103,7 +122,7 @@ input#searchsubmit {
z-index: 99999;
}
#tools ul ul .sep {
border-top: 1px dotted #DDDDDD;
border-top: 1px solid #DDDDDD;
}
#tools ul ul ul {
left: 100%;
@ -165,6 +184,22 @@ input#searchsubmit {
.dropmenu { background: url(images/dropdown.png) center right no-repeat; margin-right: 1em; }
#main .dropmenu { background: url(images/dropdown_dark.png) center right no-repeat; padding-right: 15px; }
/* notifications */
.nav-ajax-left {
background-color: #1982D1;
padding: 2px 4px;
-webkit-border-radius: 2px 2px 2px 2px;
-moz-border-radius: 2px 2px 2px 2px;
border-radius: 2px 2px 2px 2px;
color: #ffffff;
display: none;
}
.nav-ajax-left.show { display: inline; }
#tools li.notify-unseen a { background-color: #FFFDDA; }
#tools ul#nav-notifications-menu li a { font-size: 0.9em; }
#tools ul#nav-notifications-menu li a img { float: left; padding-bottom: 20px;}
#tools ul#nav-notifications-menu li a span.notif-when { display: block; font-style: italic; padding-left: 20px;}
/* popup menu (author link) */
#main .dropmenu:hover { background-color: #f9f9f9; }
#main .dropmenu:hover > ul.menu-popup { display: block; }
@ -213,13 +248,36 @@ ul.menu-popup a:hover {
color: #373737;
}
/* fancybox */
.fancybox-overlay { z-index: 11000;}
/* main layout */
#main { clear: both; padding: 1.625em 0 0; }
#branding { z-index: 9997; }
#main { clear: both; padding: 1.625em 0 0; position: relative; }
#main #primary { float: left; margin: 0 -26.4% 0 0; width: 100%; }
#main #secondary { float: right; margin-right: 7.6%; width: 18.8%; }
#main #content { margin: 0 34% 0 7.6%; width: 58.4%; }
#primary { float: left; margin: 0 -26.4% 0 0; width: 100%; }
#secondary { float: right; margin-right: 7.6%; width: 18.8%; position: relative;}
#secondary.overlap { top: -200px; }
#content { margin: 0 34% 0 7.6%; width: 58.4%; }
/* Singular */
.singular #primary {
margin: 0;
}
.singular #content,
.left-sidebar.singular #content {
margin: 0 7.6%;
position: relative;
width: auto;
}
.singular .entry-header,
.singular .entry-content,
.singular footer.entry-meta,
.singular #comments-title {
margin: 0 auto;
width: 68.9%;
}
#colophon { clear: both; }
@ -241,4 +299,64 @@ ul.menu-popup a:hover {
.widget-area {font-size: 12px;}
/* aside */
#profile-photo-wrapper {
border: 1px solid #999999; padding: 10px; background-color: #ffffff; z-index: 9998; position: relative;
-webkit-box-shadow: rgba(0, 0, 0, 0.2) 0 3px 3px;
-moz-box-shadow: rgba(0, 0, 0, 0.2) 0 3px 3px;
box-shadow: rgba(0, 0, 0, 0.2) 0 3px 3px;
}
#profile-photo-wrapper img { width: 100%; }
h2.fn { font-weight: bold; font-size: 1.2em;}
#profile-extra-links ul { margin: 0px; list-style: none;}
#profile-extra-links ul li { margin: 0px; padding: 0.5em 0px;}
#profile-extra-links ul li a { display: block; }
/* contact block */
.contact-block-h4 { float: left; }
.allcontact-link { float: right; }
.contact-block-div {
border: 1px solid #CCCCCC;
float: left;
height: 48px;
margin: 0px 5px 5px 0px;
padding: 3px;
width: 48px;
}
/* tabs */
ul.tabs { display: block; list-style: none; margin: 0px; height: auto; overflow: auto;}
ul.tabs li { display: block; float: left; padding-right: 0.2em; }
ul.tabs li a { display: block; text-align: center; text-decoration: none; padding: 0px 0.5em; }
ul.tabs li a:hover { background-color: #EEEEEE; }
ul.tabs li a.active { background-color: #1982D1; color: #ffffff; }
/* jot */
/* non mi piace, ma vabè */
.showjot {
position: relative;
top: -1.5em;
left: 550px;
}
.toolbox { margin: 0px; text-align: left; }
.toolbox.left { text-align: left;}
.toolbox.right { text-align: right;}
.toolbox.center { text-align: center;}
.toolbox dd { display: inline; }
/* jot icons */
.icon { display: inline-block; margin: 0px; padding: 0px; width: 16px; height: 16px; }
.icon.camera { background: url(icons/image.png) transparent center center no-repeat; }
.icon.attach { background: url(icons/attachment.png) transparent center center no-repeat; }
.icon.link { background: url(icons/link.png) transparent center center no-repeat; }
.icon.video { background: url(icons/youtube2.png) transparent center center no-repeat; }
.icon.audio { background: url(icons/headphones.png) transparent center center no-repeat; }
.icon.globe { background: url(icons/location.png) transparent center center no-repeat; }
.icon.noglobe { background: url(icons/globe.png) transparent center center no-repeat; }
.icon.lock { background: url(icons/lock2.png) transparent center center no-repeat; }
.icon.unlock { background: url(icons/unlocked.png) transparent center center no-repeat; }