コード例 #1
0
        private async Task ShowCampaigns()
        {
            //If the current campaign is older then seven days, don't show it.
            if ((DateTime.UtcNow - Campaigns.Current.DateUTC).TotalDays > 7)
            {
                return;
            }
            List <Campaign> cookieCampaigns;

            if (await LocalStorage.ContainKeyAsync(Campaigns.CookieName))
            {
                cookieCampaigns = await LocalStorage.GetItemAsync <List <Campaign> >(Campaigns.CookieName);
            }
            else
            {
                cookieCampaigns = new List <Campaign>();
            }


            if (cookieCampaigns.Count == 0 ||
                cookieCampaigns.Last().DateUTC != Campaigns.Current.DateUTC)
            {
                await MatDialogService.OpenAsync(typeof(DialogWithPaypal),
                                                 new MatDialogOptions
                {
                    Attributes = new Dictionary <string, object> {
                        ["Campaign"] = Campaigns.Current
                    }
                });

                await LocalStorage.SetItemAsync(Campaigns.CookieName, Campaigns.All);
            }
        }
コード例 #2
0
        private async void AddNewAsset()
        {
            string result = await MatDialogService.PromptAsync("Tilføj et nyt asset vha. serienummer:");

            if (string.IsNullOrWhiteSpace(result))
            {
                return;
            }

            Computer asset = new Computer(result)
            {
                PcName = "-"
            };

            ComputerService.AddAsset(asset);

            bool assetIsInDatabase = ComputerService.GetAssetBySerialNumber(asset.SerialNumber) != null;

            if (assetIsInDatabase)
            {
                await MatDialogService.AlertAsync("Asset tilføjet.");
            }
            else
            {
                await MatDialogService.AlertAsync("Asset blev ikke tilføjet.");
            }
        }
コード例 #3
0
ファイル: Auftrag.razor.cs プロジェクト: xrdevaf/polar
        protected async Task SendMail(EmailModel emailModel)
        {
            isLoadingFinished = false;
            await Task.Delay(1);

            try
            {
                var result = MailingService.SendMessage(emailModel);

                if (result)
                {
                    await MatDialogService.AlertAsync("The message sent.");
                }
            }
            catch (Exception e)
            {
                Logger.LogError(e, $"{GetUserName()}*Error: Zugangsdaten/SendMail");
                ErrorModel.IsOpen       = true;
                ErrorModel.ErrorContext = e.StackTrace;
                ErrorModel.ErrorMessage = e.Message;
                IsFailed = true;
                StateHasChanged();
            }
            finally
            {
                isLoadingFinished = true;
                StateHasChanged();
            }
        }
コード例 #4
0
        async Task OpenAddPersonaDialog()
        {
            await MatDialogService.OpenAsync(typeof(AddPersona), null);

            await FetchData();

            StateHasChanged();
        }
コード例 #5
0
        private async Task OpenTask(Int32 taskId)
        {
            var task = await Http.GetFromJsonAsync <TaskDto>($"api/task/get-id/{taskId}");

            await MatDialogService.AlertAsync(new StringBuilder()
                                              .Append($"[{task.Id}] ")
                                              .Append(task.Name)
                                              .ToString());
        }
コード例 #6
0
        async Task OpenUpdatePersonaDialog(string DNI)
        {
            await MatDialogService.OpenAsync(typeof(UpdatePersona), new MatDialogOptions { Attributes = new Dictionary <string, object>()
                                                                                           {
                                                                                               { "DNI", DNI }
                                                                                           } });

            await FetchData();

            StateHasChanged();
        }
コード例 #7
0
        private async Task DeleteTask(TaskDto task)
        {
            var result = await MatDialogService.AskAsync("Are you sure you want to delete this task?", new[] { "Yes", "Cancel" });

            if (result == "Cancel")
            {
                return;
            }
            await Http.PostAsJsonAsync <TaskDto>($"api/task/delete/{task.Id}", task);

            NavigationManager.NavigateTo("/alltasks", true);
        }
コード例 #8
0
        private async Task DeleteEmployee(EmployeeDto employee)
        {
            var result = await MatDialogService.AskAsync("Are you sure you want to delete this employee?", new[] { "Yes", "Cancel" });

            if (result == "Cancel")
            {
                return;
            }
            await Http.PostAsJsonAsync <EmployeeDto>($"api/employee/delete/{employee.Id}", employee);

            NavigationManager.NavigateTo("/allemployees", true);
        }
コード例 #9
0
        /// <summary>
        ///     Opens the details page for an asset in a new page.
        /// </summary>
        /// <param name="asset">IAsset to open details for</param>
        private async Task NavigateToDetails(Computer asset)
        {
            if (ComputerService.GetAssetById(asset.Id) == null)
            {
                await MatDialogService.AlertAsync("Asset does not exist.");

                return;
            }

            string url = $"{NavigationManager.BaseUri}AssetDetails/{asset.Id}";
            await JSRuntime.InvokeAsync <object>("open", new object[] { url, "_blank" });
        }
コード例 #10
0
        public async Task ChooseTokens()
        {
            var act    = headersDict.Where(x => x.Value == HeaderType.Activity);
            var caseId = headersDict.Where(x => x.Value == HeaderType.Case);

            if (!act.Any() || !caseId.Any())
            {
                await MatDialogService.AlertAsync("You need at least 1 activity and 1 case!");

                return;
            }

            var timetmpList = headersDict.Where(x => x.Value == HeaderType.Timestamp).Select(x => x.Key).ToList();
            var time        = timetmpList.Any() ? timetmpList[0] : null;
            var resources   = headersDict.Where(x => x.Value == HeaderType.Resource).Select(x => x.Key).ToArray();

            _imported.ChooseTokens(act.FirstOrDefault().Key, caseId.FirstOrDefault().Key, time, resources);
        }
コード例 #11
0
        protected async Task Borrar(string dni)
        {
            try
            {
                var result = await MatDialogService.AskAsync("¿Estás seguro de que quieres borrar esta persona?", new string[] { "Sí", "No" });

                if (result == "Sí")
                {
                    await Http.DeleteAsync("api/persona/" + dni);
                    await FetchData();

                    StateHasChanged();
                    Toaster.Add("Persona borrada!", MatToastType.Success, "Exito", MatIconNames.Check_circle);
                }
            }
            catch
            {
                Toaster.Add("Fallo al borrar persona", MatToastType.Danger, "Error", MatIconNames.Clear);
            }
        }
コード例 #12
0
        private async Task Import()
        {
            var act    = headersDict.Where(x => x.Value == HeaderType.Activity);
            var caseId = headersDict.Where(x => x.Value == HeaderType.Case);

            if (!act.Any() || !caseId.Any())
            {
                await MatDialogService.AlertAsync("You need at least 1 activity and 1 case!");

                return;
            }

            StateContainer.EventLogs.Add(_imported.BuildEventLog(LogName));
            await _stream.DisposeAsync();

            file       = null;
            content    = null;
            _imported  = null;
            uploadMode = false;
            LogName    = null;
        }
コード例 #13
0
ファイル: AspNetUsers.razor.cs プロジェクト: xrdevaf/polar
        protected async Task OpenConfirmServiceRemove(AspNetUsersItemViewModel item)
        {
            var result = await MatDialogService.AskAsync($"Möchten Sie den Datensatz {item.UserName} wirklich löschen?", new string[] { "Löschen", "Abbrechen" });

            if (result == "Löschen")
            {
                try
                {
                    Service.Delete(item);
                    Model.Remove(item);
                }
                catch (Exception e)
                {
                    Logger.LogError(e, $"{GetUserName()}*Error: AspNetUsers/OpenConfirmServiceRemove");
                    ErrorModel.IsOpen       = true;
                    ErrorModel.ErrorContext = e.StackTrace;
                    ErrorModel.ErrorMessage = e.Message;
                    IsFailed = true;
                    StateHasChanged();
                }
            }
        }
コード例 #14
0
        public async Task UploadLog(IMatFileUploadEntry[] files)
        {
            file = files.FirstOrDefault();
            if (file is null)
            {
                return;
            }
            if (file.Type != "text/csv" && file.Type != "application/vnd.ms-excel")
            {
                await MatDialogService.AlertAsync("Log has to be in csv");

                return;
            }

            try
            {
                _stream = new MemoryStream();

                await file.WriteToStreamAsync(_stream);

                _stream.Seek(0, SeekOrigin.Begin);
                GetUploadContent();
                _stream.Seek(0, SeekOrigin.Begin);
                _imported   = CsvLogImporter.LoadLog(_stream);
                headersDict = _imported.Headers.ToDictionary(x => x, HeaderTypeSet);

                uploadMode = true;
            }
            catch
            {
                await MatDialogService.AlertAsync(
                    "There was an error while uploading file. Check that file is .csv format");
            }
            finally
            {
                await InvokeAsync(StateHasChanged);
            }
        }
コード例 #15
0
ファイル: Kunde.razor.cs プロジェクト: xrdevaf/polar
        protected async Task OpenConfirmServiceRemove(KundeItemViewModel item)
        {
            var result = await MatDialogService.AskAsync("Are you sure?", new string[] { "Yes", "No" });

            if (result == "Yes")
            {
                try
                {
                    Service.Delete(item);
                    Model.Remove(item);
                }

                catch (Exception e)
                {
                    Logger.LogError(e, $"{GetUserName()}*Error: KundePage/Remove");
                    ErrorModel.IsOpen       = true;
                    ErrorModel.ErrorContext = e.StackTrace;
                    ErrorModel.ErrorMessage = e.Message;
                    IsFailed = true;
                    StateHasChanged();
                }
            }
        }
コード例 #16
0
 protected async Task SubmitRequestAsync()
 {
     await MatDialogService.AlertAsync("Thank you, we're getting started with your request!");
 }
コード例 #17
0
        /// <summary>
        /// Runs a prompt with the given message.
        /// </summary>
        /// <param name="message">The message which is shown to the user.</param>
        /// <returns>True if the user confirmed the action. False otherwise.</returns>
        private async Task <bool> RunPrompt(string message)
        {
            string result = await MatDialogService.AskAsync(message, dialogOptions);

            return(UserClickedConfirm(result));
        }