hdalab/taginfo.php
changeset 109 3371a40449c7
child 118 fdf808d7d374
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hdalab/taginfo.php	Tue Jan 10 18:25:08 2012 +0100
@@ -0,0 +1,63 @@
+<?php
+
+header('Content-type: application/json');
+
+require('connect.inc.php');
+
+$label = (isset($_REQUEST['label']) ? $_REQUEST['label'] : NULL);
+$max_tag_order = (isset($_REQUEST['mto']) ? pg_escape_string($_REQUEST['mto']) : 12);
+$content_count = (isset($_REQUEST['contentcount']) ? pg_escape_string($_REQUEST['contentcount']) : 10);
+
+$resobj = array("requested_label" => $label);
+
+$label = pg_escape_string($label);
+
+$rq = pg_query("SELECT id FROM hdabo_tag WHERE label ILIKE '$label'");
+$ids = array();
+while($ligne = pg_fetch_row($rq)) {
+    $ids[] = $ligne[0];
+}
+
+pg_free_result($rq);
+
+$sql = "SELECT COUNT(DISTINCT datasheet_id) FROM hdabo_taggedsheet WHERE tag_id IN (" . join(",", $ids) . ")";
+
+$rq = pg_query($sql);
+
+if ($ligne = pg_fetch_row($rq)) {
+    $resobj["content_count"] = $ligne[0];
+}
+
+$sql = "SELECT MAX(dbpedia_uri), MAX(wikipedia_url) FROM hdabo_tag WHERE id IN (" . join(",", $ids) . ")";
+
+$rq = pg_query($sql);
+
+if ($ligne = pg_fetch_row($rq)) {
+    $resobj["dbpedia_uri"] = $ligne[0];
+    $resobj["wikipedia_url"] = $ligne[1];
+}
+
+pg_free_result($rq);
+
+if (isset($resobj["dbpedia_uri"]) and $resobj["dbpedia_uri"]) {
+    $uri = $resobj["dbpedia_uri"];
+    $sql = "SELECT abstract, label, thumbnail FROM dbpedia_fields WHERE dbpedia_uri = '$uri'";
+    $rq = pg_query($sql);
+    if ($ligne = pg_fetch_row($rq)) {
+        $resobj["abstract"] = $ligne[0];
+        $resobj["dbpedia_label"] = $ligne[1];
+        $resobj["thumbnail"] = $ligne[2];
+    }
+
+    pg_free_result($rq);
+}
+
+$sql = "SELECT * FROM hdaviz_simple_tag_links WHERE subject ILIKE '$label' OR object ILIKE '$label'";
+$rq  = pg_query($sql);
+
+$resobj["links"] = pg_fetch_all($rq);
+pg_free_result($rq);
+
+echo json_encode($resobj);
+
+?>
\ No newline at end of file