diff --git a/example/config.json b/example/config.json index e4cf458..11aa995 100644 --- a/example/config.json +++ b/example/config.json @@ -15,7 +15,14 @@ }, "url": { - "canonical":"http://.." + "base":"gemini://..", + "source":"http://.." } + }, + "string": + { + "main":"Main page", + "source":"Source", + "actions":"Actions" } } \ No newline at end of file diff --git a/src/server.php b/src/server.php index ce7b31d..f16765e 100644 --- a/src/server.php +++ b/src/server.php @@ -125,13 +125,43 @@ $server->setHandler( { if ($path = $filesystem->getPagePathByUri($matches[1])) { + $lines = []; + + // Append actions header + $lines[] = sprintf( + '## %s', + $config->string->actions + ); + + // Append source and homepage link + $lines[] = sprintf( + '=> %s %s', + $config->dokuwiki->url->base, + $config->string->main + ); + + // Append source link + $lines[] = sprintf( + '=> %s/%s %s', + $config->dokuwiki->url->source, + $matches[1], + $config->string->source + ); + + // Merge data lines + $data = implode( + PHP_EOL, + $lines + ); + + // Read document $reader = new \Yggverse\Gemini\Dokuwiki\Reader(); $response->setContent( $reader->toGemini( file_get_contents( $path - ) + ) . $data ) );