]> git.mxchange.org Git - friendica.git/commitdiff
Add some analysing stuff, rendered value is written now more often
authorMichael Vogel <icarus@dabo.de>
Thu, 14 Jan 2016 20:56:37 +0000 (21:56 +0100)
committerMichael Vogel <icarus@dabo.de>
Thu, 14 Jan 2016 20:56:37 +0000 (21:56 +0100)
boot.php
include/conversation.php
include/cron.php
include/diaspora.php
include/items.php
include/text.php
include/threads.php

index 7d8c7040de9a1cc67df908588177dc54870b55cb..ae98e9240997cc03a8b0043c91463b40f4760567 100644 (file)
--- a/boot.php
+++ b/boot.php
@@ -467,6 +467,7 @@ class App {
        public  $is_tablet;
        public  $is_friendica_app;
        public  $performance = array();
+       public  $callstack = array();
 
        public $nav_sel;
 
@@ -552,7 +553,15 @@ class App {
                $this->performance["rendering"] = 0;
                $this->performance["parser"] = 0;
                $this->performance["marktime"] = 0;
-               $this->performance["markstart"] = microtime(true);
+
+               $this->performance["file"] = 0;
+               $this->performance["file"] = 0;
+
+               $this->callstack["database"] = array();
+               $this->callstack["network"] = array();
+               $this->callstack["file"] = array();
+               $this->callstack["rendering"] = array();
+               $this->callstack["parser"] = array();
 
                $this->config = array();
                $this->page = array();
@@ -1016,6 +1025,23 @@ class App {
 
                $this->performance[$value] += (float)$duration;
                $this->performance["marktime"] += (float)$duration;
+
+               // Trace the different functions with their timestamps
+               $trace = debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS, 5);
+
+               array_shift($trace);
+
+               $function = array();
+               foreach ($trace AS $func)
+                       $function[] = $func["function"];
+
+               $function = implode(", ", $function);
+
+               //$last = array_pop($trace);
+               //$function = $last["function"];
+
+               $this->callstack[$value][$function] += (float)$duration;
+
        }
 
        function mark_timestamp($mark) {
index 7eae1e052e0523552f05f0f6ef64eec37215065a..d8c5e4461da9cdeb174d61cf03deda4740f826bf 100644 (file)
@@ -315,11 +315,11 @@ function localize_item(&$item){
        }
 
        // add zrl's to public images
-       $photo_pattern = "/\[url=(.*?)\/photos\/(.*?)\/image\/(.*?)\]\[img(.*?)\]h(.*?)\[\/img\]\[\/url\]/is";
-       if(preg_match($photo_pattern,$item['body'])) {
-               $photo_replace = '[url=' . zrl('$1' . '/photos/' . '$2' . '/image/' . '$3' ,true) . '][img' . '$4' . ']h' . '$5'  . '[/img][/url]';
-               $item['body'] = bb_tag_preg_replace($photo_pattern, $photo_replace, 'url', $item['body']);
-       }
+//     $photo_pattern = "/\[url=(.*?)\/photos\/(.*?)\/image\/(.*?)\]\[img(.*?)\]h(.*?)\[\/img\]\[\/url\]/is";
+//     if(preg_match($photo_pattern,$item['body'])) {
+//             $photo_replace = '[url=' . zrl('$1' . '/photos/' . '$2' . '/image/' . '$3' ,true) . '][img' . '$4' . ']h' . '$5'  . '[/img][/url]';
+//             $item['body'] = bb_tag_preg_replace($photo_pattern, $photo_replace, 'url', $item['body']);
+//     }
 
        // add sparkle links to appropriate permalinks
 
index 09d141702ec53a0f7d4d53e816f8c80359e7317b..ed7edc6994434343e0ee41ea549bb592789bd3eb 100644 (file)
@@ -230,7 +230,7 @@ function cron_run(&$argv, &$argc){
 
        // Repair missing Diaspora settings
        $r = q("SELECT `id`, `url` FROM `contact`
-               WHERE `uid` > 0 AND `network` = '%s' AND (`batch` = '' OR `notify` = '' OR `poll` = '' OR pubkey = '')
+               WHERE `network` = '%s' AND (`batch` = '' OR `notify` = '' OR `poll` = '' OR pubkey = '')
                        ORDER BY RAND() LIMIT 50", dbesc(NETWORK_DIASPORA));
        if ($r) {
                foreach ($r AS $contact) {
index 1cf8897af9ea734c922eff3d8a86fea0601fb476..f03486fc211b0398bdb5f4c19614eda3a8a386d3 100644 (file)
@@ -1973,11 +1973,15 @@ function diaspora_photo($importer,$xml,$msg,$attempt=1) {
                                           array($remote_photo_name, 'scaled_full_' . $remote_photo_name));
 
        if(strpos($parent_item['body'],$link_text) === false) {
+
+               $parent_item['body'] = $link_text . $parent_item['body'];
+
                $r = q("UPDATE `item` SET `body` = '%s', `visible` = 1 WHERE `id` = %d AND `uid` = %d",
-                       dbesc($link_text . $parent_item['body']),
+                       dbesc($parent_item['body']),
                        intval($parent_item['id']),
                        intval($parent_item['uid'])
                );
+               put_item_in_cache($parent_item, true);
                update_thread($parent_item['id']);
        }
 
index 549027671d5e11c827c81ca43454a23acd0ee95f..62526d44865dc3fd455d8bdb83c29ba1cdb7d733 100644 (file)
@@ -955,8 +955,9 @@ function add_page_info_data($data) {
                $a = get_app();
                $hashtags = "\n";
                foreach ($data["keywords"] AS $keyword) {
-                       $hashtag = str_replace(array(" ", "+", "/", ".", "#", "'"),
-                                               array("","", "", "", "", ""), $keyword);
+                       /// @todo make a positive list of allowed characters
+                       $hashtag = str_replace(array(" ", "+", "/", ".", "#", "'", "’", "`", "(", ")", "„", "“"),
+                                               array("","", "", "", "", "", "", "", "", "", "", ""), $keyword);
                        $hashtags .= "#[url=".$a->get_baseurl()."/search?tag=".rawurlencode($hashtag)."]".$hashtag."[/url] ";
                }
        }
index 1b03c39d26775b08fc4c30231bbab7bb956c7d59..3f4fe07d6981ae4c279547f0ce891fc13c50722e 100644 (file)
@@ -20,10 +20,10 @@ function replace_macros($s,$r) {
        $stamp1 = microtime(true);
 
        $a = get_app();
-       
+
        // pass $baseurl to all templates
        $r['$baseurl'] = z_root();
-       
+
 
        $t = $a->template_engine();
        try {
@@ -1415,9 +1415,13 @@ function prepare_body(&$item,$attach = false, $preview = false) {
        $item['hashtags'] = $hashtags;
        $item['mentions'] = $mentions;
 
+       $test = $item["rendered-html"];
        put_item_in_cache($item, true);
        $s = $item["rendered-html"];
 
+       //if ($test != $s)
+       //      $s .= "<hr>*********************************<hr>".$test;
+
        $prep_arr = array('item' => $item, 'html' => $s, 'preview' => $preview);
        call_hooks('prepare_body', $prep_arr);
        $s = $prep_arr['html'];
index dddcc4cdd311df4a328322fb72bbae6959d08eca..e542295d7b46e31bfeb2a067b9772633934b550a 100644 (file)
@@ -112,7 +112,7 @@ function update_thread_uri($itemuri, $uid) {
 
 function update_thread($itemid, $setmention = false) {
        $items = q("SELECT `uid`, `guid`, `title`, `body`, `created`, `edited`, `commented`, `received`, `changed`, `wall`, `private`, `pubmail`, `moderated`, `visible`, `spam`, `starred`, `bookmark`, `contact-id`, `gcontact-id`,
-                       `deleted`, `origin`, `forum_mode`, `network`  FROM `item` WHERE `id` = %d AND (`parent` = %d OR `parent` = 0) LIMIT 1", intval($itemid), intval($itemid));
+                       `deleted`, `origin`, `forum_mode`, `network`, `rendered-html`, `rendered-hash` FROM `item` WHERE `id` = %d AND (`parent` = %d OR `parent` = 0) LIMIT 1", intval($itemid), intval($itemid));
 
        if (!$items)
                return;
@@ -125,7 +125,7 @@ function update_thread($itemid, $setmention = false) {
        $sql = "";
 
        foreach ($item AS $field => $data)
-               if (!in_array($field, array("guid", "title", "body"))) {
+               if (!in_array($field, array("guid", "title", "body", "rendered-html", "rendered-hash"))) {
                        if ($sql != "")
                                $sql .= ", ";
 
@@ -142,9 +142,11 @@ function update_thread($itemid, $setmention = false) {
        if (!$items)
                return;
 
-       $result = q("UPDATE `item` SET `title` = '%s', `body` = '%s' WHERE `id` = %d",
+       $result = q("UPDATE `item` SET `title` = '%s', `body` = '%s', `rendered-html` = '%s', `rendered-hash` = '%s' WHERE `id` = %d",
                        dbesc($item["title"]),
                        dbesc($item["body"]),
+                       dbesc($item["rendered-html"]),
+                       dbesc($item["rendered-hash"]),
                        intval($items[0]["id"])
                );
        logger("Updating public shadow for post ".$items[0]["id"]." - guid ".$item["guid"]." Result: ".print_r($result, true), LOGGER_DEBUG);