directory/path component in the URL) is preferred. This is REQUIRED if
you wish to communicate with the Diaspora network.
+
+ - For alternative server configurations (such as Nginx server and MariaDB
+ database engine), refer to the wiki at https://github.com/friendica/friendica/wiki
+
2. Unpack the Friendica files into the root of your web server document area.
- If you copy the directory tree to your webserver, make sure
require_once('library/Mobile_Detect/Mobile_Detect.php');
define ( 'FRIENDICA_PLATFORM', 'Friendica');
-define ( 'FRIENDICA_VERSION', '3.0.1486' );
+define ( 'FRIENDICA_VERSION', '3.0.1492' );
define ( 'DFRN_PROTOCOL_VERSION', '2.23' );
define ( 'DB_UPDATE_VERSION', 1156 );
$this->image->setCompressionQuality($quality);
}
- $this->width = $this->image->getImageWidth();
+ // The 'width' and 'height' properties are only used by non-Imagick routines.
+ $this->width = $this->image->getImageWidth();
$this->height = $this->image->getImageHeight();
$this->valid = true;
- return true;
+ return true;
}
$this->valid = false;
if(!$this->is_valid())
return FALSE;
- $width = $this->width;
- $height = $this->height;
+ $width = $this->getWidth();
+ $height = $this->getHeight();
$dest_width = $dest_height = 0;
if($this->is_imagick()) {
- /**
- * If it is not animated, there will be only one iteration here,
- * so don't bother checking
- */
- // Don't forget to go back to the first frame
- $this->image->setFirstIterator();
- do {
+ /**
+ * If it is not animated, there will be only one iteration here,
+ * so don't bother checking
+ */
+ // Don't forget to go back to the first frame
+ $this->image->setFirstIterator();
+ do {
// FIXME - implement horizantal bias for scaling as in followin GD functions
// to allow very tall images to be constrained only horizontally.
- $this->image->scaleImage($dest_width, $dest_height);
- } while ($this->image->nextImage());
+ $this->image->scaleImage($dest_width, $dest_height);
+ } while ($this->image->nextImage());
- // FIXME - also we need to copy the new dimensions to $this->height, $this->width as other functions
- // may rely on it.
+ // These may not be necessary any more
+ $this->width = $this->image->getImageWidth();
+ $this->height = $this->image->getImageHeight();
- return;
+ return;
}
return FALSE;
- $width = $this->width;
- $height = $this->height;
+ $width = $this->getWidth();
+ $height = $this->getHeight();
$dest_width = $dest_height = 0;
if(!$this->is_valid())
return FALSE;
- if($this->is_imagick()) {
- $this->image->setFirstIterator();
- do {
- $this->image->cropImage($w, $h, $x, $y);
- /**
- * We need to remove the canva,
- * or the image is not resized to the crop:
- * http://php.net/manual/en/imagick.cropimage.php#97232
- */
- $this->image->setImagePage(0, 0, 0, 0);
- } while ($this->image->nextImage());
- return $this->scaleImage($max);
- }
+ if($this->is_imagick()) {
+ $this->image->setFirstIterator();
+ do {
+ $this->image->cropImage($w, $h, $x, $y);
+ /**
+ * We need to remove the canva,
+ * or the image is not resized to the crop:
+ * http://php.net/manual/en/imagick.cropimage.php#97232
+ */
+ $this->image->setImagePage(0, 0, 0, 0);
+ } while ($this->image->nextImage());
+ return $this->scaleImage($max);
+ }
$dest = imagecreatetruecolor( $max, $max );
imagealphablending($dest, false);
else {
txt = tinyMCE.activeEditor.getContent();
// alert(that.searchText + ':' + t);
- newtxt = txt.replace(that.searchText,t+' ');
+ newtxt = txt.replace('@' + that.searchText,'@' + t +' ');
tinyMCE.activeEditor.setContent(newtxt);
tinyMCE.activeEditor.focus();
that.close();
if(! count($r))
killme();
$item = $r[0];
- if($item['uid'] != local_user())
+
+ call_hooks('lockview_content', $item);
+
+ if($item['uid'] != local_user()) {
+ echo t('Remote privacy information not available.') . '<br />';
killme();
+ }
if(($item['private'] == 1) && (! strlen($item['allow_cid'])) && (! strlen($item['allow_gid']))
if($limited_id)
$_SESSION['submanage'] = $original_id;
- goaway($a->get_baseurl(true) . '/profile/' . $a->user['nickname']);
+ $ret = array();
+ call_hooks('home_init',$ret);
+
+ goaway( $a->get_baseurl() . "/profile/" . $a->user['nickname'] );
// NOTREACHED
}
`item`.`author-link`, `item`.`author-avatar`, `item`.`created`, `item`.`object` as `object`,
`pitem`.`author-name` as `pname`, `pitem`.`author-link` as `plink`
FROM `item` INNER JOIN `item` as `pitem` ON `pitem`.`id`=`item`.`parent`
- WHERE `item`.`unseen` = 1 AND `item`.`visible` = 1 AND
+ WHERE `item`.`unseen` = 1 AND `item`.`visible` = 1 AND `pitem`.`parent` != 0
`item`.`deleted` = 0 AND `item`.`uid` = %d AND `item`.`wall` = 0 ORDER BY `item`.`created` DESC" ,
intval(local_user())
);
`item`.`contact-id`, `item`.`author-link`, `item`.`author-avatar`, `item`.`created`, `item`.`object`,
`pitem`.`author-name` as `pname`, `pitem`.`author-link` as `plink`
FROM `item` INNER JOIN `item` as `pitem` ON `pitem`.`id`=`item`.`parent`
- WHERE `item`.`unseen` = 1 AND `item`.`visible` = 1 AND
- `item`.`deleted` = 0 AND `item`.`uid` = %d
+ WHERE `item`.`unseen` = 1 AND `item`.`visible` = 1 AND
+ `item`.`deleted` = 0 AND `item`.`uid` = %d AND `pitem`.`parent` != 0
ORDER BY `item`.`created` DESC",
intval(local_user())
);
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: 3.0.1486\n"
+"Project-Id-Version: 3.0.1492\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-10-04 10:00-0700\n"
+"POT-Creation-Date: 2012-10-10 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"
#: ../../addon/randplace/randplace.php:177 ../../addon/dwpost/dwpost.php:93
#: ../../addon/drpost/drpost.php:110 ../../addon/startpage/startpage.php:92
#: ../../addon/geonames/geonames.php:187 ../../addon/oembed.old/oembed.php:41
-#: ../../addon/forumlist/forumlist.php:164
+#: ../../addon/forumlist/forumlist.php:175
#: ../../addon/impressum/impressum.php:83
#: ../../addon/notimeline/notimeline.php:64 ../../addon/blockem/blockem.php:57
#: ../../addon/qcomment/qcomment.php:61
msgstr ""
#: ../../addon/page/page.php:62 ../../addon/page/page.php:92
-#: ../../addon/forumlist/forumlist.php:56
+#: ../../addon/forumlist/forumlist.php:60
msgid "Forums"
msgstr ""
-#: ../../addon/page/page.php:130 ../../addon/forumlist/forumlist.php:90
+#: ../../addon/page/page.php:130 ../../addon/forumlist/forumlist.php:94
msgid "Forums:"
msgstr ""
msgid "URL to embed:"
msgstr ""
-#: ../../addon/forumlist/forumlist.php:59
+#: ../../addon/forumlist/forumlist.php:63
msgid "show/hide"
msgstr ""
-#: ../../addon/forumlist/forumlist.php:73
+#: ../../addon/forumlist/forumlist.php:77
msgid "No forum subscriptions"
msgstr ""
-#: ../../addon/forumlist/forumlist.php:126
+#: ../../addon/forumlist/forumlist.php:131
msgid "Forumlist settings updated."
msgstr ""
-#: ../../addon/forumlist/forumlist.php:151
+#: ../../addon/forumlist/forumlist.php:159
msgid "Forumlist Settings"
msgstr ""
-#: ../../addon/forumlist/forumlist.php:153
+#: ../../addon/forumlist/forumlist.php:161
msgid "Randomise forum list"
msgstr ""
-#: ../../addon/forumlist/forumlist.php:156
+#: ../../addon/forumlist/forumlist.php:164
msgid "Show forums on profile page"
msgstr ""
+#: ../../addon/forumlist/forumlist.php:167
+msgid "Show forums on network page"
+msgstr ""
+
#: ../../addon/impressum/impressum.php:37
msgid "Impressum"
msgstr ""
margin-top: 10px;\r
}\r
\r
+.toplevel_item {\r
+ margin-bottom: 60px;\r
+}\r
+\r
.wall-item-content-wrapper {\r
- margin-top: 60px;\r
padding-top: 30px;\r
border-top: 2px solid #AAAAAA;\r
position: relative;\r
top: 80px;\r
/* z-index: 100;*/\r
}\r
-.wall-item-wrapper {\r
- margin-left:10px;\r
-}\r
.wall-item-lock {\r
margin-top: 30px;\r
left: 105px;\r
.wall-item-body {\r
text-align: justify;\r
float: left;\r
+ clear: left;\r
/* width: 300px;*/\r
overflow: hidden;\r
margin-top: 10px;\r
margin-top: 10px;\r
}\r
\r
+.filesavetags, .categorytags {\r
+ display: block;\r
+ clear: left;\r
+}\r
+\r
.body-tag, .filesavetags, .categorytags {\r
opacity: 0.5;\r
filter:alpha(opacity=50);\r
* Name: Frost--mobile version
* Description: Like frosted glass
* Credits: Navigation icons taken from http://iconza.com. Other icons taken from http://thenounproject.com, including: Like, Dislike, Black Lock, Unlock, Pencil, Tag, Camera, Paperclip (Marie Coons), Folder (Sergio Calcara), Chain-link (Andrew Fortnum), Speaker (Harold Kim), Quotes (Henry Ryder), Video Camera (Anas Ramadan), and Left Arrow, Right Arrow, and Delete X (all three P.J. Onori). All under Attribution (CC BY 3.0). Others from The Noun Project are public domain or No Rights Reserved (CC0).
- * Version: Version 0.2.14
+ * Version: Version 0.2.15
* Author: Zach P <techcity@f.shmuz.in>
* Maintainer: Zach P <techcity@f.shmuz.in>
*/
<!--<div class='main-content-loading'><img src="/view/theme/frost/images/ajax-loader.gif" alt="Please wait..."></div>-->\r
<div class='main-content-container'>\r
<aside><?php if(x($page,'aside')) echo $page['aside']; ?></aside>\r
- <div class='section-wrapper'>\r
<section><?php if(x($page,'content')) echo $page['content']; ?>\r
<div id="page-footer"></div>\r
</section>\r
- </div>\r
<right_aside><?php if(x($page,'right_aside')) echo $page['right_aside']; ?></right_aside>\r
<footer><?php if(x($page,'footer')) echo $page['footer']; ?></footer>\r
</div>\r
}
.hide-comments-outer {
- margin-left: 0px;
+ margin-left: 75px;
font-weight: 700;
opacity: 0.4;
+ border-bottom: 1px solid #AAA;
}
.hide-comments-outer:hover {
opacity: 1.0;
}
/* section */
-div.section-wrapper {
+section {
width: 565px;
- margin-left: auto;
- margin-right: auto;
-
- padding-right:2em;
-
display: block;
- background-color: #ffffff;
- background-image: url(border.jpg);
- background-position: top right;
- background-repeat: no-repeat;
-}
-
-section {
- margin: 0px 0px 0px 0px;
-
- width: 100%;
+ margin-left: auto;
+ margin-right: auto;
+ margin-top: 0px;
+ margin-bottom: 0px;
padding-left: 1em;
padding-right: 1em;
padding-top: 1em;
- background-image: url(border.jpg);
+ background-color: #ffffff;
+/* background-image: url(border.jpg);
background-position: top left;
- background-repeat: no-repeat;
+ background-repeat: no-repeat;*/
min-height: 112px;
- border-top: 1px solid #babdb6;
+ border-top: 1px solid #babdb6;
+ border-left: 1px dotted #AAA;
+ border-right: 1px dotted #AAA;
}
.tabs {
margin-top: 10px;
}
+.toplevel_item {
+ margin-bottom: 40px;
+}
+
.wall-item-content-wrapper {
- margin-top: 60px;
padding-top: 30px;
border-top: 2px solid #AAA;
position: relative;
.wall-item-content-wrapper.comment {
margin-top: 10px;
- padding-top: none;
- margin-left: 50px;
+ padding-top: 0px;
+ margin-left: 75px;
border: none;
}
margin-left: 0px;
opacity: 0.4;
}
+.wall-item-dislike {
+ margin-bottom: 15px;
+}
.wall-item-like:hover, .wall-item-dislike:hover {
opacity: 1.0;
}
.wall-item-like.comment, .wall-item-dislike.comment {
- margin-left: 50px;
+ margin-left: 75px;
+}
+.wall-item-dislike.comment {
+ margin-bottom: 0px;
}
.wall-item-info {
.wall-item-photo-menu li a:hover { color: #FFFFFF; background: #3465A4; text-decoration: none; }
-.comment .wall-item-photo-menu-button { /*top: 44px;*/ top: 64px;}
-.comment .wall-item-photo-menu { /*top: 60px;*/ top: 80px; }
+.comment .wall-item-photo-menu-button { /*top: 44px;*/ top: 34px;}
+.comment .wall-item-photo-menu { /*top: 60px;*/ top: 50px; }
.wallwall .wwto {
left: 50px;
top: 70px;
z-index: 100;
}
-.wall-item-wrapper {
- margin-left:10px;
-}
.wall-item-lock {
margin-top: 30px;
left: 105px;
}
.comment .wall-item-lock {
left: 65px;
+ margin-top: 0px;
}
.wall-item-ago {
.wall-item-body {
text-align: justify;
float: left;
+ clear: left;
/*width: 450px;*/
width: 100%;
margin-top: 10px;
.wall-item-tools {
clear: both;
-/* background-image: url("head.jpg");
- background-position: 0 -20px;
- background-repeat: repeat-x;*/
+
margin-top: 10px;
margin-left: 0px;
- margin-bottom: 7px;
-/* padding: 5px 10px 0px;*/
- padding: 5px 10px 0px 2px;
- height: 28px;
+ padding: 10px 10px 0px 2px;
+
+ height: 22px;
+
border-bottom: 1px solid #ddd;
}
.wall-item-author {
-/* margin-top: 10px;*/
margin-top: 0px;
}
.comment .wall-item-tools {
-/* background:none;*/
-/* background-image: url("head.jpg");
- background-position: 0 -20px;
- background-repeat: repeat-x;*/
margin-left: 0px;
+ margin-top: 0px;
+ padding-top: 0px;
}
.comment-edit-wrapper {
display: block;
margin-top: 15px;
background: #f3f3f3;
- margin-left: 50px;
+ margin-left: 75px;
}
.comment-wwedit-wrapper.comment {
margin-top: 10px;
}
+.filesavetags, .categorytags {
+ display: block;
+ clear: left;
+}
+
.body-tag, .filesavetags, .categorytags {
opacity: 0.5;
filter:alpha(opacity=50);
}
-#item-delete-selected {
+#item-delete-selected-top {
margin-top: 30px;
+ padding-bottom: 1.5em;
+}
+#item-delete-selected-top-icon, #item-delete-selected-top-desc {
+ float: left;
+ margin-right: 5px;
+}
+#item-delete-selected-top-desc:hover {
+ text-decoration: underline;
+}
+
+#item-delete-selected {
+ margin-top: 0px;
}
#item-delete-selected-end {
* Name: Frost
* Description: Like frosted glass
* Credits: Navigation icons taken from http://iconza.com. Other icons taken from http://thenounproject.com, including: Like, Dislike, Black Lock, Unlock, Pencil, Tag, Camera, Paperclip (Marie Coons), Folder (Sergio Calcara), Chain-link (Andrew Fortnum), Speaker (Harold Kim), Quotes (Henry Ryder), Video Camera (Anas Ramadan), and Left Arrow, Right Arrow, and Delete X (all three P.J. Onori). All under Attribution (CC BY 3.0). Others from The Noun Project are public domain or No Rights Reserved (CC0).
- * Version: Version 0.2.12
+ * Version: Version 0.3
* Author: Zach P <techcity@f.shmuz.in>
* Maintainer: Zach P <techcity@f.shmuz.in>
*/
--- /dev/null
+{{ if $dropping }}
+<div id="item-delete-selected-top" class="fakelink" onclick="deleteCheckedItems();">
+ <div id="item-delete-selected-top-icon" class="icon drophide" title="$dropping" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></div>
+ <div id="item-delete-selected-top-desc" >$dropping</div>
+</div>
+{{ endif }}
+
+$live_update
+
+{{ for $threads as $item }}
+{{ inc $item.template }}{{ endinc }}
+{{ endfor }}
+
+<div id="conversation-end"></div>
+
+{{ if $dropping }}
+<div id="item-delete-selected" class="fakelink" onclick="deleteCheckedItems();">
+ <div id="item-delete-selected-icon" class="icon drophide" title="$dropping" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></div>
+ <div id="item-delete-selected-desc" >$dropping</div>
+</div>
+<div id="item-delete-selected-end"></div>
+{{ endif }}