From d3c3b77e6be63813ab03c5673370c2cb695d5d92 Mon Sep 17 00:00:00 2001 From: James Rowe Date: Sun, 3 Nov 2019 01:22:55 -0600 Subject: [PATCH] Various fixes to various things --- src/config.rs | 2 + src/frontend/rest/services/authentication.rs | 4 +- src/frontend/ui/mod.rs | 2 +- ui/src/App.vue | 45 ++++++++++++++++ ui/src/views/AuthenticationView.vue | 19 ++++--- ui/src/views/CompleteView.vue | 54 ++++++++++---------- ui/src/views/SelectPackages.vue | 32 ++++++++++-- 7 files changed, 116 insertions(+), 42 deletions(-) diff --git a/src/config.rs b/src/config.rs index a1aeea5..ef3e91f 100644 --- a/src/config.rs +++ b/src/config.rs @@ -39,6 +39,8 @@ pub struct PackageDescription { #[serde(default)] pub requires_authorization: Option, #[serde(default)] + pub is_new: Option, + #[serde(default)] pub need_authentication_description: Option, #[serde(default)] pub need_link_description: Option, diff --git a/src/frontend/rest/services/authentication.rs b/src/frontend/rest/services/authentication.rs index 6ce4b63..5f403d7 100644 --- a/src/frontend/rest/services/authentication.rs +++ b/src/frontend/rest/services/authentication.rs @@ -18,7 +18,7 @@ use config::JWTValidation; struct Auth { username: String, token: String, - jwt_token: JWTClaims, + jwt_token: Option, } /// claims struct, it needs to derive `Serialize` and/or `Deserialize` @@ -192,7 +192,7 @@ pub fn handle(service: &WebService, _req: Request) -> InternalFuture { let out = Auth { username: username_clone, token: token_clone, - jwt_token: claims.clone(), + jwt_token: Some(claims.clone()), }; // Convert the json to a string and return the json token match serde_json::to_string(&out) { diff --git a/src/frontend/ui/mod.rs b/src/frontend/ui/mod.rs index 82378cd..8d9028e 100644 --- a/src/frontend/ui/mod.rs +++ b/src/frontend/ui/mod.rs @@ -17,7 +17,7 @@ enum CallbackType { /// Starts the main web UI. Will return when UI is closed. pub fn start_ui(app_name: &str, http_address: &str, is_launcher: bool) { - let size = (1024, 500); + let size = (1024, 550); info!("Spawning web view instance"); diff --git a/ui/src/App.vue b/ui/src/App.vue index d5a5d19..60e865c 100644 --- a/ui/src/App.vue +++ b/ui/src/App.vue @@ -71,6 +71,7 @@ pre { .clickable-box { cursor: pointer; + position: relative; } .clickable-box label { @@ -126,4 +127,48 @@ pre { body.has-background-black-ter .subtitle, body.has-background-black-ter .column > div { color: hsl(0, 0%, 96%); } + +.ribbon { + position: absolute; + right: -5px; top: -5px; + z-index: 1; + overflow: hidden; + width: 75px; height: 75px; + text-align: right; +} +.ribbon span { + font-size: 10px; + font-weight: bold; + color: #FFF; + text-transform: uppercase; + text-align: center; + line-height: 20px; + transform: rotate(45deg); + -webkit-transform: rotate(45deg); + width: 100px; + display: block; + background: #79A70A; + background: linear-gradient(#FF3C28 0%, #FF3C28 100%); + box-shadow: 0 3px 10px -5px rgba(0, 0, 0, 1); + position: absolute; + top: 19px; right: -21px; +} +.ribbon span::before { + content: ""; + position: absolute; left: 0px; top: 100%; + z-index: -1; + border-left: 3px solid #FF3C28; + border-right: 3px solid transparent; + border-bottom: 3px solid transparent; + border-top: 3px solid #FF3C28; +} +.ribbon span::after { + content: ""; + position: absolute; right: 0px; top: 100%; + z-index: -1; + border-left: 3px solid transparent; + border-right: 3px solid #FF3C28; + border-bottom: 3px solid transparent; + border-top: 3px solid #FF3C28; +} diff --git a/ui/src/views/AuthenticationView.vue b/ui/src/views/AuthenticationView.vue index 6f245fc..651ffe9 100644 --- a/ui/src/views/AuthenticationView.vue +++ b/ui/src/views/AuthenticationView.vue @@ -5,11 +5,14 @@ When you are done, enter the username and token below.

- Before you can install this Early Access, you need to verify your account. - Click here to link your yuzu-emu.org account - and paste the token below. -

+ The Early Access release channel lets you try out the latest experimental features and fixes, before they are merged into yuzu. This channel includes all regular yuzu daily updates, plus these exclusive features. + To be an Early Access member, you must be a Patreon Early Access Subscriber. +

+ If you are a subscriber, click here to link your yuzu-emu.org account +

+ If you are not already a subscriber, click here to become one +


@@ -30,17 +33,17 @@ Your credentials are valid, but you still need to link your patreon! - If this is an error, then click here to link your yuzu-emu.org account + If this is an error, then click here to link your yuzu-emu.org account - Your patreon is linked, but you are not a current subscriber. - Log into your patreon account and support the project! + Your patreon is linked, but you are not a current subscriber! + Log into your patreon account and support the project! Your patreon is linked, and you are supporting the project, but you must first join the Early Access reward tier! - Log into your patreon account and choose to back the Early Access reward tier. + Log into your patreon account and choose to back the Early Access reward tier.
diff --git a/ui/src/views/CompleteView.vue b/ui/src/views/CompleteView.vue index 9515403..6ef1ff9 100644 --- a/ui/src/views/CompleteView.vue +++ b/ui/src/views/CompleteView.vue @@ -1,40 +1,40 @@ diff --git a/ui/src/views/SelectPackages.vue b/ui/src/views/SelectPackages.vue index 9772c40..34ce32b 100644 --- a/ui/src/views/SelectPackages.vue +++ b/ui/src/views/SelectPackages.vue @@ -7,30 +7,43 @@
-

{{ Lpackage.name }}

+
New!
+ + {{ Lpackage.name }} +

{{Lpackage.need_authentication_description}}

-

{{ Lpackage.name }}

+
New!
+ + {{ Lpackage.name }} +

{{Lpackage.need_link_description}}

-

{{ Lpackage.name }}

+
New!
+ + {{ Lpackage.name }} +

{{Lpackage.need_subscription_description}}

-

{{ Lpackage.name }}

+
New!
+ + {{ Lpackage.name }} +

{{Lpackage.need_reward_tier_description}}

+
New!