function category($id, $menuId, $fp = null) { //validation page type $categoryName = $categoryDesc = null; $label = app_param('label'); if ($id > 0) { $flag = FQuery("pustaka_category", "id={$id}", '', 1); } else { if (!empty($label)) { $label = app_param('label'); $label = str_replace("-", " ", $label); $label = "AND tags LIKE '%" . $label . "%' "; } $flag = true; } //if page type is valid if ($flag) { $db = new FQuery(); $db->connect(); /************** Parameter Page ***************/ $per_page = 10; $categoryId = $id; if (empty($param)) { $show_panel = 1; $per_page = 10; } if (url_param('feed') == 'rss') { $per_page = 10; $pages = url_param('page'); if ($pages != null) { $link = str_replace("?page={$pages}", "", getUrl()); redirect("{$link}?feed=rss"); } } if (isset($label)) { $per_page = 10; } if (empty($per_page)) { $per_page = 10; } //$fp is default page if (!isset($fp) and !isset($label)) { $categoryName = oneQuery('pustaka_category', 'id', $categoryId, 'name'); $categoryDesc = oneQuery('pustaka_category', 'id', $categoryId, 'description'); } $level_access = Level_Access; //$if category id is not found if (!$categoryId and !isset($fp) and !isset($label)) { echo pustaka_Page_Notfound; } else { if (isset($categoryName)) { $whereCat = "AND category = {$categoryId}"; } else { $whereCat = null; } //call paging class loadPaging(); $paging = new paging(); $rowsPerPage = $per_page; //paging results $result = $paging->pagerQuery(FDBPrefix . 'pustaka_file', "*", "status=1 {$whereCat} {$label}", 'id DESC', $rowsPerPage); $no = 0; //count rows $jml = mysql_affected_rows(); while ($qr = mysql_fetch_array($result)) { /********** File Author ***********/ $author = $qr['author']; /********** File Category ***********/ $catlink = categoryLink($qr['category']); $category = oneQuery('pustaka_category', 'id', $qr['category'], 'name'); $category = "<a href='{$catlink}' title='See more {$category}'>{$category}</a>"; /********** pdf Link ***********/ $flink = "?app=pdf&view=item&id={$qr['id']}"; $link = make_permalink($flink, Page_ID); $title = "<a href='{$link}'>{$qr['title']}</a>"; /********** File Labels ***********/ $labels = labelToLink($qr['tags']); /********** File Compability ***********/ $this->perrows = $jml; $this->show_panel = $show_panel; $this->category[$no] = $category; $this->catlink[$no] = $catlink; $this->author[$no] = $author; $this->title[$no] = $title; $this->link[$no] = $link; $this->labels[$no] = $labels; $this->date[$no] = $qr['year']; $this->hits[$no] = $qr['hits']; $this->desc[$no] = $qr['description']; if (url_param('feed') == 'rss' and url_param('feed') == 'rss' or app_param('label')) { $this->description[$no] = $qr['description']; } if (defined('SEF_URL')) { $link = link_paging('?'); } else { if (checkhomepage()) { $link = "?"; } else { $link = "?app=pdf&view=category&id={$categoryId}"; $link = make_permalink($link, Page_ID); $link = $link . "&"; } } $no++; } if ($no == 0) { echo "<h1 style='margin:20px auto'>Pustaka Kosong !!!!</h1>"; } //start paging links $db->select(FDBPrefix . 'pustaka_file', '*', "status=1 {$whereCat} {$level_access}"); $jml = mysql_affected_rows(); if ($jml > $rowsPerPage) { $pagelink = $paging->createPaging($link); } else { $pagelink = null; } //send paging var relsult $this->pglink = $pagelink; //if parameter found rss page if (url_param('feed') == 'rss' and url_param('feed') == 'rss' or app_param('label')) { $this->catName = $categoryName; $this->catDesc = $categoryDesc; } } } else { pustaka_Page_Notfound; } }
function category($type, $id = null, $format = null) { $link = null; /* Set global parameter */ $show_panel = menu_param('show_panel', Page_ID); $show_rss = menu_param('show_rss', Page_ID); $read_more = menu_param('read_more', Page_ID); $per_page = menu_param('per_page', Page_ID); $intro = menu_param('intro', Page_ID); if (empty($intro)) { $intro = $per_page; } /* Set Access_Level */ $accessLevel = Level_Access; if ($type == 'archives') { $where = "status=1"; } else { if ($type == 'category') { $catName = categoryInfo('name', $id); $catDesc = categoryInfo('description', $id); $catLink = categoryLink($id); $where = "status=1 AND category = {$id}"; } else { if ($type == 'featured') { $where = "status=1 AND featured = 1"; } else { if ($type == 'tag') { if (empty($per_page)) { $per_page = 10; } $tag = app_param('tag'); $tag = str_replace("-", " ", $tag); $where = "status=1 AND tags LIKE '%" . $tag . "%'"; } } } } if (_FEED_ == 'rss') { $per_page = 20; $pages = url_param('page'); if ($pages != null) { $link = str_replace("?page={$pages}", "", getUrl()); redirect("{$link}?feed=rss"); } } loadPaging(); $paging = new paging(); $result = $paging->pagerQuery(FDBPrefix . 'article', "*,\n\t\tDATE_FORMAT(date,'%d %M %Y') as date,\n\t\tDATE_FORMAT(date,'%Y-%m-%d %H:%i:%s') as order_date,\n\t\tDATE_FORMAT(date,'%a, %m %d %Y %H:%i:%s') as time,\n\t\tDATE_FORMAT(date,'%d') as f,\n\t\tDATE_FORMAT(date,'%D') as d,\n\t\tDATE_FORMAT(date,'%b') as b,\n\t\tDATE_FORMAT(date,'%a') as a,\n\t\tDATE_FORMAT(date,'%W') as D,\n\t\tDATE_FORMAT(date,'%m') as n,\n\t\tDATE_FORMAT(date,'%M') as m,\n\t\tDATE_FORMAT(date,'%y') as y,\n\t\tDATE_FORMAT(date,'%Y') as Y,\n\t\tDATE_FORMAT(date,'%h') as h,\n\t\tDATE_FORMAT(date,'%H') as H,\n\t\tDATE_FORMAT(date,'%p') as p,\n\t\tDATE_FORMAT(date,'%i') as i,\n\t\tDATE_FORMAT(date,'%s') as s", "{$where} {$accessLevel}", 'order_date DESC', $per_page); $no = 0; $perrows = mysql_affected_rows(); while ($qr = mysql_fetch_array($result)) { /* Category Details */ $catLinks = categoryLink($qr['category']); $category = categoryInfo('name', $qr['category']); $catHref = "<a href='{$catLinks}'>{$category}</a>"; /* Author */ if (empty($qr['author'])) { $author = userInfo('name', 1); } else { $author = $qr['author']; } /* Article Links */ $link = "?app=article&view=item&id={$qr['id']}"; $vlink = str_replace("&", "&", $link); $vlink = make_permalink($vlink); /* Article Title */ $title = "<a href='{$vlink}'>{$qr['title']}</a>"; $link = make_permalink($link); /* Article Tags */ $tags = tagToLink($qr['tags']); /* Article Content */ $article = $qr['article']; if (checkLocalhost()) { $article = str_replace(FLocal . "media/", "media/", $article); $article = str_replace("/media/", FUrl . "media/", $article); } $comment = null; /* Article Comments */ $comm = FQuery('comment', "link='{$link}'AND status=1"); if (FQuery('apps', "folder='app_comment'")) { $comment = "<a class='send-comment' href='{$link}#comment'>"; if ($comm > 1) { $comment .= "<span>{$comm}</span> " . Comments; } if ($comm == 1) { $comment .= "<span>{$comm}</span> " . Comment; } if ($comm < 1) { $comment .= Send_Comment; } $comment .= "</a>"; } $scomment = mod_param('show_comment', articleInfo('parameter', $qr['id'])); if (!$scomment) { $comment = ''; } /* Read More */ if (empty($read_more)) { $read_more = Readmore; } $readmore = "<a href='{$link}' class='readmore'>{$read_more}</a> {$comment}"; /* Intro limit (read more) */ $content = $article; /* Blog Style */ if ($format == 'blog' or $type == 'tag' or $format == 'list') { $image = articleImage($content); $image = str_replace("/media", "/media/.thumbs", $image); $imgH = menu_param('imgH', Page_ID); $imgW = menu_param('imgW', Page_ID); $this->image[$no] = $image; $this->imgH = $imgH; $this->imgW = $imgW; $content = preg_replace("/<img[^>]+\\>/i", "", $content); } $content = articleIntro($content); $panel = menu_param('panel_format', Page_ID); $fpanel = "#" . menu_param('panel_format', Page_ID); $dpanel = str_replace('%rel', "", $fpanel); if (empty($panel) or !strpos($dpanel, '%')) { if (siteConfig('lang') == 'id') { $panel = "<b>%A</b> · %f %m %Y · %c"; } else { $panel = "%m, %f %Y · <b>%A</b> · %c"; } } $panel = str_replace('%A', $author, $panel); $panel = str_replace('%c', "{$catHref}", $panel); $panel = str_replace('%h', $qr['hits'], $panel); $timeRel = dateRelative($qr['H'], $qr['i'], $qr['s'], $qr['n'], $qr['f'], $qr['Y']); if ($timeRel and strpos($fpanel, '%rel')) { $panel = str_replace(', ', "", $panel); $panel = str_replace('%d', "", $panel); $panel = str_replace('%f', "{$timeRel}", $panel); $panel = str_replace('%m', "", $panel); $panel = str_replace('%n', "", $panel); $panel = str_replace('%y', "", $panel); $panel = str_replace('%Y', "", $panel); $panel = str_replace('%H', "", $panel); $panel = str_replace('%h', "", $panel); $panel = str_replace('%i', "", $panel); $panel = str_replace('%s', "", $panel); $panel = str_replace('%p', "", $panel); if (strlen($panel) < 3) { $panel = $timeRel; } } else { if (siteConfig('lang') == 'id') { $panel = str_replace('%f', $qr['f'], $panel); } else { $panel = str_replace('%f', $qr['d'], $panel); } $panel = str_replace("%rel", $panel, $panel); $panel = str_replace('%d', $qr['d'], $panel); $panel = str_replace('%a', $qr['a'], $panel); $panel = str_replace('%b', $qr['b'], $panel); $panel = str_replace('%m', $qr['m'], $panel); $panel = str_replace('%n', $qr['n'], $panel); $panel = str_replace('%y', $qr['y'], $panel); $panel = str_replace('%Y', $qr['Y'], $panel); $panel = str_replace('%H', $qr['H'], $panel); $panel = str_replace('%h', $qr['h'], $panel); $panel = str_replace('%i', $qr['i'], $panel); $panel = str_replace('%s', $qr['s'], $panel); $panel = str_replace('%p', $qr['p'], $panel); } $panel = str_replace('*', "", $panel); /* RSS Feed */ $this->perrows = $perrows; $this->intro = $intro; $this->show_rss = $show_rss; $this->show_panel = $show_panel; $this->panel[$no] = $panel; $this->category[$no] = $category; $this->catlink[$no] = $catLinks; $this->readmore[$no] = $readmore; $this->comment[$no] = $comment; $this->author[$no] = $author; $this->title[$no] = $title; $this->link[$no] = $link; $this->tags[$no] = $tags; $this->ftime[$no] = $qr['time']; $this->hits[$no] = $qr['hits']; $this->desc[$no] = clearXMLString("{$content}"); $this->ftitle[$no] = clearXMLString($qr['title']); $this->content[$no] = $content; if (defined('SEF_URL')) { $link = link_paging('?'); if (strpos(getUrl(), '&') > 0) { $link = link_paging('&'); } } else { if (checkhomepage()) { $link = "?"; } else { if (!url_param('id')) { $tag = app_param('tag'); $link = "?app=article&tag={$tag}"; $link = make_permalink($link, Page_ID); $link = $link . "&"; } else { $link = "?app=article&view=category&id={$categoryId}"; $link = make_permalink($link, Page_ID); $link = $link . "&"; } } } $no++; } // pageLink $this->pglink = $paging->createPaging($link); // rssLink if ($type == 'tag') { $tag = str_replace(" ", "-", $tag); $rssLink = "?app=article&tag={$tag}&feed=rss"; } else { if ($type == 'category') { $rssLink = "?app=article&view=category&id={$id}&feed=rss"; } else { $rssLink = "?app=article&view=archives&feed=rss"; } } if (_FEED_ == 'rss') { $rssLink = make_permalink($rssLink); $this->rssTitle = @clearXMLString(SiteTitle); $categoryLink = @clearXMLString($rssLink); $categoryLink = str_replace(".xml", "", $categoryLink); $this->rssLink = $categoryLink; $this->rssDesc = @$categoryDesc; } else { $this->rssLink = make_permalink($rssLink); } }