aboutsummaryrefslogtreecommitdiffstats
path: root/mod/starred.php
blob: af11acfb54a22d57b65083aa683e6fcc0b1e8d9d (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($a->argc > 1)
		$message_id = intval($a->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_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' => intval($item_flags & ITEM_STARRED)));
	killme();
}