diff --git a/e107_handlers/form_handler.php b/e107_handlers/form_handler.php index b47864423..a911ec34c 100644 --- a/e107_handlers/form_handler.php +++ b/e107_handlers/form_handler.php @@ -2241,6 +2241,8 @@ class e_form $tp = e107::getParser(); $types = explode(',',$type); + $list = array(); + foreach($types as $plug) { diff --git a/e107_plugins/news/e_related.php b/e107_plugins/news/e_related.php new file mode 100644 index 000000000..0ff9b1e52 --- /dev/null +++ b/e107_plugins/news/e_related.php @@ -0,0 +1,55 @@ +gen($query)) + { + while($row = $sql->fetch()) + { + $items[] = array( + 'title' => $row['news_title'], + 'url' => e107::getUrl()->create('news/view/item',$row), // '{e_BASE}news.php?extend.'.$row['news_id'], + 'body' => $row['news_summary'], + 'image' => $row['news_image'] + ); + } + + return $items; + } + elseif(ADMIN) + { + return array(array('title'=>$query,'url'=>'')); + } + } + +} + + + +?> \ No newline at end of file diff --git a/e107_plugins/page/e_related.php b/e107_plugins/page/e_related.php new file mode 100644 index 000000000..32ccce497 --- /dev/null +++ b/e107_plugins/page/e_related.php @@ -0,0 +1,88 @@ +retrieve("SELECT chapter_id,chapter_sef,chapter_parent FROM #page_chapters ORDER BY chapter_id ASC" , true); + + foreach($books as $row) + { + $id = $row['chapter_id']; + $this->chapterSef[$id] = $row['chapter_sef']; + $this->chapterParent[$id] = $row['chapter_parent']; + } + + } + + private function getSef($chapter) + { + return vartrue($this->chapterSef[$chapter],'--sef-not-assigned--'); + } + + private function getParent($chapter) + { + return varset($this->chapterParent[$chapter], false); + } + + + function compile($tags,$parm=array()) + { + $sql = e107::getDb(); + $items = array(); + + + $tag_regexp = "'(^|,)(".str_replace(",", "|", $tags).")(,|$)'"; + + $query = "SELECT * FROM #page WHERE page_id != ".$parm['current']." AND page_class REGEXP '".e_CLASS_REGEXP."' AND page_metakeys REGEXP ".$tag_regexp." ORDER BY page_datestamp DESC LIMIT ".$parm['limit']; + + if($sql->gen($query)) + { + while($row = $sql->fetch()) + { + $row['chapter_sef'] = $this->getSef($row['page_chapter']); + $book = $this->getParent($row['page_chapter']); + $row['book_sef'] = $this->getSef($book); + + + $items[] = array( + 'title' => $row['page_title'], + 'url' => e107::getUrl()->create('page/view/index',$row), // '{e_BASE}news.php?extend.'.$row['news_id'], + 'body' => $row['news_summary'], + 'image' => $row['news_image'] + ); + } + + return $items; + } + else + { + return array(array('title'=>$query,'url'=>'')); + } + } + +} + + + +?> \ No newline at end of file