public static function current_file($data) { $root = Kohana::config('filebrowser.site_root'); if ($data == "width") { $file_kind = Subfolio::$filekind->get_kind_by_file(Subfolio::$template->content->file->name); if (isset($file_kind['kind'])) { $kind = $file_kind['kind']; } else { $kind = ""; } if ($kind == "img") { list($width, $height, $type, $attr) = @getimagesize(Subfolio::$filebrowser->fullfolderpath . "/" . Subfolio::$template->content->file->name); return $width; } else { return Subfolio::$filebrowser->get_item_property(Subfolio::$filebrowser->file, 'width') ? Subfolio::$filebrowser->get_item_property(Subfolio::$filebrowser->file, 'width') : '640'; } } if ($data == "height") { $file_kind = Subfolio::$filekind->get_kind_by_file(Subfolio::$template->content->file->name); if (isset($file_kind['kind'])) { $kind = $file_kind['kind']; } else { $kind = ""; } if ($kind == "img") { list($width, $height, $type, $attr) = @getimagesize(Subfolio::$filebrowser->fullfolderpath . "/" . Subfolio::$template->content->file->name); return $height; } else { return Subfolio::$filebrowser->get_item_property(Subfolio::$filebrowser->file, 'height') ? Subfolio::$filebrowser->get_item_property(Subfolio::$filebrowser->file, 'height') : '480'; } } if ($data == "icon") { if (Subfolio::$filebrowser->file != '') { $file_kind = Subfolio::$filekind->get_kind_by_file(Subfolio::$filebrowser->file); } else { $file_kind = Subfolio::$filekind->get_kind_by_file(Subfolio::$filebrowser->folder); } $icon_file = ""; $icon_file = Subfolio::$filekind->get_icon_by_file($file_kind); $icon_set = view::get_option('icon_set_list', "list"); $icon_set_grid = view::get_option('icon_set_grid', "grid"); $icon = view::get_view_url() . "/images/icons/" . $icon_set . "/" . $icon_file . ".png"; $icon_grid = view::get_view_url() . "/images/icons/" . $icon_set_grid . "/" . $icon_file . ".png"; return $icon_grid; } if ($data == "icon_name") { if (Subfolio::$filebrowser->file != '') { $file_kind = Subfolio::$filekind->get_kind_by_file(Subfolio::$filebrowser->file); } else { $file_kind = Subfolio::$filekind->get_kind_by_file(Subfolio::$filebrowser->folder); } $icon_name = ""; $icon_name = Subfolio::$filekind->get_icon_by_file($file_kind); return $icon_name; } if ($data == "tag") { $new = false; $updated = false; if (isset(Subfolio::$template->content->file->stats['mtime'])) { $new_updated_start = Subfolio::$filebrowser->get_updated_since_time(); if (Subfolio::$template->content->file->stats['mtime'] > $new_updated_start) { $updated = true; } if ($new) { return "new"; } else { if ($updated) { return "updated"; } else { return ""; } } } else { return ""; } } if ($data == "url") { return Subfolio::$filebrowser->get_file_url(); } if ($data == "link") { if (Subfolio::$filebrowser->file != '') { return Subfolio::$filebrowser->get_file_url(); } else { return $root . "directory/" . Subfolio::$template->content->folder . "/index.html"; } } if ($data == "target") { if (Subfolio::$filebrowser->file != '') { return Subfolio::$filebrowser->get_item_property(Subfolio::$filebrowser->file, 'target') ? Subfolio::$filebrowser->get_item_property(Subfolio::$filebrowser->file, 'target') : 'blank'; } else { return Subfolio::$filebrowser->get_folder_property('target') ? Subfolio::$filebrowser->get_folder_property('target') : 'blank'; } } if ($data == "filename") { if (Subfolio::$filebrowser->file != '') { return htmlentities(Subfolio::$template->content->file->name); } else { $base = basename(Subfolio::$filebrowser->folder); $ff = new FileFolder($base, $base, 'folder', "folder", array()); return format::filename($ff->get_display_name()); } } if ($data == "lastmodified") { if (Subfolio::$filebrowser->file != '') { if (isset(Subfolio::$template->content->file->stats['mtime'])) { return format::filedate(Subfolio::$template->content->file->stats['mtime']); } else { return "-"; } } else { return "-"; } } if ($data == "size") { if (isset(Subfolio::$template->content->file->stats['size'])) { return format::filesize(Subfolio::$template->content->file->stats['size']) ? format::filesize(Subfolio::$template->content->file->stats['size']) : "—"; } else { return "-"; } } if ($data == "rawsize") { if (isset(Subfolio::$template->content->file->stats['size'])) { return Subfolio::$template->content->file->stats['size']; } else { return 0; } } if ($data == "comment") { if (Subfolio::$filebrowser->file != '') { return Subfolio::$filebrowser->get_item_property(Subfolio::$filebrowser->file, 'comment') ? Subfolio::$filebrowser->get_item_property(Subfolio::$filebrowser->file, 'comment') : '-'; } else { return Subfolio::$filebrowser->get_folder_property('comment') ? Subfolio::$filebrowser->get_folder_property('comment') : '-'; } } if ($data == "autoplay") { if (Subfolio::$filebrowser->file != '') { return Subfolio::$filebrowser->get_item_property(Subfolio::$filebrowser->file, 'autoplay') ? Subfolio::$filebrowser->get_item_property(Subfolio::$filebrowser->file, 'autoplay') : ''; } else { return ""; } } if ($data == "kind") { if (Subfolio::$filebrowser->file != '') { $file_kind = Subfolio::$filekind->get_kind_by_file(Subfolio::$filebrowser->file); } else { $file_kind = Subfolio::$filekind->get_kind_by_file(Subfolio::$filebrowser->folder); } return isset($file_kind['display']) ? $file_kind['display'] : '—'; } if ($data == "feedurl") { if (Subfolio::$filebrowser->file != '') { return Subfolio::$filebrowser->get_item_property(Subfolio::$filebrowser->file, 'feedurl') ? Subfolio::$filebrowser->get_item_property(Subfolio::$filebrowser->file, 'feedurl') : ''; } else { return ''; } } if ($data == "count") { if (Subfolio::$filebrowser->file != '') { return Subfolio::$filebrowser->get_item_property(Subfolio::$filebrowser->file, 'count') ? Subfolio::$filebrowser->get_item_property(Subfolio::$filebrowser->file, 'count') : ''; } else { return ''; } } if ($data == "cache") { if (Subfolio::$filebrowser->file != '') { return Subfolio::$filebrowser->get_item_property(Subfolio::$filebrowser->file, 'cache') ? Subfolio::$filebrowser->get_item_property(Subfolio::$filebrowser->file, 'cache') : 3600; } else { return 3600; } } if ($data == "instructions") { $file_kind = Subfolio::$filekind->get_kind_by_file(Subfolio::$filebrowser->file); return isset($file_kind['instructions']) ? $file_kind['instructions'] : ''; } if ($data == "body") { return format::get_rendered_text(file_get_contents(Subfolio::$filebrowser->fullfilepath)); } return " "; }