<?php declare(strict_types=1);

class BulkAddCSVTheme extends Themelet
{
    private $messages = [];

    /*
     * Show a standard page for results to be put into
     */
    public function display_upload_results(Page $page)
    {
        $page->set_title("Adding posts from csv");
        $page->set_heading("Adding posts from csv");
        $page->add_block(new NavBlock());
        foreach ($this->messages as $block) {
            $page->add_block($block);
        }
    }

    /*
     * Add a section to the admin page. This should contain a form which
     * links to bulk_add_csv with POST[csv] set to the name of a server-side
     * csv file
     */
    public function display_admin_block()
    {
        global $page;
        $html = "
			Add posts from a csv. Posts will be tagged and have their
			source and rating set (if \"Post Ratings\" is enabled)
			<br>Specify the absolute or relative path to a local .csv file. Check <a href=\"" . make_link("ext_doc/bulk_add_csv") . "\">here</a> for the expected format.

			<p>".make_form(make_link("bulk_add_csv"))."
				<table class='form'>
					<tr><th>CSV</th><td><input type='text' name='csv' size='40'></td></tr>
					<tr><td colspan='2'><input type='submit' value='Add'></td></tr>
				</table>
			</form>
		";
        $page->add_block(new Block("Bulk Add CSV", $html));
    }

    public function add_status($title, $body)
    {
        $this->messages[] = new Block($title, $body);
    }
}