try { $controller = new sharing_cart\controller(); switch (required_param('action', PARAM_TEXT)) { case 'render_tree': $PAGE->set_context(\context_user::instance($USER->id)); // pix_url() needs this echo $controller->render_tree($USER->id); exit; case 'is_userdata_copyable': $cmid = required_param('cmid', PARAM_INT); echo $controller->is_userdata_copyable($cmid); exit; case 'backup': $cmid = required_param('cmid', PARAM_INT); $userdata = required_param('userdata', PARAM_BOOL); $controller->backup($cmid, $userdata); exit; case 'movedir': $id = required_param('id', PARAM_INT); $to = required_param('to', PARAM_TEXT); $controller->movedir($id, $to); exit; case 'move': $id = required_param('id', PARAM_INT); $to = required_param('to', PARAM_INT); $controller->move($id, $to); exit; case 'delete': $id = required_param('id', PARAM_INT); $controller->delete($id); exit;