39 lines
1.8 KiB
C#
39 lines
1.8 KiB
C#
using System.Collections.Generic;
|
|
using gehGassi.Domain.Placeholders;
|
|
using gehGassi.Domain.Users;
|
|
|
|
namespace gehGassi.Core.Interfaces
|
|
{
|
|
/// <summary>
|
|
/// Schnittstellenbeschreibung für einen Service der Funktionen rund um die Variablen/Platzhalter bietet
|
|
/// </summary>
|
|
public interface IPlaceHolderService
|
|
{
|
|
/// <summary>
|
|
/// Gibt die Liste der verfügbaren Platzhalter-Kategorien zurück
|
|
/// </summary>
|
|
/// <param name="lang">Sprache ISO2</param>
|
|
/// <returns>Liste Kategorien</returns>
|
|
List<PlaceHolderCategory> GetCategories(string lang);
|
|
|
|
/// <summary>
|
|
/// Gibt die Liste der Platzhalter-Variablen für eine Kategorie zurück
|
|
/// </summary>
|
|
/// <param name="categoryId">Id der Kategorie</param>
|
|
/// <param name="lang">Sprache ISO2</param>
|
|
/// <returns>Liste Platzhalter</returns>
|
|
List<PlaceHolder> GetPlaceholders(int categoryId, string lang);
|
|
|
|
/// <summary>
|
|
/// Ersetzt in einem Text alle Platzhalter mit den entsprechenden Daten, sofern diese zur Verfügung gestellt wurden.
|
|
/// </summary>
|
|
/// <param name="content">Text in welchem die Platzhalter ausgefüllt werden sollen</param>
|
|
/// <param name="lang">Sprache ISO2</param>
|
|
/// <param name="timezoneId">Id der Timezone für Datums-Operationen</param>
|
|
/// <param name="useHtml">Soll bei manchen Ersatzoperationen HTML verwendet werden? Z.B. Adress-Block</param>
|
|
/// <param name="user">Optional: Benutzer</param>
|
|
/// <returns>Anzahl ersetzer Platzhalter. Der Text ist als ref Parameter bearbeitet</returns>
|
|
int FillIn(ref string content, string lang, string timezoneId, bool useHtml = false, ApplicationUser user = null);
|
|
}
|
|
}
|