require_once('include/auth.php');
require_once('include/dfrn.php');
-if(! function_exists('dfrn_poll_init')) {
+
function dfrn_poll_init(&$a) {
$dfrn_id = substr($dfrn_id,2);
}
+ $hidewall = false;
+
if(($dfrn_id === '') && (! x($_POST,'dfrn_id'))) {
if((get_config('system','block_public')) && (! local_user()) && (! remote_user())) {
http_status_exit(403);
$r = q("SELECT `hidewall`,`nickname` FROM `user` WHERE `user`.`nickname` = '%s' LIMIT 1",
dbesc($a->argv[1])
);
- if(! $r)
+ if (!$r)
http_status_exit(404);
- if(($r[0]['hidewall']) && (! local_user()))
- http_status_exit(403);
+
+ $hidewall = ($r[0]['hidewall'] && !local_user());
+
$user = $r[0]['nickname'];
}
logger('dfrn_poll: public feed request from ' . $_SERVER['REMOTE_ADDR'] . ' for ' . $user);
header("Content-type: application/atom+xml");
- echo dfrn::feed('', $user,$last_update);
+ echo dfrn::feed('', $user,$last_update, 0, $hidewall);
killme();
}
if($final_dfrn_id != $orig_id) {
logger('profile_check: ' . $final_dfrn_id . ' != ' . $orig_id, LOGGER_DEBUG);
- // did not decode properly - cannot trust this site
+ // did not decode properly - cannot trust this site
xml_status(3, 'Bad decryption');
}
return; // NOTREACHED
}
}
+
}
-}
-if(! function_exists('dfrn_poll_post')) {
+
function dfrn_poll_post(&$a) {
$dfrn_id = ((x($_POST,'dfrn_id')) ? $_POST['dfrn_id'] : '');
if($final_dfrn_id != $orig_id) {
logger('profile_check: ' . $final_dfrn_id . ' != ' . $orig_id, LOGGER_DEBUG);
- // did not decode properly - cannot trust this site
+ // did not decode properly - cannot trust this site
xml_status(3, 'Bad decryption');
}
}
}
-}
-if(! function_exists('dfrn_poll_content')) {
function dfrn_poll_content(&$a) {
$dfrn_id = ((x($_GET,'dfrn_id')) ? $_GET['dfrn_id'] : '');
}
}
}
-}