public function removeMinimodule(FrankizMiniModule $m) { $rmName = $m->name(); XDB::execute('DELETE FROM users_minimodules WHERE uid = {?} AND name = {?}', $this->id(), $rmName); if (XDB::affectedRows() > 0) { $cols = array_keys(FrankizMiniModule::emptyLayout()); foreach ($cols as $col) { $this->minimodules[$col] = array_filter($this->minimodules[$col], function ($name) use($rmName) { return $name != $rmName; }); } return true; } return false; }
function handler_ajax_minimodules_layout($page) { $layout = FrankizMiniModule::emptyLayout(); foreach (array_keys($layout) as $col) { if (Json::has($col)) { $layout[$col] = Json::v($col); } } if (!S::user()->layoutMinimodules($layout)) { $page->jsonAssign('error', "Le réagencement des minimodules n'a pas pu se faire"); } return PL_JSON; }