/** * Logout from roundcube server to cleaning up session on OwnCloud logout * @param unknown $params iserdata * @return boolean true if logut was successfull, otherwise false */ public static function logout($params) { try { OCP\Util::writeLog('roundcube', 'OC_RoundCube_AuthHelper.class.php->logout(): Preparing logout of user from roundcube.', OCP\Util::DEBUG); $maildir = OCP\Config::getAppValue('roundcube', 'maildir', ''); $rc_host = OCP\Config::getAppValue('roundcube', 'rcHost', ''); if ($rc_host == '') { $rc_host = OC_Request::serverHost(); } $rc_port = OCP\Config::getAppValue('roundcube', 'rcPort', ''); OC_RoundCube_App::logout($rc_host, $rc_port, $maildir, OCP\User::getUser()); OCP\Util::writeLog('roundcube', 'Logout of user ' . OCP\User::getUser() . ' from roundcube done', OCP\Util::INFO); return true; } catch (Exception $e) { // We got an exception == table not found OCP\Util::writeLog('roundcube', 'OC_RoundCube_AuthHelper.class.php->logout(): Logout/Session cleaning causing errors.' . $e, OCP\Util::DEBUG); return false; } }