]> git.mxchange.org Git - quix0rs-gnu-social.git/blob - plugins/OpenID/actions/publicxrds.php
Move some last OpenID stuff into the OpenID plugin (XRDS)
[quix0rs-gnu-social.git] / plugins / OpenID / actions / publicxrds.php
1 <?php
2 /**
3  * Public XRDS for OpenID
4  *
5  * PHP version 5
6  *
7  * @category Action
8  * @package  StatusNet
9  * @author   Evan Prodromou <evan@status.net>
10  * @author   Craig Andrews <candrews@integralblue.com>
11  * @author   Robin Millette <millette@status.net>
12  * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
13  * @license  http://www.fsf.org/licensing/licenses/agpl.html AGPLv3
14  * @link     http://status.net/
15  *
16  * StatusNet - the distributed open-source microblogging tool
17  * Copyright (C) 2008, 2009, StatusNet, Inc.
18  *
19  * This program is free software: you can redistribute it and/or modify
20  * it under the terms of the GNU Affero General Public License as published by
21  * the Free Software Foundation, either version 3 of the License, or
22  * (at your option) any later version.
23  *
24  * This program is distributed in the hope that it will be useful,
25  * but WITHOUT ANY WARRANTY; without even the implied warranty of
26  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
27  * GNU Affero General Public License for more details.
28  *
29  * You should have received a copy of the GNU Affero General Public License
30  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
31  */
32
33 if (!defined('GNUSOCIAL')) { exit(1); }
34
35 require_once __DIR__.'/../openid.php';
36
37 /**
38  * Public XRDS
39  *
40  * @category Action
41  * @package  StatusNet
42  * @author   Evan Prodromou <evan@status.net>
43  * @author   Robin Millette <millette@status.net>
44  * @author   Craig Andrews <candrews@integralblue.com>
45  * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
46  * @license  http://www.fsf.org/licensing/licenses/agpl.html AGPLv3
47  * @link     http://status.net/
48  *
49  * @todo factor out similarities with XrdsAction
50  */
51 class PublicxrdsAction extends Action
52 {
53     /**
54      * Is read only?
55      *
56      * @return boolean true
57      */
58     function isReadOnly($args)
59     {
60         return true;
61     }
62
63     /**
64      * Class handler.
65      *
66      * @param array $args array of arguments
67      *
68      * @return nothing
69      */
70     protected function handle()
71     {
72         parent::handle();
73         $xrdsOutputter = new XRDSOutputter();
74         $xrdsOutputter->startXRDS();
75         Event::handle('StartPublicXRDS', array($this,&$xrdsOutputter));
76         Event::handle('EndPublicXRDS', array($this,&$xrdsOutputter));
77         $xrdsOutputter->endXRDS();
78     }
79 }