mirror of
https://github.com/kvazar-network/geminiapp.git
synced 2025-08-30 07:22:01 +00:00
add gemtext mode
This commit is contained in:
parent
d3d810ee9c
commit
fa2bb2bd77
@ -36,7 +36,8 @@
|
|||||||
"view":
|
"view":
|
||||||
{
|
{
|
||||||
"raw":"Raw data",
|
"raw":"Raw data",
|
||||||
"reader":"Reader"
|
"reader":"Reader",
|
||||||
|
"gemtext":"Gemtext"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -496,6 +496,48 @@ $server->setHandler(
|
|||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case 'gemtext':
|
||||||
|
|
||||||
|
// Key
|
||||||
|
$result[] = null;
|
||||||
|
$result[] = sprintf(
|
||||||
|
'# %s',
|
||||||
|
trim(
|
||||||
|
preg_replace( // single-line
|
||||||
|
'/[\s]+/',
|
||||||
|
' ',
|
||||||
|
$record['key']
|
||||||
|
)
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
// Value
|
||||||
|
$result[] = null;
|
||||||
|
$result[] = trim(
|
||||||
|
preg_replace(
|
||||||
|
[
|
||||||
|
'/[\n\r]{3,}/', // remove extra breaks
|
||||||
|
],
|
||||||
|
[
|
||||||
|
PHP_EOL . PHP_EOL,
|
||||||
|
],
|
||||||
|
$record['value']
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
// Time
|
||||||
|
$result[] = null;
|
||||||
|
$result[] = sprintf(
|
||||||
|
'%s in %d',
|
||||||
|
date(
|
||||||
|
'Y-m-d',
|
||||||
|
$record['time']
|
||||||
|
),
|
||||||
|
$record['block']
|
||||||
|
);
|
||||||
|
|
||||||
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
|
|
||||||
// Key
|
// Key
|
||||||
@ -546,18 +588,53 @@ $server->setHandler(
|
|||||||
$config->geminiapp->string->navigation
|
$config->geminiapp->string->navigation
|
||||||
);
|
);
|
||||||
|
|
||||||
if ('raw' == $request->getQuery())
|
switch ($request->getQuery())
|
||||||
{
|
{
|
||||||
|
case 'raw':
|
||||||
|
|
||||||
|
$result[] = null;
|
||||||
|
$result[] = sprintf(
|
||||||
|
'=> /%s?gemtext %s',
|
||||||
|
$record['transaction'],
|
||||||
|
$config->geminiapp->string->view->gemtext
|
||||||
|
);
|
||||||
|
|
||||||
$result[] = null;
|
$result[] = null;
|
||||||
$result[] = sprintf(
|
$result[] = sprintf(
|
||||||
'=> /%s %s',
|
'=> /%s %s',
|
||||||
$record['transaction'],
|
$record['transaction'],
|
||||||
$config->geminiapp->string->view->reader
|
$config->geminiapp->string->view->reader
|
||||||
);
|
);
|
||||||
}
|
|
||||||
|
|
||||||
else
|
break;
|
||||||
{
|
|
||||||
|
case 'gemtext':
|
||||||
|
|
||||||
|
$result[] = null;
|
||||||
|
$result[] = sprintf(
|
||||||
|
'=> /%s %s',
|
||||||
|
$record['transaction'],
|
||||||
|
$config->geminiapp->string->view->reader
|
||||||
|
);
|
||||||
|
|
||||||
|
$result[] = null;
|
||||||
|
$result[] = sprintf(
|
||||||
|
'=> /%s?raw %s',
|
||||||
|
$record['transaction'],
|
||||||
|
$config->geminiapp->string->view->raw
|
||||||
|
);
|
||||||
|
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
|
||||||
|
$result[] = null;
|
||||||
|
$result[] = sprintf(
|
||||||
|
'=> /%s?gemtext %s',
|
||||||
|
$record['transaction'],
|
||||||
|
$config->geminiapp->string->view->gemtext
|
||||||
|
);
|
||||||
|
|
||||||
$result[] = null;
|
$result[] = null;
|
||||||
$result[] = sprintf(
|
$result[] = sprintf(
|
||||||
'=> /%s?raw %s',
|
'=> /%s?raw %s',
|
||||||
|
Loading…
x
Reference in New Issue
Block a user