├── src ├── Controller │ ├── .gitignore │ ├── Controller.php │ ├── AuthController.php │ ├── CollectController.php │ └── DashboardController.php ├── Kernel.php ├── Entity │ ├── Domain.php │ ├── SiteStats.php │ ├── PageStats.php │ ├── ReferrerStats.php │ └── User.php ├── Command │ ├── RotateSeedCommand.php │ ├── UserDeleteCommand.php │ ├── UserCreateCommand.php │ ├── DomainDeleteCommand.php │ ├── DatabasePurgeCommand.php │ ├── AggregateCommand.php │ ├── DatabaseResetCommand.php │ ├── DatabaseMigrateCommand.php │ ├── DomainCreateCommand.php │ └── DatabaseSeedCommand.php ├── ReferrerBlocklist.php ├── Database.php ├── Repository │ ├── UserRepository.php │ ├── DomainRepository.php │ ├── StatRepositorySqlite.php │ ├── StatRepositoryMysql.php │ └── StatRepository.php ├── Template.php ├── Security │ └── Gate.php ├── Chart.php ├── Dates.php ├── SessionManager.php ├── Normalizer.php └── Aggregator.php ├── public ├── favicon.ico ├── screenshot.png ├── icon-128x128.png ├── index.php ├── ka.js └── dashboard.js ├── config ├── bundles.php ├── routes.yaml ├── routes │ └── framework.yaml ├── preload.php ├── packages │ ├── routing.yaml │ └── framework.yaml └── services.yaml ├── templates ├── _footer.html.php ├── _performance.html.php ├── _header.html.php ├── dashboard-list.html.php ├── dashboard-create.html.php ├── login.html.php ├── _chart.html.php ├── settings.html.php └── dashboard.html.php ├── .env.test ├── migrations ├── mysql │ ├── 006-domain-user.php │ ├── 002-domains-table.php │ ├── 004-settings-table.php │ ├── 001-users-table.php │ └── 005-domain-settings.php └── sqlite │ ├── 002-domains-table.php │ ├── 004-settings-table.php │ ├── 001-users-table.php │ ├── 005-domain-settings.php │ └── 006-domain-user.php ├── .editorconfig ├── tests ├── bootstrap.php ├── ReferrerBlocklistTest.php ├── Repository │ ├── UserRepositoryTest.php │ └── DomainRepositoryTest.php ├── benchmarks │ ├── preg-match-constraint-vs-negative-lookahead.php │ ├── preg-match-vs-ctype-alnum.php │ ├── str-starts-with-vs-strncmp.php │ └── in-array-vs-multiple-if.php ├── NormalizerTest.php ├── Controller │ ├── AuthControllerTest.php │ └── CollectControllerTest.php ├── SessionManagerTest.php ├── SmokeTest.php └── DatesTest.php ├── SECURITY.md ├── phpcs.xml.dist ├── psalm.xml ├── .gitignore ├── .github └── workflows │ ├── php-check-syntax.yml │ └── test.yml ├── bin ├── console ├── check_templates └── phpunit ├── .env ├── phpunit.xml.dist ├── composer.json ├── symfony.lock ├── README.md └── LICENSE /src/Controller/.gitignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ibericode/koko-analytics-standalone/main/public/favicon.ico -------------------------------------------------------------------------------- /public/screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ibericode/koko-analytics-standalone/main/public/screenshot.png -------------------------------------------------------------------------------- /public/icon-128x128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ibericode/koko-analytics-standalone/main/public/icon-128x128.png -------------------------------------------------------------------------------- /config/bundles.php: -------------------------------------------------------------------------------- 1 | ['all' => true], 5 | ]; 6 | -------------------------------------------------------------------------------- /config/routes.yaml: -------------------------------------------------------------------------------- 1 | controllers: 2 | resource: 3 | path: ../src/Controller/ 4 | namespace: App\Controller 5 | type: attribute 6 | -------------------------------------------------------------------------------- /templates/_footer.html.php: -------------------------------------------------------------------------------- 1 |