/** * Get the reverse links of a node * @param {Integer} $id node id * @return {array} links */ static function rlinks($id) { $array = array(); // PROTOTYPE BEGIN $protoname = model::getKey($id, 'prototype'); if ($protoname) { $proto = model::searchKey('id', $protoname); $proto = $proto[0]; if ($proto) { $array = model::rlinks($proto); } } // PROTOTYPE END $query = "SELECT link.id AS link_id, link.src_id, node.* FROM link LEFT JOIN node ON node.id=link.src_id WHERE tgt_id='{$id}' ORDER BY type;"; if (!($result = mysql_query($query))) { return $array; } if (!mysql_num_rows($result)) { return $array; } while ($row = mysql_fetch_array($result)) { $res = array("link_id" => $row["link_id"], "id" => $row["src_id"], "type" => $row["src_id"] == "0" ? "folder" : $row["type"]); $array[] = $res; } return $array; }
/** * Get the links id of a node * @param {Integer} $id node id * @return {array} links */ static function rlink($id) { $result = model::rlinks($id); for ($i = 0; $i < sizeof($result); $i++) { $childcount = model::countChildren($id); $result[$i]["childcount"] = $childcount; $result[$i]["rlinks"] = model::countRLinks($result[$i]["id"]); $result[$i]["tags"] = model::tags($result[$i]["id"]); $result[$i]["keys"] = model::keys($result[$i]["id"]); } return $result; }