Html::getSimpleForm PHP Method

getSimpleForm() static public method

create a minimal form for simple action
static public getSimpleForm ( $action, $btname, $btlabel, array $fields = [], $btimage = '', $btoption = '', $confirm = '' )
$action String URL to call on submit
$btname String button name (maybe if name <> value)
$btlabel String button label
$fields array Array field name => field value
$btimage String button image uri (optional) (default '')
$btoption String optional button option (default '')
$confirm String optional confirm message (default '')
    static function getSimpleForm($action, $btname, $btlabel, array $fields = array(), $btimage = '', $btoption = '', $confirm = '')
    {
        if (GLPI_USE_CSRF_CHECK) {
            $fields['_glpi_csrf_token'] = Session::getNewCSRFToken();
        }
        $fields['_glpi_simple_form'] = 1;
        $button = $btname;
        if (!is_array($btname)) {
            $button = array();
            $button[$btname] = $btname;
        }
        $fields = array_merge($button, $fields);
        $javascriptArray = array();
        foreach ($fields as $name => $value) {
            /// TODO : trouble :  urlencode not available for array / do not pass array fields...
            if (!is_array($value)) {
                // Javascript no gettext
                $javascriptArray[] = "'{$name}': '" . urlencode($value) . "'";
            }
        }
        $link = "<a ";
        if (!empty($btoption)) {
            $link .= ' ' . $btoption . ' ';
        }
        // Do not force class if already defined
        if (!strstr($btoption, 'class=')) {
            if (empty($btimage)) {
                $link .= " class='vsubmit' ";
            } else {
                $link .= " class='pointer' ";
            }
        }
        $btlabel = htmlentities($btlabel, ENT_QUOTES, 'UTF-8');
        $action = " submitGetLink('{$action}', {" . implode(', ', $javascriptArray) . "});";
        if (is_array($confirm) || strlen($confirm)) {
            $link .= self::addConfirmationOnAction($confirm, $action);
        } else {
            $link .= " onclick=\"{$action}\" ";
        }
        $link .= '>';
        if (empty($btimage)) {
            $link .= $btlabel;
        } else {
            $link .= "<img src='{$btimage}' title='{$btlabel}' alt='{$btlabel}' class='pointer'>";
        }
        $link .= "</a>";
        return $link;
    }

Usage Example

Example #1
0
This file is part of GLPI.

GLPI is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

GLPI is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with GLPI. If not, see <http://www.gnu.org/licenses/>.
--------------------------------------------------------------------------
*/
/** @file
* @brief Search engine from cron tasks
*/
include '../inc/includes.php';
Session::checkRight("config", "w");
Html::header(Crontask::getTypeName(2), $_SERVER['PHP_SELF'], 'config', 'crontask');
$crontask = new CronTask();
if ($crontask->getNeedToRun(CronTask::MODE_INTERNAL)) {
    $name = sprintf(__('%1$s %2$s'), $crontask->fields['name'], Html::getSimpleForm($crontask->getFormURL(), array('execute' => $crontask->fields['name']), __('Execute')));
    Html::displayTitle($CFG_GLPI['root_doc'] . '/pics/warning.png', __('Next run'), sprintf(__('Next task to run: %s'), $name));
} else {
    Html::displayTitle($CFG_GLPI['root_doc'] . '/pics/ok.png', __('No action pending'), __('No action pending'));
}
Search::show('CronTask');
Html::footer();
All Usage Examples Of Html::getSimpleForm
Html