Ver código fonte

picture dialog for bike in pending overview and history

master
Flo Smilari 4 anos atrás
pai
commit
6bed42f331

+ 15
- 3
Pages/CaritasServiceFundVeloHistoryPage.razor Ver arquivo

@@ -40,7 +40,9 @@
@if (FromRoute.Equals("history_found")) {
<td style="white-space: nowrap">@getAddress(context)</td>
}
<td>@getPicture(context)</td>
<td>
<MatIconButton Disabled="@HasNoPicture(context)" Icon="photo" OnClick="@(_ => ShowPicture(context))"></MatIconButton>
</td>
<td>
<MatIconButton Icon="delete_forever" OnClick="@(_ => DeleteReport(context))"></MatIconButton>
</td>
@@ -101,9 +103,19 @@
return "";
}
private string getPicture(ReportRepositoryItem item) {
private async Task ShowPicture(ReportRepositoryItem item) {
string picData = ReportRepositoryItem.Type.FOUND.Equals(item.ReportType) ? ((FoundReportRepositoryItem)item).Report.FotoString : ((MissingReportRepositoryItem)item).Report.FotoString;
return "";
await MatDialogService.OpenAsync(typeof(PictureDialog), new MatDialogOptions() {
Attributes = new Dictionary<string, object>(){
{"ImgUrl", picData},
}
});
await ScrollLockRemover.removeScrollLockAsync();
}
private bool HasNoPicture(ReportRepositoryItem item) {
string picData = ReportRepositoryItem.Type.FOUND.Equals(item.ReportType) ? ((FoundReportRepositoryItem)item).Report.FotoString : ((MissingReportRepositoryItem)item).Report.FotoString;
return String.IsNullOrEmpty(picData);
}
private async void DeleteReport(ReportRepositoryItem item, bool ask = true) {

+ 1
- 1
Pages/CaritasServiceFundVeloMissingKeyDataPage.razor Ver arquivo

@@ -294,7 +294,7 @@
report.Bemerkung = remark;
report.Alter = age;
report.Preis = price;
report.SuchDienstId = selectedSearchService.Id;
report.SuchDienstId = selectedSearchService != null ? selectedSearchService.Id : null;
report.SuchDienstNr = searchServiceNbr;
}

+ 17
- 4
Pages/CaritasServiceFundVeloPendingOverviewPage.razor Ver arquivo

@@ -37,7 +37,9 @@
<td style="@getTypeBackgroundStyle(context.ReportType)">@translateType(context.ReportType)</td>
<td style="white-space: nowrap">@ReportRepositoryService.GetCurrentDateTimeFromMillis(context.ID)</td>
<td style="white-space: nowrap">@getAddress(context)</td>
<td>@getPicture(context)</td>
<td>
<MatIconButton Disabled="@HasNoPicture(context)" Icon="photo" OnClick="@(_ => ShowPicture(context))"></MatIconButton>
</td>
<td>
<MatIconButton Icon="delete_forever" OnClick="@(_ => DeleteReport(context))"></MatIconButton>
</td>
@@ -83,16 +85,27 @@
private string getAddress(ReportRepositoryItem item) {
if (ReportRepositoryItem.Type.FOUND.Equals(item.ReportType)) {
GeographicInfo geoInfo = ((FoundReportRepositoryItem)item).Report.GeographicInfo;
return geoInfo.Address + ", " + geoInfo.Postcode + " " + geoInfo.Town;
return geoInfo.Address + ((!String.IsNullOrEmpty(geoInfo.Postcode) || !String.IsNullOrEmpty(geoInfo.Town)) ? ", " + geoInfo.Postcode + " " + geoInfo.Town: "");
}
return "";
}
private string getPicture(ReportRepositoryItem item) {
private async Task ShowPicture(ReportRepositoryItem item) {
string picData = ReportRepositoryItem.Type.FOUND.Equals(item.ReportType) ? ((FoundReportRepositoryItem)item).Report.FotoString : ((MissingReportRepositoryItem)item).Report.FotoString;
return "";
await MatDialogService.OpenAsync(typeof(PictureDialog), new MatDialogOptions() {
Attributes = new Dictionary<string, object>(){
{"ImgUrl", picData},
}
});
await ScrollLockRemover.removeScrollLockAsync();
}
private bool HasNoPicture(ReportRepositoryItem item) {
string picData = ReportRepositoryItem.Type.FOUND.Equals(item.ReportType) ? ((FoundReportRepositoryItem)item).Report.FotoString : ((MissingReportRepositoryItem)item).Report.FotoString;
return String.IsNullOrEmpty(picData);
}
private async void DeleteReport(ReportRepositoryItem item) {
string yes = i18n.GetString("Yes");
string no = i18n.GetString("No");

+ 33
- 0
Pages/PictureDialog.razor Ver arquivo

@@ -0,0 +1,33 @@
@inject IStringLocalizer<Resources> I18n;
<MatDialogTitle style="display: flex; align-items: center;">
<div style="flex: 1;">@I18n["Picture"]</div>
<div @onclick="@(_=>CloseDialog())" style="cursor: pointer;">
<MatIcon Icon="@MatIconNames.Close" Style="display:flex"></MatIcon>
</div>
</MatDialogTitle>
<MatDialogContent>
<MatCard Id="bicyclePic" Class="fv-mat-card">
<MatCardContent>
<MatCardMedia Square="true" ImageUrl="@ImgUrl"></MatCardMedia>
</MatCardContent>
</MatCard>
</MatDialogContent>
<MatDialogActions Style="padding-left:24px;padding-right:24px;padding-bottom:12px">
<MatButton Class="w-100" Raised="true" OnClick="@(_ => CloseDialog())">@I18n["Close"]</MatButton>
</MatDialogActions>
@code {
[Parameter]
public string ImgUrl { get; set; }
[CascadingParameter]
public MatDialogReference DialogReference { get; set; }
void CloseDialog() {
DialogReference.Close("");
}
}

+ 3
- 0
Shared/ResourceFiles/Resources.de.resx Ver arquivo

@@ -192,6 +192,9 @@
<data name="City" xml:space="preserve">
<value>Ort</value>
</data>
<data name="Close" xml:space="preserve">
<value>Schliessen</value>
</data>
<data name="Color" xml:space="preserve">
<value>Farbe</value>
</data>

+ 3
- 0
Shared/ResourceFiles/Resources.fr.resx Ver arquivo

@@ -192,6 +192,9 @@
<data name="City" xml:space="preserve">
<value>Ville</value>
</data>
<data name="Close" xml:space="preserve">
<value>Fermer</value>
</data>
<data name="Color" xml:space="preserve">
<value>Couleur</value>
</data>

+ 3
- 0
Shared/ResourceFiles/Resources.it.resx Ver arquivo

@@ -192,6 +192,9 @@
<data name="City" xml:space="preserve">
<value>Città</value>
</data>
<data name="Close" xml:space="preserve">
<value>Chiudi</value>
</data>
<data name="Color" xml:space="preserve">
<value>Colore</value>
</data>

+ 3
- 0
Shared/ResourceFiles/Resources.resx Ver arquivo

@@ -192,6 +192,9 @@
<data name="City" xml:space="preserve">
<value>City</value>
</data>
<data name="Close" xml:space="preserve">
<value>Close</value>
</data>
<data name="Color" xml:space="preserve">
<value>Color</value>
</data>

Carregando…
Cancelar
Salvar