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
commit 15c77beee2
No known key found for this signature in database
GPG key ID: B72F8185C6C7BD78
4 changed files with 316 additions and 237 deletions

457
boot.php
View file

@ -553,12 +553,12 @@ class App {
* beyond are used. * beyond are used.
*/ */
public $theme = array( public $theme = array(
'sourcename' => '', 'sourcename' => '',
'videowidth' => 425, 'videowidth' => 425,
'videoheight' => 350, 'videoheight' => 350,
'force_max_items' => 0, 'force_max_items' => 0,
'thread_allow' => true, 'thread_allow' => true,
'stylesheet' => '', 'stylesheet' => '',
'template_engine' => 'smarty3', 'template_engine' => 'smarty3',
); );
@ -647,7 +647,7 @@ class App {
$this->scheme = 'http'; $this->scheme = 'http';
if((x($_SERVER,'HTTPS') && $_SERVER['HTTPS']) || if ((x($_SERVER,'HTTPS') && $_SERVER['HTTPS']) ||
(x($_SERVER['HTTP_FORWARDED']) && preg_match("/proto=https/", $_SERVER['HTTP_FORWARDED'])) || (x($_SERVER['HTTP_FORWARDED']) && preg_match("/proto=https/", $_SERVER['HTTP_FORWARDED'])) ||
(x($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') || (x($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') ||
(x($_SERVER['HTTP_X_FORWARDED_SSL']) && $_SERVER['HTTP_X_FORWARDED_SSL'] == 'on') || (x($_SERVER['HTTP_X_FORWARDED_SSL']) && $_SERVER['HTTP_X_FORWARDED_SSL'] == 'on') ||
@ -655,12 +655,12 @@ class App {
(x($_SERVER,'SERVER_PORT') && (intval($_SERVER['SERVER_PORT']) == 443)) // XXX: reasonable assumption, but isn't this hardcoding too much? (x($_SERVER,'SERVER_PORT') && (intval($_SERVER['SERVER_PORT']) == 443)) // XXX: reasonable assumption, but isn't this hardcoding too much?
) { ) {
$this->scheme = 'https'; $this->scheme = 'https';
} }
if(x($_SERVER,'SERVER_NAME')) { if (x($_SERVER,'SERVER_NAME')) {
$this->hostname = $_SERVER['SERVER_NAME']; $this->hostname = $_SERVER['SERVER_NAME'];
if(x($_SERVER,'SERVER_PORT') && $_SERVER['SERVER_PORT'] != 80 && $_SERVER['SERVER_PORT'] != 443) if (x($_SERVER,'SERVER_PORT') && $_SERVER['SERVER_PORT'] != 80 && $_SERVER['SERVER_PORT'] != 443)
$this->hostname .= ':' . $_SERVER['SERVER_PORT']; $this->hostname .= ':' . $_SERVER['SERVER_PORT'];
/* /*
* Figure out if we are running at the top of a domain * Figure out if we are running at the top of a domain
@ -668,7 +668,7 @@ class App {
*/ */
$path = trim(dirname($_SERVER['SCRIPT_NAME']),'/\\'); $path = trim(dirname($_SERVER['SCRIPT_NAME']),'/\\');
if(isset($path) && strlen($path) && ($path != $this->path)) if (isset($path) && strlen($path) && ($path != $this->path))
$this->path = $path; $this->path = $path;
} }
@ -704,7 +704,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) === '~') {
@ -735,11 +734,10 @@ class App {
$this->argv = explode('/',$this->cmd); $this->argv = explode('/',$this->cmd);
$this->argc = count($this->argv); $this->argc = count($this->argv);
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';
@ -753,8 +751,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;
/* /*
@ -786,14 +785,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);
} }
@ -857,7 +859,7 @@ class App {
function set_baseurl($url) { function set_baseurl($url) {
$parsed = @parse_url($url); $parsed = @parse_url($url);
if($parsed) { if ($parsed) {
$this->scheme = $parsed['scheme']; $this->scheme = $parsed['scheme'];
$hostname = $parsed['host']; $hostname = $parsed['host'];
@ -869,7 +871,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') != '') {
@ -883,8 +885,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;
} }
@ -919,44 +922,49 @@ 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'];
} }
/* put the head template at the beginning of page['htmlhead'] /* put the head template at the beginning of page['htmlhead']
* 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);
@ -978,8 +986,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!!!!
@ -1015,13 +1024,13 @@ class App {
// The following code is deactivated. It doesn't seem to make any sense and it slows down the system. // 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]) if ($this->cached_profile_image[$avatar_image])
return $this->cached_profile_image[$avatar_image]; return $this->cached_profile_image[$avatar_image];
$path_parts = explode("/",$avatar_image); $path_parts = explode("/",$avatar_image);
$common_filename = $path_parts[count($path_parts)-1]; $common_filename = $path_parts[count($path_parts)-1];
if($this->cached_profile_picdate[$common_filename]){ if ($this->cached_profile_picdate[$common_filename]){
$this->cached_profile_image[$avatar_image] = $avatar_image . $this->cached_profile_picdate[$common_filename]; $this->cached_profile_image[$avatar_image] = $avatar_image . $this->cached_profile_picdate[$common_filename];
} else { } else {
$r = q("SELECT `contact`.`avatar-date` AS picdate FROM `contact` WHERE `contact`.`thumb` like '%%/%s'", $r = q("SELECT `contact`.`avatar-date` AS picdate FROM `contact` WHERE `contact`.`thumb` like '%%/%s'",
@ -1076,7 +1085,7 @@ class App {
function register_template_engine($class, $name = '') { function register_template_engine($class, $name = '') {
if ($name===""){ if ($name===""){
$v = get_class_vars( $class ); $v = get_class_vars( $class );
if(x($v,"name")) $name = $v['name']; if (x($v,"name")) $name = $v['name'];
} }
if ($name===""){ if ($name===""){
echo "template engine <tt>$class</tt> cannot be registered without a name.\n"; echo "template engine <tt>$class</tt> cannot be registered without a name.\n";
@ -1105,7 +1114,7 @@ class App {
} }
if (isset($this->template_engines[$template_engine])){ if (isset($this->template_engines[$template_engine])){
if(isset($this->template_engine_instance[$template_engine])){ if (isset($this->template_engine_instance[$template_engine])){
return $this->template_engine_instance[$template_engine]; return $this->template_engine_instance[$template_engine];
} else { } else {
$class = $this->template_engines[$template_engine]; $class = $this->template_engines[$template_engine];
@ -1134,7 +1143,7 @@ class App {
switch($engine) { switch($engine) {
case 'smarty3': case 'smarty3':
if(is_writable('view/smarty3/')) if (is_writable('view/smarty3/'))
$this->theme['template_engine'] = 'smarty3'; $this->theme['template_engine'] = 'smarty3';
break; break;
default: default:
@ -1152,8 +1161,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);
@ -1235,8 +1245,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);
} }
@ -1258,31 +1269,33 @@ 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);
}
} }
/** /**
@ -1295,13 +1308,15 @@ 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();
@ -1326,13 +1341,15 @@ 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();
@ -1368,16 +1385,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__)));
}
} }
/** /**
@ -1454,17 +1472,17 @@ function get_app() {
* @return bool|int * @return bool|int
*/ */
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;
} }
return (int) 0; return (int) 0;
@ -1492,8 +1510,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;
} }
@ -1518,8 +1537,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;
} }
@ -1535,12 +1555,13 @@ function is_ajax() {
function check_db() { function check_db() {
$build = get_config('system','build'); $build = get_config('system','build');
if(! x($build)) { if (! x($build)) {
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');
}
} }
@ -1559,10 +1580,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;
} }
@ -1573,13 +1596,14 @@ 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);
$current = intval(DB_UPDATE_VERSION); $current = intval(DB_UPDATE_VERSION);
if($stored < $current) { if ($stored < $current) {
Config::load('database'); Config::load('database');
// We're reporting a different version than what is currently installed. // We're reporting a different version than what is currently installed.
@ -1589,12 +1613,13 @@ function update_db(App $a) {
// updating right this very second and the correct version of the update.php // updating right this very second and the correct version of the update.php
// file may not be here yet. This can happen on a very busy site. // file may not be here yet. This can happen on a very busy site.
if(DB_UPDATE_VERSION == UPDATE_VERSION) { if (DB_UPDATE_VERSION == UPDATE_VERSION) {
// 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());
@ -1602,15 +1627,18 @@ 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
$retval = update_structure(false, true); $retval = update_structure(false, true);
if($retval) { if ($retval) {
update_fail( update_fail(
DB_UPDATE_VERSION, DB_UPDATE_VERSION,
$retval $retval
@ -1621,9 +1649,11 @@ 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;
}
} }
} }
} }
@ -1633,7 +1663,7 @@ function update_db(App $a) {
} }
function run_update_function($x) { function run_update_function($x) {
if(function_exists('update_' . $x)) { if (function_exists('update_' . $x)) {
// There could be a lot of processes running or about to run. // There could be a lot of processes running or about to run.
// We want exactly one process to run the update command. // We want exactly one process to run the update command.
@ -1644,8 +1674,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
@ -1653,7 +1684,7 @@ function run_update_function($x) {
$func = 'update_' . $x; $func = 'update_' . $x;
$retval = $func(); $retval = $func();
if($retval) { if ($retval) {
//send the administrator an e-mail //send the administrator an e-mail
update_fail( update_fail(
$x, $x,
@ -1686,39 +1717,40 @@ function run_update_function($x) {
* *
* @param App $a * @param App $a
* *
*/ */
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;
$installed_arr = array(); $installed_arr = array();
if(count($installed)) { if (count($installed)) {
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'];
} }
} }
} }
if(count($plugins_arr)) { if (count($plugins_arr)) {
foreach($plugins_arr as $p) { foreach ($plugins_arr as $p) {
if(! in_array($p,$installed_arr)) { if (! in_array($p,$installed_arr)) {
install_plugin($p); install_plugin($p);
} }
} }
@ -1778,10 +1810,9 @@ function login($register = false, $hiddens=false) {
$dest_url = $a->query_string; $dest_url = $a->query_string;
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)
)); ));
@ -1793,29 +1824,29 @@ function login($register = false, $hiddens=false) {
$o .= replace_macros($tpl, array( $o .= replace_macros($tpl, array(
'$dest_url' => $dest_url, '$dest_url' => $dest_url,
'$logout' => t('Logout'), '$logout' => t('Logout'),
'$login' => t('Login'), '$login' => t('Login'),
'$lname' => array('username', t('Nickname or Email: ') , '', ''), '$lname' => array('username', t('Nickname or Email: ') , '', ''),
'$lpassword' => array('password', t('Password: '), '', ''), '$lpassword' => array('password', t('Password: '), '', ''),
'$lremember' => array('remember', t('Remember me'), 0, ''), '$lremember' => array('remember', t('Remember me'), 0, ''),
'$openid' => !$noid, '$openid' => !$noid,
'$lopenid' => array('openid_url', t('Or login using OpenID: '),'',''), '$lopenid' => array('openid_url', t('Or login using OpenID: '),'',''),
'$hiddens' => $hiddens, '$hiddens' => $hiddens,
'$register' => $reg, '$register' => $reg,
'$lostpass' => t('Forgot your password?'), '$lostpass' => t('Forgot your password?'),
'$lostlink' => t('Password Reset'), '$lostlink' => t('Password Reset'),
'$tostitle' => t('Website Terms of Service'), '$tostitle' => t('Website Terms of Service'),
'$toslink' => t('terms of service'), '$toslink' => t('terms of service'),
'$privacytitle' => t('Website Privacy Policy'), '$privacytitle' => t('Website Privacy Policy'),
'$privacylink' => t('privacy policy'), '$privacylink' => t('privacy policy'),
)); ));
@ -1829,8 +1860,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;
} }
@ -1839,8 +1871,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();
@ -1888,8 +1921,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;
} }
@ -1902,9 +1936,12 @@ 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;
}
} }
/** /**
@ -1917,12 +1954,16 @@ 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;
}
} }
@ -1984,8 +2025,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");
@ -2008,12 +2050,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) {
@ -2026,12 +2069,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");
@ -2048,20 +2093,22 @@ function current_theme(){
// Find the theme that belongs to the user whose stuff we are looking at // Find the theme that belongs to the user whose stuff we are looking at
if($a->profile_uid && ($a->profile_uid != local_user())) { if ($a->profile_uid && ($a->profile_uid != local_user())) {
$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();
@ -2082,38 +2129,44 @@ function current_theme(){
} }
$theme_name = ((isset($_SESSION) && x($_SESSION,'mobile-theme')) ? $_SESSION['mobile-theme'] : $system_theme); $theme_name = ((isset($_SESSION) && x($_SESSION,'mobile-theme')) ? $_SESSION['mobile-theme'] : $system_theme);
if($theme_name === '---') { if ($theme_name === '---') {
// user has selected to have the mobile theme be the same as the normal one // user has selected to have the mobile theme be the same as the normal one
$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?
} }
@ -2130,8 +2183,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');
} }
@ -2160,8 +2214,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)
@ -2169,13 +2224,14 @@ function feed_birthday($uid,$tz) {
if (dbm::is_result($p)) { if (dbm::is_result($p)) {
$tmp_dob = substr($p[0]['dob'],5); $tmp_dob = substr($p[0]['dob'],5);
if(intval($tmp_dob)) { if (intval($tmp_dob)) {
$y = datetime_convert($tz,$tz,'now','Y'); $y = datetime_convert($tz,$tz,'now','Y');
$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);
} }
} }
@ -2193,8 +2249,8 @@ function is_site_admin() {
$adminlist = explode(",", str_replace(" ", "", $a->config['admin_email'])); $adminlist = explode(",", str_replace(" ", "", $a->config['admin_email']));
//if(local_user() && x($a->user,'email') && x($a->config,'admin_email') && ($a->user['email'] === $a->config['admin_email'])) //if (local_user() && x($a->user,'email') && x($a->config,'admin_email') && ($a->user['email'] === $a->config['admin_email']))
if(local_user() && x($a->user,'email') && x($a->config,'admin_email') && in_array($a->user['email'], $adminlist)) if (local_user() && x($a->user,'email') && x($a->config,'admin_email') && in_array($a->user['email'], $adminlist))
return true; return true;
return false; return false;
} }
@ -2209,16 +2265,16 @@ function is_site_admin() {
*/ */
function build_querystring($params, $name=null) { function build_querystring($params, $name=null) {
$ret = ""; $ret = "";
foreach($params as $key=>$val) { foreach ($params as $key=>$val) {
if(is_array($val)) { if (is_array($val)) {
if($name==null) { if ($name==null) {
$ret .= build_querystring($val, $key); $ret .= build_querystring($val, $key);
} else { } else {
$ret .= build_querystring($val, $name."[$key]"); $ret .= build_querystring($val, $name."[$key]");
} }
} else { } else {
$val = urlencode($val); $val = urlencode($val);
if($name!=null) { if ($name!=null) {
$ret.=$name."[$key]"."=$val&"; $ret.=$name."[$key]"."=$val&";
} else { } else {
$ret.= "$key=$val&"; $ret.= "$key=$val&";
@ -2230,7 +2286,7 @@ function build_querystring($params, $name=null) {
function explode_querystring($query) { function explode_querystring($query) {
$arg_st = strpos($query, '?'); $arg_st = strpos($query, '?');
if($arg_st !== false) { if ($arg_st !== false) {
$base = substr($query, 0, $arg_st); $base = substr($query, 0, $arg_st);
$arg_st += 1; $arg_st += 1;
} else { } else {
@ -2239,13 +2295,14 @@ 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) {
$base = $args[0]; $base = $args[0];
unset($args[0]); unset($args[0]);
$args = array_values($args); $args = array_values($args);
@ -2264,7 +2321,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"];
@ -2276,7 +2335,7 @@ function curPageURL() {
function random_digits($digits) { function random_digits($digits) {
$rn = ''; $rn = '';
for($i = 0; $i < $digits; $i++) { for ($i = 0; $i < $digits; $i++) {
$rn .= rand(0,9); $rn .= rand(0,9);
} }
return $rn; return $rn;
@ -2285,8 +2344,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);
} }
@ -2294,8 +2354,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);
@ -2317,24 +2378,29 @@ 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);
} }
@ -2344,8 +2410,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)) {
@ -2356,7 +2423,7 @@ function get_itemcachepath() {
if ($temppath != "") { if ($temppath != "") {
$itemcache = $temppath."/itemcache"; $itemcache = $temppath."/itemcache";
if(!file_exists($itemcache) && !is_dir($itemcache)) { if (!file_exists($itemcache) && !is_dir($itemcache)) {
mkdir($itemcache); mkdir($itemcache);
} }
@ -2448,7 +2515,7 @@ function set_template_engine(App $a, $engine = 'internal') {
$a->set_template_engine($engine); $a->set_template_engine($engine);
} }
if(!function_exists('exif_imagetype')) { if (!function_exists('exif_imagetype')) {
function exif_imagetype($file) { function exif_imagetype($file) {
$size = getimagesize($file); $size = getimagesize($file);
return($size[2]); return($size[2]);
@ -2460,37 +2527,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]);
} }
@ -2511,8 +2583,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");
}
/** /**
* *
@ -48,7 +48,7 @@ $install = ((file_exists('.htconfig.php') && filesize('.htconfig.php')) ? false
require_once("include/dba.php"); require_once("include/dba.php");
if(!$install) { if (!$install) {
$db = new dba($db_host, $db_user, $db_pass, $db_data, $install); $db = new dba($db_host, $db_user, $db_pass, $db_data, $install);
unset($db_host, $db_user, $db_pass, $db_data); unset($db_host, $db_user, $db_pass, $db_data);
@ -117,12 +117,12 @@ if (x($_SESSION,'authenticated') && !x($_SESSION,'language')) {
if (dbm::is_result($r)) $_SESSION['language'] = $r[0]['language']; if (dbm::is_result($r)) $_SESSION['language'] = $r[0]['language'];
} }
if((x($_SESSION,'language')) && ($_SESSION['language'] !== $lang)) { if ((x($_SESSION,'language')) && ($_SESSION['language'] !== $lang)) {
$lang = $_SESSION['language']; $lang = $_SESSION['language'];
load_translation_table($lang); load_translation_table($lang);
} }
if((x($_GET,'zrl')) && (!$install && !$maintenance)) { if ((x($_GET,'zrl')) && (!$install && !$maintenance)) {
// Only continue when the given profile link seems valid // Only continue when the given profile link seems valid
// Valid profile links contain a path with "/profile/" and no query parameters // Valid profile links contain a path with "/profile/" and no query parameters
if ((parse_url($_GET['zrl'], PHP_URL_QUERY) == "") AND if ((parse_url($_GET['zrl'], PHP_URL_QUERY) == "") AND
@ -223,7 +223,7 @@ if ((local_user()) || (! $privateapps === "1")) {
* further processing. * further processing.
*/ */
if(strlen($a->module)) { if (strlen($a->module)) {
/** /**
* *
@ -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,11 +248,11 @@ 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;
}
} }
} }
@ -320,29 +322,29 @@ if (!$install && !$maintenance) {
* Call module functions * Call module functions
*/ */
if($a->module_loaded) { if ($a->module_loaded) {
$a->page['page_title'] = $a->module; $a->page['page_title'] = $a->module;
$placeholder = ''; $placeholder = '';
if(function_exists($a->module . '_init')) { if (function_exists($a->module . '_init')) {
call_hooks($a->module . '_mod_init', $placeholder); call_hooks($a->module . '_mod_init', $placeholder);
$func = $a->module . '_init'; $func = $a->module . '_init';
$func($a); $func($a);
} }
if(function_exists(str_replace('-','_',current_theme()) . '_init')) { if (function_exists(str_replace('-','_',current_theme()) . '_init')) {
$func = str_replace('-','_',current_theme()) . '_init'; $func = str_replace('-','_',current_theme()) . '_init';
$func($a); $func($a);
} }
// elseif (x($a->theme_info,"extends") && file_exists("view/theme/".$a->theme_info["extends"]."/theme.php")) { // elseif (x($a->theme_info,"extends") && file_exists("view/theme/".$a->theme_info["extends"]."/theme.php")) {
// require_once("view/theme/".$a->theme_info["extends"]."/theme.php"); // require_once("view/theme/".$a->theme_info["extends"]."/theme.php");
// if(function_exists(str_replace('-','_',$a->theme_info["extends"]) . '_init')) { // if (function_exists(str_replace('-','_',$a->theme_info["extends"]) . '_init')) {
// $func = str_replace('-','_',$a->theme_info["extends"]) . '_init'; // $func = str_replace('-','_',$a->theme_info["extends"]) . '_init';
// $func($a); // $func($a);
// } // }
// } // }
if(($_SERVER['REQUEST_METHOD'] === 'POST') && (! $a->error) if (($_SERVER['REQUEST_METHOD'] === 'POST') && (! $a->error)
&& (function_exists($a->module . '_post')) && (function_exists($a->module . '_post'))
&& (! x($_POST,'auth-params'))) { && (! x($_POST,'auth-params'))) {
call_hooks($a->module . '_mod_post', $_POST); call_hooks($a->module . '_mod_post', $_POST);
@ -350,13 +352,13 @@ if($a->module_loaded) {
$func($a); $func($a);
} }
if((! $a->error) && (function_exists($a->module . '_afterpost'))) { if ((! $a->error) && (function_exists($a->module . '_afterpost'))) {
call_hooks($a->module . '_mod_afterpost',$placeholder); call_hooks($a->module . '_mod_afterpost',$placeholder);
$func = $a->module . '_afterpost'; $func = $a->module . '_afterpost';
$func($a); $func($a);
} }
if((! $a->error) && (function_exists($a->module . '_content'))) { if ((! $a->error) && (function_exists($a->module . '_content'))) {
$arr = array('content' => $a->page['content']); $arr = array('content' => $a->page['content']);
call_hooks($a->module . '_mod_content', $arr); call_hooks($a->module . '_mod_content', $arr);
$a->page['content'] = $arr['content']; $a->page['content'] = $arr['content'];
@ -366,7 +368,7 @@ if($a->module_loaded) {
$a->page['content'] .= $arr['content']; $a->page['content'] .= $arr['content'];
} }
if(function_exists(str_replace('-','_',current_theme()) . '_content_loaded')) { if (function_exists(str_replace('-','_',current_theme()) . '_content_loaded')) {
$func = str_replace('-','_',current_theme()) . '_content_loaded'; $func = str_replace('-','_',current_theme()) . '_content_loaded';
$func($a); $func($a);
} }
@ -392,18 +394,20 @@ $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.
if(stristr( implode("",$_SESSION['sysmsg']), t('Permission denied'))) { if (stristr( implode("",$_SESSION['sysmsg']), t('Permission denied'))) {
header($_SERVER["SERVER_PROTOCOL"] . ' 403 ' . t('Permission denied.')); header($_SERVER["SERVER_PROTOCOL"] . ' 403 ' . t('Permission denied.'));
} }
@ -413,13 +417,13 @@ if(stristr( implode("",$_SESSION['sysmsg']), t('Permission denied'))) {
* *
*/ */
/*if(x($_SESSION,'sysmsg')) { /*if (x($_SESSION,'sysmsg')) {
$a->page['content'] = "<div id=\"sysmsg\" class=\"error-message\">{$_SESSION['sysmsg']}</div>\r\n" $a->page['content'] = "<div id=\"sysmsg\" class=\"error-message\">{$_SESSION['sysmsg']}</div>\r\n"
. ((x($a->page,'content')) ? $a->page['content'] : ''); . ((x($a->page,'content')) ? $a->page['content'] : '');
$_SESSION['sysmsg']=""; $_SESSION['sysmsg']="";
unset($_SESSION['sysmsg']); unset($_SESSION['sysmsg']);
} }
if(x($_SESSION,'sysmsg_info')) { if (x($_SESSION,'sysmsg_info')) {
$a->page['content'] = "<div id=\"sysmsg_info\" class=\"info-message\">{$_SESSION['sysmsg_info']}</div>\r\n" $a->page['content'] = "<div id=\"sysmsg_info\" class=\"info-message\">{$_SESSION['sysmsg_info']}</div>\r\n"
. ((x($a->page,'content')) ? $a->page['content'] : ''); . ((x($a->page,'content')) ? $a->page['content'] : '');
$_SESSION['sysmsg_info']=""; $_SESSION['sysmsg_info']="";
@ -437,7 +441,7 @@ call_hooks('page_end', $a->page['content']);
* *
*/ */
if($a->module != 'install' && $a->module != 'maintenance') { if ($a->module != 'install' && $a->module != 'maintenance') {
nav($a); nav($a);
} }
@ -445,27 +449,27 @@ if($a->module != 'install' && $a->module != 'maintenance') {
* Add a "toggle mobile" link if we're using a mobile device * Add a "toggle mobile" link if we're using a mobile device
*/ */
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(
'$toggle_link' => $link, '$toggle_link' => $link,
'$toggle_text' => t('toggle mobile') '$toggle_text' => t('toggle mobile')
)); ));
} }
/** /**
* 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;
} }
@ -519,7 +524,7 @@ if (isset($_GET["mode"])) {
} }
// If there is no page template use the default page template // If there is no page template use the default page template
if(!$template) { if (!$template) {
$template = theme_include("default.php"); $template = theme_include("default.php");
} }

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 '';
}

View file

@ -148,7 +148,7 @@ function update_1014() {
if (dbm::is_result($r)) { if (dbm::is_result($r)) {
foreach ($r as $rr) { foreach ($r as $rr) {
$ph = new Photo($rr['data']); $ph = new Photo($rr['data']);
if($ph->is_valid()) { if ($ph->is_valid()) {
$ph->scaleImage(48); $ph->scaleImage(48);
$ph->store($rr['uid'],$rr['contact-id'],$rr['resource-id'],$rr['filename'],$rr['album'],6,(($rr['profile']) ? 1 : 0)); $ph->store($rr['uid'],$rr['contact-id'],$rr['resource-id'],$rr['filename'],$rr['album'],6,(($rr['profile']) ? 1 : 0));
} }
@ -1756,7 +1756,7 @@ function update_1190() {
$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));
$idx = array_search($plugin, $plugins_arr); $idx = array_search($plugin, $plugins_arr);