public function assert(Acl $acl, $role = null, $resource = null, $privilege = null) { if (!Helper_Page::instance()->not_equal($resource, 'type', 'module')) { return FALSE; } return TRUE; }
public function assert(Acl $acl, $role = null, $resource = null, $privilege = null) { $hasnt_module = Helper_Page::instance()->not_equal($resource, 'type', 'module'); if (!$resource->can_hiding or $resource->site_id != $this->_site_id_master or $this->_site_id == $this->_site_id_master or !$hasnt_module) { return FALSE; } return TRUE; }
public function hook_callback($content, $orm) { $request = $this->request; $back_url = $request->url(); $query_array = $request->query(); if (!empty($query_array)) { $back_url .= '?' . http_build_query($query_array); } $back_url .= '#tab-' . $this->tab_code; unset($query_array); $query_array = array('group' => $this->blog_group, 'blog' => $orm->blog_id, 'back_url' => $back_url, 'content_only' => TRUE); $query_array = Paginator::query($request, $query_array); $link = Route::url('modules', array('controller' => $this->controller_name, 'query' => Helper_Page::make_query_string($query_array))); $html_blog = Request::factory($link)->execute()->body(); $tab_nav_html = View_Admin::factory('layout/tab/nav', array('code' => $this->tab_code, 'title' => '<b>' . __('Blog') . '</b>')); $tab_pane_html = View_Admin::factory('layout/tab/pane', array('code' => $this->tab_code, 'content' => $html_blog)); return str_replace(array('<!-- #tab-nav-insert# -->', '<!-- #tab-pane-insert# -->'), array($tab_nav_html . '<!-- #tab-nav-insert# -->', $tab_pane_html . '<!-- #tab-pane-insert# -->'), $content); }
public function action_clear_cache() { Helper_Page::clear_cache(); if (empty($this->back_url)) { $this->back_url = Route::url('admin', array('controller' => 'pages')); } $this->request->current()->redirect($this->back_url); }
protected function _get_breadcrumbs() { $query_array = array('group' => $this->group_key); return array(array('title' => __('Blogs'), 'link' => Route::url('modules', array('controller' => $this->controller_name['entity'], 'query' => Helper_Page::make_query_string($query_array))))); }
protected function _get_breadcrumbs() { $breadcrumbs = parent::_get_breadcrumbs(); $query_array = array('group' => $this->group_key, 'blog' => $this->blog_id); $category_orm = ORM::factory('blog')->and_where('id', '=', $this->blog_id)->find(); if ($category_orm->loaded()) { $breadcrumbs[] = array('title' => $category_orm->title, 'link' => Route::url('modules', array('controller' => $this->controller_name['element'], 'query' => Helper_Page::make_query_string($query_array)))); } $action = $this->request->current()->action(); if (in_array($action, array('edit', 'view'))) { $id = (int) $this->request->current()->param('id'); $element_orm = ORM::factory('blog_Post')->where('id', '=', $id)->find(); if ($element_orm->loaded()) { switch ($action) { case 'edit': $_str = ' [' . __('edition') . ']'; break; case 'view': $_str = ' [' . __('viewing') . ']'; break; default: $_str = ''; } $breadcrumbs[] = array('title' => $element_orm->title . $_str); } else { $breadcrumbs[] = array('title' => ' [' . __('new post') . ']'); } } return $breadcrumbs; }
protected function _get_breadcrumbs() { $query_array = array('page' => $this->module_page_id); return array(array('title' => __('Categories'), 'link' => Route::url('modules', array('controller' => $this->controller_name['category'], 'query' => Helper_Page::make_query_string($query_array))))); }
<?php defined('SYSPATH') or die('No direct access allowed.'); echo View_Admin::factory('layout/breadcrumbs', array('breadcrumbs' => $breadcrumbs)); $query_array = array('group' => $GROUP_KEY, 'album' => $ALBUM_ID); $action = Route::url('modules', array('controller' => $CONTROLLER_NAME['multiupload'], 'action' => 'upload', 'query' => Helper_Page::make_query_string($query_array))); ?> <div class="row"> <div class="span4"> <div class="form-inline"> <label for="js-album"><?php echo __('Album'); ?> :</label> <?php echo Form::select('album_id', array('' => '') + $albums, FALSE, array('id' => 'js-album')); ?> </div> </div> <div class="span5"> <div class="form-inline pull-right" style="padding-top: 5px;"> <label for="js-to-head" class="checkbox-label"><?php echo __('Add to head'); ?> </label> <?php echo Form::checkbox('to_head', 1, FALSE, array('id' => 'js-to-head', 'style' => 'margin: -1px 0 0 5px')); ?> </div> </div>
defined('SYSPATH') or die('No direct access allowed.'); echo View_Admin::factory('layout/breadcrumbs', array('breadcrumbs' => $breadcrumbs)); $orm = $helper_orm->orm(); $labels = $orm->labels(); $required = $orm->required_fields(); $query_array = array('group' => $GROUP_KEY, 'blog' => $BLOG_ID); if (!empty($BACK_URL)) { $query_array['back_url'] = $BACK_URL; } if ($orm->loaded()) { $query_array = Paginator::query(Request::current(), $query_array); $action = Route::url('modules', array('controller' => $CONTROLLER_NAME['element'], 'action' => 'edit', 'id' => $orm->id, 'query' => Helper_Page::make_query_string($query_array))); $_link = Route::url('preview', array('directory' => 'modules', 'controller' => 'blog', 'query' => Helper_Page::make_query_string(array('id' => $orm->id, 'token' => Route::get_preview_token($orm->id)))), NULL, $SITE['code']); $preview_link = HTML::anchor($_link, __('Preview link'), array('class' => 'item-preview-link', 'target' => '_blank')); } else { $action = Route::url('modules', array('controller' => $CONTROLLER_NAME['element'], 'action' => 'edit', 'query' => Helper_Page::make_query_string($query_array))); $preview_link = ''; } echo View_Admin::factory('layout/error')->bind('errors', $errors); ?> <form method="post" action="<?php echo $action; ?> " enctype="multipart/form-data" class="form-horizontal" > <div class="tabbable"> <ul class="nav nav-tabs kr-nav-tsbs"> <?php echo '<li class="active">', HTML::anchor('#tab-main', __('Main'), array('data-toggle' => 'tab')), '</li>'; echo '<li>', HTML::anchor('#tab-description', __('Description'), array('data-toggle' => 'tab')), '</li>'; if (!empty($properties)) {
echo $have_cent; die; } //sql $filter = array(); $filter['where'] = "customer_id = {$customer_id}"; $filter['order'] = "id desc"; $filter['order'] .= $status ? ',status asc' : ',status desc'; if ($have_cent) { $filter['order'] .= ',have_cent desc'; } //result $result = $memberModel->paginate($filter, '*', $page, 10); $pager = $result['pager']; //pager if ($pager['count'] > $pager['size']) { $pagerhtml = new SubPages($pager['size'], $pager['count'], $pager['current'], $pager['range'], 2, ''); $smarty->assign("pagerhtml", $pagerhtml); } foreach ($result['data'] as $key => $row) { $result['data'][$key]['subscribe_time'] = date('Y-m-d', $row['subscribe_time']); $result['data'][$key]['unsubscribe_time'] = date('Y-m-d', $row['unsubscribe_time']); $result['data'][$key]['status'] = $memberModel->getStatus($row['status']); } //smarty $smarty->assign("memberlist", $result['data']); $smarty->assign('statusUri', Helper_Page::status(!$status)); //排序uri拼装 $smarty->assign('haveCentUri', Helper_Page::haveCent(!$have_cent)); ////排序uri拼装 $smarty->setTpl('member/templates/list.html')->display();
</td> <td> <?php echo '<div class="btn-group">'; echo HTML::anchor(str_replace('{id}', $_orm->id, $view_tpl), '<i class="icon-file"></i> ' . __('View'), array('class' => 'btn', 'title' => __('View'))); if ($_orm->new) { echo '<a class="btn dropdown-toggle" data-toggle="dropdown" href="#"><span class="caret"></span></a>'; echo '<ul class="dropdown-menu">'; echo '<li>', HTML::anchor(str_replace('{id}', $_orm->id, $mark_tpl), '<i class="icon-ok"></i> ' . __('Mark as read'), array('title' => __('Mark as read'))), '</li>'; echo '</ul>'; } echo '</div>'; ?> </td> </tr> <?php } ?> </tbody> </table> <?php $query_array = array('owner' => $OWNER); $filter_query = Request::current()->query('filter'); if (!empty($filter_query)) { $query_array['filter'] = $filter_query; } if (!empty($BACK_URL)) { $query_array['back_url'] = $BACK_URL; } $link = Route::url('admin', array('controller' => $CONTROLLER_NAME['structure'], 'action' => 'form', 'id' => $orm_form->id, 'query' => Helper_Page::make_query_string($query_array))); echo $paginator->render($link);
echo __('Article'), ': ', $_orm->code; ?> </small> </section> </a> </figure> </div> <?php } ?> <div class="clearfix"></div> <?php $request = Request::current(); $query_array = array(); $filter_array = $request->query('filter'); if (!empty($filter_array)) { $query_array['filter'] = $filter_array; } $order = $request->query('order'); if (!empty($order)) { $query_array['order'] = $order; } $category_uri = Request::current()->param('category_uri'); $link = URL::base() . Page_Route::uri($PAGE_ID, 'catalog', array('category_uri' => implode('/', array_reverse($category_uri)), 'query' => Helper_Page::make_query_string($query_array))); echo $paginator->render($link); ?> </div> </div> <?php }
function draw_sub($childrens, $reference, $tpl, $inactive) { static $depth; $depth = isset($depth) ? ++$depth : 0; $ACL = $reference['ACL']; $USER = $reference['USER']; $modules = $reference['modules']; $base_uri_list = $reference['base_uri_list']; $status_codes = $reference['status_codes']; $page_types = $reference['page_types']; $tpl_array = $reference['tpl_array']; $hided_list = $reference['hided_list']; $query_region = $reference['query_region']; $_list = array(); foreach ($childrens as $_item) { $item = $_item['object']; $tpl_array = $reference['tpl_array']; $_attr = array(); $_attr_title = array(); if (strpos($base_uri_list[$item->id], 'http') === 0) { $_uri = $base_uri_list[$item->id]; } else { $_uri = URL::base() . $base_uri_list[$item->id]; } $_uri .= $query_region; $_status_icon = $item->level > 1 ? '<div class="marker"></div>' : ''; switch ($item->status) { case $status_codes['inactive']: $_attr[] = 'inactive'; $_attr_title[] = 'Неактивно'; $_link = '<span>' . $_uri . '</span>'; $_status_icon .= '<i class="icon-ban-circle icon"></i> '; break; case $status_codes['hidden']: $_link = HTML::anchor($_uri, $_uri, array('target' => '_blank')); $_status_icon .= '<i class="icon-asterisk icon"></i> '; break; case $status_codes['active']: $_link = HTML::anchor($_uri, $_uri, array('target' => '_blank')); $_status_icon .= '<i class="icon-eye-open icon"></i> '; break; } if (in_array($item->id, $hided_list)) { $_attr[] = 'hided-element'; } if ($item->for_all) { $_title = "<strong>{$item->title}</strong>"; } else { $_title = $item->title; } $__list = array(); if ($ACL->is_allowed($USER, $item, 'edit')) { if (!Helper_Page::instance()->not_equal($item, 'type', 'module') or !empty($item->name)) { unset($tpl_array['delete_tpl']); } unset($tpl_array['visibility_tpl']); foreach ($tpl_array as $__key => $__tpl) { $__list[] = str_replace('--ID--', $item->id, $__tpl); } } else { foreach ($tpl_array as $__key => $__tpl) { if ($__key == 'visibility_tpl') { if ($ACL->is_allowed($USER, $item, 'can_hide')) { if (in_array($item->id, $hided_list)) { $__list[] = str_replace(array('--ID--', '--mode--', '--TITLE--', '--icon-class--'), array($item->id, 'show', __('Show'), 'icon-eye-open'), $__tpl); } else { $__list[] = str_replace(array('--ID--', '--mode--', '--TITLE--', '--icon-class--'), array($item->id, 'hide', __('Hide'), 'icon-eye-close'), $tpl_array['visibility_tpl']); } } break; } } } $_actions = implode('', $__list); if ($item->type == 'module') { $_descr = __($modules[$item->data]['name']); } else { $_descr = $page_types[$item->type]; } $_childrens = ''; if (!empty($_item['childrens'])) { $_childrens = draw_sub($_item['childrens'], $reference, $tpl, $inactive || $item->status == $status_codes['inactive']); } $_attr = ' class="' . implode(' ', $_attr) . '"'; if (!empty($_attr_title)) { $_attr .= ' title="' . implode(' ', $_attr_title) . '"'; } $_list[] = str_replace(array('{ATTR}', '{STATUS_ICONS}', '{ACTIONS}', '{TITLE}', '{LINK}', '{DESCRIPTION}', '{CHILDRENS}'), array($_attr, $_status_icon, $_actions, $_title, $_link, $_descr, $_childrens), $tpl); } $class = $depth > 0 ? 'sub' : 'list-pages'; $depth--; return '<ul class="' . $class . '">' . implode('', $_list) . '</ul>'; }
protected function _get_breadcrumbs() { $query_array = array('owner' => $this->owner); $breadcrumbs = array(array('title' => __('Forms (Responses)'), 'link' => Route::url('admin', array('controller' => $this->controller_name['responses'], 'query' => Helper_Page::make_query_string($query_array))))); return array_merge($breadcrumbs, $this->breadcrumbs); }
echo HTML::anchor(str_replace('{id}', $_orm->id, $edit_tpl), '<i class="icon-edit"></i> ' . __('Edit'), array('class' => 'btn', 'title' => __('Edit'))); if ($ACL->is_allowed($USER, $_orm, 'edit') and !in_array($_orm->owner, $NOT_DELETED_OWNER)) { echo '<a class="btn dropdown-toggle" data-toggle="dropdown" href="#"><span class="caret"></span></a>'; echo '<ul class="dropdown-menu">'; echo '<li>', HTML::anchor(str_replace('{id}', $_orm->id, $delete_tpl), '<i class="icon-remove"></i> ' . __('Delete'), array('class' => 'delete_button', 'title' => __('Delete'))), '</li>'; echo '</ul>'; } echo '</div>'; ?> </td> </tr> <?php } ?> </tbody> </table> <?php if (empty($BACK_URL)) { $query_array = array('owner' => $OWNER); $filter_query = Request::current()->query('filter'); if (!empty($filter_query)) { $query_array['filter'] = $filter_query; } if (!empty($BACK_URL)) { $query_array['back_url'] = $BACK_URL; } $link = Route::url('admin', array('controller' => $CONTROLLER_NAME['structure'], 'query' => Helper_Page::make_query_string($query_array))); } else { $link = $BACK_URL; } echo $paginator->render($link);
protected function _generate() { $_common_set = array(); $this->pages_uris = Helper_Page::parse_to_base_uri(ORM::factory('page')->find_all()); $pages = $this->get_pages(); foreach ($pages as $item) { $item = $this->set_default_values($item); $_set = array(); if ($item['type'] == 'static') { $_set[] = $this->_page_item($item); } elseif ($item['type'] == 'module') { switch ($item['data']) { case 'cities': case 'contacts': case 'chart': case 'feedback': case 'playlist': case 'search': $_set[] = $this->_page_item($item); break; case 'news': $_set = $this->_news_items($item); break; case 'programs': $_set = $this->_programs_items($item); break; case 'staff': $_set = $this->_staff_items($item); break; } } if ($item['sm_separate_file'] == 1 and !empty($_set)) { $sitemap = new Sitemap(); foreach ($_set as $_item) { $sitemap_url = new Sitemap_URL(); $sitemap_url->set_loc($_item['loc'])->set_change_frequency($_item['changefreq'])->set_priority(str_replace(',', '.', $_item['priority'])); if (!empty($_item['lastmod'])) { $_unix_time = strtotime($_item['lastmod']); $sitemap_url->set_last_mod($_unix_time); } $sitemap->add($sitemap_url); unset($sitemap_url); } $this->write_to_file($this->sitemap_directory . DIRECTORY_SEPARATOR . 'part_' . uniqid() . '.xml', $sitemap->render()); unset($sitemap); } else { $_common_set = array_merge($_common_set, $_set); } } if (!empty($_common_set)) { $sitemap = new Sitemap(); foreach ($_common_set as $_item) { $sitemap_url = new Sitemap_URL(); $sitemap_url->set_loc($_item['loc'])->set_change_frequency($_item['changefreq'])->set_priority(str_replace(',', '.', $_item['priority'])); if (!empty($_item['lastmod'])) { $_unix_time = strtotime($_item['lastmod']); $sitemap_url->set_last_mod($_unix_time); } $sitemap->add($sitemap_url); unset($sitemap_url); } $this->write_to_file($this->sitemap_directory . DIRECTORY_SEPARATOR . uniqid('common_') . '.xml', $sitemap->render()); unset($sitemap); } }
public function action_delete() { $request = $this->request->current(); $id = (int) $request->param('id'); $helper_orm = ORM_Helper::factory('site', $id); $orm = $helper_orm->orm(); if (!$orm->loaded() or !$this->acl->is_allowed($this->user, $orm, 'edit')) { throw new HTTP_Exception_404(); } if ($this->element_delete($helper_orm)) { if (empty($this->back_url)) { $query_array = Paginator::query($request); $this->back_url = Route::url('admin', array('controller' => 'sites', 'query' => Helper_Page::make_query_string($query_array))); } $request->redirect($this->back_url); } }
public function action_visibility() { $request = $this->request->current(); $id = (int) $request->param('id'); $mode = $request->query('mode'); $orm = ORM::factory('news_Category')->where('page_id', '=', $this->module_page_id)->and_where('id', '=', $id)->find(); if (!$orm->loaded() or !$this->acl->is_allowed($this->user, $orm, 'hide')) { throw new HTTP_Exception_404(); } if (in_array($orm->code, $this->not_deleted_categories)) { throw new HTTP_Exception_404(); } if ($mode == 'hide') { $this->element_hide($orm->object_name(), $orm->id); } elseif ($mode == 'show') { $this->element_show($orm->object_name(), $orm->id); } if (empty($this->back_url)) { $query_array = array('page' => $this->module_page_id); $query_array = Paginator::query($request, $query_array); $this->back_url = Route::url('modules', array('controller' => $this->controller_name['category'], 'query' => Helper_Page::make_query_string($query_array))); } $request->redirect($this->back_url); }
echo '<ul class="dropdown-menu">'; echo '<li>', HTML::anchor(str_replace('{id}', $_orm->id, $edit_tpl), '<i class="icon-edit"></i> ' . __('Edit'), array('title' => __('Edit'))), '</li>'; if (!in_array($_orm->code, $not_deleted_albums)) { echo '<li>', HTML::anchor(str_replace('{id}', $_orm->id, $delete_tpl), '<i class="icon-remove"></i> ' . __('Delete'), array('class' => 'delete_button', 'title' => __('Delete'))), '</li>'; } echo '</ul>'; } echo '</div>'; ?> </td> </tr> <?php } ?> </tbody> </table> <?php if (empty($BACK_URL)) { $query_array = array('group' => $GROUP_KEY); $filter_query = Request::current()->query('filter'); if (!empty($filter_query)) { $query_array['filter'] = $filter_query; } if (!empty($BACK_URL)) { $query_array['back_url'] = $BACK_URL; } $link = Route::url('modules', array('controller' => $CONTROLLER_NAME['album'], 'query' => Helper_Page::make_query_string($query_array))); } else { $link = $BACK_URL; } echo $paginator->render($link);
public function action_view() { $request = $this->request->current(); $id = (int) $request->param('id'); $helper_orm = ORM_Helper::factory('video'); $orm = $helper_orm->orm(); $orm->where('id', '=', $id)->find(); if (!$orm->loaded()) { throw new HTTP_Exception_404(); } if (empty($this->back_url)) { $query_array = Paginator::query($request); $this->back_url = Route::url('modules', array('controller' => $this->controller_name['element'], 'query' => Helper_Page::make_query_string($query_array))); } $this->template->set_filename('modules/video/element/view')->set('helper_orm', $helper_orm); $this->title = __('Viewing'); $this->left_menu_element_add(); }
private function _get_nomenclature($orm) { $nomenclature_element = new Nomenclature_Element(); $nom_list = $nomenclature_element->get_list($orm->id); $nom_properties = $nomenclature_element->get_properties($nom_list); $request = $this->request->current(); $query_array = array_intersect_key($request->query(), array_filter(array('no_cache' => TRUE, 'p' => FALSE))); $query_string = Helper_Page::make_query_string($query_array); $query_string = empty($query_string) ? '' : '?' . $query_string; $link_tpl = $request->url() . $query_string . '#item-'; $result = array(); foreach ($nom_list as $_orm) { $_props = Arr::get($nom_properties, $_orm->id, array()); $_size_name = Arr::path($_props, 'Size.value.Name.value'); $_duvet_cover = Arr::path($_props, 'Size.value.DuvetCover.value'); $_bedsheet = Arr::path($_props, 'Size.value.Bedsheet.value'); $_pillowslip = Arr::path($_props, 'Size.value.Pillowslip.value'); $_price = Arr::path($_props, 'Price.value'); $_discount = Arr::path($_props, 'Discount.value'); $result[] = array('id' => $_orm->id, 'name' => "{$orm->title} ({$_size_name})", 'link' => $link_tpl . $_orm->id, 'price' => $_price, 'discount' => $_discount, 'size' => array('name' => $_size_name, 'duvet_cover' => implode(', ', Arr::pluck($_duvet_cover, 'value')), 'bedsheet' => implode(', ', Arr::pluck($_bedsheet, 'value')), 'pillowslip' => implode(', ', Arr::pluck($_pillowslip, 'value')))); } usort($result, function ($elm_1, $elm_2) { if ($elm_1['price'] == $elm_2['price']) { return 0; } return $elm_1['price'] > $elm_2['price'] ? -1 : 1; }); return $result; }