aboutsummaryrefslogtreecommitdiffstats
path: root/Zotlabs/Module/Hcard.php
blob: 1cc26c19948a7d3a3fb5a857762afc4a77b58722 (plain) (blame)
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
70
71
72
73
<?php
namespace Zotlabs\Module;


class Hcard extends \Zotlabs\Web\Controller {

	function init() {

	   if(argc() > 1)
	        $which = argv(1);
	    else {
	        notice( t('Requested profile is not available.') . EOL );
	        \App::$error = 404;
	        return;
	    }

		logger('hcard_request: ' . $which, LOGGER_DEBUG);

	    $profile = '';
	    $channel = \App::get_channel();

	    if((local_channel()) && (argc() > 2) && (argv(2) === 'view')) {
	        $which = $channel['channel_address'];
	        $profile = argv(1);
	        $r = q("select profile_guid from profile where id = %d and uid = %d limit 1",
	            intval($profile),
	            intval(local_channel())
	        );
	        if(! $r)
	            $profile = '';
	        $profile = $r[0]['profile_guid'];
	    }

		head_add_link( [
			'rel'   => 'alternate',
			'type'  => 'application/atom+xml',
			'title' => t('Posts and comments'),
			'href'  => z_root() . '/feed/' . $which
		]);

		head_add_link( [
			'rel'   => 'alternate',
			'type'  => 'application/atom+xml',
			'title' => t('Only posts'),
			'href'  => z_root() . '/feed/' . $which . '?f=&top=1'
		]);


	    if(! $profile) {
	        $x = q("select channel_id as profile_uid from channel where channel_address = '%s' limit 1",
	            dbesc(argv(1))
	        );
	        if($x) {
	            \App::$profile = $x[0];
	        }
	    }

		profile_load($which,$profile);


	}


	function get() {

		$x = new \Zotlabs\Widget\Fullprofile();
		return $x->widget(array());

	}



}