Expand internationalization support

Resolves #118.
This commit is contained in:
Trevor Slocum 2020-09-06 09:42:29 -07:00
parent 00bc134392
commit 12f6566f74
3 changed files with 252 additions and 87 deletions

View File

@ -105,7 +105,7 @@ function cleanString($string) {
return str_replace($search, $replace, $string); return str_replace($search, $replace, $string);
} }
function plural($singular, $count, $plural = 's') { function plural($count, $singular, $plural) {
if ($plural == 's') { if ($plural == 's') {
$plural = $singular . $plural; $plural = $singular . $plural;
} }
@ -345,7 +345,7 @@ function checkFlood() {
$lastpost = lastPostByIP(); $lastpost = lastPostByIP();
if ($lastpost) { if ($lastpost) {
if ((time() - $lastpost['timestamp']) < TINYIB_DELAY) { if ((time() - $lastpost['timestamp']) < TINYIB_DELAY) {
fancyDie("Please wait a moment before posting again. You will be able to make another post in " . (TINYIB_DELAY - (time() - $lastpost['timestamp'])) . " " . plural("second", (TINYIB_DELAY - (time() - $lastpost['timestamp']))) . "."); fancyDie("Please wait a moment before posting again. You will be able to make another post in " . (TINYIB_DELAY - (time() - $lastpost['timestamp'])) . " " . plural(TINYIB_DELAY - (time() - $lastpost['timestamp']), "second", "seconds") . ".");
} }
} }
} }

View File

@ -79,7 +79,7 @@ function buildPostForm($parent, $raw_post = false) {
$hide_fields = $parent == TINYIB_NEWTHREAD ? $tinyib_hidefieldsop : $tinyib_hidefields; $hide_fields = $parent == TINYIB_NEWTHREAD ? $tinyib_hidefieldsop : $tinyib_hidefields;
$postform_extra = array('name' => '', 'email' => '', 'subject' => '', 'footer' => ''); $postform_extra = array('name' => '', 'email' => '', 'subject' => '', 'footer' => '');
$input_submit = '<input type="submit" value="Submit" accesskey="z">'; $input_submit = '<input type="submit" value="' . __('Submit') . '" accesskey="z">';
if ($raw_post || !in_array('subject', $hide_fields)) { if ($raw_post || !in_array('subject', $hide_fields)) {
$postform_extra['subject'] = $input_submit; $postform_extra['subject'] = $input_submit;
} else if (!in_array('email', $hide_fields)) { } else if (!in_array('email', $hide_fields)) {
@ -536,20 +536,21 @@ function buildPage($htmlposts, $parent, $pages = 0, $thispage = 0) {
</table> </table>
EOF; EOF;
if (TINYIB_CATALOG) { if (TINYIB_CATALOG) {
$txt_catalog = __('Catalog');
$pagenavigator .= <<<EOF $pagenavigator .= <<<EOF
<table border="1" style="display: inline-block;margin-left: 21px;"> <table border="1" style="display: inline-block;margin-left: 21px;">
<tbody> <tbody>
<tr> <tr>
<td><form method="get" action="catalog.html"><input value="Catalog" type="submit"></form></td> <td><form method="get" action="catalog.html"><input value="$txt_catalog" type="submit"></form></td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
EOF; EOF;
} }
} else if ($parent == -1) { } else if ($parent == -1) {
$postingmode = '&#91;<a href="index.html">Return</a>&#93;<div class="replymode">' . __('Catalog') . '</div> '; $postingmode = '&#91;<a href="index.html">' . __('Return') . '</a>&#93;<div class="replymode">' . __('Catalog') . '</div> ';
} else { } else {
$postingmode = '&#91;<a href="../">Return</a>&#93;<div class="replymode">' . __('Posting mode: Reply') . '</div> '; $postingmode = '&#91;<a href="../">' . __('Return') . '</a>&#93;<div class="replymode">' . __('Posting mode: Reply') . '</div> ';
} }
$postform = ''; $postform = '';
@ -559,7 +560,9 @@ EOF;
$txt_manage = __('Manage'); $txt_manage = __('Manage');
$txt_style = __('Style'); $txt_style = __('Style');
$txt_delete = __('Delete Post'); $txt_password = __('Password');
$txt_delete = __('Delete');
$txt_delete_post = __('Delete Post');
$body = <<<EOF $body = <<<EOF
<body> <body>
<div class="adminbar"> <div class="adminbar">
@ -584,7 +587,7 @@ EOF;
<tbody> <tbody>
<tr> <tr>
<td> <td>
$txt_delete <input type="password" name="password" id="deletepostpassword" size="8" placeholder="Password">&nbsp;<input name="deletepost" value="Delete" type="submit"> $txt_delete_post <input type="password" name="password" id="deletepostpassword" size="8" placeholder="$txt_password">&nbsp;<input name="deletepost" value="$txt_delete" type="submit">
</td> </td>
</tr> </tr>
</tbody> </tbody>
@ -687,12 +690,28 @@ function rebuildThread($id) {
function adminBar() { function adminBar() {
global $loggedin, $isadmin, $returnlink; global $loggedin, $isadmin, $returnlink;
$return = '[<a href="' . $returnlink . '" style="text-decoration: underline;">Return</a>]';
$return = '[<a href="' . $returnlink . '" style="text-decoration: underline;">' . __('Return') . '</a>]';
if (!$loggedin) { if (!$loggedin) {
return $return; return $return;
} }
return '[<a href="?manage">Status</a>] [' . (($isadmin) ? '<a href="?manage&bans">Bans</a>] [' : '') . '<a href="?manage&moderate">Moderate Post</a>] [<a href="?manage&rawpost">Raw Post</a>] [' . (($isadmin) ? '<a href="?manage&rebuildall">Rebuild All</a>] [' : '') . (($isadmin && installedViaGit()) ? '<a href="?manage&update">Update</a>] [' : '') . (($isadmin && TINYIB_DBMIGRATE) ? '<a href="?manage&dbmigrate"><b>Migrate Database</b></a>] [' : '') . '<a href="?manage&logout">Log Out</a>] &middot; ' . $return; $output = '[<a href="?manage">' . __('Status') . '</a>] [';
if ($isadmin) {
$output.= '<a href="?manage&bans">' . __('Bans') . '</a>] [';
}
$output.= '<a href="?manage&moderate">' . __('Moderate Post') . '</a>] [<a href="?manage&rawpost">' . __('Raw Post') . '</a>] [';
if ($isadmin) {
$output.= '<a href="?manage&rebuildall">' . __('Rebuild All<') . '/a>] [';
}
if ($isadmin && installedViaGit()) {
$output .= '<a href="?manage&update">' . __('Update') . '</a>] [';
}
if ($isadmin && TINYIB_DBMIGRATE) {
$output.= '<a href="?manage&dbmigrate"><b>' . __('Migrate Database') . '</b></a>] [';
}
$output.= '<a href="?manage&logout">' . __('Log Out') . '</a>] &middot; ' . $return;
return $output;
} }
function managePage($text, $onload = '') { function managePage($text, $onload = '') {
@ -752,11 +771,12 @@ function manageBanForm() {
$txt_ban_reason = __('Reason:'); $txt_ban_reason = __('Reason:');
$txt_ban_never = __('never'); $txt_ban_never = __('never');
$txt_ban_optional = __('optional'); $txt_ban_optional = __('optional');
$txt_submit = __('Submit');
return <<<EOF return <<<EOF
<form id="tinyib" name="tinyib" method="post" action="?manage&bans"> <form id="tinyib" name="tinyib" method="post" action="?manage&bans">
<fieldset> <fieldset>
<legend></legend> <legend></legend>
<label for="ip">$txt_ban_ip</label> <input type="text" name="ip" id="ip" value="${_GET['bans']}"> <input type="submit" value="Submit" class="managebutton"><br> <label for="ip">$txt_ban_ip</label> <input type="text" name="ip" id="ip" value="${_GET['bans']}"> <input type="submit" value="$txt_submit" class="managebutton"><br>
<label for="expire">$txt_ban_expire</label> <input type="text" name="expire" id="expire" value="0">&nbsp;&nbsp;<small><a href="#" onclick="document.tinyib.expire.value='3600';return false;">1hr</a>&nbsp;<a href="#" onclick="document.tinyib.expire.value='86400';return false;">1d</a>&nbsp;<a href="#" onclick="document.tinyib.expire.value='172800';return false;">2d</a>&nbsp;<a href="#" onclick="document.tinyib.expire.value='604800';return false;">1w</a>&nbsp;<a href="#" onclick="document.tinyib.expire.value='1209600';return false;">2w</a>&nbsp;<a href="#" onclick="document.tinyib.expire.value='2592000';return false;">30d</a>&nbsp;<a href="#" onclick="document.tinyib.expire.value='0';return false;">$txt_ban_never</a></small><br> <label for="expire">$txt_ban_expire</label> <input type="text" name="expire" id="expire" value="0">&nbsp;&nbsp;<small><a href="#" onclick="document.tinyib.expire.value='3600';return false;">1hr</a>&nbsp;<a href="#" onclick="document.tinyib.expire.value='86400';return false;">1d</a>&nbsp;<a href="#" onclick="document.tinyib.expire.value='172800';return false;">2d</a>&nbsp;<a href="#" onclick="document.tinyib.expire.value='604800';return false;">1w</a>&nbsp;<a href="#" onclick="document.tinyib.expire.value='1209600';return false;">2w</a>&nbsp;<a href="#" onclick="document.tinyib.expire.value='2592000';return false;">30d</a>&nbsp;<a href="#" onclick="document.tinyib.expire.value='0';return false;">$txt_ban_never</a></small><br>
<label for="reason">$txt_ban_reason&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</label> <input type="text" name="reason" id="reason">&nbsp;&nbsp;<small>$txt_ban_optional</small> <label for="reason">$txt_ban_reason&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</label> <input type="text" name="reason" id="reason">&nbsp;&nbsp;<small>$txt_ban_optional</small>
<legend> <legend>
@ -781,12 +801,13 @@ function manageBansTable() {
} }
function manageModeratePostForm() { function manageModeratePostForm() {
$txt_submit = __('Submit');
return <<<EOF return <<<EOF
<form id="tinyib" name="tinyib" method="get" action="?"> <form id="tinyib" name="tinyib" method="get" action="?">
<input type="hidden" name="manage" value=""> <input type="hidden" name="manage" value="">
<fieldset> <fieldset>
<legend>Moderate a post</legend> <legend>Moderate a post</legend>
<div valign="top"><label for="moderate">Post ID:</label> <input type="text" name="moderate" id="moderate"> <input type="submit" value="Submit" class="managebutton"></div><br> <div valign="top"><label for="moderate">Post ID:</label> <input type="text" name="moderate" id="moderate"> <input type="submit" value="$txt_submit" class="managebutton"></div><br>
<small><b>Tip:</b> While browsing the image board, you can easily moderate a post if you are logged in:<br> <small><b>Tip:</b> While browsing the image board, you can easily moderate a post if you are logged in:<br>
Tick the box next to a post and click "Delete" at the bottom of the page with a blank password.</small><br> Tick the box next to a post and click "Delete" at the bottom of the page with a blank password.</small><br>
</fieldset> </fieldset>
@ -799,15 +820,15 @@ function manageModeratePost($post) {
$ban = banByIP($post['ip']); $ban = banByIP($post['ip']);
$ban_disabled = (!$ban && $isadmin) ? '' : ' disabled'; $ban_disabled = (!$ban && $isadmin) ? '' : ' disabled';
$ban_info = (!$ban) ? ((!$isadmin) ? 'Only an administrator may ban an IP address.' : ('IP address: ' . $post["ip"])) : (' A ban record already exists for ' . $post['ip']); $ban_info = (!$ban) ? ((!$isadmin) ? 'Only an administrator may ban an IP address.' : ('IP address: ' . $post["ip"])) : (' A ban record already exists for ' . $post['ip']);
$delete_info = ($post['parent'] == TINYIB_NEWTHREAD) ? 'This will delete the entire thread below.' : 'This will delete the post below.'; $delete_info = ($post['parent'] == TINYIB_NEWTHREAD) ? __('This will delete the entire thread below.') : __('This will delete the post below.');
$post_or_thread = ($post['parent'] == TINYIB_NEWTHREAD) ? 'Thread' : 'Post'; $post_or_thread = ($post['parent'] == TINYIB_NEWTHREAD) ? __('Thread') : __('Post');
$sticky_html = ""; $sticky_html = "";
$lock_html = ""; $lock_html = "";
if ($post["parent"] == TINYIB_NEWTHREAD) { if ($post["parent"] == TINYIB_NEWTHREAD) {
$sticky_set = $post['stickied'] == 1 ? '0' : '1'; $sticky_set = $post['stickied'] == 1 ? '0' : '1';
$sticky_unsticky = $post['stickied'] == 1 ? 'Un-sticky' : 'Sticky'; $sticky_unsticky = $post['stickied'] == 1 ? __('Un-sticky') : __('Sticky');
$sticky_unsticky_help = $post['stickied'] == 1 ? 'Return this thread to a normal state.' : 'Keep this thread at the top of the board.'; $sticky_unsticky_help = $post['stickied'] == 1 ? __('Return this thread to a normal state.') : __('Keep this thread at the top of the board.');
$sticky_html = <<<EOF $sticky_html = <<<EOF
<tr><td colspan="2">&nbsp;</td></tr> <tr><td colspan="2">&nbsp;</td></tr>
<tr><td align="right" width="50%;"> <tr><td align="right" width="50%;">
@ -821,8 +842,8 @@ function manageModeratePost($post) {
EOF; EOF;
$lock_set = $post['locked'] == 1 ? '0' : '1'; $lock_set = $post['locked'] == 1 ? '0' : '1';
$lock_label = $post['locked'] == 1 ? 'Unlock' : 'Lock'; $lock_label = $post['locked'] == 1 ? __('Unlock') : __('Lock');
$lock_help = $post['locked'] == 1 ? 'Allow replying to this thread.' : 'Disallow replying to this thread.'; $lock_help = $post['locked'] == 1 ? __('Allow replying to this thread.') : __('Disallow replying to this thread.');
$lock_html = <<<EOF $lock_html = <<<EOF
<tr><td align="right" width="50%;"> <tr><td align="right" width="50%;">
<form method="get" action="?"> <form method="get" action="?">
@ -843,12 +864,13 @@ EOF;
$post_html = buildPost($post, TINYIB_INDEXPAGE); $post_html = buildPost($post, TINYIB_INDEXPAGE);
} }
$txt_action = __('Action');
return <<<EOF return <<<EOF
<fieldset> <fieldset>
<legend>Moderating No.${post['id']}</legend> <legend>Moderating No.${post['id']}</legend>
<fieldset> <fieldset>
<legend>Action</legend> <legend>$txt_action</legend>
<table border="0" cellspacing="0" cellpadding="0" width="100%"> <table border="0" cellspacing="0" cellpadding="0" width="100%">
<tr><td align="right" width="50%;"> <tr><td align="right" width="50%;">
@ -892,7 +914,8 @@ function manageStatus() {
global $isadmin; global $isadmin;
$threads = countThreads(); $threads = countThreads();
$bans = count(allBans()); $bans = count(allBans());
$info = $threads . ' ' . plural('thread', $threads) . ', ' . $bans . ' ' . plural('ban', $bans);
$info = $threads . ' ' . plural($threads, __('thread'), __('threads')) . ', ' . $bans . ' ' . plural($bans, __('ban'), __('bans'));
$output = ''; $output = '';
if ($isadmin && TINYIB_DBMODE == 'mysql' && function_exists('mysqli_connect')) { // Recommend MySQLi if ($isadmin && TINYIB_DBMODE == 'mysql' && function_exists('mysqli_connect')) { // Recommend MySQLi
@ -916,19 +939,20 @@ EOF;
} }
$reqmod_post_html .= '<tr><td>' . buildPost($post, TINYIB_INDEXPAGE) . '</td><td valign="top" align="right"> $reqmod_post_html .= '<tr><td>' . buildPost($post, TINYIB_INDEXPAGE) . '</td><td valign="top" align="right">
<table border="0"><tr><td> <table border="0"><tr><td>
<form method="get" action="?"><input type="hidden" name="manage" value=""><input type="hidden" name="approve" value="' . $post['id'] . '"><input type="submit" value="Approve" class="managebutton"></form> <form method="get" action="?"><input type="hidden" name="manage" value=""><input type="hidden" name="approve" value="' . $post['id'] . '"><input type="submit" value="' . __('Approve') . '" class="managebutton"></form>
</td><td> </td><td>
<form method="get" action="?"><input type="hidden" name="manage" value=""><input type="hidden" name="moderate" value="' . $post['id'] . '"><input type="submit" value="More Info" class="managebutton"></form> <form method="get" action="?"><input type="hidden" name="manage" value=""><input type="hidden" name="moderate" value="' . $post['id'] . '"><input type="submit" value="' . __('More Info') . '" class="managebutton"></form>
</td></tr><tr><td align="right" colspan="2"> </td></tr><tr><td align="right" colspan="2">
<form method="get" action="?"><input type="hidden" name="manage" value=""><input type="hidden" name="delete" value="' . $post['id'] . '"><input type="submit" value="Delete" class="managebutton"></form> <form method="get" action="?"><input type="hidden" name="manage" value=""><input type="hidden" name="delete" value="' . $post['id'] . '"><input type="submit" value="' . __('Delete') . '" class="managebutton"></form>
</td></tr></table> </td></tr></table>
</td></tr>'; </td></tr>';
} }
if ($reqmod_post_html != '') { if ($reqmod_post_html != '') {
$txt_pending = __('Pending posts');
$reqmod_html = <<<EOF $reqmod_html = <<<EOF
<fieldset> <fieldset>
<legend>Pending posts</legend> <legend>$txt_pending</legend>
<table border="0" cellspacing="0" cellpadding="0" width="100%"> <table border="0" cellspacing="0" cellpadding="0" width="100%">
$reqmod_post_html $reqmod_post_html
</table> </table>
@ -943,15 +967,18 @@ EOF;
if ($post_html != '') { if ($post_html != '') {
$post_html .= '<tr><td colspan="2"><hr></td></tr>'; $post_html .= '<tr><td colspan="2"><hr></td></tr>';
} }
$post_html .= '<tr><td>' . buildPost($post, TINYIB_INDEXPAGE) . '</td><td valign="top" align="right"><form method="get" action="?"><input type="hidden" name="manage" value=""><input type="hidden" name="moderate" value="' . $post['id'] . '"><input type="submit" value="Moderate" class="managebutton"></form></td></tr>'; $post_html .= '<tr><td>' . buildPost($post, TINYIB_INDEXPAGE) . '</td><td valign="top" align="right"><form method="get" action="?"><input type="hidden" name="manage" value=""><input type="hidden" name="moderate" value="' . $post['id'] . '"><input type="submit" value="' . __('Moderate') . '" class="managebutton"></form></td></tr>';
} }
$txt_status = __('Status');
$txt_info = __('Info');
$txt_recent_posts = __('Recent posts');
$output .= <<<EOF $output .= <<<EOF
<fieldset> <fieldset>
<legend>Status</legend> <legend>$txt_status</legend>
<fieldset> <fieldset>
<legend>Info</legend> <legend>$txt_info</legend>
<table border="0" cellspacing="0" cellpadding="0" width="100%"> <table border="0" cellspacing="0" cellpadding="0" width="100%">
<tbody> <tbody>
<tr><td> <tr><td>
@ -965,7 +992,7 @@ EOF;
$reqmod_html $reqmod_html
<fieldset> <fieldset>
<legend>Recent posts</legend> <legend>$txt_recent_posts</legend>
<table border="0" cellspacing="0" cellpadding="0" width="100%"> <table border="0" cellspacing="0" cellpadding="0" width="100%">
$post_html $post_html
</table> </table>

View File

@ -1,7 +1,8 @@
#, fuzzy
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: \n" "Project-Id-Version: \n"
"POT-Creation-Date: 2020-08-28 16:18-0700\n" "POT-Creation-Date: 2020-09-06 09:41-0700\n"
"PO-Revision-Date: 2020-08-28 16:18-0700\n" "PO-Revision-Date: 2020-08-28 16:18-0700\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: \n" "Language-Team: \n"
@ -12,167 +13,168 @@ msgstr ""
"X-Generator: Poedit 2.3.1\n" "X-Generator: Poedit 2.3.1\n"
"X-Poedit-Basepath: ..\n" "X-Poedit-Basepath: ..\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Poedit-KeywordsList: __\n"
"X-Poedit-SearchPath-0: imgboard.php\n" "X-Poedit-SearchPath-0: imgboard.php\n"
"X-Poedit-SearchPath-1: inc/html.php\n" "X-Poedit-SearchPath-1: inc/html.php\n"
"X-Poedit-SearchPath-2: inc/functions.php\n" "X-Poedit-SearchPath-2: inc/functions.php\n"
#: imgboard.php:74 #: imgboard.php:78
msgid "TINYIB_TRIPSEED and TINYIB_ADMINPASS must be configured." msgid "TINYIB_TRIPSEED and TINYIB_ADMINPASS must be configured."
msgstr "" msgstr ""
#: imgboard.php:78 #: imgboard.php:82
msgid "TINYIB_RECAPTCHA_SITE and TINYIB_RECAPTCHA_SECRET must be configured." msgid "TINYIB_RECAPTCHA_SITE and TINYIB_RECAPTCHA_SECRET must be configured."
msgstr "" msgstr ""
#: imgboard.php:88 #: imgboard.php:92
#, php-format #, php-format
msgid "Directory '%s' can not be written to. Please modify its permissions." msgid "Directory '%s' can not be written to. Please modify its permissions."
msgstr "" msgstr ""
#: imgboard.php:96 #: imgboard.php:100
msgid "Unknown database mode specified." msgid "Unknown database mode specified."
msgstr "" msgstr ""
#: imgboard.php:111 #: imgboard.php:115
msgid "Posting is currently disabled.<br>Please try again in a few moments." msgid "Posting is currently disabled.<br>Please try again in a few moments."
msgstr "" msgstr ""
#: imgboard.php:130 inc/functions.php:387 #: imgboard.php:134 inc/functions.php:387
msgid "Invalid parent thread ID supplied, unable to create post." msgid "Invalid parent thread ID supplied, unable to create post."
msgstr "" msgstr ""
#: imgboard.php:132 #: imgboard.php:136
msgid "Replies are not allowed to locked threads." msgid "Replies are not allowed to locked threads."
msgstr "" msgstr ""
#: imgboard.php:169 #: imgboard.php:173
msgid "Embedding a URL and uploading a file at the same time is not supported." msgid "Embedding a URL and uploading a file at the same time is not supported."
msgstr "" msgstr ""
#: imgboard.php:174 #: imgboard.php:178
#, php-format #, php-format
msgid "Invalid embed URL. Only %s URLs are supported." msgid "Invalid embed URL. Only %s URLs are supported."
msgstr "" msgstr ""
#: imgboard.php:194 #: imgboard.php:198
msgid "Error while processing audio/video." msgid "Error while processing audio/video."
msgstr "" msgstr ""
#: imgboard.php:201 imgboard.php:301 imgboard.php:312 #: imgboard.php:205 imgboard.php:305 imgboard.php:316
msgid "Could not create thumbnail." msgid "Could not create thumbnail."
msgstr "" msgstr ""
#: imgboard.php:217 #: imgboard.php:221
msgid "File transfer failure. Please retry the submission." msgid "File transfer failure. Please retry the submission."
msgstr "" msgstr ""
#: imgboard.php:221 inc/functions.php:413 #: imgboard.php:225 inc/functions.php:413
#, php-format #, php-format
msgid "That file is larger than %s." msgid "That file is larger than %s."
msgstr "" msgstr ""
#: imgboard.php:236 #: imgboard.php:240
msgid "" msgid ""
"Failed to read the MIME type and size of the uploaded file. Please retry the " "Failed to read the MIME type and size of the uploaded file. Please retry the "
"submission." "submission."
msgstr "" msgstr ""
#: imgboard.php:252 #: imgboard.php:256
msgid "Could not copy uploaded file." msgid "Could not copy uploaded file."
msgstr "" msgstr ""
#: imgboard.php:257 #: imgboard.php:261
msgid "File transfer failure. Please go back and try again." msgid "File transfer failure. Please go back and try again."
msgstr "" msgstr ""
#: imgboard.php:276 #: imgboard.php:280
msgid "Sorry, your video appears to be corrupt." msgid "Sorry, your video appears to be corrupt."
msgstr "" msgstr ""
#: imgboard.php:336 #: imgboard.php:340
#, php-format #, php-format
msgid "A %s is required to start a thread." msgid "A %s is required to start a thread."
msgstr "" msgstr ""
#: imgboard.php:349 #: imgboard.php:353
#, php-format #, php-format
msgid "%s uploaded." msgid "%s uploaded."
msgstr "" msgstr ""
#: imgboard.php:354 #: imgboard.php:358
#, php-format #, php-format
msgid "Your %s will be shown <b>once it has been approved</b>." msgid "Your %s will be shown <b>once it has been approved</b>."
msgstr "" msgstr ""
#: imgboard.php:367 #: imgboard.php:371
msgid "Updating thread..." msgid "Updating thread..."
msgstr "" msgstr ""
#: imgboard.php:380 #: imgboard.php:384
msgid "Updating index..." msgid "Updating index..."
msgstr "" msgstr ""
#: imgboard.php:386 #: imgboard.php:390
msgid "Tick the box next to a post and click \"Delete\" to delete it." msgid "Tick the box next to a post and click \"Delete\" to delete it."
msgstr "" msgstr ""
#: imgboard.php:390 #: imgboard.php:394
msgid "" msgid ""
"Post deletion is currently disabled.<br>Please try again in a few moments." "Post deletion is currently disabled.<br>Please try again in a few moments."
msgstr "" msgstr ""
#: imgboard.php:407 #: imgboard.php:411
msgid "Post deleted." msgid "Post deleted."
msgstr "" msgstr ""
#: imgboard.php:409 #: imgboard.php:413
msgid "Invalid password." msgid "Invalid password."
msgstr "" msgstr ""
#: imgboard.php:412 #: imgboard.php:416
msgid "" msgid ""
"Sorry, an invalid post identifier was sent. Please go back, refresh the " "Sorry, an invalid post identifier was sent. Please go back, refresh the "
"page, and try again." "page, and try again."
msgstr "" msgstr ""
#: imgboard.php:436 #: imgboard.php:440
msgid "Rebuilt board." msgid "Rebuilt board."
msgstr "" msgstr ""
#: imgboard.php:444 #: imgboard.php:448
msgid "Sorry, there is already a ban on record for that IP address." msgid "Sorry, there is already a ban on record for that IP address."
msgstr "" msgstr ""
#: imgboard.php:453 #: imgboard.php:457
#, php-format #, php-format
msgid "Ban record added for %s" msgid "Ban record added for %s"
msgstr "" msgstr ""
#: imgboard.php:459 #: imgboard.php:463
#, php-format #, php-format
msgid "Ban record lifted for %s" msgid "Ban record lifted for %s"
msgstr "" msgstr ""
#: imgboard.php:551 #: imgboard.php:555
#, php-format #, php-format
msgid "Post No.%d deleted." msgid "Post No.%d deleted."
msgstr "" msgstr ""
#: imgboard.php:553 imgboard.php:569 imgboard.php:578 imgboard.php:593 #: imgboard.php:557 imgboard.php:573 imgboard.php:582 imgboard.php:597
#: imgboard.php:607 #: imgboard.php:611
msgid "Sorry, there doesn't appear to be a post with that ID." msgid "Sorry, there doesn't appear to be a post with that ID."
msgstr "" msgstr ""
#: imgboard.php:567 #: imgboard.php:571
#, php-format #, php-format
msgid "Post No.%d approved." msgid "Post No.%d approved."
msgstr "" msgstr ""
#: imgboard.php:596 imgboard.php:610 #: imgboard.php:600 imgboard.php:614
msgid "Form data was lost. Please go back and try again." msgid "Form data was lost. Please go back and try again."
msgstr "" msgstr ""
#: inc/functions.php:214 inc/html.php:995 #: inc/functions.php:214 inc/html.php:1022
msgid "Anonymous" msgid "Anonymous"
msgstr "" msgstr ""
@ -243,6 +245,10 @@ msgstr ""
msgid "Supported file types are %s." msgid "Supported file types are %s."
msgstr "" msgstr ""
#: inc/html.php:82 inc/html.php:774 inc/html.php:804
msgid "Submit"
msgstr ""
#: inc/html.php:100 #: inc/html.php:100
msgid "Reply to" msgid "Reply to"
msgstr "" msgstr ""
@ -312,7 +318,7 @@ msgstr ""
msgid "Message" msgid "Message"
msgstr "" msgstr ""
#: inc/html.php:297 #: inc/html.php:297 inc/html.php:563
msgid "Password" msgid "Password"
msgstr "" msgstr ""
@ -345,7 +351,7 @@ msgstr ""
msgid "%d posts omitted. Click Reply to view." msgid "%d posts omitted. Click Reply to view."
msgstr "" msgstr ""
#: inc/html.php:504 inc/html.php:550 #: inc/html.php:504 inc/html.php:539 inc/html.php:551
msgid "Catalog" msgid "Catalog"
msgstr "" msgstr ""
@ -357,78 +363,210 @@ msgstr ""
msgid "Next" msgid "Next"
msgstr "" msgstr ""
#: inc/html.php:552 #: inc/html.php:551 inc/html.php:553 inc/html.php:694
msgid "Return"
msgstr ""
#: inc/html.php:553
msgid "Posting mode: Reply" msgid "Posting mode: Reply"
msgstr "" msgstr ""
#: inc/html.php:560 #: inc/html.php:561
msgid "Manage" msgid "Manage"
msgstr "" msgstr ""
#: inc/html.php:561 #: inc/html.php:562
msgid "Style" msgid "Style"
msgstr "" msgstr ""
#: inc/html.php:562 #: inc/html.php:564 inc/html.php:946
msgid "Delete"
msgstr ""
#: inc/html.php:565
msgid "Delete Post" msgid "Delete Post"
msgstr "" msgstr ""
#: inc/html.php:700 #: inc/html.php:699 inc/html.php:973
msgid "Status"
msgstr ""
#: inc/html.php:701
msgid "Bans"
msgstr ""
#: inc/html.php:703
msgid "Moderate Post"
msgstr ""
#: inc/html.php:703
msgid "Raw Post"
msgstr ""
#: inc/html.php:705
msgid "Rebuild All<"
msgstr ""
#: inc/html.php:708
msgid "Update"
msgstr ""
#: inc/html.php:711
msgid "Migrate Database"
msgstr ""
#: inc/html.php:713
msgid "Log Out"
msgstr ""
#: inc/html.php:719
msgid "Manage mode" msgid "Manage mode"
msgstr "" msgstr ""
#: inc/html.php:732 #: inc/html.php:751
msgid "Log In" msgid "Log In"
msgstr "" msgstr ""
#: inc/html.php:733 #: inc/html.php:752
msgid "Enter an administrator or moderator password" msgid "Enter an administrator or moderator password"
msgstr "" msgstr ""
#: inc/html.php:749 #: inc/html.php:768
msgid "Ban an IP address" msgid "Ban an IP address"
msgstr "" msgstr ""
#: inc/html.php:750 #: inc/html.php:769
msgid "IP Address:" msgid "IP Address:"
msgstr "" msgstr ""
#: inc/html.php:751 #: inc/html.php:770
msgid "Expire(sec):" msgid "Expire(sec):"
msgstr "" msgstr ""
#: inc/html.php:752 #: inc/html.php:771
msgid "Reason:" msgid "Reason:"
msgstr "" msgstr ""
#: inc/html.php:753 #: inc/html.php:772
msgid "never" msgid "never"
msgstr "" msgstr ""
#: inc/html.php:754 #: inc/html.php:773
msgid "optional" msgid "optional"
msgstr "" msgstr ""
#: inc/html.php:772 #: inc/html.php:792
msgid "IP Address" msgid "IP Address"
msgstr "" msgstr ""
#: inc/html.php:772 #: inc/html.php:792
msgid "Set At" msgid "Set At"
msgstr "" msgstr ""
#: inc/html.php:772 #: inc/html.php:792
msgid "Expires" msgid "Expires"
msgstr "" msgstr ""
#: inc/html.php:772 #: inc/html.php:792
msgid "Reason" msgid "Reason"
msgstr "" msgstr ""
#: inc/html.php:774 #: inc/html.php:794
msgid "Does not expire" msgid "Does not expire"
msgstr "" msgstr ""
#: inc/html.php:776 #: inc/html.php:796
msgid "lift" msgid "lift"
msgstr "" msgstr ""
#: inc/html.php:823
msgid "This will delete the entire thread below."
msgstr ""
#: inc/html.php:823
msgid "This will delete the post below."
msgstr ""
#: inc/html.php:824
msgid "Thread"
msgstr ""
#: inc/html.php:824
msgid "Post"
msgstr ""
#: inc/html.php:830
msgid "Un-sticky"
msgstr ""
#: inc/html.php:830
msgid "Sticky"
msgstr ""
#: inc/html.php:831
msgid "Return this thread to a normal state."
msgstr ""
#: inc/html.php:831
msgid "Keep this thread at the top of the board."
msgstr ""
#: inc/html.php:845
msgid "Unlock"
msgstr ""
#: inc/html.php:845
msgid "Lock"
msgstr ""
#: inc/html.php:846
msgid "Allow replying to this thread."
msgstr ""
#: inc/html.php:846
msgid "Disallow replying to this thread."
msgstr ""
#: inc/html.php:867
msgid "Action"
msgstr ""
#: inc/html.php:918
msgid "thread"
msgstr ""
#: inc/html.php:918
msgid "threads"
msgstr ""
#: inc/html.php:918
msgid "ban"
msgstr ""
#: inc/html.php:918
msgid "bans"
msgstr ""
#: inc/html.php:942
msgid "Approve"
msgstr ""
#: inc/html.php:944
msgid "More Info"
msgstr ""
#: inc/html.php:952
msgid "Pending posts"
msgstr ""
#: inc/html.php:970
msgid "Moderate"
msgstr ""
#: inc/html.php:974
msgid "Info"
msgstr ""
#: inc/html.php:975
msgid "Recent posts"
msgstr ""