summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.editorconfig7
-rw-r--r--.eslintrc.js49
-rw-r--r--.github/dependabot.yml2
-rw-r--r--.github/pull_request_template.md12
-rw-r--r--.github/workflows/api-integration-tests.yml49
-rw-r--r--.github/workflows/api-php-static-code-check.yml10
-rw-r--r--.github/workflows/api-php-tests.yml11
-rw-r--r--.github/workflows/build-release.yml8
-rw-r--r--.github/workflows/frontend-nodejs-tests.yml4
-rw-r--r--.github/workflows/lint-eslint.yml46
-rw-r--r--.github/workflows/lint.yml10
-rw-r--r--.github/workflows/post-merge-tasks.yml2
-rw-r--r--.github/workflows/updater-test.yml80
-rw-r--r--.gitignore16
-rw-r--r--.gitmodules9
-rw-r--r--.stylelintignore3
-rw-r--r--.tx/config8
-rw-r--r--AUTHORS.md23
-rw-r--r--CHANGELOG.md147
-rw-r--r--Makefile23
-rw-r--r--README.md8
-rw-r--r--appinfo/info.xml12
-rw-r--r--appinfo/routes.php120
-rw-r--r--babel.config.js2
-rw-r--r--composer.json23
-rw-r--r--composer.lock1057
-rw-r--r--css/explore.css19
-rw-r--r--css/explore.scss66
-rw-r--r--css/mobile.css (renamed from css/mobile.scss)2
-rw-r--r--css/navigation.scss28
-rw-r--r--css/settings.css2
-rw-r--r--css/shortcuts.css4
-rw-r--r--docs/admin.md29
-rw-r--r--docs/api/api-v1-2.md24
-rw-r--r--docs/api/api-v1-3.md50
-rw-r--r--docs/clients.md4
-rw-r--r--docs/developer.md46
-rw-r--r--docs/faq.md118
-rw-r--r--docs/features/integration.md30
-rw-r--r--docs/features/plugins.md134
-rw-r--r--docs/install.md52
-rw-r--r--docs/troubleshooting.md97
-rw-r--r--js-old/app/Config.js6
-rw-r--r--js-old/controller/ContentController.js13
-rw-r--r--js-old/directive/NewsScroll.js18
-rw-r--r--js-old/directive/NewsStickyMenu.js6
-rw-r--r--js-old/gui/KeyboardShortcuts.js58
-rw-r--r--l10n/af.js1
-rw-r--r--l10n/af.json1
-rw-r--r--l10n/an.js17
-rw-r--r--l10n/an.json15
-rw-r--r--l10n/ar.js112
-rw-r--r--l10n/ar.json112
-rw-r--r--l10n/ast.js90
-rw-r--r--l10n/ast.json90
-rw-r--r--l10n/az.js5
-rw-r--r--l10n/az.json5
-rw-r--r--l10n/bg.js16
-rw-r--r--l10n/bg.json16
-rw-r--r--l10n/bn_BD.js1
-rw-r--r--l10n/bn_BD.json1
-rw-r--r--l10n/br.js1
-rw-r--r--l10n/br.json1
-rw-r--r--l10n/bs.js1
-rw-r--r--l10n/bs.json1
-rw-r--r--l10n/ca.js27
-rw-r--r--l10n/ca.json27
-rw-r--r--l10n/cs.js88
-rw-r--r--l10n/cs.json88
-rw-r--r--l10n/cy_GB.js1
-rw-r--r--l10n/cy_GB.json1
-rw-r--r--l10n/da.js26
-rw-r--r--l10n/da.json26
-rw-r--r--l10n/de.js28
-rw-r--r--l10n/de.json28
-rw-r--r--l10n/de_DE.js18
-rw-r--r--l10n/de_DE.json18
-rw-r--r--l10n/el.js7
-rw-r--r--l10n/el.json7
-rw-r--r--l10n/en_GB.js30
-rw-r--r--l10n/en_GB.json30
-rw-r--r--l10n/eo.js1
-rw-r--r--l10n/eo.json1
-rw-r--r--l10n/es.js18
-rw-r--r--l10n/es.json18
-rw-r--r--l10n/es_419.js5
-rw-r--r--l10n/es_419.json5
-rw-r--r--l10n/es_AR.js5
-rw-r--r--l10n/es_AR.json5
-rw-r--r--l10n/es_CL.js5
-rw-r--r--l10n/es_CL.json5
-rw-r--r--l10n/es_CO.js5
-rw-r--r--l10n/es_CO.json5
-rw-r--r--l10n/es_CR.js5
-rw-r--r--l10n/es_CR.json5
-rw-r--r--l10n/es_DO.js5
-rw-r--r--l10n/es_DO.json5
-rw-r--r--l10n/es_EC.js33
-rw-r--r--l10n/es_EC.json33
-rw-r--r--l10n/es_GT.js5
-rw-r--r--l10n/es_GT.json5
-rw-r--r--l10n/es_HN.js5
-rw-r--r--l10n/es_HN.json5
-rw-r--r--l10n/es_MX.js5
-rw-r--r--l10n/es_MX.json5
-rw-r--r--l10n/es_NI.js5
-rw-r--r--l10n/es_NI.json5
-rw-r--r--l10n/es_PA.js5
-rw-r--r--l10n/es_PA.json5
-rw-r--r--l10n/es_PE.js5