Merge branch '2.1' into 3.0
[GitHub/WoltLab/WCF.git] / wcfsetup / install / files / lib / system / package / PackageUpdateUnauthorizedException.class.php
1 <?php
2 namespace wcf\system\package;
3 use wcf\data\package\update\server\PackageUpdateServer;
4 use wcf\system\exception\UserException;
5 use wcf\system\WCF;
6 use wcf\util\HTTPRequest;
7
8 /**
9 * Credentials for update server are either missing or invalid.
10 *
11 * @author Alexander Ebert
12 * @copyright 2001-2017 WoltLab GmbH
13 * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
14 * @package WoltLabSuite\Core\System\Package
15 */
16 class PackageUpdateUnauthorizedException extends UserException {
17 /**
18 * package update version
19 * @var array
20 */
21 protected $packageUpdateVersion = [];
22
23 /**
24 * HTTP request object
25 * @var HTTPRequest
26 */
27 protected $request = null;
28
29 /**
30 * package update server object
31 * @var PackageUpdateServer
32 */
33 protected $updateServer = null;
34
35 /**
36 * Creates a new PackageUpdateUnauthorizedException object.
37 *
38 * @param HTTPRequest $request
39 * @param PackageUpdateServer $updateServer
40 * @param array $packageUpdateVersion
41 */
42 public function __construct(HTTPRequest $request, PackageUpdateServer $updateServer, array $packageUpdateVersion = []) {
43 $this->request = $request;
44 $this->updateServer = $updateServer;
45 $this->packageUpdateVersion = $packageUpdateVersion;
46 }
47
48 /**
49 * Returns the rendered template.
50 *
51 * @return string
52 */
53 public function getRenderedTemplate() {
54 WCF::getTPL()->assign([
55 'packageUpdateVersion' => $this->packageUpdateVersion,
56 'request' => $this->request,
57 'updateServer' => $this->updateServer
58 ]);
59
60 return WCF::getTPL()->fetch('packageUpdateUnauthorized');
61 }
62
63 /**
64 * Returns package update version.
65 *
66 * @return array
67 */
68 public function getPackageUpdateVersion() {
69 return $this->packageUpdateVersion;
70 }
71
72 /**
73 * Returns the HTTP request object.
74 *
75 * @return HTTPRequest
76 */
77 public function getRequest() {
78 return $this->request;
79 }
80
81 /**
82 * Returns package update server object.
83 *
84 * @return PackageUpdateServer
85 */
86 public function getUpdateServer() {
87 return $this->updateServer;
88 }
89 }