hdalab/taginfo.php
author ymh <ymh.work@gmail.com>
Tue, 17 Jan 2012 00:19:27 +0100
changeset 112 e7086d345a7c
parent 109 3371a40449c7
child 118 fdf808d7d374
permissions -rw-r--r--
Merge with 6455b65fa3b7f5abc0956f02699b12dbb8295ab6
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
109
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
     1
<?php
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
     2
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
     3
header('Content-type: application/json');
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
     4
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
     5
require('connect.inc.php');
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
     6
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
     7
$label = (isset($_REQUEST['label']) ? $_REQUEST['label'] : NULL);
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
     8
$max_tag_order = (isset($_REQUEST['mto']) ? pg_escape_string($_REQUEST['mto']) : 12);
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
     9
$content_count = (isset($_REQUEST['contentcount']) ? pg_escape_string($_REQUEST['contentcount']) : 10);
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    10
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    11
$resobj = array("requested_label" => $label);
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    12
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    13
$label = pg_escape_string($label);
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    14
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    15
$rq = pg_query("SELECT id FROM hdabo_tag WHERE label ILIKE '$label'");
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    16
$ids = array();
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    17
while($ligne = pg_fetch_row($rq)) {
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    18
    $ids[] = $ligne[0];
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    19
}
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    20
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    21
pg_free_result($rq);
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    22
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    23
$sql = "SELECT COUNT(DISTINCT datasheet_id) FROM hdabo_taggedsheet WHERE tag_id IN (" . join(",", $ids) . ")";
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    24
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    25
$rq = pg_query($sql);
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    26
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    27
if ($ligne = pg_fetch_row($rq)) {
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    28
    $resobj["content_count"] = $ligne[0];
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    29
}
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    30
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    31
$sql = "SELECT MAX(dbpedia_uri), MAX(wikipedia_url) FROM hdabo_tag WHERE id IN (" . join(",", $ids) . ")";
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    32
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    33
$rq = pg_query($sql);
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    34
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    35
if ($ligne = pg_fetch_row($rq)) {
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    36
    $resobj["dbpedia_uri"] = $ligne[0];
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    37
    $resobj["wikipedia_url"] = $ligne[1];
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    38
}
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    39
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    40
pg_free_result($rq);
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    41
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    42
if (isset($resobj["dbpedia_uri"]) and $resobj["dbpedia_uri"]) {
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    43
    $uri = $resobj["dbpedia_uri"];
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    44
    $sql = "SELECT abstract, label, thumbnail FROM dbpedia_fields WHERE dbpedia_uri = '$uri'";
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    45
    $rq = pg_query($sql);
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    46
    if ($ligne = pg_fetch_row($rq)) {
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    47
        $resobj["abstract"] = $ligne[0];
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    48
        $resobj["dbpedia_label"] = $ligne[1];
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    49
        $resobj["thumbnail"] = $ligne[2];
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    50
    }
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    51
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    52
    pg_free_result($rq);
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    53
}
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    54
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    55
$sql = "SELECT * FROM hdaviz_simple_tag_links WHERE subject ILIKE '$label' OR object ILIKE '$label'";
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    56
$rq  = pg_query($sql);
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    57
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    58
$resobj["links"] = pg_fetch_all($rq);
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    59
pg_free_result($rq);
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    60
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    61
echo json_encode($resobj);
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    62
3371a40449c7 HDA Lab 1st commit
veltr
parents:
diff changeset
    63
?>