X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=boot.php;h=bc6f77dc687d0269a83e1680da40c69b37babe3d;hb=6d7781434bedda23366e6c007c15f85b80a0e073;hp=86a37ce90b80c3c41eb7d7f885585be017b138ea;hpb=4218e3f4945af7101c626852bda09d2c591b8e0c;p=friendica.git diff --git a/boot.php b/boot.php index 86a37ce90b..bc6f77dc68 100644 --- a/boot.php +++ b/boot.php @@ -8,10 +8,10 @@ require_once("include/pgettext.php"); require_once('include/nav.php'); require_once('include/cache.php'); -define ( 'FRIENDIKA_PLATFORM', 'Free Friendika'); -define ( 'FRIENDIKA_VERSION', '2.3.1144' ); -define ( 'DFRN_PROTOCOL_VERSION', '2.21' ); -define ( 'DB_UPDATE_VERSION', 1098 ); +define ( 'FRIENDICA_PLATFORM', 'Friendica'); +define ( 'FRIENDICA_VERSION', '2.3.1195' ); +define ( 'DFRN_PROTOCOL_VERSION', '2.22' ); +define ( 'DB_UPDATE_VERSION', 1111 ); define ( 'EOL', "
\r\n" ); define ( 'ATOM_TIME', 'Y-m-d\TH:i:s\Z' ); @@ -21,8 +21,9 @@ define ( 'ATOM_TIME', 'Y-m-d\TH:i:s\Z' ); * * Image storage quality. Lower numbers save space at cost of image detail. * For ease of upgrade, please do not change here. Change jpeg quality with - * set_config('system','jpeg_quality',n) in .htconfig.php - * where n is netween 1 and 100, and with very poor results below about 50 + * $a->config['system']['jpeg_quality'] = n; + * in .htconfig.php, where n is netween 1 and 100, and with very poor results + * below about 50 * */ @@ -94,12 +95,14 @@ define ( 'PAGE_FREELOVE', 3 ); */ define ( 'NETWORK_ZOT', 'zot!'); // Zot! -define ( 'NETWORK_DFRN', 'dfrn'); // Friendika, Mistpark, other DFRN implementations +define ( 'NETWORK_DFRN', 'dfrn'); // Friendica, Mistpark, other DFRN implementations define ( 'NETWORK_OSTATUS', 'stat'); // status.net, identi.ca, GNU-social, other OStatus implementations define ( 'NETWORK_FEED', 'feed'); // RSS/Atom feeds with no known "post/notify" protocol define ( 'NETWORK_DIASPORA', 'dspr'); // Diaspora define ( 'NETWORK_MAIL', 'mail'); // IMAP/POP define ( 'NETWORK_FACEBOOK', 'face'); // Facebook API +define ( 'NETWORK_LINKEDIN', 'lnkd'); // LinkedIn +define ( 'NETWORK_XMPP', 'xmpp'); // XMPP /** @@ -191,7 +194,7 @@ function startup() { set_time_limit(0); // This has to be quite large to deal with embedded private photos - ini_set('pcre.backtrack_limit', 350000); + ini_set('pcre.backtrack_limit', 500000); if (get_magic_quotes_gpc()) { @@ -254,6 +257,8 @@ class App { public $plugins; public $apps = array(); public $identities; + + public $nav_sel; private $scheme; private $hostname; @@ -301,7 +306,15 @@ class App { if(x($_GET,'q')) $this->cmd = trim($_GET['q'],'/\\'); + // unix style "homedir" + + if(substr($this->cmd,0,1) === '~') + $this->cmd = 'profile/' . substr($this->cmd,1); + + // Diaspora style profile url + if(substr($this->cmd,0,2) === 'u/') + $this->cmd = 'profile/' . substr($this->cmd,2); /** * @@ -409,13 +422,20 @@ class App { } function init_pagehead() { + $interval = ((local_user()) ? get_pconfig(local_user(),'system','update_interval') : 40000); + if($interval < 10000) + $interval = 40000; + $this->page['title'] = $this->config['sitename']; $tpl = file_get_contents('view/head.tpl'); $this->page['htmlhead'] = replace_macros($tpl,array( '$baseurl' => $this->get_baseurl(), // FIXME for z_path!!!! - '$generator' => 'Friendika' . ' ' . FRIENDIKA_VERSION, + '$generator' => 'Friendica' . ' ' . FRIENDICA_VERSION, '$delitem' => t('Delete this item?'), - '$comment' => t('Comment') + '$comment' => t('Comment'), + '$showmore' => t('show more'), + '$showfewer' => t('show fewer'), + '$update_interval' => $interval )); } @@ -652,7 +672,7 @@ function get_guid($size=16) { // returns the complete html for inserting into the page if(! function_exists('login')) { -function login($register = false) { +function login($register = false, $hiddens=false) { $o = ""; $reg = false; if ($register) { @@ -683,6 +703,7 @@ function login($register = false) { '$openid' => !$noid, '$lopenid' => array('openid_url', t('OpenID: '),'',''), + '$hiddens' => $hiddens, '$register' => $reg, @@ -793,17 +814,17 @@ function profile_load(&$a, $nickname, $profile = 0) { if($profile) { $profile_int = intval($profile); - $r = q("SELECT `profile`.`uid` AS `profile_uid`, `profile`.* , `user`.* FROM `profile` - LEFT JOIN `user` ON `profile`.`uid` = `user`.`uid` - WHERE `user`.`nickname` = '%s' AND `profile`.`id` = %d LIMIT 1", + $r = q("SELECT `profile`.`uid` AS `profile_uid`, `profile`.* , `contact`.`avatar-date` AS picdate, `user`.* FROM `profile` + left join `contact` on `contact`.`uid` = `profile`.`uid` LEFT JOIN `user` ON `profile`.`uid` = `user`.`uid` + WHERE `user`.`nickname` = '%s' AND `profile`.`id` = %d and `contact`.`self` = 1 LIMIT 1", dbesc($nickname), intval($profile_int) ); } if(! count($r)) { - $r = q("SELECT `profile`.`uid` AS `profile_uid`, `profile`.* , `user`.* FROM `profile` - LEFT JOIN `user` ON `profile`.`uid` = `user`.`uid` - WHERE `user`.`nickname` = '%s' AND `profile`.`is-default` = 1 LIMIT 1", + $r = q("SELECT `profile`.`uid` AS `profile_uid`, `profile`.* , `contact`.`avatar-date` AS picdate, `user`.* FROM `profile` + left join `contact` on `contact`.`uid` = `profile`.`uid` LEFT JOIN `user` ON `profile`.`uid` = `user`.`uid` + WHERE `user`.`nickname` = '%s' AND `profile`.`is-default` = 1 and `contact`.`self` = 1 LIMIT 1", dbesc($nickname) ); } @@ -820,9 +841,24 @@ function profile_load(&$a, $nickname, $profile = 0) { $a->page['title'] = $a->profile['name'] . " @ " . $a->config['sitename']; $_SESSION['theme'] = $a->profile['theme']; + /** + * load/reload current theme info + */ + $theme_info_file = "view/theme/".current_theme()."/theme.php"; + if (file_exists($theme_info_file)){ + require_once($theme_info_file); + } + if(! (x($a->page,'aside'))) $a->page['aside'] = ''; + if(local_user() && local_user() == $a->profile['uid']) { + $a->page['aside'] .= replace_macros(get_markup_template('profile_edlink.tpl'),array( + '$editprofile' => t('Edit profile'), + '$profid' => $a->profile['id'] + )); + } + $block = (((get_config('system','block_public')) && (! local_user()) && (! remote_user())) ? true : false); $a->page['aside'] .= profile_sidebar($a->profile, $block); @@ -863,6 +899,8 @@ function profile_sidebar($profile, $block = 0) { if((! is_array($profile)) && (! count($profile))) return $o; + $profile['picdate'] = urlencode($profile['picdate']); + call_hooks('profile_sidebar_enter', $profile); @@ -937,7 +975,7 @@ function profile_sidebar($profile, $block = 0) { $diaspora = array( 'podloc' => $a->get_baseurl(), 'searchable' => (($profile['publish'] && $profile['net-publish']) ? 'true' : 'false' ), - 'nickname ' => $profile['nickname'], + 'nickname' => $profile['nickname'], 'fullname' => $profile['name'], 'firstname' => $firstname, 'lastname' => $lastname, @@ -989,7 +1027,7 @@ function get_birthdays() { $r = q("SELECT `event`.*, `event`.`id` AS `eid`, `contact`.* FROM `event` LEFT JOIN `contact` ON `contact`.`id` = `event`.`cid` WHERE `event`.`uid` = %d AND `type` = 'birthday' AND `start` < '%s' AND `finish` > '%s' - ORDER BY `start` DESC ", + ORDER BY `start` ASC ", intval(local_user()), dbesc(datetime_convert('UTC','UTC','now + 6 days')), dbesc(datetime_convert('UTC','UTC','now')) @@ -997,20 +1035,23 @@ function get_birthdays() { if($r && count($r)) { $total = 0; - foreach($r as $rr) + $now = strtotime('now'); + $istoday = false; + foreach($r as $rr) { if(strlen($rr['name'])) $total ++; - + if((strtotime($rr['start'] . ' +00:00') < $now) && (strtotime($rr['finish'] . ' +00:00') > $now)) + $istoday = true; + } + $classtoday = $istoday ? ' birthday-today ' : ''; if($total) { - $o .= ''; + $o .= '
' . t('Birthday Reminders') . ' ' . '(' . $total . ')' . '
'; $o .= ''; + } + + return $o; +}} + + /** * * Wrap calls to proc_close(proc_open()) and call hook