Loading data/admin.html +7 −2 Changes for data/admin.html: 7 added lines, 2 removed lines. Original line number Diff line number Diff line Loading @@ -350,7 +350,7 @@ function createDomainForm() { } else { html += '<input type="hidden" id="cd_storage" value="0">'; html += '<tr><td><label>Domain Storage:</label></td><td>File</td></tr>'; html += '<tr><td><label>Domain Options:</label></td><td><input type="text" id="cd_options" class="domaintext" value=""></td></tr>'; html += '<tr><td><label>Domain Options:</label></td><td><input type="text" id="cd_options" class="domaintext" value="" required></td></tr>'; } html += '<tr><td></td><td><input type="button" value="Save" onclick="submitCreateDomain()"></td></tr>'; html += '</table></form>'; Loading @@ -359,9 +359,14 @@ function createDomainForm() { function submitCreateDomain() { var optEl = document.getElementById("cd_options"); var nameEl = document.getElementById("cd_name"); if (!nameEl.value.trim() || (optEl && !optEl.value.trim())) { showError("Domain Name and Domain Options are required."); return; } var obj = { domainid: document.getElementById("cd_id").value.trim(), domainname: document.getElementById("cd_name").value, domainname: nameEl.value, domainstorage: parseInt(document.getElementById("cd_storage").value), domainoptions: optEl ? optEl.value : "" }; Loading src/admin.cpp +6 −0 Changes for src/admin.cpp: 6 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -813,6 +813,12 @@ namespace authdb { throw AuthBackendError("createDomain: missing fields!"); } if (strlen(json_object_get_string(jname)) == 0 || strlen(json_object_get_string(joptions)) == 0) { json_object_put(jreq); throw AuthBackendError("createDomain: domainname and domainoptions must not be empty!"); } uuid::uuid uid; json_object *jid = json_object_object_get(jreq, "domainid"); if (jid && strlen(json_object_get_string(jid)) > 0) { Loading src/authdb.cpp +6 −0 Changes for src/authdb.cpp: 6 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -664,6 +664,12 @@ namespace authdb { if(!dinfo.found) return nullptr; if(dinfo.storageOptions.empty()){ std::cerr << "[AUTHDB] domain '" << dinfo.domainName << "': empty storage path" << std::endl; return nullptr; } auto backend = std::make_shared<AuthBackend>( dinfo.storageType, dinfo.storageOptions, dinfo.domainName); Loading Loading
data/admin.html +7 −2 Changes for data/admin.html: 7 added lines, 2 removed lines. Original line number Diff line number Diff line Loading @@ -350,7 +350,7 @@ function createDomainForm() { } else { html += '<input type="hidden" id="cd_storage" value="0">'; html += '<tr><td><label>Domain Storage:</label></td><td>File</td></tr>'; html += '<tr><td><label>Domain Options:</label></td><td><input type="text" id="cd_options" class="domaintext" value=""></td></tr>'; html += '<tr><td><label>Domain Options:</label></td><td><input type="text" id="cd_options" class="domaintext" value="" required></td></tr>'; } html += '<tr><td></td><td><input type="button" value="Save" onclick="submitCreateDomain()"></td></tr>'; html += '</table></form>'; Loading @@ -359,9 +359,14 @@ function createDomainForm() { function submitCreateDomain() { var optEl = document.getElementById("cd_options"); var nameEl = document.getElementById("cd_name"); if (!nameEl.value.trim() || (optEl && !optEl.value.trim())) { showError("Domain Name and Domain Options are required."); return; } var obj = { domainid: document.getElementById("cd_id").value.trim(), domainname: document.getElementById("cd_name").value, domainname: nameEl.value, domainstorage: parseInt(document.getElementById("cd_storage").value), domainoptions: optEl ? optEl.value : "" }; Loading
src/admin.cpp +6 −0 Changes for src/admin.cpp: 6 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -813,6 +813,12 @@ namespace authdb { throw AuthBackendError("createDomain: missing fields!"); } if (strlen(json_object_get_string(jname)) == 0 || strlen(json_object_get_string(joptions)) == 0) { json_object_put(jreq); throw AuthBackendError("createDomain: domainname and domainoptions must not be empty!"); } uuid::uuid uid; json_object *jid = json_object_object_get(jreq, "domainid"); if (jid && strlen(json_object_get_string(jid)) > 0) { Loading
src/authdb.cpp +6 −0 Changes for src/authdb.cpp: 6 added lines, 0 removed lines. Original line number Diff line number Diff line Loading @@ -664,6 +664,12 @@ namespace authdb { if(!dinfo.found) return nullptr; if(dinfo.storageOptions.empty()){ std::cerr << "[AUTHDB] domain '" << dinfo.domainName << "': empty storage path" << std::endl; return nullptr; } auto backend = std::make_shared<AuthBackend>( dinfo.storageType, dinfo.storageOptions, dinfo.domainName); Loading