@@ -43,7 +43,7 @@
<% _.each(descriptions, function(group){ %>
<% var settings = _.partition(group.settings, function(value, index) { return !value.deprecated })[0] %>
<% split_settings = _.partition(settings, function(value, index) { return !value.advanced }) %>
- <% isAdvanced = _.isEmpty(split_settings[0]) %>
+ <% isAdvanced = _.isEmpty(split_settings[0]) && !_.isEmpty(split_settings[1]) %>
<% if (isAdvanced) { %>
<% $("a[href=#" + group.name + "]").addClass('advanced-setting').hide() %>
<% } %>
diff --git a/domain-server/resources/web/settings/js/settings.js b/domain-server/resources/web/settings/js/settings.js
index e44f3578a3..8de48fa666 100644
--- a/domain-server/resources/web/settings/js/settings.js
+++ b/domain-server/resources/web/settings/js/settings.js
@@ -493,8 +493,10 @@ function setupHFAccountButton() {
var el;
if (hasAccessToken) {
- el = "";
+ el = "
";
+ el += "";
el += "Disconnect ";
+ el += "
";
el = $(el);
} else {
// setup an object for the settings we want our button to have
@@ -563,14 +565,8 @@ function prepareAccessTokenPrompt() {
console.log("Prepping access token prompt");
- // if the user doesn't have a domain ID set, give them the option to create one now
- if (!Settings.data.values.metaverse.id) {
- // show domain ID selection alert
- showDomainIDChoiceAlert();
- } else {
- swal.close();
- saveSettings();
- }
+ swal.close();
+ saveSettings();
});
}
@@ -633,6 +629,8 @@ function showDomainCreationAlert(justConnected) {
});
}
+//function createDomainID()
+
function createNewDomainID(description, justConnected) {
// get the JSON object ready that we'll use to create a new domain
var domainJSON = {
@@ -732,13 +730,14 @@ function domainIDIsSet() {
}
function setupDomainLabelSetting() {
- if (!domainIDIsSet()) {
+ if (!domainIDIsSet() || !accessTokenIsSet()) {
+ $(".panel#label").hide();
return;
}
var html = "
"
html += "Specify a label for your domain";
- html += " ";
+ html += " ";
html += "
";
var link = $("
Edit ");
@@ -747,9 +746,9 @@ function setupDomainLabelSetting() {
ev.preventDefault();
var label = "temp";
- var modal_body = "
";
+ var modal_body = "
";
@@ -770,7 +769,7 @@ function setupDomainLabelSetting() {
className: 'edit-label-save-btn btn btn-primary',
callback: function() {
var data = {
- label: $('#domain-label-input').val()
+ description: $('#domain-label-input').val()
};
$('.edit-label-cancel-btn').attr('disabled', 'disabled');
@@ -817,8 +816,15 @@ function setupDomainLabelSetting() {
html = $(html).append(link);
- var autoNetworkingEl = $('div[data-keypath="metaverse.automatic_networking"]');
- autoNetworkingEl.after(html);
+ var spinner = createDomainSpinner();
+ var errorEl = createDomainLoadingError("Error loading label.");
+
+ html.append(spinner);
+ html.append(errorEl);
+
+ $('div#label .panel-body').append(errorEl);
+ $('div#label .panel-body').append(html);
+ console.log($('div#label .panel-body'));
}
function setupDomainNetworkingSettings() {
@@ -1032,6 +1038,7 @@ function placeTableRow(name, path, isTemporary, placeID) {
sendUpdatePlaceRequest(
placeID,
'',
+ null,
true,
function() {
reloadDomainInfo();
@@ -1109,12 +1116,14 @@ function reloadDomainInfo() {
var row = $("
");
row.find(".place-add").click(function(ev) {
- chooseFromHighFidelityPlaces(null, function() {
+ chooseFromHighFidelityPlaces(Settings.initialValues.metaverse.access_token, null, function() {
reloadDomainInfo();
});
});
- $('#network-label').val(data.domain.label);
+ var label = data.domain.description;
+ label = label === null ? '' : label;
+ $('#network-label').val(label);
var autoNetworkingSetting = Settings.data.values.metaverse.automatic_networking;
var address = data.domain.network_address === null ? "" : data.domain.network_address;
var port = data.domain.network_port === null ? "" : data.domain.network_port;
@@ -1152,11 +1161,30 @@ function showDomainSettingsModal(clickedButton) {
})
}
-function sendUpdatePlaceRequest(id, path, clearDomainID, onSuccess, onError) {
+function sendCreateDomainRequest(onSuccess, onError) {
+ $.ajax({
+ url: '/api/domains',
+ type: 'POST',
+ data: { label: "TEST" },
+ success: function(data) {
+ //if (data.status === 'success') {
+ onSuccess(data.domain_id);
+ //} else {
+ //onError();
+ //}
+ },
+ error: onError
+ });
+}
+
+function sendUpdatePlaceRequest(id, path, domainID, clearDomainID, onSuccess, onError) {
var data = {
place_id: id,
path: path
};
+ if (domainID) {
+ data.domain_id = domainID;
+ }
if (clearDomainID) {
data.domain_id = null;
}
@@ -1201,6 +1229,7 @@ function editHighFidelityPlace(placeID, name, path) {
sendUpdatePlaceRequest(
placeID,
placePath,
+ null,
false,
function() {
dialog.modal('hide')
@@ -1239,8 +1268,8 @@ function showLoadingDialog() {
});
}
-function chooseFromHighFidelityPlaces(forcePathTo, onSuccessfullyAdded) {
- if (Settings.initialValues.metaverse.access_token) {
+function chooseFromHighFidelityPlaces(accessToken, forcePathTo, onSuccessfullyAdded) {
+ if (accessToken) {
var loadingDialog = showLoadingDialog();
@@ -1313,23 +1342,43 @@ function chooseFromHighFidelityPlaces(forcePathTo, onSuccessfullyAdded) {
$('.add-place-confirm-button').html(Strings.ADD_PLACE_CONFIRM_BUTTON_PENDING);
$('.add-place-cancel-button').attr('disabled', 'disabled');
- sendUpdatePlaceRequest(
- placeID,
- placePath,
- false,
- function(data) {
- dialog.modal('hide')
- if (onSuccessfullyAdded) {
- onSuccessfullyAdded();
+ function finishSettingUpPlace(domainID) {
+ sendUpdatePlaceRequest(
+ placeID,
+ placePath,
+ domainID,
+ false,
+ function(data) {
+ $(Settings.DOMAIN_ID_SELECTOR).val(domainID).change();
+ dialog.modal('hide')
+ if (onSuccessfullyAdded) {
+ onSuccessfullyAdded(places_by_id[placeID].name);
+ }
+ saveSettings();
+ },
+ function(data) {
+ $('.add-place-confirm-button').removeAttr('disabled');
+ $('.add-place-confirm-button').html(Strings.ADD_PLACE_CONFIRM_BUTTON);
+ $('.add-place-cancel-button').removeAttr('disabled');
+ bootbox.alert(Strings.ADD_PLACE_UNKNOWN_ERROR);
}
- },
- function(data) {
+ );
+ }
+
+ if (domainIDIsSet()) {
+ finishSettingUpPlace();
+ } else {
+ sendCreateDomainRequest(function(domainID) {
+ finishSettingUpPlace(domainID);
+ }, function() {
$('.add-place-confirm-button').removeAttr('disabled');
$('.add-place-confirm-button').html(Strings.ADD_PLACE_CONFIRM_BUTTON);
$('.add-place-cancel-button').removeAttr('disabled');
bootbox.alert(Strings.ADD_PLACE_UNKNOWN_ERROR);
- }
- );
+ bootbox.alert("FAIL");
+ });
+ }
+
return false;
}
diff --git a/domain-server/src/DomainServer.cpp b/domain-server/src/DomainServer.cpp
index 1fb83611ef..aac921c90a 100644
--- a/domain-server/src/DomainServer.cpp
+++ b/domain-server/src/DomainServer.cpp
@@ -56,6 +56,12 @@ const QString ICE_SERVER_DEFAULT_HOSTNAME = "ice.highfidelity.com";
const QString ICE_SERVER_DEFAULT_HOSTNAME = "dev-ice.highfidelity.com";
#endif
+bool forwardMetaverseAPIRequest(HTTPConnection* connection, const QString metaversePath,
+ std::vector
> dataWhitelist) {
+
+ return false;
+}
+
DomainServer::DomainServer(int argc, char* argv[]) :
QCoreApplication(argc, argv),
_gatekeeper(this),
@@ -2069,16 +2075,16 @@ bool DomainServer::handleHTTPRequest(HTTPConnection* connection, const QUrl& url
auto params = connection->parseUrlEncodedForm();
- auto it = params.find("private_description");
+ auto it = params.find("label");
if (it == params.end()) {
- connection->respond(HTTPConnection::StatusCode400);
+ connection->respond(HTTPConnection::StatusCode400, "Missing label");
return true;
}
QJsonObject root {
{"access_token", accessTokenVariant->toString()},
{"domain",
- QJsonObject({ { "private_description", it.value() } })
+ QJsonObject({ { "description", it.value() } })
}
};
QJsonDocument doc { root };
@@ -2156,9 +2162,9 @@ bool DomainServer::handleHTTPRequest(HTTPConnection* connection, const QUrl& url
domainObj["network_port"] = port.isEmpty() ? QJsonValue::Null : QJsonValue(port);
}
- it = params.find("private_description");
+ it = params.find("description");
if (it != params.end()) {
- domainObj["private_description"] = it.value();
+ domainObj["description"] = it.value();
}