Example #1
0
function plugin_csv2newpage_convert()
{
    global $vars, $_csv2newpage_messages;
    static $numbers = array();
    $page = $vars['page'];
    if (!isset($numbers[$page])) {
        $numbers[$page] = 0;
    }
    $csv2newpage_no = $numbers[$page]++;
    $newpage = '';
    $upload = 0;
    $config_name = 'default';
    $args = func_get_args();
    if (count($args) == 0) {
        return '<p>no option of config_name</p>';
    }
    $config_name = array_shift($args);
    if ($args[0] == 'upload') {
        array_shift($args);
        $upload = 1;
        $start_line_no = array_shift($args);
    }
    if (count($args) == 0) {
        return '<p>no parameter for CSV fields</p>';
    }
    $config = new Config('plugin/tracker/' . $config_name);
    if (!$config->read()) {
        return "<p>config file '" . Utility::htmlsc($config_name) . "' not found.</p>";
    }
    $config->config_name = $config_name;
    if (!exist_plugin('tracker')) {
        return '<p>The tracker plugin is not found.</p>';
    }
    $fields = plugin_tracker_get_fields($page, $page, $config);
    $form = array();
    $ct = 0;
    $form[] = '<input type="hidden" name="cmd" value="csv2newpage" />';
    $form[] = '<input type="hidden" name="_refer" value="' . Utility::htmlsc($page) . '" />';
    $form[] = '<input type="hidden" name="_config" value="' . Utility::htmlsc($config->config_name) . '" />';
    foreach ($args as $name) {
        $ct++;
        $s_name = Utility::htmlsc($name);
        $form[] = '<input type="hidden" name="csv_field' . $ct . '" value="' . $s_name . '" />' . "\n";
    }
    if ($upload) {
        $form[] = '<input type="hidden" name="_upload" value="' . $upload . '" />';
        $form[] = '<input type="hidden" name="start_line_no" value="' . $start_line_no . '" />';
        return plugin_csv2newpage_showform(join("\n", $form));
    }
    $ret[] = '<form action="' . Router::get_script_uri() . '" method="post" class="plugin-csv2newpage-form">';
    $ret[] = '<input type="hidden" name="cmd" value="csv2newpage" />';
    $ret[] = '<input type="hidden" name="_refer" value="' . Utility::htmlsc($page) . '" />';
    $ret[] = '<input type="hidden" name="_config" value="' . Utility::htmlsc($config->config_name) . '" />';
    $ret[] = '<input type="hidden" name="_csv2newpage_no" value="' . $csv2newpage_no . '" />';
    $ret[] = Utility::htmlsc($_csv2newpage_messages['title_text']);
    $ret[] = '<input class="btn btn-primary" type="submit" value="' . Utility::htmlsc($_csv2newpage_messages['btn_submit']) . '" />';
    $ret[] = '</form>';
    return join("\n", $ret);
}
function plugin_csv2newpage_convert()
{
    global $script, $vars, $_csv2newpage_messages;
    static $numbers = array();
    $page = $vars['page'];
    if (!isset($numbers[$page])) {
        $numbers[$page] = 0;
    }
    $csv2newpage_no = $numbers[$page]++;
    $newpage = '';
    $upload = 0;
    $config_name = 'default';
    $args = func_get_args();
    if (count($args) == 0) {
        return '<p>no option of config_name</p>';
    }
    $config_name = array_shift($args);
    if ($args[0] == 'upload') {
        array_shift($args);
        $upload = 1;
        $start_line_no = array_shift($args);
    }
    if (count($args) == 0) {
        return '<p>no parameter for CSV fields</p>';
    }
    $config = new Config('plugin/tracker/' . $config_name);
    if (!$config->read()) {
        return "<p>config file '" . htmlspecialchars($config_name) . "' not found.</p>";
    }
    $config->config_name = $config_name;
    if (!exist_plugin('tracker')) {
        return '<p>The tracker plugin is not found.</p>';
    }
    $fields = plugin_tracker_get_fields($page, $page, $config);
    $retval = '';
    $ct = 0;
    foreach ($args as $name) {
        $ct++;
        $s_name = htmlspecialchars($name);
        $retval .= '<input type="hidden" name="csv_field' . $ct . '" value="' . $s_name . '" />' . "\n";
    }
    $s_title = htmlspecialchars($_csv2newpage_messages['btn_submit']);
    $s_page = htmlspecialchars($page);
    $s_config = htmlspecialchars($config->config_name);
    $s_text = htmlspecialchars($_csv2newpage_messages['title_text']);
    $retval .= <<<EOD
<input type="hidden" name="plugin" value="csv2newpage" />
<input type="hidden" name="_refer" value="{$s_page}" />
<input type="hidden" name="_config" value="{$s_config}" />
<input type="hidden" name="_upload" value="{$upload}" />
EOD;
    if ($upload) {
        $retval .= <<<EOD
<input type="hidden" name="start_line_no" value="{$start_line_no}" />
EOD;
        return plugin_csv2newpage_showform($retval);
    } else {
        return <<<EOD
<form enctype="multipart/form-data" action="{$script}" method="post">
<div>
{$s_text}
<input type="submit" value="{$s_title}" />
<input type="hidden" name="_csv2newpage_no" value="{$csv2newpage_no}" />
{$retval}
</div>
</form>
EOD;
    }
}