FireBirdLib - Topfield TMS PVR TAP Programming Library
LogoManager_ChannelNameToLogoName.c
Go to the documentation of this file.
1#include <string.h>
2#include <stdlib.h>
3#include "libFireBird.h"
4#include "FBLib_LogoManager.h"
5
6char *LogoManager_ChannelNameToLogoName(char *ChannelName, char *LogoName, int LogoNameSize)
7{
9
10 char *pLogoName;
11 char AllowedChars[] = "abcdefghijklmnoprqstuvwxyz0123456789äöü+";
12
13 if(LogoName && LogoNameSize)
14 {
15 memset(LogoName, 0, LogoNameSize);
16 strncpy(LogoName, SkipCharTableBytes(ChannelName), LogoNameSize - 1);
17 StrMkISO(LogoName);
19 LowerCase(LogoName);
20
21 pLogoName = LogoName;
22 while(*pLogoName)
23 {
24 if(index(AllowedChars, *pLogoName) == NULL)
25 DeleteAt(pLogoName, 0, 1);
26 else
27 pLogoName++;
28 }
29 StrReplace(LogoName, "ä", "ae");
30 StrReplace(LogoName, "ö", "oe");
31 StrReplace(LogoName, "ü", "ue");
32 }
33
34 TRACEEXIT();
35 return LogoName;
36}
char * LogoManager_ChannelNameToLogoName(char *ChannelName, char *LogoName, int LogoNameSize)
@ LFChars
Definition: libFireBird.h:2505
@ ControlChars
Definition: libFireBird.h:2504
bool StrReplace(char *String, const char *Find, const char *Replace)
Definition: StrReplace.c:4
#define TRACEEXIT()
Definition: libFireBird.h:1244
void MakeValidFileName(char *strName, eRemoveChars ControlCharacters)
#define TRACEENTER()
Definition: libFireBird.h:1243
bool StrMkISO(byte *SourceString)
Definition: StrMkISO.c:5
byte * SkipCharTableBytes(const byte *p)
void LowerCase(char *string)
Definition: LowerCase.c:5
void DeleteAt(char *SourceString, int Pos, int Len)
Definition: DeleteAt.c:4