Exemplo n.º 1
0
/**
* @desc Visualiza las etiquetas existentes
**/
function tags()
{
    global $tpl, $xoopsOption, $xoopsUser, $xoopsModuleConfig, $db, $pag, $usr, $xoopsConfig, $tag;
    $xoopsOption['template_main'] = 'gs_tags.html';
    $xoopsOption['module_subpage'] = 'tags';
    include 'header.php';
    $mc =& $xoopsModuleConfig;
    GSFunctions::makeHeader();
    //Verificamos si el usuario existe
    if (isset($usr)) {
        $user = new GSUser($usr);
        if ($user->isNew()) {
            redirect_header(GSFunctions::get_url(), 1, __('Specified user does not exists!', 'galleries'));
            die;
        }
    }
    //Obtenemos la etiqueta de mayor hit
    if (!$usr) {
        $sql = "SELECT MAX(hits) FROM " . $db->prefix('gs_tags');
    } else {
        $sql = "SELECT  MAX(hits) FROM " . $db->prefix('gs_tags') . " a INNER JOIN " . $db->prefix('gs_tagsimages');
        $sql .= " b INNER JOIN " . $db->prefix('gs_images') . " c ON (a.id_tag=b.id_tag AND  b.id_image=c.id_image ";
        $sql .= " AND c.owner=" . $user->uid() . ")";
    }
    list($maxhit) = $db->fetchRow($db->query($sql));
    //Obtenemos la lista de etiquetas
    if (!$usr) {
        $sql = "SELECT * FROM " . $db->prefix('gs_tags') . " ORDER BY tag";
    } else {
        $sql = "SELECT a.* FROM " . $db->prefix('gs_tags') . " a INNER JOIN " . $db->prefix('gs_tagsimages');
        $sql .= " b INNER JOIN " . $db->prefix('gs_images') . " c ON (a.id_tag=b.id_tag AND  b.id_image=c.id_image ";
        $sql .= " AND c.owner=" . $user->uid() . ")";
        $sql .= "  GROUP BY a.id_tag ORDER BY tag LIMIT 0," . $mc['num_tags'];
    }
    $result = $db->query($sql);
    $sz = $maxhit > 0 ? $mc['font_tags'] / $maxhit : 11;
    while ($rows = $db->fetchArray($result)) {
        $tag = new GSTag();
        $tag->assignVars($rows);
        $size = intval($tag->hits() * $sz);
        if ($size < 10) {
            $size = 10;
        }
        if ($mc['urlmode']) {
            $link = GSFunctions::get_url() . "explore/tags/tag/" . $tag->getVar('nameid') . '/';
            $link .= $usr ? "usr/" . $user->uname() . "/" : '';
        } else {
            $link = GSFunctions::get_url() . "?explore=tags&amp;tag=" . $tag->getVar('nameid');
            $link .= $usr ? "&amp;usr="******"usr/" . $user->uname() . '/' : "?usr="******"explore/sets/usr/" . $user->uname() . "/" : "?explore=sets&amp;usr="******"cp/bookmarks/" : "?cp=bookmarks"));
    }
    include 'footer.php';
}