joomla/joomla-cms — pull request #4400 by Hackwar (2014-09-30 12:13:43+00:00)
Title: Core File Checker and simplifying the Extension manager

I'm giving support in the joomla IRC channel on Freenode and at least on 5 occasions in the last few weeks, someone had the issue that his site was broken due to some update issue or some random file not being written. To fix this, I wrote this PR.

This PR first of all unifies the database and warnings view of com_installer into one view. We have too many views in the installer as is and if it were up to me, I would merge the discover view and the update view into the manage view, too. Anyway, this merges these two views into the new service view. I'm doing this because it would be absolute overkill to introduce a new view simply for the filechecker.

This PR also introduces a file-checker feature, where it reads a file with and then checks if the file exists and if the MD5 hash of that file is identical to the hash in the .md5 file. It does not check for additional files that might be in the system, but it will give you a hint about core-hacks, etc.

This PR is not done yet. There are a few language strings that still need to be touched up and there is no real tool to create the MD5 file for us on the server side yet. I included /cli/createfilechecker.php to simply create such an MD5 file for the current installation, but it still needs to exclude some things, like the core templates, the .htaccess, robots.txt, etc. and it still needs to add a comment with the version that this .md5 is for at the top. Oh, comments are lines that start with a hash (#) and empty lines are ignored.

Please help in making this production ready. I'm open for suggestions.