Joostina CMS / CMF v2.* API
  • Docs
  • Package
  • Class
  • Tree
  • Todo
Overview

Packages

  • Components
    • Acls
      • Models
        • Admin
        • Site
    • BlogCategory
      • Models
        • Admin
        • Site
    • Blogs
      • Controllers
        • Admin
        • Site
      • Helpers
      • Models
        • Admin
        • Site
    • Coder
      • Controllers
        • Admin
      • Models
        • Admin
    • Comments
      • Controllers
        • Admin
        • Site
      • Helpers
      • Models
        • Admin
        • Site
    • CommentsCounter
      • Models
        • Admin
        • Site
    • Mainpage
      • Controllers
        • Site
    • News
      • Controllers
        • Admin
        • Site
      • Helpers
      • Models
        • Admin
        • Site
    • Pages
      • Controllers
        • Admin
        • Site
      • Models
        • Site
    • Search
      • Controllers
        • Site
    • Site
      • Controllers
        • Admin
        • Site
    • Sitemap
      • Controllers
        • Admin
        • Site
      • Models
        • Admin
        • Site
    • Test
      • Controllers
        • Site
    • Torrents
      • Controllers
        • Site
    • Users
      • Controllers
        • Admin
        • Site
      • Models
        • Admin
        • Site
  • Compression
  • Core
    • Libraries
      • Arhive
      • Array
      • Attached
      • Autoadmin
      • Autoloader
      • Benchmark
      • Breadcrumbs
      • Cache
      • Config
      • Cookie
      • Csrf
      • Database
        • Drivers
          • Interfaces
      • Datetime
      • Debug
      • Editor
      • Events
      • File
      • Filter
      • Flashmessage
      • Folder
      • Hit
      • Html
      • Image
      • Inflector
      • Inputfilter
      • Libraries
      • Mail
      • Module
      • Nestedset
      • Pager
      • Pages
      • Params
      • Randomizer
      • Request
      • RobotLoader
      • Route
      • Security
      • Session
      • Static
      • String
      • Text
      • Trash
      • Validate
  • Email
  • Extra
    • Libraries
      • Basket
  • Joostina
    • Controller
    • Core
    • Document
  • JSMin
  • Libraries
    • Extra
      • Basket
        • Models
          • Site
  • None
  • Plugins
    • Autoadmin
    • Editor
    • Sitemap
  • SimpleMail
  • Vendors
    • Libraries
      • Email

Classes

  • joosBreadcrumbs
 1: <?php defined('_JOOS_CORE') or exit();
 2: 
 3: /**
 4:  * Работа с "хлебными крошками"
 5:  *
 6:  * @version    1.0
 7:  * @package    Core\Libraries
 8:  * @subpackage Breadcrumbs
 9:  * @category   Libraries
10:  * @author     Joostina Team <info@joostina.ru>
11:  * @copyright  (C) 2007-2012 Joostina Team
12:  * @license    MIT License http://www.opensource.org/licenses/mit-license.php
13:  * Информация об авторах и лицензиях стороннего кода в составе Joostina CMS: docs/copyrights
14:  *
15:  * */
16: class joosBreadcrumbs
17: {
18:     private static $instance;
19:     private static $breadcrumbs = array();
20: 
21:     /**
22:      *
23:      * @return joosBreadcrumbs
24:      */
25:     public static function instance()
26:     {
27:         if (self::$instance === NULL) {
28:             self::$instance = new self;
29:         }
30: 
31:         return self::$instance;
32:     }
33: 
34:     public function add($name, $href = false)
35:     {
36:         self::$breadcrumbs[] = $href ? joosHtml::anchor($href, $name, array('class' => 'breadcrumbs_link', 'title' => $name)) : $name;
37: 
38:         return $this;
39:     }
40: 
41:     public function remove($index = false, $name = false)
42:     {
43:         return $this;
44:     }
45: 
46:     public function get()
47:     {
48:         // поисковикам очень хорошо подсказать что это крошки, и использовать значек › - поисковики его любят ( проштудировал кучу ссылок )
49:         return '<div class="breadcrumbs">' . implode(' › ', self::$breadcrumbs) . '</div>';
50:     }
51: 
52:     public function get_breadcrumbs_array()
53:     {
54:         return self::$breadcrumbs;
55:     }
56: 
57:     // переопределим ВСЕ установленные вручную title, и сформируем их из "хлебных крошек"
58:     public static function add_to_title()
59:     {
60:         joosDocument::instance()->set_page_title(strip_tags(implode(' › ', self::$breadcrumbs)));
61:     }
62: 
63:     public function render()
64:     {
65:         $r = array();
66:         $r[] = '<ul class="breadcrumb">';
67:         $i_count = count(self::$breadcrumbs);
68:         for ($index = 0; $index < $i_count; $index++) {
69:             $r[] = sprintf('<li>%s%s</li>', self::$breadcrumbs[$index], ($index < ($i_count - 1) ? ' <span class="divider">/</span>' : ''));
70:         }
71:         $r[] = '</ul>';
72: 
73:         return implode("\n", $r);
74:     }
75: 
76: }
77: 
Joostina CMS / CMF v2.* API API documentation generated by ApiGen 2.6.1 – Template adapted by @olvlv and Joostina Team