diff --git a/interface/resources/qml/hifi/commerce/checkout/Checkout.qml b/interface/resources/qml/hifi/commerce/checkout/Checkout.qml index 8d94e284ed..767164d38c 100644 --- a/interface/resources/qml/hifi/commerce/checkout/Checkout.qml +++ b/interface/resources/qml/hifi/commerce/checkout/Checkout.qml @@ -39,7 +39,8 @@ Rectangle { property bool itemIsJson: true; property bool shouldBuyWithControlledFailure: false; property bool debugCheckoutSuccess: false; - property bool canRezCertifiedItems: Entities.canRezCertified || Entities.canRezTmpCertified; + property bool canRezCertifiedItems: Entities.canRezCertified() || Entities.canRezTmpCertified(); + property bool isWearable; // Style color: hifi.colors.white; Hifi.QmlCommerce { @@ -80,6 +81,7 @@ Rectangle { root.activeView = "checkoutFailure"; } else { root.itemHref = result.data.download_url; + root.isWearable = result.data.categories.indexOf("Wearables") > -1; root.activeView = "checkoutSuccess"; } } @@ -573,7 +575,7 @@ Rectangle { height: 50; anchors.left: parent.left; anchors.right: parent.right; - text: "Rez It" + text: root.isWearable ? "Wear It" : "Rez It" onClicked: { if (urlHandler.canHandleUrl(root.itemHref)) { urlHandler.handleUrl(root.itemHref); @@ -584,7 +586,7 @@ Rectangle { } RalewaySemiBold { id: noPermissionText; - visible: !root.canRezCertifiedItems; + visible: !root.canRezCertifiedItems && !root.isWearable; text: 'You do not have Certified Rez permissions in this domain.' // Text size size: 16; diff --git a/interface/resources/qml/hifi/commerce/purchases/PurchasedItem.qml b/interface/resources/qml/hifi/commerce/purchases/PurchasedItem.qml index e7e16668fe..fb42865ba4 100644 --- a/interface/resources/qml/hifi/commerce/purchases/PurchasedItem.qml +++ b/interface/resources/qml/hifi/commerce/purchases/PurchasedItem.qml @@ -39,6 +39,7 @@ Item { property int itemEdition; property int numberSold; property int limitedRun; + property bool isWearable; property string originalStatusText; property string originalStatusColor; @@ -342,7 +343,7 @@ Item { anchors.bottom: parent.bottom; anchors.right: parent.right; width: height; - enabled: root.canRezCertifiedItems && root.purchaseStatus !== "invalidated"; + enabled: (root.canRezCertifiedItems || root.isWearable) && root.purchaseStatus !== "invalidated"; onClicked: { if (urlHandler.canHandleUrl(root.itemHref)) { @@ -415,7 +416,7 @@ Item { size: 16; verticalAlignment: Text.AlignVCenter horizontalAlignment: Text.AlignHCenter - text: "Rez It" + text: root.isWearable ? "Wear It" : "Rez It" } } } diff --git a/interface/resources/qml/hifi/commerce/purchases/Purchases.qml b/interface/resources/qml/hifi/commerce/purchases/Purchases.qml index b5697f687d..c98f212c53 100644 --- a/interface/resources/qml/hifi/commerce/purchases/Purchases.qml +++ b/interface/resources/qml/hifi/commerce/purchases/Purchases.qml @@ -32,7 +32,7 @@ Rectangle { property bool securityImageResultReceived: false; property bool purchasesReceived: false; property bool punctuationMode: false; - property bool canRezCertifiedItems: Entities.canRezCertified || Entities.canRezTmpCertified; + property bool canRezCertifiedItems: Entities.canRezCertified() || Entities.canRezTmpCertified(); property bool pendingInventoryReply: true; property bool isShowingMyItems: false; property bool isDebuggingFirstUseTutorial: false; @@ -434,6 +434,7 @@ Rectangle { numberSold: model.number_sold; limitedRun: model.limited_run; displayedItemCount: model.displayedItemCount; + isWearable: model.categories.indexOf("Wearables") > -1; anchors.topMargin: 12; anchors.bottomMargin: 12; diff --git a/scripts/system/marketplaces/marketplaces.js b/scripts/system/marketplaces/marketplaces.js index 6880d10c18..5ffc35e6e5 100644 --- a/scripts/system/marketplaces/marketplaces.js +++ b/scripts/system/marketplaces/marketplaces.js @@ -74,8 +74,8 @@ itemName: 'Test Flaregun', itemPrice: (debugError ? 10 : 17), itemHref: 'http://mpassets.highfidelity.com/0d90d21c-ce7a-4990-ad18-e9d2cf991027-v1/flaregun.json', - }, - canRezCertifiedItems: Entities.canRezCertified || Entities.canRezTmpCertified + categories: ["Wearables", "Miscellaneous"] + } }); } } @@ -115,7 +115,6 @@ if (url === MARKETPLACE_PURCHASES_QML_PATH) { tablet.sendToQml({ method: 'updatePurchases', - canRezCertifiedItems: Entities.canRezCertified || Entities.canRezTmpCertified, referrerURL: referrerURL, filterText: filterText }); @@ -203,8 +202,7 @@ tablet.pushOntoStack(MARKETPLACE_CHECKOUT_QML_PATH); tablet.sendToQml({ method: 'updateCheckoutQML', - params: parsedJsonMessage, - canRezCertifiedItems: Entities.canRezCertified || Entities.canRezTmpCertified + params: parsedJsonMessage }); } else if (parsedJsonMessage.type === "REQUEST_SETTING") { sendCommerceSettings();