a18589ee0a
Provides foundation for help pages that are generated from loaded extensions, starting with comprehensive search documentation. Addresses #522
86 lines
2.9 KiB
PHP
86 lines
2.9 KiB
PHP
<?php
|
|
|
|
class RatingsTheme extends Themelet
|
|
{
|
|
public function get_rater_html(int $image_id, string $rating, bool $can_rate): string
|
|
{
|
|
$s_checked = $rating == 's' ? " checked" : "";
|
|
$q_checked = $rating == 'q' ? " checked" : "";
|
|
$e_checked = $rating == 'e' ? " checked" : "";
|
|
$human_rating = Ratings::rating_to_human($rating);
|
|
$html = "
|
|
<tr>
|
|
<th>Rating</th>
|
|
<td>
|
|
".($can_rate ? "
|
|
<span class='view'>$human_rating</span>
|
|
<span class='edit'>
|
|
<input type='radio' name='rating' value='s' id='s'$s_checked><label for='s'>Safe</label>
|
|
<input type='radio' name='rating' value='q' id='q'$q_checked><label for='q'>Questionable</label>
|
|
<input type='radio' name='rating' value='e' id='e'$e_checked><label for='e'>Explicit</label>
|
|
</span>
|
|
" : "
|
|
$human_rating
|
|
")."
|
|
</td>
|
|
</tr>
|
|
";
|
|
return $html;
|
|
}
|
|
|
|
public function display_bulk_rater(string $terms)
|
|
{
|
|
global $page;
|
|
$html = "
|
|
".make_form(make_link("admin/bulk_rate"))."
|
|
<input type='hidden' name='query' value='".html_escape($terms)."'>
|
|
<select name='rating'>
|
|
<option value='s'>Safe</option>
|
|
<option value='q'>Questionable</option>
|
|
<option value='e'>Explicit</option>
|
|
<option value='u'>Unrated</option>
|
|
</select>
|
|
<input type='submit' value='Go'>
|
|
</form>
|
|
";
|
|
$page->add_block(new Block("List Controls", $html, "left"));
|
|
}
|
|
|
|
public function get_selection_rater_html(String $id = "select_rating")
|
|
{
|
|
return "<select name='".$id."'>
|
|
<option value='s'>Safe</option>
|
|
<option value='q'>Questionable</option>
|
|
<option value='e'>Explicit</option>
|
|
<option value='u'>Unrated</option>
|
|
</select>";
|
|
}
|
|
|
|
public function get_help_html(array $ratings)
|
|
{
|
|
$output = '<p>Search for images with one or more possible ratings.</p>
|
|
<div class="command_example">
|
|
<pre>rating:'.$ratings[0]->search_term.'</pre>
|
|
<p>Returns images with the '.$ratings[0]->name.' rating.</p>
|
|
</div>
|
|
<p>Ratings can be abbreviated to a single letter as well</p>
|
|
<div class="command_example">
|
|
<pre>rating:'.$ratings[0]->code.'</pre>
|
|
<p>Returns images with the '.$ratings[0]->name.' rating.</p>
|
|
</div>
|
|
<p>If abbreviations are used, multiple ratings can be searched for.</p>
|
|
<div class="command_example">
|
|
<pre>rating:'.$ratings[0]->code.$ratings[1]->code.'</pre>
|
|
<p>Returns images with the '.$ratings[0]->name.' or '.$ratings[1]->name.' rating.</p>
|
|
</div>
|
|
<p>Available ratings:</p>
|
|
<table>
|
|
<tr><th>Name</th><th>Search Term</th><th>Abbreviation</th></tr>
|
|
';
|
|
foreach ($ratings as $rating) {
|
|
$output .= "<tr><td>{$rating->name}</td><td>{$rating->search_term}</td><td>{$rating->code}</td></tr>";
|
|
}
|
|
$output .= "</table>";
|
|
return $output;
|
|
}
|
|
}
|