StartpageAction essentially duplicated TopAction

This commit is contained in:
Mikael Nordfeldth 2015-07-09 23:01:50 +02:00
parent 37e8b027f9
commit 06f60b57c1
4 changed files with 21 additions and 86 deletions

View File

@ -63,7 +63,7 @@ class LogoutAction extends ManagedAction
}
Event::handle('EndLogout', array($this));
common_redirect(common_local_url('startpage'));
common_redirect(common_local_url('top'));
}
// Accessed through the action on events

View File

@ -1,26 +0,0 @@
<?php
/**
* Startpage action. Decides what to show on the first page.
*/
if (!defined('GNUSOCIAL')) { exit(1); }
class StartpageAction extends ManagedAction
{
function isReadOnly($args)
{
return true;
}
function showPage()
{
if (common_config('singleuser', 'enabled')) {
$user = User::singleUser();
common_redirect(common_local_url('showstream', array('nickname' => $user->nickname)), 303);
} elseif (common_config('public', 'localonly')) {
common_redirect(common_local_url('public'), 303);
} else {
common_redirect(common_local_url('networkpublic'), 303);
}
}
}

View File

@ -20,67 +20,29 @@
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* @category Top
* @package StatusNet
* @author Evan Prodromou <evan@status.net>
* @copyright 2010 StatusNet, Inc.
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
* @link http://status.net/
*/
if (!defined('STATUSNET')) {
// This check helps protect against security problems;
// your code file can't be executed directly from the web.
exit(1);
}
/**
* An action to redirect to the top of the site
*
* @category Action
* @package StatusNet
* @package GNUsocial
* @author Evan Prodromou <evan@status.net>
* @author Mikael Nordfeldth <mmn@hethane.se>
* @copyright 2010 StatusNet, Inc.
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
* @link http://status.net/
* @copyright 2015 Free Software Foundation, Inc.
* @license https://www.gnu.org/licenses/agpl-3.0.html AGPL 3.0
* @link https://gnu.io/social
*/
class TopAction extends Action
if (!defined('GNUSOCIAL')) { exit(1); }
class TopAction extends ManagedAction
{
/**
* For initializing members of the class.
*
* @param array $argarray misc. arguments
*
* @return boolean true
*/
function prepare($argarray)
{
parent::prepare($argarray);
return true;
}
/**
* Handler method
*
* @param array $argarray is ignored since it's now passed in in prepare()
*
* @return void
*/
function handle($argarray=null)
public function showPage()
{
if (common_config('singleuser', 'enabled')) {
$url = common_local_url('showstream', array('nickname' => User::singleUserNickname()));
$user = User::singleUser();
common_redirect(common_local_url('showstream', array('nickname' => $user->getNickname())), 303);
} elseif (common_config('public', 'localonly')) {
common_redirect(common_local_url('public'), 303);
} else {
$url = common_local_url('public');
}
// XXX: Permanent? I think so.
common_redirect($url, 301);
return;
common_redirect(common_local_url('networkpublic'), 303);
}
}
}

View File

@ -108,6 +108,11 @@ class Router
if (Event::handle('StartInitializeRouter', array(&$m))) {
// top of the menu hierarchy, sometimes "Home"
$m->connect('', array('action' => 'top'));
// public endpoints
$m->connect('robots.txt', array('action' => 'robotstxt'));
$m->connect('opensearch/people', array('action' => 'opensearch',
@ -156,13 +161,13 @@ class Router
'deleteaccount',
'restoreaccount',
'top',
'public',
);
foreach ($main as $a) {
$m->connect('main/'.$a, array('action' => $a));
}
$m->connect('main/public', array('action' => 'public'));
$m->connect('main/all', array('action' => 'networkpublic'));
$m->connect('main/tagprofile/:id', array('action' => 'tagprofile'),
@ -875,9 +880,6 @@ class Router
array('action' => 'rsd',
'nickname' => $nickname));
$m->connect('',
array('action' => 'startpage'));
// peopletags
$m->connect('peopletags',
@ -930,9 +932,6 @@ class Router
}
}
$m->connect('', array('action' => 'startpage'));
$m->connect('main/public', array('action' => 'public'));
$m->connect('main/all', array('action' => 'networkpublic'));
$m->connect('rss', array('action' => 'publicrss'));
$m->connect('featuredrss', array('action' => 'featuredrss'));
$m->connect('featured/', array('action' => 'featured'));