added missing spaces/curly braces

Signed-off-by: Roland Häder <roland@mxchange.org>
This commit is contained in:
Roland Häder 2017-01-26 14:28:43 +01:00 committed by Roland Haeder
parent ddb5a8ea78
commit f173322539
No known key found for this signature in database
GPG key ID: B72F8185C6C7BD78
4 changed files with 317 additions and 237 deletions

310
boot.php
View file

@ -711,7 +711,6 @@ class App {
// fix query_string // fix query_string
$this->query_string = str_replace($this->cmd."&",$this->cmd."?", $this->query_string); $this->query_string = str_replace($this->cmd."&",$this->cmd."?", $this->query_string);
// unix style "homedir" // unix style "homedir"
if (substr($this->cmd,0,1) === '~') { if (substr($this->cmd,0,1) === '~') {
@ -745,8 +744,7 @@ class App {
if ((array_key_exists('0',$this->argv)) && strlen($this->argv[0])) { if ((array_key_exists('0',$this->argv)) && strlen($this->argv[0])) {
$this->module = str_replace(".", "_", $this->argv[0]); $this->module = str_replace(".", "_", $this->argv[0]);
$this->module = str_replace("-", "_", $this->module); $this->module = str_replace("-", "_", $this->module);
} } else {
else {
$this->argc = 1; $this->argc = 1;
$this->argv = array('home'); $this->argv = array('home');
$this->module = 'home'; $this->module = 'home';
@ -760,8 +758,9 @@ class App {
$this->pager['page'] = ((x($_GET,'page') && intval($_GET['page']) > 0) ? intval($_GET['page']) : 1); $this->pager['page'] = ((x($_GET,'page') && intval($_GET['page']) > 0) ? intval($_GET['page']) : 1);
$this->pager['itemspage'] = 50; $this->pager['itemspage'] = 50;
$this->pager['start'] = ($this->pager['page'] * $this->pager['itemspage']) - $this->pager['itemspage']; $this->pager['start'] = ($this->pager['page'] * $this->pager['itemspage']) - $this->pager['itemspage'];
if($this->pager['start'] < 0) if ($this->pager['start'] < 0) {
$this->pager['start'] = 0; $this->pager['start'] = 0;
}
$this->pager['total'] = 0; $this->pager['total'] = 0;
/* /*
@ -793,14 +792,17 @@ class App {
$basepath = get_config("system", "basepath"); $basepath = get_config("system", "basepath");
if ($basepath == "") if ($basepath == "") {
$basepath = dirname(__FILE__); $basepath = dirname(__FILE__);
}
if ($basepath == "") if ($basepath == "") {
$basepath = $_SERVER["DOCUMENT_ROOT"]; $basepath = $_SERVER["DOCUMENT_ROOT"];
}
if ($basepath == "") if ($basepath == "") {
$basepath = $_SERVER["PWD"]; $basepath = $_SERVER["PWD"];
}
return($basepath); return($basepath);
} }
@ -876,7 +878,7 @@ class App {
} }
if (file_exists(".htpreconfig.php")) { if (file_exists(".htpreconfig.php")) {
@include(".htpreconfig.php"); include(".htpreconfig.php");
} }
if (get_config('config', 'hostname') != '') { if (get_config('config', 'hostname') != '') {
@ -890,8 +892,9 @@ class App {
} }
function get_hostname() { function get_hostname() {
if (get_config('config','hostname') != "") if (get_config('config','hostname') != "") {
$this->hostname = get_config('config','hostname'); $this->hostname = get_config('config','hostname');
}
return $this->hostname; return $this->hostname;
} }
@ -926,16 +929,17 @@ class App {
$interval = ((local_user()) ? get_pconfig(local_user(),'system','update_interval') : 40000); $interval = ((local_user()) ? get_pconfig(local_user(),'system','update_interval') : 40000);
// If the update is "deactivated" set it to the highest integer number (~24 days) // If the update is "deactivated" set it to the highest integer number (~24 days)
if ($interval < 0) if ($interval < 0) {
$interval = 2147483647; $interval = 2147483647;
}
if($interval < 10000) if ($interval < 10000) {
$interval = 40000; $interval = 40000;
}
// compose the page title from the sitename and the // compose the page title from the sitename and the
// current module called // current module called
if (!$this->module=='') if (!$this->module=='') {
{
$this->page['title'] = $this->config['sitename'].' ('.$this->module.')'; $this->page['title'] = $this->config['sitename'].' ('.$this->module.')';
} else { } else {
$this->page['title'] = $this->config['sitename']; $this->page['title'] = $this->config['sitename'];
@ -945,25 +949,29 @@ class App {
* since the code added by the modules frequently depends on it * since the code added by the modules frequently depends on it
* being first * being first
*/ */
if(!isset($this->page['htmlhead'])) if (!isset($this->page['htmlhead'])) {
$this->page['htmlhead'] = ''; $this->page['htmlhead'] = '';
}
// If we're using Smarty, then doing replace_macros() will replace // If we're using Smarty, then doing replace_macros() will replace
// any unrecognized variables with a blank string. Since we delay // any unrecognized variables with a blank string. Since we delay
// replacing $stylesheet until later, we need to replace it now // replacing $stylesheet until later, we need to replace it now
// with another variable name // with another variable name
if($this->theme['template_engine'] === 'smarty3') if ($this->theme['template_engine'] === 'smarty3') {
$stylesheet = $this->get_template_ldelim('smarty3') . '$stylesheet' . $this->get_template_rdelim('smarty3'); $stylesheet = $this->get_template_ldelim('smarty3') . '$stylesheet' . $this->get_template_rdelim('smarty3');
else } else {
$stylesheet = '$stylesheet'; $stylesheet = '$stylesheet';
}
$shortcut_icon = get_config("system", "shortcut_icon"); $shortcut_icon = get_config("system", "shortcut_icon");
if ($shortcut_icon == "") if ($shortcut_icon == "") {
$shortcut_icon = "images/friendica-32.png"; $shortcut_icon = "images/friendica-32.png";
}
$touch_icon = get_config("system", "touch_icon"); $touch_icon = get_config("system", "touch_icon");
if ($touch_icon == "") if ($touch_icon == "") {
$touch_icon = "images/friendica-128.png"; $touch_icon = "images/friendica-128.png";
}
// get data wich is needed for infinite scroll on the network page // get data wich is needed for infinite scroll on the network page
$invinite_scroll = infinite_scroll_data($this->module); $invinite_scroll = infinite_scroll_data($this->module);
@ -985,8 +993,9 @@ class App {
} }
function init_page_end() { function init_page_end() {
if(!isset($this->page['end'])) if (!isset($this->page['end'])) {
$this->page['end'] = ''; $this->page['end'] = '';
}
$tpl = get_markup_template('end.tpl'); $tpl = get_markup_template('end.tpl');
$this->page['end'] = replace_macros($tpl,array( $this->page['end'] = replace_macros($tpl,array(
'$baseurl' => $this->get_baseurl() // FIXME for z_path!!!! '$baseurl' => $this->get_baseurl() // FIXME for z_path!!!!
@ -1159,8 +1168,9 @@ class App {
} }
function save_timestamp($stamp, $value) { function save_timestamp($stamp, $value) {
if (!isset($this->config['system']['profiler']) || !$this->config['system']['profiler']) if (!isset($this->config['system']['profiler']) || !$this->config['system']['profiler']) {
return; return;
}
$duration = (float)(microtime(true)-$stamp); $duration = (float)(microtime(true)-$stamp);
@ -1242,8 +1252,9 @@ class App {
array_shift($trace); array_shift($trace);
$callstack = array(); $callstack = array();
foreach ($trace AS $func) foreach ($trace AS $func) {
$callstack[] = $func["function"]; $callstack[] = $func["function"];
}
return implode(", ", $callstack); return implode(", ", $callstack);
} }
@ -1265,32 +1276,34 @@ class App {
* @return bool Is it a known backend? * @return bool Is it a known backend?
*/ */
function is_backend() { function is_backend() {
$backend = array(); static $backend = array(
$backend[] = "_well_known"; "_well_known",
$backend[] = "api"; "api",
$backend[] = "dfrn_notify"; "dfrn_notify",
$backend[] = "fetch"; "fetch",
$backend[] = "hcard"; "hcard",
$backend[] = "hostxrd"; "hostxrd",
$backend[] = "nodeinfo"; "nodeinfo",
$backend[] = "noscrape"; "noscrape",
$backend[] = "p"; "p",
$backend[] = "poco"; "poco",
$backend[] = "post"; "post",
$backend[] = "proxy"; "proxy",
$backend[] = "pubsub"; "pubsub",
$backend[] = "pubsubhubbub"; "pubsubhubbub",
$backend[] = "receive"; "receive",
$backend[] = "rsd_xml"; "rsd_xml",
$backend[] = "salmon"; "salmon",
$backend[] = "statistics_json"; "statistics_json",
$backend[] = "xrd"; "xrd",
);
if (in_array($this->module, $backend)) if (in_array($this->module, $backend)) {
return(true); return(true);
else } else {
return($this->backend); return($this->backend);
} }
}
/** /**
* @brief Checks if the maximum number of database processes is reached * @brief Checks if the maximum number of database processes is reached
@ -1302,14 +1315,16 @@ class App {
if ($this->is_backend()) { if ($this->is_backend()) {
$process = "backend"; $process = "backend";
$max_processes = get_config('system', 'max_processes_backend'); $max_processes = get_config('system', 'max_processes_backend');
if (intval($max_processes) == 0) if (intval($max_processes) == 0) {
$max_processes = 5; $max_processes = 5;
}
} else { } else {
$process = "frontend"; $process = "frontend";
$max_processes = get_config('system', 'max_processes_frontend'); $max_processes = get_config('system', 'max_processes_frontend');
if (intval($max_processes) == 0) if (intval($max_processes) == 0) {
$max_processes = 20; $max_processes = 20;
} }
}
$processlist = dbm::processlist(); $processlist = dbm::processlist();
if ($processlist["list"] != "") { if ($processlist["list"] != "") {
@ -1333,14 +1348,16 @@ class App {
if ($this->is_backend()) { if ($this->is_backend()) {
$process = "backend"; $process = "backend";
$maxsysload = intval(get_config('system', 'maxloadavg')); $maxsysload = intval(get_config('system', 'maxloadavg'));
if ($maxsysload < 1) if ($maxsysload < 1) {
$maxsysload = 50; $maxsysload = 50;
}
} else { } else {
$process = "frontend"; $process = "frontend";
$maxsysload = intval(get_config('system','maxloadavg_frontend')); $maxsysload = intval(get_config('system','maxloadavg_frontend'));
if ($maxsysload < 1) if ($maxsysload < 1) {
$maxsysload = 50; $maxsysload = 50;
} }
}
$load = current_load(); $load = current_load();
if ($load) { if ($load) {
@ -1362,6 +1379,7 @@ class App {
// This should prevent the forking of masses of workers. // This should prevent the forking of masses of workers.
$cachekey = "app:proc_run:started"; $cachekey = "app:proc_run:started";
$result = Cache::get($cachekey); $result = Cache::get($cachekey);
/// @TODO maybe merge these both into one if() ?
if (!is_null($result)) { if (!is_null($result)) {
if ((time() - $result) < 10) { if ((time() - $result) < 10) {
return; return;
@ -1375,16 +1393,17 @@ class App {
// add baseurl to args. cli scripts can't construct it // add baseurl to args. cli scripts can't construct it
$args[] = $this->get_baseurl(); $args[] = $this->get_baseurl();
for($x = 0; $x < count($args); $x ++) for ($x = 0; $x < count($args); $x ++) {
$args[$x] = escapeshellarg($args[$x]); $args[$x] = escapeshellarg($args[$x]);
}
$cmdline = implode($args," "); $cmdline = implode($args," ");
if(get_config('system','proc_windows')) if (get_config('system','proc_windows')) {
proc_close(proc_open('cmd /c start /b ' . $cmdline,array(),$foo,dirname(__FILE__))); proc_close(proc_open('cmd /c start /b ' . $cmdline,array(),$foo,dirname(__FILE__)));
else } else {
proc_close(proc_open($cmdline." &",array(),$foo,dirname(__FILE__))); proc_close(proc_open($cmdline." &",array(),$foo,dirname(__FILE__)));
}
} }
/** /**
@ -1463,13 +1482,13 @@ function get_app() {
function x($s,$k = NULL) { function x($s,$k = NULL) {
if ($k != NULL) { if ($k != NULL) {
if ((is_array($s)) && (array_key_exists($k,$s))) { if ((is_array($s)) && (array_key_exists($k,$s))) {
if($s[$k]) if ($s[$k]) {
return (int) 1; return (int) 1;
}
return (int) 0; return (int) 0;
} }
return false; return false;
} } else {
else {
if (isset($s)) { if (isset($s)) {
if ($s) { if ($s) {
return (int) 1; return (int) 1;
@ -1499,8 +1518,9 @@ function clean_urls() {
function z_path() { function z_path() {
$base = App::get_baseurl(); $base = App::get_baseurl();
if(! clean_urls()) if (! clean_urls()) {
$base .= '/?q='; $base .= '/?q=';
}
return $base; return $base;
} }
@ -1525,8 +1545,9 @@ function z_root() {
* @return string * @return string
*/ */
function absurl($path) { function absurl($path) {
if(strpos($path,'/') === 0) if (strpos($path,'/') === 0) {
return z_path() . $path; return z_path() . $path;
}
return $path; return $path;
} }
@ -1546,8 +1567,9 @@ function check_db() {
set_config('system','build',DB_UPDATE_VERSION); set_config('system','build',DB_UPDATE_VERSION);
$build = DB_UPDATE_VERSION; $build = DB_UPDATE_VERSION;
} }
if($build != DB_UPDATE_VERSION) if ($build != DB_UPDATE_VERSION) {
proc_run(PRIORITY_CRITICAL, 'include/dbupdate.php'); proc_run(PRIORITY_CRITICAL, 'include/dbupdate.php');
}
} }
@ -1566,10 +1588,12 @@ function check_url(App $a) {
// and www.example.com vs example.com. // and www.example.com vs example.com.
// We will only change the url to an ip address if there is no existing setting // We will only change the url to an ip address if there is no existing setting
if(! x($url)) if (! x($url)) {
$url = set_config('system','url',App::get_baseurl()); $url = set_config('system','url',App::get_baseurl());
if((! link_compare($url,App::get_baseurl())) && (! preg_match("/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/",$a->get_hostname))) }
if ((! link_compare($url,App::get_baseurl())) && (! preg_match("/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/",$a->get_hostname))) {
$url = set_config('system','url',App::get_baseurl()); $url = set_config('system','url',App::get_baseurl());
}
return; return;
} }
@ -1580,8 +1604,9 @@ function check_url(App $a) {
*/ */
function update_db(App $a) { function update_db(App $a) {
$build = get_config('system','build'); $build = get_config('system','build');
if(! x($build)) if (! x($build)) {
$build = set_config('system','build',DB_UPDATE_VERSION); $build = set_config('system','build',DB_UPDATE_VERSION);
}
if ($build != DB_UPDATE_VERSION) { if ($build != DB_UPDATE_VERSION) {
$stored = intval($build); $stored = intval($build);
@ -1600,8 +1625,9 @@ function update_db(App $a) {
// Compare the current structure with the defined structure // Compare the current structure with the defined structure
$t = get_config('database','dbupdate_'.DB_UPDATE_VERSION); $t = get_config('database','dbupdate_'.DB_UPDATE_VERSION);
if($t !== false) if ($t !== false) {
return; return;
}
set_config('database','dbupdate_'.DB_UPDATE_VERSION, time()); set_config('database','dbupdate_'.DB_UPDATE_VERSION, time());
@ -1609,10 +1635,13 @@ function update_db(App $a) {
// conflits with new routine) // conflits with new routine)
for ($x = $stored; $x < NEW_UPDATE_ROUTINE_VERSION; $x++) { for ($x = $stored; $x < NEW_UPDATE_ROUTINE_VERSION; $x++) {
$r = run_update_function($x); $r = run_update_function($x);
if (!$r) break; if (!$r) {
break;
}
}
if ($stored < NEW_UPDATE_ROUTINE_VERSION) {
$stored = NEW_UPDATE_ROUTINE_VERSION;
} }
if ($stored < NEW_UPDATE_ROUTINE_VERSION) $stored = NEW_UPDATE_ROUTINE_VERSION;
// run new update routine // run new update routine
// it update the structure in one call // it update the structure in one call
@ -1630,7 +1659,9 @@ function update_db(App $a) {
// run any left update_nnnn functions in update.php // run any left update_nnnn functions in update.php
for ($x = $stored; $x < $current; $x ++) { for ($x = $stored; $x < $current; $x ++) {
$r = run_update_function($x); $r = run_update_function($x);
if (!$r) break; if (!$r) {
break;
}
} }
} }
} }
@ -1651,8 +1682,9 @@ function run_update_function($x) {
// delete the config entry to try again. // delete the config entry to try again.
$t = get_config('database','update_' . $x); $t = get_config('database','update_' . $x);
if($t !== false) if ($t !== false) {
return false; return false;
}
set_config('database','update_' . $x, time()); set_config('database','update_' . $x, time());
// call the specific update // call the specific update
@ -1697,16 +1729,18 @@ function run_update_function($x) {
function check_plugins(App $a) { function check_plugins(App $a) {
$r = q("SELECT * FROM `addon` WHERE `installed` = 1"); $r = q("SELECT * FROM `addon` WHERE `installed` = 1");
if (dbm::is_result($r)) if (dbm::is_result($r)) {
$installed = $r; $installed = $r;
else } else {
$installed = array(); $installed = array();
}
$plugins = get_config('system','addon'); $plugins = get_config('system','addon');
$plugins_arr = array(); $plugins_arr = array();
if($plugins) if ($plugins) {
$plugins_arr = explode(',',str_replace(' ', '',$plugins)); $plugins_arr = explode(',',str_replace(' ', '',$plugins));
}
$a->plugins = $plugins_arr; $a->plugins = $plugins_arr;
@ -1716,8 +1750,7 @@ function check_plugins(App $a) {
foreach ($installed as $i) { foreach ($installed as $i) {
if (! in_array($i['name'],$plugins_arr)) { if (! in_array($i['name'],$plugins_arr)) {
uninstall_plugin($i['name']); uninstall_plugin($i['name']);
} } else {
else {
$installed_arr[] = $i['name']; $installed_arr[] = $i['name'];
} }
} }
@ -1787,8 +1820,7 @@ function login($register = false, $hiddens=false) {
if (local_user()) { if (local_user()) {
$tpl = get_markup_template("logout.tpl"); $tpl = get_markup_template("logout.tpl");
} } else {
else {
$a->page['htmlhead'] .= replace_macros(get_markup_template("login_head.tpl"),array( $a->page['htmlhead'] .= replace_macros(get_markup_template("login_head.tpl"),array(
'$baseurl' => $a->get_baseurl(true) '$baseurl' => $a->get_baseurl(true)
)); ));
@ -1836,8 +1868,9 @@ function login($register = false, $hiddens=false) {
*/ */
function killme() { function killme() {
if (!get_app()->is_backend()) if (!get_app()->is_backend()) {
session_write_close(); session_write_close();
}
exit; exit;
} }
@ -1846,8 +1879,9 @@ function killme() {
* @brief Redirect to another URL and terminate this process. * @brief Redirect to another URL and terminate this process.
*/ */
function goaway($s) { function goaway($s) {
if (!strstr(normalise_link($s), "http://")) if (!strstr(normalise_link($s), "http://")) {
$s = App::get_baseurl()."/".$s; $s = App::get_baseurl()."/".$s;
}
header("Location: $s"); header("Location: $s");
killme(); killme();
@ -1895,8 +1929,9 @@ function public_contact() {
* @return int|bool visitor_id or false * @return int|bool visitor_id or false
*/ */
function remote_user() { function remote_user() {
if((x($_SESSION,'authenticated')) && (x($_SESSION,'visitor_id'))) if ((x($_SESSION,'authenticated')) && (x($_SESSION,'visitor_id'))) {
return intval($_SESSION['visitor_id']); return intval($_SESSION['visitor_id']);
}
return false; return false;
} }
@ -1909,10 +1944,13 @@ function remote_user() {
*/ */
function notice($s) { function notice($s) {
$a = get_app(); $a = get_app();
if(! x($_SESSION,'sysmsg')) $_SESSION['sysmsg'] = array(); if (! x($_SESSION,'sysmsg')) {
if($a->interactive) $_SESSION['sysmsg'] = array();
}
if ($a->interactive) {
$_SESSION['sysmsg'][] = $s; $_SESSION['sysmsg'][] = $s;
} }
}
/** /**
* @brief Show an info message to user. * @brief Show an info message to user.
@ -1924,13 +1962,17 @@ function notice($s) {
function info($s) { function info($s) {
$a = get_app(); $a = get_app();
if (local_user() AND get_pconfig(local_user(),'system','ignore_info')) if (local_user() AND get_pconfig(local_user(),'system','ignore_info')) {
return; return;
}
if(! x($_SESSION,'sysmsg_info')) $_SESSION['sysmsg_info'] = array(); if (! x($_SESSION,'sysmsg_info')) {
if($a->interactive) $_SESSION['sysmsg_info'] = array();
}
if ($a->interactive) {
$_SESSION['sysmsg_info'][] = $s; $_SESSION['sysmsg_info'][] = $s;
} }
}
/** /**
@ -1991,8 +2033,9 @@ function proc_run($cmd){
$arr = array('args' => $args, 'run_cmd' => true); $arr = array('args' => $args, 'run_cmd' => true);
call_hooks("proc_run", $arr); call_hooks("proc_run", $arr);
if (!$arr['run_cmd'] OR !count($args)) if (!$arr['run_cmd'] OR !count($args)) {
return; return;
}
$priority = PRIORITY_MEDIUM; $priority = PRIORITY_MEDIUM;
$dont_fork = get_config("system", "worker_dont_fork"); $dont_fork = get_config("system", "worker_dont_fork");
@ -2015,12 +2058,13 @@ function proc_run($cmd){
$found = q("SELECT `id` FROM `workerqueue` WHERE `parameter` = '%s'", $found = q("SELECT `id` FROM `workerqueue` WHERE `parameter` = '%s'",
dbesc($parameters)); dbesc($parameters));
if (!$found) if (!dbm::is_result($found)) {
q("INSERT INTO `workerqueue` (`parameter`, `created`, `priority`) q("INSERT INTO `workerqueue` (`parameter`, `created`, `priority`)
VALUES ('%s', '%s', %d)", VALUES ('%s', '%s', %d)",
dbesc($parameters), dbesc($parameters),
dbesc(datetime_convert()), dbesc(datetime_convert()),
intval($priority)); intval($priority));
}
// Should we quit and wait for the poller to be called as a cronjob? // Should we quit and wait for the poller to be called as a cronjob?
if ($dont_fork) { if ($dont_fork) {
@ -2033,12 +2077,14 @@ function proc_run($cmd){
// Get number of allowed number of worker threads // Get number of allowed number of worker threads
$queues = intval(get_config("system", "worker_queues")); $queues = intval(get_config("system", "worker_queues"));
if ($queues == 0) if ($queues == 0) {
$queues = 4; $queues = 4;
}
// If there are already enough workers running, don't fork another one // If there are already enough workers running, don't fork another one
if ($workers[0]["workers"] >= $queues) if ($workers[0]["workers"] >= $queues) {
return; return;
}
// Now call the poller to execute the jobs that we just added to the queue // Now call the poller to execute the jobs that we just added to the queue
$args = array("include/poller.php", "no_cron"); $args = array("include/poller.php", "no_cron");
@ -2059,17 +2105,19 @@ function current_theme(){
$r = q("select theme from user where uid = %d limit 1", $r = q("select theme from user where uid = %d limit 1",
intval($a->profile_uid) intval($a->profile_uid)
); );
if (dbm::is_result($r)) if (dbm::is_result($r)) {
$page_theme = $r[0]['theme']; $page_theme = $r[0]['theme'];
} }
}
// Allow folks to over-rule user themes and always use their own on their own site. // Allow folks to over-rule user themes and always use their own on their own site.
// This works only if the user is on the same server // This works only if the user is on the same server
if ($page_theme && local_user() && (local_user() != $a->profile_uid)) { if ($page_theme && local_user() && (local_user() != $a->profile_uid)) {
if(get_pconfig(local_user(),'system','always_my_theme')) if (get_pconfig(local_user(),'system','always_my_theme')) {
$page_theme = null; $page_theme = null;
} }
}
// $mobile_detect = new Mobile_Detect(); // $mobile_detect = new Mobile_Detect();
// $is_mobile = $mobile_detect->isMobile() || $mobile_detect->isTablet(); // $is_mobile = $mobile_detect->isMobile() || $mobile_detect->isTablet();
@ -2094,33 +2142,39 @@ function current_theme(){
$system_theme = $standard_system_theme; $system_theme = $standard_system_theme;
$theme_name = $standard_theme_name; $theme_name = $standard_theme_name;
if($page_theme) if ($page_theme) {
$theme_name = $page_theme; $theme_name = $page_theme;
} }
} }
} }
else { } else {
$system_theme = $standard_system_theme; $system_theme = $standard_system_theme;
$theme_name = $standard_theme_name; $theme_name = $standard_theme_name;
if($page_theme) if ($page_theme) {
$theme_name = $page_theme; $theme_name = $page_theme;
} }
}
if ($theme_name && if ($theme_name &&
(file_exists('view/theme/' . $theme_name . '/style.css') || (file_exists('view/theme/' . $theme_name . '/style.css') ||
file_exists('view/theme/' . $theme_name . '/style.php'))) file_exists('view/theme/' . $theme_name . '/style.php'))) {
return($theme_name); return($theme_name);
}
foreach ($app_base_themes as $t) { foreach ($app_base_themes as $t) {
if (file_exists('view/theme/' . $t . '/style.css') || if (file_exists('view/theme/' . $t . '/style.css') ||
file_exists('view/theme/' . $t . '/style.php')) file_exists('view/theme/' . $t . '/style.php')) {
return($t); return($t);
} }
}
$fallback = array_merge(glob('view/theme/*/style.css'),glob('view/theme/*/style.php')); $fallback = array_merge(glob('view/theme/*/style.css'),glob('view/theme/*/style.php'));
if(count($fallback)) if (count($fallback)) {
return (str_replace('view/theme/','', substr($fallback[0],0,-10))); return (str_replace('view/theme/','', substr($fallback[0],0,-10)));
}
/// @TODO No final return statement?
} }
@ -2137,8 +2191,9 @@ function current_theme_url() {
$t = current_theme(); $t = current_theme();
$opts = (($a->profile_uid) ? '?f=&puid=' . $a->profile_uid : ''); $opts = (($a->profile_uid) ? '?f=&puid=' . $a->profile_uid : '');
if (file_exists('view/theme/' . $t . '/style.php')) if (file_exists('view/theme/' . $t . '/style.php')) {
return('view/theme/'.$t.'/style.pcss'.$opts); return('view/theme/'.$t.'/style.pcss'.$opts);
}
return('view/theme/'.$t.'/style.css'); return('view/theme/'.$t.'/style.css');
} }
@ -2167,8 +2222,9 @@ function feed_birthday($uid,$tz) {
$birthday = ''; $birthday = '';
if(! strlen($tz)) if (! strlen($tz)) {
$tz = 'UTC'; $tz = 'UTC';
}
$p = q("SELECT `dob` FROM `profile` WHERE `is-default` = 1 AND `uid` = %d LIMIT 1", $p = q("SELECT `dob` FROM `profile` WHERE `is-default` = 1 AND `uid` = %d LIMIT 1",
intval($uid) intval($uid)
@ -2181,8 +2237,9 @@ function feed_birthday($uid,$tz) {
$bd = $y . '-' . $tmp_dob . ' 00:00'; $bd = $y . '-' . $tmp_dob . ' 00:00';
$t_dob = strtotime($bd); $t_dob = strtotime($bd);
$now = strtotime(datetime_convert($tz,$tz,'now')); $now = strtotime(datetime_convert($tz,$tz,'now'));
if($t_dob < $now) if ($t_dob < $now) {
$bd = $y + 1 . '-' . $tmp_dob . ' 00:00'; $bd = $y + 1 . '-' . $tmp_dob . ' 00:00';
}
$birthday = datetime_convert($tz,'UTC',$bd,ATOM_TIME); $birthday = datetime_convert($tz,'UTC',$bd,ATOM_TIME);
} }
} }
@ -2247,9 +2304,10 @@ function explode_querystring($query) {
$args = explode('&', substr($query, $arg_st)); $args = explode('&', substr($query, $arg_st));
foreach ($args as $k=>$arg) { foreach ($args as $k=>$arg) {
if($arg === '') if ($arg === '') {
unset($args[$k]); unset($args[$k]);
} }
}
$args = array_values($args); $args = array_values($args);
if (!$base) { if (!$base) {
@ -2271,7 +2329,9 @@ function explode_querystring($query) {
*/ */
function curPageURL() { function curPageURL() {
$pageURL = 'http'; $pageURL = 'http';
if ($_SERVER["HTTPS"] == "on") {$pageURL .= "s";} if ($_SERVER["HTTPS"] == "on") {
$pageURL .= "s";
}
$pageURL .= "://"; $pageURL .= "://";
if ($_SERVER["SERVER_PORT"] != "80" && $_SERVER["SERVER_PORT"] != "443") { if ($_SERVER["SERVER_PORT"] != "80" && $_SERVER["SERVER_PORT"] != "443") {
$pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"]; $pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
@ -2292,8 +2352,9 @@ function random_digits($digits) {
function get_server() { function get_server() {
$server = get_config("system", "directory"); $server = get_config("system", "directory");
if ($server == "") if ($server == "") {
$server = "http://dir.friendi.ca"; $server = "http://dir.friendi.ca";
}
return($server); return($server);
} }
@ -2301,8 +2362,9 @@ function get_server() {
function get_cachefile($file, $writemode = true) { function get_cachefile($file, $writemode = true) {
$cache = get_itemcachepath(); $cache = get_itemcachepath();
if ((! $cache) || (! is_dir($cache))) if ((! $cache) || (! is_dir($cache))) {
return(""); return("");
}
$subfolder = $cache."/".substr($file, 0, 2); $subfolder = $cache."/".substr($file, 0, 2);
@ -2324,25 +2386,30 @@ function clear_cache($basepath = "", $path = "") {
$path = $basepath; $path = $basepath;
} }
if (($path == "") OR (!is_dir($path))) if (($path == "") OR (!is_dir($path))) {
return; return;
}
if (substr(realpath($path), 0, strlen($basepath)) != $basepath) if (substr(realpath($path), 0, strlen($basepath)) != $basepath) {
return; return;
}
$cachetime = (int)get_config('system','itemcache_duration'); $cachetime = (int)get_config('system','itemcache_duration');
if ($cachetime == 0) if ($cachetime == 0) {
$cachetime = 86400; $cachetime = 86400;
}
if (is_writable($path)){ if (is_writable($path)){
if ($dh = opendir($path)) { if ($dh = opendir($path)) {
while (($file = readdir($dh)) !== false) { while (($file = readdir($dh)) !== false) {
$fullpath = $path."/".$file; $fullpath = $path."/".$file;
if ((filetype($fullpath) == "dir") and ($file != ".") and ($file != "..")) if ((filetype($fullpath) == "dir") and ($file != ".") and ($file != "..")) {
clear_cache($basepath, $fullpath); clear_cache($basepath, $fullpath);
if ((filetype($fullpath) == "file") and (filectime($fullpath) < (time() - $cachetime))) }
if ((filetype($fullpath) == "file") and (filectime($fullpath) < (time() - $cachetime))) {
unlink($fullpath); unlink($fullpath);
} }
}
closedir($dh); closedir($dh);
} }
} }
@ -2351,8 +2418,9 @@ function clear_cache($basepath = "", $path = "") {
function get_itemcachepath() { function get_itemcachepath() {
// Checking, if the cache is deactivated // Checking, if the cache is deactivated
$cachetime = (int)get_config('system','itemcache_duration'); $cachetime = (int)get_config('system','itemcache_duration');
if ($cachetime < 0) if ($cachetime < 0) {
return ""; return "";
}
$itemcache = get_config('system','itemcache'); $itemcache = get_config('system','itemcache');
if (($itemcache != "") AND App::directory_usable($itemcache)) { if (($itemcache != "") AND App::directory_usable($itemcache)) {
@ -2467,37 +2535,42 @@ function validate_include(&$file) {
$file = realpath($file); $file = realpath($file);
if (strpos($file, getcwd()) !== 0) if (strpos($file, getcwd()) !== 0) {
return false; return false;
}
$file = str_replace(getcwd()."/", "", $file, $count); $file = str_replace(getcwd()."/", "", $file, $count);
if ($count != 1) if ($count != 1) {
return false; return false;
}
if ($orig_file !== $file) if ($orig_file !== $file) {
return false; return false;
}
$valid = false; $valid = false;
if (strpos($file, "include/") === 0) if (strpos($file, "include/") === 0) {
$valid = true; $valid = true;
}
if (strpos($file, "addon/") === 0) if (strpos($file, "addon/") === 0) {
$valid = true; $valid = true;
}
if (!$valid) // Simply return flag
return false; return ($valid);
return true;
} }
function current_load() { function current_load() {
if (!function_exists('sys_getloadavg')) if (!function_exists('sys_getloadavg')) {
return false; return false;
}
$load_arr = sys_getloadavg(); $load_arr = sys_getloadavg();
if (!is_array($load_arr)) if (!is_array($load_arr)) {
return false; return false;
}
return max($load_arr[0], $load_arr[1]); return max($load_arr[0], $load_arr[1]);
} }
@ -2518,8 +2591,9 @@ function argc() {
* @return string Value of the argv key * @return string Value of the argv key
*/ */
function argv($x) { function argv($x) {
if(array_key_exists($x,get_app()->argv)) if (array_key_exists($x,get_app()->argv)) {
return get_app()->argv[$x]; return get_app()->argv[$x];
}
return ''; return '';
} }

View file

@ -28,17 +28,17 @@ $a->backend = false;
/** /**
* *
* Load the configuration file which contains our DB credentials. * Load the configuration file which contains our DB credentials.
* Ignore errors. If the file doesn't exist or is empty, we are running in installation mode. * Ignore errors. If the file doesn't exist or is empty, we are running in
* installation mode.
* *
*/ */
$install = ((file_exists('.htconfig.php') && filesize('.htconfig.php')) ? false : true); $install = ((file_exists('.htconfig.php') && filesize('.htconfig.php')) ? false : true);
@include(".htconfig.php"); // Only load config if found, don't surpress errors
if (!$install) {
include(".htconfig.php");
}
/** /**
* *
@ -233,12 +233,14 @@ if(strlen($a->module)) {
*/ */
// Compatibility with the Android Diaspora client // Compatibility with the Android Diaspora client
if ($a->module == "stream") if ($a->module == "stream") {
$a->module = "network"; $a->module = "network";
}
// Compatibility with the Firefox App // Compatibility with the Firefox App
if (($a->module == "users") AND ($a->cmd == "users/sign_in")) if (($a->module == "users") AND ($a->cmd == "users/sign_in")) {
$a->module = "login"; $a->module = "login";
}
$privateapps = get_config('config','private_addons'); $privateapps = get_config('config','private_addons');
@ -246,13 +248,13 @@ if(strlen($a->module)) {
//Check if module is an app and if public access to apps is allowed or not //Check if module is an app and if public access to apps is allowed or not
if ((!local_user()) && plugin_is_app($a->module) && $privateapps === "1") { if ((!local_user()) && plugin_is_app($a->module) && $privateapps === "1") {
info( t("You must be logged in to use addons. ")); info( t("You must be logged in to use addons. "));
} } else {
else {
include_once("addon/{$a->module}/{$a->module}.php"); include_once("addon/{$a->module}/{$a->module}.php");
if(function_exists($a->module . '_module')) if (function_exists($a->module . '_module')) {
$a->module_loaded = true; $a->module_loaded = true;
} }
} }
}
/** /**
* If not, next look for a 'standard' program module in the 'mod' directory * If not, next look for a 'standard' program module in the 'mod' directory
@ -392,13 +394,15 @@ $a->init_page_end();
// If you're just visiting, let javascript take you home // If you're just visiting, let javascript take you home
if(x($_SESSION,'visitor_home')) if (x($_SESSION,'visitor_home')) {
$homebase = $_SESSION['visitor_home']; $homebase = $_SESSION['visitor_home'];
elseif(local_user()) } elseif (local_user()) {
$homebase = 'profile/' . $a->user['nickname']; $homebase = 'profile/' . $a->user['nickname'];
}
if(isset($homebase)) if (isset($homebase)) {
$a->page['content'] .= '<script>var homebase="' . $homebase . '" ; </script>'; $a->page['content'] .= '<script>var homebase="' . $homebase . '" ; </script>';
}
// now that we've been through the module content, see if the page reported // now that we've been through the module content, see if the page reported
// a permission problem and if so, a 403 response would seem to be in order. // a permission problem and if so, a 403 response would seem to be in order.
@ -448,8 +452,7 @@ if($a->module != 'install' && $a->module != 'maintenance') {
if ($a->is_mobile || $a->is_tablet) { if ($a->is_mobile || $a->is_tablet) {
if (isset($_SESSION['show-mobile']) && !$_SESSION['show-mobile']) { if (isset($_SESSION['show-mobile']) && !$_SESSION['show-mobile']) {
$link = 'toggle_mobile?address=' . curPageURL(); $link = 'toggle_mobile?address=' . curPageURL();
} } else {
else {
$link = 'toggle_mobile?off=1&address=' . curPageURL(); $link = 'toggle_mobile?off=1&address=' . curPageURL();
} }
$a->page['footer'] = replace_macros(get_markup_template("toggle_mobile_footer.tpl"), array( $a->page['footer'] = replace_macros(get_markup_template("toggle_mobile_footer.tpl"), array(
@ -462,10 +465,11 @@ if($a->is_mobile || $a->is_tablet) {
* Build the page - now that we have all the components * Build the page - now that we have all the components
*/ */
if(!$a->theme['stylesheet']) if (!$a->theme['stylesheet']) {
$stylesheet = current_theme_url(); $stylesheet = current_theme_url();
else } else {
$stylesheet = $a->theme['stylesheet']; $stylesheet = $a->theme['stylesheet'];
}
$a->page['htmlhead'] = str_replace('{{$stylesheet}}',$stylesheet,$a->page['htmlhead']); $a->page['htmlhead'] = str_replace('{{$stylesheet}}',$stylesheet,$a->page['htmlhead']);
//$a->page['htmlhead'] = replace_macros($a->page['htmlhead'], array('$stylesheet' => $stylesheet)); //$a->page['htmlhead'] = replace_macros($a->page['htmlhead'], array('$stylesheet' => $stylesheet));
@ -499,8 +503,9 @@ if (isset($_GET["mode"]) AND ($_GET["mode"] == "raw")) {
echo substr($target->saveHTML(), 6, -8); echo substr($target->saveHTML(), 6, -8);
if (!$a->is_backend()) if (!$a->is_backend()) {
session_write_close(); session_write_close();
}
exit; exit;
} }

View file

@ -15,7 +15,8 @@
*/ */
if(($_SERVER["argc"] > 1) && isset($_SERVER["argv"][1])) if (($_SERVER["argc"] > 1) && isset($_SERVER["argv"][1])) {
echo $_SERVER["argv"][1]; echo $_SERVER["argv"][1];
else } else {
echo ''; echo '';
}