function view::get_exposed_input

Same name in other branches
  1. 7.x-3.x includes/view.inc \view::get_exposed_input()

Figure out what the exposed input for this view is.

File

includes/view.inc, line 344

Class

view
An object to contain all of the data to generate a view, plus the member functions to build the view query, execute the query and render the output.

Code

function get_exposed_input() {
    // Fill our input either from $_GET or from something previously set on the
    // view.
    if (empty($this->exposed_input)) {
        $this->exposed_input = $_GET;
        // unset items that are definitely not our input:
        foreach (array(
            'page',
            'q',
        ) as $key) {
            if (isset($this->exposed_input[$key])) {
                unset($this->exposed_input[$key]);
            }
        }
        // If we have no input at all, check for remembered input via session.
        // If filters are not overridden, store the 'remember' settings on the
        // default display. If they are, store them on this display. This way,
        // multiple displays in the same view can share the same filters and
        // remember settings.
        $display_id = $this->display_handler
            ->is_defaulted('filters') ? 'default' : $this->current_display;
        if (empty($this->exposed_input) && !empty($_SESSION['views'][$this->name][$display_id])) {
            $this->exposed_input = $_SESSION['views'][$this->name][$display_id];
        }
    }
    return $this->exposed_input;
}