mirror of
https://github.com/tuxbox-fork-migrations/recycled-ni-neutrino.git
synced 2025-08-27 23:42:51 +02:00
nhttpd/controlapi: make CDATA attribute in xml output switchable to fix xmltv.data
Origin commit data
------------------
Branch: ni/coolstream
Commit: c747e37e9a
Author: vanhofen <vanhofen@gmx.de>
Date: 2018-04-04 (Wed, 04 Apr 2018)
Origin message was:
------------------
- nhttpd/controlapi: make CDATA attribute in xml output switchable to fix xmltv.data
------------------
No further description and justification available within origin commit message!
------------------
This commit was generated by Migit
This commit is contained in:
@@ -3234,6 +3234,7 @@ void CControlAPI::xmltvepgCGI(CyhookHandler *hh)
|
|||||||
hh->ParamList["format"] = "xml";
|
hh->ParamList["format"] = "xml";
|
||||||
hh->outStart();
|
hh->outStart();
|
||||||
|
|
||||||
|
bool xml_cdata = false;
|
||||||
t_channel_id channel_id;
|
t_channel_id channel_id;
|
||||||
std::string result = "";
|
std::string result = "";
|
||||||
std::string channelTag = "", channelData = "";
|
std::string channelTag = "", channelData = "";
|
||||||
@@ -3256,7 +3257,7 @@ void CControlAPI::xmltvepgCGI(CyhookHandler *hh)
|
|||||||
CZapitChannel * channel = chanlist[j];
|
CZapitChannel * channel = chanlist[j];
|
||||||
channel_id = channel->getChannelID() & 0xFFFFFFFFFFFFULL;
|
channel_id = channel->getChannelID() & 0xFFFFFFFFFFFFULL;
|
||||||
channelTag = "channel id=\""+string_printf(PRINTF_CHANNEL_ID_TYPE_NO_LEADING_ZEROS, channel_id)+"\"";
|
channelTag = "channel id=\""+string_printf(PRINTF_CHANNEL_ID_TYPE_NO_LEADING_ZEROS, channel_id)+"\"";
|
||||||
channelData = hh->outPair("display-name", hh->outValue(channel->getName()), true);
|
channelData = hh->outPair("display-name", hh->outValue(channel->getName(), xml_cdata), true);
|
||||||
result += hh->outObject(channelTag, channelData);
|
result += hh->outObject(channelTag, channelData);
|
||||||
|
|
||||||
eList.clear();
|
eList.clear();
|
||||||
@@ -3284,8 +3285,8 @@ void CControlAPI::xmltvepgCGI(CyhookHandler *hh)
|
|||||||
strftime(zbuffer, 21, "%Y%m%d%H%M%S +0200", mtime);
|
strftime(zbuffer, 21, "%Y%m%d%H%M%S +0200", mtime);
|
||||||
programmeTag += "stop=\""+std::string(zbuffer)+"\" ";
|
programmeTag += "stop=\""+std::string(zbuffer)+"\" ";
|
||||||
|
|
||||||
programmeData = hh->outPair("title lang=\"de\"", hh->outValue(eventIterator->description), false);
|
programmeData = hh->outPair("title lang=\"de\"", hh->outValue(eventIterator->description, xml_cdata), false);
|
||||||
programmeData += hh->outPair("desc lang=\"de\"", hh->outValue(eventIterator->text), true);
|
programmeData += hh->outPair("desc lang=\"de\"", hh->outValue(eventIterator->text, xml_cdata), true);
|
||||||
|
|
||||||
result += hh->outArrayItem(programmeTag, programmeData, false);
|
result += hh->outArrayItem(programmeTag, programmeData, false);
|
||||||
}
|
}
|
||||||
|
@@ -540,13 +540,18 @@ std::string CyhookHandler::outObject(std::string _key, std::string _content, boo
|
|||||||
}
|
}
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
std::string CyhookHandler::outValue(std::string _content) {
|
std::string CyhookHandler::outValue(std::string _content, bool _xml_cdata) {
|
||||||
std::string result = "";
|
std::string result = "";
|
||||||
switch (outType) {
|
switch (outType) {
|
||||||
case xml:
|
case xml:
|
||||||
result += "<![CDATA[";
|
if (_xml_cdata)
|
||||||
result += convert_UTF8_To_UTF8_XML(utf8_check_is_valid(_content) ? _content.c_str() : iso_8859_1_to_utf8(_content).c_str());
|
{
|
||||||
result += "]]>";
|
result = "<![CDATA[" + _content + "]]>";;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
result = convert_UTF8_To_UTF8_XML(utf8_check_is_valid(_content) ? _content.c_str() : iso_8859_1_to_utf8(_content).c_str());
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case json:
|
case json:
|
||||||
result = json_convert_string(_content);
|
result = json_convert_string(_content);
|
||||||
|
@@ -211,7 +211,7 @@ public:
|
|||||||
std::string outArray(std::string _key, std::string _content, bool _next = false);
|
std::string outArray(std::string _key, std::string _content, bool _next = false);
|
||||||
std::string outArrayItem(std::string _key, std::string _content, bool _next);
|
std::string outArrayItem(std::string _key, std::string _content, bool _next);
|
||||||
std::string outObject(std::string _key,std::string _content, bool _next = false);
|
std::string outObject(std::string _key,std::string _content, bool _next = false);
|
||||||
std::string outValue(std::string _content);
|
std::string outValue(std::string _content, bool _xml_cdata = true);
|
||||||
std::string outNext();
|
std::string outNext();
|
||||||
friend class CyParser;
|
friend class CyParser;
|
||||||
};
|
};
|
||||||
|
Reference in New Issue
Block a user