From 3393ebe2afcb1920964f2a0d09441c456a725de3 Mon Sep 17 00:00:00 2001 From: Fred Tempez Date: Tue, 5 Sep 2023 15:21:01 +0200 Subject: [PATCH] =?UTF-8?q?Init=20avec=20suppression=20de=20la=20langue=20?= =?UTF-8?q?=C3=A9trang=C3=A8re=20du=20site=20en=20cours?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 11 + .htaccess | 36 + CHANGES.md | 1 + LICENSE | 1 + LISEZMOI.md | 113 + core/class/.htaccess | 3 + core/class/autoload.php | 19 + core/class/helper.class.php | 696 ++ core/class/jsondb/Dot.class.php | 477 + core/class/jsondb/JsonDb.class.php | 161 + core/class/jsondb/LICENSE.md | 19 + core/class/jsondb/README.md | 269 + core/class/layout.class.php | 1310 +++ core/class/phpmailer/.htaccess | 3 + core/class/phpmailer/Exception.class.php | 40 + core/class/phpmailer/PHPMailer.class.php | 5126 +++++++++ core/class/phpmailer/SMTP.class.php | 1458 +++ .../phpmailer/i18n/phpmailer.lang-de.php | 28 + .../phpmailer/i18n/phpmailer.lang-el.php | 33 + .../phpmailer/i18n/phpmailer.lang-es.php | 31 + .../phpmailer/i18n/phpmailer.lang-fr.php | 38 + .../phpmailer/i18n/phpmailer.lang-it.php | 28 + .../phpmailer/i18n/phpmailer.lang-pt.php | 27 + .../phpmailer/i18n/phpmailer.lang-tr.php | 31 + core/class/router.class.php | 945 ++ core/class/sitemap/FileSystem.class.php | 36 + core/class/sitemap/Runtime.class.php | 36 + core/class/sitemap/SitemapGenerator.class.php | 705 ++ .../class/strftime/php-8.1-strftime.class.php | 217 + core/class/template.class.php | 966 ++ core/core.js.php | 552 + core/core.php | 1396 +++ core/include/checkup.php | 56 + core/include/update.inc.php | 5 + core/layout/blank.css | 20 + core/layout/blank.php | 24 + core/layout/common.css | 1821 +++ core/layout/light.css | 33 + core/layout/light.php | 27 + core/layout/mail.php | 139 + core/layout/main.php | 192 + core/module/config/config.php | 949 ++ core/module/config/ressource/ajax-loader.png | Bin 0 -> 8529 bytes core/module/config/view/backup/backup.css | 18 + core/module/config/view/backup/backup.js.php | 12 + core/module/config/view/backup/backup.php | 36 + core/module/config/view/connect/connect.php | 134 + core/module/config/view/index/index.css | 67 + core/module/config/view/index/index.js.php | 335 + core/module/config/view/index/index.php | 54 + core/module/config/view/locale/locale.css | 17 + core/module/config/view/locale/locale.php | 203 + core/module/config/view/network/network.php | 115 + core/module/config/view/restore/restore.css | 18 + .../module/config/view/restore/restore.js.php | 12 + core/module/config/view/restore/restore.php | 43 + core/module/config/view/script/script.css | 18 + core/module/config/view/script/script.php | 37 + core/module/config/view/setup/setup.php | 213 + core/module/config/view/social/social.php | 188 + core/module/dashboard/dashboard.php | 50 + core/module/dashboard/view/index/index.php | 54 + core/module/install/install.php | 480 + core/module/install/ressource/.htaccess | 10 + core/module/install/ressource/defaultdata.php | 1615 +++ core/module/install/ressource/files.tar.gz | Bin 0 -> 1685266 bytes core/module/install/ressource/i18n/en_EN.json | 690 ++ core/module/install/ressource/i18n/es.json | 690 ++ core/module/install/ressource/i18n/fr_FR.json | 690 ++ .../ressource/themes/theme_affaire.zip | Bin 0 -> 27992 bytes .../ressource/themes/theme_moderne.zip | Bin 0 -> 106147 bytes .../ressource/themes/theme_old_facebook.zip | Bin 0 -> 3198 bytes .../ressource/themes/theme_orange_black.zip | Bin 0 -> 43114 bytes .../install/ressource/themes/themes.json | 24 + core/module/install/view/index/index.css | 0 core/module/install/view/index/index.php | 20 + .../install/view/postinstall/postinstall.css | 22 + .../view/postinstall/postinstall.js.php | 13 + .../install/view/postinstall/postinstall.php | 122 + core/module/install/view/update/update.css | 18 + core/module/install/view/update/update.js.php | 75 + core/module/install/view/update/update.php | 56 + core/module/language/language.php | 699 ++ core/module/language/view/add/add.css | 20 + core/module/language/view/add/add.php | 29 + core/module/language/view/copy/copy.css | 20 + core/module/language/view/copy/copy.php | 36 + core/module/language/view/edit/edit.css | 20 + core/module/language/view/edit/edit.php | 59 + core/module/language/view/index/index.css | 54 + core/module/language/view/index/index.js.php | 88 + core/module/language/view/index/index.php | 98 + core/module/language/view/store/store.php | 0 core/module/language/view/update/update.php | 1 + core/module/maintenance/maintenance.php | 56 + core/module/maintenance/view/index/index.css | 1 + core/module/maintenance/view/index/index.php | 12 + core/module/page/page.php | 671 ++ core/module/page/view/cssEditor/cssEditor.css | 18 + core/module/page/view/cssEditor/cssEditor.php | 22 + core/module/page/view/edit/edit.css | 50 + core/module/page/view/edit/edit.js.php | 752 ++ core/module/page/view/edit/edit.php | 428 + core/module/page/view/jsEditor/jsEditor.css | 18 + core/module/page/view/jsEditor/jsEditor.php | 22 + core/module/plugin/plugin.php | 855 ++ .../plugin/view/dataImport/dataImport.css | 18 + .../plugin/view/dataImport/dataImport.php | 37 + core/module/plugin/view/index/index.css | 47 + core/module/plugin/view/index/index.js.php | 13 + core/module/plugin/view/index/index.php | 99 + core/module/plugin/view/item/item.css | 14 + core/module/plugin/view/item/item.php | 44 + core/module/plugin/view/store/store.css | 18 + core/module/plugin/view/store/store.php | 14 + core/module/plugin/view/upload/upload.css | 18 + core/module/plugin/view/upload/upload.php | 51 + core/module/sitemap/sitemap.php | 116 + core/module/sitemap/view/index/index.css | 29 + core/module/sitemap/view/index/index.php | 4 + core/module/theme/resource/custom.css | 224 + core/module/theme/theme.php | 1397 +++ core/module/theme/view/admin/admin.css | 17 + core/module/theme/view/admin/admin.js.php | 27 + core/module/theme/view/admin/admin.php | 157 + core/module/theme/view/advanced/advanced.css | 18 + .../theme/view/advanced/advanced.js.php | 13 + core/module/theme/view/advanced/advanced.php | 31 + core/module/theme/view/body/body.css | 22 + core/module/theme/view/body/body.js.php | 13 + core/module/theme/view/body/body.php | 108 + core/module/theme/view/font/font.css | 18 + core/module/theme/view/font/font.js.php | 11 + core/module/theme/view/font/font.php | 30 + core/module/theme/view/fontAdd/fontAdd.css | 22 + core/module/theme/view/fontAdd/fontAdd.js.php | 11 + core/module/theme/view/fontAdd/fontAdd.php | 85 + core/module/theme/view/fontEdit/fontEdit.css | 18 + .../theme/view/fontEdit/fontEdit.js.php | 11 + core/module/theme/view/fontEdit/fontEdit.php | 87 + core/module/theme/view/footer/footer.css | 29 + core/module/theme/view/footer/footer.js.php | 14 + core/module/theme/view/footer/footer.php | 301 + core/module/theme/view/header/header.css | 28 + core/module/theme/view/header/header.js.php | 270 + core/module/theme/view/header/header.php | 219 + core/module/theme/view/index/index.css | 69 + core/module/theme/view/index/index.js.php | 13 + core/module/theme/view/index/index.php | 99 + core/module/theme/view/manage/manage.css | 18 + core/module/theme/view/manage/manage.js.php | 13 + core/module/theme/view/manage/manage.php | 91 + core/module/theme/view/menu/menu.css | 18 + core/module/theme/view/menu/menu.js.php | 195 + core/module/theme/view/menu/menu.php | 217 + core/module/theme/view/site/site.css | 18 + core/module/theme/view/site/site.js.php | 29 + core/module/theme/view/site/site.php | 186 + core/module/user/ressource/.htaccess | 8 + core/module/user/ressource/template.csv | 5 + core/module/user/user.php | 1229 +++ core/module/user/view/add/add.css | 24 + core/module/user/view/add/add.js.php | 50 + core/module/user/view/add/add.php | 135 + core/module/user/view/edit/edit.css | 23 + core/module/user/view/edit/edit.js.php | 28 + core/module/user/view/edit/edit.php | 168 + core/module/user/view/forgot/forgot.css | 1 + core/module/user/view/forgot/forgot.php | 18 + core/module/user/view/import/import.css | 20 + core/module/user/view/import/import.php | 66 + core/module/user/view/index/index.css | 18 + core/module/user/view/index/index.js.php | 13 + core/module/user/view/index/index.php | 41 + core/module/user/view/login/login.css | 23 + core/module/user/view/login/login.js.php | 11 + core/module/user/view/login/login.php | 55 + core/module/user/view/profil/profil.css | 18 + core/module/user/view/profil/profil.js.php | 25 + core/module/user/view/profil/profil.php | 18 + core/module/user/view/profilAdd/profilAdd.css | 22 + .../user/view/profilAdd/profilAdd.js.php | 117 + core/module/user/view/profilAdd/profilAdd.php | 197 + .../user/view/profilEdit/profilEdit.css | 18 + .../user/view/profilEdit/profilEdit.js.php | 121 + .../user/view/profilEdit/profilEdit.php | 286 + core/module/user/view/reset/reset.css | 13 + core/module/user/view/reset/reset.php | 21 + core/vendor/codemirror/codemirror.css | 349 + core/vendor/codemirror/codemirror.js | 9784 +++++++++++++++++ core/vendor/codemirror/inc.json | 10 + core/vendor/codemirror/init.css | 4 + core/vendor/codemirror/init.js | 18 + core/vendor/codemirror/mode/css/css.js | 717 ++ .../mode/htmlembedded/htmlembedded.js | 86 + .../codemirror/mode/htmlmixed/htmlmixed.js | 121 + .../codemirror/mode/javascript/javascript.js | 684 ++ .../favicon-switcher/favicon-switcher.js | 67 + core/vendor/filemanager/UploadHandler.php | 1622 +++ core/vendor/filemanager/ajax_calls.php | 654 ++ core/vendor/filemanager/callback.js | 7 + core/vendor/filemanager/config/.htaccess | 1 + core/vendor/filemanager/config/config.php | 710 ++ .../css/jplayer.blue.monday.min.css | 1 + .../css/jquery.fileupload-noscript.css | 22 + .../css/jquery.fileupload-ui-noscript.css | 17 + .../filemanager/css/jquery.fileupload-ui.css | 53 + .../filemanager/css/jquery.fileupload.css | 37 + core/vendor/filemanager/css/rtl-style.css | Bin 0 -> 6224 bytes core/vendor/filemanager/css/style.css | 35 + .../filemanager/css/tui-color-picker.css | 154 + .../filemanager/css/tui-image-editor.css | 6 + core/vendor/filemanager/dialog.php | 1917 ++++ core/vendor/filemanager/execute.php | 519 + core/vendor/filemanager/force_download.php | 127 + .../filemanager/img/clipboard_apply.png | Bin 0 -> 189 bytes .../filemanager/img/clipboard_clear.png | Bin 0 -> 195 bytes core/vendor/filemanager/img/copy.png | Bin 0 -> 238 bytes core/vendor/filemanager/img/cut.png | Bin 0 -> 173 bytes core/vendor/filemanager/img/date.png | Bin 0 -> 611 bytes core/vendor/filemanager/img/dimension.png | Bin 0 -> 489 bytes core/vendor/filemanager/img/down.png | Bin 0 -> 163 bytes core/vendor/filemanager/img/download.png | Bin 0 -> 674 bytes core/vendor/filemanager/img/duplicate.png | Bin 0 -> 245 bytes core/vendor/filemanager/img/edit_img.png | Bin 0 -> 673 bytes core/vendor/filemanager/img/file_edit.png | Bin 0 -> 764 bytes .../img/glyphicons-halflings-white.png | Bin 0 -> 8583 bytes .../filemanager/img/glyphicons-halflings.png | Bin 0 -> 15602 bytes core/vendor/filemanager/img/ico/ac3.jpg | Bin 0 -> 1692 bytes core/vendor/filemanager/img/ico/accdb.jpg | Bin 0 -> 2613 bytes core/vendor/filemanager/img/ico/ade.jpg | Bin 0 -> 2290 bytes core/vendor/filemanager/img/ico/adp.jpg | Bin 0 -> 2290 bytes core/vendor/filemanager/img/ico/ai.jpg | Bin 0 -> 1776 bytes core/vendor/filemanager/img/ico/aiff.jpg | Bin 0 -> 1717 bytes core/vendor/filemanager/img/ico/avi.jpg | Bin 0 -> 1548 bytes core/vendor/filemanager/img/ico/bmp.jpg | Bin 0 -> 1979 bytes core/vendor/filemanager/img/ico/c4d.jpg | Bin 0 -> 6241 bytes core/vendor/filemanager/img/ico/css.jpg | Bin 0 -> 1722 bytes core/vendor/filemanager/img/ico/csv.jpg | Bin 0 -> 2558 bytes core/vendor/filemanager/img/ico/default.jpg | Bin 0 -> 1723 bytes core/vendor/filemanager/img/ico/dmg.jpg | Bin 0 -> 1579 bytes core/vendor/filemanager/img/ico/doc.jpg | Bin 0 -> 2511 bytes core/vendor/filemanager/img/ico/docx.jpg | Bin 0 -> 2511 bytes core/vendor/filemanager/img/ico/dwg.jpg | Bin 0 -> 5457 bytes core/vendor/filemanager/img/ico/dxf.jpg | Bin 0 -> 5419 bytes core/vendor/filemanager/img/ico/favicon.ico | Bin 0 -> 1150 bytes core/vendor/filemanager/img/ico/fla.jpg | Bin 0 -> 1859 bytes core/vendor/filemanager/img/ico/flv.jpg | Bin 0 -> 1806 bytes core/vendor/filemanager/img/ico/folder.png | Bin 0 -> 737 bytes .../filemanager/img/ico/folder_back.png | Bin 0 -> 1128 bytes core/vendor/filemanager/img/ico/gif.jpg | Bin 0 -> 1979 bytes core/vendor/filemanager/img/ico/gz.jpg | Bin 0 -> 1718 bytes core/vendor/filemanager/img/ico/html.jpg | Bin 0 -> 2152 bytes core/vendor/filemanager/img/ico/iso.jpg | Bin 0 -> 1496 bytes core/vendor/filemanager/img/ico/jpeg.jpg | Bin 0 -> 1960 bytes core/vendor/filemanager/img/ico/jpg.jpg | Bin 0 -> 1979 bytes core/vendor/filemanager/img/ico/log.jpg | Bin 0 -> 1765 bytes core/vendor/filemanager/img/ico/m4a.jpg | Bin 0 -> 1529 bytes core/vendor/filemanager/img/ico/mdb.jpg | Bin 0 -> 2613 bytes core/vendor/filemanager/img/ico/mid.jpg | Bin 0 -> 1630 bytes core/vendor/filemanager/img/ico/mov.jpg | Bin 0 -> 1574 bytes core/vendor/filemanager/img/ico/mp3.jpg | Bin 0 -> 1555 bytes core/vendor/filemanager/img/ico/mp4.jpg | Bin 0 -> 1529 bytes core/vendor/filemanager/img/ico/mpeg.jpg | Bin 0 -> 1589 bytes core/vendor/filemanager/img/ico/mpg.jpg | Bin 0 -> 1532 bytes core/vendor/filemanager/img/ico/odb.jpg | Bin 0 -> 1748 bytes core/vendor/filemanager/img/ico/odf.jpg | Bin 0 -> 1760 bytes core/vendor/filemanager/img/ico/odg.jpg | Bin 0 -> 1748 bytes core/vendor/filemanager/img/ico/odp.jpg | Bin 0 -> 1760 bytes core/vendor/filemanager/img/ico/ods.jpg | Bin 0 -> 1748 bytes core/vendor/filemanager/img/ico/odt.jpg | Bin 0 -> 1748 bytes core/vendor/filemanager/img/ico/ogg.jpg | Bin 0 -> 1557 bytes core/vendor/filemanager/img/ico/otg.jpg | Bin 0 -> 1759 bytes core/vendor/filemanager/img/ico/otp.jpg | Bin 0 -> 1870 bytes core/vendor/filemanager/img/ico/ots.jpg | Bin 0 -> 1748 bytes core/vendor/filemanager/img/ico/ott.jpg | Bin 0 -> 1748 bytes core/vendor/filemanager/img/ico/pdf.jpg | Bin 0 -> 2050 bytes core/vendor/filemanager/img/ico/png.jpg | Bin 0 -> 1979 bytes core/vendor/filemanager/img/ico/ppt.jpg | Bin 0 -> 2386 bytes core/vendor/filemanager/img/ico/pptx.jpg | Bin 0 -> 2479 bytes core/vendor/filemanager/img/ico/psd.jpg | Bin 0 -> 2110 bytes core/vendor/filemanager/img/ico/rar.jpg | Bin 0 -> 1718 bytes core/vendor/filemanager/img/ico/rtf.jpg | Bin 0 -> 2511 bytes core/vendor/filemanager/img/ico/skp.jpg | Bin 0 -> 6347 bytes core/vendor/filemanager/img/ico/sql.jpg | Bin 0 -> 1695 bytes core/vendor/filemanager/img/ico/stp.jpg | Bin 0 -> 5539 bytes core/vendor/filemanager/img/ico/svg.jpg | Bin 0 -> 1979 bytes core/vendor/filemanager/img/ico/tar.jpg | Bin 0 -> 1747 bytes core/vendor/filemanager/img/ico/tiff.jpg | Bin 0 -> 1953 bytes core/vendor/filemanager/img/ico/txt.jpg | Bin 0 -> 1765 bytes core/vendor/filemanager/img/ico/vwx.jpg | Bin 0 -> 5463 bytes core/vendor/filemanager/img/ico/wav.jpg | Bin 0 -> 1557 bytes core/vendor/filemanager/img/ico/webm.jpg | Bin 0 -> 1548 bytes core/vendor/filemanager/img/ico/wma.jpg | Bin 0 -> 1548 bytes core/vendor/filemanager/img/ico/xhtml.jpg | Bin 0 -> 1920 bytes core/vendor/filemanager/img/ico/xls.jpg | Bin 0 -> 2691 bytes core/vendor/filemanager/img/ico/xlsx.jpg | Bin 0 -> 2539 bytes core/vendor/filemanager/img/ico/xml.jpg | Bin 0 -> 1714 bytes core/vendor/filemanager/img/ico/zip.jpg | Bin 0 -> 1718 bytes core/vendor/filemanager/img/ico_dark/ac3.jpg | Bin 0 -> 3462 bytes .../vendor/filemanager/img/ico_dark/accdb.jpg | Bin 0 -> 4130 bytes core/vendor/filemanager/img/ico_dark/ade.jpg | Bin 0 -> 4126 bytes core/vendor/filemanager/img/ico_dark/adp.jpg | Bin 0 -> 4126 bytes core/vendor/filemanager/img/ico_dark/ai.jpg | Bin 0 -> 3416 bytes core/vendor/filemanager/img/ico_dark/aiff.jpg | Bin 0 -> 3454 bytes core/vendor/filemanager/img/ico_dark/avi.jpg | Bin 0 -> 3461 bytes core/vendor/filemanager/img/ico_dark/bmp.jpg | Bin 0 -> 3754 bytes core/vendor/filemanager/img/ico_dark/css.jpg | Bin 0 -> 3444 bytes core/vendor/filemanager/img/ico_dark/csv.jpg | Bin 0 -> 4189 bytes .../filemanager/img/ico_dark/default.jpg | Bin 0 -> 3783 bytes core/vendor/filemanager/img/ico_dark/dmg.jpg | Bin 0 -> 3619 bytes core/vendor/filemanager/img/ico_dark/doc.jpg | Bin 0 -> 4081 bytes core/vendor/filemanager/img/ico_dark/docx.jpg | Bin 0 -> 4075 bytes .../filemanager/img/ico_dark/favicon.ico | Bin 0 -> 1150 bytes core/vendor/filemanager/img/ico_dark/fla.jpg | Bin 0 -> 3608 bytes core/vendor/filemanager/img/ico_dark/flv.jpg | Bin 0 -> 3572 bytes .../filemanager/img/ico_dark/folder.png | Bin 0 -> 535 bytes .../filemanager/img/ico_dark/folder_back.png | Bin 0 -> 1128 bytes core/vendor/filemanager/img/ico_dark/gif.jpg | Bin 0 -> 3754 bytes core/vendor/filemanager/img/ico_dark/gz.jpg | Bin 0 -> 3372 bytes core/vendor/filemanager/img/ico_dark/html.jpg | Bin 0 -> 3719 bytes core/vendor/filemanager/img/ico_dark/iso.jpg | Bin 0 -> 3576 bytes core/vendor/filemanager/img/ico_dark/jpeg.jpg | Bin 0 -> 3700 bytes core/vendor/filemanager/img/ico_dark/jpg.jpg | Bin 0 -> 3754 bytes core/vendor/filemanager/img/ico_dark/log.jpg | Bin 0 -> 3804 bytes core/vendor/filemanager/img/ico_dark/m4a.jpg | Bin 0 -> 3379 bytes core/vendor/filemanager/img/ico_dark/mdb.jpg | Bin 0 -> 4130 bytes core/vendor/filemanager/img/ico_dark/mid.jpg | Bin 0 -> 3383 bytes core/vendor/filemanager/img/ico_dark/mov.jpg | Bin 0 -> 3439 bytes core/vendor/filemanager/img/ico_dark/mp3.jpg | Bin 0 -> 3335 bytes core/vendor/filemanager/img/ico_dark/mp4.jpg | Bin 0 -> 3415 bytes core/vendor/filemanager/img/ico_dark/mpeg.jpg | Bin 0 -> 3470 bytes core/vendor/filemanager/img/ico_dark/mpg.jpg | Bin 0 -> 3459 bytes core/vendor/filemanager/img/ico_dark/odb.jpg | Bin 0 -> 3581 bytes core/vendor/filemanager/img/ico_dark/odf.jpg | Bin 0 -> 3590 bytes core/vendor/filemanager/img/ico_dark/odg.jpg | Bin 0 -> 3581 bytes core/vendor/filemanager/img/ico_dark/odp.jpg | Bin 0 -> 3590 bytes core/vendor/filemanager/img/ico_dark/ods.jpg | Bin 0 -> 3581 bytes core/vendor/filemanager/img/ico_dark/odt.jpg | Bin 0 -> 3581 bytes core/vendor/filemanager/img/ico_dark/ogg.jpg | Bin 0 -> 3440 bytes core/vendor/filemanager/img/ico_dark/otg.jpg | Bin 0 -> 3561 bytes core/vendor/filemanager/img/ico_dark/otp.jpg | Bin 0 -> 3559 bytes core/vendor/filemanager/img/ico_dark/ots.jpg | Bin 0 -> 3581 bytes core/vendor/filemanager/img/ico_dark/ott.jpg | Bin 0 -> 3581 bytes core/vendor/filemanager/img/ico_dark/pdf.jpg | Bin 0 -> 3705 bytes core/vendor/filemanager/img/ico_dark/png.jpg | Bin 0 -> 3754 bytes core/vendor/filemanager/img/ico_dark/ppt.jpg | Bin 0 -> 4035 bytes core/vendor/filemanager/img/ico_dark/pptx.jpg | Bin 0 -> 4089 bytes core/vendor/filemanager/img/ico_dark/psd.jpg | Bin 0 -> 3859 bytes core/vendor/filemanager/img/ico_dark/rar.jpg | Bin 0 -> 3387 bytes core/vendor/filemanager/img/ico_dark/rtf.jpg | Bin 0 -> 4081 bytes core/vendor/filemanager/img/ico_dark/sql.jpg | Bin 0 -> 3766 bytes core/vendor/filemanager/img/ico_dark/svg.jpg | Bin 0 -> 3754 bytes core/vendor/filemanager/img/ico_dark/tar.jpg | Bin 0 -> 3346 bytes core/vendor/filemanager/img/ico_dark/tiff.jpg | Bin 0 -> 3798 bytes core/vendor/filemanager/img/ico_dark/txt.jpg | Bin 0 -> 3804 bytes core/vendor/filemanager/img/ico_dark/wav.jpg | Bin 0 -> 3440 bytes core/vendor/filemanager/img/ico_dark/webm.jpg | Bin 0 -> 3476 bytes core/vendor/filemanager/img/ico_dark/wma.jpg | Bin 0 -> 3461 bytes .../vendor/filemanager/img/ico_dark/xhtml.jpg | Bin 0 -> 3653 bytes core/vendor/filemanager/img/ico_dark/xls.jpg | Bin 0 -> 4183 bytes core/vendor/filemanager/img/ico_dark/xlsx.jpg | Bin 0 -> 4250 bytes core/vendor/filemanager/img/ico_dark/xml.jpg | Bin 0 -> 3774 bytes core/vendor/filemanager/img/ico_dark/zip.jpg | Bin 0 -> 3372 bytes core/vendor/filemanager/img/info.png | Bin 0 -> 345 bytes core/vendor/filemanager/img/key.png | Bin 0 -> 185 bytes core/vendor/filemanager/img/label.png | Bin 0 -> 479 bytes core/vendor/filemanager/img/loading.gif | Bin 0 -> 1688 bytes core/vendor/filemanager/img/logo.png | Bin 0 -> 24774 bytes core/vendor/filemanager/img/preview.png | Bin 0 -> 376 bytes core/vendor/filemanager/img/processing.gif | Bin 0 -> 3209 bytes core/vendor/filemanager/img/rename.png | Bin 0 -> 262 bytes core/vendor/filemanager/img/size.png | Bin 0 -> 660 bytes core/vendor/filemanager/img/sort.png | Bin 0 -> 584 bytes .../filemanager/img/storing_animation.gif | Bin 0 -> 3887 bytes core/vendor/filemanager/img/trans.jpg | Bin 0 -> 4024 bytes core/vendor/filemanager/img/up.png | Bin 0 -> 163 bytes core/vendor/filemanager/img/upload.png | Bin 0 -> 324 bytes core/vendor/filemanager/img/url.png | Bin 0 -> 593 bytes core/vendor/filemanager/img/zip.png | Bin 0 -> 819 bytes core/vendor/filemanager/inc.json | 3 + core/vendor/filemanager/include/FtpClient.php | 884 ++ .../filemanager/include/FtpException.php | 20 + .../vendor/filemanager/include/FtpWrapper.php | 115 + core/vendor/filemanager/include/Response.php | 365 + core/vendor/filemanager/include/ftp_class.php | 82 + .../filemanager/include/get_png_imageinfo.php | 75 + .../filemanager/include/mime_type_lib.php | 270 + .../include/php_image_magician.php | 3804 +++++++ core/vendor/filemanager/include/utils.php | 1316 +++ core/vendor/filemanager/index.php | 10 + core/vendor/filemanager/js/FileSaver.min.js | 3 + .../filemanager/js/FileSaver.min.js.map | 1 + .../filemanager/js/canvas-to-blob.min.js | 2 + .../filemanager/js/canvas-to-blob.min.js.map | 1 + .../js/cors/jquery.postmessage-transport.js | 126 + .../js/cors/jquery.xdr-transport.js | 89 + core/vendor/filemanager/js/fabric.min.js | 1 + core/vendor/filemanager/js/include.js | 1 + .../filemanager/js/jquery-1.12.4.min.js | 5 + .../js/jquery.fileupload-angular.js | 438 + .../filemanager/js/jquery.fileupload-audio.js | 113 + .../filemanager/js/jquery.fileupload-image.js | 326 + .../js/jquery.fileupload-jquery-ui.js | 161 + .../js/jquery.fileupload-process.js | 178 + .../filemanager/js/jquery.fileupload-ui.js | 714 ++ .../js/jquery.fileupload-validate.js | 125 + .../filemanager/js/jquery.fileupload-video.js | 113 + .../filemanager/js/jquery.fileupload.js | 1502 +++ .../filemanager/js/jquery.iframe-transport.js | 224 + .../filemanager/js/jquery.jplayer.min.js | 3 + .../filemanager/js/load-image.all.min.js | 2 + .../filemanager/js/load-image.all.min.js.map | 1 + .../vendor/filemanager/js/modernizr.custom.js | 4 + core/vendor/filemanager/js/plugins.js | 3 + core/vendor/filemanager/js/tmpl.min.js | 2 + core/vendor/filemanager/js/tmpl.min.js.map | 1 + .../filemanager/js/tui-code-snippet.min.js | 7 + .../vendor/filemanager/js/tui-color-picker.js | 9 + .../vendor/filemanager/js/tui-image-editor.js | 15 + .../filemanager/js/vendor/jquery.ui.widget.js | 572 + core/vendor/filemanager/lang/de.php | 145 + core/vendor/filemanager/lang/en_EN.php | 144 + core/vendor/filemanager/lang/es.php | 145 + core/vendor/filemanager/lang/fr_FR.php | 147 + core/vendor/filemanager/lang/gr_GR.php | 145 + core/vendor/filemanager/lang/it.php | 145 + core/vendor/filemanager/lang/languages.php | 13 + core/vendor/filemanager/lang/pt_PT.php | 145 + core/vendor/filemanager/lang/tr_TR.php | 145 + core/vendor/filemanager/plugin.min.js | 1 + core/vendor/filemanager/svg/icon-a.svg | 235 + core/vendor/filemanager/svg/icon-b.svg | 224 + core/vendor/filemanager/svg/icon-c.svg | 224 + core/vendor/filemanager/svg/icon-d.svg | 224 + core/vendor/filemanager/svg/svg.svg | 1 + core/vendor/filemanager/upload.php | 212 + core/vendor/i18n/png/az_AZ.png | Bin 0 -> 167 bytes core/vendor/i18n/png/bg_BG.png | Bin 0 -> 99 bytes core/vendor/i18n/png/de.png | Bin 0 -> 99 bytes core/vendor/i18n/png/en_EN.png | Bin 0 -> 2027 bytes core/vendor/i18n/png/es.png | Bin 0 -> 392 bytes core/vendor/i18n/png/fr_FR.png | Bin 0 -> 108 bytes core/vendor/i18n/png/gr_GR.png | Bin 0 -> 123 bytes core/vendor/i18n/png/he_IL.png | Bin 0 -> 229 bytes core/vendor/i18n/png/hr.png | Bin 0 -> 344 bytes core/vendor/i18n/png/hu_HU.png | Bin 0 -> 114 bytes core/vendor/i18n/png/id.png | Bin 0 -> 104 bytes core/vendor/i18n/png/it.png | Bin 0 -> 109 bytes core/vendor/i18n/png/ja.png | Bin 0 -> 202 bytes core/vendor/i18n/png/lt.png | Bin 0 -> 99 bytes core/vendor/i18n/png/nb_NO.png | Bin 0 -> 199 bytes core/vendor/i18n/png/nl.png | Bin 0 -> 99 bytes core/vendor/i18n/png/nn_NO.png | Bin 0 -> 199 bytes core/vendor/i18n/png/pl.png | Bin 0 -> 98 bytes core/vendor/i18n/png/pt_BR.png | Bin 0 -> 449 bytes core/vendor/i18n/png/pt_PT.png | Bin 0 -> 525 bytes core/vendor/i18n/png/ro.png | Bin 0 -> 113 bytes core/vendor/i18n/png/ru.png | Bin 0 -> 120 bytes core/vendor/i18n/png/sk.png | Bin 0 -> 316 bytes core/vendor/i18n/png/sl.png | Bin 0 -> 105 bytes core/vendor/i18n/png/sv_SE.png | Bin 0 -> 104 bytes core/vendor/i18n/png/th_TH.png | Bin 0 -> 112 bytes core/vendor/i18n/png/tr_TR.png | Bin 0 -> 227 bytes core/vendor/i18n/png/uk_UA.png | Bin 0 -> 120 bytes core/vendor/i18n/png/vi.png | Bin 0 -> 1034 bytes core/vendor/i18n/png/zh_CN.png | Bin 0 -> 196 bytes core/vendor/imagemap/image-map.min.js | 8 + core/vendor/imagemap/inc.json | 4 + core/vendor/imagemap/init.js | 6 + core/vendor/imagemap/read.me | 2 + core/vendor/jquery/inc.json | 3 + core/vendor/jquery/jquery-ui.min.js | 6 + core/vendor/jquery/jquery.min.js | 2 + core/vendor/lity/inc.json | 5 + core/vendor/lity/init.js | 8 + core/vendor/lity/lity.min.css | 1 + core/vendor/lity/lity.min.js | 5 + core/vendor/normalize/inc.json | 3 + core/vendor/normalize/normalize.min.css | 1 + core/vendor/simplelightbox/inc.json | 6 + core/vendor/simplelightbox/init.css | 9 + core/vendor/simplelightbox/init.js | 14 + .../simple-lightbox.jquery.min.js | 1 + .../simplelightbox/simple-lightbox.min.css | 7 + core/vendor/tinycolorpicker/inc.json | 4 + core/vendor/tinycolorpicker/init.js | 26 + .../tinycolorpicker/jqColorPicker.js.map | 1 + .../tinycolorpicker/jqColorPicker.min.js | 4 + core/vendor/tinymce/content.css | 95 + .../vendor/tinymce/icons/default/icons.min.js | 1 + core/vendor/tinymce/inc.json | 5 + core/vendor/tinymce/init.css | 47 + core/vendor/tinymce/init.js | 318 + core/vendor/tinymce/jquery.tinymce.min.js | 91 + core/vendor/tinymce/langs/README.md | 3 + core/vendor/tinymce/langs/de.js | 462 + core/vendor/tinymce/langs/es.js | 462 + core/vendor/tinymce/langs/fr_FR.js | 462 + core/vendor/tinymce/langs/it.js | 370 + core/vendor/tinymce/langs/pt_PT.js | 462 + core/vendor/tinymce/langs/tr_TR.js | 462 + core/vendor/tinymce/links.php | 4 + .../tinymce/plugins/advlist/plugin.min.js | 9 + .../tinymce/plugins/anchor/plugin.min.js | 9 + .../tinymce/plugins/autolink/plugin.min.js | 9 + .../tinymce/plugins/autoresize/plugin.min.js | 9 + .../tinymce/plugins/autosave/plugin.min.js | 9 + .../tinymce/plugins/charmap/plugin.min.js | 9 + .../vendor/tinymce/plugins/code/plugin.min.js | 9 + .../plugins/codemirror/codemirror/LICENSE | 19 + .../codemirror/addon/comment/comment.js | 183 + .../addon/comment/continuecomment.js | 85 + .../codemirror/addon/dialog/dialog.css | 32 + .../codemirror/addon/dialog/dialog.js | 155 + .../codemirror/addon/display/fullscreen.css | 6 + .../codemirror/addon/display/fullscreen.js | 41 + .../codemirror/addon/display/placeholder.js | 58 + .../codemirror/addon/display/rulers.js | 64 + .../codemirror/addon/edit/closebrackets.js | 159 + .../codemirror/addon/edit/closetag.js | 159 + .../codemirror/addon/edit/continuelist.js | 51 + .../codemirror/addon/edit/matchbrackets.js | 120 + .../codemirror/addon/edit/matchtags.js | 66 + .../codemirror/addon/edit/trailingspace.js | 27 + .../codemirror/addon/fold/brace-fold.js | 105 + .../codemirror/addon/fold/comment-fold.js | 57 + .../codemirror/addon/fold/foldcode.js | 145 + .../codemirror/addon/fold/foldgutter.css | 20 + .../codemirror/addon/fold/foldgutter.js | 134 + .../codemirror/addon/fold/indent-fold.js | 44 + .../codemirror/addon/fold/markdown-fold.js | 49 + .../codemirror/addon/fold/xml-fold.js | 182 + .../codemirror/addon/hint/anyword-hint.js | 42 + .../codemirror/addon/hint/css-hint.js | 56 + .../codemirror/addon/hint/html-hint.js | 348 + .../codemirror/addon/hint/javascript-hint.js | 141 + .../codemirror/addon/hint/python-hint.js | 102 + .../codemirror/addon/hint/show-hint.css | 38 + .../codemirror/addon/hint/show-hint.js | 389 + .../codemirror/addon/hint/sql-hint.js | 194 + .../codemirror/addon/hint/xml-hint.js | 111 + .../addon/lint/coffeescript-lint.js | 41 + .../codemirror/addon/lint/css-lint.js | 35 + .../codemirror/addon/lint/javascript-lint.js | 136 + .../codemirror/addon/lint/json-lint.js | 31 + .../codemirror/codemirror/addon/lint/lint.css | 73 + .../codemirror/codemirror/addon/lint/lint.js | 204 + .../codemirror/addon/lint/yaml-lint.js | 28 + .../codemirror/addon/merge/merge.css | 98 + .../codemirror/addon/merge/merge.js | 536 + .../codemirror/addon/mode/loadmode.js | 64 + .../codemirror/addon/mode/multiplex.js | 118 + .../codemirror/addon/mode/multiplex_test.js | 33 + .../codemirror/addon/mode/overlay.js | 85 + .../codemirror/addon/mode/simple.js | 210 + .../codemirror/addon/runmode/colorize.js | 40 + .../addon/runmode/runmode-standalone.js | 157 + .../codemirror/addon/runmode/runmode.js | 72 + .../codemirror/addon/runmode/runmode.node.js | 120 + .../codemirror/addon/scroll/scrollpastend.js | 46 + .../addon/search/match-highlighter.js | 128 + .../codemirror/addon/search/search.js | 159 + .../codemirror/addon/search/searchcursor.js | 189 + .../codemirror/addon/selection/active-line.js | 71 + .../addon/selection/mark-selection.js | 118 + .../codemirror/codemirror/addon/tern/tern.css | 86 + .../codemirror/codemirror/addon/tern/tern.js | 668 ++ .../codemirror/addon/tern/worker.js | 44 + .../codemirror/addon/wrap/hardwrap.js | 139 + .../codemirror/codemirror/bin/authors.sh | 6 + .../codemirror/codemirror/bin/compress | 92 + .../plugins/codemirror/codemirror/bin/lint | 16 + .../plugins/codemirror/codemirror/bin/release | 46 + .../codemirror/bin/source-highlight | 51 + .../codemirror/codemirror/keymap/emacs.js | 393 + .../codemirror/codemirror/keymap/sublime.js | 540 + .../codemirror/codemirror/keymap/vim.js | 4829 ++++++++ .../codemirror/codemirror/lib/codemirror.css | 318 + .../codemirror/codemirror/lib/codemirror.js | 7922 +++++++++++++ .../codemirror/codemirror/mode/clike/clike.js | 884 ++ .../codemirror/mode/clike/index.html | 380 + .../codemirror/mode/clike/scala.html | 767 ++ .../codemirror/codemirror/mode/clike/test.js | 139 + .../codemirror/codemirror/mode/css/css.js | 717 ++ .../mode/htmlembedded/htmlembedded.js | 86 + .../codemirror/mode/htmlembedded/index.html | 58 + .../codemirror/mode/htmlmixed/htmlmixed.js | 121 + .../codemirror/mode/htmlmixed/index.html | 85 + .../codemirror/codemirror/mode/index.html | 128 + .../codemirror/mode/javascript/javascript.js | 684 ++ .../codemirror/mode/markdown/markdown.js | 765 ++ .../codemirror/codemirror/mode/php/index.html | 64 + .../codemirror/codemirror/mode/php/php.js | 234 + .../codemirror/codemirror/mode/php/test.js | 154 + .../codemirror/codemirror/mode/xml/xml.js | 384 + .../codemirror/codemirror/theme/3024-day.css | 38 + .../codemirror/theme/3024-night.css | 37 + .../codemirror/theme/ambiance-mobile.css | 5 + .../codemirror/codemirror/theme/ambiance.css | 77 + .../codemirror/theme/base16-dark.css | 36 + .../codemirror/theme/base16-light.css | 36 + .../codemirror/theme/blackboard.css | 30 + .../codemirror/codemirror/theme/cobalt.css | 23 + .../codemirror/codemirror/theme/eclipse.css | 23 + .../codemirror/codemirror/theme/elegant.css | 13 + .../codemirror/theme/erlang-dark.css | 32 + .../codemirror/theme/lesser-dark.css | 45 + .../codemirror/codemirror/theme/mbo.css | 35 + .../codemirror/codemirror/theme/mdn-like.css | 44 + .../codemirror/codemirror/theme/midnight.css | 45 + .../codemirror/codemirror/theme/monokai.css | 31 + .../codemirror/codemirror/theme/neat.css | 12 + .../codemirror/codemirror/theme/neo.css | 43 + .../codemirror/codemirror/theme/night.css | 26 + .../codemirror/theme/paraiso-dark.css | 36 + .../codemirror/theme/paraiso-light.css | 36 + .../codemirror/theme/pastel-on-dark.css | 50 + .../codemirror/codemirror/theme/rubyblue.css | 23 + .../codemirror/codemirror/theme/solarized.css | 165 + .../codemirror/theme/the-matrix.css | 28 + .../theme/tomorrow-night-eighties.css | 36 + .../codemirror/codemirror/theme/twilight.css | 30 + .../codemirror/theme/vibrant-ink.css | 32 + .../codemirror/codemirror/theme/xq-dark.css | 51 + .../codemirror/codemirror/theme/xq-light.css | 43 + .../tinymce/plugins/codemirror/langs/de.js | 8 + .../tinymce/plugins/codemirror/langs/en.js | 8 + .../tinymce/plugins/codemirror/langs/es.js | 8 + .../tinymce/plugins/codemirror/langs/fr_FR.js | 8 + .../tinymce/plugins/codemirror/langs/pt_BR.js | 8 + .../tinymce/plugins/codemirror/plugin.js | 124 + .../tinymce/plugins/codemirror/plugin.min.js | 1 + .../tinymce/plugins/codemirror/source.html | 293 + .../tinymce/plugins/colorpicker/plugin.min.js | 9 + .../tinymce/plugins/contextmenu/plugin.min.js | 9 + .../plugins/directionality/plugin.min.js | 9 + .../plugins/emoticons/js/emojiimages.js | 9424 ++++++++++++++++ .../plugins/emoticons/js/emojiimages.min.js | 3 + .../tinymce/plugins/emoticons/js/emojis.js | 9423 ++++++++++++++++ .../plugins/emoticons/js/emojis.min.js | 2 + .../tinymce/plugins/emoticons/plugin.min.js | 9 + .../tinymce/plugins/fullscreen/plugin.min.js | 9 + core/vendor/tinymce/plugins/hr/plugin.min.js | 9 + .../tinymce/plugins/image/plugin.min.js | 9 + .../tinymce/plugins/imagetools/plugin.min.js | 9 + .../vendor/tinymce/plugins/link/plugin.min.js | 9 + .../tinymce/plugins/lists/plugin.min.js | 9 + .../tinymce/plugins/media/plugin.min.js | 9 + .../tinymce/plugins/nonbreaking/plugin.min.js | 9 + .../tinymce/plugins/paste/plugin.min.js | 9 + .../plugins/searchreplace/plugin.min.js | 9 + .../tinymce/plugins/tabfocus/plugin.min.js | 9 + .../tinymce/plugins/table/plugin.min.js | 9 + .../tinymce/plugins/template/plugin.min.js | 9 + .../tinymce/plugins/textcolor/plugin.min.js | 9 + .../tinymce/plugins/textpattern/plugin.min.js | 9 + .../plugins/visualblocks/plugin.min.js | 9 + .../skins/content/dark/content.min.css | 7 + .../skins/content/default/content.min.css | 7 + .../skins/content/document/content.min.css | 7 + .../skins/content/writer/content.min.css | 7 + .../ui/oxide-dark/content.inline.min.css | 7 + .../skins/ui/oxide-dark/content.min.css | 7 + .../ui/oxide-dark/content.mobile.min.css | 7 + .../ui/oxide-dark/fonts/tinymce-mobile.woff | Bin 0 -> 4624 bytes .../tinymce/skins/ui/oxide-dark/skin.min.css | 7 + .../skins/ui/oxide-dark/skin.mobile.min.css | 7 + .../ui/oxide-dark/skin.shadowdom.min.css | 7 + .../skins/ui/oxide/content.inline.min.css | 7 + .../tinymce/skins/ui/oxide/content.min.css | 7 + .../skins/ui/oxide/content.mobile.min.css | 7 + .../skins/ui/oxide/fonts/tinymce-mobile.woff | Bin 0 -> 4624 bytes .../tinymce/skins/ui/oxide/skin.min.css | 7 + .../skins/ui/oxide/skin.mobile.min.css | 7 + .../skins/ui/oxide/skin.shadowdom.min.css | 7 + core/vendor/tinymce/templates/accordion.html | 15 + core/vendor/tinymce/templates/block.html | 4 + core/vendor/tinymce/templates/col10-2.html | 8 + core/vendor/tinymce/templates/col2-10.html | 8 + core/vendor/tinymce/templates/col3.html | 14 + core/vendor/tinymce/templates/col4-8.html | 8 + core/vendor/tinymce/templates/col4.html | 11 + core/vendor/tinymce/templates/col6.html | 8 + core/vendor/tinymce/templates/col8-4.html | 8 + .../vendor/tinymce/themes/mobile/theme.min.js | 9 + .../vendor/tinymce/themes/silver/theme.min.js | 9 + core/vendor/tinymce/tinymce.d.ts | 3036 +++++ core/vendor/tinymce/tinymce.min.js | 9 + core/vendor/tippy/inc.json | 5 + core/vendor/tippy/init.js | 49 + core/vendor/tippy/tippy.min.css | 1 + core/vendor/tippy/tippy.min.js | 1 + core/vendor/zwiico/css/animation.css | 85 + core/vendor/zwiico/css/zwiico-codes.css | 75 + core/vendor/zwiico/css/zwiico-embedded.css | 133 + core/vendor/zwiico/css/zwiico-ie7-codes.css | 75 + core/vendor/zwiico/css/zwiico-ie7.css | 86 + core/vendor/zwiico/css/zwiico.css | 130 + core/vendor/zwiico/font/zwiico.eot | Bin 0 -> 26976 bytes core/vendor/zwiico/font/zwiico.svg | 158 + core/vendor/zwiico/font/zwiico.ttf | Bin 0 -> 26816 bytes core/vendor/zwiico/font/zwiico.woff | Bin 0 -> 16892 bytes core/vendor/zwiico/font/zwiico.woff2 | Bin 0 -> 14380 bytes core/vendor/zwiico/ico/favicon.ico | Bin 0 -> 5430 bytes core/vendor/zwiico/ico/faviconDark.ico | Bin 0 -> 1150 bytes core/vendor/zwiico/inc.json | 4 + core/vendor/zwiico/init.css | 98 + core/vendor/zwiico/png/alpha/a.png | Bin 0 -> 16644 bytes core/vendor/zwiico/png/alpha/b.png | Bin 0 -> 27907 bytes core/vendor/zwiico/png/alpha/c.png | Bin 0 -> 22094 bytes core/vendor/zwiico/png/alpha/d.png | Bin 0 -> 25235 bytes core/vendor/zwiico/png/alpha/e.png | Bin 0 -> 12533 bytes core/vendor/zwiico/png/alpha/f.png | Bin 0 -> 12925 bytes core/vendor/zwiico/png/alpha/g.png | Bin 0 -> 43412 bytes core/vendor/zwiico/png/alpha/h.png | Bin 0 -> 29229 bytes core/vendor/zwiico/png/alpha/i.png | Bin 0 -> 15444 bytes core/vendor/zwiico/png/alpha/j.png | Bin 0 -> 30029 bytes core/vendor/zwiico/png/alpha/k.png | Bin 0 -> 12432 bytes core/vendor/zwiico/png/alpha/l.png | Bin 0 -> 13849 bytes core/vendor/zwiico/png/alpha/m.png | Bin 0 -> 8553 bytes core/vendor/zwiico/png/alpha/n.png | Bin 0 -> 13036 bytes core/vendor/zwiico/png/alpha/o.png | Bin 0 -> 11138 bytes core/vendor/zwiico/png/alpha/p.png | Bin 0 -> 41542 bytes core/vendor/zwiico/png/alpha/q.png | Bin 0 -> 15076 bytes core/vendor/zwiico/png/alpha/r.png | Bin 0 -> 41979 bytes core/vendor/zwiico/png/alpha/s.png | Bin 0 -> 47070 bytes core/vendor/zwiico/png/alpha/t.png | Bin 0 -> 8418 bytes core/vendor/zwiico/png/alpha/u.png | Bin 0 -> 15697 bytes core/vendor/zwiico/png/num/a.png | Bin 0 -> 101086 bytes core/vendor/zwiico/png/num/b.png | Bin 0 -> 96296 bytes core/vendor/zwiico/png/num/c.png | Bin 0 -> 95346 bytes core/vendor/zwiico/png/num/d.png | Bin 0 -> 98493 bytes core/vendor/zwiico/png/num/e.png | Bin 0 -> 98114 bytes core/vendor/zwiico/png/num/f.png | Bin 0 -> 87622 bytes core/vendor/zwiico/png/num/g.png | Bin 0 -> 78014 bytes core/vendor/zwiico/png/num/h.png | Bin 0 -> 101888 bytes core/vendor/zwiico/png/num/i.png | Bin 0 -> 99582 bytes core/vendor/zwiico/png/num/j.png | Bin 0 -> 75978 bytes core/vendor/zwiico/png/num/k.png | Bin 0 -> 90018 bytes core/vendor/zwiico/png/num/l.png | Bin 0 -> 89667 bytes core/vendor/zwiico/png/num/m.png | Bin 0 -> 105957 bytes core/vendor/zwiico/png/num/n.png | Bin 0 -> 108273 bytes core/vendor/zwiico/png/num/o.png | Bin 0 -> 95082 bytes core/vendor/zwiico/png/num/p.png | Bin 0 -> 88075 bytes core/vendor/zwiico/png/num/q.png | Bin 0 -> 91332 bytes core/vendor/zwiico/png/num/r.png | Bin 0 -> 101874 bytes core/vendor/zwiico/png/num/s.png | Bin 0 -> 103052 bytes core/vendor/zwiico/png/num/t.png | Bin 0 -> 86317 bytes core/vendor/zwiico/png/num/u.png | Bin 0 -> 98204 bytes index.php | 50 + module/blog/blog.php | 923 ++ module/blog/changes.md | 36 + module/blog/enum.json | 1 + module/blog/i18n/de.json | 53 + module/blog/i18n/en_EN.json | 53 + module/blog/i18n/es.json | 53 + module/blog/i18n/fr_FR.json | 53 + module/blog/i18n/gr_GR.json | 53 + module/blog/i18n/it.json | 53 + module/blog/i18n/pt_PT.json | 53 + module/blog/i18n/tr_TR.json | 53 + module/blog/profil/main/add.inc.php | 18 + module/blog/profil/main/edit.inc.php | 18 + module/blog/profil/view/add.inc.php | 37 + module/blog/profil/view/edit.inc.php | 53 + module/blog/ressource/feed-icon-16.gif | Bin 0 -> 652 bytes module/blog/vendor/FeedWriter/ATOM.php | 38 + module/blog/vendor/FeedWriter/Feed.php | 1017 ++ .../FeedWriter/InvalidOperationException.php | 33 + module/blog/vendor/FeedWriter/Item.php | 413 + module/blog/vendor/FeedWriter/README.md | 42 + module/blog/vendor/FeedWriter/RSS1.php | 37 + module/blog/vendor/FeedWriter/RSS2.php | 37 + module/blog/vendor/furl/LICENSE | 21 + module/blog/vendor/furl/README.md | 4 + module/blog/vendor/furl/inc.json | 3 + module/blog/vendor/furl/jquery.furl.js | 76 + module/blog/view/add/add.css | 18 + module/blog/view/add/add.js.php | 58 + module/blog/view/add/add.php | 137 + module/blog/view/article/article.css | 63 + module/blog/view/article/article.js.php | 44 + module/blog/view/article/article.php | 157 + module/blog/view/comment/comment.css | 18 + module/blog/view/comment/comment.js.php | 61 + module/blog/view/comment/comment.php | 22 + module/blog/view/config/config.css | 18 + module/blog/view/config/config.js.php | 23 + module/blog/view/config/config.php | 37 + module/blog/view/edit/edit.css | 18 + module/blog/view/edit/edit.js.php | 71 + module/blog/view/edit/edit.php | 153 + module/blog/view/index/index.css | 154 + module/blog/view/index/index.php | 167 + module/blog/view/option/option.css | 18 + module/blog/view/option/option.php | 71 + module/blog/view/rss/rss.php | 1 + module/form/changes.md | 29 + module/form/enum.json | 1 + module/form/form.php | 550 + module/form/i18n/de.json | 52 + module/form/i18n/en_EN.json | 52 + module/form/i18n/es.json | 52 + module/form/i18n/fr_FR.json | 52 + module/form/i18n/gr_GR.json | 52 + module/form/i18n/it.json | 52 + module/form/i18n/pt_PT.json | 52 + module/form/i18n/tr_TR.json | 52 + module/form/profil/main/add.inc.php | 12 + module/form/profil/main/edit.inc.php | 8 + module/form/profil/view/add.inc.php | 26 + module/form/profil/view/edit.inc.php | 36 + module/form/ressource/defaultdata.php | 19 + .../vendor/html-sortable/html-sortable.min.js | 1 + module/form/vendor/html-sortable/inc.json | 3 + module/form/vendor/html-sortable/lisezmoi.txt | 1 + module/form/view/config/config.css | 19 + module/form/view/config/config.js.php | 152 + module/form/view/config/config.php | 97 + module/form/view/data/data.css | 18 + module/form/view/data/data.js.php | 34 + module/form/view/data/data.php | 33 + module/form/view/index/index.css | 31 + module/form/view/index/index.js.php | 21 + module/form/view/index/index.php | 80 + module/form/view/option/option.css | 18 + module/form/view/option/option.js.php | 72 + module/form/view/option/option.php | 156 + module/gallery/changes.md | 14 + module/gallery/enum.json | 1 + module/gallery/gallery.php | 1058 ++ module/gallery/i18n/de.json | 39 + module/gallery/i18n/en_EN.json | 39 + module/gallery/i18n/es.json | 39 + module/gallery/i18n/fr_FR.json | 39 + module/gallery/i18n/gr_GR.json | 39 + module/gallery/i18n/it.json | 39 + module/gallery/i18n/pt_PT.json | 39 + module/gallery/i18n/tr_TR.json | 39 + module/gallery/profil/main/add.inc.php | 12 + module/gallery/profil/main/edit.inc.php | 12 + module/gallery/profil/view/add.inc.php | 26 + module/gallery/profil/view/edit.inc.php | 36 + module/gallery/ressource/defaultdata.php | 25 + module/gallery/ressource/theme.css | 52 + module/gallery/ressource/vartheme.css | 27 + .../gallery/vendor/tablednd/MIT-LICENSE.txt | 22 + module/gallery/vendor/tablednd/inc.json | 3 + module/gallery/vendor/tablednd/lisez-moi.txt | 2 + .../gallery/vendor/tablednd/tablednd.min.js | 2 + module/gallery/view/add/add.css | 19 + module/gallery/view/add/add.js.php | 88 + module/gallery/view/add/add.php | 66 + module/gallery/view/config/config.css | 24 + module/gallery/view/config/config.js.php | 47 + module/gallery/view/config/config.php | 44 + module/gallery/view/edit/edit.css | 18 + module/gallery/view/edit/edit.js.php | 87 + module/gallery/view/edit/edit.php | 35 + module/gallery/view/gallery/gallery.css | 14 + module/gallery/view/gallery/gallery.js.php | 31 + module/gallery/view/gallery/gallery.php | 33 + module/gallery/view/index/index.php | 17 + module/gallery/view/option/option.css | 18 + module/gallery/view/option/option.js.php | 68 + module/gallery/view/option/option.php | 120 + module/gallery/view/theme/theme.css | 18 + module/gallery/view/theme/theme.php | 134 + module/news/changes.md | 24 + module/news/enum.json | 1 + module/news/i18n/de.json | 43 + module/news/i18n/en_EN.json | 43 + module/news/i18n/es.json | 43 + module/news/i18n/fr_FR.json | 43 + module/news/i18n/gr_GR.json | 43 + module/news/i18n/it.json | 43 + module/news/i18n/pt_PT.json | 43 + module/news/i18n/tr_TR.json | 43 + module/news/news.php | 667 ++ module/news/profil/main/add.inc.php | 10 + module/news/profil/main/edit.inc.php | 10 + module/news/profil/view/add.inc.php | 24 + module/news/profil/view/edit.inc.php | 32 + module/news/ressource/defaultdata.php | 22 + module/news/ressource/feed-icon-16.gif | Bin 0 -> 652 bytes module/news/vendor/FeedWriter/ATOM.php | 38 + module/news/vendor/FeedWriter/Feed.php | 1017 ++ .../FeedWriter/InvalidOperationException.php | 33 + module/news/vendor/FeedWriter/Item.php | 413 + module/news/vendor/FeedWriter/README.md | 42 + module/news/vendor/FeedWriter/RSS1.php | 37 + module/news/vendor/FeedWriter/RSS2.php | 37 + module/news/view/add/add.css | 18 + module/news/view/add/add.js.php | 20 + module/news/view/add/add.php | 70 + module/news/view/article/article.css | 20 + module/news/view/article/article.php | 37 + module/news/view/config/config.css | 18 + module/news/view/config/config.js.php | 23 + module/news/view/config/config.php | 36 + module/news/view/edit/edit.css | 18 + module/news/view/edit/edit.js.php | 20 + module/news/view/edit/edit.php | 72 + module/news/view/index/index.css | 48 + module/news/view/index/index.php | 61 + module/news/view/option/option.css | 18 + module/news/view/option/option.php | 107 + module/news/view/rss/rss.php | 1 + module/redirection/changes.md | 6 + module/redirection/enum.json | 1 + module/redirection/i18n/de.json | 5 + module/redirection/i18n/en_EN.json | 5 + module/redirection/i18n/es.json | 5 + module/redirection/i18n/fr_FR.json | 5 + module/redirection/i18n/gr_GR.json | 5 + module/redirection/i18n/it.json | 5 + module/redirection/i18n/pt_PT.json | 5 + module/redirection/i18n/tr_TR.json | 5 + module/redirection/profil/main/add.inc.php | 3 + module/redirection/profil/main/edit.inc.php | 3 + module/redirection/profil/view/add.inc.php | 14 + module/redirection/profil/view/edit.inc.php | 16 + module/redirection/redirection.php | 83 + module/redirection/view/config/config.css | 18 + module/redirection/view/config/config.php | 44 + module/redirection/view/index/index.css | 18 + module/redirection/view/index/index.js.php | 32 + module/redirection/view/index/index.php | 1 + module/search/changes.md | 12 + module/search/enum.json | 1 + module/search/i18n/de.json | 13 + module/search/i18n/en_EN.json | 13 + module/search/i18n/es.json | 13 + module/search/i18n/fr_FR.json | 13 + module/search/i18n/gr_GR.json | 13 + module/search/i18n/it.json | 13 + module/search/i18n/pt_PT.json | 13 + module/search/i18n/tr_TR.json | 13 + module/search/profil/main/add.inc.php | 3 + module/search/profil/main/edit.inc.php | 3 + module/search/profil/view/add.inc.php | 14 + module/search/profil/view/edit.inc.php | 16 + module/search/ressource/defaultdata.php | 13 + module/search/search.php | 362 + module/search/view/config/config.css | 17 + module/search/view/config/config.php | 70 + module/search/view/index/index.css | 17 + module/search/view/index/index.php | 41 + module/slider/changes.md | 6 + module/slider/enum.json | 1 + module/slider/i18n/de.json | 5 + module/slider/i18n/en_EN.json | 5 + module/slider/i18n/es.json | 5 + module/slider/i18n/fr_FR.json | 5 + module/slider/i18n/gr_GR.json | 5 + module/slider/i18n/it.json | 5 + module/slider/i18n/pt_PT.json | 5 + module/slider/i18n/tr_TR.json | 5 + module/slider/profil/main/add.inc.php | 7 + module/slider/profil/main/edit.inc.php | 7 + module/slider/profil/view/add.inc.php | 22 + module/slider/profil/view/edit.inc.php | 22 + module/slider/slider.php | 465 + module/slider/vendor/slider/inc.json | 3 + module/slider/vendor/slider/slider.js | 10 + module/slider/view/config/config.css | 22 + module/slider/view/config/config.php | 54 + module/slider/view/index/black.gif | Bin 0 -> 359 bytes module/slider/view/index/index.css | 236 + module/slider/view/index/index.js.php | 61 + module/slider/view/index/index.php | 26 + module/slider/view/index/white.gif | Bin 0 -> 1219 bytes module/slider/view/theme/theme.css | 17 + module/slider/view/theme/theme.js.php | 51 + module/slider/view/theme/theme.php | 78 + module/slider/view/update/update.css | 22 + module/slider/view/update/update.js.php | 52 + module/slider/view/update/update.php | 36 + site/i18n/.htaccess | 5 + 980 files changed, 137078 insertions(+) create mode 100644 .gitignore create mode 100644 .htaccess create mode 100644 CHANGES.md create mode 100644 LICENSE create mode 100644 LISEZMOI.md create mode 100644 core/class/.htaccess create mode 100644 core/class/autoload.php create mode 100644 core/class/helper.class.php create mode 100644 core/class/jsondb/Dot.class.php create mode 100644 core/class/jsondb/JsonDb.class.php create mode 100644 core/class/jsondb/LICENSE.md create mode 100644 core/class/jsondb/README.md create mode 100644 core/class/layout.class.php create mode 100644 core/class/phpmailer/.htaccess create mode 100644 core/class/phpmailer/Exception.class.php create mode 100644 core/class/phpmailer/PHPMailer.class.php create mode 100644 core/class/phpmailer/SMTP.class.php create mode 100644 core/class/phpmailer/i18n/phpmailer.lang-de.php create mode 100644 core/class/phpmailer/i18n/phpmailer.lang-el.php create mode 100644 core/class/phpmailer/i18n/phpmailer.lang-es.php create mode 100644 core/class/phpmailer/i18n/phpmailer.lang-fr.php create mode 100644 core/class/phpmailer/i18n/phpmailer.lang-it.php create mode 100644 core/class/phpmailer/i18n/phpmailer.lang-pt.php create mode 100644 core/class/phpmailer/i18n/phpmailer.lang-tr.php create mode 100644 core/class/router.class.php create mode 100644 core/class/sitemap/FileSystem.class.php create mode 100644 core/class/sitemap/Runtime.class.php create mode 100644 core/class/sitemap/SitemapGenerator.class.php create mode 100644 core/class/strftime/php-8.1-strftime.class.php create mode 100644 core/class/template.class.php create mode 100644 core/core.js.php create mode 100644 core/core.php create mode 100644 core/include/checkup.php create mode 100644 core/include/update.inc.php create mode 100644 core/layout/blank.css create mode 100644 core/layout/blank.php create mode 100644 core/layout/common.css create mode 100644 core/layout/light.css create mode 100644 core/layout/light.php create mode 100644 core/layout/mail.php create mode 100644 core/layout/main.php create mode 100644 core/module/config/config.php create mode 100644 core/module/config/ressource/ajax-loader.png create mode 100644 core/module/config/view/backup/backup.css create mode 100644 core/module/config/view/backup/backup.js.php create mode 100644 core/module/config/view/backup/backup.php create mode 100644 core/module/config/view/connect/connect.php create mode 100644 core/module/config/view/index/index.css create mode 100644 core/module/config/view/index/index.js.php create mode 100644 core/module/config/view/index/index.php create mode 100644 core/module/config/view/locale/locale.css create mode 100644 core/module/config/view/locale/locale.php create mode 100644 core/module/config/view/network/network.php create mode 100644 core/module/config/view/restore/restore.css create mode 100644 core/module/config/view/restore/restore.js.php create mode 100644 core/module/config/view/restore/restore.php create mode 100644 core/module/config/view/script/script.css create mode 100644 core/module/config/view/script/script.php create mode 100644 core/module/config/view/setup/setup.php create mode 100644 core/module/config/view/social/social.php create mode 100644 core/module/dashboard/dashboard.php create mode 100644 core/module/dashboard/view/index/index.php create mode 100644 core/module/install/install.php create mode 100644 core/module/install/ressource/.htaccess create mode 100644 core/module/install/ressource/defaultdata.php create mode 100644 core/module/install/ressource/files.tar.gz create mode 100644 core/module/install/ressource/i18n/en_EN.json create mode 100644 core/module/install/ressource/i18n/es.json create mode 100644 core/module/install/ressource/i18n/fr_FR.json create mode 100644 core/module/install/ressource/themes/theme_affaire.zip create mode 100644 core/module/install/ressource/themes/theme_moderne.zip create mode 100644 core/module/install/ressource/themes/theme_old_facebook.zip create mode 100644 core/module/install/ressource/themes/theme_orange_black.zip create mode 100644 core/module/install/ressource/themes/themes.json create mode 100644 core/module/install/view/index/index.css create mode 100644 core/module/install/view/index/index.php create mode 100644 core/module/install/view/postinstall/postinstall.css create mode 100644 core/module/install/view/postinstall/postinstall.js.php create mode 100644 core/module/install/view/postinstall/postinstall.php create mode 100644 core/module/install/view/update/update.css create mode 100644 core/module/install/view/update/update.js.php create mode 100644 core/module/install/view/update/update.php create mode 100644 core/module/language/language.php create mode 100644 core/module/language/view/add/add.css create mode 100644 core/module/language/view/add/add.php create mode 100644 core/module/language/view/copy/copy.css create mode 100644 core/module/language/view/copy/copy.php create mode 100644 core/module/language/view/edit/edit.css create mode 100644 core/module/language/view/edit/edit.php create mode 100644 core/module/language/view/index/index.css create mode 100644 core/module/language/view/index/index.js.php create mode 100644 core/module/language/view/index/index.php create mode 100644 core/module/language/view/store/store.php create mode 100644 core/module/language/view/update/update.php create mode 100644 core/module/maintenance/maintenance.php create mode 100644 core/module/maintenance/view/index/index.css create mode 100644 core/module/maintenance/view/index/index.php create mode 100644 core/module/page/page.php create mode 100644 core/module/page/view/cssEditor/cssEditor.css create mode 100644 core/module/page/view/cssEditor/cssEditor.php create mode 100644 core/module/page/view/edit/edit.css create mode 100644 core/module/page/view/edit/edit.js.php create mode 100644 core/module/page/view/edit/edit.php create mode 100644 core/module/page/view/jsEditor/jsEditor.css create mode 100644 core/module/page/view/jsEditor/jsEditor.php create mode 100644 core/module/plugin/plugin.php create mode 100644 core/module/plugin/view/dataImport/dataImport.css create mode 100644 core/module/plugin/view/dataImport/dataImport.php create mode 100644 core/module/plugin/view/index/index.css create mode 100644 core/module/plugin/view/index/index.js.php create mode 100644 core/module/plugin/view/index/index.php create mode 100644 core/module/plugin/view/item/item.css create mode 100644 core/module/plugin/view/item/item.php create mode 100644 core/module/plugin/view/store/store.css create mode 100644 core/module/plugin/view/store/store.php create mode 100644 core/module/plugin/view/upload/upload.css create mode 100644 core/module/plugin/view/upload/upload.php create mode 100644 core/module/sitemap/sitemap.php create mode 100644 core/module/sitemap/view/index/index.css create mode 100644 core/module/sitemap/view/index/index.php create mode 100644 core/module/theme/resource/custom.css create mode 100644 core/module/theme/theme.php create mode 100644 core/module/theme/view/admin/admin.css create mode 100644 core/module/theme/view/admin/admin.js.php create mode 100644 core/module/theme/view/admin/admin.php create mode 100644 core/module/theme/view/advanced/advanced.css create mode 100644 core/module/theme/view/advanced/advanced.js.php create mode 100644 core/module/theme/view/advanced/advanced.php create mode 100644 core/module/theme/view/body/body.css create mode 100644 core/module/theme/view/body/body.js.php create mode 100644 core/module/theme/view/body/body.php create mode 100644 core/module/theme/view/font/font.css create mode 100644 core/module/theme/view/font/font.js.php create mode 100644 core/module/theme/view/font/font.php create mode 100644 core/module/theme/view/fontAdd/fontAdd.css create mode 100644 core/module/theme/view/fontAdd/fontAdd.js.php create mode 100644 core/module/theme/view/fontAdd/fontAdd.php create mode 100644 core/module/theme/view/fontEdit/fontEdit.css create mode 100644 core/module/theme/view/fontEdit/fontEdit.js.php create mode 100644 core/module/theme/view/fontEdit/fontEdit.php create mode 100644 core/module/theme/view/footer/footer.css create mode 100644 core/module/theme/view/footer/footer.js.php create mode 100644 core/module/theme/view/footer/footer.php create mode 100644 core/module/theme/view/header/header.css create mode 100644 core/module/theme/view/header/header.js.php create mode 100644 core/module/theme/view/header/header.php create mode 100644 core/module/theme/view/index/index.css create mode 100644 core/module/theme/view/index/index.js.php create mode 100644 core/module/theme/view/index/index.php create mode 100644 core/module/theme/view/manage/manage.css create mode 100644 core/module/theme/view/manage/manage.js.php create mode 100644 core/module/theme/view/manage/manage.php create mode 100644 core/module/theme/view/menu/menu.css create mode 100644 core/module/theme/view/menu/menu.js.php create mode 100644 core/module/theme/view/menu/menu.php create mode 100644 core/module/theme/view/site/site.css create mode 100644 core/module/theme/view/site/site.js.php create mode 100644 core/module/theme/view/site/site.php create mode 100644 core/module/user/ressource/.htaccess create mode 100644 core/module/user/ressource/template.csv create mode 100644 core/module/user/user.php create mode 100644 core/module/user/view/add/add.css create mode 100644 core/module/user/view/add/add.js.php create mode 100644 core/module/user/view/add/add.php create mode 100644 core/module/user/view/edit/edit.css create mode 100644 core/module/user/view/edit/edit.js.php create mode 100644 core/module/user/view/edit/edit.php create mode 100644 core/module/user/view/forgot/forgot.css create mode 100644 core/module/user/view/forgot/forgot.php create mode 100644 core/module/user/view/import/import.css create mode 100644 core/module/user/view/import/import.php create mode 100644 core/module/user/view/index/index.css create mode 100644 core/module/user/view/index/index.js.php create mode 100644 core/module/user/view/index/index.php create mode 100644 core/module/user/view/login/login.css create mode 100644 core/module/user/view/login/login.js.php create mode 100644 core/module/user/view/login/login.php create mode 100644 core/module/user/view/profil/profil.css create mode 100644 core/module/user/view/profil/profil.js.php create mode 100644 core/module/user/view/profil/profil.php create mode 100644 core/module/user/view/profilAdd/profilAdd.css create mode 100644 core/module/user/view/profilAdd/profilAdd.js.php create mode 100644 core/module/user/view/profilAdd/profilAdd.php create mode 100644 core/module/user/view/profilEdit/profilEdit.css create mode 100644 core/module/user/view/profilEdit/profilEdit.js.php create mode 100644 core/module/user/view/profilEdit/profilEdit.php create mode 100644 core/module/user/view/reset/reset.css create mode 100644 core/module/user/view/reset/reset.php create mode 100644 core/vendor/codemirror/codemirror.css create mode 100644 core/vendor/codemirror/codemirror.js create mode 100644 core/vendor/codemirror/inc.json create mode 100644 core/vendor/codemirror/init.css create mode 100644 core/vendor/codemirror/init.js create mode 100644 core/vendor/codemirror/mode/css/css.js create mode 100644 core/vendor/codemirror/mode/htmlembedded/htmlembedded.js create mode 100644 core/vendor/codemirror/mode/htmlmixed/htmlmixed.js create mode 100644 core/vendor/codemirror/mode/javascript/javascript.js create mode 100644 core/vendor/favicon-switcher/favicon-switcher.js create mode 100644 core/vendor/filemanager/UploadHandler.php create mode 100644 core/vendor/filemanager/ajax_calls.php create mode 100644 core/vendor/filemanager/callback.js create mode 100644 core/vendor/filemanager/config/.htaccess create mode 100644 core/vendor/filemanager/config/config.php create mode 100644 core/vendor/filemanager/css/jplayer.blue.monday.min.css create mode 100644 core/vendor/filemanager/css/jquery.fileupload-noscript.css create mode 100644 core/vendor/filemanager/css/jquery.fileupload-ui-noscript.css create mode 100644 core/vendor/filemanager/css/jquery.fileupload-ui.css create mode 100644 core/vendor/filemanager/css/jquery.fileupload.css create mode 100644 core/vendor/filemanager/css/rtl-style.css create mode 100644 core/vendor/filemanager/css/style.css create mode 100644 core/vendor/filemanager/css/tui-color-picker.css create mode 100644 core/vendor/filemanager/css/tui-image-editor.css create mode 100644 core/vendor/filemanager/dialog.php create mode 100644 core/vendor/filemanager/execute.php create mode 100644 core/vendor/filemanager/force_download.php create mode 100644 core/vendor/filemanager/img/clipboard_apply.png create mode 100644 core/vendor/filemanager/img/clipboard_clear.png create mode 100644 core/vendor/filemanager/img/copy.png create mode 100644 core/vendor/filemanager/img/cut.png create mode 100644 core/vendor/filemanager/img/date.png create mode 100644 core/vendor/filemanager/img/dimension.png create mode 100644 core/vendor/filemanager/img/down.png create mode 100644 core/vendor/filemanager/img/download.png create mode 100644 core/vendor/filemanager/img/duplicate.png create mode 100644 core/vendor/filemanager/img/edit_img.png create mode 100644 core/vendor/filemanager/img/file_edit.png create mode 100644 core/vendor/filemanager/img/glyphicons-halflings-white.png create mode 100644 core/vendor/filemanager/img/glyphicons-halflings.png create mode 100644 core/vendor/filemanager/img/ico/ac3.jpg create mode 100644 core/vendor/filemanager/img/ico/accdb.jpg create mode 100644 core/vendor/filemanager/img/ico/ade.jpg create mode 100644 core/vendor/filemanager/img/ico/adp.jpg create mode 100644 core/vendor/filemanager/img/ico/ai.jpg create mode 100644 core/vendor/filemanager/img/ico/aiff.jpg create mode 100644 core/vendor/filemanager/img/ico/avi.jpg create mode 100644 core/vendor/filemanager/img/ico/bmp.jpg create mode 100644 core/vendor/filemanager/img/ico/c4d.jpg create mode 100644 core/vendor/filemanager/img/ico/css.jpg create mode 100644 core/vendor/filemanager/img/ico/csv.jpg create mode 100644 core/vendor/filemanager/img/ico/default.jpg create mode 100644 core/vendor/filemanager/img/ico/dmg.jpg create mode 100644 core/vendor/filemanager/img/ico/doc.jpg create mode 100644 core/vendor/filemanager/img/ico/docx.jpg create mode 100644 core/vendor/filemanager/img/ico/dwg.jpg create mode 100644 core/vendor/filemanager/img/ico/dxf.jpg create mode 100644 core/vendor/filemanager/img/ico/favicon.ico create mode 100644 core/vendor/filemanager/img/ico/fla.jpg create mode 100644 core/vendor/filemanager/img/ico/flv.jpg create mode 100644 core/vendor/filemanager/img/ico/folder.png create mode 100644 core/vendor/filemanager/img/ico/folder_back.png create mode 100644 core/vendor/filemanager/img/ico/gif.jpg create mode 100644 core/vendor/filemanager/img/ico/gz.jpg create mode 100644 core/vendor/filemanager/img/ico/html.jpg create mode 100644 core/vendor/filemanager/img/ico/iso.jpg create mode 100644 core/vendor/filemanager/img/ico/jpeg.jpg create mode 100644 core/vendor/filemanager/img/ico/jpg.jpg create mode 100644 core/vendor/filemanager/img/ico/log.jpg create mode 100644 core/vendor/filemanager/img/ico/m4a.jpg create mode 100644 core/vendor/filemanager/img/ico/mdb.jpg create mode 100644 core/vendor/filemanager/img/ico/mid.jpg create mode 100644 core/vendor/filemanager/img/ico/mov.jpg create mode 100644 core/vendor/filemanager/img/ico/mp3.jpg create mode 100644 core/vendor/filemanager/img/ico/mp4.jpg create mode 100644 core/vendor/filemanager/img/ico/mpeg.jpg create mode 100644 core/vendor/filemanager/img/ico/mpg.jpg create mode 100644 core/vendor/filemanager/img/ico/odb.jpg create mode 100644 core/vendor/filemanager/img/ico/odf.jpg create mode 100644 core/vendor/filemanager/img/ico/odg.jpg create mode 100644 core/vendor/filemanager/img/ico/odp.jpg create mode 100644 core/vendor/filemanager/img/ico/ods.jpg create mode 100644 core/vendor/filemanager/img/ico/odt.jpg create mode 100644 core/vendor/filemanager/img/ico/ogg.jpg create mode 100644 core/vendor/filemanager/img/ico/otg.jpg create mode 100644 core/vendor/filemanager/img/ico/otp.jpg create mode 100644 core/vendor/filemanager/img/ico/ots.jpg create mode 100644 core/vendor/filemanager/img/ico/ott.jpg create mode 100644 core/vendor/filemanager/img/ico/pdf.jpg create mode 100644 core/vendor/filemanager/img/ico/png.jpg create mode 100644 core/vendor/filemanager/img/ico/ppt.jpg create mode 100644 core/vendor/filemanager/img/ico/pptx.jpg create mode 100644 core/vendor/filemanager/img/ico/psd.jpg create mode 100644 core/vendor/filemanager/img/ico/rar.jpg create mode 100644 core/vendor/filemanager/img/ico/rtf.jpg create mode 100644 core/vendor/filemanager/img/ico/skp.jpg create mode 100644 core/vendor/filemanager/img/ico/sql.jpg create mode 100644 core/vendor/filemanager/img/ico/stp.jpg create mode 100644 core/vendor/filemanager/img/ico/svg.jpg create mode 100644 core/vendor/filemanager/img/ico/tar.jpg create mode 100644 core/vendor/filemanager/img/ico/tiff.jpg create mode 100644 core/vendor/filemanager/img/ico/txt.jpg create mode 100644 core/vendor/filemanager/img/ico/vwx.jpg create mode 100644 core/vendor/filemanager/img/ico/wav.jpg create mode 100644 core/vendor/filemanager/img/ico/webm.jpg create mode 100644 core/vendor/filemanager/img/ico/wma.jpg create mode 100644 core/vendor/filemanager/img/ico/xhtml.jpg create mode 100644 core/vendor/filemanager/img/ico/xls.jpg create mode 100644 core/vendor/filemanager/img/ico/xlsx.jpg create mode 100644 core/vendor/filemanager/img/ico/xml.jpg create mode 100644 core/vendor/filemanager/img/ico/zip.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/ac3.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/accdb.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/ade.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/adp.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/ai.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/aiff.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/avi.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/bmp.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/css.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/csv.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/default.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/dmg.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/doc.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/docx.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/favicon.ico create mode 100644 core/vendor/filemanager/img/ico_dark/fla.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/flv.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/folder.png create mode 100644 core/vendor/filemanager/img/ico_dark/folder_back.png create mode 100644 core/vendor/filemanager/img/ico_dark/gif.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/gz.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/html.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/iso.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/jpeg.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/jpg.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/log.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/m4a.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/mdb.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/mid.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/mov.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/mp3.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/mp4.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/mpeg.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/mpg.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/odb.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/odf.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/odg.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/odp.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/ods.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/odt.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/ogg.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/otg.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/otp.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/ots.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/ott.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/pdf.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/png.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/ppt.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/pptx.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/psd.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/rar.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/rtf.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/sql.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/svg.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/tar.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/tiff.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/txt.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/wav.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/webm.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/wma.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/xhtml.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/xls.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/xlsx.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/xml.jpg create mode 100644 core/vendor/filemanager/img/ico_dark/zip.jpg create mode 100644 core/vendor/filemanager/img/info.png create mode 100644 core/vendor/filemanager/img/key.png create mode 100644 core/vendor/filemanager/img/label.png create mode 100644 core/vendor/filemanager/img/loading.gif create mode 100644 core/vendor/filemanager/img/logo.png create mode 100644 core/vendor/filemanager/img/preview.png create mode 100644 core/vendor/filemanager/img/processing.gif create mode 100644 core/vendor/filemanager/img/rename.png create mode 100644 core/vendor/filemanager/img/size.png create mode 100644 core/vendor/filemanager/img/sort.png create mode 100644 core/vendor/filemanager/img/storing_animation.gif create mode 100644 core/vendor/filemanager/img/trans.jpg create mode 100644 core/vendor/filemanager/img/up.png create mode 100644 core/vendor/filemanager/img/upload.png create mode 100644 core/vendor/filemanager/img/url.png create mode 100644 core/vendor/filemanager/img/zip.png create mode 100644 core/vendor/filemanager/inc.json create mode 100644 core/vendor/filemanager/include/FtpClient.php create mode 100644 core/vendor/filemanager/include/FtpException.php create mode 100644 core/vendor/filemanager/include/FtpWrapper.php create mode 100644 core/vendor/filemanager/include/Response.php create mode 100644 core/vendor/filemanager/include/ftp_class.php create mode 100644 core/vendor/filemanager/include/get_png_imageinfo.php create mode 100644 core/vendor/filemanager/include/mime_type_lib.php create mode 100644 core/vendor/filemanager/include/php_image_magician.php create mode 100644 core/vendor/filemanager/include/utils.php create mode 100644 core/vendor/filemanager/index.php create mode 100644 core/vendor/filemanager/js/FileSaver.min.js create mode 100644 core/vendor/filemanager/js/FileSaver.min.js.map create mode 100644 core/vendor/filemanager/js/canvas-to-blob.min.js create mode 100644 core/vendor/filemanager/js/canvas-to-blob.min.js.map create mode 100644 core/vendor/filemanager/js/cors/jquery.postmessage-transport.js create mode 100644 core/vendor/filemanager/js/cors/jquery.xdr-transport.js create mode 100644 core/vendor/filemanager/js/fabric.min.js create mode 100644 core/vendor/filemanager/js/include.js create mode 100644 core/vendor/filemanager/js/jquery-1.12.4.min.js create mode 100644 core/vendor/filemanager/js/jquery.fileupload-angular.js create mode 100644 core/vendor/filemanager/js/jquery.fileupload-audio.js create mode 100644 core/vendor/filemanager/js/jquery.fileupload-image.js create mode 100644 core/vendor/filemanager/js/jquery.fileupload-jquery-ui.js create mode 100644 core/vendor/filemanager/js/jquery.fileupload-process.js create mode 100644 core/vendor/filemanager/js/jquery.fileupload-ui.js create mode 100644 core/vendor/filemanager/js/jquery.fileupload-validate.js create mode 100644 core/vendor/filemanager/js/jquery.fileupload-video.js create mode 100644 core/vendor/filemanager/js/jquery.fileupload.js create mode 100644 core/vendor/filemanager/js/jquery.iframe-transport.js create mode 100644 core/vendor/filemanager/js/jquery.jplayer.min.js create mode 100644 core/vendor/filemanager/js/load-image.all.min.js create mode 100644 core/vendor/filemanager/js/load-image.all.min.js.map create mode 100644 core/vendor/filemanager/js/modernizr.custom.js create mode 100644 core/vendor/filemanager/js/plugins.js create mode 100644 core/vendor/filemanager/js/tmpl.min.js create mode 100644 core/vendor/filemanager/js/tmpl.min.js.map create mode 100644 core/vendor/filemanager/js/tui-code-snippet.min.js create mode 100644 core/vendor/filemanager/js/tui-color-picker.js create mode 100644 core/vendor/filemanager/js/tui-image-editor.js create mode 100644 core/vendor/filemanager/js/vendor/jquery.ui.widget.js create mode 100644 core/vendor/filemanager/lang/de.php create mode 100644 core/vendor/filemanager/lang/en_EN.php create mode 100644 core/vendor/filemanager/lang/es.php create mode 100644 core/vendor/filemanager/lang/fr_FR.php create mode 100644 core/vendor/filemanager/lang/gr_GR.php create mode 100644 core/vendor/filemanager/lang/it.php create mode 100644 core/vendor/filemanager/lang/languages.php create mode 100644 core/vendor/filemanager/lang/pt_PT.php create mode 100644 core/vendor/filemanager/lang/tr_TR.php create mode 100644 core/vendor/filemanager/plugin.min.js create mode 100644 core/vendor/filemanager/svg/icon-a.svg create mode 100644 core/vendor/filemanager/svg/icon-b.svg create mode 100644 core/vendor/filemanager/svg/icon-c.svg create mode 100644 core/vendor/filemanager/svg/icon-d.svg create mode 100644 core/vendor/filemanager/svg/svg.svg create mode 100644 core/vendor/filemanager/upload.php create mode 100644 core/vendor/i18n/png/az_AZ.png create mode 100644 core/vendor/i18n/png/bg_BG.png create mode 100644 core/vendor/i18n/png/de.png create mode 100644 core/vendor/i18n/png/en_EN.png create mode 100644 core/vendor/i18n/png/es.png create mode 100644 core/vendor/i18n/png/fr_FR.png create mode 100644 core/vendor/i18n/png/gr_GR.png create mode 100644 core/vendor/i18n/png/he_IL.png create mode 100644 core/vendor/i18n/png/hr.png create mode 100644 core/vendor/i18n/png/hu_HU.png create mode 100644 core/vendor/i18n/png/id.png create mode 100644 core/vendor/i18n/png/it.png create mode 100644 core/vendor/i18n/png/ja.png create mode 100644 core/vendor/i18n/png/lt.png create mode 100644 core/vendor/i18n/png/nb_NO.png create mode 100644 core/vendor/i18n/png/nl.png create mode 100644 core/vendor/i18n/png/nn_NO.png create mode 100644 core/vendor/i18n/png/pl.png create mode 100644 core/vendor/i18n/png/pt_BR.png create mode 100644 core/vendor/i18n/png/pt_PT.png create mode 100644 core/vendor/i18n/png/ro.png create mode 100644 core/vendor/i18n/png/ru.png create mode 100644 core/vendor/i18n/png/sk.png create mode 100644 core/vendor/i18n/png/sl.png create mode 100644 core/vendor/i18n/png/sv_SE.png create mode 100644 core/vendor/i18n/png/th_TH.png create mode 100644 core/vendor/i18n/png/tr_TR.png create mode 100644 core/vendor/i18n/png/uk_UA.png create mode 100644 core/vendor/i18n/png/vi.png create mode 100644 core/vendor/i18n/png/zh_CN.png create mode 100644 core/vendor/imagemap/image-map.min.js create mode 100644 core/vendor/imagemap/inc.json create mode 100644 core/vendor/imagemap/init.js create mode 100644 core/vendor/imagemap/read.me create mode 100644 core/vendor/jquery/inc.json create mode 100644 core/vendor/jquery/jquery-ui.min.js create mode 100644 core/vendor/jquery/jquery.min.js create mode 100644 core/vendor/lity/inc.json create mode 100644 core/vendor/lity/init.js create mode 100644 core/vendor/lity/lity.min.css create mode 100644 core/vendor/lity/lity.min.js create mode 100644 core/vendor/normalize/inc.json create mode 100644 core/vendor/normalize/normalize.min.css create mode 100644 core/vendor/simplelightbox/inc.json create mode 100644 core/vendor/simplelightbox/init.css create mode 100644 core/vendor/simplelightbox/init.js create mode 100644 core/vendor/simplelightbox/simple-lightbox.jquery.min.js create mode 100644 core/vendor/simplelightbox/simple-lightbox.min.css create mode 100644 core/vendor/tinycolorpicker/inc.json create mode 100644 core/vendor/tinycolorpicker/init.js create mode 100644 core/vendor/tinycolorpicker/jqColorPicker.js.map create mode 100644 core/vendor/tinycolorpicker/jqColorPicker.min.js create mode 100644 core/vendor/tinymce/content.css create mode 100644 core/vendor/tinymce/icons/default/icons.min.js create mode 100644 core/vendor/tinymce/inc.json create mode 100644 core/vendor/tinymce/init.css create mode 100644 core/vendor/tinymce/init.js create mode 100644 core/vendor/tinymce/jquery.tinymce.min.js create mode 100644 core/vendor/tinymce/langs/README.md create mode 100644 core/vendor/tinymce/langs/de.js create mode 100644 core/vendor/tinymce/langs/es.js create mode 100644 core/vendor/tinymce/langs/fr_FR.js create mode 100644 core/vendor/tinymce/langs/it.js create mode 100644 core/vendor/tinymce/langs/pt_PT.js create mode 100644 core/vendor/tinymce/langs/tr_TR.js create mode 100644 core/vendor/tinymce/links.php create mode 100644 core/vendor/tinymce/plugins/advlist/plugin.min.js create mode 100644 core/vendor/tinymce/plugins/anchor/plugin.min.js create mode 100644 core/vendor/tinymce/plugins/autolink/plugin.min.js create mode 100644 core/vendor/tinymce/plugins/autoresize/plugin.min.js create mode 100644 core/vendor/tinymce/plugins/autosave/plugin.min.js create mode 100644 core/vendor/tinymce/plugins/charmap/plugin.min.js create mode 100644 core/vendor/tinymce/plugins/code/plugin.min.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/LICENSE create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/comment/comment.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/comment/continuecomment.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/dialog/dialog.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/dialog/dialog.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/display/fullscreen.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/display/fullscreen.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/display/placeholder.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/display/rulers.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/edit/closebrackets.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/edit/closetag.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/edit/continuelist.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/edit/matchbrackets.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/edit/matchtags.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/edit/trailingspace.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/fold/brace-fold.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/fold/comment-fold.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/fold/foldcode.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/fold/foldgutter.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/fold/foldgutter.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/fold/indent-fold.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/fold/markdown-fold.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/fold/xml-fold.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/hint/anyword-hint.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/hint/css-hint.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/hint/html-hint.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/hint/javascript-hint.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/hint/python-hint.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/hint/show-hint.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/hint/show-hint.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/hint/sql-hint.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/hint/xml-hint.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/lint/coffeescript-lint.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/lint/css-lint.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/lint/javascript-lint.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/lint/json-lint.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/lint/lint.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/lint/lint.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/lint/yaml-lint.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/merge/merge.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/merge/merge.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/mode/loadmode.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/mode/multiplex.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/mode/multiplex_test.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/mode/overlay.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/mode/simple.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/runmode/colorize.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/runmode/runmode-standalone.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/runmode/runmode.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/runmode/runmode.node.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/scroll/scrollpastend.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/search/match-highlighter.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/search/search.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/search/searchcursor.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/selection/active-line.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/selection/mark-selection.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/tern/tern.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/tern/tern.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/tern/worker.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/addon/wrap/hardwrap.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/bin/authors.sh create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/bin/compress create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/bin/lint create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/bin/release create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/bin/source-highlight create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/keymap/emacs.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/keymap/sublime.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/keymap/vim.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/lib/codemirror.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/lib/codemirror.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/mode/clike/clike.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/mode/clike/index.html create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/mode/clike/scala.html create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/mode/clike/test.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/mode/css/css.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/mode/htmlembedded/htmlembedded.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/mode/htmlembedded/index.html create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/mode/htmlmixed/htmlmixed.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/mode/htmlmixed/index.html create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/mode/index.html create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/mode/javascript/javascript.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/mode/markdown/markdown.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/mode/php/index.html create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/mode/php/php.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/mode/php/test.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/mode/xml/xml.js create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/3024-day.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/3024-night.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/ambiance-mobile.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/ambiance.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/base16-dark.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/base16-light.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/blackboard.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/cobalt.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/eclipse.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/elegant.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/erlang-dark.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/lesser-dark.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/mbo.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/mdn-like.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/midnight.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/monokai.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/neat.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/neo.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/night.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/paraiso-dark.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/paraiso-light.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/pastel-on-dark.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/rubyblue.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/solarized.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/the-matrix.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/tomorrow-night-eighties.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/twilight.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/vibrant-ink.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/xq-dark.css create mode 100644 core/vendor/tinymce/plugins/codemirror/codemirror/theme/xq-light.css create mode 100644 core/vendor/tinymce/plugins/codemirror/langs/de.js create mode 100644 core/vendor/tinymce/plugins/codemirror/langs/en.js create mode 100644 core/vendor/tinymce/plugins/codemirror/langs/es.js create mode 100644 core/vendor/tinymce/plugins/codemirror/langs/fr_FR.js create mode 100644 core/vendor/tinymce/plugins/codemirror/langs/pt_BR.js create mode 100644 core/vendor/tinymce/plugins/codemirror/plugin.js create mode 100644 core/vendor/tinymce/plugins/codemirror/plugin.min.js create mode 100644 core/vendor/tinymce/plugins/codemirror/source.html create mode 100644 core/vendor/tinymce/plugins/colorpicker/plugin.min.js create mode 100644 core/vendor/tinymce/plugins/contextmenu/plugin.min.js create mode 100644 core/vendor/tinymce/plugins/directionality/plugin.min.js create mode 100644 core/vendor/tinymce/plugins/emoticons/js/emojiimages.js create mode 100644 core/vendor/tinymce/plugins/emoticons/js/emojiimages.min.js create mode 100644 core/vendor/tinymce/plugins/emoticons/js/emojis.js create mode 100644 core/vendor/tinymce/plugins/emoticons/js/emojis.min.js create mode 100644 core/vendor/tinymce/plugins/emoticons/plugin.min.js create mode 100644 core/vendor/tinymce/plugins/fullscreen/plugin.min.js create mode 100644 core/vendor/tinymce/plugins/hr/plugin.min.js create mode 100644 core/vendor/tinymce/plugins/image/plugin.min.js create mode 100644 core/vendor/tinymce/plugins/imagetools/plugin.min.js create mode 100644 core/vendor/tinymce/plugins/link/plugin.min.js create mode 100644 core/vendor/tinymce/plugins/lists/plugin.min.js create mode 100644 core/vendor/tinymce/plugins/media/plugin.min.js create mode 100644 core/vendor/tinymce/plugins/nonbreaking/plugin.min.js create mode 100644 core/vendor/tinymce/plugins/paste/plugin.min.js create mode 100644 core/vendor/tinymce/plugins/searchreplace/plugin.min.js create mode 100644 core/vendor/tinymce/plugins/tabfocus/plugin.min.js create mode 100644 core/vendor/tinymce/plugins/table/plugin.min.js create mode 100644 core/vendor/tinymce/plugins/template/plugin.min.js create mode 100644 core/vendor/tinymce/plugins/textcolor/plugin.min.js create mode 100644 core/vendor/tinymce/plugins/textpattern/plugin.min.js create mode 100644 core/vendor/tinymce/plugins/visualblocks/plugin.min.js create mode 100644 core/vendor/tinymce/skins/content/dark/content.min.css create mode 100644 core/vendor/tinymce/skins/content/default/content.min.css create mode 100644 core/vendor/tinymce/skins/content/document/content.min.css create mode 100644 core/vendor/tinymce/skins/content/writer/content.min.css create mode 100644 core/vendor/tinymce/skins/ui/oxide-dark/content.inline.min.css create mode 100644 core/vendor/tinymce/skins/ui/oxide-dark/content.min.css create mode 100644 core/vendor/tinymce/skins/ui/oxide-dark/content.mobile.min.css create mode 100644 core/vendor/tinymce/skins/ui/oxide-dark/fonts/tinymce-mobile.woff create mode 100644 core/vendor/tinymce/skins/ui/oxide-dark/skin.min.css create mode 100644 core/vendor/tinymce/skins/ui/oxide-dark/skin.mobile.min.css create mode 100644 core/vendor/tinymce/skins/ui/oxide-dark/skin.shadowdom.min.css create mode 100644 core/vendor/tinymce/skins/ui/oxide/content.inline.min.css create mode 100644 core/vendor/tinymce/skins/ui/oxide/content.min.css create mode 100644 core/vendor/tinymce/skins/ui/oxide/content.mobile.min.css create mode 100644 core/vendor/tinymce/skins/ui/oxide/fonts/tinymce-mobile.woff create mode 100644 core/vendor/tinymce/skins/ui/oxide/skin.min.css create mode 100644 core/vendor/tinymce/skins/ui/oxide/skin.mobile.min.css create mode 100644 core/vendor/tinymce/skins/ui/oxide/skin.shadowdom.min.css create mode 100644 core/vendor/tinymce/templates/accordion.html create mode 100644 core/vendor/tinymce/templates/block.html create mode 100644 core/vendor/tinymce/templates/col10-2.html create mode 100644 core/vendor/tinymce/templates/col2-10.html create mode 100644 core/vendor/tinymce/templates/col3.html create mode 100644 core/vendor/tinymce/templates/col4-8.html create mode 100644 core/vendor/tinymce/templates/col4.html create mode 100644 core/vendor/tinymce/templates/col6.html create mode 100644 core/vendor/tinymce/templates/col8-4.html create mode 100644 core/vendor/tinymce/themes/mobile/theme.min.js create mode 100644 core/vendor/tinymce/themes/silver/theme.min.js create mode 100644 core/vendor/tinymce/tinymce.d.ts create mode 100644 core/vendor/tinymce/tinymce.min.js create mode 100644 core/vendor/tippy/inc.json create mode 100644 core/vendor/tippy/init.js create mode 100644 core/vendor/tippy/tippy.min.css create mode 100644 core/vendor/tippy/tippy.min.js create mode 100644 core/vendor/zwiico/css/animation.css create mode 100644 core/vendor/zwiico/css/zwiico-codes.css create mode 100644 core/vendor/zwiico/css/zwiico-embedded.css create mode 100644 core/vendor/zwiico/css/zwiico-ie7-codes.css create mode 100644 core/vendor/zwiico/css/zwiico-ie7.css create mode 100644 core/vendor/zwiico/css/zwiico.css create mode 100644 core/vendor/zwiico/font/zwiico.eot create mode 100644 core/vendor/zwiico/font/zwiico.svg create mode 100644 core/vendor/zwiico/font/zwiico.ttf create mode 100644 core/vendor/zwiico/font/zwiico.woff create mode 100644 core/vendor/zwiico/font/zwiico.woff2 create mode 100644 core/vendor/zwiico/ico/favicon.ico create mode 100644 core/vendor/zwiico/ico/faviconDark.ico create mode 100644 core/vendor/zwiico/inc.json create mode 100644 core/vendor/zwiico/init.css create mode 100644 core/vendor/zwiico/png/alpha/a.png create mode 100644 core/vendor/zwiico/png/alpha/b.png create mode 100644 core/vendor/zwiico/png/alpha/c.png create mode 100644 core/vendor/zwiico/png/alpha/d.png create mode 100644 core/vendor/zwiico/png/alpha/e.png create mode 100644 core/vendor/zwiico/png/alpha/f.png create mode 100644 core/vendor/zwiico/png/alpha/g.png create mode 100644 core/vendor/zwiico/png/alpha/h.png create mode 100644 core/vendor/zwiico/png/alpha/i.png create mode 100644 core/vendor/zwiico/png/alpha/j.png create mode 100644 core/vendor/zwiico/png/alpha/k.png create mode 100644 core/vendor/zwiico/png/alpha/l.png create mode 100644 core/vendor/zwiico/png/alpha/m.png create mode 100644 core/vendor/zwiico/png/alpha/n.png create mode 100644 core/vendor/zwiico/png/alpha/o.png create mode 100644 core/vendor/zwiico/png/alpha/p.png create mode 100644 core/vendor/zwiico/png/alpha/q.png create mode 100644 core/vendor/zwiico/png/alpha/r.png create mode 100644 core/vendor/zwiico/png/alpha/s.png create mode 100644 core/vendor/zwiico/png/alpha/t.png create mode 100644 core/vendor/zwiico/png/alpha/u.png create mode 100644 core/vendor/zwiico/png/num/a.png create mode 100644 core/vendor/zwiico/png/num/b.png create mode 100644 core/vendor/zwiico/png/num/c.png create mode 100644 core/vendor/zwiico/png/num/d.png create mode 100644 core/vendor/zwiico/png/num/e.png create mode 100644 core/vendor/zwiico/png/num/f.png create mode 100644 core/vendor/zwiico/png/num/g.png create mode 100644 core/vendor/zwiico/png/num/h.png create mode 100644 core/vendor/zwiico/png/num/i.png create mode 100644 core/vendor/zwiico/png/num/j.png create mode 100644 core/vendor/zwiico/png/num/k.png create mode 100644 core/vendor/zwiico/png/num/l.png create mode 100644 core/vendor/zwiico/png/num/m.png create mode 100644 core/vendor/zwiico/png/num/n.png create mode 100644 core/vendor/zwiico/png/num/o.png create mode 100644 core/vendor/zwiico/png/num/p.png create mode 100644 core/vendor/zwiico/png/num/q.png create mode 100644 core/vendor/zwiico/png/num/r.png create mode 100644 core/vendor/zwiico/png/num/s.png create mode 100644 core/vendor/zwiico/png/num/t.png create mode 100644 core/vendor/zwiico/png/num/u.png create mode 100644 index.php create mode 100644 module/blog/blog.php create mode 100644 module/blog/changes.md create mode 100644 module/blog/enum.json create mode 100644 module/blog/i18n/de.json create mode 100644 module/blog/i18n/en_EN.json create mode 100644 module/blog/i18n/es.json create mode 100644 module/blog/i18n/fr_FR.json create mode 100644 module/blog/i18n/gr_GR.json create mode 100644 module/blog/i18n/it.json create mode 100644 module/blog/i18n/pt_PT.json create mode 100644 module/blog/i18n/tr_TR.json create mode 100644 module/blog/profil/main/add.inc.php create mode 100644 module/blog/profil/main/edit.inc.php create mode 100644 module/blog/profil/view/add.inc.php create mode 100644 module/blog/profil/view/edit.inc.php create mode 100644 module/blog/ressource/feed-icon-16.gif create mode 100644 module/blog/vendor/FeedWriter/ATOM.php create mode 100644 module/blog/vendor/FeedWriter/Feed.php create mode 100644 module/blog/vendor/FeedWriter/InvalidOperationException.php create mode 100644 module/blog/vendor/FeedWriter/Item.php create mode 100644 module/blog/vendor/FeedWriter/README.md create mode 100644 module/blog/vendor/FeedWriter/RSS1.php create mode 100644 module/blog/vendor/FeedWriter/RSS2.php create mode 100644 module/blog/vendor/furl/LICENSE create mode 100644 module/blog/vendor/furl/README.md create mode 100644 module/blog/vendor/furl/inc.json create mode 100644 module/blog/vendor/furl/jquery.furl.js create mode 100644 module/blog/view/add/add.css create mode 100644 module/blog/view/add/add.js.php create mode 100644 module/blog/view/add/add.php create mode 100644 module/blog/view/article/article.css create mode 100644 module/blog/view/article/article.js.php create mode 100644 module/blog/view/article/article.php create mode 100644 module/blog/view/comment/comment.css create mode 100644 module/blog/view/comment/comment.js.php create mode 100644 module/blog/view/comment/comment.php create mode 100644 module/blog/view/config/config.css create mode 100644 module/blog/view/config/config.js.php create mode 100644 module/blog/view/config/config.php create mode 100644 module/blog/view/edit/edit.css create mode 100644 module/blog/view/edit/edit.js.php create mode 100644 module/blog/view/edit/edit.php create mode 100644 module/blog/view/index/index.css create mode 100644 module/blog/view/index/index.php create mode 100644 module/blog/view/option/option.css create mode 100644 module/blog/view/option/option.php create mode 100644 module/blog/view/rss/rss.php create mode 100644 module/form/changes.md create mode 100644 module/form/enum.json create mode 100644 module/form/form.php create mode 100644 module/form/i18n/de.json create mode 100644 module/form/i18n/en_EN.json create mode 100644 module/form/i18n/es.json create mode 100644 module/form/i18n/fr_FR.json create mode 100644 module/form/i18n/gr_GR.json create mode 100644 module/form/i18n/it.json create mode 100644 module/form/i18n/pt_PT.json create mode 100644 module/form/i18n/tr_TR.json create mode 100644 module/form/profil/main/add.inc.php create mode 100644 module/form/profil/main/edit.inc.php create mode 100644 module/form/profil/view/add.inc.php create mode 100644 module/form/profil/view/edit.inc.php create mode 100644 module/form/ressource/defaultdata.php create mode 100644 module/form/vendor/html-sortable/html-sortable.min.js create mode 100644 module/form/vendor/html-sortable/inc.json create mode 100644 module/form/vendor/html-sortable/lisezmoi.txt create mode 100644 module/form/view/config/config.css create mode 100644 module/form/view/config/config.js.php create mode 100644 module/form/view/config/config.php create mode 100644 module/form/view/data/data.css create mode 100644 module/form/view/data/data.js.php create mode 100644 module/form/view/data/data.php create mode 100644 module/form/view/index/index.css create mode 100644 module/form/view/index/index.js.php create mode 100644 module/form/view/index/index.php create mode 100644 module/form/view/option/option.css create mode 100644 module/form/view/option/option.js.php create mode 100644 module/form/view/option/option.php create mode 100644 module/gallery/changes.md create mode 100644 module/gallery/enum.json create mode 100644 module/gallery/gallery.php create mode 100644 module/gallery/i18n/de.json create mode 100644 module/gallery/i18n/en_EN.json create mode 100644 module/gallery/i18n/es.json create mode 100644 module/gallery/i18n/fr_FR.json create mode 100644 module/gallery/i18n/gr_GR.json create mode 100644 module/gallery/i18n/it.json create mode 100644 module/gallery/i18n/pt_PT.json create mode 100644 module/gallery/i18n/tr_TR.json create mode 100644 module/gallery/profil/main/add.inc.php create mode 100644 module/gallery/profil/main/edit.inc.php create mode 100644 module/gallery/profil/view/add.inc.php create mode 100644 module/gallery/profil/view/edit.inc.php create mode 100644 module/gallery/ressource/defaultdata.php create mode 100644 module/gallery/ressource/theme.css create mode 100644 module/gallery/ressource/vartheme.css create mode 100644 module/gallery/vendor/tablednd/MIT-LICENSE.txt create mode 100644 module/gallery/vendor/tablednd/inc.json create mode 100644 module/gallery/vendor/tablednd/lisez-moi.txt create mode 100644 module/gallery/vendor/tablednd/tablednd.min.js create mode 100644 module/gallery/view/add/add.css create mode 100644 module/gallery/view/add/add.js.php create mode 100644 module/gallery/view/add/add.php create mode 100644 module/gallery/view/config/config.css create mode 100644 module/gallery/view/config/config.js.php create mode 100644 module/gallery/view/config/config.php create mode 100644 module/gallery/view/edit/edit.css create mode 100644 module/gallery/view/edit/edit.js.php create mode 100644 module/gallery/view/edit/edit.php create mode 100644 module/gallery/view/gallery/gallery.css create mode 100644 module/gallery/view/gallery/gallery.js.php create mode 100644 module/gallery/view/gallery/gallery.php create mode 100644 module/gallery/view/index/index.php create mode 100644 module/gallery/view/option/option.css create mode 100644 module/gallery/view/option/option.js.php create mode 100644 module/gallery/view/option/option.php create mode 100644 module/gallery/view/theme/theme.css create mode 100644 module/gallery/view/theme/theme.php create mode 100644 module/news/changes.md create mode 100644 module/news/enum.json create mode 100644 module/news/i18n/de.json create mode 100644 module/news/i18n/en_EN.json create mode 100644 module/news/i18n/es.json create mode 100644 module/news/i18n/fr_FR.json create mode 100644 module/news/i18n/gr_GR.json create mode 100644 module/news/i18n/it.json create mode 100644 module/news/i18n/pt_PT.json create mode 100644 module/news/i18n/tr_TR.json create mode 100644 module/news/news.php create mode 100644 module/news/profil/main/add.inc.php create mode 100644 module/news/profil/main/edit.inc.php create mode 100644 module/news/profil/view/add.inc.php create mode 100644 module/news/profil/view/edit.inc.php create mode 100644 module/news/ressource/defaultdata.php create mode 100644 module/news/ressource/feed-icon-16.gif create mode 100644 module/news/vendor/FeedWriter/ATOM.php create mode 100644 module/news/vendor/FeedWriter/Feed.php create mode 100644 module/news/vendor/FeedWriter/InvalidOperationException.php create mode 100644 module/news/vendor/FeedWriter/Item.php create mode 100644 module/news/vendor/FeedWriter/README.md create mode 100644 module/news/vendor/FeedWriter/RSS1.php create mode 100644 module/news/vendor/FeedWriter/RSS2.php create mode 100644 module/news/view/add/add.css create mode 100644 module/news/view/add/add.js.php create mode 100644 module/news/view/add/add.php create mode 100644 module/news/view/article/article.css create mode 100644 module/news/view/article/article.php create mode 100644 module/news/view/config/config.css create mode 100644 module/news/view/config/config.js.php create mode 100644 module/news/view/config/config.php create mode 100644 module/news/view/edit/edit.css create mode 100644 module/news/view/edit/edit.js.php create mode 100644 module/news/view/edit/edit.php create mode 100644 module/news/view/index/index.css create mode 100644 module/news/view/index/index.php create mode 100644 module/news/view/option/option.css create mode 100644 module/news/view/option/option.php create mode 100644 module/news/view/rss/rss.php create mode 100644 module/redirection/changes.md create mode 100644 module/redirection/enum.json create mode 100644 module/redirection/i18n/de.json create mode 100644 module/redirection/i18n/en_EN.json create mode 100644 module/redirection/i18n/es.json create mode 100644 module/redirection/i18n/fr_FR.json create mode 100644 module/redirection/i18n/gr_GR.json create mode 100644 module/redirection/i18n/it.json create mode 100644 module/redirection/i18n/pt_PT.json create mode 100644 module/redirection/i18n/tr_TR.json create mode 100644 module/redirection/profil/main/add.inc.php create mode 100644 module/redirection/profil/main/edit.inc.php create mode 100644 module/redirection/profil/view/add.inc.php create mode 100644 module/redirection/profil/view/edit.inc.php create mode 100644 module/redirection/redirection.php create mode 100644 module/redirection/view/config/config.css create mode 100644 module/redirection/view/config/config.php create mode 100644 module/redirection/view/index/index.css create mode 100644 module/redirection/view/index/index.js.php create mode 100644 module/redirection/view/index/index.php create mode 100644 module/search/changes.md create mode 100644 module/search/enum.json create mode 100644 module/search/i18n/de.json create mode 100644 module/search/i18n/en_EN.json create mode 100644 module/search/i18n/es.json create mode 100644 module/search/i18n/fr_FR.json create mode 100644 module/search/i18n/gr_GR.json create mode 100644 module/search/i18n/it.json create mode 100644 module/search/i18n/pt_PT.json create mode 100644 module/search/i18n/tr_TR.json create mode 100644 module/search/profil/main/add.inc.php create mode 100644 module/search/profil/main/edit.inc.php create mode 100644 module/search/profil/view/add.inc.php create mode 100644 module/search/profil/view/edit.inc.php create mode 100644 module/search/ressource/defaultdata.php create mode 100644 module/search/search.php create mode 100644 module/search/view/config/config.css create mode 100644 module/search/view/config/config.php create mode 100644 module/search/view/index/index.css create mode 100644 module/search/view/index/index.php create mode 100644 module/slider/changes.md create mode 100644 module/slider/enum.json create mode 100644 module/slider/i18n/de.json create mode 100644 module/slider/i18n/en_EN.json create mode 100644 module/slider/i18n/es.json create mode 100644 module/slider/i18n/fr_FR.json create mode 100644 module/slider/i18n/gr_GR.json create mode 100644 module/slider/i18n/it.json create mode 100644 module/slider/i18n/pt_PT.json create mode 100644 module/slider/i18n/tr_TR.json create mode 100644 module/slider/profil/main/add.inc.php create mode 100644 module/slider/profil/main/edit.inc.php create mode 100644 module/slider/profil/view/add.inc.php create mode 100644 module/slider/profil/view/edit.inc.php create mode 100644 module/slider/slider.php create mode 100644 module/slider/vendor/slider/inc.json create mode 100644 module/slider/vendor/slider/slider.js create mode 100644 module/slider/view/config/config.css create mode 100644 module/slider/view/config/config.php create mode 100644 module/slider/view/index/black.gif create mode 100644 module/slider/view/index/index.css create mode 100644 module/slider/view/index/index.js.php create mode 100644 module/slider/view/index/index.php create mode 100644 module/slider/view/index/white.gif create mode 100644 module/slider/view/theme/theme.css create mode 100644 module/slider/view/theme/theme.js.php create mode 100644 module/slider/view/theme/theme.php create mode 100644 module/slider/view/update/update.css create mode 100644 module/slider/view/update/update.js.php create mode 100644 module/slider/view/update/update.php create mode 100644 site/i18n/.htaccess diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..7bce42d --- /dev/null +++ b/.gitignore @@ -0,0 +1,11 @@ +core/class/phpmailer/.DS_Store +site/.DS_Store +site/data/* +site/tmp/* +site/backup/* +site/file/* +site/i18n/*.json +.DS_Store +core/vendor/tinymce/link_list.json +robots.txt +sitemap.xml diff --git a/.htaccess b/.htaccess new file mode 100644 index 0000000..9bd3ba5 --- /dev/null +++ b/.htaccess @@ -0,0 +1,36 @@ +# Active la compression GZIP - option Apache + + mod_gzip_on Yes + mod_gzip_dechunk Yes + mod_gzip_item_include file \.(html?|txt|css|js|php|pl)$ + mod_gzip_item_include handler ^cgi-script$ + mod_gzip_item_include mime ^text\.* + mod_gzip_item_include mime ^application/x-javascript.* + mod_gzip_item_exclude mime ^image\.* + mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.* + + +# Active la compression DEFLATE - option Apache + + AddOutputFilterByType DEFLATE text/plain + AddOutputFilterByType DEFLATE text/html + AddOutputFilterByType DEFLATE text/xml + AddOutputFilterByType DEFLATE text/shtml + AddOutputFilterByType DEFLATE text/css + AddOutputFilterByType DEFLATE application/xml + AddOutputFilterByType DEFLATE application/xhtml+xml + AddOutputFilterByType DEFLATE application/rss+xml + AddOutputFilterByType DEFLATE application/javascript + AddOutputFilterByType DEFLATE application/x-javascript + + +# Bloque l'accès à la liste des fichiers +Options -Indexes + +# Désactive l'option de substitution automatique + + Options -MultiViews + + +# ne pas supprimer la ligne URL rewriting ! +# URL rewriting diff --git a/CHANGES.md b/CHANGES.md new file mode 100644 index 0000000..825c32f --- /dev/null +++ b/CHANGES.md @@ -0,0 +1 @@ +# Changelog diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..35c5730 --- /dev/null +++ b/LICENSE @@ -0,0 +1 @@ +Cette œuvre est mise à disposition sous licence Attribution - Pas d'Utilisation Commerciale - Pas de Modification 4.0 International. Pour voir une copie de cette licence, visitez http://creativecommons.org/licenses/by-nc-nd/4.0/ ou écrivez à Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. \ No newline at end of file diff --git a/LISEZMOI.md b/LISEZMOI.md new file mode 100644 index 0000000..8a800e9 --- /dev/null +++ b/LISEZMOI.md @@ -0,0 +1,113 @@ +# ZwiiLMS 0.0.01 + +Zwii est un CMS sans base de données (flat-file) qui permet de créer et gérer facilement un site web sans aucune connaissance en programmation. + +ZwiiCMS a été créé par un développeur de talent, [Rémi Jean](https://remijean.fr/). Il est désormais maintenu par Frédéric Tempez. + +[Site](http://zwiicms.fr/) - [Forum](http://forum.zwiicms.com/) - [Version initiale](https://github.com/remijean/ZwiiCMS/) - [GitHub](https://github.com/fredtempez/ZwiiCMS) + +## Configuration recommandée + +* PHP 7.2 ou plus +* Support de .htaccess + +## Licence + +Cette œuvre est mise à disposition sous licence Attribution - Pas d'utilisation Commerciale - Pas de Modification 4.0 International. + +Pour voir une copie de cette licence, visitez http://creativecommons.org/licenses/by-nc-nd/4.0/ ou écrivez à Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. + +## Téléchargement de ZwiiCMS + +Pour télécharger la dernière version publiée, rendez-vous : +- sur [la page des mises à jour](https://forge.chapril.org/ZwiiCMS-Team/ZwiiCMS/releases) +- ou sur [la page de téléchargement du site](https://zwiicms.fr/telechargement) + + +## Installation + +Décompressez l'archive de Zwii et téléversez son contenu à la racine de votre serveur ou dans un sous-répertoire. C'est tout ! + +Vous trouverez de plus amples explications, en particulier pour une installation chez Free, dans la rubrique "Téléchargements" du forum. + + +## Procédures de mise à jour + +A l'occasion de l'installation d'une verion majeure, il est recommandé de réaliser une copie de sauvegarde. + +### Automatique + +* Connectez-vous à votre site. +* Si une mise à jour est disponible, elle vous est proposée dans la barre d'administration. +* Cliquez sur le bouton "Mettre à jour". + +### Manuelle + +* Sauvegardez l'intégralité de votre site, spécialement le répertoire "site". +* Décompressez la nouvelle version sur votre ordinateur. +* Transférez son contenu sur votre serveur en activant le remplacement des fichiers. + + +## Arborescence générale + +*Légende : [R] Répertoire - [F] Fichier* + +```text +[R] core Cœur du système + [R] class Classes + [R] layout Mise en page + [R] module Modules du cœur + [R] vendor Librairies extérieures + [F] core.js.php Cœur javascript + [F] core.php Cœur PHP + +[R] module Modules de page + [R] blog Blog + [R] form Gestionnaire de formulaires + [R] gallery Galerie + [R] news Nouvelles + [R] redirection Redirection + +[R] site Contenu du site + [R] backup Sauvegardes automatiques + [R] i18N Langues de l'interface de Zwii + [R] data Répertoire des données + [R] fr Dossier localisé + [F] page.json Données des pages + [F] module.json Données des modules de pages + [F] local.json Données du site propres à la langue + [F] .default Indicateur de la langue de site par défaut + [R] content Dossier des contenus de page + [F] accueil.html Exemple contenu de la page d'accueil + [R] fonts Dossier contenant les fontes installées + [F] font.html Fichier contenant les appels des fontes à charger sur cdnFonts + [F] fonts.css Fichier contenant la feuille de style liée aux polices de caractères locales + [F] fontes.woff Fichiers locaux des fontes (woff, etc..) + [R] modules Personnalisation des modules ou données propres + [F] admin.css Thème des pages d'administration + [F] admin.json Données de thème des pages d'administration + [F] blacklist.json Journalisation des tentatives de connexion avec des comptes inconnus + [F] config.json Configuration du site + [F] core.json Configuration du noyau + [F] custom.css Feuille de style de la personnalisation avancée + [F] font.json Descripteur des fontes personnalisées + [F] journal.log Journalisation des activités + [F] language.json Langues de l'interface + [F] profil.json Profils des utilisateurs + [F] theme.css Thème du site + [F] theme.json Données du site + [F] user.json Données des utilisateurs + [F] .backup Marqueur de la sauvegarde des fichiers si présent + [R] file Répertoire d'upload du gestionnaire de fichiers + [R] source Ressources diverses + [R] thumb Miniatures des images + [R] tmp Répertoire temporaire + +[F] index.php Fichier d'initialisation de ZwiiCMS +[F] robots.txt Filtrage des répertoires accessibles aux robots des moteurs de recherche +[F] sitemap.xml Plan du site +[F] sitemap.xml.gz Version compressée + +Le fichiers .htaccess contribuent à la sécurité en filtrant l'accès aux répertoires sensibles. + +``` diff --git a/core/class/.htaccess b/core/class/.htaccess new file mode 100644 index 0000000..3b355e3 --- /dev/null +++ b/core/class/.htaccess @@ -0,0 +1,3 @@ +# Bloque l'accès à la librairie +Order deny,allow +Deny from all \ No newline at end of file diff --git a/core/class/autoload.php b/core/class/autoload.php new file mode 100644 index 0000000..bf408d6 --- /dev/null +++ b/core/class/autoload.php @@ -0,0 +1,19 @@ + '']); + file_put_contents ('core/module/install/ressource/i18n/fr_FR.json', json_encode($data, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES | JSON_PRETTY_PRINT), LOCK_EX); + } + */ + return (array_key_exists($text, core::$dialog) && !empty(core::$dialog[$text]) ? core::$dialog[$text] : $text); + } + + /** + * Formate la date avec le script strftime en UTF8 + * Date au format time() + * $format strftime + */ + public static function dateUTF8($format, $date) + { + require_once 'core/class/strftime/php-8.1-strftime.class.php'; + return mb_convert_encoding(\PHP81_BC\strftime($format, $date), 'UTF-8', mb_list_encodings()); + } + + /** + * Fonction pour assurer la traduction des messages + */ + public static function googleTranslate($to, $text) + { + if (!file_exists('site/i18n/' . $to . '.json')) { + file_put_contents('site/i18n/' . $to . '.json', json_encode([])); + } + if (!empty($text)) { + //Lecture des données en ligne + $data = json_decode(file_get_contents('site/i18n/' . $to . '.json'), true); + // Mode traduction + if ($to !== 'fr_FR') { + $arrayjson = json_decode(file_get_contents('https://clients5.google.com/translate_a/t?client=dict-chrome-ex&sl=auto&tl=' . $to . '&q=' . rawurlencode($text)), true); + $response = $arrayjson[0][0]; + // Captation + if ($data !== '') { + if (array_key_exists($text, $data)) { + $data[$text] = $response; + } else { + $data = array_merge($data, [$text => $response]); + } + } + // Mode alimentation des chaines + } else { + // Créer la variable + $data = array_merge($data, [$text => '']); + } + file_put_contents('site/i18n/' . $to . '.json', json_encode($data, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES | JSON_PRETTY_PRINT), LOCK_EX); + + } + } + + + /** + * Récupérer l'adresse IP sans tenir compte du proxy + * @param integer Niveau d'anonymat 0 aucun, 1 octet à droite, etc.. + * @return string IP adress + * Cette fonction est utilisée par user + */ + + public static function getIp($anon = 4) + { + if (!empty($_SERVER['HTTP_CLIENT_IP'])) { + $ip = $_SERVER['HTTP_CLIENT_IP']; + } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) { + $ip = $_SERVER['HTTP_X_FORWARDED_FOR']; + } else { + $ip = $_SERVER['REMOTE_ADDR']; + } + + // Anonymiser l'adresse IP v4 + $d = array_slice(explode('.', $ip), 0, $anon); + $d = implode('.', $d); + $j = array_fill(0, 4 - $anon, 'x'); + $k = implode('.', $j); + $ip = count($j) == 0 ? $d : $d . '.' . $k; + return $ip; + } + + /** + * Fonction pour récupérer le numéro de version en ligne et le catalogue des modules + * @param string $url à récupérer + * @return mixed données récupérées + */ + + public static function getUrlContents($url) + { + // Ejecter free.fr + if (strpos(self::baseUrl(), 'free.fr') > 0) { + return false; + } + if ( + function_exists('file_get_contents') && + ini_get('allow_url_fopen') + ) { + $url_get_contents_data = @file_get_contents($url); // Masque un warning éventuel + } elseif (function_exists('curl_version')) { + $ch = curl_init(); + curl_setopt($ch, CURLOPT_HEADER, 0); + curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); + curl_setopt($ch, CURLOPT_URL, $url); + $url_get_contents_data = curl_exec($ch); + curl_close($ch); + } elseif ( + function_exists('fopen') && + function_exists('stream_get_contents') && + ini_get('allow_url_fopen') + ) { + $handle = fopen($url, "r"); + $url_get_contents_data = stream_get_contents($handle); + } else { + $url_get_contents_data = false; + } + return $url_get_contents_data; + } + + /** + * Retourne les valeurs d'une colonne du tableau de données + * @param array $array Tableau cible + * @param string $column Colonne à extraire + * @param string $sort Type de tri à appliquer au tableau (SORT_ASC, SORT_DESC, ou null) + * @return array + */ + public static function arraycolumn($array, $column, $sort = null) + { + $newArray = []; + if (empty($array) === false) { + $newArray = array_map(function ($element) use ($column) { + return $element[$column]; + }, $array); + switch ($sort) { + case 'SORT_ASC': + asort($newArray); + break; + case 'SORT_DESC': + arsort($newArray); + break; + } + } + return $newArray; + } + + /** + * Compatibilité avec les anciens modules + */ + public static function arrayCollumn($array, $column, $sort = null) + { + return (helper::arrayColumn($array, $column, $sort)); + } + + + + /** + * Génère un backup des données de site + * @param string $folder dossier de sauvegarde + * @param array $exclude dossier exclus + * @return string nom du fichier de sauvegarde + */ + + public static function autoBackup($folder, $filter = ['backup', 'tmp']) + { + // Creation du ZIP + $baseName = str_replace('/', '', helper::baseUrl(false, false)); + $baseName = empty($baseName) ? 'ZwiiCMS' : $baseName; + $fileName = $baseName . '-backup-' . date('Y-m-d-H-i-s', time()) . '.zip'; + $zip = new ZipArchive(); + $zip->open($folder . $fileName, ZipArchive::CREATE | ZipArchive::OVERWRITE); + $directory = 'site/'; + //$filter = array('backup','tmp','file'); + $files = new RecursiveIteratorIterator( + new RecursiveCallbackFilterIterator( + new RecursiveDirectoryIterator( + $directory, + RecursiveDirectoryIterator::SKIP_DOTS + ), + function ($fileInfo, $key, $iterator) use ($filter) { + return $fileInfo->isFile() || !in_array($fileInfo->getBaseName(), $filter); + } + ) + ); + foreach ($files as $name => $file) { + if (!$file->isDir()) { + $filePath = $file->getRealPath(); + $relativePath = substr($filePath, strlen(realpath($directory)) + 1); + $zip->addFile($filePath, $relativePath); + } + } + $zip->close(); + return ($fileName); + } + + + + /** + * Retourne la liste des modules installés dans un tableau composé + * du nom réel + * du numéro de version + */ + public static function getModules() + { + $modules = array(); + $dirs = array_diff(scandir('module'), array('..', '.')); + foreach ($dirs as $key => $value) { + // Dossier non vide + if (file_exists('module/' . $value . '/' . $value . '.php')) { + // Lire les constantes en gérant les erreurs de nom de classe + try { + $class_reflex = new \ReflectionClass($value); + $class_constants = $class_reflex->getConstants(); + // Constante REALNAME + if (array_key_exists('REALNAME', $class_constants)) { + $realName = $value::REALNAME; + } else { + $realName = ucfirst($value); + } + // Constante VERSION + if (array_key_exists('VERSION', $class_constants)) { + $version = $value::VERSION; + } else { + $version = '0.0'; + } + // Constante UPDATE + if (array_key_exists('UPDATE', $class_constants)) { + $update = $value::UPDATE; + } else { + $update = '0.0'; + } + // Constante DELETE + if (array_key_exists('DELETE', $class_constants)) { + $delete = $value::DELETE; + } else { + $delete = true; + } + // Constante DATADIRECTORY + if (array_key_exists('DATADIRECTORY', $class_constants)) { + $dataDirectory = $value::DATADIRECTORY; + } else { + $dataDirectory = ''; + } + // Affection + $modules[$value] = [ + 'name' => $value, + 'realName' => $realName, + 'version' => $version, + 'update' => $update, + 'delete' => $delete, + 'dataDirectory' => $dataDirectory + ]; + } catch (Exception $e) { + // on ne fait rien + } + } + } + return ($modules); + } + + + + /** + * Retourne true si le protocole est en TLS + * @return bool + */ + public static function isHttps() + { + if ( + (empty($_SERVER['HTTPS']) === false and $_SERVER['HTTPS'] !== 'off') + or $_SERVER['SERVER_PORT'] === 443 + ) { + return true; + } else { + return false; + } + } + + + /** + * Retourne l'URL de base du site + * @param bool $queryString Affiche ou non le point d'interrogation + * @param bool $host Affiche ou non l'host + * @return string + */ + public static function baseUrl($queryString = true, $host = true) + { + // Protocole + $protocol = helper::isHttps() === true ? 'https://' : 'http://'; + // Host + if ($host) { + $host = $protocol . $_SERVER['HTTP_HOST']; + } + // Pathinfo + $pathInfo = pathinfo($_SERVER['PHP_SELF']); + // Querystring + if ($queryString and helper::checkRewrite() === false) { + $queryString = '?'; + } else { + $queryString = ''; + } + return $host . rtrim($pathInfo['dirname'], ' ' . DIRECTORY_SEPARATOR) . '/' . $queryString; + } + + /** + * Check le statut de l'URL rewriting + * @return bool + */ + public static function checkRewrite() + { + // N'interroge que le serveur Apache + if (strpos($_SERVER["SERVER_SOFTWARE"], 'Apache') > 0) { + self::$rewriteStatus === false; + } elseif (self::$rewriteStatus === null) { + // Ouvre et scinde le fichier .htaccess + $htaccess = explode('# URL rewriting', file_get_contents('.htaccess')); + // Retourne un boolean en fonction du contenu de la partie réservée à l'URL rewriting + //self::$rewriteStatus = (empty($htaccess[1]) === false); + self::$rewriteStatus = (strpos($htaccess[1], 'RewriteEngine on') > 0) ? true : false; + } + return self::$rewriteStatus; + } + + /** + * Renvoie le numéro de version de Zwii est en ligne + * @return string + */ + public static function getOnlineVersion($channel) + { + return (helper::getUrlContents(common::ZWII_UPDATE_URL . $channel . '/version')); + } + + + /** + * Check si une nouvelle version de Zwii est disponible + * @return bool + */ + public static function checkNewVersion($channel) + { + $version = helper::getOnlineVersion($channel); + if (!empty($version)) { + return ((version_compare(common::ZWII_VERSION, $version)) === -1); + } else { + return false; + } + } + + + /** + * Génère des variations d'une couleur + * @param string $rgba Code rgba de la couleur + * @return array + */ + public static function colorVariants($rgba) + { + preg_match('#\(+(.*)\)+#', $rgba, $matches); + $rgba = explode(', ', $matches[1]); + return [ + 'normal' => 'rgba(' . $rgba[0] . ',' . $rgba[1] . ',' . $rgba[2] . ',' . $rgba[3] . ')', + 'darken' => 'rgba(' . max(0, $rgba[0] - 15) . ',' . max(0, $rgba[1] - 15) . ',' . max(0, $rgba[2] - 15) . ',' . $rgba[3] . ')', + 'veryDarken' => 'rgba(' . max(0, $rgba[0] - 20) . ',' . max(0, $rgba[1] - 20) . ',' . max(0, $rgba[2] - 20) . ',' . $rgba[3] . ')', + 'text' => self::relativeLuminanceW3C($rgba) > .22 ? "#222" : "#DDD", + 'rgb' => 'rgb(' . $rgba[0] . ',' . $rgba[1] . ',' . $rgba[2] . ')', + 'invert' => 'rgba (' . + ($rgba[0] < 128 ? 255 : 0) . ',' . + ($rgba[1] < 128 ? 255 : 0) . ',' . + ($rgba[1] < 128 ? 255 : 0) . ',' . + ($rgba[0] < 128 ? 255 : 0) . ')' + ]; + } + + /** + * Supprime un cookie + * @param string $cookieKey Clé du cookie à supprimer + */ + public static function deleteCookie($cookieKey) + { + unset($_COOKIE[$cookieKey]); + setcookie($cookieKey, '', time() - 3600, helper::baseUrl(false, false), '', false, true); + } + + /** + * Filtre une chaîne en fonction d'un tableau de données + * @param string $text Chaîne à filtrer + * @param int $filter Type de filtre à appliquer + * @return string + */ + public static function filter($text, $filter) + { + $text = is_null($text) ? $text : trim($text); + switch ($filter) { + case self::FILTER_BOOLEAN: + $text = (bool) $text; + break; + case self::FILTER_DATETIME: + $timezone = new DateTimeZone(core::$timezone); + $date = new DateTime($text); + $date->setTimezone($timezone); + $text = (int) $date->format('U'); + break; + case self::FILTER_FLOAT: + $text = filter_var($text, FILTER_SANITIZE_NUMBER_FLOAT); + $text = (float) $text; + break; + case self::FILTER_ID: + $text = mb_strtolower($text, 'UTF-8'); + $text = strip_tags( + str_replace( + explode(',', 'á,à,â,ä,ã,å,ç,é,è,ê,ë,í,ì,î,ï,ñ,ó,ò,ô,ö,õ,ú,ù,û,ü,ý,ÿ,\',", '), + explode(',', 'a,a,a,a,a,a,c,e,e,e,e,i,i,i,i,n,o,o,o,o,o,u,u,u,u,y,y,-,-,-'), + $text + ) + ); + $text = preg_replace('/([^a-z0-9-])/', '', $text); + // Supprime les emoji + $text = preg_replace('/[[:^print:]]/', '', $text); + // Supprime les tirets en fin de chaine (emoji en fin de nom) + $text = rtrim($text, '-'); + // Cas où un identifiant est vide + if (empty($text)) { + $text = uniqid(''); + } + // Un ID ne peut pas être un entier, pour éviter les conflits avec le système de pagination + if (intval($text) !== 0) { + $text = '_' . $text; + } + break; + case self::FILTER_INT: + $text = (int) filter_var($text, FILTER_SANITIZE_NUMBER_INT); + break; + case self::FILTER_MAIL: + $text = filter_var($text, FILTER_SANITIZE_EMAIL); + break; + case self::FILTER_PASSWORD: + $text = password_hash($text, PASSWORD_BCRYPT); + break; + case self::FILTER_STRING_LONG: + $text = mb_substr(filter_var($text, FILTER_SANITIZE_FULL_SPECIAL_CHARS), 0, 500000); + break; + case self::FILTER_STRING_SHORT: + $text = mb_substr(filter_var($text, FILTER_SANITIZE_FULL_SPECIAL_CHARS), 0, 500); + break; + case self::FILTER_TIMESTAMP: + $text = date('Y-m-d H:i:s', $text); + break; + case self::FILTER_URL: + $text = filter_var($text, FILTER_SANITIZE_URL); + break; + } + return $text; + } + + /** + * Incrémente une clé en fonction des clés ou des valeurs d'un tableau + * @param mixed $key Clé à incrémenter + * @param array $array Tableau à vérifier + * @return string + */ + public static function increment($key, $array = []) + { + // Pas besoin d'incrémenter si la clef n'existe pas + if ($array === []) { + return $key; + } + // Incrémente la clef + else { + // Si la clef est numérique elle est incrémentée + if (is_numeric($key)) { + $newKey = $key; + while (array_key_exists($newKey, $array) or in_array($newKey, $array)) { + $newKey++; + } + } + // Sinon l'incrémentation est ajoutée après la clef + else { + $i = 2; + $newKey = $key; + while (array_key_exists($newKey, $array) or in_array($newKey, $array)) { + $newKey = $key . '-' . $i; + $i++; + } + } + return $newKey; + } + } + + /** + * Minimise du css + * @param string $css Css à minimiser + * @return string + */ + public static function minifyCss($css) + { + // Supprime les commentaires + $css = preg_replace('!/\*[^*]*\*+([^/][^*]*\*+)*/!', '', $css); + // Supprime les tabulations, espaces, nouvelles lignes, etc... + $css = str_replace(["\r\n", "\r", "\n", "\t", ' ', ' ', ' '], '', $css); + $css = preg_replace(['(( )+{)', '({( )+)'], '{', $css); + $css = preg_replace(['(( )+})', '(}( )+)', '(;( )*})'], '}', $css); + $css = preg_replace(['(;( )+)', '(( )+;)'], ';', $css); + // Convertir les codes entités + $css = htmlspecialchars_decode($css); + // Supprime les balises HTML + $css = strip_tags($css); + // Retourne le css minifié + return $css; + } + + /** + * Minimise du js + * @param string $js Js à minimiser + * @return string + */ + public static function minifyJs($js) + { + // Supprime les commentaires + $js = preg_replace('/\\/\\*[^*]*\\*+([^\\/][^*]*\\*+)*\\/|\s*(?getUrl() + * @param string $item pagination nombre d'éléments par page + * @param null|int $sufix Suffixe de l'url + * @return array + */ + public static function pagination($array, $url, $item, $suffix = null) + { + // Scinde l'url + $url = explode('/', $url); + // Url de pagination + $urlPagination = is_numeric($url[count($url) - 1]) ? array_pop($url) : 1; + // Url de la page courante + $urlCurrent = implode('/', $url); + // Nombre d'éléments à afficher + $nbElements = count($array); + // Nombre de page + $nbPage = ceil($nbElements / $item); + // Page courante + $currentPage = is_numeric($urlPagination) ? self::filter($urlPagination, self::FILTER_INT) : 1; + // Premier élément de la page + $firstElement = ($currentPage - 1) * $item; + // Dernier élément de la page + $lastElement = $firstElement + $item; + $lastElement = ($lastElement > $nbElements) ? $nbElements : $lastElement; + // Mise en forme de la liste des pages + $pages = ''; + if ($nbPage > 1) { + for ($i = 1; $i <= $nbPage; $i++) { + $disabled = ($i === $currentPage) ? ' class="disabled"' : false; + $pages .= '' . $i . ''; + } + $pages = ''; + } + // Retourne un tableau contenant les informations sur la pagination + return [ + 'first' => $firstElement, + 'last' => $lastElement, + 'pages' => $pages + ]; + } + + /** + * Calcul de la luminance relative d'une couleur + */ + public static function relativeLuminanceW3C($rgba) + { + // Conversion en sRGB + $RsRGB = $rgba[0] / 255; + $GsRGB = $rgba[1] / 255; + $BsRGB = $rgba[2] / 255; + // Ajout de la transparence + $RsRGBA = $rgba[3] * $RsRGB + (1 - $rgba[3]); + $GsRGBA = $rgba[3] * $GsRGB + (1 - $rgba[3]); + $BsRGBA = $rgba[3] * $BsRGB + (1 - $rgba[3]); + // Calcul de la luminance + $R = ($RsRGBA <= .03928) ? $RsRGBA / 12.92 : pow(($RsRGBA + .055) / 1.055, 2.4); + $G = ($GsRGBA <= .03928) ? $GsRGBA / 12.92 : pow(($GsRGBA + .055) / 1.055, 2.4); + $B = ($BsRGBA <= .03928) ? $BsRGBA / 12.92 : pow(($BsRGBA + .055) / 1.055, 2.4); + return .2126 * $R + .7152 * $G + .0722 * $B; + } + + /** + * Retourne les attributs d'une balise au bon format + * @param array $array Liste des attributs ($key => $value) + * @param array $exclude Clés à ignorer ($key) + * @return string + */ + public static function sprintAttributes(array $array = [], array $exclude = []) + { + $exclude = array_merge( + [ + 'before', + 'classWrapper', + 'help', + 'label' + ], + $exclude + ); + $attributes = []; + foreach ($array as $key => $value) { + if (($value or $value === 0) and in_array($key, $exclude) === false) { + // Désactive le message de modifications non enregistrées pour le champ + if ($key === 'noDirty') { + $attributes[] = 'data-no-dirty'; + } + // Disabled + // Readonly + elseif (in_array($key, ['disabled', 'readonly'])) { + $attributes[] = sprintf('%s', $key); + } + // Autres + else { + $attributes[] = sprintf('%s="%s"', $key, $value); + } + } + } + return implode(' ', $attributes); + } + + /** + * Retourne un segment de chaîne sans couper de mot + * @param string $text Texte à scinder + * @param int $start (voir substr de PHP pour fonctionnement) + * @param int $length (voir substr de PHP pour fonctionnement) + * @return string + */ + public static function subword($text, $start, $length) + { + $text = trim($text); + if (strlen($text) > $length) { + $text = mb_substr($text, $start, $length); + $text = mb_substr($text, 0, min(mb_strlen($text), mb_strrpos($text, ' '))); + } + return $text; + } + + /** + * Cryptage + * @param string $key la clé d'encryptage + * @param string $string la chaine à coder + * @return string + */ + public static function encrypt($string, $key) + { + $encrypted = openssl_encrypt($string, "AES-256-CBC", $key, 0, substr(md5($key), 0, 16)); + return base64_encode($encrypted); + } + + /** + * Décryptage + * @param string $key la clé d'encryptage + * @param string $string la chaine à décoder + * @return string + */ + public static function decrypt($string, $key) + { + $decrypted = openssl_decrypt(base64_decode($string), "AES-256-CBC", $key, 0, substr(md5($key), 0, 16)); + return $decrypted; + } + +} \ No newline at end of file diff --git a/core/class/jsondb/Dot.class.php b/core/class/jsondb/Dot.class.php new file mode 100644 index 0000000..29b5dfa --- /dev/null +++ b/core/class/jsondb/Dot.class.php @@ -0,0 +1,477 @@ +data = $data; + } + } + + /** + * Get value of path, default value if path doesn't exist or all data + * + * @param array $array Source Array + * @param mixed|null $key Path + * @param mixed|null $default Default value + * @return mixed Value of path + */ + public static function getValue($array, $key, $default = null) + { + if (is_string($key)) { + // Iterate path + $keys = explode('.', $key); + foreach ($keys as $key) { + if (!isset($array[$key])) { + return $default; + } + $array = &$array[$key]; + } + // Get value + return $array; + } elseif (is_null($key)) { + // Get all data + return $array; + } + return null; + } + + /** + * Set value or array of values to path + * + * @param array $array Target array with data + * @param mixed $key Path or array of paths and values + * @param mixed|null $value Value to set if path is not an array + */ + public static function setValue(&$array, $key, $value) + { + if (is_string($key)) { + // Iterate path + $keys = explode('.', $key); + foreach ($keys as $key) { + if (!isset($array[$key]) || !is_array($array[$key])) { + $array[$key] = []; + } + $array = &$array[$key]; + } + // Set value to path + $array = $value; + } elseif (is_array($key)) { + // Iterate array of paths and values + foreach ($key as $k => $v) { + self::setValue($array, $k, $v); + } + } + } + + /** + * Add value or array of values to path + * + * @param array $array Target array with data + * @param mixed $key Path or array of paths and values + * @param mixed|null $value Value to set if path is not an array + * @param boolean $pop Helper to pop out last key if value is an array + */ + public static function addValue(&$array, $key, $value = null, $pop = false) + { + if (is_array($key)) { + // Iterate array of paths and values + foreach ($key as $k => $v) { + self::addValue($array, $k, $v); + } + } else { + // Iterate path + $keys = explode('.', (string)$key); + if ($pop === true) { + array_pop($keys); + } + foreach ($keys as $key) { + if (!isset($array[$key]) || !is_array($array[$key])) { + $array[$key] = []; + } + $array = &$array[$key]; + } + // Add value to path + $array[] = $value; + } + } + + /** + * Delete path or array of paths + * + * @param array $array Target array with data + * @param mixed $key Path or array of paths to delete + */ + public static function deleteValue(&$array, $key) + { + if (is_string($key)) { + // Iterate path + $keys = explode('.', $key); + $last = array_pop($keys); + foreach ($keys as $key) { + if (!isset($array[$key])) { + return; + } + $array = &$array[$key]; + } + if (isset($array[$last])) { + // Detele path + unset($array[$last]); + } + } elseif (is_array($key)) { + // Iterate array of paths + foreach ($key as $k) { + self::delete($k); + } + } + } + + + /** + * Get value of path, default value if path doesn't exist or all data + * + * @param mixed|null $key Path + * @param mixed|null $default Default value + * @return mixed Value of path + */ + public function get($key, $default = null, $asObject = false) + { + $value = self::getValue($this->data, $key, $default); + if ($asObject && is_array($value)) { + return new self($value); + } + + return $value; + } + + /** + * Set value or array of values to path + * + * @param mixed $key Path or array of paths and values + * @param mixed|null $value Value to set if path is not an array + * @return $this + */ + public function set($key, $value = null) + { + self::setValue($this->data, $key, $value); + return $this; + } + + /** + * Add value or array of values to path + * + * @param mixed $key Path or array of paths and values + * @param mixed|null $value Value to set if path is not an array + * @param boolean $pop Helper to pop out last key if value is an array + * @return $this + */ + public function add($key, $value = null, $pop = false) + { + self::addValue($this->data, $key, $value); + return $this; + } + + /** + * Check if path exists + * + * @param string $key Path + * @return boolean + */ + public function has($key) + { + $keys = explode('.', (string)$key); + $data = &$this->data; + foreach ($keys as $key) { + if (!isset($data[$key])) { + return false; + } + $data = &$data[$key]; + } + + return true; + } + + /** + * Delete path or array of paths + * + * @param mixed $key Path or array of paths to delete + * @return $this + */ + public function delete($key) + { + self::deleteValue($this->data, $key); + return $this; + } + + /** + * Increase numeric value + * + * @param string $key + * @param float $number + * @return float + */ + public function plus(string $key, float $number): float + { + $newAmount = $this->get($key, 0) + $number; + $this->set($key, $newAmount); + + return $newAmount; + } + + /** + * Reduce numeric value + * + * @param string $key + * @param float $number + * @return float + */ + public function minus(string $key, float $number): float + { + $newAmount = $this->get($key, 0) - $number; + $this->set($key, $newAmount); + + return $newAmount; + } + + /** + * Delete all data, data from path or array of paths and + * optionally format path if it doesn't exist + * + * @param mixed|null $key Path or array of paths to clean + * @param boolean $format Format option + */ + public function clear($key = null, $format = false) + { + if (is_string($key)) { + // Iterate path + $keys = explode('.', $key); + $data = &$this->data; + foreach ($keys as $key) { + if (!isset($data[$key]) || !is_array($data[$key])) { + if ($format === true) { + $data[$key] = []; + } else { + return; + } + } + $data = &$data[$key]; + } + // Clear path + $data = []; + } elseif (is_array($key)) { + // Iterate array + foreach ($key as $k) { + $this->clear($k, $format); + } + } elseif (is_null($key)) { + // Clear all data + $this->data = []; + } + } + + /** + * Set data + * + * @param array $data + */ + public function setData(array $data) + { + $this->data = $data; + } + + /** + * Set data as a reference + * + * @param array $data + */ + public function setDataAsRef(array &$data) + { + $this->data = &$data; + } + + /** + * @inheritDoc + */ + public function offsetSet($offset, $value): void + { + $this->set($offset, $value); + } + + /** + * @inheritDoc + */ + public function offsetExists($offset): bool + { + return $this->has($offset); + } + + /** + * @inheritDoc + */ + public function offsetGet($offset): mixed + { + return $this->get($offset); + } + + /** + * @inheritDoc + */ + public function offsetUnset($offset): void + { + $this->delete($offset); + } + + /** + * Magic methods + */ + public function __set($key, $value = null) + { + $this->set($key, $value); + } + + public function __get($key) + { + return $this->get($key); + } + + public function __isset($key) + { + return $this->has($key); + } + + public function __unset($key) + { + $this->delete($key); + } + + /** + * Check for emptiness + * + * @return bool + */ + public function isEmpty(): bool + { + return !(bool)count($this->data); + } + + /** + * Return all data as array + * + * @return array + */ + public function toArray(): array + { + return $this->data; + } + + /** + * Return as json string + * + * @return false|string + */ + public function toJson() + { + return json_encode($this->data, JSON_UNESCAPED_UNICODE|JSON_PRETTY_PRINT); + } + + /** + * @return string + */ + public function __toString(): string + { + return $this->toJson(); + } + + /** + * @return array + */ + public function __toArray(): array + { + return $this->toArray(); + } + + /** + * Return the current element + * @link https://php.net/manual/en/iterator.current.php + * @return mixed Can return any type. + * @since 5.0.0 + */ + public function current(): mixed + { + return current($this->data); + } + + /** + * Move forward to next element + * @link https://php.net/manual/en/iterator.next.php + * @return void Any returned value is ignored. + * @since 5.0.0 + */ + public function next(): void + { + next($this->data); + } + + /** + * Return the key of the current element + * @link https://php.net/manual/en/iterator.key.php + * @return mixed scalar on success, or null on failure. + * @since 5.0.0 + */ + public function key(): mixed + { + return key($this->data); + } + + /** + * Checks if current position is valid + * @link https://php.net/manual/en/iterator.valid.php + * @return bool The return value will be casted to boolean and then evaluated. + * Returns true on success or false on failure. + * @since 5.0.0 + */ + public function valid(): bool + { + $key = key($this->data); + return ($key !== NULL && $key !== FALSE); + } + + /** + * Rewind the Iterator to the first element + * @link https://php.net/manual/en/iterator.rewind.php + * @return void Any returned value is ignored. + * @since 5.0.0 + */ + public function rewind(): void + { + reset($this->data); + } + + /** + * @inheritDoc + */ + public function count(): int + { + return count($this->data); + } +} \ No newline at end of file diff --git a/core/class/jsondb/JsonDb.class.php b/core/class/jsondb/JsonDb.class.php new file mode 100644 index 0000000..8344c04 --- /dev/null +++ b/core/class/jsondb/JsonDb.class.php @@ -0,0 +1,161 @@ +config = array_merge([ + 'name' => 'data.json', + 'backup' => false, + 'dir' => getcwd() + ], $config); + $this->loadData(); + parent::__construct(); + } + + /** + * Reload data from file + * @return $this + */ + public function reload() + { + $this->loadData(true); + return $this; + } + + + /** + * Set value or array of values to path + * + * @param mixed $key Path or array of paths and values + * @param mixed|null $value Value to set if path is not an array + * @param bool $save Save data to database + * @return $this + */ + public function set($key, $value = null, $save = true) + { + parent::set($key, $value); + if ($save) + $this->save(); + return $this; + } + + /** + * Add value or array of values to path + * + * @param mixed $key Path or array of paths and values + * @param mixed|null $value Value to set if path is not an array + * @param boolean $pop Helper to pop out last key if value is an array + * @param bool $save Save data to database + * @return $this + */ + public function add($key, $value = null, $pop = false, $save = true) + { + parent::add($key, $value, $pop); + if ($save) + $this->save(); + return $this; + } + + /** + * Delete path or array of paths + * + * @param mixed $key Path or array of paths to delete + * @param bool $save Save data to database + * @return $thisurn $this + */ + public function delete($key, $save = true) + { + parent::delete($key); + if ($save) + $this->save(); + return $this; + } + + /** + * Delete all data, data from path or array of paths and + * optionally format path if it doesn't exist + * + * @param mixed|null $key Path or array of paths to clean + * @param boolean $format Format option + * @param bool $save Save data to database + * @return $this + */ + public function clear($key = null, $format = false, $save = true) + { + parent::clear($key, $format); + if ($save) + $this->save(); + return $this; + } + + + /** + * Local database upload + * @param bool $reload Reboot data? + * @return array|mixed|null + */ + protected function loadData($reload = false) + { + if ($this->data === null || $reload) { + $this->db = $this->config['dir'] . $this->config['name']; + if (!file_exists($this->db)) { + return null; // Rebuild database manage by CMS + } else { + if ($this->config['backup']) { + try { + //todo make backup of database + copy($this->config['dir'] . DIRECTORY_SEPARATOR . $this->config['name'], $this->config['dir'] . DIRECTORY_SEPARATOR . $this->config['name'] . '.backup'); + } catch (\Exception $e) { + + } + } + } + $this->data = json_decode(file_get_contents($this->db), true); + if (!$this->data === null) { + throw new \InvalidArgumentException('Database file ' . $this->db + . ' contains invalid json object. Please validate or remove file'); + } + } + return $this->data; + } + + /** + * Save database + */ + public function save() + { + //$v = json_encode($this->data, JSON_UNESCAPED_UNICODE ); + $v = json_encode($this->data, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_FORCE_OBJECT); + $l = strlen($v); + $t = 0; + while ($t < 5) { + $w = file_put_contents($this->db, $v); // Multi user get a locker + if ($w == $l) { + break; + } + $t++; + } + if ($w !== $l) { + exit('Erreur d\'écriture, les données n\'ont pas été sauvegardées'); + } + + } +} \ No newline at end of file diff --git a/core/class/jsondb/LICENSE.md b/core/class/jsondb/LICENSE.md new file mode 100644 index 0000000..a3ecbe0 --- /dev/null +++ b/core/class/jsondb/LICENSE.md @@ -0,0 +1,19 @@ +Copyright (c) 2016-2017 Andrey Mistulov + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/core/class/jsondb/README.md b/core/class/jsondb/README.md new file mode 100644 index 0000000..6656cd7 --- /dev/null +++ b/core/class/jsondb/README.md @@ -0,0 +1,269 @@ +# Dot - PHP dot notation array access +Based on [adbario/php-dot-notation](https://github.com/adbario/php-dot-notation) package + +Easy access to multidimensional arrays with dot notation. +With dot notation, your code is cleaner and handling deeper arrays is super easy. + +This class implements PHP's ArrayAccess class, so Dot object can also be used the same way as normal arrays with additional dot notation. + +With Dot you can change this: + +```php +echo $data['info']['home']['address']; +``` + +to this: + +```php +echo $data->get('info.home.address'); +``` + +or even this: + +```php +echo $data['info.home.address']; +``` + +## Installation + +Via composer: + +``` +composer require adbario/php-dot-notation +``` + +Or just copy the class file Dot.php and handle namespace yourself. + +#### With [Composer](https://getcomposer.org/): + +``` +composer require adbario/php-dot-notation +``` + +#### Manual installation: +1. Download the latest release +2. Extract the files into your project +3. require_once '/path/to/php-dot-notation/src/Dot.php'; + +## Usage + +This array will be used as a reference on this guide: + +```php +$array = [ + 'user' => [ + 'firstname' => 'John', + 'lastname' => 'Smith' + ], + 'info' => [ + 'kids' => [ + 0 => 'Laura', + 1 => 'Chris', + 2 => 'Little Johnny' + ], + 'home' => [ + 'address' => 'Rocky Road 3' + ] + ] +]; +``` + +### Create a Dot object + +To start with an empty array, just create a new Dot object: + +```php +$data = new \Adbar\Dot; +``` + +If you have an array already available, inject it to the Dot object: + +```php +$data = new \Adbar\Dot($array); +``` + +Set an array after creating the Dot object: + +```php +$data->setArray($array); +``` + +Set an array as a reference, and all changes will be made directly to the original array: + +```php +$data->setReference($array); +``` + +### Set a value + +Set i.e. a phone number in the 'home' array: + +```php +$data->set('info.home.tel', '09-123-456-789'); + +// Array style +$data['info.home.tel'] = '09-123-456-789'; +``` + +Set multiple values at once: + +```php +$data->set([ + 'user.haircolor' => 'blue', + 'info.home.address' => 'Private Lane 1' +]); +``` + +If the value already exists, Dot will override it with a new value. + +### Get a value + +```php +echo $data->get('info.home.address'); + +// Default value if the path doesn't exist +echo $data->get('info.home.country', 'some default value'); + +// Array style +echo $data['info.home.address']; +``` + +Get all the stored values: + +```php +$values = $data->all(); +`` + +Get a value from a path and remove it: + +```php +$address = $data->pull('home.address'); +``` + +Get all the stored values and remove them: + +```php +$values = $data->pull(); +``` + +### Add a value + +```php +$data->add('info.kids', 'Amy'); +``` + +Multiple values at once: + +```php +$data->add('info.kids', [ + 'Ben', 'Claire' +]); +``` + +### Check if a value exists + +```php +if ($data->has('info.home.address')) { + // Do something... +} + +// Array style +if (isset($data['info.home.address'])) { + // Do something... +} +``` + +### Delete a value + +```php +$data->delete('info.home.address'); + +// Array style +unset($data['info.home.address']); +``` + +Multiple values at once: + +```php +$data->delete([ + 'user.lastname', 'info.home.address' +]); +``` + +### Clear values + +Delete all the values from a path: + +```php +$data->clear('info.home'); +``` + +Clear multiple paths at once: + +```php +$data->clear([ + 'user', 'info.home' +]); +``` + +Clear all data: + +```php +$data->clear(); +``` + +### Sort the values + +You can sort the values of a given path or all the stored values. + +Sort the values of a path: + +```php +$kids = $data->sort('info.kids'); + +// Sort recursively +$info = $data->sort('info'); +``` + +Sort all the values + +```php +$sorted = $data->sort(); + +// Sort recursively +$sorted = $data->sort(); +``` + +### Magic methods + +Magic methods can be used to handle single level data (without dot notation). These examples are not using the same data array as examples above. + +Set a value: + +```php +$data->name = 'John'; +``` + +Get a value: + +```php +echo $data->name; +``` + +Check if a value exists: + +```php +if (isset($data->name)) { + // Do something... +} +``` + +Delete a value: + +```php +unset($data->name); +``` + +## License + +[MIT license](LICENSE.md) diff --git a/core/class/layout.class.php b/core/class/layout.class.php new file mode 100644 index 0000000..c6b0f56 --- /dev/null +++ b/core/class/layout.class.php @@ -0,0 +1,1310 @@ +core = $core; + } + + /** + * Affiche le consentement aux cookies + */ + public function showCookies() + { + // La gestion des cookies est externalisée + if ($this->getData(['config', 'cookieConsent']) === false) { + return; + } + // Le cookie est déjà validé + if ($this->getInput('ZWII_COOKIE_CONSENT') === 'true') { + return; + } + $item = '
'; + // Bouton de fermeture + $item .= '
'; + $item .= template::ico('cancel'); + $item .= '
'; + // Texte de la popup + $item .= '

' . $this->getData(['locale', 'cookies', 'titleLabel']) . '

'; + $item .= '

' . $this->getData(['locale', 'cookies', 'mainLabel']) . '

'; + // Formulaire de réponse + if ( + $this->getData(['locale', 'homePageId']) === $this->getUrl(0) + ) { + $item .= '
'; + } else { + $item .= ''; + } + $item .= '

'; + $item .= ''; + $item .= '
'; + // mentions légales si la page est définie + $legalPage = $this->getData(['locale', 'legalPageId']); + if ($legalPage !== 'none') { + $item .= '

' . $this->getData(['locale', 'cookies', 'linkLegalLabel']) . '

'; + } + $item .= '
'; + echo $item; + } + + /** + * Formate le contenu de la page selon les gabarits + * @param Page par defaut + */ + public function showMain() + { + echo '
'; + // Récupérer la config de la page courante + $blocks = is_null($this->getData(['page', $this->getUrl(0), 'block'])) ? '12' : $this->getData(['page', $this->getUrl(0), 'block']); + $blocks = explode('-', $blocks); + // Initialiser + $blockleft = ''; + $blockright = ''; + switch (sizeof($blocks)) { + case 1: // une colonne + $content = 'col' . $blocks[0]; + break; + case 2: // 2 blocs + if ($blocks[0] < $blocks[1]) { // détermine la position de la colonne + $blockleft = 'col' . $blocks[0]; + $content = 'col' . $blocks[1]; + } else { + $content = 'col' . $blocks[0]; + $blockright = 'col' . $blocks[1]; + } + break; + case 3: // 3 blocs + $blockleft = 'col' . $blocks[0]; + $content = 'col' . $blocks[1]; + $blockright = 'col' . $blocks[2]; + } + // Page pleine pour la configuration des modules et l'édition des pages sauf l'affichage d'un article de blog + $pattern = ['config', 'edit', 'add', 'comment', 'data']; + if ( + (sizeof($blocks) === 1 || + in_array($this->getUrl(1), $pattern)) + ) { // Pleine page en mode configuration + if ($this->getData(['page', $this->getUrl(0), 'navLeft']) === 'top' || $this->getData(['page', $this->getUrl(0), 'navRight']) === 'top') { + $this->showNavButtons('top'); + } + $this->showContent(); + if ($this->getData(['page', $this->getUrl(0), 'navLeft']) === 'bottom' || $this->getData(['page', $this->getUrl(0), 'navRight']) === 'bottom') { + $this->showNavButtons('bottom'); + } + } else { + echo '
'; + /** + * Barre gauche + */ + if ($blockleft !== '') { + echo '
"; + } + /** + * Contenu de page + */ + echo '
'; + $this->showNavButtons('top'); + $this->showContent(); + $this->showNavButtons('bottom'); + echo '
'; + /** + * Barre droite + */ + if ($blockright !== '') { + echo '
'; + } + echo '
'; + } + echo '
'; + } + + /** + * Affiche le contenu + * @param Page par défaut + */ + public function showContent() + { + + if ( + $this->core->output['title'] + and ($this->getData(['page', $this->getUrl(0)]) === null + or $this->getData(['page', $this->getUrl(0), 'hideTitle']) === false + or $this->getUrl(1) === 'config' + ) + ) { + echo '

' . $this->core->output['title'] . '

'; + } + + echo $this->core->output['content']; + } + + /** + * Affiche le pied de page + */ + public function showFooter() + { + // Déterminer la position + $positionFixed = ''; + if ( + $this->getData(['theme', 'footer', 'position']) === 'site' + // Affiche toujours le pied de page pour l'édition du thème + or ($this->getData(['theme', 'footer', 'position']) === 'hide' + and $this->getUrl(0) === 'theme' + ) + ) { + $position = 'site'; + } else { + $position = 'body'; + if ($this->getData(['theme', 'footer', 'fixed']) === true) { + $positionFixed = ' footerbodyFixed'; + } + // Sortir de la division précédente + echo ''; + } + + echo $this->getData(['theme', 'footer', 'position']) === 'hide' ? '