]> git.mxchange.org Git - friendica.git/commitdiff
Merge commit 'upstream/master'
authorMichael Vogel <icarus@dabo.de>
Thu, 15 Mar 2012 20:11:58 +0000 (21:11 +0100)
committerMichael Vogel <icarus@dabo.de>
Thu, 15 Mar 2012 20:11:58 +0000 (21:11 +0100)
12 files changed:
database.sql
htconfig.php
include/delivery.php
include/email.php
include/html2bbcode.php
include/msgclean.php [new file with mode: 0644]
include/notifier.php
include/poller.php
include/text.php
view/theme/diabook/style.css
view/theme/diabook/wall_item.tpl
view/theme/diabook/wallwall_item.tpl

index 35c257f021b97fd9a3e52873452bbecb29522602..2add8bd85624552e43809a320a846b276bd18744 100755 (executable)
@@ -636,6 +636,7 @@ CREATE TABLE IF NOT EXISTS `mailacct` (
 `mailbox` CHAR( 255 ) NOT NULL,
 `user` CHAR( 255 ) NOT NULL ,
 `pass` TEXT NOT NULL ,
+`reply_to` CHAR( 255 ) NOT NULL ,
 `action` INT NOT NULL ,
 `movetofolder` CHAR(255) NOT NULL ,
 `pubmail` TINYINT(1) NOT NULL DEFAULT '0',
index f52aed2b10c8cfafa870b918599f75a6060a4109..9d9c8a2c791ddd185a2d68949f4add5c5d6c76ec 100755 (executable)
@@ -79,3 +79,9 @@ $a->config['system']['theme'] = 'duepuntozero';
 // By default allow pseudonyms
 
 $a->config['system']['no_regfullname'] = true;
+
+// If set to true the priority settings of ostatus contacts are used
+$a->config['system']['ostatus_use_priority'] = false;
+
+// If enabled all items are cached in the given directory
+$a->config['system']['itemcache'] = "";
index c1ff07bd5438226b6b63a18e7327172e8329dff6..44a482ca28945368718d0c1be408a6f88df35ca4 100755 (executable)
@@ -435,8 +435,8 @@ function delivery_run($argv, $argc){
                                        $headers .= 'Reply-to: ' . $reply_to . "\n";
 
                                // for testing purposes: Collect exported mails
-                               $file = tempnam("/tmp/friendica/", "mail-out-");
-                               file_put_contents($file, json_encode($it));
+                               // $file = tempnam("/tmp/friendica/", "mail-out-");
+                               // file_put_contents($file, json_encode($it));
 
                                $headers .= 'Message-Id: <' . iri2msgid($it['uri']). '>' . "\n";
 
@@ -446,30 +446,16 @@ function delivery_run($argv, $argc){
 
                                if($it['uri'] !== $it['parent-uri']) {
                                        $headers .= 'References: <' . iri2msgid($it['parent-uri']) . '>' . "\n";
-                                       if(! strlen($it['title'])) {
+                                       if(!strlen($it['title'])) {
                                                $r = q("SELECT `title` FROM `item` WHERE `parent-uri` = '%s' LIMIT 1",
-                                                       dbesc($it['parent-uri'])
-                                               );
-                                               if(count($r)) {
-                                                       $subtitle = $r[0]['title'];
-                                                       if($subtitle) {
-                                                               if(strncasecmp($subtitle,'RE:',3))
-                                                                       $subject = $subtitle;
-                                                               else
-                                                                       $subject = 'Re: ' . $subtitle;
-                                                       }
-                                               }
+                                                       dbesc($it['parent-uri']));
+
+                                               if(count($r) AND ($r[0]['title'] != ''))
+                                                       $subject = $r[0]['title'];
                                        }
+                                       if(strncasecmp($subject,'RE:',3))
+                                               $subject = 'Re: '.$subject;
                                }
-                               /*$headers .= 'MIME-Version: 1.0' . "\n";
-                               //$headers .= 'Content-Type: text/html; charset=UTF-8' . "\n";
-                               $headers .= 'Content-Type: text/plain; charset=UTF-8' . "\n";
-                               $headers .= 'Content-Transfer-Encoding: 8bit' . "\n\n";
-                               $html    = prepare_body($it);
-                               //$message = '<html><body>' . $html . '</body></html>';
-                               $message = html2plain($html);
-                               logger('notifier: email delivery to ' . $addr);
-                               mail($addr, $subject, $message, $headers);*/
                                email_send($addr, $subject, $headers, $it);
                        }
                        break;
index 659978b6ee850f3bd0a7267f8d30829e60982160..a3449a4249934bd965f49c031cb3d8cb90ad77e5 100755 (executable)
@@ -1,5 +1,7 @@
 <?php
 require_once('include/html2plain.php');
+require_once('include/msgclean.php');
+require_once('include/quoteconvert.php');
 
 function email_connect($mailbox,$username,$password) {
        if(! function_exists('imap_open'))
@@ -86,6 +88,7 @@ function email_get_msg($mbox,$uid) {
 
        if(! $struc->parts) {
                $ret['body'] = email_get_part($mbox,$uid,$struc,0, 'html');
+               $html = $ret['body'];
 
                if (trim($ret['body']) == '')
                        $ret['body'] = email_get_part($mbox,$uid,$struc,0, 'plain');
@@ -107,6 +110,17 @@ function email_get_msg($mbox,$uid) {
                else
                        $ret['body'] = $text;
        }
+
+       $ret['body'] = removegpg($ret['body']);
+       $msg = removesig($ret['body']);
+       $ret['body'] = $msg['body'];
+       $ret['body'] = convertquote($ret['body'], false);
+
+       if (trim($html) != '')
+               $ret['body'] = removelinebreak($ret['body']);
+
+       $ret['body'] = unifyattributionline($ret['body']);
+
        return $ret;
 }
 
index 32a90d7d631cfcaee36fcdddb5b33990036830a8..0dafecc71fcca9f017d9a62413782aba5781872d 100755 (executable)
@@ -150,10 +150,14 @@ function html2bbcode($message)
        node2bbcode($doc, 'font', array('size'=>'/(\d+)/'), '[size=$1]', '[/size]');
        node2bbcode($doc, 'font', array('color'=>'/(.+)/'), '[color=$1]', '[/color]');
 
-       node2bbcode($doc, 'span', array('style'=>'/.*color:\s*(.+?)[,;].*/'), '[color="$1"]', '[/color]');
-       node2bbcode($doc, 'span', array('style'=>'/.*font-size:\s*(\d+)/'), '[size=$1]', '[/size]');
+       // Untested
+       //node2bbcode($doc, 'span', array('style'=>'/.*font-size:\s*(.+?)[,;].*font-family:\s*(.+?)[,;].*color:\s*(.+?)[,;].*/'), '[size=$1][font=$2][color=$3]', '[/color][/font][/size]');
+       //node2bbcode($doc, 'span', array('style'=>'/.*font-size:\s*(\d+)[,;].*/'), '[size=$1]', '[/size]');
+       //node2bbcode($doc, 'span', array('style'=>'/.*font-size:\s*(.+?)[,;].*/'), '[size=$1]', '[/size]');
 
+       node2bbcode($doc, 'span', array('style'=>'/.*color:\s*(.+?)[,;].*/'), '[color="$1"]', '[/color]');
        //node2bbcode($doc, 'span', array('style'=>'/.*font-family:\s*(.+?)[,;].*/'), '[font=$1]', '[/font]');
+
        //node2bbcode($doc, 'div', array('style'=>'/.*font-family:\s*(.+?)[,;].*font-size:\s*(\d+?)pt.*/'), '[font=$1][size=$2]', '[/size][/font]');
        //node2bbcode($doc, 'div', array('style'=>'/.*font-family:\s*(.+?)[,;].*font-size:\s*(\d+?)px.*/'), '[font=$1][size=$2]', '[/size][/font]');
        //node2bbcode($doc, 'div', array('style'=>'/.*font-family:\s*(.+?)[,;].*/'), '[font=$1]', '[/font]');
diff --git a/include/msgclean.php b/include/msgclean.php
new file mode 100644 (file)
index 0000000..284ad1c
--- /dev/null
@@ -0,0 +1,225 @@
+<?php
+
+function savereplace($pattern, $replace, $text)
+{
+       $save = $text;
+
+       $text = preg_replace($pattern, $replace, $text);
+
+       if ($text == '')
+               $text = $save;
+       return($text);
+}
+
+function unifyattributionline($message)
+{
+       $quotestr = array('quote', 'collapsed');
+       foreach ($quotestr as $quote) {
+
+               $message = savereplace('/----- Original Message -----\s.*?From: "([^<"].*?)" <(.*?)>\s.*?To: (.*?)\s*?Cc: (.*?)\s*?Sent: (.*?)\s.*?Subject: ([^\n].*)\s*\['.$quote.'\]/i', "[".$quote."='$1']\n", $message);
+               $message = savereplace('/----- Original Message -----\s.*?From: "([^<"].*?)" <(.*?)>\s.*?To: (.*?)\s*?Sent: (.*?)\s.*?Subject: ([^\n].*)\s*\['.$quote.'\]/i', "[".$quote."='$1']\n", $message);
+
+               $message = savereplace('/-------- Original-Nachricht --------\s*\['.$quote.'\]\nDatum: (.*?)\nVon: (.*?) <(.*?)>\nAn: (.*?)\nBetreff: (.*?)\n/i', "[".$quote."='$2']\n", $message);
+               $message = savereplace('/-------- Original-Nachricht --------\s*\['.$quote.'\]\sDatum: (.*?)\s.*Von: "([^<"].*?)" <(.*?)>\s.*An: (.*?)\n.*/i', "[".$quote."='$2']\n", $message);
+               $message = savereplace('/-------- Original-Nachricht --------\s*\['.$quote.'\]\nDatum: (.*?)\nVon: (.*?)\nAn: (.*?)\nBetreff: (.*?)\n/i', "[".$quote."='$2']\n", $message);
+
+               $message = savereplace('/-----Urspr.*?ngliche Nachricht-----\sVon: "([^<"].*?)" <(.*?)>\s.*Gesendet: (.*?)\s.*An: (.*?)\s.*Betreff: ([^\n].*?).*:\s*\['.$quote.'\]/i', "[".$quote."='$1']\n", $message);
+               $message = savereplace('/-----Urspr.*?ngliche Nachricht-----\sVon: "([^<"].*?)" <(.*?)>\s.*Gesendet: (.*?)\s.*An: (.*?)\s.*Betreff: ([^\n].*?)\s*\['.$quote.'\]/i', "[".$quote."='$1']\n", $message);
+
+               $message = savereplace('/Am (.*?), schrieb (.*?):\s*\['.$quote.'\]/i', "[".$quote."='$2']\n", $message);
+
+               $message = savereplace('/Am .*?, \d+ .*? \d+ \d+:\d+:\d+ \+\d+\sschrieb\s(.*?)\s<(.*?)>:\s*\['.$quote.'\]/i', "[".$quote."='$1']\n", $message);
+
+               $message = savereplace('/Am (.*?) schrieb (.*?) <(.*?)>:\s*\['.$quote.'\]/i', "[".$quote."='$2']\n", $message);
+               $message = savereplace('/Am (.*?) schrieb <(.*?)>:\s*\['.$quote.'\]/i', "[".$quote."='$2']\n", $message);
+               $message = savereplace('/Am (.*?) schrieb (.*?):\s*\['.$quote.'\]/i', "[".$quote."='$2']\n", $message);
+               $message = savereplace('/Am (.*?) schrieb (.*?)\n(.*?):\s*\['.$quote.'\]/i', "[".$quote."='$2']\n", $message);
+
+               $message = savereplace('/(\d+)\/(\d+)\/(\d+) ([^<"].*?) <(.*?)>\s*\['.$quote.'\]/i', "[".$quote."='$4']\n", $message);
+
+               $message = savereplace('/On .*?, \d+ .*? \d+ \d+:\d+:\d+ \+\d+\s(.*?)\s<(.*?)>\swrote:\s*\['.$quote.'\]/i', "[".$quote."='$1']\n", $message);
+
+               $message = savereplace('/On (.*?) at (.*?), (.*?)\s<(.*?)>\swrote:\s*\['.$quote.'\]/i', "[".$quote."='$3']\n", $message);
+               $message = savereplace('/On (.*?)\n([^<].*?)\s<(.*?)>\swrote:\s*\['.$quote.'\]/i', "[".$quote."='$2']\n", $message);
+               $message = savereplace('/On (.*?), (.*?), (.*?)\s<(.*?)>\swrote:\s*\['.$quote.'\]/i', "[".$quote."='$3']\n", $message);
+               $message = savereplace('/On ([^,].*?), (.*?)\swrote:\s*\['.$quote.'\]/i', "[".$quote."='$2']\n", $message);
+               $message = savereplace('/On (.*?), (.*?)\swrote\s*\['.$quote.'\]/i', "[".$quote."='$2']\n", $message);
+
+               // Der loescht manchmal den Body - was eigentlich unmoeglich ist
+               $message = savereplace('/On (.*?),(.*?),(.*?),(.*?), (.*?) wrote:\s*\['.$quote.'\]/i', "[".$quote."='$5']\n", $message);
+
+               $message = savereplace('/Zitat von ([^<].*?) <(.*?)>:\s*\['.$quote.'\]/i', "[".$quote."='$1']\n", $message);
+
+               $message = savereplace('/Quoting ([^<].*?) <(.*?)>:\s*\['.$quote.'\]/i', "[".$quote."='$1']\n", $message);
+
+               $message = savereplace('/From: "([^<"].*?)" <(.*?)>\s*\['.$quote.'\]/i', "[".$quote."='$1']\n", $message);
+               $message = savereplace('/From: <(.*?)>\s*\['.$quote.'\]/i', "[".$quote."='$1']\n", $message);
+
+               $message = savereplace('/Du \(([^)].*?)\) schreibst:\s*\['.$quote.'\]/i', "[".$quote."='$1']\n", $message);
+
+               $message = savereplace('/--- (.*?) <.*?> schrieb am (.*?):\s*\['.$quote.'\]/i', "[".$quote."='$1']\n", $message);
+               $message = savereplace('/--- (.*?) schrieb am (.*?):\s*\['.$quote.'\]/i', "[".$quote."='$1']\n", $message);
+
+               $message = savereplace('/\* (.*?) <(.*?)> hat geschrieben:\s*\['.$quote.'\]/i', "[".$quote."='$1']\n", $message);
+
+               $message = savereplace('/(.*?) <(.*?)> schrieb (.*?)\):\s*\['.$quote.'\]/i', "[".$quote."='$1']\n", $message);
+               $message = savereplace('/(.*?) <(.*?)> schrieb am (.*?) um (.*):\s*\['.$quote.'\]/i', "[".$quote."='$1']\n", $message);
+               $message = savereplace('/(.*?) schrieb am (.*?) um (.*):\s*\['.$quote.'\]/i', "[".$quote."='$1']\n", $message);
+               $message = savereplace('/(.*?) \((.*?)\) schrieb:\s*\['.$quote.'\]/i', "[".$quote."='$2']\n", $message);
+               $message = savereplace('/(.*?) schrieb:\s*\['.$quote.'\]/i', "[".$quote."='$1']\n", $message);
+
+               $message = savereplace('/(.*?) <(.*?)> writes:\s*\['.$quote.'\]/i', "[".$quote."='$1']\n", $message);
+               $message = savereplace('/(.*?) \((.*?)\) writes:\s*\['.$quote.'\]/i', "[".$quote."='$2']\n", $message);
+               $message = savereplace('/(.*?) writes:\s*\['.$quote.'\]/i', "[".$quote."='$1']\n", $message);
+
+               $message = savereplace('/\* (.*?) wrote:\s*\['.$quote.'\]/i', "[".$quote."='$1']\n", $message);
+               $message = savereplace('/(.*?) wrote \(.*?\):\s*\['.$quote.'\]/i', "[".$quote."='$1']\n", $message);
+               $message = savereplace('/(.*?) wrote:\s*\['.$quote.'\]/i', "[".$quote."='$1']\n", $message);
+
+               $message = savereplace('/([^<].*?) <.*?> hat am (.*?)\sum\s(.*)\sgeschrieben:\s*\['.$quote.'\]/i', "[".$quote."='$1']\n", $message);
+
+               $message = savereplace('/(\d+)\/(\d+)\/(\d+) ([^<"].*?) <(.*?)>:\s*\['.$quote.'\]/i', "[".$quote."='$4']\n", $message);
+               $message = savereplace('/(\d+)\/(\d+)\/(\d+) (.*?) <(.*?)>\s*\['.$quote.'\]/i', "[".$quote."='$4']\n", $message);
+               $message = savereplace('/(\d+)\/(\d+)\/(\d+) <(.*?)>:\s*\['.$quote.'\]/i', "[".$quote."='$4']\n", $message);
+               $message = savereplace('/(\d+)\/(\d+)\/(\d+) <(.*?)>\s*\['.$quote.'\]/i', "[".$quote."='$4']\n", $message);
+
+               $message = savereplace('/(.*?) <(.*?)> schrubselte:\s*\['.$quote.'\]/i', "[".$quote."='$1']\n", $message);
+               $message = savereplace('/(.*?) \((.*?)\) schrubselte:\s*\['.$quote.'\]/i', "[".$quote."='$2']\n", $message);
+
+       }
+       return($message);
+}
+
+function removegpg($message)
+{
+
+       $pattern = '/(.*)\s*-----BEGIN PGP SIGNED MESSAGE-----\s*[\r\n].*Hash:.*?[\r\n](.*)'.
+               '[\r\n]\s*-----BEGIN PGP SIGNATURE-----\s*[\r\n].*'.
+               '[\r\n]\s*-----END PGP SIGNATURE-----(.*)/is';
+
+       preg_match($pattern, $message, $result);
+
+       $cleaned = trim($result[1].$result[2].$result[3]);
+
+       $cleaned = str_replace(array("\n- --\n", "\n- -"), array("\n-- \n", "\n-"), $cleaned);
+
+
+       if ($cleaned == '')
+               $cleaned = $message;
+
+       return($cleaned);
+}
+
+function removesig($message)
+{
+       $sigpos = strrpos($message, "\n-- \n");
+       $quotepos = strrpos($message, "[/quote]");
+
+       if ($sigpos == 0) {
+               // Speziell fuer web.de, die das als Trenner verwenden
+               $message = str_replace("\n___________________________________________________________\n", "\n-- \n", $message);
+               $sigpos = strrpos($message, "\n-- \n");
+               $quotepos = strrpos($message, "[/quote]");
+       }
+
+       // Sollte sich der Signaturtrenner innerhalb eines Quotes befinden
+       // wird keine Signaturtrennung ausgefuehrt
+       if (($sigpos < $quotepos) and ($sigpos != 0))
+               return(array('body' => $message, 'sig' => ''));
+
+       // To-Do: Regexp umstellen, so dass auf 1 oder kein Leerzeichen
+       // geprueft wird
+       //$message = str_replace("\n--\n", "\n-- \n", $message);
+
+       $pattern = '/(.*)[\r\n]-- [\r\n](.*)/is';
+
+       preg_match($pattern, $message, $result);
+
+       if (($result[1] != '') and ($result[2] != '')) {
+               $cleaned = trim($result[1])."\n";
+               $sig = trim($result[2]);
+               //      '[hr][size=x-small][color=darkblue]'.trim($result[2]).'[/color][/size]';
+       } else {
+               $cleaned = $message;
+               $sig = '';
+       }
+
+       return(array('body' => $cleaned, 'sig' => $sig));
+}
+
+function removelinebreak($message)
+{
+       $arrbody = explode("\n", trim($message));
+
+       $lines = array();
+       $lineno = 0;
+
+       foreach($arrbody as $i => $line) {
+               $currquotelevel = 0;
+               $currline = $line;
+               while ((strlen($currline)>0) and ((substr($currline, 0, 1) == '>')
+                       or (substr($currline, 0, 1) == ' '))) {
+                       if (substr($currline, 0, 1) == '>')
+                               $currquotelevel++;
+
+                       $currline = ltrim(substr($currline, 1));
+               }
+
+               $quotelevel = 0;
+               $nextline = trim($arrbody[$i+1]);
+               while ((strlen($nextline)>0) and ((substr($nextline, 0, 1) == '>')
+                       or (substr($nextline, 0, 1) == ' '))) {
+                       if (substr($nextline, 0, 1) == '>')
+                               $quotelevel++;
+
+                       $nextline = ltrim(substr($nextline, 1));
+               }
+
+               $len = strlen($line);
+               $firstword = strpos($nextline.' ', ' ');
+
+               $specialchars = ((substr(trim($nextline), 0, 1) == '-') or
+                               (substr(trim($nextline), 0, 1) == '=') or
+                               (substr(trim($nextline), 0, 1) == '*') or
+                               (substr(trim($nextline), 0, 1) == 'ยท') or
+                               (substr(trim($nextline), 0, 4) == '[url') or
+                               (substr(trim($nextline), 0, 5) == '[size') or
+                               (substr(trim($nextline), 0, 7) == 'http://') or
+                               (substr(trim($nextline), 0, 8) == 'https://'));
+
+               if (!$specialchars) 
+                       $specialchars = ((substr(rtrim($line), -1) == '-') or
+                                       (substr(rtrim($line), -1) == '=') or
+                                       (substr(rtrim($line), -1) == '*') or
+                                       (substr(rtrim($line), -1) == 'ยท') or
+                                       (substr(rtrim($line), -6) == '[/url]') or
+                                       (substr(rtrim($line), -7) == '[/size]'));
+
+               //if ($specialchars)
+               //      echo ("Special\n");
+
+               if ($lines[$lineno] != '') {
+                       if (substr($lines[$lineno], -1) != ' ')
+                       $lines[$lineno] .= ' ';
+
+                       while ((strlen($line)>0) and ((substr($line, 0, 1) == '>')
+                       or (substr($line, 0, 1) == ' '))) {
+
+                               $line = ltrim(substr($line, 1));
+                       }
+
+               }
+               //else
+               //      $lines[$lineno] = $quotelevel.'-'.$len.'-'.$firstword.'-';
+
+               $lines[$lineno] .= $line;
+               //if ((($len + $firstword < 68) and (substr($line, -1, 1) != ' '))
+               //      or ($quotelevel != $currquotelevel) or $specialchars)
+               if (((substr($line, -1, 1) != ' '))
+                       or ($quotelevel != $currquotelevel))
+                       $lineno++;
+       }
+       return(implode("\n", $lines));
+
+}
+?>
index 5b23406fce629b514e472a5526ab8c2d70856de5..07edc70465a07b7dfb3f828b62b8d7a54e01ec75 100755 (executable)
@@ -648,38 +648,23 @@ function notifier_run($argv, $argc){
                                                        $headers .= 'Reply-to: ' . $reply_to . "\n";
 
                                                // for testing purposes: Collect exported mails
-                                               $file = tempnam("/tmp/friendica/", "mail-out2-");
-                                               file_put_contents($file, json_encode($it));
+                                               //$file = tempnam("/tmp/friendica/", "mail-out2-");
+                                               //file_put_contents($file, json_encode($it));
 
                                                $headers .= 'Message-Id: <' . iri2msgid($it['uri']) . '>' . "\n";
 
                                                if($it['uri'] !== $it['parent-uri']) {
                                                        $headers .= 'References: <' . iri2msgid($it['parent-uri']) . '>' . "\n";
-                                                       if(! strlen($it['title'])) {
+                                                       if(!strlen($it['title'])) {
                                                                $r = q("SELECT `title` FROM `item` WHERE `parent-uri` = '%s' LIMIT 1",
-                                                                       dbesc($it['parent-uri'])
-                                                               );
-                                                               if(count($r)) {
-                                                                       $subtitle = $r[0]['title'];
-                                                                       if($subtitle) {
-                                                                               if(strncasecmp($subtitle,'RE:',3))
-                                                                                       $subject = $subtitle;
-                                                                               else
-                                                                                       $subject = 'Re: ' . $subtitle;
-                                                                       }
-                                                               }
+                                                                       dbesc($it['parent-uri']));
+
+                                                               if(count($r) AND ($r[0]['title'] != ''))  
+                                                                       $subject = $r[0]['title'];
                                                        }
+                                                       if(strncasecmp($subject,'RE:',3))
+                                                               $subject = 'Re: '.$subject;
                                                }
-
-                                               /*$headers .= 'MIME-Version: 1.0' . "\n";
-                                               //$headers .= 'Content-Type: text/html; charset=UTF-8' . "\n";
-                                               $headers .= 'Content-Type: text/plain; charset=UTF-8' . "\n";
-                                               $headers .= 'Content-Transfer-Encoding: 8bit' . "\n\n";
-                                               $html    = prepare_body($it);
-                                               //$message = '<html><body>' . $html . '</body></html>';
-                                               $message = html2plain($html);
-                                               logger('notifier: email delivery to ' . $addr);
-                                               mail($addr, $subject, $message, $headers);*/
                                                email_send($addr, $subject, $headers, $it);
                                        }
                                        break;
index cfbc46b87e9d08c5ee5728caa8099ee7a52763ee..3bc98e36ff2f479ca53dec54eefd63186381f357 100755 (executable)
@@ -1,7 +1,6 @@
 <?php
 
 require_once("boot.php");
-require_once("include/quoteconvert.php");
 
 
 function poller_run($argv, $argc){
@@ -70,6 +69,19 @@ function poller_run($argv, $argc){
        // clear old cache
        Cache::clear();
 
+       // clear item cache files if they are older than one day
+       $cache = get_config('system','itemcache');
+       if (($cache != '') and is_dir($cache)) {
+               if ($dh = opendir($cache)) {
+                       while (($file = readdir($dh)) !== false) {
+                               $fullpath = $cache."/".$file;
+                               if ((filetype($fullpath) == "file") and filectime($fullpath) < (time() - 86400))
+                                       unlink($fullpath);
+                       }
+                       closedir($dh);
+               }
+       }
+
        $manual_id  = 0;
        $generation = 0;
        $hub_update = false;
@@ -141,7 +153,10 @@ function poller_run($argv, $argc){
                        if($manual_id)
                                $contact['last-update'] = '0000-00-00 00:00:00';
 
-                       if($contact['network'] === NETWORK_DFRN || $contact['network'] === NETWORK_OSTATUS)
+                       if($contact['network'] === NETWORK_DFRN)
+                               $contact['priority'] = 2;
+
+                       if(!get_config('system','ostatus_use_priority') and ($contact['network'] === NETWORK_OSTATUS))
                                $contact['priority'] = 2;
 
                        if($contact['priority'] || $contact['subhub']) {
@@ -494,7 +509,7 @@ function poller_run($argv, $argc){
                                                                logger("Mail: can't fetch msg ".$msg_uid);
                                                                continue;
                                                        }
-                                                       $datarray['body'] = escape_tags(convertquote($r['body'], false));
+                                                       $datarray['body'] = escape_tags($r['body']);
 
                                                        logger("Mail: Importing ".$msg_uid);
 
index 199460d2cf12104841d27085a3d8db9a14c34559..d34fd7fbeec35bcacfb5a1bd2fa201a3e770d692 100644 (file)
@@ -877,14 +877,27 @@ function prepare_body($item,$attach = false) {
        $a = get_app();
        call_hooks('prepare_body_init', $item); 
 
-       $s = prepare_text($item['body']);
+       $cache = get_config('system','itemcache');
+
+       if (($cache != '')) {
+               $cachefile = $cache."/".$item["guid"]."-".strtotime($item["edited"])."-".hash("crc32", $item['body']);
+
+               if (file_exists($cachefile))
+                       $s = file_get_contents($cachefile);
+               else {
+                       $s = prepare_text($item['body']);
+                       file_put_contents($cachefile, $s);
+               }
+       } else
+               $s = prepare_text($item['body']);
 
        $prep_arr = array('item' => $item, 'html' => $s);
        call_hooks('prepare_body', $prep_arr);
        $s = $prep_arr['html'];
 
-       if(! $attach)
+       if(! $attach) {
                return $s;
+       }
 
        $arr = explode(',',$item['attach']);
        if(count($arr)) {
@@ -942,9 +955,9 @@ function prepare_body($item,$attach = false) {
                        $s .= '<div class="filesavetags"><span>' . t('Filed under:') . ' </span>' . $x . '</div>'; 
        }
 
-
        $prep_arr = array('item' => $item, 'html' => $s);
        call_hooks('prepare_body_final', $prep_arr);
+
        return $prep_arr['html'];
 }}
 
index 437f323faa568b2f183cd69fa5ad089acab49cfc..b7568631ff057c6f5af95c72503e8e609879d0ff 100644 (file)
@@ -485,6 +485,9 @@ code {
 #sidebar-group-list .tool:hover {
        background: #EEE;
 }
+#sidebar-pages-list .tool:hover {
+       background: #EEE;
+}
 .tool .label {
   float: left;
 }
@@ -1334,14 +1337,14 @@ body .pageheader{
 }
 .tag {
   /*background: url("../../../images/tag_b.png") repeat-x center left;*/
-  color: #3465A4;
+  color: #999;
   padding-left: 3px;
   font-size: 12px;
 }
 .tag a {
   padding-right: 5px;
   /*background: url("../../../images/tag.png") no-repeat center right;*/
-  color: #3465A4;
+  color: #999;
 }
 .wwto {
   position: absolute !important;
index ebe40fd4ea095f2e0b20cab4bdd4109d4f525d0b..321bbbe9ea6d6e169b30b10590846bc3274ef6e7 100644 (file)
@@ -13,7 +13,8 @@
                                <a href="$item.profile_url" target="redir" title="$item.linktitle" class="contact-photo-link" id="wall-item-photo-link-$item.id">
                                        <img src="$item.thumb" class="contact-photo$item.sparkle" id="wall-item-photo-$item.id" alt="$item.name" />
                                </a>
-                               <a href="#" rel="#wall-item-photo-menu-$item.id" class="contact-photo-menu-button icon s16 menu" id="wall-item-photo-menu-button-$item.id">menu</a>
+                               <a href="#" rel="#wall-item-photo-menu-$item.id" class="contact-photo-menu-button icon s16 menu" 
+id="wall-item-photo-menu-button-$item.id">menu</a>
                                <ul class="contact-menu menu-popup" id="wall-item-photo-menu-$item.id">
                                $item.item_photo_menu
                                </ul>
@@ -21,7 +22,8 @@
                        </div>
                </div>
                        <div class="wall-item-actions-author">
-                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-name-link"><span class="wall-item-name$item.sparkle">$item.name</span></a> 
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-name-link"><span 
+class="wall-item-name$item.sparkle">$item.name</span></a> 
                        <span class="wall-item-ago">-
                        {{ if $item.plink }}<a class="link" title="$item.plink.title" href="$item.plink.href" style="color: #999">$item.ago</a>{{ else }} $item.ago {{ endif }}
                        {{ if $item.lock }} - <span class="fakelink" style="color: #999" onclick="lockview(event,$item.id);">$item.lock</span> {{ endif }}
@@ -95,3 +97,4 @@
 <div class="wall-item-comment-wrapper" >
        $item.comment
 </div>
+
index e02e5a8becc6ca942cb40daaa9c46572cb562d66..05ed4cc82cc98721902fc982e18609cb333f6a33 100644 (file)
@@ -18,7 +18,8 @@
                                <a href="$item.profile_url" target="redir" title="$item.linktitle" class="contact-photo-link" id="wall-item-photo-link-$item.id">
                                        <img src="$item.thumb" class="contact-photo$item.sparkle" id="wall-item-photo-$item.id" alt="$item.name" />
                                </a>
-                               <a href="#" rel="#wall-item-photo-menu-$item.id" class="contact-photo-menu-button icon s16 menu" id="wall-item-photo-menu-button-$item.id">menu</a>
+                               <a href="#" rel="#wall-item-photo-menu-$item.id" class="contact-photo-menu-button icon s16 menu" 
+id="wall-item-photo-menu-button-$item.id">menu</a>
                                <ul class="contact-menu menu-popup" id="wall-item-photo-menu-$item.id">
                                $item.item_photo_menu
                                </ul>
                        </div>
                </div>
                        <div class="wall-item-actions-author">
-                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-name-link"><span class="wall-item-name$item.sparkle">$item.name</span></a>
-                               $item.to <a href="$item.owner_url" target="redir" title="$item.olinktitle" class="wall-item-name-link"><span class="wall-item-name$item.osparkle" id="wall-item-ownername-$item.id">$item.owner_name</span></a>
+                               <a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-name-link"><span 
+class="wall-item-name$item.sparkle">$item.name</span></a>
+                               $item.to <a href="$item.owner_url" target="redir" title="$item.olinktitle" class="wall-item-name-link"><span class="wall-item-name$item.osparkle" 
+id="wall-item-ownername-$item.id">$item.owner_name</span></a>
                                 $item.vwall <span class="wall-item-ago">- &nbsp;
                        {{ if $item.plink }}<a class="link" title="$item.plink.title" href="$item.plink.href" style="color: #999">$item.ago</a>{{ else }} $item.ago {{ endif }}
                        {{ if $item.lock }} - <span class="fakelink" style="color: #999" onclick="lockview(event,$item.id);">$item.lock</span> {{ endif }}
 
 <div class="wall-item-comment-wrapper" >
        $item.comment
-</div>
\ No newline at end of file
+</div>