diff --git a/boot.php b/boot.php index b282f8d48e..aab3498146 100644 --- a/boot.php +++ b/boot.php @@ -670,22 +670,23 @@ class App { #set_include_path("include/$this->hostname" . PATH_SEPARATOR . get_include_path()); - if((x($_SERVER,'QUERY_STRING')) && substr($_SERVER['QUERY_STRING'],0,9) === "pagename=") { + if ((x($_SERVER,'QUERY_STRING')) && substr($_SERVER['QUERY_STRING'],0,9) === "pagename=") { $this->query_string = substr($_SERVER['QUERY_STRING'],9); // removing trailing / - maybe a nginx problem if (substr($this->query_string, 0, 1) == "/") $this->query_string = substr($this->query_string, 1); - } elseif((x($_SERVER,'QUERY_STRING')) && substr($_SERVER['QUERY_STRING'],0,2) === "q=") { + } elseif ((x($_SERVER,'QUERY_STRING')) && substr($_SERVER['QUERY_STRING'],0,2) === "q=") { $this->query_string = substr($_SERVER['QUERY_STRING'],2); // removing trailing / - maybe a nginx problem if (substr($this->query_string, 0, 1) == "/") $this->query_string = substr($this->query_string, 1); } - if (x($_GET,'pagename')) + if (x($_GET,'pagename')) { $this->cmd = trim($_GET['pagename'],'/\\'); - elseif (x($_GET,'q')) + } elseif (x($_GET,'q')) { $this->cmd = trim($_GET['q'],'/\\'); + } // fix query_string @@ -694,13 +695,15 @@ class App { // unix style "homedir" - if(substr($this->cmd,0,1) === '~') + if (substr($this->cmd,0,1) === '~') { $this->cmd = 'profile/' . substr($this->cmd,1); + } // Diaspora style profile url - if(substr($this->cmd,0,2) === 'u/') + if (substr($this->cmd,0,2) === 'u/') { $this->cmd = 'profile/' . substr($this->cmd,2); + } /* @@ -1028,7 +1031,7 @@ class App { } else { $r = q("SELECT `contact`.`avatar-date` AS picdate FROM `contact` WHERE `contact`.`thumb` like '%%/%s'", $common_filename); - if(! dbm::is_result($r)){ + if (! dbm::is_result($r)) { $this->cached_profile_image[$avatar_image] = $avatar_image; } else { $this->cached_profile_picdate[$common_filename] = "?rev=".urlencode($r[0]['picdate']); @@ -1548,9 +1551,9 @@ function check_url(&$a) { // We will only change the url to an ip address if there is no existing setting if(! x($url)) - $url = set_config('system','url',$a->get_baseurl()); - if((! link_compare($url,$a->get_baseurl())) && (! preg_match("/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/",$a->get_hostname))) - $url = set_config('system','url',$a->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))) + $url = set_config('system','url',App::get_baseurl()); return; } diff --git a/doc/themes.md b/doc/themes.md index add44c776b..0d3c6eb3d6 100644 --- a/doc/themes.md +++ b/doc/themes.md @@ -124,8 +124,9 @@ The selected 1st part will be saved in the database by the theme_post function. function theme_post(&$a){ // non local users shall not pass - if(! local_user()) + if (! local_user()) { return; + } // if the one specific submit button was pressed then proceed if (isset($_POST['duepuntozero-settings-submit'])){ // and save the selection key into the personal config of the user diff --git a/include/Contact.php b/include/Contact.php index 7ca45a21bd..b1f63cbdfd 100644 --- a/include/Contact.php +++ b/include/Contact.php @@ -8,7 +8,6 @@ function user_remove($uid) { if(! $uid) return; - $a = get_app(); logger('Removing user: ' . $uid); $r = q("select * from user where uid = %d limit 1", intval($uid)); @@ -54,7 +53,7 @@ function user_remove($uid) { if($uid == local_user()) { unset($_SESSION['authenticated']); unset($_SESSION['uid']); - goaway($a->get_baseurl()); + goaway(App::get_baseurl()); } } @@ -86,12 +85,12 @@ function contact_remove($id) { function terminate_friendship($user,$self,$contact) { - + /// @TODO Get rid of this, include/datetime.php should care about by itself $a = get_app(); require_once('include/datetime.php'); - if($contact['network'] === NETWORK_OSTATUS) { + if ($contact['network'] === NETWORK_OSTATUS) { require_once('include/ostatus.php'); @@ -101,16 +100,14 @@ function terminate_friendship($user,$self,$contact) { $item['follow'] = $contact["url"]; $slap = ostatus::salmon($item, $user); - if((x($contact,'notify')) && (strlen($contact['notify']))) { + if ((x($contact,'notify')) && (strlen($contact['notify']))) { require_once('include/salmon.php'); slapper($user,$contact['notify'],$slap); } - } - elseif($contact['network'] === NETWORK_DIASPORA) { + } elseif ($contact['network'] === NETWORK_DIASPORA) { require_once('include/diaspora.php'); - diaspora::send_unshare($user,$contact); - } - elseif($contact['network'] === NETWORK_DFRN) { + Diaspora::send_unshare($user,$contact); + } elseif ($contact['network'] === NETWORK_DFRN) { require_once('include/dfrn.php'); dfrn::deliver($user,$contact,'placeholder', 1); } @@ -361,7 +358,7 @@ function contact_photo_menu($contact, $uid = 0) $sparkle = false; if ($contact['network'] === NETWORK_DFRN) { $sparkle = true; - $profile_link = $a->get_baseurl() . '/redir/' . $contact['id']; + $profile_link = App::get_baseurl() . '/redir/' . $contact['id']; } else { $profile_link = $contact['url']; } @@ -377,17 +374,17 @@ function contact_photo_menu($contact, $uid = 0) } if (in_array($contact['network'], array(NETWORK_DFRN, NETWORK_DIASPORA))) { - $pm_url = $a->get_baseurl() . '/message/new/' . $contact['id']; + $pm_url = App::get_baseurl() . '/message/new/' . $contact['id']; } if ($contact['network'] == NETWORK_DFRN) { - $poke_link = $a->get_baseurl() . '/poke/?f=&c=' . $contact['id']; + $poke_link = App::get_baseurl() . '/poke/?f=&c=' . $contact['id']; } - $contact_url = $a->get_baseurl() . '/contacts/' . $contact['id']; + $contact_url = App::get_baseurl() . '/contacts/' . $contact['id']; - $posts_link = $a->get_baseurl() . '/contacts/' . $contact['id'] . '/posts'; - $contact_drop_link = $a->get_baseurl() . '/contacts/' . $contact['id'] . '/drop?confirm=1'; + $posts_link = App::get_baseurl() . '/contacts/' . $contact['id'] . '/posts'; + $contact_drop_link = App::get_baseurl() . '/contacts/' . $contact['id'] . '/drop?confirm=1'; /** * menu array: diff --git a/include/NotificationsManager.php b/include/NotificationsManager.php index 2adab59721..611860f9d0 100644 --- a/include/NotificationsManager.php +++ b/include/NotificationsManager.php @@ -198,8 +198,10 @@ class NotificationsManager { * string 'label' => The type of the notification * string 'link' => URL to the source * string 'image' => The avatar image + * string 'url' => The profile url of the contact * string 'text' => The notification text - * string 'when' => Relative date of the notification + * string 'when' => The date of the notification + * string 'ago' => T relative date of the notification * bool 'seen' => Is the notification marked as "seen" */ private function formatNotifs($notifs, $ident = "") { @@ -223,26 +225,32 @@ class NotificationsManager { $default_item_label = 'notify'; $default_item_link = $this->a->get_baseurl(true).'/notify/view/'. $it['id']; $default_item_image = proxy_url($it['photo'], false, PROXY_SIZE_MICRO); + $default_item_url = $it['url']; $default_item_text = strip_tags(bbcode($it['msg'])); - $default_item_when = relative_date($it['date']); + $default_item_when = datetime_convert('UTC', date_default_timezone_get(), $it['date'], 'r'); + $default_item_ago = relative_date($it['date']); break; case 'home': $default_item_label = 'comment'; $default_item_link = $this->a->get_baseurl(true).'/display/'.$it['pguid']; $default_item_image = proxy_url($it['author-avatar'], false, PROXY_SIZE_MICRO); + $default_item_url = $it['author-link']; $default_item_text = sprintf(t("%s commented on %s's post"), $it['author-name'], $it['pname']); - $default_item_when = relative_date($it['created']); + $default_item_when = datetime_convert('UTC', date_default_timezone_get(), $it['created'], 'r'); + $default_item_ago = relative_date($it['created']); break; default: $default_item_label = (($it['id'] == $it['parent']) ? 'post' : 'comment'); $default_item_link = $this->a->get_baseurl(true).'/display/'.$it['pguid']; $default_item_image = proxy_url($it['author-avatar'], false, PROXY_SIZE_MICRO); + $default_item_url = $it['author-link']; $default_item_text = (($it['id'] == $it['parent']) ? sprintf(t("%s created a new post"), $it['author-name']) : sprintf(t("%s commented on %s's post"), $it['author-name'], $it['pname'])); - $default_item_when = relative_date($it['created']); + $default_item_when = datetime_convert('UTC', date_default_timezone_get(), $it['created'], 'r'); + $default_item_ago = relative_date($it['created']); } @@ -253,8 +261,10 @@ class NotificationsManager { 'label' => 'like', 'link' => $this->a->get_baseurl(true).'/display/'.$it['pguid'], 'image' => proxy_url($it['author-avatar'], false, PROXY_SIZE_MICRO), + 'url' => $it['author-link'], 'text' => sprintf(t("%s liked %s's post"), $it['author-name'], $it['pname']), - 'when' => relative_date($it['created']), + 'when' => $default_item_when, + 'ago' => $default_item_ago, 'seen' => $it['seen'] ); break; @@ -264,8 +274,10 @@ class NotificationsManager { 'label' => 'dislike', 'link' => $this->a->get_baseurl(true).'/display/'.$it['pguid'], 'image' => proxy_url($it['author-avatar'], false, PROXY_SIZE_MICRO), + 'url' => $it['author-link'], 'text' => sprintf(t("%s disliked %s's post"), $it['author-name'], $it['pname']), - 'when' => relative_date($it['created']), + 'when' => $default_item_when, + 'ago' => $default_item_ago, 'seen' => $it['seen'] ); break; @@ -275,8 +287,10 @@ class NotificationsManager { 'label' => 'attend', 'link' => $this->a->get_baseurl(true).'/display/'.$it['pguid'], 'image' => proxy_url($it['author-avatar'], false, PROXY_SIZE_MICRO), + 'url' => $it['author-link'], 'text' => sprintf(t("%s is attending %s's event"), $it['author-name'], $it['pname']), - 'when' => relative_date($it['created']), + 'when' => $default_item_when, + 'ago' => $default_item_ago, 'seen' => $it['seen'] ); break; @@ -286,8 +300,10 @@ class NotificationsManager { 'label' => 'attendno', 'link' => $this->a->get_baseurl(true).'/display/'.$it['pguid'], 'image' => proxy_url($it['author-avatar'], false, PROXY_SIZE_MICRO), + 'url' => $it['author-link'], 'text' => sprintf( t("%s is not attending %s's event"), $it['author-name'], $it['pname']), - 'when' => relative_date($it['created']), + 'when' => $default_item_when, + 'ago' => $default_item_ago, 'seen' => $it['seen'] ); break; @@ -297,8 +313,10 @@ class NotificationsManager { 'label' => 'attendmaybe', 'link' => $this->a->get_baseurl(true).'/display/'.$it['pguid'], 'image' => proxy_url($it['author-avatar'], false, PROXY_SIZE_MICRO), + 'url' => $it['author-link'], 'text' => sprintf(t("%s may attend %s's event"), $it['author-name'], $it['pname']), - 'when' => relative_date($it['created']), + 'when' => $default_item_when, + 'ago' => $default_item_ago, 'seen' => $it['seen'] ); break; @@ -312,8 +330,10 @@ class NotificationsManager { 'label' => 'friend', 'link' => $this->a->get_baseurl(true).'/display/'.$it['pguid'], 'image' => proxy_url($it['author-avatar'], false, PROXY_SIZE_MICRO), + 'url' => $it['author-link'], 'text' => sprintf(t("%s is now friends with %s"), $it['author-name'], $it['fname']), - 'when' => relative_date($it['created']), + 'when' => $default_item_when, + 'ago' => $default_item_ago, 'seen' => $it['seen'] ); break; @@ -323,8 +343,10 @@ class NotificationsManager { 'label' => $default_item_label, 'link' => $default_item_link, 'image' => $default_item_image, + 'url' => $default_item_url, 'text' => $default_item_text, 'when' => $default_item_when, + 'ago' => $default_item_ago, 'seen' => $it['seen'] ); } @@ -459,7 +481,7 @@ class NotificationsManager { if($seen === 0) $sql_seen = " AND `seen` = 0 "; - $r = q("SELECT `id`, `photo`, `msg`, `date`, `seen` FROM `notify` + $r = q("SELECT `id`, `url`, `photo`, `msg`, `date`, `seen` FROM `notify` WHERE `uid` = %d $sql_seen ORDER BY `date` DESC LIMIT %d, %d ", intval(local_user()), intval($start), @@ -626,9 +648,9 @@ class NotificationsManager { $sql_seen = " AND `item`.`unseen` = 1 "; $r = q("SELECT `item`.`id`,`item`.`parent`, `item`.`verb`, `item`.`author-name`, `item`.`unseen`, - `item`.`author-link`, `item`.`author-avatar`, `item`.`created`, `item`.`object` as `object`, - `pitem`.`author-name` as `pname`, `pitem`.`author-link` as `plink`, `pitem`.`guid` as `pguid` - FROM `item` INNER JOIN `item` as `pitem` ON `pitem`.`id`=`item`.`parent` + `item`.`author-link`, `item`.`author-avatar`, `item`.`created`, `item`.`object` AS `object`, + `pitem`.`author-name` AS `pname`, `pitem`.`author-link` AS `plink`, `pitem`.`guid` AS `pguid` + FROM `item` INNER JOIN `item` AS `pitem` ON `pitem`.`id`=`item`.`parent` WHERE `item`.`visible` = 1 AND `item`.`deleted` = 0 AND `item`.`uid` = %d AND `item`.`wall` = 1 $sql_seen diff --git a/include/Photo.php b/include/Photo.php index 014cca7d25..1a97fe2fe4 100644 --- a/include/Photo.php +++ b/include/Photo.php @@ -794,8 +794,6 @@ function update_contact_avatar($avatar, $uid, $cid, $force = false) { function import_profile_photo($photo, $uid, $cid, $quit_on_error = false) { - $a = get_app(); - $r = q("SELECT `resource-id` FROM `photo` WHERE `uid` = %d AND `contact-id` = %d AND `scale` = 4 AND `album` = 'Contact Photos' LIMIT 1", intval($uid), intval($cid) @@ -841,9 +839,9 @@ function import_profile_photo($photo, $uid, $cid, $quit_on_error = false) { $photo_failure = true; } - $photo = $a->get_baseurl() . '/photo/' . $hash . '-4.' . $img->getExt(); - $thumb = $a->get_baseurl() . '/photo/' . $hash . '-5.' . $img->getExt(); - $micro = $a->get_baseurl() . '/photo/' . $hash . '-6.' . $img->getExt(); + $photo = App::get_baseurl() . '/photo/' . $hash . '-4.' . $img->getExt(); + $thumb = App::get_baseurl() . '/photo/' . $hash . '-5.' . $img->getExt(); + $micro = App::get_baseurl() . '/photo/' . $hash . '-6.' . $img->getExt(); } else { $photo_failure = true; } @@ -853,9 +851,9 @@ function import_profile_photo($photo, $uid, $cid, $quit_on_error = false) { } if ($photo_failure) { - $photo = $a->get_baseurl() . '/images/person-175.jpg'; - $thumb = $a->get_baseurl() . '/images/person-80.jpg'; - $micro = $a->get_baseurl() . '/images/person-48.jpg'; + $photo = App::get_baseurl() . '/images/person-175.jpg'; + $thumb = App::get_baseurl() . '/images/person-80.jpg'; + $micro = App::get_baseurl() . '/images/person-48.jpg'; } return(array($photo,$thumb,$micro)); @@ -1044,18 +1042,18 @@ function store_photo($a, $uid, $imagedata = "", $url = "") { return(array()); } - $image = array("page" => $a->get_baseurl().'/photos/'.$page_owner_nick.'/image/'.$hash, - "full" => $a->get_baseurl()."/photo/{$hash}-0.".$ph->getExt()); + $image = array("page" => App::get_baseurl().'/photos/'.$page_owner_nick.'/image/'.$hash, + "full" => App::get_baseurl()."/photo/{$hash}-0.".$ph->getExt()); if ($width > 800 || $height > 800) { - $image["large"] = $a->get_baseurl()."/photo/{$hash}-0.".$ph->getExt(); + $image["large"] = App::get_baseurl()."/photo/{$hash}-0.".$ph->getExt(); } if ($width > 640 || $height > 640) { $ph->scaleImage(640); $r = $ph->store($uid, $visitor, $hash, $tempfile, t('Wall Photos'), 1, 0, $defperm); if ($r) { - $image["medium"] = $a->get_baseurl()."/photo/{$hash}-1.".$ph->getExt(); + $image["medium"] = App::get_baseurl()."/photo/{$hash}-1.".$ph->getExt(); } } @@ -1063,7 +1061,7 @@ function store_photo($a, $uid, $imagedata = "", $url = "") { $ph->scaleImage(320); $r = $ph->store($uid, $visitor, $hash, $tempfile, t('Wall Photos'), 2, 0, $defperm); if ($r) { - $image["small"] = $a->get_baseurl()."/photo/{$hash}-2.".$ph->getExt(); + $image["small"] = App::get_baseurl()."/photo/{$hash}-2.".$ph->getExt(); } } @@ -1088,7 +1086,7 @@ function store_photo($a, $uid, $imagedata = "", $url = "") { $r = $ph->store($uid, $visitor, $hash, $tempfile, t('Wall Photos'), 3, 0, $defperm); if ($r) { - $image["thumb"] = $a->get_baseurl()."/photo/{$hash}-3.".$ph->getExt(); + $image["thumb"] = App::get_baseurl()."/photo/{$hash}-3.".$ph->getExt(); } } diff --git a/include/Probe.php b/include/Probe.php index 5c2ba86ccd..6145daaaae 100644 --- a/include/Probe.php +++ b/include/Probe.php @@ -324,7 +324,7 @@ class Probe { !isset($parts["path"])) return false; - // todo: Ports? + /// @todo: Ports? $host = $parts["host"]; if ($host == 'twitter.com') diff --git a/include/acl_selectors.php b/include/acl_selectors.php index ed9c634c23..a207753797 100644 --- a/include/acl_selectors.php +++ b/include/acl_selectors.php @@ -34,7 +34,7 @@ function group_select($selname,$selclass,$preselected = false,$size = 4) { call_hooks($a->module . '_pre_' . $selname, $arr); if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { if((is_array($preselected)) && in_array($rr['id'], $preselected)) $selected = " selected=\"selected\" "; else @@ -65,20 +65,24 @@ function contact_selector($selname, $selclass, $preselected = false, $options) { $exclude = false; $size = 4; - if(is_array($options)) { - if(x($options,'size')) + if (is_array($options)) { + if (x($options,'size')) $size = $options['size']; - if(x($options,'mutual_friends')) + if (x($options,'mutual_friends')) { $mutual = true; - if(x($options,'single')) + } + if (x($options,'single')) { $single = true; - if(x($options,'multiple')) + } + if (x($options,'multiple')) { $single = false; - if(x($options,'exclude')) + } + if (x($options,'exclude')) { $exclude = $options['exclude']; + } - if(x($options,'networks')) { + if (x($options,'networks')) { switch($options['networks']) { case 'DFRN_ONLY': $networks = array(NETWORK_DFRN); @@ -145,11 +149,12 @@ function contact_selector($selname, $selclass, $preselected = false, $options) { call_hooks($a->module . '_pre_' . $selname, $arr); if (dbm::is_result($r)) { - foreach($r as $rr) { - if((is_array($preselected)) && in_array($rr['id'], $preselected)) + foreach ($r as $rr) { + if ((is_array($preselected)) && in_array($rr['id'], $preselected)) { $selected = " selected=\"selected\" "; - else + } else { $selected = ''; + } $trimmed = mb_substr($rr['name'],0,20); @@ -221,16 +226,19 @@ function contact_select($selname, $selclass, $preselected = false, $size = 4, $p $receiverlist = array(); if (dbm::is_result($r)) { - foreach($r as $rr) { - if((is_array($preselected)) && in_array($rr['id'], $preselected)) + foreach ($r as $rr) { + if ((is_array($preselected)) && in_array($rr['id'], $preselected)) { $selected = " selected=\"selected\" "; - else + } + else { $selected = ''; + } - if($privmail) + if ($privmail) { $trimmed = GetProfileUsername($rr['url'], $rr['name'], false); - else + } else { $trimmed = mb_substr($rr['name'],0,20); + } $receiverlist[] = $trimmed; @@ -256,16 +264,22 @@ function fixacl(&$item) { function prune_deadguys($arr) { - if(! $arr) + if (! $arr) { return $arr; + } + $str = dbesc(implode(',',$arr)); + $r = q("SELECT `id` FROM `contact` WHERE `id` IN ( " . $str . ") AND `blocked` = 0 AND `pending` = 0 AND `archive` = 0 "); - if($r) { + + if ($r) { $ret = array(); - foreach($r as $rr) + foreach ($r as $rr) { $ret[] = intval($rr['id']); + } return $ret; } + return array(); } @@ -392,8 +406,9 @@ function construct_acl_data(&$a, $user) { function acl_lookup(&$a, $out_type = 'json') { - if(!local_user()) - return ""; + if (!local_user()) { + return ''; + } $start = (x($_REQUEST,'start') ? $_REQUEST['start'] : 0); $count = (x($_REQUEST,'count') ? $_REQUEST['count'] : 100); @@ -540,35 +555,33 @@ function acl_lookup(&$a, $out_type = 'json') { dbesc(NETWORK_ZOT), dbesc(NETWORK_DIASPORA) ); - } - elseif($type == 'a') { + } elseif ($type == 'a') { $r = q("SELECT `id`, `name`, `nick`, `micro`, `network`, `url`, `attag`, `forum`, `prv` FROM `contact` WHERE `uid` = %d AND `pending` = 0 $sql_extra2 ORDER BY `name` ASC ", intval(local_user()) ); - } - elseif($type == 'x') { + } elseif ($type == 'x') { // autocomplete for global contact search (e.g. navbar search) $r = navbar_complete($a); $contacts = array(); - if($r) { - foreach($r as $g) { + if ($r) { + foreach ($r as $g) { $contacts[] = array( - "photo" => proxy_url($g['photo'], false, PROXY_SIZE_MICRO), - "name" => $g['name'], - "nick" => (x($g['addr']) ? $g['addr'] : $g['url']), - "network" => $g['network'], - "link" => $g['url'], - "forum" => (x($g['community']) ? 1 : 0), + 'photo' => proxy_url($g['photo'], false, PROXY_SIZE_MICRO), + 'name' => $g['name'], + 'nick' => (x($g['addr']) ? $g['addr'] : $g['url']), + 'network' => $g['network'], + 'link' => $g['url'], + 'forum' => (x($g['community']) ? 1 : 0), ); } } $o = array( 'start' => $start, - 'count' => $count, - 'items' => $contacts, + 'count' => $count, + 'items' => $contacts, ); echo json_encode($o); killme(); @@ -578,16 +591,16 @@ function acl_lookup(&$a, $out_type = 'json') { if (dbm::is_result($r)) { - foreach($r as $g){ + foreach ($r as $g){ $contacts[] = array( - "type" => "c", - "photo" => proxy_url($g['micro'], false, PROXY_SIZE_MICRO), - "name" => htmlentities($g['name']), - "id" => intval($g['id']), - "network" => $g['network'], - "link" => $g['url'], - "nick" => htmlentities(($g['attag']) ? $g['attag'] : $g['nick']), - "forum" => ((x($g['forum']) || x($g['prv'])) ? 1 : 0), + 'type' => 'c', + 'photo' => proxy_url($g['micro'], false, PROXY_SIZE_MICRO), + 'name' => htmlentities($g['name']), + 'id' => intval($g['id']), + 'network' => $g['network'], + 'link' => $g['url'], + 'nick' => htmlentities(($g['attag']) ? $g['attag'] : $g['nick']), + 'forum' => ((x($g['forum']) || x($g['prv'])) ? 1 : 0), ); } } @@ -613,7 +626,7 @@ function acl_lookup(&$a, $out_type = 'json') { implode("','", $known_contacts) ); if (dbm::is_result($r)){ - foreach($r as $row) { + foreach ($r as $row) { // nickname.. $up = parse_url($row['author-link']); $nick = explode("/",$up['path']); @@ -621,14 +634,14 @@ function acl_lookup(&$a, $out_type = 'json') { $nick .= "@".$up['host']; // /nickname $unknow_contacts[] = array( - "type" => "c", - "photo" => proxy_url($row['author-avatar'], false, PROXY_SIZE_MICRO), - "name" => htmlentities($row['author-name']), - "id" => '', - "network" => "unknown", - "link" => $row['author-link'], - "nick" => htmlentities($nick), - "forum" => false + 'type' => 'c', + 'photo' => proxy_url($row['author-avatar'], false, PROXY_SIZE_MICRO), + 'name' => htmlentities($row['author-name']), + 'id' => '', + 'network' => 'unknown', + 'link' => $row['author-link'], + 'nick' => htmlentities($nick), + 'forum' => false ); } } @@ -638,34 +651,34 @@ function acl_lookup(&$a, $out_type = 'json') { } $results = array( - "tot" => $tot, - "start" => $start, - "count" => $count, - "groups" => $groups, - "contacts" => $contacts, - "items" => $items, - "type" => $type, - "search" => $search, + 'tot' => $tot, + 'start' => $start, + 'count' => $count, + 'groups' => $groups, + 'contacts' => $contacts, + 'items' => $items, + 'type' => $type, + 'search' => $search, ); call_hooks('acl_lookup_end', $results); if($out_type === 'html') { $o = array( - 'tot' => $results["tot"], - 'start' => $results["start"], - 'count' => $results["count"], - 'groups' => $results["groups"], - 'contacts' => $results["contacts"], + 'tot' => $results['tot'], + 'start' => $results['start'], + 'count' => $results['count'], + 'groups' => $results['groups'], + 'contacts' => $results['contacts'], ); return $o; } $o = array( - 'tot' => $results["tot"], - 'start' => $results["start"], - 'count' => $results["count"], - 'items' => $results["items"], + 'tot' => $results['tot'], + 'start' => $results['start'], + 'count' => $results['count'], + 'items' => $results['items'], ); echo json_encode($o); @@ -682,7 +695,7 @@ function navbar_complete(&$a) { // logger('navbar_complete'); - if((get_config('system','block_public')) && (! local_user()) && (! remote_user())) { + if ((get_config('system','block_public')) && (! local_user()) && (! remote_user())) { return; } @@ -693,28 +706,32 @@ function navbar_complete(&$a) { $mode = $_REQUEST['smode']; // don't search if search term has less than 2 characters - if(! $search || mb_strlen($search) < 2) + if (! $search || mb_strlen($search) < 2) { return array(); + } - if(substr($search,0,1) === '@') + if (substr($search,0,1) === '@') { $search = substr($search,1); + } - if($localsearch) { + if ($localsearch) { $x = DirSearch::global_search_by_name($search, $mode); return $x; } - if(! $localsearch) { + if (! $localsearch) { $p = (($a->pager['page'] != 1) ? '&p=' . $a->pager['page'] : ''); $x = z_fetch_url(get_server().'/lsearch?f=' . $p . '&search=' . urlencode($search)); - if($x['success']) { + if ($x['success']) { $t = 0; $j = json_decode($x['body'],true); - if($j && $j['results']) { + if ($j && $j['results']) { return $j['results']; } } } + + /// @TODO Not needed here? return; } diff --git a/include/api.php b/include/api.php index 2ae1aeaa02..678c0ca333 100644 --- a/include/api.php +++ b/include/api.php @@ -3068,8 +3068,8 @@ 'image/gif' => 'gif' ); $data = array('photo'=>array()); - if($r) { - foreach($r as $rr) { + if ($r) { + foreach ($r as $rr) { $photo = array(); $photo['id'] = $rr['resource-id']; $photo['album'] = $rr['album']; @@ -3218,7 +3218,7 @@ function api_share_as_retweet(&$item) { $body = trim($item["body"]); - if (diaspora::is_reshare($body, false)===false) { + if (Diaspora::is_reshare($body, false)===false) { return false; } diff --git a/include/auth.php b/include/auth.php index 2ca9c3efb2..e3c8d92eeb 100644 --- a/include/auth.php +++ b/include/auth.php @@ -125,8 +125,7 @@ if (isset($_SESSION) && x($_SESSION,'authenticated') && (!x($_POST,'auth-params' $openid = new LightOpenID; $openid->identity = $openid_url; $_SESSION['openid'] = $openid_url; - $a = get_app(); - $openid->returnUrl = $a->get_baseurl(true).'/openid'; + $openid->returnUrl = App::get_baseurl(true).'/openid'; goaway($openid->authUrl()); } catch (Exception $e) { notice(t('We encountered a problem while logging in with the OpenID you provided. Please check the correct spelling of the ID.').'

'.t('The error message was:').' '.$e->getMessage()); diff --git a/include/bb2diaspora.php b/include/bb2diaspora.php index 0c637dc3af..842dbf0b1c 100644 --- a/include/bb2diaspora.php +++ b/include/bb2diaspora.php @@ -144,8 +144,6 @@ function unescape_underscores_in_links($m) { function format_event_diaspora($ev) { - $a = get_app(); - if(! ((is_array($ev)) && count($ev))) return ''; @@ -160,7 +158,7 @@ function format_event_diaspora($ev) { $ev['start'] , $bd_format )) : day_translate(datetime_convert('UTC', 'UTC', $ev['start'] , $bd_format))) - . '](' . $a->get_baseurl() . '/localtime/?f=&time=' . urlencode(datetime_convert('UTC','UTC',$ev['start'])) . ")\n"; + . '](' . App::get_baseurl() . '/localtime/?f=&time=' . urlencode(datetime_convert('UTC','UTC',$ev['start'])) . ")\n"; if(! $ev['nofinish']) $o .= t('Finishes:') . ' ' . '[' @@ -168,7 +166,7 @@ function format_event_diaspora($ev) { $ev['finish'] , $bd_format )) : day_translate(datetime_convert('UTC', 'UTC', $ev['finish'] , $bd_format ))) - . '](' . $a->get_baseurl() . '/localtime/?f=&time=' . urlencode(datetime_convert('UTC','UTC',$ev['finish'])) . ")\n"; + . '](' . App::get_baseurl() . '/localtime/?f=&time=' . urlencode(datetime_convert('UTC','UTC',$ev['finish'])) . ")\n"; if(strlen($ev['location'])) $o .= t('Location:') . bb2diaspora($ev['location']) diff --git a/include/bbcode.php b/include/bbcode.php index 27213007ce..74dde2fdf4 100644 --- a/include/bbcode.php +++ b/include/bbcode.php @@ -343,7 +343,7 @@ function bb_replace_images($body, $images) { $newbody = $body; $cnt = 0; - foreach($images as $image) { + foreach ($images as $image) { // We're depending on the property of 'foreach' (specified on the PHP website) that // it loops over the array starting from the first element and going sequentially // to the last element @@ -613,9 +613,7 @@ function GetProfileUsername($profile, $username, $compact = false, $getnetwork = } function bb_DiasporaLinks($match) { - $a = get_app(); - - return "[url=".$a->get_baseurl()."/display/".$match[1]."]".$match[2]."[/url]"; + return "[url=".App::get_baseurl()."/display/".$match[1]."]".$match[2]."[/url]"; } function bb_RemovePictureLinks($match) { @@ -894,7 +892,7 @@ function bbcode($Text,$preserve_nl = false, $tryoembed = true, $simplehtml = fal // we may need to restrict this further if it picks up too many strays // link acct:user@host to a webfinger profile redirector - $Text = preg_replace('/acct:([^@]+)@((?!\-)(?:[a-zA-Z\d\-]{0,62}[a-zA-Z\d]\.){1,126}(?!\d+)[a-zA-Z\d]{1,63})/', 'acct:$1@$2',$Text); + $Text = preg_replace('/acct:([^@]+)@((?!\-)(?:[a-zA-Z\d\-]{0,62}[a-zA-Z\d]\.){1,126}(?!\d+)[a-zA-Z\d]{1,63})/', 'acct:$1@$2',$Text); // Perform MAIL Search $Text = preg_replace("/\[mail\]([$MAILSearchString]*)\[\/mail\]/", '$1', $Text); @@ -1063,9 +1061,9 @@ function bbcode($Text,$preserve_nl = false, $tryoembed = true, $simplehtml = fal return(bb_ShareAttributes($match, $simplehtml)); },$Text); - $Text = preg_replace("/\[crypt\](.*?)\[\/crypt\]/ism",'
' . t('Encrypted content') . '
', $Text); - $Text = preg_replace("/\[crypt(.*?)\](.*?)\[\/crypt\]/ism",'
' . t('Encrypted content') . '
', $Text); - //$Text = preg_replace("/\[crypt=(.*?)\](.*?)\[\/crypt\]/ism",'
' . t('Encrypted content') . '
', $Text); + $Text = preg_replace("/\[crypt\](.*?)\[\/crypt\]/ism",'
' . t('Encrypted content') . '
', $Text); + $Text = preg_replace("/\[crypt(.*?)\](.*?)\[\/crypt\]/ism",'
' . t('Encrypted content') . '
', $Text); + //$Text = preg_replace("/\[crypt=(.*?)\](.*?)\[\/crypt\]/ism",'
' . t('Encrypted content') . '
', $Text); // Try to Oembed diff --git a/include/contact_selectors.php b/include/contact_selectors.php index 0790e503ea..6b827baf31 100644 --- a/include/contact_selectors.php +++ b/include/contact_selectors.php @@ -13,7 +13,7 @@ function contact_profile_assign($current,$foreign_net) { intval($_SESSION['uid'])); if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { $selected = (($rr['id'] == $current) ? " selected=\"selected\" " : ""); $o .= "\r\n"; } @@ -99,7 +99,7 @@ function network_to_name($s, $profile = "") { $networkname = str_replace($search,$replace,$s); - if (($s == NETWORK_DIASPORA) AND ($profile != "") AND diaspora::is_redmatrix($profile)) { + if (($s == NETWORK_DIASPORA) AND ($profile != "") AND Diaspora::is_redmatrix($profile)) { $networkname = t("Hubzilla/Redmatrix"); $r = q("SELECT `gserver`.`platform` FROM `gcontact` diff --git a/include/contact_widgets.php b/include/contact_widgets.php index f66d23c518..36675da873 100644 --- a/include/contact_widgets.php +++ b/include/contact_widgets.php @@ -80,11 +80,13 @@ function networks_widget($baseurl,$selected = '') { $a = get_app(); - if(!local_user()) + if (!local_user()) { return ''; + } - if(!feature_enabled(local_user(),'networks')) + if (!feature_enabled(local_user(),'networks')) { return ''; + } $extra_sql = unavailable_networks(); @@ -95,9 +97,11 @@ function networks_widget($baseurl,$selected = '') { $nets = array(); if (dbm::is_result($r)) { require_once('include/contact_selectors.php'); - foreach($r as $rr) { - if($rr['network']) - $nets[] = array('ref' => $rr['network'], 'name' => network_to_name($rr['network']), 'selected' => (($selected == $rr['network']) ? 'selected' : '' )); + foreach ($r as $rr) { + /// @TODO If 'network' is not there, this triggers an E_NOTICE + if ($rr['network']) { + $nets[] = array('ref' => $rr['network'], 'name' => network_to_name($rr['network']), 'selected' => (($selected == $rr['network']) ? 'selected' : '' )); + } } } @@ -116,16 +120,18 @@ function networks_widget($baseurl,$selected = '') { } function fileas_widget($baseurl,$selected = '') { - $a = get_app(); - if(! local_user()) + if (! local_user()) { return ''; + } - if(! feature_enabled(local_user(),'filing')) + if (! feature_enabled(local_user(),'filing')) { return ''; + } $saved = get_pconfig(local_user(),'system','filetags'); - if(! strlen($saved)) + if (! strlen($saved)) { return; + } $matches = false; $terms = array(); @@ -235,7 +241,7 @@ function common_friends_visitor_widget($profile_uid) { return replace_macros(get_markup_template('remote_friends_common.tpl'), array( '$desc' => sprintf( tt("%d contact in common", "%d contacts in common", $t), $t), - '$base' => $a->get_baseurl(), + '$base' => App::get_baseurl(), '$uid' => $profile_uid, '$cid' => (($cid) ? $cid : '0'), '$linkmore' => (($t > 5) ? 'true' : ''), diff --git a/include/conversation.php b/include/conversation.php index 567bf83e1b..36eded8e8a 100644 --- a/include/conversation.php +++ b/include/conversation.php @@ -78,7 +78,7 @@ function item_redir_and_replace_images($body, $images, $cid) { $newbody .= $origbody; $cnt = 0; - foreach($images as $image) { + foreach ($images as $image) { // We're depending on the property of 'foreach' (specified on the PHP website) that // it loops over the array starting from the first element and going sequentially // to the last element @@ -324,11 +324,13 @@ function localize_item(&$item){ // add sparkle links to appropriate permalinks $x = stristr($item['plink'],'/display/'); - if($x) { + if ($x) { $sparkle = false; $y = best_link_url($item,$sparkle,true); - if(strstr($y,'/redir/')) + + if (strstr($y,'/redir/')) { $item['plink'] = $y . '?f=&url=' . $item['plink']; + } } @@ -864,7 +866,7 @@ function conversation(&$a, $items, $mode, $update, $preview = false) { } $o = replace_macros($page_template, array( - '$baseurl' => $a->get_baseurl($ssl_state), + '$baseurl' => App::get_baseurl($ssl_state), '$return_path' => $a->query_string, '$live_update' => $live_update_div, '$remove' => t('remove'), @@ -1183,7 +1185,7 @@ function status_editor($a,$x, $notes_cid = 0, $popup=false) { $tpl = get_markup_template('jot-header.tpl'); $a->page['htmlhead'] .= replace_macros($tpl, array( '$newpost' => 'true', - '$baseurl' => $a->get_baseurl(true), + '$baseurl' => App::get_baseurl(true), '$editselect' => (($plaintext) ? 'none' : '/(profile-jot-text|prvmail-text)/'), '$geotag' => $geotag, '$nickname' => $x['nickname'], @@ -1201,7 +1203,7 @@ function status_editor($a,$x, $notes_cid = 0, $popup=false) { $tpl = get_markup_template('jot-end.tpl'); $a->page['end'] .= replace_macros($tpl, array( '$newpost' => 'true', - '$baseurl' => $a->get_baseurl(true), + '$baseurl' => App::get_baseurl(true), '$editselect' => (($plaintext) ? 'none' : '/(profile-jot-text|prvmail-text)/'), '$geotag' => $geotag, '$nickname' => $x['nickname'], @@ -1267,7 +1269,7 @@ function status_editor($a,$x, $notes_cid = 0, $popup=false) { '$ptyp' => (($notes_cid) ? 'note' : 'wall'), '$content' => $x['content'], '$post_id' => $x['post_id'], - '$baseurl' => $a->get_baseurl(true), + '$baseurl' => App::get_baseurl(true), '$defloc' => $x['default_location'], '$visitor' => $x['visitor'], '$pvisit' => (($notes_cid) ? 'none' : $x['visitor']), diff --git a/include/datetime.php b/include/datetime.php index e88c274ab9..a17c405dc3 100644 --- a/include/datetime.php +++ b/include/datetime.php @@ -553,7 +553,7 @@ function update_contact_birthdays() { $r = q("SELECT * FROM contact WHERE `bd` != '' AND `bd` != '0000-00-00' AND SUBSTRING(`bd`,1,4) != `bdyear` "); if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { logger('update_contact_birthday: ' . $rr['bd']); diff --git a/include/dbstructure.php b/include/dbstructure.php index c694014f68..50c2856ab6 100644 --- a/include/dbstructure.php +++ b/include/dbstructure.php @@ -26,7 +26,6 @@ function update_fail($update_id, $error_message){ } // every admin could had different language - foreach ($adminlist as $admin) { $lang = (($admin['language'])?$admin['language']:'en'); push_lang($lang); @@ -56,11 +55,11 @@ function update_fail($update_id, $error_message){ $email_tpl = get_intltext_template("update_fail_eml.tpl"); $email_msg = replace_macros($email_tpl, array( '$sitename' => $a->config['sitename'], - '$siteurl' => $a->get_baseurl(), + '$siteurl' => App::get_baseurl(), '$update' => DB_UPDATE_VERSION, '$error' => sprintf(t('Update %s failed. See error logs.'), DB_UPDATE_VERSION) )); - $subject=sprintf(t('Update Error at %s'), $a->get_baseurl()); + $subject=sprintf(t('Update Error at %s'), App::get_baseurl()); require_once('include/email.php'); $subject = email_header_encode($subject,'UTF-8'); mail($a->config['admin_email'], $subject, $email_msg, @@ -83,8 +82,9 @@ function table_structure($table) { if (dbm::is_result($indexes)) foreach ($indexes AS $index) { - if ($index["Index_type"] == "FULLTEXT") + if ($index["Index_type"] == "FULLTEXT") { continue; + } if ($index['Key_name'] != 'PRIMARY' && $index['Non_unique'] == '0' && !isset($indexdata[$index["Key_name"]])) { $indexdata[$index["Key_name"]] = array('UNIQUE'); @@ -95,26 +95,31 @@ function table_structure($table) { // To avoid the need to add this to every index definition we just ignore it here. // Exception are primary indexes // Since there are some combindex primary indexes we use the limit of 180 here. - if (($index["Sub_part"] != "") AND (($index["Sub_part"] < 180) OR ($index["Key_name"] == "PRIMARY"))) + if (($index["Sub_part"] != "") AND (($index["Sub_part"] < 180) OR ($index["Key_name"] == "PRIMARY"))) { $column .= "(".$index["Sub_part"].")"; + } $indexdata[$index["Key_name"]][] = $column; } if (dbm::is_result($structures)) { - foreach($structures AS $field) { + foreach ($structures AS $field) { $fielddata[$field["Field"]]["type"] = $field["Type"]; - if ($field["Null"] == "NO") + if ($field["Null"] == "NO") { $fielddata[$field["Field"]]["not null"] = true; + } - if (isset($field["Default"])) + if (isset($field["Default"])) { $fielddata[$field["Field"]]["default"] = $field["Default"]; + } - if ($field["Extra"] != "") + if ($field["Extra"] != "") { $fielddata[$field["Field"]]["extra"] = $field["Extra"]; + } - if ($field["Key"] == "PRI") + if ($field["Key"] == "PRI") { $fielddata[$field["Field"]]["primary"] = true; + } } } return(array("fields"=>$fielddata, "indexes"=>$indexdata)); @@ -138,13 +143,15 @@ function print_structure($database, $charset) { function update_structure($verbose, $action, $tables=null, $definition=null) { global $a, $db; - if ($action) + if ($action) { set_config('system', 'maintenance', 1); + } - if (isset($a->config["system"]["db_charset"])) + if (isset($a->config["system"]["db_charset"])) { $charset = $a->config["system"]["db_charset"]; - else + } else { $charset = "utf8"; + } $errors = false; @@ -153,8 +160,9 @@ function update_structure($verbose, $action, $tables=null, $definition=null) { // Get the current structure $database = array(); - if (is_null($tables)) - $tables = q("show tables"); + if (is_null($tables)) { + $tables = q("SHOW TABLES"); + } foreach ($tables AS $table) { $table = current($table); @@ -164,21 +172,24 @@ function update_structure($verbose, $action, $tables=null, $definition=null) { } // Get the definition - if (is_null($definition)) + if (is_null($definition)) { $definition = db_definition($charset); + } // Ensure index conversion to unique removes duplicates $sql_config = "SET session old_alter_table=1;"; - if ($verbose) + if ($verbose) { echo $sql_config."\n"; - if ($action) - @$db->q($sql_config); + } + if ($action) { + $db->q($sql_config); + } // MySQL >= 5.7.4 doesn't support the IGNORE keyword in ALTER TABLE statements if ((version_compare($db->server_info(), '5.7.4') >= 0) AND !(strpos($db->server_info(), 'MariaDB') !== false)) { $ignore = ''; - }else { + } else { $ignore = ' IGNORE'; } @@ -193,10 +204,12 @@ function update_structure($verbose, $action, $tables=null, $definition=null) { } $is_new_table = True; } else { - // Drop the index if it isn't present in the definition - // or the definition differ from current status - // and index name doesn't start with "local_" - foreach ($database[$name]["indexes"] AS $indexname => $fieldnames) { + /* + * Drop the index if it isn't present in the definition + * or the definition differ from current status + * and index name doesn't start with "local_" + */ + foreach ($database[$name]["indexes"] as $indexname => $fieldnames) { $current_index_definition = implode(",",$fieldnames); if (isset($structure["indexes"][$indexname])) { $new_index_definition = implode(",",$structure["indexes"][$indexname]); @@ -205,39 +218,44 @@ function update_structure($verbose, $action, $tables=null, $definition=null) { } if ($current_index_definition != $new_index_definition && substr($indexname, 0, 6) != 'local_') { $sql2=db_drop_index($indexname); - if ($sql3 == "") + if ($sql3 == "") { $sql3 = "ALTER".$ignore." TABLE `".$name."` ".$sql2; - else + } else { $sql3 .= ", ".$sql2; + } } } // Compare the field structure field by field foreach ($structure["fields"] AS $fieldname => $parameters) { if (!isset($database[$name]["fields"][$fieldname])) { $sql2=db_add_table_field($fieldname, $parameters); - if ($sql3 == "") + if ($sql3 == "") { $sql3 = "ALTER TABLE `".$name."` ".$sql2; - else + } else { $sql3 .= ", ".$sql2; + } } else { // Compare the field definition $current_field_definition = implode(",",$database[$name]["fields"][$fieldname]); $new_field_definition = implode(",",$parameters); if ($current_field_definition != $new_field_definition) { $sql2=db_modify_table_field($fieldname, $parameters); - if ($sql3 == "") + if ($sql3 == "") { $sql3 = "ALTER TABLE `".$name."` ".$sql2; - else + } else { $sql3 .= ", ".$sql2; + } } } } } - // Create the index if the index don't exists in database - // or the definition differ from the current status. - // Don't create keys if table is new + /* + * Create the index if the index don't exists in database + * or the definition differ from the current status. + * Don't create keys if table is new + */ if (!$is_new_table) { foreach ($structure["indexes"] AS $indexname => $fieldnames) { if (isset($database[$name]["indexes"][$indexname])) { @@ -367,10 +385,11 @@ function db_create_index($indexname, $fieldnames, $method="ADD") { if ($names != "") $names .= ","; - if (preg_match('|(.+)\((\d+)\)|', $fieldname, $matches)) + if (preg_match('|(.+)\((\d+)\)|', $fieldname, $matches)) { $names .= "`".dbesc($matches[1])."`(".intval($matches[2]).")"; - else + } else { $names .= "`".dbesc($fieldname)."`"; + } } if ($indexname == "PRIMARY") { @@ -383,8 +402,9 @@ function db_create_index($indexname, $fieldnames, $method="ADD") { } function db_index_suffix($charset, $reduce = 0) { - if ($charset != "utf8mb4") + if ($charset != "utf8mb4") { return ""; + } // On utf8mb4 indexes can only have a length of 191 $indexlength = 191 - $reduce; @@ -1573,9 +1593,6 @@ function dbstructure_run(&$argv, &$argc) { echo "dumpsql dump database schema\n"; return; - - - } if (array_search(__file__,get_included_files())===0){ diff --git a/include/delivery.php b/include/delivery.php index a7aebe709a..f7245942a9 100644 --- a/include/delivery.php +++ b/include/delivery.php @@ -323,7 +323,7 @@ function delivery_run(&$argv, &$argc){ // perform local delivery if we are on the same site - if (link_compare($basepath,$a->get_baseurl())) { + if (link_compare($basepath,App::get_baseurl())) { $nickname = basename($contact['url']); if ($contact['issued-id']) @@ -508,7 +508,7 @@ function delivery_run(&$argv, &$argc){ break; if ($mail) { - diaspora::send_mail($item,$owner,$contact); + Diaspora::send_mail($item,$owner,$contact); break; } @@ -530,22 +530,22 @@ function delivery_run(&$argv, &$argc){ if (($target_item['deleted']) && (($target_item['uri'] === $target_item['parent-uri']) || $followup)) { // top-level retraction logger('diaspora retract: '.$loc); - diaspora::send_retraction($target_item,$owner,$contact,$public_message); + Diaspora::send_retraction($target_item,$owner,$contact,$public_message); break; } elseif ($followup) { // send comments and likes to owner to relay logger('diaspora followup: '.$loc); - diaspora::send_followup($target_item,$owner,$contact,$public_message); + Diaspora::send_followup($target_item,$owner,$contact,$public_message); break; } elseif ($target_item['uri'] !== $target_item['parent-uri']) { // we are the relay - send comments, likes and relayable_retractions to our conversants logger('diaspora relay: '.$loc); - diaspora::send_relay($target_item,$owner,$contact,$public_message); + Diaspora::send_relay($target_item,$owner,$contact,$public_message); break; } elseif ($top_level && !$walltowall) { // currently no workable solution for sending walltowall logger('diaspora status: '.$loc); - diaspora::send_status($target_item,$owner,$contact,$public_message); + Diaspora::send_status($target_item,$owner,$contact,$public_message); break; } diff --git a/include/dfrn.php b/include/dfrn.php index 6451b8521b..689c5c2832 100644 --- a/include/dfrn.php +++ b/include/dfrn.php @@ -105,8 +105,9 @@ class dfrn { dbesc($owner_nick) ); - if(! dbm::is_result($r)) + if (! dbm::is_result($r)) { killme(); + } $owner = $r[0]; $owner_id = $owner['uid']; @@ -139,8 +140,9 @@ class dfrn { intval($owner_id) ); - if(! dbm::is_result($r)) + if (! dbm::is_result($r)) { killme(); + } $contact = $r[0]; require_once('include/security.php'); diff --git a/include/diaspora.php b/include/diaspora.php index 3b4832e74f..e4c81dca49 100644 --- a/include/diaspora.php +++ b/include/diaspora.php @@ -23,7 +23,7 @@ require_once("include/queue_fn.php"); * @brief This class contain functions to create and send Diaspora XML files * */ -class diaspora { +class Diaspora { /** * @brief Return a list of relay servers @@ -319,8 +319,8 @@ class diaspora { dbesc(NETWORK_DIASPORA), dbesc($msg["author"]) ); - if($r) { - foreach($r as $rr) { + if ($r) { + foreach ($r as $rr) { logger("delivering to: ".$rr["username"]); self::dispatch($rr,$msg); } @@ -344,7 +344,7 @@ class diaspora { // This will often be different with relayed messages (for example "like" and "comment") $sender = $msg["author"]; - if (!diaspora::valid_posting($msg, $fields)) { + if (!self::valid_posting($msg, $fields)) { logger("Invalid posting"); return false; } @@ -669,27 +669,30 @@ class diaspora { * @return string the handle */ public static function handle_from_contact($contact_id, $gcontact_id = 0) { - $handle = False; + $handle = false; logger("contact id is ".$contact_id." - gcontact id is ".$gcontact_id, LOGGER_DEBUG); if ($gcontact_id != 0) { $r = q("SELECT `addr` FROM `gcontact` WHERE `id` = %d AND `addr` != ''", intval($gcontact_id)); - if ($r) + + if (dbm::is_result($r)) { return strtolower($r[0]["addr"]); + } } $r = q("SELECT `network`, `addr`, `self`, `url`, `nick` FROM `contact` WHERE `id` = %d", intval($contact_id)); - if ($r) { + + if (dbm::is_result($r)) { $contact = $r[0]; logger("contact 'self' = ".$contact['self']." 'url' = ".$contact['url'], LOGGER_DEBUG); - if($contact['addr'] != "") + if ($contact['addr'] != "") { $handle = $contact['addr']; - else { + } else { $baseurl_start = strpos($contact['url'],'://') + 3; $baseurl_length = strpos($contact['url'],'/profile') - $baseurl_start; // allows installations in a subdirectory--not sure how Diaspora will handle $baseurl = substr($contact['url'], $baseurl_start, $baseurl_length); @@ -700,6 +703,29 @@ class diaspora { return strtolower($handle); } + /** + * @brief get a url (scheme://domain.tld/u/user) from a given Diaspora* + * fcontact guid + * + * @param mixed $fcontact_guid Hexadecimal string guid + * + * @return string the contact url or null + */ + public static function url_from_contact_guid($fcontact_guid) { + logger("fcontact guid is ".$fcontact_guid, LOGGER_DEBUG); + + $r = q("SELECT `url` FROM `fcontact` WHERE `url` != '' AND `network` = '%s' AND `guid` = '%s'", + dbesc(NETWORK_DIASPORA), + dbesc($fcontact_guid) + ); + + if (dbm::is_result($r)) { + return $r[0]['url']; + } + + return null; + } + /** * @brief Get a contact id for a given handle * @@ -806,7 +832,7 @@ class diaspora { dbesc($guid) ); - if($r) { + if ($r) { logger("message ".$guid." already exists for user ".$uid); return $r[0]["id"]; } @@ -826,6 +852,38 @@ class diaspora { },$item["body"]); } + /** + * @brief Checks for relative /people/* links in an item body to match local + * contacts or prepends the remote host taken from the author link. + * + * @param string $body The item body to replace links from + * @param string $author_link The author link for missing local contact fallback + * + * @return the replaced string + */ + public function replace_people_guid($body, $author_link) { + $return = preg_replace_callback("&\[url=/people/([^\[\]]*)\](.*)\[\/url\]&Usi", + function ($match) use ($author_link) { + // $match + // 0 => '[url=/people/0123456789abcdef]Foo Bar[/url]' + // 1 => '0123456789abcdef' + // 2 => 'Foo Bar' + $handle = self::url_from_contact_guid($match[1]); + + if ($handle) { + $return = '@[url='.$handle.']'.$match[2].'[/url]'; + } else { + // No local match, restoring absolute remote URL from author scheme and host + $author_url = parse_url($author_link); + $return = '[url='.$author_url['scheme'].'://'.$author_url['host'].'/people/'.$match[1].']'.$match[2].'[/url]'; + } + + return $return; + }, $body); + + return $return; + } + /** * @brief sub function of "fetch_guid" which checks for links in messages * @@ -1115,22 +1173,26 @@ class diaspora { $text = unxmlify($data->text); $author = notags(unxmlify($data->author)); - if (isset($data->created_at)) + if (isset($data->created_at)) { $created_at = datetime_convert("UTC", "UTC", notags(unxmlify($data->created_at))); - else + } else { $created_at = datetime_convert(); + } $contact = self::allowed_contact_by_handle($importer, $sender, true); - if (!$contact) + if (!$contact) { return false; + } $message_id = self::message_exists($importer["uid"], $guid); - if ($message_id) + if ($message_id) { return $message_id; + } $parent_item = self::parent_item($importer["uid"], $parent_guid, $author, $contact); - if (!$parent_item) + if (!$parent_item) { return false; + } $person = self::person_by_handle($author); if (!is_array($person)) { @@ -1168,14 +1230,17 @@ class diaspora { $datarray["changed"] = $datarray["created"] = $datarray["edited"] = $created_at; - $datarray["body"] = diaspora2bb($text); + $body = diaspora2bb($text); + + $datarray["body"] = self::replace_people_guid($body, $person["url"]); self::fetch_guid($datarray); $message_id = item_store($datarray); - if ($message_id) + if ($message_id) { logger("Stored comment ".$datarray["guid"]." with message id ".$message_id, LOGGER_DEBUG); + } // If we are the origin of the parent we store the original data and notify our followers if($message_id AND $parent_item["origin"]) { @@ -1211,8 +1276,6 @@ class diaspora { $subject = notags(unxmlify($data->subject)); $author = notags(unxmlify($data->author)); - $reply = 0; - $msg_guid = notags(unxmlify($mesg->guid)); $msg_parent_guid = notags(unxmlify($mesg->parent_guid)); $msg_parent_author_signature = notags(unxmlify($mesg->parent_author_signature)); @@ -1222,16 +1285,17 @@ class diaspora { // "diaspora_handle" is the element name from the old version // "author" is the element name from the new version - if ($mesg->author) + if ($mesg->author) { $msg_author = notags(unxmlify($mesg->author)); - elseif ($mesg->diaspora_handle) + } elseif ($mesg->diaspora_handle) { $msg_author = notags(unxmlify($mesg->diaspora_handle)); - else + } else { return false; + } $msg_conversation_guid = notags(unxmlify($mesg->conversation_guid)); - if($msg_conversation_guid != $guid) { + if ($msg_conversation_guid != $guid) { logger("message conversation guid does not belong to the current conversation."); return false; } @@ -1243,15 +1307,15 @@ class diaspora { $author_signature = base64_decode($msg_author_signature); - if(strcasecmp($msg_author,$msg["author"]) == 0) { + if (strcasecmp($msg_author,$msg["author"]) == 0) { $person = $contact; $key = $msg["key"]; } else { $person = self::person_by_handle($msg_author); - if (is_array($person) && x($person, "pubkey")) + if (is_array($person) && x($person, "pubkey")) { $key = $person["pubkey"]; - else { + } else { logger("unable to find author details"); return false; } @@ -1262,7 +1326,7 @@ class diaspora { return false; } - if($msg_parent_author_signature) { + if ($msg_parent_author_signature) { $owner_signed_data = $msg_guid.";".$msg_parent_guid.";".$msg_text.";".unxmlify($mesg->created_at).";".$msg_author.";".$msg_conversation_guid; $parent_author_signature = base64_decode($msg_parent_author_signature); @@ -1546,8 +1610,9 @@ class diaspora { $conversation_guid = notags(unxmlify($data->conversation_guid)); $contact = self::allowed_contact_by_handle($importer, $author, true); - if (!$contact) + if (!$contact) { return false; + } $conversation = null; @@ -1555,16 +1620,13 @@ class diaspora { intval($importer["uid"]), dbesc($conversation_guid) ); - if($c) + if ($c) { $conversation = $c[0]; - else { + } else { logger("conversation not available."); return false; } - $reply = 0; - - $body = diaspora2bb($text); $message_uri = $author.":".$guid; $person = self::person_by_handle($author); @@ -1577,11 +1639,15 @@ class diaspora { dbesc($message_uri), intval($importer["uid"]) ); - if($r) { + if (dbm::is_result($r)) { logger("duplicate message already delivered.", LOGGER_DEBUG); return false; } + $body = diaspora2bb($text); + + $body = self::replace_people_guid($body, $person["url"]); + q("INSERT INTO `mail` (`uid`, `guid`, `convid`, `from-name`,`from-photo`,`from-url`,`contact-id`,`title`,`body`,`seen`,`reply`,`uri`,`parent-uri`,`created`) VALUES ( %d, '%s', %d, '%s', '%s', '%s', %d, '%s', '%s', %d, %d, '%s','%s','%s')", intval($importer["uid"]), @@ -1840,20 +1906,23 @@ class diaspora { $author = unxmlify($data->author); $recipient = unxmlify($data->recipient); - if (!$author || !$recipient) + if (!$author || !$recipient) { return false; + } // the current protocol version doesn't know these fields // That means that we will assume their existance - if (isset($data->following)) + if (isset($data->following)) { $following = (unxmlify($data->following) == "true"); - else + } else { $following = true; + } - if (isset($data->sharing)) + if (isset($data->sharing)) { $sharing = (unxmlify($data->sharing) == "true"); - else + } else { $sharing = true; + } $contact = self::contact_by_handle($importer["uid"],$author); @@ -1871,7 +1940,7 @@ class diaspora { // Normally we needn't to do so, but the first message could have been vanished. if (in_array($contact["rel"], array(CONTACT_IS_FRIEND, CONTACT_IS_FOLLOWER))) { $u = q("SELECT * FROM `user` WHERE `uid` = %d LIMIT 1", intval($importer["uid"])); - if($u) { + if ($u) { logger("Sending share message to author ".$author." - Contact: ".$contact["id"]." - User: ".$importer["uid"], LOGGER_DEBUG); $ret = self::send_share($u[0], $contact); } @@ -2022,26 +2091,29 @@ class diaspora { FROM `item` WHERE `guid` = '%s' AND `visible` AND NOT `deleted` AND `body` != '' LIMIT 1", dbesc($guid)); - if($r) { + if (dbm::is_result($r)) { logger("reshared message ".$guid." already exists on system."); // Maybe it is already a reshared item? // Then refetch the content, if it is a reshare from a reshare. // If it is a reshared post from another network then reformat to avoid display problems with two share elements - if (self::is_reshare($r[0]["body"], true)) + if (self::is_reshare($r[0]["body"], true)) { $r = array(); - elseif (self::is_reshare($r[0]["body"], false)) { + } elseif (self::is_reshare($r[0]["body"], false)) { $r[0]["body"] = diaspora2bb(bb2diaspora($r[0]["body"])); + $r[0]["body"] = self::replace_people_guid($r[0]["body"], $r[0]["author-link"]); + // Add OEmbed and other information to the body $r[0]["body"] = add_page_info_to_body($r[0]["body"], false, true); return $r[0]; - } else + } else { return $r[0]; + } } - if (!$r) { + if (!dbm::is_result($r)) { $server = "https://".substr($orig_author, strpos($orig_author, "@") + 1); logger("1st try: reshared message ".$guid." will be fetched via SSL from the server ".$server); $item_id = self::store_by_guid($guid, $server); @@ -2058,10 +2130,12 @@ class diaspora { FROM `item` WHERE `id` = %d AND `visible` AND NOT `deleted` AND `body` != '' LIMIT 1", intval($item_id)); - if ($r) { + if (dbm::is_result($r)) { // If it is a reshared post from another network then reformat to avoid display problems with two share elements - if (self::is_reshare($r[0]["body"], false)) + if (self::is_reshare($r[0]["body"], false)) { $r[0]["body"] = diaspora2bb(bb2diaspora($r[0]["body"])); + $r[0]["body"] = self::replace_people_guid($r[0]["body"], $r[0]["author-link"]); + } return $r[0]; } @@ -2089,16 +2163,19 @@ class diaspora { $created_at = datetime_convert("UTC", "UTC", notags(unxmlify($data->created_at))); $contact = self::allowed_contact_by_handle($importer, $author, false); - if (!$contact) + if (!$contact) { return false; + } $message_id = self::message_exists($importer["uid"], $guid); - if ($message_id) + if ($message_id) { return $message_id; + } $original_item = self::original_item($root_guid, $root_author, $author); - if (!$original_item) + if (!$original_item) { return false; + } $orig_url = App::get_baseurl()."/display/".$original_item["guid"]; @@ -2140,8 +2217,9 @@ class diaspora { self::fetch_guid($datarray); $message_id = item_store($datarray); - if ($message_id) + if ($message_id) { logger("Stored reshare ".$datarray["guid"]." with message id ".$message_id, LOGGER_DEBUG); + } return $message_id; } @@ -2268,17 +2346,21 @@ class diaspora { // die("poll!\n"); //} $contact = self::allowed_contact_by_handle($importer, $author, false); - if (!$contact) + if (!$contact) { return false; + } $message_id = self::message_exists($importer["uid"], $guid); - if ($message_id) + if ($message_id) { return $message_id; + } $address = array(); - if ($data->location) - foreach ($data->location->children() AS $fieldname => $data) + if ($data->location) { + foreach ($data->location->children() AS $fieldname => $data) { $address[$fieldname] = notags(unxmlify($data)); + } + } $body = diaspora2bb($raw_message); @@ -2286,17 +2368,19 @@ class diaspora { // Attach embedded pictures to the body if ($data->photo) { - foreach ($data->photo AS $photo) + foreach ($data->photo AS $photo) { $body = "[img]".unxmlify($photo->remote_photo_path). unxmlify($photo->remote_photo_name)."[/img]\n".$body; + } $datarray["object-type"] = ACTIVITY_OBJ_IMAGE; } else { $datarray["object-type"] = ACTIVITY_OBJ_NOTE; // Add OEmbed and other information to the body - if (!self::is_redmatrix($contact["url"])) + if (!self::is_redmatrix($contact["url"])) { $body = add_page_info_to_body($body, false, true); + } } $datarray["uid"] = $importer["uid"]; @@ -2319,26 +2403,30 @@ class diaspora { $datarray["object"] = $xml; - $datarray["body"] = $body; + $datarray["body"] = self::replace_people_guid($body, $contact["url"]); - if ($provider_display_name != "") + if ($provider_display_name != "") { $datarray["app"] = $provider_display_name; + } $datarray["plink"] = self::plink($author, $guid); $datarray["private"] = (($public == "false") ? 1 : 0); $datarray["changed"] = $datarray["created"] = $datarray["edited"] = $created_at; - if (isset($address["address"])) + if (isset($address["address"])) { $datarray["location"] = $address["address"]; + } - if (isset($address["lat"]) AND isset($address["lng"])) + if (isset($address["lat"]) AND isset($address["lng"])) { $datarray["coord"] = $address["lat"]." ".$address["lng"]; + } self::fetch_guid($datarray); $message_id = item_store($datarray); - if ($message_id) + if ($message_id) { logger("Stored item ".$datarray["guid"]." with message id ".$message_id, LOGGER_DEBUG); + } return $message_id; } @@ -2382,7 +2470,7 @@ class diaspora { $b64url_data = base64url_encode($msg); $data = str_replace(array("\n", "\r", " ", "\t"), array("", "", "", ""), $b64url_data); - $key_id = base64url_encode(diaspora::my_handle($user)); + $key_id = base64url_encode(self::my_handle($user)); $type = "application/xml"; $encoding = "base64url"; $alg = "RSA-SHA256"; @@ -2623,7 +2711,7 @@ class diaspora { logger("transmit: ".$logid."-".$guid." returns: ".$return_code); - if(!$return_code || (($return_code == 503) && (stristr($a->get_curl_headers(), "retry-after")))) { + if (!$return_code || (($return_code == 503) && (stristr($a->get_curl_headers(), "retry-after")))) { logger("queue message"); $r = q("SELECT `id` FROM `queue` WHERE `cid` = %d AND `network` = '%s' AND `content` = '%s' AND `batch` = %d LIMIT 1", @@ -2632,7 +2720,7 @@ class diaspora { dbesc($slap), intval($public_batch) ); - if($r) { + if ($r) { logger("add_to_queue ignored - identical item already in queue"); } else { // queue message for redelivery @@ -2908,7 +2996,7 @@ class diaspora { */ public static function send_status($item, $owner, $contact, $public_batch = false) { - $status = diaspora::build_status($item, $owner); + $status = self::build_status($item, $owner); return self::build_and_transmit($owner, $contact, $status["type"], $status["message"], $public_batch, $item["guid"]); } diff --git a/include/email.php b/include/email.php index 2c05d3233f..42f80c2427 100644 --- a/include/email.php +++ b/include/email.php @@ -96,15 +96,20 @@ function email_get_msg($mbox,$uid, $reply) { $html = ''; foreach($struc->parts as $ptop => $p) { $x = email_get_part($mbox,$uid,$p,$ptop + 1, 'plain'); - if($x) $text .= $x; + if ($x) { + $text .= $x; + } $x = email_get_part($mbox,$uid,$p,$ptop + 1, 'html'); - if($x) $html .= $x; + if ($x) { + $html .= $x; + } } - if (trim($html) != '') + if (trim($html) != '') { $ret['body'] = html2bbcode($html); - else + } else { $ret['body'] = $text; + } } $ret['body'] = removegpg($ret['body']); @@ -112,8 +117,9 @@ function email_get_msg($mbox,$uid, $reply) { $ret['body'] = $msg['body']; $ret['body'] = convertquote($ret['body'], $reply); - if (trim($html) != '') + if (trim($html) != '') { $ret['body'] = removelinebreak($ret['body']); + } $ret['body'] = unifyattributionline($ret['body']); @@ -189,8 +195,9 @@ function email_get_part($mbox,$uid,$p,$partno, $subtype) { $x = ""; foreach ($p->parts as $partno0=>$p2) { $x .= email_get_part($mbox,$uid,$p2,$partno . '.' . ($partno0+1), $subtype); // 1.2, 1.2.1, etc. - //if($x) + //if ($x) { // return $x; + //} } return $x; } diff --git a/include/enotify.php b/include/enotify.php index c6e0506e96..aa29e117a6 100644 --- a/include/enotify.php +++ b/include/enotify.php @@ -23,7 +23,7 @@ function notification($params) { $banner = t('Friendica Notification'); $product = FRIENDICA_PLATFORM; - $siteurl = $a->get_baseurl(true); + $siteurl = App::get_baseurl(true); $thanks = t('Thank You,'); $sitename = $a->config['sitename']; if (!x($a->config['admin_name'])) @@ -58,7 +58,7 @@ function notification($params) { $additional_mail_header .= "X-Friendica-Platform: ".FRIENDICA_PLATFORM."\n"; $additional_mail_header .= "X-Friendica-Version: ".FRIENDICA_VERSION."\n"; $additional_mail_header .= "List-ID: \n"; - $additional_mail_header .= "List-Archive: <".$a->get_baseurl()."/notifications/system>\n"; + $additional_mail_header .= "List-Archive: <".App::get_baseurl()."/notifications/system>\n"; if (array_key_exists('item', $params)) { $title = $params['item']['title']; @@ -494,7 +494,7 @@ function notification($params) { } - $itemlink = $a->get_baseurl().'/notify/view/'.$notify_id; + $itemlink = App::get_baseurl().'/notify/view/'.$notify_id; $msg = replace_macros($epreamble, array('$itemlink' => $itemlink)); $msg_cache = format_notification_message($datarray['name_cache'], strip_tags(bbcode($msg))); $r = q("UPDATE `notify` SET `msg` = '%s', `msg_cache` = '%s' WHERE `id` = %d AND `uid` = %d", @@ -648,8 +648,6 @@ function notification($params) { * @param str $defaulttype (Optional) Forces a notification with this type. */ function check_item_notification($itemid, $uid, $defaulttype = "") { - $a = get_app(); - $notification_data = array("uid" => $uid, "profiles" => array()); call_hooks('check_item_notification', $notification_data); @@ -667,7 +665,7 @@ function check_item_notification($itemid, $uid, $defaulttype = "") { $profiles[] = $owner[0]["url"]; // Notifications from Diaspora are often with an URL in the Diaspora format - $profiles[] = $a->get_baseurl()."/u/".$user[0]["nickname"]; + $profiles[] = App::get_baseurl()."/u/".$user[0]["nickname"]; $profiles2 = array(); diff --git a/include/event.php b/include/event.php index 3a41dad4e7..4abe3ffef5 100644 --- a/include/event.php +++ b/include/event.php @@ -408,7 +408,7 @@ function event_store($arr) { intval($arr['uid']) ); //if (dbm::is_result($r)) - // $plink = $a->get_baseurl() . '/display/' . $r[0]['nickname'] . '/' . $item_id; + // $plink = App::get_baseurl() . '/display/' . $r[0]['nickname'] . '/' . $item_id; if($item_id) { diff --git a/include/expire.php b/include/expire.php index eca2b1c42a..e3313a78be 100644 --- a/include/expire.php +++ b/include/expire.php @@ -40,7 +40,7 @@ function expire_run(&$argv, &$argc){ $r = q("SELECT `uid`,`username`,`expire` FROM `user` WHERE `expire` != 0"); if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { logger('Expire: ' . $rr['username'] . ' interval: ' . $rr['expire'], LOGGER_DEBUG); item_expire($rr['uid'],$rr['expire']); } diff --git a/include/follow.php b/include/follow.php index 7a3514b3a7..e7693822ab 100644 --- a/include/follow.php +++ b/include/follow.php @@ -77,12 +77,12 @@ function new_contact($uid,$url,$interactive = false) { $url = str_replace('/#!/','/',$url); - if(! allowed_url($url)) { + if (! allowed_url($url)) { $result['message'] = t('Disallowed profile URL.'); return $result; } - if(! $url) { + if (! $url) { $result['message'] = t('Connect URL missing.'); return $result; } @@ -91,17 +91,21 @@ function new_contact($uid,$url,$interactive = false) { call_hooks('follow', $arr); - if(x($arr['contact'],'name')) + if (x($arr['contact'],'name')) { $ret = $arr['contact']; - else + } + else { $ret = probe_url($url); + } - if($ret['network'] === NETWORK_DFRN) { - if($interactive) { - if(strlen($a->path)) - $myaddr = bin2hex($a->get_baseurl() . '/profile/' . $a->user['nickname']); - else + if ($ret['network'] === NETWORK_DFRN) { + if ($interactive) { + if (strlen($a->path)) { + $myaddr = bin2hex(App::get_baseurl() . '/profile/' . $a->user['nickname']); + } + else { $myaddr = bin2hex($a->user['nickname'] . '@' . $a->get_hostname()); + } goaway($ret['request'] . "&addr=$myaddr"); @@ -254,7 +258,7 @@ function new_contact($uid,$url,$interactive = false) { intval($uid) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { $result['message'] .= t('Unable to retrieve contact information.') . EOL; return $result; } @@ -289,8 +293,9 @@ function new_contact($uid,$url,$interactive = false) { $slap = ostatus::salmon($item, $r[0]); slapper($r[0], $contact['notify'], $slap); } + if ($contact['network'] == NETWORK_DIASPORA) { - $ret = diaspora::send_share($a->user,$contact); + $ret = Diaspora::send_share($a->user,$contact); logger('share returns: '.$ret); } } diff --git a/include/group.php b/include/group.php index 2c90330686..6332c45da2 100644 --- a/include/group.php +++ b/include/group.php @@ -53,7 +53,7 @@ function group_rmv($uid,$name) { $r = q("SELECT def_gid, allow_gid, deny_gid FROM user WHERE uid = %d LIMIT 1", intval($uid) ); - if($r) { + if ($r) { $user_info = $r[0]; $change = false; @@ -143,13 +143,14 @@ function group_add_member($uid,$name,$member,$gid = 0) { return true; // You might question this, but // we indicate success because the group member was in fact created // -- It was just created at another time - if(! dbm::is_result($r)) + if (! dbm::is_result($r)) { $r = q("INSERT INTO `group_member` (`uid`, `gid`, `contact-id`) VALUES( %d, %d, %d ) ", intval($uid), intval($gid), intval($member) - ); + ); + } return $r; } @@ -198,7 +199,7 @@ function mini_group_select($uid,$gid = 0, $label = "") { ); $grps[] = array('name' => '', 'id' => '0', 'selected' => ''); if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { $grps[] = array('name' => $rr['name'], 'id' => $rr['id'], 'selected' => (($gid == $rr['id']) ? 'true' : '')); } @@ -233,7 +234,7 @@ function group_side($every="contacts",$each="group",$editmode = "standard", $gro $o = ''; - if(! local_user()) + if (! local_user()) return ''; $groups = array(); @@ -256,7 +257,7 @@ function group_side($every="contacts",$each="group",$editmode = "standard", $gro } if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { $selected = (($group_id == $rr['id']) ? ' group-selected' : ''); if ($editmode == "full") { diff --git a/include/identity.php b/include/identity.php index bf05a00516..70ff7f00ac 100644 --- a/include/identity.php +++ b/include/identity.php @@ -229,13 +229,16 @@ function profile_sidebar($profile, $block = 0) { // Is the local user already connected to that user? if ($connect AND local_user()) { - if (isset($profile["url"])) + if (isset($profile["url"])) { $profile_url = normalise_link($profile["url"]); - else - $profile_url = normalise_link($a->get_baseurl()."/profile/".$profile["nickname"]); + } + else { + $profile_url = normalise_link(App::get_baseurl()."/profile/".$profile["nickname"]); + } $r = q("SELECT * FROM `contact` WHERE NOT `pending` AND `uid` = %d AND `nurl` = '%s'", local_user(), $profile_url); + if (dbm::is_result($r)) $connect = false; } @@ -279,7 +282,7 @@ function profile_sidebar($profile, $block = 0) { // show edit profile to yourself if ($profile['uid'] == local_user() && feature_enabled(local_user(),'multi_profiles')) { - $profile['edit'] = array($a->get_baseurl(). '/profiles', t('Profiles'),"", t('Manage/edit profiles')); + $profile['edit'] = array(App::get_baseurl(). '/profiles', t('Profiles'),"", t('Manage/edit profiles')); $r = q("SELECT * FROM `profile` WHERE `uid` = %d", local_user()); @@ -291,7 +294,7 @@ function profile_sidebar($profile, $block = 0) { if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { $profile['menu']['entries'][] = array( 'photo' => $rr['thumb'], 'id' => $rr['id'], @@ -308,7 +311,7 @@ function profile_sidebar($profile, $block = 0) { } } if ($profile['uid'] == local_user() && !feature_enabled(local_user(),'multi_profiles')) { - $profile['edit'] = array($a->get_baseurl(). '/profiles/'.$profile['id'], t('Edit profile'),"", t('Edit profile')); + $profile['edit'] = array(App::get_baseurl(). '/profiles/'.$profile['id'], t('Edit profile'),"", t('Edit profile')); $profile['menu'] = array( 'chg_photo' => t('Change profile photo'), 'cr_new' => null, @@ -349,15 +352,15 @@ function profile_sidebar($profile, $block = 0) { if ($profile['guid'] != "") $diaspora = array( 'guid' => $profile['guid'], - 'podloc' => $a->get_baseurl(), + 'podloc' => App::get_baseurl(), 'searchable' => (($profile['publish'] && $profile['net-publish']) ? 'true' : 'false' ), 'nickname' => $profile['nickname'], 'fullname' => $profile['name'], 'firstname' => $firstname, 'lastname' => $lastname, - 'photo300' => $a->get_baseurl() . '/photo/custom/300/' . $profile['uid'] . '.jpg', - 'photo100' => $a->get_baseurl() . '/photo/custom/100/' . $profile['uid'] . '.jpg', - 'photo50' => $a->get_baseurl() . '/photo/custom/50/' . $profile['uid'] . '.jpg', + 'photo300' => App::get_baseurl() . '/photo/custom/300/' . $profile['uid'] . '.jpg', + 'photo100' => App::get_baseurl() . '/photo/custom/100/' . $profile['uid'] . '.jpg', + 'photo50' => App::get_baseurl() . '/photo/custom/50/' . $profile['uid'] . '.jpg', ); else $diaspora = false; @@ -466,7 +469,7 @@ function get_birthdays() { $cids = array(); $istoday = false; - foreach($r as $rr) { + foreach ($r as $rr) { if(strlen($rr['name'])) $total ++; if((strtotime($rr['start'] . ' +00:00') < $now) && (strtotime($rr['finish'] . ' +00:00') > $now)) @@ -489,7 +492,7 @@ function get_birthdays() { $url = $rr['url']; if($rr['network'] === NETWORK_DFRN) { $sparkle = " sparkle"; - $url = $a->get_baseurl() . '/redir/' . $rr['cid']; + $url = App::get_baseurl() . '/redir/' . $rr['cid']; } $rr['link'] = $url; @@ -503,7 +506,7 @@ function get_birthdays() { } $tpl = get_markup_template("birthdays_reminder.tpl"); return replace_macros($tpl, array( - '$baseurl' => $a->get_baseurl(), + '$baseurl' => App::get_baseurl(), '$classtoday' => $classtoday, '$count' => $total, '$event_reminders' => t('Birthday Reminders'), @@ -546,7 +549,7 @@ function get_events() { if (dbm::is_result($r)) { $now = strtotime('now'); $istoday = false; - foreach($r as $rr) { + foreach ($r as $rr) { if(strlen($rr['name'])) $total ++; @@ -587,7 +590,7 @@ function get_events() { $tpl = get_markup_template("events_reminder.tpl"); return replace_macros($tpl, array( - '$baseurl' => $a->get_baseurl(), + '$baseurl' => App::get_baseurl(), '$classtoday' => $classtoday, '$count' => count($r) - $skip, '$event_reminders' => t('Event Reminders'), @@ -684,8 +687,9 @@ function advanced_profile(&$a) { $profile['forumlist'] = array( t('Forums:'), ForumManager::profile_advanced($uid)); } - if ($a->profile['uid'] == local_user()) - $profile['edit'] = array($a->get_baseurl(). '/profiles/'.$a->profile['id'], t('Edit profile'),"", t('Edit profile')); + if ($a->profile['uid'] == local_user()) { + $profile['edit'] = array(App::get_baseurl(). '/profiles/'.$a->profile['id'], t('Edit profile'),"", t('Edit profile')); + } return replace_macros($tpl, array( '$title' => t('Profile'), @@ -707,7 +711,7 @@ function profile_tabs($a, $is_owner=False, $nickname=Null){ if(x($_GET,'tab')) $tab = notags(trim($_GET['tab'])); - $url = $a->get_baseurl() . '/profile/' . $nickname; + $url = App::get_baseurl() . '/profile/' . $nickname; $tabs = array( array( @@ -728,7 +732,7 @@ function profile_tabs($a, $is_owner=False, $nickname=Null){ ), array( 'label' => t('Photos'), - 'url' => $a->get_baseurl() . '/photos/' . $nickname, + 'url' => App::get_baseurl() . '/photos/' . $nickname, 'sel' => ((!isset($tab)&&$a->argv[0]=='photos')?'active':''), 'title' => t('Photo Albums'), 'id' => 'photo-tab', @@ -736,7 +740,7 @@ function profile_tabs($a, $is_owner=False, $nickname=Null){ ), array( 'label' => t('Videos'), - 'url' => $a->get_baseurl() . '/videos/' . $nickname, + 'url' => App::get_baseurl() . '/videos/' . $nickname, 'sel' => ((!isset($tab)&&$a->argv[0]=='videos')?'active':''), 'title' => t('Videos'), 'id' => 'video-tab', @@ -748,7 +752,7 @@ function profile_tabs($a, $is_owner=False, $nickname=Null){ if ($is_owner && $a->theme_events_in_profile) { $tabs[] = array( 'label' => t('Events'), - 'url' => $a->get_baseurl() . '/events', + 'url' => App::get_baseurl() . '/events', 'sel' =>((!isset($tab)&&$a->argv[0]=='events')?'active':''), 'title' => t('Events and Calendar'), 'id' => 'events-tab', @@ -759,7 +763,7 @@ function profile_tabs($a, $is_owner=False, $nickname=Null){ } elseif (! $is_owner) { $tabs[] = array( 'label' => t('Events'), - 'url' => $a->get_baseurl() . '/cal/' . $nickname, + 'url' => App::get_baseurl() . '/cal/' . $nickname, 'sel' =>((!isset($tab)&&$a->argv[0]=='cal')?'active':''), 'title' => t('Events and Calendar'), 'id' => 'events-tab', @@ -770,7 +774,7 @@ function profile_tabs($a, $is_owner=False, $nickname=Null){ if ($is_owner){ $tabs[] = array( 'label' => t('Personal Notes'), - 'url' => $a->get_baseurl() . '/notes', + 'url' => App::get_baseurl() . '/notes', 'sel' =>((!isset($tab)&&$a->argv[0]=='notes')?'active':''), 'title' => t('Only You Can See This'), 'id' => 'notes-tab', @@ -781,7 +785,7 @@ function profile_tabs($a, $is_owner=False, $nickname=Null){ if ((! $is_owner) && ((count($a->profile)) || (! $a->profile['hide-friends']))) { $tabs[] = array( 'label' => t('Contacts'), - 'url' => $a->get_baseurl() . '/viewcontacts/' . $nickname, + 'url' => App::get_baseurl() . '/viewcontacts/' . $nickname, 'sel' => ((!isset($tab)&&$a->argv[0]=='viewcontacts')?'active':''), 'title' => t('Contacts'), 'id' => 'viewcontacts-tab', diff --git a/include/items.php b/include/items.php index da9147fadd..10afc28c0e 100644 --- a/include/items.php +++ b/include/items.php @@ -208,13 +208,12 @@ function add_page_info_data($data) { $hashtags = ""; if (isset($data["keywords"]) AND count($data["keywords"])) { - $a = get_app(); $hashtags = "\n"; foreach ($data["keywords"] AS $keyword) { /// @todo make a positive list of allowed characters $hashtag = str_replace(array(" ", "+", "/", ".", "#", "'", "’", "`", "(", ")", "„", "“"), array("","", "", "", "", "", "", "", "", "", "", ""), $keyword); - $hashtags .= "#[url=".$a->get_baseurl()."/search?tag=".rawurlencode($hashtag)."]".$hashtag."[/url] "; + $hashtags .= "#[url=".App::get_baseurl()."/search?tag=".rawurlencode($hashtag)."]".$hashtag."[/url] "; } } @@ -251,7 +250,6 @@ function add_page_keywords($url, $no_photos = false, $photo = "", $keywords = fa $tags = ""; if (isset($data["keywords"]) AND count($data["keywords"])) { - $a = get_app(); foreach ($data["keywords"] AS $keyword) { $hashtag = str_replace(array(" ", "+", "/", ".", "#", "'"), array("","", "", "", "", ""), $keyword); @@ -259,7 +257,7 @@ function add_page_keywords($url, $no_photos = false, $photo = "", $keywords = fa if ($tags != "") $tags .= ","; - $tags .= "#[url=".$a->get_baseurl()."/search?tag=".rawurlencode($hashtag)."]".$hashtag."[/url]"; + $tags .= "#[url=".App::get_baseurl()."/search?tag=".rawurlencode($hashtag)."]".$hashtag."[/url]"; } } @@ -557,8 +555,7 @@ function item_store($arr,$force_parent = false, $notify = false, $dontcache = fa logger("Both author-link and owner-link are empty. Called by: ".App::callstack(), LOGGER_DEBUG); if ($arr['plink'] == "") { - $a = get_app(); - $arr['plink'] = $a->get_baseurl().'/display/'.urlencode($arr['guid']); + $arr['plink'] = App::get_baseurl().'/display/'.urlencode($arr['guid']); } if ($arr['network'] == "") { @@ -709,7 +706,7 @@ function item_store($arr,$force_parent = false, $notify = false, $dontcache = fa $u = q("SELECT `nickname` FROM `user` WHERE `uid` = %d", intval($arr['uid'])); if (count($u)) { $a = get_app(); - $self = normalise_link($a->get_baseurl() . '/profile/' . $u[0]['nickname']); + $self = normalise_link(App::get_baseurl() . '/profile/' . $u[0]['nickname']); logger("item_store: 'myself' is ".$self." for parent ".$parent_id." checking against ".$arr['author-link']." and ".$arr['owner-link'], LOGGER_DEBUG); if ((normalise_link($arr['author-link']) == $self) OR (normalise_link($arr['owner-link']) == $self)) { q("UPDATE `thread` SET `mention` = 1 WHERE `iid` = %d", intval($parent_id)); @@ -1068,10 +1065,10 @@ function item_body_set_hashtags(&$item) { // All hashtags should point to the home server //$item["body"] = preg_replace("/#\[url\=([$URLSearchString]*)\](.*?)\[\/url\]/ism", - // "#[url=".$a->get_baseurl()."/search?tag=$2]$2[/url]", $item["body"]); + // "#[url=".App::get_baseurl()."/search?tag=$2]$2[/url]", $item["body"]); //$item["tag"] = preg_replace("/#\[url\=([$URLSearchString]*)\](.*?)\[\/url\]/ism", - // "#[url=".$a->get_baseurl()."/search?tag=$2]$2[/url]", $item["tag"]); + // "#[url=".App::get_baseurl()."/search?tag=$2]$2[/url]", $item["tag"]); // mask hashtags inside of url, bookmarks and attachments to avoid urls in urls $item["body"] = preg_replace_callback("/\[url\=([$URLSearchString]*)\](.*?)\[\/url\]/ism", @@ -1103,7 +1100,7 @@ function item_body_set_hashtags(&$item) { $basetag = str_replace('_',' ',substr($tag,1)); - $newtag = '#[url='.$a->get_baseurl().'/search?tag='.rawurlencode($basetag).']'.$basetag.'[/url]'; + $newtag = '#[url='.App::get_baseurl().'/search?tag='.rawurlencode($basetag).']'.$basetag.'[/url]'; $item["body"] = str_replace($tag, $newtag, $item["body"]); @@ -1207,12 +1204,12 @@ function tag_deliver($uid,$item_id) { $item = $i[0]; - $link = normalise_link($a->get_baseurl() . '/profile/' . $u[0]['nickname']); + $link = normalise_link(App::get_baseurl() . '/profile/' . $u[0]['nickname']); // Diaspora uses their own hardwired link URL in @-tags // instead of the one we supply with webfinger - $dlink = normalise_link($a->get_baseurl() . '/u/' . $u[0]['nickname']); + $dlink = normalise_link(App::get_baseurl() . '/u/' . $u[0]['nickname']); $cnt = preg_match_all('/[\@\!]\[url\=(.*?)\](.*?)\[\/url\]/ism',$item['body'],$matches,PREG_SET_ORDER); if ($cnt) { @@ -1260,8 +1257,9 @@ function tag_deliver($uid,$item_id) { $c = q("select name, url, thumb from contact where self = 1 and uid = %d limit 1", intval($u[0]['uid']) ); - if (! count($c)) + if (! count($c)) { return; + } // also reset all the privacy bits to the forum default permissions @@ -1269,8 +1267,8 @@ function tag_deliver($uid,$item_id) { $forum_mode = (($prvgroup) ? 2 : 1); - q("update item set wall = 1, origin = 1, forum_mode = %d, `owner-name` = '%s', `owner-link` = '%s', `owner-avatar` = '%s', - `private` = %d, `allow_cid` = '%s', `allow_gid` = '%s', `deny_cid` = '%s', `deny_gid` = '%s' where id = %d", + q("UPDATE `item` SET `wall` = 1, `origin` = 1, `forum_mode` = %d, `owner-name` = '%s', `owner-link` = '%s', `owner-avatar` = '%s', + `private` = %d, `allow_cid` = '%s', `allow_gid` = '%s', `deny_cid` = '%s', `deny_gid` = '%s' WHERE `id` = %d", intval($forum_mode), dbesc($c[0]['name']), dbesc($c[0]['url']), @@ -1312,16 +1310,16 @@ function tgroup_check($uid,$item) { $prvgroup = (($u[0]['page-flags'] == PAGE_PRVGROUP) ? true : false); - $link = normalise_link($a->get_baseurl() . '/profile/' . $u[0]['nickname']); + $link = normalise_link(App::get_baseurl() . '/profile/' . $u[0]['nickname']); // Diaspora uses their own hardwired link URL in @-tags // instead of the one we supply with webfinger - $dlink = normalise_link($a->get_baseurl() . '/u/' . $u[0]['nickname']); + $dlink = normalise_link(App::get_baseurl() . '/u/' . $u[0]['nickname']); $cnt = preg_match_all('/[\@\!]\[url\=(.*?)\](.*?)\[\/url\]/ism',$item['body'],$matches,PREG_SET_ORDER); if ($cnt) { - foreach($matches as $mtch) { + foreach ($matches as $mtch) { if (link_compare($link,$mtch[1]) || link_compare($dlink,$mtch[1])) { $mention = true; logger('tgroup_check: mention found: ' . $mtch[2]); @@ -1329,13 +1327,12 @@ function tgroup_check($uid,$item) { } } - if (! $mention) + if (! $mention) { return false; + } - if ((! $community_page) && (! $prvgroup)) - return false; - - return true; + /// @TODO Combines both return statements into one + return (($community_page) || ($prvgroup)); } /* @@ -1347,15 +1344,16 @@ function tgroup_check($uid,$item) { assumes the update has been seen before and should be ignored. */ function edited_timestamp_is_newer($existing, $update) { - if (!x($existing,'edited') || !$existing['edited']) { - return true; - } - if (!x($update,'edited') || !$update['edited']) { - return false; - } - $existing_edited = datetime_convert('UTC', 'UTC', $existing['edited']); - $update_edited = datetime_convert('UTC', 'UTC', $update['edited']); - return (strcmp($existing_edited, $update_edited) < 0); + if (!x($existing,'edited') || !$existing['edited']) { + return true; + } + if (!x($update,'edited') || !$update['edited']) { + return false; + } + + $existing_edited = datetime_convert('UTC', 'UTC', $existing['edited']); + $update_edited = datetime_convert('UTC', 'UTC', $update['edited']); + return (strcmp($existing_edited, $update_edited) < 0); } /** @@ -1572,7 +1570,7 @@ function new_follower($importer,$contact,$datarray,$item,$sharing = false) { 'to_name' => $r[0]['username'], 'to_email' => $r[0]['email'], 'uid' => $r[0]['uid'], - 'link' => $a->get_baseurl() . '/notifications/intro', + 'link' => App::get_baseurl() . '/notifications/intro', 'source_name' => ((strlen(stripslashes($contact_record['name']))) ? stripslashes($contact_record['name']) : t('[Name Withheld]')), 'source_link' => $contact_record['url'], 'source_photo' => $contact_record['photo'], @@ -1665,7 +1663,7 @@ function fix_private_photos($s, $uid, $item = null, $cid = 0) { $a = get_app(); logger('fix_private_photos: check for photos', LOGGER_DEBUG); - $site = substr($a->get_baseurl(),strpos($a->get_baseurl(),'://')); + $site = substr(App::get_baseurl(),strpos(App::get_baseurl(),'://')); $orig_body = $s; $new_body = ''; @@ -1929,7 +1927,7 @@ function drop_item($id,$interactive = true) { if (! $interactive) return 0; notice( t('Item not found.') . EOL); - goaway($a->get_baseurl() . '/' . $_SESSION['return_url']); + goaway(App::get_baseurl() . '/' . $_SESSION['return_url']); } $item = $r[0]; @@ -1977,7 +1975,7 @@ function drop_item($id,$interactive = true) { } // Now check how the user responded to the confirmation query if ($_REQUEST['canceled']) { - goaway($a->get_baseurl() . '/' . $_SESSION['return_url']); + goaway(App::get_baseurl() . '/' . $_SESSION['return_url']); } logger('delete item: ' . $item['id'], LOGGER_DEBUG); @@ -2127,13 +2125,13 @@ function drop_item($id,$interactive = true) { if (! $interactive) return $owner; - goaway($a->get_baseurl() . '/' . $_SESSION['return_url']); + goaway(App::get_baseurl() . '/' . $_SESSION['return_url']); //NOTREACHED } else { if (! $interactive) return 0; notice( t('Permission denied.') . EOL); - goaway($a->get_baseurl() . '/' . $_SESSION['return_url']); + goaway(App::get_baseurl() . '/' . $_SESSION['return_url']); //NOTREACHED } diff --git a/include/like.php b/include/like.php index e997e05d6b..893047da3c 100644 --- a/include/like.php +++ b/include/like.php @@ -48,10 +48,8 @@ function do_like($item_id, $verb) { break; } - logger('like: verb ' . $verb . ' item ' . $item_id); - $r = q("SELECT * FROM `item` WHERE `id` = '%s' OR `uri` = '%s' LIMIT 1", dbesc($item_id), dbesc($item_id) @@ -66,7 +64,7 @@ function do_like($item_id, $verb) { $owner_uid = $item['uid']; - if(! can_write_wall($a,$owner_uid)) { + if (! can_write_wall($a,$owner_uid)) { return false; } @@ -78,10 +76,12 @@ function do_like($item_id, $verb) { intval($item['contact-id']), intval($item['uid']) ); - if(! dbm::is_result($r)) + if (! dbm::is_result($r)) { return false; - if(! $r[0]['self']) + } + if (! $r[0]['self']) { $remote_owner = $r[0]; + } } // this represents the post owner on this system. @@ -90,24 +90,24 @@ function do_like($item_id, $verb) { WHERE `contact`.`self` = 1 AND `contact`.`uid` = %d LIMIT 1", intval($owner_uid) ); - if (dbm::is_result($r)) + if (dbm::is_result($r)) { $owner = $r[0]; + } - if(! $owner) { + if (! $owner) { logger('like: no owner'); return false; } - if(! $remote_owner) + if (! $remote_owner) { $remote_owner = $owner; - + } // This represents the person posting - if((local_user()) && (local_user() == $owner_uid)) { + if ((local_user()) && (local_user() == $owner_uid)) { $contact = $owner; - } - else { + } else { $r = q("SELECT * FROM `contact` WHERE `id` = %d AND `uid` = %d LIMIT 1", intval($_SESSION['visitor_id']), intval($owner_uid) @@ -115,7 +115,7 @@ function do_like($item_id, $verb) { if (dbm::is_result($r)) $contact = $r[0]; } - if(! $contact) { + if (! $contact) { return false; } @@ -124,7 +124,7 @@ function do_like($item_id, $verb) { // event participation are essentially radio toggles. If you make a subsequent choice, // we need to eradicate your first choice. - if($activity === ACTIVITY_ATTEND || $activity === ACTIVITY_ATTENDNO || $activity === ACTIVITY_ATTENDMAYBE) { + if ($activity === ACTIVITY_ATTEND || $activity === ACTIVITY_ATTENDNO || $activity === ACTIVITY_ATTENDMAYBE) { $verbs = " '" . dbesc(ACTIVITY_ATTEND) . "','" . dbesc(ACTIVITY_ATTENDNO) . "','" . dbesc(ACTIVITY_ATTENDMAYBE) . "' "; } @@ -161,10 +161,11 @@ function do_like($item_id, $verb) { $uri = item_new_uri($a->get_hostname(),$owner_uid); $post_type = (($item['resource-id']) ? t('photo') : t('status')); - if($item['object-type'] === ACTIVITY_OBJ_EVENT) + if ($item['object-type'] === ACTIVITY_OBJ_EVENT) { $post_type = t('event'); + } $objtype = (($item['resource-id']) ? ACTIVITY_OBJ_IMAGE : ACTIVITY_OBJ_NOTE ); - $link = xmlify('' . "\n") ; + $link = xmlify('' . "\n") ; $body = $item['body']; $obj = <<< EOT @@ -178,20 +179,31 @@ function do_like($item_id, $verb) { $body EOT; - if($verb === 'like') + if ($verb === 'like') { $bodyverb = t('%1$s likes %2$s\'s %3$s'); - if($verb === 'dislike') + } + if ($verb === 'dislike') { $bodyverb = t('%1$s doesn\'t like %2$s\'s %3$s'); - if($verb === 'attendyes') + } + if ($verb === 'attendyes') { $bodyverb = t('%1$s is attending %2$s\'s %3$s'); - if($verb === 'attendno') + } + if ($verb === 'attendno') { $bodyverb = t('%1$s is not attending %2$s\'s %3$s'); - if($verb === 'attendmaybe') + } + if ($verb === 'attendmaybe') { $bodyverb = t('%1$s may attend %2$s\'s %3$s'); + } - if(! isset($bodyverb)) - return false; + if (! isset($bodyverb)) { + return false; + } + $ulink = '[url=' . $contact['url'] . ']' . $contact['name'] . '[/url]'; + $alink = '[url=' . $item['author-link'] . ']' . $item['author-name'] . '[/url]'; + $plink = '[url=' . App::get_baseurl() . '/display/' . $owner['nickname'] . '/' . $item['id'] . ']' . $post_type . '[/url]'; + + /// @TODO Or rewrite this to multi-line initialization of the array? $arr = array(); $arr['guid'] = get_guid(32); @@ -211,12 +223,7 @@ EOT; $arr['author-name'] = $contact['name']; $arr['author-link'] = $contact['url']; $arr['author-avatar'] = $contact['thumb']; - - $ulink = '[url=' . $contact['url'] . ']' . $contact['name'] . '[/url]'; - $alink = '[url=' . $item['author-link'] . ']' . $item['author-name'] . '[/url]'; - $plink = '[url=' . $a->get_baseurl() . '/display/' . $owner['nickname'] . '/' . $item['id'] . ']' . $post_type . '[/url]'; $arr['body'] = sprintf( $bodyverb, $ulink, $alink, $plink ); - $arr['verb'] = $activity; $arr['object-type'] = $objtype; $arr['object'] = $obj; @@ -230,7 +237,7 @@ EOT; $post_id = item_store($arr); - if(! $item['visible']) { + if (! $item['visible']) { $r = q("UPDATE `item` SET `visible` = 1 WHERE `id` = %d AND `uid` = %d", intval($item['id']), intval($owner_uid) @@ -239,7 +246,7 @@ EOT; // Save the author information for the like in case we need to relay to Diaspora - diaspora::store_like_signature($contact, $post_id); + Diaspora::store_like_signature($contact, $post_id); $arr['id'] = $post_id; diff --git a/include/lock.php b/include/lock.php index 0c7b6acaa4..b3d488a357 100644 --- a/include/lock.php +++ b/include/lock.php @@ -23,7 +23,8 @@ function lock_function($fn_name, $block = true, $wait_sec = 2, $timeout = 30) { ); $got_lock = true; } - elseif(! dbm::is_result($r)) { // the Boolean value for count($r) should be equivalent to the Boolean value of $r + elseif (! dbm::is_result($r)) { + /// @TODO the Boolean value for count($r) should be equivalent to the Boolean value of $r q("INSERT INTO `locks` (`name`, `created`, `locked`) VALUES ('%s', '%s', 1)", dbesc($fn_name), dbesc(datetime_convert()) diff --git a/include/message.php b/include/message.php index ea2fcef3bc..3d5d4d33ab 100644 --- a/include/message.php +++ b/include/message.php @@ -27,7 +27,7 @@ function send_message($recipient=0, $body='', $subject='', $replyto=''){ } $guid = get_guid(32); - $uri = 'urn:X-dfrn:' . $a->get_baseurl() . ':' . local_user() . ':' . $guid; + $uri = 'urn:X-dfrn:' . App::get_baseurl() . ':' . local_user() . ':' . $guid; $convid = 0; $reply = false; @@ -53,7 +53,7 @@ function send_message($recipient=0, $body='', $subject='', $replyto=''){ $recip_host = substr($recip_host,0,strpos($recip_host,'/')); $recip_handle = (($contact[0]['addr']) ? $contact[0]['addr'] : $contact[0]['nick'] . '@' . $recip_host); - $sender_handle = $a->user['nickname'] . '@' . substr($a->get_baseurl(), strpos($a->get_baseurl(),'://') + 3); + $sender_handle = $a->user['nickname'] . '@' . substr(App::get_baseurl(), strpos(App::get_baseurl(),'://') + 3); $conv_guid = get_guid(32); $convuri = $recip_handle.':'.$conv_guid; @@ -130,12 +130,13 @@ function send_message($recipient=0, $body='', $subject='', $replyto=''){ $match = null; - if(preg_match_all("/\[img\](.*?)\[\/img\]/",$body,$match)) { + if (preg_match_all("/\[img\](.*?)\[\/img\]/",$body,$match)) { $images = $match[1]; - if(count($images)) { - foreach($images as $image) { - if(! stristr($image,$a->get_baseurl() . '/photo/')) + if (count($images)) { + foreach ($images as $image) { + if (! stristr($image,App::get_baseurl() . '/photo/')) { continue; + } $image_uri = substr($image,strrpos($image,'/') + 1); $image_uri = substr($image_uri,0, strpos($image_uri,'-')); $r = q("UPDATE `photo` SET `allow_cid` = '%s' @@ -149,7 +150,7 @@ function send_message($recipient=0, $body='', $subject='', $replyto=''){ } } - if($post_id) { + if ($post_id) { proc_run(PRIORITY_HIGH, "include/notifier.php", "mail", $post_id); return intval($post_id); } else { @@ -158,22 +159,18 @@ function send_message($recipient=0, $body='', $subject='', $replyto=''){ } - - - - function send_wallmessage($recipient='', $body='', $subject='', $replyto=''){ - $a = get_app(); + if (! $recipient) { + return -1; + } - - if(! $recipient) return -1; - - if(! strlen($subject)) + if (! strlen($subject)) { $subject = t('[no subject]'); + } $guid = get_guid(32); - $uri = 'urn:X-dfrn:' . $a->get_baseurl() . ':' . local_user() . ':' . $guid; + $uri = 'urn:X-dfrn:' . App::get_baseurl() . ':' . local_user() . ':' . $guid; $convid = 0; $reply = false; @@ -182,12 +179,13 @@ function send_wallmessage($recipient='', $body='', $subject='', $replyto=''){ $me = probe_url($replyto); - if(! $me['name']) + if (! $me['name']) { return -2; + } $conv_guid = get_guid(32); - $recip_handle = $recipient['nickname'] . '@' . substr($a->get_baseurl(), strpos($a->get_baseurl(),'://') + 3); + $recip_handle = $recipient['nickname'] . '@' . substr(App::get_baseurl(), strpos(App::get_baseurl(),'://') + 3); $sender_nick = basename($replyto); $sender_host = substr($replyto,strpos($replyto,'://')+3); @@ -196,7 +194,7 @@ function send_wallmessage($recipient='', $body='', $subject='', $replyto=''){ $handles = $recip_handle . ';' . $sender_handle; - $r = q("insert into conv (uid,guid,creator,created,updated,subject,recips) values(%d, '%s', '%s', '%s', '%s', '%s', '%s') ", + $r = q("INSERT INTO `conv` (`uid`,`guid`,`creator`,`created`,`updated`,`subject`,`recips`) values(%d, '%s', '%s', '%s', '%s', '%s', '%s') ", intval($recipient['uid']), dbesc($conv_guid), dbesc($sender_handle), @@ -206,18 +204,19 @@ function send_wallmessage($recipient='', $body='', $subject='', $replyto=''){ dbesc($handles) ); - $r = q("select * from conv where guid = '%s' and uid = %d limit 1", + $r = q("SELECT * FROM `conv` WHERE `guid` = '%s' AND `uid` = %d LIMIT 1", dbesc($conv_guid), intval($recipient['uid']) ); - if (dbm::is_result($r)) - $convid = $r[0]['id']; - if(! $convid) { + + if (! dbm::is_result($r)) { logger('send message: conversation not found.'); return -4; } + $convid = $r[0]['id']; + $r = q("INSERT INTO `mail` ( `uid`, `guid`, `convid`, `from-name`, `from-photo`, `from-url`, `contact-id`, `title`, `body`, `seen`, `reply`, `replied`, `uri`, `parent-uri`, `created`, `unknown`) VALUES ( %d, '%s', %d, '%s', '%s', '%s', %d, '%s', '%s', %d, %d, %d, '%s', '%s', '%s', %d )", diff --git a/include/nav.php b/include/nav.php index 2a9f24ca9f..f71272f3b1 100644 --- a/include/nav.php +++ b/include/nav.php @@ -28,7 +28,7 @@ function nav(&$a) { $tpl = get_markup_template('nav.tpl'); $a->page['nav'] .= replace_macros($tpl, array( - '$baseurl' => $a->get_baseurl(), + '$baseurl' => App::get_baseurl(), '$sitelocation' => $nav_info['sitelocation'], '$nav' => $nav_info['nav'], '$banner' => $nav_info['banner'], @@ -65,7 +65,7 @@ function nav_info(App $a) $myident = ((is_array($a->user) && isset($a->user['nickname'])) ? $a->user['nickname'] . '@' : ''); - $sitelocation = $myident . substr($a->get_baseurl($ssl_state), strpos($a->get_baseurl($ssl_state), '//') + 2 ); + $sitelocation = $myident . substr(App::get_baseurl($ssl_state), strpos(App::get_baseurl($ssl_state), '//') + 2 ); // nav links: array of array('href', 'text', 'extra css classes', 'title') $nav = array(); diff --git a/include/network.php b/include/network.php index df46d35932..7a662e4cbf 100644 --- a/include/network.php +++ b/include/network.php @@ -513,8 +513,6 @@ function allowed_email($email) { function avatar_img($email) { - $a = get_app(); - $avatar['size'] = 175; $avatar['email'] = $email; $avatar['url'] = ''; @@ -522,8 +520,9 @@ function avatar_img($email) { call_hooks('avatar_lookup', $avatar); - if(! $avatar['success']) - $avatar['url'] = $a->get_baseurl() . '/images/person-175.jpg'; + if (! $avatar['success']) { + $avatar['url'] = App::get_baseurl() . '/images/person-175.jpg'; + } logger('Avatar: ' . $avatar['email'] . ' ' . $avatar['url'], LOGGER_DEBUG); return $avatar['url']; @@ -569,7 +568,7 @@ function scale_external_images($srctext, $include_link = true, $scale_replace = foreach($matches as $mtch) { logger('scale_external_image: ' . $mtch[1]); - $hostname = str_replace('www.','',substr($a->get_baseurl(),strpos($a->get_baseurl(),'://')+3)); + $hostname = str_replace('www.','',substr(App::get_baseurl(),strpos(App::get_baseurl(),'://')+3)); if(stristr($mtch[1],$hostname)) continue; diff --git a/include/notifier.php b/include/notifier.php index 7221fa376d..84efe79526 100644 --- a/include/notifier.php +++ b/include/notifier.php @@ -210,8 +210,9 @@ function notifier_run(&$argv, &$argc){ intval($uid) ); - if(! dbm::is_result($r)) + if (! dbm::is_result($r)) { return; + } $owner = $r[0]; @@ -557,7 +558,7 @@ function notifier_run(&$argv, &$argc){ if($slap && count($url_recipients) && ($public_message || $push_notify) && $normal_mode) { if(!get_config('system','dfrn_only')) { foreach($url_recipients as $url) { - if($url) { + if ($url) { logger('notifier: urldelivery: ' . $url); $deliver_status = slapper($owner,$url,$slap); /// @TODO Redeliver/queue these items on failure, though there is no contact record @@ -570,7 +571,7 @@ function notifier_run(&$argv, &$argc){ if($public_message) { if (!$followup) - $r0 = diaspora::relay_list(); + $r0 = Diaspora::relay_list(); else $r0 = array(); @@ -597,7 +598,7 @@ function notifier_run(&$argv, &$argc){ // throw everything into the queue in case we get killed - foreach($r as $rr) { + foreach ($r as $rr) { if((! $mail) && (! $fsuggest) && (! $followup)) { q("INSERT INTO `deliverq` (`cmd`,`item`,`contact`) VALUES ('%s', %d, %d) ON DUPLICATE KEY UPDATE `cmd` = '%s', `item` = %d, `contact` = %d", @@ -607,7 +608,7 @@ function notifier_run(&$argv, &$argc){ } } - foreach($r as $rr) { + foreach ($r as $rr) { // except for Diaspora batch jobs // Don't deliver to folks who have already been delivered to @@ -649,7 +650,7 @@ function notifier_run(&$argv, &$argc){ } else { - $params = 'hub.mode=publish&hub.url=' . urlencode( $a->get_baseurl() . '/dfrn_poll/' . $owner['nickname'] ); + $params = 'hub.mode=publish&hub.url=' . urlencode( App::get_baseurl() . '/dfrn_poll/' . $owner['nickname'] ); post_url($h,$params); logger('publish for item '.$item_id.' ' . $h . ' ' . $params . ' returned ' . $a->get_curl_code()); } diff --git a/include/oauth.php b/include/oauth.php index a30232df4a..3d4533d3e0 100644 --- a/include/oauth.php +++ b/include/oauth.php @@ -148,7 +148,7 @@ class FKOAuth1 extends OAuthServer { $_SESSION['mobile-theme'] = get_pconfig($record['uid'], 'system', 'mobile_theme'); $_SESSION['authenticated'] = 1; $_SESSION['page_flags'] = $record['page-flags']; - $_SESSION['my_url'] = $a->get_baseurl() . '/profile/' . $record['nickname']; + $_SESSION['my_url'] = App::get_baseurl() . '/profile/' . $record['nickname']; $_SESSION['addr'] = $_SERVER['REMOTE_ADDR']; $_SESSION["allow_api"] = true; diff --git a/include/onepoll.php b/include/onepoll.php index 2834036665..d92cb915b6 100644 --- a/include/onepoll.php +++ b/include/onepoll.php @@ -143,8 +143,9 @@ function onepoll_run(&$argv, &$argc){ $r = q("SELECT `contact`.*, `user`.`page-flags` FROM `contact` INNER JOIN `user` on `contact`.`uid` = `user`.`uid` WHERE `user`.`uid` = %d AND `contact`.`self` = 1 LIMIT 1", intval($importer_uid) ); - if(! dbm::is_result($r)) + if (! dbm::is_result($r)) { return; + } $importer = $r[0]; diff --git a/include/plugin.php b/include/plugin.php index 487ab57515..39cb5d5231 100644 --- a/include/plugin.php +++ b/include/plugin.php @@ -187,8 +187,9 @@ function load_hooks() { $a = get_app(); $a->hooks = array(); $r = q("SELECT * FROM `hook` WHERE 1 ORDER BY `priority` DESC, `file`"); + if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { if(! array_key_exists($rr['hook'],$a->hooks)) $a->hooks[$rr['hook']] = array(); $a->hooks[$rr['hook']][] = array($rr['file'],$rr['function']); @@ -410,13 +411,13 @@ function get_theme_info($theme){ * @return string */ function get_theme_screenshot($theme) { - $a = get_app(); $exts = array('.png','.jpg'); foreach($exts as $ext) { - if(file_exists('view/theme/' . $theme . '/screenshot' . $ext)) - return($a->get_baseurl() . '/view/theme/' . $theme . '/screenshot' . $ext); + if(file_exists('view/theme/' . $theme . '/screenshot' . $ext)) { + return(App::get_baseurl() . '/view/theme/' . $theme . '/screenshot' . $ext); + } } - return($a->get_baseurl() . '/images/blank.png'); + return(App::get_baseurl() . '/images/blank.png'); } // install and uninstall theme diff --git a/include/poller.php b/include/poller.php index 44f4895cdb..a6671f5ae3 100644 --- a/include/poller.php +++ b/include/poller.php @@ -484,7 +484,7 @@ function call_worker() { return; } - $url = get_app()->get_baseurl()."/worker"; + $url = App::get_baseurl()."/worker"; fetch_url($url, false, $redirects, 1); } diff --git a/include/profile_update.php b/include/profile_update.php index 399150f21c..7aa34d45d7 100644 --- a/include/profile_update.php +++ b/include/profile_update.php @@ -2,5 +2,5 @@ require_once('include/diaspora.php'); function profile_change() { - diaspora::send_profile(local_user()); + Diaspora::send_profile(local_user()); } diff --git a/include/pubsubpublish.php b/include/pubsubpublish.php index 85637facb2..6bd90bfc21 100644 --- a/include/pubsubpublish.php +++ b/include/pubsubpublish.php @@ -21,7 +21,7 @@ function handle_pubsubhubbub($id) { $headers = array("Content-type: application/atom+xml", sprintf("Link: <%s>;rel=hub,<%s>;rel=self", - $a->get_baseurl().'/pubsubhubbub', + App::get_baseurl().'/pubsubhubbub', $rr['topic']), "X-Hub-Signature: sha1=".$hmac_sig); @@ -76,16 +76,19 @@ function pubsubpublish_run(&$argv, &$argc){ load_config('system'); // Don't check this stuff if the function is called by the poller - if (App::callstack() != "poller_run") - if (App::is_already_running("pubsubpublish", "include/pubsubpublish.php", 540)) + if (App::callstack() != "poller_run") { + if (App::is_already_running("pubsubpublish", "include/pubsubpublish.php", 540)) { return; + } + } $a->set_baseurl(get_config('system','url')); load_hooks(); - if($argc > 1) + if ($argc > 1) { $pubsubpublish_id = intval($argv[1]); + } else { // We'll push to each subscriber that has push > 0, // i.e. there has been an update (set in notifier.php). @@ -95,10 +98,11 @@ function pubsubpublish_run(&$argv, &$argc){ $interval = Config::get("system", "delivery_interval", 2); // If we are using the worker we don't need a delivery interval - if (get_config("system", "worker")) + if (get_config("system", "worker")) { $interval = false; + } - foreach($r as $rr) { + foreach ($r as $rr) { logger("Publish feed to ".$rr["callback_url"], LOGGER_DEBUG); proc_run(PRIORITY_HIGH, 'include/pubsubpublish.php', $rr["id"]); diff --git a/include/queue.php b/include/queue.php index ad7079e959..2e0b19bfae 100644 --- a/include/queue.php +++ b/include/queue.php @@ -58,20 +58,21 @@ function queue_run(&$argv, &$argc){ $interval = false; $r = q("select * from deliverq where 1"); - if($r) { - foreach($r as $rr) { + if ($r) { + foreach ($r as $rr) { logger('queue: deliverq'); proc_run(PRIORITY_HIGH,'include/delivery.php',$rr['cmd'],$rr['item'],$rr['contact']); - if($interval) - @time_sleep_until(microtime(true) + (float) $interval); + if($interval) { + time_sleep_until(microtime(true) + (float) $interval); + } } } $r = q("SELECT `queue`.*, `contact`.`name`, `contact`.`uid` FROM `queue` INNER JOIN `contact` ON `queue`.`cid` = `contact`.`id` WHERE `queue`.`created` < UTC_TIMESTAMP() - INTERVAL 3 DAY"); - if($r) { - foreach($r as $rr) { + if ($r) { + foreach ($r as $rr) { logger('Removing expired queue item for ' . $rr['name'] . ', uid=' . $rr['uid']); logger('Expired queue data :' . $rr['content'], LOGGER_DATA); } @@ -195,7 +196,7 @@ function queue_run(&$argv, &$argc){ case NETWORK_DIASPORA: if($contact['notify']) { logger('queue: diaspora_delivery: item '.$q_item['id'].' for '.$contact['name'].' <'.$contact['url'].'>'); - $deliver_status = diaspora::transmit($owner,$contact,$data,$public,true); + $deliver_status = Diaspora::transmit($owner,$contact,$data,$public,true); if($deliver_status == (-1)) { update_queue_time($q_item['id']); diff --git a/include/redir.php b/include/redir.php index 8d8a035f1d..d8bb764396 100644 --- a/include/redir.php +++ b/include/redir.php @@ -20,7 +20,7 @@ function auto_redir(&$a, $contact_nick) { // // We also have to make sure that I'm a legitimate contact--I'm not blocked or pending. - $baseurl = $a->get_baseurl(); + $baseurl = App::get_baseurl(); $domain_st = strpos($baseurl, "://"); if($domain_st === false) return; @@ -36,9 +36,9 @@ function auto_redir(&$a, $contact_nick) { dbesc($nurl) ); - if((! dbm::is_result($r)) || $r[0]['id'] == remote_user()) + if ((! dbm::is_result($r)) || $r[0]['id'] == remote_user()) { return; - + } $r = q("SELECT * FROM contact WHERE nick = '%s' AND network = '%s' AND uid = %d AND url LIKE '%%%s%%' LIMIT 1", @@ -48,8 +48,9 @@ function auto_redir(&$a, $contact_nick) { dbesc($baseurl) ); - if(! dbm::is_result($r)) + if (! dbm::is_result($r)) { return; + } $cid = $r[0]['id']; diff --git a/include/salmon.php b/include/salmon.php index 5e9c4fa616..2b58334704 100644 --- a/include/salmon.php +++ b/include/salmon.php @@ -24,22 +24,24 @@ function get_salmon_key($uri,$keyhash) { // We have found at least one key URL // If it's inline, parse it - otherwise get the key - if(count($ret)) { - for($x = 0; $x < count($ret); $x ++) { - if(substr($ret[$x],0,5) === 'data:') { - if(strstr($ret[$x],',')) + if (count($ret) > 0) { + for ($x = 0; $x < count($ret); $x ++) { + if (substr($ret[$x],0,5) === 'data:') { + if (strstr($ret[$x],',')) { $ret[$x] = substr($ret[$x],strpos($ret[$x],',')+1); - else + } else { $ret[$x] = substr($ret[$x],5); - } elseif (normalise_link($ret[$x]) == 'http://') + } + } elseif (normalise_link($ret[$x]) == 'http://') { $ret[$x] = fetch_url($ret[$x]); + } } } logger('Key located: ' . print_r($ret,true)); - if(count($ret) == 1) { + if (count($ret) == 1) { // We only found one one key so we don't care if the hash matches. // If it's the wrong key we'll find out soon enough because @@ -50,10 +52,11 @@ function get_salmon_key($uri,$keyhash) { return $ret[0]; } else { - foreach($ret as $a) { + foreach ($ret as $a) { $hash = base64url_encode(hash('sha256',$a)); - if($hash == $keyhash) + if ($hash == $keyhash) { return $a; + } } } diff --git a/include/security.php b/include/security.php index fa698c1b1a..cd00b5f7b0 100644 --- a/include/security.php +++ b/include/security.php @@ -9,8 +9,8 @@ function authenticate_success($user_record, $login_initial = false, $interactive $_SESSION['mobile-theme'] = get_pconfig($user_record['uid'], 'system', 'mobile_theme'); $_SESSION['authenticated'] = 1; $_SESSION['page_flags'] = $user_record['page-flags']; - $_SESSION['my_url'] = $a->get_baseurl() . '/profile/' . $user_record['nickname']; - $_SESSION['my_address'] = $user_record['nickname'] . '@' . substr($a->get_baseurl(),strpos($a->get_baseurl(),'://')+3); + $_SESSION['my_url'] = App::get_baseurl() . '/profile/' . $user_record['nickname']; + $_SESSION['my_address'] = $user_record['nickname'] . '@' . substr(App::get_baseurl(),strpos(App::get_baseurl(),'://')+3); $_SESSION['addr'] = $_SERVER['REMOTE_ADDR']; $a->user = $user_record; @@ -94,11 +94,12 @@ function authenticate_success($user_record, $login_initial = false, $interactive } - if($login_initial) { + if ($login_initial) { call_hooks('logged_in', $a->user); - if(($a->module !== 'home') && isset($_SESSION['return_url'])) - goaway($a->get_baseurl() . '/' . $_SESSION['return_url']); + if (($a->module !== 'home') && isset($_SESSION['return_url'])) { + goaway(App::get_baseurl() . '/' . $_SESSION['return_url']); + } } } @@ -109,16 +110,17 @@ function can_write_wall(&$a,$owner) { static $verified = 0; - if((! (local_user())) && (! (remote_user()))) + if ((! (local_user())) && (! (remote_user()))) { return false; + } $uid = local_user(); - if(($uid) && ($uid == $owner)) { + if (($uid) && ($uid == $owner)) { return true; } - if(remote_user()) { + if (remote_user()) { // use remembered decision and avoid a DB lookup for each and every display item // DO NOT use this function if there are going to be multiple owners @@ -126,25 +128,25 @@ function can_write_wall(&$a,$owner) { // We have a contact-id for an authenticated remote user, this block determines if the contact // belongs to this page owner, and has the necessary permissions to post content - if($verified === 2) + if ($verified === 2) { return true; - elseif($verified === 1) + } elseif ($verified === 1) { return false; - else { + } else { $cid = 0; - if(is_array($_SESSION['remote'])) { - foreach($_SESSION['remote'] as $visitor) { - if($visitor['uid'] == $owner) { + if (is_array($_SESSION['remote'])) { + foreach ($_SESSION['remote'] as $visitor) { + if ($visitor['uid'] == $owner) { $cid = $visitor['cid']; break; } } } - if(! $cid) + if (! $cid) { return false; - + } $r = q("SELECT `contact`.*, `user`.`page-flags` FROM `contact` INNER JOIN `user` on `user`.`uid` = `contact`.`uid` WHERE `contact`.`uid` = %d AND `contact`.`id` = %d AND `contact`.`blocked` = 0 AND `contact`.`pending` = 0 @@ -378,7 +380,7 @@ function check_form_security_token_redirectOnErr($err_redirect, $typename = '', logger('check_form_security_token failed: user ' . $a->user['guid'] . ' - form element ' . $typename); logger('check_form_security_token failed: _REQUEST data: ' . print_r($_REQUEST, true), LOGGER_DATA); notice( check_form_security_std_err_msg() ); - goaway($a->get_baseurl() . $err_redirect ); + goaway(App::get_baseurl() . $err_redirect ); } } function check_form_security_token_ForbiddenOnErr($typename = '', $formname = 'form_security_token') { diff --git a/include/socgraph.php b/include/socgraph.php index 349fd0b2ca..64f78b4585 100644 --- a/include/socgraph.php +++ b/include/socgraph.php @@ -91,50 +91,58 @@ function poco_load($cid,$uid = 0,$zcid = 0,$url = null) { $name = $entry->displayName; - if(isset($entry->urls)) { - foreach($entry->urls as $url) { - if($url->type == 'profile') { + if (isset($entry->urls)) { + foreach ($entry->urls as $url) { + if ($url->type == 'profile') { $profile_url = $url->value; continue; } - if($url->type == 'webfinger') { + if ($url->type == 'webfinger') { $connect_url = str_replace('acct:' , '', $url->value); continue; } } } - if(isset($entry->photos)) { - foreach($entry->photos as $photo) { - if($photo->type == 'profile') { + if (isset($entry->photos)) { + foreach ($entry->photos as $photo) { + if ($photo->type == 'profile') { $profile_photo = $photo->value; continue; } } } - if(isset($entry->updated)) + if (isset($entry->updated)) { $updated = date("Y-m-d H:i:s", strtotime($entry->updated)); + } - if(isset($entry->network)) + if (isset($entry->network)) { $network = $entry->network; + } - if(isset($entry->currentLocation)) + if (isset($entry->currentLocation)) { $location = $entry->currentLocation; + } - if(isset($entry->aboutMe)) + if (isset($entry->aboutMe)) { $about = html2bbcode($entry->aboutMe); + } - if(isset($entry->gender)) + if (isset($entry->gender)) { $gender = $entry->gender; + } - if(isset($entry->generation) AND ($entry->generation > 0)) + if (isset($entry->generation) AND ($entry->generation > 0)) { $generation = ++$entry->generation; + } - if(isset($entry->tags)) - foreach($entry->tags as $tag) + if (isset($entry->tags)) { + foreach($entry->tags as $tag) { $keywords = implode(", ", $tag); + } + } - if(isset($entry->contactType) AND ($entry->contactType >= 0)) + if (isset($entry->contactType) AND ($entry->contactType >= 0)) $contact_type = $entry->contactType; // If you query a Friendica server for its profiles, the network has to be Friendica @@ -171,8 +179,6 @@ function poco_load($cid,$uid = 0,$zcid = 0,$url = null) { function poco_check($profile_url, $name, $network, $profile_photo, $about, $location, $gender, $keywords, $connect_url, $updated, $generation, $cid = 0, $uid = 0, $zcid = 0) { - $a = get_app(); - // Generation: // 0: No definition // 1: Profiles on this server @@ -207,8 +213,9 @@ function poco_check($profile_url, $name, $network, $profile_photo, $about, $loca $orig_updated = $updated; // The global contacts should contain the original picture, not the cached one - if (($generation != 1) AND stristr(normalise_link($profile_photo), normalise_link($a->get_baseurl()."/photo/"))) + if (($generation != 1) AND stristr(normalise_link($profile_photo), normalise_link(App::get_baseurl()."/photo/"))) { $profile_photo = ""; + } $r = q("SELECT `network` FROM `contact` WHERE `nurl` = '%s' AND `network` != '' AND `network` != '%s' LIMIT 1", dbesc(normalise_link($profile_url)), dbesc(NETWORK_STATUSNET) @@ -330,7 +337,7 @@ function poco_check($profile_url, $name, $network, $profile_photo, $about, $loca intval($gcid), intval($zcid) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { q("INSERT INTO `glink` (`cid`,`uid`,`gcid`,`zcid`, `updated`) VALUES (%d,%d,%d,%d, '%s') ", intval($cid), intval($uid), @@ -1180,23 +1187,24 @@ function update_suggestions() { $done = array(); - /// TODO Check if it is really neccessary to poll the own server - poco_load(0,0,0,$a->get_baseurl() . '/poco'); + /// @TODO Check if it is really neccessary to poll the own server + poco_load(0,0,0,App::get_baseurl() . '/poco'); - $done[] = $a->get_baseurl() . '/poco'; + $done[] = App::get_baseurl() . '/poco'; - if(strlen(get_config('system','directory'))) { + if (strlen(get_config('system','directory'))) { $x = fetch_url(get_server()."/pubsites"); - if($x) { + if ($x) { $j = json_decode($x); - if($j->entries) { - foreach($j->entries as $entry) { + if ($j->entries) { + foreach ($j->entries as $entry) { poco_check_server($entry->url); $url = $entry->url . '/poco'; - if(! in_array($url,$done)) + if (! in_array($url,$done)) { poco_load(0,0,0,$entry->url . '/poco'); + } } } } @@ -1208,7 +1216,7 @@ function update_suggestions() { ); if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { $base = substr($rr['poco'],0,strrpos($rr['poco'],'/')); if(! in_array($base,$done)) poco_load(0,0,0,$base); @@ -1219,7 +1227,7 @@ function update_suggestions() { function poco_discover_federation() { $last = get_config('poco','last_federation_discovery'); - if($last) { + if ($last) { $next = $last + (24 * 60 * 60); if($next > time()) return; @@ -1333,7 +1341,7 @@ function poco_discover_server_users($data, $server) { $username = ""; if (isset($entry->urls)) { foreach($entry->urls as $url) - if($url->type == 'profile') { + if ($url->type == 'profile') { $profile_url = $url->value; $urlparts = parse_url($profile_url); $username = end(explode("/", $urlparts["path"])); @@ -1375,52 +1383,61 @@ function poco_discover_server($data, $default_generation = 0) { $name = $entry->displayName; - if(isset($entry->urls)) { + if (isset($entry->urls)) { foreach($entry->urls as $url) { - if($url->type == 'profile') { + if ($url->type == 'profile') { $profile_url = $url->value; continue; } - if($url->type == 'webfinger') { + if ($url->type == 'webfinger') { $connect_url = str_replace('acct:' , '', $url->value); continue; } } } - if(isset($entry->photos)) { - foreach($entry->photos as $photo) { - if($photo->type == 'profile') { + if (isset($entry->photos)) { + foreach ($entry->photos as $photo) { + if ($photo->type == 'profile') { $profile_photo = $photo->value; continue; } } } - if(isset($entry->updated)) + if (isset($entry->updated)) { $updated = date("Y-m-d H:i:s", strtotime($entry->updated)); + } - if(isset($entry->network)) + if(isset($entry->network)) { $network = $entry->network; + } - if(isset($entry->currentLocation)) + if(isset($entry->currentLocation)) { $location = $entry->currentLocation; + } - if(isset($entry->aboutMe)) + if(isset($entry->aboutMe)) { $about = html2bbcode($entry->aboutMe); + } - if(isset($entry->gender)) + if(isset($entry->gender)) { $gender = $entry->gender; + } - if(isset($entry->generation) AND ($entry->generation > 0)) + if(isset($entry->generation) AND ($entry->generation > 0)) { $generation = ++$entry->generation; + } - if(isset($entry->contactType) AND ($entry->contactType >= 0)) + if(isset($entry->contactType) AND ($entry->contactType >= 0)) { $contact_type = $entry->contactType; + } - if(isset($entry->tags)) - foreach($entry->tags as $tag) + if(isset($entry->tags)) { + foreach ($entry->tags as $tag) { $keywords = implode(", ", $tag); + } + } if ($generation > 0) { $success = true; @@ -1771,8 +1788,6 @@ function gs_fetch_users($server) { logger("Fetching users from GNU Social server ".$server, LOGGER_DEBUG); - $a = get_app(); - $url = $server."/main/statistics"; $result = z_fetch_url($url); @@ -1811,7 +1826,7 @@ function gs_fetch_users($server) { "nick" => $user->nickname, "about" => $user->bio, "network" => NETWORK_OSTATUS, - "photo" => $a->get_baseurl()."/images/person-175.jpg"); + "photo" => App::get_baseurl()."/images/person-175.jpg"); get_gcontact_id($contact); } } diff --git a/include/tags.php b/include/tags.php index 6c1d01d74d..0a09438478 100644 --- a/include/tags.php +++ b/include/tags.php @@ -1,13 +1,11 @@ get_baseurl(); + $profile_base = App::get_baseurl(); $profile_data = parse_url($profile_base); $profile_base_friendica = $profile_data['host'].$profile_data['path']."/profile/"; $profile_base_diaspora = $profile_data['host'].$profile_data['path']."/u/"; - $searchpath = $a->get_baseurl()."/search?tag="; + $searchpath = App::get_baseurl()."/search?tag="; $messages = q("SELECT `guid`, `uid`, `id`, `edited`, `deleted`, `created`, `received`, `title`, `body`, `tag`, `parent` FROM `item` WHERE `id` = %d LIMIT 1", intval($itemid)); diff --git a/include/text.php b/include/text.php index 5856226c37..4f71ab8e60 100644 --- a/include/text.php +++ b/include/text.php @@ -23,7 +23,7 @@ function replace_macros($s,$r) { $a = get_app(); // pass $baseurl to all templates - $r['$baseurl'] = $a->get_baseurl(); + $r['$baseurl'] = App::get_baseurl(); $t = $a->template_engine(); @@ -912,7 +912,7 @@ function contact_block() { if (dbm::is_result($r)) { $contacts = sprintf( tt('%d Contact','%d Contacts', $total),$total); $micropro = Array(); - foreach($r as $rr) { + foreach ($r as $rr) { $micropro[] = micropro($rr,true,'mpfriend'); } } @@ -1367,7 +1367,7 @@ function prepare_body(&$item,$attach = false, $preview = false) { // map if(strpos($s,'
') !== false && $item['coord']) { $x = generate_map(trim($item['coord'])); - if($x) { + if ($x) { $s = preg_replace('/\
/','$0' . $x,$s); } } @@ -1717,7 +1717,7 @@ function bb_translate_video($s) { $matches = null; $r = preg_match_all("/\[video\](.*?)\[\/video\]/ism",$s,$matches,PREG_SET_ORDER); - if($r) { + if ($r) { foreach($matches as $mtch) { if((stristr($mtch[1],'youtube')) || (stristr($mtch[1],'youtu.be'))) $s = str_replace($mtch[0],'[youtube]' . $mtch[1] . '[/youtube]',$s); @@ -2000,8 +2000,9 @@ function file_tag_unsave_file($uid,$item,$file,$cat = false) { intval($item), intval($uid) ); - if(! dbm::is_result($r)) + if (! dbm::is_result($r)) { return false; + } q("UPDATE `item` SET `file` = '%s' WHERE `id` = %d AND `uid` = %d", dbesc(str_replace($pattern,'',$r[0]['file'])), @@ -2020,11 +2021,11 @@ function file_tag_unsave_file($uid,$item,$file,$cat = false) { //$r = q("select file from item where uid = %d and deleted = 0 " . file_tag_file_query('item',$file,(($cat) ? 'category' : 'file')), //); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { $saved = get_pconfig($uid,'system','filetags'); set_pconfig($uid,'system','filetags',str_replace($pattern,'',$saved)); - } + return true; } diff --git a/include/threads.php b/include/threads.php index 48391174ec..c214cf2644 100644 --- a/include/threads.php +++ b/include/threads.php @@ -267,12 +267,10 @@ function update_threads() { } function update_threads_mention() { - $a = get_app(); - $users = q("SELECT `uid`, `nickname` FROM `user` ORDER BY `uid`"); foreach ($users AS $user) { - $self = normalise_link($a->get_baseurl() . '/profile/' . $user['nickname']); + $self = normalise_link(App::get_baseurl() . '/profile/' . $user['nickname']); $selfhttps = str_replace("http://", "https://", $self); $parents = q("SELECT DISTINCT(`parent`) FROM `item` WHERE `uid` = %d AND ((`owner-link` IN ('%s', '%s')) OR (`author-link` IN ('%s', '%s')))", diff --git a/include/uimport.php b/include/uimport.php index 51672d92b6..0d9ffc35fc 100644 --- a/include/uimport.php +++ b/include/uimport.php @@ -133,7 +133,7 @@ function import_account(&$a, $file) { } $oldbaseurl = $account['baseurl']; - $newbaseurl = $a->get_baseurl(); + $newbaseurl = App::get_baseurl(); $olduid = $account['user']['uid']; unset($account['user']['uid']); @@ -290,5 +290,5 @@ function import_account(&$a, $file) { proc_run(PRIORITY_HIGH, 'include/notifier.php', 'relocate', $newuid); info(t("Done. You can now login with your username and password")); - goaway($a->get_baseurl() . "/login"); + goaway(App::get_baseurl() . "/login"); } diff --git a/include/user.php b/include/user.php index ec15d5b134..983c4a416b 100644 --- a/include/user.php +++ b/include/user.php @@ -216,7 +216,7 @@ function create_user($arr) { dbesc($default_service_class) ); - if($r) { + if ($r) { $r = q("SELECT * FROM `user` WHERE `username` = '%s' AND `password` = '%s' LIMIT 1", dbesc($username), diff --git a/index.php b/index.php index 08f24af60f..f05151757b 100644 --- a/index.php +++ b/index.php @@ -60,15 +60,15 @@ if(!$install) { if ($a->max_processes_reached() OR $a->maxload_reached()) { header($_SERVER["SERVER_PROTOCOL"].' 503 Service Temporarily Unavailable'); header('Retry-After: 120'); - header('Refresh: 120; url='.$a->get_baseurl()."/".$a->query_string); + header('Refresh: 120; url='.App::get_baseurl()."/".$a->query_string); die("System is currently unavailable. Please try again later"); } if (get_config('system','force_ssl') AND ($a->get_scheme() == "http") AND (intval(get_config('system','ssl_policy')) == SSL_POLICY_FULL) AND - (substr($a->get_baseurl(), 0, 8) == "https://")) { + (substr(App::get_baseurl(), 0, 8) == "https://")) { header("HTTP/1.1 302 Moved Temporarily"); - header("Location: ".$a->get_baseurl()."/".$a->query_string); + header("Location: ".App::get_baseurl()."/".$a->query_string); exit(); } @@ -150,24 +150,28 @@ if((x($_GET,'zrl')) && (!$install && !$maintenance)) { * */ -// header('Link: <' . $a->get_baseurl() . '/amcd>; rel="acct-mgmt";'); +// header('Link: <' . App::get_baseurl() . '/amcd>; rel="acct-mgmt";'); -if(x($_COOKIE["Friendica"]) || (x($_SESSION,'authenticated')) || (x($_POST,'auth-params')) || ($a->module === 'login')) +if (x($_COOKIE["Friendica"]) || (x($_SESSION,'authenticated')) || (x($_POST,'auth-params')) || ($a->module === 'login')) { require("include/auth.php"); +} -if(! x($_SESSION,'authenticated')) +if (! x($_SESSION,'authenticated')) { header('X-Account-Management-Status: none'); +} /* set up page['htmlhead'] and page['end'] for the modules to use */ $a->page['htmlhead'] = ''; $a->page['end'] = ''; -if(! x($_SESSION,'sysmsg')) +if (! x($_SESSION,'sysmsg')) { $_SESSION['sysmsg'] = array(); +} -if(! x($_SESSION,'sysmsg_info')) +if (! x($_SESSION,'sysmsg_info')) { $_SESSION['sysmsg_info'] = array(); +} /* * check_config() is responsible for running update scripts. These automatically @@ -177,11 +181,11 @@ if(! x($_SESSION,'sysmsg_info')) // in install mode, any url loads install module // but we need "view" module for stylesheet -if($install && $a->module!="view") +if ($install && $a->module!="view") { $a->module = 'install'; -elseif($maintenance && $a->module!="view") +} elseif ($maintenance && $a->module!="view") { $a->module = 'maintenance'; -else { +} else { check_url($a); check_db(); check_plugins($a); @@ -191,8 +195,7 @@ nav_set_selected('nothing'); //Don't populate apps_menu if apps are private $privateapps = get_config('config','private_addons'); -if((local_user()) || (! $privateapps === "1")) -{ +if ((local_user()) || (! $privateapps === "1")) { $arr = array('app_menu' => $a->apps); call_hooks('app_menu', $arr); @@ -238,9 +241,9 @@ if(strlen($a->module)) { $privateapps = get_config('config','private_addons'); - if(is_array($a->plugins) && in_array($a->module,$a->plugins) && file_exists("addon/{$a->module}/{$a->module}.php")) { + if (is_array($a->plugins) && in_array($a->module,$a->plugins) && file_exists("addon/{$a->module}/{$a->module}.php")) { //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. ")); } else { @@ -254,7 +257,7 @@ if(strlen($a->module)) { * If not, next look for a 'standard' program module in the 'mod' directory */ - if((! $a->module_loaded) && (file_exists("mod/{$a->module}.php"))) { + if ((! $a->module_loaded) && (file_exists("mod/{$a->module}.php"))) { include_once("mod/{$a->module}.php"); $a->module_loaded = true; } @@ -272,16 +275,16 @@ if(strlen($a->module)) { * */ - if(! $a->module_loaded) { + if (! $a->module_loaded) { // Stupid browser tried to pre-fetch our Javascript img template. Don't log the event or return anything - just quietly exit. - if((x($_SERVER,'QUERY_STRING')) && preg_match('/{[0-9]}/',$_SERVER['QUERY_STRING']) !== 0) { + if ((x($_SERVER,'QUERY_STRING')) && preg_match('/{[0-9]}/',$_SERVER['QUERY_STRING']) !== 0) { killme(); } - if((x($_SERVER,'QUERY_STRING')) && ($_SERVER['QUERY_STRING'] === 'q=internal_error.html') && isset($dreamhost_error_hack)) { + if ((x($_SERVER,'QUERY_STRING')) && ($_SERVER['QUERY_STRING'] === 'q=internal_error.html') && isset($dreamhost_error_hack)) { logger('index.php: dreamhost_error_hack invoked. Original URI =' . $_SERVER['REQUEST_URI']); - goaway($a->get_baseurl() . $_SERVER['REQUEST_URI']); + goaway(App::get_baseurl() . $_SERVER['REQUEST_URI']); } logger('index.php: page not found: ' . $_SERVER['REQUEST_URI'] . ' ADDRESS: ' . $_SERVER['REMOTE_ADDR'] . ' QUERY: ' . $_SERVER['QUERY_STRING'], LOGGER_DEBUG); @@ -304,11 +307,13 @@ if (file_exists($theme_info_file)){ /* initialise content region */ -if(! x($a->page,'content')) +if (! x($a->page,'content')) { $a->page['content'] = ''; +} -if(!$install && !$maintenance) +if (!$install && !$maintenance) { call_hooks('page_content_top',$a->page['content']); +} /** * Call module functions diff --git a/js/main.js b/js/main.js index b2a4dfe35c..1b7b304a24 100644 --- a/js/main.js +++ b/js/main.js @@ -161,10 +161,12 @@ // fancyboxes $("a.popupbox").colorbox({ 'inline' : true, - 'transition' : 'elastic' + 'transition' : 'elastic', + 'maxWidth' : '100%' }); $("a.ajax-popupbox").colorbox({ - 'transition' : 'elastic' + 'transition' : 'elastic', + 'maxWidth' : '100%' }); /* notifications template */ diff --git a/library/perfect-scrollbar/README.md b/library/perfect-scrollbar/README.md index b0e732827d..b05f5c2956 100644 --- a/library/perfect-scrollbar/README.md +++ b/library/perfect-scrollbar/README.md @@ -52,16 +52,26 @@ It's cool, isn't it? ## Install +#### NPM + The best way to install and use perfect-scrollbar is with NPM. -It's registered on [npm](https://www.npmjs.org/package/perfect-scrollbar) as `perfect-scrollbar`. +It's registered on [npm](https://www.npmjs.com/package/perfect-scrollbar) as `perfect-scrollbar`. ``` $ npm install perfect-scrollbar ``` +#### Rails + +In the case you would like to have perfect-scrollbar in your Rails application, there is the [perfect-scrollbar-rails gem](https://github.com/YourCursus/perfect-scrollbar-rails). + +#### Manually + You can download the latest stable version with download links [here](http://noraesae.github.io/perfect-scrollbar/). You also can find all releases on [Releases](https://github.com/noraesae/perfect-scrollbar/releases). +#### From sources + If you want to use the development version of the plugin, use the source files which are not minified. They're in the `src` directory. The development version may be unstable, but some known bugs may @@ -74,6 +84,7 @@ $ npm install $ gulp # will lint and build the source code. ``` +#### Bower There is a Bower package for perfect-scrollbar as well. It is managed under the [perfect-scrollbar-bower](https://github.com/noraesae/perfect-scrollbar-bower) @@ -83,26 +94,38 @@ repository. The plugin is registered as `perfect-scrollbar`. $ bower install perfect-scrollbar ``` +#### CDNs -You can also load it from [cdnjs](http://cdnjs.com/). -It is registered as [`jquery.perfect-scrollbar`](http://www.cdnjs.com/libraries/jquery.perfect-scrollbar). +* [cdnjs](http://www.cdnjs.com/libraries/jquery.perfect-scrollbar) +* [JSDelivr](https://www.jsdelivr.com/projects/perfect-scrollbar) -## Requirements +#### JSFiddle -To make this plugin *perfect*, some requirements were unavoidable. -But, they're all very trivial and there is nothing to worry about. +You can fork the following JSFiddles for testing and experimenting purposes: + +* [Perfect Scrollbar](https://jsfiddle.net/DanielApt/xv0rrxv3/) +* [Perfect Scrollbar (jQuery)](https://jsfiddle.net/DanielApt/gbfLazpx/) + +## Before using perfect-scrollbar The following requirements should meet. * the container must have a 'position' css style. +* the container must be a normal container element. + * PS may not work well in `body`, `textarea`, `iframe` or flexbox. The following requirements are included in the basic CSS, but please keep in mind when you'd like to change the CSS files. -* the container must have an 'overflow:hidden' css style. +* the container must have an 'overflow: hidden' css style. * the scrollbar's position must be 'absolute'. * the scrollbar-x must have a 'bottom' css style, and the scrollbar-y must have a 'right' css style. + +Please keep in mind that perfect-scrollbar won't completely emulate native +scrolls. Scroll hooking is generally considered as bad practice, and +perfect-scrollbar should be used with care. Unless custom scroll is really needed, +please consider using native scrolls. ## How to use @@ -155,7 +178,7 @@ If the size of your container or content changes, call `update`. Ps.update(container); ``` -If you want to destory the scrollbar, use `destroy`. +If you want to destroy the scrollbar, use `destroy`. ```javascript Ps.destroy(container); @@ -238,12 +261,12 @@ define([ 'perfectScrollbarJquery' ], function (angular) { - var myApp = angular.module('myApp', []) - .run(function() { + var app = angular.module('myApp', []); + app.run(function () { window.Ps = require('perfectScrollbar'); require('perfectScrollbarJQuery'); - }) - return myApp; + }); + return app; }); ``` @@ -256,7 +279,7 @@ Ps.initialize(container); Ps.update(container); // or by jQuery: -var imgLoader = $("#imgLoader") +var imgLoader = $('#imgLoader') imgLoader.perfectScrollbar(); ``` @@ -264,57 +287,80 @@ imgLoader.perfectScrollbar(); perfect-scrollbar supports optional parameters. +### handlers +It is a list of handlers to use to scroll the element. +**Default**: `['click-rail', 'drag-scrollbar', 'keyboard', 'wheel', 'touch']` +**Disabled by default**: `'selection'` + ### wheelSpeed The scroll speed applied to mousewheel event. -**Default: 1** +**Default**: `1` ### wheelPropagation If this option is true, when the scroll reaches the end of the side, mousewheel event will be propagated to parent element. -**Default: false** +**Default**: `false` ### swipePropagation If this option is true, when the scroll reaches the end of the side, touch scrolling will be propagated to parent element. -**Default: true** +**Default**: `true` ### minScrollbarLength When set to an integer value, the thumb part of the scrollbar will not shrink below that number of pixels. -**Default: null** +**Default**: `null` ### maxScrollbarLength When set to an integer value, the thumb part of the scrollbar will not expand over that number of pixels. -**Default: null** +**Default**: `null` ### useBothWheelAxes When set to true, and only one (vertical or horizontal) scrollbar is visible then both vertical and horizontal scrolling will affect the scrollbar. -**Default: false** - -### useKeyboard -When set to true, the scroll works with arrow keys on the keyboard. The element is scrolled only when the mouse cursor hovers the element. -**Default: true** +**Default**: `false` ### suppressScrollX When set to true, the scroll bar in X axis will not be available, regardless of the content width. -**Default: false** +**Default**: `false` ### suppressScrollY When set to true, the scroll bar in Y axis will not be available, regardless of the content height. -**Default: false** +**Default**: `false` ### scrollXMarginOffset The number of pixels the content width can surpass the container width without enabling the X axis scroll bar. Allows some "wiggle room" or "offset break", so that X axis scroll bar is not enabled just because of a few pixels. -**Default: 0** +**Default**: `0` ### scrollYMarginOffset The number of pixels the content height can surpass the container height without enabling the Y axis scroll bar. Allows some "wiggle room" or "offset break", so that Y axis scroll bar is not enabled just because of a few pixels. -**Default: 0** +**Default**: `0` -### stopPropagationOnClick -When set to false, when clicking on a rail, the click event will be allowed to propagate. -**Default: true** +### theme +A string. It's a class name added to the container element. The class name is prepended with `ps-theme-`. So default theme class name is `ps-theme-default`. In order to create custom themes with scss use `ps-container($theme)` mixin, where `$theme` is a scss map. +**Default**: `'default'` + +**Example 1:** + +Add `theme` parameter: +```javascript +Ps.initialize(container, { + theme: 'my-theme-name' +}); +``` +Create a class name prefixed with `.ps-theme-`. Include `ps-container()` mixin. It's recommended to use `map-merge()` to extend `$ps-theme-default` map with your custom styles. +```scss +.ps-theme-my-theme-name { + @include ps-container(map-merge($ps-theme-default, ( + border-radius: 0, + scrollbar-x-rail-height: 20px, + scrollbar-x-height: 20px, + scrollbar-y-rail-width: 20px, + scrollbar-y-width: 20px + ))); +} +``` + +**Example 2:** + +Alternatively, if you don't want to create your own themes, but only modify the default one, you could simply overwrite `$ps-*` variables with your own values. In this case `theme` parameter is not required when calling `.initialize()` method. Remember do define your own variables before the `theme.scss` file is imported. -### useSelectionScroll -When set to true, you can scroll the container by selecting text and move the cursor. -**Default: false** ## Events @@ -363,24 +409,20 @@ $(document).on('ps-scroll-x', function () { }) ``` -## Contribution +## Tips -#### Please read [Contributing](https://github.com/noraesae/perfect-scrollbar/wiki/Contributing) in the wiki before making any contribution. +### Scrolling children inside perfect-scrollbar - -I *really* welcome contributions! Please feel free to fork and issue pull requests when... - -* You have a very nice idea to improve this plugin! -* You found a bug! -* You're good at English and can help my bad English! - -For IE problems, please refer to [IE Support](https://github.com/noraesae/perfect-scrollbar#ie-support). +You can natively scroll children inside `perfect-scrollbar` with the mouse-wheel. Scrolling automatically works if +the child is a `textarea`. All other elements need to have the `ps-child` class. This is demonstrated in [`/examples/children-native-scroll.html`](examples/children-native-scroll.html) ## IE Support -The plugin would work in IEs >= IE9 (not well, though). +The plugin is designed to work in modern browsers, including the very latest +version of IE and Edge. Specifically, it should work in IEs >= IE10. If there +is any issue in the browsers, please [file it](https://github.com/noraesae/perfect-scrollbar/issues). -**The patches to fix problems in IE<=8 won't be accepted.** +**The patches to fix problems in IE<=9 won't be accepted.** When old IEs should be supported, please fork the project and make patches personally. @@ -396,7 +438,7 @@ For common problems there is a ## License -The MIT License (MIT) Copyright (c) 2015 Hyunje Alex Jun and other contributors. +The MIT License (MIT) Copyright (c) 2016 Hyunje Alex Jun and other contributors. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: diff --git a/library/perfect-scrollbar/perfect-scrollbar.css b/library/perfect-scrollbar/perfect-scrollbar.css index 354705dd57..735219ce76 100644 --- a/library/perfect-scrollbar/perfect-scrollbar.css +++ b/library/perfect-scrollbar/perfect-scrollbar.css @@ -1,7 +1,7 @@ -/* perfect-scrollbar v0.6.10 */ +/* perfect-scrollbar v0.6.15 */ .ps-container { - -ms-touch-action: none; - touch-action: none; + -ms-touch-action: auto; + touch-action: auto; overflow: hidden !important; -ms-overflow-style: none; } @supports (-ms-overflow-style: none) { @@ -14,88 +14,90 @@ .ps-container.ps-active-y > .ps-scrollbar-y-rail { display: block; background-color: transparent; } - .ps-container.ps-in-scrolling { - pointer-events: none; } - .ps-container.ps-in-scrolling.ps-x > .ps-scrollbar-x-rail { - background-color: #eee; - opacity: 0.9; } - .ps-container.ps-in-scrolling.ps-x > .ps-scrollbar-x-rail > .ps-scrollbar-x { - background-color: #999; } - .ps-container.ps-in-scrolling.ps-y > .ps-scrollbar-y-rail { - background-color: #eee; - opacity: 0.9; } - .ps-container.ps-in-scrolling.ps-y > .ps-scrollbar-y-rail > .ps-scrollbar-y { - background-color: #999; } + .ps-container.ps-in-scrolling.ps-x > .ps-scrollbar-x-rail { + background-color: #eee; + opacity: 0.9; } + .ps-container.ps-in-scrolling.ps-x > .ps-scrollbar-x-rail > .ps-scrollbar-x { + background-color: #999; + height: 11px; } + .ps-container.ps-in-scrolling.ps-y > .ps-scrollbar-y-rail { + background-color: #eee; + opacity: 0.9; } + .ps-container.ps-in-scrolling.ps-y > .ps-scrollbar-y-rail > .ps-scrollbar-y { + background-color: #999; + width: 11px; } .ps-container > .ps-scrollbar-x-rail { display: none; position: absolute; /* please don't change 'position' */ - -webkit-border-radius: 4px; - -moz-border-radius: 4px; - border-radius: 4px; opacity: 0; -webkit-transition: background-color .2s linear, opacity .2s linear; - -moz-transition: background-color .2s linear, opacity .2s linear; -o-transition: background-color .2s linear, opacity .2s linear; + -moz-transition: background-color .2s linear, opacity .2s linear; transition: background-color .2s linear, opacity .2s linear; - bottom: 3px; + bottom: 0px; /* there must be 'bottom' for ps-scrollbar-x-rail */ - height: 8px; } + height: 15px; } .ps-container > .ps-scrollbar-x-rail > .ps-scrollbar-x { position: absolute; /* please don't change 'position' */ background-color: #aaa; - -webkit-border-radius: 4px; - -moz-border-radius: 4px; - border-radius: 4px; - -webkit-transition: background-color .2s linear; - -moz-transition: background-color .2s linear; - -o-transition: background-color .2s linear; - transition: background-color .2s linear; - bottom: 0; + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; + -webkit-transition: background-color .2s linear, height .2s linear, width .2s ease-in-out, -webkit-border-radius .2s ease-in-out; + transition: background-color .2s linear, height .2s linear, width .2s ease-in-out, -webkit-border-radius .2s ease-in-out; + -o-transition: background-color .2s linear, height .2s linear, width .2s ease-in-out, border-radius .2s ease-in-out; + -moz-transition: background-color .2s linear, height .2s linear, width .2s ease-in-out, border-radius .2s ease-in-out, -moz-border-radius .2s ease-in-out; + transition: background-color .2s linear, height .2s linear, width .2s ease-in-out, border-radius .2s ease-in-out; + transition: background-color .2s linear, height .2s linear, width .2s ease-in-out, border-radius .2s ease-in-out, -webkit-border-radius .2s ease-in-out, -moz-border-radius .2s ease-in-out; + bottom: 2px; /* there must be 'bottom' for ps-scrollbar-x */ - height: 8px; } + height: 6px; } + .ps-container > .ps-scrollbar-x-rail:hover > .ps-scrollbar-x, .ps-container > .ps-scrollbar-x-rail:active > .ps-scrollbar-x { + height: 11px; } .ps-container > .ps-scrollbar-y-rail { display: none; position: absolute; /* please don't change 'position' */ - -webkit-border-radius: 4px; - -moz-border-radius: 4px; - border-radius: 4px; opacity: 0; -webkit-transition: background-color .2s linear, opacity .2s linear; - -moz-transition: background-color .2s linear, opacity .2s linear; -o-transition: background-color .2s linear, opacity .2s linear; + -moz-transition: background-color .2s linear, opacity .2s linear; transition: background-color .2s linear, opacity .2s linear; - right: 3px; + right: 0; /* there must be 'right' for ps-scrollbar-y-rail */ - width: 8px; } + width: 15px; } .ps-container > .ps-scrollbar-y-rail > .ps-scrollbar-y { position: absolute; /* please don't change 'position' */ background-color: #aaa; - -webkit-border-radius: 4px; - -moz-border-radius: 4px; - border-radius: 4px; - -webkit-transition: background-color .2s linear; - -moz-transition: background-color .2s linear; - -o-transition: background-color .2s linear; - transition: background-color .2s linear; - right: 0; + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; + -webkit-transition: background-color .2s linear, height .2s linear, width .2s ease-in-out, -webkit-border-radius .2s ease-in-out; + transition: background-color .2s linear, height .2s linear, width .2s ease-in-out, -webkit-border-radius .2s ease-in-out; + -o-transition: background-color .2s linear, height .2s linear, width .2s ease-in-out, border-radius .2s ease-in-out; + -moz-transition: background-color .2s linear, height .2s linear, width .2s ease-in-out, border-radius .2s ease-in-out, -moz-border-radius .2s ease-in-out; + transition: background-color .2s linear, height .2s linear, width .2s ease-in-out, border-radius .2s ease-in-out; + transition: background-color .2s linear, height .2s linear, width .2s ease-in-out, border-radius .2s ease-in-out, -webkit-border-radius .2s ease-in-out, -moz-border-radius .2s ease-in-out; + right: 2px; /* there must be 'right' for ps-scrollbar-y */ - width: 8px; } - .ps-container:hover.ps-in-scrolling { - pointer-events: none; } - .ps-container:hover.ps-in-scrolling.ps-x > .ps-scrollbar-x-rail { - background-color: #eee; - opacity: 0.9; } - .ps-container:hover.ps-in-scrolling.ps-x > .ps-scrollbar-x-rail > .ps-scrollbar-x { - background-color: #999; } - .ps-container:hover.ps-in-scrolling.ps-y > .ps-scrollbar-y-rail { - background-color: #eee; - opacity: 0.9; } - .ps-container:hover.ps-in-scrolling.ps-y > .ps-scrollbar-y-rail > .ps-scrollbar-y { - background-color: #999; } + width: 6px; } + .ps-container > .ps-scrollbar-y-rail:hover > .ps-scrollbar-y, .ps-container > .ps-scrollbar-y-rail:active > .ps-scrollbar-y { + width: 11px; } + .ps-container:hover.ps-in-scrolling.ps-x > .ps-scrollbar-x-rail { + background-color: #eee; + opacity: 0.9; } + .ps-container:hover.ps-in-scrolling.ps-x > .ps-scrollbar-x-rail > .ps-scrollbar-x { + background-color: #999; + height: 11px; } + .ps-container:hover.ps-in-scrolling.ps-y > .ps-scrollbar-y-rail { + background-color: #eee; + opacity: 0.9; } + .ps-container:hover.ps-in-scrolling.ps-y > .ps-scrollbar-y-rail > .ps-scrollbar-y { + background-color: #999; + width: 11px; } .ps-container:hover > .ps-scrollbar-x-rail, .ps-container:hover > .ps-scrollbar-y-rail { opacity: 0.6; } diff --git a/library/perfect-scrollbar/perfect-scrollbar.jquery.js b/library/perfect-scrollbar/perfect-scrollbar.jquery.js index d94ed91bcd..5872325b73 100644 --- a/library/perfect-scrollbar/perfect-scrollbar.jquery.js +++ b/library/perfect-scrollbar/perfect-scrollbar.jquery.js @@ -1,16 +1,9 @@ -/* perfect-scrollbar v0.6.10 - * - * Copyright (c) 2015 Hyunje Alex Jun and other contributors - * Licensed under the MIT License - * - * Source: https://github.com/noraesae/perfect-scrollbar - */ - +/* perfect-scrollbar v0.6.15 */ (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o i.scrollbarYTop ? 1 : -1; - if (positionRatio < 0) { - positionRatio = 0; - } else if (positionRatio > 1) { - positionRatio = 1; - } - - updateScroll(element, 'top', (i.contentHeight - i.containerHeight) * positionRatio); + updateScroll(element, 'top', element.scrollTop + direction * i.containerHeight); updateGeometry(element); e.stopPropagation(); }); - if (i.settings.stopPropagationOnClick) { - i.event.bind(i.scrollbarX, 'click', stopPropagation); - } + i.event.bind(i.scrollbarX, 'click', stopPropagation); i.event.bind(i.scrollbarXRail, 'click', function (e) { - var halfOfScrollbarLength = h.toInt(i.scrollbarXWidth / 2); - var positionLeft = i.railXRatio * (e.pageX - window.pageXOffset - pageOffset(i.scrollbarXRail).left - halfOfScrollbarLength); - var maxPositionLeft = i.railXRatio * (i.railXWidth - i.scrollbarXWidth); - var positionRatio = positionLeft / maxPositionLeft; + var positionLeft = e.pageX - window.pageXOffset - pageOffset(i.scrollbarXRail).left; + var direction = positionLeft > i.scrollbarXLeft ? 1 : -1; - if (positionRatio < 0) { - positionRatio = 0; - } else if (positionRatio > 1) { - positionRatio = 1; - } - - updateScroll(element, 'left', ((i.contentWidth - i.containerWidth) * positionRatio) - i.negativeScrollAdjustment); + updateScroll(element, 'left', element.scrollLeft + direction * i.containerWidth); updateGeometry(element); e.stopPropagation(); @@ -471,14 +441,14 @@ module.exports = function (element) { bindClickRailHandler(element, i); }; -},{"../../lib/helper":6,"../instances":18,"../update-geometry":19,"../update-scroll":20}],11:[function(require,module,exports){ +},{"../instances":18,"../update-geometry":19,"../update-scroll":20}],11:[function(require,module,exports){ 'use strict'; -var d = require('../../lib/dom') - , h = require('../../lib/helper') - , instances = require('../instances') - , updateGeometry = require('../update-geometry') - , updateScroll = require('../update-scroll'); +var _ = require('../../lib/helper'); +var dom = require('../../lib/dom'); +var instances = require('../instances'); +var updateGeometry = require('../update-geometry'); +var updateScroll = require('../update-scroll'); function bindMouseScrollXHandler(element, i) { var currentLeft = null; @@ -496,7 +466,7 @@ function bindMouseScrollXHandler(element, i) { i.scrollbarXLeft = newLeft; } - var scrollLeft = h.toInt(i.scrollbarXLeft * (i.contentWidth - i.containerWidth) / (i.containerWidth - (i.railXRatio * i.scrollbarXWidth))) - i.negativeScrollAdjustment; + var scrollLeft = _.toInt(i.scrollbarXLeft * (i.contentWidth - i.containerWidth) / (i.containerWidth - (i.railXRatio * i.scrollbarXWidth))) - i.negativeScrollAdjustment; updateScroll(element, 'left', scrollLeft); } @@ -508,14 +478,14 @@ function bindMouseScrollXHandler(element, i) { }; var mouseUpHandler = function () { - h.stopScrolling(element, 'x'); + _.stopScrolling(element, 'x'); i.event.unbind(i.ownerDocument, 'mousemove', mouseMoveHandler); }; i.event.bind(i.scrollbarX, 'mousedown', function (e) { currentPageX = e.pageX; - currentLeft = h.toInt(d.css(i.scrollbarX, 'left')) * i.railXRatio; - h.startScrolling(element, 'x'); + currentLeft = _.toInt(dom.css(i.scrollbarX, 'left')) * i.railXRatio; + _.startScrolling(element, 'x'); i.event.bind(i.ownerDocument, 'mousemove', mouseMoveHandler); i.event.once(i.ownerDocument, 'mouseup', mouseUpHandler); @@ -541,7 +511,7 @@ function bindMouseScrollYHandler(element, i) { i.scrollbarYTop = newTop; } - var scrollTop = h.toInt(i.scrollbarYTop * (i.contentHeight - i.containerHeight) / (i.containerHeight - (i.railYRatio * i.scrollbarYHeight))); + var scrollTop = _.toInt(i.scrollbarYTop * (i.contentHeight - i.containerHeight) / (i.containerHeight - (i.railYRatio * i.scrollbarYHeight))); updateScroll(element, 'top', scrollTop); } @@ -553,14 +523,14 @@ function bindMouseScrollYHandler(element, i) { }; var mouseUpHandler = function () { - h.stopScrolling(element, 'y'); + _.stopScrolling(element, 'y'); i.event.unbind(i.ownerDocument, 'mousemove', mouseMoveHandler); }; i.event.bind(i.scrollbarY, 'mousedown', function (e) { currentPageY = e.pageY; - currentTop = h.toInt(d.css(i.scrollbarY, 'top')) * i.railYRatio; - h.startScrolling(element, 'y'); + currentTop = _.toInt(dom.css(i.scrollbarY, 'top')) * i.railYRatio; + _.startScrolling(element, 'y'); i.event.bind(i.ownerDocument, 'mousemove', mouseMoveHandler); i.event.once(i.ownerDocument, 'mouseup', mouseUpHandler); @@ -579,11 +549,11 @@ module.exports = function (element) { },{"../../lib/dom":3,"../../lib/helper":6,"../instances":18,"../update-geometry":19,"../update-scroll":20}],12:[function(require,module,exports){ 'use strict'; -var h = require('../../lib/helper') - , d = require('../../lib/dom') - , instances = require('../instances') - , updateGeometry = require('../update-geometry') - , updateScroll = require('../update-scroll'); +var _ = require('../../lib/helper'); +var dom = require('../../lib/dom'); +var instances = require('../instances'); +var updateGeometry = require('../update-geometry'); +var updateScroll = require('../update-scroll'); function bindKeyboardHandler(element, i) { var hovered = false; @@ -619,12 +589,12 @@ function bindKeyboardHandler(element, i) { } i.event.bind(i.ownerDocument, 'keydown', function (e) { - if (e.isDefaultPrevented && e.isDefaultPrevented()) { + if ((e.isDefaultPrevented && e.isDefaultPrevented()) || e.defaultPrevented) { return; } - var focused = d.matches(i.scrollbarX, ':focus') || - d.matches(i.scrollbarY, ':focus'); + var focused = dom.matches(i.scrollbarX, ':focus') || + dom.matches(i.scrollbarY, ':focus'); if (!hovered && !focused) { return; @@ -632,11 +602,15 @@ function bindKeyboardHandler(element, i) { var activeElement = document.activeElement ? document.activeElement : i.ownerDocument.activeElement; if (activeElement) { - // go deeper if element is a webcomponent - while (activeElement.shadowRoot) { - activeElement = activeElement.shadowRoot.activeElement; + if (activeElement.tagName === 'IFRAME') { + activeElement = activeElement.contentDocument.activeElement; + } else { + // go deeper if element is a webcomponent + while (activeElement.shadowRoot) { + activeElement = activeElement.shadowRoot.activeElement; + } } - if (h.isEditable(activeElement)) { + if (_.isEditable(activeElement)) { return; } } @@ -646,16 +620,40 @@ function bindKeyboardHandler(element, i) { switch (e.which) { case 37: // left - deltaX = -30; + if (e.metaKey) { + deltaX = -i.contentWidth; + } else if (e.altKey) { + deltaX = -i.containerWidth; + } else { + deltaX = -30; + } break; case 38: // up - deltaY = 30; + if (e.metaKey) { + deltaY = i.contentHeight; + } else if (e.altKey) { + deltaY = i.containerHeight; + } else { + deltaY = 30; + } break; case 39: // right - deltaX = 30; + if (e.metaKey) { + deltaX = i.contentWidth; + } else if (e.altKey) { + deltaX = i.containerWidth; + } else { + deltaX = 30; + } break; case 40: // down - deltaY = -30; + if (e.metaKey) { + deltaY = -i.contentHeight; + } else if (e.altKey) { + deltaY = -i.containerHeight; + } else { + deltaY = -30; + } break; case 33: // page up deltaY = 90; @@ -707,9 +705,9 @@ module.exports = function (element) { },{"../../lib/dom":3,"../../lib/helper":6,"../instances":18,"../update-geometry":19,"../update-scroll":20}],13:[function(require,module,exports){ 'use strict'; -var instances = require('../instances') - , updateGeometry = require('../update-geometry') - , updateScroll = require('../update-scroll'); +var instances = require('../instances'); +var updateGeometry = require('../update-geometry'); +var updateScroll = require('../update-scroll'); function bindMouseWheelHandler(element, i) { var shouldPrevent = false; @@ -759,23 +757,30 @@ function bindMouseWheelHandler(element, i) { deltaY = e.wheelDelta; } + if (e.shiftKey) { + // reverse axis with shift key + return [-deltaY, -deltaX]; + } return [deltaX, deltaY]; } - function shouldBeConsumedByTextarea(deltaX, deltaY) { - var hoveredTextarea = element.querySelector('textarea:hover'); - if (hoveredTextarea) { - var maxScrollTop = hoveredTextarea.scrollHeight - hoveredTextarea.clientHeight; + function shouldBeConsumedByChild(deltaX, deltaY) { + var child = element.querySelector('textarea:hover, select[multiple]:hover, .ps-child:hover'); + if (child) { + if (!window.getComputedStyle(child).overflow.match(/(scroll|auto)/)) { + // if not scrollable + return false; + } + + var maxScrollTop = child.scrollHeight - child.clientHeight; if (maxScrollTop > 0) { - if (!(hoveredTextarea.scrollTop === 0 && deltaY > 0) && - !(hoveredTextarea.scrollTop === maxScrollTop && deltaY < 0)) { + if (!(child.scrollTop === 0 && deltaY > 0) && !(child.scrollTop === maxScrollTop && deltaY < 0)) { return true; } } - var maxScrollLeft = hoveredTextarea.scrollLeft - hoveredTextarea.clientWidth; + var maxScrollLeft = child.scrollLeft - child.clientWidth; if (maxScrollLeft > 0) { - if (!(hoveredTextarea.scrollLeft === 0 && deltaX < 0) && - !(hoveredTextarea.scrollLeft === maxScrollLeft && deltaX > 0)) { + if (!(child.scrollLeft === 0 && deltaX < 0) && !(child.scrollLeft === maxScrollLeft && deltaX > 0)) { return true; } } @@ -789,7 +794,7 @@ function bindMouseWheelHandler(element, i) { var deltaX = delta[0]; var deltaY = delta[1]; - if (shouldBeConsumedByTextarea(deltaX, deltaY)) { + if (shouldBeConsumedByChild(deltaX, deltaY)) { return; } @@ -843,8 +848,8 @@ module.exports = function (element) { },{"../instances":18,"../update-geometry":19,"../update-scroll":20}],14:[function(require,module,exports){ 'use strict'; -var instances = require('../instances') - , updateGeometry = require('../update-geometry'); +var instances = require('../instances'); +var updateGeometry = require('../update-geometry'); function bindNativeScrollHandler(element, i) { i.event.bind(element, 'scroll', function () { @@ -860,10 +865,10 @@ module.exports = function (element) { },{"../instances":18,"../update-geometry":19}],15:[function(require,module,exports){ 'use strict'; -var h = require('../../lib/helper') - , instances = require('../instances') - , updateGeometry = require('../update-geometry') - , updateScroll = require('../update-scroll'); +var _ = require('../../lib/helper'); +var instances = require('../instances'); +var updateGeometry = require('../update-geometry'); +var updateScroll = require('../update-scroll'); function bindSelectionHandler(element, i) { function getRangeNode() { @@ -897,7 +902,7 @@ function bindSelectionHandler(element, i) { clearInterval(scrollingLoop); scrollingLoop = null; } - h.stopScrolling(element); + _.stopScrolling(element); } var isSelected = false; @@ -915,6 +920,12 @@ function bindSelectionHandler(element, i) { stopScrolling(); } }); + i.event.bind(window, 'keyup', function () { + if (isSelected) { + isSelected = false; + stopScrolling(); + } + }); i.event.bind(window, 'mousemove', function (e) { if (isSelected) { @@ -928,10 +939,10 @@ function bindSelectionHandler(element, i) { if (mousePosition.x < containerGeometry.left + 3) { scrollDiff.left = -5; - h.startScrolling(element, 'x'); + _.startScrolling(element, 'x'); } else if (mousePosition.x > containerGeometry.right - 3) { scrollDiff.left = 5; - h.startScrolling(element, 'x'); + _.startScrolling(element, 'x'); } else { scrollDiff.left = 0; } @@ -942,14 +953,14 @@ function bindSelectionHandler(element, i) { } else { scrollDiff.top = -20; } - h.startScrolling(element, 'y'); + _.startScrolling(element, 'y'); } else if (mousePosition.y > containerGeometry.bottom - 3) { if (mousePosition.y - containerGeometry.bottom + 3 < 5) { scrollDiff.top = 5; } else { scrollDiff.top = 20; } - h.startScrolling(element, 'y'); + _.startScrolling(element, 'y'); } else { scrollDiff.top = 0; } @@ -971,9 +982,10 @@ module.exports = function (element) { },{"../../lib/helper":6,"../instances":18,"../update-geometry":19,"../update-scroll":20}],16:[function(require,module,exports){ 'use strict'; -var instances = require('../instances') - , updateGeometry = require('../update-geometry') - , updateScroll = require('../update-scroll'); +var _ = require('../../lib/helper'); +var instances = require('../instances'); +var updateGeometry = require('../update-geometry'); +var updateScroll = require('../update-scroll'); function bindTouchHandler(element, i, supportsTouch, supportsIePointer) { function shouldPreventDefault(deltaX, deltaY) { @@ -1058,6 +1070,9 @@ function bindTouchHandler(element, i, supportsTouch, supportsIePointer) { } } function touchMove(e) { + if (!inLocalTouch && i.settings.swipePropagation) { + touchStart(e); + } if (!inGlobalTouch && inLocalTouch && shouldHandle(e)) { var touch = getTouch(e); @@ -1095,6 +1110,11 @@ function bindTouchHandler(element, i, supportsTouch, supportsIePointer) { return; } + if (!speed.x && !speed.y) { + clearInterval(easingLoop); + return; + } + if (Math.abs(speed.x) < 0.01 && Math.abs(speed.y) < 0.01) { clearInterval(easingLoop); return; @@ -1133,27 +1153,33 @@ function bindTouchHandler(element, i, supportsTouch, supportsIePointer) { } } -module.exports = function (element, supportsTouch, supportsIePointer) { +module.exports = function (element) { + if (!_.env.supportsTouch && !_.env.supportsIePointer) { + return; + } + var i = instances.get(element); - bindTouchHandler(element, i, supportsTouch, supportsIePointer); + bindTouchHandler(element, i, _.env.supportsTouch, _.env.supportsIePointer); }; -},{"../instances":18,"../update-geometry":19,"../update-scroll":20}],17:[function(require,module,exports){ +},{"../../lib/helper":6,"../instances":18,"../update-geometry":19,"../update-scroll":20}],17:[function(require,module,exports){ 'use strict'; -var cls = require('../lib/class') - , h = require('../lib/helper') - , instances = require('./instances') - , updateGeometry = require('./update-geometry'); +var _ = require('../lib/helper'); +var cls = require('../lib/class'); +var instances = require('./instances'); +var updateGeometry = require('./update-geometry'); // Handlers -var clickRailHandler = require('./handler/click-rail') - , dragScrollbarHandler = require('./handler/drag-scrollbar') - , keyboardHandler = require('./handler/keyboard') - , mouseWheelHandler = require('./handler/mouse-wheel') - , nativeScrollHandler = require('./handler/native-scroll') - , selectionHandler = require('./handler/selection') - , touchHandler = require('./handler/touch'); +var handlers = { + 'click-rail': require('./handler/click-rail'), + 'drag-scrollbar': require('./handler/drag-scrollbar'), + 'keyboard': require('./handler/keyboard'), + 'wheel': require('./handler/mouse-wheel'), + 'touch': require('./handler/touch'), + 'selection': require('./handler/selection') +}; +var nativeScrollHandler = require('./handler/native-scroll'); module.exports = function (element, userSettings) { userSettings = typeof userSettings === 'object' ? userSettings : {}; @@ -1163,50 +1189,40 @@ module.exports = function (element, userSettings) { // Create a plugin instance. var i = instances.add(element); - i.settings = h.extend(i.settings, userSettings); + i.settings = _.extend(i.settings, userSettings); cls.add(element, 'ps-theme-' + i.settings.theme); - clickRailHandler(element); - dragScrollbarHandler(element); - mouseWheelHandler(element); + i.settings.handlers.forEach(function (handlerName) { + handlers[handlerName](element); + }); + nativeScrollHandler(element); - if (i.settings.useSelectionScroll) { - selectionHandler(element); - } - - if (h.env.supportsTouch || h.env.supportsIePointer) { - touchHandler(element, h.env.supportsTouch, h.env.supportsIePointer); - } - if (i.settings.useKeyboard) { - keyboardHandler(element); - } - updateGeometry(element); }; },{"../lib/class":2,"../lib/helper":6,"./handler/click-rail":10,"./handler/drag-scrollbar":11,"./handler/keyboard":12,"./handler/mouse-wheel":13,"./handler/native-scroll":14,"./handler/selection":15,"./handler/touch":16,"./instances":18,"./update-geometry":19}],18:[function(require,module,exports){ 'use strict'; -var cls = require('../lib/class') - , d = require('../lib/dom') - , defaultSettings = require('./default-setting') - , EventManager = require('../lib/event-manager') - , guid = require('../lib/guid') - , h = require('../lib/helper'); +var _ = require('../lib/helper'); +var cls = require('../lib/class'); +var defaultSettings = require('./default-setting'); +var dom = require('../lib/dom'); +var EventManager = require('../lib/event-manager'); +var guid = require('../lib/guid'); var instances = {}; function Instance(element) { var i = this; - i.settings = h.clone(defaultSettings); + i.settings = _.clone(defaultSettings); i.containerWidth = null; i.containerHeight = null; i.contentWidth = null; i.contentHeight = null; - i.isRtl = d.css(element, 'direction') === "rtl"; + i.isRtl = dom.css(element, 'direction') === "rtl"; i.isNegativeScroll = (function () { var originalScrollLeft = element.scrollLeft; var result = null; @@ -1227,67 +1243,55 @@ function Instance(element) { cls.remove(element, 'ps-focus'); } - i.scrollbarXRail = d.appendTo(d.e('div', 'ps-scrollbar-x-rail'), element); - i.scrollbarX = d.appendTo(d.e('div', 'ps-scrollbar-x'), i.scrollbarXRail); + i.scrollbarXRail = dom.appendTo(dom.e('div', 'ps-scrollbar-x-rail'), element); + i.scrollbarX = dom.appendTo(dom.e('div', 'ps-scrollbar-x'), i.scrollbarXRail); i.scrollbarX.setAttribute('tabindex', 0); i.event.bind(i.scrollbarX, 'focus', focus); i.event.bind(i.scrollbarX, 'blur', blur); i.scrollbarXActive = null; i.scrollbarXWidth = null; i.scrollbarXLeft = null; - i.scrollbarXBottom = h.toInt(d.css(i.scrollbarXRail, 'bottom')); + i.scrollbarXBottom = _.toInt(dom.css(i.scrollbarXRail, 'bottom')); i.isScrollbarXUsingBottom = i.scrollbarXBottom === i.scrollbarXBottom; // !isNaN - i.scrollbarXTop = i.isScrollbarXUsingBottom ? null : h.toInt(d.css(i.scrollbarXRail, 'top')); - i.railBorderXWidth = h.toInt(d.css(i.scrollbarXRail, 'borderLeftWidth')) + h.toInt(d.css(i.scrollbarXRail, 'borderRightWidth')); + i.scrollbarXTop = i.isScrollbarXUsingBottom ? null : _.toInt(dom.css(i.scrollbarXRail, 'top')); + i.railBorderXWidth = _.toInt(dom.css(i.scrollbarXRail, 'borderLeftWidth')) + _.toInt(dom.css(i.scrollbarXRail, 'borderRightWidth')); // Set rail to display:block to calculate margins - d.css(i.scrollbarXRail, 'display', 'block'); - i.railXMarginWidth = h.toInt(d.css(i.scrollbarXRail, 'marginLeft')) + h.toInt(d.css(i.scrollbarXRail, 'marginRight')); - d.css(i.scrollbarXRail, 'display', ''); + dom.css(i.scrollbarXRail, 'display', 'block'); + i.railXMarginWidth = _.toInt(dom.css(i.scrollbarXRail, 'marginLeft')) + _.toInt(dom.css(i.scrollbarXRail, 'marginRight')); + dom.css(i.scrollbarXRail, 'display', ''); i.railXWidth = null; i.railXRatio = null; - i.scrollbarYRail = d.appendTo(d.e('div', 'ps-scrollbar-y-rail'), element); - i.scrollbarY = d.appendTo(d.e('div', 'ps-scrollbar-y'), i.scrollbarYRail); + i.scrollbarYRail = dom.appendTo(dom.e('div', 'ps-scrollbar-y-rail'), element); + i.scrollbarY = dom.appendTo(dom.e('div', 'ps-scrollbar-y'), i.scrollbarYRail); i.scrollbarY.setAttribute('tabindex', 0); i.event.bind(i.scrollbarY, 'focus', focus); i.event.bind(i.scrollbarY, 'blur', blur); i.scrollbarYActive = null; i.scrollbarYHeight = null; i.scrollbarYTop = null; - i.scrollbarYRight = h.toInt(d.css(i.scrollbarYRail, 'right')); + i.scrollbarYRight = _.toInt(dom.css(i.scrollbarYRail, 'right')); i.isScrollbarYUsingRight = i.scrollbarYRight === i.scrollbarYRight; // !isNaN - i.scrollbarYLeft = i.isScrollbarYUsingRight ? null : h.toInt(d.css(i.scrollbarYRail, 'left')); - i.scrollbarYOuterWidth = i.isRtl ? h.outerWidth(i.scrollbarY) : null; - i.railBorderYWidth = h.toInt(d.css(i.scrollbarYRail, 'borderTopWidth')) + h.toInt(d.css(i.scrollbarYRail, 'borderBottomWidth')); - d.css(i.scrollbarYRail, 'display', 'block'); - i.railYMarginHeight = h.toInt(d.css(i.scrollbarYRail, 'marginTop')) + h.toInt(d.css(i.scrollbarYRail, 'marginBottom')); - d.css(i.scrollbarYRail, 'display', ''); + i.scrollbarYLeft = i.isScrollbarYUsingRight ? null : _.toInt(dom.css(i.scrollbarYRail, 'left')); + i.scrollbarYOuterWidth = i.isRtl ? _.outerWidth(i.scrollbarY) : null; + i.railBorderYWidth = _.toInt(dom.css(i.scrollbarYRail, 'borderTopWidth')) + _.toInt(dom.css(i.scrollbarYRail, 'borderBottomWidth')); + dom.css(i.scrollbarYRail, 'display', 'block'); + i.railYMarginHeight = _.toInt(dom.css(i.scrollbarYRail, 'marginTop')) + _.toInt(dom.css(i.scrollbarYRail, 'marginBottom')); + dom.css(i.scrollbarYRail, 'display', ''); i.railYHeight = null; i.railYRatio = null; } function getId(element) { - if (typeof element.dataset === 'undefined') { - return element.getAttribute('data-ps-id'); - } else { - return element.dataset.psId; - } + return element.getAttribute('data-ps-id'); } function setId(element, id) { - if (typeof element.dataset === 'undefined') { - element.setAttribute('data-ps-id', id); - } else { - element.dataset.psId = id; - } + element.setAttribute('data-ps-id', id); } function removeId(element) { - if (typeof element.dataset === 'undefined') { - element.removeAttribute('data-ps-id'); - } else { - delete element.dataset.psId; - } + element.removeAttribute('data-ps-id'); } exports.add = function (element) { @@ -1309,11 +1313,11 @@ exports.get = function (element) { },{"../lib/class":2,"../lib/dom":3,"../lib/event-manager":4,"../lib/guid":5,"../lib/helper":6,"./default-setting":8}],19:[function(require,module,exports){ 'use strict'; -var cls = require('../lib/class') - , d = require('../lib/dom') - , h = require('../lib/helper') - , instances = require('./instances') - , updateScroll = require('./update-scroll'); +var _ = require('../lib/helper'); +var cls = require('../lib/class'); +var dom = require('../lib/dom'); +var instances = require('./instances'); +var updateScroll = require('./update-scroll'); function getThumbSize(i, thumbSize) { if (i.settings.minScrollbarLength) { @@ -1337,7 +1341,7 @@ function updateCss(element, i) { } else { xRailOffset.top = i.scrollbarXTop + element.scrollTop; } - d.css(i.scrollbarXRail, xRailOffset); + dom.css(i.scrollbarXRail, xRailOffset); var yRailOffset = {top: element.scrollTop, height: i.railYHeight}; if (i.isScrollbarYUsingRight) { @@ -1353,10 +1357,10 @@ function updateCss(element, i) { yRailOffset.left = i.scrollbarYLeft + element.scrollLeft; } } - d.css(i.scrollbarYRail, yRailOffset); + dom.css(i.scrollbarYRail, yRailOffset); - d.css(i.scrollbarX, {left: i.scrollbarXLeft, width: i.scrollbarXWidth - i.railBorderXWidth}); - d.css(i.scrollbarY, {top: i.scrollbarYTop, height: i.scrollbarYHeight - i.railBorderYWidth}); + dom.css(i.scrollbarX, {left: i.scrollbarXLeft, width: i.scrollbarXWidth - i.railBorderXWidth}); + dom.css(i.scrollbarY, {top: i.scrollbarYTop, height: i.scrollbarYHeight - i.railBorderYWidth}); } module.exports = function (element) { @@ -1369,30 +1373,30 @@ module.exports = function (element) { var existingRails; if (!element.contains(i.scrollbarXRail)) { - existingRails = d.queryChildren(element, '.ps-scrollbar-x-rail'); + existingRails = dom.queryChildren(element, '.ps-scrollbar-x-rail'); if (existingRails.length > 0) { existingRails.forEach(function (rail) { - d.remove(rail); + dom.remove(rail); }); } - d.appendTo(i.scrollbarXRail, element); + dom.appendTo(i.scrollbarXRail, element); } if (!element.contains(i.scrollbarYRail)) { - existingRails = d.queryChildren(element, '.ps-scrollbar-y-rail'); + existingRails = dom.queryChildren(element, '.ps-scrollbar-y-rail'); if (existingRails.length > 0) { existingRails.forEach(function (rail) { - d.remove(rail); + dom.remove(rail); }); } - d.appendTo(i.scrollbarYRail, element); + dom.appendTo(i.scrollbarYRail, element); } if (!i.settings.suppressScrollX && i.containerWidth + i.settings.scrollXMarginOffset < i.contentWidth) { i.scrollbarXActive = true; i.railXWidth = i.containerWidth - i.railXMarginWidth; i.railXRatio = i.containerWidth / i.railXWidth; - i.scrollbarXWidth = getThumbSize(i, h.toInt(i.railXWidth * i.containerWidth / i.contentWidth)); - i.scrollbarXLeft = h.toInt((i.negativeScrollAdjustment + element.scrollLeft) * (i.railXWidth - i.scrollbarXWidth) / (i.contentWidth - i.containerWidth)); + i.scrollbarXWidth = getThumbSize(i, _.toInt(i.railXWidth * i.containerWidth / i.contentWidth)); + i.scrollbarXLeft = _.toInt((i.negativeScrollAdjustment + element.scrollLeft) * (i.railXWidth - i.scrollbarXWidth) / (i.contentWidth - i.containerWidth)); } else { i.scrollbarXActive = false; } @@ -1401,8 +1405,8 @@ module.exports = function (element) { i.scrollbarYActive = true; i.railYHeight = i.containerHeight - i.railYMarginHeight; i.railYRatio = i.containerHeight / i.railYHeight; - i.scrollbarYHeight = getThumbSize(i, h.toInt(i.railYHeight * i.containerHeight / i.contentHeight)); - i.scrollbarYTop = h.toInt(element.scrollTop * (i.railYHeight - i.scrollbarYHeight) / (i.contentHeight - i.containerHeight)); + i.scrollbarYHeight = getThumbSize(i, _.toInt(i.railYHeight * i.containerHeight / i.contentHeight)); + i.scrollbarYTop = _.toInt(element.scrollTop * (i.railYHeight - i.scrollbarYHeight) / (i.contentHeight - i.containerHeight)); } else { i.scrollbarYActive = false; } @@ -1439,29 +1443,14 @@ module.exports = function (element) { var instances = require('./instances'); -var upEvent = document.createEvent('Event') - , downEvent = document.createEvent('Event') - , leftEvent = document.createEvent('Event') - , rightEvent = document.createEvent('Event') - , yEvent = document.createEvent('Event') - , xEvent = document.createEvent('Event') - , xStartEvent = document.createEvent('Event') - , xEndEvent = document.createEvent('Event') - , yStartEvent = document.createEvent('Event') - , yEndEvent = document.createEvent('Event') - , lastTop - , lastLeft; +var lastTop; +var lastLeft; -upEvent.initEvent('ps-scroll-up', true, true); -downEvent.initEvent('ps-scroll-down', true, true); -leftEvent.initEvent('ps-scroll-left', true, true); -rightEvent.initEvent('ps-scroll-right', true, true); -yEvent.initEvent('ps-scroll-y', true, true); -xEvent.initEvent('ps-scroll-x', true, true); -xStartEvent.initEvent('ps-x-reach-start', true, true); -xEndEvent.initEvent('ps-x-reach-end', true, true); -yStartEvent.initEvent('ps-y-reach-start', true, true); -yEndEvent.initEvent('ps-y-reach-end', true, true); +var createDOMEvent = function (name) { + var event = document.createEvent("Event"); + event.initEvent(name, true, true); + return event; +}; module.exports = function (element, axis, value) { if (typeof element === 'undefined') { @@ -1478,24 +1467,38 @@ module.exports = function (element, axis, value) { if (axis === 'top' && value <= 0) { element.scrollTop = value = 0; // don't allow negative scroll - element.dispatchEvent(yStartEvent); + element.dispatchEvent(createDOMEvent('ps-y-reach-start')); } if (axis === 'left' && value <= 0) { element.scrollLeft = value = 0; // don't allow negative scroll - element.dispatchEvent(xStartEvent); + element.dispatchEvent(createDOMEvent('ps-x-reach-start')); } var i = instances.get(element); if (axis === 'top' && value >= i.contentHeight - i.containerHeight) { - element.scrollTop = value = i.contentHeight - i.containerHeight; // don't allow scroll past container - element.dispatchEvent(yEndEvent); + // don't allow scroll past container + value = i.contentHeight - i.containerHeight; + if (value - element.scrollTop <= 1) { + // mitigates rounding errors on non-subpixel scroll values + value = element.scrollTop; + } else { + element.scrollTop = value; + } + element.dispatchEvent(createDOMEvent('ps-y-reach-end')); } if (axis === 'left' && value >= i.contentWidth - i.containerWidth) { - element.scrollLeft = value = i.contentWidth - i.containerWidth; // don't allow scroll past container - element.dispatchEvent(xEndEvent); + // don't allow scroll past container + value = i.contentWidth - i.containerWidth; + if (value - element.scrollLeft <= 1) { + // mitigates rounding errors on non-subpixel scroll values + value = element.scrollLeft; + } else { + element.scrollLeft = value; + } + element.dispatchEvent(createDOMEvent('ps-x-reach-end')); } if (!lastTop) { @@ -1507,29 +1510,29 @@ module.exports = function (element, axis, value) { } if (axis === 'top' && value < lastTop) { - element.dispatchEvent(upEvent); + element.dispatchEvent(createDOMEvent('ps-scroll-up')); } if (axis === 'top' && value > lastTop) { - element.dispatchEvent(downEvent); + element.dispatchEvent(createDOMEvent('ps-scroll-down')); } if (axis === 'left' && value < lastLeft) { - element.dispatchEvent(leftEvent); + element.dispatchEvent(createDOMEvent('ps-scroll-left')); } if (axis === 'left' && value > lastLeft) { - element.dispatchEvent(rightEvent); + element.dispatchEvent(createDOMEvent('ps-scroll-right')); } if (axis === 'top') { element.scrollTop = lastTop = value; - element.dispatchEvent(yEvent); + element.dispatchEvent(createDOMEvent('ps-scroll-y')); } if (axis === 'left') { element.scrollLeft = lastLeft = value; - element.dispatchEvent(xEvent); + element.dispatchEvent(createDOMEvent('ps-scroll-x')); } }; @@ -1537,11 +1540,11 @@ module.exports = function (element, axis, value) { },{"./instances":18}],21:[function(require,module,exports){ 'use strict'; -var d = require('../lib/dom') - , h = require('../lib/helper') - , instances = require('./instances') - , updateGeometry = require('./update-geometry') - , updateScroll = require('./update-scroll'); +var _ = require('../lib/helper'); +var dom = require('../lib/dom'); +var instances = require('./instances'); +var updateGeometry = require('./update-geometry'); +var updateScroll = require('./update-scroll'); module.exports = function (element) { var i = instances.get(element); @@ -1554,14 +1557,14 @@ module.exports = function (element) { i.negativeScrollAdjustment = i.isNegativeScroll ? element.scrollWidth - element.clientWidth : 0; // Recalculate rail margins - d.css(i.scrollbarXRail, 'display', 'block'); - d.css(i.scrollbarYRail, 'display', 'block'); - i.railXMarginWidth = h.toInt(d.css(i.scrollbarXRail, 'marginLeft')) + h.toInt(d.css(i.scrollbarXRail, 'marginRight')); - i.railYMarginHeight = h.toInt(d.css(i.scrollbarYRail, 'marginTop')) + h.toInt(d.css(i.scrollbarYRail, 'marginBottom')); + dom.css(i.scrollbarXRail, 'display', 'block'); + dom.css(i.scrollbarYRail, 'display', 'block'); + i.railXMarginWidth = _.toInt(dom.css(i.scrollbarXRail, 'marginLeft')) + _.toInt(dom.css(i.scrollbarXRail, 'marginRight')); + i.railYMarginHeight = _.toInt(dom.css(i.scrollbarYRail, 'marginTop')) + _.toInt(dom.css(i.scrollbarYRail, 'marginBottom')); // Hide scrollbars not to affect scrollWidth and scrollHeight - d.css(i.scrollbarXRail, 'display', 'none'); - d.css(i.scrollbarYRail, 'display', 'none'); + dom.css(i.scrollbarXRail, 'display', 'none'); + dom.css(i.scrollbarYRail, 'display', 'none'); updateGeometry(element); @@ -1569,8 +1572,8 @@ module.exports = function (element) { updateScroll(element, 'top', element.scrollTop); updateScroll(element, 'left', element.scrollLeft); - d.css(i.scrollbarXRail, 'display', ''); - d.css(i.scrollbarYRail, 'display', ''); + dom.css(i.scrollbarXRail, 'display', ''); + dom.css(i.scrollbarYRail, 'display', ''); }; },{"../lib/dom":3,"../lib/helper":6,"./instances":18,"./update-geometry":19,"./update-scroll":20}]},{},[1]); diff --git a/library/perfect-scrollbar/perfect-scrollbar.jquery.min.js b/library/perfect-scrollbar/perfect-scrollbar.jquery.min.js new file mode 100644 index 0000000000..acb198df5a --- /dev/null +++ b/library/perfect-scrollbar/perfect-scrollbar.jquery.min.js @@ -0,0 +1,2 @@ +/* perfect-scrollbar v0.6.15 */ +!function t(e,n,r){function o(i,s){if(!n[i]){if(!e[i]){var a="function"==typeof require&&require;if(!s&&a)return a(i,!0);if(l)return l(i,!0);var c=new Error("Cannot find module '"+i+"'");throw c.code="MODULE_NOT_FOUND",c}var u=n[i]={exports:{}};e[i][0].call(u.exports,function(t){var n=e[i][1][t];return o(n?n:t)},u,u.exports,t,e,n,r)}return n[i].exports}for(var l="function"==typeof require&&require,i=0;i=0&&n.splice(r,1),t.className=n.join(" ")}n.add=function(t,e){t.classList?t.classList.add(e):r(t,e)},n.remove=function(t,e){t.classList?t.classList.remove(e):o(t,e)},n.list=function(t){return t.classList?Array.prototype.slice.apply(t.classList):t.className.split(" ")}},{}],3:[function(t,e,n){"use strict";function r(t,e){return window.getComputedStyle(t)[e]}function o(t,e,n){return"number"==typeof n&&(n=n.toString()+"px"),t.style[e]=n,t}function l(t,e){for(var n in e){var r=e[n];"number"==typeof r&&(r=r.toString()+"px"),t.style[n]=r}return t}var i={};i.e=function(t,e){var n=document.createElement(t);return n.className=e,n},i.appendTo=function(t,e){return e.appendChild(t),t},i.css=function(t,e,n){return"object"==typeof e?l(t,e):"undefined"==typeof n?r(t,e):o(t,e,n)},i.matches=function(t,e){return"undefined"!=typeof t.matches?t.matches(e):"undefined"!=typeof t.matchesSelector?t.matchesSelector(e):"undefined"!=typeof t.webkitMatchesSelector?t.webkitMatchesSelector(e):"undefined"!=typeof t.mozMatchesSelector?t.mozMatchesSelector(e):"undefined"!=typeof t.msMatchesSelector?t.msMatchesSelector(e):void 0},i.remove=function(t){"undefined"!=typeof t.remove?t.remove():t.parentNode&&t.parentNode.removeChild(t)},i.queryChildren=function(t,e){return Array.prototype.filter.call(t.childNodes,function(t){return i.matches(t,e)})},e.exports=i},{}],4:[function(t,e,n){"use strict";var r=function(t){this.element=t,this.events={}};r.prototype.bind=function(t,e){"undefined"==typeof this.events[t]&&(this.events[t]=[]),this.events[t].push(e),this.element.addEventListener(t,e,!1)},r.prototype.unbind=function(t,e){var n="undefined"!=typeof e;this.events[t]=this.events[t].filter(function(r){return!(!n||r===e)||(this.element.removeEventListener(t,r,!1),!1)},this)},r.prototype.unbindAll=function(){for(var t in this.events)this.unbind(t)};var o=function(){this.eventElements=[]};o.prototype.eventElement=function(t){var e=this.eventElements.filter(function(e){return e.element===t})[0];return"undefined"==typeof e&&(e=new r(t),this.eventElements.push(e)),e},o.prototype.bind=function(t,e,n){this.eventElement(t).bind(e,n)},o.prototype.unbind=function(t,e,n){this.eventElement(t).unbind(e,n)},o.prototype.unbindAll=function(){for(var t=0;te.scrollbarYTop?1:-1;i(t,"top",t.scrollTop+s*e.containerHeight),l(t),r.stopPropagation()}),e.event.bind(e.scrollbarX,"click",r),e.event.bind(e.scrollbarXRail,"click",function(r){var o=r.pageX-window.pageXOffset-n(e.scrollbarXRail).left,s=o>e.scrollbarXLeft?1:-1;i(t,"left",t.scrollLeft+s*e.containerWidth),l(t),r.stopPropagation()})}var o=t("../instances"),l=t("../update-geometry"),i=t("../update-scroll");e.exports=function(t){var e=o.get(t);r(t,e)}},{"../instances":18,"../update-geometry":19,"../update-scroll":20}],11:[function(t,e,n){"use strict";function r(t,e){function n(n){var o=r+n*e.railXRatio,i=Math.max(0,e.scrollbarXRail.getBoundingClientRect().left)+e.railXRatio*(e.railXWidth-e.scrollbarXWidth);o<0?e.scrollbarXLeft=0:o>i?e.scrollbarXLeft=i:e.scrollbarXLeft=o;var s=l.toInt(e.scrollbarXLeft*(e.contentWidth-e.containerWidth)/(e.containerWidth-e.railXRatio*e.scrollbarXWidth))-e.negativeScrollAdjustment;c(t,"left",s)}var r=null,o=null,s=function(e){n(e.pageX-o),a(t),e.stopPropagation(),e.preventDefault()},u=function(){l.stopScrolling(t,"x"),e.event.unbind(e.ownerDocument,"mousemove",s)};e.event.bind(e.scrollbarX,"mousedown",function(n){o=n.pageX,r=l.toInt(i.css(e.scrollbarX,"left"))*e.railXRatio,l.startScrolling(t,"x"),e.event.bind(e.ownerDocument,"mousemove",s),e.event.once(e.ownerDocument,"mouseup",u),n.stopPropagation(),n.preventDefault()})}function o(t,e){function n(n){var o=r+n*e.railYRatio,i=Math.max(0,e.scrollbarYRail.getBoundingClientRect().top)+e.railYRatio*(e.railYHeight-e.scrollbarYHeight);o<0?e.scrollbarYTop=0:o>i?e.scrollbarYTop=i:e.scrollbarYTop=o;var s=l.toInt(e.scrollbarYTop*(e.contentHeight-e.containerHeight)/(e.containerHeight-e.railYRatio*e.scrollbarYHeight));c(t,"top",s)}var r=null,o=null,s=function(e){n(e.pageY-o),a(t),e.stopPropagation(),e.preventDefault()},u=function(){l.stopScrolling(t,"y"),e.event.unbind(e.ownerDocument,"mousemove",s)};e.event.bind(e.scrollbarY,"mousedown",function(n){o=n.pageY,r=l.toInt(i.css(e.scrollbarY,"top"))*e.railYRatio,l.startScrolling(t,"y"),e.event.bind(e.ownerDocument,"mousemove",s),e.event.once(e.ownerDocument,"mouseup",u),n.stopPropagation(),n.preventDefault()})}var l=t("../../lib/helper"),i=t("../../lib/dom"),s=t("../instances"),a=t("../update-geometry"),c=t("../update-scroll");e.exports=function(t){var e=s.get(t);r(t,e),o(t,e)}},{"../../lib/dom":3,"../../lib/helper":6,"../instances":18,"../update-geometry":19,"../update-scroll":20}],12:[function(t,e,n){"use strict";function r(t,e){function n(n,r){var o=t.scrollTop;if(0===n){if(!e.scrollbarYActive)return!1;if(0===o&&r>0||o>=e.contentHeight-e.containerHeight&&r<0)return!e.settings.wheelPropagation}var l=t.scrollLeft;if(0===r){if(!e.scrollbarXActive)return!1;if(0===l&&n<0||l>=e.contentWidth-e.containerWidth&&n>0)return!e.settings.wheelPropagation}return!0}var r=!1;e.event.bind(t,"mouseenter",function(){r=!0}),e.event.bind(t,"mouseleave",function(){r=!1});var i=!1;e.event.bind(e.ownerDocument,"keydown",function(c){if(!(c.isDefaultPrevented&&c.isDefaultPrevented()||c.defaultPrevented)){var u=l.matches(e.scrollbarX,":focus")||l.matches(e.scrollbarY,":focus");if(r||u){var d=document.activeElement?document.activeElement:e.ownerDocument.activeElement;if(d){if("IFRAME"===d.tagName)d=d.contentDocument.activeElement;else for(;d.shadowRoot;)d=d.shadowRoot.activeElement;if(o.isEditable(d))return}var p=0,f=0;switch(c.which){case 37:p=c.metaKey?-e.contentWidth:c.altKey?-e.containerWidth:-30;break;case 38:f=c.metaKey?e.contentHeight:c.altKey?e.containerHeight:30;break;case 39:p=c.metaKey?e.contentWidth:c.altKey?e.containerWidth:30;break;case 40:f=c.metaKey?-e.contentHeight:c.altKey?-e.containerHeight:-30;break;case 33:f=90;break;case 32:f=c.shiftKey?90:-90;break;case 34:f=-90;break;case 35:f=c.ctrlKey?-e.contentHeight:-e.containerHeight;break;case 36:f=c.ctrlKey?t.scrollTop:e.containerHeight;break;default:return}a(t,"top",t.scrollTop-f),a(t,"left",t.scrollLeft+p),s(t),i=n(p,f),i&&c.preventDefault()}}})}var o=t("../../lib/helper"),l=t("../../lib/dom"),i=t("../instances"),s=t("../update-geometry"),a=t("../update-scroll");e.exports=function(t){var e=i.get(t);r(t,e)}},{"../../lib/dom":3,"../../lib/helper":6,"../instances":18,"../update-geometry":19,"../update-scroll":20}],13:[function(t,e,n){"use strict";function r(t,e){function n(n,r){var o=t.scrollTop;if(0===n){if(!e.scrollbarYActive)return!1;if(0===o&&r>0||o>=e.contentHeight-e.containerHeight&&r<0)return!e.settings.wheelPropagation}var l=t.scrollLeft;if(0===r){if(!e.scrollbarXActive)return!1;if(0===l&&n<0||l>=e.contentWidth-e.containerWidth&&n>0)return!e.settings.wheelPropagation}return!0}function r(t){var e=t.deltaX,n=-1*t.deltaY;return"undefined"!=typeof e&&"undefined"!=typeof n||(e=-1*t.wheelDeltaX/6,n=t.wheelDeltaY/6),t.deltaMode&&1===t.deltaMode&&(e*=10,n*=10),e!==e&&n!==n&&(e=0,n=t.wheelDelta),t.shiftKey?[-n,-e]:[e,n]}function o(e,n){var r=t.querySelector("textarea:hover, select[multiple]:hover, .ps-child:hover");if(r){if(!window.getComputedStyle(r).overflow.match(/(scroll|auto)/))return!1;var o=r.scrollHeight-r.clientHeight;if(o>0&&!(0===r.scrollTop&&n>0||r.scrollTop===o&&n<0))return!0;var l=r.scrollLeft-r.clientWidth;if(l>0&&!(0===r.scrollLeft&&e<0||r.scrollLeft===l&&e>0))return!0}return!1}function s(s){var c=r(s),u=c[0],d=c[1];o(u,d)||(a=!1,e.settings.useBothWheelAxes?e.scrollbarYActive&&!e.scrollbarXActive?(d?i(t,"top",t.scrollTop-d*e.settings.wheelSpeed):i(t,"top",t.scrollTop+u*e.settings.wheelSpeed),a=!0):e.scrollbarXActive&&!e.scrollbarYActive&&(u?i(t,"left",t.scrollLeft+u*e.settings.wheelSpeed):i(t,"left",t.scrollLeft-d*e.settings.wheelSpeed),a=!0):(i(t,"top",t.scrollTop-d*e.settings.wheelSpeed),i(t,"left",t.scrollLeft+u*e.settings.wheelSpeed)),l(t),a=a||n(u,d),a&&(s.stopPropagation(),s.preventDefault()))}var a=!1;"undefined"!=typeof window.onwheel?e.event.bind(t,"wheel",s):"undefined"!=typeof window.onmousewheel&&e.event.bind(t,"mousewheel",s)}var o=t("../instances"),l=t("../update-geometry"),i=t("../update-scroll");e.exports=function(t){var e=o.get(t);r(t,e)}},{"../instances":18,"../update-geometry":19,"../update-scroll":20}],14:[function(t,e,n){"use strict";function r(t,e){e.event.bind(t,"scroll",function(){l(t)})}var o=t("../instances"),l=t("../update-geometry");e.exports=function(t){var e=o.get(t);r(t,e)}},{"../instances":18,"../update-geometry":19}],15:[function(t,e,n){"use strict";function r(t,e){function n(){var t=window.getSelection?window.getSelection():document.getSelection?document.getSelection():"";return 0===t.toString().length?null:t.getRangeAt(0).commonAncestorContainer}function r(){c||(c=setInterval(function(){return l.get(t)?(s(t,"top",t.scrollTop+u.top),s(t,"left",t.scrollLeft+u.left),void i(t)):void clearInterval(c)},50))}function a(){c&&(clearInterval(c),c=null),o.stopScrolling(t)}var c=null,u={top:0,left:0},d=!1;e.event.bind(e.ownerDocument,"selectionchange",function(){t.contains(n())?d=!0:(d=!1,a())}),e.event.bind(window,"mouseup",function(){d&&(d=!1,a())}),e.event.bind(window,"keyup",function(){d&&(d=!1,a())}),e.event.bind(window,"mousemove",function(e){if(d){var n={x:e.pageX,y:e.pageY},l={left:t.offsetLeft,right:t.offsetLeft+t.offsetWidth,top:t.offsetTop,bottom:t.offsetTop+t.offsetHeight};n.xl.right-3?(u.left=5,o.startScrolling(t,"x")):u.left=0,n.yl.bottom-3?(n.y-l.bottom+3<5?u.top=5:u.top=20,o.startScrolling(t,"y")):u.top=0,0===u.top&&0===u.left?a():r()}})}var o=t("../../lib/helper"),l=t("../instances"),i=t("../update-geometry"),s=t("../update-scroll");e.exports=function(t){var e=l.get(t);r(t,e)}},{"../../lib/helper":6,"../instances":18,"../update-geometry":19,"../update-scroll":20}],16:[function(t,e,n){"use strict";function r(t,e,n,r){function o(n,r){var o=t.scrollTop,l=t.scrollLeft,i=Math.abs(n),s=Math.abs(r);if(s>i){if(r<0&&o===e.contentHeight-e.containerHeight||r>0&&0===o)return!e.settings.swipePropagation}else if(i>s&&(n<0&&l===e.contentWidth-e.containerWidth||n>0&&0===l))return!e.settings.swipePropagation;return!0}function a(e,n){s(t,"top",t.scrollTop-n),s(t,"left",t.scrollLeft-e),i(t)}function c(){w=!0}function u(){w=!1}function d(t){return t.targetTouches?t.targetTouches[0]:t}function p(t){return!(!t.targetTouches||1!==t.targetTouches.length)||!(!t.pointerType||"mouse"===t.pointerType||t.pointerType===t.MSPOINTER_TYPE_MOUSE)}function f(t){if(p(t)){Y=!0;var e=d(t);g.pageX=e.pageX,g.pageY=e.pageY,v=(new Date).getTime(),null!==y&&clearInterval(y),t.stopPropagation()}}function h(t){if(!Y&&e.settings.swipePropagation&&f(t),!w&&Y&&p(t)){var n=d(t),r={pageX:n.pageX,pageY:n.pageY},l=r.pageX-g.pageX,i=r.pageY-g.pageY;a(l,i),g=r;var s=(new Date).getTime(),c=s-v;c>0&&(m.x=l/c,m.y=i/c,v=s),o(l,i)&&(t.stopPropagation(),t.preventDefault())}}function b(){!w&&Y&&(Y=!1,clearInterval(y),y=setInterval(function(){return l.get(t)&&(m.x||m.y)?Math.abs(m.x)<.01&&Math.abs(m.y)<.01?void clearInterval(y):(a(30*m.x,30*m.y),m.x*=.8,void(m.y*=.8)):void clearInterval(y)},10))}var g={},v=0,m={},y=null,w=!1,Y=!1;n&&(e.event.bind(window,"touchstart",c),e.event.bind(window,"touchend",u),e.event.bind(t,"touchstart",f),e.event.bind(t,"touchmove",h),e.event.bind(t,"touchend",b)),r&&(window.PointerEvent?(e.event.bind(window,"pointerdown",c),e.event.bind(window,"pointerup",u),e.event.bind(t,"pointerdown",f),e.event.bind(t,"pointermove",h),e.event.bind(t,"pointerup",b)):window.MSPointerEvent&&(e.event.bind(window,"MSPointerDown",c),e.event.bind(window,"MSPointerUp",u),e.event.bind(t,"MSPointerDown",f),e.event.bind(t,"MSPointerMove",h),e.event.bind(t,"MSPointerUp",b)))}var o=t("../../lib/helper"),l=t("../instances"),i=t("../update-geometry"),s=t("../update-scroll");e.exports=function(t){if(o.env.supportsTouch||o.env.supportsIePointer){var e=l.get(t);r(t,e,o.env.supportsTouch,o.env.supportsIePointer)}}},{"../../lib/helper":6,"../instances":18,"../update-geometry":19,"../update-scroll":20}],17:[function(t,e,n){"use strict";var r=t("../lib/helper"),o=t("../lib/class"),l=t("./instances"),i=t("./update-geometry"),s={"click-rail":t("./handler/click-rail"),"drag-scrollbar":t("./handler/drag-scrollbar"),keyboard:t("./handler/keyboard"),wheel:t("./handler/mouse-wheel"),touch:t("./handler/touch"),selection:t("./handler/selection")},a=t("./handler/native-scroll");e.exports=function(t,e){e="object"==typeof e?e:{},o.add(t,"ps-container");var n=l.add(t);n.settings=r.extend(n.settings,e),o.add(t,"ps-theme-"+n.settings.theme),n.settings.handlers.forEach(function(e){s[e](t)}),a(t),i(t)}},{"../lib/class":2,"../lib/helper":6,"./handler/click-rail":10,"./handler/drag-scrollbar":11,"./handler/keyboard":12,"./handler/mouse-wheel":13,"./handler/native-scroll":14,"./handler/selection":15,"./handler/touch":16,"./instances":18,"./update-geometry":19}],18:[function(t,e,n){"use strict";function r(t){function e(){a.add(t,"ps-focus")}function n(){a.remove(t,"ps-focus")}var r=this;r.settings=s.clone(c),r.containerWidth=null,r.containerHeight=null,r.contentWidth=null,r.contentHeight=null,r.isRtl="rtl"===u.css(t,"direction"),r.isNegativeScroll=function(){var e=t.scrollLeft,n=null;return t.scrollLeft=-1,n=t.scrollLeft<0,t.scrollLeft=e,n}(),r.negativeScrollAdjustment=r.isNegativeScroll?t.scrollWidth-t.clientWidth:0,r.event=new d,r.ownerDocument=t.ownerDocument||document,r.scrollbarXRail=u.appendTo(u.e("div","ps-scrollbar-x-rail"),t),r.scrollbarX=u.appendTo(u.e("div","ps-scrollbar-x"),r.scrollbarXRail),r.scrollbarX.setAttribute("tabindex",0),r.event.bind(r.scrollbarX,"focus",e),r.event.bind(r.scrollbarX,"blur",n),r.scrollbarXActive=null,r.scrollbarXWidth=null,r.scrollbarXLeft=null,r.scrollbarXBottom=s.toInt(u.css(r.scrollbarXRail,"bottom")),r.isScrollbarXUsingBottom=r.scrollbarXBottom===r.scrollbarXBottom,r.scrollbarXTop=r.isScrollbarXUsingBottom?null:s.toInt(u.css(r.scrollbarXRail,"top")),r.railBorderXWidth=s.toInt(u.css(r.scrollbarXRail,"borderLeftWidth"))+s.toInt(u.css(r.scrollbarXRail,"borderRightWidth")),u.css(r.scrollbarXRail,"display","block"),r.railXMarginWidth=s.toInt(u.css(r.scrollbarXRail,"marginLeft"))+s.toInt(u.css(r.scrollbarXRail,"marginRight")),u.css(r.scrollbarXRail,"display",""),r.railXWidth=null,r.railXRatio=null,r.scrollbarYRail=u.appendTo(u.e("div","ps-scrollbar-y-rail"),t),r.scrollbarY=u.appendTo(u.e("div","ps-scrollbar-y"),r.scrollbarYRail),r.scrollbarY.setAttribute("tabindex",0),r.event.bind(r.scrollbarY,"focus",e),r.event.bind(r.scrollbarY,"blur",n),r.scrollbarYActive=null,r.scrollbarYHeight=null,r.scrollbarYTop=null,r.scrollbarYRight=s.toInt(u.css(r.scrollbarYRail,"right")),r.isScrollbarYUsingRight=r.scrollbarYRight===r.scrollbarYRight,r.scrollbarYLeft=r.isScrollbarYUsingRight?null:s.toInt(u.css(r.scrollbarYRail,"left")),r.scrollbarYOuterWidth=r.isRtl?s.outerWidth(r.scrollbarY):null,r.railBorderYWidth=s.toInt(u.css(r.scrollbarYRail,"borderTopWidth"))+s.toInt(u.css(r.scrollbarYRail,"borderBottomWidth")),u.css(r.scrollbarYRail,"display","block"),r.railYMarginHeight=s.toInt(u.css(r.scrollbarYRail,"marginTop"))+s.toInt(u.css(r.scrollbarYRail,"marginBottom")),u.css(r.scrollbarYRail,"display",""),r.railYHeight=null,r.railYRatio=null}function o(t){return t.getAttribute("data-ps-id")}function l(t,e){t.setAttribute("data-ps-id",e)}function i(t){t.removeAttribute("data-ps-id")}var s=t("../lib/helper"),a=t("../lib/class"),c=t("./default-setting"),u=t("../lib/dom"),d=t("../lib/event-manager"),p=t("../lib/guid"),f={};n.add=function(t){var e=p();return l(t,e),f[e]=new r(t),f[e]},n.remove=function(t){delete f[o(t)],i(t)},n.get=function(t){return f[o(t)]}},{"../lib/class":2,"../lib/dom":3,"../lib/event-manager":4,"../lib/guid":5,"../lib/helper":6,"./default-setting":8}],19:[function(t,e,n){"use strict";function r(t,e){return t.settings.minScrollbarLength&&(e=Math.max(e,t.settings.minScrollbarLength)),t.settings.maxScrollbarLength&&(e=Math.min(e,t.settings.maxScrollbarLength)),e}function o(t,e){var n={width:e.railXWidth};e.isRtl?n.left=e.negativeScrollAdjustment+t.scrollLeft+e.containerWidth-e.contentWidth:n.left=t.scrollLeft,e.isScrollbarXUsingBottom?n.bottom=e.scrollbarXBottom-t.scrollTop:n.top=e.scrollbarXTop+t.scrollTop,s.css(e.scrollbarXRail,n);var r={top:t.scrollTop,height:e.railYHeight};e.isScrollbarYUsingRight?e.isRtl?r.right=e.contentWidth-(e.negativeScrollAdjustment+t.scrollLeft)-e.scrollbarYRight-e.scrollbarYOuterWidth:r.right=e.scrollbarYRight-t.scrollLeft:e.isRtl?r.left=e.negativeScrollAdjustment+t.scrollLeft+2*e.containerWidth-e.contentWidth-e.scrollbarYLeft-e.scrollbarYOuterWidth:r.left=e.scrollbarYLeft+t.scrollLeft,s.css(e.scrollbarYRail,r),s.css(e.scrollbarX,{left:e.scrollbarXLeft,width:e.scrollbarXWidth-e.railBorderXWidth}),s.css(e.scrollbarY,{top:e.scrollbarYTop,height:e.scrollbarYHeight-e.railBorderYWidth})}var l=t("../lib/helper"),i=t("../lib/class"),s=t("../lib/dom"),a=t("./instances"),c=t("./update-scroll");e.exports=function(t){var e=a.get(t);e.containerWidth=t.clientWidth,e.containerHeight=t.clientHeight,e.contentWidth=t.scrollWidth,e.contentHeight=t.scrollHeight;var n;t.contains(e.scrollbarXRail)||(n=s.queryChildren(t,".ps-scrollbar-x-rail"),n.length>0&&n.forEach(function(t){s.remove(t)}),s.appendTo(e.scrollbarXRail,t)),t.contains(e.scrollbarYRail)||(n=s.queryChildren(t,".ps-scrollbar-y-rail"),n.length>0&&n.forEach(function(t){s.remove(t)}),s.appendTo(e.scrollbarYRail,t)),!e.settings.suppressScrollX&&e.containerWidth+e.settings.scrollXMarginOffset=e.railXWidth-e.scrollbarXWidth&&(e.scrollbarXLeft=e.railXWidth-e.scrollbarXWidth),e.scrollbarYTop>=e.railYHeight-e.scrollbarYHeight&&(e.scrollbarYTop=e.railYHeight-e.scrollbarYHeight),o(t,e),e.scrollbarXActive?i.add(t,"ps-active-x"):(i.remove(t,"ps-active-x"),e.scrollbarXWidth=0,e.scrollbarXLeft=0,c(t,"left",0)),e.scrollbarYActive?i.add(t,"ps-active-y"):(i.remove(t,"ps-active-y"),e.scrollbarYHeight=0,e.scrollbarYTop=0,c(t,"top",0))}},{"../lib/class":2,"../lib/dom":3,"../lib/helper":6,"./instances":18,"./update-scroll":20}],20:[function(t,e,n){"use strict";var r,o,l=t("./instances"),i=function(t){var e=document.createEvent("Event");return e.initEvent(t,!0,!0),e};e.exports=function(t,e,n){if("undefined"==typeof t)throw"You must provide an element to the update-scroll function";if("undefined"==typeof e)throw"You must provide an axis to the update-scroll function";if("undefined"==typeof n)throw"You must provide a value to the update-scroll function";"top"===e&&n<=0&&(t.scrollTop=n=0,t.dispatchEvent(i("ps-y-reach-start"))),"left"===e&&n<=0&&(t.scrollLeft=n=0,t.dispatchEvent(i("ps-x-reach-start")));var s=l.get(t);"top"===e&&n>=s.contentHeight-s.containerHeight&&(n=s.contentHeight-s.containerHeight,n-t.scrollTop<=1?n=t.scrollTop:t.scrollTop=n,t.dispatchEvent(i("ps-y-reach-end"))),"left"===e&&n>=s.contentWidth-s.containerWidth&&(n=s.contentWidth-s.containerWidth,n-t.scrollLeft<=1?n=t.scrollLeft:t.scrollLeft=n,t.dispatchEvent(i("ps-x-reach-end"))),r||(r=t.scrollTop),o||(o=t.scrollLeft),"top"===e&&nr&&t.dispatchEvent(i("ps-scroll-down")),"left"===e&&no&&t.dispatchEvent(i("ps-scroll-right")),"top"===e&&(t.scrollTop=r=n,t.dispatchEvent(i("ps-scroll-y"))),"left"===e&&(t.scrollLeft=o=n,t.dispatchEvent(i("ps-scroll-x")))}},{"./instances":18}],21:[function(t,e,n){"use strict";var r=t("../lib/helper"),o=t("../lib/dom"),l=t("./instances"),i=t("./update-geometry"),s=t("./update-scroll");e.exports=function(t){var e=l.get(t);e&&(e.negativeScrollAdjustment=e.isNegativeScroll?t.scrollWidth-t.clientWidth:0,o.css(e.scrollbarXRail,"display","block"),o.css(e.scrollbarYRail,"display","block"),e.railXMarginWidth=r.toInt(o.css(e.scrollbarXRail,"marginLeft"))+r.toInt(o.css(e.scrollbarXRail,"marginRight")),e.railYMarginHeight=r.toInt(o.css(e.scrollbarYRail,"marginTop"))+r.toInt(o.css(e.scrollbarYRail,"marginBottom")),o.css(e.scrollbarXRail,"display","none"),o.css(e.scrollbarYRail,"display","none"),i(t),s(t,"top",t.scrollTop),s(t,"left",t.scrollLeft),o.css(e.scrollbarXRail,"display",""),o.css(e.scrollbarYRail,"display",""))}},{"../lib/dom":3,"../lib/helper":6,"./instances":18,"./update-geometry":19,"./update-scroll":20}]},{},[1]); \ No newline at end of file diff --git a/library/perfect-scrollbar/perfect-scrollbar.min.css b/library/perfect-scrollbar/perfect-scrollbar.min.css index e8d2f37d9c..3eb93c4ba2 100644 --- a/library/perfect-scrollbar/perfect-scrollbar.min.css +++ b/library/perfect-scrollbar/perfect-scrollbar.min.css @@ -1,2 +1,2 @@ -/* perfect-scrollbar v0.6.10 */ -.ps-container{-ms-touch-action:none;touch-action:none;overflow:hidden !important;-ms-overflow-style:none}@supports (-ms-overflow-style: none){.ps-container{overflow:auto !important}}@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none){.ps-container{overflow:auto !important}}.ps-container.ps-active-x>.ps-scrollbar-x-rail,.ps-container.ps-active-y>.ps-scrollbar-y-rail{display:block;background-color:transparent}.ps-container.ps-in-scrolling{pointer-events:none}.ps-container.ps-in-scrolling.ps-x>.ps-scrollbar-x-rail{background-color:#eee;opacity:0.9}.ps-container.ps-in-scrolling.ps-x>.ps-scrollbar-x-rail>.ps-scrollbar-x{background-color:#999}.ps-container.ps-in-scrolling.ps-y>.ps-scrollbar-y-rail{background-color:#eee;opacity:0.9}.ps-container.ps-in-scrolling.ps-y>.ps-scrollbar-y-rail>.ps-scrollbar-y{background-color:#999}.ps-container>.ps-scrollbar-x-rail{display:none;position:absolute;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;opacity:0;-webkit-transition:background-color .2s linear, opacity .2s linear;-moz-transition:background-color .2s linear, opacity .2s linear;-o-transition:background-color .2s linear, opacity .2s linear;transition:background-color .2s linear, opacity .2s linear;bottom:3px;height:8px}.ps-container>.ps-scrollbar-x-rail>.ps-scrollbar-x{position:absolute;background-color:#aaa;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-transition:background-color .2s linear;-moz-transition:background-color .2s linear;-o-transition:background-color .2s linear;transition:background-color .2s linear;bottom:0;height:8px}.ps-container>.ps-scrollbar-y-rail{display:none;position:absolute;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;opacity:0;-webkit-transition:background-color .2s linear, opacity .2s linear;-moz-transition:background-color .2s linear, opacity .2s linear;-o-transition:background-color .2s linear, opacity .2s linear;transition:background-color .2s linear, opacity .2s linear;right:3px;width:8px}.ps-container>.ps-scrollbar-y-rail>.ps-scrollbar-y{position:absolute;background-color:#aaa;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-transition:background-color .2s linear;-moz-transition:background-color .2s linear;-o-transition:background-color .2s linear;transition:background-color .2s linear;right:0;width:8px}.ps-container:hover.ps-in-scrolling{pointer-events:none}.ps-container:hover.ps-in-scrolling.ps-x>.ps-scrollbar-x-rail{background-color:#eee;opacity:0.9}.ps-container:hover.ps-in-scrolling.ps-x>.ps-scrollbar-x-rail>.ps-scrollbar-x{background-color:#999}.ps-container:hover.ps-in-scrolling.ps-y>.ps-scrollbar-y-rail{background-color:#eee;opacity:0.9}.ps-container:hover.ps-in-scrolling.ps-y>.ps-scrollbar-y-rail>.ps-scrollbar-y{background-color:#999}.ps-container:hover>.ps-scrollbar-x-rail,.ps-container:hover>.ps-scrollbar-y-rail{opacity:0.6}.ps-container:hover>.ps-scrollbar-x-rail:hover{background-color:#eee;opacity:0.9}.ps-container:hover>.ps-scrollbar-x-rail:hover>.ps-scrollbar-x{background-color:#999}.ps-container:hover>.ps-scrollbar-y-rail:hover{background-color:#eee;opacity:0.9}.ps-container:hover>.ps-scrollbar-y-rail:hover>.ps-scrollbar-y{background-color:#999} +/* perfect-scrollbar v0.6.15 */ +.ps-container{-ms-touch-action:auto;touch-action:auto;overflow:hidden !important;-ms-overflow-style:none}@supports (-ms-overflow-style: none){.ps-container{overflow:auto !important}}@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none){.ps-container{overflow:auto !important}}.ps-container.ps-active-x>.ps-scrollbar-x-rail,.ps-container.ps-active-y>.ps-scrollbar-y-rail{display:block;background-color:transparent}.ps-container.ps-in-scrolling.ps-x>.ps-scrollbar-x-rail{background-color:#eee;opacity:.9}.ps-container.ps-in-scrolling.ps-x>.ps-scrollbar-x-rail>.ps-scrollbar-x{background-color:#999;height:11px}.ps-container.ps-in-scrolling.ps-y>.ps-scrollbar-y-rail{background-color:#eee;opacity:.9}.ps-container.ps-in-scrolling.ps-y>.ps-scrollbar-y-rail>.ps-scrollbar-y{background-color:#999;width:11px}.ps-container>.ps-scrollbar-x-rail{display:none;position:absolute;opacity:0;-webkit-transition:background-color .2s linear, opacity .2s linear;-o-transition:background-color .2s linear, opacity .2s linear;-moz-transition:background-color .2s linear, opacity .2s linear;transition:background-color .2s linear, opacity .2s linear;bottom:0px;height:15px}.ps-container>.ps-scrollbar-x-rail>.ps-scrollbar-x{position:absolute;background-color:#aaa;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-transition:background-color .2s linear, height .2s linear, width .2s ease-in-out, -webkit-border-radius .2s ease-in-out;transition:background-color .2s linear, height .2s linear, width .2s ease-in-out, -webkit-border-radius .2s ease-in-out;-o-transition:background-color .2s linear, height .2s linear, width .2s ease-in-out, border-radius .2s ease-in-out;-moz-transition:background-color .2s linear, height .2s linear, width .2s ease-in-out, border-radius .2s ease-in-out, -moz-border-radius .2s ease-in-out;transition:background-color .2s linear, height .2s linear, width .2s ease-in-out, border-radius .2s ease-in-out;transition:background-color .2s linear, height .2s linear, width .2s ease-in-out, border-radius .2s ease-in-out, -webkit-border-radius .2s ease-in-out, -moz-border-radius .2s ease-in-out;bottom:2px;height:6px}.ps-container>.ps-scrollbar-x-rail:hover>.ps-scrollbar-x,.ps-container>.ps-scrollbar-x-rail:active>.ps-scrollbar-x{height:11px}.ps-container>.ps-scrollbar-y-rail{display:none;position:absolute;opacity:0;-webkit-transition:background-color .2s linear, opacity .2s linear;-o-transition:background-color .2s linear, opacity .2s linear;-moz-transition:background-color .2s linear, opacity .2s linear;transition:background-color .2s linear, opacity .2s linear;right:0;width:15px}.ps-container>.ps-scrollbar-y-rail>.ps-scrollbar-y{position:absolute;background-color:#aaa;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-transition:background-color .2s linear, height .2s linear, width .2s ease-in-out, -webkit-border-radius .2s ease-in-out;transition:background-color .2s linear, height .2s linear, width .2s ease-in-out, -webkit-border-radius .2s ease-in-out;-o-transition:background-color .2s linear, height .2s linear, width .2s ease-in-out, border-radius .2s ease-in-out;-moz-transition:background-color .2s linear, height .2s linear, width .2s ease-in-out, border-radius .2s ease-in-out, -moz-border-radius .2s ease-in-out;transition:background-color .2s linear, height .2s linear, width .2s ease-in-out, border-radius .2s ease-in-out;transition:background-color .2s linear, height .2s linear, width .2s ease-in-out, border-radius .2s ease-in-out, -webkit-border-radius .2s ease-in-out, -moz-border-radius .2s ease-in-out;right:2px;width:6px}.ps-container>.ps-scrollbar-y-rail:hover>.ps-scrollbar-y,.ps-container>.ps-scrollbar-y-rail:active>.ps-scrollbar-y{width:11px}.ps-container:hover.ps-in-scrolling.ps-x>.ps-scrollbar-x-rail{background-color:#eee;opacity:.9}.ps-container:hover.ps-in-scrolling.ps-x>.ps-scrollbar-x-rail>.ps-scrollbar-x{background-color:#999;height:11px}.ps-container:hover.ps-in-scrolling.ps-y>.ps-scrollbar-y-rail{background-color:#eee;opacity:.9}.ps-container:hover.ps-in-scrolling.ps-y>.ps-scrollbar-y-rail>.ps-scrollbar-y{background-color:#999;width:11px}.ps-container:hover>.ps-scrollbar-x-rail,.ps-container:hover>.ps-scrollbar-y-rail{opacity:.6}.ps-container:hover>.ps-scrollbar-x-rail:hover{background-color:#eee;opacity:.9}.ps-container:hover>.ps-scrollbar-x-rail:hover>.ps-scrollbar-x{background-color:#999}.ps-container:hover>.ps-scrollbar-y-rail:hover{background-color:#eee;opacity:.9}.ps-container:hover>.ps-scrollbar-y-rail:hover>.ps-scrollbar-y{background-color:#999} diff --git a/mod/admin.php b/mod/admin.php index cf0d8d9ac6..72412f69b4 100644 --- a/mod/admin.php +++ b/mod/admin.php @@ -32,13 +32,12 @@ function admin_post(&$a){ // do not allow a page manager to access the admin panel at all. - if(x($_SESSION,'submanage') && intval($_SESSION['submanage'])) + if (x($_SESSION,'submanage') && intval($_SESSION['submanage'])) { return; - - + } // urls - if($a->argc > 1) { + if ($a->argc > 1) { switch ($a->argv[1]){ case 'site': admin_page_site_post($a); @@ -134,8 +133,9 @@ function admin_content(&$a) { return login(false); } - if(x($_SESSION,'submanage') && intval($_SESSION['submanage'])) + if (x($_SESSION,'submanage') && intval($_SESSION['submanage'])) { return ""; + } // APC deactivated, since there are problems with PHP 5.5 //if (function_exists("apc_delete")) { @@ -376,7 +376,7 @@ function admin_page_federation(&$a) { '$counts' => $counts, '$version' => FRIENDICA_VERSION, '$legendtext' => sprintf(t('Currently this node is aware of %d nodes from the following platforms:'), $total), - '$baseurl' => $a->get_baseurl(), + '$baseurl' => App::get_baseurl(), )); } @@ -489,7 +489,7 @@ function admin_page_summary(&$a) { '$accounts' => $accounts, '$pending' => array(t('Pending registrations'), $pending), '$version' => array(t('Version'), FRIENDICA_VERSION), - '$baseurl' => $a->get_baseurl(), + '$baseurl' => App::get_baseurl(), '$platform' => FRIENDICA_PLATFORM, '$codename' => FRIENDICA_CODENAME, '$build' => get_config('system','build'), @@ -527,7 +527,7 @@ function admin_page_site_post(&$a) { * send relocate for every local user * */ - $old_url = $a->get_baseurl(true); + $old_url = App::get_baseurl(true); // Generate host names for relocation the addresses in the format user@address.tld $new_host = str_replace("http://", "@", normalise_link($new_url)); @@ -961,7 +961,7 @@ function admin_page_site(&$a) { '$performance' => t('Performance'), '$worker_title' => t('Worker'), '$relocate'=> t('Relocate - WARNING: advanced function. Could make this server unreachable.'), - '$baseurl' => $a->get_baseurl(true), + '$baseurl' => App::get_baseurl(true), // name, label, value, help string, extra data... '$sitename' => array('sitename', t("Site name"), $a->config['sitename'],''), '$hostname' => array('hostname', t("Host name"), $a->config['hostname'], ""), @@ -1043,7 +1043,7 @@ function admin_page_site(&$a) { '$old_pager' => array('old_pager', t("Enable old style pager"), get_config('system','old_pager'), t("The old style pager has page numbers but slows down massively the page speed.")), '$only_tag_search' => array('only_tag_search', t("Only search in tags"), get_config('system','only_tag_search'), t("On large systems the text search can slow down the system extremely.")), - '$relocate_url' => array('relocate_url', t("New base url"), $a->get_baseurl(), t("Change base url for this server. Sends relocate message to all DFRN contacts of all users.")), + '$relocate_url' => array('relocate_url', t("New base url"), App::get_baseurl(), t("Change base url for this server. Sends relocate message to all DFRN contacts of all users.")), '$rino' => array('rino', t("RINO Encryption"), intval(get_config('system','rino_encrypt')), t("Encryption layer between nodes."), array("Disabled", "RINO1 (deprecated)", "RINO2")), '$embedly' => array('embedly', t("Embedly API key"), get_config('system','embedly'), t("Embedly is used to fetch additional data for web pages. This is an optional parameter.")), @@ -1122,26 +1122,26 @@ function admin_page_dbsync(&$a) { $failed = array(); $r = q("SELECT `k`, `v` FROM `config` WHERE `cat` = 'database' "); if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { $upd = intval(substr($rr['k'],7)); if($upd < 1139 || $rr['v'] === 'success') continue; $failed[] = $upd; } } - if(! count($failed)) { + if (! count($failed)) { $o = replace_macros(get_markup_template('structure_check.tpl'),array( - '$base' => $a->get_baseurl(true), + '$base' => App::get_baseurl(true), '$banner' => t('No failed updates.'), - '$check' => t('Check database structure'), + '$check' => t('Check database structure'), )); } else { $o = replace_macros(get_markup_template('failed_updates.tpl'),array( - '$base' => $a->get_baseurl(true), + '$base' => App::get_baseurl(true), '$banner' => t('Failed Updates'), - '$desc' => t('This does not include updates prior to 1139, which did not return a status.'), - '$mark' => t('Mark success (if update was manually applied)'), - '$apply' => t('Attempt to execute this update step automatically'), + '$desc' => t('This does not include updates prior to 1139, which did not return a status.'), + '$mark' => t('Mark success (if update was manually applied)'), + '$apply' => t('Attempt to execute this update step automatically'), '$failed' => $failed )); } @@ -1156,11 +1156,11 @@ function admin_page_dbsync(&$a) { * @param App $a */ function admin_page_users_post(&$a){ - $pending = (x($_POST, 'pending') ? $_POST['pending'] : array()); - $users = (x($_POST, 'user') ? $_POST['user'] : array()); - $nu_name = (x($_POST, 'new_user_name') ? $_POST['new_user_name'] : ''); - $nu_nickname = (x($_POST, 'new_user_nickname') ? $_POST['new_user_nickname'] : ''); - $nu_email = (x($_POST, 'new_user_email') ? $_POST['new_user_email'] : ''); + $pending = (x($_POST, 'pending') ? $_POST['pending'] : array()); + $users = (x($_POST, 'user') ? $_POST['user'] : array()); + $nu_name = (x($_POST, 'new_user_name') ? $_POST['new_user_name'] : ''); + $nu_nickname = (x($_POST, 'new_user_nickname') ? $_POST['new_user_nickname'] : ''); + $nu_email = (x($_POST, 'new_user_email') ? $_POST['new_user_email'] : ''); $nu_language = get_config('system', 'language'); check_form_security_token_redirectOnErr('/admin/users', 'admin_users'); @@ -1205,7 +1205,7 @@ function admin_page_users_post(&$a){ Thank you and welcome to %4$s.')); $preamble = sprintf($preamble, $nu['username'], $a->config['sitename']); - $body = sprintf($body, $a->get_baseurl(), $nu['email'], $result['password'], $a->config['sitename']); + $body = sprintf($body, App::get_baseurl(), $nu['email'], $result['password'], $a->config['sitename']); notification(array( 'type' => "SYSTEM_EMAIL", @@ -1430,7 +1430,7 @@ function admin_page_users(&$a){ '$form_security_token' => get_form_security_token("admin_users"), // values // - '$baseurl' => $a->get_baseurl(true), + '$baseurl' => App::get_baseurl(true), '$pending' => $pending, 'deleted' => $deleted, @@ -1522,7 +1522,7 @@ function admin_page_plugins(&$a){ '$page' => t('Plugins'), '$toggle' => t('Toggle'), '$settings' => t('Settings'), - '$baseurl' => $a->get_baseurl(true), + '$baseurl' => App::get_baseurl(true), '$plugin' => $plugin, '$status' => $status, @@ -1546,32 +1546,35 @@ function admin_page_plugins(&$a){ * List plugins */ - if(x($_GET,"a") && $_GET['a']=="r") { - check_form_security_token_redirectOnErr($a->get_baseurl().'/admin/plugins', 'admin_themes', 't'); + if (x($_GET,"a") && $_GET['a']=="r") { + check_form_security_token_redirectOnErr(App::get_baseurl().'/admin/plugins', 'admin_themes', 't'); reload_plugins(); info("Plugins reloaded"); - goaway($a->get_baseurl().'/admin/plugins'); + goaway(App::get_baseurl().'/admin/plugins'); } $plugins = array(); $files = glob("addon/*/"); - if($files) { - foreach($files as $file) { - if(is_dir($file)) { + if ($files) { + foreach ($files as $file) { + if (is_dir($file)) { list($tmp, $id)=array_map("trim", explode("/",$file)); $info = get_plugin_info($id); $show_plugin = true; // If the addon is unsupported, then only show it, when it is enabled - if((strtolower($info["status"]) == "unsupported") AND !in_array($id, $a->plugins)) + if ((strtolower($info["status"]) == "unsupported") AND !in_array($id, $a->plugins)) { $show_plugin = false; + } // Override the above szenario, when the admin really wants to see outdated stuff - if(get_config("system", "show_unsupported_addons")) + if (get_config("system", "show_unsupported_addons")) { $show_plugin = true; + } - if($show_plugin) + if ($show_plugin) { $plugins[] = array($id, (in_array($id, $a->plugins)?"on":"off") , $info); + } } } } @@ -1582,7 +1585,7 @@ function admin_page_plugins(&$a){ '$page' => t('Plugins'), '$submit' => t('Save Settings'), '$reload' => t('Reload active plugins'), - '$baseurl' => $a->get_baseurl(true), + '$baseurl' => App::get_baseurl(true), '$function' => 'plugins', '$plugins' => $plugins, '$pcount' => count($plugins), @@ -1780,7 +1783,7 @@ function admin_page_themes(&$a){ '$page' => t('Themes'), '$toggle' => t('Toggle'), '$settings' => t('Settings'), - '$baseurl' => $a->get_baseurl(true), + '$baseurl' => App::get_baseurl(true), '$plugin' => $theme, '$status' => $status, '$action' => $action, @@ -1798,18 +1801,18 @@ function admin_page_themes(&$a){ // reload active themes - if(x($_GET,"a") && $_GET['a']=="r") { - check_form_security_token_redirectOnErr($a->get_baseurl().'/admin/themes', 'admin_themes', 't'); - if($themes) { - foreach($themes as $th) { - if($th['allowed']) { + if (x($_GET,"a") && $_GET['a']=="r") { + check_form_security_token_redirectOnErr(App::get_baseurl().'/admin/themes', 'admin_themes', 't'); + if ($themes) { + foreach ($themes as $th) { + if ($th['allowed']) { uninstall_theme($th['name']); install_theme($th['name']); } } } info("Themes reloaded"); - goaway($a->get_baseurl().'/admin/themes'); + goaway(App::get_baseurl().'/admin/themes'); } /* @@ -1817,7 +1820,7 @@ function admin_page_themes(&$a){ */ $xthemes = array(); - if($themes) { + if ($themes) { foreach($themes as $th) { $xthemes[] = array($th['name'],(($th['allowed']) ? "on" : "off"), get_theme_info($th['name'])); } @@ -1826,17 +1829,17 @@ function admin_page_themes(&$a){ $t = get_markup_template("admin_plugins.tpl"); return replace_macros($t, array( - '$title' => t('Administration'), - '$page' => t('Themes'), - '$submit' => t('Save Settings'), - '$reload' => t('Reload active themes'), - '$baseurl' => $a->get_baseurl(true), - '$function' => 'themes', - '$plugins' => $xthemes, - '$pcount' => count($themes), - '$noplugshint' => sprintf(t('No themes found on the system. They should be paced in %1$s'),'/view/themes'), - '$experimental' => t('[Experimental]'), - '$unsupported' => t('[Unsupported]'), + '$title' => t('Administration'), + '$page' => t('Themes'), + '$submit' => t('Save Settings'), + '$reload' => t('Reload active themes'), + '$baseurl' => App::get_baseurl(true), + '$function' => 'themes', + '$plugins' => $xthemes, + '$pcount' => count($themes), + '$noplugshint' => sprintf(t('No themes found on the system. They should be paced in %1$s'),'/view/themes'), + '$experimental' => t('[Experimental]'), + '$unsupported' => t('[Unsupported]'), '$form_security_token' => get_form_security_token("admin_themes"), )); } @@ -1904,7 +1907,7 @@ function admin_page_logs(&$a){ '$page' => t('Logs'), '$submit' => t('Save Settings'), '$clear' => t('Clear'), - '$baseurl' => $a->get_baseurl(true), + '$baseurl' => App::get_baseurl(true), '$logname' => get_config('system','logfile'), // name, label, value, help string, extra data... diff --git a/mod/allfriends.php b/mod/allfriends.php index 240aa524be..d7f4073b7e 100644 --- a/mod/allfriends.php +++ b/mod/allfriends.php @@ -8,16 +8,18 @@ require_once('mod/contacts.php'); function allfriends_content(&$a) { $o = ''; - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL); return; } - if($a->argc > 1) + if ($a->argc > 1) { $cid = intval($a->argv[1]); + } - if(! $cid) + if (! $cid) { return; + } $uid = $a->user[uid]; @@ -26,8 +28,9 @@ function allfriends_content(&$a) { intval(local_user()) ); - if(! count($c)) + if (! count($c)) { return; + } $a->page['aside'] = ""; profile_load($a, "", 0, get_contact_details_by_url($c[0]["url"])); @@ -39,14 +42,14 @@ function allfriends_content(&$a) { $r = all_friends(local_user(), $cid, $a->pager['start'], $a->pager['itemspage']); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { $o .= t('No friends to display.'); return $o; } $id = 0; - foreach($r as $rr) { + foreach ($r as $rr) { //get further details of the contact $contact_details = get_contact_details_by_url($rr['url'], $uid, $rr); @@ -60,7 +63,7 @@ function allfriends_content(&$a) { $photo_menu = contact_photo_menu ($rr); } else { - $connlnk = $a->get_baseurl() . '/follow/?url=' . $rr['url']; + $connlnk = App::get_baseurl() . '/follow/?url=' . $rr['url']; $photo_menu = array( 'profile' => array(t("View Profile"), zrl($rr['url'])), 'follow' => array(t("Connect/Follow"), $connlnk) diff --git a/mod/api.php b/mod/api.php index 406ef26c1c..caa1cba2a6 100644 --- a/mod/api.php +++ b/mod/api.php @@ -22,7 +22,7 @@ function oauth_get_client($request){ function api_post(&$a) { - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL); return; } @@ -84,7 +84,7 @@ function api_content(&$a) { } - if(! local_user()) { + if (! local_user()) { /// @TODO We need login form to redirect to this page notice( t('Please login to continue.') . EOL ); return login(false,$request->get_parameters()); diff --git a/mod/attach.php b/mod/attach.php index 274acfc2be..94cb75a386 100644 --- a/mod/attach.php +++ b/mod/attach.php @@ -16,7 +16,7 @@ function attach_init(&$a) { $r = q("SELECT * FROM `attach` WHERE `id` = %d LIMIT 1", intval($item_id) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { notice( t('Item was not found.'). EOL); return; } @@ -29,7 +29,7 @@ function attach_init(&$a) { dbesc($item_id) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { notice( t('Permission denied.') . EOL); return; } diff --git a/mod/bookmarklet.php b/mod/bookmarklet.php index be8645c1fd..86a73a7884 100644 --- a/mod/bookmarklet.php +++ b/mod/bookmarklet.php @@ -8,14 +8,14 @@ function bookmarklet_init(&$a) { } function bookmarklet_content(&$a) { - if(!local_user()) { + if (!local_user()) { $o = '

'.t('Login').'

'; $o .= login(($a->config['register_policy'] == REGISTER_CLOSED) ? false : true); return $o; } $referer = normalise_link($_SERVER["HTTP_REFERER"]); - $page = normalise_link($a->get_baseurl()."/bookmarklet"); + $page = normalise_link(App::get_baseurl()."/bookmarklet"); if (!strstr($referer, $page)) { $content = add_page_info($_REQUEST["url"]); diff --git a/mod/cal.php b/mod/cal.php index ba43393284..d49e8f7649 100644 --- a/mod/cal.php +++ b/mod/cal.php @@ -80,7 +80,7 @@ function cal_content(&$a) { $htpl = get_markup_template('event_head.tpl'); $a->page['htmlhead'] .= replace_macros($htpl,array( - '$baseurl' => $a->get_baseurl(), + '$baseurl' => App::get_baseurl(), '$module_url' => '/cal/' . $a->data['user']['nickname'], '$modparams' => 2, '$i18n' => $i18n, @@ -89,7 +89,7 @@ function cal_content(&$a) { $etpl = get_markup_template('event_end.tpl'); $a->page['end'] .= replace_macros($etpl,array( - '$baseurl' => $a->get_baseurl(), + '$baseurl' => App::get_baseurl(), '$editselect' => $editselect )); @@ -229,10 +229,11 @@ function cal_content(&$a) { if (dbm::is_result($r)) { $r = sort_by_date($r); - foreach($r as $rr) { + foreach ($r as $rr) { $j = (($rr['adjust']) ? datetime_convert('UTC',date_default_timezone_get(),$rr['start'], 'j') : datetime_convert('UTC','UTC',$rr['start'],'j')); - if(! x($links,$j)) - $links[$j] = $a->get_baseurl() . '/' . $a->cmd . '#link-' . $j; + if (! x($links,$j)) { + $links[$j] = App::get_baseurl() . '/' . $a->cmd . '#link-' . $j; + } } } @@ -270,12 +271,12 @@ function cal_content(&$a) { } $o = replace_macros($tpl, array( - '$baseurl' => $a->get_baseurl(), + '$baseurl' => App::get_baseurl(), '$tabs' => $tabs, '$title' => t('Events'), '$view' => t('View'), - '$previus' => array($a->get_baseurl()."/events/$prevyear/$prevmonth",t('Previous'),'',''), - '$next' => array($a->get_baseurl()."/events/$nextyear/$nextmonth",t('Next'),'',''), + '$previus' => array(App::get_baseurl()."/events/$prevyear/$prevmonth",t('Previous'),'',''), + '$next' => array(App::get_baseurl()."/events/$nextyear/$nextmonth",t('Next'),'',''), '$calendar' => cal($y,$m,$links, ' eventcal'), '$events' => $events, diff --git a/mod/common.php b/mod/common.php index 9f9379be57..9657ac36d8 100644 --- a/mod/common.php +++ b/mod/common.php @@ -19,23 +19,27 @@ function common_content(&$a) { return; } - if($cmd !== 'loc' && $cmd != 'rem') + if ($cmd !== 'loc' && $cmd != 'rem') { return; + } - if(! $uid) + if (! $uid) { return; + } - if($cmd === 'loc' && $cid) { + if ($cmd === 'loc' && $cid) { $c = q("SELECT `name`, `url`, `photo` FROM `contact` WHERE `id` = %d AND `uid` = %d LIMIT 1", intval($cid), intval($uid) ); + /// @TODO Handle $c with dbm::is_result() $a->page['aside'] = ""; profile_load($a, "", 0, get_contact_details_by_url($c[0]["url"])); } else { $c = q("SELECT `name`, `url`, `photo` FROM `contact` WHERE `self` = 1 AND `uid` = %d LIMIT 1", intval($uid) ); + /// @TODO Handle $c with dbm::is_result() $vcard_widget .= replace_macros(get_markup_template("vcard-widget.tpl"),array( '$name' => htmlentities($c[0]['name']), @@ -43,8 +47,9 @@ function common_content(&$a) { 'url' => 'contacts/' . $cid )); - if(! x($a->page,'aside')) + if (! x($a->page,'aside')) { $a->page['aside'] = ''; + } $a->page['aside'] .= $vcard_widget; } @@ -69,75 +74,77 @@ function common_content(&$a) { } } - - - if($cid == 0 && $zcid == 0) + if ($cid == 0 && $zcid == 0) { return; + } - - if($cid) + if ($cid) { $t = count_common_friends($uid, $cid); - else + } else { $t = count_common_friends_zcid($uid, $zcid); + } - if(count($t)) + if (count($t)) { $a->set_pager_total($t); - else { + } else { notice( t('No contacts in common.') . EOL); return $o; } - if($cid) + if ($cid) { $r = common_friends($uid, $cid, $a->pager['start'], $a->pager['itemspage']); - else + } else { $r = common_friends_zcid($uid, $zcid, $a->pager['start'], $a->pager['itemspage']); + } - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { return $o; } $id = 0; - foreach($r as $rr) { + foreach ($r as $rr) { //get further details of the contact $contact_details = get_contact_details_by_url($rr['url'], $uid); - // $rr[id] is needed to use contact_photo_menu() - $rr[id] = $rr[cid]; + // $rr['id'] is needed to use contact_photo_menu() + /// @TODO Adding '/" here avoids E_NOTICE on missing constants + $rr['id'] = $rr['cid']; $photo_menu = ''; $photo_menu = contact_photo_menu($rr); $entry = array( - 'url' => $rr['url'], - 'itemurl' => (($contact_details['addr'] != "") ? $contact_details['addr'] : $rr['url']), - 'name' => $contact_details['name'], - 'thumb' => proxy_url($contact_details['thumb'], false, PROXY_SIZE_THUMB), - 'img_hover' => htmlentities($contact_details['name']), - 'details' => $contact_details['location'], - 'tags' => $contact_details['keywords'], - 'about' => $contact_details['about'], - 'account_type' => account_type($contact_details), - 'network' => network_to_name($contact_details['network'], $contact_details['url']), - 'photo_menu' => $photo_menu, - 'id' => ++$id, + 'url' => $rr['url'], + 'itemurl' => (($contact_details['addr'] != "") ? $contact_details['addr'] : $rr['url']), + 'name' => $contact_details['name'], + 'thumb' => proxy_url($contact_details['thumb'], false, PROXY_SIZE_THUMB), + 'img_hover' => htmlentities($contact_details['name']), + 'details' => $contact_details['location'], + 'tags' => $contact_details['keywords'], + 'about' => $contact_details['about'], + 'account_type' => account_type($contact_details), + 'network' => network_to_name($contact_details['network'], $contact_details['url']), + 'photo_menu' => $photo_menu, + 'id' => ++$id, ); $entries[] = $entry; } - if($cmd === 'loc' && $cid && $uid == local_user()) { + if ($cmd === 'loc' && $cid && $uid == local_user()) { $tab_str = contacts_tab($a, $cid, 4); - } else + } else { $title = t('Common Friends'); + } $tpl = get_markup_template('viewcontact_template.tpl'); $o .= replace_macros($tpl,array( - '$title' => $title, - '$tab_str' => $tab_str, + '$title' => $title, + '$tab_str' => $tab_str, '$contacts' => $entries, '$paginate' => paginate($a), )); diff --git a/mod/community.php b/mod/community.php index 40d4016f33..d7fd2bb933 100644 --- a/mod/community.php +++ b/mod/community.php @@ -1,7 +1,7 @@ pager['start'], $a->pager['itemspage']); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { info( t('No results.') . EOL); return $o; } diff --git a/mod/contactgroup.php b/mod/contactgroup.php index 4456db2f53..856b01dd50 100644 --- a/mod/contactgroup.php +++ b/mod/contactgroup.php @@ -5,7 +5,7 @@ require_once('include/group.php'); function contactgroup_content(&$a) { - if(! local_user()) { + if (! local_user()) { killme(); } @@ -24,7 +24,7 @@ function contactgroup_content(&$a) { intval($a->argv[1]), intval(local_user()) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { killme(); } diff --git a/mod/contacts.php b/mod/contacts.php index 735ccec727..b1553393e2 100644 --- a/mod/contacts.php +++ b/mod/contacts.php @@ -8,8 +8,9 @@ require_once('mod/proxy.php'); require_once('include/Photo.php'); function contacts_init(&$a) { - if(! local_user()) + if (! local_user()) { return; + } $contact_id = 0; @@ -19,7 +20,7 @@ function contacts_init(&$a) { intval(local_user()), intval($contact_id) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { $contact_id = 0; } } @@ -78,13 +79,13 @@ function contacts_init(&$a) { $base = z_root(); $tpl = get_markup_template("contacts-head.tpl"); $a->page['htmlhead'] .= replace_macros($tpl,array( - '$baseurl' => $a->get_baseurl(true), + '$baseurl' => App::get_baseurl(true), '$base' => $base )); $tpl = get_markup_template("contacts-end.tpl"); $a->page['end'] .= replace_macros($tpl,array( - '$baseurl' => $a->get_baseurl(true), + '$baseurl' => App::get_baseurl(true), '$base' => $base )); @@ -128,18 +129,21 @@ function contacts_batch_actions(&$a){ info ( sprintf( tt("%d contact edited.", "%d contacts edited.", $count_actions), $count_actions) ); } - if(x($_SESSION,'return_url')) + if (x($_SESSION,'return_url')) { goaway('' . $_SESSION['return_url']); - else + } + else { goaway('contacts'); + } } function contacts_post(&$a) { - if(! local_user()) + if (! local_user()) { return; + } if ($a->argv[1]==="batch") { contacts_batch_actions($a); @@ -147,15 +151,16 @@ function contacts_post(&$a) { } $contact_id = intval($a->argv[1]); - if(! $contact_id) + if (! $contact_id) { return; + } $orig_record = q("SELECT * FROM `contact` WHERE `id` = %d AND `uid` = %d LIMIT 1", intval($contact_id), intval(local_user()) ); - if(! count($orig_record)) { + if (! count($orig_record)) { notice( t('Could not access contact record.') . EOL); goaway('contacts'); return; // NOTREACHED @@ -164,12 +169,12 @@ function contacts_post(&$a) { call_hooks('contact_edit_post', $_POST); $profile_id = intval($_POST['profile-assign']); - if($profile_id) { + if ($profile_id) { $r = q("SELECT `id` FROM `profile` WHERE `id` = %d AND `uid` = %d LIMIT 1", intval($profile_id), intval(local_user()) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { notice( t('Could not locate selected profile.') . EOL); return; } @@ -346,7 +351,7 @@ function contacts_content(&$a) { nav_set_selected('contacts'); - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL); return; } @@ -384,7 +389,7 @@ function contacts_content(&$a) { if($cmd === 'block') { $r = _contact_block($contact_id, $orig_record[0]); - if($r) { + if ($r) { $blocked = (($orig_record[0]['blocked']) ? 0 : 1); info((($blocked) ? t('Contact has been blocked') : t('Contact has been unblocked')).EOL); } @@ -395,7 +400,7 @@ function contacts_content(&$a) { if($cmd === 'ignore') { $r = _contact_ignore($contact_id, $orig_record[0]); - if($r) { + if ($r) { $readonly = (($orig_record[0]['readonly']) ? 0 : 1); info((($readonly) ? t('Contact has been ignored') : t('Contact has been unignored')).EOL); } @@ -407,7 +412,7 @@ function contacts_content(&$a) { if($cmd === 'archive') { $r = _contact_archive($contact_id, $orig_record[0]); - if($r) { + if ($r) { $archived = (($orig_record[0]['archive']) ? 0 : 1); info((($archived) ? t('Contact has been archived') : t('Contact has been unarchived')).EOL); } @@ -446,22 +451,26 @@ function contacts_content(&$a) { )); } // Now check how the user responded to the confirmation query - if($_REQUEST['canceled']) { - if(x($_SESSION,'return_url')) + if ($_REQUEST['canceled']) { + if (x($_SESSION,'return_url')) { goaway('' . $_SESSION['return_url']); - else + } + else { goaway('contacts'); + } } _contact_drop($contact_id, $orig_record[0]); info( t('Contact has been removed.') . EOL ); - if(x($_SESSION,'return_url')) + if (x($_SESSION,'return_url')) { goaway('' . $_SESSION['return_url']); - else + } + else { goaway('contacts'); + } return; // NOTREACHED } - if($cmd === 'posts') { + if ($cmd === 'posts') { return contact_posts($a, $contact_id); } } @@ -480,11 +489,11 @@ function contacts_content(&$a) { $editselect = 'exact'; $a->page['htmlhead'] .= replace_macros(get_markup_template('contact_head.tpl'), array( - '$baseurl' => $a->get_baseurl(true), + '$baseurl' => App::get_baseurl(true), '$editselect' => $editselect, )); $a->page['end'] .= replace_macros(get_markup_template('contact_end.tpl'), array( - '$baseurl' => $a->get_baseurl(true), + '$baseurl' => App::get_baseurl(true), '$editselect' => $editselect, )); @@ -564,7 +573,7 @@ function contacts_content(&$a) { if (in_array($contact['network'], array(NETWORK_DIASPORA, NETWORK_OSTATUS)) AND ($contact['rel'] == CONTACT_IS_FOLLOWER)) - $follow = $a->get_baseurl(true)."/follow?url=".urlencode($contact["url"]); + $follow = App::get_baseurl(true)."/follow?url=".urlencode($contact["url"]); // Load contactact related actions like hide, suggest, delete and others $contact_actions = contact_actions($contact); diff --git a/mod/content.php b/mod/content.php index 1e2307f553..2377032a79 100644 --- a/mod/content.php +++ b/mod/content.php @@ -23,7 +23,7 @@ function content_content(&$a, $update = 0) { // Currently security is based on the logged in user - if(! local_user()) { + if (! local_user()) { return; } @@ -113,11 +113,11 @@ function content_content(&$a, $update = 0) { intval($group), intval($_SESSION['uid']) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { if($update) killme(); notice( t('No such group') . EOL ); - goaway($a->get_baseurl(true) . '/network'); + goaway(App::get_baseurl(true) . '/network'); // NOTREACHED } @@ -509,8 +509,8 @@ function render_content(&$a, $items, $mode, $update, $preview = false) { 'like' => '', 'dislike' => '', 'comment' => '', - //'conv' => (($preview) ? '' : array('href'=> $a->get_baseurl($ssl_state) . '/display/' . $nickname . '/' . $item['id'], 'title'=> t('View in context'))), - 'conv' => (($preview) ? '' : array('href'=> $a->get_baseurl($ssl_state).'/display/'.$item['guid'], 'title'=> t('View in context'))), + //'conv' => (($preview) ? '' : array('href'=> App::get_baseurl($ssl_state) . '/display/' . $nickname . '/' . $item['id'], 'title'=> t('View in context'))), + 'conv' => (($preview) ? '' : array('href'=> App::get_baseurl($ssl_state).'/display/'.$item['guid'], 'title'=> t('View in context'))), 'previewing' => $previewing, 'wait' => t('Please wait'), ); @@ -742,10 +742,11 @@ function render_content(&$a, $items, $mode, $update, $preview = false) { } } - if(local_user() && link_compare($a->contact['url'],$item['author-link'])) - $edpost = array($a->get_baseurl($ssl_state)."/editpost/".$item['id'], t("Edit")); - else + if (local_user() && link_compare($a->contact['url'],$item['author-link'])) { + $edpost = array(App::get_baseurl($ssl_state)."/editpost/".$item['id'], t("Edit")); + } else { $edpost = false; + } $drop = ''; $dropping = false; @@ -764,7 +765,7 @@ function render_content(&$a, $items, $mode, $update, $preview = false) { $isstarred = "unstarred"; if ($profile_owner == local_user()) { - if($toplevelpost) { + if ($toplevelpost) { $isstarred = (($item['starred']) ? "starred" : "unstarred"); $star = array( @@ -782,6 +783,7 @@ function render_content(&$a, $items, $mode, $update, $preview = false) { intval($item['uid']), intval($item['id']) ); + if (dbm::is_result($r)) { $ignore = array( 'do' => t("ignore thread"), @@ -793,7 +795,7 @@ function render_content(&$a, $items, $mode, $update, $preview = false) { ); } $tagger = ''; - if(feature_enabled($profile_owner,'commtag')) { + if (feature_enabled($profile_owner,'commtag')) { $tagger = array( 'add' => t("add tag"), 'class' => "", @@ -818,19 +820,22 @@ function render_content(&$a, $items, $mode, $update, $preview = false) { $sp = false; $profile_link = best_link_url($item,$sp); - if($profile_link === 'mailbox') + if ($profile_link === 'mailbox') { $profile_link = ''; - if($sp) + } + if ($sp) { $sparkle = ' sparkle'; - else + } else { $profile_link = zrl($profile_link); + } // Don't rely on the author-avatar. It is better to use the data from the contact table $author_contact = get_contact_details_by_url($item['author-link'], $profile_owner); - if ($author_contact["thumb"]) + if ($author_contact["thumb"]) { $profile_avatar = $author_contact["thumb"]; - else + } else { $profile_avatar = $item['author-avatar']; + } $like = ((x($conv_responses['like'],$item['uri'])) ? format_like($conv_responses['like'][$item['uri']],$conv_responses['like'][$item['uri'] . '-l'],'like',$item['uri']) : ''); $dislike = ((x($conv_responses['dislike'],$item['uri'])) ? format_like($conv_responses['dislike'][$item['uri']],$conv_responses['dislike'][$item['uri'] . '-l'],'dislike',$item['uri']) : ''); diff --git a/mod/crepair.php b/mod/crepair.php index b4275f6baa..59b92df0a7 100644 --- a/mod/crepair.php +++ b/mod/crepair.php @@ -3,8 +3,9 @@ require_once("include/contact_selectors.php"); require_once("mod/contacts.php"); function crepair_init(&$a) { - if(! local_user()) + if (! local_user()) { return; + } $contact_id = 0; @@ -14,7 +15,7 @@ function crepair_init(&$a) { intval(local_user()), intval($contact_id) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { $contact_id = 0; } } @@ -29,10 +30,10 @@ function crepair_init(&$a) { } } - function crepair_post(&$a) { - if(! local_user()) + if (! local_user()) { return; + } $cid = (($a->argc > 1) ? intval($a->argv[1]) : 0); @@ -43,8 +44,9 @@ function crepair_post(&$a) { ); } - if(! dbm::is_result($r)) + if (! dbm::is_result($r)) { return; + } $contact = $r[0]; @@ -96,7 +98,7 @@ function crepair_post(&$a) { function crepair_content(&$a) { - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL); return; } @@ -110,7 +112,7 @@ function crepair_content(&$a) { ); } - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { notice( t('Contact not found.') . EOL); return; } diff --git a/mod/delegate.php b/mod/delegate.php index 71628aed0e..1a3f13c763 100644 --- a/mod/delegate.php +++ b/mod/delegate.php @@ -8,17 +8,18 @@ function delegate_init(&$a) { function delegate_content(&$a) { - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL); return; } - if($a->argc > 2 && $a->argv[1] === 'add' && intval($a->argv[2])) { + if ($a->argc > 2 && $a->argv[1] === 'add' && intval($a->argv[2])) { // delegated admins can view but not change delegation permissions - if(x($_SESSION,'submanage') && intval($_SESSION['submanage'])) - goaway($a->get_baseurl() . '/delegate'); + if (x($_SESSION,'submanage') && intval($_SESSION['submanage'])) { + goaway(App::get_baseurl() . '/delegate'); + } $id = $a->argv[2]; @@ -29,7 +30,7 @@ function delegate_content(&$a) { if (dbm::is_result($r)) { $r = q("select id from contact where uid = %d and nurl = '%s' limit 1", intval(local_user()), - dbesc(normalise_link($a->get_baseurl() . '/profile/' . $r[0]['nickname'])) + dbesc(normalise_link(App::get_baseurl() . '/profile/' . $r[0]['nickname'])) ); if (dbm::is_result($r)) { q("insert into manage ( uid, mid ) values ( %d , %d ) ", @@ -38,21 +39,22 @@ function delegate_content(&$a) { ); } } - goaway($a->get_baseurl() . '/delegate'); + goaway(App::get_baseurl() . '/delegate'); } - if($a->argc > 2 && $a->argv[1] === 'remove' && intval($a->argv[2])) { + if ($a->argc > 2 && $a->argv[1] === 'remove' && intval($a->argv[2])) { // delegated admins can view but not change delegation permissions - if(x($_SESSION,'submanage') && intval($_SESSION['submanage'])) - goaway($a->get_baseurl() . '/delegate'); + if (x($_SESSION,'submanage') && intval($_SESSION['submanage'])) { + goaway(App::get_baseurl() . '/delegate'); + } q("delete from manage where uid = %d and mid = %d limit 1", intval($a->argv[2]), intval(local_user()) ); - goaway($a->get_baseurl() . '/delegate'); + goaway(App::get_baseurl() . '/delegate'); } @@ -92,12 +94,12 @@ function delegate_content(&$a) { $r = q("select nurl from contact where substring_index(contact.nurl,'/',3) = '%s' and contact.uid = %d and contact.self = 0 and network = '%s' ", - dbesc(normalise_link($a->get_baseurl())), + dbesc(normalise_link(App::get_baseurl())), intval(local_user()), dbesc(NETWORK_DFRN) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { notice( t('No potential page delegates located.') . EOL); return; } @@ -105,7 +107,7 @@ function delegate_content(&$a) { $nicknames = array(); if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { $nicknames[] = "'" . dbesc(basename($rr['nurl'])) . "'"; } } @@ -128,7 +130,7 @@ function delegate_content(&$a) { $o = replace_macros(get_markup_template('delegate.tpl'),array( '$header' => t('Delegate Page Management'), - '$base' => $a->get_baseurl(), + '$base' => App::get_baseurl(), '$desc' => t('Delegates are able to manage all aspects of this account/page except for basic account settings. Please do not delegate your personal account to anybody that you do not trust completely.'), '$head_managers' => t('Existing Page Managers'), '$managers' => $full_managers, diff --git a/mod/dfrn_confirm.php b/mod/dfrn_confirm.php index 23c62cb0ab..684cd341e7 100644 --- a/mod/dfrn_confirm.php +++ b/mod/dfrn_confirm.php @@ -121,7 +121,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) { intval($uid) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { logger('Contact not found in DB.'); notice( t('Contact not found.') . EOL ); notice( t('This may occasionally happen if contact was requested by both persons and it has already been approved.') . EOL ); @@ -194,7 +194,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) { $params['public_key'] = $public_key; - $my_url = $a->get_baseurl() . '/profile/' . $user[0]['nickname']; + $my_url = App::get_baseurl() . '/profile/' . $user[0]['nickname']; openssl_public_encrypt($my_url, $params['source_url'], $site_pubkey); $params['source_url'] = bin2hex($params['source_url']); @@ -433,7 +433,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) { if(($contact) && ($contact['network'] === NETWORK_DIASPORA)) { require_once('include/diaspora.php'); - $ret = diaspora::send_share($user[0],$r[0]); + $ret = Diaspora::send_share($user[0],$r[0]); logger('share returns: ' . $ret); } @@ -503,10 +503,11 @@ function dfrn_confirm_post(&$a,$handsfree = null) { // Let's send our user to the contact editor in case they want to // do anything special with this new friend. - if($handsfree === null) - goaway($a->get_baseurl() . '/contacts/' . intval($contact_id)); - else + if ($handsfree === null) { + goaway(App::get_baseurl() . '/contacts/' . intval($contact_id)); + } else { return; + } //NOTREACHED } @@ -522,7 +523,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) { * */ - if(x($_POST,'source_url')) { + if (x($_POST,'source_url')) { // We are processing an external confirmation to an introduction created by our user. @@ -543,7 +544,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) { // If $aes_key is set, both of these items require unpacking from the hex transport encoding. - if(x($aes_key)) { + if (x($aes_key)) { $aes_key = hex2bin($aes_key); $public_key = hex2bin($public_key); } @@ -553,7 +554,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) { $r = q("SELECT * FROM `user` WHERE `nickname` = '%s' LIMIT 1", dbesc($node)); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { $message = sprintf(t('No user record found for \'%s\' '), $node); xml_status(3,$message); // failure // NOTREACHED @@ -640,7 +641,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) { dbesc($dfrn_pubkey), intval($dfrn_record) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { $message = t('Unable to set your contact credentials on our system.'); xml_status(3,$message); } @@ -661,10 +662,11 @@ function dfrn_confirm_post(&$a,$handsfree = null) { $r = q("SELECT `photo` FROM `contact` WHERE `id` = %d LIMIT 1", intval($dfrn_record)); - if (dbm::is_result($r)) + if (dbm::is_result($r)) { $photo = $r[0]['photo']; - else - $photo = $a->get_baseurl() . '/images/person-175.jpg'; + } else { + $photo = App::get_baseurl() . '/images/person-175.jpg'; + } require_once("include/Photo.php"); @@ -673,11 +675,13 @@ function dfrn_confirm_post(&$a,$handsfree = null) { logger('dfrn_confirm: request - photos imported'); $new_relation = CONTACT_IS_SHARING; - if(($relation == CONTACT_IS_FOLLOWER) || ($duplex)) + if (($relation == CONTACT_IS_FOLLOWER) || ($duplex)) { $new_relation = CONTACT_IS_FRIEND; + } - if(($relation == CONTACT_IS_FOLLOWER) && ($duplex)) + if (($relation == CONTACT_IS_FOLLOWER) && ($duplex)) { $duplex = 0; + } $r = q("UPDATE `contact` SET `rel` = %d, @@ -699,7 +703,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) { dbesc(NETWORK_DFRN), intval($dfrn_record) ); - if($r === false) { // indicates schema is messed up or total db failure + if ($r === false) { // indicates schema is messed up or total db failure $message = t('Unable to update your contact profile details on our system'); xml_status(3,$message); } @@ -726,7 +730,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) { 'to_name' => $r[0]['username'], 'to_email' => $r[0]['email'], 'uid' => $r[0]['uid'], - 'link' => $a->get_baseurl() . '/contacts/' . $dfrn_record, + 'link' => App::get_baseurl() . '/contacts/' . $dfrn_record, 'source_name' => ((strlen(stripslashes($r[0]['name']))) ? stripslashes($r[0]['name']) : t('[Name Withheld]')), 'source_link' => $r[0]['url'], 'source_photo' => $r[0]['photo'], diff --git a/mod/dfrn_notify.php b/mod/dfrn_notify.php index dfa2af18ce..ca12211583 100644 --- a/mod/dfrn_notify.php +++ b/mod/dfrn_notify.php @@ -42,7 +42,7 @@ function dfrn_notify_post(&$a) { dbesc($dfrn_id), dbesc($challenge) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { logger('dfrn_notify: could not match challenge to dfrn_id ' . $dfrn_id . ' challenge=' . $challenge); xml_status(3); } @@ -88,7 +88,7 @@ function dfrn_notify_post(&$a) { dbesc($a->argv[1]) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { logger('dfrn_notify: contact not found for dfrn_id ' . $dfrn_id); xml_status(3); //NOTREACHED @@ -284,8 +284,9 @@ function dfrn_notify_content(&$a) { dbesc($a->argv[1]) ); - if(! dbm::is_result($r)) + if (! dbm::is_result($r)) { $status = 1; + } logger("Remote rino version: ".$rino_remote." for ".$r[0]["url"], LOGGER_DEBUG); diff --git a/mod/dfrn_poll.php b/mod/dfrn_poll.php index 91cd33f49a..0c55af2a89 100644 --- a/mod/dfrn_poll.php +++ b/mod/dfrn_poll.php @@ -112,7 +112,7 @@ function dfrn_poll_init(&$a) { } } $profile = $r[0]['nickname']; - goaway((strlen($destination_url)) ? $destination_url : $a->get_baseurl() . '/profile/' . $profile); + goaway((strlen($destination_url)) ? $destination_url : App::get_baseurl() . '/profile/' . $profile); } goaway(z_root()); @@ -126,7 +126,7 @@ function dfrn_poll_init(&$a) { $r = q("SELECT * FROM `profile_check` WHERE `sec` = '%s' ORDER BY `expire` DESC LIMIT 1", dbesc($sec) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { xml_status(3, 'No ticket'); // NOTREACHED } @@ -223,7 +223,7 @@ function dfrn_poll_post(&$a) { $r = q("SELECT * FROM `profile_check` WHERE `sec` = '%s' ORDER BY `expire` DESC LIMIT 1", dbesc($sec) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { xml_status(3, 'No ticket'); // NOTREACHED } @@ -284,8 +284,9 @@ function dfrn_poll_post(&$a) { dbesc($challenge) ); - if(! dbm::is_result($r)) + if (! dbm::is_result($r)) { killme(); + } $type = $r[0]['type']; $last_update = $r[0]['last_update']; @@ -319,8 +320,9 @@ function dfrn_poll_post(&$a) { $r = q("SELECT * FROM `contact` WHERE `blocked` = 0 AND `pending` = 0 $sql_extra LIMIT 1"); - if(! dbm::is_result($r)) + if (! dbm::is_result($r)) { killme(); + } $contact = $r[0]; $owner_uid = $r[0]['uid']; @@ -499,14 +501,14 @@ function dfrn_poll_content(&$a) { switch($destination_url) { case 'profile': - $dest = $a->get_baseurl() . '/profile/' . $profile . '?f=&tab=profile'; + $dest = App::get_baseurl() . '/profile/' . $profile . '?f=&tab=profile'; break; case 'photos': - $dest = $a->get_baseurl() . '/photos/' . $profile; + $dest = App::get_baseurl() . '/photos/' . $profile; break; case 'status': case '': - $dest = $a->get_baseurl() . '/profile/' . $profile; + $dest = App::get_baseurl() . '/profile/' . $profile; break; default: $dest = $destination_url . '?f=&redir=1'; diff --git a/mod/dfrn_request.php b/mod/dfrn_request.php index 236970a2e9..68ef4971b4 100644 --- a/mod/dfrn_request.php +++ b/mod/dfrn_request.php @@ -120,17 +120,19 @@ function dfrn_request_post(&$a) { $parms = Probe::profile($dfrn_url); - if(! count($parms)) { + if (! count($parms)) { notice( t('Profile location is not valid or does not contain profile information.') . EOL ); return; } else { - if(! x($parms,'fn')) + if (! x($parms,'fn')) { notice( t('Warning: profile location has no identifiable owner name.') . EOL ); - if(! x($parms,'photo')) + } + if (! x($parms,'photo')) { notice( t('Warning: profile location has no profile photo.') . EOL ); + } $invalid = Probe::valid_dfrn($parms); - if($invalid) { + if ($invalid) { notice( sprintf( tt("%d required parameter was not found at the given location", "%d required parameters were not found at the given location", $invalid), $invalid) . EOL ); @@ -176,7 +178,7 @@ function dfrn_request_post(&$a) { ); } - if($r) { + if ($r) { info( t("Introduction complete.") . EOL); } @@ -193,19 +195,22 @@ function dfrn_request_post(&$a) { if (isset($photo)) update_contact_avatar($photo, local_user(), $r[0]["id"], true); - $forwardurl = $a->get_baseurl()."/contacts/".$r[0]['id']; - } else - $forwardurl = $a->get_baseurl()."/contacts"; + $forwardurl = App::get_baseurl()."/contacts/".$r[0]['id']; + } else { + $forwardurl = App::get_baseurl()."/contacts"; + } /* * Allow the blocked remote notification to complete */ - if(is_array($contact_record)) + if (is_array($contact_record)) { $dfrn_request = $contact_record['request']; + } - if(strlen($dfrn_request) && strlen($confirm_key)) + if (strlen($dfrn_request) && strlen($confirm_key)) { $s = fetch_url($dfrn_request . '?confirm_key=' . $confirm_key); + } // (ignore reply, nothing we can do it failed) @@ -296,7 +301,7 @@ function dfrn_request_post(&$a) { dbesc(NETWORK_MAIL2) ); if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { if(! $rr['rel']) { q("DELETE FROM `contact` WHERE `id` = %d", intval($rr['cid']) @@ -321,7 +326,7 @@ function dfrn_request_post(&$a) { dbesc(NETWORK_MAIL2) ); if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { if(! $rr['rel']) { q("DELETE FROM `contact` WHERE `id` = %d", intval($rr['cid']) @@ -371,7 +376,7 @@ function dfrn_request_post(&$a) { intval($uid) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { notice( t('This account has not been configured for email. Request failed.') . EOL); return; } @@ -499,15 +504,15 @@ function dfrn_request_post(&$a) { ); } else { - if(! validate_url($url)) { + if (! validate_url($url)) { notice( t('Invalid profile URL.') . EOL); - goaway($a->get_baseurl() . '/' . $a->cmd); + goaway(App::get_baseurl() . '/' . $a->cmd); return; // NOTREACHED } - if(! allowed_url($url)) { + if (! allowed_url($url)) { notice( t('Disallowed profile URL.') . EOL); - goaway($a->get_baseurl() . '/' . $a->cmd); + goaway(App::get_baseurl() . '/' . $a->cmd); return; // NOTREACHED } @@ -516,17 +521,19 @@ function dfrn_request_post(&$a) { $parms = Probe::profile(($hcard) ? $hcard : $url); - if(! count($parms)) { + if (! count($parms)) { notice( t('Profile location is not valid or does not contain profile information.') . EOL ); - goaway($a->get_baseurl() . '/' . $a->cmd); + goaway(App::get_baseurl() . '/' . $a->cmd); } else { - if(! x($parms,'fn')) + if (! x($parms,'fn')) { notice( t('Warning: profile location has no identifiable owner name.') . EOL ); - if(! x($parms,'photo')) + } + if (! x($parms,'photo')) { notice( t('Warning: profile location has no profile photo.') . EOL ); + } $invalid = Probe::valid_dfrn($parms); - if($invalid) { + if ($invalid) { notice( sprintf( tt("%d required parameter was not found at the given location", "%d required parameters were not found at the given location", $invalid), $invalid) . EOL ); @@ -565,7 +572,7 @@ function dfrn_request_post(&$a) { ); // find the contact record we just created - if($r) { + if ($r) { $r = q("SELECT `id` FROM `contact` WHERE `uid` = %d AND `url` = '%s' AND `issued-id` = '%s' LIMIT 1", intval($uid), @@ -579,14 +586,14 @@ function dfrn_request_post(&$a) { } } - if($r === false) { + if ($r === false) { notice( t('Failed to update contact record.') . EOL ); return; } $hash = random_string() . (string) time(); // Generate a confirm_key - if(is_array($contact_record)) { + if (is_array($contact_record)) { $ret = q("INSERT INTO `intro` ( `uid`, `contact-id`, `blocked`, `knowyou`, `note`, `hash`, `datetime`) VALUES ( %d, %d, 1, %d, '%s', '%s', '%s' )", intval($uid), @@ -600,12 +607,13 @@ function dfrn_request_post(&$a) { // This notice will only be seen by the requestor if the requestor and requestee are on the same server. - if(! $failed) + if (! $failed) { info( t('Your introduction has been sent.') . EOL ); + } // "Homecoming" - send the requestor back to their site to record the introduction. - $dfrn_url = bin2hex($a->get_baseurl() . '/profile/' . $nickname); + $dfrn_url = bin2hex(App::get_baseurl() . '/profile/' . $nickname); $aes_allow = ((function_exists('openssl_encrypt')) ? 1 : 0); goaway($parms['dfrn-request'] . "?dfrn_url=$dfrn_url" @@ -633,8 +641,9 @@ function dfrn_request_post(&$a) { $uri .= '/'.$a->get_path(); $uri = urlencode($uri); - } else - $uri = $a->get_baseurl().'/profile/'.$nickname; + } else { + $uri = App::get_baseurl().'/profile/'.$nickname; + } $url = str_replace('{uri}', $uri, $url); goaway($url); @@ -651,16 +660,17 @@ function dfrn_request_post(&$a) { function dfrn_request_content(&$a) { - if(($a->argc != 2) || (! count($a->profile))) + if (($a->argc != 2) || (! count($a->profile))) { return ""; + } // "Homecoming". Make sure we're logged in to this site as the correct user. Then offer a confirm button // to send us to the post section to record the introduction. - if(x($_GET,'dfrn_url')) { + if (x($_GET,'dfrn_url')) { - if(! local_user()) { + if (! local_user()) { info( t("Please login to confirm introduction.") . EOL ); /* setup the return URL to come back to this page if they use openid */ $_SESSION['return_url'] = $a->query_string; @@ -742,7 +752,7 @@ function dfrn_request_content(&$a) { 'to_name' => $r[0]['username'], 'to_email' => $r[0]['email'], 'uid' => $r[0]['uid'], - 'link' => $a->get_baseurl() . '/notifications/intros', + 'link' => App::get_baseurl() . '/notifications/intros', 'source_name' => ((strlen(stripslashes($r[0]['name']))) ? stripslashes($r[0]['name']) : t('[Name Withheld]')), 'source_link' => $r[0]['url'], 'source_photo' => $r[0]['photo'], @@ -804,15 +814,18 @@ function dfrn_request_content(&$a) { $myaddr = hex2bin($_GET['addr']); elseif (x($_GET,'address') AND ($_GET['address'] != "")) $myaddr = $_GET['address']; - elseif(local_user()) { - if(strlen($a->path)) { - $myaddr = $a->get_baseurl() . '/profile/' . $a->user['nickname']; + elseif (local_user()) { + if (strlen($a->path)) { + $myaddr = App::get_baseurl() . '/profile/' . $a->user['nickname']; } else { $myaddr = $a->user['nickname'] . '@' . substr(z_root(), strpos(z_root(),'://') + 3 ); } - } else // last, try a zrl + } + else { + // last, try a zrl $myaddr = get_my_url(); + } $target_addr = $a->profile['nickname'] . '@' . substr(z_root(), strpos(z_root(),'://') + 3 ); @@ -825,10 +838,12 @@ function dfrn_request_content(&$a) { * */ - if($a->profile['page-flags'] == PAGE_NORMAL) + if ($a->profile['page-flags'] == PAGE_NORMAL) { $tpl = get_markup_template('dfrn_request.tpl'); - else + } + else { $tpl = get_markup_template('auto_request.tpl'); + } $page_desc = t("Please enter your 'Identity Address' from one of the following supported communications networks:"); @@ -842,8 +857,9 @@ function dfrn_request_content(&$a) { $r = q("SELECT * FROM `mailacct` WHERE `uid` = %d LIMIT 1", intval($a->profile['uid']) ); - if(! dbm::is_result($r)) + if (! dbm::is_result($r)) { $mail_disabled = 1; + } } // "coming soon" is disabled for now diff --git a/mod/directory.php b/mod/directory.php index ddea650de2..50a0a93b9c 100644 --- a/mod/directory.php +++ b/mod/directory.php @@ -92,12 +92,14 @@ function directory_content(&$a) { WHERE `is-default` = 1 $publish AND `user`.`blocked` = 0 AND `contact`.`self` $sql_extra $order LIMIT ".$limit); if (dbm::is_result($r)) { - if(in_array('small', $a->argv)) + if (in_array('small', $a->argv)) { $photo = 'thumb'; - else + } + else { $photo = 'photo'; + } - foreach($r as $rr) { + foreach ($r as $rr) { $itemurl= ''; diff --git a/mod/dirfind.php b/mod/dirfind.php index 215731978c..0ac82f2817 100644 --- a/mod/dirfind.php +++ b/mod/dirfind.php @@ -7,13 +7,14 @@ require_once('mod/contacts.php'); function dirfind_init(&$a) { - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL ); return; } - if(! x($a->page,'aside')) + if (! x($a->page,'aside')) { $a->page['aside'] = ''; + } $a->page['aside'] .= findpeople_widget(); @@ -31,7 +32,7 @@ function dirfind_content(&$a, $prefix = "") { $search = $prefix.notags(trim($_REQUEST['search'])); - if(strpos($search,'@') === 0) { + if (strpos($search,'@') === 0) { $search = substr($search,1); $header = sprintf( t('People Search - %s'), $search); if ((valid_email($search) AND validate_email($search)) OR @@ -41,7 +42,7 @@ function dirfind_content(&$a, $prefix = "") { } } - if(strpos($search,'!') === 0) { + if (strpos($search,'!') === 0) { $search = substr($search,1); $community = true; $header = sprintf( t('Forum Search - %s'), $search); @@ -49,7 +50,7 @@ function dirfind_content(&$a, $prefix = "") { $o = ''; - if($search) { + if ($search) { if ($discover_user) { $j = new stdClass(); @@ -85,18 +86,21 @@ function dirfind_content(&$a, $prefix = "") { $perpage = 80; $startrec = (($a->pager['page']) * $perpage) - $perpage; - if (get_config('system','diaspora_enabled')) + if (get_config('system','diaspora_enabled')) { $diaspora = NETWORK_DIASPORA; - else + } else { $diaspora = NETWORK_DFRN; + } - if (!get_config('system','ostatus_disabled')) + if (!get_config('system','ostatus_disabled')) { $ostatus = NETWORK_OSTATUS; - else + } else { $ostatus = NETWORK_DFRN; + } $search2 = "%".$search."%"; + /// @TODO These 2 SELECTs are not checked on validity with dbm::is_result() $count = q("SELECT count(*) AS `total` FROM `gcontact` LEFT JOIN `contact` ON `contact`.`nurl` = `gcontact`.`nurl` AND `contact`.`network` = `gcontact`.`network` @@ -133,8 +137,9 @@ function dirfind_content(&$a, $prefix = "") { $j->items_page = $perpage; $j->page = $a->pager['page']; foreach ($results AS $result) { - if (poco_alternate_ostatus_url($result["url"])) - continue; + if (poco_alternate_ostatus_url($result["url"])) { + continue; + } $result = get_contact_details_by_url($result["url"], local_user(), $result); @@ -167,16 +172,16 @@ function dirfind_content(&$a, $prefix = "") { $j = json_decode($x); } - if($j->total) { + if ($j->total) { $a->set_pager_total($j->total); $a->set_pager_itemspage($j->items_page); } - if(count($j->results)) { + if (count($j->results)) { $id = 0; - foreach($j->results as $jj) { + foreach ($j->results as $jj) { $alt_text = ""; @@ -194,10 +199,11 @@ function dirfind_content(&$a, $prefix = "") { $photo_menu = contact_photo_menu($contact[0]); $details = _contact_detail_for_template($contact[0]); $alt_text = $details['alt_text']; - } else + } else { $photo_menu = array(); + } } else { - $connlnk = $a->get_baseurl().'/follow/?url='.(($jj->connect) ? $jj->connect : $jj->url); + $connlnk = App::get_baseurl().'/follow/?url='.(($jj->connect) ? $jj->connect : $jj->url); $conntxt = t('Connect'); $photo_menu = array( 'profile' => array(t("View Profile"), zrl($jj->url)), @@ -235,8 +241,7 @@ function dirfind_content(&$a, $prefix = "") { '$paginate' => paginate($a), )); - } - else { + } else { info( t('No matches') . EOL); } diff --git a/mod/display.php b/mod/display.php index 293156cf19..6ebe16ae8a 100644 --- a/mod/display.php +++ b/mod/display.php @@ -81,8 +81,8 @@ function display_init(&$a) { $profiledata = display_fetchauthor($a, $r[0]); - if (strstr(normalise_link($profiledata["url"]), normalise_link($a->get_baseurl()))) { - $nickname = str_replace(normalise_link($a->get_baseurl())."/profile/", "", normalise_link($profiledata["url"])); + if (strstr(normalise_link($profiledata["url"]), normalise_link(App::get_baseurl()))) { + $nickname = str_replace(normalise_link(App::get_baseurl())."/profile/", "", normalise_link($profiledata["url"])); if (($nickname != $a->user["nickname"])) { $r = qu("SELECT `profile`.`uid` AS `profile_uid`, `profile`.* , `contact`.`avatar-date` AS picdate, `user`.* FROM `profile` @@ -184,7 +184,7 @@ function display_fetchauthor($a, $item) { if (local_user()) { if (in_array($profiledata["network"], array(NETWORK_DFRN, NETWORK_DIASPORA, NETWORK_OSTATUS))) { - $profiledata["remoteconnect"] = $a->get_baseurl()."/follow?url=".urlencode($profiledata["url"]); + $profiledata["remoteconnect"] = App::get_baseurl()."/follow?url=".urlencode($profiledata["url"]); } } elseif ($profiledata["network"] == NETWORK_DFRN) { $connect = str_replace("/profile/", "/dfrn_request/", $profiledata["url"]); diff --git a/mod/editpost.php b/mod/editpost.php index 217d793f52..54b50bc36d 100644 --- a/mod/editpost.php +++ b/mod/editpost.php @@ -6,14 +6,14 @@ function editpost_content(&$a) { $o = ''; - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL); return; } $post_id = (($a->argc > 1) ? intval($a->argv[1]) : 0); - if(! $post_id) { + if (! $post_id) { notice( t('Item not found') . EOL); return; } @@ -23,7 +23,7 @@ function editpost_content(&$a) { intval(local_user()) ); - if(! count($itm)) { + if (! count($itm)) { notice( t('Item not found') . EOL); return; } @@ -42,7 +42,7 @@ function editpost_content(&$a) { $tpl = get_markup_template('jot-header.tpl'); $a->page['htmlhead'] .= replace_macros($tpl, array( - '$baseurl' => $a->get_baseurl(), + '$baseurl' => App::get_baseurl(), '$editselect' => (($plaintext) ? 'none' : '/(profile-jot-text|prvmail-text)/'), '$ispublic' => ' ', // t('Visible to everybody'), '$geotag' => $geotag, @@ -51,7 +51,7 @@ function editpost_content(&$a) { $tpl = get_markup_template('jot-end.tpl'); $a->page['end'] .= replace_macros($tpl, array( - '$baseurl' => $a->get_baseurl(), + '$baseurl' => App::get_baseurl(), '$editselect' => (($plaintext) ? 'none' : '/(profile-jot-text|prvmail-text)/'), '$ispublic' => ' ', // t('Visible to everybody'), '$geotag' => $geotag, @@ -126,7 +126,7 @@ function editpost_content(&$a) { '$ptyp' => $itm[0]['type'], '$content' => undo_post_tagging($itm[0]['body']), '$post_id' => $post_id, - '$baseurl' => $a->get_baseurl(), + '$baseurl' => App::get_baseurl(), '$defloc' => $a->user['default-location'], '$visitor' => 'none', '$pvisit' => 'none', diff --git a/mod/events.php b/mod/events.php index 7cb171f9e5..36d8f0cf71 100644 --- a/mod/events.php +++ b/mod/events.php @@ -9,18 +9,19 @@ require_once('include/event.php'); require_once('include/items.php'); function events_init(&$a) { - if(! local_user()) + if (! local_user()) { return; + } - if($a->argc == 1) { + if ($a->argc == 1) { // if it's a json request abort here becaus we don't // need the widget data - if($a->argv[1] === 'json') + if ($a->argv[1] === 'json') return; $cal_widget = widget_events(); - if(! x($a->page,'aside')) + if (! x($a->page,'aside')) $a->page['aside'] = ''; $a->page['aside'] .= $cal_widget; @@ -33,8 +34,9 @@ function events_post(&$a) { logger('post: ' . print_r($_REQUEST,true)); - if(! local_user()) + if (! local_user()) { return; + } $event_id = ((x($_POST,'event_id')) ? intval($_POST['event_id']) : 0); $cid = ((x($_POST,'cid')) ? intval($_POST['cid']) : 0); @@ -49,33 +51,35 @@ function events_post(&$a) { // The default setting for the `private` field in event_store() is false, so mirror that $private_event = false; - if($start_text) { + if ($start_text) { $start = $start_text; } else { $start = sprintf('%d-%d-%d %d:%d:0',$startyear,$startmonth,$startday,$starthour,$startminute); } - if($nofinish) { + if ($nofinish) { $finish = '0000-00-00 00:00:00'; } - if($finish_text) { + if ($finish_text) { $finish = $finish_text; } else { $finish = sprintf('%d-%d-%d %d:%d:0',$finishyear,$finishmonth,$finishday,$finishhour,$finishminute); } - if($adjust) { + if ($adjust) { $start = datetime_convert(date_default_timezone_get(),'UTC',$start); - if(! $nofinish) + if (! $nofinish) { $finish = datetime_convert(date_default_timezone_get(),'UTC',$finish); + } } else { $start = datetime_convert('UTC','UTC',$start); - if(! $nofinish) + if (! $nofinish) { $finish = datetime_convert('UTC','UTC',$finish); + } } // Don't allow the event to finish before it begins. @@ -89,11 +93,11 @@ function events_post(&$a) { $type = 'event'; $action = ($event_id == '') ? 'new' : "event/" . $event_id; - $onerror_url = $a->get_baseurl() . "/events/" . $action . "?summary=$summary&description=$desc&location=$location&start=$start_text&finish=$finish_text&adjust=$adjust&nofinish=$nofinish"; + $onerror_url = App::get_baseurl() . "/events/" . $action . "?summary=$summary&description=$desc&location=$location&start=$start_text&finish=$finish_text&adjust=$adjust&nofinish=$nofinish"; - if(strcmp($finish,$start) < 0 && !$nofinish) { + if (strcmp($finish,$start) < 0 && !$nofinish) { notice( t('Event can not end before it has started.') . EOL); - if(intval($_REQUEST['preview'])) { + if (intval($_REQUEST['preview'])) { echo( t('Event can not end before it has started.')); killme(); } @@ -186,43 +190,46 @@ function events_post(&$a) { function events_content(&$a) { - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL); return; } - if($a->argc == 1) - $_SESSION['return_url'] = $a->get_baseurl() . '/' . $a->cmd; + if ($a->argc == 1) { + $_SESSION['return_url'] = App::get_baseurl() . '/' . $a->cmd; + } - if(($a->argc > 2) && ($a->argv[1] === 'ignore') && intval($a->argv[2])) { + if (($a->argc > 2) && ($a->argv[1] === 'ignore') && intval($a->argv[2])) { $r = q("update event set ignore = 1 where id = %d and uid = %d", intval($a->argv[2]), intval(local_user()) ); } - if(($a->argc > 2) && ($a->argv[1] === 'unignore') && intval($a->argv[2])) { + if (($a->argc > 2) && ($a->argv[1] === 'unignore') && intval($a->argv[2])) { $r = q("update event set ignore = 0 where id = %d and uid = %d", intval($a->argv[2]), intval(local_user()) ); } - if ($a->theme_events_in_profile) + if ($a->theme_events_in_profile) { nav_set_selected('home'); - else + } else { nav_set_selected('events'); + } $editselect = 'none'; - if( feature_enabled(local_user(), 'richtext') ) + if ( feature_enabled(local_user(), 'richtext') ) { $editselect = 'textareas'; + } // get the translation strings for the callendar $i18n = get_event_strings(); $htpl = get_markup_template('event_head.tpl'); $a->page['htmlhead'] .= replace_macros($htpl,array( - '$baseurl' => $a->get_baseurl(), + '$baseurl' => App::get_baseurl(), '$module_url' => '/events', '$modparams' => 1, '$i18n' => $i18n, @@ -231,7 +238,7 @@ function events_content(&$a) { $etpl = get_markup_template('event_end.tpl'); $a->page['end'] .= replace_macros($etpl,array( - '$baseurl' => $a->get_baseurl(), + '$baseurl' => App::get_baseurl(), '$editselect' => $editselect )); @@ -248,15 +255,15 @@ function events_content(&$a) { $ignored = ((x($_REQUEST,'ignored')) ? intval($_REQUEST['ignored']) : 0); if($a->argc > 1) { - if($a->argc > 2 && $a->argv[1] == 'event') { + if ($a->argc > 2 && $a->argv[1] == 'event') { $mode = 'edit'; $event_id = intval($a->argv[2]); } - if($a->argv[1] === 'new') { + if ($a->argv[1] === 'new') { $mode = 'new'; $event_id = 0; } - if($a->argc > 2 && intval($a->argv[1]) && intval($a->argv[2])) { + if ($a->argc > 2 && intval($a->argv[1]) && intval($a->argv[2])) { $mode = 'view'; $y = intval($a->argv[1]); $m = intval($a->argv[2]); @@ -264,23 +271,27 @@ function events_content(&$a) { } // The view mode part is similiar to /mod/cal.php - if($mode == 'view') { + if ($mode == 'view') { $thisyear = datetime_convert('UTC',date_default_timezone_get(),'now','Y'); $thismonth = datetime_convert('UTC',date_default_timezone_get(),'now','m'); - if(! $y) + if (! $y) { $y = intval($thisyear); - if(! $m) + } + if (! $m) { $m = intval($thismonth); + } // Put some limits on dates. The PHP date functions don't seem to do so well before 1900. // An upper limit was chosen to keep search engines from exploring links millions of years in the future. - if($y < 1901) + if ($y < 1901) { $y = 1900; - if($y > 2099) + } + if ($y > 2099) { $y = 2100; + } $nextyear = $y; $nextmonth = $m + 1; @@ -334,10 +345,11 @@ function events_content(&$a) { if (dbm::is_result($r)) { $r = sort_by_date($r); - foreach($r as $rr) { + foreach ($r as $rr) { $j = (($rr['adjust']) ? datetime_convert('UTC',date_default_timezone_get(),$rr['start'], 'j') : datetime_convert('UTC','UTC',$rr['start'],'j')); - if(! x($links,$j)) - $links[$j] = $a->get_baseurl() . '/' . $a->cmd . '#link-' . $j; + if (! x($links,$j)) { + $links[$j] = App::get_baseurl() . '/' . $a->cmd . '#link-' . $j; + } } } @@ -375,13 +387,13 @@ function events_content(&$a) { } $o = replace_macros($tpl, array( - '$baseurl' => $a->get_baseurl(), + '$baseurl' => App::get_baseurl(), '$tabs' => $tabs, '$title' => t('Events'), '$view' => t('View'), - '$new_event' => array($a->get_baseurl().'/events/new',t('Create New Event'),'',''), - '$previus' => array($a->get_baseurl()."/events/$prevyear/$prevmonth",t('Previous'),'',''), - '$next' => array($a->get_baseurl()."/events/$nextyear/$nextmonth",t('Next'),'',''), + '$new_event' => array(App::get_baseurl().'/events/new',t('Create New Event'),'',''), + '$previus' => array(App::get_baseurl()."/events/$prevyear/$prevmonth",t('Previous'),'',''), + '$next' => array(App::get_baseurl()."/events/$nextyear/$nextmonth",t('Next'),'',''), '$calendar' => cal($y,$m,$links, ' eventcal'), '$events' => $events, @@ -475,7 +487,7 @@ function events_content(&$a) { $tpl = get_markup_template('event_form.tpl'); $o .= replace_macros($tpl,array( - '$post' => $a->get_baseurl() . '/events', + '$post' => App::get_baseurl() . '/events', '$eid' => $eid, '$cid' => $cid, '$uri' => $uri, diff --git a/mod/fbrowser.php b/mod/fbrowser.php index 11ac2d8253..9c1d43cd8b 100644 --- a/mod/fbrowser.php +++ b/mod/fbrowser.php @@ -10,6 +10,7 @@ require_once('include/Photo.php'); /** * @param App $a */ +/// @TODO & is missing or App ? function fbrowser_content($a){ if (!local_user()) @@ -83,9 +84,9 @@ function fbrowser_content($a){ $scale = $rr['loq']; return array( - $a->get_baseurl() . '/photos/' . $a->user['nickname'] . '/image/' . $rr['resource-id'], + App::get_baseurl() . '/photos/' . $a->user['nickname'] . '/image/' . $rr['resource-id'], $filename_e, - $a->get_baseurl() . '/photo/' . $rr['resource-id'] . '-' . $scale . '.'. $ext + App::get_baseurl() . '/photo/' . $rr['resource-id'] . '-' . $scale . '.'. $ext ); } $files = array_map("_map_files1", $r); @@ -93,19 +94,19 @@ function fbrowser_content($a){ $tpl = get_markup_template($template_file); $o = replace_macros($tpl, array( - '$type' => 'image', - '$baseurl' => $a->get_baseurl(), - '$path' => $path, - '$folders' => $albums, - '$files' =>$files, - '$cancel' => t('Cancel'), + '$type' => 'image', + '$baseurl' => App::get_baseurl(), + '$path' => $path, + '$folders' => $albums, + '$files' => $files, + '$cancel' => t('Cancel'), '$nickname' => $a->user['nickname'], )); break; case "file": - if ($a->argc==2){ + if ($a->argc==2) { $files = q("SELECT `id`, `filename`, `filetype` FROM `attach` WHERE `uid` = %d ", intval(local_user()) ); @@ -115,26 +116,25 @@ function fbrowser_content($a){ list($m1,$m2) = explode("/",$rr['filetype']); $filetype = ( (file_exists("images/icons/$m1.png"))?$m1:"zip"); - if($a->theme['template_engine'] === 'internal') { + if ($a->theme['template_engine'] === 'internal') { $filename_e = template_escape($rr['filename']); - } - else { + } else { $filename_e = $rr['filename']; } - return array( $a->get_baseurl() . '/attach/' . $rr['id'], $filename_e, $a->get_baseurl() . '/images/icons/16/' . $filetype . '.png'); + return array( App::get_baseurl() . '/attach/' . $rr['id'], $filename_e, App::get_baseurl() . '/images/icons/16/' . $filetype . '.png'); } $files = array_map("_map_files2", $files); $tpl = get_markup_template($template_file); $o = replace_macros($tpl, array( - '$type' => 'file', - '$baseurl' => $a->get_baseurl(), - '$path' => array( array( "", t("Files")) ), - '$folders' => false, - '$files' =>$files, - '$cancel' => t('Cancel'), + '$type' => 'file', + '$baseurl' => App::get_baseurl(), + '$path' => array( array( "", t("Files")) ), + '$folders' => false, + '$files' =>$files, + '$cancel' => t('Cancel'), '$nickname' => $a->user['nickname'], )); diff --git a/mod/fetch.php b/mod/fetch.php index 04bdf51880..afb5b88af3 100644 --- a/mod/fetch.php +++ b/mod/fetch.php @@ -52,12 +52,12 @@ function fetch_init(&$a){ } $user = $r[0]; - $status = diaspora::build_status($item[0], $user); - $xml = diaspora::build_post_xml($status["type"], $status["message"]); + $status = Diaspora::build_status($item[0], $user); + $xml = Diaspora::build_post_xml($status["type"], $status["message"]); // Send the envelope header("Content-Type: application/magic-envelope+xml; charset=utf-8"); - echo diaspora::build_magic_envelope($xml, $user); + echo Diaspora::build_magic_envelope($xml, $user); killme(); } diff --git a/mod/filer.php b/mod/filer.php index 4e79f337dc..eac3260591 100644 --- a/mod/filer.php +++ b/mod/filer.php @@ -7,7 +7,7 @@ require_once('include/items.php'); function filer_content(&$a) { - if(! local_user()) { + if (! local_user()) { killme(); } diff --git a/mod/filerm.php b/mod/filerm.php index c266082c8f..d3d74a4c2f 100644 --- a/mod/filerm.php +++ b/mod/filerm.php @@ -2,7 +2,7 @@ function filerm_content(&$a) { - if(! local_user()) { + if (! local_user()) { killme(); } @@ -10,18 +10,21 @@ function filerm_content(&$a) { $cat = unxmlify(trim($_GET['cat'])); $category = (($cat) ? true : false); - if($category) + if ($category) { $term = $cat; + } $item_id = (($a->argc > 1) ? intval($a->argv[1]) : 0); logger('filerm: tag ' . $term . ' item ' . $item_id); - if($item_id && strlen($term)) + if ($item_id && strlen($term)) { file_tag_unsave_file(local_user(),$item_id,$term, $category); + } - if(x($_SESSION,'return_url')) - goaway($a->get_baseurl() . '/' . $_SESSION['return_url']); + if (x($_SESSION,'return_url')) { + goaway(App::get_baseurl() . '/' . $_SESSION['return_url']); + } killme(); } diff --git a/mod/follow.php b/mod/follow.php index 1f56caea50..2e970ad0cb 100644 --- a/mod/follow.php +++ b/mod/follow.php @@ -7,7 +7,7 @@ require_once('include/contact_selectors.php'); function follow_content(&$a) { - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL); goaway($_SESSION['return_url']); // NOTREACHED @@ -56,14 +56,15 @@ function follow_content(&$a) { // NOTREACHED } - if ($ret["network"] == NETWORK_MAIL) + if ($ret["network"] == NETWORK_MAIL) { $ret["url"] = $ret["addr"]; + } - if($ret['network'] === NETWORK_DFRN) { + if ($ret['network'] === NETWORK_DFRN) { $request = $ret["request"]; $tpl = get_markup_template('dfrn_request.tpl'); } else { - $request = $a->get_baseurl()."/follow"; + $request = App::get_baseurl()."/follow"; $tpl = get_markup_template('auto_request.tpl'); } @@ -84,20 +85,22 @@ function follow_content(&$a) { $r = q("SELECT `id`, `location`, `about`, `keywords` FROM `gcontact` WHERE `nurl` = '%s'", normalise_link($ret["url"])); - if (!$r) + if (!$r) { $r = array(array("location" => "", "about" => "", "keywords" => "")); - else + } else { $gcontact_id = $r[0]["id"]; + } - if($ret['network'] === NETWORK_DIASPORA) { + if ($ret['network'] === NETWORK_DIASPORA) { $r[0]["location"] = ""; $r[0]["about"] = ""; } $header = $ret["name"]; - if ($ret["addr"] != "") + if ($ret["addr"] != "") { $header .= " <".$ret["addr"].">"; + } //$header .= " (".network_to_name($ret['network'], $ret['url']).")"; $header = t("Connect/Follow"); @@ -151,14 +154,15 @@ function follow_content(&$a) { function follow_post(&$a) { - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL); goaway($_SESSION['return_url']); // NOTREACHED } - if ($_REQUEST['cancel']) + if ($_REQUEST['cancel']) { goaway($_SESSION['return_url']); + } $uid = local_user(); $url = notags(trim($_REQUEST['url'])); @@ -170,17 +174,20 @@ function follow_post(&$a) { $result = new_contact($uid,$url,true); - if($result['success'] == false) { - if($result['message']) + if ($result['success'] == false) { + if ($result['message']) { notice($result['message']); + } goaway($return_url); - } elseif ($result['cid']) - goaway($a->get_baseurl().'/contacts/'.$result['cid']); + } elseif ($result['cid']) { + goaway(App::get_baseurl().'/contacts/'.$result['cid']); + } info( t('Contact added').EOL); - if(strstr($return_url,'contacts')) - goaway($a->get_baseurl().'/contacts/'.$contact_id); + if (strstr($return_url,'contacts')) { + goaway(App::get_baseurl().'/contacts/'.$contact_id); + } goaway($return_url); // NOTREACHED diff --git a/mod/friendica.php b/mod/friendica.php index fb25f40e45..5d8e43e6cb 100644 --- a/mod/friendica.php +++ b/mod/friendica.php @@ -15,7 +15,7 @@ function friendica_init(&$a) { $r = q("SELECT username, nickname FROM user WHERE email='%s' $sql_extra", dbesc($adminlist[0])); $admin = array( 'name' => $r[0]['username'], - 'profile'=> $a->get_baseurl().'/profile/'.$r[0]['nickname'], + 'profile'=> App::get_baseurl().'/profile/'.$r[0]['nickname'], ); } else { $admin = false; @@ -49,7 +49,7 @@ function friendica_init(&$a) { 'site_name' => $a->config['sitename'], 'platform' => FRIENDICA_PLATFORM, 'info' => ((x($a->config,'info')) ? $a->config['info'] : ''), - 'no_scrape_url' => $a->get_baseurl().'/noscrape' + 'no_scrape_url' => App::get_baseurl().'/noscrape' ); echo json_encode($data); diff --git a/mod/fsuggest.php b/mod/fsuggest.php index 1d56f45736..66871653dd 100644 --- a/mod/fsuggest.php +++ b/mod/fsuggest.php @@ -3,12 +3,13 @@ function fsuggest_post(&$a) { - if(! local_user()) { + if (! local_user()) { return; } - if($a->argc != 2) + if ($a->argc != 2) { return; + } $contact_id = intval($a->argv[1]); @@ -16,7 +17,7 @@ function fsuggest_post(&$a) { intval($contact_id), intval(local_user()) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { notice( t('Contact not found.') . EOL); return; } @@ -74,7 +75,7 @@ function fsuggest_content(&$a) { require_once('include/acl_selectors.php'); - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL); return; } @@ -88,7 +89,7 @@ function fsuggest_content(&$a) { intval($contact_id), intval(local_user()) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { notice( t('Contact not found.') . EOL); return; } diff --git a/mod/group.php b/mod/group.php index db92ed7de6..75ccc8f6d9 100644 --- a/mod/group.php +++ b/mod/group.php @@ -15,7 +15,7 @@ function group_init(&$a) { function group_post(&$a) { - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL); return; } @@ -25,39 +25,44 @@ function group_post(&$a) { $name = notags(trim($_POST['groupname'])); $r = group_add(local_user(),$name); - if($r) { + if ($r) { info( t('Group created.') . EOL ); $r = group_byname(local_user(),$name); - if($r) - goaway($a->get_baseurl() . '/group/' . $r); + if ($r) { + goaway(App::get_baseurl() . '/group/' . $r); + } } - else + else { notice( t('Could not create group.') . EOL ); - goaway($a->get_baseurl() . '/group'); + } + goaway(App::get_baseurl() . '/group'); return; // NOTREACHED } - if(($a->argc == 2) && (intval($a->argv[1]))) { + + if (($a->argc == 2) && (intval($a->argv[1]))) { check_form_security_token_redirectOnErr('/group', 'group_edit'); $r = q("SELECT * FROM `group` WHERE `id` = %d AND `uid` = %d LIMIT 1", intval($a->argv[1]), intval(local_user()) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { notice( t('Group not found.') . EOL ); - goaway($a->get_baseurl() . '/contacts'); + goaway(App::get_baseurl() . '/contacts'); return; // NOTREACHED } $group = $r[0]; $groupname = notags(trim($_POST['groupname'])); - if((strlen($groupname)) && ($groupname != $group['name'])) { + if ((strlen($groupname)) && ($groupname != $group['name'])) { $r = q("UPDATE `group` SET `name` = '%s' WHERE `uid` = %d AND `id` = %d", dbesc($groupname), intval(local_user()), intval($group['id']) ); - if($r) + + if ($r) { info( t('Group name changed.') . EOL ); + } } $a->page['aside'] = group_side(); @@ -68,7 +73,7 @@ function group_post(&$a) { function group_content(&$a) { $change = false; - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied') . EOL); return; } @@ -99,26 +104,32 @@ function group_content(&$a) { } - if(($a->argc == 3) && ($a->argv[1] === 'drop')) { + if (($a->argc == 3) && ($a->argv[1] === 'drop')) { check_form_security_token_redirectOnErr('/group', 'group_drop', 't'); - if(intval($a->argv[2])) { + if (intval($a->argv[2])) { $r = q("SELECT `name` FROM `group` WHERE `id` = %d AND `uid` = %d LIMIT 1", intval($a->argv[2]), intval(local_user()) ); - if (dbm::is_result($r)) + + $result = null; + + if (dbm::is_result($r)) { $result = group_rmv(local_user(),$r[0]['name']); - if($result) + } + + if ($result) { info( t('Group removed.') . EOL); - else + } else { notice( t('Unable to remove group.') . EOL); + } } - goaway($a->get_baseurl() . '/group'); + goaway(App::get_baseurl() . '/group'); // NOTREACHED } - if(($a->argc > 2) && intval($a->argv[1]) && intval($a->argv[2])) { + if (($a->argc > 2) && intval($a->argv[1]) && intval($a->argv[2])) { check_form_security_token_ForbiddenOnErr('group_member_change', 't'); $r = q("SELECT `id` FROM `contact` WHERE `id` = %d AND `uid` = %d and `self` = 0 and `blocked` = 0 AND `pending` = 0 LIMIT 1", @@ -129,16 +140,16 @@ function group_content(&$a) { $change = intval($a->argv[2]); } - if(($a->argc > 1) && (intval($a->argv[1]))) { + if (($a->argc > 1) && (intval($a->argv[1]))) { require_once('include/acl_selectors.php'); $r = q("SELECT * FROM `group` WHERE `id` = %d AND `uid` = %d AND `deleted` = 0 LIMIT 1", intval($a->argv[1]), intval(local_user()) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { notice( t('Group not found.') . EOL ); - goaway($a->get_baseurl() . '/contacts'); + goaway(App::get_baseurl() . '/contacts'); } $group = $r[0]; $members = group_get_members($group['id']); diff --git a/mod/hcard.php b/mod/hcard.php index 6d2d9e2ebf..512949f1a3 100644 --- a/mod/hcard.php +++ b/mod/hcard.php @@ -4,8 +4,9 @@ function hcard_init(&$a) { $blocked = (((get_config('system','block_public')) && (! local_user()) && (! remote_user())) ? true : false); - if($a->argc > 1) + if ($a->argc > 1) { $which = $a->argv[1]; + } else { notice( t('No profile') . EOL ); $a->error = 404; @@ -13,39 +14,42 @@ function hcard_init(&$a) { } $profile = 0; - if((local_user()) && ($a->argc > 2) && ($a->argv[2] === 'view')) { - $which = $a->user['nickname']; - $profile = $a->argv[1]; + if ((local_user()) && ($a->argc > 2) && ($a->argv[2] === 'view')) { + $which = $a->user['nickname']; + $profile = $a->argv[1]; } profile_load($a,$which,$profile); - if((x($a->profile,'page-flags')) && ($a->profile['page-flags'] == PAGE_COMMUNITY)) { + if ((x($a->profile,'page-flags')) && ($a->profile['page-flags'] == PAGE_COMMUNITY)) { $a->page['htmlhead'] .= ''; } - if(x($a->profile,'openidserver')) + if (x($a->profile,'openidserver')) { $a->page['htmlhead'] .= '' . "\r\n"; - if(x($a->profile,'openid')) { + } + if (x($a->profile,'openid')) { $delegate = ((strstr($a->profile['openid'],'://')) ? $a->profile['openid'] : 'http://' . $a->profile['openid']); $a->page['htmlhead'] .= '' . "\r\n"; } - if(! $blocked) { + if (! $blocked) { $keywords = ((x($a->profile,'pub_keywords')) ? $a->profile['pub_keywords'] : ''); $keywords = str_replace(array(',',' ',',,'),array(' ',',',','),$keywords); - if(strlen($keywords)) + if (strlen($keywords)) { $a->page['htmlhead'] .= '' . "\r\n" ; + } } $a->page['htmlhead'] .= '' . "\r\n" ; - $a->page['htmlhead'] .= '' . "\r\n" ; + $a->page['htmlhead'] .= '' . "\r\n" ; $uri = urlencode('acct:' . $a->profile['nickname'] . '@' . $a->get_hostname() . (($a->path) ? '/' . $a->path : '')); - $a->page['htmlhead'] .= '' . "\r\n"; - header('Link: <' . $a->get_baseurl() . '/xrd/?uri=' . $uri . '>; rel="lrdd"; type="application/xrd+xml"', false); - + $a->page['htmlhead'] .= '' . "\r\n"; + header('Link: <' . App::get_baseurl() . '/xrd/?uri=' . $uri . '>; rel="lrdd"; type="application/xrd+xml"', false); + $dfrn_pages = array('request', 'confirm', 'notify', 'poll'); - foreach($dfrn_pages as $dfrn) - $a->page['htmlhead'] .= "get_baseurl()."/dfrn_{$dfrn}/{$which}\" />\r\n"; + foreach ($dfrn_pages as $dfrn) { + $a->page['htmlhead'] .= "\r\n"; + } } diff --git a/mod/help.php b/mod/help.php index 7222569279..0512e0f2e0 100644 --- a/mod/help.php +++ b/mod/help.php @@ -77,7 +77,7 @@ function help_content(&$a) { if ($level>$lastlevel) $toc.="
    "; $idnum[$level]++; $id = implode("_", array_slice($idnum,1,$level)); - $href = $a->get_baseurl()."/help/{$filename}#{$id}"; + $href = App::get_baseurl()."/help/{$filename}#{$id}"; $toc .= "
  • ".strip_tags($line)."
  • "; $line = "".$line; $lastlevel = $level; diff --git a/mod/home.php b/mod/home.php index cdf4b37158..eb5d1e90b0 100644 --- a/mod/home.php +++ b/mod/home.php @@ -6,33 +6,38 @@ function home_init(&$a) { $ret = array(); call_hooks('home_init',$ret); - if(local_user() && ($a->user['nickname'])) - goaway($a->get_baseurl()."/network"); - //goaway($a->get_baseurl()."/profile/".$a->user['nickname']); + if (local_user() && ($a->user['nickname'])) { + goaway(App::get_baseurl()."/network"); + } - if(strlen(get_config('system','singleuser'))) - goaway($a->get_baseurl()."/profile/" . get_config('system','singleuser')); + if (strlen(get_config('system','singleuser'))) { + goaway(App::get_baseurl()."/profile/" . get_config('system','singleuser')); + } }} - if(! function_exists('home_content')) { function home_content(&$a) { $o = ''; - if(x($_SESSION,'theme')) + if (x($_SESSION,'theme')) { unset($_SESSION['theme']); - if(x($_SESSION,'mobile-theme')) + } + if (x($_SESSION,'mobile-theme')) { unset($_SESSION['mobile-theme']); + } - if(file_exists('home.html')){ - if(file_exists('home.css')){ - $a->page['htmlhead'] .= '';} + /// @TODO No absolute path used, maybe risky (security) + if (file_exists('home.html')) { + if (file_exists('home.css')) { + $a->page['htmlhead'] .= ''; + } - $o .= file_get_contents('home.html');} - - else $o .= '

    '.((x($a->config,'sitename')) ? sprintf(t("Welcome to %s"), $a->config['sitename']) : "").'

    '; + $o .= file_get_contents('home.html'); + } else { + $o .= '

    '.((x($a->config,'sitename')) ? sprintf(t("Welcome to %s"), $a->config['sitename']) : "").'

    '; + } $o .= login(($a->config['register_policy'] == REGISTER_CLOSED) ? 0 : 1); @@ -41,5 +46,4 @@ function home_content(&$a) { return $o; - }} diff --git a/mod/ignored.php b/mod/ignored.php index ba55c55e36..5e8411e376 100644 --- a/mod/ignored.php +++ b/mod/ignored.php @@ -5,22 +5,27 @@ function ignored_init(&$a) { $ignored = 0; - if(! local_user()) + if (! local_user()) { killme(); - if($a->argc > 1) + } + if ($a->argc > 1) { $message_id = intval($a->argv[1]); - if(! $message_id) + } + if (! $message_id) { killme(); + } $r = q("SELECT `ignored` FROM `thread` WHERE `uid` = %d AND `iid` = %d LIMIT 1", intval(local_user()), intval($message_id) ); - if(! dbm::is_result($r)) + if (! dbm::is_result($r)) { killme(); + } - if(! intval($r[0]['ignored'])) + if (! intval($r[0]['ignored'])) { $ignored = 1; + } $r = q("UPDATE `thread` SET `ignored` = %d WHERE `uid` = %d and `iid` = %d", intval($ignored), @@ -30,12 +35,12 @@ function ignored_init(&$a) { // See if we've been passed a return path to redirect to $return_path = ((x($_REQUEST,'return')) ? $_REQUEST['return'] : ''); - if($return_path) { + if ($return_path) { $rand = '_=' . time(); if(strpos($return_path, '?')) $rand = "&$rand"; else $rand = "?$rand"; - goaway($a->get_baseurl() . "/" . $return_path . $rand); + goaway(App::get_baseurl() . "/" . $return_path . $rand); } // the json doesn't really matter, it will either be 0 or 1 diff --git a/mod/install.php b/mod/install.php index b5af1373a4..b13da8c28f 100755 --- a/mod/install.php +++ b/mod/install.php @@ -11,17 +11,16 @@ function install_init(&$a){ echo "ok"; killme(); } - + // We overwrite current theme css, because during install we could not have a working mod_rewrite // so we could not have a css at all. Here we set a static css file for the install procedure pages $a->config['system']['theme'] = "../install"; - $a->theme['stylesheet'] = $a->get_baseurl()."/view/install/style.css"; - - - + $a->theme['stylesheet'] = App::get_baseurl()."/view/install/style.css"; + global $install_wizard_pass; - if (x($_POST,'pass')) + if (x($_POST,'pass')) { $install_wizard_pass = intval($_POST['pass']); + } } @@ -52,7 +51,7 @@ function install_post(&$a) { $r = q("CREATE DATABASE '%s'", dbesc($dbdata) ); - if($r) { + if ($r) { unset($db); $db = new dba($dbhost, $dbuser, $dbpass, $dbdata, true); } else { @@ -63,7 +62,7 @@ function install_post(&$a) { return; } }*/ - if(get_db_errno()) { + if (get_db_errno()) { $a->data['db_conn_failed']=true; } @@ -107,17 +106,18 @@ function install_post(&$a) { $result = file_put_contents('.htconfig.php', $txt); - if(! $result) { + if (! $result) { $a->data['txt'] = $txt; } $errors = load_database($db); - if($errors) + if ($errors) { $a->data['db_failed'] = $errors; - else + } else { $a->data['db_installed'] = true; + } return; break; @@ -125,10 +125,11 @@ function install_post(&$a) { } function get_db_errno() { - if(class_exists('mysqli')) + if (class_exists('mysqli')) { return mysqli_connect_errno(); - else + } else { return mysql_errno(); + } } function install_content(&$a) { @@ -140,23 +141,23 @@ function install_content(&$a) { - if(x($a->data,'db_conn_failed')) { + if (x($a->data,'db_conn_failed')) { $install_wizard_pass = 2; $wizard_status = t('Could not connect to database.'); } - if(x($a->data,'db_create_failed')) { + if (x($a->data,'db_create_failed')) { $install_wizard_pass = 2; $wizard_status = t('Could not create table.'); } $db_return_text=""; - if(x($a->data,'db_installed')) { + if (x($a->data,'db_installed')) { $txt = '

    '; $txt .= t('Your Friendica site database has been installed.') . EOL; $db_return_text .= $txt; } - if(x($a->data,'db_failed')) { + if (x($a->data,'db_failed')) { $txt = t('You may need to import the file "database.sql" manually using phpmyadmin or mysql.') . EOL; $txt .= t('Please see the file "INSTALL.txt".') . EOL ."


    " ; $txt .= "
    ".$a->data['db_failed'] . "
    ". EOL ; @@ -176,7 +177,7 @@ function install_content(&$a) { } } - if(x($a->data,'txt') && strlen($a->data['txt'])) { + if (x($a->data,'txt') && strlen($a->data['txt'])) { $db_return_text .= manual_config($a); } @@ -205,16 +206,19 @@ function install_content(&$a) { check_keys($checks); - if(x($_POST,'phpath')) + if (x($_POST,'phpath')) { $phpath = notags(trim($_POST['phpath'])); + } check_php($phpath, $checks); - check_htaccess($checks); + check_htaccess($checks); + /// @TODO Maybe move this out? function check_passed($v, $c){ - if ($c['required']) + if ($c['required']) { $v = $v && $c['status']; + } return $v; } $checkspassed = array_reduce($checks, "check_passed", true); @@ -231,7 +235,7 @@ function install_content(&$a) { '$next' => t('Next'), '$reload' => t('Check again'), '$phpath' => $phpath, - '$baseurl' => $a->get_baseurl(), + '$baseurl' => App::get_baseurl(), )); return $o; }; break; @@ -265,7 +269,7 @@ function install_content(&$a) { '$lbl_10' => t('Please select a default timezone for your website'), - '$baseurl' => $a->get_baseurl(), + '$baseurl' => App::get_baseurl(), '$phpath' => $phpath, @@ -305,7 +309,7 @@ function install_content(&$a) { '$timezone' => field_timezone('timezone', t('Please select a default timezone for your website'), $timezone, ''), '$language' => array('language', t('System Language:'), 'en', t('Set the default language for your Friendica installation interface and to send emails.'), $lang_choices), - '$baseurl' => $a->get_baseurl(), + '$baseurl' => App::get_baseurl(), @@ -343,7 +347,7 @@ function check_php(&$phpath, &$checks) { $passed = strlen($phpath); } $help = ""; - if(!$passed) { + if (!$passed) { $help .= t('Could not find a command line version of PHP in the web server PATH.'). EOL; $help .= t("If you don't have a command line version of PHP installed on server, you will not be able to run background polling via cron. See 'Setup the poller'") . EOL ; $help .= EOL . EOL ; @@ -370,7 +374,7 @@ function check_php(&$phpath, &$checks) { } - if($passed2) { + if ($passed2) { $str = autoname(8); $cmd = "$phpath testargs.php $str"; $result = trim(shell_exec($cmd)); @@ -392,15 +396,17 @@ function check_keys(&$checks) { $res = false; - if(function_exists('openssl_pkey_new')) - $res=openssl_pkey_new(array( - 'digest_alg' => 'sha1', - 'private_key_bits' => 4096, - 'encrypt_key' => false )); + if (function_exists('openssl_pkey_new')) { + $res = openssl_pkey_new(array( + 'digest_alg' => 'sha1', + 'private_key_bits' => 4096, + 'encrypt_key' => false + )); + } // Get private key - if(! $res) { + if (! $res) { $help .= t('Error: the "openssl_pkey_new" function on this system is not able to generate encryption keys'). EOL; $help .= t('If running under Windows, please see "http://www.php.net/manual/en/openssl.installation.php".'); } @@ -420,7 +426,7 @@ function check_funcs(&$checks) { check_add($ck_funcs, t('XML PHP module'), true, true, ""); check_add($ck_funcs, t('iconv module'), true, true, ""); - if(function_exists('apache_get_modules')){ + if (function_exists('apache_get_modules')){ if (! in_array('mod_rewrite',apache_get_modules())) { check_add($ck_funcs, t('Apache mod_rewrite module'), false, true, t('Error: Apache webserver mod-rewrite module is required but not installed.')); } else { @@ -428,31 +434,31 @@ function check_funcs(&$checks) { } } - if(! function_exists('curl_init')){ + if (! function_exists('curl_init')){ $ck_funcs[0]['status']= false; $ck_funcs[0]['help']= t('Error: libCURL PHP module required but not installed.'); } - if(! function_exists('imagecreatefromjpeg')){ + if (! function_exists('imagecreatefromjpeg')){ $ck_funcs[1]['status']= false; $ck_funcs[1]['help']= t('Error: GD graphics PHP module with JPEG support required but not installed.'); } - if(! function_exists('openssl_public_encrypt')) { + if (! function_exists('openssl_public_encrypt')) { $ck_funcs[2]['status']= false; $ck_funcs[2]['help']= t('Error: openssl PHP module required but not installed.'); } - if(! function_exists('mysqli_connect')){ + if (! function_exists('mysqli_connect')){ $ck_funcs[3]['status']= false; $ck_funcs[3]['help']= t('Error: mysqli PHP module required but not installed.'); } - if(! function_exists('mb_strlen')){ + if (! function_exists('mb_strlen')){ $ck_funcs[4]['status']= false; $ck_funcs[4]['help']= t('Error: mb_string PHP module required but not installed.'); } - if(! function_exists('mcrypt_create_iv')){ + if (! function_exists('mcrypt_create_iv')){ $ck_funcs[5]['status']= false; $ck_funcs[5]['help']= t('Error: mcrypt PHP module required but not installed.'); } - if(! function_exists('iconv_strlen')){ + if (! function_exists('iconv_strlen')){ $ck_funcs[7]['status']= false; $ck_funcs[7]['help']= t('Error: iconv PHP module required but not installed.'); } @@ -487,7 +493,7 @@ function check_funcs(&$checks) { function check_htconfig(&$checks) { $status = true; $help = ""; - if( (file_exists('.htconfig.php') && !is_writable('.htconfig.php')) || + if ((file_exists('.htconfig.php') && !is_writable('.htconfig.php')) || (!file_exists('.htconfig.php') && !is_writable('.')) ) { $status=false; @@ -504,7 +510,7 @@ function check_htconfig(&$checks) { function check_smarty3(&$checks) { $status = true; $help = ""; - if( !is_writable('view/smarty3') ) { + if (!is_writable('view/smarty3') ) { $status=false; $help = t('Friendica uses the Smarty3 template engine to render its web views. Smarty3 compiles templates to PHP to speed up rendering.') .EOL; @@ -518,14 +524,14 @@ function check_smarty3(&$checks) { } function check_htaccess(&$checks) { - $a = get_app(); $status = true; $help = ""; - if (function_exists('curl_init')){ - $test = fetch_url($a->get_baseurl()."/install/testrewrite"); + if (function_exists('curl_init')) { + $test = fetch_url(App::get_baseurl()."/install/testrewrite"); - if ($test!="ok") - $test = fetch_url(normalise_link($a->get_baseurl()."/install/testrewrite")); + if ($test!="ok") { + $test = fetch_url(normalise_link(App::get_baseurl()."/install/testrewrite")); + } if ($test!="ok") { $status = false; @@ -534,6 +540,7 @@ function check_htaccess(&$checks) { check_add($checks, t('Url rewrite is working'), $status, true, $help); } else { // cannot check modrewrite if libcurl is not installed + /// @TODO Maybe issue warning here? } } @@ -550,8 +557,7 @@ function check_imagik(&$checks) { } if ($imagick == false) { check_add($checks, t('ImageMagick PHP extension is not installed'), $imagick, false, ""); - } - else { + } else { check_add($checks, t('ImageMagick PHP extension is installed'), $imagick, false, ""); if ($imagick) { check_add($checks, t('ImageMagick supports GIF'), $gif, false, ""); @@ -559,8 +565,6 @@ function check_imagik(&$checks) { } } - - function manual_config(&$a) { $data = htmlentities($a->data['txt'],ENT_COMPAT,'UTF-8'); $o = t('The database configuration file ".htconfig.php" could not be written. Please use the enclosed text to create a configuration file in your web server root.'); @@ -599,8 +603,7 @@ function load_database($db) { } function what_next() { - $a = get_app(); - $baseurl = $a->get_baseurl(); + $baseurl = App::get_baseurl(); return t('

    What next

    ') ."

    ".t('IMPORTANT: You will need to [manually] setup a scheduled task for the poller.') diff --git a/mod/invite.php b/mod/invite.php index ccf876c7c0..441d39e6e0 100644 --- a/mod/invite.php +++ b/mod/invite.php @@ -11,7 +11,7 @@ require_once('include/email.php'); function invite_post(&$a) { - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL); return; } @@ -19,14 +19,15 @@ function invite_post(&$a) { check_form_security_token_redirectOnErr('/', 'send_invite'); $max_invites = intval(get_config('system','max_invites')); - if(! $max_invites) + if (! $max_invites) { $max_invites = 50; + } $current_invites = intval(get_pconfig(local_user(),'system','sent_invites')); - if($current_invites > $max_invites) { + if ($current_invites > $max_invites) { notice( t('Total invitation limit exceeded.') . EOL); return; - }; + } $recips = ((x($_POST,'recipients')) ? explode("\n",$_POST['recipients']) : array()); @@ -34,23 +35,24 @@ function invite_post(&$a) { $total = 0; - if(get_config('system','invitation_only')) { + if (get_config('system','invitation_only')) { $invonly = true; $x = get_pconfig(local_user(),'system','invites_remaining'); - if((! $x) && (! is_site_admin())) + if ((! $x) && (! is_site_admin())) { return; + } } - foreach($recips as $recip) { + foreach ($recips as $recip) { $recip = trim($recip); - if(! valid_email($recip)) { + if (! valid_email($recip)) { notice( sprintf( t('%s : Not a valid email address.'), $recip) . EOL); continue; } - - if($invonly && ($x || is_site_admin())) { + + if ($invonly && ($x || is_site_admin())) { $code = autoname(8) . srand(1000,9999); $nmessage = str_replace('$invite_code',$code,$message); @@ -59,16 +61,17 @@ function invite_post(&$a) { dbesc(datetime_convert()) ); - if(! is_site_admin()) { + if (! is_site_admin()) { $x --; - if($x >= 0) + if ($x >= 0) { set_pconfig(local_user(),'system','invites_remaining',$x); - else + } else { return; + } } - } - else + } else { $nmessage = $message; + } $res = mail($recip, email_header_encode( t('Please join us on Friendica'),'UTF-8'), $nmessage, @@ -76,7 +79,7 @@ function invite_post(&$a) { . 'Content-type: text/plain; charset=UTF-8' . "\n" . 'Content-transfer-encoding: 8bit' ); - if($res) { + if ($res) { $total ++; $current_invites ++; set_pconfig(local_user(),'system','sent_invites',$current_invites); @@ -84,8 +87,7 @@ function invite_post(&$a) { notice( t('Invitation limit exceeded. Please contact your site administrator.') . EOL); return; } - } - else { + } else { notice( sprintf( t('%s : Message delivery failed.'), $recip) . EOL); } @@ -97,7 +99,7 @@ function invite_post(&$a) { function invite_content(&$a) { - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL); return; } @@ -105,39 +107,39 @@ function invite_content(&$a) { $tpl = get_markup_template('invite.tpl'); $invonly = false; - if(get_config('system','invitation_only')) { + if (get_config('system','invitation_only')) { $invonly = true; $x = get_pconfig(local_user(),'system','invites_remaining'); - if((! $x) && (! is_site_admin())) { + if ((! $x) && (! is_site_admin())) { notice( t('You have no more invitations available') . EOL); return ''; } } $dirloc = get_config('system','directory'); - if(strlen($dirloc)) { - if($a->config['register_policy'] == REGISTER_CLOSED) + if (strlen($dirloc)) { + if ($a->config['register_policy'] == REGISTER_CLOSED) { $linktxt = sprintf( t('Visit %s for a list of public sites that you can join. Friendica members on other sites can all connect with each other, as well as with members of many other social networks.'), $dirloc . '/siteinfo'); - elseif($a->config['register_policy'] != REGISTER_CLOSED) - $linktxt = sprintf( t('To accept this invitation, please visit and register at %s or any other public Friendica website.'), $a->get_baseurl()) + } elseif($a->config['register_policy'] != REGISTER_CLOSED) { + $linktxt = sprintf( t('To accept this invitation, please visit and register at %s or any other public Friendica website.'), App::get_baseurl()) . "\r\n" . "\r\n" . sprintf( t('Friendica sites all inter-connect to create a huge privacy-enhanced social web that is owned and controlled by its members. They can also connect with many traditional social networks. See %s for a list of alternate Friendica sites you can join.'),$dirloc . '/siteinfo'); - } - else { + } + } else { $o = t('Our apologies. This system is not currently configured to connect with other public sites or invite members.'); return $o; } $o = replace_macros($tpl, array( '$form_security_token' => get_form_security_token("send_invite"), - '$invite' => t('Send invitations'), - '$addr_text' => t('Enter email addresses, one per line:'), - '$msg_text' => t('Your message:'), - '$default_message' => t('You are cordially invited to join me and other close friends on Friendica - and help us to create a better social web.') . "\r\n" . "\r\n" + '$invite' => t('Send invitations'), + '$addr_text' => t('Enter email addresses, one per line:'), + '$msg_text' => t('Your message:'), + '$default_message' => t('You are cordially invited to join me and other close friends on Friendica - and help us to create a better social web.') . "\r\n" . "\r\n" . $linktxt . "\r\n" . "\r\n" . (($invonly) ? t('You will need to supply this invitation code: $invite_code') . "\r\n" . "\r\n" : '') .t('Once you have registered, please connect with me via my profile page at:') - . "\r\n" . "\r\n" . $a->get_baseurl() . '/profile/' . $a->user['nickname'] + . "\r\n" . "\r\n" . App::get_baseurl() . '/profile/' . $a->user['nickname'] . "\r\n" . "\r\n" . t('For more information about the Friendica project and why we feel it is important, please visit http://friendica.com') . "\r\n" . "\r\n" , - '$submit' => t('Submit') + '$submit' => t('Submit') )); return $o; diff --git a/mod/item.php b/mod/item.php index 9ef82616c3..b902f1e354 100644 --- a/mod/item.php +++ b/mod/item.php @@ -59,13 +59,14 @@ function item_post(&$a) { // Check for doubly-submitted posts, and reject duplicates // Note that we have to ignore previews, otherwise nothing will post // after it's been previewed - if(!$preview && x($_REQUEST['post_id_random'])) { - if(x($_SESSION['post-random']) && $_SESSION['post-random'] == $_REQUEST['post_id_random']) { + if (!$preview && x($_REQUEST['post_id_random'])) { + if (x($_SESSION['post-random']) && $_SESSION['post-random'] == $_REQUEST['post_id_random']) { logger("item post: duplicate post", LOGGER_DEBUG); - item_post_return($a->get_baseurl(), $api_source, $return_path); + item_post_return(App::get_baseurl(), $api_source, $return_path); } - else + else { $_SESSION['post-random'] = $_REQUEST['post_id_random']; + } } /** @@ -82,18 +83,20 @@ function item_post(&$a) { $r = false; $objecttype = null; - if($parent || $parent_uri) { + if ($parent || $parent_uri) { $objecttype = ACTIVITY_OBJ_COMMENT; - if(! x($_REQUEST,'type')) + if (! x($_REQUEST,'type')) { $_REQUEST['type'] = 'net-comment'; + } - if($parent) { + if ($parent) { $r = q("SELECT * FROM `item` WHERE `id` = %d LIMIT 1", intval($parent) ); - } elseif($parent_uri && local_user()) { + } + elseif ($parent_uri && local_user()) { // This is coming from an API source, and we are logged in $r = q("SELECT * FROM `item` WHERE `uri` = '%s' AND `uid` = %d LIMIT 1", dbesc($parent_uri), @@ -105,17 +108,18 @@ function item_post(&$a) { if (dbm::is_result($r)) { $parid = $r[0]['parent']; $parent_uri = $r[0]['uri']; - if($r[0]['id'] != $r[0]['parent']) { + if ($r[0]['id'] != $r[0]['parent']) { $r = q("SELECT * FROM `item` WHERE `id` = `parent` AND `parent` = %d LIMIT 1", intval($parid) ); } } - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { notice( t('Unable to locate original post.') . EOL); - if(x($_REQUEST,'return')) + if (x($_REQUEST,'return')) { goaway($return_path); + } killme(); } $parent_item = $r[0]; @@ -125,7 +129,7 @@ function item_post(&$a) { //if(($parid) && ($parid != $parent)) $thr_parent = $parent_uri; - if($parent_item['contact-id'] && $uid) { + if ($parent_item['contact-id'] && $uid) { $r = q("SELECT * FROM `contact` WHERE `id` = %d AND `uid` = %d LIMIT 1", intval($parent_item['contact-id']), intval($uid) @@ -448,13 +452,15 @@ function item_post(&$a) { $objecttype = ACTIVITY_OBJ_IMAGE; - foreach($images as $image) { - if(! stristr($image,$a->get_baseurl() . '/photo/')) + foreach ($images as $image) { + if (! stristr($image,App::get_baseurl() . '/photo/')) { continue; + } $image_uri = substr($image,strrpos($image,'/') + 1); $image_uri = substr($image_uri,0, strpos($image_uri,'-')); - if(! strlen($image_uri)) + if (! strlen($image_uri)) { continue; + } $srch = '<' . intval($contact_id) . '>'; $r = q("SELECT `id` FROM `photo` WHERE `allow_cid` = '%s' AND `allow_gid` = '' AND `deny_cid` = '' AND `deny_gid` = '' @@ -464,8 +470,9 @@ function item_post(&$a) { intval($profile_uid) ); - if(! dbm::is_result($r)) + if (! dbm::is_result($r)) { continue; + } $r = q("UPDATE `photo` SET `allow_cid` = '%s', `allow_gid` = '%s', `deny_cid` = '%s', `deny_gid` = '%s' WHERE `resource-id` = '%s' AND `uid` = %d AND `album` = '%s' ", @@ -638,9 +645,10 @@ function item_post(&$a) { intval($mtch) ); if (dbm::is_result($r)) { - if(strlen($attachments)) + if (strlen($attachments)) { $attachments .= ','; - $attachments .= '[attach]href="' . $a->get_baseurl() . '/attach/' . $r[0]['id'] . '" length="' . $r[0]['filesize'] . '" type="' . $r[0]['filetype'] . '" title="' . (($r[0]['filename']) ? $r[0]['filename'] : '') . '"[/attach]'; + } + $attachments .= '[attach]href="' . App::get_baseurl() . '/attach/' . $r[0]['id'] . '" length="' . $r[0]['filesize'] . '" type="' . $r[0]['filetype'] . '" title="' . (($r[0]['filename']) ? $r[0]['filename'] : '') . '"[/attach]'; } $body = str_replace($match[1],'',$body); } @@ -648,14 +656,17 @@ function item_post(&$a) { $wall = 0; - if($post_type === 'wall' || $post_type === 'wall-comment') + if ($post_type === 'wall' || $post_type === 'wall-comment') { $wall = 1; + } - if(! strlen($verb)) + if (! strlen($verb)) { $verb = ACTIVITY_POST ; + } - if ($network == "") + if ($network == "") { $network = NETWORK_DFRN; + } $gravity = (($parent) ? 6 : 0 ); @@ -669,8 +680,9 @@ function item_post(&$a) { $uri = (($message_id) ? $message_id : item_new_uri($a->get_hostname(),$profile_uid, $guid)); // Fallback so that we alway have a thr-parent - if(!$thr_parent) + if (!$thr_parent) { $thr_parent = $uri; + } $datarray = array(); $datarray['uid'] = $profile_uid; @@ -732,7 +744,7 @@ function item_post(&$a) { // $datarray['prvnets'] = $user['prvnets']; $datarray['parent-uri'] = ($parent == 0) ? $uri : $parent_item['uri']; - $datarray['plink'] = $a->get_baseurl().'/display/'.urlencode($datarray['guid']); + $datarray['plink'] = App::get_baseurl().'/display/'.urlencode($datarray['guid']); $datarray['last-child'] = 1; $datarray['visible'] = 1; @@ -765,8 +777,9 @@ function item_post(&$a) { } $json = array('cancel' => 1); - if(x($_REQUEST,'jsreload') && strlen($_REQUEST['jsreload'])) - $json['reload'] = $a->get_baseurl() . '/' . $_REQUEST['jsreload']; + if (x($_REQUEST,'jsreload') && strlen($_REQUEST['jsreload'])) { + $json['reload'] = App::get_baseurl() . '/' . $_REQUEST['jsreload']; + } echo json_encode($json); killme(); @@ -938,7 +951,7 @@ function item_post(&$a) { 'to_email' => $user['email'], 'uid' => $user['uid'], 'item' => $datarray, - 'link' => $a->get_baseurl().'/display/'.urlencode($datarray['guid']), + 'link' => App::get_baseurl().'/display/'.urlencode($datarray['guid']), 'source_name' => $datarray['author-name'], 'source_link' => $datarray['author-link'], 'source_photo' => $datarray['author-avatar'], @@ -952,7 +965,7 @@ function item_post(&$a) { // Store the comment signature information in case we need to relay to Diaspora - diaspora::store_comment_signature($datarray, $author, ($self ? $user['prvkey'] : false), $post_id); + Diaspora::store_comment_signature($datarray, $author, ($self ? $user['prvkey'] : false), $post_id); } else { $parent = $post_id; @@ -970,7 +983,7 @@ function item_post(&$a) { 'to_email' => $user['email'], 'uid' => $user['uid'], 'item' => $datarray, - 'link' => $a->get_baseurl().'/display/'.urlencode($datarray['guid']), + 'link' => App::get_baseurl().'/display/'.urlencode($datarray['guid']), 'source_name' => $datarray['author-name'], 'source_link' => $datarray['author-link'], 'source_photo' => $datarray['author-avatar'], @@ -991,14 +1004,14 @@ function item_post(&$a) { continue; $disclaimer = '


    ' . sprintf( t('This message was sent to you by %s, a member of the Friendica social network.'),$a->user['username']) . '
    '; - $disclaimer .= sprintf( t('You may visit them online at %s'), $a->get_baseurl() . '/profile/' . $a->user['nickname']) . EOL; + $disclaimer .= sprintf( t('You may visit them online at %s'), App::get_baseurl() . '/profile/' . $a->user['nickname']) . EOL; $disclaimer .= t('Please contact the sender by replying to this post if you do not wish to receive these messages.') . EOL; if (!$datarray['title']=='') { $subject = email_header_encode($datarray['title'],'UTF-8'); } else { $subject = email_header_encode('[Friendica]' . ' ' . sprintf( t('%s posted an update.'),$a->user['username']),'UTF-8'); } - $link = '' . $a->user['username'] . '

    '; + $link = '' . $a->user['username'] . '

    '; $html = prepare_body($datarray); $message = '' . $link . $html . $disclaimer . ''; include_once('include/html2plain.php'); @@ -1038,7 +1051,7 @@ function item_post(&$a) { logger('post_complete'); - item_post_return($a->get_baseurl(), $api_source, $return_path); + item_post_return(App::get_baseurl(), $api_source, $return_path); // NOTREACHED } @@ -1048,13 +1061,14 @@ function item_post_return($baseurl, $api_source, $return_path) { if($api_source) return; - if($return_path) { + if ($return_path) { goaway($return_path); } $json = array('success' => 1); - if(x($_REQUEST,'jsreload') && strlen($_REQUEST['jsreload'])) + if (x($_REQUEST,'jsreload') && strlen($_REQUEST['jsreload'])) { $json['reload'] = $baseurl . '/' . $_REQUEST['jsreload']; + } logger('post_json: ' . print_r($json,true), LOGGER_DEBUG); @@ -1066,15 +1080,16 @@ function item_post_return($baseurl, $api_source, $return_path) { function item_content(&$a) { - if((! local_user()) && (! remote_user())) + if ((! local_user()) && (! remote_user())) { return; + } require_once('include/security.php'); $o = ''; - if(($a->argc == 3) && ($a->argv[1] === 'drop') && intval($a->argv[2])) { + if (($a->argc == 3) && ($a->argv[1] === 'drop') && intval($a->argv[2])) { $o = drop_item($a->argv[2], !is_ajax()); - if (is_ajax()){ + if (is_ajax()) { // ajax return: [, 0 (no perm) | ] echo json_encode(array(intval($a->argv[2]), intval($o))); killme(); @@ -1087,6 +1102,7 @@ function item_content(&$a) { * This function removes the tag $tag from the text $body and replaces it with * the appropiate link. * + * @param App $a Application instance @TODO is unused in this function's scope (excluding included files) * @param unknown_type $body the text to replace the tag in * @param string $inform a comma-seperated string containing everybody to inform * @param string $str_tags string to add the tag to @@ -1104,13 +1120,14 @@ function handle_tag($a, &$body, &$inform, &$str_tags, $profile_uid, $tag, $netwo $r = null; //is it a person tag? - if(strpos($tag,'@') === 0) { + if (strpos($tag,'@') === 0) { //is it already replaced? - if(strpos($tag,'[url=')) { + if (strpos($tag,'[url=')) { //append tag to str_tags - if(!stristr($str_tags,$tag)) { - if(strlen($str_tags)) + if (!stristr($str_tags,$tag)) { + if (strlen($str_tags)) { $str_tags .= ','; + } $str_tags .= $tag; } diff --git a/mod/like.php b/mod/like.php index 8d383b9abe..cbab9185e4 100755 --- a/mod/like.php +++ b/mod/like.php @@ -24,7 +24,7 @@ function like_content(&$a) { // See if we've been passed a return path to redirect to $return_path = ((x($_REQUEST,'return')) ? $_REQUEST['return'] : ''); - like_content_return($a->get_baseurl(), $return_path); + like_content_return(App::get_baseurl(), $return_path); killme(); // NOTREACHED // return; // NOTREACHED } diff --git a/mod/localtime.php b/mod/localtime.php index d1453bc527..ce6bf84a12 100644 --- a/mod/localtime.php +++ b/mod/localtime.php @@ -36,7 +36,7 @@ function localtime_content(&$a) { $o .= '

    ' . sprintf( t('Converted localtime: %s'),$a->data['mod-localtime']) . '

    '; - $o .= '
    '; + $o .= ''; $o .= '

    ' . t('Please select your timezone:') . '

    '; diff --git a/mod/lockview.php b/mod/lockview.php index c806fc3175..68b5d30cfe 100644 --- a/mod/lockview.php +++ b/mod/lockview.php @@ -21,8 +21,9 @@ function lockview_content(&$a) { dbesc($type), intval($item_id) ); - if(! dbm::is_result($r)) + if (! dbm::is_result($r)) { killme(); + } $item = $r[0]; call_hooks('lockview_content', $item); diff --git a/mod/lostpass.php b/mod/lostpass.php index 3dca3a8b81..a5ef739cd1 100644 --- a/mod/lostpass.php +++ b/mod/lostpass.php @@ -15,7 +15,7 @@ function lostpass_post(&$a) { dbesc($loginame) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { notice( t('No valid account found.') . EOL); goaway(z_root()); } @@ -36,8 +36,7 @@ function lostpass_post(&$a) { $sitename = $a->config['sitename']; - $siteurl = $a->get_baseurl(); - $resetlink = $a->get_baseurl() . '/lostpass?verify=' . $new_password; + $resetlink = App::get_baseurl() . '/lostpass?verify=' . $new_password; $preamble = deindent(t(' Dear %1$s, @@ -64,7 +63,7 @@ function lostpass_post(&$a) { Login Name: %3$s')); $preamble = sprintf($preamble, $username, $sitename); - $body = sprintf($body, $resetlink, $siteurl, $email); + $body = sprintf($body, $resetlink, App::get_baseurl(), $email); notification(array( 'type' => "SYSTEM_EMAIL", @@ -88,7 +87,7 @@ function lostpass_content(&$a) { $r = q("SELECT * FROM `user` WHERE `pwdreset` = '%s' LIMIT 1", dbesc($hash) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { $o = t("Request could not be verified. \x28You may have previously submitted it.\x29 Password reset failed."); return $o; } @@ -103,24 +102,23 @@ function lostpass_content(&$a) { dbesc($new_password_encoded), intval($uid) ); - if($r) { + if ($r) { $tpl = get_markup_template('pwdreset.tpl'); $o .= replace_macros($tpl,array( '$lbl1' => t('Password Reset'), '$lbl2' => t('Your password has been reset as requested.'), '$lbl3' => t('Your new password is'), '$lbl4' => t('Save or copy your new password - and then'), - '$lbl5' => '' . t('click here to login') . '.', + '$lbl5' => '' . t('click here to login') . '.', '$lbl6' => t('Your password may be changed from the Settings page after successful login.'), '$newpass' => $new_password, - '$baseurl' => $a->get_baseurl() + '$baseurl' => App::get_baseurl() )); info("Your password has been reset." . EOL); $sitename = $a->config['sitename']; - $siteurl = $a->get_baseurl(); // $username, $email, $new_password $preamble = deindent(t(' Dear %1$s, @@ -139,7 +137,7 @@ function lostpass_content(&$a) { ')); $preamble = sprintf($preamble, $username); - $body = sprintf($body, $siteurl, $email, $new_password); + $body = sprintf($body, App::get_baseurl(), $email, $new_password); notification(array( 'type' => "SYSTEM_EMAIL", diff --git a/mod/manage.php b/mod/manage.php index 66891db720..bb9dfc313c 100644 --- a/mod/manage.php +++ b/mod/manage.php @@ -5,8 +5,9 @@ require_once("include/text.php"); function manage_post(&$a) { - if(! local_user()) + if (! local_user()) { return; + } $uid = local_user(); $orig_record = $a->user; @@ -56,8 +57,9 @@ function manage_post(&$a) { ); } - if(! dbm::is_result($r)) + if (! dbm::is_result($r)) { return; + } unset($_SESSION['authenticated']); unset($_SESSION['uid']); @@ -84,7 +86,7 @@ function manage_post(&$a) { $ret = array(); call_hooks('home_init',$ret); - goaway( $a->get_baseurl() . "/profile/" . $a->user['nickname'] ); + goaway( App::get_baseurl() . "/profile/" . $a->user['nickname'] ); // NOTREACHED } @@ -92,7 +94,7 @@ function manage_post(&$a) { function manage_content(&$a) { - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL); return; } diff --git a/mod/match.php b/mod/match.php index f7fe325b38..a9535d2d66 100644 --- a/mod/match.php +++ b/mod/match.php @@ -16,19 +16,21 @@ require_once('mod/proxy.php'); function match_content(&$a) { $o = ''; - if(! local_user()) + if (! local_user()) { return; + } $a->page['aside'] .= findpeople_widget(); $a->page['aside'] .= follow_widget(); - $_SESSION['return_url'] = $a->get_baseurl() . '/' . $a->cmd; + $_SESSION['return_url'] = App::get_baseurl() . '/' . $a->cmd; $r = q("SELECT `pub_keywords`, `prv_keywords` FROM `profile` WHERE `is-default` = 1 AND `uid` = %d LIMIT 1", intval(local_user()) ); - if(! dbm::is_result($r)) + if (! dbm::is_result($r)) { return; + } if(! $r[0]['pub_keywords'] && (! $r[0]['prv_keywords'])) { notice( t('No keywords to match. Please add keywords to your default profile.') . EOL); return; @@ -45,7 +47,7 @@ function match_content(&$a) { if(strlen(get_config('system','directory'))) $x = post_url(get_server().'/msearch', $params); else - $x = post_url($a->get_baseurl() . '/msearch', $params); + $x = post_url(App::get_baseurl() . '/msearch', $params); $j = json_decode($x); @@ -66,7 +68,7 @@ function match_content(&$a) { if (!count($match)) { $jj->photo = str_replace("http:///photo/", get_server()."/photo/", $jj->photo); - $connlnk = $a->get_baseurl() . '/follow/?url=' . $jj->url; + $connlnk = App::get_baseurl() . '/follow/?url=' . $jj->url; $photo_menu = array( 'profile' => array(t("View Profile"), zrl($jj->url)), 'follow' => array(t("Connect/Follow"), $connlnk) diff --git a/mod/message.php b/mod/message.php index 9bd5b0d722..fcf0989ae0 100644 --- a/mod/message.php +++ b/mod/message.php @@ -24,17 +24,17 @@ function message_init(&$a) { '$tabs'=>$tabs, '$new'=>$new, )); - $base = $a->get_baseurl(); + $base = App::get_baseurl(); $head_tpl = get_markup_template('message-head.tpl'); $a->page['htmlhead'] .= replace_macros($head_tpl,array( - '$baseurl' => $a->get_baseurl(true), + '$baseurl' => App::get_baseurl(true), '$base' => $base )); $end_tpl = get_markup_template('message-end.tpl'); $a->page['end'] .= replace_macros($end_tpl,array( - '$baseurl' => $a->get_baseurl(true), + '$baseurl' => App::get_baseurl(true), '$base' => $base )); @@ -42,7 +42,7 @@ function message_init(&$a) { function message_post(&$a) { - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL); return; } @@ -160,7 +160,7 @@ function item_redir_and_replace_images($body, $images, $cid) { $newbody = $newbody . $origbody; $cnt = 0; - foreach($images as $image) { + foreach ($images as $image) { // We're depending on the property of 'foreach' (specified on the PHP website) that // it loops over the array starting from the first element and going sequentially // to the last element @@ -178,12 +178,12 @@ function message_content(&$a) { $o = ''; nav_set_selected('messages'); - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL); return; } - $myprofile = $a->get_baseurl().'/profile/' . $a->user['nickname']; + $myprofile = App::get_baseurl().'/profile/' . $a->user['nickname']; $tpl = get_markup_template('mail_head.tpl'); $header = replace_macros($tpl, array( @@ -231,10 +231,10 @@ function message_content(&$a) { intval($a->argv[2]), intval(local_user()) ); - if($r) { + if ($r) { info( t('Message deleted.') . EOL ); } - //goaway($a->get_baseurl(true) . '/message' ); + //goaway(App::get_baseurl(true) . '/message' ); goaway($_SESSION['return_url']); } else { @@ -265,7 +265,7 @@ function message_content(&$a) { if($r) info( t('Conversation removed.') . EOL ); } - //goaway($a->get_baseurl(true) . '/message' ); + //goaway(App::get_baseurl(true) . '/message' ); goaway($_SESSION['return_url']); } @@ -285,7 +285,7 @@ function message_content(&$a) { $tpl = get_markup_template('msg-header.tpl'); $a->page['htmlhead'] .= replace_macros($tpl, array( - '$baseurl' => $a->get_baseurl(true), + '$baseurl' => App::get_baseurl(true), '$editselect' => (($plaintext) ? 'none' : '/(profile-jot-text|prvmail-text)/'), '$nickname' => $a->user['nickname'], '$linkurl' => t('Please enter a link URL:') @@ -293,7 +293,7 @@ function message_content(&$a) { $tpl = get_markup_template('msg-end.tpl'); $a->page['end'] .= replace_macros($tpl, array( - '$baseurl' => $a->get_baseurl(true), + '$baseurl' => App::get_baseurl(true), '$editselect' => (($plaintext) ? 'none' : '/(profile-jot-text|prvmail-text)/'), '$nickname' => $a->user['nickname'], '$linkurl' => t('Please enter a link URL:') @@ -381,7 +381,7 @@ function message_content(&$a) { $r = get_messages(local_user(), $a->pager['start'], $a->pager['itemspage']); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { info( t('No messages.') . EOL); return $o; } @@ -438,7 +438,7 @@ function message_content(&$a) { $tpl = get_markup_template('msg-header.tpl'); $a->page['htmlhead'] .= replace_macros($tpl, array( - '$baseurl' => $a->get_baseurl(true), + '$baseurl' => App::get_baseurl(true), '$editselect' => (($plaintext) ? 'none' : '/(profile-jot-text|prvmail-text)/'), '$nickname' => $a->user['nickname'], '$linkurl' => t('Please enter a link URL:') @@ -446,7 +446,7 @@ function message_content(&$a) { $tpl = get_markup_template('msg-end.tpl'); $a->page['end'] .= replace_macros($tpl, array( - '$baseurl' => $a->get_baseurl(true), + '$baseurl' => App::get_baseurl(true), '$editselect' => (($plaintext) ? 'none' : '/(profile-jot-text|prvmail-text)/'), '$nickname' => $a->user['nickname'], '$linkurl' => t('Please enter a link URL:') @@ -573,7 +573,7 @@ function render_messages(array $msg, $t) { $tpl = get_markup_template($t); $rslt = ''; - $myprofile = $a->get_baseurl().'/profile/' . $a->user['nickname']; + $myprofile = App::get_baseurl().'/profile/' . $a->user['nickname']; foreach($msg as $rr) { diff --git a/mod/modexp.php b/mod/modexp.php index d1dabb101b..3729e3236c 100644 --- a/mod/modexp.php +++ b/mod/modexp.php @@ -12,8 +12,9 @@ function modexp_init(&$a) { dbesc($nick) ); - if(! dbm::is_result($r)) + if (! dbm::is_result($r)) { killme(); + } $lines = explode("\n",$r[0]['spubkey']); unset($lines[0]); diff --git a/mod/mood.php b/mod/mood.php index c64dd0d9ef..ec318f85fd 100644 --- a/mod/mood.php +++ b/mod/mood.php @@ -7,8 +7,9 @@ require_once('include/items.php'); function mood_init(&$a) { - if(! local_user()) + if (! local_user()) { return; + } $uid = local_user(); $verb = notags(trim($_GET['verb'])); @@ -91,7 +92,7 @@ function mood_init(&$a) { $item_id = item_store($arr); if($item_id) { q("UPDATE `item` SET `plink` = '%s' WHERE `uid` = %d AND `id` = %d", - dbesc($a->get_baseurl() . '/display/' . $poster['nickname'] . '/' . $item_id), + dbesc(App::get_baseurl() . '/display/' . $poster['nickname'] . '/' . $item_id), intval($uid), intval($item_id) ); @@ -110,7 +111,7 @@ function mood_init(&$a) { function mood_content(&$a) { - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL); return; } diff --git a/mod/msearch.php b/mod/msearch.php index 43b200ddf8..ba7a92d64e 100644 --- a/mod/msearch.php +++ b/mod/msearch.php @@ -29,8 +29,8 @@ function msearch_post(&$a) { foreach($r as $rr) $results[] = array( 'name' => $rr['name'], - 'url' => $a->get_baseurl() . '/profile/' . $rr['nickname'], - 'photo' => $a->get_baseurl() . '/photo/avatar/' . $rr['uid'] . '.jpg', + 'url' => App::get_baseurl() . '/profile/' . $rr['nickname'], + 'photo' => App::get_baseurl() . '/photo/avatar/' . $rr['uid'] . '.jpg', 'tags' => str_replace(array(',',' '),array(' ',' '),$rr['pub_keywords']) ); } diff --git a/mod/navigation.php b/mod/navigation.php index 5db69b171e..cba950a431 100644 --- a/mod/navigation.php +++ b/mod/navigation.php @@ -12,7 +12,7 @@ function navigation_content(&$a) { $tpl = get_markup_template('navigation.tpl'); return replace_macros($tpl, array( - '$baseurl' => $a->get_baseurl(), + '$baseurl' => App::get_baseurl(), '$sitelocation' => $nav_info['sitelocation'], '$nav' => $nav_info['nav'], '$banner' => $nav_info['banner'], diff --git a/mod/network.php b/mod/network.php index 9cfeda1026..cce511ae19 100644 --- a/mod/network.php +++ b/mod/network.php @@ -1,6 +1,6 @@ get_baseurl() . $redir_url); + goaway(App::get_baseurl() . $redir_url); } } @@ -126,7 +126,7 @@ function network_init(&$a) { intval(local_user()), dbesc($search) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { q("INSERT INTO `search` ( `uid`,`term` ) VALUES ( %d, '%s') ", intval(local_user()), dbesc($search) @@ -183,13 +183,13 @@ function saved_searches($search) { $saved = array(); if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { $saved[] = array( - 'id' => $rr['id'], - 'term' => $rr['term'], - 'encodedterm' => urlencode($rr['term']), - 'delete' => t('Remove term'), - 'selected' => ($search==$rr['term']), + 'id' => $rr['id'], + 'term' => $rr['term'], + 'encodedterm' => urlencode($rr['term']), + 'delete' => t('Remove term'), + 'selected' => ($search==$rr['term']), ); } } @@ -197,10 +197,10 @@ function saved_searches($search) { $tpl = get_markup_template("saved_searches_aside.tpl"); $o = replace_macros($tpl, array( - '$title' => t('Saved Searches'), - '$add' => t('add'), - '$searchbox' => search($search,'netsearch-box',$srchurl,true), - '$saved' => $saved, + '$title' => t('Saved Searches'), + '$add' => t('add'), + '$searchbox' => search($search,'netsearch-box',$srchurl,true), + '$saved' => $saved, )); return $o; @@ -308,7 +308,7 @@ function network_content(&$a, $update = 0) { require_once('include/conversation.php'); - if(! local_user()) { + if (! local_user()) { $_SESSION['return_url'] = $a->query_string; return login(false); } @@ -463,7 +463,7 @@ function network_content(&$a, $update = 0) { intval($group), intval($_SESSION['uid']) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { if($update) killme(); notice( t('No such group') . EOL ); diff --git a/mod/nodeinfo.php b/mod/nodeinfo.php index 5c70603468..e55dba128f 100644 --- a/mod/nodeinfo.php +++ b/mod/nodeinfo.php @@ -13,7 +13,7 @@ function nodeinfo_wellknown(&$a) { killme(); } $nodeinfo = array("links" => array(array("rel" => "http://nodeinfo.diaspora.software/ns/schema/1.0", - "href" => $a->get_baseurl()."/nodeinfo/1.0"))); + "href" => App::get_baseurl()."/nodeinfo/1.0"))); header('Content-type: application/json; charset=utf-8'); echo json_encode($nodeinfo, JSON_PRETTY_PRINT|JSON_UNESCAPED_SLASHES); diff --git a/mod/nogroup.php b/mod/nogroup.php index 0a014c0676..c75b595c36 100644 --- a/mod/nogroup.php +++ b/mod/nogroup.php @@ -6,14 +6,16 @@ require_once('include/contact_selectors.php'); function nogroup_init(&$a) { - if(! local_user()) + if (! local_user()) { return; + } require_once('include/group.php'); require_once('include/contact_widgets.php'); - if(! x($a->page,'aside')) + if (! x($a->page,'aside')) { $a->page['aside'] = ''; + } $a->page['aside'] .= group_side('contacts','group','extended',0,$contact_id); } @@ -21,7 +23,7 @@ function nogroup_init(&$a) { function nogroup_content(&$a) { - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL); return ''; } @@ -33,7 +35,7 @@ function nogroup_content(&$a) { } $r = contacts_not_grouped(local_user(),$a->pager['start'],$a->pager['itemspage']); if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { $contact_details = get_contact_details_by_url($rr['url'], local_user(), $rr); diff --git a/mod/noscrape.php b/mod/noscrape.php index 537aff878f..3d298cfe39 100644 --- a/mod/noscrape.php +++ b/mod/noscrape.php @@ -30,21 +30,22 @@ function noscrape_init(&$a) { intval($a->profile['uid'])); $json_info = array( - 'fn' => $a->profile['name'], - 'addr' => $a->profile['addr'], - 'nick' => $which, - 'key' => $a->profile['pubkey'], - 'homepage' => $a->get_baseurl()."/profile/{$which}", - 'comm' => (x($a->profile,'page-flags')) && ($a->profile['page-flags'] == PAGE_COMMUNITY), - 'photo' => $r[0]["photo"], - 'tags' => $keywords + 'fn' => $a->profile['name'], + 'addr' => $a->profile['addr'], + 'nick' => $which, + 'key' => $a->profile['pubkey'], + 'homepage' => App::get_baseurl()."/profile/{$which}", + 'comm' => (x($a->profile,'page-flags')) && ($a->profile['page-flags'] == PAGE_COMMUNITY), + 'photo' => $r[0]["photo"], + 'tags' => $keywords ); - if(is_array($a->profile) AND !$a->profile['hide-friends']) { + if (is_array($a->profile) AND !$a->profile['hide-friends']) { $r = q("SELECT `gcontact`.`updated` FROM `contact` INNER JOIN `gcontact` WHERE `gcontact`.`nurl` = `contact`.`nurl` AND `self` AND `uid` = %d LIMIT 1", intval($a->profile['uid'])); - if (dbm::is_result($r)) + if (dbm::is_result($r)) { $json_info["updated"] = date("c", strtotime($r[0]['updated'])); + } $r = q("SELECT COUNT(*) AS `total` FROM `contact` WHERE `uid` = %d AND `self` = 0 AND `blocked` = 0 and `pending` = 0 AND `hidden` = 0 AND `archive` = 0 AND `network` IN ('%s', '%s', '%s', '')", @@ -53,18 +54,23 @@ function noscrape_init(&$a) { dbesc(NETWORK_DIASPORA), dbesc(NETWORK_OSTATUS) ); - if (dbm::is_result($r)) + if (dbm::is_result($r)) { $json_info["contacts"] = intval($r[0]['total']); + } } //These are optional fields. $profile_fields = array('pdesc', 'locality', 'region', 'postal-code', 'country-name', 'gender', 'marital', 'about'); - foreach($profile_fields as $field) - if(!empty($a->profile[$field])) $json_info["$field"] = $a->profile[$field]; + foreach ($profile_fields as $field) { + if (!empty($a->profile[$field])) { + $json_info["$field"] = $a->profile[$field]; + } + } $dfrn_pages = array('request', 'confirm', 'notify', 'poll'); - foreach($dfrn_pages as $dfrn) - $json_info["dfrn-{$dfrn}"] = $a->get_baseurl()."/dfrn_{$dfrn}/{$which}"; + foreach ($dfrn_pages as $dfrn) { + $json_info["dfrn-{$dfrn}"] = App::get_baseurl()."/dfrn_{$dfrn}/{$which}"; + } //Output all the JSON! header('Content-type: application/json; charset=utf-8'); diff --git a/mod/notes.php b/mod/notes.php index 74ab18a6f9..d9222dca51 100644 --- a/mod/notes.php +++ b/mod/notes.php @@ -2,8 +2,9 @@ function notes_init(&$a) { - if(! local_user()) + if (! local_user()) { return; + } $profile = 0; @@ -18,7 +19,7 @@ function notes_init(&$a) { function notes_content(&$a,$update = false) { - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL); return; } diff --git a/mod/notice.php b/mod/notice.php index 7fdf4493a4..71c4977be9 100644 --- a/mod/notice.php +++ b/mod/notice.php @@ -8,7 +8,7 @@ ); if (dbm::is_result($r)){ $nick = $r[0]['nickname']; - $url = $a->get_baseurl()."/display/$nick/$id"; + $url = App::get_baseurl()."/display/$nick/$id"; goaway($url); } else { $a->error = 404; diff --git a/mod/notifications.php b/mod/notifications.php index 3e0bd9cc47..ed15f14177 100644 --- a/mod/notifications.php +++ b/mod/notifications.php @@ -11,7 +11,7 @@ require_once("include/network.php"); function notifications_post(&$a) { - if(! local_user()) { + if (! local_user()) { goaway(z_root()); } @@ -67,7 +67,7 @@ function notifications_post(&$a) { function notifications_content(&$a) { - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL); return; } @@ -285,8 +285,10 @@ function notifications_content(&$a) { '$item_label' => $it['label'], '$item_link' => $it['link'], '$item_image' => $it['image'], + '$item_url' => $it['url'], '$item_text' => htmlentities($it['text']), '$item_when' => $it['when'], + '$item_ago' => $it['ago'], '$item_seen' => $it['seen'], )); } diff --git a/mod/notify.php b/mod/notify.php index dceb326a4b..88f5fa5429 100644 --- a/mod/notify.php +++ b/mod/notify.php @@ -3,10 +3,13 @@ require_once('include/NotificationsManager.php'); function notify_init(&$a) { - if(! local_user()) return; + if (! local_user()) { + return; + } + $nm = new NotificationsManager(); - - if($a->argc > 2 && $a->argv[1] === 'view' && intval($a->argv[2])) { + + if ($a->argc > 2 && $a->argv[1] === 'view' && intval($a->argv[2])) { $note = $nm->getByID($a->argv[2]); if ($note) { $nm->setSeen($note); @@ -17,17 +20,18 @@ function notify_init(&$a) { $urldata = parse_url($note['link']); $guid = basename($urldata["path"]); $itemdata = get_item_id($guid, local_user()); - if ($itemdata["id"] != 0) - $note['link'] = $a->get_baseurl().'/display/'.$itemdata["nick"].'/'.$itemdata["id"]; + if ($itemdata["id"] != 0) { + $note['link'] = App::get_baseurl().'/display/'.$itemdata["nick"].'/'.$itemdata["id"]; + } } goaway($note['link']); } - goaway($a->get_baseurl(true)); + goaway(App::get_baseurl(true)); } - if($a->argc > 2 && $a->argv[1] === 'mark' && $a->argv[2] === 'all' ) { + if ($a->argc > 2 && $a->argv[1] === 'mark' && $a->argv[2] === 'all' ) { $r = $nm->setAllSeen(); $j = json_encode(array('result' => ($r) ? 'success' : 'fail')); echo $j; @@ -37,7 +41,9 @@ function notify_init(&$a) { } function notify_content(&$a) { - if(! local_user()) return login(); + if (! local_user()) { + return login(); + } $nm = new NotificationsManager(); @@ -50,7 +56,7 @@ function notify_content(&$a) { if (dbm::is_result($r) > 0) { foreach ($r as $it) { $notif_content .= replace_macros($not_tpl,array( - '$item_link' => $a->get_baseurl(true).'/notify/view/'. $it['id'], + '$item_link' => App::get_baseurl(true).'/notify/view/'. $it['id'], '$item_image' => $it['photo'], '$item_text' => strip_tags(bbcode($it['msg'])), '$item_when' => relative_date($it['date']) diff --git a/mod/oexchange.php b/mod/oexchange.php index bbb436e702..6eb380dff4 100644 --- a/mod/oexchange.php +++ b/mod/oexchange.php @@ -6,7 +6,7 @@ function oexchange_init(&$a) { if(($a->argc > 1) && ($a->argv[1] === 'xrd')) { $tpl = get_markup_template('oexchange_xrd.tpl'); - $o = replace_macros($tpl, array('$base' => $a->get_baseurl())); + $o = replace_macros($tpl, array('$base' => App::get_baseurl())); echo $o; killme(); } @@ -16,12 +16,12 @@ function oexchange_init(&$a) { function oexchange_content(&$a) { - if(! local_user()) { + if (! local_user()) { $o = login(false); return $o; } - if(($a->argc > 1) && $a->argv[1] === 'done') { + if (($a->argc > 1) && $a->argv[1] === 'done') { info( t('Post successful.') . EOL); return; } @@ -35,7 +35,7 @@ function oexchange_content(&$a) { $tags = (((x($_REQUEST,'tags')) && strlen($_REQUEST['tags'])) ? '&tags=' . urlencode(notags(trim($_REQUEST['tags']))) : ''); - $s = fetch_url($a->get_baseurl() . '/parse_url?f=&url=' . $url . $title . $description . $tags); + $s = fetch_url(App::get_baseurl() . '/parse_url?f=&url=' . $url . $title . $description . $tags); if(! strlen($s)) return; diff --git a/mod/openid.php b/mod/openid.php index 60a9c1381b..09905198c9 100644 --- a/mod/openid.php +++ b/mod/openid.php @@ -56,7 +56,7 @@ function openid_content(&$a) { // Successful OpenID login - but we can't match it to an existing account. // New registration? - if($a->config['register_policy'] == REGISTER_CLOSED) { + if ($a->config['register_policy'] == REGISTER_CLOSED) { notice( t('Account not found and OpenID registration is not permitted on this site.') . EOL); goaway(z_root()); } @@ -64,35 +64,45 @@ function openid_content(&$a) { unset($_SESSION['register']); $args = ''; $attr = $openid->getAttributes(); - if(is_array($attr) && count($attr)) { - foreach($attr as $k => $v) { - if($k === 'namePerson/friendly') + if (is_array($attr) && count($attr)) { + foreach ($attr as $k => $v) { + if ($k === 'namePerson/friendly') { $nick = notags(trim($v)); - if($k === 'namePerson/first') + } + if($k === 'namePerson/first') { $first = notags(trim($v)); - if($k === 'namePerson') + } + if($k === 'namePerson') { $args .= '&username=' . notags(trim($v)); - if($k === 'contact/email') + } + if ($k === 'contact/email') { $args .= '&email=' . notags(trim($v)); - if($k === 'media/image/aspect11') + } + if ($k === 'media/image/aspect11') { $photosq = bin2hex(trim($v)); - if($k === 'media/image/default') + } + if ($k === 'media/image/default') { $photo = bin2hex(trim($v)); + } } } - if($nick) + if ($nick) { $args .= '&nickname=' . $nick; - elseif($first) + } + elseif ($first) { $args .= '&nickname=' . $first; + } - if($photosq) + if ($photosq) { $args .= '&photo=' . $photosq; - elseif($photo) + } + elseif ($photo) { $args .= '&photo=' . $photo; + } $args .= '&openid_url=' . notags(trim($authid)); - goaway($a->get_baseurl() . '/register' . $args); + goaway(App::get_baseurl() . '/register' . $args); // NOTREACHED } diff --git a/mod/opensearch.php b/mod/opensearch.php index ff748d1c53..50ecc4e69e 100644 --- a/mod/opensearch.php +++ b/mod/opensearch.php @@ -6,7 +6,7 @@ header("Content-type: application/opensearchdescription+xml"); $o = replace_macros($tpl, array( - '$baseurl' => $a->get_baseurl(), + '$baseurl' => App::get_baseurl(), '$nodename' => $a->get_hostname(), )); diff --git a/mod/ostatus_subscribe.php b/mod/ostatus_subscribe.php index 6cca0bf679..04c8d7bde7 100644 --- a/mod/ostatus_subscribe.php +++ b/mod/ostatus_subscribe.php @@ -5,7 +5,7 @@ require_once('include/follow.php'); function ostatus_subscribe_content(&$a) { - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL); goaway($_SESSION['return_url']); // NOTREACHED @@ -21,21 +21,24 @@ function ostatus_subscribe_content(&$a) { if (get_pconfig($uid, "ostatus", "legacy_friends") == "") { - if ($_REQUEST["url"] == "") + if ($_REQUEST["url"] == "") { return $o.t("No contact provided."); + } $contact = probe_url($_REQUEST["url"]); - if (!$contact) + if (!$contact) { return $o.t("Couldn't fetch information for contact."); + } $api = $contact["baseurl"]."/api/"; // Fetching friends $data = z_fetch_url($api."statuses/friends.json?screen_name=".$contact["nick"]); - if (!$data["success"]) + if (!$data["success"]) { return $o.t("Couldn't fetch friends for contact."); + } set_pconfig($uid, "ostatus", "legacy_friends", $data["body"]); } @@ -45,7 +48,7 @@ function ostatus_subscribe_content(&$a) { $total = sizeof($friends); if ($counter >= $total) { - $a->page['htmlhead'] = ''; + $a->page['htmlhead'] = ''; del_pconfig($uid, "ostatus", "legacy_friends"); del_pconfig($uid, "ostatus", "legacy_contact"); $o .= t("Done"); @@ -61,18 +64,20 @@ function ostatus_subscribe_content(&$a) { $data = probe_url($url); if ($data["network"] == NETWORK_OSTATUS) { $result = new_contact($uid,$url,true); - if ($result["success"]) + if ($result["success"]) { $o .= " - ".t("success"); - else + } else { $o .= " - ".t("failed"); - } else + } + } else { $o .= " - ".t("ignored"); + } $o .= "

    "; $o .= "

    ".t("Keep this window open until done.")."

    "; - $a->page['htmlhead'] = ''; + $a->page['htmlhead'] = ''; return $o; } diff --git a/mod/p.php b/mod/p.php index 4db8f55296..8755464519 100644 --- a/mod/p.php +++ b/mod/p.php @@ -54,8 +54,8 @@ function p_init($a){ } $user = $r[0]; - $status = diaspora::build_status($item[0], $user); - $xml = diaspora::build_post_xml($status["type"], $status["message"]); + $status = Diaspora::build_status($item[0], $user); + $xml = Diaspora::build_post_xml($status["type"], $status["message"]); header("Content-Type: application/xml; charset=utf-8"); echo $xml; diff --git a/mod/photos.php b/mod/photos.php index 1ef43f423a..a4bf19e940 100644 --- a/mod/photos.php +++ b/mod/photos.php @@ -255,7 +255,7 @@ function photos_post(&$a) { ); } if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { $res[] = "'" . dbesc($rr['rid']) . "'" ; } } else { @@ -277,7 +277,7 @@ function photos_post(&$a) { intval($page_owner_uid) ); if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { q("UPDATE `item` SET `deleted` = 1, `changed` = '%s' WHERE `parent-uri` = '%s' AND `uid` = %d", dbesc(datetime_convert()), dbesc($rr['parent-uri']), @@ -356,7 +356,7 @@ function photos_post(&$a) { create_tags_from_itemuri($i[0]['uri'], $page_owner_uid); delete_thread_uri($i[0]['uri'], $page_owner_uid); - $url = $a->get_baseurl(); + $url = App::get_baseurl(); $drop_id = intval($i[0]['id']); if ($i[0]['visible']) @@ -496,8 +496,8 @@ function photos_post(&$a) { $arr['visible'] = $visibility; $arr['origin'] = 1; - $arr['body'] = '[url=' . $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'] . '/image/' . $p[0]['resource-id'] . ']' - . '[img]' . $a->get_baseurl() . '/photo/' . $p[0]['resource-id'] . '-' . $p[0]['scale'] . '.'. $ext . '[/img]' + $arr['body'] = '[url=' . App::get_baseurl() . '/photos/' . $a->data['user']['nickname'] . '/image/' . $p[0]['resource-id'] . ']' + . '[img]' . App::get_baseurl() . '/photo/' . $p[0]['resource-id'] . '-' . $p[0]['scale'] . '.'. $ext . '[/img]' . '[/url]'; $item_id = item_store($arr); @@ -615,7 +615,7 @@ function photos_post(&$a) { } } elseif (strpos($tag,'#') === 0) { $tagname = substr($tag, 1); - $str_tags .= '#[url='.$a->get_baseurl()."/search?tag=".$tagname.']'.$tagname.'[/url]'; + $str_tags .= '#[url='.App::get_baseurl()."/search?tag=".$tagname.']'.$tagname.'[/url]'; } } } @@ -685,8 +685,8 @@ function photos_post(&$a) { $arr['tag'] = $tagged[4]; $arr['inform'] = $tagged[2]; $arr['origin'] = 1; - $arr['body'] = sprintf( t('%1$s was tagged in %2$s by %3$s'), '[url=' . $tagged[1] . ']' . $tagged[0] . '[/url]', '[url=' . $a->get_baseurl() . '/photos/' . $owner_record['nickname'] . '/image/' . $p[0]['resource-id'] . ']' . t('a photo') . '[/url]', '[url=' . $owner_record['url'] . ']' . $owner_record['name'] . '[/url]') ; - $arr['body'] .= "\n\n" . '[url=' . $a->get_baseurl() . '/photos/' . $owner_record['nickname'] . '/image/' . $p[0]['resource-id'] . ']' . '[img]' . $a->get_baseurl() . "/photo/" . $p[0]['resource-id'] . '-' . $best . '.' . $ext . '[/img][/url]' . "\n" ; + $arr['body'] = sprintf( t('%1$s was tagged in %2$s by %3$s'), '[url=' . $tagged[1] . ']' . $tagged[0] . '[/url]', '[url=' . App::get_baseurl() . '/photos/' . $owner_record['nickname'] . '/image/' . $p[0]['resource-id'] . ']' . t('a photo') . '[/url]', '[url=' . $owner_record['url'] . ']' . $owner_record['name'] . '[/url]') ; + $arr['body'] .= "\n\n" . '[url=' . App::get_baseurl() . '/photos/' . $owner_record['nickname'] . '/image/' . $p[0]['resource-id'] . ']' . '[img]' . App::get_baseurl() . "/photo/" . $p[0]['resource-id'] . '-' . $best . '.' . $ext . '[/img][/url]' . "\n" ; $arr['object'] = '' . ACTIVITY_OBJ_PERSON . '' . $tagged[0] . '' . $tagged[1] . '/' . $tagged[0] . ''; $arr['object'] .= '' . xmlify('' . "\n"); @@ -695,8 +695,8 @@ function photos_post(&$a) { $arr['object'] .= '' . "\n"; $arr['target'] = '' . ACTIVITY_OBJ_IMAGE . '' . $p[0]['desc'] . '' - . $a->get_baseurl() . '/photos/' . $owner_record['nickname'] . '/image/' . $p[0]['resource-id'] . ''; - $arr['target'] .= '' . xmlify('' . "\n" . '') . ''; + . App::get_baseurl() . '/photos/' . $owner_record['nickname'] . '/image/' . $p[0]['resource-id'] . ''; + $arr['target'] .= '' . xmlify('' . "\n" . '') . ''; $item_id = item_store($arr); if ($item_id) { @@ -908,8 +908,8 @@ function photos_post(&$a) { $arr['visible'] = $visible; $arr['origin'] = 1; - $arr['body'] = '[url=' . $a->get_baseurl() . '/photos/' . $owner_record['nickname'] . '/image/' . $photo_hash . ']' - . '[img]' . $a->get_baseurl() . "/photo/{$photo_hash}-{$smallest}.".$ph->getExt() . '[/img]' + $arr['body'] = '[url=' . App::get_baseurl() . '/photos/' . $owner_record['nickname'] . '/image/' . $photo_hash . ']' + . '[img]' . App::get_baseurl() . "/photo/{$photo_hash}-{$smallest}.".$ph->getExt() . '[/img]' . '[/url]'; $item_id = item_store($arr); diff --git a/mod/ping.php b/mod/ping.php index 1ef3cc5b47..cde03969f4 100644 --- a/mod/ping.php +++ b/mod/ping.php @@ -177,7 +177,7 @@ function ping_init(App $a) $intro_count = count($intros1) + count($intros2); $intros = $intros1 + $intros2; - $myurl = $a->get_baseurl() . '/profile/' . $a->user['nickname'] ; + $myurl = App::get_baseurl() . '/profile/' . $a->user['nickname'] ; $mails = qu("SELECT `id`, `from-name`, `from-url`, `from-photo`, `created` FROM `mail` WHERE `uid` = %d AND `seen` = 0 AND `from-url` != '%s' ", intval(local_user()), @@ -253,7 +253,7 @@ function ping_init(App $a) if (dbm::is_result($intros)) { foreach ($intros as $intro) { $notif = array( - 'href' => $a->get_baseurl() . '/notifications/intros/' . $intro['id'], + 'href' => App::get_baseurl() . '/notifications/intros/' . $intro['id'], 'name' => $intro['name'], 'url' => $intro['url'], 'photo' => $intro['photo'], @@ -268,7 +268,7 @@ function ping_init(App $a) if (dbm::is_result($mails)) { foreach ($mails as $mail) { $notif = array( - 'href' => $a->get_baseurl() . '/message/' . $mail['id'], + 'href' => App::get_baseurl() . '/message/' . $mail['id'], 'name' => $mail['from-name'], 'url' => $mail['from-url'], 'photo' => $mail['from-photo'], @@ -283,7 +283,7 @@ function ping_init(App $a) if (dbm::is_result($regs)) { foreach ($regs as $reg) { $notif = array( - 'href' => $a->get_baseurl() . '/admin/users/', + 'href' => App::get_baseurl() . '/admin/users/', 'name' => $reg['name'], 'url' => $reg['url'], 'photo' => $reg['micro'], @@ -450,7 +450,7 @@ function ping_get_notifications($uid) ); } - $notification["href"] = $a->get_baseurl() . "/notify/view/" . $notification["id"]; + $notification["href"] = App::get_baseurl() . "/notify/view/" . $notification["id"]; if ($notification["visible"] AND !$notification["spam"] AND !$notification["deleted"] AND !is_array($result[$notification["parent"]])) { diff --git a/mod/poco.php b/mod/poco.php index e454d1e668..a97ca64e33 100644 --- a/mod/poco.php +++ b/mod/poco.php @@ -174,7 +174,7 @@ function poco_init(&$a) { if(is_array($r)) { if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { if (!isset($rr['generation'])) { if ($global) $rr['generation'] = 3; diff --git a/mod/poke.php b/mod/poke.php index 8102c3697d..af8eed35a0 100644 --- a/mod/poke.php +++ b/mod/poke.php @@ -21,25 +21,29 @@ require_once('include/items.php'); function poke_init(&$a) { - if(! local_user()) + if (! local_user()) { return; + } $uid = local_user(); $verb = notags(trim($_GET['verb'])); - if(! $verb) + if (! $verb) { return; + } $verbs = get_poke_verbs(); - if(! array_key_exists($verb,$verbs)) + if (! array_key_exists($verb,$verbs)) { return; + } $activity = ACTIVITY_POKE . '#' . urlencode($verbs[$verb][0]); $contact_id = intval($_GET['cid']); - if(! $contact_id) + if (! $contact_id) { return; + } $parent = ((x($_GET,'parent')) ? intval($_GET['parent']) : 0); @@ -52,7 +56,7 @@ function poke_init(&$a) { intval($uid) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { logger('poke: no contact ' . $contact_id); return; } @@ -118,7 +122,7 @@ function poke_init(&$a) { $arr['origin'] = 1; $arr['body'] = '[url=' . $poster['url'] . ']' . $poster['name'] . '[/url]' . ' ' . t($verbs[$verb][0]) . ' ' . '[url=' . $target['url'] . ']' . $target['name'] . '[/url]'; - $arr['object'] = '' . ACTIVITY_OBJ_PERSON . '' . $target['name'] . '' . $a->get_baseurl() . '/contact/' . $target['id'] . ''; + $arr['object'] = '' . ACTIVITY_OBJ_PERSON . '' . $target['name'] . '' . App::get_baseurl() . '/contact/' . $target['id'] . ''; $arr['object'] .= '' . xmlify('' . "\n"); $arr['object'] .= xmlify('' . "\n"); @@ -127,7 +131,7 @@ function poke_init(&$a) { $item_id = item_store($arr); if($item_id) { //q("UPDATE `item` SET `plink` = '%s' WHERE `uid` = %d AND `id` = %d", - // dbesc($a->get_baseurl() . '/display/' . $poster['nickname'] . '/' . $item_id), + // dbesc(App::get_baseurl() . '/display/' . $poster['nickname'] . '/' . $item_id), // intval($uid), // intval($item_id) //); @@ -146,7 +150,7 @@ function poke_init(&$a) { function poke_content(&$a) { - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL); return; } @@ -166,11 +170,11 @@ function poke_content(&$a) { } - $base = $a->get_baseurl(); + $base = App::get_baseurl(); $head_tpl = get_markup_template('poke_head.tpl'); $a->page['htmlhead'] .= replace_macros($head_tpl,array( - '$baseurl' => $a->get_baseurl(true), + '$baseurl' => App::get_baseurl(true), '$base' => $base )); diff --git a/mod/post.php b/mod/post.php index 76282d29a5..a8d345ecb6 100644 --- a/mod/post.php +++ b/mod/post.php @@ -23,8 +23,9 @@ function post_post(&$a) { AND `account_expired` = 0 AND `account_removed` = 0 LIMIT 1", dbesc($nickname) ); - if(! dbm::is_result($r)) + if (! dbm::is_result($r)) { http_status_exit(500); + } $importer = $r[0]; } diff --git a/mod/profile.php b/mod/profile.php index 5ab675dd0d..ae8f2fa720 100644 --- a/mod/profile.php +++ b/mod/profile.php @@ -14,7 +14,7 @@ function profile_init(&$a) { else { $r = q("select nickname from user where blocked = 0 and account_expired = 0 and account_removed = 0 and verified = 1 order by rand() limit 1"); if (dbm::is_result($r)) { - goaway($a->get_baseurl() . '/profile/' . $r[0]['nickname']); + goaway(App::get_baseurl() . '/profile/' . $r[0]['nickname']); } else { logger('profile error: mod_profile ' . $a->query_string, LOGGER_DEBUG); @@ -56,15 +56,16 @@ function profile_init(&$a) { } $a->page['htmlhead'] .= '' . "\r\n" ; - $a->page['htmlhead'] .= '' . "\r\n" ; + $a->page['htmlhead'] .= '' . "\r\n" ; $uri = urlencode('acct:' . $a->profile['nickname'] . '@' . $a->get_hostname() . (($a->path) ? '/' . $a->path : '')); - $a->page['htmlhead'] .= '' . "\r\n"; - header('Link: <' . $a->get_baseurl() . '/xrd/?uri=' . $uri . '>; rel="lrdd"; type="application/xrd+xml"', false); + $a->page['htmlhead'] .= '' . "\r\n"; + header('Link: <' . App::get_baseurl() . '/xrd/?uri=' . $uri . '>; rel="lrdd"; type="application/xrd+xml"', false); $dfrn_pages = array('request', 'confirm', 'notify', 'poll'); - foreach($dfrn_pages as $dfrn) - $a->page['htmlhead'] .= "get_baseurl()."/dfrn_{$dfrn}/{$which}\" />\r\n"; - $a->page['htmlhead'] .= "get_baseurl()."/poco/{$which}\" />\r\n"; + foreach ($dfrn_pages as $dfrn) { + $a->page['htmlhead'] .= "\r\n"; + } + $a->page['htmlhead'] .= "\r\n"; } @@ -181,8 +182,8 @@ function profile_content(&$a, $update = 0) { $commpage = (($a->profile['page-flags'] == PAGE_COMMUNITY) ? true : false); $commvisitor = (($commpage && $remote_contact == true) ? true : false); - $a->page['aside'] .= posted_date_widget($a->get_baseurl(true) . '/profile/' . $a->profile['nickname'],$a->profile['profile_uid'],true); - $a->page['aside'] .= categories_widget($a->get_baseurl(true) . '/profile/' . $a->profile['nickname'],(x($category) ? xmlify($category) : '')); + $a->page['aside'] .= posted_date_widget(App::get_baseurl(true) . '/profile/' . $a->profile['nickname'],$a->profile['profile_uid'],true); + $a->page['aside'] .= categories_widget(App::get_baseurl(true) . '/profile/' . $a->profile['nickname'],(x($category) ? xmlify($category) : '')); if(can_write_wall($a,$a->profile['profile_uid'])) { diff --git a/mod/profile_photo.php b/mod/profile_photo.php index 20bbbbcbd4..eee15c2af2 100644 --- a/mod/profile_photo.php +++ b/mod/profile_photo.php @@ -4,7 +4,7 @@ require_once("include/Photo.php"); function profile_photo_init(&$a) { - if(! local_user()) { + if (! local_user()) { return; } @@ -15,7 +15,7 @@ function profile_photo_init(&$a) { function profile_photo_post(&$a) { - if(! local_user()) { + if (! local_user()) { notice ( t('Permission denied.') . EOL ); return; } @@ -99,15 +99,15 @@ function profile_photo_post(&$a) { ); $r = q("UPDATE `contact` SET `photo` = '%s', `thumb` = '%s', `micro` = '%s' WHERE `self` AND `uid` = %d", - dbesc($a->get_baseurl() . '/photo/' . $base_image['resource-id'] . '-4.' . $im->getExt()), - dbesc($a->get_baseurl() . '/photo/' . $base_image['resource-id'] . '-5.' . $im->getExt()), - dbesc($a->get_baseurl() . '/photo/' . $base_image['resource-id'] . '-6.' . $im->getExt()), + dbesc(App::get_baseurl() . '/photo/' . $base_image['resource-id'] . '-4.' . $im->getExt()), + dbesc(App::get_baseurl() . '/photo/' . $base_image['resource-id'] . '-5.' . $im->getExt()), + dbesc(App::get_baseurl() . '/photo/' . $base_image['resource-id'] . '-6.' . $im->getExt()), intval(local_user()) ); } else { $r = q("update profile set photo = '%s', thumb = '%s' where id = %d and uid = %d", - dbesc($a->get_baseurl() . '/photo/' . $base_image['resource-id'] . '-4.' . $im->getExt()), - dbesc($a->get_baseurl() . '/photo/' . $base_image['resource-id'] . '-5.' . $im->getExt()), + dbesc(App::get_baseurl() . '/photo/' . $base_image['resource-id'] . '-4.' . $im->getExt()), + dbesc(App::get_baseurl() . '/photo/' . $base_image['resource-id'] . '-5.' . $im->getExt()), intval($_REQUEST['profile']), intval(local_user()) ); @@ -123,9 +123,10 @@ function profile_photo_post(&$a) { info( t('Shift-reload the page or clear browser cache if the new photo does not display immediately.') . EOL); // Update global directory in background - $url = $a->get_baseurl() . '/profile/' . $a->user['nickname']; - if($url && strlen(get_config('system','directory'))) + $url = App::get_baseurl() . '/profile/' . $a->user['nickname']; + if ($url && strlen(get_config('system','directory'))) { proc_run(PRIORITY_LOW, "include/directory.php", $url); + } require_once('include/profile_update.php'); profile_change(); @@ -134,7 +135,7 @@ function profile_photo_post(&$a) { notice( t('Unable to process image') . EOL); } - goaway($a->get_baseurl() . '/profiles'); + goaway(App::get_baseurl() . '/profiles'); return; // NOTREACHED } @@ -171,7 +172,7 @@ function profile_photo_post(&$a) { if(! function_exists('profile_photo_content')) { function profile_photo_content(&$a) { - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL ); return; } @@ -200,7 +201,7 @@ function profile_photo_content(&$a) { return; } $havescale = false; - foreach($r as $rr) { + foreach ($r as $rr) { if($rr['scale'] == 5) $havescale = true; } @@ -223,10 +224,11 @@ function profile_photo_content(&$a) { // Update global directory in background $url = $_SESSION['my_url']; - if($url && strlen(get_config('system','directory'))) + if ($url && strlen(get_config('system','directory'))) { proc_run(PRIORITY_LOW, "include/directory.php", $url); + } - goaway($a->get_baseurl() . '/profiles'); + goaway(App::get_baseurl() . '/profiles'); return; // NOTREACHED } $ph = new Photo($r[0]['data'], $r[0]['type']); @@ -251,7 +253,7 @@ function profile_photo_content(&$a) { '$submit' => t('Upload'), '$profiles' => $profiles, '$form_security_token' => get_form_security_token("profile_photo"), - '$select' => sprintf('%s %s', t('or'), ($newuser) ? '' . t('skip this step') . '' : '' . t('select a photo from your photo albums') . '') + '$select' => sprintf('%s %s', t('or'), ($newuser) ? '' . t('skip this step') . '' : '' . t('select a photo from your photo albums') . '') )); return $o; @@ -264,7 +266,7 @@ function profile_photo_content(&$a) { '$filename' => $filename, '$profile' => intval($_REQUEST['profile']), '$resource' => $a->config['imagecrop'] . '-' . $a->config['imagecrop_resolution'], - '$image_url' => $a->get_baseurl() . '/photo/' . $filename, + '$image_url' => App::get_baseurl() . '/photo/' . $filename, '$title' => t('Crop Image'), '$desc' => t('Please adjust the image cropping for optimum viewing.'), '$form_security_token' => get_form_security_token("profile_photo"), diff --git a/mod/profiles.php b/mod/profiles.php index f9fde658d2..9321aacb59 100644 --- a/mod/profiles.php +++ b/mod/profiles.php @@ -6,7 +6,7 @@ function profiles_init(&$a) { nav_set_selected('profiles'); - if(! local_user()) { + if (! local_user()) { return; } @@ -15,7 +15,7 @@ function profiles_init(&$a) { intval($a->argv[2]), intval(local_user()) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { notice( t('Profile not found.') . EOL); goaway('profiles'); return; // NOTREACHED @@ -130,7 +130,7 @@ function profiles_init(&$a) { intval($a->argv[1]), intval(local_user()) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { notice( t('Profile not found.') . EOL); killme(); return; @@ -162,7 +162,7 @@ function profile_clean_keywords($keywords) { function profiles_post(&$a) { - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL); return; } @@ -502,8 +502,9 @@ function profiles_post(&$a) { // Update global directory in background $url = $_SESSION['my_url']; - if($url && strlen(get_config('system','directory'))) + if ($url && strlen(get_config('system','directory'))) { proc_run(PRIORITY_LOW, "include/directory.php", $url); + } require_once('include/profile_update.php'); profile_change(); @@ -594,14 +595,15 @@ function profile_activity($changed, $value) { $arr['deny_gid'] = $a->user['deny_gid']; $i = item_store($arr); - if($i) + if ($i) { proc_run(PRIORITY_HIGH, "include/notifier.php", "activity", $i); + } } function profiles_content(&$a) { - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL); return; } @@ -613,7 +615,7 @@ function profiles_content(&$a) { intval($a->argv[1]), intval(local_user()) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { notice( t('Profile not found.') . EOL); return; } @@ -629,11 +631,11 @@ function profiles_content(&$a) { $editselect = 'textareas'; $a->page['htmlhead'] .= replace_macros(get_markup_template('profed_head.tpl'), array( - '$baseurl' => $a->get_baseurl(true), + '$baseurl' => App::get_baseurl(true), '$editselect' => $editselect, )); $a->page['end'] .= replace_macros(get_markup_template('profed_end.tpl'), array( - '$baseurl' => $a->get_baseurl(true), + '$baseurl' => App::get_baseurl(true), '$editselect' => $editselect, )); @@ -711,7 +713,7 @@ function profiles_content(&$a) { '$lbl_ex2' => t('Example: fishing photography software'), '$disabled' => (($is_default) ? 'onclick="return false;" style="color: #BBBBFF;"' : ''), - '$baseurl' => $a->get_baseurl(true), + '$baseurl' => App::get_baseurl(true), '$profile_id' => $r[0]['id'], '$profile_name' => array('profile_name', t('Profile Name:'), $r[0]['profile-name'], t('Required'), '*'), '$is_default' => $is_default, @@ -778,24 +780,26 @@ function profiles_content(&$a) { if (dbm::is_result($r)) { $tpl = get_markup_template('profile_entry.tpl'); - foreach($r as $rr) { + + $profiles = ''; + foreach ($r as $rr) { $profiles .= replace_macros($tpl, array( - '$photo' => $a->remove_baseurl($rr['thumb']), - '$id' => $rr['id'], - '$alt' => t('Profile Image'), + '$photo' => $a->remove_baseurl($rr['thumb']), + '$id' => $rr['id'], + '$alt' => t('Profile Image'), '$profile_name' => $rr['profile-name'], - '$visible' => (($rr['is-default']) ? '' . t('visible to everybody') . '' + '$visible' => (($rr['is-default']) ? '' . t('visible to everybody') . '' : '' . t('Edit visibility') . '') )); } $tpl_header = get_markup_template('profile_listing_header.tpl'); $o .= replace_macros($tpl_header,array( - '$header' => t('Edit/Manage Profiles'), - '$chg_photo' => t('Change profile photo'), - '$cr_new' => t('Create New Profile'), + '$header' => t('Edit/Manage Profiles'), + '$chg_photo' => t('Change profile photo'), + '$cr_new' => t('Create New Profile'), '$cr_new_link' => 'profiles/new?t=' . get_form_security_token("profile_new"), - '$profiles' => $profiles + '$profiles' => $profiles )); } return $o; diff --git a/mod/profperm.php b/mod/profperm.php index 1c37f84ab2..0a4b3e9a47 100644 --- a/mod/profperm.php +++ b/mod/profperm.php @@ -2,8 +2,9 @@ function profperm_init(&$a) { - if(! local_user()) + if (! local_user()) { return; + } $which = $a->user['nickname']; $profile = $a->argv[1]; @@ -15,7 +16,7 @@ function profperm_init(&$a) { function profperm_content(&$a) { - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied') . EOL); return; } @@ -52,7 +53,7 @@ function profperm_content(&$a) { intval($a->argv[1]), intval(local_user()) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { notice( t('Invalid profile identifier.') . EOL ); return; } diff --git a/mod/proxy.php b/mod/proxy.php index 09a80f3284..8046e4e963 100644 --- a/mod/proxy.php +++ b/mod/proxy.php @@ -1,20 +1,18 @@ -define("PROXY_DEFAULT_TIME", 86400); // 1 Day +define('PROXY_DEFAULT_TIME', 86400); // 1 Day -define("PROXY_SIZE_MICRO", "micro"); -define("PROXY_SIZE_THUMB", "thumb"); -define("PROXY_SIZE_SMALL", "small"); -define("PROXY_SIZE_MEDIUM", "medium"); -define("PROXY_SIZE_LARGE", "large"); +define('PROXY_SIZE_MICRO', 'micro'); +define('PROXY_SIZE_THUMB', 'thumb'); +define('PROXY_SIZE_SMALL', 'small'); +define('PROXY_SIZE_MEDIUM', 'medium'); +define('PROXY_SIZE_LARGE', 'large'); -require_once('include/security.php'); -require_once("include/Photo.php"); - -function proxy_init() { - global $a, $_SERVER; +require_once 'include/security.php'; +require_once 'include/Photo.php'; +function proxy_init(App $a) { // Pictures are stored in one of the following ways: // 1. If a folder "proxy" exists and is writeable, then use this for caching // 2. If a cache path is defined, use this @@ -24,11 +22,12 @@ function proxy_init() { if (isset($_SERVER['HTTP_IF_MODIFIED_SINCE'])) { header('HTTP/1.1 304 Not Modified'); - header("Last-Modified: " . gmdate("D, d M Y H:i:s", time()) . " GMT"); - header('Etag: '.$_SERVER['HTTP_IF_NONE_MATCH']); - header("Expires: " . gmdate("D, d M Y H:i:s", time() + (31536000)) . " GMT"); - header("Cache-Control: max-age=31536000"); - if(function_exists('header_remove')) { + header('Last-Modified: ' . gmdate('D, d M Y H:i:s', time()) . ' GMT'); + header('Etag: ' . $_SERVER['HTTP_IF_NONE_MATCH']); + header('Expires: ' . gmdate('D, d M Y H:i:s', time() + (31536000)) . ' GMT'); + header('Cache-Control: max-age=31536000'); + + if (function_exists('header_remove')) { header_remove('Last-Modified'); header_remove('Expires'); header_remove('Cache-Control'); @@ -36,140 +35,148 @@ function proxy_init() { exit; } - if(function_exists('header_remove')) { + if (function_exists('header_remove')) { header_remove('Pragma'); header_remove('pragma'); } $thumb = false; $size = 1024; - $sizetype = ""; + $sizetype = ''; $basepath = $a->get_basepath(); // If the cache path isn't there, try to create it - if (!is_dir($basepath."/proxy")) - if (is_writable($basepath)) - mkdir($basepath."/proxy"); + if (!is_dir($basepath . '/proxy') AND is_writable($basepath)) { + mkdir($basepath . '/proxy'); + } // Checking if caching into a folder in the webroot is activated and working - $direct_cache = (is_dir($basepath."/proxy") AND is_writable($basepath."/proxy")); + $direct_cache = (is_dir($basepath . '/proxy') AND is_writable($basepath . '/proxy')); // Look for filename in the arguments - if ((isset($a->argv[1]) OR isset($a->argv[2]) OR isset($a->argv[3])) AND !isset($_REQUEST["url"])) { - if (isset($a->argv[3])) + if ((isset($a->argv[1]) OR isset($a->argv[2]) OR isset($a->argv[3])) AND !isset($_REQUEST['url'])) { + if (isset($a->argv[3])) { $url = $a->argv[3]; - elseif (isset($a->argv[2])) + } elseif (isset($a->argv[2])) { $url = $a->argv[2]; - else + } else { $url = $a->argv[1]; - - if (isset($a->argv[3]) and ($a->argv[3] == "thumb")) - $size = 200; - - // thumb, small, medium and large. - if (substr($url, -6) == ":micro") { - $size = 48; - $sizetype = ":micro"; - $url = substr($url, 0, -6); - } elseif (substr($url, -6) == ":thumb") { - $size = 80; - $sizetype = ":thumb"; - $url = substr($url, 0, -6); - } elseif (substr($url, -6) == ":small") { - $size = 175; - $url = substr($url, 0, -6); - $sizetype = ":small"; - } elseif (substr($url, -7) == ":medium") { - $size = 600; - $url = substr($url, 0, -7); - $sizetype = ":medium"; - } elseif (substr($url, -6) == ":large") { - $size = 1024; - $url = substr($url, 0, -6); - $sizetype = ":large"; } - $pos = strrpos($url, "=."); - if ($pos) - $url = substr($url, 0, $pos+1); + if (isset($a->argv[3]) AND ($a->argv[3] == 'thumb')) { + $size = 200; + } - $url = str_replace(array(".jpg", ".jpeg", ".gif", ".png"), array("","","",""), $url); + // thumb, small, medium and large. + if (substr($url, -6) == ':micro') { + $size = 48; + $sizetype = ':micro'; + $url = substr($url, 0, -6); + } elseif (substr($url, -6) == ':thumb') { + $size = 80; + $sizetype = ':thumb'; + $url = substr($url, 0, -6); + } elseif (substr($url, -6) == ':small') { + $size = 175; + $url = substr($url, 0, -6); + $sizetype = ':small'; + } elseif (substr($url, -7) == ':medium') { + $size = 600; + $url = substr($url, 0, -7); + $sizetype = ':medium'; + } elseif (substr($url, -6) == ':large') { + $size = 1024; + $url = substr($url, 0, -6); + $sizetype = ':large'; + } + + $pos = strrpos($url, '=.'); + if ($pos) { + $url = substr($url, 0, $pos + 1); + } + + $url = str_replace(array('.jpg', '.jpeg', '.gif', '.png'), array('','','',''), $url); $url = base64_decode(strtr($url, '-_', '+/'), true); - if ($url) + if ($url) { $_REQUEST['url'] = $url; - } else + } + } else { $direct_cache = false; + } if (!$direct_cache) { $urlhash = 'pic:' . sha1($_REQUEST['url']); - $cachefile = get_cachefile(hash("md5", $_REQUEST['url'])); - if ($cachefile != '') { - if (file_exists($cachefile)) { - $img_str = file_get_contents($cachefile); - $mime = image_type_to_mime_type(exif_imagetype($cachefile)); + $cachefile = get_cachefile(hash('md5', $_REQUEST['url'])); + if ($cachefile != '' AND file_exists($cachefile)) { + $img_str = file_get_contents($cachefile); + $mime = image_type_to_mime_type(exif_imagetype($cachefile)); - header("Content-type: $mime"); - header("Last-Modified: " . gmdate("D, d M Y H:i:s", time()) . " GMT"); - header('Etag: "'.md5($img_str).'"'); - header("Expires: " . gmdate("D, d M Y H:i:s", time() + (31536000)) . " GMT"); - header("Cache-Control: max-age=31536000"); + header('Content-type: ' . $mime); + header('Last-Modified: ' . gmdate('D, d M Y H:i:s', time()) . ' GMT'); + header('Etag: "' . md5($img_str) . '"'); + header('Expires: ' . gmdate('D, d M Y H:i:s', time() + (31536000)) . ' GMT'); + header('Cache-Control: max-age=31536000'); - // reduce quality - if it isn't a GIF - if ($mime != "image/gif") { - $img = new Photo($img_str, $mime); - if($img->is_valid()) { - $img_str = $img->imageString(); - } + // reduce quality - if it isn't a GIF + if ($mime != 'image/gif') { + $img = new Photo($img_str, $mime); + if ($img->is_valid()) { + $img_str = $img->imageString(); } - - echo $img_str; - killme(); } + + echo $img_str; + killme(); } - } else - $cachefile = ""; + } else { + $cachefile = ''; + } $valid = true; + $r = array(); - if (!$direct_cache AND ($cachefile == "")) { + if (!$direct_cache AND ($cachefile == '')) { $r = qu("SELECT * FROM `photo` WHERE `resource-id` = '%s' LIMIT 1", $urlhash); if (dbm::is_result($r)) { - $img_str = $r[0]['data']; - $mime = $r[0]["desc"]; - if ($mime == "") $mime = "image/jpeg"; + $img_str = $r[0]['data']; + $mime = $r[0]['desc']; + if ($mime == '') { + $mime = 'image/jpeg'; + } } - } else - $r = array(); + } if (!dbm::is_result($r)) { // It shouldn't happen but it does - spaces in URL - $_REQUEST['url'] = str_replace(" ", "+", $_REQUEST['url']); + $_REQUEST['url'] = str_replace(' ', '+', $_REQUEST['url']); $redirects = 0; - $img_str = fetch_url($_REQUEST['url'],true, $redirects, 10); + $img_str = fetch_url($_REQUEST['url'], true, $redirects, 10); - $tempfile = tempnam(get_temppath(), "cache"); + $tempfile = tempnam(get_temppath(), 'cache'); file_put_contents($tempfile, $img_str); $mime = image_type_to_mime_type(exif_imagetype($tempfile)); unlink($tempfile); // If there is an error then return a blank image - if ((substr($a->get_curl_code(), 0, 1) == "4") or (!$img_str)) { - $img_str = file_get_contents("images/blank.png"); - $mime = "image/png"; - $cachefile = ""; // Clear the cachefile so that the dummy isn't stored + if ((substr($a->get_curl_code(), 0, 1) == '4') OR (!$img_str)) { + $img_str = file_get_contents('images/blank.png'); + $mime = 'image/png'; + $cachefile = ''; // Clear the cachefile so that the dummy isn't stored $valid = false; - $img = new Photo($img_str, "image/png"); - if($img->is_valid()) { + $img = new Photo($img_str, 'image/png'); + if ($img->is_valid()) { $img->scaleImage(10); $img_str = $img->imageString(); } - } else if (($mime != "image/jpeg") AND !$direct_cache AND ($cachefile == "")) { + } elseif ($mime != 'image/jpeg' AND !$direct_cache AND $cachefile == '') { $image = @imagecreatefromstring($img_str); - if($image === FALSE) die(); + if ($image === FALSE) { + die(); + } q("INSERT INTO `photo` ( `uid`, `contact-id`, `guid`, `resource-id`, `created`, `edited`, `filename`, `album`, `height`, `width`, `desc`, `data`, `scale`, `profile`, `allow_cid`, `allow_gid`, `deny_cid`, `deny_gid` ) @@ -177,7 +184,7 @@ function proxy_init() { 0, 0, get_guid(), dbesc($urlhash), dbesc(datetime_convert()), dbesc(datetime_convert()), - dbesc(basename(dbesc($_REQUEST["url"]))), + dbesc(basename(dbesc($_REQUEST['url']))), dbesc(''), intval(imagesy($image)), intval(imagesx($image)), @@ -190,9 +197,8 @@ function proxy_init() { } else { $img = new Photo($img_str, $mime); - if($img->is_valid()) { - if (!$direct_cache AND ($cachefile == "")) - $img->store(0, 0, $urlhash, $_REQUEST['url'], '', 100); + if ($img->is_valid() AND !$direct_cache AND ($cachefile == '')) { + $img->store(0, 0, $urlhash, $_REQUEST['url'], '', 100); } } } @@ -200,9 +206,9 @@ function proxy_init() { $img_str_orig = $img_str; // reduce quality - if it isn't a GIF - if ($mime != "image/gif") { + if ($mime != 'image/gif') { $img = new Photo($img_str, $mime); - if($img->is_valid()) { + if ($img->is_valid()) { $img->scaleImage($size); $img_str = $img->imageString(); } @@ -212,20 +218,22 @@ function proxy_init() { // advantage: real file access is really fast // Otherwise write in cachefile if ($valid AND $direct_cache) { - file_put_contents($basepath."/proxy/".proxy_url($_REQUEST['url'], true), $img_str_orig); - if ($sizetype <> '') - file_put_contents($basepath."/proxy/".proxy_url($_REQUEST['url'], true).$sizetype, $img_str); - } elseif ($cachefile != '') + file_put_contents($basepath . '/proxy/' . proxy_url($_REQUEST['url'], true), $img_str_orig); + if ($sizetype != '') { + file_put_contents($basepath . '/proxy/' . proxy_url($_REQUEST['url'], true) . $sizetype, $img_str); + } + } elseif ($cachefile != '') { file_put_contents($cachefile, $img_str_orig); + } - header("Content-type: $mime"); + header('Content-type: ' . $mime); // Only output the cache headers when the file is valid if ($valid) { - header("Last-Modified: " . gmdate("D, d M Y H:i:s", time()) . " GMT"); - header('Etag: "'.md5($img_str).'"'); - header("Expires: " . gmdate("D, d M Y H:i:s", time() + (31536000)) . " GMT"); - header("Cache-Control: max-age=31536000"); + header('Last-Modified: ' . gmdate('D, d M Y H:i:s', time()) . ' GMT'); + header('Etag: "' . md5($img_str) . '"'); + header('Expires: ' . gmdate('D, d M Y H:i:s', time() + (31536000)) . ' GMT'); + header('Cache-Control: max-age=31536000'); } echo $img_str; @@ -255,7 +263,7 @@ function proxy_url($url, $writemode = false, $size = '') { // Only continue if it isn't a local image and the isn't deactivated if (proxy_is_local_image($url)) { - $url = str_replace(normalise_link($a->get_baseurl()) . '/', $a->get_baseurl() . '/', $url); + $url = str_replace(normalise_link(App::get_baseurl()) . '/', App::get_baseurl() . '/', $url); return $url; } @@ -272,24 +280,15 @@ function proxy_url($url, $writemode = false, $size = '') { $shortpath = hash('md5', $url); $longpath = substr($shortpath, 0, 2); - if (is_dir($basepath) and $writemode) { - if (!is_dir($basepath . '/' . $longpath)) { - mkdir($basepath . '/' . $longpath); - chmod($basepath . '/' . $longpath, 0777); - } + if (is_dir($basepath) AND $writemode AND !is_dir($basepath . '/' . $longpath)) { + mkdir($basepath . '/' . $longpath); + chmod($basepath . '/' . $longpath, 0777); } $longpath .= '/' . strtr(base64_encode($url), '+/', '-_'); - // Extract the URL extension, disregarding GET parameters starting with ? - $question_mark_pos = strpos($url, '?'); - if ($question_mark_pos === false) { - $question_mark_pos = strlen($url); - } - $dot_pos = strrpos($url, '.', $question_mark_pos - strlen($url)); - if ($dot_pos !== false) { - $extension = strtolower(substr($url, $dot_pos + 1, $question_mark_pos - ($dot_pos + 1))); - } + // Extract the URL extension + $extension = pathinfo(parse_url($url, PHP_URL_PATH), PATHINFO_EXTENSION); $extensions = array('jpg', 'jpeg', 'gif', 'png'); if (in_array($extension, $extensions)) { @@ -297,7 +296,7 @@ function proxy_url($url, $writemode = false, $size = '') { $longpath .= '.' . $extension; } - $proxypath = $a->get_baseurl() . '/proxy/' . $longpath; + $proxypath = App::get_baseurl() . '/proxy/' . $longpath; if ($size != '') { $size = ':' . $size; @@ -308,7 +307,7 @@ function proxy_url($url, $writemode = false, $size = '') { if ((strlen($proxypath) > 250) AND $writemode) { return $shortpath; } elseif (strlen($proxypath) > 250) { - return $a->get_baseurl() . '/proxy/' . $shortpath . '?url=' . urlencode($url); + return App::get_baseurl() . '/proxy/' . $shortpath . '?url=' . urlencode($url); } elseif ($writemode) { return $longpath; } else { @@ -321,52 +320,58 @@ function proxy_url($url, $writemode = false, $size = '') { * @return boolean */ function proxy_is_local_image($url) { - if ($url[0] == '/') return true; + if ($url[0] == '/') { + return true; + } - if (strtolower(substr($url, 0, 5)) == "data:") return true; + if (strtolower(substr($url, 0, 5)) == 'data:') { + return true; + } // links normalised - bug #431 - $baseurl = normalise_link(get_app()->get_baseurl()); + $baseurl = normalise_link(App::get_baseurl()); $url = normalise_link($url); return (substr($url, 0, strlen($baseurl)) == $baseurl); } -function proxy_parse_query($var) { - /** - * Use this function to parse out the query array element from - * the output of parse_url(). - */ - $var = parse_url($var, PHP_URL_QUERY); - $var = html_entity_decode($var); - $var = explode('&', $var); - $arr = array(); +/** + * @brief Return the array of query string parameters from a URL + * + * @param string $url + * @return array Associative array of query string parameters + */ +function proxy_parse_query($url) { + $query = parse_url($url, PHP_URL_QUERY); + $query = html_entity_decode($query); + $query_list = explode('&', $query); + $arr = array(); - foreach($var as $val) { - $x = explode('=', $val); - $arr[$x[0]] = $x[1]; - } + foreach ($query_list as $key_value) { + $key_value_list = explode('=', $key_value); + $arr[$key_value_list[0]] = $key_value_list[1]; + } - unset($val, $x, $var); - return $arr; + unset($url, $query_list, $url); + return $arr; } function proxy_img_cb($matches) { - // if the picture seems to be from another picture cache then take the original source $queryvar = proxy_parse_query($matches[2]); - if (($queryvar['url'] != "") AND (substr($queryvar['url'], 0, 4) == "http")) + if (($queryvar['url'] != '') AND (substr($queryvar['url'], 0, 4) == 'http')) { $matches[2] = urldecode($queryvar['url']); + } // following line changed per bug #431 - if (proxy_is_local_image($matches[2])) + if (proxy_is_local_image($matches[2])) { return $matches[1] . $matches[2] . $matches[3]; + } - return $matches[1].proxy_url(htmlspecialchars_decode($matches[2])).$matches[3]; + return $matches[1] . proxy_url(htmlspecialchars_decode($matches[2])) . $matches[3]; } function proxy_parse_html($html) { - $a = get_app(); - $html = str_replace(normalise_link($a->get_baseurl())."/", $a->get_baseurl()."/", $html); + $html = str_replace(normalise_link(App::get_baseurl()) . '/', App::get_baseurl() . '/', $html); - return preg_replace_callback("/(]*src *= *[\"'])([^\"']+)([\"'][^>]*>)/siU", "proxy_img_cb", $html); + return preg_replace_callback('/(]*src *= *["\'])([^"\']+)(["\'][^>]*>)/siU', 'proxy_img_cb', $html); } diff --git a/mod/pubsub.php b/mod/pubsub.php index ddda7ec228..ea7e1000ba 100644 --- a/mod/pubsub.php +++ b/mod/pubsub.php @@ -47,7 +47,7 @@ function pubsub_init(&$a) { $r = q("SELECT * FROM `user` WHERE `nickname` = '%s' AND `account_expired` = 0 AND `account_removed` = 0 LIMIT 1", dbesc($nick) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { logger('pubsub: local account not found: ' . $nick); hub_return(false, ''); } @@ -62,7 +62,7 @@ function pubsub_init(&$a) { intval($contact_id), intval($owner['uid']) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { logger('pubsub: contact '.$contact_id.' not found.'); hub_return(false, ''); } @@ -117,8 +117,9 @@ function pubsub_post(&$a) { $r = q("SELECT * FROM `user` WHERE `nickname` = '%s' AND `account_expired` = 0 AND `account_removed` = 0 LIMIT 1", dbesc($nick) ); - if(! dbm::is_result($r)) + if (! dbm::is_result($r)) { hub_post_return(); + } $importer = $r[0]; @@ -131,7 +132,7 @@ function pubsub_post(&$a) { dbesc(NETWORK_FEED) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { logger('pubsub: no contact record for "'.$nick.' ('.$contact_id.')" - ignored. '.$xml); hub_post_return(); } diff --git a/mod/qsearch.php b/mod/qsearch.php index a440ea708f..b976e1a585 100644 --- a/mod/qsearch.php +++ b/mod/qsearch.php @@ -2,8 +2,9 @@ function qsearch_init(&$a) { - if(! local_user()) + if (! local_user()) { killme(); + } $limit = (get_config('system','qsearch_limit') ? intval(get_config('system','qsearch_limit')) : 100); diff --git a/mod/randprof.php b/mod/randprof.php index 6713a81d9e..b208eeef29 100644 --- a/mod/randprof.php +++ b/mod/randprof.php @@ -3,8 +3,12 @@ function randprof_init(&$a) { require_once('include/Contact.php'); + $x = random_profile(); - if($x) + + if ($x) { goaway(zrl($x)); - goaway($a->get_baseurl() . '/profile'); + } + + goaway(App::get_baseurl() . '/profile'); } diff --git a/mod/receive.php b/mod/receive.php index dd4e61ae4f..87fd793635 100644 --- a/mod/receive.php +++ b/mod/receive.php @@ -34,8 +34,9 @@ function receive_post(&$a) { $r = q("SELECT * FROM `user` WHERE `guid` = '%s' AND `account_expired` = 0 AND `account_removed` = 0 LIMIT 1", dbesc($guid) ); - if(! dbm::is_result($r)) + if (! dbm::is_result($r)) { http_status_exit(500); + } $importer = $r[0]; } @@ -53,7 +54,7 @@ function receive_post(&$a) { logger('mod-diaspora: message is okay', LOGGER_DEBUG); - $msg = diaspora::decode($importer,$xml); + $msg = Diaspora::decode($importer,$xml); logger('mod-diaspora: decoded', LOGGER_DEBUG); @@ -66,9 +67,9 @@ function receive_post(&$a) { $ret = 0; if($public) { - diaspora::dispatch_public($msg); + Diaspora::dispatch_public($msg); } else { - $ret = diaspora::dispatch($importer,$msg); + $ret = Diaspora::dispatch($importer,$msg); } http_status_exit(($ret) ? $ret : 200); diff --git a/mod/redir.php b/mod/redir.php index 5dc5ad3724..be5e0c5933 100644 --- a/mod/redir.php +++ b/mod/redir.php @@ -63,12 +63,14 @@ function redir_init(&$a) { . '&dfrn_version=' . DFRN_PROTOCOL_VERSION . '&type=profile&sec=' . $sec . $dest . $quiet ); } - if(local_user()) - $handle = $a->user['nickname'] . '@' . substr($a->get_baseurl(),strpos($a->get_baseurl(),'://')+3); - if(remote_user()) + if (local_user()) { + $handle = $a->user['nickname'] . '@' . substr(App::get_baseurl(),strpos(App::get_baseurl(),'://')+3); + } + if (remote_user()) { $handle = $_SESSION['handle']; + } - if($url) { + if ($url) { $url = str_replace('{zid}','&zid=' . $handle,$url); goaway($url); } diff --git a/mod/register.php b/mod/register.php index f0348ef4e5..36ca189484 100644 --- a/mod/register.php +++ b/mod/register.php @@ -64,7 +64,7 @@ function register_post(&$a) { $user = $result['user']; if($netpublish && $a->config['register_policy'] != REGISTER_APPROVE) { - $url = $a->get_baseurl() . '/profile/' . $user['nickname']; + $url = App::get_baseurl() . '/profile/' . $user['nickname']; proc_run(PRIORITY_LOW, "include/directory.php", $url); } @@ -85,7 +85,7 @@ function register_post(&$a) { $res = send_register_open_eml( $user['email'], $a->config['sitename'], - $a->get_baseurl(), + App::get_baseurl(), $user['username'], $result['password']); @@ -142,9 +142,9 @@ function register_post(&$a) { 'source_name' => $user['username'], 'source_mail' => $user['email'], 'source_nick' => $user['nickname'], - 'source_link' => $a->get_baseurl()."/admin/users/", - 'link' => $a->get_baseurl()."/admin/users/", - 'source_photo' => $a->get_baseurl() . "/photo/avatar/".$user['uid'].".jpg", + 'source_link' => App::get_baseurl()."/admin/users/", + 'link' => App::get_baseurl()."/admin/users/", + 'source_photo' => App::get_baseurl() . "/photo/avatar/".$user['uid'].".jpg", 'to_email' => $admin['email'], 'uid' => $admin['uid'], 'language' => ($admin['language']?$admin['language']:'en'), diff --git a/mod/regmod.php b/mod/regmod.php index 0120017b00..34d29a77ce 100644 --- a/mod/regmod.php +++ b/mod/regmod.php @@ -35,9 +35,10 @@ function user_allow($hash) { intval($user[0]['uid']) ); if (dbm::is_result($r) && $r[0]['net-publish']) { - $url = $a->get_baseurl() . '/profile/' . $user[0]['nickname']; - if($url && strlen(get_config('system','directory'))) + $url = App::get_baseurl() . '/profile/' . $user[0]['nickname']; + if ($url && strlen(get_config('system','directory'))) { proc_run(PRIORITY_LOW, "include/directory.php", $url); + } } push_lang($register[0]['language']); @@ -45,7 +46,7 @@ function user_allow($hash) { send_register_open_eml( $user[0]['email'], $a->config['sitename'], - $a->get_baseurl(), + App::get_baseurl(), $user[0]['username'], $register[0]['password']); @@ -100,34 +101,35 @@ function regmod_content(&$a) { $_SESSION['return_url'] = $a->cmd; - if(! local_user()) { + if (! local_user()) { info( t('Please login.') . EOL); $o .= '

    ' . login(($a->config['register_policy'] == REGISTER_CLOSED) ? 0 : 1); return $o; } - if((!is_site_admin()) || (x($_SESSION,'submanage') && intval($_SESSION['submanage']))) { + if ((!is_site_admin()) || (x($_SESSION,'submanage') && intval($_SESSION['submanage']))) { notice( t('Permission denied.') . EOL); return ''; } - if($a->argc != 3) + if ($a->argc != 3) { killme(); + } $cmd = $a->argv[1]; $hash = $a->argv[2]; - if($cmd === 'deny') { + if ($cmd === 'deny') { user_deny($hash); - goaway($a->get_baseurl()."/admin/users/"); + goaway(App::get_baseurl()."/admin/users/"); killme(); } - if($cmd === 'allow') { + if ($cmd === 'allow') { user_allow($hash); - goaway($a->get_baseurl()."/admin/users/"); + goaway(App::get_baseurl()."/admin/users/"); killme(); } } diff --git a/mod/removeme.php b/mod/removeme.php index 904606fd57..6920cbc187 100644 --- a/mod/removeme.php +++ b/mod/removeme.php @@ -2,24 +2,29 @@ function removeme_post(&$a) { - if(! local_user()) + if (! local_user()) { return; + } - if(x($_SESSION,'submanage') && intval($_SESSION['submanage'])) + if (x($_SESSION,'submanage') && intval($_SESSION['submanage'])) { return; + } - if((! x($_POST,'qxz_password')) || (! strlen(trim($_POST['qxz_password'])))) + if ((! x($_POST,'qxz_password')) || (! strlen(trim($_POST['qxz_password'])))) { return; + } - if((! x($_POST,'verify')) || (! strlen(trim($_POST['verify'])))) + if ((! x($_POST,'verify')) || (! strlen(trim($_POST['verify'])))) { return; + } - if($_POST['verify'] !== $_SESSION['remove_account_verify']) + if ($_POST['verify'] !== $_SESSION['remove_account_verify']) { return; + } $encrypted = hash('whirlpool',trim($_POST['qxz_password'])); - if((strlen($a->user['password'])) && ($encrypted === $a->user['password'])) { + if ((strlen($a->user['password'])) && ($encrypted === $a->user['password'])) { require_once('include/Contact.php'); user_remove($a->user['uid']); // NOTREACHED @@ -29,19 +34,20 @@ function removeme_post(&$a) { function removeme_content(&$a) { - if(! local_user()) + if (! local_user()) { goaway(z_root()); + } $hash = random_string(); - require_once("mod/settings.php"); - settings_init($a); + require_once("mod/settings.php"); + settings_init($a); $_SESSION['remove_account_verify'] = $hash; $tpl = get_markup_template('removeme.tpl'); $o .= replace_macros($tpl, array( - '$basedir' => $a->get_baseurl(), + '$basedir' => App::get_baseurl(), '$hash' => $hash, '$title' => t('Remove My Account'), '$desc' => t('This will completely remove your account. Once this has been done it is not recoverable.'), diff --git a/mod/repair_ostatus.php b/mod/repair_ostatus.php index 2b1224f423..ba8a071756 100755 --- a/mod/repair_ostatus.php +++ b/mod/repair_ostatus.php @@ -5,7 +5,7 @@ require_once('include/follow.php'); function repair_ostatus_content(&$a) { - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL); goaway($_SESSION['return_url']); // NOTREACHED @@ -51,7 +51,7 @@ function repair_ostatus_content(&$a) { $result = new_contact($uid,$r[0]["url"],true); - $a->page['htmlhead'] = ''; + $a->page['htmlhead'] = ''; return $o; } diff --git a/mod/rsd_xml.php b/mod/rsd_xml.php index f4984f0f0f..6257adc1ba 100644 --- a/mod/rsd_xml.php +++ b/mod/rsd_xml.php @@ -10,7 +10,7 @@ function rsd_xml_content(&$a) { Friendica http://friendica.com/ - + http://status.net/wiki/TwitterCompatibleAPI false diff --git a/mod/salmon.php b/mod/salmon.php index 78cdc09328..ff5856a946 100644 --- a/mod/salmon.php +++ b/mod/salmon.php @@ -31,8 +31,9 @@ function salmon_post(&$a) { $r = q("SELECT * FROM `user` WHERE `nickname` = '%s' AND `account_expired` = 0 AND `account_removed` = 0 LIMIT 1", dbesc($nick) ); - if(! dbm::is_result($r)) + if (! dbm::is_result($r)) { http_status_exit(500); + } $importer = $r[0]; @@ -150,7 +151,7 @@ function salmon_post(&$a) { dbesc(normalise_link($author_link)), intval($importer['uid']) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { logger('mod-salmon: Author unknown to us.'); if(get_pconfig($importer['uid'],'system','ostatus_autofriend')) { $result = new_contact($importer['uid'],$author_link); diff --git a/mod/search.php b/mod/search.php index d36cc8fcb7..3de77a85c4 100644 --- a/mod/search.php +++ b/mod/search.php @@ -17,7 +17,7 @@ function search_saved_searches() { if (dbm::is_result($r)) { $saved = array(); - foreach($r as $rr) { + foreach ($r as $rr) { $saved[] = array( 'id' => $rr['id'], 'term' => $rr['term'], @@ -53,7 +53,7 @@ function search_init(&$a) { intval(local_user()), dbesc($search) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { q("INSERT INTO `search` (`uid`,`term`) VALUES ( %d, '%s')", intval(local_user()), dbesc($search) @@ -219,7 +219,7 @@ function search_content(&$a) { intval($a->pager['start']), intval($a->pager['itemspage'])); } - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { info( t('No results.') . EOL); return $o; } diff --git a/mod/settings.php b/mod/settings.php index a9521db221..298b5025cd 100644 --- a/mod/settings.php +++ b/mod/settings.php @@ -18,7 +18,7 @@ function get_theme_config_file($theme){ function settings_init(&$a) { - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL ); return; } @@ -118,31 +118,33 @@ function settings_init(&$a) { function settings_post(&$a) { - if(! local_user()) + if (! local_user()) { return; + } - if(x($_SESSION,'submanage') && intval($_SESSION['submanage'])) + if (x($_SESSION,'submanage') && intval($_SESSION['submanage'])) { return; + } - if(count($a->user) && x($a->user,'uid') && $a->user['uid'] != local_user()) { + if (count($a->user) && x($a->user,'uid') && $a->user['uid'] != local_user()) { notice( t('Permission denied.') . EOL); return; } $old_page_flags = $a->user['page-flags']; - if(($a->argc > 1) && ($a->argv[1] === 'oauth') && x($_POST,'remove')){ + if (($a->argc > 1) && ($a->argv[1] === 'oauth') && x($_POST,'remove')) { check_form_security_token_redirectOnErr('/settings/oauth', 'settings_oauth'); $key = $_POST['remove']; q("DELETE FROM tokens WHERE id='%s' AND uid=%d", dbesc($key), local_user()); - goaway($a->get_baseurl(true)."/settings/oauth/"); + goaway(App::get_baseurl(true)."/settings/oauth/"); return; } - if(($a->argc > 2) && ($a->argv[1] === 'oauth') && ($a->argv[2] === 'edit'||($a->argv[2] === 'add')) && x($_POST,'submit')) { + if (($a->argc > 2) && ($a->argv[1] === 'oauth') && ($a->argv[2] === 'edit'||($a->argv[2] === 'add')) && x($_POST,'submit')) { check_form_security_token_redirectOnErr('/settings/oauth', 'settings_oauth'); @@ -183,7 +185,7 @@ function settings_post(&$a) { local_user()); } } - goaway($a->get_baseurl(true)."/settings/oauth/"); + goaway(App::get_baseurl(true)."/settings/oauth/"); return; } @@ -225,7 +227,7 @@ function settings_post(&$a) { $r = q("SELECT * FROM `mailacct` WHERE `uid` = %d LIMIT 1", intval(local_user()) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { q("INSERT INTO `mailacct` (`uid`) VALUES (%d)", intval(local_user()) ); @@ -625,11 +627,12 @@ function settings_post(&$a) { ); } - if(($old_visibility != $net_publish) || ($page_flags != $old_page_flags)) { + if (($old_visibility != $net_publish) || ($page_flags != $old_page_flags)) { // Update global directory in background $url = $_SESSION['my_url']; - if($url && strlen(get_config('system','directory'))) + if ($url && strlen(get_config('system','directory'))) { proc_run(PRIORITY_LOW, "include/directory.php", $url); + } } require_once('include/profile_update.php'); @@ -639,10 +642,10 @@ function settings_post(&$a) { update_gcontact_for_user(local_user()); //$_SESSION['theme'] = $theme; - if($email_changed && $a->config['register_policy'] == REGISTER_VERIFY) { + if ($email_changed && $a->config['register_policy'] == REGISTER_VERIFY) { - // FIXME - set to un-verified, blocked and redirect to logout - // Why? Are we verifying people or email addresses? + /// @TODO set to un-verified, blocked and redirect to logout + /// @TODO Why? Are we verifying people or email addresses? } @@ -656,21 +659,21 @@ function settings_content(&$a) { $o = ''; nav_set_selected('settings'); - if(! local_user()) { + if (! local_user()) { #notice( t('Permission denied.') . EOL ); return; } - if(x($_SESSION,'submanage') && intval($_SESSION['submanage'])) { + if (x($_SESSION,'submanage') && intval($_SESSION['submanage'])) { notice( t('Permission denied.') . EOL ); return; } - if(($a->argc > 1) && ($a->argv[1] === 'oauth')) { + if (($a->argc > 1) && ($a->argv[1] === 'oauth')) { - if(($a->argc > 2) && ($a->argv[2] === 'add')) { + if (($a->argc > 2) && ($a->argv[2] === 'add')) { $tpl = get_markup_template("settings_oauth_edit.tpl"); $o .= replace_macros($tpl, array( '$form_security_token' => get_form_security_token("settings_oauth"), @@ -686,7 +689,7 @@ function settings_content(&$a) { return $o; } - if(($a->argc > 3) && ($a->argv[2] === 'edit')) { + if (($a->argc > 3) && ($a->argv[2] === 'edit')) { $r = q("SELECT * FROM clients WHERE client_id='%s' AND uid=%d", dbesc($a->argv[3]), local_user()); @@ -718,11 +721,11 @@ function settings_content(&$a) { $r = q("DELETE FROM clients WHERE client_id='%s' AND uid=%d", dbesc($a->argv[3]), local_user()); - goaway($a->get_baseurl(true)."/settings/oauth/"); + goaway(App::get_baseurl(true)."/settings/oauth/"); return; } - + /// @TODO validate result with dbm::is_result() $r = q("SELECT clients.*, tokens.id as oauth_token, (clients.uid=%d) AS my FROM clients LEFT JOIN tokens ON clients.client_id=tokens.client_id @@ -734,7 +737,7 @@ function settings_content(&$a) { $tpl = get_markup_template("settings_oauth.tpl"); $o .= replace_macros($tpl, array( '$form_security_token' => get_form_security_token("settings_oauth"), - '$baseurl' => $a->get_baseurl(true), + '$baseurl' => App::get_baseurl(true), '$title' => t('Connected Apps'), '$add' => t('Add application'), '$edit' => t('Edit'), @@ -748,12 +751,13 @@ function settings_content(&$a) { } - if(($a->argc > 1) && ($a->argv[1] === 'addon')) { + if (($a->argc > 1) && ($a->argv[1] === 'addon')) { $settings_addons = ""; $r = q("SELECT * FROM `hook` WHERE `hook` = 'plugin_settings' "); - if(! dbm::is_result($r)) + if (! dbm::is_result($r)) { $settings_addons = t('No Plugin settings configured'); + } call_hooks('plugin_settings', $settings_addons); @@ -767,14 +771,14 @@ function settings_content(&$a) { return $o; } - if(($a->argc > 1) && ($a->argv[1] === 'features')) { + if (($a->argc > 1) && ($a->argv[1] === 'features')) { $arr = array(); $features = get_features(); - foreach($features as $fname => $fdata) { + foreach ($features as $fname => $fdata) { $arr[$fname] = array(); $arr[$fname][0] = $fdata[0]; - foreach(array_slice($fdata,1) as $f) { + foreach (array_slice($fdata,1) as $f) { $arr[$fname][1][] = array('feature_' .$f[0],$f[1],((intval(feature_enabled(local_user(),$f[0]))) ? "1" : ''),$f[2],array(t('Off'),t('On'))); } } @@ -783,14 +787,14 @@ function settings_content(&$a) { $tpl = get_markup_template("settings_features.tpl"); $o .= replace_macros($tpl, array( '$form_security_token' => get_form_security_token("settings_features"), - '$title' => t('Additional Features'), - '$features' => $arr, - '$submit' => t('Save Settings'), + '$title' => t('Additional Features'), + '$features' => $arr, + '$submit' => t('Save Settings'), )); return $o; } - if(($a->argc > 1) && ($a->argv[1] === 'connectors')) { + if (($a->argc > 1) && ($a->argv[1] === 'connectors')) { $settings_connectors = ''; $settings_connectors .= '

    '. t('General Social Media Settings').'

    '; @@ -821,8 +825,10 @@ function settings_content(&$a) { $settings_connectors .= mini_group_select(local_user(), $default_group, t("Default group for OStatus contacts")); - if ($legacy_contact != "") - $a->page['htmlhead'] = ''; + /// @TODO Found to much different usage to test empty/non-empty strings (e.g. empty(), trim() == '' ) which is wanted? + if ($legacy_contact != "") { + $a->page['htmlhead'] = ''; + } $settings_connectors .= '
    '; $settings_connectors .= ''; @@ -830,7 +836,7 @@ function settings_content(&$a) { $settings_connectors .= ''.t('If you enter your old GNU Social/Statusnet account name here (in the format user@domain.tld), your contacts will be added automatically. The field will be emptied when done.').''; $settings_connectors .= '
    '; - $settings_connectors .= '

    '.t("Repair OStatus subscriptions").'

    '; + $settings_connectors .= '

    '.t("Repair OStatus subscriptions").'

    '; $settings_connectors .= '
    '; @@ -854,8 +860,7 @@ function settings_content(&$a) { $r = q("SELECT * FROM `mailacct` WHERE `uid` = %d LIMIT 1", local_user() ); - } - else { + } else { $r = null; } @@ -872,10 +877,9 @@ function settings_content(&$a) { $tpl = get_markup_template("settings_connectors.tpl"); - if(! service_class_allows(local_user(),'email_connect')) { + if (! service_class_allows(local_user(),'email_connect')) { $mail_disabled_message = upgrade_bool_message(); - } - else { + } else { $mail_disabled_message = (($mail_disabled) ? t('Email access is disabled on this site.') : ''); } @@ -913,38 +917,42 @@ function settings_content(&$a) { /* * DISPLAY SETTINGS */ - if(($a->argc > 1) && ($a->argv[1] === 'display')) { + if (($a->argc > 1) && ($a->argv[1] === 'display')) { $default_theme = get_config('system','theme'); - if(! $default_theme) + if (! $default_theme) { $default_theme = 'default'; + } $default_mobile_theme = get_config('system','mobile-theme'); - if(! $mobile_default_theme) + if (! $mobile_default_theme) { $mobile_default_theme = 'none'; + } $allowed_themes_str = get_config('system','allowed_themes'); $allowed_themes_raw = explode(',',$allowed_themes_str); $allowed_themes = array(); - if(count($allowed_themes_raw)) - foreach($allowed_themes_raw as $x) - if(strlen(trim($x)) && is_dir("view/theme/$x")) + if (count($allowed_themes_raw)) { + foreach ($allowed_themes_raw as $x) { + if (strlen(trim($x)) && is_dir("view/theme/$x")) { $allowed_themes[] = trim($x); + } + } + } $themes = array(); $mobile_themes = array("---" => t('No special theme for mobile devices')); $files = glob('view/theme/*'); /* */ - if($allowed_themes) { - foreach($allowed_themes as $th) { + if ($allowed_themes) { + foreach ($allowed_themes as $th) { $f = $th; $is_experimental = file_exists('view/theme/' . $th . '/experimental'); $unsupported = file_exists('view/theme/' . $th . '/unsupported'); $is_mobile = file_exists('view/theme/' . $th . '/mobile'); if (!$is_experimental or ($is_experimental && (get_config('experimentals','exp_themes')==1 or get_config('experimentals','exp_themes')===false))){ $theme_name = (($is_experimental) ? sprintf("%s - \x28Experimental\x29", $f) : $f); - if($is_mobile) { + if ($is_mobile) { $mobile_themes[$f]=$theme_name; - } - else { + } else { $themes[$f]=$theme_name; } } @@ -956,8 +964,9 @@ function settings_content(&$a) { $nowarn_insecure = intval(get_pconfig(local_user(), 'system', 'nowarn_insecure')); $browser_update = intval(get_pconfig(local_user(), 'system','update_interval')); - if (intval($browser_update) != -1) + if (intval($browser_update) != -1) { $browser_update = (($browser_update == 0) ? 40 : $browser_update / 1000); // default if not set: 40 seconds + } $itemspage_network = intval(get_pconfig(local_user(), 'system','itemspage_network')); $itemspage_network = (($itemspage_network > 0 && $itemspage_network < 101) ? $itemspage_network : 40); // default if not set: 40 items @@ -994,7 +1003,7 @@ function settings_content(&$a) { '$ptitle' => t('Display Settings'), '$form_security_token' => get_form_security_token("settings_display"), '$submit' => t('Save Settings'), - '$baseurl' => $a->get_baseurl(true), + '$baseurl' => App::get_baseurl(true), '$uid' => local_user(), '$theme' => array('theme', t('Display Theme:'), $theme_selected, '', $themes, true), @@ -1036,8 +1045,9 @@ function settings_content(&$a) { $p = q("SELECT * FROM `profile` WHERE `is-default` = 1 AND `uid` = %d LIMIT 1", intval(local_user()) ); - if(count($p)) + if (count($p)) { $profile = $p[0]; + } $username = $a->user['username']; $email = $a->user['email']; @@ -1084,8 +1094,9 @@ function settings_content(&$a) { // nowarn_insecure - if(! strlen($a->user['timezone'])) + if (! strlen($a->user['timezone'])) { $timezone = date_default_timezone_get(); + } // Set the account type to "Community" when the page is a community page but the account type doesn't fit // This is only happening on the first visit after the update @@ -1146,32 +1157,28 @@ function settings_content(&$a) { $noid = get_config('system','no_openid'); - if($noid) { + if ($noid) { $openid_field = false; - } - else { + } else { $openid_field = array('openid_url', t('OpenID:'),$openid, t("\x28Optional\x29 Allow this OpenID to login to this account."), "", "", "url"); } - $opt_tpl = get_markup_template("field_yesno.tpl"); if(get_config('system','publish_all')) { $profile_in_dir = ''; - } - else { + } else { $profile_in_dir = replace_macros($opt_tpl,array( '$field' => array('profile_in_directory', t('Publish your default profile in your local site directory?'), $profile['publish'], '', array(t('No'),t('Yes'))), )); } - if(strlen(get_config('system','directory'))) { + if (strlen(get_config('system','directory'))) { $profile_in_net_dir = replace_macros($opt_tpl,array( '$field' => array('profile_in_netdirectory', t('Publish your default profile in the global social directory?'), $profile['net-publish'], '', array(t('No'),t('Yes'))), )); - } - else + } else { $profile_in_net_dir = ''; - + } $hide_friends = replace_macros($opt_tpl,array( '$field' => array('hide-friends', t('Hide your contact/friend list from viewers of your default profile?'), $profile['hide-friends'], '', array(t('No'),t('Yes'))), @@ -1187,19 +1194,16 @@ function settings_content(&$a) { )); - $blocktags = replace_macros($opt_tpl,array( '$field' => array('blocktags', t('Allow friends to tag your posts?'), (intval($a->user['blocktags']) ? '0' : '1'), '', array(t('No'),t('Yes'))), )); - $suggestme = replace_macros($opt_tpl,array( '$field' => array('suggestme', t('Allow us to suggest you as a potential friend to new members?'), $suggestme, '', array(t('No'),t('Yes'))), )); - $unkmail = replace_macros($opt_tpl,array( '$field' => array('unkmail', t('Permit unknown people to send you private mail?'), $unkmail, '', array(t('No'),t('Yes'))), @@ -1208,16 +1212,16 @@ function settings_content(&$a) { $invisible = (((! $profile['publish']) && (! $profile['net-publish'])) ? true : false); - if($invisible) + if ($invisible) { info( t('Profile is not published.') . EOL ); - + } //$subdir = ((strlen($a->get_path())) ? '
    ' . t('or') . ' ' . 'profile/' . $nickname : ''); $tpl_addr = get_markup_template("settings_nick_set.tpl"); $prof_addr = replace_macros($tpl_addr,array( - '$desc' => sprintf(t("Your Identity Address is '%s' or '%s'."), $nickname.'@'.$a->get_hostname().$a->get_path(), $a->get_baseurl().'/profile/'.$nickname), + '$desc' => sprintf(t("Your Identity Address is '%s' or '%s'."), $nickname.'@'.$a->get_hostname().$a->get_path(), App::get_baseurl().'/profile/'.$nickname), '$basepath' => $a->get_hostname() )); @@ -1237,32 +1241,35 @@ function settings_content(&$a) { require_once('include/group.php'); $group_select = mini_group_select(local_user(),$a->user['def_gid']); - // Private/public post links for the non-JS ACL form $private_post = 1; - if($_REQUEST['public']) + if ($_REQUEST['public']) { $private_post = 0; + } $query_str = $a->query_string; - if(strpos($query_str, 'public=1') !== false) + if (strpos($query_str, 'public=1') !== false) { $query_str = str_replace(array('?public=1', '&public=1'), array('', ''), $query_str); + } // I think $a->query_string may never have ? in it, but I could be wrong // It looks like it's from the index.php?q=[etc] rewrite that the web // server does, which converts any ? to &, e.g. suggest&ignore=61 for suggest?ignore=61 - if(strpos($query_str, '?') === false) + if (strpos($query_str, '?') === false) { $public_post_link = '?public=1'; - else + } else { $public_post_link = '&public=1'; + } /* Installed langs */ $lang_choices = get_available_languages(); + /// @TODO Fix indending (or so) $o .= replace_macros($stpl, array( '$ptitle' => t('Account Settings'), '$submit' => t('Save Settings'), - '$baseurl' => $a->get_baseurl(true), + '$baseurl' => App::get_baseurl(true), '$uid' => local_user(), '$form_security_token' => get_form_security_token("settings"), '$nickname_block' => $prof_addr, diff --git a/mod/starred.php b/mod/starred.php index 27f924e44b..84baa82cea 100644 --- a/mod/starred.php +++ b/mod/starred.php @@ -7,24 +7,29 @@ function starred_init(&$a) { $starred = 0; - if(! local_user()) + if (! local_user()) { killme(); - if($a->argc > 1) + } + if ($a->argc > 1) { $message_id = intval($a->argv[1]); - if(! $message_id) + } + if (! $message_id) { killme(); + } - $r = q("SELECT starred FROM item WHERE uid = %d AND id = %d LIMIT 1", + $r = q("SELECT `starred` FROM `item` WHERE `uid` = %d AND `id` = %d LIMIT 1", intval(local_user()), intval($message_id) ); - if(! dbm::is_result($r)) + if (! dbm::is_result($r)) { killme(); + } - if(! intval($r[0]['starred'])) + if (! intval($r[0]['starred'])) { $starred = 1; + } - $r = q("UPDATE item SET starred = %d WHERE uid = %d and id = %d", + $r = q("UPDATE `item` SET `starred` = %d WHERE `uid` = %d AND `id` = %d", intval($starred), intval(local_user()), intval($message_id) @@ -34,12 +39,15 @@ function starred_init(&$a) { // See if we've been passed a return path to redirect to $return_path = ((x($_REQUEST,'return')) ? $_REQUEST['return'] : ''); - if($return_path) { + if ($return_path) { $rand = '_=' . time(); - if(strpos($return_path, '?')) $rand = "&$rand"; - else $rand = "?$rand"; + if (strpos($return_path, '?')) { + $rand = "&$rand"; + } else { + $rand = "?$rand"; + } - goaway($a->get_baseurl() . "/" . $return_path . $rand); + goaway(App::get_baseurl() . "/" . $return_path . $rand); } // the json doesn't really matter, it will either be 0 or 1 diff --git a/mod/subthread.php b/mod/subthread.php index b15b954742..c154187a69 100644 --- a/mod/subthread.php +++ b/mod/subthread.php @@ -41,10 +41,12 @@ function subthread_content(&$a) { intval($item['contact-id']), intval($item['uid']) ); - if(! dbm::is_result($r)) + if (! dbm::is_result($r)) { return; - if(! $r[0]['self']) + } + if (! $r[0]['self']) { $remote_owner = $r[0]; + } } // this represents the post owner on this system. @@ -56,18 +58,18 @@ function subthread_content(&$a) { if (dbm::is_result($r)) $owner = $r[0]; - if(! $owner) { + if (! $owner) { logger('like: no owner'); return; } - if(! $remote_owner) + if (! $remote_owner) $remote_owner = $owner; // This represents the person posting - if((local_user()) && (local_user() == $owner_uid)) { + if ((local_user()) && (local_user() == $owner_uid)) { $contact = $owner; } else { @@ -78,7 +80,7 @@ function subthread_content(&$a) { if (dbm::is_result($r)) $contact = $r[0]; } - if(! $contact) { + if (! $contact) { return; } @@ -86,7 +88,7 @@ function subthread_content(&$a) { $post_type = (($item['resource-id']) ? t('photo') : t('status')); $objtype = (($item['resource-id']) ? ACTIVITY_OBJ_IMAGE : ACTIVITY_OBJ_NOTE ); - $link = xmlify('' . "\n") ; + $link = xmlify('' . "\n") ; $body = $item['body']; $obj = <<< EOT @@ -102,8 +104,9 @@ function subthread_content(&$a) { EOT; $bodyverb = t('%1$s is following %2$s\'s %3$s'); - if(! isset($bodyverb)) - return; + if (! isset($bodyverb)) { + return; + } $arr = array(); @@ -127,7 +130,7 @@ EOT; $ulink = '[url=' . $contact['url'] . ']' . $contact['name'] . '[/url]'; $alink = '[url=' . $item['author-link'] . ']' . $item['author-name'] . '[/url]'; - $plink = '[url=' . $a->get_baseurl() . '/display/' . $owner['nickname'] . '/' . $item['id'] . ']' . $post_type . '[/url]'; + $plink = '[url=' . App::get_baseurl() . '/display/' . $owner['nickname'] . '/' . $item['id'] . ']' . $post_type . '[/url]'; $arr['body'] = sprintf( $bodyverb, $ulink, $alink, $plink ); $arr['verb'] = $activity; @@ -143,7 +146,7 @@ EOT; $post_id = item_store($arr); - if(! $item['visible']) { + if (! $item['visible']) { $r = q("UPDATE `item` SET `visible` = 1 WHERE `id` = %d AND `uid` = %d", intval($item['id']), intval($owner_uid) diff --git a/mod/suggest.php b/mod/suggest.php index 8f4315a841..0004128a1a 100644 --- a/mod/suggest.php +++ b/mod/suggest.php @@ -5,12 +5,13 @@ require_once('include/contact_widgets.php'); function suggest_init(&$a) { - if(! local_user()) + if (! local_user()) { return; + } - if(x($_GET,'ignore') && intval($_GET['ignore'])) { + if (x($_GET,'ignore') && intval($_GET['ignore'])) { // Check if we should do HTML-based delete confirmation - if($_REQUEST['confirm']) { + if ($_REQUEST['confirm']) { // can't take arguments in its "action" parameter // so add any arguments as hidden inputs $query = explode_querystring($a->query_string); @@ -35,7 +36,7 @@ function suggest_init(&$a) { return; } // Now check how the user responded to the confirmation query - if(!$_REQUEST['canceled']) { + if (!$_REQUEST['canceled']) { q("INSERT INTO `gcign` ( `uid`, `gcid` ) VALUES ( %d, %d ) ", intval(local_user()), intval($_GET['ignore']) @@ -54,12 +55,12 @@ function suggest_content(&$a) { require_once("mod/proxy.php"); $o = ''; - if(! local_user()) { + if (! local_user()) { notice( t('Permission denied.') . EOL); return; } - $_SESSION['return_url'] = $a->get_baseurl() . '/' . $a->cmd; + $_SESSION['return_url'] = App::get_baseurl() . '/' . $a->cmd; $a->page['aside'] .= findpeople_widget(); $a->page['aside'] .= follow_widget(); @@ -67,17 +68,17 @@ function suggest_content(&$a) { $r = suggestion_query(local_user()); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { $o .= t('No suggestions available. If this is a new site, please try again in 24 hours.'); return $o; } require_once 'include/contact_selectors.php'; - foreach($r as $rr) { + foreach ($r as $rr) { - $connlnk = $a->get_baseurl() . '/follow/?url=' . (($rr['connect']) ? $rr['connect'] : $rr['url']); - $ignlnk = $a->get_baseurl() . '/suggest?ignore=' . $rr['id']; + $connlnk = App::get_baseurl() . '/follow/?url=' . (($rr['connect']) ? $rr['connect'] : $rr['url']); + $ignlnk = App::get_baseurl() . '/suggest?ignore=' . $rr['id']; $photo_menu = array( 'profile' => array(t("View Profile"), zrl($rr["url"])), 'follow' => array(t("Connect/Follow"), $connlnk), diff --git a/mod/tagger.php b/mod/tagger.php index d6f421205c..e53bc5eaf1 100644 --- a/mod/tagger.php +++ b/mod/tagger.php @@ -63,7 +63,7 @@ function tagger_content(&$a) { $targettype = (($item['resource-id']) ? ACTIVITY_OBJ_IMAGE : ACTIVITY_OBJ_NOTE ); $link = xmlify('' . "\n") ; + . App::get_baseurl() . '/display/' . $owner['nickname'] . '/' . $item['id'] . '" />' . "\n") ; $body = xmlify($item['body']); @@ -78,7 +78,7 @@ function tagger_content(&$a) { EOT; - $tagid = $a->get_baseurl() . '/search?tag=' . $term; + $tagid = App::get_baseurl() . '/search?tag=' . $term; $objtype = ACTIVITY_OBJ_TAGTERM; $obj = <<< EOT @@ -94,10 +94,11 @@ EOT; $bodyverb = t('%1$s tagged %2$s\'s %3$s with %4$s'); - if(! isset($bodyverb)) - return; + if (! isset($bodyverb)) { + return; + } - $termlink = html_entity_decode('⌗') . '[url=' . $a->get_baseurl() . '/search?tag=' . urlencode($term) . ']'. $term . '[/url]'; + $termlink = html_entity_decode('⌗') . '[url=' . App::get_baseurl() . '/search?tag=' . urlencode($term) . ']'. $term . '[/url]'; $arr = array(); @@ -140,7 +141,7 @@ EOT; $post_id = item_store($arr); // q("UPDATE `item` set plink = '%s' where id = %d", -// dbesc($a->get_baseurl() . '/display/' . $owner_nick . '/' . $post_id), +// dbesc(App::get_baseurl() . '/display/' . $owner_nick . '/' . $post_id), // intval($post_id) // ); @@ -159,7 +160,7 @@ EOT; ); if((! $blocktags) && $t[0]['tcount']==0 ) { /*q("update item set tag = '%s' where id = %d", - dbesc($item['tag'] . (strlen($item['tag']) ? ',' : '') . '#[url=' . $a->get_baseurl() . '/search?tag=' . $term . ']'. $term . '[/url]'), + dbesc($item['tag'] . (strlen($item['tag']) ? ',' : '') . '#[url=' . App::get_baseurl() . '/search?tag=' . $term . ']'. $term . '[/url]'), intval($item['id']) );*/ @@ -168,7 +169,7 @@ EOT; $term_objtype, TERM_HASHTAG, dbesc($term), - dbesc($a->get_baseurl() . '/search?tag=' . $term), + dbesc(App::get_baseurl() . '/search?tag=' . $term), intval($owner_uid) ); } @@ -192,14 +193,14 @@ EOT; $term_objtype, TERM_HASHTAG, dbesc($term), - dbesc($a->get_baseurl() . '/search?tag=' . $term), + dbesc(App::get_baseurl() . '/search?tag=' . $term), intval($owner_uid) ); } /*if(count($x) && !$x[0]['blocktags'] && (! stristr($r[0]['tag'], ']' . $term . '['))) { q("update item set tag = '%s' where id = %d", - dbesc($r[0]['tag'] . (strlen($r[0]['tag']) ? ',' : '') . '#[url=' . $a->get_baseurl() . '/search?tag=' . $term . ']'. $term . '[/url]'), + dbesc($r[0]['tag'] . (strlen($r[0]['tag']) ? ',' : '') . '#[url=' . App::get_baseurl() . '/search?tag=' . $term . ']'. $term . '[/url]'), intval($r[0]['id']) ); }*/ diff --git a/mod/tagrm.php b/mod/tagrm.php index 57024b3c3b..7a18d65d06 100644 --- a/mod/tagrm.php +++ b/mod/tagrm.php @@ -4,12 +4,13 @@ require_once('include/bbcode.php'); function tagrm_post(&$a) { - if(! local_user()) - goaway($a->get_baseurl() . '/' . $_SESSION['photo_return']); + if (! local_user()) { + goaway(App::get_baseurl() . '/' . $_SESSION['photo_return']); + } - - if((x($_POST,'submit')) && ($_POST['submit'] === t('Cancel'))) - goaway($a->get_baseurl() . '/' . $_SESSION['photo_return']); + if ((x($_POST,'submit')) && ($_POST['submit'] === t('Cancel'))) { + goaway(App::get_baseurl() . '/' . $_SESSION['photo_return']); + } $tag = ((x($_POST,'tag')) ? hex2bin(notags(trim($_POST['tag']))) : ''); $item = ((x($_POST,'item')) ? intval($_POST['item']) : 0 ); @@ -19,12 +20,13 @@ function tagrm_post(&$a) { intval(local_user()) ); - if(! dbm::is_result($r)) - goaway($a->get_baseurl() . '/' . $_SESSION['photo_return']); + if (! dbm::is_result($r)) { + goaway(App::get_baseurl() . '/' . $_SESSION['photo_return']); + } $arr = explode(',', $r[0]['tag']); - for($x = 0; $x < count($arr); $x ++) { - if($arr[$x] === $tag) { + for ($x = 0; $x < count($arr); $x ++) { + if ($arr[$x] === $tag) { unset($arr[$x]); break; } @@ -39,7 +41,7 @@ function tagrm_post(&$a) { ); info( t('Tag removed') . EOL ); - goaway($a->get_baseurl() . '/' . $_SESSION['photo_return']); + goaway(App::get_baseurl() . '/' . $_SESSION['photo_return']); // NOTREACHED @@ -51,30 +53,31 @@ function tagrm_content(&$a) { $o = ''; - if(! local_user()) { - goaway($a->get_baseurl() . '/' . $_SESSION['photo_return']); + if (! local_user()) { + goaway(App::get_baseurl() . '/' . $_SESSION['photo_return']); // NOTREACHED } $item = (($a->argc > 1) ? intval($a->argv[1]) : 0); - if(! $item) { - goaway($a->get_baseurl() . '/' . $_SESSION['photo_return']); + if (! $item) { + goaway(App::get_baseurl() . '/' . $_SESSION['photo_return']); // NOTREACHED } - $r = q("SELECT * FROM `item` WHERE `id` = %d AND `uid` = %d LIMIT 1", intval($item), intval(local_user()) ); - if(! dbm::is_result($r)) - goaway($a->get_baseurl() . '/' . $_SESSION['photo_return']); + if (! dbm::is_result($r)) { + goaway(App::get_baseurl() . '/' . $_SESSION['photo_return']); + } $arr = explode(',', $r[0]['tag']); - if(! count($arr)) - goaway($a->get_baseurl() . '/' . $_SESSION['photo_return']); + if (! count($arr)) { + goaway(App::get_baseurl() . '/' . $_SESSION['photo_return']); + } $o .= '

    ' . t('Remove Item Tag') . '

    '; @@ -84,8 +87,7 @@ function tagrm_content(&$a) { $o .= ''; $o .= '
      '; - - foreach($arr as $x) { + foreach ($arr as $x) { $o .= '
    • ' . bbcode($x) . '
    • '; } @@ -95,5 +97,5 @@ function tagrm_content(&$a) { $o .= ''; return $o; - + } diff --git a/mod/toggle_mobile.php b/mod/toggle_mobile.php index 00991e44ca..8ef2b9fc4d 100644 --- a/mod/toggle_mobile.php +++ b/mod/toggle_mobile.php @@ -2,15 +2,17 @@ function toggle_mobile_init(&$a) { - if(isset($_GET['off'])) + if (isset($_GET['off'])) { $_SESSION['show-mobile'] = false; - else + } else { $_SESSION['show-mobile'] = true; + } - if(isset($_GET['address'])) + if (isset($_GET['address'])) { $address = $_GET['address']; - else - $address = $a->get_baseurl(); + } else { + $address = App::get_baseurl(); + } goaway($address); } diff --git a/mod/uexport.php b/mod/uexport.php index e0a0b071f6..140f19a59b 100644 --- a/mod/uexport.php +++ b/mod/uexport.php @@ -1,11 +1,12 @@ $a->get_baseurl(), + '$baseurl' => App::get_baseurl(), '$title' => t('Export personal data'), '$options' => $options )); @@ -104,7 +105,7 @@ function uexport_account($a){ $output = array( 'version' => FRIENDICA_VERSION, 'schema' => DB_UPDATE_VERSION, - 'baseurl' => $a->get_baseurl(), + 'baseurl' => App::get_baseurl(), 'user' => $user, 'contact' => $contact, 'profile' => $profile, diff --git a/mod/videos.php b/mod/videos.php index 1e03c5005a..dbfc044ea0 100644 --- a/mod/videos.php +++ b/mod/videos.php @@ -59,7 +59,7 @@ function videos_init(&$a) { if($albums_visible) { $o .= ''; @@ -87,12 +87,12 @@ function videos_init(&$a) { $tpl = get_markup_template("videos_head.tpl"); $a->page['htmlhead'] .= replace_macros($tpl,array( - '$baseurl' => $a->get_baseurl(), + '$baseurl' => App::get_baseurl(), )); $tpl = get_markup_template("videos_end.tpl"); $a->page['end'] .= replace_macros($tpl,array( - '$baseurl' => $a->get_baseurl(), + '$baseurl' => App::get_baseurl(), )); } @@ -106,13 +106,17 @@ function videos_post(&$a) { $owner_uid = $a->data['user']['uid']; - if (local_user() != $owner_uid) goaway($a->get_baseurl() . '/videos/' . $a->data['user']['nickname']); + if (local_user() != $owner_uid) { + goaway(App::get_baseurl() . '/videos/' . $a->data['user']['nickname']); + } - if(($a->argc == 2) && x($_POST,'delete') && x($_POST, 'id')) { + if (($a->argc == 2) && x($_POST,'delete') && x($_POST, 'id')) { // Check if we should do HTML-based delete confirmation if(!x($_REQUEST,'confirm')) { - if(x($_REQUEST,'canceled')) goaway($a->get_baseurl() . '/videos/' . $a->data['user']['nickname']); + if (x($_REQUEST,'canceled')) { + goaway(App::get_baseurl() . '/videos/' . $a->data['user']['nickname']); + } $drop_url = $a->query_string; $a->page['content'] = replace_macros(get_markup_template('confirm.tpl'), array( @@ -149,7 +153,7 @@ function videos_post(&$a) { dbesc($video_id), intval(local_user()) ); - #echo "
      "; var_dump($i); killme();
      +			//echo "
      "; var_dump($i); killme();
       			if(count($i)) {
       				q("UPDATE `item` SET `deleted` = 1, `edited` = '%s', `changed` = '%s' WHERE `parent-uri` = '%s' AND `uid` = %d",
       					dbesc(datetime_convert()),
      @@ -160,7 +164,7 @@ function videos_post(&$a) {
       				create_tags_from_itemuri($i[0]['uri'], local_user());
       				delete_thread_uri($i[0]['uri'], local_user());
       
      -				$url = $a->get_baseurl();
      +				$url = App::get_baseurl();
       				$drop_id = intval($i[0]['id']);
       
       				if($i[0]['visible'])
      @@ -168,11 +172,11 @@ function videos_post(&$a) {
       			}
       		}
       
      -		goaway($a->get_baseurl() . '/videos/' . $a->data['user']['nickname']);
      +		goaway(App::get_baseurl() . '/videos/' . $a->data['user']['nickname']);
       		return; // NOTREACHED
       	}
       
      -    goaway($a->get_baseurl() . '/videos/' . $a->data['user']['nickname']);
      +	goaway(App::get_baseurl() . '/videos/' . $a->data['user']['nickname']);
       
       }
       
      @@ -364,8 +368,8 @@ function videos_content(&$a) {
       
       	$videos = array();
       	if (dbm::is_result($r)) {
      -		foreach($r as $rr) {
      -			if($a->theme['template_engine'] === 'internal') {
      +		foreach ($r as $rr) {
      +			if ($a->theme['template_engine'] === 'internal') {
       				$alt_e = template_escape($rr['filename']);
       				$name_e = template_escape($rr['album']);
       			}
      @@ -376,13 +380,13 @@ function videos_content(&$a) {
       
       			$videos[] = array(
       				'id'       => $rr['id'],
      -				'link'  	=> $a->get_baseurl() . '/videos/' . $a->data['user']['nickname'] . '/video/' . $rr['resource-id'],
      -				'title' 	=> t('View Video'),
      -				'src'     	=> $a->get_baseurl() . '/attach/' . $rr['id'] . '?attachment=0',
      -				'alt'     	=> $alt_e,
      -				'mime'		=> $rr['filetype'],
      -				'album'	=> array(
      -					'link'  => $a->get_baseurl() . '/videos/' . $a->data['user']['nickname'] . '/album/' . bin2hex($rr['album']),
      +				'link'     => App::get_baseurl() . '/videos/' . $a->data['user']['nickname'] . '/video/' . $rr['resource-id'],
      +				'title'    => t('View Video'),
      +				'src'      => App::get_baseurl() . '/attach/' . $rr['id'] . '?attachment=0',
      +				'alt'      => $alt_e,
      +				'mime'     => $rr['filetype'],
      +				'album' => array(
      +					'link'  => App::get_baseurl() . '/videos/' . $a->data['user']['nickname'] . '/album/' . bin2hex($rr['album']),
       					'name'  => $name_e,
       					'alt'   => t('View Album'),
       				),
      @@ -393,11 +397,11 @@ function videos_content(&$a) {
       
       	$tpl = get_markup_template('videos_recent.tpl');
       	$o .= replace_macros($tpl, array(
      -		'$title' => t('Recent Videos'),
      -		'$can_post' => $can_post,
      -		'$upload' => array(t('Upload New Videos'), $a->get_baseurl().'/videos/'.$a->data['user']['nickname'].'/upload'),
      -		'$videos' => $videos,
      -        '$delete_url' => (($can_post)?$a->get_baseurl().'/videos/'.$a->data['user']['nickname']:False)
      +		'$title'      => t('Recent Videos'),
      +		'$can_post'   => $can_post,
      +		'$upload'     => array(t('Upload New Videos'), App::get_baseurl().'/videos/'.$a->data['user']['nickname'].'/upload'),
      +		'$videos'     => $videos,
      +		'$delete_url' => (($can_post)?App::get_baseurl().'/videos/'.$a->data['user']['nickname']:False)
       	));
       
       
      diff --git a/mod/viewcontacts.php b/mod/viewcontacts.php
      index c9f465676c..ffb7154423 100644
      --- a/mod/viewcontacts.php
      +++ b/mod/viewcontacts.php
      @@ -16,8 +16,9 @@ function viewcontacts_init(&$a) {
       			dbesc($nick)
       		);
       
      -		if(! dbm::is_result($r))
      +		if (! dbm::is_result($r)) {
       			return;
      +		}
       
       		$a->data['user'] = $r[0];
       		$a->profile_uid = $r[0]['uid'];
      @@ -75,9 +76,11 @@ function viewcontacts_content(&$a) {
       
       	$contacts = array();
       
      -	foreach($r as $rr) {
      -		if($rr['self'])
      +	foreach ($r as $rr) {
      +		/// @TODO This triggers an E_NOTICE if 'self' is not there
      +		if ($rr['self']) {
       			continue;
      +		}
       
       		$url = $rr['url'];
       
      diff --git a/mod/viewsrc.php b/mod/viewsrc.php
      index 904b144250..94ed9b5dc2 100644
      --- a/mod/viewsrc.php
      +++ b/mod/viewsrc.php
      @@ -3,7 +3,7 @@
       
       function viewsrc_content(&$a) {
       
      -	if(! local_user()) {
      +	if (! local_user()) {
       		notice( t('Access denied.') . EOL);
       		return;
       	}
      diff --git a/mod/wall_attach.php b/mod/wall_attach.php
      index 80fc1c6e79..525d3509c1 100644
      --- a/mod/wall_attach.php
      +++ b/mod/wall_attach.php
      @@ -12,7 +12,7 @@ function wall_attach_post(&$a) {
       		$r = q("SELECT `user`.*, `contact`.`id` FROM `user` LEFT JOIN `contact` on `user`.`uid` = `contact`.`uid`  WHERE `user`.`nickname` = '%s' AND `user`.`blocked` = 0 and `contact`.`self` = 1 LIMIT 1",
       			dbesc($nick)
       		);
      -		if(! dbm::is_result($r)){
      +		if (! dbm::is_result($r)) {
       			if ($r_json) {
       				echo json_encode(array('error'=>t('Invalid request.')));
       				killme();
      @@ -168,7 +168,7 @@ function wall_attach_post(&$a) {
       		dbesc($hash)
       	);
       
      -	if(! dbm::is_result($r)) {
      +	if (! dbm::is_result($r)) {
       		$msg = t('File upload failed.');
       		if ($r_json) {
       			echo json_encode(array('error'=>$msg));
      diff --git a/mod/wall_upload.php b/mod/wall_upload.php
      index 21d9bf49cb..eb2a92323a 100644
      --- a/mod/wall_upload.php
      +++ b/mod/wall_upload.php
      @@ -15,7 +15,7 @@ function wall_upload_post(&$a, $desktopmode = true) {
       				dbesc($nick)
       			);
       
      -			if(! dbm::is_result($r)){
      +			if (! dbm::is_result($r)) {
       				if ($r_json) {
       					echo json_encode(array('error'=>t('Invalid request.')));
       					killme();
      @@ -260,9 +260,9 @@ function wall_upload_post(&$a, $desktopmode = true) {
       		$picture["width"] = $r[0]["width"];
       		$picture["height"] = $r[0]["height"];
       		$picture["type"] = $r[0]["type"];
      -		$picture["albumpage"] = $a->get_baseurl().'/photos/'.$page_owner_nick.'/image/'.$hash;
      -		$picture["picture"] = $a->get_baseurl()."/photo/{$hash}-0.".$ph->getExt();
      -		$picture["preview"] = $a->get_baseurl()."/photo/{$hash}-{$smallest}.".$ph->getExt();
      +		$picture["albumpage"] = App::get_baseurl().'/photos/'.$page_owner_nick.'/image/'.$hash;
      +		$picture["picture"] = App::get_baseurl()."/photo/{$hash}-0.".$ph->getExt();
      +		$picture["preview"] = App::get_baseurl()."/photo/{$hash}-{$smallest}.".$ph->getExt();
       
       		if ($r_json) {
       			echo json_encode(array('picture'=>$picture));
      @@ -282,14 +282,14 @@ function wall_upload_post(&$a, $desktopmode = true) {
       //if we get the signal then return the image url info in BBCODE, otherwise this outputs the info and bails (for the ajax image uploader on wall post)
       	if ($_REQUEST['hush']!='yeah') {
       		if(local_user() && (! feature_enabled(local_user(),'richtext') || x($_REQUEST['nomce'])) ) {
      -			echo  "\n\n" . '[url=' . $a->get_baseurl() . '/photos/' . $page_owner_nick . '/image/' . $hash . '][img]' . $a->get_baseurl() . "/photo/{$hash}-{$smallest}.".$ph->getExt()."[/img][/url]\n\n";
      +			echo  "\n\n" . '[url=' . App::get_baseurl() . '/photos/' . $page_owner_nick . '/image/' . $hash . '][img]' . App::get_baseurl() . "/photo/{$hash}-{$smallest}.".$ph->getExt()."[/img][/url]\n\n";
       		}
       		else {
      -			echo  '

      getExt()."\" alt=\"$basename\" />

      "; + echo '

      getExt()."\" alt=\"$basename\" />

      "; } } else { - $m = '[url='.$a->get_baseurl().'/photos/'.$page_owner_nick.'/image/'.$hash.'][img]'.$a->get_baseurl()."/photo/{$hash}-{$smallest}.".$ph->getExt()."[/img][/url]"; + $m = '[url='.App::get_baseurl().'/photos/'.$page_owner_nick.'/image/'.$hash.'][img]'.App::get_baseurl()."/photo/{$hash}-{$smallest}.".$ph->getExt()."[/img][/url]"; return($m); } /* mod Waitman Gobble NO WARRANTY */ diff --git a/mod/wallmessage.php b/mod/wallmessage.php index 03a0b7a16f..afe25cbe8b 100644 --- a/mod/wallmessage.php +++ b/mod/wallmessage.php @@ -22,7 +22,7 @@ function wallmessage_post(&$a) { dbesc($recipient) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { logger('wallmessage: no recipient'); return; } @@ -91,7 +91,7 @@ function wallmessage_content(&$a) { dbesc($recipient) ); - if(! dbm::is_result($r)) { + if (! dbm::is_result($r)) { notice( t('No recipient.') . EOL); logger('wallmessage: no recipient'); return; diff --git a/mod/xrd.php b/mod/xrd.php index 1250b0812c..e4641f5a35 100644 --- a/mod/xrd.php +++ b/mod/xrd.php @@ -21,8 +21,9 @@ function xrd_init(&$a) { $r = q("SELECT * FROM `user` WHERE `nickname` = '%s' LIMIT 1", dbesc($name) ); - if(! dbm::is_result($r)) + if (! dbm::is_result($r)) { killme(); + } $salmon_key = salmon_key($r[0]['spubkey']); @@ -31,22 +32,24 @@ function xrd_init(&$a) { $tpl = get_markup_template('xrd_diaspora.tpl'); $dspr = replace_macros($tpl,array( - '$baseurl' => $a->get_baseurl(), + '$baseurl' => App::get_baseurl(), '$dspr_guid' => $r[0]['guid'], '$dspr_key' => base64_encode(pemtorsa($r[0]['pubkey'])) )); $tpl = get_markup_template('xrd_person.tpl'); - $profile_url = $a->get_baseurl().'/profile/'.$r[0]['nickname']; + $profile_url = App::get_baseurl().'/profile/'.$r[0]['nickname']; - if ($acct) + if ($acct) { $alias = $profile_url; + } else { $alias = 'acct:'.$r[0]['nickname'].'@'.$a->get_hostname(); - if ($a->get_path()) + if ($a->get_path()) { $alias .= '/'.$a->get_path(); + } } $o = replace_macros($tpl, array( @@ -54,17 +57,17 @@ function xrd_init(&$a) { '$accturi' => $uri, '$alias' => $alias, '$profile_url' => $profile_url, - '$hcard_url' => $a->get_baseurl() . '/hcard/' . $r[0]['nickname'], - '$atom' => $a->get_baseurl() . '/dfrn_poll/' . $r[0]['nickname'], - '$zot_post' => $a->get_baseurl() . '/post/' . $r[0]['nickname'], - '$poco_url' => $a->get_baseurl() . '/poco/' . $r[0]['nickname'], - '$photo' => $a->get_baseurl() . '/photo/profile/' . $r[0]['uid'] . '.jpg', + '$hcard_url' => App::get_baseurl() . '/hcard/' . $r[0]['nickname'], + '$atom' => App::get_baseurl() . '/dfrn_poll/' . $r[0]['nickname'], + '$zot_post' => App::get_baseurl() . '/post/' . $r[0]['nickname'], + '$poco_url' => App::get_baseurl() . '/poco/' . $r[0]['nickname'], + '$photo' => App::get_baseurl() . '/photo/profile/' . $r[0]['uid'] . '.jpg', '$dspr' => $dspr, - '$salmon' => $a->get_baseurl() . '/salmon/' . $r[0]['nickname'], - '$salmen' => $a->get_baseurl() . '/salmon/' . $r[0]['nickname'] . '/mention', - '$subscribe' => $a->get_baseurl() . '/follow?url={uri}', + '$salmon' => App::get_baseurl() . '/salmon/' . $r[0]['nickname'], + '$salmen' => App::get_baseurl() . '/salmon/' . $r[0]['nickname'] . '/mention', + '$subscribe' => App::get_baseurl() . '/follow?url={uri}', '$modexp' => 'data:application/magic-public-key,' . $salmon_key, - '$bigkey' => salmon_key($r[0]['pubkey']) + '$bigkey' => salmon_key($r[0]['pubkey']), )); diff --git a/object/Item.php b/object/Item.php index 45d2dba3ed..1c6eaf5f94 100644 --- a/object/Item.php +++ b/object/Item.php @@ -52,21 +52,22 @@ class Item extends BaseObject { $ssl_state = ((local_user()) ? true : false); $this->redirect_url = 'redir/' . $this->get_data_value('cid') ; - if(get_config('system','thread_allow') && $a->theme_thread_allow && !$this->is_toplevel()) + if (get_config('system','thread_allow') && $a->theme_thread_allow && !$this->is_toplevel()) { $this->threaded = true; + } // Prepare the children - if(count($data['children'])) { - foreach($data['children'] as $item) { + if (count($data['children'])) { + foreach ($data['children'] as $item) { /* * Only add will be displayed */ - if($item['network'] === NETWORK_MAIL && local_user() != $item['uid']) { - continue; - } - if(! visible_activity($item)) { + if ($item['network'] === NETWORK_MAIL && local_user() != $item['uid']) { + continue; + } elseif (! visible_activity($item)) { continue; } + $item['pagedrop'] = $data['pagedrop']; $child = new Item($item); $this->add_child($child); @@ -91,11 +92,11 @@ class Item extends BaseObject { $item = $this->get_data(); $edited = false; if (strcmp($item['created'], $item['edited'])<>0) { - $edited = array( - 'label' => t('This entry was edited'), - 'date' => datetime_convert('UTC', date_default_timezone_get(), $item['edited'], 'r'), - 'relative' => relative_date($item['edited']) - ); + $edited = array( + 'label' => t('This entry was edited'), + 'date' => datetime_convert('UTC', date_default_timezone_get(), $item['edited'], 'r'), + 'relative' => relative_date($item['edited']) + ); } $commentww = ''; $sparkle = ''; @@ -111,59 +112,68 @@ class Item extends BaseObject { $conv = $this->get_conversation(); - $lock = ((($item['private'] == 1) || (($item['uid'] == local_user()) && (strlen($item['allow_cid']) || strlen($item['allow_gid']) || strlen($item['deny_cid']) || strlen($item['deny_gid'])))) ? t('Private Message') : false); $shareable = ((($conv->get_profile_owner() == local_user()) && ($item['private'] != 1)) ? true : false); - if(local_user() && link_compare($a->contact['url'],$item['author-link'])) { - if ($item["event-id"] != 0) + if (local_user() && link_compare($a->contact['url'],$item['author-link'])) { + if ($item["event-id"] != 0) { $edpost = array("events/event/".$item['event-id'], t("Edit")); - else + } else { $edpost = array("editpost/".$item['id'], t("Edit")); - } else + } + } else { $edpost = false; - if(($this->get_data_value('uid') == local_user()) || $this->is_visiting()) + } + + if (($this->get_data_value('uid') == local_user()) || $this->is_visiting()) { $dropping = true; + } $drop = array( 'dropping' => $dropping, 'pagedrop' => ((feature_enabled($conv->get_profile_owner(),'multi_delete')) ? $item['pagedrop'] : ''), - 'select' => t('Select'), - 'delete' => t('Delete'), + 'select' => t('Select'), + 'delete' => t('Delete'), ); $filer = (($conv->get_profile_owner() == local_user()) ? t("save to folder") : false); $diff_author = ((link_compare($item['url'],$item['author-link'])) ? false : true); $profile_name = htmlentities(((strlen($item['author-name'])) && $diff_author) ? $item['author-name'] : $item['name']); - if($item['author-link'] && (! $item['author-name'])) + if ($item['author-link'] && (! $item['author-name'])) { $profile_name = $item['author-link']; + } $sp = false; $profile_link = best_link_url($item,$sp); - if($profile_link === 'mailbox') + if ($profile_link === 'mailbox') { $profile_link = ''; - if($sp) + } + + if ($sp) { $sparkle = ' sparkle'; - else + } else { $profile_link = zrl($profile_link); + } if (!isset($item['author-thumb']) OR ($item['author-thumb'] == "")) { $author_contact = get_contact_details_by_url($item['author-link'], $conv->get_profile_owner()); - if ($author_contact["thumb"]) + if ($author_contact["thumb"]) { $item['author-thumb'] = $author_contact["thumb"]; - else + } else { $item['author-thumb'] = $item['author-avatar']; + } } if (!isset($item['owner-thumb']) OR ($item['owner-thumb'] == "")) { $owner_contact = get_contact_details_by_url($item['owner-link'], $conv->get_profile_owner()); - if ($owner_contact["thumb"]) + if ($owner_contact["thumb"]) { $item['owner-thumb'] = $owner_contact["thumb"]; - else + } else { $item['owner-thumb'] = $item['owner-avatar']; + } } $locate = array('location' => $item['location'], 'coord' => $item['coord'], 'html' => ''); @@ -190,13 +200,14 @@ class Item extends BaseObject { // process action responses - e.g. like/dislike/attend/agree/whatever $response_verbs = array('like'); - if(feature_enabled($conv->get_profile_owner(),'dislike')) + if (feature_enabled($conv->get_profile_owner(),'dislike')) { $response_verbs[] = 'dislike'; - if($item['object-type'] === ACTIVITY_OBJ_EVENT) { + } + if ($item['object-type'] === ACTIVITY_OBJ_EVENT) { $response_verbs[] = 'attendyes'; $response_verbs[] = 'attendno'; $response_verbs[] = 'attendmaybe'; - if($conv->is_writable()) { + if ($conv->is_writable()) { $isevent = true; $attend = array( t('I will attend'), t('I will not attend'), t('I might attend')); } @@ -205,8 +216,7 @@ class Item extends BaseObject { $responses = get_responses($conv_responses,$response_verbs,$this,$item); foreach ($response_verbs as $value=>$verbs) { - $responses[$verbs][output] = ((x($conv_responses[$verbs],$item['uri'])) ? format_like($conv_responses[$verbs][$item['uri']],$conv_responses[$verbs][$item['uri'] . '-l'],$verbs,$item['uri']) : ''); - + $responses[$verbs]['output'] = ((x($conv_responses[$verbs],$item['uri'])) ? format_like($conv_responses[$verbs][$item['uri']],$conv_responses[$verbs][$item['uri'] . '-l'],$verbs,$item['uri']) : ''); } /* @@ -216,20 +226,21 @@ class Item extends BaseObject { */ $this->check_wall_to_wall(); - if($this->is_wall_to_wall() && ($this->get_owner_url() == $this->get_redirect_url())) + if ($this->is_wall_to_wall() && ($this->get_owner_url() == $this->get_redirect_url())) { $osparkle = ' sparkle'; + } - if($this->is_toplevel()) { - if($conv->get_profile_owner() == local_user()) { + if ($this->is_toplevel()) { + if ($conv->get_profile_owner() == local_user()) { $isstarred = (($item['starred']) ? "starred" : "unstarred"); $star = array( - 'do' => t("add star"), - 'undo' => t("remove star"), - 'toggle' => t("toggle star status"), - 'classdo' => (($item['starred']) ? "hidden" : ""), + 'do' => t("add star"), + 'undo' => t("remove star"), + 'toggle' => t("toggle star status"), + 'classdo' => (($item['starred']) ? "hidden" : ""), 'classundo' => (($item['starred']) ? "" : "hidden"), - 'starred' => t('starred'), + 'starred' => t('starred'), ); $r = q("SELECT `ignored` FROM `thread` WHERE `uid` = %d AND `iid` = %d LIMIT 1", intval($item['uid']), @@ -237,19 +248,19 @@ class Item extends BaseObject { ); if (dbm::is_result($r)) { $ignore = array( - 'do' => t("ignore thread"), - 'undo' => t("unignore thread"), - 'toggle' => t("toggle ignore status"), - 'classdo' => (($r[0]['ignored']) ? "hidden" : ""), + 'do' => t("ignore thread"), + 'undo' => t("unignore thread"), + 'toggle' => t("toggle ignore status"), + 'classdo' => (($r[0]['ignored']) ? "hidden" : ""), 'classundo' => (($r[0]['ignored']) ? "" : "hidden"), - 'ignored' => t('ignored'), + 'ignored' => t('ignored'), ); } $tagger = ''; if(feature_enabled($conv->get_profile_owner(),'commtag')) { $tagger = array( - 'add' => t("add tag"), + 'add' => t("add tag"), 'class' => "", ); } @@ -258,17 +269,19 @@ class Item extends BaseObject { $indent = 'comment'; } - if($conv->is_writable()) { + if ($conv->is_writable()) { $buttons = array( 'like' => array( t("I like this \x28toggle\x29"), t("like")), 'dislike' => ((feature_enabled($conv->get_profile_owner(),'dislike')) ? array( t("I don't like this \x28toggle\x29"), t("dislike")) : ''), ); - if ($shareable) $buttons['share'] = array( t('Share this'), t('share')); + if ($shareable) { + $buttons['share'] = array( t('Share this'), t('share')); + } } $comment = $this->get_comment_box($indent); - if(strcmp(datetime_convert('UTC','UTC',$item['created']),datetime_convert('UTC','UTC','now - 12 hours')) > 0){ + if (strcmp(datetime_convert('UTC','UTC',$item['created']),datetime_convert('UTC','UTC','now - 12 hours')) > 0){ $shiny = 'shiny'; } @@ -290,8 +303,9 @@ class Item extends BaseObject { foreach ($languages as $language) { $langdata = explode(";", $language); - if ($langstr != "") + if ($langstr != "") { $langstr .= ", "; + } //$langstr .= $langdata[0]." (".round($langdata[1]*100, 1)."%)"; $langstr .= round($langdata[1]*100, 1)."% ".$langdata[0]; @@ -303,20 +317,19 @@ class Item extends BaseObject { list($categories, $folders) = get_cats_and_terms($item); - if($a->theme['template_engine'] === 'internal') { - $body_e = template_escape($body); - $text_e = strip_tags(template_escape($body)); - $name_e = template_escape($profile_name); - $title_e = template_escape($item['title']); - $location_e = template_escape($location); + if ($a->theme['template_engine'] === 'internal') { + $body_e = template_escape($body); + $text_e = strip_tags(template_escape($body)); + $name_e = template_escape($profile_name); + $title_e = template_escape($item['title']); + $location_e = template_escape($location); $owner_name_e = template_escape($this->get_owner_name()); - } - else { - $body_e = $body; - $text_e = strip_tags($body); - $name_e = $profile_name; - $title_e = $item['title']; - $location_e = $location; + } else { + $body_e = $body; + $text_e = strip_tags($body); + $name_e = $profile_name; + $title_e = $item['title']; + $location_e = $location; $owner_name_e = $this->get_owner_name(); } @@ -326,89 +339,93 @@ class Item extends BaseObject { $tagger = ''; } - if (($item["item_network"] == NETWORK_FEED) AND isset($buttons["like"])) + if (($item["item_network"] == NETWORK_FEED) AND isset($buttons["like"])) { unset($buttons["like"]); + } - if (($item["item_network"] == NETWORK_MAIL) AND isset($buttons["like"])) + if (($item["item_network"] == NETWORK_MAIL) AND isset($buttons["like"])) { unset($buttons["like"]); + } // Diaspora isn't able to do likes on comments - but red does if (($item["item_network"] == NETWORK_DIASPORA) AND ($indent == 'comment') AND - !diaspora::is_redmatrix($item["owner-link"]) AND isset($buttons["like"])) + !Diaspora::is_redmatrix($item["owner-link"]) AND isset($buttons["like"])) { unset($buttons["like"]); + } // Diaspora doesn't has multithreaded comments - if (($item["item_network"] == NETWORK_DIASPORA) AND ($indent == 'comment')) + if (($item["item_network"] == NETWORK_DIASPORA) AND ($indent == 'comment')) { unset($comment); + } // Facebook can like comments - but it isn't programmed in the connector yet. - if (($item["item_network"] == NETWORK_FACEBOOK) AND ($indent == 'comment') AND isset($buttons["like"])) + if (($item["item_network"] == NETWORK_FACEBOOK) AND ($indent == 'comment') AND isset($buttons["like"])) { unset($buttons["like"]); + } $tmp_item = array( - 'template' => $this->get_template(), - - 'type' => implode("",array_slice(explode("/",$item['verb']),-1)), - 'tags' => $item['tags'], - 'hashtags' => $item['hashtags'], - 'mentions' => $item['mentions'], - 'txt_cats' => t('Categories:'), - 'txt_folders' => t('Filed under:'), - 'has_cats' => ((count($categories)) ? 'true' : ''), - 'has_folders' => ((count($folders)) ? 'true' : ''), - 'categories' => $categories, - 'folders' => $folders, - 'body' => $body_e, - 'text' => $text_e, - 'id' => $this->get_id(), - 'guid' => urlencode($item['guid']), - 'isevent' => $isevent, - 'attend' => $attend, - 'linktitle' => sprintf( t('View %s\'s profile @ %s'), $profile_name, ((strlen($item['author-link'])) ? $item['author-link'] : $item['url'])), - 'olinktitle' => sprintf( t('View %s\'s profile @ %s'), htmlentities($this->get_owner_name()), ((strlen($item['owner-link'])) ? $item['owner-link'] : $item['url'])), - 'to' => t('to'), - 'via' => t('via'), - 'wall' => t('Wall-to-Wall'), - 'vwall' => t('via Wall-To-Wall:'), - 'profile_url' => $profile_link, + 'template' => $this->get_template(), + 'type' => implode("",array_slice(explode("/",$item['verb']),-1)), + 'tags' => $item['tags'], + 'hashtags' => $item['hashtags'], + 'mentions' => $item['mentions'], + 'txt_cats' => t('Categories:'), + 'txt_folders' => t('Filed under:'), + 'has_cats' => ((count($categories)) ? 'true' : ''), + 'has_folders' => ((count($folders)) ? 'true' : ''), + 'categories' => $categories, + 'folders' => $folders, + 'body' => $body_e, + 'text' => $text_e, + 'id' => $this->get_id(), + 'guid' => urlencode($item['guid']), + 'isevent' => $isevent, + 'attend' => $attend, + 'linktitle' => sprintf( t('View %s\'s profile @ %s'), $profile_name, ((strlen($item['author-link'])) ? $item['author-link'] : $item['url'])), + 'olinktitle' => sprintf( t('View %s\'s profile @ %s'), htmlentities($this->get_owner_name()), ((strlen($item['owner-link'])) ? $item['owner-link'] : $item['url'])), + 'to' => t('to'), + 'via' => t('via'), + 'wall' => t('Wall-to-Wall'), + 'vwall' => t('via Wall-To-Wall:'), + 'profile_url' => $profile_link, 'item_photo_menu' => item_photo_menu($item), - 'name' => $name_e, - 'thumb' => $a->remove_baseurl(proxy_url($item['author-thumb'], false, PROXY_SIZE_THUMB)), - 'osparkle' => $osparkle, - 'sparkle' => $sparkle, - 'title' => $title_e, - 'localtime' => datetime_convert('UTC', date_default_timezone_get(), $item['created'], 'r'), - 'ago' => (($item['app']) ? sprintf( t('%s from %s'),relative_date($item['created']),$item['app']) : relative_date($item['created'])), - 'app' => $item['app'], - 'created' => relative_date($item['created']), - 'lock' => $lock, - 'location' => $location_e, - 'indent' => $indent, - 'shiny' => $shiny, - 'owner_url' => $this->get_owner_url(), - 'owner_photo' => $a->remove_baseurl(proxy_url($item['owner-thumb'], false, PROXY_SIZE_THUMB)), - 'owner_name' => htmlentities($owner_name_e), - 'plink' => get_plink($item), - 'edpost' => ((feature_enabled($conv->get_profile_owner(),'edit_posts')) ? $edpost : ''), - 'isstarred' => $isstarred, - 'star' => ((feature_enabled($conv->get_profile_owner(),'star_posts')) ? $star : ''), - 'ignore' => ((feature_enabled($conv->get_profile_owner(),'ignore_posts')) ? $ignore : ''), - 'tagger' => $tagger, - 'filer' => ((feature_enabled($conv->get_profile_owner(),'filing')) ? $filer : ''), - 'drop' => $drop, - 'vote' => $buttons, - 'like' => $responses['like']['output'], - 'dislike' => $responses['dislike']['output'], - 'responses' => $responses, - 'switchcomment' => t('Comment'), - 'comment' => $comment, - 'previewing' => ($conv->is_preview() ? ' preview ' : ''), - 'wait' => t('Please wait'), - 'thread_level' => $thread_level, - 'postopts' => $langstr, - 'edited' => $edited, - 'network' => $item["item_network"], - 'network_name' => network_to_name($item['item_network'], $profile_link), + 'name' => $name_e, + 'thumb' => $a->remove_baseurl(proxy_url($item['author-thumb'], false, PROXY_SIZE_THUMB)), + 'osparkle' => $osparkle, + 'sparkle' => $sparkle, + 'title' => $title_e, + 'localtime' => datetime_convert('UTC', date_default_timezone_get(), $item['created'], 'r'), + 'ago' => (($item['app']) ? sprintf( t('%s from %s'),relative_date($item['created']),$item['app']) : relative_date($item['created'])), + 'app' => $item['app'], + 'created' => relative_date($item['created']), + 'lock' => $lock, + 'location' => $location_e, + 'indent' => $indent, + 'shiny' => $shiny, + 'owner_url' => $this->get_owner_url(), + 'owner_photo' => $a->remove_baseurl(proxy_url($item['owner-thumb'], false, PROXY_SIZE_THUMB)), + 'owner_name' => htmlentities($owner_name_e), + 'plink' => get_plink($item), + 'edpost' => ((feature_enabled($conv->get_profile_owner(),'edit_posts')) ? $edpost : ''), + 'isstarred' => $isstarred, + 'star' => ((feature_enabled($conv->get_profile_owner(),'star_posts')) ? $star : ''), + 'ignore' => ((feature_enabled($conv->get_profile_owner(),'ignore_posts')) ? $ignore : ''), + 'tagger' => $tagger, + 'filer' => ((feature_enabled($conv->get_profile_owner(),'filing')) ? $filer : ''), + 'drop' => $drop, + 'vote' => $buttons, + 'like' => $responses['like']['output'], + 'dislike' => $responses['dislike']['output'], + 'responses' => $responses, + 'switchcomment' => t('Comment'), + 'comment' => $comment, + 'previewing' => ($conv->is_preview() ? ' preview ' : ''), + 'wait' => t('Please wait'), + 'thread_level' => $thread_level, + 'postopts' => $langstr, + 'edited' => $edited, + 'network' => $item["item_network"], + 'network_name' => network_to_name($item['item_network'], $profile_link), ); $arr = array('item' => $item, 'output' => $tmp_item); @@ -419,39 +436,37 @@ class Item extends BaseObject { $result['children'] = array(); $children = $this->get_children(); $nb_children = count($children); - if($nb_children > 0) { - foreach($children as $child) { + if ($nb_children > 0) { + foreach ($children as $child) { $result['children'][] = $child->get_template_data($conv_responses, $thread_level + 1); } // Collapse - if(($nb_children > 2) || ($thread_level > 1)) { + if (($nb_children > 2) || ($thread_level > 1)) { $result['children'][0]['comment_firstcollapsed'] = true; $result['children'][0]['num_comments'] = sprintf( tt('%d comment','%d comments',$total_children),$total_children ); $result['children'][0]['hidden_comments_num'] = $total_children; $result['children'][0]['hidden_comments_text'] = tt('comment', 'comments', $total_children); $result['children'][0]['hide_text'] = t('show more'); - if($thread_level > 1) { + if ($thread_level > 1) { $result['children'][$nb_children - 1]['comment_lastcollapsed'] = true; - } - else { + } else { $result['children'][$nb_children - 3]['comment_lastcollapsed'] = true; } } } if ($this->is_toplevel()) { - $result['total_comments_num'] = "$total_children"; - $result['total_comments_text'] = tt('comment', 'comments', $total_children); + $result['total_comments_num'] = "$total_children"; + $result['total_comments_text'] = tt('comment', 'comments', $total_children); } $result['private'] = $item['private']; $result['toplevel'] = ($this->is_toplevel() ? 'toplevel_item' : ''); - if($this->is_threaded()) { + if ($this->is_threaded()) { $result['flatten'] = false; $result['threaded'] = true; - } - else { + } else { $result['flatten'] = true; $result['threaded'] = false; } @@ -470,23 +485,21 @@ class Item extends BaseObject { /** * Add a child item */ - public function add_child($item) { + public function add_child(Item $item) { $item_id = $item->get_id(); - if(!$item_id) { + if (!$item_id) { logger('[ERROR] Item::add_child : Item has no ID!!', LOGGER_DEBUG); return false; - } - if($this->get_child($item->get_id())) { + } elseif ($this->get_child($item->get_id())) { logger('[WARN] Item::add_child : Item already exists ('. $item->get_id() .').', LOGGER_DEBUG); return false; } /* * Only add what will be displayed */ - if($item->get_data_value('network') === NETWORK_MAIL && local_user() != $item->get_data_value('uid')) { + if ($item->get_data_value('network') === NETWORK_MAIL && local_user() != $item->get_data_value('uid')) { return false; - } - if(activity_match($item->get_data_value('verb'),ACTIVITY_LIKE) || activity_match($item->get_data_value('verb'),ACTIVITY_DISLIKE)) { + } elseif (activity_match($item->get_data_value('verb'),ACTIVITY_LIKE) || activity_match($item->get_data_value('verb'),ACTIVITY_DISLIKE)) { return false; } @@ -499,9 +512,10 @@ class Item extends BaseObject { * Get a child by its ID */ public function get_child($id) { - foreach($this->get_children() as $child) { - if($child->get_id() == $id) + foreach ($this->get_children() as $child) { + if ($child->get_id() == $id) { return $child; + } } return null; } @@ -538,8 +552,8 @@ class Item extends BaseObject { */ public function remove_child($item) { $id = $item->get_id(); - foreach($this->get_children() as $key => $child) { - if($child->get_id() == $id) { + foreach ($this->get_children() as $key => $child) { + if ($child->get_id() == $id) { $child->remove_parent(); unset($this->children[$key]); // Reindex the array, in order to make sure there won't be any trouble on loops using count() @@ -567,8 +581,9 @@ class Item extends BaseObject { $this->conversation = $conv; // Set it on our children too - foreach($this->get_children() as $child) + foreach ($this->get_children() as $child) { $child->set_conversation($conv); + } } /** @@ -595,7 +610,7 @@ class Item extends BaseObject { * _ false on failure */ public function get_data_value($name) { - if(!isset($this->data[$name])) { + if (!isset($this->data[$name])) { // logger('[ERROR] Item::get_data_value : Item has no value name "'. $name .'".', LOGGER_DEBUG); return false; } @@ -607,9 +622,7 @@ class Item extends BaseObject { * Set template */ private function set_template($name) { - $a = get_app(); - - if(!x($this->available_templates, $name)) { + if (!x($this->available_templates, $name)) { logger('[ERROR] Item::set_template : Template not available ("'. $name .'").', LOGGER_DEBUG); return false; } @@ -637,13 +650,14 @@ class Item extends BaseObject { private function is_writable() { $conv = $this->get_conversation(); - if($conv) { + if ($conv) { // This will allow us to comment on wall-to-wall items owned by our friends // and community forums even if somebody else wrote the post. // bug #517 - this fixes for conversation owner - if($conv->get_mode() == 'profile' && $conv->get_profile_owner() == local_user()) - return true; + if ($conv->get_mode() == 'profile' && $conv->get_profile_owner() == local_user()) { + return true; + } // this fixes for visitors return ($this->writable || ($this->is_visiting() && $conv->get_mode() == 'profile')); @@ -657,8 +671,8 @@ class Item extends BaseObject { private function count_descendants() { $children = $this->get_children(); $total = count($children); - if($total > 0) { - foreach($children as $child) { + if ($total > 0) { + foreach ($children as $child) { $total += $child->count_descendants(); } } @@ -681,7 +695,7 @@ class Item extends BaseObject { */ private function get_comment_box($indent) { $a = $this->get_app(); - if(!$this->is_toplevel() && !(get_config('system','thread_allow') && $a->theme_thread_allow)) { + if (!$this->is_toplevel() && !(get_config('system','thread_allow') && $a->theme_thread_allow)) { return ''; } @@ -689,48 +703,48 @@ class Item extends BaseObject { $conv = $this->get_conversation(); $template = get_markup_template($this->get_comment_box_template()); $ww = ''; - if( ($conv->get_mode() === 'network') && $this->is_wall_to_wall() ) + if ( ($conv->get_mode() === 'network') && $this->is_wall_to_wall() ) $ww = 'ww'; - if($conv->is_writable() && $this->is_writable()) { + if ($conv->is_writable() && $this->is_writable()) { $qc = $qcomment = null; /* * Hmmm, code depending on the presence of a particular plugin? * This should be better if done by a hook */ - if(in_array('qcomment',$a->plugins)) { + if (in_array('qcomment',$a->plugins)) { $qc = ((local_user()) ? get_pconfig(local_user(),'qcomment','words') : null); $qcomment = (($qc) ? explode("\n",$qc) : null); } $comment_box = replace_macros($template,array( '$return_path' => $a->query_string, - '$threaded' => $this->is_threaded(), -// '$jsreload' => (($conv->get_mode() === 'display') ? $_SESSION['return_url'] : ''), - '$jsreload' => '', - '$type' => (($conv->get_mode() === 'profile') ? 'wall-comment' : 'net-comment'), - '$id' => $this->get_id(), - '$parent' => $this->get_id(), - '$qcomment' => $qcomment, + '$threaded' => $this->is_threaded(), +// '$jsreload' => (($conv->get_mode() === 'display') ? $_SESSION['return_url'] : ''), + '$jsreload' => '', + '$type' => (($conv->get_mode() === 'profile') ? 'wall-comment' : 'net-comment'), + '$id' => $this->get_id(), + '$parent' => $this->get_id(), + '$qcomment' => $qcomment, '$profile_uid' => $conv->get_profile_owner(), - '$mylink' => $a->remove_baseurl($a->contact['url']), - '$mytitle' => t('This is you'), - '$myphoto' => $a->remove_baseurl($a->contact['thumb']), - '$comment' => t('Comment'), - '$submit' => t('Submit'), - '$edbold' => t('Bold'), - '$editalic' => t('Italic'), - '$eduline' => t('Underline'), - '$edquote' => t('Quote'), - '$edcode' => t('Code'), - '$edimg' => t('Image'), - '$edurl' => t('Link'), - '$edvideo' => t('Video'), - '$preview' => ((feature_enabled($conv->get_profile_owner(),'preview')) ? t('Preview') : ''), - '$indent' => $indent, - '$sourceapp' => t($a->sourcename), - '$ww' => (($conv->get_mode() === 'network') ? $ww : ''), - '$rand_num' => random_digits(12) + '$mylink' => $a->remove_baseurl($a->contact['url']), + '$mytitle' => t('This is you'), + '$myphoto' => $a->remove_baseurl($a->contact['thumb']), + '$comment' => t('Comment'), + '$submit' => t('Submit'), + '$edbold' => t('Bold'), + '$editalic' => t('Italic'), + '$eduline' => t('Underline'), + '$edquote' => t('Quote'), + '$edcode' => t('Code'), + '$edimg' => t('Image'), + '$edurl' => t('Link'), + '$edvideo' => t('Video'), + '$preview' => ((feature_enabled($conv->get_profile_owner(),'preview')) ? t('Preview') : ''), + '$indent' => $indent, + '$sourceapp' => t($a->sourcename), + '$ww' => (($conv->get_mode() === 'network') ? $ww : ''), + '$rand_num' => random_digits(12) )); } @@ -760,14 +774,13 @@ class Item extends BaseObject { $this->owner_photo = $a->page_contact['thumb']; $this->owner_name = $a->page_contact['name']; $this->wall_to_wall = true; - } - else if($this->get_data_value('owner-link')) { + } elseif($this->get_data_value('owner-link')) { $owner_linkmatch = (($this->get_data_value('owner-link')) && link_compare($this->get_data_value('owner-link'),$this->get_data_value('author-link'))); $alias_linkmatch = (($this->get_data_value('alias')) && link_compare($this->get_data_value('alias'),$this->get_data_value('author-link'))); $owner_namematch = (($this->get_data_value('owner-name')) && $this->get_data_value('owner-name') == $this->get_data_value('author-name')); - if((! $owner_linkmatch) && (! $alias_linkmatch) && (! $owner_namematch)) { + if ((! $owner_linkmatch) && (! $alias_linkmatch) && (! $owner_namematch)) { // The author url doesn't match the owner (typically the contact) // and also doesn't match the contact alias. @@ -783,18 +796,18 @@ class Item extends BaseObject { $this->owner_name = $this->get_data_value('owner-name'); $this->wall_to_wall = true; // If it is our contact, use a friendly redirect link - if((link_compare($this->get_data_value('owner-link'),$this->get_data_value('url'))) + if ((link_compare($this->get_data_value('owner-link'),$this->get_data_value('url'))) && ($this->get_data_value('network') === NETWORK_DFRN)) { $this->owner_url = $this->get_redirect_url(); - } - else + } else { $this->owner_url = zrl($this->get_data_value('owner-link')); + } } } } } - if(!$this->wall_to_wall) { + if (!$this->wall_to_wall) { $this->set_template('wall'); $this->owner_url = ''; $this->owner_photo = ''; @@ -822,8 +835,6 @@ class Item extends BaseObject { return $this->visiting; } - - - } +/// @TODO These are discouraged and should be removed: ?> diff --git a/update.php b/update.php index 0679b5a1f8..7aec2ec2b8 100644 --- a/update.php +++ b/update.php @@ -86,7 +86,7 @@ function update_1006() { $r = q("SELECT * FROM `user` WHERE `spubkey` = '' "); if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { $sres=openssl_pkey_new(array('encrypt_key' => false )); $sprvkey = ''; openssl_pkey_export($sres, $sprvkey); @@ -123,7 +123,7 @@ function update_1011() { q("ALTER TABLE `contact` ADD `nick` CHAR( 255 ) NOT NULL AFTER `name` "); $r = q("SELECT * FROM `contact` WHERE 1"); if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { q("UPDATE `contact` SET `nick` = '%s' WHERE `id` = %d", dbesc(basename($rr['url'])), intval($rr['id']) @@ -146,7 +146,7 @@ function update_1014() { q("ALTER TABLE `contact` ADD `micro` TEXT NOT NULL AFTER `thumb` "); $r = q("SELECT * FROM `photo` WHERE `scale` = 4"); if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { $ph = new Photo($rr['data']); if($ph->is_valid()) { $ph->scaleImage(48); @@ -156,7 +156,7 @@ function update_1014() { } $r = q("SELECT * FROM `contact` WHERE 1"); if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { if(stristr($rr['thumb'],'avatar')) q("UPDATE `contact` SET `micro` = '%s' WHERE `id` = %d", dbesc(str_replace('avatar','micro',$rr['thumb'])), @@ -309,7 +309,7 @@ function update_1031() { // Repair any bad links that slipped into the item table $r = q("SELECT `id`, `object` FROM `item` WHERE `object` != '' "); if($r && dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { if(strstr($rr['object'],'type="http')) { q("UPDATE `item` SET `object` = '%s' WHERE `id` = %d", dbesc(str_replace('type="http','href="http',$rr['object'])), @@ -357,7 +357,7 @@ function update_1036() { $r = dbq("SELECT * FROM `contact` WHERE `network` = 'dfrn' && `photo` LIKE '%include/photo%' "); if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { q("UPDATE `contact` SET `photo` = '%s', `thumb` = '%s', `micro` = '%s' WHERE `id` = %d", dbesc(str_replace('include/photo','photo',$rr['photo'])), dbesc(str_replace('include/photo','photo',$rr['thumb'])), @@ -607,7 +607,7 @@ function update_1075() { q("ALTER TABLE `user` ADD `guid` CHAR( 16 ) NOT NULL AFTER `uid` "); $r = q("SELECT `uid` FROM `user` WHERE 1"); if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { $found = true; do { $guid = substr(random_string(),0,16); @@ -689,7 +689,7 @@ function update_1082() { return; $r = q("SELECT distinct(`resource-id`) FROM `photo` WHERE 1 group by `id`"); if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { $guid = get_guid(); q("update `photo` set `guid` = '%s' where `resource-id` = '%s'", dbesc($guid), @@ -732,7 +732,7 @@ function update_1087() { $r = q("SELECT `id` FROM `item` WHERE `parent` = `id` "); if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { $x = q("SELECT max(`created`) AS `cdate` FROM `item` WHERE `parent` = %d LIMIT 1", intval($rr['id']) ); @@ -855,7 +855,7 @@ function update_1100() { $r = q("select id, url from contact where url != '' and nurl = '' "); if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { q("update contact set nurl = '%s' where id = %d", dbesc(normalise_link($rr['url'])), intval($rr['id']) @@ -1169,7 +1169,7 @@ function update_1136() { $r = q("select * from config where 1 order by id desc"); if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { $found = false; foreach($arr as $x) { if($x['cat'] == $rr['cat'] && $x['k'] == $rr['k']) { @@ -1188,7 +1188,7 @@ function update_1136() { $arr = array(); $r = q("select * from pconfig where 1 order by id desc"); if (dbm::is_result($r)) { - foreach($r as $rr) { + foreach ($r as $rr) { $found = false; foreach($arr as $x) { if($x['uid'] == $rr['uid'] && $x['cat'] == $rr['cat'] && $x['k'] == $rr['k']) { diff --git a/view/php/default.php b/view/php/default.php index df9adbc392..e51b531b5a 100644 --- a/view/php/default.php +++ b/view/php/default.php @@ -2,7 +2,7 @@ <?php if(x($page,'title')) echo $page['title'] ?> - + diff --git a/view/php/minimal.php b/view/php/minimal.php index a131e3ec5e..e93aac1125 100644 --- a/view/php/minimal.php +++ b/view/php/minimal.php @@ -2,7 +2,7 @@ <?php if(x($page,'title')) echo $page['title'] ?> - + diff --git a/view/templates/head.tpl b/view/templates/head.tpl index cd6bc52a0f..0f1ec837f8 100644 --- a/view/templates/head.tpl +++ b/view/templates/head.tpl @@ -43,7 +43,7 @@ - + diff --git a/view/templates/notifications_attend_item.tpl b/view/templates/notifications_attend_item.tpl index 6add369cb4..adaa539d12 100644 --- a/view/templates/notifications_attend_item.tpl +++ b/view/templates/notifications_attend_item.tpl @@ -1,4 +1,4 @@ \ No newline at end of file diff --git a/view/templates/notifications_comments_item.tpl b/view/templates/notifications_comments_item.tpl index dfa15df280..2550806713 100644 --- a/view/templates/notifications_comments_item.tpl +++ b/view/templates/notifications_comments_item.tpl @@ -1,4 +1,4 @@ \ No newline at end of file diff --git a/view/templates/notifications_dislikes_item.tpl b/view/templates/notifications_dislikes_item.tpl index dfa15df280..2550806713 100644 --- a/view/templates/notifications_dislikes_item.tpl +++ b/view/templates/notifications_dislikes_item.tpl @@ -1,4 +1,4 @@ \ No newline at end of file diff --git a/view/templates/notifications_friends_item.tpl b/view/templates/notifications_friends_item.tpl index dfa15df280..2550806713 100644 --- a/view/templates/notifications_friends_item.tpl +++ b/view/templates/notifications_friends_item.tpl @@ -1,4 +1,4 @@ \ No newline at end of file diff --git a/view/templates/notifications_likes_item.tpl b/view/templates/notifications_likes_item.tpl index 6add369cb4..adaa539d12 100644 --- a/view/templates/notifications_likes_item.tpl +++ b/view/templates/notifications_likes_item.tpl @@ -1,4 +1,4 @@ \ No newline at end of file diff --git a/view/templates/notifications_network_item.tpl b/view/templates/notifications_network_item.tpl index 64395a83d0..a50b2cf2ad 100644 --- a/view/templates/notifications_network_item.tpl +++ b/view/templates/notifications_network_item.tpl @@ -1,4 +1,4 @@ diff --git a/view/templates/notifications_posts_item.tpl b/view/templates/notifications_posts_item.tpl index dfa15df280..2550806713 100644 --- a/view/templates/notifications_posts_item.tpl +++ b/view/templates/notifications_posts_item.tpl @@ -1,4 +1,4 @@ \ No newline at end of file diff --git a/view/templates/notify.tpl b/view/templates/notify.tpl index dfa15df280..2550806713 100644 --- a/view/templates/notify.tpl +++ b/view/templates/notify.tpl @@ -1,4 +1,4 @@ \ No newline at end of file diff --git a/view/theme/duepuntozero/config.php b/view/theme/duepuntozero/config.php index edf12c35fa..749a377fc6 100644 --- a/view/theme/duepuntozero/config.php +++ b/view/theme/duepuntozero/config.php @@ -6,60 +6,67 @@ function theme_content(&$a){ - if(!local_user()) - return; + if (!local_user()) { + return; + } - $colorset = get_pconfig( local_user(), 'duepuntozero', 'colorset'); - $user = true; + $colorset = get_pconfig( local_user(), 'duepuntozero', 'colorset'); + $user = true; - return clean_form($a, $colorset, $user); + return clean_form($a, $colorset, $user); } function theme_post(&$a){ - if(! local_user()) - return; - - if (isset($_POST['duepuntozero-settings-submit'])){ - set_pconfig(local_user(), 'duepuntozero', 'colorset', $_POST['duepuntozero_colorset']); - } + + if (! local_user()) { + return; + } + + if (isset($_POST['duepuntozero-settings-submit'])){ + set_pconfig(local_user(), 'duepuntozero', 'colorset', $_POST['duepuntozero_colorset']); + } } function theme_admin(&$a){ - $colorset = get_config( 'duepuntozero', 'colorset'); - $user = false; + $colorset = get_config( 'duepuntozero', 'colorset'); + $user = false; - return clean_form($a, $colorset, $user); + return clean_form($a, $colorset, $user); } function theme_admin_post(&$a){ - if (isset($_POST['duepuntozero-settings-submit'])){ - set_config('duepuntozero', 'colorset', $_POST['duepuntozero_colorset']); - } + if (isset($_POST['duepuntozero-settings-submit'])){ + set_config('duepuntozero', 'colorset', $_POST['duepuntozero_colorset']); + } } - +/// @TODO $a is no longer used function clean_form(&$a, &$colorset, $user){ - $colorset = array( - 'default'=>t('default'), - 'greenzero'=>t('greenzero'), - 'purplezero'=>t('purplezero'), - 'easterbunny'=>t('easterbunny'), - 'darkzero'=>t('darkzero'), - 'comix'=>t('comix'), - 'slackr'=>t('slackr'), - ); - if ($user) { - $color = get_pconfig(local_user(), 'duepuntozero', 'colorset'); - } else { - $color = get_config( 'duepuntozero', 'colorset'); - } - $t = get_markup_template("theme_settings.tpl" ); - $o .= replace_macros($t, array( - '$submit' => t('Submit'), - '$baseurl' => $a->get_baseurl(), - '$title' => t("Theme settings"), - '$colorset' => array('duepuntozero_colorset', t('Variations'), $color, '', $colorset), - )); - return $o; + $colorset = array( + 'default'=>t('default'), + 'greenzero'=>t('greenzero'), + 'purplezero'=>t('purplezero'), + 'easterbunny'=>t('easterbunny'), + 'darkzero'=>t('darkzero'), + 'comix'=>t('comix'), + 'slackr'=>t('slackr'), + ); + + if ($user) { + $color = get_pconfig(local_user(), 'duepuntozero', 'colorset'); + } else { + $color = get_config( 'duepuntozero', 'colorset'); + } + + $t = get_markup_template("theme_settings.tpl" ); + /// @TODO No need for adding string here, $o is not defined + $o .= replace_macros($t, array( + '$submit' => t('Submit'), + '$baseurl' => App::get_baseurl(), + '$title'=> t("Theme settings"), + '$colorset' => array('duepuntozero_colorset', t('Variations'), $color, '', $colorset), + )); + + return $o; } diff --git a/view/theme/frio/config.php b/view/theme/frio/config.php index 2e896d45f6..edd16bd71f 100644 --- a/view/theme/frio/config.php +++ b/view/theme/frio/config.php @@ -2,7 +2,9 @@ require_once('view/theme/frio/php/Image.php'); function theme_content(&$a) { - if(!local_user()) { return;} + if (!local_user()) { + return; + } $arr = array(); $arr["schema"] = get_pconfig(local_user(),'frio', 'schema'); @@ -18,7 +20,10 @@ function theme_content(&$a) { } function theme_post(&$a) { - if(!local_user()) { return;} + if (!local_user()) { + return; + } + if (isset($_POST['frio-settings-submit'])) { set_pconfig(local_user(), 'frio', 'schema', $_POST["frio_schema"]); set_pconfig(local_user(), 'frio', 'nav_bg', $_POST["frio_nav_bg"]); @@ -57,7 +62,7 @@ function frio_form(&$a, $arr) { $t = get_markup_template('theme_settings.tpl'); $o .= replace_macros($t, array( '$submit' => t('Submit'), - '$baseurl' => $a->get_baseurl(), + '$baseurl' => App::get_baseurl(), '$title' => t("Theme settings"), '$schema' => array('frio_schema', t("Select scheme"), $arr["schema"], '', $scheme_choices), '$nav_bg' => array_key_exists("nav_bg", $disable) ? "" : array('frio_nav_bg', t('Navigation bar background color'), $arr['nav_bg']), diff --git a/view/theme/frio/css/style.css b/view/theme/frio/css/style.css index 91b6219f17..1c602898e6 100644 --- a/view/theme/frio/css/style.css +++ b/view/theme/frio/css/style.css @@ -1882,6 +1882,9 @@ ul.dropdown-menu li:hover { -moz-box-shadow: 0 0 3px #dadada; } +.section-title-wrapper { + overflow: hidden; +} /* Profile-page */ #profile-content-standard, #profile-content-advanced { @@ -2208,7 +2211,7 @@ ul li:hover .contact-wrapper a.contact-action-link:hover { margin-left: 20px; } -/* Notifications */ +/* Intro Notifications */ ul.notif-network-list { margin-left: -15px; margin-right: -15px; @@ -2217,17 +2220,12 @@ ul.notif-network-list > li { padding-left: 15px; padding-right: 15px; } -ul.notif-network-list li.unseen { - border-left: 3px solid #f3fcfd; - background-color: #f3fcfd; -} .intro-wrapper.media { overflow: visible; word-wrap: break-word; margin-top: 0; } -.intro-photo-wrapper img.intro-photo, -.notif-item img.notif-image { +.intro-photo-wrapper img.intro-photo { height:80px; width: 80px; border-radius: 4px; @@ -2280,6 +2278,26 @@ ul.notif-network-list > li:hover .intro-action-buttons { margin-top: 5px } +/* Notifications Page */ +ul.notif-network-list li.unseen { + background-color: #f3fcfd; +} +.notif-item img.notif-image { + height: 48px; + width: 48px; + border-radius: 4px; +} +.notif-item .notif-desc-wrapper { + height: 48px; +} +.notif-item .notif-desc-wrapper a { + height: 100%; + display: block; + color: #555; + font-size: 13px; + font-weight: 600; +} + /* Search Page */ /* This is a little bit hacky. Since the search page is used for diferent diff --git a/view/theme/frio/js/hovercard.js b/view/theme/frio/js/hovercard.js index 6e2a827cd6..d9f9429164 100644 --- a/view/theme/frio/js/hovercard.js +++ b/view/theme/frio/js/hovercard.js @@ -79,7 +79,8 @@ $(document).ready(function(){ }, trigger: hctrigger, template: '
      ', - content: data + content: data, + container: "body", }).popover('show'); } }); diff --git a/view/theme/frio/js/theme.js b/view/theme/frio/js/theme.js index 8fbee06e51..3f3128be40 100644 --- a/view/theme/frio/js/theme.js +++ b/view/theme/frio/js/theme.js @@ -100,6 +100,7 @@ $(document).ready(function(){ // initialize the bootstrap tooltips $('body').tooltip({ selector: '[data-toggle="tooltip"]', + container: 'body', animation: true, html: true, placement: 'auto', diff --git a/view/theme/frio/php/default.php b/view/theme/frio/php/default.php index bfc11a3580..56118cc90e 100644 --- a/view/theme/frio/php/default.php +++ b/view/theme/frio/php/default.php @@ -18,9 +18,9 @@ <?php if(x($page,'title')) echo $page['title'] ?> - + - get_baseurl(); ?> + - + - get_baseurl(); ?> + diff --git a/view/theme/frio/templates/head.tpl b/view/theme/frio/templates/head.tpl index f49b3045f4..6b21cb3db1 100644 --- a/view/theme/frio/templates/head.tpl +++ b/view/theme/frio/templates/head.tpl @@ -66,7 +66,7 @@ - + diff --git a/view/theme/frio/templates/nav.tpl b/view/theme/frio/templates/nav.tpl index 5732e12113..390cf58dc4 100644 --- a/view/theme/frio/templates/nav.tpl +++ b/view/theme/frio/templates/nav.tpl @@ -278,7 +278,7 @@