Example #1
0
 function handler_group_ajax_news($page, $group)
 {
     $group = Group::fromId($group);
     $news = false;
     if ($group) {
         $news = array();
         $group->select(GroupSelect::castes());
         $filters = new UFC_Group(explode(';', Json::v('promo')));
         $onlybefore = new NFC_Begin(new FrankizDateTime(), NFC_Begin::BEFORE);
         if (S::user()->hasRights($group, Rights::admin()) || S::user()->isWeb()) {
             $onlybefore = new PFC_True();
         }
         $nf = new NewsFilter(new PFC_And(new NFC_Origin($group), new NFC_CanBeSeen(S::user()), $onlybefore), new NFO_Begin(true));
         $ns = $nf->get(new PlLimit(10))->select(NewsSelect::head());
         foreach ($ns as $nid => $n) {
             $page->assign('news', $n);
             $news[$nid] = $page->fetch(FrankizPage::getTplPath('groups/news.tpl'));
         }
     }
     $page->jsonAssign('news', $news);
     return PL_JSON;
 }
Example #2
0
 public function run()
 {
     $nf = new NewsFilter(new PFC_And(new NFC_Current(), new PFC_Or(new PFC_Not(new NFC_Read(S::user())), new NFC_Star(S::user())), new NFC_Target(S::user()->targetCastes())));
     $news = $nf->get()->select(NewsSelect::head());
     $this->assign('news', $news);
 }