Example #1
0
 public function build_breadcrumbs_for_item_test()
 {
     $album = test::random_album();
     $item = test::random_photo($album);
     $expected = array();
     $expected[] = Breadcrumb::instance(item::root()->title, item::root()->url("show={$album->id}"))->set_first();
     $expected[] = Breadcrumb::instance($album->title, $album->url("show={$item->id}"));
     $expected[] = Breadcrumb::instance($item->title, $item->url())->set_last();
     $this->assert_equal($expected, Breadcrumb::array_from_item_parents($item));
 }
Example #2
0
 static function get_display_context($item)
 {
     $where = array(array("type", "!=", "album"));
     $position = item::get_position($item, $where);
     if ($position > 1) {
         list($previous_item, $ignore, $next_item) = $item->parent()->viewable()->children(3, $position - 2, $where);
     } else {
         $previous_item = null;
         list($next_item) = $item->parent()->viewable()->children(1, $position, $where);
     }
     return array("position" => $position, "previous_item" => $previous_item, "next_item" => $next_item, "sibling_count" => $item->parent()->viewable()->children_count($where), "siblings_callback" => array("Albums_Controller::get_siblings", array($item)), "parents" => $item->parents()->as_array(), "breadcrumbs" => Breadcrumb::array_from_item_parents($item));
 }