Switch to PHP 7.1
copy httpdocs/cmts folder from standard
move admin menu from /common/admin/html/cmts.usermenu.html to /cmts/2.4/html
delete /common/admin/ (or rename to _admin to exclude from commit)
move all .less files from /common/css/modules to their module folder /modules/<modulename>/css/ (create if not exists) and rename to .css
delete /common/css/modules
backup /session.php, /admin.php, /index.php, /cache.php (rename to _*) and replace with new version
replace /translate with current version
check standard directives in .htaccess (expires on, pagespeed off), RewriteRule for “redirects.csv” and new RewriteRule for “^translate$” at the bottom
remove from .htaccess: ^video, ^playvideo, all “TinyMCE Integration”, “htc”-Rule
backup and delete all folders in /common/img except the users img folder
move images in the users img folder to /upload/img/
backup and delete /common/img
backup and delete all /common/html/cmts.*html and /common/html/section.html
backup and delete all /common/css/cmts*.css and jquery*.css and any other module related css
rename /common/css/css3.less to cmts.less
create /common/css/config.less and move all variables / mixin definition from the top of layout.less until headings() to this file
remove @imgdir-variable from /common/css/config.less
search and replace in less and css files: replace @{imgdir} with /img/
remove /common/css/reset.css : reset() must be a mixin in /common/css/cmts.less, check this first
remove /common/css/fonts.css : fonts() must be a mixin in /common/css/config.less, check they match
optimal now in folder /common/css : cmts.less, config.less, layout.css, layout.less - no other files, fonts remain in subfolder /common/css/fonts
create folder /common/lib
clean up /common/js/cmts.js: only customizations in this file (like cookie bar initialize), remove all the rest of the code (is now in standard)
backup/remove /common/php/includes: folder is not in use anymore
copy /common/php/tools/redirects.php, /cache/clear.php
remove /common/php/tools/* except download.php, gradient.php, pixel.php, redirects.php, sitemap.php
inspect /config/cfg.common.php common_frontend_css, (common_frontend_module_css), common_frontend_js and move files one by one from /common/js to new /common/lib, create folders for plugins and versions subfolders if not already there, move the files to new location
backup and replace /config/cfg.cache.php, /config/cfg.system.php
edit /config/cfg.cache.php: add $libVersion for all the plugins previously copied and remove unused ones
see $commonFiles: make sure jquery.js is in LIB_ROOT in the correct version (see /config/cfg.project.js JQUERY_VERSION, download corresponding or update to new one (if compatible):
https://code.jquery.com/jquery-1.11.3.js (replace version number with your version and copy the file to /common/lib/jquery/<version>/jquery-<version>.js), fix $libVersion['jquery']
check $pluginFiles array in cfg.cache.php: remove unused, add your own plugin files, respect $libVersion for all version numbers when adding paths
edit cfg.project.php: remove constants for backend, add/edit CMTS_VERSION = 2.4 at the top, remove JQUERY_*-constants
backup and remove /config/cfg.common.php
backup/replace in /common/php/classes (entire folders!): cache, cmts, db, error, editor, http, idna, less, mailer, mem, pgp, pictures, seo (module will be updated later), smtswidget (grab new one from smts-code page:
http://smts.i-mts.net/u0658/de/widget/code?key=72da#smts-tab-api), tbs
backup/replace /common/php/functions/*, /common/php/tools/*, /common/html/layout.html
remove from /common/php/classes: benchmark, translate, video
backup/replace in /common/php/modules: common, /editor/admin/, /editor/css/tinymce.css (remove editor.css), languages, layouts, login, menu/admin, modules, page, sections, seo, sitemap, translate, users, module.php, modules.php
Attention now only GTM id is supported and it is not a constant anymore (relace /common/html/gtm.html with new version and remove CLIENT_GTM_ID from /config/cfg.project.php), check the seo-settings in the backend and enter the GTM_ID there if any.
check the correct include paths for classes in /session.php
copy /config/cfg.editor.php
Test the page in the browser. Probably some smaller fixes to .less and php
copy /upload/lang from standard
in Terminal: navigate to httpdocs folder, execute: