Elgg\Forms\StickyForms::makeStickyForm PHP Метод

makeStickyForm() публичный Метод

Call this from an action when you want all your submitted variables available if the submission fails validation and is sent back to the form
public makeStickyForm ( string $form_name ) : void
$form_name string Name of the sticky form
Результат void
    public function makeStickyForm($form_name)
    {
        $this->clearStickyForm($form_name);
        $banned_keys = [];
        // TODO make $banned_keys an argument
        if (in_array($form_name, ['register', 'useradd', 'usersettings'])) {
            $banned_keys = ['password', 'password2'];
        }
        $session = _elgg_services()->session;
        $data = $session->get('sticky_forms', array());
        $req = _elgg_services()->request;
        // will go through XSS filtering in elgg_get_sticky_value()
        $vars = array_merge($req->query->all(), $req->request->all());
        foreach ($banned_keys as $key) {
            unset($vars[$key]);
        }
        $data[$form_name] = $vars;
        $session->set('sticky_forms', $data);
    }