get_tag_list())); $page->add_html_header(""); $page->add_html_header(""); $page->add_html_header(""); $page->add_html_header("get_thumb_link())."\">"); $page->add_html_header("id}"))."\">"); } /* * Build a page showing $image and some info about it */ public function display_page(Image $image, $editor_parts) { global $page; $page->set_title("Post {$image->id}: ".$image->get_tag_list()); $page->set_heading(html_escape($image->get_tag_list())); $page->add_block(new Block("Post {$image->id}", $this->build_navigation($image), "left", 0, "Navigationleft")); $page->add_block(new Block(null, $this->build_info($image, $editor_parts), "main", 20, "ImageInfo")); //$page->add_block(new Block(null, $this->build_pin($image), "main", 11)); $query = $this->get_query(); $page->add_html_header(""); $page->add_html_header(""); } public function display_admin_block(Page $page, $parts) { if (count($parts) > 0) { $page->add_block(new Block("Post Controls", join("
", $parts), "left", 50)); } } protected function get_query(): ?string { if (isset($_GET['search'])) { $query = "search=".url_escape($_GET['search']); } else { $query = null; } return $query; } protected function build_pin(Image $image): HTMLElement { $query = $this->get_query(); return joinHTML(" | ", [ A(["href" => make_link("post/prev/{$image->id}", $query), "id" => "prevlink"], "Prev"), A(["href" => make_link()], "Index"), A(["href" => make_link("post/next/{$image->id}", $query), "id" => "nextlink"], "Next"), ]); } protected function build_navigation(Image $image): string { $h_pin = $this->build_pin($image); $h_search = "

"; return "$h_pin
$h_search"; } protected function build_info(Image $image, $editor_parts): HTMLElement { global $user; if (count($editor_parts) == 0) { return emptyHTML($image->is_locked() ? "[Post Locked]" : ""); } if( (!$image->is_locked() || $user->can(Permissions::EDIT_IMAGE_LOCK)) && $user->can(Permissions::EDIT_IMAGE_TAG) ) { $editor_parts[] = TR(TD( ["colspan" => 4], INPUT(["class" => "view", "type" => "button", "value" => "Edit", "onclick" => "clearViewMode()"]), INPUT(["class" => "edit", "type" => "submit", "value" => "Set"]) )); } return SHM_SIMPLE_FORM( "post/set", INPUT(["type" => "hidden", "name" => "image_id", "value" => $image->id]), TABLE( [ "class" => "image_info form", "style" => "width: 500px; max-width: 100%;" ], ...$editor_parts, ), ); } }