Commit Graph

592 Commits

Author SHA1 Message Date
Brice Maron 0f7fdd4148 ReAdd possibility to load existing app folders 2012-06-07 19:15:31 +00:00
Brice Maron e8447e0bda Rework to fit with minizer 2012-06-06 21:11:15 +00:00
Brice Maron cc494259d3 Unit path and webpath, correct some more 2012-06-06 20:24:15 +00:00
Brice Maron b6c5ca126b First almost working version 2012-06-06 20:23:17 +00:00
Arthur Schiwon 6ca2b49292 avoid too-early database access and thus make owncloud installable again 2012-06-06 17:29:57 +02:00
Bart Visscher 57326ea1f8 Move setting remote_core.* to after setup of OC, also check if it is not set yet 2012-06-05 17:51:52 +02:00
Frank Karlitschek e747fd794e fix login for hosts running on port 80 2012-06-05 15:26:31 +02:00
Frank Karlitschek e3031ae28b more reliable host detection for reverse proxy servers 2012-06-05 12:52:23 +02:00
Bart Visscher 4a5973662c Merge branch 'unstable'
Conflicts:
	apps/files_external/tests/config.php
	apps/files_versions/ajax/getVersions.php
	apps/files_versions/appinfo/app.php
	apps/files_versions/history.php
	apps/files_versions/js/versions.js
	apps/files_versions/templates/history.php
	apps/files_versions/versions.php
	lib/base.php
2012-06-04 23:02:05 +02:00
Frank Karlitschek 75d56f24f2 try to switch magic quotes off.
it´s evil and deprecated
2012-06-01 12:41:38 +02:00
Frank Karlitschek 24d14783d7 added a serverProtocol function that correctly returns the used protocol even if the ssl connection is terminated at a reverse_proxy or at a load balancer 2012-06-01 10:38:44 +02:00
Michael Gapczynski fbe58755e5 Restrict requested app to apps directory 2012-05-29 12:31:47 -04:00
Frank Karlitschek a945fa10a6 update copyright 2012-05-26 19:14:24 +02:00
Frank Karlitschek 24318354f2 changed the default from Berlin to UTC.
Greetings form Berlin by the way ;-)
2012-05-24 00:49:21 +02:00
Robin Appelman 60fdc13ae6 enable running unit tests from cli 2012-05-22 20:22:53 +02:00
Robin Appelman b096fd9ed8 log upgrades 2012-05-19 01:55:20 +02:00
Bart Visscher ce1e4425c2 Combine and minimize core and default app js files 2012-05-16 18:53:46 +02:00
Bart Visscher f71fec8cdc Combine and minimize core and default app css files 2012-05-16 18:53:46 +02:00
Bart Visscher 5d72681d10 Better place to check caching headers 2012-05-16 18:52:40 +02:00
Robin Appelman 9eb91a111d update to jquery 1.7.2 2012-05-12 00:37:19 +02:00
Bart Visscher 919681f3e6 Make processed css files cachable 2012-05-11 21:33:02 +02:00
Bart Visscher 97233b77cd Remove DOCUMENTROOT static var, and make SUBURI var private 2012-05-11 21:31:51 +02:00
Georg Ehrke 8f2217ca2e make default app choosable 2012-05-11 13:56:52 +02:00
Michael Gapczynski de95bf62a2 Prevent any null bytes related exploits, thanks to Lukas Reschke 2012-05-10 11:44:06 -04:00
Bart Visscher c2230580c1 Remove unused OC static variable CONFIG_DATADIRECTORY_ROOT 2012-05-10 09:14:27 +02:00
Georg Ehrke d032345191 fix validation of getfile parameter - i hate this bloody merge conflicts 2012-05-07 13:23:55 +02:00
Georg Ehrke da03d05700 create folder 'remote' for the remote services like caldav, carddav and webdav 2012-05-02 16:41:23 +02:00
Georg Ehrke 3aedbc5f95 remove debug message 2012-04-27 22:22:58 +02:00
Georg Ehrke 06e9ac8591 fix parsing of app parameter and fix external app 2012-04-27 22:22:03 +02:00
Georg Ehrke 993d655aad Merge branch 'master' into movable_apps_2 2012-04-27 10:30:50 +02:00
Frank Karlitschek ee0cb68f5e some csrf fixes. needs testing 2012-04-27 01:18:21 +02:00
Georg Ehrke 5483c1be42 hide fails 2012-04-26 21:58:43 +02:00
Georg Ehrke 5fda0e4b3b make *DAV work with movable apps 2012-04-26 21:56:29 +02:00
Georg Ehrke 2b10371bde fix merge conflicts 2012-04-26 18:08:49 +02:00
Georg Ehrke 40f95ffdf3 fix security check for the path of the requested file 2012-04-26 17:55:00 +02:00
Georg Ehrke 3f64eb25ab some fixes fore movable apps 2012-04-26 14:52:55 +02:00
Georg Ehrke 476043ecb9 add a proper 404 2012-04-25 10:17:20 +02:00
Georg Ehrke fb84d0aff8 fix php fail 2012-04-24 21:37:19 +02:00
Georg Ehrke 9b29bc96de remove debug message 2012-04-24 21:36:54 +02:00
Georg Ehrke 95c220a246 remove debug code in lib base 2012-04-23 20:31:03 +02:00
Georg Ehrke 19109afa79 fix bug in lib base 2012-04-23 20:11:21 +02:00
Georg Ehrke 42a570788b Merge branch 'master' into movable_apps 2012-04-23 19:56:07 +02:00
Georg Ehrke 6d92ebca45 use native functions of php to parse the string into the Var 2012-04-23 17:09:28 +02:00
Georg Ehrke 9226cb7a6a rename var file to getfile to prevent fails in files app 2012-04-23 16:36:24 +02:00
Frank Karlitschek f5c9fe9ece first step to an public api of ownCloud for the apps. In the future they shouldn´t call internall classes, functions or session variables because this will change and break in upcoming versions. Apps should only call this public interface that we will kepp stable over different releases. The namespace is OCP for ownCloud public. This is just the first step. more coming soon 2012-04-23 15:50:30 +02:00
Georg Ehrke 99a473bd62 support file calls with parameter 2012-04-20 22:33:30 +02:00
Georg Ehrke 2e85313701 optimize code 2012-04-19 22:26:36 +02:00
Georg Ehrke 909282c81e remove parameters in file var before call require once 2012-04-19 22:25:21 +02:00
Georg Ehrke 85019887df add loading of files 2012-04-19 16:44:49 +02:00
Georg Ehrke 3e0e6e35f4 open app thru index.php 2012-04-18 08:20:51 +02:00
Robin Appelman 1d8fdf52d5 allow multiply group backends 2012-04-13 01:59:05 +02:00
Grundik 7e7de25710 UTF8 locale by default 2012-04-12 17:54:20 +02:00
Tom Needham acdce2b1e0 Check blacklist before saving to filesystem 2012-04-03 22:31:34 +00:00
Frank Karlitschek b758725bf7 Try to configure php to enable big file uploads.
This doesn´t work always depending on the webserver and php configuration.
Let´s try to overwrite some defaults anyways
2012-04-01 17:02:32 +02:00
Bart Visscher 3300d6ea53 checkUpgrade has to be after template initialization
The error path of checkUpgrade uses the template
2012-03-30 23:41:54 +02:00
Bart Visscher a7438189f3 Move more from base init to separate functions 2012-03-30 23:41:53 +02:00
Robin Appelman 523fdda399 add the option to only load apps of a specific type 2012-03-30 14:39:07 +02:00
Robin Appelman 109d806617 make sure we can load OC_Config when we need it 2012-03-23 18:55:26 +01:00
Bart Visscher 3d8a09b147 Split the init function in lib/base.php a bit 2012-03-19 21:56:55 +01:00
Jakob Sack 90e2962c91 Remove the link between the principals table and the sabre principals connector. 2012-03-02 20:37:49 +01:00
Robin Appelman 48fe85d9bd add streamwrapper that provides a callback on stream close 2012-03-02 18:42:57 +01:00
Bart Visscher d1dcd7893c Search: Change provider registration to class name, for lazy loading of search providers 2012-03-01 22:59:35 +01:00
Bart Visscher 3d3190309f Simplify stripping the last part off WEBROOT and SERVERROOT for 3rdparty and app dir 2012-03-01 22:59:35 +01:00
Bart Visscher 5dcd9e20d0 Small cleanups 2012-03-01 21:00:23 +01:00
Robin Appelman 6ecbaf0041 load streamwrappers earlier 2012-03-01 18:44:33 +01:00
Frank Karlitschek 0b4607321f Merge branch 'master' of gitorious.org:owncloud/owncloud 2012-03-01 15:21:12 +01:00
Frank Karlitschek d29a02a65a undo the change of the webroot detection. seams to be buggy 2012-03-01 15:19:44 +01:00
Bartek Przybylski 2754cac21f dialogs library for apps 2012-02-28 23:02:30 +01:00
Frank Karlitschek 0a9b0ee382 change the detection of the webroot. it is simpler now and also works for app directories outside the owncloud folder. works for me and hopefully for everybody else too 2012-02-28 18:21:23 +01:00
Robin Appelman a829ce69c5 make sure the streamwrappers are registered early 2012-02-28 17:25:15 +01:00
Robin Appelman 77b51f03e3 add temporary file managment 2012-02-28 11:16:19 +01:00
Frank Karlitschek ab96fa67c8 first part of the abstraction work of the apps folder. more to come 2012-02-26 18:26:41 +01:00
Robin Appelman d4d09b06f8 merge master into encryption 2012-02-26 14:21:06 +01:00
Robin Appelman 6c501f90bb hopefully a fix for webroot detection 2012-02-26 04:09:48 +01:00
Robin Appelman ea8f71a19c Merge branch 'master' into encryption 2012-02-25 16:36:58 +01:00
Robin Appelman 8b93a9a237 add javascript bindings for OC_AppConfig 2012-02-25 16:35:40 +01:00
Frank Karlitschek a62e109e8c make the location of the 3rdparty folder flexible.
It´s automatically search in the owncloud folder and in the parent folder.
override with an option in config.php is also possible
2012-02-23 15:37:38 +01:00
Robin Appelman 2e05bd69f5 add javascript bindings for OC_AppConfig 2012-02-22 22:20:11 +01:00
Robin Appelman 325858e9e2 add stream wrapper for in-memory files and dont use global variables for the fakedir stream wrapper 2012-02-21 20:48:48 +01:00
Robin Appelman e53e7990c4 improve get_temp_dir() implementation 2012-02-21 20:48:48 +01:00
Bart Visscher 1fa05894d5 Move config.php writable test to update path
This should make it possible to use owncloud with a read-only config.php
2012-02-17 22:10:03 +01:00
Robin Appelman 3579446930 use SimpleTest for unit testing
includes some tests for storage providers, more to come
2012-02-12 18:07:58 +01:00
Michael Gapczynski 6929652e14 Redirect to installer if not installed 2012-02-11 17:37:47 -05:00
Robin Appelman 4522d19b4c merge master into filesystem 2012-01-30 20:29:33 +01:00
Robin Appelman 45038af948 provide small wrapper around server side events and provide a fallback for IE 2012-01-30 20:21:16 +01:00
Robin Appelman 96e2f15d8a merge master into filesystem 2012-01-16 03:06:11 +01:00
Robin Appelman 907dd4d24d some aditional feedback during database upgrade 2012-01-16 01:15:43 +01:00
Robin Appelman 6e0ea7aaae use absolute path for db_structure.xml when updating 2012-01-13 20:05:24 +01:00
Robin Appelman ccc43f0ea0 merge master into filesystem 2012-01-08 18:01:33 +01:00
Tom Needham e5d3666280 Merge branch 'master' of gitorious.org:owncloud/owncloud into jqueryui 2012-01-08 16:45:28 +00:00
Robin Appelman 76b193c698 don't try to upgrade what isn't installed 2012-01-08 13:01:59 +01:00
Robin Appelman fea68e08b4 update apps when their version number increases 2012-01-08 01:57:53 +01:00
Robin Appelman c6aa0f9854 set the installed version after updating the database 2012-01-08 01:57:53 +01:00
Robin Appelman ecf6f2ca2f automatically upgrade the main database on version number increase (doesnt work with sqlite for now) 2012-01-08 01:57:53 +01:00
Robin Appelman d1edc360d9 merge master into filesystem 2012-01-08 01:53:40 +01:00
Robin Appelman 8f8985c3e5 Merge branch 'database' 2012-01-08 01:45:18 +01:00
Frank Karlitschek f9db4249a3 add a formfactor session variable which is autodetected but can also manually overwritten via a get variable.
currently we have:
         * default -> the normal desktop browser interface
         * mobile -> interface for smartphones
         * tablet -> interface for tablets
         * standalone -> the default interface but without header, footer and sidebar. just the application. useful to use just a specific app on the desktop in a standalone window.
In the future we should adapt the userinterface to the specific formfactor.
2012-01-06 17:21:24 +01:00
Tom Needham 39e67707d7 Updated jquery ui js and css. Improved color scheme. 2011-12-30 22:47:39 +00:00
Robin Appelman c67c933d3f Merge branch 'database' into filesystem 2011-12-11 23:57:53 +01:00
Robin Appelman 9fdd1bafdc Merge branch 'master' into filesystem 2011-12-11 23:42:22 +01:00
Robin Appelman a8148fa94a update apps when their version number increases 2011-12-11 22:08:01 +01:00
Robin Appelman 7f1bb5fd78 Merge branch 'master' into database 2011-12-11 22:00:17 +01:00
Robin Appelman a8e4d2946a Merge branch 'database' into filesystem 2011-11-26 01:25:08 +01:00
Hendrik Langer 76bfc3b547 set http auth headers for apache+php-cgi work around if variable gets renamed by apache 2011-11-24 02:59:22 +01:00
Robin Appelman 916c72b40b set the installed version after updating the database 2011-11-15 15:59:01 +01:00
Robin Appelman b2f1429b75 automatically upgrade the main database on version number increase (doesnt work with sqlite for now) 2011-11-13 16:16:21 +01:00
Robin Appelman ec015a2e68 remove the need to register storage providers, pass the classname during mounting instead 2011-11-08 22:21:25 +01:00
Bart Visscher 7b01858c57 Enable php display_errors setting 2011-10-27 22:48:50 +02:00
Hendrik Langer 466b41c36b Don't use sys_get_temp_dir(), as it reports the wrong path in restricted environments 2011-10-19 23:38:35 +02:00
Robin Appelman b975f11514 make sharing work with the new mouting mechanism 2011-10-18 21:19:13 +02:00
Robin Appelman db2fb38746 prevent error involving webdav workaround 2011-10-13 21:55:02 +02:00
Robin Appelman f1fd374a6f webdav workaround for apache+php-cgi 2011-10-13 16:33:39 +02:00
Marvin Thomas Rabe 6d8985ceb2 added infield labels. readded fade in of login button. updated label on install page. 2011-10-03 14:41:55 +02:00
Florian Pritz c7d4e72341 set cookie secure if forcessl is enabled
This also moves session_start in lib/base.php down a bit because we need
OC::$SERVERROOT to get the config settings.

Signed-off-by: Florian Pritz <bluewind@xinu.at>
2011-09-24 18:42:00 +02:00
Florian Pritz 2267b6e97d use jquery 1.6.4
Signed-off-by: Florian Pritz <bluewind@xinu.at>
2011-09-24 18:41:43 +02:00
Bart Visscher e9950defb2 Make event category choice multiselect 2011-09-23 19:40:06 +02:00
Bart Visscher 8966ed5a00 Cleanup lib/base.php 2011-09-18 20:57:05 +02:00
Bart Visscher 82c7598861 Remove global vars and use the OC static version.
Removed global vars are DOCUMENTROOT, SERVERROOT, SUBURI, WEBROOT and CONFIG_DATADIRECTORY
2011-09-18 19:37:54 +02:00
Jan-Christoph Borchardt 6c4d075bd6 added jquery-tipsy for nice title tooltips 2011-08-12 11:26:13 +02:00
Robin Appelman f03874ac49 work on user management 2011-08-10 22:38:28 +02:00
Robin Appelman cdf91b6b3e work in new app management 2011-08-10 14:03:54 +02:00
Jakob Sack c958a44e46 Copying globals to OC::* 2011-08-10 11:18:35 +02:00
Frank Karlitschek b2702c4406 fix include path 2011-08-07 17:39:38 +02:00
Frank Karlitschek 1dc3cb67fa more improved error reporting 2011-08-06 23:31:38 +02:00
Frank Karlitschek a689fa18df Merge branch 'master' of git.kde.org:owncloud 2011-08-06 23:19:40 +02:00
Frank Karlitschek b513a60540 nicer error report and streamlined setup 2011-08-06 23:19:00 +02:00
Robin Appelman be9c044b24 descriptions for OC:: variables 2011-08-06 23:04:39 +02:00
Jakob Sack 5f7c040ec0 Add principals, minor changes in base.php 2011-08-06 11:36:56 +02:00
Jakob Sack db90b2e44a prepare replacing global $vars with OC::$vars 2011-08-02 18:48:19 +02:00
Jakob Sack c50a83cd8d Introducing a semiautoload. Enables autoload for classes that are not in lib/ 2011-08-02 18:31:42 +02:00
Robin Appelman 5ef407d1c9 keyboard shortcuts for search results 2011-07-31 04:03:48 +02:00
Robin Appelman 2c8b4da840 make sure jquery and common javascript is loaded before the javascript of the apps 2011-07-31 02:24:46 +02:00
Robin Appelman 0503c3499e configure users/groups before loading apps 2011-07-31 00:23:06 +02:00
Jakob Sack 0dab7f2e53 laod apps ways earlier! 2011-07-31 00:06:17 +02:00
Jakob Sack bafd684eb6 Renaming classes :-) 2011-07-29 21:36:03 +02:00
Jakob Sack 2ff8d7a8bc One class per file! 2011-07-29 21:03:53 +02:00
Jakob Sack 2bfad189e7 Merge branch 'master' of git://anongit.kde.org/owncloud into autoload
Conflicts:
	lib/base.php
	lib/filestorage.php
2011-07-29 20:42:24 +02:00
Robin Appelman 0ab6e03863 bumb version number for upcomming beta 2011-07-28 21:58:55 +02:00
Jakob Sack e69079f935 Further improvements 2011-07-27 20:04:42 +02:00
Jakob Sack f5c0dbd947 Use autoload 2011-07-27 19:07:28 +02:00
Robin Appelman 98cd83fabd bumb jquery and jquery-ui versions 2011-07-25 23:16:05 +02:00
Robin Appelman f40a1cad8b not all http server add index.php to $_SERVER[SCRIPT_NAME], do it manually
this fixes incorect generated links in some cases
2011-06-26 00:59:31 +02:00
Robin Appelman 155f62bcf6 allow plugins/apps to add custom headers to all pages 2011-06-24 22:09:55 +02:00
Robin Appelman 83958ebd4b add oc_user::getUser to get the user id of the loggedin user 2011-06-22 12:50:57 +02:00
Robin Appelman ee0f1490e1 Multiply changes to user system
keeping tracked of the logged in user is no longer done by the active backend but by oc_user directly instead

multiply backends can be active at the same time, allowing alternative authentication procedures like openid or tokens to be used next to the regular user system
2011-06-21 19:28:46 +02:00
Jakob Sack 6a19a7d226 added preferences to base.php, will be needed for i18n stuff 2011-06-19 14:24:26 +02:00
Robin Appelman 2a5ee9512e allow tear down of filesystem.
also fix a bug when chrooting to '/'
2011-06-12 00:57:43 +02:00
Robin Appelman d65f8bba73 try to adjust times to the clients timezone 2011-06-05 15:13:03 +02:00
Robin Appelman 016a892a78 merge refactoring in master 2011-06-02 20:35:14 +02:00
Robin Appelman 09458aa639 add dateOnly option to formatDate 2011-06-02 02:29:16 +02:00
Robin Appelman 5d358bb63f merge 2011-04-28 23:59:02 +02:00
Robin Appelman 1850bddb67 move sqlite database into the data folder, makes it easier to set the correct permissions 2011-04-28 16:54:10 +02:00
Robin Appelman 8a6edd4654 Show currect filename when downloading files 2011-04-26 15:01:16 +02:00
Robin Appelman b7aba15f17 add search functionality, for now only searches files but plugins/apps can extend that 2011-04-24 16:09:27 +02:00
Robin Appelman 4c0d6dc9e7 make OC_HOOKS actually work 2011-04-23 02:30:12 +02:00
Robin Appelman cf76cad931 change printPageNavi() to getPageNavi() to allow some more flexibility 2011-04-21 23:04:16 +02:00
Marco Michelino d1b4f74bc2 Avoid // in URIs 2011-04-19 12:32:37 +02:00
Robin Appelman fe90bf4bdc disable the backup system for now 2011-04-18 12:18:45 +02:00
Robin Appelman 67ba9b320e seperate hooks for OC_FILESYSTEM and OC_FILESTORAGE 2011-04-18 12:16:56 +02:00
Robin Appelman 900ece18e7 seperate view and logic for pagenavi 2011-04-18 11:31:01 +02:00
Frank Karlitschek 91b5d8575a add pager function to the base lib and remove the default table width 2011-04-17 19:46:09 +02:00
Robin Appelman 7b02151639 make the file permissions hint more clear 2011-04-17 18:19:50 +02:00
Frank Karlitschek fb74de326d Merge branch 'refactoring' of git.kde.org:owncloud into refactoring 2011-04-16 20:35:15 +02:00
Frank Karlitschek 1372d8339d add a date format function for more eyecandy 2011-04-16 20:34:18 +02:00
Robin Appelman bf45dcb959 only check for permissions for folders that exists 2011-04-16 20:27:08 +02:00
Robin Appelman d002ed0b94 set strict error reporting 2011-04-16 20:08:13 +02:00
Robin Appelman 5ccdea8e5b save installation state of databases in appconfig instead of plugin.xml 2011-04-16 19:06:45 +02:00
Frank Karlitschek 150631849f Merge branch 'refactoring' of git.kde.org:owncloud into refactoring
Conflicts:
	admin/apps.php
2011-04-16 18:50:49 +02:00
Robin Appelman f0e59b9043 better display for server configuration errors 2011-04-16 18:27:58 +02:00
Jakob Sack 964a55033a never ever call a function you just removed 2011-04-16 18:08:40 +02:00
Robin Appelman 1495ec0f31 show server configuration errors on seperate page 2011-04-16 15:49:55 +02:00
Jakob Sack 8465f76e7e Use OC_CONFIG where possible 2011-04-16 12:18:42 +02:00
Jakob Sack 177fd27382 Make OC_CONFIG working again 2011-04-16 11:25:21 +02:00
Jakob Sack fc33094429 replaced $CONFIG_DB* with OC_CONFIG::getValue( "db*" ) 2011-04-16 11:11:16 +02:00
Robin Appelman 69289bf943 move chmodr to OC_HELPER 2011-04-16 10:23:15 +02:00
Robin Appelman 26841884af move OC_DB to it's own file 2011-04-16 10:18:35 +02:00
Robin Appelman e42dbbf7f3 merge 2011-04-16 10:13:52 +02:00
Robin Appelman 232654cb60 get rid of the oc_require and friends 2011-04-16 10:12:53 +02:00
Jakob Sack f1015c88fa Minor bug fixing 2011-04-15 23:09:05 +02:00
Jakob Sack 3d89b2caa4 php is not perl 2011-04-15 19:24:23 +02:00
Jakob Sack 3c01e30748 Try to make owncloud working again 2011-04-15 18:13:49 +02:00
Jakob Sack 149793f2e7 First version of the new user management 2011-04-15 17:14:02 +02:00
Jakob Sack 908e377246 Refactoring of OC_DB 2011-04-08 16:53:17 +02:00
Jakob Sack d3502315bd added class OC_HOOK to base.php. It is in base.php because it is needed
very ofter and it is quite small.
2011-03-29 20:21:00 +02:00
Robin Appelman 0f494970d1 Fix a couple of minor coding errors 2011-03-18 14:15:38 +01:00
Robin Appelman 1df0397163 only load mdb2 once as it was before 2011-03-17 20:58:27 +01:00
Jakob Sack 883c7a582d Small fixes in OC_APP, removed functions in OC_UTIL that now are in OC_APP 2011-03-11 15:25:48 +01:00
Jakob Sack f7f957abb9 Base for a more flexible navigation 2011-03-03 23:08:11 +01:00
Jakob Sack ae5dc3efdf New classes for owncloud: OC_APP for applications, OC_PREFERENCES for user preferences 2011-03-03 21:55:32 +01:00
Jakob Sack 94b405b64f Make it possible to use several datadirs.
This could be useful if the user does not want his gallery images on the webdav storage.
2011-03-03 21:25:22 +01:00
Jakob Sack dfa6b749ba Introducing OC_HELPER for small helper functions; making setup of filesystem optional 2011-03-02 22:18:22 +01:00
Jakob Sack 132695ceb1 Start of the refactoring. Commit is quite big because I forgot to use git right from the beginning. Sorry. 2011-03-01 23:20:16 +01:00