diff options
30 files changed, 633 insertions, 293 deletions
diff --git a/images/icons/10/lock.png b/images/icons/10/lock.png Binary files differindex ad8079c23..2ddf98d08 100644 --- a/images/icons/10/lock.png +++ b/images/icons/10/lock.png diff --git a/images/icons/10/unlock.png b/images/icons/10/unlock.png Binary files differnew file mode 100644 index 000000000..d18088416 --- /dev/null +++ b/images/icons/10/unlock.png diff --git a/images/icons/16/lock.png b/images/icons/16/lock.png Binary files differindex f4432bbe4..189bfd29e 100644 --- a/images/icons/16/lock.png +++ b/images/icons/16/lock.png diff --git a/images/icons/16/unlock.png b/images/icons/16/unlock.png Binary files differnew file mode 100644 index 000000000..c56495d02 --- /dev/null +++ b/images/icons/16/unlock.png diff --git a/images/icons/22/lock.png b/images/icons/22/lock.png Binary files differindex 92c8c4905..13b755810 100644 --- a/images/icons/22/lock.png +++ b/images/icons/22/lock.png diff --git a/images/icons/22/unlock.png b/images/icons/22/unlock.png Binary files differnew file mode 100644 index 000000000..9be196f55 --- /dev/null +++ b/images/icons/22/unlock.png diff --git a/images/icons/48/lock.png b/images/icons/48/lock.png Binary files differindex 9943bb17d..b9db282ac 100644 --- a/images/icons/48/lock.png +++ b/images/icons/48/lock.png diff --git a/images/icons/48/unlock.png b/images/icons/48/unlock.png Binary files differnew file mode 100644 index 000000000..9bf72a4c6 --- /dev/null +++ b/images/icons/48/unlock.png diff --git a/images/icons/Makefile b/images/icons/Makefile index ec57b943e..00c4fa4c2 100644 --- a/images/icons/Makefile +++ b/images/icons/Makefile @@ -2,7 +2,7 @@ IMAGES=add.png edit.png gear.png info.png menu.png \ notify_off.png star.png delete.png feed.png group.png \ lock.png notice.png notify_on.png user.png link.png \ - play.png plugin.png + play.png plugin.png unlock.png DESTS=10/ 16/ 22/ 48/ \ $(addprefix 10/, $(IMAGES)) \ diff --git a/images/icons/lock.png b/images/icons/lock.png Binary files differindex 7e58ead2e..91a8f3ef2 100644 --- a/images/icons/lock.png +++ b/images/icons/lock.png diff --git a/images/icons/lock.png.tmp b/images/icons/lock.png.tmp Binary files differnew file mode 100644 index 000000000..7e58ead2e --- /dev/null +++ b/images/icons/lock.png.tmp diff --git a/images/icons/unlock.png b/images/icons/unlock.png Binary files differnew file mode 100644 index 000000000..4bf7e7eae --- /dev/null +++ b/images/icons/unlock.png diff --git a/include/config.php b/include/config.php index f565ab117..92694f519 100644 --- a/include/config.php +++ b/include/config.php @@ -145,8 +145,9 @@ function get_pconfig($uid,$family, $key, $instore = false) { ); if(count($ret)) { - $a->config[$uid][$family][$key] = $ret[0]['v']; - return $ret[0]['v']; + $val = (preg_match("|^a:[0-9]+:{.*}$|", $ret[0]['v'])?unserialize( $ret[0]['v']):$ret[0]['v']); + $a->config[$uid][$family][$key] = $val; + return $val; } else { $a->config[$uid][$family][$key] = '!<unset>!'; @@ -177,20 +178,23 @@ function set_pconfig($uid,$family,$key,$value) { global $a; + // manage array value + $dbvalue = (is_array($value)?serialize($value):$value); + if(get_pconfig($uid,$family,$key,true) === false) { $a->config[$uid][$family][$key] = $value; $ret = q("INSERT INTO `pconfig` ( `uid`, `cat`, `k`, `v` ) VALUES ( %d, '%s', '%s', '%s' ) ", intval($uid), dbesc($family), dbesc($key), - dbesc($value) + dbesc($dbvalue) ); if($ret) return $value; return $ret; } $ret = q("UPDATE `pconfig` SET `v` = '%s' WHERE `uid` = %d AND `cat` = '%s' AND `k` = '%s' LIMIT 1", - dbesc($value), + dbesc($dbvalue), intval($uid), dbesc($family), dbesc($key) diff --git a/include/conversation.php b/include/conversation.php index ec1fd4152..37fe32de1 100644 --- a/include/conversation.php +++ b/include/conversation.php @@ -812,8 +812,7 @@ function status_editor($a,$x, $notes_cid = 0) { '$audurl' => t("Please enter an audio link/URL:"), '$term' => t('Tag term:'), '$whereareu' => t('Where are you right now?'), - '$title' => t('Enter a title for this item'), - '$addtitle' => t('click here to add a title') + '$title' => t('Enter a title for this item') )); @@ -857,13 +856,21 @@ function status_editor($a,$x, $notes_cid = 0) { '$action' => 'item', '$share' => (($x['button']) ? $x['button'] : t('Share')), '$upload' => t('Upload photo'), + '$shortupload' => t('upload photo'), '$attach' => t('Attach file'), + '$shortattach' => t('attach file'), '$weblink' => t('Insert web link'), + '$shortweblink' => t('web link'), '$video' => t('Insert video link'), + '$shortvideo' => t('video link'), '$audio' => t('Insert audio link'), + '$shortaudio' => t('audio link'), '$setloc' => t('Set your location'), + '$shortsetloc' => t('set location'), '$noloc' => t('Clear browser location'), - '$title' => t('Set title'), + '$shortnoloc' => t('clear location'), + '$title' => "", + '$placeholdertitle' => t('Set title'), '$wait' => t('Please wait'), '$permset' => t('Permission settings'), '$ptyp' => (($notes_cid) ? 'note' : 'wall'), @@ -881,8 +888,6 @@ function status_editor($a,$x, $notes_cid = 0) { '$acl' => $x['acl'], '$bang' => $x['bang'], '$profile_uid' => $x['profile_uid'], - '$addtitle' => t('click here to add a title') - )); return $o; diff --git a/mod/photos.php b/mod/photos.php index bf3299de0..12225b5c5 100644 --- a/mod/photos.php +++ b/mod/photos.php @@ -1367,30 +1367,36 @@ function photos_content(&$a) { intval($a->pager['itemspage']) ); - $o .= '<h3>' . t('Recent Photos') . '</h3>'; - if($can_post) { - $o .= '<div id="photo-top-links"><a id="photo-top-upload-link" href="'. $a->get_baseurl() . '/photos/' - . $a->data['user']['nickname'] . '/upload' . '">' . t('Upload New Photos') . '</a></div>'; - } - $tpl = get_markup_template('photo_top.tpl'); + $photos = array(); if(count($r)) { foreach($r as $rr) { - $o .= replace_macros($tpl,array( - '$id' => $rr['id'], - '$photolink' => $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'] . '/image/' . $rr['resource-id'], - '$phototitle' => t('View Photo'), - '$imgsrc' => $a->get_baseurl() . '/photo/' . $rr['resource-id'] . '-' . ((($rr['scale']) == 6) ? 4 : $rr['scale']) . '.jpg', - '$albumlink' => $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'] . '/album/' . bin2hex($rr['album']), - '$albumname' => template_escape($rr['album']), - '$albumalt' => t('View Album'), - '$imgalt' => template_escape($rr['filename']) - )); - + $photos[] = array( + 'id' => $rr['id'], + 'link' => $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'] . '/image/' . $rr['resource-id'], + 'title' => t('View Photo'), + 'src' => $a->get_baseurl() . '/photo/' . $rr['resource-id'] . '-' . ((($rr['scale']) == 6) ? 4 : $rr['scale']) . '.jpg', + 'alt' => template_escape($rr['filename']), + 'album' => array( + 'link' => $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'] . '/album/' . bin2hex($rr['album']), + 'name' => template_escape($rr['album']), + 'alt' => t('View Album'), + ), + + ); } - $o .= '<div id="photo-top-end"></div>'; } + + $tpl = get_markup_template('photos_recent.tpl'); + $o .= replace_macros($tpl,array( + '$title' => t('Recent Photos'), + '$can_post' => $can_post, + '$upload' => array(t('Upload New Photos'), $a->get_baseurl().'/photos/'.$a->data['user']['nickname'].'/upload'), + '$photos' => $photos, + )); + + $o .= paginate($a); return $o; } diff --git a/view/contact_template.tpl b/view/contact_template.tpl index e1a080b67..f2749656a 100644 --- a/view/contact_template.tpl +++ b/view/contact_template.tpl @@ -1,23 +1,21 @@ -<div class="contact-entry-wrapper" id="contact-entry-wrapper-$id" > - <div class="contact-entry-photo-wrapper" > - <div class="contact-entry-photo mframe" id="contact-entry-photo-$id" +<div class="contact-wrapper" id="contact-entry-wrapper-$id" > + <div class="contact-photo-wrapper" > + <div class="contact-photo mframe" id="contact-entry-photo-$id" onmouseover="if (typeof t$id != 'undefined') clearTimeout(t$id); openMenu('contact-photo-menu-button-$id')" onmouseout="t$id=setTimeout('closeMenu(\'contact-photo-menu-button-$id\'); closeMenu(\'contact-photo-menu-$id\');',200)" > <a href="$url" title="$img_hover" /><img src="$thumb" $sparkle alt="$name" /></a> - <span onclick="openClose('contact-photo-menu-$id');" class="fakelink contact-photo-menu-button" id="contact-photo-menu-button-$id">menu</span> - <div class="contact-photo-menu" id="contact-photo-menu-$id"> - <ul> - $contact_photo_menu - </ul> - </div> + <a href="#" rel="#contact-photo-menu-$id" class="contact-photo-menu-button icon s16 menu" id="contact-photo-menu-button-$id">menu</a> + <ul class="contact-photo-menu menu-popup" id="contact-photo-menu-$id"> + $contact_photo_menu + </ul> </div> </div> - <div class="contact-entry-photo-end" ></div> - <div class="contact-entry-name" id="contact-entry-name-$id" >$name</div> + <div class="contact-name" id="contact-entry-name-$id" >$name</div> + - <div class="contact-entry-end" ></div> </div> + diff --git a/view/directory_item.tpl b/view/directory_item.tpl index 031f4ff22..b45da4465 100644 --- a/view/directory_item.tpl +++ b/view/directory_item.tpl @@ -1,14 +1,11 @@ <div class="directory-item lframe" id="directory-item-$id" > -<div class="directory-photo-wrapper" id="directory-photo-wrapper-$id" > -<div class="directory-photo" id="directory-photo-$id" ><a href="$profile-link" class="directory-profile-link" id="directory-profile-link-$id" ><img class="directory-photo-img" src="$photo" alt="$alt-text" title="$alt-text" /></a> -</div> -</div> -<div class="directory-photo-end"></div> -<div class="directory-name-wrapper"> -<div class="directory-name" id="directory-name-$id">$name</div> + <div class="contact-photo-wrapper" id="directory-photo-wrapper-$id" > + <div class="contact-photo" id="directory-photo-$id" > + <a href="$profile-link" class="directory-profile-link" id="directory-profile-link-$id" ><img class="directory-photo-img" src="$photo" alt="$alt-text" title="$alt-text" /></a> + </div> + </div> + + <div class="contact-name" id="directory-name-$id">$name</div> + <div class="contact-details">$details</div> </div> -<div class="directory-name-end"></div> -<div class="directory-details">$details</div> -<div class="directory-item-end"></div> -</div>
\ No newline at end of file diff --git a/view/jot-header.tpl b/view/jot-header.tpl index 1a9016f5d..cdef9ef83 100644 --- a/view/jot-header.tpl +++ b/view/jot-header.tpl @@ -82,7 +82,7 @@ function initEditor(cb){ ed.onInit.add(function(ed) { ed.pasteAsPlainText = true; $("#profile-jot-text-loading").hide(); - $("#profile-jot-submit-wrapper").show(); + $(".jothidden").show(); if (typeof cb!="undefined") cb(); }); @@ -99,6 +99,12 @@ function initEditor(cb){ } } +function enableOnUser(){ + if (editor) return; + $(this).val(""); + initEditor(); +} + </script> <script type="text/javascript" src="js/ajaxupload.js" ></script> <script> @@ -107,6 +113,11 @@ function initEditor(cb){ $(document).ready(function() { +<<<<<<< HEAD + /* enable tinymce on focus and click */ + $("#profile-jot-text").focus(enableOnUser); + $("#profile-jot-text").click(enableOnUser); +======= /* enable tinymce on focus */ $("#profile-jot-text").focus(function(){ if (editor) return; @@ -137,6 +148,7 @@ function initEditor(cb){ $("#jot-title").show(); $("#jot-title").focus(); }); +>>>>>>> friendica/master var uploader = new window.AjaxUpload( 'wall-image-upload', diff --git a/view/jot.tpl b/view/jot.tpl index e81c8eb3f..12df0d9c2 100644 --- a/view/jot.tpl +++ b/view/jot.tpl @@ -1,12 +1,9 @@ - -<div id="profile-jot-wrapper" > - <div id="profile-jot-banner-wrapper"> - <div id="profile-jot-desc" > </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" > +<form action="$action" method="post"> + <div id="jot"> + <div id="profile-jot-desc" class="jothidden" > </div> + <input name="title" id="jot-title" type="text" placeholder="$placeholdertitle" value="$title" class="jothidden" style="display:none"> + <div id="character-counter" class="grey jothidden"></div> + <input type="hidden" name="type" value="$ptyp" /> <input type="hidden" name="profile_uid" value="$profile_uid" /> <input type="hidden" name="return" value="$return_path" /> @@ -14,66 +11,39 @@ <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" /> - <div id="jot-title-wrapper"> - <span id="jot-title-desc" style="display: none;">$addtitle</span> - <span id="jot-title-display" style="display: none;"></span> - <input type="text" name="title" id="jot-title" value="" style="display: none;" /> - </div> - - <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> - + + <textarea rows="5" cols="64" class="profile-jot-text" id="profile-jot-text" name="body" >{{ if $content }}$content{{ else }}$share{{ endif }}</textarea> {{ if $content }}<script>initEditor();</script>{{ endif }} - -<div id="profile-jot-submit-wrapper" style="display:none"> -<input type="submit" id="profile-jot-submit" name="submit" value="$share" /> - <div id="profile-upload-wrapper" style="display: $visitor;" > - <div id="wall-image-upload-div" ><a href="#" onclick="return false;" id="wall-image-upload" class="icon camera" title="$upload"></a></div> - </div> - <div id="profile-attach-wrapper" style="display: $visitor;" > - <div id="wall-file-upload-div" ><a href="#" onclick="return false;" id="wall-file-upload" class="icon attach" title="$attach"></a></div> - </div> - - <div id="profile-link-wrapper" style="display: $visitor;" ondragenter="linkdropper(event);" ondragover="linkdropper(event);" ondrop="linkdrop(event);" > - <a id="profile-link" class="icon link" title="$weblink" ondragenter="return linkdropper(event);" ondragover="return linkdropper(event);" ondrop="linkdrop(event);" onclick="jotGetLink(); return false;"></a> - </div> - <div id="profile-video-wrapper" style="display: $visitor;" > - <a id="profile-video" class="icon video" title="$video" onclick="jotVideoURL();return false;"></a> - </div> - <div id="profile-audio-wrapper" style="display: $visitor;" > - <a id="profile-audio" class="icon audio" title="$audio" onclick="jotAudioURL();return false;"></a> - </div> - <div id="profile-location-wrapper" style="display: $visitor;" > - <a id="profile-location" class="icon globe" title="$setloc" onclick="jotGetLocation();return false;"></a> - </div> - <div id="profile-nolocation-wrapper" style="display: none;" > - <a id="profile-nolocation" class="icon noglobe" title="$noloc" onclick="jotClearLocation();return false;"></a> - </div> - - <div id="profile-jot-plugin-wrapper"> - $jotplugins + + + <ul id="jot-tools" class="jothidden" style="display:none"> + <li><a href="#" onclick="return false;" id="wall-image-upload" title="$upload">$shortupload</a></a></li> + <li><a href="#" onclick="return false;" id="wall-file-upload" title="$attach">$shortattach</a></li> + <li><a id="profile-link" ondragenter="return linkdropper(event);" ondragover="return linkdropper(event);" ondrop="linkdrop(event);" onclick="jotGetLink(); return false;" title="$weblink">$shortweblink</a></li> + <li><a id="profile-video" onclick="jotVideoURL();return false;" title="$gvideo">$shortvideo</a></li> + <li><a id="profile-audio" onclick="jotAudioURL();return false;" title="$audio">$shortaudio</a></li> + <li><a id="profile-location" onclick="jotGetLocation();return false;" title="$setloc">$shortsetloc</a></li> + <li><a id="profile-nolocation" onclick="jotClearLocation();return false;" title="$noloc">$shortnoloc</a></li> + $jotplugins + + <li class="perms"><a id="jot-perms-icon" href="#profile-jot-acl-wrapper" class="icon s22 $lockstate $bang" title="$permset" ></a></li> + <li class="submit"><input type="submit" id="profile-jot-submit" name="submit" value="$share" /></li> + <li id="profile-rotator" class="loading" style="display: none"><img src="images/rotator.gif" alt="$wait" title="$wait" /></li> + </ul> </div> - - <div id="profile-rotator-wrapper" style="display: $visitor;" > - <img id="profile-rotator" src="images/rotator.gif" alt="$wait" title="$wait" style="display: none;" /> - </div> - <div id="profile-jot-perms" class="profile-jot-perms" style="display: $pvisit;" > - <a href="#profile-jot-acl-wrapper" id="jot-perms-icon" class="icon $lockstate" title="$permset" ></a>$bang - </div> - <div id="profile-jot-perms-end"></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> +</form> + +<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> + + -</div> -<div id="profile-jot-end"></div> -</form> -</div> diff --git a/view/photo_top.tpl b/view/photo_top.tpl index ab88c5ff5..04a054b52 100644 --- a/view/photo_top.tpl +++ b/view/photo_top.tpl @@ -1,6 +1,8 @@ <div class="photo-top-image-wrapper lframe" id="photo-top-image-wrapper-$id"> - <a href="$photolink" class="photo-top-photo-link" id="photo-top-photo-link-$id" title="$phototitle"><img src="$imgsrc" alt="$imgalt" title="$phototitle" class="photo-top-photo" id="photo-top-photo-$id" /></a> - <div class="photo-top-album-name"><a href="$albumlink" class="photo-top-album-link" title="$albumalt" >$albumname</a></div> + <a href="$photo.link" class="photo-top-photo-link" id="photo-top-photo-link-$photo.id" title="$photo.title"> + <img src="$photo.src" alt="$photo.alt" title="$photo.title" class="photo-top-photo" id="photo-top-photo-$photo.id" /> + </a> + <div class="photo-top-album-name"><a href="$photo.album.link" class="photo-top-album-link" title="$photo.album.alt" >$photo.album.name</a></div> </div> -<div class="photo-top-image-wrapper-end"></div> + diff --git a/view/photos_recent.tpl b/view/photos_recent.tpl new file mode 100644 index 000000000..b8cb924b7 --- /dev/null +++ b/view/photos_recent.tpl @@ -0,0 +1,10 @@ +<h3>$title</h3> +{{ if $can_post }} +<a id="photo-top-upload-link" href="$upload.1">$upload.0</a> +{{ endif }} + +<div class="photos"> +{{ for $photos as $photo }} + {{ inc photo_top.tpl }}{{ endinc }} +{{ endfor }} +</div> diff --git a/view/settings_oauth.tpl b/view/settings_oauth.tpl index bc5866bec..0de0dbe98 100644 --- a/view/settings_oauth.tpl +++ b/view/settings_oauth.tpl @@ -23,8 +23,8 @@ $tabs {{ endif }} {{ endif }} {{ if $app.my }} - <a href="$baseurl/settings/oauth/edit/$app.client_id" class="icon edit" title="$edit"> </a> - <a href="$baseurl/settings/oauth/delete/$app.client_id" class="icon drop" title="$delete"> </a> + <a href="$baseurl/settings/oauth/edit/$app.client_id" class="icon s22 edit" title="$edit"> </a> + <a href="$baseurl/settings/oauth/delete/$app.client_id" class="icon s22 delete" title="$delete"> </a> {{ endif }} </div> {{ endfor }} diff --git a/view/theme/quattro/jot.tpl b/view/theme/duepuntozero/jot.tpl index 36008c5a1..36008c5a1 100644 --- a/view/theme/quattro/jot.tpl +++ b/view/theme/duepuntozero/jot.tpl diff --git a/view/theme/loozah/jot.tpl b/view/theme/loozah/jot.tpl new file mode 100644 index 000000000..78cbecea8 --- /dev/null +++ b/view/theme/loozah/jot.tpl @@ -0,0 +1,77 @@ + +<div id="profile-jot-wrapper" > + <div id="profile-jot-banner-wrapper"> + <div id="profile-jot-desc" > </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="title" id="jot-title" value="" /> + <input type="hidden" name="post_id" value="$post_id" /> + + <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> + + {{ if $content }}<script>initEditor();</script>{{ endif }} + +<div id="profile-jot-submit-wrapper" style="display:none" class="jothidden"> +<input type="submit" id="profile-jot-submit" name="submit" value="$share" /> + <div id="profile-upload-wrapper" style="display: $visitor;" > + <div id="wall-image-upload-div" ><a href="#" onclick="return false;" id="wall-image-upload" class="icon camera" title="$upload"></a></div> + </div> + <div id="profile-attach-wrapper" style="display: $visitor;" > + <div id="wall-file-upload-div" ><a href="#" onclick="return false;" id="wall-file-upload" class="icon attach" title="$attach"></a></div> + </div> + + <div id="profile-link-wrapper" style="display: $visitor;" ondragenter="linkdropper(event);" ondragover="linkdropper(event);" ondrop="linkdrop(event);" > + <a id="profile-link" class="icon link" title="$weblink" ondragenter="return linkdropper(event);" ondragover="return linkdropper(event);" ondrop="linkdrop(event);" onclick="jotGetLink(); return false;"></a> + </div> + <div id="profile-video-wrapper" style="display: $visitor;" > + <a id="profile-video" class="icon video" title="$video" onclick="jotVideoURL();return false;"></a> + </div> + <div id="profile-audio-wrapper" style="display: $visitor;" > + <a id="profile-audio" class="icon audio" title="$audio" onclick="jotAudioURL();return false;"></a> + </div> + <div id="profile-location-wrapper" style="display: $visitor;" > + <a id="profile-location" class="icon globe" title="$setloc" onclick="jotGetLocation();return false;"></a> + </div> + <div id="profile-nolocation-wrapper" style="display: none;" > + <a id="profile-nolocation" class="icon noglobe" title="$noloc" onclick="jotClearLocation();return false;"></a> + </div> + <div id="profile-title-wrapper" style="display: $visitor;" > + <a id="profile-title" class="icon article" title="$title" onclick="jotTitle();return false;"></a> + </div> + + <div id="profile-jot-plugin-wrapper"> + $jotplugins + </div> + + <div id="profile-rotator-wrapper" style="display: $visitor;" > + <img id="profile-rotator" src="images/rotator.gif" alt="$wait" title="$wait" style="display: none;" /> + </div> + <div id="profile-jot-perms" class="profile-jot-perms" style="display: $pvisit;" > + <a href="#profile-jot-acl-wrapper" id="jot-perms-icon" class="icon $lockstate" title="$permset" ></a>$bang + </div> + <div id="profile-jot-perms-end"></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> + +</div> + +<div id="profile-jot-end"></div> +</form> +</div> diff --git a/view/theme/quattro/colors.less b/view/theme/quattro/colors.less index d36ff05b0..5314b5284 100644 --- a/view/theme/quattro/colors.less +++ b/view/theme/quattro/colors.less @@ -78,3 +78,17 @@ @CommentBoxFullBorderColor: @Grey5; @TagColor: @Grey1; + +@JotToolsBackgroundColor: @Metalic4; +@JotToolsBorderColor: @Metalic2; +@JotToolsOverBackgroundColor: @Metalic3; +@JotToolsOverBorderColor: @Metalic1; +@JotToolsText: @Grey2; +@JotSubmitBackgroundColor: @Grey2; +@JotSubmitText: @Grey4; +@JotSubmitOverBackgroundColor: @Metalic1; +@JotSubmitOverText: @Grey4; +@JotPermissionUnlockBackgroundColor: @Grey2; +@JotPermissionLockBackgroundColor: @Grey4; +@JotLoadingBackgroundColor: @Grey1; + diff --git a/view/theme/quattro/quattro.less b/view/theme/quattro/quattro.less index a29559859..671577303 100644 --- a/view/theme/quattro/quattro.less +++ b/view/theme/quattro/quattro.less @@ -9,6 +9,7 @@ body { margin: 50px 0px 0px 0px; display:table; } +h4 { font-size: 1.1em } .shadow(@x: 0px, @y: 5px){ -webkit-box-shadow:@x @y 10px rgba(0, 0, 0, 0.7); @@ -33,6 +34,7 @@ body { transition: all 0.2s ease-in-out; } + a, a:link { color: @Link; text-decoration: none; } a:visited { color: @LinkVisited; text-decoration: none; } a:hover {color: @LinkHover; text-decoration: underline; } @@ -40,6 +42,7 @@ a:hover {color: @LinkHover; text-decoration: underline; } .left { float: left; } .right { float: right; } .hidden { display: none; } +.clear { clear: both; } code { font-family: Courier, monospace; @@ -290,6 +293,7 @@ aside { .contact-block-link { float: left; margin: 0px 2px 2px 0px; + img { widht: 48px; height: 58px; } } } @@ -338,6 +342,7 @@ section { position: relative; padding: 10px; margin-bottom: 20px; + width: 780px; } .wall-item-decor { position: absolute; left: 790px; top: -10px; width: 16px;} .unstarred { display: none; } @@ -357,23 +362,6 @@ section { text-align: left; width: 60px; - .wall-item-photo-wrapper { position: relative; } - .wall-item-photo { - width: 48px; height: 48px; - overflow: hidden; - text-indent: -9999px; - display: block; - background: url(../../../images/icons/48/user.png) no-repeat center center; - } - - .wall-item-photo-menu-button { - display: none; - position: absolute; - left: -4px; - top: 28px; - } - .wall-item-photo-menu { display: none; } - } .wall-item-location { word-wrap: break-word; @@ -416,12 +404,12 @@ section { .wall-item-container.comment { /*margin-top: 50px;*/ - .wall-item-photo { width: 32px; height: 32px; margin-left: 16px; - background: url(../../../images/icons/22/user.png) no-repeat center center; + .contact-photo { width: 32px; height: 32px; margin-left: 16px; + /*background: url(../../../images/icons/22/user.png) no-repeat center center;*/ } - .wall-item-photo-menu-button { - top: 13px !important; - left: 10px !important; + .contact-photo-menu-button { + top: 15px !important; + left: 15px !important; } .wall-item-links { padding-left: 12px; } } @@ -457,76 +445,161 @@ section { } } - - -#profile-jot-wrapper { - width: 100%; - margin: 0px 2em 20px 0px; - - -} -.profile-jot-text { - height: 1em; width: 100%; font-size: 10px; - color: @CommentBoxEmptyColor; - border: 1px solid @CommentBoxEmptyBorderColor; - padding:0.3em; -} -#profile-jot-plugin-wrapper, -#profile-jot-submit-wrapper { - margin-top: 10px; +/* contacts menu */ +.contact-photo-wrapper { position: relative; } +.contact-photo { + width: 48px; height: 48px; + img { width: 48px; height: 48px; } + overflow: hidden; + display: block; + } +.contact-photo-menu-button { + display: none; + position: absolute; + left: -2px; + top: 31px; } - -#profile-jot-submit { +.contact-wrapper { float: left; + width: 90px; + height: 90px; + .contact-photo { + width: 80px; height: 80px; + img { width: 80px; height: 80px; } + } + .contact-photo-menu-button { + left: 0px; + top: 63px; + } } -#profile-upload-wrapper{ - float: left; - margin-left: 10px; -} -#profile-attach-wrapper, -#profile-rotator, -#profile-link-wrapper, -#profile-youtube-wrapper, -#profile-video-wrapper, -#profile-audio-wrapper, -#profile-location-wrapper, -#profile-nolocation-wrapper, -#profile-title-wrapper { +.directory-item { float: left; - margin-left: 20px; + width: 200px; + height: 200px; + .contact-photo { + width: 175px; height: 175px; + img { width: 175px; height: 175px; } + } } +.contact-name { text-align: center; font-weight: bold; } +.contact-details { color: @Grey3;} -#profile-jot-perms { - float: left; - margin-left: 35px; - margin-right: 35px; -} +/* editor */ +.jothidden { display: none; } +#jot { -#profile-jot-perms-end { - /*clear: left;*/ - height: 20px; -} + width: 100%; + margin: 0px 2em 20px 0px; + + + .profile-jot-text { + height: 1em; width: 99%; font-size: 10px; + color: @CommentBoxEmptyColor; + border: 1px solid @CommentBoxEmptyBorderColor; + padding:0.3em; + } -#profile-jot-plugin-end{ - clear: both; -} -.profile-jot-net { - float: left; - margin-right: 10px; - margin-top: 5px; - margin-bottom: 5px; -} + #jot-tools { + margin: 0px; padding: 0px; + height: 40px; overflow: none; + width: 800px; + background-color: @JotToolsBackgroundColor; + border-bottom: 2px solid @JotToolsBorderColor; + li { + list-style: none; + float: left; + width: 80px; + height: 40px; + border-bottom: 2px solid @JotToolsBorderColor; + a { + display: block; + color: @JotToolsText; + width: 100%; + height:40px; + text-align: center; + line-height: 40px; + overflow: hidden; + } + } + li:hover { + background-color: @JotToolsOverBackgroundColor; + border-bottom: 2px solid @JotToolsOverBorderColor; + } + li.perms { + float: right; + width: 40px; + a.unlock { + width: 30px; + border-left: 10px solid @JotPermissionUnlockBackgroundColor; + background-color: @JotPermissionUnlockBackgroundColor; + } + a.lock { + width: 30px; + border-left: 10px solid @JotPermissionLockBackgroundColor; + background-color: @JotPermissionLockBackgroundColor; + } + + } + li.submit { + float: right; + background-color: @JotSubmitBackgroundColor; + border-bottom: 2px solid @JotSubmitBackgroundColor; + border-right: 1px solid @Grey4; + border-left: 1px solid @Grey4; + input { + border: 0px; margin: 0px; padding: 0px; + background-color: @JotSubmitBackgroundColor; + color: @JotSubmitText; + width: 80px; height: 40px; + line-height: 40px; + } + input:hover { + background-color: @JotSubmitOverBackgroundColor; + color: @JotSubmitOverText; + } + } + li.loading { + float: right; + background-color: @JotLoadingBackgroundColor; + width: 20px; + vertical-align: center; + text-align: center; + img { margin-top: 10px; } + border-top: 2px solid @JotToolsBorderColor; + height: 38px; + } + } -#profile-jot-networks-end { - clear: both; -} + #jot-title { + border: 0px; + margin: 0px; + height: 20px; + width: 700px; + font-weight: bold; + border: 1px solid @BodyBackground; + + &:-webkit-input-placeholder { + font-weight: normal; + } + + &:-moz-placeholder { + font-weight: normal; + } + + &:hover { border: 1px solid @CommentBoxEmptyBorderColor } + &:focus { border: 1px solid @CommentBoxEmptyBorderColor } + } + + #character-counter { + width: 80px; + float: right; + text-align: right; + height: 20px; + line-height: 20px; + padding-right: 20px; + } -#profile-jot-end, #about-jot-end { - margin-bottom: 15px; -} -#about-jot-submit-wrapper { - margin-top: 15px; } @@ -719,6 +792,42 @@ ul.tabs { &.radio .field_help { margin-left: 0px; } } +#profile-edit-links li { + list-style: none; +} + +/* oauth */ +.oauthapp { + height: auto; overflow: auto; + border-bottom: 2px solid #cccccc; + padding-bottom: 1em; + margin-bottom: 1em; +} +.oauthapp img { + float: left; + width: 48px; height: 48px; + margin: 10px; +} +.oauthapp img.noicon { + background-image: url("../../../images/icons/48/plugin.png"); + background-position: center center; + background-repeat: no-repeat; +} +.oauthapp a { + float: left; +} + +/* contacts */ +.contact-entry-wrapper { + width: 50px; float: left; +} + +/* photo */ +.lframe { + float: left; + margin: 0px 10px 10px 0px; +} + /* page footer */ footer { height: 100px; display: table-row; } diff --git a/view/theme/quattro/style.css b/view/theme/quattro/style.css index 6de9800af..003ebfae6 100644 --- a/view/theme/quattro/style.css +++ b/view/theme/quattro/style.css @@ -168,6 +168,9 @@ body { margin: 50px 0px 0px 0px; display: table; } +h4 { + font-size: 1.1em; +} a, a:link { color: #005c94; text-decoration: none; @@ -189,6 +192,9 @@ a:hover { .hidden { display: none; } +.clear { + clear: both; +} code { font-family: Courier, monospace; white-space: pre; @@ -529,6 +535,10 @@ aside #profiles-menu { float: left; margin: 0px 2px 2px 0px; } +#contact-block .contact-block-link img { + widht: 48px; + height: 58px; +} /* widget */ .widget { margin-bottom: 2em; @@ -609,6 +619,7 @@ section { position: relative; padding: 10px; margin-bottom: 20px; + width: 780px; } .wall-item-decor { position: absolute; @@ -648,26 +659,6 @@ section { text-align: left; width: 60px; } -.wall-item-container .wall-item-info .wall-item-photo-wrapper { - position: relative; -} -.wall-item-container .wall-item-info .wall-item-photo { - width: 48px; - height: 48px; - overflow: hidden; - text-indent: -9999px; - display: block; - background: url(../../../images/icons/48/user.png) no-repeat center center; -} -.wall-item-container .wall-item-info .wall-item-photo-menu-button { - display: none; - position: absolute; - left: -4px; - top: 28px; -} -.wall-item-container .wall-item-info .wall-item-photo-menu { - display: none; -} .wall-item-container .wall-item-location { word-wrap: break-word; width: 50px; @@ -733,15 +724,16 @@ section { /*margin-top: 50px;*/ } -.wall-item-container.comment .wall-item-photo { +.wall-item-container.comment .contact-photo { width: 32px; height: 32px; margin-left: 16px; - background: url(../../../images/icons/22/user.png) no-repeat center center; + /*background: url(../../../images/icons/22/user.png) no-repeat center center;*/ + } -.wall-item-container.comment .wall-item-photo-menu-button { - top: 13px !important; - left: 10px !important; +.wall-item-container.comment .contact-photo-menu-button { + top: 15px !important; + left: 15px !important; } .wall-item-container.comment .wall-item-links { padding-left: 12px; @@ -779,67 +771,182 @@ section { background: url("../../../images/tag.png") no-repeat center right; color: #ffffff; } -#profile-jot-wrapper { +/* contacts menu */ +.contact-photo-wrapper { + position: relative; +} +.contact-photo { + width: 48px; + height: 48px; + overflow: hidden; + display: block; +} +.contact-photo img { + width: 48px; + height: 48px; +} +.contact-photo-menu-button { + display: none; + position: absolute; + left: -2px; + top: 31px; +} +.contact-wrapper { + float: left; + width: 90px; + height: 90px; +} +.contact-wrapper .contact-photo { + width: 80px; + height: 80px; +} +.contact-wrapper .contact-photo img { + width: 80px; + height: 80px; +} +.contact-wrapper .contact-photo-menu-button { + left: 0px; + top: 63px; +} +.directory-item { + float: left; + width: 200px; + height: 200px; +} +.directory-item .contact-photo { + width: 175px; + height: 175px; +} +.directory-item .contact-photo img { + width: 175px; + height: 175px; +} +.contact-name { + text-align: center; + font-weight: bold; +} +.contact-details { + color: #999999; +} +/* editor */ +.jothidden { + display: none; +} +#jot { width: 100%; margin: 0px 2em 20px 0px; } -.profile-jot-text { +#jot .profile-jot-text { height: 1em; - width: 100%; + width: 99%; font-size: 10px; color: #999999; border: 1px solid #999999; padding: 0.3em; } -#profile-jot-plugin-wrapper, #profile-jot-submit-wrapper { - margin-top: 10px; +#jot #jot-tools { + margin: 0px; + padding: 0px; + height: 40px; + overflow: none; + width: 800px; + background-color: #0e232e; + border-bottom: 2px solid #9eabb0; } -#profile-jot-submit { +#jot #jot-tools li { + list-style: none; float: left; + width: 80px; + height: 40px; + border-bottom: 2px solid #9eabb0; } -#profile-upload-wrapper { - float: left; - margin-left: 10px; -} -#profile-attach-wrapper, -#profile-rotator, -#profile-link-wrapper, -#profile-youtube-wrapper, -#profile-video-wrapper, -#profile-audio-wrapper, -#profile-location-wrapper, -#profile-nolocation-wrapper, -#profile-title-wrapper { - float: left; - margin-left: 20px; +#jot #jot-tools li a { + display: block; + color: #cccccc; + width: 100%; + height: 40px; + text-align: center; + line-height: 40px; + overflow: hidden; } -#profile-jot-perms { - float: left; - margin-left: 35px; - margin-right: 35px; +#jot #jot-tools li:hover { + background-color: #364e59; + border-bottom: 2px solid #bdcdd4; } -#profile-jot-perms-end { - /*clear: left;*/ - +#jot #jot-tools li.perms { + float: right; + width: 40px; +} +#jot #jot-tools li.perms a.unlock { + width: 30px; + border-left: 10px solid #cccccc; + background-color: #cccccc; +} +#jot #jot-tools li.perms a.lock { + width: 30px; + border-left: 10px solid #666666; + background-color: #666666; +} +#jot #jot-tools li.submit { + float: right; + background-color: #cccccc; + border-bottom: 2px solid #cccccc; + border-right: 1px solid #666666; + border-left: 1px solid #666666; +} +#jot #jot-tools li.submit input { + border: 0px; + margin: 0px; + padding: 0px; + background-color: #cccccc; + color: #666666; + width: 80px; + height: 40px; + line-height: 40px; +} +#jot #jot-tools li.submit input:hover { + background-color: #bdcdd4; + color: #666666; +} +#jot #jot-tools li.loading { + float: right; + background-color: #ffffff; + width: 20px; + vertical-align: center; + text-align: center; + border-top: 2px solid #9eabb0; + height: 38px; +} +#jot #jot-tools li.loading img { + margin-top: 10px; +} +#jot #jot-title { + border: 0px; + margin: 0px; height: 20px; + width: 700px; + font-weight: bold; + border: 1px solid #ffffff; } -#profile-jot-plugin-end { - clear: both; +#jot #jot-title:-webkit-input-placeholder { + font-weight: normal; } -.profile-jot-net { - float: left; - margin-right: 10px; - margin-top: 5px; - margin-bottom: 5px; +#jot #jot-title:-moz-placeholder { + font-weight: normal; } -#profile-jot-networks-end { - clear: both; +#jot #jot-title:hover { + border: 1px solid #999999; } -#profile-jot-end, #about-jot-end { - margin-bottom: 15px; +#jot #jot-title:focus { + border: 1px solid #999999; } -#about-jot-submit-wrapper { - margin-top: 15px; +#jot #character-counter { + width: 80px; + float: right; + text-align: right; + height: 20px; + line-height: 20px; + padding-right: 20px; } /** buttons **/ /*input[type="submit"] { @@ -1025,6 +1132,41 @@ ul.tabs li .active { .field.radio .field_help { margin-left: 0px; } +#profile-edit-links li { + list-style: none; +} +/* oauth */ +.oauthapp { + height: auto; + overflow: auto; + border-bottom: 2px solid #cccccc; + padding-bottom: 1em; + margin-bottom: 1em; +} +.oauthapp img { + float: left; + width: 48px; + height: 48px; + margin: 10px; +} +.oauthapp img.noicon { + background-image: url("../../../images/icons/48/plugin.png"); + background-position: center center; + background-repeat: no-repeat; +} +.oauthapp a { + float: left; +} +/* contacts */ +.contact-entry-wrapper { + width: 50px; + float: left; +} +/* photo */ +.lframe { + float: left; + margin: 0px 10px 10px 0px; +} /* page footer */ footer { height: 100px; diff --git a/view/viewcontact_template.tpl b/view/viewcontact_template.tpl index 83693bfb1..c61544f9f 100644 --- a/view/viewcontact_template.tpl +++ b/view/viewcontact_template.tpl @@ -1,15 +1,9 @@ -<div class="view-contact-wrapper" id="view-contact-wrapper-$id" > - <div class="view-contact-photo-wrapper" > - <div class="mframe view-contact-photo" id="view-contact-photo-$id" > +<div class="contact-wrapper" id="view-contact-wrapper-$id" > + <div class="contact-photo-wrapper" > + <div class="mframe contact-photo" id="view-contact-photo-$id" > <a href="$url" title="$alt_text" /><img src="$thumb" alt="$name" /></a> </div> - <div class="view-contact-photo-end" ></div> </div> - <div class="view-contact-name-wrapper" > - <div class="view-contact-name" id="view-contact-name-$id" >$name</div> - </div> - <div class="view-contact-name-end" ></div> + <div class="contact-name" id="view-contact-name-$id" >$name</div> </div> -<div class="view-contact-wrapper-end"></div> - diff --git a/view/wall_item.tpl b/view/wall_item.tpl index e3213b891..96f3cee74 100644 --- a/view/wall_item.tpl +++ b/view/wall_item.tpl @@ -8,14 +8,14 @@ <div class="wall-item-container $indent"> <div class="wall-item-item"> <div class="wall-item-info"> - <div class="wall-item-photo-wrapper" + <div class="contact-photo-wrapper" onmouseover="if (typeof t$id != 'undefined') clearTimeout(t$id); openMenu('wall-item-photo-menu-button-$id')" onmouseout="t$id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$id\'); closeMenu(\'wall-item-photo-menu-$id\');',200)"> - <a href="$profile_url" target="redir" title="$linktitle" class="wall-item-photo-link" id="wall-item-photo-link-$id"> - <img src="$thumb" class="wall-item-photo$sparkle" id="wall-item-photo-$id" alt="$name" /> + <a href="$profile_url" target="redir" title="$linktitle" class="contact-photo-link" id="wall-item-photo-link-$id"> + <img src="$thumb" class="contact-photo$sparkle" id="wall-item-photo-$id" alt="$name" /> </a> - <a href="#" rel="#wall-item-photo-menu-$id" class="fakelink wall-item-photo-menu-button icon s16 menu" id="wall-item-photo-menu-button-$id">menu</a> - <ul class="wall-item-menu menu-popup" id="wall-item-photo-menu-$id"> + <a href="#" rel="#wall-item-photo-menu-$id" class="contact-photo-menu-button icon s16 menu" id="wall-item-photo-menu-button-$id">menu</a> + <ul class="contact-menu menu-popup" id="wall-item-photo-menu-$id"> $item_photo_menu </ul> diff --git a/view/wallwall_item.tpl b/view/wallwall_item.tpl index e47014985..96d514702 100644 --- a/view/wallwall_item.tpl +++ b/view/wallwall_item.tpl @@ -8,19 +8,19 @@ <div class="wall-item-container $indent"> <div class="wall-item-item"> <div class="wall-item-info"> - <div class="wall-item-photo-wrapper mframe wwto" id="wall-item-ownerphoto-wrapper-$id" > - <a href="$owner_url" target="redir" title="$olinktitle" class="wall-item-photo-link" id="wall-item-ownerphoto-link-$id"> - <img src="$owner_photo" class="wall-item-photo$osparkle" id="wall-item-ownerphoto-$id" alt="$owner_name" /> + <div class="contact-photo-wrapper mframe wwto" id="wall-item-ownerphoto-wrapper-$id" > + <a href="$owner_url" target="redir" title="$olinktitle" class="contact-photo-link" id="wall-item-ownerphoto-link-$id"> + <img src="$owner_photo" class="contact-photo $osparkle" id="wall-item-ownerphoto-$id" alt="$owner_name" /> </a> </div> - <div class="wall-item-photo-wrapper mframe wwfrom" + <div class="contact-photo-wrapper mframe wwfrom" onmouseover="if (typeof t$id != 'undefined') clearTimeout(t$id); openMenu('wall-item-photo-menu-button-$id')" onmouseout="t$id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$id\'); closeMenu(\'wall-item-photo-menu-$id\');',200)"> - <a href="$profile_url" target="redir" title="$linktitle" class="wall-item-photo-link" id="wall-item-photo-link-$id"> - <img src="$thumb" class="wall-item-photo$sparkle" id="wall-item-photo-$id" alt="$name" /> + <a href="$profile_url" target="redir" title="$linktitle" class="contact-photo-link" id="wall-item-photo-link-$id"> + <img src="$thumb" class="contact-photo $sparkle" id="wall-item-photo-$id" alt="$name" /> </a> - <a href="#" rel="#wall-item-photo-menu-$id" class="fakelink wall-item-photo-menu-button icon s16 menu" id="wall-item-photo-menu-button-$id">menu</a> - <ul class="wall-item-menu menu-popup" id="wall-item-photo-menu-$id"> + <a href="#" rel="#wall-item-photo-menu-$id" class="contact-photo-menu-button icon s16 menu" id="wall-item-photo-menu-button-$id">menu</a> + <ul class="contact-menu menu-popup" id="wall-item-photo-menu-$id"> $item_photo_menu </ul> |