예제 #1
0
 protected function _indexPage(&$iaView)
 {
     $page = isset($this->_iaCore->requestPath[0]) && in_array($this->_iaCore->requestPath[0], $this->_actions) ? $this->_iaCore->requestPath[0] : $this->_actions[0];
     $this->_checkActions($page, $iaView);
     switch ($page) {
         default:
             $pageCaption = iaLanguage::get('sql_management');
             $this->_queryPage($iaView);
             break;
         case 'export':
             $pageCaption = iaLanguage::get('export');
             $this->_exportPage($iaView);
             break;
         case 'import':
             $pageCaption = iaLanguage::get('import');
             $this->_importPage($iaView);
             break;
         case 'consistency':
             $pageCaption = iaLanguage::get('consistency');
             $this->_consistencyPage($iaView);
             break;
         case 'reset':
             $pageCaption = iaLanguage::get('reset');
             $this->_resetPage($iaView);
     }
     if ($this->getMessages()) {
         $iaView->setMessages($this->getMessages(), $this->_error ? iaView::ERROR : iaView::SUCCESS);
     }
     $iaView->assign('action', $page);
     iaBreadcrumb::toEnd($pageCaption, IA_SELF);
     $iaView->title($pageCaption);
     $iaView->display($this->getName());
 }
 private function _viewPage(&$iaView, $id)
 {
     $item = $this->getById($id);
     if (!$item) {
         return iaView::errorPage(iaView::ERROR_NOT_FOUND);
     }
     $iaUsers = $this->_iaCore->factory('users');
     $iaView->assign('item', $item);
     $iaView->assign('initiator', $iaUsers->getInfo($item['member_id']));
     iaBreadcrumb::toEnd(iaLanguage::get('claim_details'));
     $iaView->title(iaLanguage::get('claim_details'));
     $iaView->display('view');
 }
예제 #3
0
 if (isset($iaCore->requestPath[0])) {
     $id = (int) $iaCore->requestPath[0];
     if (!$id) {
         return iaView::errorPage(iaView::ERROR_NOT_FOUND);
     }
     $sql = 'SELECT b.`id`, b.`title`, b.`date_added`, b.`body`, b.`alias`, b.`image`, m.`fullname` ' . 'FROM `:prefix:table_blog_entries` b ' . 'LEFT JOIN `:prefix:table_members` m ON (b.`member_id` = m.`id`) ' . 'WHERE b.`id` = :id AND b.`status` = \':status\' ';
     $sql = iaDb::printf($sql, array('prefix' => $iaDb->prefix, 'table_blog_entries' => 'blog_entries', 'table_members' => iaUsers::getTable(), 'id' => iaSanitize::sql($id), 'status' => iaCore::STATUS_ACTIVE));
     $blogEntry = $iaDb->getRow($sql);
     $sql = 'SELECT DISTINCT bt.`title`, bt.`alias` ' . 'FROM `:prefix:table_blog_tags` bt ' . 'LEFT JOIN `:prefix:table_blog_entries_tags` bet ON (bt.`id` = bet.`tag_id`) ' . 'WHERE bet.`blog_id` = :id';
     $sql = iaDb::printf($sql, array('prefix' => $iaDb->prefix, 'table_blog_entries_tags' => 'blog_entries_tags', 'table_blog_tags' => 'blog_tags', 'id' => iaSanitize::sql($id)));
     $blogTags = $iaDb->getAll($sql);
     if (empty($blogEntry)) {
         return iaView::errorPage(iaView::ERROR_NOT_FOUND);
     }
     $title = iaSanitize::tags($blogEntry['title']);
     iaBreadcrumb::toEnd($title);
     $iaView->title($title);
     // add open graph data
     $openGraph = array('title' => $title, 'url' => IA_SELF, 'description' => $blogEntry['body']);
     if ($blogEntry['image']) {
         $openGraph['image'] = IA_CLEAR_URL . 'uploads/' . $blogEntry['image'];
     }
     $iaView->set('og', $openGraph);
     $iaView->assign('tags', $blogTags);
     $iaView->assign('blog_entry', $blogEntry);
 } else {
     $page = empty($_GET['page']) ? 0 : (int) $_GET['page'];
     $page = $page < 1 ? 1 : $page;
     $pageUrl = $iaCore->factory('page', iaCore::FRONT)->getUrlByName('blog');
     $pagination = array('start' => ($page - 1) * $iaCore->get('blog_number'), 'limit' => (int) $iaCore->get('blog_number'), 'template' => $pageUrl . '?page={page}');
     $order = 'date' == $iaCore->get('blog_order') ? 'ORDER BY `date_added` DESC' : 'ORDER BY `title` ASC';
예제 #4
0
파일: date.php 프로젝트: kamilklkn/subrion
                }
            }
            if (isset($iaCore->requestPath[0]) && !isset($iaCore->requestPath[1])) {
                iaBreadcrumb::preEnd('Blog Archive', 'blog/date');
                iaBreadcrumb::replaceEnd($iaCore->requestPath[0], IA_SELF);
                $iaView->title($iaCore->requestPath[0]);
            }
            $iaView->assign('show', $show);
            $iaView->assign('years', $years);
            $iaView->assign('months', $months);
        } else {
            $iaView->setMessages(iaLanguage::get('no_blog_entries'), iaView::ALERT);
        }
    } elseif (isset($iaCore->requestPath[0]) && isset($iaCore->requestPath[1])) {
        $page = empty($_GET['page']) ? 0 : (int) $_GET['page'];
        $page = $page < 1 ? 1 : $page;
        $pageUrl = $iaCore->factory('page', iaCore::FRONT)->getUrlByName('blog_date');
        $pagination = array('start' => ($page - 1) * $iaCore->get('blog_number'), 'limit' => (int) $iaCore->get('blog_number'), 'template' => $pageUrl . '?page={page}');
        $stmt = "`status` = 'active' AND MONTH(b.`date_added`) = '" . $iaCore->requestPath[1] . "' AND YEAR(b.`date_added`) = '" . $iaCore->requestPath[0] . "' ";
        $order = 'date' == $iaCore->get('blog_order') ? 'ORDER BY b.`date_added` DESC' : 'ORDER BY b.`title` ASC';
        $sql = 'SELECT SQL_CALC_FOUND_ROWS ' . 'b.`id`, b.`title`, b.`date_added`, b.`body`, b.`alias`, b.`image`, m.`fullname` ' . 'FROM `:prefix:table_blog_entries` b ' . 'LEFT JOIN `:prefix:table_members` m ON (b.`member_id` = m.`id`) ' . 'WHERE b.' . $stmt . $order . ' LIMIT :start, :limit';
        $sql = iaDb::printf($sql, array('prefix' => $iaDb->prefix, 'table_blog_entries' => 'blog_entries', 'table_members' => 'members', 'start' => $pagination['start'], 'limit' => $pagination['limit']));
        $blogs = $iaDb->getAll($sql);
        iaBreadcrumb::toEnd(date("F", mktime(0, 0, 0, $iaCore->requestPath[1], 10)));
        $pagination['total'] = $iaDb->foundRows();
        $iaView->assign('blogs', $blogs);
        $iaView->assign('pagination', $pagination);
        $iaView->title(date("F", mktime(0, 0, 0, $iaCore->requestPath[1], 10)));
    }
    $iaView->display('date');
}
예제 #5
0
 protected function _indexPage(&$iaView)
 {
     if ('phrases' == $iaView->get('name')) {
         iaBreadcrumb::preEnd(iaLanguage::get('languages'), IA_ADMIN_URL . 'languages/');
         $iaView->assign('action', 'phrases');
         $iaView->display('languages');
         return true;
     }
     $action = isset($this->_iaCore->requestPath[0]) ? $this->_iaCore->requestPath[0] : 'list';
     $iaView->assign('action', $action);
     switch ($action) {
         case 'search':
             $pageCaption = iaLanguage::get('search_in_phrases');
             break;
         case 'download':
             $pageCaption = iaLanguage::get('export_language');
             if (isset($_POST['lang']) && $_POST['lang'] || isset($this->_iaCore->requestPath[1]) && array_key_exists($this->_iaCore->requestPath[1], $this->_iaCore->languages)) {
                 $this->_downloadLanguage($iaView);
             }
             break;
         case 'comparison':
             $pageCaption = iaLanguage::get('languages_comparison');
             $this->_compareLanguages($iaView);
             break;
         case 'rm':
             // TODO: set checkAccess
             $this->_removeLanguage($iaView);
             iaUtil::go_to($this->getPath());
             break;
         case 'default':
             $this->_setLanguageAsDefault($iaView);
             iaUtil::go_to($this->getPath());
             break;
         case 'import':
             $result = $this->_importLanguage($iaView);
             iaUtil::go_to($this->getPath() . ($result ? '' : 'download/'));
             break;
     }
     if (isset($pageCaption)) {
         iaBreadcrumb::toEnd($pageCaption, IA_SELF);
         $iaView->title($pageCaption);
     }
 }
예제 #6
0
 protected function _setBreadcrumb()
 {
     if (self::REQUEST_HTML != $this->getRequestType()) {
         return;
     }
     $this->iaCore->factory('breadcrumb');
     if (iaBreadcrumb::total() > 0 || $this->isHomepage() && empty($this->iaCore->requestPath)) {
         return;
     }
     iaCore::ACCESS_FRONT == $this->iaCore->getAccessType() ? iaBreadcrumb::root($this->iaCore->get('bc_home'), IA_URL) : iaBreadcrumb::root(iaLanguage::get('dashboard'), IA_ADMIN_URL);
     $pluginName = $this->get('extras');
     switch ($this->iaCore->getAccessType()) {
         case iaCore::ACCESS_FRONT:
             $parents = array();
             $iaPage = $this->iaCore->factory('page', iaCore::FRONT);
             $iaPage->getParents($this->get('parent'), $parents);
             if ($parents) {
                 iaBreadcrumb::addChain($parents);
             } elseif ($pluginName && 'package' == $this->get('type') && $pluginName . '_home' != $this->name()) {
                 if ($this->iaCore->get('default_package') != $pluginName) {
                     iaBreadcrumb::add(iaLanguage::get($pluginName), IA_PACKAGE_URL);
                 }
             }
             if ($url = $iaPage->getUrlByName($this->name())) {
                 iaBreadcrumb::toEnd(iaLanguage::get('page_title_' . $this->name(), $this->name()), $url);
             }
             break;
         case iaCore::ACCESS_ADMIN:
             $iaPage = $this->iaCore->factory('page', iaCore::ADMIN);
             if ($pluginName) {
                 if ('package' == $this->get('type')) {
                     $title = iaLanguage::get($pluginName . '_package');
                     $url = IA_ADMIN_URL . $pluginName . IA_URL_DELIMITER;
                     $pluginName . '_stats' != $this->name() ? iaBreadcrumb::add($title, $url) : iaBreadcrumb::replaceEnd($title, $url);
                 }
             }
             $url = $iaPage->getUrlByName($this->name());
             iaBreadcrumb::add($this->get('title', $this->name()), $url);
             if (in_array($this->get('action'), array(iaCore::ACTION_ADD, iaCore::ACTION_EDIT))) {
                 iaBreadcrumb::toEnd(iaLanguage::get($this->get('action')), IA_SELF);
             }
     }
 }
예제 #7
0
 private function _setGroup(&$iaView, array $groupData)
 {
     $iaItem = $this->_iaCore->factory('item');
     if ($this->_type) {
         $entity = 'user' == $this->_type ? $this->_iaCore->factory('users')->getInfo($this->_typeId) : $this->_iaDb->row(array('name'), iaDb::convertIds($this->_typeId), iaUsers::getUsergroupsTable());
         if (!$entity) {
             return iaView::errorPage(iaView::ERROR_NOT_FOUND);
         }
         $title = 'user' == $this->_type ? $entity['fullname'] : iaLanguage::get('usergroup_' . $entity['name']);
         $title = iaLanguage::getf('custom_configuration_title', array('settings' => $groupData['title'], 'title' => $title, 'type' => strtolower(iaLanguage::get('user' == $this->_type ? 'member' : 'usergroup'))));
     } else {
         $title = $groupData['title'];
     }
     $iaView->title($title);
     if ($groupData['extras']) {
         $iaPage = $this->_iaCore->factory('page', iaCore::ADMIN);
         $activeMenu = $groupData['name'];
         if ($groupData['extras'] == $this->_iaCore->get('tmpl')) {
             // template configuration options
             $page = $iaPage->getByName('templates');
             $iaView->set('group', $page['group']);
             $iaView->set('active_config', $groupData['name']);
             iaBreadcrumb::add($page['title'], IA_ADMIN_URL . $page['alias']);
         } elseif ($pluginPage = $this->_iaDb->row(array('alias', 'group'), iaDb::printf("`name` = ':name' OR `name` = ':name_stats'", array('name' => $groupData['extras'])), iaPage::getAdminTable())) {
             // it is a package
             $iaView->set('group', $pluginPage['group']);
             $iaView->set('active_config', $groupData['name']);
             $activeMenu = null;
             iaBreadcrumb::insert($groupData['title'], IA_ADMIN_URL . $pluginPage['alias'], iaBreadcrumb::POSITION_FIRST);
         } elseif ($iaItem->isExtrasExist($groupData['extras'], iaItem::TYPE_PLUGIN)) {
             // plugin with no admin pages
             $iaView->set('group', 5);
             $iaView->set('active_config', $groupData['extras']);
         }
     } else {
         $activeMenu = 'configuration_' . $groupData['name'];
         iaBreadcrumb::toEnd($groupData['title'], IA_SELF);
     }
     $iaView->set('active_menu', $activeMenu);
 }
예제 #8
0
 ******************************************************************************/
$iaDb->setTable('portfolio_entries');
if (iaView::REQUEST_HTML == $iaView->getRequestType()) {
    $iaView->iaSmarty->compile_check = true;
    unset($iaCore->iaView->blocks['left']);
    unset($iaCore->iaView->blocks['right']);
    if (isset($iaCore->requestPath[0])) {
        $id = (int) $iaCore->requestPath[0];
        if (!$id) {
            return iaView::errorPage(iaView::ERROR_NOT_FOUND);
        }
        $portfolioEntry = $iaDb->row_bind(iaDb::ALL_COLUMNS_SELECTION, 'id = :id AND `status` = :status', array('id' => $id, 'status' => iaCore::STATUS_ACTIVE));
        if (empty($portfolioEntry)) {
            return iaView::errorPage(iaView::ERROR_NOT_FOUND);
        }
        iaBreadcrumb::toEnd($portfolioEntry['title'], IA_SELF);
        $openGraph = array('title' => $portfolioEntry['title'], 'url' => IA_SELF, 'description' => $portfolioEntry['body']);
        if (isset($portfolioEntry['image'])) {
            $openGraph['image'] = IA_CLEAR_URL . 'uploads/' . $portfolioEntry['image'];
        }
        $iaView->set('og', $openGraph);
        $iaView->assign('portfolio_entry', $portfolioEntry);
        $iaView->title(iaSanitize::tags($portfolioEntry['title']));
    } else {
        $page = empty($_GET['page']) ? 0 : (int) $_GET['page'];
        $page = $page < 1 ? 1 : $page;
        $pageUrl = $iaCore->factory('page', iaCore::FRONT)->getUrlByName('portfolio');
        $pagination = array('start' => ($page - 1) * $iaCore->get('portfolio_entries_per_page'), 'limit' => (int) $iaCore->get('portfolio_entries_per_page'), 'template' => $pageUrl . '?page={page}');
        $order = 'date' == $iaCore->get('portfolio_entries_order') ? 'ORDER BY `date_added` DESC' : 'ORDER BY `title` ASC';
        $stmt = '`status` = :status AND `lang` = :language';
        $iaDb->bind($stmt, array('status' => iaCore::STATUS_ACTIVE, 'language' => $iaView->language));
예제 #9
0
    $pagination = array('limit' => 20, 'total' => (int) $iaDb->one(iaDb::STMT_COUNT_ROWS, $cause . "`status` = 'active' "), 'url' => IA_URL . 'members/' . ($letters['active'] ? $letters['active'] . '/' : '') . '?page={page}');
    $page = !empty($_GET['page']) ? (int) $_GET['page'] : 1;
    $start = (max($page, 1) - 1) * $pagination['limit'];
    $membersList = $iaDb->all(iaDb::ALL_COLUMNS_SELECTION, $cause . "`status` = 'active' ORDER BY `date_reg`", $start, $pagination['limit']);
    $fields = $iaCore->factory('field')->filter($membersList, iaUsers::getTable());
    $letters['existing'] = array();
    $array = $iaDb->all('DISTINCT UPPER(SUBSTR(`' . $filterBy . '`, 1, 1)) `letter`', $cause . "`status` = 'active' GROUP BY `username`");
    $iaDb->resetTable();
    if ($array) {
        foreach ($array as $item) {
            $letters['existing'][] = $item['letter'];
        }
    }
    // breadcrumb formation
    if ($activeGroup) {
        iaBreadcrumb::toEnd(iaLanguage::get('usergroup_' . $usergroups[$activeGroup]), IA_URL . 'members/?group=' . $activeGroup);
    }
    if ($letters['active']) {
        iaBreadcrumb::toEnd($letters['active'], IA_SELF);
    }
    if ($membersList) {
        $membersList = $iaCore->factory('item')->updateItemsFavorites($membersList, $iaUsers->getItemName());
    }
    $iaView->assign('title', iaLanguage::get('members') . ($letters['active'] ? " [ {$letters['active']} ] " : ''));
    $iaView->assign('filter', $filterBy);
    $iaView->assign('letters', $letters);
    $iaView->assign('members', $membersList);
    $iaView->assign('pagination', $pagination);
    $iaView->assign('fields', $fields);
    $iaView->title(iaLanguage::get('members') . ($letters['active'] ? " [{$letters['active']}] " : ''));
}
예제 #10
0
 private function _setGroup(&$iaView, &$iaItem, array $groupData)
 {
     $iaView->title($groupData['title']);
     if ($groupData['extras']) {
         $iaPage = $this->_iaCore->factory('page', iaCore::ADMIN);
         $activeMenu = $groupData['name'];
         if ($groupData['extras'] == $this->_iaCore->get('tmpl')) {
             // template configuration options
             $page = $iaPage->getByName('templates');
             $iaView->set('group', $page['group']);
             $iaView->set('active_config', $groupData['name']);
             iaBreadcrumb::add($page['title'], IA_ADMIN_URL . $page['alias']);
         } elseif ($pluginPage = $this->_iaDb->row(array('alias', 'group'), iaDb::printf("`name` = ':name' OR `name` = ':name_stats'", array('name' => $groupData['extras'])), iaPage::getAdminTable())) {
             // it is a package
             $iaView->set('group', $pluginPage['group']);
             $iaView->set('active_config', $groupData['name']);
             $activeMenu = null;
             iaBreadcrumb::insert($groupData['title'], IA_ADMIN_URL . $pluginPage['alias'], iaBreadcrumb::POSITION_FIRST);
         } elseif ($iaItem->isExtrasExist($groupData['extras'], iaItem::TYPE_PLUGIN)) {
             // plugin with no admin pages
             $iaView->set('group', 5);
             $iaView->set('active_config', $groupData['extras']);
         }
     } else {
         $activeMenu = 'configuration_' . $groupData['name'];
         iaBreadcrumb::toEnd($groupData['title'], IA_SELF);
     }
     $iaView->set('active_menu', $activeMenu);
 }