userId = $UserId;
$this->config = $config;
$this->utils = $utils;
/** @noinspection PhpUnhandledExceptionInspection */
$this->bc = $backendManager->getConnector();
}
/**
* @NoAdminRequired
*/
function settingsDump() {
$keys = [
BackendUtils::KEY_ORG,
BackendUtils::KEY_EML,
BackendUtils::KEY_CLS,
BackendUtils::KEY_PSN,
BackendUtils::KEY_MPS_COL,
BackendUtils::KEY_PAGES,
BackendUtils::KEY_DIR,
BackendUtils::KEY_REMINDERS,
BackendUtils::KEY_TALK,
BackendUtils::KEY_FORM_INPUTS_JSON,
BackendUtils::KEY_FORM_INPUTS_HTML,
BackendUtils::KEY_USE_DEF_EMAIL,
BackendUtils::KEY_EMAIL_FIX,
BackendUtils::KEY_TMPL_INFO,
BackendUtils::KEY_TMPL_DATA,
];
$data = 'Nextcloud Version: ' . OC_Util::getVersionString() . "\n"
. 'Appointments Version: ' . $this->config->getAppValue($this->appName, 'installed_version', "N/A") . "\n"
. 'Time zone: ' . $this->utils->getUserTimezone($this->userId, $this->config)->getName() . " ("
. "calendar: " . $this->config->getUserValue($this->userId, 'calendar', 'timezone', "N/A") . ", "
. "core: " . $this->config->getUserValue($this->userId, 'core', 'timezone', "N/A") . ")\n"
. 'Key: ' . ($this->config->getUserValue($this->userId, $this->appName, "cnk") !== "" ? "Yes" : "No") . "\n\n";
foreach ($keys as $k) {
$data .= '' . $k . ': ' . var_export($this->utils->getUserSettings(
$k, $this->userId), true);
$data .= "\n\n";
}
$tr = new TemplateResponse($this->appName, 'settings_dump', [], "base");
$params['data'] = $data;
$tr->setParams($params);
return $tr;
}
function getRawCalendarData() {
$data = "";
$status = 400;
$calInfoStr = $this->request->getParam("cal_info");
if ($calInfoStr !== null) {
$calInfo = json_decode($calInfoStr, true);
if ($calInfo !== null && isset($calInfo["id"]) && isset($calInfo["isSubscription"])) {
$calData = var_export($calInfo, true) . '
';
$d = $this->bc->getRawCalData($calInfo, $this->userId);
$data = $calData . '
' . var_export($d, true);
$status = 200;
}
}
$tr = new TemplateResponse($this->appName, 'settings_dump', [], "base");
$tr->setParams(['data' => $data]);
$tr->setStatus($status);
return $tr;
}
}