本文整理汇总了PHP中Breadcrumb类的典型用法代码示例。如果您正苦于以下问题:PHP Breadcrumb类的具体用法?PHP Breadcrumb怎么用?PHP Breadcrumb使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Breadcrumb类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: it_can_render_the_view
/** @test */
public function it_can_render_the_view()
{
$breadcrumb = new Breadcrumb($this->viewFactory);
$breadcrumb->add('Home');
$view = $breadcrumb->render();
$this->assertInstanceOf('Illuminate\\View\\View', $view);
}
示例2: __construct
/**
* @param Breadcrumb|null $parent
*/
public function __construct(Breadcrumb $parent = null)
{
$this->children = array();
if ($parent) {
$this->parent = $parent;
$parent->addChild($this);
}
}
示例3: testAddAndGetNarrower
/**
* @covers Breadcrumb::getNarrowerConcepts
* @covers Breadcrumb::addNarrower
*/
public function testAddAndGetNarrower()
{
$bc = new Breadcrumb('http://skosmos.skos/onto/test/t001', 'prefLabel');
$bc2 = new Breadcrumb('http://skosmos.skos/onto/test/t007', 'narrower');
$bc->addNarrower($bc2);
$children = $bc->getNarrowerConcepts();
$this->assertEquals($bc2, $children['http://skosmos.skos/onto/test/t007']);
}
示例4: action_edit
/**
* action: EDIT
*/
public function action_edit()
{
$id = $this->request->param('id');
$content = new Model_Content($id);
$type = $content->type;
$site = $type == 'page' ? __('Page') : __('Email');
Breadcrumbs::add(Breadcrumb::factory()->set_title(__('Edit') . ' ' . $site));
$locale = $content->locale;
if ($content->loaded()) {
$languages = i18n::get_languages();
$this->template->content = View::factory('oc-panel/pages/content/edit', array('cont' => $content, 'locale' => $languages));
if ($p = $this->request->post()) {
foreach ($p as $name => $value) {
if ($name != 'submit') {
$content->{$name} = $value;
}
}
// if status is not checked, it is not set as POST response
$content->status = isset($p['status']) ? 1 : 0;
//$content->seotitle = $content->gen_seotitle($this->request->post('title'));
try {
$content->save();
Cache::instance()->delete_all();
Alert::set(Alert::SUCCESS, $content->type . ' ' . __('is edited'));
Request::current()->redirect(Route::url('oc-panel', array('controller' => 'content', 'action' => 'edit', 'id' => $content->id_content)));
} catch (Exception $e) {
Alert::set(Alert::ERROR, $e->getMessage());
}
}
} else {
Alert::set(Alert::INFO, __('Faild to load content'));
Request::current()->redirect(Route::url('oc-panel', array('controller' => 'content', 'action' => 'edit')) . '?type=' . $type . '&locale_select=' . $locale);
}
}
示例5: action_update
public function action_update()
{
$name = $this->request->param('id');
$field = new Model_Field();
$field_data = $field->get($name);
Breadcrumbs::add(Breadcrumb::factory()->set_title(__('Edit') . ' ' . $name));
$this->template->title = __('Edit Custom Field for Advertisement');
//find all, for populating form select fields
list($categories) = Model_Category::get_all();
if ($_POST) {
try {
$options = array('label' => Core::post('label'), 'tooltip' => Core::post('tooltip'), 'required' => Core::post('required') == 'on' ? TRUE : FALSE, 'searchable' => Core::post('searchable') == 'on' ? TRUE : FALSE);
if ($field->update($name, Core::post('values'), Core::post('categories'), $options)) {
Cache::instance()->delete_all();
Theme::delete_minified();
Alert::set(Alert::SUCCESS, __('Field edited ' . $name));
Request::current()->redirect(Route::url('oc-panel', array('controller' => 'fields', 'action' => 'index')));
} else {
Alert::set(Alert::ERROR, __('Field cant be edited' . $name));
}
} catch (Exception $e) {
throw new HTTP_Exception_500();
}
}
$this->template->content = View::factory('oc-panel/pages/fields/update', array('field_data' => $field_data, 'name' => $name, 'categories' => $categories));
}
示例6: action_index
/**
* List all Advertisements (PUBLISHED)
*/
public function action_index()
{
//template header
$this->template->title = __('Advertisements');
$this->template->meta_description = __('Advertisements');
Breadcrumbs::add(Breadcrumb::factory()->set_title(__('List')));
$this->template->scripts['footer'][] = 'js/jquery.toolbar.js';
$this->template->scripts['footer'][] = 'js/oc-panel/moderation.js';
$ads = new Model_Ad();
$fields = array('title', 'id_ad', 'published', 'created', 'id_category', 'id_location', 'status');
//filter ads by status
$status = is_numeric(Core::get('status')) ? Core::get('status') : Model_Ad::STATUS_PUBLISHED;
$ads = $ads->where('status', '=', $status);
// sort ads by search value
if ($q = $this->request->query('search')) {
$ads = $ads->where('title', 'like', '%' . $q . '%');
if (core::config('general.search_by_description') == TRUE) {
$ads = $ads->or_where('description', 'like', '%' . $q . '%');
}
}
$ads_count = clone $ads;
$res_count = $ads_count->count_all();
if ($res_count > 0) {
$pagination = Pagination::factory(array('view' => 'oc-panel/crud/pagination', 'total_items' => $res_count, 'items_per_page' => 50))->route_params(array('controller' => $this->request->controller(), 'action' => $this->request->action()));
$ads = $ads->order_by(core::get('order', 'published'), core::get('sort', 'desc'))->limit($pagination->items_per_page)->offset($pagination->offset)->find_all();
$this->template->content = View::factory('oc-panel/pages/ad', array('res' => $ads, 'pagination' => $pagination, 'fields' => $fields));
} else {
$this->template->content = View::factory('oc-panel/pages/ad', array('res' => NULL, 'fields' => $fields));
}
}
示例7: action_index
public function action_index()
{
Breadcrumbs::add(Breadcrumb::factory()->set_title(__('Home'))->set_url(Route::url('default')));
Breadcrumbs::add(Breadcrumb::factory()->set_title(__('User Profile')));
$seoname = $this->request->param('seoname', NULL);
if ($seoname !== NULL) {
$user = new Model_User();
$user->where('seoname', '=', $seoname)->limit(1)->cached()->find();
if ($user->loaded()) {
$this->template->title = __('User Profile') . ' - ' . $user->name;
//$this->template->meta_description = $user->name;//@todo phpseo
$this->template->bind('content', $content);
$ads = new Model_Ad();
$ads = $ads->where('id_user', '=', $user->id_user)->where('status', '=', Model_Ad::STATUS_PUBLISHED)->order_by('created', 'desc')->cached()->find_all();
// case when user dont have any ads
if ($ads->count() == 0) {
$profile_ads = NULL;
}
$this->template->content = View::factory('pages/userprofile', array('user' => $user, 'profile_ads' => $ads));
} else {
//throw 404
throw HTTP_Exception::factory(404, __('Page not found'));
}
} else {
//throw 404
throw HTTP_Exception::factory(404, __('Page not found'));
}
}
示例8: action_update
/**
* Update new forum
*/
public function action_update()
{
Breadcrumbs::add(Breadcrumb::factory()->set_title(__('Edit Topic')));
$topic = new Model_Topic($this->request->param('id'));
$get_all = Model_Forum::get_all();
//get all forums to build forum parents in select
$forum_parents = array();
foreach ($get_all[0] as $parent) {
$forum_parents[$parent['id']] = $parent['name'];
}
$this->template->content = View::factory('oc-panel/pages/forum/topic', array('topic' => $topic, 'forum_parents' => $forum_parents));
if ($_POST) {
$topic->title = core::post('title');
$topic->id_forum = core::post('id_forum');
$topic->description = core::post('description');
if (core::post('seotitle') != $topic->seotitle) {
$topic->seotitle = $topic->gen_seotitle(core::post('seotitle'));
}
if (core::post('status') == 'on') {
$topic->status = 1;
} else {
$topic->status = 0;
}
try {
$topic->save();
Alert::set(Alert::SUCCESS, __('Topic is updated.'));
} catch (Exception $e) {
Alert::set(Alert::ERROR, $e->getMessage());
}
HTTP::redirect(Route::url('oc-panel', array('controller' => 'topic', 'action' => 'index')));
}
}
示例9: test_should_clear_all_breadcrumbs
/**
* @test
* @group breadcrumbs
*/
public function test_should_clear_all_breadcrumbs()
{
Breadcrumbs::add(Breadcrumb::factory()->set_title("Crumb 1")->set_url("http://example.com/"));
Breadcrumbs::add(Breadcrumb::factory()->set_title("Crumb 2"));
Breadcrumbs::clear();
$this->assertSame(array(), Breadcrumbs::get());
}
示例10: action_index
public function action_index()
{
//template header
$this->template->title = __('Contact Us');
$this->template->meta_description = __('Contact') . ' ' . core::config('general.site_name');
Breadcrumbs::add(Breadcrumb::factory()->set_title(__('Home'))->set_url(Route::url('default')));
Breadcrumbs::add(Breadcrumb::factory()->set_title(__('Contact Us')));
if ($this->request->post()) {
//captcha check
if (captcha::check('contact')) {
//check if user is loged in
if (Auth::instance()->logged_in()) {
$email_from = Auth::instance()->get_user()->email;
$name_from = Auth::instance()->get_user()->name;
} else {
$email_from = core::post('email');
$name_from = core::post('name');
}
//akismet spam filter
if (!core::akismet($name_from, $email_from, core::post('message'))) {
$replace = array('[EMAIL.BODY]' => core::post('message'), '[EMAIL.SENDER]' => $name_from, '[EMAIL.FROM]' => $email_from);
if (Email::content(core::config('email.notify_email'), core::config('general.site_name'), $email_from, $name_from, 'contact-admin', $replace)) {
Alert::set(Alert::SUCCESS, __('Your message has been sent'));
} else {
Alert::set(Alert::ERROR, __('Message not sent'));
}
} else {
Alert::set(Alert::WARNING, __('This email has been considered as spam! We are sorry but we can not send this email.'));
}
} else {
Alert::set(Alert::ERROR, __('Wrong captcha'));
}
}
$this->template->content = View::factory('pages/contact');
}
示例11: action_update
public function action_update()
{
$name = $this->request->param('id');
$field = new Model_Field();
$field_data = $field->get($name);
Breadcrumbs::add(Breadcrumb::factory()->set_title(__('Edit') . ' ' . $name));
$this->template->title = __('Edit Custom Field for Advertisement');
//find all, for populating form select fields
$categories = Model_Category::get_as_array();
if ($_POST) {
try {
$options = array('label' => Core::post('label'), 'tooltip' => Core::post('tooltip'), 'required' => Core::post('required') == 'on' ? TRUE : FALSE, 'searchable' => Core::post('searchable') == 'on' ? TRUE : FALSE, 'admin_privilege' => Core::post('admin_privilege') == 'on' ? TRUE : FALSE, 'show_listing' => Core::post('show_listing') == 'on' ? TRUE : FALSE);
if ($field->update($name, Core::post('values'), Core::post('categories'), $options)) {
Core::delete_cache();
Alert::set(Alert::SUCCESS, sprintf(__('Field %s edited'), $name));
} else {
Alert::set(Alert::ERROR, sprintf(__('Field %s cannot be edited'), $name));
}
} catch (Exception $e) {
throw HTTP_Exception::factory(500, $e->getMessage());
}
HTTP::redirect(Route::url('oc-panel', array('controller' => 'fields', 'action' => 'index')));
}
$this->template->content = View::factory('oc-panel/pages/fields/update', array('field_data' => $field_data, 'name' => $name, 'categories' => $categories));
}
示例12: show
public function show($page_name)
{
// Display the page specified by $page_name, or a 404 error if it doesn't exist.
// Run a database search to look up the page.
$existing_page = ORM::factory("px_static_page")->where("name", "=", $page_name)->find_all();
// If it doesn't exist, display a 404 error.
if (count($existing_page) == 0) {
throw new Kohana_404_Exception();
}
// Set up breadcrumbs.
$breadcrumbs = array();
$root = item::root();
$breadcrumbs[] = Breadcrumb::instance($root->title, $root->url())->set_first();
$breadcrumbs[] = Breadcrumb::instance(t($existing_page[0]->title), url::site("pages_xtra/show/{$page_name}"))->set_last();
// Display the page.
$template = new Theme_View("page.html", "other", "Pages");
$template->set_global(array("breadcrumbs" => $breadcrumbs));
// Call database variables into page header (off-page content).
$site_title = module::get_var("pages_xtra", "site_title");
// Next line can be used as alternative to the following line
// $template->page_title = t("Gallery :: ") . t($existing_page[0]->title);
$template->page_title = t($existing_page[0]->title) . t(" :: {$site_title}");
$template->page_tags = $existing_page[0]->tags;
$page_tags = trim(nl2br(html::purify($existing_page[0]->tags)));
$template->page_description = $existing_page[0]->description;
$page_description = trim(nl2br(html::purify($existing_page[0]->description)));
// Set a new View and call database variables into page (on-page content).
$template->content = new View("pages_xtra_display.html");
$template->content->title = $existing_page[0]->title;
$template->content->body = $existing_page[0]->html_code;
print $template;
}
示例13: action_index
public function action_index()
{
//template header
$this->template->title = __('Contact Us');
$this->template->meta_description = __('Contact Us');
Breadcrumbs::add(Breadcrumb::factory()->set_title(__('Home'))->set_url(Route::url('default')));
Breadcrumbs::add(Breadcrumb::factory()->set_title(__('Contact Us')));
if ($this->request->post()) {
//captcha check
if (captcha::check('contact')) {
//akismet spam filter
if (!core::akismet(core::post('name'), core::post('email'), core::post('message'))) {
$replace = array('[EMAIL.BODY]' => core::post('message'), '[EMAIL.SENDER]' => core::post('name'), '[EMAIL.FROM]' => core::post('email'));
if (Email::content(core::config('email.notify_email'), core::config('general.site_name'), core::post('email'), core::post('name'), 'contact.admin', $replace)) {
Alert::set(Alert::SUCCESS, __('Your message has been sent'));
} else {
Alert::set(Alert::ERROR, __('Message not sent'));
}
} else {
Alert::set(Alert::SUCCESS, __('This email has been considered as spam! We are sorry but we can not send this email.'));
}
} else {
Alert::set(Alert::ERROR, __('Check the form for errors'));
}
}
$this->template->content = View::factory('pages/contact');
}
示例14: action_index
public function action_index()
{
$this->template->title = __('Import tool for ads');
Breadcrumbs::add(Breadcrumb::factory()->set_title($this->template->title));
$this->template->scripts['footer'][] = 'js/oc-panel/import.js';
$this->template->content = View::factory('oc-panel/pages/tools/import_ads', array('ads_import' => $this->amount_ads_import()));
}
示例15: action_confirm
/**
* STEP 0
* Confirm you want to update!
*/
public function action_confirm()
{
//force update check reload so we are sure he has latest version
Core::get_updates(TRUE);
$versions = core::config('versions');
$this->template->title = __('Updates');
Breadcrumbs::add(Breadcrumb::factory()->set_title($this->template->title));
$this->template->scripts['footer'][] = 'js/oc-panel/update.js';
//version numbers in a key value
$version_nums = array();
foreach ($versions as $version => $values) {
$version_nums[] = $version;
}
//latest version available
$latest_version = current($version_nums);
//info from the latest version available
$version = $versions[$latest_version];
//this is the version we allow to update from. Only the one before latest
$latest_version_update = (int) str_replace('.', '', next($version_nums));
//current installation version
$current_version = (int) str_replace('.', '', core::VERSION);
$can_update = FALSE;
if ($current_version == $latest_version_update) {
$can_update = TRUE;
}
//pass to view from local versions.php
$this->template->content = View::factory('oc-panel/pages/update/confirm', array('latest_version' => $latest_version, 'version' => $version, 'can_update' => $can_update));
}