The XPindex project
Download Contact me
Latest Stable version:
XPindex-0.84.tar.gz (2004-04-01)
Latest Beta version:
XPindex-0.90-Beta-3.tar.gz (2005-08-29)
What's the project about?
The project is about letting Apache's default dir listing look like Windows XP explorer.
Why is this project started?
I started this 'project' after discussing with a collegue that it would be fairly simple to make an Windows XP explorer look for the Apache directory listings, this is the result.
What does it look like?
Follow the link to the download directory as an example.
How does it work?
It is very simple PHP script which results in a XHTML 1.1 file, completed with CSS and some images (all PNG).
What can it do now?
- List directories
- Group and sort files by name, size, file extension, modify time, owner, group and permission
- Map icons to file extentions
- Show filesize
- Show filetype description
- Show last change date
- Show owner
- Show group
- Show attributes
- Everything is multilangual
- Show (optional) readme files in taskbar (HTML and text)
- Theme support
- Statusbar with total number of objects and filesize
What will come (todo)?
Whishlist:
- Make columns optional
- Switch between 'grouped' view and 'list' view
- Enable other views: preview, tiles, icons, list and detailed list
- Make sorting column light gray (only in list view)
- More languages
- More icons and descriptions
- Let user choose stylesheets/theme
What do you need to have?
- Apache(2) or IIS
- PHP (PHP 4 >= 4.0.1, PHP5)
On what is it known to work?
- Linux with Apache
- Linux with Apache2
- Windows with Apache (CGI/SAPI)
- Windows with Apache2 (CGI/SAPI)
- Windows with IIS 5.1
- NetWare with Apache2 (CGI/SAPI)
History
v0.90 beta 3 (2005-08-29)
- Added file details taskpane item, shows size and modified date.
- Added folder details, shows number of directories and files.
- Added .mp3 details (if mp3_id pear module is installed), shows album, artist, title, duration, year, track, genre and bitrate.
- Added .url details, shows link.
- Added .zip details, shows uncompressed size, compression method, password protection and number of files/folders.
- Added .rar details, shows uncompressed size, compression method, password protection, number of files/folders, dictionary size, volume in set and first or last file in set.
- Added confg options to set decimal point character and thousands seperator.
- Added meta tag to remind IE we are working with UTF-8 when it reads cached results.
- Added 1 decimal for files between 1 and 10 MB.
- Added 2 decimals to filesize above 1GB.
- Fixed blank filesize above 1GB.
- Fixed horizontal scrollbar in taskpane.
- Fixed error when an url file had no BASEURL declaration.
- Tweaked the olive stylesheet.
- Fixed when a file contained a & with a space following, the space got stripped.
- Replaced $XPIndexConf variable with $Config.
- Replaced $ApacheConf variable with $Apache.
- Updated the ascx, asmx, aspx, avi, cs, csproj, fdb, hxc, hxi, hxk, hxs, hxt, ost, rar, rc, rct, res, sln, sql, suo, vsmacros, xsd, xsl and xslt icons.
- Added 150+ icons
- Added 200+ descriptions
- Hide attributes column on windows because it is always empty.
Thanks to Brian for his comments and ideas.
v0.90 beta 2 (2005-08-18)
- Added norwegian language!
- Fixed tiny XHTML errors.
- Fixed tiny CSS errors.
- Fixed UTF-8 display of gettext.
- Fixed horizontal scrollbar.
- Stripped some obsolete class declerations.
Thanks to Anders Østerholt for his comments and providing the norwegian translation.
v0.90 Beta 1 (2005-08-17)
- Rewritten PHP to make XPindex work with PHP5. PHP5 has some major flaws in the array_walk function.
- Rewritten the HTML output, no more tables for layout! As a result the task pane will nicely scroll when having more data then space. Also the statusbar will stay at the bottom.
- Rewritten the CSS code to match new HTML.
- Added javascript to make it possible to minimize taskpane items. Javascript can be disabled from the config file.
- Match colspan to the number of columns on windows and netware.
v0.84 (2004-04-01)
- Added the author, copyright, top and up link's to the HTML output. You can see these in Opera, Mozilla, etc?.. if you have the '(Site) Navigation Bar' set to 'on' or 'auto'.
- The modify time was displayed incorrectly (months were shown instead of minutes)
- It seems the 0.83 tar was corrupt or something, several people could open it and several couldn't?
v0.83 (2004-03-24)
- When there is no default language set in the browser (like the w3 validator) the xhtml was not valid, now it will take english as default.
- .url files are now parsed and will link to the site defined inside the file. (You can just copy your IE favorites on the webserver)
- I used the constant PHP_SAPI to recognize the engine PHP is running on, but this constant is only available from PHP version 4.2.0 and higher. Replaced it with php_sapi_name().
v0.82 (2003-12-08)
- Fixed a problem when there is no gettext module available and the browser did not have dutch as it's first default language.
v0.81 (2003-12-08)
- Added support for cgi, at least combination with Apache2 on Windows.
v0.80 (2003-11-24)
- From now on XPindex falls under the BSD license, see the LICENSE file.
- Directories with the same name as a ReadMe entry were hidden, fixed that.
- Merged the Windows/IIS and Linux/Apache versions together.
- Merging those two versions let Windows/Apache2 work too. :)
- Support for NetWare, thanks to Onno Molenkamp.
- Changed the multilangual part into GNU gettext, default is now english, Dutch included.
- Included alternative gettext functionality for PHP without gettext module.
- On filesystem without a '.' and '..' the first 2 directories were hidden.
- Changed all <? to <?php so when the short_open_tag option is off, we still have a working site, thanks to Chris Hoogenboezem.
- switched from complex themes to easy theme support.
- Enabled Mozilla's 'Use Style'.
- %## in a filename would be interpeted by the browser, fixed that.
- When having UseCanonicalName Directive On in Apache links to directories act weird, thanks to Guillermo Rodriguez Garcia for pointing that out.
- Fixed the calculation of the total dir size, showed *1000 when he size was between 0,5 and 1MB.
- Switched charset to UTF-8.
- Altered some icons so the hover with the blue theme is nicer.
- Put constants in a seperate file.
- Added 100+ icons.
- Added 150+ descriptions.
Thanks to Guillermo Rodriguez Garcia, Chris Hoogenboezem, Mark Stunnenberg and Onno Molenkamp for their ideas, code and fixes.
v0.70-w32 (2003-07-08)
- Got PHP+IIS working by abusing the 403;13 error!
It's not a nice hack, also you can't see the owner or group of a file. And you will have to disable directory browsing to enable XPindex.
v0.70 (2003-02-23)
- Rewriten most of the PHP code, it's much cleaner now
- Fixed all PHP warnings (when error_reporting(E_ALL) is set
- Implemented sorting
- Hover is now also on the icon, this defer from XP explorer but is much better for console browsers (lynx, etc)
- Full theme support (only the taskbar was theme aware)
- Added statusbar with number of 'objects' and total filesize
- Fixed the tabbar not being 100% from top to bottom with large listings
- Fixed the display of files with no extension
- Fixed the columns getting to small so the image in the header disappeared sometimes
- Fixed a bug when there was no readme displayed when the taskbar was set to 'always'
- Filesizes are now displayed as B ('bytes' at the statusbar), kB, MB or GB's
- Added the support for displaying multiple readme files with different filenames, you can define the sequence, html/text view and caption
- Added incremental extension support (like WinRAR's .rar, .r00, .r01, etc...)
- Added option to disable indexing the XPindex directories self
- Added the '.' as an refresh option
- Added the rc, config, diz, ocx icons
- Added the rc, config, ocx descriptions
Thanks to Daan Schuitmaker, Wieger Hofstra and Mark Stunnenberg for their ideas and fixes.
v0.61 (2003-02-08)
- Fixed stylesheet for the taskitems, the text did not get wrapped
v0.60 (2003-02-08)
- Added taskbar for directory comments, options are 'never', 'always', 'readme'
- Added themes support
- Added Default, Olive and Silver themes
- Fixed parse errors when being an upstreamserver (for example using Apache Proxy module)
- Fixed title when being an upstreamserver (for example using Apache Proxy module)
- Added asf, avi, mpe, mpeg, mpg descriptions
- Added avi icon
- Fixed the mp3 icon (it was not linked)
- Changed the way the multilangual thing was set up
- Added the mapicon as icon in the addressbar/tab for Mozilla
Thanks to Wieger Hofstra for his ideas and additions.
v0.51 (2003-02-02)
- While building user directory support I messed up the subdirectory code
- Fixed a big bug in user dirs... I should test better
v0.50 (2003-02-02)
- Support for user directories!
v0.40 (2003-01-28)
- Made extensions case-insensative
- Fixed the gap on the left side of the header when columns were wider then 200px
- Added Multilangual support
- Changed order of includes in index.php
- Added css, gz, js, jse, mp3, pdf, php, php3, php4, phps, phtml, rar, sql, tar, tgz, xml, xsl, xslt descriptions
- Added js, mp3, pdf, php, rar, sql, xml, xsl, xslt icons
Thanks to Mark Stunnenberg for his ideas and additions.
v0.30 (2002-08-20)
- Added caching on the stylesheet (86400 secs == 1 day)
- Skip the XPstyle directory from listing
v0.20 (2002-08-20)
- Added bmp, gif, htm, html, jpg, jpeg, png, txt descriptions
- Added bmp, gif, jpg, jpeg, png, txt icons
- Fixed css file header, Mozilla had troubles with it
- Added links to the icons too
v0.10 (2002-08-17)