Airship\Cabin\Bridge\Landing\Gadgets::manageForCabin PHP Method

manageForCabin() public method

public manageForCabin ( string $cabinName = '' )
$cabinName string
    public function manageForCabin(string $cabinName = '')
    {
        $cabins = $this->getCabinNamespaces();
        if (!\in_array($cabinName, $cabins)) {
            \Airship\redirect($this->airship_cabin_prefix . '/gadgets');
        }
        if (!$this->can('update')) {
            \Airship\redirect($this->airship_cabin_prefix . '/gadgets');
        }
        $gadgets = \Airship\loadJSON(ROOT . '/Cabin/' . $cabinName . '/config/gadgets.json');
        $post = $this->post(GadgetsFilter::fromConfig(\array_keys($gadgets)));
        if ($post) {
            if ($this->updateCabinGadgets($gadgets, $post, $cabinName)) {
                \Airship\clear_cache();
                \Airship\redirect($this->airship_cabin_prefix . '/gadgets/cabin/' . $cabinName);
            }
        }
        $this->lens('gadget_manage', ['cabins' => $cabins, 'gadgets' => $gadgets, 'title' => \__('Gadgets for %s', 'default', Util::noHTML($cabinName))]);
    }