Showing the changes to interface/src/Application.cpp (1 of 31 files). Show all
Unified · Split
| @@ -6370,6 +6370,24 @@ bool Application::askToWearAvatarAttachmentUrl(const QString& url) { · 6369 unmodified lines | ||
| 6370 | 6370 | return true; |
| 6371 | 6371 | } |
| 6372 | 6372 | |
| 6373 | +void Application::replaceDomainContent(const QString& url) { | |
| 6374 | + qCDebug(interfaceapp) << "Attempting to replace domain content: " << url; | |
| 6375 | + QByteArray urlData(url.toUtf8()); | |
| 6376 | + auto limitedNodeList = DependencyManager::get<LimitedNodeList>(); | |
| 6377 | + limitedNodeList->eachMatchingNode([](const SharedNodePointer& node) { | |
| 6378 | + return node->getType() == NodeType::EntityServer && node->getActiveSocket(); | |
| 6379 | + }, [&urlData, limitedNodeList](const SharedNodePointer& octreeNode) { | |
| 6380 | + auto octreeFilePacket = NLPacket::create(PacketType::OctreeFileReplacementFromUrl, urlData.size(), true); | |
| 6381 | + octreeFilePacket->write(urlData); | |
| 6382 | + limitedNodeList->sendPacket(std::move(octreeFilePacket), *octreeNode); | |
| 6383 | + }); | |
| 6384 | + auto addressManager = DependencyManager::get<AddressManager>(); | |
| 6385 | + addressManager->handleLookupString(DOMAIN_SPAWNING_POINT); | |
| 6386 | + QString newHomeAddress = addressManager->getHost() + DOMAIN_SPAWNING_POINT; | |
| 6387 | + qCDebug(interfaceapp) << "Setting new home bookmark to: " << newHomeAddress; | |
| 6388 | + DependencyManager::get<LocationBookmarks>()->setHomeLocationToAddress(newHomeAddress); | |
| 6389 | +} | |
| 6390 | + | |
| 6373 | 6391 | bool Application::askToReplaceDomainContent(const QString& url) { |
| 6374 | 6392 | QString methodDetails; |
| 6375 | 6393 | const int MAX_CHARACTERS_PER_LINE = 90; |
| @@ -6389,21 +6407,7 @@ bool Application::askToReplaceDomainContent(const QString& url) { · 13 unmodified lines | ||
| 6389 | 6407 | QString details; |
| 6390 | 6408 | if (static_cast<QMessageBox::StandardButton>(answer.toInt()) == QMessageBox::Yes) { |
| 6391 | 6409 | // Given confirmation, send request to domain server to replace content |
| 6392 | − qCDebug(interfaceapp) << "Attempting to replace domain content: " << url; | |
| 6393 | − QByteArray urlData(url.toUtf8()); | |
| 6394 | − auto limitedNodeList = DependencyManager::get<LimitedNodeList>(); | |
| 6395 | − limitedNodeList->eachMatchingNode([](const SharedNodePointer& node) { | |
| 6396 | − return node->getType() == NodeType::EntityServer && node->getActiveSocket(); | |
| 6397 | − }, [&urlData, limitedNodeList](const SharedNodePointer& octreeNode) { | |
| 6398 | − auto octreeFilePacket = NLPacket::create(PacketType::OctreeFileReplacementFromUrl, urlData.size(), true); | |
| 6399 | − octreeFilePacket->write(urlData); | |
| 6400 | − limitedNodeList->sendPacket(std::move(octreeFilePacket), *octreeNode); | |
| 6401 | − }); | |
| 6402 | − auto addressManager = DependencyManager::get<AddressManager>(); | |
| 6403 | − addressManager->handleLookupString(DOMAIN_SPAWNING_POINT); | |
| 6404 | − QString newHomeAddress = addressManager->getHost() + DOMAIN_SPAWNING_POINT; | |
| 6405 | − qCDebug(interfaceapp) << "Setting new home bookmark to: " << newHomeAddress; | |
| 6406 | − DependencyManager::get<LocationBookmarks>()->setHomeLocationToAddress(newHomeAddress); | |
| 6410 | + replaceDomainContent(url); | |
| 6407 | 6411 | details = "SuccessfulRequestToReplaceContent"; |
| 6408 | 6412 | } else { |
| 6409 | 6413 | details = "UserDeclinedToReplaceContent"; |