/**
* @route motifs/{string}
*
* @param string $cabinName
*/
public function manage(string $cabinName = '')
{
$cabins = $this->getCabinNamespaces();
if (!\in_array($cabinName, $cabins)) {
\Airship\redirect($this->airship_cabin_prefix . '/motifs');
}
if (!$this->can('update')) {
\Airship\redirect($this->airship_cabin_prefix . '/motifs');
}
$motifs = \Airship\loadJSON(ROOT . '/Cabin/' . $cabinName . '/config/motifs.json');
$post = $this->post(MotifsFilter::fromConfig(\array_keys($motifs)));
if ($post) {
if ($this->updateMotifs($motifs, $post, $cabinName)) {
\Airship\clear_cache();
\Airship\redirect($this->airship_cabin_prefix . '/motifs/cabin/' . $cabinName);
}
}
$this->lens('motif_manage', ['cabin_name' => $cabinName, 'cabins' => $cabins, 'motifs' => $motifs, 'title' => \__('Motifs for %s', 'default', Util::noHTML($cabinName))]);
}