Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
<?php
/**
* PHP version 7
*
* Copyright (C) 2023 Leipzig University Library
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
* @category VuFind
* @package Controller
* @author Alexander Purr <purr@ub.uni-leipzig.de>
* @license http://opensource.org/licenses/gpl-2.0.php GNU GPLv2
* @link https://vufind.org/wiki/development Wiki
*/
namespace fid_adlr\Controller;
use fid\Controller\UserController as FidUserContoller;
use fid\Service\Client;
use fid\Service\DataTransferObject\User;
use fid\Service\UserNotAuthorizedException;
/**
* User Controller
*
* @category VuFind
* @package Controller
* @author Alexander Purr <purr@ub.uni-leipzig.de>
* @license http://opensource.org/licenses/gpl-2.0.php GNU GPLv2
* @link https://vufind.org/wiki/development Wiki
*/
class UserController extends FidUserContoller
{
/**
* Request download of user list newsletter route action
*
* @return HttpResponse
* @throws ClientException
* @throws UserNotAuthorizedException
*/
public function exportListNewsletterAction()
{
$userListNewsletter = [];
foreach ($this->client->requestUserList() as $user) {
/* @var User $user */
$data = $user->getData();
if (isset($data["newsletter"]) && $data["newsletter"] == true) {
$userListNewsletter[] = $user;
}
}
return $this->createExportFile(
$userListNewsletter,
$fields = ['username'],
$mode = 'default',
$separator = "\t",
$printTableHead = false
);
}
}