From 32eaa116adb7ca2b271254ded5953335eb55e647 Mon Sep 17 00:00:00 2001 From: Paul Schneider Date: Mon, 12 Dec 2016 14:30:15 +0100 Subject: [PATCH 1/3] Fix --- .../BookAStar.Droid/Services/GcmListenerService.cs | 10 ++++++---- BookAStar/BookAStar/Model/BookQueryData.cs | 3 ++- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/BookAStar/BookAStar.Droid/Services/GcmListenerService.cs b/BookAStar/BookAStar.Droid/Services/GcmListenerService.cs index 148fbdd5..98a21fc8 100644 --- a/BookAStar/BookAStar.Droid/Services/GcmListenerService.cs +++ b/BookAStar/BookAStar.Droid/Services/GcmListenerService.cs @@ -44,19 +44,21 @@ namespace BookAStar.Droid.Services if (topic == "BookQuery") { DateTime eventdate; - var sdatestr = data.GetString("EventDate"); DateTime.TryParse(sdatestr, out eventdate); var locationJson = data.GetString("Location"); var location = JsonConvert.DeserializeObject(locationJson); var cid = long.Parse(data.GetString("Id")); + var clientJson = data.GetString("Client"); + var client = JsonConvert.DeserializeObject(clientJson); var bq = new BookQueryData { Id = cid, - Location = location + Location = location, + Client = client, + Reason = data.GetString("Reason") }; - SendBookQueryNotification(bq); } else @@ -89,7 +91,7 @@ namespace BookAStar.Droid.Services var multiple = count > 1; var title = multiple ? $"{count} demandes" : bquery.Client.UserName; - var message = $"{bquery.EventDate} {bquery.Client.UserName} {bquery.Location.Address}"; + var message = $"{bquery.EventDate} {bquery.Client.UserName} {bquery.Location.Address}\n {bquery.Reason}"; var intent = new Intent(this, typeof(MainActivity)); intent.AddFlags(ActivityFlags.ClearTop); diff --git a/BookAStar/BookAStar/Model/BookQueryData.cs b/BookAStar/BookAStar/Model/BookQueryData.cs index 6f5ee97b..eb10dc88 100644 --- a/BookAStar/BookAStar/Model/BookQueryData.cs +++ b/BookAStar/BookAStar/Model/BookQueryData.cs @@ -4,12 +4,13 @@ using System; namespace BookAStar.Model { - public class BookQueryData : IBookQueryData + public class BookQueryData { public ClientProviderInfo Client { get; set; } public Location Location { get; set; } public long Id { get; set; } public DateTime EventDate { get; set; } public decimal? Previsionnal { get; set; } + public string Reason { get; set; } } } From fc8a64de96d101d277f613714cf2a6b707a477bf Mon Sep 17 00:00:00 2001 From: Paul Schneider Date: Mon, 12 Dec 2016 14:30:23 +0100 Subject: [PATCH 2/3] DIB --- BookAStar/BookAStar.Droid/MainActivity.cs | 85 ++++++++---------- .../Rendering/ImageButtonRenderer.cs | 2 +- BookAStar/BookAStar/App.xaml | 8 +- BookAStar/BookAStar/App.xaml.cs | 34 +++++--- BookAStar/BookAStar/BookAStar.csproj | 14 ++- BookAStar/BookAStar/Constants.cs | 5 ++ BookAStar/BookAStar/Data/EstimateEntity.cs | 2 +- .../BookAStar/Data/NonCrUD/RemoteFiles.cs | 2 +- BookAStar/BookAStar/Data/RemoteEntity.cs | 10 +-- BookAStar/BookAStar/Helpers/UserHelpers.cs | 17 ++-- BookAStar/BookAStar/Model/Auth/User.cs | 21 +++-- .../BookAStar/Model/ClientProviderInfo.cs | 16 +--- .../BookAStar/Pages/{ => Chat}/ChatPage.xaml | 8 +- .../Pages/{ => Chat}/ChatPage.xaml.cs | 12 ++- .../BookAStar/Pages/Chat/PrivateChatPage.xaml | 6 ++ .../Pages/Chat/PrivateChatPage.xaml.cs | 18 ++++ .../Pages/UserProfile/DashboardPage.xaml | 36 ++++---- .../Pages/UserProfile/DashboardPage.xaml.cs | 39 +++++++-- BookAStar/BookAStar/Settings/MainSettings.cs | 25 +++++- BookAStar/BookAStar/Strings.Designer.cs | 18 ++++ BookAStar/BookAStar/Strings.resx | 6 ++ .../EditEstimateViewModel.cs | 8 +- .../ViewModels/Messaging/ChatViewModel.cs | 55 +++++------- .../ViewModels/Messaging/UserViewModel.cs | 57 ++++++++++++ .../UserProfile/DashboardViewModel.cs | 86 ++++++++++++------- BookAStar/BookAStar/Views/RatingView.xaml | 2 +- 26 files changed, 382 insertions(+), 210 deletions(-) rename BookAStar/BookAStar/Pages/{ => Chat}/ChatPage.xaml (95%) rename BookAStar/BookAStar/Pages/{ => Chat}/ChatPage.xaml.cs (93%) create mode 100644 BookAStar/BookAStar/Pages/Chat/PrivateChatPage.xaml create mode 100644 BookAStar/BookAStar/Pages/Chat/PrivateChatPage.xaml.cs create mode 100644 BookAStar/BookAStar/ViewModels/Messaging/UserViewModel.cs diff --git a/BookAStar/BookAStar.Droid/MainActivity.cs b/BookAStar/BookAStar.Droid/MainActivity.cs index a170881a..24c5dad9 100644 --- a/BookAStar/BookAStar.Droid/MainActivity.cs +++ b/BookAStar/BookAStar.Droid/MainActivity.cs @@ -323,7 +323,7 @@ namespace BookAStar.Droid clientId: "d9be5e97-c19d-42e4-b444-0e65863b19e1", clientSecret: "blouh", scope: "profile", - authorizeUrl: new Uri("http://dev.pschneider.fr/authorize"), + authorizeUrl: new Uri(Constants.AuthorizeUrl), redirectUrl: new Uri("http://dev.pschneider.fr/oauth/success"), accessTokenUrl: new Uri("http://dev.pschneider.fr/token")); public void AddAccount() @@ -348,65 +348,48 @@ namespace BookAStar.Droid { using (var client = new HttpClient()) { - // get me - // var request = new OAuth2Request("GET", new Uri(Constants.UserInfoUrl), null, eventArgs.Account); - var request = new HttpRequestMessage(HttpMethod.Get, Constants.UserInfoUrl); - - request.Headers.Authorization = - new System.Net.Http.Headers.AuthenticationHeaderValue("Bearer", tokens.AccessToken); - - var response = await client.SendAsync(request); - - response.EnsureSuccessStatusCode(); - - string userJson = await response.Content.ReadAsStringAsync(); - JObject jactiveUser = JObject.Parse(userJson); - Account acc = eventArgs.Account; - - var uid = jactiveUser["Id"].Value(); - var username = jactiveUser["UserName"].Value(); - var roles = jactiveUser["Roles"].Values().ToList(); - var emails = jactiveUser["EMails"].Values().ToList(); - - - var newuser = new User + using (var request = new HttpRequestMessage(HttpMethod.Get, Constants.UserInfoUrl)) { - UserName = username, - EMails = emails, - Roles = roles, - Id = uid, - YavscTokens = tokens - }; - - MainSettings.SaveUser(newuser); - accStore.Save(acc, Constants.ApplicationName); + request.Headers.Authorization = + new System.Net.Http.Headers.AuthenticationHeaderValue("Bearer", tokens.AccessToken); + + using (var response = await client.SendAsync(request)) + { + response.EnsureSuccessStatusCode(); + string userJson = await response.Content.ReadAsStringAsync(); + JObject jactiveUser = JObject.Parse(userJson); + Account acc = eventArgs.Account; + + var uid = jactiveUser["Id"].Value(); + var username = jactiveUser["UserName"].Value(); + var roles = jactiveUser["Roles"].Values().ToList(); + var emails = jactiveUser["EMails"].Values().ToList(); + var avatar = jactiveUser["Avatar"].Value(); + var address = jactiveUser["Avatar"].Value(); + var newuser = new User + { + UserName = username, + EMails = emails, + Roles = roles, + Id = uid, + YavscTokens = tokens, + Avatar = avatar, + Address = address + }; + + MainSettings.SaveUser(newuser); + accStore.Save(acc, Constants.ApplicationName); + } + } } - } - - ); - + }); } }; auth.Error += Auth_Error; StartActivity(loginIntent); } - public static void PopulateUserWithAccount(User u, Account a) - { - u.YavscTokens = new Model.Auth.Account.Tokens - { - AccessToken = - a.Properties["access_token"], - RefreshToken = - a.Properties["refresh_token"], - ExpiresIn = - int.Parse(a.Properties["expires_in"]), - TokenType = a.Properties["token_type"] - }; - u.UserName = a.Username; - } - private void Auth_Error(object sender, AuthenticatorErrorEventArgs e) { // TODO handle diff --git a/BookAStar/BookAStar.Droid/Rendering/ImageButtonRenderer.cs b/BookAStar/BookAStar.Droid/Rendering/ImageButtonRenderer.cs index 38705672..e9f56876 100644 --- a/BookAStar/BookAStar.Droid/Rendering/ImageButtonRenderer.cs +++ b/BookAStar/BookAStar.Droid/Rendering/ImageButtonRenderer.cs @@ -200,7 +200,7 @@ namespace BookAStar.Rendering var uriImageLoader = imagesource as UriImageSource; if (uriImageLoader != null && uriImageLoader.Uri != null) { - using (var client = UserHelpers.CreateClient()) + using (var client = UserHelpers.CreateJsonClient()) { using (var response = await client.GetAsync(uriImageLoader.Uri)) { diff --git a/BookAStar/BookAStar/App.xaml b/BookAStar/BookAStar/App.xaml index 37b91a9f..23e305d3 100644 --- a/BookAStar/BookAStar/App.xaml +++ b/BookAStar/BookAStar/App.xaml @@ -9,7 +9,7 @@ #FFAAAAFF - #80AFAFAF + #80FFFFFF #FFFFFFFF #FFFFFFFF @@ -25,9 +25,9 @@ #800080 - - - + + +