München Transparent ist ein alternatives Ratsinformationssystem (RIS) für München mit einer modernen Oberfläche, E-Mail-Benachrichtigungen, Volltextsuche, Geodaten, Erklärtexten und vielem mehr.
Vorausgesetzt werden nginx mit PHP >= 8.0 und MySQL/MariaDB sowie npm und composer.
Berechtigungen setzen und Abhängigkeiten installieren: (www-data
muss durch den passenden Nutzer ersetzt werden, bei MacOSX ist das z.B. _www
)
chown -R www-data:www-data protected/runtime
cp protected/config/main-production.template.php protected/config/main-production.php
Abhängigkeiten installieren und minimiertes javascript und css erzeugen:
npm install
composer install
npx gulp
server_name
muss in protected/config/main-production.php als SITE_BASE_URL
eingetragen werden.root
muss auf den html/
-Ordner zeigen.$yii_bootstrap
muss auf index.php
gesetzt werden.include
oder mit copy&paste.'db' => [
'connectionString' => 'mysql:host=127.0.0.1;dbname=muenchen_transparent',
'emulatePrepare' => true,
'username' => 'ris',
'password' => 'sec',
'charset' => 'utf8mb4',
'queryCacheID' => 'apcCache',
'schemaCachingDuration' => 3600,
],
cat docs/schema.sql docs/beispieldaten.sql docs/triggers.sql | mysql -u ris -psec muenchen_transparent
protected/yiic importstatistik
php8-curl
)solr
entpacken.solr/server/solr/muenchen-transparent/
kopieren.solr/bin/solr start
gestartet werden.Zum Zugriff auf die Daten gibt es eine OParl-Schnittstelle. Damit die API funktioniert, muss
OPARL_10_ROOT
in main-production.php
auf den gewünschten Wert gesetzt werden. Genauere Hinweise zur Implementierung finden
sich in oparl.md.
Als Testframework wird codeception verwendet.
Zum lokalen Ausführen der Test muss ein 2. Server-Block in der nginx-Konfiguration angelegt werden. Dieser unterschiedet sich vom normalen Server-Block in drei Punkten:
server_name
muss localhost
sein.listen
muss auf 8080
gesetzt werden.$yii_bootstrap
muss auf index_codeception.php
gesetzt werden.Des weiteren muss eine Datenbank mit dem Namen mt-test
angelegt werden, auf ein ebenfalls anzulegender Nutzer mit dem
Benutzernamen travis
und keinem Passwort zugriff hat.Das importieren der Testdaten erfolgt mit
cat docs/schema.sql tests/_data/data.sql docs/triggers.sql | mysql -utravis mt-test
Die Tests können dann mit
vendor/bin/codeception run
ausgeführt werden.
Sollten die Testdaten verändert worden sein, müssen die Änderungen mit
docs/export-testing-db.sh
gespeichert werden.
Es ist zu beachten, dass die Tests durch PhpBrowser und nicht durch selenium ausgeführt werden. Deshalb können keine auf javascript basierenden Funktionen getestet werden.
html/pdfjs
entpackendocs/pdfjs.patch
oder docs/pdfjs.diff
darauf anwenden