define ( 'FRIENDICA_CODENAME', 'Asparagus');
define ( 'FRIENDICA_VERSION', '3.5-dev' );
define ( 'DFRN_PROTOCOL_VERSION', '2.23' );
-define ( 'DB_UPDATE_VERSION', 1191 );
+define ( 'DB_UPDATE_VERSION', 1194 );
/**
* @brief Constant with a HTML line break.
public $is_tablet;
public $is_friendica_app;
public $performance = array();
+ public $callstack = array();
public $nav_sel;
private $cached_profile_image;
private $cached_profile_picdate;
+ private static $a;
+
/**
* @brief App constructor.
*/
$this->performance["marktime"] = 0;
$this->performance["markstart"] = microtime(true);
+ $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();
$this->pager= array();
}
}
+ self::$a = $this;
+
}
function get_basepath() {
function get_baseurl($ssl = false) {
+ // Is the function called statically?
+ if (!is_object($this))
+ return(self::$a->get_baseurl($ssl));
+
$scheme = $this->scheme;
if((x($this->config,'system')) && (x($this->config['system'],'ssl_policy'))) {
}
function get_cached_avatar_image($avatar_image){
+ return $avatar_image;
+
+ // The following code is deactivated. It doesn't seem to make any sense and it slows down the system.
+ /*
if($this->cached_profile_image[$avatar_image])
return $this->cached_profile_image[$avatar_image];
}
}
return $this->cached_profile_image[$avatar_image];
+ */
}
$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);
+
+ $this->callstack[$value][$function] += (float)$duration;
+
}
function mark_timestamp($mark) {
return max($load_arr);
}
+
+/**
+ * @brief get c-style args
+ *
+ * @return int
+ */
+function argc() {
+ return get_app()->argc;
+}
+
+/**
+ * @brief Returns the value of a argv key
+ *
+ * @param int $x argv key
+ * @return string Value of the argv key
+ */
+function argv($x) {
+ if(array_key_exists($x,get_app()->argv))
+ return get_app()->argv[$x];
+
+ return '';
+}