aboutsummaryrefslogtreecommitdiffstats
path: root/mod/contacts.php
blob: e6c2005e06c7279e6950fd977eeaeebd1be78ddb (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
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
<?php
function edit_contact(&$a,$contact_id) {

}

function contacts_post(&$a) {

	
	if(($a->argc != 3) || (! local_user()))
		return;

	$contact_id = intval($a->argv[1]);
	if(! $contact_id)
		return;

	$cmd = $a->argv[2];

	$r = q("SELECT * FROM `contact` WHERE `id` = %d AND `uid` = %d LIMIT 1",
		intval($contact_id),
		intval($_SESSION['uid'])
	);

	if(! count($r))
		return;
	$photo = str_replace('-4.jpg', '' , $r[0]['photo']);
	$photos = q("SELECT `id` FROM `photo` WHERE `resource-id` = '%s' AND `uid` = %d",
			dbesc($photo),
			intval($_SESSION['uid'])
	);
	

	switch($cmd) {
		case 'edit':
				edit_contact($a,$contact_id);
			break;
		case 'block':
			$r = q("UPDATE `contact` SET `blocked` = 1 WHERE `id` = %d AND `uid` = %d LIMIT 1",
				intval($contact_id),
				intval($_SESSION['uid'])
			);
			if($r)
				$_SESSION['sysmsg'] .= "Contact has been blocked." . EOL;
			break;
		case 'drop':
			$r = q("DELETE FROM `contact` WHERE `id` = %d AND `uid` = %d LIMIT 1",
				intval($contact_id),
				intval($_SESSION['uid']));
			if(count($photos)) {
				foreach($photos as $p) {
					q("DELETE FROM `photos` WHERE `id` = %d LIMIT 1",
						$p['id']);
				}
			}
			if($intval($contact_id))
				q("DELETE * FROM `item` WHERE `contact-id` = %d ",
					intval($contact_id)
				);

			break;
		default:
			return;
			break;
	}

}











function contacts_content(&$a) {
	if(! local_user()) {
		$_SESSION['sysmsg'] .= "Permission denied." . EOL;
		return;
	}

	if(($a->argc2 == 2) && ($a->argv[1] == 'all'))
		$sql_extra = '';
	else
		$sql_extra = " AND `blocked` = 0 ";

	$tpl = file_get_contents("view/contacts-top.tpl");
	$o .= replace_macros($tpl,array(
		'$hide_url' => ((strlen($sql_extra)) ? 'contacts/all' : 'contacts' ),
		'$hide_text' => ((strlen($sql_extra)) ? 'Show Blocked Connections' : 'Hide Blocked Connections')
	)); 


	$r = q("SELECT * FROM `contact` WHERE `uid` = %d",
		intval($_SESSION['uid']));

	if(count($r)) {

		$tpl = file_get_contents("view/contact_template.tpl");

		foreach($r as $rr) {
			if($rr['self'])
				continue;
			$o .= replace_macros($tpl, array(
				'$id' => $rr['id'],
				'$thumb' => $rr['thumb'], 
				'$name' => $rr['name'],
				'$url' => $rr['url']
			));
		}
	}
	return $o;


}