aboutsummaryrefslogtreecommitdiffstats
path: root/mod/starred.php
blob: 530c5c7e0a04be60af0b52efb3edbde9e03d54ec (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
<?php


function starred_init(&$a) {

	$starred = 0;

	if(! local_user())
		killme();
	if(argc() > 1)
		$message_id = intval(argv(1));
	if(! $message_id)
		killme();

	$r = q("SELECT item_flags FROM item WHERE uid = %d AND id = %d LIMIT 1",
		intval(local_user()),
		intval($message_id)
	);
	if(! count($r))
		killme();

	$item_flags = $r[0]['item_flags'];

	if($item_flags & ITEM_STARRED)
	    $item_flags -= ITEM_STARRED;
	else
		$item_flags += ITEM_STARRED;


	$r = q("UPDATE item SET item_flags = %d WHERE uid = %d and id = %d LIMIT 1",
		intval($item_flags),
		intval(local_user()),
		intval($message_id)
	);

	header('Content-type: application/json');
	echo json_encode(array('result' => (($item_flags & ITEM_STARRED) ? 1 : 0)));
	killme();
}