/** * Initializes the list from database */ function init() { $db = SqlHandler::getInstance(); //XXX use SqlObject loading $q = 'SELECT * FROM tblCategories WHERE categoryType=' . $this->type . ' '; if ($this->owner) { $q .= 'AND ownerId=' . $this->owner; } $list = $db->getArray($q); foreach ($list as $row) { $cat = new CategoryItem($this->type); $cat->setId($row['categoryId']); $cat->setTitle($row['categoryName']); $cat->setOwner($row['ownerId']); $cat->setPermissions($row['permissions']); $cat->setCreator($row['creatorId']); $cat->TimeCreated = new Timestamp($row['timeCreated']); $this->addItem($cat); } }
public static function handlePostRequest() { $data = static::getRequestData(); // create Content object $Content = new CMS_BlogPost(); $Content->Title = $data['Title']; $Content->save(); // create text ContentItem object $ContentItem = new CMS_RichTextContent(); $ContentItem->ContentID = $Content->ID; $ContentItem->Data = $data['Data']; $ContentItem->save(); // create CategoryItem object foreach if (is_array($data['Categories']) && count($data['Categories'])) { foreach ($data['Categories'] as $cat) { $Category = Category::getByID($cat); $CategoryItem = new CategoryItem(); $CategoryItem->ContextClass = 'CMS_BlogPost'; $CategoryItem->ContextID = $Content->ID; $CategoryItem->CategoryID = $Category->ID; $CategoryItem->save(); } } // create TagItem object foreach. if Tag object doesn't exist, create as well if (is_array($data['Tags']) && count($data['Tags'])) { foreach ($data['Tags'] as $word) { $Tag = Tag::getFromHandle($word, true); // second boolean is telling method to make the Tag object for us if it doesn't exist $TagItem = new TagItem(); $TagItem->ContextClass = 'CMS_BlogPost'; $TagItem->ContextID = $Content->ID; $TagItem->TagID = $Tag->ID; $TagItem->save(); } } return static::respondCRUD($Content, 'singular', 'created'); }
function addPoll($p) { if (empty($p['poll_q'])) { return; } if (!empty($p['poll_start_man'])) { $pollId = PollItem::addPollExactPeriod(SITE, 0, $p['poll_q'], $p['poll_start_man'], $p['poll_end_man']); } else { $pollId = PollItem::add(SITE, 0, $p['poll_q'], $p['poll_dur'], $p['poll_start']); } for ($i = 1; $i <= 8; $i++) { if (empty($p['poll_a' . $i])) { continue; } $item = new CategoryItem(POLL); $item->owner = $pollId; $item->title = $p['poll_a' . $i]; $item->store(); } js_redirect('a/polls/list'); }