]> git.mxchange.org Git - friendica.git/blobdiff - boot.php
API: beautify the output of repeated items
[friendica.git] / boot.php
index 61479bc93ef6b1417ab62785667c1598351a3392..fa968ce42e90e0aee973cdaefffcc843be15ab01 100644 (file)
--- a/boot.php
+++ b/boot.php
@@ -12,10 +12,9 @@ require_once('library/Mobile_Detect/Mobile_Detect.php');
 require_once('include/features.php');
 
 define ( 'FRIENDICA_PLATFORM',     'Friendica');
-define ( 'FRIENDICA_VERSION',      '3.1.1584' );
+define ( 'FRIENDICA_VERSION',      '3.1.1589' );
 define ( 'DFRN_PROTOCOL_VERSION',  '2.23'    );
-define ( 'DB_UPDATE_VERSION',      1158      );
-
+define ( 'DB_UPDATE_VERSION',      1159      );
 define ( 'EOL',                    "<br />\r\n"     );
 define ( 'ATOM_TIME',              'Y-m-d\TH:i:s\Z' );
 
@@ -204,10 +203,12 @@ define ( 'NOTIFY_SYSTEM',   0x8000 );
 
 define ( 'TERM_UNKNOWN',   0 );
 define ( 'TERM_HASHTAG',   1 );
-define ( 'TERM_MENTION',   2 );   
+define ( 'TERM_MENTION',   2 );
 define ( 'TERM_CATEGORY',  3 );
 define ( 'TERM_PCATEGORY', 4 );
 define ( 'TERM_FILE',      5 );
+define ( 'TERM_SAVEDSEARCH', 6 );
+define ( 'TERM_CONVERSATION', 7 );
 
 define ( 'TERM_OBJ_POST',  1 );
 define ( 'TERM_OBJ_PHOTO', 2 );
@@ -355,7 +356,8 @@ if(! class_exists('App')) {
                public  $identities;
                public  $is_mobile;
                public  $is_tablet;
-       
+               public  $performance = array();
+
                public $nav_sel;
 
                public $category;
@@ -403,7 +405,7 @@ if(! class_exists('App')) {
 
                private $cached_profile_image;
                private $cached_profile_picdate;
-                                                       
+
                function __construct() {
 
                        global $default_timezone, $argv, $argc;
@@ -412,6 +414,14 @@ if(! class_exists('App')) {
 
                        date_default_timezone_set($this->timezone);
 
+                       $this->performance["start"] = microtime(true);
+                       $this->performance["database"] = 0;
+                       $this->performance["network"] = 0;
+                       $this->performance["rendering"] = 0;
+                       $this->performance["parser"] = 0;
+                       $this->performance["marktime"] = 0;
+                       $this->performance["markstart"] = microtime(true);
+
                        $this->config = array();
                        $this->page = array();
                        $this->pager= array();
@@ -622,7 +632,6 @@ if(! class_exists('App')) {
                         */
                        if(!isset($this->page['htmlhead']))
                                $this->page['htmlhead'] = '';
-                       $tpl = get_markup_template('head.tpl');
 
                        // If we're using Smarty, then doing replace_macros() will replace
                        // any unrecognized variables with a blank string. Since we delay
@@ -633,6 +642,7 @@ if(! class_exists('App')) {
                        else
                                $stylesheet = '$stylesheet';
 
+                       $tpl = get_markup_template('head.tpl');
                        $this->page['htmlhead'] = replace_macros($tpl,array(
                                '$baseurl' => $this->get_baseurl(), // FIXME for z_path!!!!
                                '$local_user' => local_user(),
@@ -719,6 +729,17 @@ if(! class_exists('App')) {
                        return $this->rdelim[$engine];
                }
 
+               function save_timestamp($stamp, $value) {
+                       $duration = (float)(microtime(true)-$stamp);
+
+                       $this->performance[$value] += (float)$duration;
+                       $this->performance["marktime"] += (float)$duration;
+               }
+
+               function mark_timestamp($mark) {
+                       //$this->performance["markstart"] -= microtime(true) - $this->performance["marktime"];
+                       $this->performance["markstart"] = microtime(true) - $this->performance["markstart"] - $this->performance["marktime"];
+               }
        }
 }
 
@@ -806,16 +827,12 @@ function is_ajax() {
 
 // Primarily involved with database upgrade, but also sets the
 // base url for use in cmdline programs which don't have
-// $_SERVER variables, and synchronising the state of installed plugins.
+// $_SERVER variables
 
 
 if(! function_exists('check_config')) {
        function check_config(&$a) {
 
-               $build = get_config('system','build');
-               if(! x($build))
-                       $build = set_config('system','build',DB_UPDATE_VERSION);
-
                $url = get_config('system','url');
 
                // if the url isn't set or the stored url is radically different
@@ -830,6 +847,10 @@ if(! function_exists('check_config')) {
                        $url = set_config('system','url',$a->get_baseurl());
 
 
+               $build = get_config('system','build');
+               if(! x($build))
+                       $build = set_config('system','build',DB_UPDATE_VERSION);
+
                if($build != DB_UPDATE_VERSION) {
                        $stored = intval($build);
                        $current = intval(DB_UPDATE_VERSION);
@@ -898,6 +919,14 @@ if(! function_exists('check_config')) {
                        }
                }
 
+               return;
+       }
+}
+
+
+if(! function_exists('check_plugins')) {
+       function check_plugins(&$a) {
+
                /**
                 *
                 * Synchronise plugins:
@@ -1381,8 +1410,6 @@ if(! function_exists('profile_sidebar')) {
                }
 
 
-               $tpl = get_markup_template('profile_vcard.tpl');
-
                $p = array();
                foreach($profile as $k => $v) {
                        $k = str_replace('-','_',$k);
@@ -1392,6 +1419,7 @@ if(! function_exists('profile_sidebar')) {
                if($a->theme['template_engine'] === 'internal')
                        $location = template_escape($location);
 
+               $tpl = get_markup_template('profile_vcard.tpl');
                $o .= replace_macros($tpl, array(
                        '$profile' => $p,
                        '$connect'  => $connect,