Merge branch 'master', remote-tracking branch 'remotes/upstream/master'

* remotes/upstream/master:
  diabook-themes: small fix
  changelog 1.014 : image-rezise via jquery-plugin in stream comments under uploaded pictues add Diabook's version-number in head-section
  ignore utf8 offset error for unit tests
  had arg order backwards
  try assertContains
  tag tests cont.
  fix autonamenegativelength test
  some work on tests

* master:
This commit is contained in:
Simon L'nu 2012-04-07 14:47:02 -04:00
commit cee3608747
44 changed files with 1476 additions and 153 deletions

View file

@ -9,7 +9,7 @@ require_once('include/nav.php');
require_once('include/cache.php');
define ( 'FRIENDICA_PLATFORM', 'Friendica');
define ( 'FRIENDICA_VERSION', '2.3.1303' );
define ( 'FRIENDICA_VERSION', '2.3.1304' );
define ( 'DFRN_PROTOCOL_VERSION', '2.23' );
define ( 'DB_UPDATE_VERSION', 1137 );

View file

@ -13,12 +13,14 @@
var $debug=false;
private function _preg_error(){
switch(preg_last_error()){
case PREG_INTERNAL_ERROR: echo('PREG_INTERNAL_ERROR'); break;
case PREG_BACKTRACK_LIMIT_ERROR: echo('PREG_BACKTRACK_LIMIT_ERROR'); break;
case PREG_RECURSION_LIMIT_ERROR: echo('PREG_RECURSION_LIMIT_ERROR'); break;
case PREG_BAD_UTF8_ERROR: echo('PREG_BAD_UTF8_ERROR'); break;
case PREG_BAD_UTF8_OFFSET_ERROR: echo('PREG_BAD_UTF8_OFFSET_ERROR'); break;
// This is only valid for php > 5.3, not certain how to code around it for unit tests
// case PREG_BAD_UTF8_OFFSET_ERROR: echo('PREG_BAD_UTF8_OFFSET_ERROR'); break;
default:
//die("Unknown preg error.");
return;

View file

@ -80,7 +80,7 @@ function escape_tags($string) {
if(! function_exists('autoname')) {
function autoname($len) {
if(! $len)
if($len <= 0)
return '';
$vowels = array('a','a','ai','au','e','e','e','ee','ea','i','ie','o','ou','u');

View file

@ -40,7 +40,7 @@ class AutonameTest extends PHPUnit_Framework_TestCase {
*/
public function testAutonameNoLength() {
$autoname1=autoname(0);
$this->assertEquals(0, count($autoname1));
$this->assertEquals(0, strlen($autoname1));
}
/**
@ -50,7 +50,7 @@ class AutonameTest extends PHPUnit_Framework_TestCase {
*/
public function testAutonameNegativeLength() {
$autoname1=autoname(-23);
$this->assertEquals(0, count($autoname1));
$this->assertEquals(0, strlen($autoname1));
}
// public function testAutonameMaxLength() {

View file

@ -39,7 +39,7 @@ class ExpandAclTest extends PHPUnit_Framework_TestCase {
*/
public function testExpandAclString() {
$text="<1><279012><tt>";
$this->assertEquals(array(1, 279012, 'tt'), expand_acl($text));
$this->assertEquals(array(1, 279012), expand_acl($text));
}
/**
@ -49,7 +49,7 @@ class ExpandAclTest extends PHPUnit_Framework_TestCase {
*/
public function testExpandAclSpace() {
$text="<1><279 012><32>";
$this->assertEquals(array(1, "279 012", "32"), expand_acl($text));
$this->assertEquals(array(1, "279", "32"), expand_acl($text));
}
/**
@ -127,16 +127,22 @@ class ExpandAclTest extends PHPUnit_Framework_TestCase {
*/
public function testExpandAclNoMatching2() {
$text="<1>2><3>";
$this->assertEquals(array(), expand_acl($text));
// The angles are delimiters which aren't important
// the important thing is the numeric content, this returns array(1,2,3) currently
// we may wish to eliminate 2 from the results, though it isn't harmful
// It would be a better test to figure out if there is any ACL input which can
// produce this $text and fix that instead.
// $this->assertEquals(array(), expand_acl($text));
}
/**
* test invalid input, empty <>
*
* TODO: should there be an exception? Or array(1, 3)
* (This should be array(1,3) - mike)
*/
public function testExpandAclEmptyMatch() {
$text="<1><><3>";
$this->assertEquals(array(), expand_acl($text));
$this->assertEquals(array(1,3), expand_acl($text));
}
}

View file

@ -139,23 +139,35 @@ class GetTagsTest extends PHPUnit_Framework_TestCase {
$str_tags='';
handle_tag($this->a, $text, $inform, $str_tags, 11, $tags[0]);
$this->assertEquals("cid:15", $inform);
$this->assertEquals("@[url=http://justatest.de]Mike Lastname[/url]", $str_tags);
$this->assertEquals("hi @[url=http://justatest.de]Mike Lastname[/url].because", $text);
// (mike) - This is a tricky case.
// we support mentions as in @mike@example.com - which contains a period.
// This shouldn't match anything unless you have a contact named "Mike.because".
// We may need another test for "@Mike. because" - which should return the contact
// as we ignore trailing periods in tags.
// $this->assertEquals("cid:15", $inform);
// $this->assertEquals("@[url=http://justatest.de]Mike Lastname[/url]", $str_tags);
// $this->assertEquals("hi @[url=http://justatest.de]Mike Lastname[/url].because", $text);
$this->assertEquals("", $inform);
$this->assertEquals("", $str_tags);
}
/**
* test with two Person tags.
* There's a minor spelling mistake...
*/
public function testGetTagsPerson2Spelling() {
$text="hi @Mike@campino@friendica.eu";
$tags=get_tags($text);
$this->assertEquals(2, count($tags));
$this->assertTrue(in_array("@Mike", $tags));
$this->assertTrue(in_array("@campino@friendica.eu", $tags));
// This construct is not supported. Results are indeterminate
// $this->assertEquals(2, count($tags));
// $this->assertTrue(in_array("@Mike", $tags));
// $this->assertTrue(in_array("@campino@friendica.eu", $tags));
}
/**
@ -251,7 +263,8 @@ class GetTagsTest extends PHPUnit_Framework_TestCase {
$this->assertEquals("Test with @[url=http://justatest.de]Mike Lastname[/url] id tag", $text);
$this->assertEquals("@[url=http://justatest.de]Mike Lastname[/url]", $str_tags);
$this->assertEquals("cid:15", $inform);
// this test may produce two cid:15 entries - which is OK because duplicates are pruned before delivery
$this->assertContains("cid:15",$inform);
}
/**
@ -297,10 +310,10 @@ class GetTagsTest extends PHPUnit_Framework_TestCase {
$this->assertTrue(in_array("#nice", $tags));
$this->assertTrue(in_array("@first_last", $tags));
//right now, none of the is matched
$this->assertFalse(in_array("@Mike@campino@friendica.eu", $tags));
$this->assertTrue(in_array("@campino@friendica.eu", $tags));
$this->assertTrue(in_array("@campino@friendica.eu is", $tags));
//right now, none of the is matched (unsupported)
// $this->assertFalse(in_array("@Mike@campino@friendica.eu", $tags));
// $this->assertTrue(in_array("@campino@friendica.eu", $tags));
// $this->assertTrue(in_array("@campino@friendica.eu is", $tags));
}
/**

View file

@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: 2.3.1303\n"
"Project-Id-Version: 2.3.1304\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-04-05 10:00-0700\n"
"POT-Creation-Date: 2012-04-06 10:00-0700\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -207,7 +207,7 @@ msgstr ""
msgid "Edit event"
msgstr ""
#: ../../mod/events.php:272 ../../include/text.php:1050
#: ../../mod/events.php:272 ../../include/text.php:1053
msgid "link to source"
msgstr ""
@ -401,7 +401,7 @@ msgstr ""
#: ../../view/theme/diabook-red/theme.php:82
#: ../../view/theme/diabook-blue/theme.php:82
#: ../../view/theme/diabook/theme.php:86
#: ../../view/theme/diabook-aerith/theme.php:82 ../../include/text.php:1294
#: ../../view/theme/diabook-aerith/theme.php:82 ../../include/text.php:1297
#: ../../include/diaspora.php:1654 ../../include/conversation.php:53
#: ../../include/conversation.php:126
msgid "photo"
@ -2222,7 +2222,7 @@ msgstr ""
msgid "Shared Links"
msgstr ""
#: ../../mod/network.php:270
#: ../../mod/network.php:274
#, php-format
msgid "Warning: This group contains %s member from an insecure network."
msgid_plural ""
@ -2230,31 +2230,31 @@ msgid_plural ""
msgstr[0] ""
msgstr[1] ""
#: ../../mod/network.php:273
#: ../../mod/network.php:277
msgid "Private messages to this group are at risk of public disclosure."
msgstr ""
#: ../../mod/network.php:318
#: ../../mod/network.php:322
msgid "No such group"
msgstr ""
#: ../../mod/network.php:329
#: ../../mod/network.php:333
msgid "Group is empty"
msgstr ""
#: ../../mod/network.php:333
#: ../../mod/network.php:337
msgid "Group: "
msgstr ""
#: ../../mod/network.php:343
#: ../../mod/network.php:347
msgid "Contact: "
msgstr ""
#: ../../mod/network.php:345
#: ../../mod/network.php:349
msgid "Private messages to this person are at risk of public disclosure."
msgstr ""
#: ../../mod/network.php:350
#: ../../mod/network.php:354
msgid "Invalid contact."
msgstr ""
@ -2263,7 +2263,7 @@ msgid "Personal Notes"
msgstr ""
#: ../../mod/notes.php:63 ../../mod/filer.php:30
#: ../../addon/facebook/facebook.php:673 ../../include/text.php:649
#: ../../addon/facebook/facebook.php:673 ../../include/text.php:652
msgid "Save"
msgstr ""
@ -2526,7 +2526,7 @@ msgstr ""
msgid "No contacts."
msgstr ""
#: ../../mod/viewcontacts.php:76 ../../include/text.php:586
#: ../../mod/viewcontacts.php:76 ../../include/text.php:589
msgid "View Contacts"
msgstr ""
@ -4386,7 +4386,7 @@ msgstr ""
#: ../../view/theme/diabook-red/theme.php:74
#: ../../view/theme/diabook-blue/theme.php:74
#: ../../view/theme/diabook/theme.php:78
#: ../../view/theme/diabook-aerith/theme.php:74 ../../include/text.php:1292
#: ../../view/theme/diabook-aerith/theme.php:74 ../../include/text.php:1295
#: ../../include/conversation.php:45 ../../include/conversation.php:118
msgid "event"
msgstr ""
@ -5683,158 +5683,158 @@ msgstr ""
msgid "noreply"
msgstr ""
#: ../../include/text.php:240
#: ../../include/text.php:243
msgid "prev"
msgstr ""
#: ../../include/text.php:242
#: ../../include/text.php:245
msgid "first"
msgstr ""
#: ../../include/text.php:271
#: ../../include/text.php:274
msgid "last"
msgstr ""
#: ../../include/text.php:274
#: ../../include/text.php:277
msgid "next"
msgstr ""
#: ../../include/text.php:565
#: ../../include/text.php:568
msgid "No contacts"
msgstr ""
#: ../../include/text.php:574
#: ../../include/text.php:577
#, php-format
msgid "%d Contact"
msgid_plural "%d Contacts"
msgstr[0] ""
msgstr[1] ""
#: ../../include/text.php:647 ../../include/nav.php:91
#: ../../include/text.php:650 ../../include/nav.php:91
msgid "Search"
msgstr ""
#: ../../include/text.php:828
#: ../../include/text.php:831
msgid "Monday"
msgstr ""
#: ../../include/text.php:828
#: ../../include/text.php:831
msgid "Tuesday"
msgstr ""
#: ../../include/text.php:828
#: ../../include/text.php:831
msgid "Wednesday"
msgstr ""
#: ../../include/text.php:828
#: ../../include/text.php:831
msgid "Thursday"
msgstr ""
#: ../../include/text.php:828
#: ../../include/text.php:831
msgid "Friday"
msgstr ""
#: ../../include/text.php:828
#: ../../include/text.php:831
msgid "Saturday"
msgstr ""
#: ../../include/text.php:828
#: ../../include/text.php:831
msgid "Sunday"
msgstr ""
#: ../../include/text.php:832
#: ../../include/text.php:835
msgid "January"
msgstr ""
#: ../../include/text.php:832
#: ../../include/text.php:835
msgid "February"
msgstr ""
#: ../../include/text.php:832
#: ../../include/text.php:835
msgid "March"
msgstr ""
#: ../../include/text.php:832
#: ../../include/text.php:835
msgid "April"
msgstr ""
#: ../../include/text.php:832
#: ../../include/text.php:835
msgid "May"
msgstr ""
#: ../../include/text.php:832
#: ../../include/text.php:835
msgid "June"
msgstr ""
#: ../../include/text.php:832
#: ../../include/text.php:835
msgid "July"
msgstr ""
#: ../../include/text.php:832
#: ../../include/text.php:835
msgid "August"
msgstr ""
#: ../../include/text.php:832
#: ../../include/text.php:835
msgid "September"
msgstr ""
#: ../../include/text.php:832
#: ../../include/text.php:835
msgid "October"
msgstr ""
#: ../../include/text.php:832
#: ../../include/text.php:835
msgid "November"
msgstr ""
#: ../../include/text.php:832
#: ../../include/text.php:835
msgid "December"
msgstr ""
#: ../../include/text.php:916
#: ../../include/text.php:919
msgid "bytes"
msgstr ""
#: ../../include/text.php:933
#: ../../include/text.php:936
msgid "Categories:"
msgstr ""
#: ../../include/text.php:945
#: ../../include/text.php:948
msgid "remove"
msgstr ""
#: ../../include/text.php:945
#: ../../include/text.php:948
msgid "[remove]"
msgstr ""
#: ../../include/text.php:948
#: ../../include/text.php:951
msgid "Filed under:"
msgstr ""
#: ../../include/text.php:964 ../../include/text.php:976
#: ../../include/text.php:967 ../../include/text.php:979
msgid "Click to open/close"
msgstr ""
#: ../../include/text.php:1068
#: ../../include/text.php:1071
msgid "Select an alternate language"
msgstr ""
#: ../../include/text.php:1080
#: ../../include/text.php:1083
msgid "default"
msgstr ""
#: ../../include/text.php:1296
#: ../../include/text.php:1299
msgid "activity"
msgstr ""
#: ../../include/text.php:1298
#: ../../include/text.php:1301
msgid "comment"
msgstr ""
#: ../../include/text.php:1299
#: ../../include/text.php:1302
msgid "post"
msgstr ""
#: ../../include/text.php:1454
#: ../../include/text.php:1457
msgid "Item filed"
msgstr ""

View file

@ -0,0 +1,22 @@
jQuery Resize Plugin Demo
Version: v2.1.1
Author: Adeel Ejaz (http://adeelejaz.com/)
License: Dual licensed under MIT and GPL licenses.
Introduction
aeImageResize is a jQuery plugin to dynamically resize the images without distorting the proportions.
Usage:
.aeImageResize( height, width )
height
An integer representing the maximum height for the image.
width
An integer representing the maximum width for the image.
Example
$(function() {
$( ".resizeme" ).aeImageResize({ height: 250, width: 250 });
});

View file

@ -0,0 +1,69 @@
(function( $ ) {
$.fn.aeImageResize = function( params ) {
var aspectRatio = 0
// Nasty I know but it's done only once, so not too bad I guess
// Alternate suggestions welcome :)
, isIE6 = $.browser.msie && (6 == ~~ $.browser.version)
;
// We cannot do much unless we have one of these
if ( !params.height && !params.width ) {
return this;
}
// Calculate aspect ratio now, if possible
if ( params.height && params.width ) {
aspectRatio = params.width / params.height;
}
// Attach handler to load
// Handler is executed just once per element
// Load event required for Webkit browsers
return this.one( "load", function() {
// Remove all attributes and CSS rules
this.removeAttribute( "height" );
this.removeAttribute( "width" );
this.style.height = this.style.width = "";
var imgHeight = this.height
, imgWidth = this.width
, imgAspectRatio = imgWidth / imgHeight
, bxHeight = params.height
, bxWidth = params.width
, bxAspectRatio = aspectRatio;
// Work the magic!
// If one parameter is missing, we just force calculate it
if ( !bxAspectRatio ) {
if ( bxHeight ) {
bxAspectRatio = imgAspectRatio + 1;
} else {
bxAspectRatio = imgAspectRatio - 1;
}
}
// Only resize the images that need resizing
if ( (bxHeight && imgHeight > bxHeight) || (bxWidth && imgWidth > bxWidth) ) {
if ( imgAspectRatio > bxAspectRatio ) {
bxHeight = ~~ ( imgHeight / imgWidth * bxWidth );
} else {
bxWidth = ~~ ( imgWidth / imgHeight * bxHeight );
}
this.height = bxHeight;
this.width = bxWidth;
}
})
.each(function() {
// Trigger load event (for Gecko and MSIE)
if ( this.complete || isIE6 ) {
$( this ).trigger( "load" );
}
});
};
})( jQuery );

View file

@ -0,0 +1 @@
(function(d){d.fn.aeImageResize=function(a){var i=0,j=d.browser.msie&&6==~~d.browser.version;if(!a.height&&!a.width)return this;if(a.height&&a.width)i=a.width/a.height;return this.one("load",function(){this.removeAttribute("height");this.removeAttribute("width");this.style.height=this.style.width="";var e=this.height,f=this.width,g=f/e,b=a.height,c=a.width,h=i;h||(h=b?g+1:g-1);if(b&&e>b||c&&f>c){if(g>h)b=~~(e/f*c);else c=~~(f/e*b);this.height=b;this.width=c}}).each(function(){if(this.complete||j)d(this).trigger("load")})}})(jQuery);

View file

@ -0,0 +1,65 @@
{{ if $indent }}{{ else }}
<div class="wall-item-decor">
<img id="like-rotator-$id" class="like-rotator" src="images/rotator.gif" alt="$wait" title="$wait" style="display: none;" />
</div>
{{ endif }}
<div class="wall-item-photo-container $indent">
<div class="wall-item-item">
<div class="wall-item-info">
<div class="contact-photo-wrapper" >
<a href="$profile_url" target="redir" title="" 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="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">
$photo_menu
</ul>
</div>
</div>
<div class="wall-item-actions-author">
<a href="$profile_url" target="redir" title="$name" class="wall-item-name-link"><span class="wall-item-name$sparkle">$name</span></a>
<span class="wall-item-ago">-
{{ if $plink }}<a class="link" title="$plink.title" href="$plink.href" style="color: #999">$ago</a>{{ else }} $ago {{ endif }}
{{ if $lock }} - <span class="fakelink" style="color: #999" onclick="lockview(event,$id);">$lock</span> {{ endif }}
</span>
</div>
<div class="wall-item-content">
{{ if $title }}<h2><a href="$plink.href">$title</a></h2>{{ endif }}
$body
</div>
</div>
<div class="wall-item-bottom">
<div class="wall-item-links">
</div>
<div class="wall-item-tags">
{{ for $tags as $tag }}
<span class='tag'>$tag</span>
{{ endfor }}
</div>
</div>
<div class="wall-item-bottom" style="display: table-row;">
<div class="wall-item-actions">
</div>
<div class="wall-item-actions">
<div class="wall-item-actions-tools">
{{ if $drop.dropping }}
<input type="checkbox" title="$drop.select" name="itemselected[]" class="item-select" value="$id" />
<a href="item/drop/$id" onclick="return confirmDelete();" class="icon drop" title="$drop.delete">$drop.delete</a>
{{ endif }}
{{ if $edpost }}
<a class="icon pencil" href="$edpost.0" title="$edpost.1"></a>
{{ endif }}
</div>
</div>
</div>
<div class="wall-item-bottom">
</div>
</div>

View file

@ -25,3 +25,11 @@
{{ if $tags.2 }}<div id="tag-remove"><a href="$tags.2">$tags.3</a></div>{{ endif }}
{{ if $edit }}$edit{{ endif }}
<div style="margin-top:20px">
</div>
<div id="wall-photo-container">
$comments
</div>
$paginate

View file

@ -1233,7 +1233,6 @@ body .pageheader{
padding: 0;
}
.tab.button {
margin-right: 5px;
margin-left: 5px;
/*background: none repeat scroll 0 0 #F8F8F8;*/
border: 1px solid #CCCCCC;
@ -1369,10 +1368,12 @@ transition: all 0.2s ease-in-out;
max-width: 420px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}
.wall-item-container .wall-item-content img {
max-width: 400px;
max-height: 400px;
}
.wall-item-container .wall-item-links, .wall-item-container .wall-item-actions {
display: table-cell;
@ -1469,9 +1470,9 @@ transition: all 0.2s ease-in-out;
border: 1px solid #2d2d2d;
}
.comment-edit-preview {
width: 710px;
border: 1px solid #2d2d2d;
width: 500px;
margin-top: 10px;
background-color: #fff797;
}
.comment-edit-preview .contact-photo {
width: 32px;
@ -1707,7 +1708,7 @@ transition: all 0.2s ease-in-out;
height: 20px;
margin: 0 0 5px;
width: 60%;
border: 1px solid #ffffff;
border: 1px solid #d2d2d2;
}
#profile-jot-form #jot-title:-webkit-input-placeholder {
font-weight: normal;
@ -2169,6 +2170,11 @@ blockquote {
border-left: 1px solid #D2D2D2;
padding-left: 9px;
margin: 0 0 0 .8ex;
color: #777;
}
.oembed {
font-size: large;
font-weight: bold;
}
.aprofile dt{
box-shadow: 1px 1px 5px 0;

View file

@ -1228,7 +1228,6 @@ body .pageheader{
padding: 0;
}
.tab.button {
margin-right: 5px;
margin-left: 5px;
/*background: none repeat scroll 0 0 #F8F8F8;*/
border: 1px solid #CCCCCC;
@ -1362,10 +1361,12 @@ transition: all 0.2s ease-in-out;
max-width: 420px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}
.wall-item-container .wall-item-content img {
max-width: 400px;
max-height: 400px;
}
.wall-item-container .wall-item-links, .wall-item-container .wall-item-actions {
display: table-cell;
@ -1459,9 +1460,9 @@ transition: all 0.2s ease-in-out;
border: 1px solid #2d2d2d;
}
.comment-edit-preview {
width: 710px;
border: 1px solid #2d2d2d;
width: 500px;
margin-top: 10px;
background-color: #fff797;
}
.comment-edit-preview .contact-photo {
width: 32px;
@ -1697,7 +1698,7 @@ transition: all 0.2s ease-in-out;
height: 20px;
margin: 0 0 5px;
width: 60%;
border: 1px solid #ffffff;
border: 1px solid #d2d2d2;
}
#profile-jot-form #jot-title:-webkit-input-placeholder {
font-weight: normal;
@ -2158,6 +2159,11 @@ blockquote {
border-left: 1px solid #D2D2D2;
padding-left: 9px;
margin: 0 0 0 .8ex;
color: #777;
}
.oembed {
font-size: large;
font-weight: bold;
}
.aprofile dt{
box-shadow: 1px 1px 5px 0;

View file

@ -1308,7 +1308,6 @@ body .pageheader{
padding: 0;
}
.tab.button {
margin-right: 5px;
margin-left: 5px;
/*background: none repeat scroll 0 0 #F8F8F8;*/
border: 1px solid #CCCCCC;
@ -1347,6 +1346,122 @@ body .pageheader{
display: table;
width: 780px;
}
.wall-item-photo-container .wall-item-item, .wall-item-container .wall-item-bottom {
display: table-row;
}
.wall-item-photo-container .wall-item-info {
display: table-cell;
vertical-align: top;
text-align: left;
width: 80px;
}
.wall-item-photo-container .wall-item-location {
padding-right: 40px;
display: table-cell;
}
.wall-item-photo-container .wall-item-ago {
word-wrap: break-word;
width: 50px;
margin-left: 10px;
color: #999;
}
.wall-item-photo-container .wall-item-content {
font-size: 12.5px;
max-width: 720px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}
.wall-item-photo-container .wall-item-content img {
max-width: 700px;
}
.wall-item-photo-container .wall-item-links, .wall-item-photo-container .wall-item-actions {
display: table-cell;
vertical-align: middle;
}
.wall-item-photo-container .wall-item-links .icon, .wall-item-photo-container .wall-item-actions .icon {
opacity: 0.5;
-webkit-transition: all 0.2s ease-in-out;
-moz-transition: all 0.2s ease-in-out;
-o-transition: all 0.2s ease-in-out;
-ms-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}
.wall-item-photo-container .wall-item-links .icon:hover, .wall-item-photo-container .wall-item-actions .icon:hover {
opacity: 1;
-webkit-transition: all 0.2s ease-in-out;
-moz-transition: all 0.2s ease-in-out;
-o-transition: all 0.2s ease-in-out;
-ms-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}
.wall-item-photo-container .wall-item-name {
font-weight: bold;
}
.wall-item-photo-container .wall-item-actions-author {
width: 100%;
margin-bottom: 0.3em;
}
.wall-item-photo-container .wall-item-actions-social {
float: left;
margin-bottom: 1px;
display: table-cell;
}
.wall-item-photo-container .wall-item-actions-social a {
margin-right: 1em;
}
.wall-item-photo-container .wall-item-actions-tools {
float: right;
width: 80px;
display: table-cell;
}
.wall-item-photo-container .wall-item-actions-tools a {
float: right;
}
.wall-item-photo-container .wall-item-actions-tools input {
float: right;
}
.wall-item-photo-container.comment {
margin-top: 5px;
margin-bottom: 5px;
margin-left: 40px;
width: 650px;
border-bottom: 1px solid #D2D2D2;
}
.wall-item-photo-container.comment {
top: 15px !important;
left: 15px !important;
}
.wall-item-photo-container {
display: table;
width: 780px;
}
.my-comment-photo {
width: 48px;
margin-left: 40px;
margin-right: 32px;
}
.comment-edit-preview {
width: 500px;
margin-top: 10px;
}
.comment-edit-text-empty {
width: 500px;
border: 1px solid #D2D2D2;
height: 3.2em;
color: #2d2d2d;
}
.comment-edit-text-full {
font-size: 12.5px;
height: 3.3em;
border: 1px solid #D2D2D2;
width: 500px;
}
.comment-edit-photo {
margin: 10px 0 0;
display: table-cell;
}
.wall-item-container .wall-item-item, .wall-item-container .wall-item-bottom {
@ -1400,6 +1515,7 @@ body .pageheader{
max-width: 720px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}
.wall-item-container .wall-item-content img {
@ -1497,9 +1613,9 @@ body .pageheader{
border: 1px solid #2d2d2d;
}
.comment-edit-preview {
width: 710px;
border: 1px solid #2d2d2d;
width: 500px;
margin-top: 10px;
background-color: #fff797;
}
.comment-edit-preview .contact-photo {
width: 32px;
@ -1735,7 +1851,7 @@ body .pageheader{
height: 20px;
margin: 0 0 5px;
width: 60%;
border: 1px solid #ffffff;
border: 1px solid #d2d2d2;
}
#profile-jot-form #jot-title:-webkit-input-placeholder {
font-weight: normal;
@ -2205,6 +2321,11 @@ blockquote {
border-left: 1px solid #D2D2D2;
padding-left: 9px;
margin: 0 0 0 .8ex;
color: #777;
}
.oembed {
font-size: large;
font-weight: bold;
}
.aprofile dt{
box-shadow: 1px 1px 5px 0;

View file

@ -3,11 +3,16 @@
/*
* Name: Diabook-aerith
* Description: Diabook-aerith : report bugs and request here: http://pad.toktan.org/p/diabook or contact me : thomas_bierey@friendica.eu
* Version: (Version: 1.013)
* Version: (Version: 1.014)
* Author:
*/
//print diabook-version for debugging
$diabook_version = "Diabook-aerith (Version: 1.014)";
$a->page['htmlhead'] .= sprintf('<script "%s" ></script>', $diabook_version);
//change css on network and profilepages
$cssFile = null;
@ -333,8 +338,24 @@ if (!is_null($cssFile)) $a->page['htmlhead'] .= sprintf('<link rel="stylesheet"
$cookieJS = $a->get_baseurl($ssl_state)."/view/theme/diabook-aerith/js/jquery.cookie.js";
$a->page['htmlhead'] .= sprintf('<script language="JavaScript" src="%s" ></script>', $cookieJS);
//load jquery.ae.image.resize.js
$imageresizeJS = $a->get_baseurl($ssl_state)."/view/theme/diabook-aerith/js/jquery.ae.image.resize.js";
$a->page['htmlhead'] .= sprintf('<script language="JavaScript" src="%s" ></script>', $imageresizeJS);
//js scripts
//comment-edit-wrapper on photo_view
if ($a->argv[0].$a->argv[2] === "photos"."image"){
$a->page['htmlhead'] .= '
<script>
$(function(){
$(".comment-edit-form").css("display","table");
});
</script>';
}
$a->page['htmlhead'] .= '
@ -350,6 +371,10 @@ if ($a->argv[0].$a->argv[1] === "profile".$a->user['nickname'] or $a->argv[0] ==
$a->page['htmlhead'] .= '
<script>
$(function() {
$(".oembed.photo img").aeImageResize({height: 400, width: 400});
});
$("right_aside").ready(function(){
if($.cookie("close_pages") == "1")

View file

@ -0,0 +1,22 @@
jQuery Resize Plugin Demo
Version: v2.1.1
Author: Adeel Ejaz (http://adeelejaz.com/)
License: Dual licensed under MIT and GPL licenses.
Introduction
aeImageResize is a jQuery plugin to dynamically resize the images without distorting the proportions.
Usage:
.aeImageResize( height, width )
height
An integer representing the maximum height for the image.
width
An integer representing the maximum width for the image.
Example
$(function() {
$( ".resizeme" ).aeImageResize({ height: 250, width: 250 });
});

View file

@ -0,0 +1,69 @@
(function( $ ) {
$.fn.aeImageResize = function( params ) {
var aspectRatio = 0
// Nasty I know but it's done only once, so not too bad I guess
// Alternate suggestions welcome :)
, isIE6 = $.browser.msie && (6 == ~~ $.browser.version)
;
// We cannot do much unless we have one of these
if ( !params.height && !params.width ) {
return this;
}
// Calculate aspect ratio now, if possible
if ( params.height && params.width ) {
aspectRatio = params.width / params.height;
}
// Attach handler to load
// Handler is executed just once per element
// Load event required for Webkit browsers
return this.one( "load", function() {
// Remove all attributes and CSS rules
this.removeAttribute( "height" );
this.removeAttribute( "width" );
this.style.height = this.style.width = "";
var imgHeight = this.height
, imgWidth = this.width
, imgAspectRatio = imgWidth / imgHeight
, bxHeight = params.height
, bxWidth = params.width
, bxAspectRatio = aspectRatio;
// Work the magic!
// If one parameter is missing, we just force calculate it
if ( !bxAspectRatio ) {
if ( bxHeight ) {
bxAspectRatio = imgAspectRatio + 1;
} else {
bxAspectRatio = imgAspectRatio - 1;
}
}
// Only resize the images that need resizing
if ( (bxHeight && imgHeight > bxHeight) || (bxWidth && imgWidth > bxWidth) ) {
if ( imgAspectRatio > bxAspectRatio ) {
bxHeight = ~~ ( imgHeight / imgWidth * bxWidth );
} else {
bxWidth = ~~ ( imgWidth / imgHeight * bxHeight );
}
this.height = bxHeight;
this.width = bxWidth;
}
})
.each(function() {
// Trigger load event (for Gecko and MSIE)
if ( this.complete || isIE6 ) {
$( this ).trigger( "load" );
}
});
};
})( jQuery );

View file

@ -0,0 +1 @@
(function(d){d.fn.aeImageResize=function(a){var i=0,j=d.browser.msie&&6==~~d.browser.version;if(!a.height&&!a.width)return this;if(a.height&&a.width)i=a.width/a.height;return this.one("load",function(){this.removeAttribute("height");this.removeAttribute("width");this.style.height=this.style.width="";var e=this.height,f=this.width,g=f/e,b=a.height,c=a.width,h=i;h||(h=b?g+1:g-1);if(b&&e>b||c&&f>c){if(g>h)b=~~(e/f*c);else c=~~(f/e*b);this.height=b;this.width=c}}).each(function(){if(this.complete||j)d(this).trigger("load")})}})(jQuery);

View file

@ -0,0 +1,65 @@
{{ if $indent }}{{ else }}
<div class="wall-item-decor">
<img id="like-rotator-$id" class="like-rotator" src="images/rotator.gif" alt="$wait" title="$wait" style="display: none;" />
</div>
{{ endif }}
<div class="wall-item-photo-container $indent">
<div class="wall-item-item">
<div class="wall-item-info">
<div class="contact-photo-wrapper" >
<a href="$profile_url" target="redir" title="" 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="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">
$photo_menu
</ul>
</div>
</div>
<div class="wall-item-actions-author">
<a href="$profile_url" target="redir" title="$name" class="wall-item-name-link"><span class="wall-item-name$sparkle">$name</span></a>
<span class="wall-item-ago">-
{{ if $plink }}<a class="link" title="$plink.title" href="$plink.href" style="color: #999">$ago</a>{{ else }} $ago {{ endif }}
{{ if $lock }} - <span class="fakelink" style="color: #999" onclick="lockview(event,$id);">$lock</span> {{ endif }}
</span>
</div>
<div class="wall-item-content">
{{ if $title }}<h2><a href="$plink.href">$title</a></h2>{{ endif }}
$body
</div>
</div>
<div class="wall-item-bottom">
<div class="wall-item-links">
</div>
<div class="wall-item-tags">
{{ for $tags as $tag }}
<span class='tag'>$tag</span>
{{ endfor }}
</div>
</div>
<div class="wall-item-bottom" style="display: table-row;">
<div class="wall-item-actions">
</div>
<div class="wall-item-actions">
<div class="wall-item-actions-tools">
{{ if $drop.dropping }}
<input type="checkbox" title="$drop.select" name="itemselected[]" class="item-select" value="$id" />
<a href="item/drop/$id" onclick="return confirmDelete();" class="icon drop" title="$drop.delete">$drop.delete</a>
{{ endif }}
{{ if $edpost }}
<a class="icon pencil" href="$edpost.0" title="$edpost.1"></a>
{{ endif }}
</div>
</div>
</div>
<div class="wall-item-bottom">
</div>
</div>

View file

@ -26,3 +26,12 @@
{{ if $edit }}$edit{{ endif }}
<div style="margin-top:20px">
</div>
<div id="wall-photo-container">
$comments
</div>
$paginate

View file

@ -1199,7 +1199,6 @@ body .pageheader{
padding: 0;
}
.tab.button {
margin-right: 5px;
margin-left: 5px;
/*background: none repeat scroll 0 0 #F8F8F8;*/
border: 1px solid #CCCCCC;
@ -1331,10 +1330,12 @@ transition: all 0.2s ease-in-out;
max-width: 420px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}
.wall-item-container .wall-item-content img {
max-width: 400px;
max-height: 400px;
}
.wall-item-container .wall-item-links, .wall-item-container .wall-item-actions {
display: table-cell;
@ -1431,9 +1432,9 @@ transition: all 0.2s ease-in-out;
border: 1px solid #2d2d2d;
}
.comment-edit-preview {
width: 710px;
border: 1px solid #2d2d2d;
width: 500px;
margin-top: 10px;
background-color: #fff797;
}
.comment-edit-preview .contact-photo {
width: 32px;
@ -1669,7 +1670,7 @@ transition: all 0.2s ease-in-out;
height: 20px;
margin: 0 0 5px;
width: 60%;
border: 1px solid #ffffff;
border: 1px solid #d2d2d2;
}
#profile-jot-form #jot-title:-webkit-input-placeholder {
font-weight: normal;
@ -2130,6 +2131,11 @@ blockquote {
border-left: 1px solid #D2D2D2;
padding-left: 9px;
margin: 0 0 0 .8ex;
color: #777;
}
.oembed {
font-size: large;
font-weight: bold;
}
.aprofile dt{
box-shadow: 1px 1px 5px 0;

View file

@ -1198,7 +1198,6 @@ body .pageheader{
padding: 0;
}
.tab.button {
margin-right: 5px;
margin-left: 5px;
/*background: none repeat scroll 0 0 #F8F8F8;*/
border: 1px solid #CCCCCC;
@ -1329,10 +1328,12 @@ transition: all 0.2s ease-in-out;
max-width: 420px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}
.wall-item-container .wall-item-content img {
max-width: 400px;
max-height: 400px;
}
.wall-item-container .wall-item-links, .wall-item-container .wall-item-actions {
display: table-cell;
@ -1426,9 +1427,9 @@ transition: all 0.2s ease-in-out;
border: 1px solid #2d2d2d;
}
.comment-edit-preview {
width: 710px;
border: 1px solid #2d2d2d;
width: 500px;
margin-top: 10px;
background-color: #fff797;
}
.comment-edit-preview .contact-photo {
width: 32px;
@ -1664,7 +1665,7 @@ transition: all 0.2s ease-in-out;
height: 20px;
margin: 0 0 5px;
width: 60%;
border: 1px solid #ffffff;
border: 1px solid #d2d2d2;
}
#profile-jot-form #jot-title:-webkit-input-placeholder {
font-weight: normal;
@ -2125,6 +2126,11 @@ blockquote {
border-left: 1px solid #D2D2D2;
padding-left: 9px;
margin: 0 0 0 .8ex;
color: #777;
}
.oembed {
font-size: large;
font-weight: bold;
}
.aprofile dt{
box-shadow: 1px 1px 5px 0;

View file

@ -1268,7 +1268,6 @@ body .pageheader{
padding: 0;
}
.tab.button {
margin-right: 5px;
margin-left: 5px;
/*background: none repeat scroll 0 0 #F8F8F8;*/
border: 1px solid #CCCCCC;
@ -1304,6 +1303,123 @@ body .pageheader{
display: table;
width: 780px;
}
.wall-item-photo-container .wall-item-item, .wall-item-container .wall-item-bottom {
display: table-row;
}
.wall-item-photo-container .wall-item-info {
display: table-cell;
vertical-align: top;
text-align: left;
width: 80px;
}
.wall-item-photo-container .wall-item-location {
padding-right: 40px;
display: table-cell;
}
.wall-item-photo-container .wall-item-ago {
word-wrap: break-word;
width: 50px;
margin-left: 10px;
color: #999;
}
.wall-item-photo-container .wall-item-content {
font-size: 12.5px;
max-width: 720px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}
.wall-item-photo-container .wall-item-content img {
max-width: 700px;
}
.wall-item-photo-container .wall-item-links, .wall-item-photo-container .wall-item-actions {
display: table-cell;
vertical-align: middle;
}
.wall-item-photo-container .wall-item-links .icon, .wall-item-photo-container .wall-item-actions .icon {
opacity: 0.5;
-webkit-transition: all 0.2s ease-in-out;
-moz-transition: all 0.2s ease-in-out;
-o-transition: all 0.2s ease-in-out;
-ms-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}
.wall-item-photo-container .wall-item-links .icon:hover, .wall-item-photo-container .wall-item-actions .icon:hover {
opacity: 1;
-webkit-transition: all 0.2s ease-in-out;
-moz-transition: all 0.2s ease-in-out;
-o-transition: all 0.2s ease-in-out;
-ms-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}
.wall-item-photo-container .wall-item-name {
font-weight: bold;
}
.wall-item-photo-container .wall-item-actions-author {
width: 100%;
margin-bottom: 0.3em;
}
.wall-item-photo-container .wall-item-actions-social {
float: left;
margin-bottom: 1px;
display: table-cell;
}
.wall-item-photo-container .wall-item-actions-social a {
margin-right: 1em;
}
.wall-item-photo-container .wall-item-actions-tools {
float: right;
width: 80px;
display: table-cell;
}
.wall-item-photo-container .wall-item-actions-tools a {
float: right;
}
.wall-item-photo-container .wall-item-actions-tools input {
float: right;
}
.wall-item-photo-container.comment {
margin-top: 5px;
margin-bottom: 5px;
margin-left: 40px;
width: 650px;
border-bottom: 1px solid #D2D2D2;
}
.wall-item-photo-container.comment {
top: 15px !important;
left: 15px !important;
}
.wall-item-photo-container {
display: table;
width: 780px;
}
.my-comment-photo {
width: 48px;
margin-left: 40px;
margin-right: 32px;
}
.comment-edit-preview {
width: 500px;
margin-top: 10px;
}
.comment-edit-text-empty {
width: 500px;
border: 1px solid #D2D2D2;
height: 3.2em;
color: #2d2d2d;
}
.comment-edit-text-full {
font-size: 12.5px;
height: 3.3em;
border: 1px solid #D2D2D2;
width: 500px;
}
.comment-edit-photo {
margin: 10px 0 0;
display: table-cell;
}
.wall-item-container .wall-item-item, .wall-item-container .wall-item-bottom {
@ -1357,6 +1473,7 @@ body .pageheader{
max-width: 720px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}
.wall-item-container .wall-item-content img {
@ -1454,9 +1571,9 @@ body .pageheader{
border: 1px solid #2d2d2d;
}
.comment-edit-preview {
width: 710px;
border: 1px solid #2d2d2d;
width: 500px;
margin-top: 10px;
background-color: #fff797;
}
.comment-edit-preview .contact-photo {
width: 32px;
@ -1692,7 +1809,7 @@ body .pageheader{
height: 20px;
margin: 0 0 5px;
width: 60%;
border: 1px solid #ffffff;
border: 1px solid #d2d2d2;
}
#profile-jot-form #jot-title:-webkit-input-placeholder {
font-weight: normal;
@ -2161,6 +2278,11 @@ blockquote {
border-left: 1px solid #D2D2D2;
padding-left: 9px;
margin: 0 0 0 .8ex;
color: #777;
}
.oembed {
font-size: large;
font-weight: bold;
}
.aprofile dt{
box-shadow: 1px 1px 5px 0;

View file

@ -3,11 +3,15 @@
/*
* Name: Diabook-blue
* Description: Diabook-blue: report bugs and request here: http://pad.toktan.org/p/diabook or contact me : thomas_bierey@friendica.eu
* Version: (Version: 1.013)
* Version: (Version: 1.014)
* Author:
*/
//print diabook-version for debugging
$diabook_version = "Diabook-blue (Version: 1.014)";
$a->page['htmlhead'] .= sprintf('<script "%s" ></script>', $diabook_version);
//change css on network and profilepages
$cssFile = null;
@ -333,8 +337,25 @@ if (!is_null($cssFile)) $a->page['htmlhead'] .= sprintf('<link rel="stylesheet"
$cookieJS = $a->get_baseurl($ssl_state)."/view/theme/diabook-blue/js/jquery.cookie.js";
$a->page['htmlhead'] .= sprintf('<script language="JavaScript" src="%s" ></script>', $cookieJS);
//load jquery.ae.image.resize.js
$imageresizeJS = $a->get_baseurl($ssl_state)."/view/theme/diabook-blue/js/jquery.ae.image.resize.js";
$a->page['htmlhead'] .= sprintf('<script language="JavaScript" src="%s" ></script>', $imageresizeJS);
//js scripts
//comment-edit-wrapper on photo_view
if ($a->argv[0].$a->argv[2] === "photos"."image"){
$a->page['htmlhead'] .= '
<script>
$(function(){
$(".comment-edit-form").css("display","table");
});
</script>';
}
$a->page['htmlhead'] .= '
@ -350,6 +371,10 @@ if ($a->argv[0].$a->argv[1] === "profile".$a->user['nickname'] or $a->argv[0] ==
$a->page['htmlhead'] .= '
<script>
$(function() {
$(".oembed.photo img").aeImageResize({height: 400, width: 400});
});
$("right_aside").ready(function(){
if($.cookie("close_pages") == "1")

View file

@ -0,0 +1,22 @@
jQuery Resize Plugin Demo
Version: v2.1.1
Author: Adeel Ejaz (http://adeelejaz.com/)
License: Dual licensed under MIT and GPL licenses.
Introduction
aeImageResize is a jQuery plugin to dynamically resize the images without distorting the proportions.
Usage:
.aeImageResize( height, width )
height
An integer representing the maximum height for the image.
width
An integer representing the maximum width for the image.
Example
$(function() {
$( ".resizeme" ).aeImageResize({ height: 250, width: 250 });
});

View file

@ -0,0 +1,69 @@
(function( $ ) {
$.fn.aeImageResize = function( params ) {
var aspectRatio = 0
// Nasty I know but it's done only once, so not too bad I guess
// Alternate suggestions welcome :)
, isIE6 = $.browser.msie && (6 == ~~ $.browser.version)
;
// We cannot do much unless we have one of these
if ( !params.height && !params.width ) {
return this;
}
// Calculate aspect ratio now, if possible
if ( params.height && params.width ) {
aspectRatio = params.width / params.height;
}
// Attach handler to load
// Handler is executed just once per element
// Load event required for Webkit browsers
return this.one( "load", function() {
// Remove all attributes and CSS rules
this.removeAttribute( "height" );
this.removeAttribute( "width" );
this.style.height = this.style.width = "";
var imgHeight = this.height
, imgWidth = this.width
, imgAspectRatio = imgWidth / imgHeight
, bxHeight = params.height
, bxWidth = params.width
, bxAspectRatio = aspectRatio;
// Work the magic!
// If one parameter is missing, we just force calculate it
if ( !bxAspectRatio ) {
if ( bxHeight ) {
bxAspectRatio = imgAspectRatio + 1;
} else {
bxAspectRatio = imgAspectRatio - 1;
}
}
// Only resize the images that need resizing
if ( (bxHeight && imgHeight > bxHeight) || (bxWidth && imgWidth > bxWidth) ) {
if ( imgAspectRatio > bxAspectRatio ) {
bxHeight = ~~ ( imgHeight / imgWidth * bxWidth );
} else {
bxWidth = ~~ ( imgWidth / imgHeight * bxHeight );
}
this.height = bxHeight;
this.width = bxWidth;
}
})
.each(function() {
// Trigger load event (for Gecko and MSIE)
if ( this.complete || isIE6 ) {
$( this ).trigger( "load" );
}
});
};
})( jQuery );

View file

@ -0,0 +1 @@
(function(d){d.fn.aeImageResize=function(a){var i=0,j=d.browser.msie&&6==~~d.browser.version;if(!a.height&&!a.width)return this;if(a.height&&a.width)i=a.width/a.height;return this.one("load",function(){this.removeAttribute("height");this.removeAttribute("width");this.style.height=this.style.width="";var e=this.height,f=this.width,g=f/e,b=a.height,c=a.width,h=i;h||(h=b?g+1:g-1);if(b&&e>b||c&&f>c){if(g>h)b=~~(e/f*c);else c=~~(f/e*b);this.height=b;this.width=c}}).each(function(){if(this.complete||j)d(this).trigger("load")})}})(jQuery);

View file

@ -0,0 +1,65 @@
{{ if $indent }}{{ else }}
<div class="wall-item-decor">
<img id="like-rotator-$id" class="like-rotator" src="images/rotator.gif" alt="$wait" title="$wait" style="display: none;" />
</div>
{{ endif }}
<div class="wall-item-photo-container $indent">
<div class="wall-item-item">
<div class="wall-item-info">
<div class="contact-photo-wrapper" >
<a href="$profile_url" target="redir" title="" 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="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">
$photo_menu
</ul>
</div>
</div>
<div class="wall-item-actions-author">
<a href="$profile_url" target="redir" title="$name" class="wall-item-name-link"><span class="wall-item-name$sparkle">$name</span></a>
<span class="wall-item-ago">-
{{ if $plink }}<a class="link" title="$plink.title" href="$plink.href" style="color: #999">$ago</a>{{ else }} $ago {{ endif }}
{{ if $lock }} - <span class="fakelink" style="color: #999" onclick="lockview(event,$id);">$lock</span> {{ endif }}
</span>
</div>
<div class="wall-item-content">
{{ if $title }}<h2><a href="$plink.href">$title</a></h2>{{ endif }}
$body
</div>
</div>
<div class="wall-item-bottom">
<div class="wall-item-links">
</div>
<div class="wall-item-tags">
{{ for $tags as $tag }}
<span class='tag'>$tag</span>
{{ endfor }}
</div>
</div>
<div class="wall-item-bottom" style="display: table-row;">
<div class="wall-item-actions">
</div>
<div class="wall-item-actions">
<div class="wall-item-actions-tools">
{{ if $drop.dropping }}
<input type="checkbox" title="$drop.select" name="itemselected[]" class="item-select" value="$id" />
<a href="item/drop/$id" onclick="return confirmDelete();" class="icon drop" title="$drop.delete">$drop.delete</a>
{{ endif }}
{{ if $edpost }}
<a class="icon pencil" href="$edpost.0" title="$edpost.1"></a>
{{ endif }}
</div>
</div>
</div>
<div class="wall-item-bottom">
</div>
</div>

View file

@ -25,3 +25,12 @@
{{ if $tags.2 }}<div id="tag-remove"><a href="$tags.2">$tags.3</a></div>{{ endif }}
{{ if $edit }}$edit{{ endif }}
<div style="margin-top:20px">
</div>
<div id="wall-photo-container">
$comments
</div>
$paginate

View file

@ -1234,7 +1234,6 @@ body .pageheader{
padding: 0;
}
.tab.button {
margin-right: 5px;
margin-left: 5px;
/*background: none repeat scroll 0 0 #F8F8F8;*/
border: 1px solid #CCCCCC;
@ -1366,10 +1365,12 @@ transition: all 0.2s ease-in-out;
max-width: 420px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}
.wall-item-container .wall-item-content img {
max-width: 400px;
max-height: 400px;
}
.wall-item-container .wall-item-links, .wall-item-container .wall-item-actions {
display: table-cell;
@ -1466,9 +1467,9 @@ transition: all 0.2s ease-in-out;
border: 1px solid #2d2d2d;
}
.comment-edit-preview {
width: 710px;
border: 1px solid #2d2d2d;
width: 500px;
margin-top: 10px;
background-color: #fff797;
}
.comment-edit-preview .contact-photo {
width: 32px;
@ -1704,7 +1705,7 @@ transition: all 0.2s ease-in-out;
height: 20px;
margin: 0 0 5px;
width: 60%;
border: 1px solid #ffffff;
border: 1px solid #d2d2d2;
}
#profile-jot-form #jot-title:-webkit-input-placeholder {
font-weight: normal;
@ -2167,6 +2168,11 @@ blockquote {
border-left: 1px solid #D2D2D2;
padding-left: 9px;
margin: 0 0 0 .8ex;
color: #777;
}
.oembed {
font-size: large;
font-weight: bold;
}
.aprofile dt{
box-shadow: 1px 1px 5px 0;

View file

@ -1211,7 +1211,6 @@ body .pageheader{
padding: 0;
}
.tab.button {
margin-right: 5px;
margin-left: 5px;
/*background: none repeat scroll 0 0 #F8F8F8;*/
border: 1px solid #CCCCCC;
@ -1342,10 +1341,12 @@ transition: all 0.2s ease-in-out;
max-width: 420px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}
.wall-item-container .wall-item-content img {
max-width: 400px;
max-height: 400px;
}
.wall-item-container .wall-item-links, .wall-item-container .wall-item-actions {
display: table-cell;
@ -1439,9 +1440,9 @@ transition: all 0.2s ease-in-out;
border: 1px solid #2d2d2d;
}
.comment-edit-preview {
width: 710px;
border: 1px solid #2d2d2d;
width: 500px;
margin-top: 10px;
background-color: #fff797;
}
.comment-edit-preview .contact-photo {
width: 32px;
@ -1677,7 +1678,7 @@ transition: all 0.2s ease-in-out;
height: 20px;
margin: 0 0 5px;
width: 60%;
border: 1px solid #ffffff;
border: 1px solid #d2d2d2;
}
#profile-jot-form #jot-title:-webkit-input-placeholder {
font-weight: normal;
@ -2139,6 +2140,11 @@ blockquote {
border-left: 1px solid #D2D2D2;
padding-left: 9px;
margin: 0 0 0 .8ex;
color: #777;
}
.oembed {
font-size: large;
font-weight: bold;
}
.aprofile dt{
box-shadow: 1px 1px 5px 0;

View file

@ -1298,7 +1298,6 @@ body .pageheader{
padding: 0;
}
.tab.button {
margin-right: 5px;
margin-left: 5px;
/*background: none repeat scroll 0 0 #F8F8F8;*/
border: 1px solid #CCCCCC;
@ -1334,6 +1333,122 @@ body .pageheader{
display: table;
width: 780px;
}
.wall-item-photo-container .wall-item-item, .wall-item-container .wall-item-bottom {
display: table-row;
}
.wall-item-photo-container .wall-item-info {
display: table-cell;
vertical-align: top;
text-align: left;
width: 80px;
}
.wall-item-photo-container .wall-item-location {
padding-right: 40px;
display: table-cell;
}
.wall-item-photo-container .wall-item-ago {
word-wrap: break-word;
width: 50px;
margin-left: 10px;
color: #999;
}
.wall-item-photo-container .wall-item-content {
font-size: 12.5px;
max-width: 720px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}
.wall-item-photo-container .wall-item-content img {
max-width: 700px;
}
.wall-item-photo-container .wall-item-links, .wall-item-photo-container .wall-item-actions {
display: table-cell;
vertical-align: middle;
}
.wall-item-photo-container .wall-item-links .icon, .wall-item-photo-container .wall-item-actions .icon {
opacity: 0.5;
-webkit-transition: all 0.2s ease-in-out;
-moz-transition: all 0.2s ease-in-out;
-o-transition: all 0.2s ease-in-out;
-ms-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}
.wall-item-photo-container .wall-item-links .icon:hover, .wall-item-photo-container .wall-item-actions .icon:hover {
opacity: 1;
-webkit-transition: all 0.2s ease-in-out;
-moz-transition: all 0.2s ease-in-out;
-o-transition: all 0.2s ease-in-out;
-ms-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}
.wall-item-photo-container .wall-item-name {
font-weight: bold;
}
.wall-item-photo-container .wall-item-actions-author {
width: 100%;
margin-bottom: 0.3em;
}
.wall-item-photo-container .wall-item-actions-social {
float: left;
margin-bottom: 1px;
display: table-cell;
}
.wall-item-photo-container .wall-item-actions-social a {
margin-right: 1em;
}
.wall-item-photo-container .wall-item-actions-tools {
float: right;
width: 80px;
display: table-cell;
}
.wall-item-photo-container .wall-item-actions-tools a {
float: right;
}
.wall-item-photo-container .wall-item-actions-tools input {
float: right;
}
.wall-item-photo-container.comment {
margin-top: 5px;
margin-bottom: 5px;
margin-left: 40px;
width: 650px;
border-bottom: 1px solid #D2D2D2;
}
.wall-item-photo-container.comment {
top: 15px !important;
left: 15px !important;
}
.wall-item-photo-container {
display: table;
width: 780px;
}
.my-comment-photo {
width: 48px;
margin-left: 40px;
margin-right: 32px;
}
.comment-edit-preview {
width: 500px;
margin-top: 10px;
}
.comment-edit-text-empty {
width: 500px;
border: 1px solid #D2D2D2;
height: 3.2em;
color: #2d2d2d;
}
.comment-edit-text-full {
font-size: 12.5px;
height: 3.3em;
border: 1px solid #D2D2D2;
width: 500px;
}
.comment-edit-photo {
margin: 10px 0 0;
display: table-cell;
}
.wall-item-container .wall-item-item, .wall-item-container .wall-item-bottom {
@ -1387,6 +1502,7 @@ body .pageheader{
max-width: 720px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}
.wall-item-container .wall-item-content img {
@ -1484,9 +1600,9 @@ body .pageheader{
border: 1px solid #2d2d2d;
}
.comment-edit-preview {
width: 710px;
border: 1px solid #2d2d2d;
width: 500px;
margin-top: 10px;
background-color: #fff797;
}
.comment-edit-preview .contact-photo {
width: 32px;
@ -1722,7 +1838,7 @@ body .pageheader{
height: 20px;
margin: 0 0 5px;
width: 60%;
border: 1px solid #ffffff;
border: 1px solid #d2d2d2;
}
#profile-jot-form #jot-title:-webkit-input-placeholder {
font-weight: normal;
@ -2191,6 +2307,11 @@ blockquote {
border-left: 1px solid #D2D2D2;
padding-left: 9px;
margin: 0 0 0 .8ex;
color: #777;
}
.oembed {
font-size: large;
font-weight: bold;
}
.aprofile dt{
box-shadow: 1px 1px 5px 0;

View file

@ -3,11 +3,15 @@
/*
* Name: Diabook-red
* Description: Diabook-red: report bugs and request here: http://pad.toktan.org/p/diabook or contact me : thomas_bierey@friendica.eu
* Version: (Version: 1.013)
* Version: (Version: 1.014)
* Author:
*/
//print diabook-version for debugging
$diabook_version = "Diabook-red (Version: 1.014)";
$a->page['htmlhead'] .= sprintf('<script "%s" ></script>', $diabook_version);
//change css on network and profilepages
$cssFile = null;
@ -334,8 +338,25 @@ if (!is_null($cssFile)) $a->page['htmlhead'] .= sprintf('<link rel="stylesheet"
$cookieJS = $a->get_baseurl($ssl_state)."/view/theme/diabook-red/js/jquery.cookie.js";
$a->page['htmlhead'] .= sprintf('<script language="JavaScript" src="%s" ></script>', $cookieJS);
//load jquery.ae.image.resize.js
$imageresizeJS = $a->get_baseurl($ssl_state)."/view/theme/diabook-red/js/jquery.ae.image.resize.js";
$a->page['htmlhead'] .= sprintf('<script language="JavaScript" src="%s" ></script>', $imageresizeJS);
//js scripts
//comment-edit-wrapper on photo_view
if ($a->argv[0].$a->argv[2] === "photos"."image"){
$a->page['htmlhead'] .= '
<script>
$(function(){
$(".comment-edit-form").css("display","table");
});
</script>';
}
$a->page['htmlhead'] .= '
@ -351,6 +372,10 @@ if ($a->argv[0].$a->argv[1] === "profile".$a->user['nickname'] or $a->argv[0] ==
$a->page['htmlhead'] .= '
<script>
$(function() {
$(".oembed.photo img").aeImageResize({height: 400, width: 400});
});
$("right_aside").ready(function(){
if($.cookie("close_pages") == "1")

View file

@ -0,0 +1,22 @@
jQuery Resize Plugin Demo
Version: v2.1.1
Author: Adeel Ejaz (http://adeelejaz.com/)
License: Dual licensed under MIT and GPL licenses.
Introduction
aeImageResize is a jQuery plugin to dynamically resize the images without distorting the proportions.
Usage:
.aeImageResize( height, width )
height
An integer representing the maximum height for the image.
width
An integer representing the maximum width for the image.
Example
$(function() {
$( ".resizeme" ).aeImageResize({ height: 250, width: 250 });
});

View file

@ -0,0 +1,69 @@
(function( $ ) {
$.fn.aeImageResize = function( params ) {
var aspectRatio = 0
// Nasty I know but it's done only once, so not too bad I guess
// Alternate suggestions welcome :)
, isIE6 = $.browser.msie && (6 == ~~ $.browser.version)
;
// We cannot do much unless we have one of these
if ( !params.height && !params.width ) {
return this;
}
// Calculate aspect ratio now, if possible
if ( params.height && params.width ) {
aspectRatio = params.width / params.height;
}
// Attach handler to load
// Handler is executed just once per element
// Load event required for Webkit browsers
return this.one( "load", function() {
// Remove all attributes and CSS rules
this.removeAttribute( "height" );
this.removeAttribute( "width" );
this.style.height = this.style.width = "";
var imgHeight = this.height
, imgWidth = this.width
, imgAspectRatio = imgWidth / imgHeight
, bxHeight = params.height
, bxWidth = params.width
, bxAspectRatio = aspectRatio;
// Work the magic!
// If one parameter is missing, we just force calculate it
if ( !bxAspectRatio ) {
if ( bxHeight ) {
bxAspectRatio = imgAspectRatio + 1;
} else {
bxAspectRatio = imgAspectRatio - 1;
}
}
// Only resize the images that need resizing
if ( (bxHeight && imgHeight > bxHeight) || (bxWidth && imgWidth > bxWidth) ) {
if ( imgAspectRatio > bxAspectRatio ) {
bxHeight = ~~ ( imgHeight / imgWidth * bxWidth );
} else {
bxWidth = ~~ ( imgWidth / imgHeight * bxHeight );
}
this.height = bxHeight;
this.width = bxWidth;
}
})
.each(function() {
// Trigger load event (for Gecko and MSIE)
if ( this.complete || isIE6 ) {
$( this ).trigger( "load" );
}
});
};
})( jQuery );

View file

@ -0,0 +1 @@
(function(d){d.fn.aeImageResize=function(a){var i=0,j=d.browser.msie&&6==~~d.browser.version;if(!a.height&&!a.width)return this;if(a.height&&a.width)i=a.width/a.height;return this.one("load",function(){this.removeAttribute("height");this.removeAttribute("width");this.style.height=this.style.width="";var e=this.height,f=this.width,g=f/e,b=a.height,c=a.width,h=i;h||(h=b?g+1:g-1);if(b&&e>b||c&&f>c){if(g>h)b=~~(e/f*c);else c=~~(f/e*b);this.height=b;this.width=c}}).each(function(){if(this.complete||j)d(this).trigger("load")})}})(jQuery);

View file

@ -0,0 +1,4 @@
<a class="embed_yt" href='$embedurl' onclick='this.innerHTML=Base64.decode("$escapedhtml"); return false;' style='float:left; margin: 1em; position: relative;'>
<img width='$tw' height='$th' src='$turl' >
<div style='position: absolute; top: 0px; left: 0px; width: $twpx; height: $thpx; background: url(images/icons/48/play.png) no-repeat center center;'></div>
</a>

View file

@ -0,0 +1,65 @@
{{ if $indent }}{{ else }}
<div class="wall-item-decor">
<img id="like-rotator-$id" class="like-rotator" src="images/rotator.gif" alt="$wait" title="$wait" style="display: none;" />
</div>
{{ endif }}
<div class="wall-item-photo-container $indent">
<div class="wall-item-item">
<div class="wall-item-info">
<div class="contact-photo-wrapper" >
<a href="$profile_url" target="redir" title="" 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="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">
$photo_menu
</ul>
</div>
</div>
<div class="wall-item-actions-author">
<a href="$profile_url" target="redir" title="$name" class="wall-item-name-link"><span class="wall-item-name$sparkle">$name</span></a>
<span class="wall-item-ago">-
{{ if $plink }}<a class="link" title="$plink.title" href="$plink.href" style="color: #999">$ago</a>{{ else }} $ago {{ endif }}
{{ if $lock }} - <span class="fakelink" style="color: #999" onclick="lockview(event,$id);">$lock</span> {{ endif }}
</span>
</div>
<div class="wall-item-content">
{{ if $title }}<h2><a href="$plink.href">$title</a></h2>{{ endif }}
$body
</div>
</div>
<div class="wall-item-bottom">
<div class="wall-item-links">
</div>
<div class="wall-item-tags">
{{ for $tags as $tag }}
<span class='tag'>$tag</span>
{{ endfor }}
</div>
</div>
<div class="wall-item-bottom" style="display: table-row;">
<div class="wall-item-actions">
</div>
<div class="wall-item-actions">
<div class="wall-item-actions-tools">
{{ if $drop.dropping }}
<input type="checkbox" title="$drop.select" name="itemselected[]" class="item-select" value="$id" />
<a href="item/drop/$id" onclick="return confirmDelete();" class="icon drop" title="$drop.delete">$drop.delete</a>
{{ endif }}
{{ if $edpost }}
<a class="icon pencil" href="$edpost.0" title="$edpost.1"></a>
{{ endif }}
</div>
</div>
</div>
<div class="wall-item-bottom">
</div>
</div>

18
view/theme/diabook/photo_view.tpl Executable file → Normal file
View file

@ -4,18 +4,15 @@
<div id="photo-edit-link-wrap">
{{ if $tools }}
<a id="photo-edit-link" href="$tools.edit.0">$tools.edit.1</a>
-
|
<a id="photo-toprofile-link" href="$tools.profile.0">$tools.profile.1</a>
{{ endif }}
{{ if $lock }} - <img src="images/lock_icon.gif" class="lockview" alt="$lock" onclick="lockview(event,'photo$id');" /> {{ endif }}
{{ if $lock }} | <img src="images/lock_icon.gif" class="lockview" alt="$lock" onclick="lockview(event,'photo/$id');" /> {{ endif }}
</div>
<div id="photo-photo">
{{ if $prevlink }}<div id="photo-prev-link"><a href="$prevlink.0">$prevlink.1</a></div>{{ endif }}
<a href="$photo.href" class="lightbox" title="$photo.title"><img src="$photo.src" /></a>
<div id="photo-photo"><a href="$photo.href" class="lightbox" title="$photo.title"><img src="$photo.src" /></a></div>
{{ if $nextlink }}<div id="photo-next-link"><a href="$nextlink.0">$nextlink.1</a></div>{{ endif }}
</div>
<div id="photo-photo-end"></div>
<div id="photo-caption">$desc</div>
{{ if $tags }}
@ -25,3 +22,12 @@
{{ if $tags.2 }}<div id="tag-remove"><a href="$tags.2">$tags.3</a></div>{{ endif }}
{{ if $edit }}$edit{{ endif }}
<div style="margin-top:20px">
</div>
<div id="wall-photo-container">
$comments
</div>
$paginate

View file

@ -1183,7 +1183,6 @@ body .pageheader{
padding: 0;
}
.tab.button {
margin-right: 5px;
margin-left: 5px;
/*background: none repeat scroll 0 0 #F8F8F8;*/
border: 1px solid #CCCCCC;
@ -1308,10 +1307,12 @@ transition: all 0.2s ease-in-out;
max-width: 420px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}
.wall-item-container .wall-item-content img {
max-width: 400px;
max-height: 400px;
}
.wall-item-container .wall-item-links, .wall-item-container .wall-item-actions {
display: table-cell;
@ -1405,9 +1406,9 @@ transition: all 0.2s ease-in-out;
border: 1px solid #2d2d2d;
}
.comment-edit-preview {
width: 710px;
border: 1px solid #2d2d2d;
width: 500px;
margin-top: 10px;
background-color: #fff797;
}
.comment-edit-preview .contact-photo {
width: 32px;
@ -1643,7 +1644,7 @@ transition: all 0.2s ease-in-out;
height: 20px;
margin: 0 0 5px;
width: 60%;
border: 1px solid #ffffff;
border: 1px solid #d2d2d2;
}
#profile-jot-form #jot-title:-webkit-input-placeholder {
font-weight: normal;
@ -2099,6 +2100,11 @@ blockquote {
border-left: 1px solid #D2D2D2;
padding-left: 9px;
margin: 0 0 0 .8ex;
color: #777;
}
.oembed {
font-size: large;
font-weight: bold;
}
.aprofile dt{
box-shadow: 1px 1px 5px 0;

View file

@ -1176,7 +1176,6 @@ body .pageheader{
padding: 0;
}
.tab.button {
margin-right: 5px;
margin-left: 5px;
/*background: none repeat scroll 0 0 #F8F8F8;*/
border: 1px solid #CCCCCC;
@ -1302,10 +1301,12 @@ transition: all 0.2s ease-in-out;
max-width: 420px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}
.wall-item-container .wall-item-content img {
max-width: 400px;
max-height: 400px;
}
.wall-item-container .wall-item-links, .wall-item-container .wall-item-actions {
display: table-cell;
@ -1399,9 +1400,9 @@ transition: all 0.2s ease-in-out;
border: 1px solid #2d2d2d;
}
.comment-edit-preview {
width: 710px;
border: 1px solid #2d2d2d;
width: 500px;
margin-top: 10px;
background-color: #fff797;
}
.comment-edit-preview .contact-photo {
width: 32px;
@ -1637,7 +1638,7 @@ transition: all 0.2s ease-in-out;
height: 20px;
margin: 0 0 5px;
width: 60%;
border: 1px solid #ffffff;
border: 1px solid #d2d2d2;
}
#profile-jot-form #jot-title:-webkit-input-placeholder {
font-weight: normal;
@ -2096,6 +2097,11 @@ blockquote {
border-left: 1px solid #D2D2D2;
padding-left: 9px;
margin: 0 0 0 .8ex;
color: #777;
}
.oembed {
font-size: large;
font-weight: bold;
}
.aprofile dt{
box-shadow: 1px 1px 5px 0;

View file

@ -1250,7 +1250,6 @@ body .pageheader{
padding: 0;
}
.tab.button {
margin-right: 5px;
margin-left: 5px;
/*background: none repeat scroll 0 0 #F8F8F8;*/
border: 1px solid #CCCCCC;
@ -1287,6 +1286,9 @@ body .pageheader{
.wall-item-container .wall-item-item, .wall-item-container .wall-item-bottom {
display: table-row;
}
.wall-item-photo-container .wall-item-item, .wall-item-container .wall-item-bottom {
display: table-row;
}
.wall-item-bottom {
font-size: 13px;
}
@ -1312,16 +1314,32 @@ body .pageheader{
text-align: left;
width: 80px;
}
.wall-item-photo-container .wall-item-info {
display: table-cell;
vertical-align: top;
text-align: left;
width: 80px;
}
.wall-item-container .wall-item-location {
padding-right: 40px;
display: table-cell;
}
.wall-item-photo-container .wall-item-location {
padding-right: 40px;
display: table-cell;
}
.wall-item-container .wall-item-ago {
word-wrap: break-word;
width: 50px;
margin-left: 10px;
color: #999;
}
.wall-item-photo-container .wall-item-ago {
word-wrap: break-word;
width: 50px;
margin-left: 10px;
color: #999;
}
.wall-item-location {
clear: both;
@ -1335,15 +1353,29 @@ body .pageheader{
max-width: 720px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}
.wall-item-photo-container .wall-item-content {
font-size: 12.5px;
max-width: 720px;
word-wrap: break-word;
line-height: 1.2;
margin-bottom: 14px;
}
.wall-item-container .wall-item-content img {
max-width: 700px;
}
.wall-item-photo-container .wall-item-content img {
max-width: 700px;
}
.wall-item-container .wall-item-links, .wall-item-container .wall-item-actions {
display: table-cell;
vertical-align: middle;
}
.wall-item-photo-container .wall-item-links, .wall-item-photo-container .wall-item-actions {
display: table-cell;
vertical-align: middle;
}
.wall-item-container .wall-item-links .icon, .wall-item-container .wall-item-actions .icon {
opacity: 0.5;
-webkit-transition: all 0.2s ease-in-out;
@ -1352,6 +1384,14 @@ body .pageheader{
-ms-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}
.wall-item-photo-container .wall-item-links .icon, .wall-item-photo-container .wall-item-actions .icon {
opacity: 0.5;
-webkit-transition: all 0.2s ease-in-out;
-moz-transition: all 0.2s ease-in-out;
-o-transition: all 0.2s ease-in-out;
-ms-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}
.wall-item-container .wall-item-links .icon:hover, .wall-item-container .wall-item-actions .icon:hover {
opacity: 1;
-webkit-transition: all 0.2s ease-in-out;
@ -1360,14 +1400,22 @@ body .pageheader{
-ms-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}
.wall-item-container .wall-item-name {
.wall-item-photo-container .wall-item-links .icon:hover, .wall-item-photo-container .wall-item-actions .icon:hover {
opacity: 1;
-webkit-transition: all 0.2s ease-in-out;
-moz-transition: all 0.2s ease-in-out;
-o-transition: all 0.2s ease-in-out;
-ms-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}
.wall-item-container .wall-item-name, .wall-item-photo-container .wall-item-name {
font-weight: bold;
}
.wall-item-container .wall-item-actions-author {
.wall-item-container .wall-item-actions-author, .wall-item-photo-container .wall-item-actions-author {
width: 100%;
margin-bottom: 0.3em;
}
.wall-item-container .wall-item-actions-social {
.wall-item-container .wall-item-actions-social, .wall-item-photo-container .wall-item-actions-social {
float: left;
margin-bottom: 1px;
display: table-cell;
@ -1375,20 +1423,35 @@ body .pageheader{
.wall-item-container .wall-item-actions-social a {
margin-right: 1em;
}
.wall-item-photo-container .wall-item-actions-social a {
margin-right: 1em;
}
.wall-item-actions-social a {
float: left;
}
.wall-item-container .wall-item-actions-tools {
float: right;
width: 80px;
display: table-cell;
}
.wall-item-photo-container .wall-item-actions-tools {
float: right;
width: 80px;
display: table-cell;
}
.wall-item-container .wall-item-actions-tools a {
float: right;
}
.wall-item-photo-container .wall-item-actions-tools a {
float: right;
}
.wall-item-container .wall-item-actions-tools input {
float: right;
}
.wall-item-photo-container .wall-item-actions-tools input {
float: right;
}
.wall-item-container.comment {
margin-top: 5px;
margin-bottom: 5px;
@ -1396,6 +1459,48 @@ body .pageheader{
width: 700px;
border-bottom: 1px solid hsl(198, 21%, 79%);
}
.wall-item-photo-container.comment {
margin-top: 5px;
margin-bottom: 5px;
margin-left: 40px;
width: 650px;
border-bottom: 1px solid #D2D2D2;
}
.wall-item-photo-container.comment {
top: 15px !important;
left: 15px !important;
}
.wall-item-photo-container {
display: table;
width: 780px;
}
.my-comment-photo {
width: 48px;
margin-left: 40px;
margin-right: 32px;
}
.comment-edit-preview {
width: 500px;
margin-top: 10px;
}
.comment-edit-text-empty {
width: 500px;
border: 1px solid #D2D2D2;
height: 3.2em;
color: #2d2d2d;
}
.comment-edit-text-full {
font-size: 12.5px;
height: 3.3em;
border: 1px solid #D2D2D2;
width: 500px;
}
.comment-edit-photo {
margin: 10px 0 0;
display: table-cell;
}
.wall-item-container.comment .contact-photo {
width: 32px;
height: 32px;
@ -1431,11 +1536,7 @@ body .pageheader{
color: #2d2d2d;
border: 1px solid #2d2d2d;
}
.comment-edit-preview {
width: 710px;
border: 1px solid #2d2d2d;
margin-top: 10px;
}
.comment-edit-preview .contact-photo {
width: 32px;
height: 32px;
@ -1447,6 +1548,11 @@ body .pageheader{
top: 15px !important;
left: 15px !important;
}
.comment-edit-preview {
width: 500px;
margin-top: 10px;
background-color: #fff797;
}
.comment-edit-preview .wall-item-links {
padding-left: 12px;
}
@ -1670,7 +1776,7 @@ body .pageheader{
height: 20px;
margin: 0 0 5px;
width: 60%;
border: 1px solid #ffffff;
border: 1px solid #d2d2d2;
}
#profile-jot-form #jot-title:-webkit-input-placeholder {
font-weight: normal;
@ -2137,6 +2243,11 @@ blockquote {
border-left: 1px solid #D2D2D2;
padding-left: 9px;
margin: 0 0 0 .8ex;
color: #777;
}
.oembed {
font-size: large;
font-weight: bold;
}
.aprofile dt{
box-shadow: 1px 1px 5px 0;
@ -2397,13 +2508,8 @@ a.mail-list-link {
margin-right: 5px;
margin-top: 30px;
}
.comment-edit-text-empty {
margin: 10px 0 0;
width: 85%;
}
.comment-edit-photo {
margin: 10px 0 0;
}
.wall-item-like-buttons .icon.like {
float: left;
}

View file

@ -3,11 +3,14 @@
/*
* Name: Diabook
* Description: Diabook: report bugs and request here: http://pad.toktan.org/p/diabook or contact me : thomas_bierey@friendica.eu
* Version: (Version: 1.013)
* Version: (Version: 1.014)
* Author:
*/
//print diabook-version for debugging
$diabook_version = "Diabook (Version: 1.014)";
$a->page['htmlhead'] .= sprintf('<script "%s" ></script>', $diabook_version);
//change css on network and profilepages
$cssFile = null;
@ -285,6 +288,8 @@ if ($a->argv[0].$a->argv[1] === "profile".$a->user['nickname']){
}
}
//tabs at aside on settings page
if ($a->argv[0] === "settings"){
@ -342,8 +347,25 @@ if (!is_null($cssFile)) $a->page['htmlhead'] .= sprintf('<link rel="stylesheet"
$cookieJS = $a->get_baseurl($ssl_state)."/view/theme/diabook/js/jquery.cookie.js";
$a->page['htmlhead'] .= sprintf('<script language="JavaScript" src="%s"></script>', $cookieJS);
//load jquery.ae.image.resize.js
$imageresizeJS = $a->get_baseurl($ssl_state)."/view/theme/diabook/js/jquery.ae.image.resize.js";
$a->page['htmlhead'] .= sprintf('<script language="JavaScript" src="%s" ></script>', $imageresizeJS);
//js scripts
//comment-edit-wrapper on photo_view
if ($a->argv[0].$a->argv[2] === "photos"."image"){
$a->page['htmlhead'] .= '
<script>
$(function(){
$(".comment-edit-form").css("display","table");
});
</script>';
}
$a->page['htmlhead'] .= '
@ -354,11 +376,34 @@ $a->page['htmlhead'] .= '
</script>';
$a->page['htmlhead'] .= '
<script>
$(document).ready(function() {
$(".embed_yt iframe").each(function(){
var ifr_source = $(this).attr("src");
var wmode = "wmode=transparent";
if(ifr_source.indexOf("?") != -1) {
var getQString = ifr_source.split("?");
var oldString = getQString[1];
var newString = getQString[0];
$(this).attr("src",newString+"?"+wmode+"&"+oldString);
}
else $(this).attr("src",ifr_source+"?"+wmode);
});
});
</script>';
if ($a->argv[0].$a->argv[1] === "profile".$a->user['nickname'] or $a->argv[0] === "network" && local_user()){
$a->page['htmlhead'] .= '
<script>
$(function() {
$(".oembed.photo img").aeImageResize({height: 400, width: 400});
});
$("right_aside").ready(function(){
if($.cookie("close_pages") == "1")