Example #1
0
 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 " ";
 }