redirect user to welcome / access level page on first visit #1

This commit is contained in:
ghost 2023-09-11 03:38:21 +03:00
parent b3f26fd215
commit 9f2841220a
8 changed files with 292 additions and 168 deletions

View file

@ -55,6 +55,14 @@ switch (isset($_GET['target']) ? urldecode($_GET['target']) : false)
$response->message = _('Could not init user info');
}
// On first visit, redirect user to the welcome page with access level question
else if (is_null($user->public))
{
header(
sprintf('Location: %s/welcome.php', WEBSITE_URL)
);
}
// Render icon
else
{
@ -105,6 +113,14 @@ switch (isset($_GET['target']) ? urldecode($_GET['target']) : false)
$response->message = _('Could not init user info');
}
// On first visit, redirect user to the welcome page with access level question
else if (is_null($user->public))
{
header(
sprintf('Location: %s/welcome.php', WEBSITE_URL)
);
}
// Magnet comment exists
else if (!$magnetComment = $db->getMagnetComment(isset($_GET['magnetCommentId']) && $_GET['magnetCommentId'] > 0 ? (int) $_GET['magnetCommentId'] : 0))
{
@ -186,6 +202,14 @@ switch (isset($_GET['target']) ? urldecode($_GET['target']) : false)
$response->message = _('Could not init user info');
}
// On first visit, redirect user to the welcome page with access level question
else if (is_null($user->public))
{
header(
sprintf('Location: %s/welcome.php', WEBSITE_URL)
);
}
// Magnet comment exists
else if (!$magnetComment = $db->getMagnetComment(isset($_GET['magnetCommentId']) && $_GET['magnetCommentId'] > 0 ? (int) $_GET['magnetCommentId'] : 0))
{
@ -256,6 +280,14 @@ switch (isset($_GET['target']) ? urldecode($_GET['target']) : false)
$response->message = _('Could not init user info');
}
// On first visit, redirect user to the welcome page with access level question
else if (is_null($user->public))
{
header(
sprintf('Location: %s/welcome.php', WEBSITE_URL)
);
}
// Magnet exists
else if (!$magnet = $db->getMagnet(isset($_GET['magnetId']) && $_GET['magnetId'] > 0 ? (int) $_GET['magnetId'] : 0))
{
@ -342,6 +374,21 @@ switch (isset($_GET['target']) ? urldecode($_GET['target']) : false)
$response->message = _('Could not init user session');
}
// Get user
else if (!$user = $db->getUser($userId))
{
$response->success = false;
$response->message = _('Could not init user info');
}
// On first visit, redirect user to the welcome page with access level question
else if (is_null($user->public))
{
header(
sprintf('Location: %s/welcome.php', WEBSITE_URL)
);
}
// Magnet exists
else if (!$magnet = $db->getMagnet(isset($_GET['magnetId']) && $_GET['magnetId'] > 0 ? (int) $_GET['magnetId'] : 0))
{
@ -415,6 +462,14 @@ switch (isset($_GET['target']) ? urldecode($_GET['target']) : false)
$response->message = _('Could not init user info');
}
// On first visit, redirect user to the welcome page with access level question
else if (is_null($user->public))
{
header(
sprintf('Location: %s/welcome.php', WEBSITE_URL)
);
}
// Validate link
if (empty($_GET['magnet']))
{

View file

@ -58,6 +58,21 @@ $response = (object)
$response->message = _('Magnet not available for this action');
}
// Get user
else if (!$user = $db->getUser($userId))
{
$response->success = false;
$response->message = _('Could not init user info');
}
// On first visit, redirect user to the welcome page with access level question
else if (is_null($user->public))
{
header(
sprintf('Location: %s/welcome.php', WEBSITE_URL)
);
}
// Request valid
else
{

View file

@ -174,6 +174,14 @@ else if (!($user->address == $db->getUser($magnet->userId)->address || in_array(
$response->message = _('You have no permissions to edit this magnet!');
}
// On first visit, redirect user to the welcome page with access level question
else if (is_null($user->public))
{
header(
sprintf('Location: %s/welcome.php', WEBSITE_URL)
);
}
// Process form
else {

View file

@ -39,6 +39,21 @@ else if (!$userId = $db->initUserId($_SERVER['REMOTE_ADDR'], USER_DEFAULT_APPROV
$response->message = _('Could not init user session');
}
// Get user
else if (!$user = $db->getUser($userId))
{
$response->success = false;
$response->message = _('Could not init user info');
}
// On first visit, redirect user to the welcome page with access level question
else if (is_null($user->public))
{
header(
sprintf('Location: %s/welcome.php', WEBSITE_URL)
);
}
?>
<!DOCTYPE html>
<html lang="en-US">

View file

@ -71,6 +71,14 @@ else if (!$user = $db->getUser($userId))
$response->message = _('Could not init user info');
}
// On first visit, redirect user to the welcome page with access level question
else if (is_null($user->public))
{
header(
sprintf('Location: %s/welcome.php', WEBSITE_URL)
);
}
// Request valid
else
{

View file

@ -68,6 +68,14 @@ else if (!$magnet = $db->getMagnet(isset($_GET['magnetId']) ? (int) $_GET['magne
$response->message = _('Magnet not found! Submit new magnet link by sending address to the search field.');
}
// On first visit, redirect user to the welcome page with access level question
else if (is_null($user->public))
{
header(
sprintf('Location: %s/welcome.php', WEBSITE_URL)
);
}
// Request valid
else
{

View file

@ -39,6 +39,21 @@ else if (!$userId = $db->initUserId($_SERVER['REMOTE_ADDR'], USER_DEFAULT_APPROV
$response->message = _('Could not init user session');
}
// Get user
else if (!$user = $db->getUser($userId))
{
$response->success = false;
$response->message = _('Could not init user info');
}
// On first visit, redirect user to the welcome page with access level question
else if (is_null($user->public))
{
header(
sprintf('Location: %s/welcome.php', WEBSITE_URL)
);
}
?>
<!DOCTYPE html>
<html lang="en-US">

View file

@ -102,14 +102,14 @@ else if (isset($_POST['public']))
<div class="margin-b-24 padding-b-16 border-bottom-default">
<h1 class=""><?php echo _('Welcome, stranger!') ?></h1>
</div>
<p class="margin-b-8"><?php echo _('YGGtracker use Yggdrasil address to identify users without registration') ?></p>
<p class="margin-b-8"><?php echo _('YGGtracker uses Yggdrasil address to identify users without registration') ?></p>
<p class="margin-b-16"><?php echo _('following address could be shared with independent nodes to allow you manage own content everywhere') ?></p>
<h2 class="margin-b-16"><?php echo $user->address ?></h2>
<form name="public" action="<?php echo sprintf('%s/welcome.php', WEBSITE_URL) ?>" method="post">
<div class="margin-b-16">
<label class="text-color-green margin-y-8 margin-x-4" for="public-1">
<input type="radio" id="public-1" name="public" value="1" checked="checked" />
<?php echo _('Allow data distribution') ?>
<?php echo _('Allow address distribution') ?>
</label>
<label class="text-color-pink margin-y-8 margin-x-4" for="public-0">
<input type="radio" id="public-0" name="public" value="0" />