groups/all didn't work, also fixed pagination in directory/users, and a convenient delete-button for admins

This commit is contained in:
Hannes Mannerheim 2014-10-20 16:24:53 +02:00
parent a3574bac6c
commit 4d4a0491f1
3 changed files with 54 additions and 0 deletions

View File

@ -79,12 +79,41 @@ class DirectoryPlugin extends Plugin
function onRouterInitialized($m) function onRouterInitialized($m)
{ {
$m->connect(
'directory/users/:filter/sort_by/:sort/reverse/:reverse',
array('action' => 'userdirectory'),
array('filter' => '[0-9a-zA-Z]|(0-9)'),
array('sort' => '[a-z]+'),
array('reverse' => '[0-9]')
);
$m->connect(
'directory/users/:filter/sort_by/:sort',
array('action' => 'userdirectory'),
array('filter' => '[0-9a-zA-Z]|(0-9)'),
array('sort' => '[a-z]+')
);
$m->connect( $m->connect(
'directory/users/:filter', 'directory/users/:filter',
array('action' => 'userdirectory'), array('action' => 'userdirectory'),
array('filter' => '[0-9a-zA-Z]|(0-9)') array('filter' => '[0-9a-zA-Z]|(0-9)')
); );
$m->connect(
'directory/users/sort_by/:sort/reverse/:reverse',
array('action' => 'userdirectory'),
array('sort' => '[a-z]+'),
array('reverse' => '[0-9]')
);
$m->connect(
'directory/users/sort_by/:sort',
array('action' => 'userdirectory'),
array('sort' => '[a-z]+')
);
$m->connect( $m->connect(
'directory/users', 'directory/users',
array('action' => 'userdirectory') array('action' => 'userdirectory')
@ -101,6 +130,12 @@ class DirectoryPlugin extends Plugin
array('action' => 'groupdirectory') array('action' => 'groupdirectory')
); );
$m->connect(
'groups/all',
array('action' => 'groupdirectory')
);
return true; return true;
} }

View File

@ -234,6 +234,13 @@ class UserdirectoryAction extends Action
$args['filter'] = $this->filter; $args['filter'] = $this->filter;
} }
if (isset($this->sort)) {
$args['sort'] = $this->sort;
}
if (!empty($this->reverse)) {
$args['reverse'] = $this->reverse;
}
$this->pagination( $this->pagination(
$this->page > 1, $this->page > 1,
$cnt > PROFILES_PER_PAGE, $cnt > PROFILES_PER_PAGE,

View File

@ -207,6 +207,18 @@ class SortableSubscriptionListItem extends SubscriptionListItem
function endActions() function endActions()
{ {
// delete button
$cur = common_current_user();
list($action, $r2args) = $this->out->returnToArgs();
$r2args['action'] = $action;
if ($cur->hasRight(Right::DELETEUSER)) {
$this->out->elementStart('li', 'entity_delete');
$df = new DeleteUserForm($this->out, $this->profile, $r2args);
$df->show();
$this->out->elementEnd('li');
}
$this->out->elementEnd('ul'); $this->out->elementEnd('ul');
$this->out->elementEnd('td'); $this->out->elementEnd('td');
} }