private String GetOSMMarkerEntryText(List<DataRow> EntryRowsOnThisLocation, WordUp23.Basics.ShowDatenTyp DatenTyp) { if (EntryRowsOnThisLocation.Count == 0) return String.Empty; if (DatenTyp == WordUp23.Basics.ShowDatenTyp.Ideen) return GetPlakatOSMEntry (EntryRowsOnThisLocation); String NameOfContent = String.Empty; String IconName = String.Empty; int StartSize = 0; double ResizeFactor = 0; String Horizontal = String.Empty; String Vertical = String.Empty; switch (DatenTyp) { case WordUp23.Basics.ShowDatenTyp.Ideen: NameOfContent = "Ideen"; IconName = "IdeenOrt.png"; StartSize = 15; ResizeFactor = 2; Horizontal = "+"; Vertical = "-"; break; case WordUp23.Basics.ShowDatenTyp.Wuensche: NameOfContent = "Vorschläge"; IconName = "WunschOrt.png"; StartSize = 15; ResizeFactor = 2; Horizontal = "+"; Vertical = "-"; break; case WordUp23.Basics.ShowDatenTyp.Planung: NameOfContent = "Planung"; IconName = "PlanungOrt.png"; StartSize = 15; ResizeFactor = 2; Horizontal = "+"; Vertical = "+"; break; case WordUp23.Basics.ShowDatenTyp.Projekt: NameOfContent = "Projekt"; IconName = "ProjektOrt.png"; StartSize = 15; ResizeFactor = 2; Horizontal = "-"; Vertical = "-"; break; case WordUp23.Basics.ShowDatenTyp.Realisierungen: NameOfContent = "Realisierungen"; IconName = "RealisierungsOrt.png"; StartSize = 15; ResizeFactor = 2; Horizontal = "-"; Vertical = "+"; break; } List<String> EntryLines = new List<string>(); foreach (DataRow EntryRow in EntryRowsOnThisLocation) { String NameID = EntryRow["ProjektBeschreibung"].ToString(); EntryLines.Add("<a href=\"./SingleElementWhatToDo?WhatToDo=" + EntryRow ["ID"].ToString () + "\" target=\"_blank\" ><small>" + NameID + "</small></a>"); } EntryLines.Sort(); String Beschreibung = "insg. " + Convert.ToString(EntryRowsOnThisLocation.Count) + " " + NameOfContent + "</br><small>" + String.Join("</small></br><small>", EntryLines) + "</small>"; int NumSize = StartSize + (int)(EntryLines.Count * ResizeFactor); String Size = Convert.ToString(NumSize); int NumHalf = (int) (NumSize / 2); String Half = Convert.ToString(NumHalf); int NumQuarter = (int)(NumSize / 4); String Quarter = Convert.ToString (NumQuarter); return GetLatLonString (EntryRowsOnThisLocation [0]) + Enum.GetName (typeof (WordUp23.Basics.ShowDatenTyp), DatenTyp) + "-" + EntryRowsOnThisLocation[0]["OrtsNameID"].ToString() + "\t" + Beschreibung + "\t" + Size + "," + Size + "\t" + Horizontal + Quarter + "," + Vertical + Quarter + "\t" + WordUp23.Basics.Instance.HTTP_LOCATION_FOR_TECHNIC_PICTURES + "/" + IconName; }
public String CreateOSMPhasenOrientedLocations (WordUp23.Basics.ShowDatenTyp Phase) { List<String> PhasenLokations = new List<string>(); String OldOrteID = String.Empty; // int MaxCounter = 3; DataRow ActuallProjekteRow = null; List<DataRow> PhasenEntries = new List<DataRow>(); DataTable RowsToPresent = null; switch (Phase) { case WordUp23.Basics.ShowDatenTyp.Ideen: RowsToPresent = GetAllActuallIdeen (); break; case WordUp23.Basics.ShowDatenTyp.Wuensche: RowsToPresent = GetAllActuallWuensche (); break; case WordUp23.Basics.ShowDatenTyp.Planung: RowsToPresent = GetAllActuallPlanungen(); break; case WordUp23.Basics.ShowDatenTyp.Projekt: RowsToPresent = GetAllActuallProjekte(); break; case WordUp23.Basics.ShowDatenTyp.Realisierungen: RowsToPresent = GetAllActuallRealisierungen(); break; } foreach (DataRow PhasenRow in RowsToPresent.Rows) { if ((PhasenRow["WLaenge"] == Convert.DBNull) || (PhasenRow["WBreite"] == Convert.DBNull)) continue; if (OldOrteID != PhasenRow["OrteID"].ToString()) { if (!String.IsNullOrEmpty(OldOrteID)) { PhasenLokations.Add(GetOSMMarkerEntryText(PhasenEntries, Phase)); } OldOrteID = PhasenRow["OrteID"].ToString(); PhasenEntries.Clear(); } PhasenEntries.Add(PhasenRow); //if (MaxCounter-- < 0) // break; } PhasenLokations.Add(GetOSMMarkerEntryText(PhasenEntries, Phase)); return GetLocationMarkerFileAsString(PhasenLokations); }