friendica-github/mod/starred.php
Andrej Stieben db949bb802 Updated modules to allow for partial overrides without errors
Only define functions if they have not been defined before, e.g. in themes. This makes it possible to override parts of a module and still use the other functions.
2016-02-05 21:52:39 +01:00

50 lines
1 KiB
PHP

<?php
if(! function_exists('starred_init')) {
function starred_init(&$a) {
require_once("include/threads.php");
$starred = 0;
if(! local_user())
killme();
if($a->argc > 1)
$message_id = intval($a->argv[1]);
if(! $message_id)
killme();
$r = q("SELECT starred FROM item WHERE uid = %d AND id = %d LIMIT 1",
intval(local_user()),
intval($message_id)
);
if(! count($r))
killme();
if(! intval($r[0]['starred']))
$starred = 1;
$r = q("UPDATE item SET starred = %d WHERE uid = %d and id = %d",
intval($starred),
intval(local_user()),
intval($message_id)
);
update_thread($message_id);
// See if we've been passed a return path to redirect to
$return_path = ((x($_REQUEST,'return')) ? $_REQUEST['return'] : '');
if($return_path) {
$rand = '_=' . time();
if(strpos($return_path, '?')) $rand = "&$rand";
else $rand = "?$rand";
goaway($a->get_baseurl() . "/" . $return_path . $rand);
}
// the json doesn't really matter, it will either be 0 or 1
echo json_encode($starred);
killme();
}
}