diff --git a/boot.php b/boot.php
index b0e77a71fb..da8ee8efa8 100644
--- a/boot.php
+++ b/boot.php
@@ -418,6 +418,8 @@ if(! class_exists('App')) {
$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();
@@ -726,12 +728,17 @@ if(! class_exists('App')) {
return $this->rdelim[$engine];
}
- function save_timestamp($stamp1, $value) {
- $stamp2 = microtime(true);
- $duration = (float)($stamp2-$stamp1);
+ 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"];
+ }
}
}
diff --git a/include/conversation.php b/include/conversation.php
index cc66d380b7..306799c52c 100644
--- a/include/conversation.php
+++ b/include/conversation.php
@@ -368,7 +368,6 @@ function visible_activity($item) {
if(!function_exists('conversation')) {
function conversation(&$a, $items, $mode, $update, $preview = false) {
-
require_once('include/bbcode.php');
$ssl_state = ((local_user()) ? true : false);
diff --git a/include/plugin.php b/include/plugin.php
index a6928793d4..7a4a96670d 100644
--- a/include/plugin.php
+++ b/include/plugin.php
@@ -8,7 +8,7 @@ function uninstall_plugin($plugin){
q("DELETE FROM `addon` WHERE `name` = '%s' ",
dbesc($plugin)
);
-
+
@include_once('addon/' . $plugin . '/' . $plugin . '.php');
if(function_exists($plugin . '_uninstall')) {
$func = $plugin . '_uninstall';
@@ -28,9 +28,9 @@ function install_plugin($plugin) {
if(function_exists($plugin . '_install')) {
$func = $plugin . '_install';
$func();
-
+
$plugin_admin = (function_exists($plugin."_plugin_admin")?1:0);
-
+
$r = q("INSERT INTO `addon` (`name`, `installed`, `timestamp`, `plugin_admin`) VALUES ( '%s', 1, %d , %d ) ",
dbesc($plugin),
intval($t),
@@ -195,6 +195,9 @@ function call_hooks($name, &$data = null) {
if (! function_exists('get_plugin_info')){
function get_plugin_info($plugin){
+
+ $a = get_app();
+
$info=Array(
'name' => $plugin,
'description' => "",
@@ -229,10 +232,10 @@ function get_plugin_info($plugin){
$info[$k]=$v;
}
}
-
+
}
}
-
+
}
return $info;
}}
@@ -241,7 +244,7 @@ function get_plugin_info($plugin){
/*
* parse theme comment in search of theme infos.
* like
- *
+ *
* * Name: My Theme
* * Description: My Cool Theme
* * Version: 1.2.3
@@ -270,6 +273,7 @@ function get_theme_info($theme){
if (!is_file("view/theme/$theme/theme.php")) return $info;
+ $a = get_app();
$stamp1 = microtime(true);
$f = file_get_contents("view/theme/$theme/theme.php");
$a->save_timestamp($stamp1, "file");
diff --git a/include/text.php b/include/text.php
index 83639ce85c..9ff5c79077 100644
--- a/include/text.php
+++ b/include/text.php
@@ -39,9 +39,7 @@ function replace_macros($s,$r) {
$output = template_unescape($r);
}
$a = get_app();
- $stamp2 = microtime(true);
- $duration = (float)($stamp2-$stamp1);
- $a->performance["rendering"] += (float)$duration;
+ $a->save_timestamp($stamp1, "rendering");
return $output;
}}
diff --git a/index.php b/index.php
index 0ea09c0c7a..49e6fccb05 100644
--- a/index.php
+++ b/index.php
@@ -33,7 +33,7 @@ $install = ((file_exists('.htconfig.php') && filesize('.htconfig.php')) ? false
$lang = get_browser_language();
-
+
load_translation_table($lang);
/**
diff --git a/mod/admin.php b/mod/admin.php
index 89363541ca..dd9ff84512 100644
--- a/mod/admin.php
+++ b/mod/admin.php
@@ -20,7 +20,7 @@ function admin_post(&$a){
if(x($_SESSION,'submanage') && intval($_SESSION['submanage']))
return;
-
+
// urls
@@ -54,7 +54,7 @@ function admin_post(&$a){
}
info(t('Theme settings updated.'));
if(is_ajax()) return;
-
+
goaway($a->get_baseurl(true) . '/admin/themes/' . $theme );
return;
break;
@@ -100,9 +100,9 @@ function admin_content(&$a) {
'dbsync' => Array($a->get_baseurl(true)."/admin/dbsync/", t('DB updates'), "dbsync"),
//'update' => Array($a->get_baseurl(true)."/admin/update/", t("Software Update") , "update")
);
-
+
/* get plugins admin page */
-
+
$r = q("SELECT * FROM `addon` WHERE `plugin_admin`=1");
$aside['plugins_admin']=Array();
foreach ($r as $h){
@@ -111,7 +111,7 @@ function admin_content(&$a) {
// temp plugins with admin
$a->plugins_admin[] = $plugin;
}
-
+
$aside['logs'] = Array($a->get_baseurl(true)."/admin/logs/", t("Logs"), "logs");
$t = get_markup_template("admin_aside.tpl");
@@ -130,7 +130,6 @@ function admin_content(&$a) {
* Page content
*/
$o = '';
-
// urls
if ($a->argc > 1){
switch ($a->argv[1]){
@@ -161,7 +160,7 @@ function admin_content(&$a) {
} else {
$o = admin_page_summary($a);
}
-
+
if(is_ajax()) {
echo $o;
killme();
@@ -431,14 +430,14 @@ function admin_page_site(&$a) {
}
}
}
-
-
+
+
/* Banner */
$banner = get_config('system','banner');
if($banner == false)
$banner = 'Friendica';
$banner = htmlspecialchars($banner);
-
+
//echo "
"; var_dump($lang_choices); die(""); /* Register policy */ @@ -763,7 +762,7 @@ function admin_page_users(&$a){ * @return string */ function admin_page_plugins(&$a){ - + /** * Single plugin */ @@ -773,9 +772,9 @@ function admin_page_plugins(&$a){ notice( t("Item not found.") ); return ''; } - + if (x($_GET,"a") && $_GET['a']=="t"){ - check_form_security_token_redirectOnErr('/admin/plugins', 'admin_themes', 't'); + check_form_security_token_redirectOnErr('/admin/plugins', 'admin_themes', 't'); // Toggle plugin status $idx = array_search($plugin, $a->plugins); @@ -800,52 +799,53 @@ function admin_page_plugins(&$a){ } else { $status="off"; $action= t("Enable"); } - + $readme=Null; if (is_file("addon/$plugin/README.md")){ $readme = file_get_contents("addon/$plugin/README.md"); $readme = Markdown($readme); } else if (is_file("addon/$plugin/README")){ $readme = "
". file_get_contents("addon/$plugin/README") .""; - } - + } + $admin_form=""; if (is_array($a->plugins_admin) && in_array($plugin, $a->plugins_admin)){ @require_once("addon/$plugin/$plugin.php"); $func = $plugin.'_plugin_admin'; $func($a, $admin_form); } - + $t = get_markup_template("admin_plugins_details.tpl"); + return replace_macros($t, array( '$title' => t('Administration'), '$page' => t('Plugins'), '$toggle' => t('Toggle'), '$settings' => t('Settings'), '$baseurl' => $a->get_baseurl(true), - + '$plugin' => $plugin, '$status' => $status, '$action' => $action, '$info' => get_plugin_info($plugin), '$str_author' => t('Author: '), - '$str_maintainer' => t('Maintainer: '), - + '$str_maintainer' => t('Maintainer: '), + '$admin_form' => $admin_form, '$function' => 'plugins', '$screenshot' => '', '$readme' => $readme, - '$form_security_token' => get_form_security_token("admin_themes"), + '$form_security_token' => get_form_security_token("admin_themes"), )); - } - - - + } + + + /** * List plugins */ - + $plugins = array(); $files = glob("addon/*/"); if($files) { @@ -857,7 +857,7 @@ function admin_page_plugins(&$a){ } } } - + $t = get_markup_template("admin_plugins.tpl"); return replace_macros($t, array( '$title' => t('Administration'), @@ -928,7 +928,7 @@ function rebuild_theme_table($themes) { return $o; } - + /** * Themes admin page * @@ -936,7 +936,7 @@ function rebuild_theme_table($themes) { * @return string */ function admin_page_themes(&$a){ - + $allowed_themes_str = get_config('system','allowed_themes'); $allowed_themes_raw = explode(',',$allowed_themes_str); $allowed_themes = array(); @@ -972,9 +972,9 @@ function admin_page_themes(&$a){ notice( t("Item not found.") ); return ''; } - + if (x($_GET,"a") && $_GET['a']=="t"){ - check_form_security_token_redirectOnErr('/admin/themes', 'admin_themes', 't'); + check_form_security_token_redirectOnErr('/admin/themes', 'admin_themes', 't'); // Toggle theme status @@ -998,28 +998,27 @@ function admin_page_themes(&$a){ } else { $status="off"; $action= t("Enable"); } - + $readme=Null; if (is_file("view/theme/$theme/README.md")){ $readme = file_get_contents("view/theme/$theme/README.md"); $readme = Markdown($readme); } else if (is_file("view/theme/$theme/README")){ $readme = "
". file_get_contents("view/theme/$theme/README") .""; - } - + } + $admin_form=""; if (is_file("view/theme/$theme/config.php")){ require_once("view/theme/$theme/config.php"); if(function_exists("theme_admin")){ $admin_form = theme_admin($a); } - + } - $screenshot = array( get_theme_screenshot($theme), t('Screenshot')); if(! stristr($screenshot[0],$theme)) - $screenshot = null; + $screenshot = null; $t = get_markup_template("admin_plugins_details.tpl"); return replace_macros($t, array( @@ -1028,7 +1027,7 @@ function admin_page_themes(&$a){ '$toggle' => t('Toggle'), '$settings' => t('Settings'), '$baseurl' => $a->get_baseurl(true), - + '$plugin' => $theme, '$status' => $status, '$action' => $action, @@ -1042,21 +1041,19 @@ function admin_page_themes(&$a){ '$form_security_token' => get_form_security_token("admin_themes"), )); - } - - - + } + /** * List themes */ - + $xthemes = array(); if($themes) { foreach($themes as $th) { $xthemes[] = array($th['name'],(($th['allowed']) ? "on" : "off"), get_theme_info($th['name'])); } } - + $t = get_markup_template("admin_plugins.tpl"); return replace_macros($t, array( '$title' => t('Administration'), diff --git a/mod/network.php b/mod/network.php index 872c34da95..9909cd4451 100644 --- a/mod/network.php +++ b/mod/network.php @@ -321,7 +321,7 @@ function network_query_get_sel_net() { if(x($_GET,'nets')) { $network = $_GET['nets']; } - + return $network; } @@ -382,14 +382,14 @@ function network_content(&$a, $update = 0) { // item filter tabs // TODO: fix this logic, reduce duplication //$a->page['content'] .= '
"; var_dump($no_active, $all_active, $postord_active, $conv_active, $new_active, $starred_active, $bookmarked_active, $spam_active); killme(); $cmd = (($datequery) ? '' : $a->cmd); - $len_naked_cmd = strlen(str_replace('/new','',$cmd)); + $len_naked_cmd = strlen(str_replace('/new','',$cmd)); // tabs $tabs = array( @@ -435,10 +435,10 @@ function network_content(&$a, $update = 0) { // 'url'=>$a->get_baseurl(true) . '/network?f=&spam=1' // 'sel'=> $spam_active, // 'title' => t('Posts flagged as SPAM'), -// ), +// ), ); - + if(feature_enabled(local_user(),'personal_tab')) { $tabs[] = array( 'label' => t('Personal'), @@ -571,11 +571,11 @@ function network_content(&$a, $update = 0) { } - // We don't have to deal with ACL's on this page. You're looking at everything + // We don't have to deal with ACLs on this page. You're looking at everything // that belongs to you, hence you can see all of it. We will filter by group if // desired. - + $sql_options = (($star) ? " and starred = 1 " : ''); $sql_options .= (($bmark) ? " and bookmark = 1 " : ''); diff --git a/object/Conversation.php b/object/Conversation.php index 8b838f7d00..bd7a95cf2a 100644 --- a/object/Conversation.php +++ b/object/Conversation.php @@ -127,6 +127,7 @@ class Conversation extends BaseObject { * _ false on failure */ public function get_template_data($alike, $dlike) { + global $a; $result = array(); foreach($this->threads as $item) { @@ -140,6 +141,7 @@ class Conversation extends BaseObject { $result[] = $item_data; } + //$a->mark_timestamp(); return $result; }