leftypol/status.php

57 lines
1.5 KiB
PHP
Raw Normal View History

2021-06-05 19:39:09 +00:00
<?php
require_once 'inc/functions.php';
2021-07-04 15:11:14 +00:00
require_once 'templates/themes/overboards/overboards.php';
2021-06-05 19:39:09 +00:00
// Boards that are nsfw
$nsfw_boards = ['b', 'overboard'];
// Boards where posts are not allowed to be created
$readonly_boards = [];
2021-07-04 16:47:16 +00:00
// Allowed boards
2021-07-08 20:38:39 +00:00
$whitelist = ['dead'];
2021-07-04 16:47:16 +00:00
foreach ($config['boards'] as $boards) {
foreach ($boards as $board) {
$whitelist[] = $board;
}
}
foreach ($overboards_config as $board) {
$whitelist[] = $board['uri'];
$readonly_boards[] = $board['uri'];
2021-07-04 16:47:16 +00:00
}
2021-07-03 03:27:25 +00:00
$board_list = listBoards();
// Add objects that are not boards but are treated as such
2021-07-04 15:11:14 +00:00
foreach ($overboards_config as $overboard) {
$board_list[] = $overboard;
}
2021-07-03 03:27:25 +00:00
/**
* Allowed fields for the board object:
* - code<string>: The board code ('b', 'tech', ...)
* - name<string>: The board user-readable name ('Siberia', ...)
* - sfw<boolean>: Is this board sfw?
2021-07-04 15:11:14 +00:00
* - posting_enabled<boolean>: Can new posts be created belonging to this board?
2021-07-03 03:27:25 +00:00
*/
$boards = [];
foreach ($board_list as $board) {
2021-07-04 16:47:16 +00:00
// Skip non-whitelisted boards
if (!in_array($board['uri'], $whitelist)) {
2021-07-03 03:27:25 +00:00
continue;
}
$boards[] = [
'code' => $board['uri'],
'name' => $board['title'],
'sfw' => !in_array($board['uri'], $nsfw_boards),
'posting_enabled' => !in_array($board['uri'], $readonly_boards),
];
}
2021-06-05 19:39:09 +00:00
header('Content-Type: application/json');
echo json_encode([
'captcha' => $config['securimage'],
2021-07-03 03:27:25 +00:00
'flags' => $config['user_flags'],
'boards' => $boards,
2021-06-05 19:39:09 +00:00
]);