id == 1) ? $item : ORM::factory("item", 1); $v = new View("organize.html"); $v->root = $root; $v->item = $item; $v->album_tree = $this->tree($item, $root); $v->edit_form = new View("organize_edit.html"); $v->edit_form->button_pane = new View("organize_button_pane.html"); print $v; } public function content($item_id) { $item = ORM::factory("item", $item_id); $width = $this->input->get("width"); $height = $this->input->get("height"); $offset = $this->input->get("offset", 0); $thumbsize = self::$_MICRO_THUMB_SIZE + 2 * self::$_MICRO_THUMB_PADDING; $page_size = ((int)($width / $thumbsize)) * ceil($height / $thumbsize); $v = new View("organize_thumb_grid.html"); $v->children = $item->children($page_size, $offset); $v->thumbsize = self::$_MICRO_THUMB_SIZE; $v->padding = self::$_MICRO_THUMB_PADDING; print $v; } public function header($item_id) { $item = ORM::factory("item", $item_id); print json_encode(array("title" => $item->title, "description" => empty($item->description) ? "" : $item->description)); } public function detail($item_id) { $item = ORM::factory("item", $item_id); print json_encode(array("title" => $item->title, "owner" => $item->owner->name, "date" => date("j-M-Y", $item->updated), "description" => empty($item->description) ? "" : $item->description)); } public function tree($item, $parent) { $albums = ORM::factory("item") ->where(array("parent_id" => $parent->id, "type" => "album")) ->orderby(array("title" => "ASC")) ->find_all(); $v = new View("organize_album.html"); $v->album = $parent; $v->selected = $parent->id == $item->id; if ($albums->count()) { $v->album_icon = $parent->id == 1 || $v->selected ? "ui-icon-minus" : "ui-icon-plus"; } else { $v->album_icon = ""; } $v->children = ""; foreach ($albums as $album) { $v->children .= $this->tree($item, $album); } return $v->__toString(); } }