public static function add_ls_file_information($filepath, &$item, $field_options) { //sanity check if (empty($filepath) || !file_exists($filepath)) { $item->{'read'} = false; $item->{'write'} = false; $item->{XAPP_NODE_FIELD_IS_DIRECTORY} = false; return; } // show permissions if (($field_options & XAPP_XFILE_SHOW_PERMISSIONS) == XAPP_XFILE_SHOW_PERMISSIONS) { $item->{XAPP_NODE_FIELD_PERMISSIONS} = XApp_File_Utils::get_file_permissions($filepath); $item->{'read'} = is_readable($filepath); $item->{'write'} = is_writeable($filepath); } // show owner if (($field_options & XAPP_XFILE_SHOW_OWNER) == XAPP_XFILE_SHOW_OWNER) { $item->{XAPP_NODE_FIELD_OWNER} = XApp_File_Utils::get_file_ownership($filepath); } // force read only if (($field_options & XAPP_XFILE_SHOW_ISREADONLY) == XAPP_XFILE_SHOW_ISREADONLY) { $item->{XAPP_NODE_FIELD_READ_ONLY} = !is_writable($filepath); } // show is directory if (($field_options & XAPP_XFILE_SHOW_ISDIR) == XAPP_XFILE_SHOW_ISDIR) { $item->{XAPP_NODE_FIELD_IS_DIRECTORY} = is_dir($filepath); } // show size if (($field_options & XAPP_XFILE_SHOW_SIZE) == XAPP_XFILE_SHOW_SIZE) { if (!is_dir($filepath)) { $file_size = filesize($filepath); $item->{XAPP_NODE_FIELD_SIZE} = $file_size ? XApp_File_Utils::formatSizeUnits($file_size) : ""; $item->{XAPP_NODE_FIELD_SIZE_BYTES} = $file_size; } } // show folder size if (($field_options & XAPP_XFILE_SHOW_FOLDER_SIZE) == XAPP_XFILE_SHOW_FOLDER_SIZE) { if (is_dir($filepath)) { $size = XApp_Directory_Utils::getDirectorySize($filepath); $item->{XAPP_NODE_FIELD_SIZE} = XApp_File_Utils::formatSizeUnits($size); $item->{XAPP_NODE_FIELD_SIZE_BYTES} = $size; } } // show mime if (($field_options & XAPP_XFILE_SHOW_MIME) == XAPP_XFILE_SHOW_MIME) { $item->{XAPP_NODE_FIELD_MIME} = XApp_File_Utils::getMime($filepath); } // show time if (($field_options & XAPP_XFILE_SHOW_TIME) == XAPP_XFILE_SHOW_TIME) { $item->{XAPP_NODE_FIELD_TIME} = XApp_File_Utils::getFileTime($filepath); } }
public static function add_ls_file_information($filepath, &$item, $field_options) { //sanity check if (empty($filepath) || !file_exists($filepath)) { //throw new Exception('add_ls_file_information : failed because \'filepath=\'' . $filepath . ' doesnt exists or is not a path '); return; } // show permissions if (($field_options & XAPP_XFILE_SHOW_PERMISSIONS) == XAPP_XFILE_SHOW_PERMISSIONS) { $item->{XAPP_NODE_FIELD_PERMISSIONS} = XApp_File_Utils::get_file_permissions($filepath); } // show owner if (($field_options & XAPP_XFILE_SHOW_OWNER) == XAPP_XFILE_SHOW_OWNER) { $item->{XAPP_NODE_FIELD_OWNER} = XApp_File_Utils::get_file_ownership($filepath); } // force read only if (($field_options & XAPP_XFILE_SHOW_ISREADONLY) == XAPP_XFILE_SHOW_ISREADONLY) { $item->{XAPP_NODE_FIELD_READ_ONLY} = !is_writable($filepath); } // show is directory if (($field_options & XAPP_XFILE_SHOW_ISDIR) == XAPP_XFILE_SHOW_ISDIR) { $item->{XAPP_NODE_FIELD_IS_DIRECTORY} = is_dir($filepath); } // show size if (($field_options & XAPP_XFILE_SHOW_SIZE) == XAPP_XFILE_SHOW_SIZE) { $file_size = filesize($filepath); $item->{XAPP_NODE_FIELD_SIZE} = $file_size ? number_format($file_size / 1024, 2) . "Kb" : ""; } // show mime if (($field_options & XAPP_XFILE_SHOW_MIME) == XAPP_XFILE_SHOW_MIME) { $item->{XAPP_NODE_FIELD_MIME} = XApp_File_Utils::getMime($filepath); } // show time if (($field_options & XAPP_XFILE_SHOW_TIME) == XAPP_XFILE_SHOW_TIME) { $item->{XAPP_NODE_FIELD_TIME} = XApp_File_Utils::getFileTime($filepath); } }