diff --git a/boot.php b/boot.php
index 5a563c99..94d3a538 100644
--- a/boot.php
+++ b/boot.php
@@ -11,7 +11,7 @@ require_once('include/cache.php');
require_once('library/Mobile_Detect/Mobile_Detect.php');
define ( 'FRIENDICA_PLATFORM', 'Friendica');
-define ( 'FRIENDICA_VERSION', '3.0.1421' );
+define ( 'FRIENDICA_VERSION', '3.0.1422' );
define ( 'DFRN_PROTOCOL_VERSION', '2.23' );
define ( 'DB_UPDATE_VERSION', 1154 );
diff --git a/database.sql b/database.sql
index 80ce05ba..fa4f1bd5 100644
--- a/database.sql
+++ b/database.sql
@@ -570,6 +570,9 @@ CREATE TABLE IF NOT EXISTS `item` (
KEY `moderated` (`moderated`),
KEY `spam` (`spam`),
KEY `author-name` (`author-name`),
+ KEY `uid_commented` (`uid`, `commented`),
+ KEY `uid_created` (`uid`, `created`),
+ KEY `uid_unseen` (`uid`, `unseen`),
FULLTEXT KEY `title` (`title`),
FULLTEXT KEY `body` (`body`),
FULLTEXT KEY `allow_cid` (`allow_cid`),
diff --git a/include/bb2diaspora.php b/include/bb2diaspora.php
index b95dee8f..9ede42f6 100644
--- a/include/bb2diaspora.php
+++ b/include/bb2diaspora.php
@@ -202,9 +202,9 @@ function bb2diaspora($Text,$preserve_nl = false, $fordiaspora = true) {
// the following was added on 10-January-2012 due to an inability of Diaspora's
// new javascript markdown processor to handle links with images as the link "text"
// It is not optimal and may be removed if this ability is restored in the future
- if ($fordiaspora)
- $Text = preg_replace("/\[url\=([^\[\]]*)\]\s*\[img\](.*?)\[\/img\]\s*\[\/url\]/ism",
- "[url]$1[/url]\n[img]$2[/img]", $Text);
+ //if ($fordiaspora)
+ // $Text = preg_replace("/\[url\=([^\[\]]*)\]\s*\[img\](.*?)\[\/img\]\s*\[\/url\]/ism",
+ // "[url]$1[/url]\n[img]$2[/img]", $Text);
// Convert it to HTML - don't try oembed
$Text = bbcode($Text, $preserve_nl, false);
diff --git a/include/bbcode.php b/include/bbcode.php
index 9ece3c3d..d83cd358 100644
--- a/include/bbcode.php
+++ b/include/bbcode.php
@@ -224,6 +224,12 @@ function bbcode($Text,$preserve_nl = false, $tryoembed = true) {
// Check for list text
$Text = str_replace("[*]", "
", $Text);
+ // Check for style sheet commands
+ $Text = preg_replace("(\[style=(.*?)\](.*?)\[\/style\])ism","$2",$Text);
+
+ // Check for CSS classes
+ $Text = preg_replace("(\[class=(.*?)\](.*?)\[\/class\])ism","$2",$Text);
+
// handle nested lists
$endlessloop = 0;
diff --git a/include/markdownify/markdownify.php b/include/markdownify/markdownify.php
index 7bbf1cbb..0d4429a0 100644
--- a/include/markdownify/markdownify.php
+++ b/include/markdownify/markdownify.php
@@ -686,6 +686,10 @@ class Markdownify {
# [1]: mailto:mail@example.com Title
$tag['href'] = 'mailto:'.$bufferDecoded;
}
+
+ $this->out('['.$buffer.']('.$tag['href'].' "'.$tag['title'].'")', true);
+
+/*
# [This link][id]
foreach ($this->stack['a'] as $tag2) {
if ($tag2['href'] == $tag['href'] && $tag2['title'] === $tag['title']) {
@@ -699,6 +703,7 @@ class Markdownify {
}
$this->out('['.$buffer.']['.$tag['linkID'].']', true);
+*/
}
}
/**
@@ -737,7 +742,7 @@ class Markdownify {
// 
if ($this->parser->tagAttributes['title'] != "")
- $this->out('!['.$this->parser->tagAttributes['alt'].']('.$this->parser->tagAttributes['src'].'"'.$this->parser->tagAttributes['title'].'")', true);
+ $this->out('!['.$this->parser->tagAttributes['alt'].']('.$this->parser->tagAttributes['src'].' "'.$this->parser->tagAttributes['title'].'")', true);
else
$this->out('!['.$this->parser->tagAttributes['alt'].']('.$this->parser->tagAttributes['src'].')', true);
diff --git a/include/network.php b/include/network.php
index a95dde53..0fff5c7c 100644
--- a/include/network.php
+++ b/include/network.php
@@ -802,7 +802,7 @@ function scale_external_images($s, $include_link = true, $scale_replace = false)
$s = htmlspecialchars_decode($s);
$matches = null;
- $c = preg_match_all('/\[img\](.*?)\[\/img\]/ism',$s,$matches,PREG_SET_ORDER);
+ $c = preg_match_all('/\[img.*?\](.*?)\[\/img\]/ism',$s,$matches,PREG_SET_ORDER);
if($c) {
require_once('include/Photo.php');
foreach($matches as $mtch) {
@@ -823,6 +823,12 @@ function scale_external_images($s, $include_link = true, $scale_replace = false)
$scaled = $mtch[1];
$i = fetch_url($scaled);
+ $cache = get_config('system','itemcache');
+ if (($cache != '') and is_dir($cache)) {
+ $cachefile = $cache."/".hash("md5", $scaled);
+ file_put_contents($cachefile, $i);
+ }
+
// guess mimetype from headers or filename
$type = guess_image_type($mtch[1],true);
diff --git a/mod/parse_url.php b/mod/parse_url.php
index 5dd7de75..ea05055f 100644
--- a/mod/parse_url.php
+++ b/mod/parse_url.php
@@ -176,6 +176,9 @@ function parseurl_getsiteinfo($url) {
}
} else {
$src = completeurl($siteinfo["image"], $url);
+
+ unset($siteinfo["image"]);
+
$photodata = getimagesize($src);
if (($photodata[0] > 10) and ($photodata[1] > 10))
@@ -292,8 +295,7 @@ function parse_url_content(&$a) {
$siteinfo = parseurl_getsiteinfo($url);
if($siteinfo["title"] == "") {
- echo print_r($siteinfo, true);
- //echo sprintf($template,$url,$url,'') . $str_tags;
+ echo sprintf($template,$url,$url,'') . $str_tags;
killme();
} else {
$text = $siteinfo["text"];
@@ -302,7 +304,7 @@ function parse_url_content(&$a) {
$image = "";
- if($siteinfo["image"] != ""){
+ if(sizeof($siteinfo["images"]) > 0){
/*
Execute below code only if image is present in siteinfo
*/
diff --git a/mods/readme.txt b/mods/readme.txt
new file mode 100644
index 00000000..9e79f843
--- /dev/null
+++ b/mods/readme.txt
@@ -0,0 +1,5 @@
+Site speed can be improved when the following indexes are set. They cannot be set through the update script because on large sites they will block the site for several minutes.
+
+CREATE INDEX `uid_commented` ON `item` (`uid`, `commented`);
+CREATE INDEX `uid_created` ON `item` (`uid`, `created`);
+CREATE INDEX `uid_unseen` ON `item` (`uid`, `unseen`);
diff --git a/update.php b/update.php
index 9442f825..19e6cf3b 100644
--- a/update.php
+++ b/update.php
@@ -1343,4 +1343,3 @@ function update_1153() {
if(!$r) return UPDATE_FAILED;
return UPDATE_SUCCESS;
}
-
diff --git a/util/messages.po b/util/messages.po
index d48b506d..966d51cc 100644
--- a/util/messages.po
+++ b/util/messages.po
@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: 3.0.1421\n"
+"Project-Id-Version: 3.0.1422\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-07-31 10:00-0700\n"
+"POT-Creation-Date: 2012-08-01 10:00-0700\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
@@ -37,7 +37,7 @@ msgstr ""
#: ../../mod/crepair.php:115 ../../mod/wall_attach.php:44
#: ../../mod/fsuggest.php:78 ../../mod/events.php:140 ../../mod/api.php:26
#: ../../mod/api.php:31 ../../mod/photos.php:116 ../../mod/photos.php:938
-#: ../../mod/editpost.php:10 ../../mod/install.php:151 ../../mod/poke.php:109
+#: ../../mod/editpost.php:10 ../../mod/install.php:151 ../../mod/poke.php:135
#: ../../mod/notifications.php:66 ../../mod/contacts.php:139
#: ../../mod/settings.php:86 ../../mod/settings.php:519
#: ../../mod/settings.php:524 ../../mod/manage.php:86 ../../mod/network.php:6
@@ -51,7 +51,7 @@ msgstr ""
#: ../../mod/profile_photo.php:166 ../../mod/message.php:38
#: ../../mod/message.php:168 ../../mod/allfriends.php:9
#: ../../mod/nogroup.php:25 ../../mod/wall_upload.php:53
-#: ../../mod/follow.php:9 ../../mod/display.php:138 ../../mod/profiles.php:7
+#: ../../mod/follow.php:9 ../../mod/display.php:130 ../../mod/profiles.php:7
#: ../../mod/profiles.php:408 ../../mod/delegate.php:6
#: ../../mod/suggest.php:28 ../../mod/invite.php:13 ../../mod/invite.php:81
#: ../../mod/dfrn_confirm.php:53 ../../addon/facebook/facebook.php:510
@@ -127,7 +127,7 @@ msgstr ""
#: ../../mod/photos.php:1285 ../../mod/photos.php:1325
#: ../../mod/photos.php:1365 ../../mod/photos.php:1396
#: ../../mod/install.php:246 ../../mod/install.php:284
-#: ../../mod/localtime.php:45 ../../mod/poke.php:169 ../../mod/content.php:691
+#: ../../mod/localtime.php:45 ../../mod/poke.php:199 ../../mod/content.php:691
#: ../../mod/contacts.php:341 ../../mod/settings.php:537
#: ../../mod/settings.php:691 ../../mod/settings.php:752
#: ../../mod/settings.php:958 ../../mod/group.php:85 ../../mod/message.php:294
@@ -1222,23 +1222,23 @@ msgstr ""
msgid "Please select your timezone:"
msgstr ""
-#: ../../mod/poke.php:163
+#: ../../mod/poke.php:192
msgid "Poke/Prod"
msgstr ""
-#: ../../mod/poke.php:164
+#: ../../mod/poke.php:193
msgid "poke, prod or do other things to somebody"
msgstr ""
-#: ../../mod/poke.php:165
+#: ../../mod/poke.php:194
msgid "Recipient"
msgstr ""
-#: ../../mod/poke.php:166
+#: ../../mod/poke.php:195
msgid "Choose what you wish to do to recipient"
msgstr ""
-#: ../../mod/poke.php:168
+#: ../../mod/poke.php:198
msgid "Make this post private"
msgstr ""
@@ -2986,8 +2986,8 @@ msgid "%1$s doesn't like %2$s's %3$s"
msgstr ""
#: ../../mod/notice.php:15 ../../mod/viewsrc.php:15 ../../mod/admin.php:159
-#: ../../mod/admin.php:705 ../../mod/admin.php:904 ../../mod/display.php:37
-#: ../../mod/display.php:142 ../../include/items.php:3692
+#: ../../mod/admin.php:705 ../../mod/admin.php:904 ../../mod/display.php:29
+#: ../../mod/display.php:134 ../../include/items.php:3692
msgid "Item not found."
msgstr ""
@@ -3811,7 +3811,7 @@ msgstr ""
msgid "Requested profile is not available."
msgstr ""
-#: ../../mod/profile.php:141 ../../mod/display.php:75
+#: ../../mod/profile.php:141 ../../mod/display.php:67
msgid "Access to this profile has been restricted."
msgstr ""
@@ -3898,7 +3898,7 @@ msgstr ""
msgid "link"
msgstr ""
-#: ../../mod/display.php:135
+#: ../../mod/display.php:127
msgid "Item has been removed."
msgstr ""
diff --git a/view/theme/diabook/style-profile.css b/view/theme/diabook/style-profile.css
index 63b2eb54..927549fa 100644
--- a/view/theme/diabook/style-profile.css
+++ b/view/theme/diabook/style-profile.css
@@ -2549,4 +2549,9 @@ list-style-type: disc;
#photos-upload-newalbum-div {
float: left;
width: 175px;
-}
\ No newline at end of file
+}
+
+.item-image-preview {
+ float: left;
+ margin-right: 10px;
+}
diff --git a/view/theme/diabook/style.css b/view/theme/diabook/style.css
index 68bfd5d3..286559b8 100644
--- a/view/theme/diabook/style.css
+++ b/view/theme/diabook/style.css
@@ -2906,4 +2906,4 @@ list-style-type: disc;
#photos-upload-newalbum-div {
float: left;
width: 175px;
-}
\ No newline at end of file
+}