reorganisation des dossiers mtweb.0.6.0
authordj3c1t <dj3c1t@free.fr>
Sun, 16 Dec 2012 19:49:11 +0000 (20:49 +0100)
committerdj3c1t <dj3c1t@free.fr>
Sun, 16 Dec 2012 19:49:11 +0000 (20:49 +0100)
473 files changed:
config.php [moved from web/config.php with 50% similarity]
content/data/.htaccess [moved from web/content/data/.htaccess with 100% similarity]
content/data/mysql/mtweb.sql [moved from web/content/data/mysql/mtweb.sql with 100% similarity]
content/data/xml/mw/action_status/.index [moved from web/content/data/xml/mw/action_status/.index with 100% similarity]
content/data/xml/mw/action_status/170.xml [moved from web/content/data/xml/mw/action_status/170.xml with 100% similarity]
content/data/xml/mw/action_status/171.xml [moved from web/content/data/xml/mw/action_status/171.xml with 100% similarity]
content/data/xml/mw/action_status/172.xml [moved from web/content/data/xml/mw/action_status/172.xml with 100% similarity]
content/data/xml/mw/action_status/173.xml [moved from web/content/data/xml/mw/action_status/173.xml with 100% similarity]
content/data/xml/mw/config/.index [moved from web/content/data/xml/mw/config/.index with 100% similarity]
content/data/xml/mw/config/1.xml [moved from web/content/data/xml/mw/config/1.xml with 100% similarity]
content/data/xml/mw/config/2.xml [moved from web/content/data/xml/mw/config/2.xml with 100% similarity]
content/data/xml/mw/config/21.xml [moved from web/content/data/xml/mw/config/21.xml with 100% similarity]
content/data/xml/mw/config/22.xml [new file with mode: 0644]
content/data/xml/mw/config/34.xml [moved from web/content/data/xml/mw/config/34.xml with 100% similarity]
content/data/xml/mw/config/39.xml [moved from web/content/data/xml/mw/config/39.xml with 100% similarity]
content/data/xml/mw/config/40.xml [moved from web/content/data/xml/mw/config/40.xml with 100% similarity]
content/data/xml/mw/config/41.xml [moved from web/content/data/xml/mw/config/41.xml with 100% similarity]
content/data/xml/mw/config/55.xml [moved from web/content/data/xml/mw/config/55.xml with 100% similarity]
content/data/xml/mw/config/56.xml [moved from web/content/data/xml/mw/config/56.xml with 100% similarity]
content/data/xml/mw/config/57.xml [moved from web/content/data/xml/mw/config/57.xml with 100% similarity]
content/data/xml/mw/user_status/.index [moved from web/content/data/xml/mw/user_status/.index with 100% similarity]
content/data/xml/mw/user_status/1.xml [moved from web/content/data/xml/mw/user_status/1.xml with 100% similarity]
content/data/xml/mw/user_status/2.xml [moved from web/content/data/xml/mw/user_status/2.xml with 100% similarity]
content/data/xml/mw/users/.index [moved from web/content/data/xml/mw/users/.index with 100% similarity]
content/data/xml/mw/users/14.xml [moved from web/content/data/xml/mw/users/14.xml with 100% similarity]
index.php [moved from web/index.php with 50% similarity]
mw/app/config.xml [moved from web/app/config.xml with 88% similarity]
mw/app/data/impl/mw_mysql.php [moved from web/app/data/impl/mw_mysql.php with 100% similarity]
mw/app/data/impl/mw_xml.php [moved from web/app/data/impl/mw_xml.php with 100% similarity]
mw/app/data/impl/xml/mw_xml_data.php [moved from web/app/data/impl/xml/mw_xml_data.php with 100% similarity]
mw/app/data/impl/xml/mw_xml_data_handler.php [moved from web/app/data/impl/xml/mw_xml_data_handler.php with 100% similarity]
mw/app/data/modules/share/mw_data_check_instance.php [moved from web/app/data/modules/share/mw_data_check_instance.php with 100% similarity]
mw/app/data/modules/share/mw_data_images.php [moved from web/app/data/modules/share/mw_data_images.php with 100% similarity]
mw/app/data/modules/share/mw_data_init.php [moved from web/app/data/modules/share/mw_data_init.php with 100% similarity]
mw/app/data/modules/share/mw_data_links.php [moved from web/app/data/modules/share/mw_data_links.php with 100% similarity]
mw/app/data/modules/share/mw_data_out_config.php [moved from web/app/data/modules/share/mw_data_out_config.php with 100% similarity]
mw/app/data/modules/share/mw_data_utils.php [moved from web/app/data/modules/share/mw_data_utils.php with 100% similarity]
mw/app/data/modules/sql/mw_data_config.php [moved from web/app/data/modules/sql/mw_data_config.php with 100% similarity]
mw/app/data/modules/sql/mw_data_users.php [moved from web/app/data/modules/sql/mw_data_users.php with 98% similarity]
mw/app/data/modules/xml/mw_data_config.php [moved from web/app/data/modules/xml/mw_data_config.php with 100% similarity]
mw/app/data/modules/xml/mw_data_users.php [moved from web/app/data/modules/xml/mw_data_users.php with 99% similarity]
mw/app/data/mw_data.php [moved from web/app/data/mw_data.php with 100% similarity]
mw/app/data/mw_sgbd.php [moved from web/app/data/mw_sgbd.php with 100% similarity]
mw/app/init/0100_functions.php [moved from web/app/init/0100_functions.php with 100% similarity]
mw/app/init/0200_inputs.php [moved from web/app/init/0200_inputs.php with 100% similarity]
mw/app/init/0300_data.php [moved from web/app/init/0300_data.php with 73% similarity]
mw/app/init/0400_config.php [new file with mode: 0644]
mw/app/init/0500_users.php [moved from web/app/init/0500_users.php with 100% similarity]
mw/app/init/0600_check_instance.php [moved from web/app/init/0600_check_instance.php with 100% similarity]
mw/app/init/0700_links.php [moved from web/app/init/0700_links.php with 100% similarity]
mw/app/init/0800_init_plugins.php [moved from web/app/init/0800_init_plugins.php with 100% similarity]
mw/app/init/0900_pre_run.php [moved from web/app/init/0900_pre_run.php with 100% similarity]
mw/app/mods/admin/config.php [moved from web/app/mods/admin/config.php with 91% similarity]
mw/app/mods/admin/index.php [moved from web/app/mods/admin/index.php with 100% similarity]
mw/app/mods/admin/plugins.php [moved from web/app/mods/admin/plugins.php with 100% similarity]
mw/app/mods/admin/users.php [moved from web/app/mods/admin/users.php with 90% similarity]
mw/app/mods/forms/contact.php [moved from web/app/mods/forms/contact.php with 56% similarity]
mw/app/mods/index/index.php [moved from web/app/mods/index/index.php with 100% similarity]
mw/app/mods/mw_mod.php [moved from web/app/mods/mw_mod.php with 100% similarity]
mw/app/mods/reponses/html.php [moved from web/app/mods/reponses/html.php with 100% similarity]
mw/app/mods/users/compte.php [moved from web/app/mods/users/compte.php with 100% similarity]
mw/app/mods/users/identification.php [moved from web/app/mods/users/identification.php with 100% similarity]
mw/app/mods/users/index.php [moved from web/app/mods/users/index.php with 100% similarity]
mw/app/mods/users/infos.php [moved from web/app/mods/users/infos.php with 100% similarity]
mw/env/modules/mw_env_app_files.php [moved from web/app/env/mw_env.php with 53% similarity]
mw/env/modules/mw_env_config.php [new file with mode: 0644]
mw/env/modules/mw_env_data.php [moved from web/app/env/modules/mw_env_data.php with 100% similarity]
mw/env/modules/mw_env_init.php [moved from web/app/env/modules/mw_env_init.php with 92% similarity]
mw/env/modules/mw_env_inputs.php [moved from web/app/env/modules/mw_env_inputs.php with 93% similarity]
mw/env/modules/mw_env_links.php [moved from web/app/env/modules/mw_env_links.php with 100% similarity]
mw/env/modules/mw_env_messages.php [moved from web/app/env/modules/mw_env_messages.php with 100% similarity]
mw/env/modules/mw_env_out.php [moved from web/app/env/modules/mw_env_out.php with 68% similarity]
mw/env/modules/mw_env_plugins.php [moved from web/app/env/modules/mw_env_plugins.php with 62% similarity]
mw/env/modules/mw_env_run.php [moved from web/app/env/modules/mw_env_run.php with 90% similarity]
mw/env/modules/mw_env_urls.php [moved from web/app/env/modules/mw_env_urls.php with 100% similarity]
mw/env/mw_env.php [new file with mode: 0644]
mw/libs/empty_class.php [moved from web/libs/empty_class.php with 100% similarity]
mw/libs/inputfilter.php [moved from web/libs/inputfilter.php with 100% similarity]
mw/libs/ptitcaptcha.php [moved from web/libs/ptitcaptcha.php with 93% similarity]
mw/libs/sxml.php [moved from web/libs/sxml.php with 100% similarity]
mw/libs/tiny_mce/langs/en.js [moved from web/libs/tiny_mce/langs/en.js with 100% similarity]
mw/libs/tiny_mce/license.txt [moved from web/libs/tiny_mce/license.txt with 100% similarity]
mw/libs/tiny_mce/plugins/advhr/css/advhr.css [moved from web/libs/tiny_mce/plugins/advhr/css/advhr.css with 100% similarity]
mw/libs/tiny_mce/plugins/advhr/editor_plugin.js [moved from web/libs/tiny_mce/plugins/advhr/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/advhr/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/advhr/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/advhr/js/rule.js [moved from web/libs/tiny_mce/plugins/advhr/js/rule.js with 100% similarity]
mw/libs/tiny_mce/plugins/advhr/langs/en_dlg.js [moved from web/libs/tiny_mce/plugins/advhr/langs/en_dlg.js with 100% similarity]
mw/libs/tiny_mce/plugins/advhr/rule.htm [moved from web/libs/tiny_mce/plugins/advhr/rule.htm with 100% similarity]
mw/libs/tiny_mce/plugins/advimage/css/advimage.css [moved from web/libs/tiny_mce/plugins/advimage/css/advimage.css with 100% similarity]
mw/libs/tiny_mce/plugins/advimage/editor_plugin.js [moved from web/libs/tiny_mce/plugins/advimage/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/advimage/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/advimage/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/advimage/image.htm [moved from web/libs/tiny_mce/plugins/advimage/image.htm with 100% similarity]
mw/libs/tiny_mce/plugins/advimage/img/sample.gif [moved from web/libs/tiny_mce/plugins/advimage/img/sample.gif with 100% similarity]
mw/libs/tiny_mce/plugins/advimage/js/image.js [moved from web/libs/tiny_mce/plugins/advimage/js/image.js with 100% similarity]
mw/libs/tiny_mce/plugins/advimage/langs/en_dlg.js [moved from web/libs/tiny_mce/plugins/advimage/langs/en_dlg.js with 100% similarity]
mw/libs/tiny_mce/plugins/advlink/css/advlink.css [moved from web/libs/tiny_mce/plugins/advlink/css/advlink.css with 100% similarity]
mw/libs/tiny_mce/plugins/advlink/editor_plugin.js [moved from web/libs/tiny_mce/plugins/advlink/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/advlink/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/advlink/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/advlink/js/advlink.js [moved from web/libs/tiny_mce/plugins/advlink/js/advlink.js with 100% similarity]
mw/libs/tiny_mce/plugins/advlink/langs/en_dlg.js [moved from web/libs/tiny_mce/plugins/advlink/langs/en_dlg.js with 100% similarity]
mw/libs/tiny_mce/plugins/advlink/link.htm [moved from web/libs/tiny_mce/plugins/advlink/link.htm with 100% similarity]
mw/libs/tiny_mce/plugins/advlist/editor_plugin.js [moved from web/libs/tiny_mce/plugins/advlist/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/advlist/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/advlist/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/autoresize/editor_plugin.js [moved from web/libs/tiny_mce/plugins/autoresize/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/autoresize/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/autoresize/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/autosave/editor_plugin.js [moved from web/libs/tiny_mce/plugins/autosave/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/autosave/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/autosave/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/autosave/langs/en.js [moved from web/libs/tiny_mce/plugins/autosave/langs/en.js with 100% similarity]
mw/libs/tiny_mce/plugins/bbcode/editor_plugin.js [moved from web/libs/tiny_mce/plugins/bbcode/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/bbcode/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/bbcode/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/contextmenu/editor_plugin.js [moved from web/libs/tiny_mce/plugins/contextmenu/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/contextmenu/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/contextmenu/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/directionality/editor_plugin.js [moved from web/libs/tiny_mce/plugins/directionality/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/directionality/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/directionality/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/emotions/editor_plugin.js [moved from web/libs/tiny_mce/plugins/emotions/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/emotions/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/emotions/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/emotions/emotions.htm [moved from web/libs/tiny_mce/plugins/emotions/emotions.htm with 100% similarity]
mw/libs/tiny_mce/plugins/emotions/img/smiley-cool.gif [moved from web/libs/tiny_mce/plugins/emotions/img/smiley-cool.gif with 100% similarity]
mw/libs/tiny_mce/plugins/emotions/img/smiley-cry.gif [moved from web/libs/tiny_mce/plugins/emotions/img/smiley-cry.gif with 100% similarity]
mw/libs/tiny_mce/plugins/emotions/img/smiley-embarassed.gif [moved from web/libs/tiny_mce/plugins/emotions/img/smiley-embarassed.gif with 100% similarity]
mw/libs/tiny_mce/plugins/emotions/img/smiley-foot-in-mouth.gif [moved from web/libs/tiny_mce/plugins/emotions/img/smiley-foot-in-mouth.gif with 100% similarity]
mw/libs/tiny_mce/plugins/emotions/img/smiley-frown.gif [moved from web/libs/tiny_mce/plugins/emotions/img/smiley-frown.gif with 100% similarity]
mw/libs/tiny_mce/plugins/emotions/img/smiley-innocent.gif [moved from web/libs/tiny_mce/plugins/emotions/img/smiley-innocent.gif with 100% similarity]
mw/libs/tiny_mce/plugins/emotions/img/smiley-kiss.gif [moved from web/libs/tiny_mce/plugins/emotions/img/smiley-kiss.gif with 100% similarity]
mw/libs/tiny_mce/plugins/emotions/img/smiley-laughing.gif [moved from web/libs/tiny_mce/plugins/emotions/img/smiley-laughing.gif with 100% similarity]
mw/libs/tiny_mce/plugins/emotions/img/smiley-money-mouth.gif [moved from web/libs/tiny_mce/plugins/emotions/img/smiley-money-mouth.gif with 100% similarity]
mw/libs/tiny_mce/plugins/emotions/img/smiley-sealed.gif [moved from web/libs/tiny_mce/plugins/emotions/img/smiley-sealed.gif with 100% similarity]
mw/libs/tiny_mce/plugins/emotions/img/smiley-smile.gif [moved from web/libs/tiny_mce/plugins/emotions/img/smiley-smile.gif with 100% similarity]
mw/libs/tiny_mce/plugins/emotions/img/smiley-surprised.gif [moved from web/libs/tiny_mce/plugins/emotions/img/smiley-surprised.gif with 100% similarity]
mw/libs/tiny_mce/plugins/emotions/img/smiley-tongue-out.gif [moved from web/libs/tiny_mce/plugins/emotions/img/smiley-tongue-out.gif with 100% similarity]
mw/libs/tiny_mce/plugins/emotions/img/smiley-undecided.gif [moved from web/libs/tiny_mce/plugins/emotions/img/smiley-undecided.gif with 100% similarity]
mw/libs/tiny_mce/plugins/emotions/img/smiley-wink.gif [moved from web/libs/tiny_mce/plugins/emotions/img/smiley-wink.gif with 100% similarity]
mw/libs/tiny_mce/plugins/emotions/img/smiley-yell.gif [moved from web/libs/tiny_mce/plugins/emotions/img/smiley-yell.gif with 100% similarity]
mw/libs/tiny_mce/plugins/emotions/js/emotions.js [moved from web/libs/tiny_mce/plugins/emotions/js/emotions.js with 100% similarity]
mw/libs/tiny_mce/plugins/emotions/langs/en_dlg.js [moved from web/libs/tiny_mce/plugins/emotions/langs/en_dlg.js with 100% similarity]
mw/libs/tiny_mce/plugins/example/dialog.htm [moved from web/libs/tiny_mce/plugins/example/dialog.htm with 100% similarity]
mw/libs/tiny_mce/plugins/example/editor_plugin.js [moved from web/libs/tiny_mce/plugins/example/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/example/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/example/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/example/img/example.gif [moved from web/libs/tiny_mce/plugins/example/img/example.gif with 100% similarity]
mw/libs/tiny_mce/plugins/example/js/dialog.js [moved from web/libs/tiny_mce/plugins/example/js/dialog.js with 100% similarity]
mw/libs/tiny_mce/plugins/example/langs/en.js [moved from web/libs/tiny_mce/plugins/example/langs/en.js with 100% similarity]
mw/libs/tiny_mce/plugins/example/langs/en_dlg.js [moved from web/libs/tiny_mce/plugins/example/langs/en_dlg.js with 100% similarity]
mw/libs/tiny_mce/plugins/fullpage/css/fullpage.css [moved from web/libs/tiny_mce/plugins/fullpage/css/fullpage.css with 100% similarity]
mw/libs/tiny_mce/plugins/fullpage/editor_plugin.js [moved from web/libs/tiny_mce/plugins/fullpage/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/fullpage/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/fullpage/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/fullpage/fullpage.htm [moved from web/libs/tiny_mce/plugins/fullpage/fullpage.htm with 100% similarity]
mw/libs/tiny_mce/plugins/fullpage/js/fullpage.js [moved from web/libs/tiny_mce/plugins/fullpage/js/fullpage.js with 100% similarity]
mw/libs/tiny_mce/plugins/fullpage/langs/en_dlg.js [moved from web/libs/tiny_mce/plugins/fullpage/langs/en_dlg.js with 100% similarity]
mw/libs/tiny_mce/plugins/fullscreen/editor_plugin.js [moved from web/libs/tiny_mce/plugins/fullscreen/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/fullscreen/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/fullscreen/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/fullscreen/fullscreen.htm [moved from web/libs/tiny_mce/plugins/fullscreen/fullscreen.htm with 100% similarity]
mw/libs/tiny_mce/plugins/iespell/editor_plugin.js [moved from web/libs/tiny_mce/plugins/iespell/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/iespell/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/iespell/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/inlinepopups/editor_plugin.js [moved from web/libs/tiny_mce/plugins/inlinepopups/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/inlinepopups/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/inlinepopups/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/alert.gif [moved from web/libs/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/alert.gif with 100% similarity]
mw/libs/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/button.gif [moved from web/libs/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/button.gif with 100% similarity]
mw/libs/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/buttons.gif [moved from web/libs/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/buttons.gif with 100% similarity]
mw/libs/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/confirm.gif [moved from web/libs/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/confirm.gif with 100% similarity]
mw/libs/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/corners.gif [moved from web/libs/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/corners.gif with 100% similarity]
mw/libs/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/horizontal.gif [moved from web/libs/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/horizontal.gif with 100% similarity]
mw/libs/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/vertical.gif [moved from web/libs/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/vertical.gif with 100% similarity]
mw/libs/tiny_mce/plugins/inlinepopups/skins/clearlooks2/window.css [moved from web/libs/tiny_mce/plugins/inlinepopups/skins/clearlooks2/window.css with 100% similarity]
mw/libs/tiny_mce/plugins/inlinepopups/template.htm [moved from web/libs/tiny_mce/plugins/inlinepopups/template.htm with 100% similarity]
mw/libs/tiny_mce/plugins/insertdatetime/editor_plugin.js [moved from web/libs/tiny_mce/plugins/insertdatetime/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/insertdatetime/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/insertdatetime/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/layer/editor_plugin.js [moved from web/libs/tiny_mce/plugins/layer/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/layer/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/layer/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/legacyoutput/editor_plugin.js [moved from web/libs/tiny_mce/plugins/legacyoutput/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/legacyoutput/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/legacyoutput/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/media/css/content.css [moved from web/libs/tiny_mce/plugins/media/css/content.css with 100% similarity]
mw/libs/tiny_mce/plugins/media/css/media.css [moved from web/libs/tiny_mce/plugins/media/css/media.css with 100% similarity]
mw/libs/tiny_mce/plugins/media/editor_plugin.js [moved from web/libs/tiny_mce/plugins/media/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/media/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/media/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/media/img/flash.gif [moved from web/libs/tiny_mce/plugins/media/img/flash.gif with 100% similarity]
mw/libs/tiny_mce/plugins/media/img/flv_player.swf [moved from web/libs/tiny_mce/plugins/media/img/flv_player.swf with 100% similarity]
mw/libs/tiny_mce/plugins/media/img/quicktime.gif [moved from web/libs/tiny_mce/plugins/media/img/quicktime.gif with 100% similarity]
mw/libs/tiny_mce/plugins/media/img/realmedia.gif [moved from web/libs/tiny_mce/plugins/media/img/realmedia.gif with 100% similarity]
mw/libs/tiny_mce/plugins/media/img/shockwave.gif [moved from web/libs/tiny_mce/plugins/media/img/shockwave.gif with 100% similarity]
mw/libs/tiny_mce/plugins/media/img/trans.gif [moved from web/libs/tiny_mce/plugins/pagebreak/img/trans.gif with 100% similarity]
mw/libs/tiny_mce/plugins/media/img/windowsmedia.gif [moved from web/libs/tiny_mce/plugins/media/img/windowsmedia.gif with 100% similarity]
mw/libs/tiny_mce/plugins/media/js/embed.js [moved from web/libs/tiny_mce/plugins/preview/jscripts/embed.js with 100% similarity]
mw/libs/tiny_mce/plugins/media/js/media.js [moved from web/libs/tiny_mce/plugins/media/js/media.js with 100% similarity]
mw/libs/tiny_mce/plugins/media/langs/en_dlg.js [moved from web/libs/tiny_mce/plugins/media/langs/en_dlg.js with 100% similarity]
mw/libs/tiny_mce/plugins/media/media.htm [moved from web/libs/tiny_mce/plugins/media/media.htm with 100% similarity]
mw/libs/tiny_mce/plugins/nonbreaking/editor_plugin.js [moved from web/libs/tiny_mce/plugins/nonbreaking/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/nonbreaking/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/nonbreaking/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/noneditable/editor_plugin.js [moved from web/libs/tiny_mce/plugins/noneditable/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/noneditable/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/noneditable/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/pagebreak/css/content.css [moved from web/libs/tiny_mce/plugins/pagebreak/css/content.css with 100% similarity]
mw/libs/tiny_mce/plugins/pagebreak/editor_plugin.js [moved from web/libs/tiny_mce/plugins/pagebreak/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/pagebreak/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/pagebreak/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/pagebreak/img/pagebreak.gif [moved from web/libs/tiny_mce/plugins/pagebreak/img/pagebreak.gif with 100% similarity]
mw/libs/tiny_mce/plugins/pagebreak/img/trans.gif [moved from web/libs/tiny_mce/plugins/media/img/trans.gif with 100% similarity]
mw/libs/tiny_mce/plugins/paste/editor_plugin.js [moved from web/libs/tiny_mce/plugins/paste/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/paste/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/paste/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/paste/js/pastetext.js [moved from web/libs/tiny_mce/plugins/paste/js/pastetext.js with 100% similarity]
mw/libs/tiny_mce/plugins/paste/js/pasteword.js [moved from web/libs/tiny_mce/plugins/paste/js/pasteword.js with 100% similarity]
mw/libs/tiny_mce/plugins/paste/langs/en_dlg.js [moved from web/libs/tiny_mce/plugins/paste/langs/en_dlg.js with 100% similarity]
mw/libs/tiny_mce/plugins/paste/pastetext.htm [moved from web/libs/tiny_mce/plugins/paste/pastetext.htm with 100% similarity]
mw/libs/tiny_mce/plugins/paste/pasteword.htm [moved from web/libs/tiny_mce/plugins/paste/pasteword.htm with 100% similarity]
mw/libs/tiny_mce/plugins/preview/editor_plugin.js [moved from web/libs/tiny_mce/plugins/preview/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/preview/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/preview/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/preview/example.html [moved from web/libs/tiny_mce/plugins/preview/example.html with 100% similarity]
mw/libs/tiny_mce/plugins/preview/jscripts/embed.js [moved from web/libs/tiny_mce/plugins/media/js/embed.js with 100% similarity]
mw/libs/tiny_mce/plugins/preview/preview.html [moved from web/libs/tiny_mce/plugins/preview/preview.html with 100% similarity]
mw/libs/tiny_mce/plugins/print/editor_plugin.js [moved from web/libs/tiny_mce/plugins/print/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/print/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/print/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/save/editor_plugin.js [moved from web/libs/tiny_mce/plugins/save/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/save/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/save/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/searchreplace/css/searchreplace.css [moved from web/libs/tiny_mce/plugins/searchreplace/css/searchreplace.css with 100% similarity]
mw/libs/tiny_mce/plugins/searchreplace/editor_plugin.js [moved from web/libs/tiny_mce/plugins/searchreplace/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/searchreplace/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/searchreplace/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/searchreplace/js/searchreplace.js [moved from web/libs/tiny_mce/plugins/searchreplace/js/searchreplace.js with 100% similarity]
mw/libs/tiny_mce/plugins/searchreplace/langs/en_dlg.js [moved from web/libs/tiny_mce/plugins/searchreplace/langs/en_dlg.js with 100% similarity]
mw/libs/tiny_mce/plugins/searchreplace/searchreplace.htm [moved from web/libs/tiny_mce/plugins/searchreplace/searchreplace.htm with 100% similarity]
mw/libs/tiny_mce/plugins/spellchecker/css/content.css [moved from web/libs/tiny_mce/plugins/spellchecker/css/content.css with 100% similarity]
mw/libs/tiny_mce/plugins/spellchecker/editor_plugin.js [moved from web/libs/tiny_mce/plugins/spellchecker/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/spellchecker/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/spellchecker/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/spellchecker/img/wline.gif [moved from web/libs/tiny_mce/plugins/spellchecker/img/wline.gif with 100% similarity]
mw/libs/tiny_mce/plugins/style/css/props.css [moved from web/libs/tiny_mce/plugins/style/css/props.css with 100% similarity]
mw/libs/tiny_mce/plugins/style/editor_plugin.js [moved from web/libs/tiny_mce/plugins/style/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/style/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/style/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/style/js/props.js [moved from web/libs/tiny_mce/plugins/style/js/props.js with 100% similarity]
mw/libs/tiny_mce/plugins/style/langs/en_dlg.js [moved from web/libs/tiny_mce/plugins/style/langs/en_dlg.js with 100% similarity]
mw/libs/tiny_mce/plugins/style/props.htm [moved from web/libs/tiny_mce/plugins/style/props.htm with 100% similarity]
mw/libs/tiny_mce/plugins/tabfocus/editor_plugin.js [moved from web/libs/tiny_mce/plugins/tabfocus/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/tabfocus/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/tabfocus/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/table/cell.htm [moved from web/libs/tiny_mce/plugins/table/cell.htm with 100% similarity]
mw/libs/tiny_mce/plugins/table/css/cell.css [moved from web/libs/tiny_mce/plugins/table/css/cell.css with 100% similarity]
mw/libs/tiny_mce/plugins/table/css/row.css [moved from web/libs/tiny_mce/plugins/table/css/row.css with 100% similarity]
mw/libs/tiny_mce/plugins/table/css/table.css [moved from web/libs/tiny_mce/plugins/table/css/table.css with 100% similarity]
mw/libs/tiny_mce/plugins/table/editor_plugin.js [moved from web/libs/tiny_mce/plugins/table/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/table/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/table/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/table/js/cell.js [moved from web/libs/tiny_mce/plugins/table/js/cell.js with 100% similarity]
mw/libs/tiny_mce/plugins/table/js/merge_cells.js [moved from web/libs/tiny_mce/plugins/table/js/merge_cells.js with 100% similarity]
mw/libs/tiny_mce/plugins/table/js/row.js [moved from web/libs/tiny_mce/plugins/table/js/row.js with 100% similarity]
mw/libs/tiny_mce/plugins/table/js/table.js [moved from web/libs/tiny_mce/plugins/table/js/table.js with 100% similarity]
mw/libs/tiny_mce/plugins/table/langs/en_dlg.js [moved from web/libs/tiny_mce/plugins/table/langs/en_dlg.js with 100% similarity]
mw/libs/tiny_mce/plugins/table/merge_cells.htm [moved from web/libs/tiny_mce/plugins/table/merge_cells.htm with 100% similarity]
mw/libs/tiny_mce/plugins/table/row.htm [moved from web/libs/tiny_mce/plugins/table/row.htm with 100% similarity]
mw/libs/tiny_mce/plugins/table/table.htm [moved from web/libs/tiny_mce/plugins/table/table.htm with 100% similarity]
mw/libs/tiny_mce/plugins/template/blank.htm [moved from web/libs/tiny_mce/plugins/template/blank.htm with 100% similarity]
mw/libs/tiny_mce/plugins/template/css/template.css [moved from web/libs/tiny_mce/plugins/template/css/template.css with 100% similarity]
mw/libs/tiny_mce/plugins/template/editor_plugin.js [moved from web/libs/tiny_mce/plugins/template/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/template/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/template/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/template/js/template.js [moved from web/libs/tiny_mce/plugins/template/js/template.js with 100% similarity]
mw/libs/tiny_mce/plugins/template/langs/en_dlg.js [moved from web/libs/tiny_mce/plugins/template/langs/en_dlg.js with 100% similarity]
mw/libs/tiny_mce/plugins/template/template.htm [moved from web/libs/tiny_mce/plugins/template/template.htm with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/config_tinybrowser.php [moved from web/libs/tiny_mce/plugins/tinybrowser/config_tinybrowser.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/css/style_tinybrowser.css.php [moved from web/libs/tiny_mce/plugins/tinybrowser/css/style_tinybrowser.css.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/css/stylefull_tinybrowser.css [moved from web/libs/tiny_mce/plugins/tinybrowser/css/stylefull_tinybrowser.css with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/edit.php [moved from web/libs/tiny_mce/plugins/tinybrowser/edit.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/flexupload.swf [moved from web/libs/tiny_mce/plugins/tinybrowser/flexupload.swf with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/fns_tinybrowser.php [moved from web/libs/tiny_mce/plugins/tinybrowser/fns_tinybrowser.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/folders.php [moved from web/libs/tiny_mce/plugins/tinybrowser/folders.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/img/asc.gif [moved from web/libs/tiny_mce/plugins/tinybrowser/img/asc.gif with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/img/back.png [moved from web/libs/tiny_mce/plugins/tinybrowser/img/back.png with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/img/desc.gif [moved from web/libs/tiny_mce/plugins/tinybrowser/img/desc.gif with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/img/preview.gif [moved from web/libs/tiny_mce/plugins/tinybrowser/img/preview.gif with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/img/rotate_ac.gif [moved from web/libs/tiny_mce/plugins/tinybrowser/img/rotate_ac.gif with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/img/rotate_c.gif [moved from web/libs/tiny_mce/plugins/tinybrowser/img/rotate_c.gif with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/img/tabs.gif [moved from web/libs/tiny_mce/themes/advanced/skins/default/img/tabs.gif with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/js/swfobject.js [moved from web/libs/tiny_mce/plugins/tinybrowser/js/swfobject.js with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/js/tinybrowser.js.php [moved from web/libs/tiny_mce/plugins/tinybrowser/js/tinybrowser.js.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/langs/cs.php [moved from web/libs/tiny_mce/plugins/tinybrowser/langs/cs.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/langs/da.php [moved from web/libs/tiny_mce/plugins/tinybrowser/langs/da.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/langs/de.php [moved from web/libs/tiny_mce/plugins/tinybrowser/langs/de.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/langs/en.php [moved from web/libs/tiny_mce/plugins/tinybrowser/langs/en.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/langs/es.php [moved from web/libs/tiny_mce/plugins/tinybrowser/langs/es.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/langs/fi.php [moved from web/libs/tiny_mce/plugins/tinybrowser/langs/fi.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/langs/fr.php [moved from web/libs/tiny_mce/plugins/tinybrowser/langs/fr.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/langs/hr.php [moved from web/libs/tiny_mce/plugins/tinybrowser/langs/hr.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/langs/hu.php [moved from web/libs/tiny_mce/plugins/tinybrowser/langs/hu.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/langs/it.php [moved from web/libs/tiny_mce/plugins/tinybrowser/langs/it.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/langs/lv.php [moved from web/libs/tiny_mce/plugins/tinybrowser/langs/lv.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/langs/nl.php [moved from web/libs/tiny_mce/plugins/tinybrowser/langs/nl.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/langs/pl.php [moved from web/libs/tiny_mce/plugins/tinybrowser/langs/pl.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/langs/pt.php [moved from web/libs/tiny_mce/plugins/tinybrowser/langs/pt.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/langs/ru.php [moved from web/libs/tiny_mce/plugins/tinybrowser/langs/ru.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/langs/sk.php [moved from web/libs/tiny_mce/plugins/tinybrowser/langs/sk.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/langs/sv.php [moved from web/libs/tiny_mce/plugins/tinybrowser/langs/sv.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/langs/zh-cn.php [moved from web/libs/tiny_mce/plugins/tinybrowser/langs/zh-cn.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/langs/zh-tw.php [moved from web/libs/tiny_mce/plugins/tinybrowser/langs/zh-tw.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/readme.txt [moved from web/libs/tiny_mce/plugins/tinybrowser/readme.txt with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/tb_standalone.js.php [moved from web/libs/tiny_mce/plugins/tinybrowser/tb_standalone.js.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/tb_tinymce.js.php [moved from web/libs/tiny_mce/plugins/tinybrowser/tb_tinymce.js.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/tinybrowser.php [moved from web/libs/tiny_mce/plugins/tinybrowser/tinybrowser.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/upload.php [moved from web/libs/tiny_mce/plugins/tinybrowser/upload.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/upload_file.php [moved from web/libs/tiny_mce/plugins/tinybrowser/upload_file.php with 100% similarity]
mw/libs/tiny_mce/plugins/tinybrowser/upload_process.php [moved from web/libs/tiny_mce/plugins/tinybrowser/upload_process.php with 100% similarity]
mw/libs/tiny_mce/plugins/visualchars/editor_plugin.js [moved from web/libs/tiny_mce/plugins/visualchars/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/visualchars/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/visualchars/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/wordcount/editor_plugin.js [moved from web/libs/tiny_mce/plugins/wordcount/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/wordcount/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/wordcount/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/xhtmlxtras/abbr.htm [moved from web/libs/tiny_mce/plugins/xhtmlxtras/abbr.htm with 100% similarity]
mw/libs/tiny_mce/plugins/xhtmlxtras/acronym.htm [moved from web/libs/tiny_mce/plugins/xhtmlxtras/acronym.htm with 100% similarity]
mw/libs/tiny_mce/plugins/xhtmlxtras/attributes.htm [moved from web/libs/tiny_mce/plugins/xhtmlxtras/attributes.htm with 100% similarity]
mw/libs/tiny_mce/plugins/xhtmlxtras/cite.htm [moved from web/libs/tiny_mce/plugins/xhtmlxtras/cite.htm with 100% similarity]
mw/libs/tiny_mce/plugins/xhtmlxtras/css/attributes.css [moved from web/libs/tiny_mce/plugins/xhtmlxtras/css/attributes.css with 100% similarity]
mw/libs/tiny_mce/plugins/xhtmlxtras/css/popup.css [moved from web/libs/tiny_mce/plugins/xhtmlxtras/css/popup.css with 100% similarity]
mw/libs/tiny_mce/plugins/xhtmlxtras/del.htm [moved from web/libs/tiny_mce/plugins/xhtmlxtras/del.htm with 100% similarity]
mw/libs/tiny_mce/plugins/xhtmlxtras/editor_plugin.js [moved from web/libs/tiny_mce/plugins/xhtmlxtras/editor_plugin.js with 100% similarity]
mw/libs/tiny_mce/plugins/xhtmlxtras/editor_plugin_src.js [moved from web/libs/tiny_mce/plugins/xhtmlxtras/editor_plugin_src.js with 100% similarity]
mw/libs/tiny_mce/plugins/xhtmlxtras/ins.htm [moved from web/libs/tiny_mce/plugins/xhtmlxtras/ins.htm with 100% similarity]
mw/libs/tiny_mce/plugins/xhtmlxtras/js/abbr.js [moved from web/libs/tiny_mce/plugins/xhtmlxtras/js/abbr.js with 100% similarity]
mw/libs/tiny_mce/plugins/xhtmlxtras/js/acronym.js [moved from web/libs/tiny_mce/plugins/xhtmlxtras/js/acronym.js with 100% similarity]
mw/libs/tiny_mce/plugins/xhtmlxtras/js/attributes.js [moved from web/libs/tiny_mce/plugins/xhtmlxtras/js/attributes.js with 100% similarity]
mw/libs/tiny_mce/plugins/xhtmlxtras/js/cite.js [moved from web/libs/tiny_mce/plugins/xhtmlxtras/js/cite.js with 100% similarity]
mw/libs/tiny_mce/plugins/xhtmlxtras/js/del.js [moved from web/libs/tiny_mce/plugins/xhtmlxtras/js/del.js with 100% similarity]
mw/libs/tiny_mce/plugins/xhtmlxtras/js/element_common.js [moved from web/libs/tiny_mce/plugins/xhtmlxtras/js/element_common.js with 100% similarity]
mw/libs/tiny_mce/plugins/xhtmlxtras/js/ins.js [moved from web/libs/tiny_mce/plugins/xhtmlxtras/js/ins.js with 100% similarity]
mw/libs/tiny_mce/plugins/xhtmlxtras/langs/en_dlg.js [moved from web/libs/tiny_mce/plugins/xhtmlxtras/langs/en_dlg.js with 100% similarity]
mw/libs/tiny_mce/themes/advanced/about.htm [moved from web/libs/tiny_mce/themes/advanced/about.htm with 100% similarity]
mw/libs/tiny_mce/themes/advanced/anchor.htm [moved from web/libs/tiny_mce/themes/advanced/anchor.htm with 100% similarity]
mw/libs/tiny_mce/themes/advanced/charmap.htm [moved from web/libs/tiny_mce/themes/advanced/charmap.htm with 100% similarity]
mw/libs/tiny_mce/themes/advanced/color_picker.htm [moved from web/libs/tiny_mce/themes/advanced/color_picker.htm with 100% similarity]
mw/libs/tiny_mce/themes/advanced/editor_template.js [moved from web/libs/tiny_mce/themes/advanced/editor_template.js with 100% similarity]
mw/libs/tiny_mce/themes/advanced/editor_template_src.js [moved from web/libs/tiny_mce/themes/advanced/editor_template_src.js with 100% similarity]
mw/libs/tiny_mce/themes/advanced/image.htm [moved from web/libs/tiny_mce/themes/advanced/image.htm with 100% similarity]
mw/libs/tiny_mce/themes/advanced/img/colorpicker.jpg [moved from web/libs/tiny_mce/themes/advanced/img/colorpicker.jpg with 100% similarity]
mw/libs/tiny_mce/themes/advanced/img/icons.gif [moved from web/libs/tiny_mce/themes/advanced/img/icons.gif with 100% similarity]
mw/libs/tiny_mce/themes/advanced/js/about.js [moved from web/libs/tiny_mce/themes/advanced/js/about.js with 100% similarity]
mw/libs/tiny_mce/themes/advanced/js/anchor.js [moved from web/libs/tiny_mce/themes/advanced/js/anchor.js with 100% similarity]
mw/libs/tiny_mce/themes/advanced/js/charmap.js [moved from web/libs/tiny_mce/themes/advanced/js/charmap.js with 100% similarity]
mw/libs/tiny_mce/themes/advanced/js/color_picker.js [moved from web/libs/tiny_mce/themes/advanced/js/color_picker.js with 100% similarity]
mw/libs/tiny_mce/themes/advanced/js/image.js [moved from web/libs/tiny_mce/themes/advanced/js/image.js with 100% similarity]
mw/libs/tiny_mce/themes/advanced/js/link.js [moved from web/libs/tiny_mce/themes/advanced/js/link.js with 100% similarity]
mw/libs/tiny_mce/themes/advanced/js/source_editor.js [moved from web/libs/tiny_mce/themes/advanced/js/source_editor.js with 100% similarity]
mw/libs/tiny_mce/themes/advanced/langs/en.js [moved from web/libs/tiny_mce/themes/advanced/langs/en.js with 100% similarity]
mw/libs/tiny_mce/themes/advanced/langs/en_dlg.js [moved from web/libs/tiny_mce/themes/advanced/langs/en_dlg.js with 100% similarity]
mw/libs/tiny_mce/themes/advanced/link.htm [moved from web/libs/tiny_mce/themes/advanced/link.htm with 100% similarity]
mw/libs/tiny_mce/themes/advanced/skins/default/content.css [moved from web/libs/tiny_mce/themes/advanced/skins/default/content.css with 100% similarity]
mw/libs/tiny_mce/themes/advanced/skins/default/dialog.css [moved from web/libs/tiny_mce/themes/advanced/skins/default/dialog.css with 100% similarity]
mw/libs/tiny_mce/themes/advanced/skins/default/img/buttons.png [moved from web/libs/tiny_mce/themes/advanced/skins/default/img/buttons.png with 100% similarity]
mw/libs/tiny_mce/themes/advanced/skins/default/img/items.gif [moved from web/libs/tiny_mce/themes/advanced/skins/default/img/items.gif with 100% similarity]
mw/libs/tiny_mce/themes/advanced/skins/default/img/menu_arrow.gif [moved from web/libs/tiny_mce/themes/advanced/skins/default/img/menu_arrow.gif with 100% similarity]
mw/libs/tiny_mce/themes/advanced/skins/default/img/menu_check.gif [moved from web/libs/tiny_mce/themes/advanced/skins/default/img/menu_check.gif with 100% similarity]
mw/libs/tiny_mce/themes/advanced/skins/default/img/progress.gif [moved from web/libs/tiny_mce/themes/advanced/skins/default/img/progress.gif with 100% similarity]
mw/libs/tiny_mce/themes/advanced/skins/default/img/tabs.gif [moved from web/libs/tiny_mce/plugins/tinybrowser/img/tabs.gif with 100% similarity]
mw/libs/tiny_mce/themes/advanced/skins/default/ui.css [moved from web/libs/tiny_mce/themes/advanced/skins/default/ui.css with 100% similarity]
mw/libs/tiny_mce/themes/advanced/skins/o2k7/content.css [moved from web/libs/tiny_mce/themes/advanced/skins/o2k7/content.css with 100% similarity]
mw/libs/tiny_mce/themes/advanced/skins/o2k7/dialog.css [moved from web/libs/tiny_mce/themes/advanced/skins/o2k7/dialog.css with 100% similarity]
mw/libs/tiny_mce/themes/advanced/skins/o2k7/img/button_bg.png [moved from web/libs/tiny_mce/themes/advanced/skins/o2k7/img/button_bg.png with 100% similarity]
mw/libs/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_black.png [moved from web/libs/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_black.png with 100% similarity]
mw/libs/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_silver.png [moved from web/libs/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_silver.png with 100% similarity]
mw/libs/tiny_mce/themes/advanced/skins/o2k7/ui.css [moved from web/libs/tiny_mce/themes/advanced/skins/o2k7/ui.css with 100% similarity]
mw/libs/tiny_mce/themes/advanced/skins/o2k7/ui_black.css [moved from web/libs/tiny_mce/themes/advanced/skins/o2k7/ui_black.css with 100% similarity]
mw/libs/tiny_mce/themes/advanced/skins/o2k7/ui_silver.css [moved from web/libs/tiny_mce/themes/advanced/skins/o2k7/ui_silver.css with 100% similarity]
mw/libs/tiny_mce/themes/advanced/source_editor.htm [moved from web/libs/tiny_mce/themes/advanced/source_editor.htm with 100% similarity]
mw/libs/tiny_mce/themes/simple/editor_template.js [moved from web/libs/tiny_mce/themes/simple/editor_template.js with 100% similarity]
mw/libs/tiny_mce/themes/simple/editor_template_src.js [moved from web/libs/tiny_mce/themes/simple/editor_template_src.js with 100% similarity]
mw/libs/tiny_mce/themes/simple/img/icons.gif [moved from web/libs/tiny_mce/themes/simple/img/icons.gif with 100% similarity]
mw/libs/tiny_mce/themes/simple/langs/en.js [moved from web/libs/tiny_mce/themes/simple/langs/en.js with 100% similarity]
mw/libs/tiny_mce/themes/simple/skins/default/content.css [moved from web/libs/tiny_mce/themes/simple/skins/default/content.css with 100% similarity]
mw/libs/tiny_mce/themes/simple/skins/default/ui.css [moved from web/libs/tiny_mce/themes/simple/skins/default/ui.css with 100% similarity]
mw/libs/tiny_mce/themes/simple/skins/o2k7/content.css [moved from web/libs/tiny_mce/themes/simple/skins/o2k7/content.css with 100% similarity]
mw/libs/tiny_mce/themes/simple/skins/o2k7/img/button_bg.png [moved from web/libs/tiny_mce/themes/simple/skins/o2k7/img/button_bg.png with 100% similarity]
mw/libs/tiny_mce/themes/simple/skins/o2k7/ui.css [moved from web/libs/tiny_mce/themes/simple/skins/o2k7/ui.css with 100% similarity]
mw/libs/tiny_mce/tiny_mce.js [moved from web/libs/tiny_mce/tiny_mce.js with 100% similarity]
mw/libs/tiny_mce/tiny_mce_popup.js [moved from web/libs/tiny_mce/tiny_mce_popup.js with 100% similarity]
mw/libs/tiny_mce/tiny_mce_src.js [moved from web/libs/tiny_mce/tiny_mce_src.js with 100% similarity]
mw/libs/tiny_mce/utils/editable_selects.js [moved from web/libs/tiny_mce/utils/editable_selects.js with 100% similarity]
mw/libs/tiny_mce/utils/form_utils.js [moved from web/libs/tiny_mce/utils/form_utils.js with 100% similarity]
mw/libs/tiny_mce/utils/mctabs.js [moved from web/libs/tiny_mce/utils/mctabs.js with 100% similarity]
mw/libs/tiny_mce/utils/validate.js [moved from web/libs/tiny_mce/utils/validate.js with 100% similarity]
mw/main.php [new file with mode: 0644]
mw/out/default/admin.php [moved from web/out/dist/admin.php with 79% similarity]
mw/out/default/compte.php [moved from web/out/dist/compte.php with 79% similarity]
mw/out/default/config.xml [moved from web/out/dist/config.xml with 100% similarity]
mw/out/default/content.php [moved from web/out/dist/content.php with 100% similarity]
mw/out/default/css/actions/admin.css [moved from web/out/dist/css/actions/admin.css with 100% similarity]
mw/out/default/css/actions/admin_plugins.css [moved from web/out/dist/css/actions/admin_plugins.css with 100% similarity]
mw/out/default/css/actions/forms_contact.css [moved from web/out/dist/css/actions/forms_contact.css with 100% similarity]
mw/out/default/css/actions/users.css [moved from web/out/dist/css/actions/users.css with 100% similarity]
mw/out/default/css/colorbox.css [moved from web/out/dist/css/colorbox.css with 100% similarity]
mw/out/default/css/colors.css [moved from web/out/dist/css/colors.css with 100% similarity]
mw/out/default/css/footer.css [moved from web/out/dist/css/footer.css with 100% similarity]
mw/out/default/css/general.css [moved from web/out/dist/css/general.css with 100% similarity]
mw/out/default/css/header.css [moved from web/out/dist/css/header.css with 100% similarity]
mw/out/default/css/main.css [moved from web/out/dist/css/main.css with 100% similarity]
mw/out/default/css/menu_top.css [moved from web/out/dist/css/menu_top.css with 100% similarity]
mw/out/default/css/style.css [moved from web/out/dist/css/style.css with 100% similarity]
mw/out/default/css/tinymce.css [moved from web/out/dist/css/tinymce.css with 100% similarity]
mw/out/default/css/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png [moved from web/out/dist/css/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png with 100% similarity]
mw/out/default/css/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png [moved from web/out/dist/css/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png with 100% similarity]
mw/out/default/css/ui-lightness/images/ui-bg_flat_10_000000_40x100.png [moved from web/out/dist/css/ui-lightness/images/ui-bg_flat_10_000000_40x100.png with 100% similarity]
mw/out/default/css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png [moved from web/out/dist/css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png with 100% similarity]
mw/out/default/css/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png [moved from web/out/dist/css/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png with 100% similarity]
mw/out/default/css/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png [moved from web/out/dist/css/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png with 100% similarity]
mw/out/default/css/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png [moved from web/out/dist/css/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png with 100% similarity]
mw/out/default/css/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png [moved from web/out/dist/css/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png with 100% similarity]
mw/out/default/css/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png [moved from web/out/dist/css/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png with 100% similarity]
mw/out/default/css/ui-lightness/images/ui-icons_222222_256x240.png [moved from web/out/dist/css/ui-lightness/images/ui-icons_222222_256x240.png with 100% similarity]
mw/out/default/css/ui-lightness/images/ui-icons_228ef1_256x240.png [moved from web/out/dist/css/ui-lightness/images/ui-icons_228ef1_256x240.png with 100% similarity]
mw/out/default/css/ui-lightness/images/ui-icons_ef8c08_256x240.png [moved from web/out/dist/css/ui-lightness/images/ui-icons_ef8c08_256x240.png with 100% similarity]
mw/out/default/css/ui-lightness/images/ui-icons_ffd27a_256x240.png [moved from web/out/dist/css/ui-lightness/images/ui-icons_ffd27a_256x240.png with 100% similarity]
mw/out/default/css/ui-lightness/images/ui-icons_ffffff_256x240.png [moved from web/out/dist/css/ui-lightness/images/ui-icons_ffffff_256x240.png with 100% similarity]
mw/out/default/css/ui-lightness/jquery-ui-1.8.12.custom.css [moved from web/out/dist/css/ui-lightness/jquery-ui-1.8.12.custom.css with 100% similarity]
mw/out/default/functions.php [moved from web/out/dist/functions.php with 72% similarity]
mw/out/default/html_reponse.php [moved from web/out/dist/html_reponse.php with 100% similarity]
mw/out/default/html_simple_reponse.php [moved from web/out/dist/html_simple_reponse.php with 100% similarity]
mw/out/default/icons/add.gif [moved from web/out/dist/icons/add.gif with 100% similarity]
mw/out/default/icons/ajax-loader.gif [moved from web/out/dist/icons/ajax-loader.gif with 100% similarity]
mw/out/default/icons/asc.gif [moved from web/out/dist/icons/asc.gif with 100% similarity]
mw/out/default/icons/del.gif [moved from web/out/dist/icons/del.gif with 100% similarity]
mw/out/default/icons/desc.gif [moved from web/out/dist/icons/desc.gif with 100% similarity]
mw/out/default/icons/edit.gif [moved from web/out/dist/icons/edit.gif with 100% similarity]
mw/out/default/icons/list.gif [moved from web/out/dist/icons/list.gif with 100% similarity]
mw/out/default/images/colorbox/border.png [moved from web/out/dist/images/colorbox/border.png with 100% similarity]
mw/out/default/images/colorbox/controls.png [moved from web/out/dist/images/colorbox/controls.png with 100% similarity]
mw/out/default/images/colorbox/ie6/borderBottomCenter.png [moved from web/out/dist/images/colorbox/ie6/borderBottomCenter.png with 100% similarity]
mw/out/default/images/colorbox/ie6/borderBottomLeft.png [moved from web/out/dist/images/colorbox/ie6/borderBottomLeft.png with 100% similarity]
mw/out/default/images/colorbox/ie6/borderBottomRight.png [moved from web/out/dist/images/colorbox/ie6/borderBottomRight.png with 100% similarity]
mw/out/default/images/colorbox/ie6/borderMiddleLeft.png [moved from web/out/dist/images/colorbox/ie6/borderMiddleLeft.png with 100% similarity]
mw/out/default/images/colorbox/ie6/borderMiddleRight.png [moved from web/out/dist/images/colorbox/ie6/borderMiddleRight.png with 100% similarity]
mw/out/default/images/colorbox/ie6/borderTopCenter.png [moved from web/out/dist/images/colorbox/ie6/borderTopCenter.png with 100% similarity]
mw/out/default/images/colorbox/ie6/borderTopLeft.png [moved from web/out/dist/images/colorbox/ie6/borderTopLeft.png with 100% similarity]
mw/out/default/images/colorbox/ie6/borderTopRight.png [moved from web/out/dist/images/colorbox/ie6/borderTopRight.png with 100% similarity]
mw/out/default/images/colorbox/loading.gif [moved from web/out/dist/images/colorbox/loading.gif with 100% similarity]
mw/out/default/images/colorbox/loading_background.png [moved from web/out/dist/images/colorbox/loading_background.png with 100% similarity]
mw/out/default/images/colorbox/overlay.png [moved from web/out/dist/images/colorbox/overlay.png with 100% similarity]
mw/out/default/index.php [moved from web/out/dist/index.php with 92% similarity]
mw/out/default/js/actions/admin.js [moved from web/out/dist/js/actions/admin.js with 100% similarity]
mw/out/default/js/actions/users.js [moved from web/out/dist/js/actions/users.js with 100% similarity]
mw/out/default/js/jquery-1.8.3.min.js [moved from web/out/dist/js/jquery-1.8.3.min.js with 100% similarity]
mw/out/default/js/jquery-ui-1.8.12.custom.min.js [moved from web/out/dist/js/jquery-ui-1.8.12.custom.min.js with 100% similarity]
mw/out/default/js/jquery.colorbox-min.js [moved from web/out/dist/js/jquery.colorbox-min.js with 100% similarity]
mw/out/default/js/login.js [moved from web/out/dist/js/login.js with 100% similarity]
mw/out/default/js/md5.js [moved from web/out/dist/js/md5.js with 100% similarity]
mw/out/default/js/menu.js [moved from web/out/dist/js/menu.js with 100% similarity]
mw/out/default/layouts/admin.xml [moved from web/out/dist/layouts/admin.xml with 100% similarity]
mw/out/default/layouts/content.xml [moved from web/out/dist/layouts/content.xml with 100% similarity]
mw/out/default/layouts/forms.xml [moved from web/out/dist/layouts/forms.xml with 100% similarity]
mw/out/default/layouts/index.xml [moved from web/out/dist/layouts/index.xml with 100% similarity]
mw/out/default/layouts/reponses.xml [moved from web/out/dist/layouts/reponses.xml with 100% similarity]
mw/out/default/layouts/users.xml [moved from web/out/dist/layouts/users.xml with 100% similarity]
mw/out/default/views/admin/colonne.php [moved from web/out/dist/views/admin/colonne.php with 66% similarity]
mw/out/default/views/admin/config.php [new file with mode: 0644]
mw/out/default/views/admin/index.php [moved from web/out/dist/views/admin/index.php with 100% similarity]
mw/out/default/views/admin/plugins/list.php [new file with mode: 0644]
mw/out/default/views/admin/users/add.php [moved from web/out/dist/views/admin/users/add.php with 54% similarity]
mw/out/default/views/admin/users/edit.php [moved from web/out/dist/views/admin/users/edit.php with 56% similarity]
mw/out/default/views/admin/users/list.php [new file with mode: 0644]
mw/out/default/views/erreur.php [moved from web/out/dist/views/erreur.php with 85% similarity]
mw/out/default/views/footer.php [new file with mode: 0644]
mw/out/default/views/forms/contact/index.php [moved from web/out/dist/views/forms/contact/index.php with 54% similarity]
mw/out/default/views/head.php [new file with mode: 0644]
mw/out/default/views/header.php [new file with mode: 0644]
mw/out/default/views/index/colonne.php [moved from web/out/dist/views/users/colonne.php with 100% similarity]
mw/out/default/views/login.php [moved from web/out/dist/views/login.php with 54% similarity]
mw/out/default/views/messages.php [moved from web/out/dist/views/messages.php with 78% similarity]
mw/out/default/views/navig.php [moved from web/out/dist/views/navig.php with 100% similarity]
mw/out/default/views/redirect_javascript.php [new file with mode: 0644]
mw/out/default/views/tinymce.init.js.php [moved from web/out/dist/views/tinymce.init.js.php with 90% similarity]
mw/out/default/views/top_menu.php [moved from web/out/dist/views/top_menu.php with 67% similarity]
mw/out/default/views/users/colonne.php [moved from web/out/dist/views/index/colonne.php with 100% similarity]
mw/out/default/views/users/identification.php [moved from web/out/dist/views/users/identification.php with 63% similarity]
mw/out/default/views/users/infos/edit.php [moved from web/out/dist/views/users/infos/edit.php with 58% similarity]
mw/plugins/mw_plugin.php [moved from web/app/mw_plugin.php with 100% similarity]
readme.txt
web/.htaccess [deleted file]
web/app/env/modules/mw_env_config.php [deleted file]
web/app/init/0400_config.php [deleted file]
web/app/main.php [deleted file]
web/content/data/xml/mw/config/22.xml [deleted file]
web/out/dist/views/admin/config.php [deleted file]
web/out/dist/views/admin/plugins/list.php [deleted file]
web/out/dist/views/admin/users/list.php [deleted file]
web/out/dist/views/footer.php [deleted file]
web/out/dist/views/head.php [deleted file]
web/out/dist/views/header.php [deleted file]
web/out/dist/views/redirect_javascript.php [deleted file]

similarity index 50%
rename from web/config.php
rename to config.php
index 3fba400..eb6ec07 100644 (file)
@@ -1,39 +1,33 @@
 <?php
 
-  // Dans la suite, le "dossier d'execution du script"
-  // designe le dossier contenant le fichier index.php
-  // qui sert de point d'entree a toutes les requetes
+  // --------------------------------------------------------------
+  //                                                        chemins
+  //
+
+  $PATHES = array();
 
-  // chemin web du site (dossier d'execution du script)
+  // chemin HTTP de l'installation
   // absolu a partir de la racine HTTP du site
   $PATHES["web"] = "/";
 
   // dossier de l'application
-  // relatif au dossier d'execution du script
-  $PATHES["app"] = "app";
+  // relatif au dossier de l'installation
+  // ou absolu dans le systeme de fichiers du serveur
+  $PATHES["mw_dir"] = "mw";
 
-  // dossier des plugins
-  // relatif au dossier d'execution du script
-  $PATHES["plugins"] = "plugins";
-
-  // dossier des librairies
-  // relatif au dossier d'execution du script
-  $PATHES["libs"] = "libs";
+  // chemin HTTP de l'application
+  // absolu a partir de la racine HTTP du site
+  $PATHES["mw_path"] = "/mw";
 
   // dossier des contenus editables par l'application
-  // relatif au dossier d'execution du script
+  // relatif au dossier de l'installation
   $PATHES["content"] = "content";
 
-  // dossier des templates
-  // relatif au dossier d'execution du script
-  $PATHES["out"] = "out";
-
-  // nom du dossier (sans chemin) du template par defaut
-  $PATHES["dist_out"] = "dist";
-
   // --------------------------------------------------------------
   //                                                base de donnees
-  //       "mysql" ou "xml"
+  //
+
+  $bdd = array();
 
   // --------------------------- MYSQL
 /*
diff --git a/content/data/xml/mw/config/22.xml b/content/data/xml/mw/config/22.xml
new file mode 100644 (file)
index 0000000..340420a
--- /dev/null
@@ -0,0 +1,3 @@
+<tuple>
+  <out><![CDATA[default]]></out>
+</tuple>
similarity index 50%
rename from web/index.php
rename to index.php
index 1320ff3..26b6745 100644 (file)
+++ b/index.php
@@ -1,8 +1,6 @@
 <?php
 
-  // error_reporting(E_ALL);
-
-  require "app/main.php";
+  require "mw/main.php";
   if($mw = __mw("config.php")) __mw_display($mw);
 
 ?>
\ No newline at end of file
similarity index 88%
rename from web/app/config.xml
rename to mw/app/config.xml
index b862223..968bc45 100644 (file)
@@ -6,6 +6,7 @@
   </bdd>
 
   <config>
+    <default_out>default</default_out>
     <default_allow>1</default_allow>
   </config>
 
similarity index 98%
rename from web/app/data/modules/sql/mw_data_users.php
rename to mw/app/data/modules/sql/mw_data_users.php
index 3377c15..9623e09 100644 (file)
     }
 
     function password_ok($user, $password){
+      if(!$user) return false;
       return
-      strcmp(md5($user["password"].$_SESSION["id"]), $password) == 0
-      && $_SESSION["ip"] == $_SERVER["REMOTE_ADDR"];
+           strcmp(md5($user["password"].$_SESSION["id"]), $password) == 0
+        && $_SESSION["ip"] == $_SERVER["REMOTE_ADDR"];
     }
 
     # ----------------------------------------------------------------------------------------
similarity index 99%
rename from web/app/data/modules/xml/mw_data_users.php
rename to mw/app/data/modules/xml/mw_data_users.php
index 30e1890..a55257a 100644 (file)
@@ -77,7 +77,7 @@
       else $user = false;
       if($user !== false){
         if(!isset($this->users)) $this->users = array();
-        $this->users[$user["id"]] = $user;
+        if($user) $this->users[$user["id"]] = $user;
       }
       return $user;
     }
 
     function get_action_status($mod, $controller = "index", $action = "index", $set_status = array()){
       $sgbd = $this->sgbd();
+      $status = array();
       if($rst = $sgbd->open_data("action_status")){
         while($status !==false && $v_rst = $sgbd->fetch_data($rst)){
           if(isset($v_rst) && isset($v_rst["action"]) && isset($v_rst["id_status"])){
similarity index 73%
rename from web/app/init/0300_data.php
rename to mw/app/init/0300_data.php
index afc41cc..8a28d16 100644 (file)
@@ -9,12 +9,12 @@
         $data = new mw_data(true);
         foreach($plugins as $plugin_name => $plugin){
           if($plugin["installed"] && $plugin["enabled"]){
-            $data->load_modules($this->path("plugins").$plugin_name."/app/", "data/modules/share/");
-            $data->load_modules($this->path("plugins").$plugin_name."/app/", "data/modules/".($this->bdd("sgbd") == "xml" ? "xml" : "sql")."/");
+            $data->load_modules($this->path("mw_dir")."plugins/".$plugin_name."/app/", "data/modules/share/");
+            $data->load_modules($this->path("mw_dir")."plugins/".$plugin_name."/app/", "data/modules/".($this->bdd("sgbd") == "xml" ? "xml" : "sql")."/");
           }
         }
-        $data->load_modules($this->path("app"), "data/modules/share/");
-        $data->load_modules($this->path("app"), "data/modules/".($this->bdd("sgbd") == "xml" ? "xml" : "sql")."/");
+        $data->load_modules($this->path("mw_dir")."app/", "data/modules/share/");
+        $data->load_modules($this->path("mw_dir")."app/", "data/modules/".($this->bdd("sgbd") == "xml" ? "xml" : "sql")."/");
         $sgbd = new mw_sgbd(
           new $sgbd_impl(
             $this->bdd("host"),
diff --git a/mw/app/init/0400_config.php b/mw/app/init/0400_config.php
new file mode 100644 (file)
index 0000000..d16fba7
--- /dev/null
@@ -0,0 +1,16 @@
+<?php
+
+  if(($config = $data->config()) !== false){
+    $this->set_config($config);
+    $start_action_params_config =
+      $this->config("start_action_params") ?
+        @unserialize($this->config("start_action_params"))
+      : array();
+    $this->set_config(array("start_action_params" => $start_action_params_config));
+    if($this->set_out_config($data->out_config()) === false){
+      $this->erreur("Impossible de lire la configuration du template");
+    }
+  }
+  else $this->erreur("Impossible de lire la configuration en base", true);
+
+?>
\ No newline at end of file
similarity index 91%
rename from web/app/mods/admin/config.php
rename to mw/app/mods/admin/config.php
index feb323d..20b34dc 100644 (file)
@@ -18,7 +18,7 @@
             if($_POST){
               $env->set_out("config", $_POST);
               if(preg_match("/^[0-9]+$/", $_POST["max_list"])){
-                if(!$_POST["contact_form"] || trim($_POST["email"])){
+                if(!isset($_POST["contact_form"]) || trim($_POST["email"])){
                   $CONTINUE = true;
                   if($CONTINUE && $data->set_config("site_name", $_POST["site_name"]));
                   else $CONTINUE = false;
                   else $CONTINUE = false;
                   if($CONTINUE && $data->set_config("max_list", $_POST["max_list"]));
                   else $CONTINUE = false;
-                  if($CONTINUE && $data->set_config("contact_form", $_POST["contact_form"] ? "1" : "0"));
+                  if($CONTINUE && $data->set_config("contact_form", isset($_POST["contact_form"]) ? "1" : "0"));
                   else $CONTINUE = false;
                   if($CONTINUE && $data->set_config("email", $_POST["email"]));
                   else $CONTINUE = false;
-                  if($CONTINUE && $data->set_config("captcha", $_POST["captcha"] ? "1" : "0"));
+                  if($CONTINUE && $data->set_config("captcha", isset($_POST["captcha"]) ? "1" : "0"));
                   else $CONTINUE = false;
                   if($CONTINUE && $data->set_config("out", $_POST["out"]));
                   else $CONTINUE = false;
similarity index 90%
rename from web/app/mods/admin/users.php
rename to mw/app/mods/admin/users.php
index 3559387..12f3e56 100644 (file)
@@ -16,9 +16,9 @@
         $env->set_out(
           "users",
           $data->users(
-            $_GET[$env->param("start")] ? $_GET[$env->param("start")] : 0,
-            $_GET[$env->param("alpha")],
-            $_GET[$env->param("status")]
+            isset($_GET[$env->param("start")]) ? $_GET[$env->param("start")] : 0,
+            isset($_GET[$env->param("alpha")]) ? $_GET[$env->param("alpha")] : null,
+            isset($_GET[$env->param("status")]) ? $_GET[$env->param("status")] : null
           )
         ) !== false
       ){
                       $_POST["email"],
                       $_POST["status"]
                     )
-                  )
-                  $env->redirect(
-                    $env->url("admin/users"),
-                    "l'utilisateur <strong>".$_POST["login"]."</strong> a &eacute;t&eacute; ajout&eacute;"
-                  );
+                  ){
+                    $env->redirect(
+                      $env->url("admin/users"),
+                      "l'utilisateur <strong>".$_POST["login"]."</strong> a &eacute;t&eacute; ajout&eacute;"
+                    );
+                  }
                   else $env->erreur("Impossible d'ajouter l'utilisateur");
                 }
               }
similarity index 56%
rename from web/app/mods/forms/contact.php
rename to mw/app/mods/forms/contact.php
index 69f3da8..85e5838 100644 (file)
@@ -5,21 +5,27 @@
     function index(&$env){
       if($env->config("contact_form") && $env->config("email")){
         if($env->config("captcha")){
-          if(file_exists($env->path("libs")."ptitcaptcha.php")){
-            require $env->path("libs")."ptitcaptcha.php";
+          if(file_exists($env->path("mw_dir")."libs/ptitcaptcha.php")){
+            require $env->path("mw_dir")."libs/ptitcaptcha.php";
           }
           else{
             $env->erreur("fichier du captcha introuvable");
             return;
           }
         }
+        $message = array(
+          "email" => "",
+          "message" => ""
+        );
         if($_POST){
+          $message["email"] = $_POST["email"];
+          $message["message"] = $_POST["message"];
           if(
             $this->__send_form(
               $env,
-              $_POST["email"],
+              $message["email"],
               "[".$env->config("site_name")."] nouveau message",
-              $_POST["message"],
+              $message["message"],
               $env->config("email"),
               $env->config("captcha")
             )
@@ -31,6 +37,7 @@
             );
           }
         }
+        $env->set_out("message", $message);
       }
       else $env->run("index");
     }
       if(!$captcha || PtitCaptchaHelper::checkCaptcha()){
         if($from){
           if($dest){
-            if(
-              @mail(
-                $dest,
-                $titre,
-                $message,
-                 "From: ".$from."\r\n"
-                ."Reply-To: ".$from."\r\n"
-              )
-            ){
-              $env->set_out("ENVOYE", true);
-              return true;
+            if(filter_var($from, FILTER_VALIDATE_EMAIL)){
+              if(
+                @mail(
+                  $dest,
+                  $titre,
+                  $message,
+                   "From: ".$from."\r\n"
+                  ."Reply-To: ".$from."\r\n"
+                )
+              ){
+                $env->set_out("ENVOYE", true);
+                return true;
+              }
+              else $env->erreur("Erreur &agrave; l'envoi du mail");
             }
-            else $env->erreur("Erreur &agrave; l'envoi du mail");
+            else $env->message("Votre email ne semble pas etre valide");
           }
           else $env->erreur("Impossible de trouver l'email du destinataire");
         }
similarity index 53%
rename from web/app/env/mw_env.php
rename to mw/env/modules/mw_env_app_files.php
index 1b8aaf1..bb5816c 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 
-  class mw_env extends empty_class{
+  class mw_env_app_files extends mw_env{
 
     function app_file_exists($file, $PRIORITE = "ASC"){
       $app_file = $this->_app_file($file, $PRIORITE);
 
     function _app_file($file, $PRIORITE = "ASC"){
       $app_file = false;
-      if($PRIORITE == "ASC" && file_exists($this->path("app").$file)) return $this->path("app").$file;
+      if($PRIORITE == "ASC" && file_exists($this->path("mw_dir")."app/".$file)) return $this->path("mw_dir")."app/".$file;
       if(($plugins = $this->plugins($PRIORITE)) !== false){
         foreach($plugins as $plugin_name => $plugin){
-          if($file && $plugin["installed"] && $plugin["enabled"] && file_exists($this->path("plugins").$plugin_name."/app/".$file)){
-            $app_file = $this->path("plugins").$plugin_name."/app/".$file;
+          if(
+               $file
+            && $plugin["installed"]
+            && $plugin["enabled"]
+            && file_exists($this->path("mw_dir")."plugins/".$plugin_name."/app/".$file)
+          ){
+            $app_file = $this->path("mw_dir")."plugins/".$plugin_name."/app/".$file;
             break;
           }
         }
         if($PRIORITE == "DESC" && !$app_file){
-          if(file_exists($this->path("app").$file)) $app_file = $this->path("app").$file;
+          if(file_exists($this->path("mw_dir")."app/".$file)) $app_file = $this->path("mw_dir")."app/".$file;
         }
       }
       return $app_file;
diff --git a/mw/env/modules/mw_env_config.php b/mw/env/modules/mw_env_config.php
new file mode 100644 (file)
index 0000000..64da6d3
--- /dev/null
@@ -0,0 +1,128 @@
+<?php
+
+  class mw_env_config extends mw_env{
+
+    var $xml_parser;
+    var $config_file;
+    var $PATHES;
+    var $PARAMS;
+    var $CONFIG;
+    var $bdd;
+
+    function load_config($bdd, $CONFIG){
+      if(true){
+        $this->bdd = $bdd;
+        $this->bdd["table_prefix"] = array();
+        $this->CONFIG = isset($CONFIG) ? $CONFIG : array();
+        $this->PARAMS = array();
+        $this->xml_parser = new sxml();
+        $app_config_file = $this->path("mw_dir")."app/config.xml";
+        if(file_exists($app_config_file)){
+          $this->_load_config($app_config_file, $bdd);
+        }
+        if(($plugins = $this->plugins("ASC")) !== false){
+          foreach($plugins as $plugin_name => $plugin){
+            $app_config_file = $this->path("mw_dir")."plugins/".$plugin_name."/app/config.xml";
+            if(file_exists($app_config_file) && $plugin["installed"] && $plugin["enabled"]){
+              $this->_load_config($app_config_file, $bdd);
+            }
+          }
+          $this->init_additional_get_params();
+        }
+        else $this->erreur("impossible de lire les fichiers de configuration pour les plugins", true);
+      }
+      else $this->erreur("impossible de trouver le fichier de configuration pour l'installation", true);
+    }
+
+    function _load_config($app_config_file, $bdd){
+      $this->xml_parser->parse(file_get_contents($app_config_file));
+      $app_config = $this->xml_parser->data["config"][0];
+      if(isset($app_config["subs"]["params"])){
+        foreach($app_config["subs"]["params"][0]["subs"] as $param_key => $param_elt){
+          $this->PARAMS[$param_key] = $param_elt[0]["data"];
+        }
+      }
+      if(isset($app_config["subs"]["config"])){
+        foreach($app_config["subs"]["config"][0]["subs"] as $config_key => $config_elt){
+          $this->CONFIG[$config_key] = $config_elt[0]["data"];
+        }
+      }
+      if(isset($app_config["subs"]["bdd"][0]["subs"]["table_prefix_code"])){
+        $this->add_table_prefix(
+          array(
+            $app_config["subs"]["bdd"][0]["subs"]["table_prefix_code"][0]["data"] => $bdd["table_prefix"]
+          )
+        );
+      }
+    }
+
+    function get_config_file(){
+      return $this->config_file;
+    }
+
+    function set_config_file($config_file){
+      $this->config_file = $config_file;
+    }
+
+    function get_PATHES(){
+      return $this->PATHES;
+    }
+
+    function path($name){
+      return isset($this->PATHES[$name]) ? $this->PATHES[$name] : "";
+    }
+
+    function set_PATHES($PATHES){
+      foreach($PATHES as $path_name => $path_value){
+        if($path_value && substr($path_value, -1) != "/") $PATHES[$path_name] .= "/";
+      }
+      $this->PATHES = $PATHES;
+    }
+
+    function get_PARAMS(){
+      return $this->PARAMS;
+    }
+
+    function param($name){
+      return isset($this->PARAMS[$name]) ? $this->PARAMS[$name] : "";
+    }
+
+    function get_CONFIG(){
+      return $this->CONFIG;
+    }
+
+    function config($name){
+      return isset($this->CONFIG[$name]) ? $this->CONFIG[$name] : null;
+    }
+
+    function set_config($config){
+      if(is_array($config)){
+        foreach($config as $key => $value) $this->CONFIG[$key] = $value;
+        return true;
+      }
+      return false;
+    }
+
+    function get_bdd(){
+      return $this->bdd;
+    }
+
+    function bdd($name){
+      return isset($this->bdd[$name]) ? $this->bdd[$name] : null;
+    }
+
+    function set_bdd($key, $value){
+      $this->bdd[$key] = $value;
+    }
+
+    function add_table_prefix($table_prefix){
+      if(is_array($table_prefix)){
+        foreach($table_prefix as $prefix_code => $prefix) $this->bdd["table_prefix"][$prefix_code] = $prefix;
+        return true;
+      }
+      return false;
+    }
+
+  }
+
+?>
\ No newline at end of file
similarity index 92%
rename from web/app/env/modules/mw_env_init.php
rename to mw/env/modules/mw_env_init.php
index 6a555fa..3813511 100644 (file)
@@ -6,7 +6,7 @@
       $init_files = array();
       if(($plugins = $this->plugins()) !== false){
         foreach($plugins as $plugin_name => $plugin){
-          $init_path = $this->path("plugins").$plugin_name."/app/init/";
+          $init_path = $this->path("mw_dir")."plugins/".$plugin_name."/app/init/";
           if(
                $plugin["installed"]
             && $plugin["enabled"]
@@ -29,7 +29,7 @@
           }
           if($this->check_stop()) return;
         }
-        $init_path = $this->path("app")."init/";
+        $init_path = $this->path("mw_dir")."app/init/";
         if(
              file_exists($init_path)
           && is_dir($init_path)
similarity index 93%
rename from web/app/env/modules/mw_env_inputs.php
rename to mw/env/modules/mw_env_inputs.php
index 0ebd042..e29720c 100644 (file)
@@ -4,7 +4,7 @@
 
     function prepare_inputs(){
       if($_POST){
-        require_once $this->path("libs")."inputfilter.php";
+        require_once $this->path("mw_dir")."libs/inputfilter.php";
         $allowed_tags = array(
           "p", "span", "pre", "blockquote", "address", "hr", "br",
           "img",
similarity index 68%
rename from web/app/env/modules/mw_env_out.php
rename to mw/env/modules/mw_env_out.php
index f4ae9d9..12ab2ed 100644 (file)
@@ -6,8 +6,13 @@
     var $out_config;
     var $layout;
 
+    // ---------------------------------------------------------------------------------
+    //                                                                          out vars
+    //
+
     function set_out($key, $value){
-      $this->out[$key] = $value; return $value;
+      $this->out[$key] = $value;
+      return $value;
     }
 
     function get_out(){
     }
 
     function out($key){
-      return $this->out[$key];
+      return isset($this->out[$key]) ? $this->out[$key] : null;
     }
 
+    // ---------------------------------------------------------------------------------
+    //                                                                         templates
+    //
+
     function out_pathes(){
       $pathes = array();
-      if($dh = opendir($this->path("out"))){
+      if(($plugins = $this->plugins()) !== false){
+        foreach($plugins as $plugin_name => $plugin){
+          $out_dir = $this->path("mw_dir")."plugins/".$plugin_name."/out/";
+          if(
+               $plugin["installed"]
+            && $plugin["enabled"]
+            && file_exists($out_dir)
+            && is_dir($out_dir)
+          ){
+            if(($pathes = $this->_out_pathes($out_dir, $pathes)) === false) break;
+          }
+        }
+        if($pathes !== false){
+          $pathes = $this->_out_pathes($this->path("mw_dir")."out/", $pathes);
+        }
+      }
+      else $pathes = false;
+      return $pathes;
+    }
+
+    function _out_pathes($out_dir, $pathes = array()){
+      if($dh = opendir($out_dir)){
         while(($file = readdir($dh)) !== false){
-          if(is_dir($this->path("out").$file) && substr($file, 0 ,1) != ".") $pathes[] = $file;
+          if(is_dir($out_dir.$file) && substr($file, 0 ,1) != ".") $pathes[] = $file;
         }
         closedir($dh);
       }
       return $pathes;
     }
 
+    // ---------------------------------------------------------------------------------
+    //                                                                         out files
+    //
+
     function out_file_exists($file, $PRIORITE = "DESC"){
       $out_file = $this->_out_file($file, $PRIORITE);
       return $out_file ? true : false;
 
     function out_file($file, $PRIORITE = "DESC"){
       $out_file = $this->_out_file($file, $PRIORITE);
-      return $out_file ? $out_file : $file;
+      return $out_file ? $this->path("mw_dir").$out_file : $file;
+    }
+
+    function out_url($file, $PRIORITE = "DESC"){
+      $out_file = $this->_out_file($file, $PRIORITE);
+      return $out_file ? $this->path("mw_path").$out_file : $file;
     }
 
     function _out_file($file, $PRIORITE = "DESC"){
       $out_file = false;
       if($PRIORITE == "ASC"){
-        $tmp_out_file = $this->path("out").$this->config("out").$file;
-        if($file && file_exists($tmp_out_file)){
+        $tmp_out_file = "out/".$this->config("out")."/".$file;
+        if($file && file_exists($this->path("mw_dir").$tmp_out_file)){
           $out_file = $tmp_out_file;
         }
         if(!$out_file){
-          $tmp_out_file = $this->path("out").$this->path("dist_out").$file;
-          if($file && file_exists($tmp_out_file)){
+          $tmp_out_file = "out/".$this->config("default_out")."/".$file;
+          if($file && file_exists($this->path("mw_dir").$tmp_out_file)){
             $out_file = $tmp_out_file;
           }
         }
       if($out_file) return $out_file;
       if(($plugins = $this->plugins($PRIORITE)) !== false){
         foreach($plugins as $plugin_name => $plugin){
-          $tmp_out_file = $this->path("plugins").$plugin_name."/out/".$this->config("out").$file;
-          if($file && $plugin["installed"] && $plugin["enabled"] && file_exists($tmp_out_file)){
+          $tmp_out_file = "plugins/".$plugin_name."/out/".$this->config("out")."/".$file;
+          if($file && $plugin["installed"] && $plugin["enabled"] && file_exists($this->path("mw_dir").$tmp_out_file)){
             $out_file = $tmp_out_file;
             break;
           }
           if(!$out_file){
-            $tmp_out_file = $this->path("plugins").$plugin_name."/out/".$this->path("dist_out").$file;
-            if($file && $plugin["installed"] && $plugin["enabled"] && file_exists($tmp_out_file)){
+            $tmp_out_file = "plugins/".$plugin_name."/out/".$this->config("default_out")."/".$file;
+            if($file && $plugin["installed"] && $plugin["enabled"] && file_exists($this->path("mw_dir").$tmp_out_file)){
               $out_file = $tmp_out_file;
               break;
             }
           }
         }
         if($PRIORITE == "DESC" && !$out_file){
-          $tmp_out_file = $this->path("out").$this->config("out").$file;
-          if($file && file_exists($tmp_out_file)){
+          $tmp_out_file = "out/".$this->config("out")."/".$file;
+          if($file && file_exists($this->path("mw_dir").$tmp_out_file)){
             $out_file = $tmp_out_file;
           }
           if(!$out_file){
-            $tmp_out_file = $this->path("out").$this->path("dist_out").$file;
-            if($file && file_exists($tmp_out_file)){
+            $tmp_out_file = "out/".$this->config("default_out")."/".$file;
+            if($file && file_exists($this->path("mw_dir").$tmp_out_file)){
               $out_file = $tmp_out_file;
             }
           }
       return $out_file;
     }
 
-    # ---------------------------------------------------------------------------------
-    #                                                                        out config
-    #
+    // ---------------------------------------------------------------------------------
+    //                                                                        out config
+    //
 
     function set_out_config($out_config){
       $this->out_config = $out_config;
       return null;
     }
 
-    # ---------------------------------------------------------------------------------
-    #                                                                           layouts
-    #
+    // ---------------------------------------------------------------------------------
+    //                                                                           layouts
+    //
 
     function layout(){
       return $this->layout;
         foreach($plugins as $plugin_name => $plugin){
           if($plugin["installed"] && $plugin["enabled"]){
             $FOUND = false;
-            $functions_file = $this->path("plugins").$plugin_name."/out/".$this->config("out")."functions.php";
+            $functions_file = $this->path("mw_dir")."plugins/".$plugin_name."/out/".$this->config("out")."/functions.php";
             if(file_exists($functions_file)){
               $FOUND = true;
               require $functions_file;
             }
             if(!$FOUND){
-              $functions_file = $this->path("plugins").$plugin_name."/out/".$this->path("dist_out")."functions.php";
+              $functions_file = $this->path("mw_dir")."plugins/".$plugin_name."/out/".$this->config("default_out")."/functions.php";
               if($plugin["installed"] && $plugin["enabled"] && file_exists($functions_file)){
                 require $functions_file;
               }
           }
         }
         $FOUND = false;
-        $functions_file = $this->path("out").$this->config("out")."functions.php";
+        $functions_file = $this->path("mw_dir")."out/".$this->config("out")."/functions.php";
         if(file_exists($functions_file)){
           $FOUND = true;
           require $functions_file;
         }
         if(!$FOUND){
-          $functions_file = $this->path("out").$this->path("dist_out")."functions.php";
+          $functions_file = $this->path("mw_dir")."out/".$this->config("default_out")."/functions.php";
           if(file_exists($functions_file)){
             require $functions_file;
           }
     function _init_layout($mod){
       if(($plugins = $this->plugins("ASC")) !== false){
         $layout_file = false;
-        $tmp_layout_file = $this->path("out").$this->config("out")."layouts/".$mod.".xml";
+        $tmp_layout_file = $this->path("mw_dir")."out/".$this->config("out")."/layouts/".$mod.".xml";
         if(file_exists($tmp_layout_file)) $layout_file = $tmp_layout_file;
         if(!$layout_file){
-          $tmp_layout_file = $this->path("out").$this->path("dist_out")."layouts/".$mod.".xml";
+          $tmp_layout_file = $this->path("mw_dir")."out/".$this->config("default_out")."/layouts/".$mod.".xml";
           if(file_exists($tmp_layout_file)) $layout_file = $tmp_layout_file;
         }
         if($layout_file) $this->load_layout($layout_file);
         foreach($plugins as $plugin_name => $plugin){
           if($plugin["installed"] && $plugin["enabled"]){
             $layout_file = false;
-            $tmp_layout_file = $this->path("plugins").$plugin_name."/out/".$this->config("out")."layouts/".$mod.".xml";
+            $tmp_layout_file = $this->path("mw_dir")."plugins/".$plugin_name."/out/".$this->config("out")."/layouts/".$mod.".xml";
             if(file_exists($tmp_layout_file)) $layout_file = $tmp_layout_file;
             if(!$layout_file){
-              $tmp_layout_file = $this->path("plugins").$plugin_name."/out/".$this->path("dist_out")."layouts/".$mod.".xml";
+              $tmp_layout_file = $this->path("mw_dir")."plugins/".$plugin_name."/out/".$this->config("default_out")."/layouts/".$mod.".xml";
               if(file_exists($tmp_layout_file)) $layout_file = $tmp_layout_file;
             }
             if($layout_file) $this->load_layout($layout_file);
similarity index 62%
rename from web/app/env/modules/mw_env_plugins.php
rename to mw/env/modules/mw_env_plugins.php
index 375e3c7..1df1834 100644 (file)
       }
       $plugins = array();
       if(!class_exists("mw_plugin")){
-        require $this->path("app")."mw_plugin.php";
+        require $this->path("mw_dir")."plugins/mw_plugin.php";
         if(!class_exists("mw_plugin")){
           $plugins = false;
           return;
         }
       }
-      if(file_exists($this->path("plugins"))){
-        if($dh = opendir($this->path("plugins"))){
-          $OK = true;
-          while($OK && ($plugin_name = readdir($dh)) !== false){
-            if(substr($plugin_name, 0 ,1) !== "." && is_dir($this->path("plugins").$plugin_name)){
-              if(!isset($plugins[$plugin_name])){
-                if(($plugin = $this->plugin_data($plugin_name)) !== false){
-                  $MAJ = false;
-                  if(!isset($plugin["installed"]) || !isset($plugin["enabled"])){
-                    $plugin["installed"] = false;
-                    $plugin["enabled"] = false;
-                    $plugin["priorite"] = 0;
-                    $MAJ = true;
-                  }
-                  if(!$plugin["installed"] && $plugin["enabled"]){
-                    $plugin["enabled"] = false;
-                    $MAJ = true;
-                  }
-                  if($MAJ) $OK = $this->set_plugin_data($plugin_name, $plugin);
-                  if($OK){
-                    if(($plugin["impl"] = $this->plugin_impl($plugin_name)) !== false){
-                      $plugin["title"] =  ($plugin_title = $this->plugin_call($plugin["impl"], "title")) ? $plugin_title : "";
-                      $plugin["description"] = ($plugin_description = $this->plugin_call($plugin["impl"], "description")) ? $plugin_description : "";
-                      $plugin["name"] = $plugin_name;
-                      $plugins[$plugin_name] = $plugin;
-                    }
+      if($dh = opendir($this->path("mw_dir")."plugins/")){
+        $OK = true;
+        while($OK && ($plugin_name = readdir($dh)) !== false){
+          if(substr($plugin_name, 0 ,1) !== "." && is_dir($this->path("mw_dir")."plugins/".$plugin_name)){
+            if(!isset($plugins[$plugin_name])){
+              if(($plugin = $this->plugin_data($plugin_name)) !== false){
+                $MAJ = false;
+                if(!isset($plugin["installed"]) || !isset($plugin["enabled"])){
+                  $plugin["installed"] = false;
+                  $plugin["enabled"] = false;
+                  $plugin["priorite"] = 0;
+                  $MAJ = true;
+                }
+                if(!$plugin["installed"] && $plugin["enabled"]){
+                  $plugin["enabled"] = false;
+                  $MAJ = true;
+                }
+                if($MAJ) $OK = $this->set_plugin_data($plugin_name, $plugin);
+                if($OK){
+                  if(($plugin["impl"] = $this->plugin_impl($plugin_name)) !== false){
+                    $plugin["title"] =  ($plugin_title = $this->plugin_call($plugin["impl"], "title")) ? $plugin_title : "";
+                    $plugin["description"] = ($plugin_description = $this->plugin_call($plugin["impl"], "description")) ? $plugin_description : "";
+                    $plugin["name"] = $plugin_name;
+                    $plugins[$plugin_name] = $plugin;
                   }
                 }
-                else $OK = false;
               }
+              else $OK = false;
             }
-            if(!$OK) $plugins = false;
           }
-          closedir($dh);
-          if($plugins !== false){
-            if(file_exists($this->plugins_data_dir()) && is_dir($this->plugins_data_dir())){
-              if($dh = opendir($this->plugins_data_dir())){
-                $plugins_data_files = array();
-                $OK = true;
-                while($OK && ($plugin_name = readdir($dh)) !== false){
-                  if(substr($plugin_name, 0 ,1) != "." && !is_dir($this->plugin_data_file($plugin_name))){
-                    if(!$plugins[$plugin_name]) $this->del_plugin_data($plugin_name);
-                  }
-                  if(!$OK) $plugins = false;
+          if(!$OK) $plugins = false;
+        }
+        closedir($dh);
+        if($plugins !== false){
+          if(file_exists($this->plugins_data_dir()) && is_dir($this->plugins_data_dir())){
+            if($dh = opendir($this->plugins_data_dir())){
+              $plugins_data_files = array();
+              $OK = true;
+              while($OK && ($plugin_name = readdir($dh)) !== false){
+                if(substr($plugin_name, 0 ,1) != "." && !is_dir($this->plugin_data_file($plugin_name))){
+                  if(!isset($plugins[$plugin_name])) $this->del_plugin_data($plugin_name);
                 }
-                closedir($dh);
+                if(!$OK) $plugins = false;
               }
+              closedir($dh);
             }
           }
         }
-        else $plugins = false;
       }
+      else $plugins = false;
       if($plugins !== false){
         if($PRIORITE == "ASC") $this->plugins_asc = $this->ordonne_plugins($plugins, $PRIORITE);
         elseif($PRIORITE == "DESC") $this->plugins_desc = $this->ordonne_plugins($plugins, $PRIORITE);
 
     function plugin_impl($plugin_name){
       $plugin = false;
-      if(file_exists($this->path("plugins"))){
-        if(substr($plugin_name, 0 ,1) !== "." && is_dir($this->path("plugins").$plugin_name)){
-          if(file_exists($this->path("plugins").$plugin_name."/".$plugin_name.".php")){
-            require $this->path("plugins").$plugin_name."/".$plugin_name.".php";
+      if(file_exists($this->path("mw_dir")."plugins")){
+        if(substr($plugin_name, 0 ,1) !== "." && is_dir($this->path("mw_dir")."plugins/".$plugin_name)){
+          if(file_exists($this->path("mw_dir")."plugins/".$plugin_name."/".$plugin_name.".php")){
+            require $this->path("mw_dir")."plugins/".$plugin_name."/".$plugin_name.".php";
             if(class_exists($plugin_name)){
               $plugin = new $plugin_name();
             }
similarity index 90%
rename from web/app/env/modules/mw_env_run.php
rename to mw/env/modules/mw_env_run.php
index 69360c2..51b6330 100644 (file)
           ){
             $action = $etat["mod"]."/".$etat["controller"]."/".$etat["action"];
             if(isset($action_status[$action])){
-              $OK = $action_status[$action][0] || (isset($action_status[$action][$user_status]) && $action_status[$action][$user_status]);
+              $OK =
+                   (isset($action_status[$action][0]) && $action_status[$action][0])
+                || (isset($action_status[$action][$user_status]) && $action_status[$action][$user_status]);
             }
             else{
               $action = $etat["mod"]."/".$etat["controller"];
               if(isset($action_status[$action])){
-                $OK = $action_status[$action][0] || (isset($action_status[$action][$user_status]) && $action_status[$action][$user_status]);
+                $OK =
+                     (isset($action_status[$action][0]) && $action_status[$action][0])
+                  || (isset($action_status[$action][$user_status]) && $action_status[$action][$user_status]);
               }
               else{
                 $action = $etat["mod"];
                 if(isset($action_status[$action])){
-                  $OK = $action_status[$action][0] || (isset($action_status[$action][$user_status]) && $action_status[$action][$user_status]);
+                  $OK =
+                       (isset($action_status[$action][0]) && $action_status[$action][0])
+                    || (isset($action_status[$action][$user_status]) && $action_status[$action][$user_status]);
                 }
               }
             }
diff --git a/mw/env/mw_env.php b/mw/env/mw_env.php
new file mode 100644 (file)
index 0000000..1addce4
--- /dev/null
@@ -0,0 +1,6 @@
+<?php
+
+  class mw_env extends empty_class{
+  }
+
+?>
\ No newline at end of file
similarity index 93%
rename from web/libs/ptitcaptcha.php
rename to mw/libs/ptitcaptcha.php
index 6e24126..0262931 100644 (file)
@@ -28,7 +28,7 @@ class PtitCaptchaHelper
         * @param string $baseuri : relative or absolute path to folder containing this file on web
         * @return IMG Tag
         */
-       function generateImgTags($baseuri)
+       static function generateImgTags($baseuri)
        {
                return "<a class=\"ptitcaptcha\" href=\"#\"><img alt=\"???\" title=\"?\"".
                        " src=\"".$baseuri."ptitcaptcha.php?pck=".$GLOBALS['ptitcaptcha_akey']."\"".
@@ -43,7 +43,7 @@ class PtitCaptchaHelper
         *
         * @return input hidden tag
         */
-       function generateHiddenTags()
+       static function generateHiddenTags()
        {
                return "<input type=\"hidden\" name=\"ptitcaptcha_key\" value=\"".$GLOBALS['ptitcaptcha_akey']."\"/>";
        }
@@ -53,7 +53,7 @@ class PtitCaptchaHelper
         *
         * @return input tag
         */
-       function generateInputTags()
+       static function generateInputTags()
        {
                return "<input type=\"text\" name=\"ptitcaptcha_entry\" id=\"ptitcaptcha_entry\" value=\"\"/>";
        }
@@ -63,7 +63,7 @@ class PtitCaptchaHelper
         *
         * @return boolean (true=correct, false=incorrect)
         */
-       function checkCaptcha()
+       static function checkCaptcha()
        {
                if(     isset($_POST['ptitcaptcha_entry']) && 
                        $_POST['ptitcaptcha_entry'] == PtitCaptchaHelper::_getDisplayText($_POST['ptitcaptcha_key']))
@@ -79,7 +79,7 @@ class PtitCaptchaHelper
         * @param string $pck
         * @return string
         */
-       function _getDisplayText($pck)  // internal function
+       static function _getDisplayText($pck)   // internal function
        {
                $src=md5(PTITCAPTCHA_ENTROPY.$pck);
                $txt="";
similarity index 100%
rename from web/libs/sxml.php
rename to mw/libs/sxml.php
diff --git a/mw/main.php b/mw/main.php
new file mode 100644 (file)
index 0000000..92b92e0
--- /dev/null
@@ -0,0 +1,37 @@
+<?php
+
+  function __mw($config_file, $etat = ""){
+    require $config_file;
+    $PATHES["mw_dir"] .= $PATHES["mw_dir"] && substr($PATHES["mw_dir"], -1) != "/" ? "/" : "";
+    $PATHES["mw_path"] .= $PATHES["mw_path"] && substr($PATHES["mw_path"], -1) != "/" ? "/" : "";
+    if(!isset($CONFIG)) $CONFIG = array();
+    if($sxml_class_file = (file_exists($PATHES["mw_dir"]."libs/sxml.php") ? $PATHES["mw_dir"]."libs/sxml.php" : "")){
+      if($empty_class_file = (file_exists($PATHES["mw_dir"]."libs/empty_class.php") ? $PATHES["mw_dir"]."libs/empty_class.php" : "")){
+        if($env_class_file = (file_exists($PATHES["mw_dir"]."env/mw_env.php") ? $PATHES["mw_dir"]."env/mw_env.php" : "")){
+          require $sxml_class_file;
+          require $empty_class_file;
+          require $env_class_file;
+          $env = new mw_env(true);
+          $env->load_modules($PATHES["mw_dir"], "env/modules/");
+          $env->set_config_file($config_file);
+          $env->set_PATHES($PATHES);
+          $env->init_plugins();
+          $env->load_config($bdd, $CONFIG);
+          $env->init();
+          $etat = ($etat === false ? false : ($etat ? $etat : (isset($_GET[$env->param("e")]) ? $_GET[$env->param("e")] : "")));
+          if($etat !== false) $env->run($etat);
+          return $env;
+        }
+        else echo "<pre>impossible de trouver le fichier <strong>env/mw_env.php</strong></pre>";
+      }
+      else echo "<pre>impossible de trouver le fichier <strong>libs/empty_class.php</strong></pre>";
+    }
+    else echo "<pre>impossible de trouver le fichier <strong>libs/sxml.php</strong></pre>";
+    return false;
+  }
+
+  function __mw_display($env){
+    if($env->etat_is_valid()) $env->render_layout($env->init_layout());
+  }
+
+?>
\ No newline at end of file
similarity index 79%
rename from web/out/dist/admin.php
rename to mw/out/default/admin.php
index 0c60ada..5fb93c9 100644 (file)
@@ -2,8 +2,8 @@
 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
   <head>
     <?php require $this->out_file("views/head.php"); ?>
-    <script type="text/javascript" src="<?= $this->path("libs") ?>tiny_mce/tiny_mce.js"></script>
-    <script type="text/javascript" src="<?= $this->path("libs") ?>tiny_mce/plugins/tinybrowser/tb_tinymce.js.php"></script>
+    <script type="text/javascript" src="<?php echo $this->path("mw_path"); ?>libs/tiny_mce/tiny_mce.js"></script>
+    <script type="text/javascript" src="<?php echo $this->path("mw_path"); ?>libs/tiny_mce/plugins/tinybrowser/tb_tinymce.js.php"></script>
   </head>
   <body>
 
similarity index 79%
rename from web/out/dist/compte.php
rename to mw/out/default/compte.php
index 604a9ca..e938159 100644 (file)
@@ -2,8 +2,8 @@
 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
   <head>
     <?php require $this->out_file("views/head.php"); ?>
-    <script type="text/javascript" src="<?= $this->path("libs") ?>tiny_mce/tiny_mce.js"></script>
-    <script type="text/javascript" src="<?= $this->path("libs") ?>tiny_mce/plugins/tinybrowser/tb_tinymce.js.php"></script>
+    <script type="text/javascript" src="<?php echo $this->path("mw_path"); ?>libs/tiny_mce/tiny_mce.js"></script>
+    <script type="text/javascript" src="<?php echo $this->path("mw_path"); ?>libs/tiny_mce/plugins/tinybrowser/tb_tinymce.js.php"></script>
   </head>
   <body>
 
similarity index 72%
rename from web/out/dist/functions.php
rename to mw/out/default/functions.php
index a44889a..6d94ffa 100644 (file)
@@ -1,22 +1,22 @@
 <?php
 
   if(!function_exists("mw_navig")) :
-  function mw_navig($current, $total, $max, $base_url, $start_param, $legende = null)
-  { $navig = "";
-    if($max && $total > $max)
-    { if(isset($legende))
-      { $navig .=
+  function mw_navig($current, $total, $max, $base_url, $start_param, $legende = null){
+    $navig = "";
+    if($max && $total > $max){
+      if(isset($legende)){
+        $navig .=
          $legende." ".($current + 1)." &agrave; "
         .(($current + $max) > $total ? $total : $current + $max)
         ." sur ".$total." - aller &agrave; la ";
       }
       $get_params = array();
-      if(($q = strpos($base_url, "?")) !== false)
-      { $v_query = explode("&", substr($base_url, $q + 1));
+      if(($q = strpos($base_url, "?")) !== false){
+        $v_query = explode("&", substr($base_url, $q + 1));
         $base_url = substr($base_url, 0, $q);
-        foreach($v_query as $query)
-        { if($query)
-          { $v = explode("=", $query);
+        foreach($v_query as $query){
+          if($query){
+            $v = explode("=", $query);
             $get_params[$v[0]] = $v[1];
           }
         }
@@ -30,8 +30,8 @@
       ."<select onchange=\"document.location=this.options[this.selectedIndex].value;\">\n";
       $np = 1;
       $ni = 0;
-      while($ni < $total)
-      { $navig .=
+      while($ni < $total){
+        $navig .=
          "  <option value=\"".$base_url.$start_param."=".$ni."\"".($current >= $ni && $current <= $ni ? " SELECTED" : "").">"
         .$np
         ."</option>\n";
       }
       $navig .=
        "</select>\n";
-      if($current >= $max)
-      { $navig .=
+      if($current >= $max){
+        $navig .=
           "<a href=\"".$base_url.$start_param."=".($current - $max)."\">&laquo;</a>\n";
       }
-      if($current < $total - $max)
-      { $navig .=
+      if($current < $total - $max){
+        $navig .=
           "<a href=\"".$base_url.$start_param."=".($current + $max)."\">&raquo;</a>\n";
       }
     }
similarity index 92%
rename from web/out/dist/index.php
rename to mw/out/default/index.php
index 2ddd92e..240b05a 100644 (file)
@@ -28,7 +28,7 @@
         </div>
 <?php endif; ?>
 
-        <div id="center"<?= $this->out_config("colonne") ? "" : " class=\"no_colonne\"" ?>>
+        <div id="center"<?php echo $this->out_config("colonne") ? "" : " class=\"no_colonne\""; ?>>
 <?php require $this->out_file("views/messages.php"); ?>
 <?php
 
similarity index 66%
rename from web/out/dist/views/admin/colonne.php
rename to mw/out/default/views/admin/colonne.php
index e4b2389..561c2d8 100644 (file)
@@ -1,7 +1,7 @@
 <?php $data = $this->data(); if(($admin_menu = $data->get_link("admin")) && $admin_menu["subs"]) : ?>
 <ul class="menu">
   <?php foreach($admin_menu["subs"] as $link) : ?>
-  <li><a href="<?= $link["url"] ?>"><?= $link["intitule"] ?></a></li>
+  <li><a href="<?php echo $link["url"]; ?>"><?php echo $link["intitule"]; ?></a></li>
   <?php endforeach; ?>
 </ul>
 <?php endif; ?>
\ No newline at end of file
diff --git a/mw/out/default/views/admin/config.php b/mw/out/default/views/admin/config.php
new file mode 100644 (file)
index 0000000..e71d355
--- /dev/null
@@ -0,0 +1,86 @@
+<h2>Configuration</h2>
+
+<h3>Générale</h3>
+
+<form name="config_form" action="<?php echo $this->url("admin/config"); ?>" method="post">
+  <ul class="form">
+    <li>
+      <label for="site_name">nom du site</label>
+      <div><p>
+        <input type="text" name="site_name" id="site_name" value="<?php echo $this->out["config"]["site_name"]; ?>" />
+      </p></div>
+    </li>
+    <li>
+      <label for="description">description</label>
+      <div><p>
+        <textarea cols="50" rows="10" name="description" id="description"><?php echo $this->out["config"]["description"]; ?></textarea>
+      </p></div>
+    </li>
+    <li>
+      <label for="contact_form">formulaire de contact</label>
+      <div><p>
+        <input type="checkbox" name="contact_form" id="contact_form"<?php echo $this->out["config"]["contact_form"] ? " checked=\"checked\"" : ""; ?> />
+      </p></div>
+    </li>
+    <li id="email_li"<?php echo $this->out["config"]["contact_form"] ? "" : " style=\"display:none;\""; ?>>
+      <label for="email">email</label>
+      <div>
+      <div><p>
+        <input type="text" name="email" id="email" value="<?php echo $this->out["config"]["email"]; ?>" /><br />
+        <br /><input type="checkbox" name="captcha" id="captcha"<?php echo $this->out["config"]["captcha"] ? " checked=\"checked\"" : ""; ?> /> anti-spam
+      </p></div>
+      </div>
+    </li>
+    <li>
+      <label for="max_list">taille maximum des listes</label>
+      <div><p>
+        <span>nombre d'&eacute;l&eacute;ments &agrave; afficher dans une liste avant de paginer :</span>
+        <input type="text" name="max_list" id="max_list" value="<?php echo $this->out["config"]["max_list"]; ?>" />
+      </p></div>
+    </li>
+  </ul>
+
+<h3>Affichage du site</h3>
+
+  <ul class="form">
+
+    <li>
+      <label for="out">template</label>
+<?php
+
+  $template = $this->config("out");
+  $FOUND = false;
+  foreach($this->out["out_pathes"] as $out_path) { if($template == $out_path) { $FOUND = true; break; } }
+  if(!$FOUND) $template = $this->config("default_out");
+
+?>
+      <div><p>
+<?php if($this->out["out_pathes"]) : ?>
+        <select name="out" id="out">
+<?php foreach($this->out["out_pathes"] as $out_path) : ?>
+          <option value="<?php echo $out_path; ?>"<?php echo $template == $out_path ? " selected=\"selected\"" : ""; ?>><?php echo $out_path; ?></option>
+<?php endforeach; ?>
+        </select>
+<?php else : ?>
+        <strong class="warn">Aucun dossier d'affichage ! ... ?</strong>
+<?php endif; ?>
+
+      </p></div>
+    </li>
+
+<?php foreach($this->out["out_config"] as $key => $config) : ?>
+<?php if($config["type"] == "checkbox") : ?>
+    <li>
+      <label for="<?php echo "out_".$key; ?>">&nbsp;</label>
+      <div><p>
+        <input type="checkbox" name="<?php echo "out_".$key; ?>" id="<?php echo "out_".$key; ?>"<?php echo (isset($this->out["config"]["out_".$key]) ? $this->out["config"]["out_".$key] : $config["default"]) ? " checked=\"checked\"" : ""; ?> />
+        <?php echo $config["text"]; ?>
+      </p></div>
+    </li>
+<?php endif; ?>
+<?php endforeach; ?>
+    <li class="buttons">
+      <input type="submit" value="Enregistrer" />
+    </li>
+  </ul>
+</form>
diff --git a/mw/out/default/views/admin/plugins/list.php b/mw/out/default/views/admin/plugins/list.php
new file mode 100644 (file)
index 0000000..e3d027b
--- /dev/null
@@ -0,0 +1,44 @@
+<h2>Les plugins</h2>
+
+<?php if($this->out["plugins"]) : ?>
+
+<form name="plugins_form" action="<?php echo $this->url("admin/plugins"); ?>" method="post">
+  <ul class="plugins">
+  <?php $data = $this->data(); foreach($this->out["plugins"] as $plugin_name => $plugin) : ?>
+    <li class="<?php echo $plugin["installed"] ? ($plugin["enabled"] ? "enabled" : "disabled") : "uninstalled"; ?>">
+      <div>
+        <p class="folder">dossier <strong><?php echo $plugin_name; ?></strong></p>
+        <h3><?php echo $plugin["title"]; ?></h3>
+        <div class="clear"><!-- --></div>
+        <?php echo $plugin["description"]; ?>
+        <ul class="plugin_links">
+        <?php if($plugin["installed"]) : ?>
+          <li><a href="<?php echo $this->url("admin/plugins/uninstall", array("id" => $plugin_name)); ?>"
+                 onclick="return confirm('si le plugin stocke des donnees, elles seront perdues')">d&eacute;sinstaller</a></li>
+          <?php if($plugin["enabled"]) : ?>
+          <?php if(($admin_link = $data->get_link("plugins/admin/".$plugin_name)) && $admin_link["url"]) : ?>
+          <li><a href="<?php echo $admin_link["url"]; ?>"><?php echo $admin_link["intitule"]; ?></a></li>
+          <?php endif; ?>
+          <li><a href="<?php echo $this->url("admin/plugins/disable", array("id" => $plugin_name)); ?>">d&eacute;sactiver</a></li>
+          <?php else : ?>
+          <li><a href="<?php echo $this->url("admin/plugins/enable", array("id" => $plugin_name)); ?>">activer</a></li>
+          <?php endif; ?>
+        <?php else : ?>
+          <li><a href="<?php echo $this->url("admin/plugins/install", array("id" => $plugin_name)); ?>">installer</a></li>
+        <?php endif; ?>
+          <li>priorit&eacute; : <input type="text" size="4" name="priorite_<?php echo $plugin_name; ?>" value="<?php echo $plugin["priorite"] ? $plugin["priorite"] : "0"; ?>" /></li>
+        </ul>
+      </div>
+    </li>
+  <?php endforeach; ?>
+    <li class="buttons">
+      <input type="submit" value="Enregistrer les priorit&eacute;s" />
+    </li>
+  </ul>
+</form>
+
+<?php else : ?>
+
+<p>Aucun plugin pour le moment.</p>
+
+<?php endif; ?>
similarity index 54%
rename from web/out/dist/views/admin/users/add.php
rename to mw/out/default/views/admin/users/add.php
index dc3d038..4ec5d2a 100644 (file)
@@ -1,28 +1,28 @@
 <h2>Nouvel utilisateur</h2>
 
 <ul class="admin">
-  <li><a href="<?= $this->url("admin/users") ?>">Retour &agrave; la liste des utilisateurs</a></li>
+  <li><a href="<?php echo $this->url("admin/users"); ?>">Retour &agrave; la liste des utilisateurs</a></li>
 </ul>
 
-<form name="user_form" action="<?= $this->url("admin/users/add") ?>" method="post">
+<form name="user_form" action="<?php echo $this->url("admin/users/add"); ?>" method="post">
   <ul class="form">
     <li>
       <label for="login">login</label>
-      <input type="text" name="login" id="login" value="<?= isset($this->out["user"]["login"]) ? $this->out["user"]["login"] : "" ?>" />
+      <input type="text" name="login" id="login" value="<?php echo isset($this->out["user"]["login"]) ? $this->out["user"]["login"] : ""; ?>" />
     </li>
     <li>
       <label for="status">statut</label>
       <select name="status" id="status">
       <?php foreach($this->out["status"] as $id_status => $status) : ?>
-        <option value="<?= $id_status ?>"<?= $this->out["user"]["status"] == $id_status ? " selected" : "" ?>>
-          <?= $status["nom"] ?>
+        <option value="<?php echo $id_status; ?>"<?php echo $this->out["user"]["status"] == $id_status ? " selected" : ""; ?>>
+          <?php echo $status["nom"]; ?>
         </option>
       <?php endforeach; ?>
       </select>
     </li>
     <li>
       <label for="email">email</label>
-      <input type="text" name="email" id="email" value="<?= isset($this->out["user"]["email"]) ? $this->out["user"]["email"] : "" ?>" />
+      <input type="text" name="email" id="email" value="<?php echo isset($this->out["user"]["email"]) ? $this->out["user"]["email"] : ""; ?>" />
     </li>
     <li>
       <label for="password">mot de passe</label>
similarity index 56%
rename from web/out/dist/views/admin/users/edit.php
rename to mw/out/default/views/admin/users/edit.php
index fe3561e..fd51cc6 100644 (file)
@@ -1,32 +1,32 @@
 <h2>Modifier un utilisateur</h2>
 
 <ul class="admin">
-  <li><a href="<?= $this->url("admin/users") ?>">Retour &agrave; la liste des utilisateurs</a></li>
+  <li><a href="<?php echo $this->url("admin/users"); ?>">Retour &agrave; la liste des utilisateurs</a></li>
 </ul>
 
-<form name="user_form" action="<?= $this->url("admin/users/edit", array("id" => $_GET[$this->param("id")])) ?>" method="post">
+<form name="user_form" action="<?php echo $this->url("admin/users/edit", array("id" => $_GET[$this->param("id")])); ?>" method="post">
   <ul class="form">
     <li>
       <label for="login">login</label>
-      <input type="text" name="login" id="login" value="<?= $this->out["user"]["login"] ?>" disabled="disabled" />
+      <input type="text" name="login" id="login" value="<?php echo $this->out["user"]["login"]; ?>" disabled="disabled" />
     </li>
     <li>
       <label for="status">statut</label>
       <select name="status" id="status">
       <?php foreach($this->out["status"] as $id_status => $status) : ?>
-        <option value="<?= $id_status ?>"<?= $this->out["user"]["status"] == $id_status ? " selected" : "" ?>>
-          <?= $status["nom"] ?>
+        <option value="<?php echo $id_status; ?>"<?php echo $this->out["user"]["status"] == $id_status ? " selected" : ""; ?>>
+          <?php echo $status["nom"]; ?>
         </option>
       <?php endforeach; ?>
       </select>
     </li>
     <li>
       <label for="email">email</label>
-      <input type="text" name="email" id="email" value="<?= $this->out["user"]["email"] ?>" />
+      <input type="text" name="email" id="email" value="<?php echo $this->out["user"]["email"]; ?>" />
     </li>
     <li>
       <label for="change_password">changer le mot de passe</label>
-      <input type="checkbox" name="change_password" id="change_password" <?= isset($_POST["change_password"]) && $_POST["change_password"] ? "checked=\"checked\"" : "" ?>/>
+      <input type="checkbox" name="change_password" id="change_password" <?php echo isset($_POST["change_password"]) && $_POST["change_password"] ? "checked=\"checked\"" : ""; ?>/>
     </li>
     <li>
       <label for="password">mot de passe</label>
diff --git a/mw/out/default/views/admin/users/list.php b/mw/out/default/views/admin/users/list.php
new file mode 100644 (file)
index 0000000..f961e9f
--- /dev/null
@@ -0,0 +1,77 @@
+<h2>Les utilisateurs</h2>
+
+<ul class="admin">
+  <li><a class="add" href="<?php echo $this->url("admin/users/add"); ?>">Nouvel utilisateur</a></li>
+</ul>
+
+<?php
+
+  $users_params = array();
+  if(isset($_GET[$this->param("status")])) $users_params["status"] = $_GET[$this->param("status")];
+
+?>
+<ul class="admin">
+  <li>Afficher les utilisateurs pour</li>  
+  <li>
+    <select onchange="document.location=this.options[this.selectedIndex].value;">
+      <option value="<?php echo $this->url("admin/users", $users_params); ?>"<?php echo $_GET[$this->param("alpha")] ? "" : " selected=\"selected\""; ?>>Tous les logins</option>
+      <?php for($i = 65; $i <= 90; $i++) : $users_params["alpha"] = chr($i); ?>
+      <option value="<?php echo $this->url("admin/users", $users_params); ?>"<?php echo $_GET[$this->param("alpha")] == chr($i) ? " selected=\"selected\"" : ""; ?>><?php echo chr($i); ?></option>
+      <?php endfor; ?>
+    </select>
+  </li>
+  <?php
+
+    if($this->out["status"]) :
+      if(isset($_GET[$this->param("alpha")])) $users_params["alpha"] = $_GET[$this->param("alpha")];
+      else unset($users_params["alpha"]);
+      unset($users_params["status"]);
+
+?>
+  <li>
+    <select onchange="document.location=this.options[this.selectedIndex].value;">
+      <option value="<?php echo $this->url("admin/users", $users_params); ?>"<?php echo $_GET[$this->param("status")] ? "" : " selected=\"selected\""; ?>>Tous les status</option>
+      <?php foreach($this->out["status"] as $user_status) : $users_params["status"] = $user_status["id"]; ?>
+      <option value="<?php echo $this->url("admin/users", $users_params); ?>"<?php echo $_GET[$this->param("status")] == $user_status["id"] ? " selected=\"selected\"" : ""; ?>><?php echo $user_status["nom"]; ?></option>
+      <?php endforeach; ?>
+    </select>
+  </li>
+  <?php endif; ?>
+</ul>
+
+<?php $items = "users"; $legend = "utilisateurs"; require $this->out_file("views/navig.php"); ?>
+
+<?php if($this->out["users"]["list"]) : ?>
+
+<table class="admin">
+  <tr>
+    <th>login</th>
+    <th>email</th>
+    <th>statut</th>
+    <th align="center" colspan="2">actions</th>
+  </tr>
+  <?php foreach($this->out["users"]["list"] as $id_user => $user) : ?>
+  <tr class="hl">
+    <td><?php echo $user["login"]; ?></td>
+    <td><a href="mailto:<?php echo $user["email"]; ?>"><?php echo $user["email"]; ?></a></td>
+    <td><?php echo $this->out["status"][$user["status"]]["nom"]; ?></td>
+    <td class="action">
+    <a href="<?php echo $this->url("admin/users/edit", array("id" => $user["login"])); ?>"
+       class="admin_link"
+       title="modifier cet utilisateur"><img src="<?php echo $this->out_url("icons/edit.gif"); ?>" /></a>
+    </td>
+    <td class="action">
+    <a href="<?php echo $this->url("admin/users/del", array("id" => $user["login"])); ?>"
+       class="admin_link"
+       title="supprimer cet utilisateur"><img src="<?php echo $this->out_url("icons/del.gif"); ?>"
+       onclick="return confirm('Supprimer cet utilisateur ?')"/></a>
+    </td>
+  </tr>
+  <?php endforeach; ?>
+</table>
+
+<?php else : ?>
+
+<p>Aucun utilisateur pour le moment...</p>
+
+<?php endif; ?>
similarity index 85%
rename from web/out/dist/views/erreur.php
rename to mw/out/default/views/erreur.php
index 7c17e17..ac0f76f 100644 (file)
@@ -3,7 +3,7 @@
 <?php if(isset($this->out["erreur"]["messages"]) && $this->out["erreur"]["messages"]) : ?>
   <ul>
 <?php foreach($this->out["erreur"]["messages"] as $message) : ?>
-    <li><?php echo $message ?></li>
+    <li><?php echo $message; ?></li>
 <?php endforeach; ?>
   </ul>
 <?php endif; ?>
diff --git a/mw/out/default/views/footer.php b/mw/out/default/views/footer.php
new file mode 100644 (file)
index 0000000..de091ed
--- /dev/null
@@ -0,0 +1,19 @@
+<p id="contact_links">
+<?php if($this->config("contact_form")) : ?>
+  <a href="<?php echo $this->url("forms/contact"); ?>">contact</a>
+<?php endif; ?>
+</p>
+
+<p>
+<?php if(!($user = $this->user())) : ?>
+   <a href="<?php echo $this->url("users/identification"); ?>">s'identifier</a>
+<?php else : ?>
+   Bienvenue <strong><?php echo $user["login"]; ?></strong>
+  | <a href="<?php echo $this->url("users"); ?>">compte</a>
+<?php if($this->status_ok("admin")) : ?>
+  | <a href="<?php echo $this->url("admin"); ?>">admin</a>
+<?php endif; ?>
+  | <a href="<?php echo $this->url("users/identification/logout"); ?>">deconnexion</a>
+<?php endif; ?>
+  | <a href="http://mtweb.dj3c1t.com/">mtweb</a>
+</p>
similarity index 54%
rename from web/out/dist/views/forms/contact/index.php
rename to mw/out/default/views/forms/contact/index.php
index a65d378..19e8236 100644 (file)
@@ -2,27 +2,27 @@
 
   <h2>Contact</h2>
 
-  <form action="<?= $this->url("forms/contact") ?>" method="post">
+  <form action="<?php echo $this->url("forms/contact"); ?>" method="post">
     <ul class="form">
       <li>
         <label for="email">email</label>
         <p>
-          <input type="text" name="email" id="email" value="<?= $_POST["email"] ?>" />
+          <input type="text" name="email" id="email" value="<?php echo htmlspecialchars($this->out["message"]["email"]); ?>" />
         </p>
       </li>
       <li>
         <label for="message">message</label>
         <p>
-          <textarea name="message" id="message" rows="16" cols="50"><?= $_POST["message"] ?></textarea>
+          <textarea name="message" id="message" rows="16" cols="50"><?php echo htmlspecialchars($this->out["message"]["message"]); ?></textarea>
         </p>
       </li>
 <?php if($this->config("captcha")) : ?>
       <li>
         <label for="ptitcaptcha_entry">anti-spam</label>
         <p>
-          <?= PtitCaptchaHelper::generateImgTags($this->path("libs")) ?>
-          <?= PtitCaptchaHelper::generateHiddenTags() ?>
-          <?= PtitCaptchaHelper::generateInputTags() ?>
+          <?php echo PtitCaptchaHelper::generateImgTags($this->path("mw_path")."libs/"); ?>
+          <?php echo PtitCaptchaHelper::generateHiddenTags(); ?>
+          <?php echo PtitCaptchaHelper::generateInputTags(); ?>
         </p>
       </li>
 <?php endif; ?>
diff --git a/mw/out/default/views/head.php b/mw/out/default/views/head.php
new file mode 100644 (file)
index 0000000..bbaadfc
--- /dev/null
@@ -0,0 +1,32 @@
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    <title><?php echo $this->config("site_name"); ?></title>
+    <meta name="description" content="<?php echo $this->config("site_description"); ?>" />
+    <script type="text/javascript"> site_url = "<?php echo $this->path("web"); ?>"; </script>
+    <script type="text/javascript" src="<?php echo $this->out_url("js/md5.js"); ?>"></script>
+    <script type="text/javascript" src="<?php echo $this->out_url("js/login.js"); ?>"></script>
+    <script type="text/javascript" src="<?php echo $this->out_url("js/jquery-1.8.3.min.js"); ?>"></script>
+    <script type="text/javascript" src="<?php echo $this->out_url("js/jquery.colorbox-min.js"); ?>"></script>
+    <script type="text/javascript" src="<?php echo $this->out_url("js/jquery-ui-1.8.12.custom.min.js"); ?>"></script>
+    <script type="text/javascript" src="<?php echo $this->out_url("js/menu.js"); ?>"></script>
+<?php if($this->out_file_exists("js/actions/".$this->etat("mod")."_".$this->etat("controller")."_".$this->etat("action").".js")) : ?>
+    <script type="text/javascript" src="<?php echo $this->out_url("js/actions/".$this->etat("mod")."_".$this->etat("controller")."_".$this->etat("action").".js"); ?>"></script>
+<?php endif; ?>
+<?php if($this->out_file_exists("js/actions/".$this->etat("mod")."_".$this->etat("controller").".js")) : ?>
+    <script type="text/javascript" src="<?php echo $this->out_url("js/actions/".$this->etat("mod")."_".$this->etat("controller").".js"); ?>"></script>
+<?php endif; ?>
+<?php if($this->out_file_exists("js/actions/".$this->etat("mod").".js")) : ?>
+    <script type="text/javascript" src="<?php echo $this->out_url("js/actions/".$this->etat("mod").".js"); ?>"></script>
+<?php endif; ?>
+    <link rel="stylesheet" type="text/css" href="<?php echo $this->out_url("css/style.css"); ?>" />
+    <link rel="stylesheet" type="text/css" href="<?php echo $this->out_url("css/colors.css"); ?>" />
+    <link rel="stylesheet" type="text/css" href="<?php echo $this->out_url("css/colorbox.css"); ?>" />
+    <link rel="stylesheet" type="text/css" href="<?php echo $this->out_url("css/ui-lightness/jquery-ui-1.8.12.custom.css"); ?>" />
+<?php if($this->out_file_exists("css/actions/".$this->etat("mod")."_".$this->etat("controller")."_".$this->etat("action").".css")) : ?>
+    <link rel="stylesheet" type="text/css" href="<?php echo $this->out_url("css/actions/".$this->etat("mod")."_".$this->etat("controller")."_".$this->etat("action").".css"); ?>" />
+<?php endif; ?>
+<?php if($this->out_file_exists("css/actions/".$this->etat("mod")."_".$this->etat("controller").".css")) : ?>
+    <link rel="stylesheet" type="text/css" href="<?php echo $this->out_url("css/actions/".$this->etat("mod")."_".$this->etat("controller").".css"); ?>" />
+<?php endif; ?>
+<?php if($this->out_file_exists("css/actions/".$this->etat("mod").".css")) : ?>
+    <link rel="stylesheet" type="text/css" href="<?php echo $this->out_url("css/actions/".$this->etat("mod").".css"); ?>" />
+<?php endif; ?>
diff --git a/mw/out/default/views/header.php b/mw/out/default/views/header.php
new file mode 100644 (file)
index 0000000..1126493
--- /dev/null
@@ -0,0 +1 @@
+<h1><a href="<?php echo $this->url(); ?>"><span><?php echo $this->config("site_name"); ?></span></a></h1>
similarity index 54%
rename from web/out/dist/views/login.php
rename to mw/out/default/views/login.php
index 7ae47d4..b245a06 100644 (file)
@@ -1,11 +1,11 @@
 <div id="login_box">
 <?php if(!($user = $this->user())) : ?>
 <form id="login_form"
-      action="<?= $this->url("users/identification/login") ?>"
+      action="<?php echo $this->url("users/identification/login"); ?>"
       method="post">
   <div>
     <input type="hidden" name="pass" value="" />
-    <input type="hidden" name="from" value="<?= isset($_POST["from"]) ? $_POST["from"] : urlencode($_SERVER["REQUEST_URI"]) ?>" />
+    <input type="hidden" name="from" value="<?php echo isset($_POST["from"]) ? $_POST["from"] : urlencode($_SERVER["REQUEST_URI"]); ?>" />
   </div>
   <table>
     <tr>
       <td><input type="password" name="password" size="14" maxlength="16" /></td>
     </tr>
     <tr>
-      <td colspan="2" align="right"><input type="submit" value="Login" onclick="prepare_password('<?= $_SESSION["id"]?>')" /></td>
+      <td colspan="2" align="right"><input type="submit" value="Login" onclick="prepare_password('<?php echo $_SESSION["id"]; ?>')" /></td>
     </tr>
   </table>
   <div class="clear"><!-- --></div>
 </form>
 
 <?php else : ?>
-  Bienvenue <b><?= $user["login"] ?></b>
+  Bienvenue <b><?php echo $user["login"]; ?></b>
   <ul>
-    <li><a href="<?= $this->url("users/compte") ?>">compte</a></li>
-    <li><a href="<?= $this->url("users/identification/logout") ?>">deconnexion</a></li>
+    <li><a href="<?php echo $this->url("users/compte"); ?>">compte</a></li>
+    <li><a href="<?php echo $this->url("users/identification/logout"); ?>">deconnexion</a></li>
 <?php if($this->status_ok("admin")) : ?>
-    <li><a href="<?= $this->url("admin") ?>">admin</a></li>
+    <li><a href="<?php echo $this->url("admin"); ?>">admin</a></li>
 <?php endif; ?>
   </ul>
 <?php endif; ?>
 <div class="clear"><!-- --></div>
-</div>
\ No newline at end of file
+</div>
similarity index 78%
rename from web/out/dist/views/messages.php
rename to mw/out/default/views/messages.php
index a95ff7e..b8a572c 100644 (file)
@@ -2,7 +2,7 @@
 <div class="messages">
   <ul>
 <?php foreach($this->out["messages"] as $message) : ?>
-    <li><?= $message ?></li>
+    <li><?php echo $message; ?></li>
 <?php endforeach; ?>
   </ul>
 </div>
diff --git a/mw/out/default/views/redirect_javascript.php b/mw/out/default/views/redirect_javascript.php
new file mode 100644 (file)
index 0000000..4cd4c4e
--- /dev/null
@@ -0,0 +1,16 @@
+<div class="redirect_message">
+  <div>
+    <?php echo $this->out["redirect"]["message"]; ?>
+    <br /><br /><br />
+    ---------------------------------------------------<br />
+    Vous allez &ecirc;tre redirig&eacute; vers <a href="<?php echo $this->out["redirect"]["url"]; ?>"><?php echo $this->out["redirect"]["url"]; ?></a>
+    dans <?php echo $this->out["redirect"]["wait"]; ?> secondes.<br />
+    (cliquez sur le lien si la redirection ne se fait pas)
+  </div>
+</div>
+<script type="text/javascript">
+//<![CDATA[
+  setTimeout("js_redirect('<?php echo $this->out["redirect"]["url"]; ?>')", 1000 * <?php echo $this->out["redirect"]["wait"]; ?>);
+  function js_redirect(redirect_url) { document.location = redirect_url; }
+//]]>
+</script>
similarity index 90%
rename from web/out/dist/views/tinymce.init.js.php
rename to mw/out/default/views/tinymce.init.js.php
index 77f4dec..8d8aa89 100644 (file)
@@ -16,9 +16,9 @@
                theme_advanced_resizing : true,\r
 \r
                // Example content CSS (should be your site CSS)\r
-<?php if($this->out_file_exists("css/tinymce.css")) : ?>
-      content_css : "<?= $this->out_file("css/tinymce.css") ?>",
-<?php endif; ?>\r
+    <?php if($this->out_file_exists("css/tinymce.css")) : ?>
+    content_css : "<?php echo $this->out_url("css/tinymce.css"); ?>",
+    <?php endif; ?>\r
 \r
                // Drop lists for link/image/media/template dialogs\r
                template_external_list_url : "lists/template_list.js",\r
similarity index 67%
rename from web/out/dist/views/top_menu.php
rename to mw/out/default/views/top_menu.php
index 135f272..cad5e72 100644 (file)
@@ -1,7 +1,7 @@
 <?php $data = $this->data(); if(($menu_top = $data->get_link("menu_top")) && $menu_top["subs"]) : ?>
 <ul class="menu navig_menu">
   <?php foreach($menu_top["subs"] as $link) : ?>
-  <li><a href="<?= $link["url"] ?>"><?= $link["intitule"] ?></a></li>
+  <li><a href="<?php echo $link["url"]; ?>"><?php echo $link["intitule"]; ?></a></li>
   <?php endforeach; ?>
 </ul>
 <?php endif; ?>
\ No newline at end of file
similarity index 63%
rename from web/out/dist/views/users/identification.php
rename to mw/out/default/views/users/identification.php
index 287ba6c..05ce24d 100644 (file)
@@ -2,6 +2,6 @@
 <h2>Identification</h2>
 <?php require $this->out_file("views/login.php"); ?>
 <ul>
-  <li><a href="<?= $this->url() ?>">accueil</a></li>
+  <li><a href="<?php echo $this->url(); ?>">accueil</a></li>
 </ul>
 </div>
\ No newline at end of file
similarity index 58%
rename from web/out/dist/views/users/infos/edit.php
rename to mw/out/default/views/users/infos/edit.php
index 98968bf..2559e69 100644 (file)
@@ -1,22 +1,22 @@
-<h1>Informations du compte</h1>
+<h2>Informations du compte</h2>
 
-<form name="user_form" action="<?= $this->url("users/infos/edit") ?>" method="post">
+<form name="user_form" action="<?php echo $this->url("users/infos/edit"); ?>" method="post">
   <ul class="form">
     <li>
       <label for="login">login</label>
-      <input type="text" name="login" id="login" value="<?= $this->out["user"]["login"] ?>" disabled="disabled" />
+      <input type="text" name="login" id="login" value="<?php echo $this->out["user"]["login"]; ?>" disabled="disabled" />
     </li>
     <li>
       <label for="status_name">statut</label>
-      <input type="text" name="status_name" id="status_name" value="<?= $this->out["status"][$this->out["user"]["status"]]["nom"] ?>" disabled="disabled" />
+      <input type="text" name="status_name" id="status_name" value="<?php echo $this->out["status"][$this->out["user"]["status"]]["nom"]; ?>" disabled="disabled" />
     </li>
     <li>
       <label for="email">email</label>
-      <input type="text" name="email" id="email" value="<?= $this->out["user"]["email"] ?>" />
+      <input type="text" name="email" id="email" value="<?php echo $this->out["user"]["email"]; ?>" />
     </li>
     <li>
       <label for="change_password">changer le mot de passe</label>
-      <input type="checkbox" name="change_password" id="change_password" <?= isset($_POST["change_password"]) && $_POST["change_password"] ? "checked=\"checked\"" : "" ?>/>
+      <input type="checkbox" name="change_password" id="change_password" <?php echo isset($_POST["change_password"]) && $_POST["change_password"] ? "checked=\"checked\"" : ""; ?>/>
     </li>
     <li>
       <label for="password">mot de passe</label>
index 3def8e0..f644aec 100644 (file)
 
-                         mtweb 0.5.1
+        mtweb - base de programmation pour application web
 
-copyright dj3c1t 2012
-programme en GNU/GPLv3
 
+  copyright 2010-2012 by dj3c1t
 
-mtweb est une base de programmation pour application web.
 
+  This program is free software: you can redistribute it and/or modify
+  it under the terms of the GNU General Public License as published by
+  the Free Software Foundation, either version 3 of the License, or
+  (at your option) any later version.
 
-ce programme utilise, dans le dossier libs :
+  This program is distributed in the hope that it will be useful,
+  but WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+  GNU General Public License for more details.
 
- - TinyMCE
-   http://tinymce.moxiecode.com/
+  You should have received a copy of the GNU General Public License
+  along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
- - une classe Php sxml, tres utile, et trouvee ici :
-   http://www.shop24-7.info/32-0-simplexml-alternative-php4.html
 
- - Ptitcaptcha, une classe Php pour un captcha (anti-spam)
-   http://www.jpfox.fr/?post/2007/10/24/190-un-petit-captcha-en-php
 
- - InputFilter, une class Php pour filtrer les balises et les attributs
-   HTML dangereux
-   http://www.phpclasses.org/inputfilter
+  ce programme utilise, dans le dossier web/mw/libs :
 
-installation :
---------------
-
-installation rapide :
-
- - l'archive mtweb.<version>.tar.gz contient un dossier "web"
- - uploadez le contenu de ce dossier a la racine de votre site
- - assurez-vous que Php a le droit d'ecrire dans le dossier "content"
-   (et dans ses fichiers et sous-dossiers)
-
-Par defaut, mtweb stocke ses donnees dans des fichiers XML.
-
-pour utilisez le stockage des donnees avec MySql :
-
- - importez les tables fournies dans le fichier "content/data/sql/mysql/mtweb.sql"
- - puis dans le fichier "config.php" :
-    - commentez la partie relative aux donnees XML
-    - decommentez la partie relative aux donnees MySql
-    - adaptez les informations pour MySql avec vos parametres de connexion
-
-pour une premiere utilisation, vous pouvez vous identifier avec :
-
-login: admin
-pass:  adminpass
-
-pensez a changer le mot de passe
-
-
-documentation :
----------------
-
-Plus d'infos en ligne :
-http://mtweb.dj3c1t.com
-
-
-historique des modifications :
-------------------------------
-
-0.5.1 :
--------
-
-9 Dec 2012
-
-correction bug table_exists
+  - TinyMCE
+    http://tinymce.moxiecode.com/
 
+  - une classe Php sxml, tres utile, et trouvee ici :
+    http://www.shop24-7.info/32-0-simplexml-alternative-php4.html
 
-0.5.0 :
--------
+  - Ptitcaptcha, une classe Php pour un captcha (anti-spam)
+    http://www.jpfox.fr/?post/2007/10/24/190-un-petit-captcha-en-php
 
-8 Dec 2012
+  - InputFilter, une class Php pour filtrer les balises et les attributs
+    HTML dangereux
+    http://www.phpclasses.org/inputfilter
 
-l'implemention Mysql du SGBD utilise maintenant les exceptions
-mtweb n'est plus compatible avec Php4 a partir de cette version
 
 
-0.4.3 :
--------
-
-8 Dec 2012
-
-maj de syntaxe des accolades
-correction de bug dans le layout pour le formulaire de contact
-maj jQuery avec la version 1.8.3
-
-
-0.4.2 :
--------
-
-1 Dec 2012
-
-Correction de bug dans la lecture du layout
-
-
-0.4.1 :
--------
-
-3 Janv 2012
-
-la version 0.4, qui introduit les plugins, en contient trois
-dans son repertoire "plugins".
-
-dans cette version, seule l'application principale est fournie.
-
-les plugins restent disponibles, mais via leur propre archive.
-
-
-0.4 :
------
-
-30 Dec 2011
-
-version extraite de sourceML.0.13
+installation :
+--------------
 
-ajout d'un systeme de plugins
-l'application gere aussi maintenant une arborescence de liens
+  installation rapide :
 
-changement de methode pour les surcharges. le dossier "app/local"
-disparait et le contenu du dossier "app/core" descent dans "app/"
-les surcharges se font maintenant avec les plugins.
+  - l'archive mtweb.<version>.tar.gz contient un dossier "mtweb"
+  - uploadez le contenu de ce dossier a la racine de votre site
+  - assurez-vous que Php a le droit d'ecrire dans le dossier "content"
+   (et dans ses fichiers et sous-dossiers)
 
+  Par defaut, mtweb stocke ses donnees dans des fichiers XML.
+  pour utilisez le stockage des donnees avec MySql :
 
-0.3.2 :
--------
+  - importez les tables fournies dans le fichier "content/data/sql/mysql/mtweb.sql"
+  - puis dans le fichier "config.php" :
+     - commentez la partie relative aux donnees XML
+     - decommentez la partie relative aux donnees MySql
+     - adaptez les informations pour MySql avec vos parametres de connexion
 
-utilisation d'un cache en RAM pour les donnees gerees en XML.
+  pour une premiere utilisation, vous pouvez vous identifier avec :
 
-0.3.1 :
--------
+  - login: admin
+  - pass:  adminpass
 
-ajout d'un exemple d'application, pour un agenda en ligne.
+  pensez a changer le mot de passe
 
-0.3 :
------
 
-version extraite de sourceML.0.10
+documentation :
+---------------
 
-marche avec Mysql ou XML
+  Plus d'infos en ligne :
+  http://mtweb.dj3c1t.com
+
+
+Licence GNU GPL v3 :
+--------------------
+
+                    GNU GENERAL PUBLIC LICENSE
+                       Version 3, 29 June 2007
+
+ Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+                            Preamble
+
+  The GNU General Public License is a free, copyleft license for
+software and other kinds of works.
+
+  The licenses for most software and other practical works are designed
+to take away your freedom to share and change the works.  By contrast,
+the GNU General Public License is intended to guarantee your freedom to
+share and change all versions of a program--to make sure it remains free
+software for all its users.  We, the Free Software Foundation, use the
+GNU General Public License for most of our software; it applies also to
+any other work released this way by its authors.  You can apply it to
+your programs, too.
+
+  When we speak of free software, we are referring to freedom, not
+price.  Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+them if you wish), that you receive source code or can get it if you
+want it, that you can change the software or use pieces of it in new
+free programs, and that you know you can do these things.
+
+  To protect your rights, we need to prevent others from denying you
+these rights or asking you to surrender the rights.  Therefore, you have
+certain responsibilities if you distribute copies of the software, or if
+you modify it: responsibilities to respect the freedom of others.
+
+  For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must pass on to the recipients the same
+freedoms that you received.  You must make sure that they, too, receive
+or can get the source code.  And you must show them these terms so they
+know their rights.
+
+  Developers that use the GNU GPL protect your rights with two steps:
+(1) assert copyright on the software, and (2) offer you this License
+giving you legal permission to copy, distribute and/or modify it.
+
+  For the developers' and authors' protection, the GPL clearly explains
+that there is no warranty for this free software.  For both users' and
+authors' sake, the GPL requires that modified versions be marked as
+changed, so that their problems will not be attributed erroneously to
+authors of previous versions.
+
+  Some devices are designed to deny users access to install or run
+modified versions of the software inside them, although the manufacturer
+can do so.  This is fundamentally incompatible with the aim of
+protecting users' freedom to change the software.  The systematic
+pattern of such abuse occurs in the area of products for individuals to
+use, which is precisely where it is most unacceptable.  Therefore, we
+have designed this version of the GPL to prohibit the practice for those
+products.  If such problems arise substantially in other domains, we
+stand ready to extend this provision to those domains in future versions
+of the GPL, as needed to protect the freedom of users.
+
+  Finally, every program is threatened constantly by software patents.
+States should not allow patents to restrict development and use of
+software on general-purpose computers, but in those that do, we wish to
+avoid the special danger that patents applied to a free program could
+make it effectively proprietary.  To prevent this, the GPL assures that
+patents cannot be used to render the program non-free.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.
+
+                       TERMS AND CONDITIONS
+
+  0. Definitions.
+
+  "This License" refers to version 3 of the GNU General Public License.
+
+  "Copyright" also means copyright-like laws that apply to other kinds of
+works, such as semiconductor masks.
+
+  "The Program" refers to any copyrightable work licensed under this
+License.  Each licensee is addressed as "you".  "Licensees" and
+"recipients" may be individuals or organizations.
+
+  To "modify" a work means to copy from or adapt all or part of the work
+in a fashion requiring copyright permission, other than the making of an
+exact copy.  The resulting work is called a "modified version" of the
+earlier work or a work "based on" the earlier work.
+
+  A "covered work" means either the unmodified Program or a work based
+on the Program.
+
+  To "propagate" a work means to do anything with it that, without
+permission, would make you directly or secondarily liable for
+infringement under applicable copyright law, except executing it on a
+computer or modifying a private copy.  Propagation includes copying,
+distribution (with or without modification), making available to the
+public, and in some countries other activities as well.
+
+  To "convey" a work means any kind of propagation that enables other
+parties to make or receive copies.  Mere interaction with a user through
+a computer network, with no transfer of a copy, is not conveying.
+
+  An interactive user interface displays "Appropriate Legal Notices"
+to the extent that it includes a convenient and prominently visible
+feature that (1) displays an appropriate copyright notice, and (2)
+tells the user that there is no warranty for the work (except to the
+extent that warranties are provided), that licensees may convey the
+work under this License, and how to view a copy of this License.  If
+the interface presents a list of user commands or options, such as a
+menu, a prominent item in the list meets this criterion.
+
+  1. Source Code.
+
+  The "source code" for a work means the preferred form of the work
+for making modifications to it.  "Object code" means any non-source
+form of a work.
+
+  A "Standard Interface" means an interface that either is an official
+standard defined by a recognized standards body, or, in the case of
+interfaces specified for a particular programming language, one that
+is widely used among developers working in that language.
+
+  The "System Libraries" of an executable work include anything, other
+than the work as a whole, that (a) is included in the normal form of
+packaging a Major Component, but which is not part of that Major
+Component, and (b) serves only to enable use of the work with that
+Major Component, or to implement a Standard Interface for which an
+implementation is available to the public in source code form.  A
+"Major Component", in this context, means a major essential component
+(kernel, window system, and so on) of the specific operating system
+(if any) on which the executable work runs, or a compiler used to
+produce the work, or an object code interpreter used to run it.
+
+  The "Corresponding Source" for a work in object code form means all
+the source code needed to generate, install, and (for an executable
+work) run the object code and to modify the work, including scripts to
+control those activities.  However, it does not include the work's
+System Libraries, or general-purpose tools or generally available free
+programs which are used unmodified in performing those activities but
+which are not part of the work.  For example, Corresponding Source
+includes interface definition files associated with source files for
+the work, and the source code for shared libraries and dynamically
+linked subprograms that the work is specifically designed to require,
+such as by intimate data communication or control flow between those
+subprograms and other parts of the work.
+
+  The Corresponding Source need not include anything that users
+can regenerate automatically from other parts of the Corresponding
+Source.
+
+  The Corresponding Source for a work in source code form is that
+same work.
+
+  2. Basic Permissions.
+
+  All rights granted under this License are granted for the term of
+copyright on the Program, and are irrevocable provided the stated
+conditions are met.  This License explicitly affirms your unlimited
+permission to run the unmodified Program.  The output from running a
+covered work is covered by this License only if the output, given its
+content, constitutes a covered work.  This License acknowledges your
+rights of fair use or other equivalent, as provided by copyright law.
+
+  You may make, run and propagate covered works that you do not
+convey, without conditions so long as your license otherwise remains
+in force.  You may convey covered works to others for the sole purpose
+of having them make modifications exclusively for you, or provide you
+with facilities for running those works, provided that you comply with
+the terms of this License in conveying all material for which you do
+not control copyright.  Those thus making or running the covered works
+for you must do so exclusively on your behalf, under your direction
+and control, on terms that prohibit them from making any copies of
+your copyrighted material outside their relationship with you.
+
+  Conveying under any other circumstances is permitted solely under
+the conditions stated below.  Sublicensing is not allowed; section 10
+makes it unnecessary.
+
+  3. Protecting Users' Legal Rights From Anti-Circumvention Law.
+
+  No covered work shall be deemed part of an effective technological
+measure under any applicable law fulfilling obligations under article
+11 of the WIPO copyright treaty adopted on 20 December 1996, or
+similar laws prohibiting or restricting circumvention of such
+measures.
+
+  When you convey a covered work, you waive any legal power to forbid
+circumvention of technological measures to the extent such circumvention
+is effected by exercising rights under this License with respect to
+the covered work, and you disclaim any intention to limit operation or
+modification of the work as a means of enforcing, against the work's
+users, your or third parties' legal rights to forbid circumvention of
+technological measures.
+
+  4. Conveying Verbatim Copies.
+
+  You may convey verbatim copies of the Program's source code as you
+receive it, in any medium, provided that you conspicuously and
+appropriately publish on each copy an appropriate copyright notice;
+keep intact all notices stating that this License and any
+non-permissive terms added in accord with section 7 apply to the code;
+keep intact all notices of the absence of any warranty; and give all
+recipients a copy of this License along with the Program.
+
+  You may charge any price or no price for each copy that you convey,
+and you may offer support or warranty protection for a fee.
+
+  5. Conveying Modified Source Versions.
+
+  You may convey a work based on the Program, or the modifications to
+produce it from the Program, in the form of source code under the
+terms of section 4, provided that you also meet all of these conditions:
+
+    a) The work must carry prominent notices stating that you modified
+    it, and giving a relevant date.
+
+    b) The work must carry prominent notices stating that it is
+    released under this License and any conditions added under section
+    7.  This requirement modifies the requirement in section 4 to
+    "keep intact all notices".
+
+    c) You must license the entire work, as a whole, under this
+    License to anyone who comes into possession of a copy.  This
+    License will therefore apply, along with any applicable section 7
+    additional terms, to the whole of the work, and all its parts,
+    regardless of how they are packaged.  This License gives no
+    permission to license the work in any other way, but it does not
+    invalidate such permission if you have separately received it.
+
+    d) If the work has interactive user interfaces, each must display
+    Appropriate Legal Notices; however, if the Program has interactive
+    interfaces that do not display Appropriate Legal Notices, your
+    work need not make them do so.
+
+  A compilation of a covered work with other separate and independent
+works, which are not by their nature extensions of the covered work,
+and which are not combined with it such as to form a larger program,
+in or on a volume of a storage or distribution medium, is called an
+"aggregate" if the compilation and its resulting copyright are not
+used to limit the access or legal rights of the compilation's users
+beyond what the individual works permit.  Inclusion of a covered work
+in an aggregate does not cause this License to apply to the other
+parts of the aggregate.
+
+  6. Conveying Non-Source Forms.
+
+  You may convey a covered work in object code form under the terms
+of sections 4 and 5, provided that you also convey the
+machine-readable Corresponding Source under the terms of this License,
+in one of these ways:
+
+    a) Convey the object code in, or embodied in, a physical product
+    (including a physical distribution medium), accompanied by the
+    Corresponding Source fixed on a durable physical medium
+    customarily used for software interchange.
+
+    b) Convey the object code in, or embodied in, a physical product
+    (including a physical distribution medium), accompanied by a
+    written offer, valid for at least three years and valid for as
+    long as you offer spare parts or customer support for that product
+    model, to give anyone who possesses the object code either (1) a
+    copy of the Corresponding Source for all the software in the
+    product that is covered by this License, on a durable physical
+    medium customarily used for software interchange, for a price no
+    more than your reasonable cost of physically performing this
+    conveying of source, or (2) access to copy the
+    Corresponding Source from a network server at no charge.
+
+    c) Convey individual copies of the object code with a copy of the
+    written offer to provide the Corresponding Source.  This
+    alternative is allowed only occasionally and noncommercially, and
+    only if you received the object code with such an offer, in accord
+    with subsection 6b.
+
+    d) Convey the object code by offering access from a designated
+    place (gratis or for a charge), and offer equivalent access to the
+    Corresponding Source in the same way through the same place at no
+    further charge.  You need not require recipients to copy the
+    Corresponding Source along with the object code.  If the place to
+    copy the object code is a network server, the Corresponding Source
+    may be on a different server (operated by you or a third party)
+    that supports equivalent copying facilities, provided you maintain
+    clear directions next to the object code saying where to find the
+    Corresponding Source.  Regardless of what server hosts the
+    Corresponding Source, you remain obligated to ensure that it is
+    available for as long as needed to satisfy these requirements.
+
+    e) Convey the object code using peer-to-peer transmission, provided
+    you inform other peers where the object code and Corresponding
+    Source of the work are being offered to the general public at no
+    charge under subsection 6d.
+
+  A separable portion of the object code, whose source code is excluded
+from the Corresponding Source as a System Library, need not be
+included in conveying the object code work.
+
+  A "User Product" is either (1) a "consumer product", which means any
+tangible personal property which is normally used for personal, family,
+or household purposes, or (2) anything designed or sold for incorporation
+into a dwelling.  In determining whether a product is a consumer product,
+doubtful cases shall be resolved in favor of coverage.  For a particular
+product received by a particular user, "normally used" refers to a
+typical or common use of that class of product, regardless of the status
+of the particular user or of the way in which the particular user
+actually uses, or expects or is expected to use, the product.  A product
+is a consumer product regardless of whether the product has substantial
+commercial, industrial or non-consumer uses, unless such uses represent
+the only significant mode of use of the product.
+
+  "Installation Information" for a User Product means any methods,
+procedures, authorization keys, or other information required to install
+and execute modified versions of a covered work in that User Product from
+a modified version of its Corresponding Source.  The information must
+suffice to ensure that the continued functioning of the modified object
+code is in no case prevented or interfered with solely because
+modification has been made.
+
+  If you convey an object code work under this section in, or with, or
+specifically for use in, a User Product, and the conveying occurs as
+part of a transaction in which the right of possession and use of the
+User Product is transferred to the recipient in perpetuity or for a
+fixed term (regardless of how the transaction is characterized), the
+Corresponding Source conveyed under this section must be accompanied
+by the Installation Information.  But this requirement does not apply
+if neither you nor any third party retains the ability to install
+modified object code on the User Product (for example, the work has
+been installed in ROM).
+
+  The requirement to provide Installation Information does not include a
+requirement to continue to provide support service, warranty, or updates
+for a work that has been modified or installed by the recipient, or for
+the User Product in which it has been modified or installed.  Access to a
+network may be denied when the modification itself materially and
+adversely affects the operation of the network or violates the rules and
+protocols for communication across the network.
+
+  Corresponding Source conveyed, and Installation Information provided,
+in accord with this section must be in a format that is publicly
+documented (and with an implementation available to the public in
+source code form), and must require no special password or key for
+unpacking, reading or copying.
+
+  7. Additional Terms.
+
+  "Additional permissions" are terms that supplement the terms of this
+License by making exceptions from one or more of its conditions.
+Additional permissions that are applicable to the entire Program shall
+be treated as though they were included in this License, to the extent
+that they are valid under applicable law.  If additional permissions
+apply only to part of the Program, that part may be used separately
+under those permissions, but the entire Program remains governed by
+this License without regard to the additional permissions.
+
+  When you convey a copy of a covered work, you may at your option
+remove any additional permissions from that copy, or from any part of
+it.  (Additional permissions may be written to require their own
+removal in certain cases when you modify the work.)  You may place
+additional permissions on material, added by you to a covered work,
+for which you have or can give appropriate copyright permission.
+
+  Notwithstanding any other provision of this License, for material you
+add to a covered work, you may (if authorized by the copyright holders of
+that material) supplement the terms of this License with terms:
+
+    a) Disclaiming warranty or limiting liability differently from the
+    terms of sections 15 and 16 of this License; or
+
+    b) Requiring preservation of specified reasonable legal notices or
+    author attributions in that material or in the Appropriate Legal
+    Notices displayed by works containing it; or
+
+    c) Prohibiting misrepresentation of the origin of that material, or
+    requiring that modified versions of such material be marked in
+    reasonable ways as different from the original version; or
+
+    d) Limiting the use for publicity purposes of names of licensors or
+    authors of the material; or
+
+    e) Declining to grant rights under trademark law for use of some
+    trade names, trademarks, or service marks; or
+
+    f) Requiring indemnification of licensors and authors of that
+    material by anyone who conveys the material (or modified versions of
+    it) with contractual assumptions of liability to the recipient, for
+    any liability that these contractual assumptions directly impose on
+    those licensors and authors.
+
+  All other non-permissive additional terms are considered "further
+restrictions" within the meaning of section 10.  If the Program as you
+received it, or any part of it, contains a notice stating that it is
+governed by this License along with a term that is a further
+restriction, you may remove that term.  If a license document contains
+a further restriction but permits relicensing or conveying under this
+License, you may add to a covered work material governed by the terms
+of that license document, provided that the further restriction does
+not survive such relicensing or conveying.
+
+  If you add terms to a covered work in accord with this section, you
+must place, in the relevant source files, a statement of the
+additional terms that apply to those files, or a notice indicating
+where to find the applicable terms.
+
+  Additional terms, permissive or non-permissive, may be stated in the
+form of a separately written license, or stated as exceptions;
+the above requirements apply either way.
+
+  8. Termination.
+
+  You may not propagate or modify a covered work except as expressly
+provided under this License.  Any attempt otherwise to propagate or
+modify it is void, and will automatically terminate your rights under
+this License (including any patent licenses granted under the third
+paragraph of section 11).
+
+  However, if you cease all violation of this License, then your
+license from a particular copyright holder is reinstated (a)
+provisionally, unless and until the copyright holder explicitly and
+finally terminates your license, and (b) permanently, if the copyright
+holder fails to notify you of the violation by some reasonable means
+prior to 60 days after the cessation.
+
+  Moreover, your license from a particular copyright holder is
+reinstated permanently if the copyright holder notifies you of the
+violation by some reasonable means, this is the first time you have
+received notice of violation of this License (for any work) from that
+copyright holder, and you cure the violation prior to 30 days after
+your receipt of the notice.
+
+  Termination of your rights under this section does not terminate the
+licenses of parties who have received copies or rights from you under
+this License.  If your rights have been terminated and not permanently
+reinstated, you do not qualify to receive new licenses for the same
+material under section 10.
+
+  9. Acceptance Not Required for Having Copies.
+
+  You are not required to accept this License in order to receive or
+run a copy of the Program.  Ancillary propagation of a covered work
+occurring solely as a consequence of using peer-to-peer transmission
+to receive a copy likewise does not require acceptance.  However,
+nothing other than this License grants you permission to propagate or
+modify any covered work.  These actions infringe copyright if you do
+not accept this License.  Therefore, by modifying or propagating a
+covered work, you indicate your acceptance of this License to do so.
+
+  10. Automatic Licensing of Downstream Recipients.
+
+  Each time you convey a covered work, the recipient automatically
+receives a license from the original licensors, to run, modify and
+propagate that work, subject to this License.  You are not responsible
+for enforcing compliance by third parties with this License.
+
+  An "entity transaction" is a transaction transferring control of an
+organization, or substantially all assets of one, or subdividing an
+organization, or merging organizations.  If propagation of a covered
+work results from an entity transaction, each party to that
+transaction who receives a copy of the work also receives whatever
+licenses to the work the party's predecessor in interest had or could
+give under the previous paragraph, plus a right to possession of the
+Corresponding Source of the work from the predecessor in interest, if
+the predecessor has it or can get it with reasonable efforts.
+
+  You may not impose any further restrictions on the exercise of the
+rights granted or affirmed under this License.  For example, you may
+not impose a license fee, royalty, or other charge for exercise of
+rights granted under this License, and you may not initiate litigation
+(including a cross-claim or counterclaim in a lawsuit) alleging that
+any patent claim is infringed by making, using, selling, offering for
+sale, or importing the Program or any portion of it.
+
+  11. Patents.
+
+  A "contributor" is a copyright holder who authorizes use under this
+License of the Program or a work on which the Program is based.  The
+work thus licensed is called the contributor's "contributor version".
+
+  A contributor's "essential patent claims" are all patent claims
+owned or controlled by the contributor, whether already acquired or
+hereafter acquired, that would be infringed by some manner, permitted
+by this License, of making, using, or selling its contributor version,
+but do not include claims that would be infringed only as a
+consequence of further modification of the contributor version.  For
+purposes of this definition, "control" includes the right to grant
+patent sublicenses in a manner consistent with the requirements of
+this License.
+
+  Each contributor grants you a non-exclusive, worldwide, royalty-free
+patent license under the contributor's essential patent claims, to
+make, use, sell, offer for sale, import and otherwise run, modify and
+propagate the contents of its contributor version.
+
+  In the following three paragraphs, a "patent license" is any express
+agreement or commitment, however denominated, not to enforce a patent
+(such as an express permission to practice a patent or covenant not to
+sue for patent infringement).  To "grant" such a patent license to a
+party means to make such an agreement or commitment not to enforce a
+patent against the party.
+
+  If you convey a covered work, knowingly relying on a patent license,
+and the Corresponding Source of the work is not available for anyone
+to copy, free of charge and under the terms of this License, through a
+publicly available network server or other readily accessible means,
+then you must either (1) cause the Corresponding Source to be so
+available, or (2) arrange to deprive yourself of the benefit of the
+patent license for this particular work, or (3) arrange, in a manner
+consistent with the requirements of this License, to extend the patent
+license to downstream recipients.  "Knowingly relying" means you have
+actual knowledge that, but for the patent license, your conveying the
+covered work in a country, or your recipient's use of the covered work
+in a country, would infringe one or more identifiable patents in that
+country that you have reason to believe are valid.
+
+  If, pursuant to or in connection with a single transaction or
+arrangement, you convey, or propagate by procuring conveyance of, a
+covered work, and grant a patent license to some of the parties
+receiving the covered work authorizing them to use, propagate, modify
+or convey a specific copy of the covered work, then the patent license
+you grant is automatically extended to all recipients of the covered
+work and works based on it.
+
+  A patent license is "discriminatory" if it does not include within
+the scope of its coverage, prohibits the exercise of, or is
+conditioned on the non-exercise of one or more of the rights that are
+specifically granted under this License.  You may not convey a covered
+work if you are a party to an arrangement with a third party that is
+in the business of distributing software, under which you make payment
+to the third party based on the extent of your activity of conveying
+the work, and under which the third party grants, to any of the
+parties who would receive the covered work from you, a discriminatory
+patent license (a) in connection with copies of the covered work
+conveyed by you (or copies made from those copies), or (b) primarily
+for and in connection with specific products or compilations that
+contain the covered work, unless you entered into that arrangement,
+or that patent license was granted, prior to 28 March 2007.
+
+  Nothing in this License shall be construed as excluding or limiting
+any implied license or other defenses to infringement that may
+otherwise be available to you under applicable patent law.
+
+  12. No Surrender of Others' Freedom.
+
+  If conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot convey a
+covered work so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you may
+not convey it at all.  For example, if you agree to terms that obligate you
+to collect a royalty for further conveying from those to whom you convey
+the Program, the only way you could satisfy both those terms and this
+License would be to refrain entirely from conveying the Program.
+
+  13. Use with the GNU Affero General Public License.
+
+  Notwithstanding any other provision of this License, you have
+permission to link or combine any covered work with a work licensed
+under version 3 of the GNU Affero General Public License into a single
+combined work, and to convey the resulting work.  The terms of this
+License will continue to apply to the part which is the covered work,
+but the special requirements of the GNU Affero General Public License,
+section 13, concerning interaction through a network will apply to the
+combination as such.
+
+  14. Revised Versions of this License.
+
+  The Free Software Foundation may publish revised and/or new versions of
+the GNU General Public License from time to time.  Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+  Each version is given a distinguishing version number.  If the
+Program specifies that a certain numbered version of the GNU General
+Public License "or any later version" applies to it, you have the
+option of following the terms and conditions either of that numbered
+version or of any later version published by the Free Software
+Foundation.  If the Program does not specify a version number of the
+GNU General Public License, you may choose any version ever published
+by the Free Software Foundation.
+
+  If the Program specifies that a proxy can decide which future
+versions of the GNU General Public License can be used, that proxy's
+public statement of acceptance of a version permanently authorizes you
+to choose that version for the Program.
+
+  Later license versions may give you additional or different
+permissions.  However, no additional obligations are imposed on any
+author or copyright holder as a result of your choosing to follow a
+later version.
+
+  15. Disclaimer of Warranty.
+
+  THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
+APPLICABLE LAW.  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
+HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
+OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
+THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
+IS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
+ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+  16. Limitation of Liability.
+
+  IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
+THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
+GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
+USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
+DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
+PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
+EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
+SUCH DAMAGES.
+
+  17. Interpretation of Sections 15 and 16.
+
+  If the disclaimer of warranty and limitation of liability provided
+above cannot be given local legal effect according to their terms,
+reviewing courts shall apply local law that most closely approximates
+an absolute waiver of all civil liability in connection with the
+Program, unless a warranty or assumption of liability accompanies a
+copy of the Program in return for a fee.
+
+                     END OF TERMS AND CONDITIONS
+
+            How to Apply These Terms to Your New Programs
+
+  If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+  To do so, attach the following notices to the program.  It is safest
+to attach them to the start of each source file to most effectively
+state the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+    <one line to give the program's name and a brief idea of what it does.>
+    Copyright (C) <year>  <name of author>
+
+    This program is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+Also add information on how to contact you by electronic and paper mail.
+
+  If the program does terminal interaction, make it output a short
+notice like this when it starts in an interactive mode:
+
+    <program>  Copyright (C) <year>  <name of author>
+    This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+    This is free software, and you are welcome to redistribute it
+    under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License.  Of course, your program's commands
+might be different; for a GUI interface, you would use an "about box".
+
+  You should also get your employer (if you work as a programmer) or school,
+if any, to sign a "copyright disclaimer" for the program, if necessary.
+For more information on this, and how to apply and follow the GNU GPL, see
+<http://www.gnu.org/licenses/>.
+
+  The GNU General Public License does not permit incorporating your program
+into proprietary programs.  If your program is a subroutine library, you
+may consider it more useful to permit linking proprietary applications with
+the library.  If this is what you want to do, use the GNU Lesser General
+Public License instead of this License.  But first, please read
+<http://www.gnu.org/philosophy/why-not-lgpl.html>.
diff --git a/web/.htaccess b/web/.htaccess
deleted file mode 100644 (file)
index 7efd22b..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-# ------------------------------------------------------------------------------------
-# le template par defaut de mtweb utilise les "short tags" php pour l'affichage, dans
-# les fichiers php du dossier "out". Si ces "short tags" ne sont pas disponibles par
-# defaut sur votre hebergement, essayez en decommentant la ligne suivante.
-# ------------------------------------------------------------------------------------
-
-# php_value short_open_tag On
diff --git a/web/app/env/modules/mw_env_config.php b/web/app/env/modules/mw_env_config.php
deleted file mode 100644 (file)
index 4315e1d..0000000
+++ /dev/null
@@ -1,142 +0,0 @@
-<?php
-
-  class mw_env_config extends mw_env{
-
-    var $config_file;
-    var $PATHES;
-    var $PARAMS;
-    var $CONFIG;
-    var $bdd;
-
-    function load_config($bdd, $CONFIG){
-      if(true){
-        $this->bdd = $bdd;
-        $this->bdd["table_prefix"] = array();
-        $this->CONFIG = isset($CONFIG) ? $CONFIG : array();
-        $this->PARAMS = array();
-        $xml_parser = new sxml();
-        $app_config_file = $this->path("app")."config.xml";
-        if(file_exists($app_config_file)){
-          $xml_parser->parse(file_get_contents($app_config_file));
-          $app_config = $xml_parser->data["config"][0];
-          if(isset($app_config["subs"]["params"])){
-            foreach($app_config["subs"]["params"][0]["subs"] as $param_key => $param_elt){
-              $this->PARAMS[$param_key] = $param_elt[0]["data"];
-            }
-          }
-          if(isset($app_config["subs"]["config"])){
-            foreach($app_config["subs"]["config"][0]["subs"] as $config_key => $config_elt){
-              $this->CONFIG[$config_key] = $config_elt[0]["data"];
-            }
-          }
-          if(isset($app_config["subs"]["bdd"][0]["subs"]["table_prefix_code"])){
-            $this->add_table_prefix(
-              array(
-                $app_config["subs"]["bdd"][0]["subs"]["table_prefix_code"][0]["data"] => $bdd["table_prefix"]
-              )
-            );
-          }
-        }
-        if(($plugins = $this->plugins("ASC")) !== false){
-          foreach($plugins as $plugin_name => $plugin){
-            $app_config_file = $this->path("plugins").$plugin_name."/app/config.xml";
-            if(file_exists($app_config_file) && $plugin["installed"] && $plugin["enabled"]){
-              $xml_parser->parse(file_get_contents($app_config_file));
-              $app_config = $xml_parser->data["config"][0];
-              if(isset($app_config["subs"]["params"])){
-                foreach($app_config["subs"]["params"][0]["subs"] as $param_key => $param_elt){
-                  $this->PARAMS[$param_key] = $param_elt[0]["data"];
-                }
-              }
-              if(isset($app_config["subs"]["config"])){
-                foreach($app_config["subs"]["config"][0]["subs"] as $config_key => $config_elt){
-                  $this->CONFIG[$config_key] = $config_elt[0]["data"];
-                }
-              }
-              if(isset($app_config["subs"]["bdd"][0]["subs"]["table_prefix_code"])){
-                $this->add_table_prefix(
-                  array(
-                    $app_config["subs"]["bdd"][0]["subs"]["table_prefix_code"][0]["data"] => $bdd["table_prefix"]
-                  )
-                );
-              }
-            }
-          }
-          $this->init_additional_get_params();
-        }
-        else $this->erreur("impossible de lire les fichiers de configuration pour les plugins", true);
-      }
-      else $this->erreur("impossible de trouver le fichier de configuration pour l'installation", true);
-    }
-
-    function get_config_file(){
-      return $this->config_file;
-    }
-
-    function set_config_file($config_file){
-      $this->config_file = $config_file;
-    }
-
-    function get_PATHES(){
-      return $this->PATHES;
-    }
-
-    function path($name){
-      if(isset($this->PATHES[$name])) return $this->PATHES[$name];
-      return "";
-    }
-
-    function set_PATHES($PATHES){
-      foreach($PATHES as $path_name => $path_value){
-        if($path_value && substr($path_value, -1) != "/") $PATHES[$path_name] .= "/";
-      }
-      $this->PATHES = $PATHES;
-    }
-
-    function get_PARAMS(){
-      return $this->PARAMS;
-    }
-
-    function param($name){
-      return $this->PARAMS[$name];
-    }
-
-    function get_CONFIG(){
-      return $this->CONFIG;
-    }
-
-    function config($name){
-      return $this->CONFIG[$name];
-    }
-
-    function set_config($config){
-      if(is_array($config)){
-        foreach($config as $key => $value) $this->CONFIG[$key] = $value;
-        return true;
-      }
-      return false;
-    }
-
-    function get_bdd(){
-      return $this->bdd;
-    }
-
-    function bdd($name){
-      return $this->bdd[$name];
-    }
-
-    function set_bdd($key, $value){
-      $this->bdd[$key] = $value;
-    }
-
-    function add_table_prefix($table_prefix){
-      if(is_array($table_prefix)){
-        foreach($table_prefix as $prefix_code => $prefix) $this->bdd["table_prefix"][$prefix_code] = $prefix;
-        return true;
-      }
-      return false;
-    }
-
-  }
-
-?>
\ No newline at end of file
diff --git a/web/app/init/0400_config.php b/web/app/init/0400_config.php
deleted file mode 100644 (file)
index beeb2db..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-<?php
-
-  if(($config = $data->config()) !== false){
-    $this->set_config($config);
-    $start_action_params_config = $this->config("start_action_params") ? @unserialize($this->config("start_action_params")) : array();
-    $out_config = $this->config("out");
-    $out_config .= $out_config && substr($out_config, -1) != "/" ? "/" : "";
-    $this->set_config(
-      array(
-        "out" => $out_config,
-        "start_action_params" => $start_action_params_config
-      )
-    );
-    if($this->set_out_config($data->out_config()) === false) $this->erreur("Impossible de lire la configuration du template");
-  }
-  else $this->erreur("Impossible de lire la configuration en base", true);
-
-?>
\ No newline at end of file
diff --git a/web/app/main.php b/web/app/main.php
deleted file mode 100644 (file)
index d94172e..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-<?php
-
-  function __mw($config_file, $etat = ""){
-    require $config_file;
-    $PATHES["app"] .= $PATHES["app"] && substr($PATHES["app"], -1) != "/" ? "/" : "";
-    $PATHES["libs"] .= $PATHES["libs"] && substr($PATHES["libs"], -1) != "/" ? "/" : "";
-    if($sxml_class_file = (file_exists($PATHES["libs"]."sxml.php") ? $PATHES["libs"]."sxml.php" : "")){
-      if($empty_class_file = (file_exists($PATHES["libs"]."empty_class.php") ? $PATHES["libs"]."empty_class.php" : "")){
-        if($env_class_file = (file_exists($PATHES["app"]."env/mw_env.php") ? $PATHES["app"]."env/mw_env.php" : "")){
-          require $sxml_class_file;
-          require $empty_class_file;
-          require $env_class_file;
-          $env = new mw_env(true);
-          $env->load_modules($PATHES["app"], "env/modules/");
-          $env->set_config_file($config_file);
-          $env->set_PATHES($PATHES);
-          $env->init_plugins();
-          $env->load_config($bdd, $CONFIG);
-          $env->init();
-          $etat = ($etat === false ? false : ($etat ? $etat : (isset($_GET[$env->param("e")]) ? $_GET[$env->param("e")] : "")));
-          if($etat !== false) $env->run($etat);
-          return $env;
-        }
-        else echo "<pre>impossible de trouver le fichier <strong>env/mw_env.php</strong></pre>";
-      }
-      else echo "<pre>impossible de trouver le fichier <strong>".$libs_path."empty_class.php</strong></pre>";
-    }
-    else echo "<pre>impossible de trouver le fichier <strong>".$libs_path."sxml.php</strong></pre>";
-    return false;
-  }
-
-  function __mw_display($env){
-    if($env->etat_is_valid()) $env->render_layout($env->init_layout());
-  }
-
-?>
\ No newline at end of file
diff --git a/web/content/data/xml/mw/config/22.xml b/web/content/data/xml/mw/config/22.xml
deleted file mode 100644 (file)
index 60f4932..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-<tuple>
-  <out><![CDATA[dist]]></out>
-</tuple>
diff --git a/web/out/dist/views/admin/config.php b/web/out/dist/views/admin/config.php
deleted file mode 100644 (file)
index e2a40eb..0000000
+++ /dev/null
@@ -1,113 +0,0 @@
-<h2>Configuration</h2>
-
-<h3>Générale</h3>
-
-<form name="config_form" action="<?= $this->url("admin/config") ?>" method="post">
-  <ul class="form">
-    <li>
-      <label for="site_name">nom du site</label>
-      <div><p>
-        <input type="text" name="site_name" id="site_name" value="<?= $this->out["config"]["site_name"] ?>" />
-      </p></div>
-    </li>
-    <li>
-      <label for="description">description</label>
-      <div><p>
-        <textarea cols="50" rows="10" name="description" id="description"><?= $this->out["config"]["description"] ?></textarea>
-      </p></div>
-    </li>
-<?php if($this->out["groupes"]["list"]) : ?>
-    <li>
-      <label for="start_action">Accueil du site</label>
-      <div><p>
-        <select name="start_action" id="start_action" onchange="select_start_action(this.options[this.selectedIndex].value)">
-          <option value="sources/groupe"<?= "sources/groupe" == $this->out["config"]["start_action"] ? " selected" : "" ?>>Liste des groupes</option>
-          <option value="sources/groupe/view"<?= "sources/groupe/view" == $this->out["config"]["start_action"] ? " selected" : "" ?>>Un groupe</option>
-<?php if($this->out["albums"]["list"]) : ?>
-          <option value="sources/album/view"<?= "sources/album/view" == $this->out["config"]["start_action"] ? " selected" : "" ?>>Un album</option>
-<?php endif; ?>
-        </select>
-        <select name="groupe_param" id="groupe_param"<?php if($this->out["config"]["start_action"] != "sources/groupe/view") : ?> style="display:none;"<?php endif; ?>>
-        <?php foreach($this->out["groupes"]["list"] as $id_groupe => $groupe) : ?>
-          <option value="<?= $id_groupe ?>"<?= $this->out["config"]["start_action_params"]["id"] == $id_groupe ? " selected=\"selected\"" : "" ?>><?= $groupe["nom"] ?></option>
-        <?php endforeach; ?>
-        </select>
-<?php if($this->out["albums"]["list"]) : ?>
-        <select name="album_param" id="album_param"<?php if($this->out["config"]["start_action"] != "sources/album/view") : ?> style="display:none;"<?php endif; ?>>
-        <?php foreach($this->out["albums"]["list"] as $id_album => $album) : ?>
-          <option value="<?= $id_album ?>"<?= $this->out["config"]["start_action_params"]["album"] == $id_album ? " selected=\"selected\"" : "" ?>><?= $album["titre"] ?></option>
-        <?php endforeach; ?>
-        </select>
-<?php endif; ?>
-      </p></div>
-    </li>
-<?php endif; ?>
-    <li>
-      <label for="contact_form">formulaire de contact</label>
-      <div><p>
-        <input type="checkbox" name="contact_form" id="contact_form"<?= $this->out["config"]["contact_form"] ? " checked=\"checked\"" : "" ?> />
-      </p></div>
-    </li>
-    <li id="email_li"<?= $this->out["config"]["contact_form"] ? "" : " style=\"display:none;\"" ?>>
-      <label for="email">email</label>
-      <div>
-      <div><p>
-        <input type="text" name="email" id="email" value="<?= $this->out["config"]["email"] ?>" /><br />
-        <br /><input type="checkbox" name="captcha" id="captcha"<?= $this->out["config"]["captcha"] ? " checked=\"checked\"" : "" ?> /> anti-spam
-      </p></div>
-      </div>
-    </li>
-    <li>
-      <label for="max_list">taille maximum des listes</label>
-      <div><p>
-        <span>nombre d'&eacute;l&eacute;ments &agrave; afficher dans une liste avant de paginer :</span>
-        <input type="text" name="max_list" id="max_list" value="<?= $this->out["config"]["max_list"] ?>" />
-      </p></div>
-    </li>
-  </ul>
-
-<h3>Affichage du site</h3>
-
-  <ul class="form">
-
-
-    <li>
-      <label for="out">template</label>
-<?php
-
-  $template = $this->config("out");
-  $FOUND = false;
-  foreach($this->out["out_pathes"] as $out_path) { if($template == $out_path."/") { $FOUND = true; break; } }
-  if(!$FOUND) $template = $this->path("dist_out");
-
-?>
-      <div><p>
-<?php if($this->out["out_pathes"]) : ?>
-        <select name="out" id="out">
-<?php foreach($this->out["out_pathes"] as $out_path) : ?>
-          <option value="<?= $out_path ?>"<?= $template == $out_path."/" ? " selected=\"selected\"" : "" ?>><?= $out_path ?></option>
-<?php endforeach; ?>
-        </select>
-<?php else : ?>
-        <strong class="warn">Aucun dossier d'affichage ! ... ?</strong>
-<?php endif; ?>
-
-      </p></div>
-    </li>
-
-<?php foreach($this->out["out_config"] as $key => $config) : ?>
-<?php if($config["type"] == "checkbox") : ?>
-    <li>
-      <label for="<?= "out_".$key ?>">&nbsp;</label>
-      <div><p>
-        <input type="checkbox" name="<?= "out_".$key ?>" id="<?= "out_".$key ?>"<?= (isset($this->out["config"]["out_".$key]) ? $this->out["config"]["out_".$key] : $config["default"]) ? " checked=\"checked\"" : "" ?> />
-        <?= $config["text"] ?>
-      </p></div>
-    </li>
-<?php endif; ?>
-<?php endforeach; ?>
-    <li class="buttons">
-      <input type="submit" value="Enregistrer" />
-    </li>
-  </ul>
-</form>
diff --git a/web/out/dist/views/admin/plugins/list.php b/web/out/dist/views/admin/plugins/list.php
deleted file mode 100644 (file)
index 4e5161c..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-<h2>Les plugins</h2>
-
-<?php if($this->out["plugins"]) : ?>
-
-<form name="plugins_form" action="<?= $this->url("admin/plugins") ?>" method="post">
-  <ul class="plugins">
-  <?php $data = $this->data(); foreach($this->out["plugins"] as $plugin_name => $plugin) : ?>
-    <li class="<?= $plugin["installed"] ? ($plugin["enabled"] ? "enabled" : "disabled") : "uninstalled" ?>">
-      <div>
-        <p class="folder">dossier <strong><?= $plugin_name ?></strong></p>
-        <h3><?= $plugin["title"] ?></h3>
-        <div class="clear"><!-- --></div>
-        <?= $plugin["description"] ?>
-        <ul class="plugin_links">
-        <?php if($plugin["installed"]) : ?>
-          <li><a href="<?= $this->url("admin/plugins/uninstall", array("id" => $plugin_name)) ?>"
-                 onclick="return confirm('si le plugin stocke des donnees, elles seront perdues')">d&eacute;sinstaller</a></li>
-          <?php if($plugin["enabled"]) : ?>
-          <?php if(($admin_link = $data->get_link("plugins/admin/".$plugin_name)) && $admin_link["url"]) : ?>
-          <li><a href="<?= $admin_link["url"] ?>"><?= $admin_link["intitule"] ?></a></li>
-          <?php endif; ?>
-          <li><a href="<?= $this->url("admin/plugins/disable", array("id" => $plugin_name)) ?>">d&eacute;sactiver</a></li>
-          <?php else : ?>
-          <li><a href="<?= $this->url("admin/plugins/enable", array("id" => $plugin_name)) ?>">activer</a></li>
-          <?php endif; ?>
-        <?php else : ?>
-          <li><a href="<?= $this->url("admin/plugins/install", array("id" => $plugin_name)) ?>">installer</a></li>
-        <?php endif; ?>
-          <li>priorit&eacute; : <input type="text" size="4" name="priorite_<?= $plugin_name ?>" value="<?= $plugin["priorite"] ? $plugin["priorite"] : "0" ?>" /></li>
-        </ul>
-      </div>
-    </li>
-  <?php endforeach; ?>
-    <li class="buttons">
-      <input type="submit" value="Enregistrer les priorit&eacute;s" />
-    </li>
-  </ul>
-</form>
-
-<?php else : ?>
-
-<p>Aucun plugin pour le moment.</p>
-
-<?php endif; ?>
diff --git a/web/out/dist/views/admin/users/list.php b/web/out/dist/views/admin/users/list.php
deleted file mode 100644 (file)
index 06a7400..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-<h2>Les utilisateurs</h2>
-
-<ul class="admin">
-  <li><a class="add" href="<?= $this->url("admin/users/add") ?>">Nouvel utilisateur</a></li>
-</ul>
-
-<?php
-
-  $users_params = array();
-  if($_GET[$this->param("status")]) $users_params["status"] = $_GET[$this->param("status")];
-
-?>
-<ul class="admin">
-  <li>Afficher les utilisateurs pour</li>  
-  <li>
-    <select onchange="document.location=this.options[this.selectedIndex].value;">
-      <option value="<?= $this->url("admin/users", $users_params) ?>"<?= $_GET[$this->param("alpha")] ? "" : " selected=\"selected\"" ?>>Tous les logins</option>
-      <?php for($i = 65; $i <= 90; $i++) : $users_params["alpha"] = chr($i); ?>
-      <option value="<?= $this->url("admin/users", $users_params) ?>"<?= $_GET[$this->param("alpha")] == chr($i) ? " selected=\"selected\"" : "" ?>><?= chr($i) ?></option>
-      <?php endfor; ?>
-    </select>
-  </li>
-  <?php
-
-    if($this->out["status"]) :
-      if($_GET[$this->param("alpha")]) $users_params["alpha"] = $_GET[$this->param("alpha")];
-      else unset($users_params["alpha"]);
-      unset($users_params["status"]);
-
-?>
-  <li>
-    <select onchange="document.location=this.options[this.selectedIndex].value;">
-      <option value="<?= $this->url("admin/users", $users_params) ?>"<?= $_GET[$this->param("status")] ? "" : " selected=\"selected\"" ?>>Tous les status</option>
-      <?php foreach($this->out["status"] as $user_status) : $users_params["status"] = $user_status["id"]; ?>
-      <option value="<?= $this->url("admin/users", $users_params) ?>"<?= $_GET[$this->param("status")] == $user_status["id"] ? " selected=\"selected\"" : "" ?>><?= $user_status["nom"] ?></option>
-      <?php endforeach; ?>
-    </select>
-  </li>
-  <?php endif; ?>
-</ul>
-
-
-
-
-<br/><br/>
-
-<?php if($this->out["users"]["total"] > $this->config("max_list")) : ?>
-
-<?php $items = "users"; $legend = "utilisateurs"; require $this->out_file("views/navig.php"); ?>
-
-<?php endif; ?>
-
-<table class="admin">
-  <tr>
-    <th>login</th>
-    <th>email</th>
-    <th>statut</th>
-    <th align="center" colspan="2">actions</th>
-  </tr>
-<?php if($this->out["users"]["list"]) : ?>
-<?php foreach($this->out["users"]["list"] as $id_user => $user) : ?>
-  <tr class="hl">
-    <td><?= $user["login"] ?></td>
-    <td><a href="mailto:<?= $user["email"] ?>"><?= $user["email"] ?></a></td>
-    <td><?= $this->out["status"][$user["status"]]["nom"] ?></td>
-    <td class="action">
-    <a href="<?= $this->url("admin/users/edit", array("id" => $user["login"])) ?>"
-       class="admin_link"
-       title="modifier cet utilisateur"><img src="<?= $this->out_file("icons/edit.gif") ?>" /></a>
-    </td>
-    <td class="action">
-    <a href="<?= $this->url("admin/users/del", array("id" => $user["login"])) ?>"
-       class="admin_link"
-       title="supprimer cet utilisateur"><img src="<?= $this->out_file("icons/del.gif") ?>"
-       onclick="return confirm('Supprimer cet utilisateur ?')"/></a>
-    </td>
-  </tr>
-<?php endforeach; ?>
-<?php else : ?>
-  <tr>
-    <td colspan="5"><p>Aucun utilisateur pour le moment...</p></td>
-  </tr>
-<?php endif; ?>
-</table>
diff --git a/web/out/dist/views/footer.php b/web/out/dist/views/footer.php
deleted file mode 100644 (file)
index 7d951df..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-<p id="contact_links">
-<?php if($this->config("contact_form")) : ?>
-  <a href="<?= $this->url("forms/contact") ?>">contact</a>
-<?php endif; ?>
-</p>
-
-<p>
-<?php if(!($user = $this->user())) : ?>
-   <a href="<?= $this->url("users/identification") ?>">s'identifier</a>
-<?php else : ?>
-   Bienvenue <strong><?= $user["login"] ?></strong>
-  | <a href="<?= $this->url("users") ?>">compte</a>
-<?php if($this->status_ok("admin")) : ?>
-  | <a href="<?= $this->url("admin") ?>">admin</a>
-<?php endif; ?>
-  | <a href="<?= $this->url("users/identification/logout") ?>">deconnexion</a>
-<?php endif; ?>
-  | <a href="http://mtweb.dj3c1t.com/">mtweb</a>
-</p>
diff --git a/web/out/dist/views/head.php b/web/out/dist/views/head.php
deleted file mode 100644 (file)
index 3a29977..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-    <title><?php echo $this->config("site_name"); ?></title>
-    <meta name="description" content="<?php echo $this->config("site_description"); ?>" />
-    <script type="text/javascript"> site_url = "<?= $this->path("web") ?>"; </script>
-    <script type="text/javascript" src="<?= $this->out_file("js/md5.js") ?>"></script>
-    <script type="text/javascript" src="<?= $this->out_file("js/login.js") ?>"></script>
-    <script type="text/javascript" src="<?= $this->out_file("js/jquery-1.8.3.min.js") ?>"></script>
-    <script type="text/javascript" src="<?= $this->out_file("js/jquery.colorbox-min.js") ?>"></script>
-    <script type="text/javascript" src="<?= $this->out_file("js/jquery-ui-1.8.12.custom.min.js") ?>"></script>
-    <script type="text/javascript" src="<?= $this->out_file("js/menu.js") ?>"></script>
-<?php if($this->out_file_exists("js/actions/".$this->etat("mod")."_".$this->etat("controller")."_".$this->etat("action").".js")) : ?>
-    <script type="text/javascript" src="<?= $this->out_file("js/actions/".$this->etat("mod")."_".$this->etat("controller")."_".$this->etat("action").".js") ?>"></script>
-<?php endif; ?>
-<?php if($this->out_file_exists("js/actions/".$this->etat("mod")."_".$this->etat("controller").".js")) : ?>
-    <script type="text/javascript" src="<?= $this->out_file("js/actions/".$this->etat("mod")."_".$this->etat("controller").".js") ?>"></script>
-<?php endif; ?>
-<?php if($this->out_file_exists("js/actions/".$this->etat("mod").".js")) : ?>
-    <script type="text/javascript" src="<?= $this->out_file("js/actions/".$this->etat("mod").".js") ?>"></script>
-<?php endif; ?>
-    <link rel="stylesheet" type="text/css" href="<?= $this->out_file("css/style.css") ?>" />
-    <link rel="stylesheet" type="text/css" href="<?= $this->out_file("css/colors.css") ?>" />
-    <link rel="stylesheet" type="text/css" href="<?= $this->out_file("css/colorbox.css") ?>" />
-    <link rel="stylesheet" type="text/css" href="<?= $this->out_file("css/ui-lightness/jquery-ui-1.8.12.custom.css") ?>" />
-<?php if($this->out_file_exists("css/actions/".$this->etat("mod")."_".$this->etat("controller")."_".$this->etat("action").".css")) : ?>
-    <link rel="stylesheet" type="text/css" href="<?= $this->out_file("css/actions/".$this->etat("mod")."_".$this->etat("controller")."_".$this->etat("action").".css") ?>" />
-<?php endif; ?>
-<?php if($this->out_file_exists("css/actions/".$this->etat("mod")."_".$this->etat("controller").".css")) : ?>
-    <link rel="stylesheet" type="text/css" href="<?= $this->out_file("css/actions/".$this->etat("mod")."_".$this->etat("controller").".css") ?>" />
-<?php endif; ?>
-<?php if($this->out_file_exists("css/actions/".$this->etat("mod").".css")) : ?>
-    <link rel="stylesheet" type="text/css" href="<?= $this->out_file("css/actions/".$this->etat("mod").".css") ?>" />
-<?php endif; ?>
diff --git a/web/out/dist/views/header.php b/web/out/dist/views/header.php
deleted file mode 100644 (file)
index 76d97da..0000000
+++ /dev/null
@@ -1 +0,0 @@
-<h1><a href="<?= $this->url() ?>"><span><?= $this->config("site_name") ?></span></a></h1>
diff --git a/web/out/dist/views/redirect_javascript.php b/web/out/dist/views/redirect_javascript.php
deleted file mode 100644 (file)
index f5f1c55..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<div class="redirect_message">
-  <div>
-<?= $this->out["redirect"]["message"] ?>
-    <br /><br /><br />
-    ---------------------------------------------------<br />
-    Vous allez &ecirc;tre redirig&eacute; vers <a href="<?= $this->out["redirect"]["url"] ?>"><?= $this->out["redirect"]["url"] ?></a>
-    dans <?= $this->out["redirect"]["wait"] ?> secondes.<br />
-    (cliquez sur le lien si la redirection ne se fait pas)
-  </div>
-</div>
-<script type="text/javascript">
-//<![CDATA[
-  setTimeout("js_redirect('<?= $this->out["redirect"]["url"] ?>')", 1000 * <?= $this->out["redirect"]["wait"] ?>);
-  function js_redirect(redirect_url) { document.location = redirect_url; }
-//]]>
-</script>