private ObservableCollection <Grouping <string, NewDealsModel.Deal> > GroupListByDate14022019() { try { if (ivm?.GetEvery == null) { return(GetEveryThingGrouped); } var grp = from h in ivm?.GetThisWeek orderby h?.Expiration_Date group h by h?.Expiration_Date.DayOfWeek.ToString() into ThisWeeksGroup select new Grouping <string, NewDealsModel.Deal>(ThisWeeksGroup.Key, ThisWeeksGroup); GetEveryThingGrouped.Clear(); foreach (var g in grp) { GetEveryThingGrouped.Add(g); } } catch (Exception ex) { var log = ex; LogService.LogErrors(log.ToString()); MyToast.DisplayToast(Color.Red, "Slight error occured parsing response"); } return(GetEveryThingGrouped); }
public static void SendToastAsync(MyToast myToast, string name, string option) { var toast = ConvertToast(myToast); string displayName = string.IsNullOrEmpty(option) ? name : name + "::" + option; Send(toast, displayName); }
public void ToastDuration() { tlog.Debug(tag, $"ToastDuration START"); var testingTarget = new MyToast(); Assert.IsNotNull(testingTarget, "null handle"); Assert.IsInstanceOf <Toast>(testingTarget, "Should return Toast instance."); testingTarget.OnInitialize(); testingTarget.Duration = 10; tlog.Debug(tag, "Duration : " + testingTarget.Duration); testingTarget.TextLineSpace = 8; tlog.Debug(tag, "testingTarget : " + testingTarget.TextLineSpace); testingTarget.TextLineHeight = 15; tlog.Debug(tag, "TextLineHeight : " + testingTarget.TextLineHeight); testingTarget.TextPadding = new Extents(2, 2, 2, 2); tlog.Debug(tag, "TextPadding : " + testingTarget.TextPadding); testingTarget.Message = "Toast"; tlog.Debug(tag, "Message : " + testingTarget.Message); testingTarget.TextAlignment = HorizontalAlignment.Center; tlog.Debug(tag, "TextAlignment :" + testingTarget.TextAlignment); testingTarget.TextArray = new string[2] { "microsoft", "perfomance" }; tlog.Debug(tag, "TextArray : " + testingTarget.TextArray); testingTarget.PointSize = 15.0f; tlog.Debug(tag, "PointSize : " + testingTarget.PointSize); testingTarget.FontFamily = "BreezeSans"; tlog.Debug(tag, "FontFamily : " + testingTarget.FontFamily); testingTarget.TextColor = Color.Yellow; tlog.Debug(tag, "TextColor : " + testingTarget.TextColor); try { testingTarget.Post(Window.Instance); } catch (Exception e) { tlog.Debug(tag, e.Message.ToString()); Assert.Fail("Caught Exception : Failed!"); } testingTarget.Dispose(); tlog.Debug(tag, $"ToastDuration END (OK)"); }
public LoggedOn(string message) { InitializeComponent(); //AnimateThisPage(); store = AccountStore.Create(); //account = store.FindAccountsForService(Constants.AppName).FirstOrDefault(); var mytoast = MyToast.DisplayToast(Color.Blue, message); this.BindingContext = lvm; }
public void InitToastUsingName(MyToast toast, List <Word> words) { foreach (var action in toast.ActionList) { action.Pointer = EncodingWordHelper.SearchSameWord(words, action.Name); } foreach (var visual in toast.VisualList) { visual.Pointer = EncodingWordHelper.SearchSameWord(words, visual.Name); } }
async void OnAuthCompleted(object sender, AuthenticatorCompletedEventArgs e) { var authenticator = sender as OAuth2Authenticator; if (authenticator != null) { authenticator.Completed -= OnAuthCompleted; authenticator.Error -= OnAuthError; } User user = null; if (e.IsAuthenticated) { // If the user is authenticated, request their basic user data from Google // UserInfoUrl = https://www.googleapis.com/oauth2/v2/userinfo var request = new OAuth2Request("GET", new Uri(Constants.UserInfoUrl), null, e.Account); var response = await request.GetResponseAsync(); if (response != null) { // Deserialize the data and store it in the account store // The users email address will be used to identify data in SimpleDB string userJson = await response.GetResponseTextAsync(); user = JsonConvert.DeserializeObject <User>(userJson); } if (account != null) { store.Delete(account, Constants.AppName); } await store.SaveAsync(account = e.Account, Constants.AppName); //UserDialogs.Instance.Alert("", "Email address: " + user.Email + "\n fullname:" + user.Name + "\n gender:" + user.Gender, "OK"); MyToast t = new MyToast(); UserDialogs.Instance.Toast(t.ShowMyToast(Color.Green, "Successful google login")); User.Username = user.Email; User.Password = user.Email; } else { MyToast t = new MyToast(); UserDialogs.Instance.Toast(t.ShowMyToast(Color.PaleVioletRed, "Unsuccessful google login")); } }
public void ToastCreateViewStyle() { tlog.Debug(tag, $"ToastCreateViewStyle START"); var testingTarget = new MyToast(); Assert.IsNotNull(testingTarget, "null handle"); Assert.IsInstanceOf <Toast>(testingTarget, "Should return Toast instance."); try { testingTarget.OnCreateViewStyle(); } catch (Exception e) { tlog.Debug(tag, e.Message.ToString()); Assert.Fail("Caught Exception : Failed!"); } testingTarget.Dispose(); tlog.Debug(tag, $"ToastCreateViewStyle END (OK)"); }
public static ToastNotification ConvertToast(MyToast myToast) { Dictionary <int, Models.ToastVisual> visualDict = new Dictionary <int, Models.ToastVisual>(); Dictionary <int, QueryString> actionDict = new Dictionary <int, QueryString>(); ToastActionsCustom actions = new ToastActionsCustom(); QueryString launch = new QueryString(); Microsoft.Toolkit.Uwp.Notifications.ToastVisual visual = new Microsoft.Toolkit.Uwp.Notifications.ToastVisual() { BindingGeneric = new ToastBindingGeneric() { Children = { new AdaptiveText() { Text = "" } } } }; foreach (Models.ToastVisual nowVisual in myToast.VisualList) { switch (nowVisual.Visual) { case VisualType.TITLE: visual.BindingGeneric.Children[0] = new AdaptiveText() { Text = nowVisual.ToString() }; break; case VisualType.DETAIL: visual.BindingGeneric.Children.Add(new AdaptiveText() { Text = nowVisual.ToString() }); break; case VisualType.MAIN_IMG: visual.BindingGeneric.Children.Add(new AdaptiveImage() { Source = nowVisual.ToString() }); break; case VisualType.LOGO_IMG: visual.BindingGeneric.AppLogoOverride = new ToastGenericAppLogo() { Source = nowVisual.ToString(), HintCrop = ToastGenericAppLogoCrop.Circle }; break; case VisualType.BUTTON1: case VisualType.BUTTON2: case VisualType.BUTTON3: int index = (int)nowVisual.Visual - (int)VisualType.BUTTON1; if (!visualDict.ContainsKey(index)) { visualDict.Add(index, nowVisual); } else { visualDict[index] = nowVisual; } break; } } foreach (ToastAction nowAction in myToast.ActionList) { switch (nowAction.When) { case WhenType.BODY: launch.Add(new QueryString() { { "action", ((int)nowAction.ActionType).ToString() }, { "id", nowAction.ToString() }, { "folder", nowAction.Folder } }.ToString()); break; case WhenType.BUTTON1: case WhenType.BUTTON2: case WhenType.BUTTON3: int when = (int)nowAction.When - (int)WhenType.BUTTON1; if (!actionDict.ContainsKey(when)) { actionDict.Add(when, new QueryString() { { "action", ((int)nowAction.ActionType).ToString() }, { "id", nowAction.ToString() }, { "folder", nowAction.Folder } }); } else { actionDict[when].Add("action", ((int)nowAction.ActionType).ToString()); actionDict[when].Add("id", nowAction.ToString()); actionDict[when].Add("folder", nowAction.Folder); } break; } } /*Add button*/ foreach (var nowVisual in visualDict.OrderBy(x => x.Key)) { actions.Buttons.Add( new ToastButton(nowVisual.Value.ToString(), actionDict.ContainsKey(nowVisual.Key) == true ? actionDict[nowVisual.Key].ToString() : "") ); } ToastContent toastContent = new ToastContent() { Visual = visual, Actions = actions, Launch = launch.ToString(), }; // Create the XML document (BE SURE TO REFERENCE WINDOWS.DATA.XML.DOM) var doc = new XmlDocument(); doc.LoadXml(toastContent.GetContent()); // And create the toast notification var toast = new ToastNotification(doc); toast.ExpirationTime = DateTime.Now.AddDays(3); return(toast); }
async void OnAuthCompleted(object sender, AuthenticatorCompletedEventArgs e) { try { using (UserDialogs.Instance.Loading("")) { var authenticator = sender as OAuth2Authenticator; if (authenticator != null) { authenticator.Completed -= OnAuthCompleted; authenticator.Error -= OnAuthError; } User user = null; if (e.IsAuthenticated) { OAuth2Request oAuth2Request = null; string returnedJson = null; // If the user is authenticated, request their basic user data from Google // UserInfoUrl = https://www.googleapis.com/oauth2/v2/userinfo switch (SocialMedia) { case "facebook": oAuth2Request = new OAuth2Request("GET", new Uri(Constants.graphAPI), null, e.Account); break; case "google": oAuth2Request = new OAuth2Request("GET", new Uri(Constants.UserInfoUrl), null, e.Account); break; default: break; } //var request = new OAuth2Request("GET", new Uri(Constants.UserInfoUrl), null, e.Account); var response = await oAuth2Request.GetResponseAsync(); if (response != null) { // Deserialize the data and store it in the account store // The users email address will be used to identify data in SimpleDB string userJson = await response.GetResponseTextAsync(); switch (SocialMedia) { case "google": try { user = JsonConvert.DeserializeObject <User>(userJson); lvm.User.Username = user.Email; lvm.User.Password = user.Email; lvm.User.EmailAddress = user.Email; lvm.User.ConfirmPin = user.Email; } catch (Exception ex) { var log = ex; } break; case "facebook": try { var fbuser = JsonConvert.DeserializeObject <FaceBookProfile>(userJson); //var fbuser = JsonValue.Parse(response.GetResponseText()); lvm.User.Username = fbuser.Email; lvm.User.Password = fbuser.Email; lvm.User.EmailAddress = fbuser.Email; lvm.User.ConfirmPin = fbuser.Email; } catch (Exception ex) { var log = ex; } break; default: break; } } if (account != null) { store.Delete(account, Constants.AppName); } await store.SaveAsync(account = e.Account, Constants.AppName); //UserDialogs.Instance.Alert("", "Email address: " + user.Email + "\n fullname:" + user.Name + "\n gender:" + user.Gender, "OK"); MyToast t = new MyToast(); UserDialogs.Instance.Toast(t.ShowMyToast(Color.Green, "Successful login")); GlobalStaticFields.Username = lvm.User.Username; var tk = await lvm.GetTokenFromAPI().ConfigureAwait(false); if (tk) { lvm.PersistUserDetails(); //Application.Current.MainPage.Navigation.PushAsync(new AppLanding()); Device.BeginInvokeOnMainThread ( async() => await Application.Current.MainPage.Navigation.PushAsync(new AppLanding()) ); } else { var reg = await lvm.Register().ConfigureAwait(false); if (reg) { //lvm.PersistUserDetails(); Application.Current.MainPage.Navigation.PushAsync(new AppLanding()); //Device.BeginInvokeOnMainThread // ( //async () => await Application.Current.MainPage.Navigation.PushAsync(new AppLanding()) //); } else { Device.BeginInvokeOnMainThread (() => UserDialogs.Instance.Toast(t.ShowMyToast(Color.OrangeRed, $"Unsuccessful. {lvm.RegisterationError} "))); } } } else { MyToast t = new MyToast(); UserDialogs.Instance.Toast(t.ShowMyToast(Color.PaleVioletRed, $"Unsuccessful {SocialMedia} login")); } } } catch (Exception ex) { var log = ex; } }
async void OnAuthCompleted(object sender, AuthenticatorCompletedEventArgs e) { using (UserDialogs.Instance.Loading("")) { var authenticator = sender as OAuth2Authenticator; if (authenticator != null) { authenticator.Completed -= OnAuthCompleted; authenticator.Error -= OnAuthError; } User user = null; if (e.IsAuthenticated) { // If the user is authenticated, request their basic user data from Google // UserInfoUrl = https://www.googleapis.com/oauth2/v2/userinfo var request = new OAuth2Request("GET", new Uri(Constants.UserInfoUrl), null, e.Account); var response = await request.GetResponseAsync(); if (response != null) { // Deserialize the data and store it in the account store // The users email address will be used to identify data in SimpleDB string userJson = await response.GetResponseTextAsync(); user = JsonConvert.DeserializeObject <User>(userJson); } if (account != null) { store.Delete(account, Constants.AppName); } await store.SaveAsync(account = e.Account, Constants.AppName); //UserDialogs.Instance.Alert("", "Email address: " + user.Email + "\n fullname:" + user.Name + "\n gender:" + user.Gender, "OK"); MyToast t = new MyToast(); UserDialogs.Instance.Toast(t.ShowMyToast(Color.Green, "Successful google login")); lvm.User.Username = user.Email; lvm.User.Password = user.Email; lvm.User.EmailAddress = user.Email; lvm.User.ConfirmPin = user.Email; var tk = await lvm.GetTokenFromAPI().ConfigureAwait(false); if (tk) { Navigation.PushAsync(new AppLanding()); } else { var reg = await lvm.Register().ConfigureAwait(false); if (reg) { Device.BeginInvokeOnMainThread ( async() => Navigation.PushAsync(new AppLanding()) ); } else { Device.BeginInvokeOnMainThread (() => UserDialogs.Instance.Toast(t.ShowMyToast(Color.OrangeRed, $"Unsuccessful. {lvm.RegisterationError} "))); } } } else { MyToast t = new MyToast(); UserDialogs.Instance.Toast(t.ShowMyToast(Color.PaleVioletRed, "Unsuccessful google login")); } } }