mirror of
https://github.com/tuxbox-fork-migrations/recycled-ni-neutrino.git
synced 2025-08-28 16:01:10 +02:00
controlapi: fix broken epgsearch json output; ...
NOTE! xml output is changed to get same structure as in other
functions like control/config or control/file
old:
---
<neutrino>
<epgsearch>
...
</epgsearch>
</neutrino>
new:
---
<epgsearch>
<item>
...
</item>
</epgsearch>
Origin commit data
------------------
Branch: ni/coolstream
Commit: be83e3569e
Author: vanhofen <vanhofen@gmx.de>
Date: 2016-02-17 (Wed, 17 Feb 2016)
Origin message was:
------------------
- controlapi: fix broken epgsearch json output; ...
NOTE! xml output is changed to get same structure as in other
functions like control/config or control/file
old:
---
<neutrino>
<epgsearch>
...
</epgsearch>
</neutrino>
new:
---
<epgsearch>
<item>
...
</item>
</epgsearch>
------------------
This commit was generated by Migit
This commit is contained in:
@@ -1443,8 +1443,8 @@ void CControlAPI::SendFoundEvents(CyhookHandler *hh, bool xml_format)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
std::string result;
|
std::string result ="";
|
||||||
std::string epgsearch = "";
|
std::string item = "";
|
||||||
t_channel_id channel_id;
|
t_channel_id channel_id;
|
||||||
CChannelEventList evtlist;
|
CChannelEventList evtlist;
|
||||||
|
|
||||||
@@ -1512,24 +1512,25 @@ void CControlAPI::SendFoundEvents(CyhookHandler *hh, bool xml_format)
|
|||||||
unsigned int u_azeit = ( azeit > -1)? azeit:0;
|
unsigned int u_azeit = ( azeit > -1)? azeit:0;
|
||||||
for (eventIterator = evtlist.begin(); eventIterator != evtlist.end(); ++eventIterator)
|
for (eventIterator = evtlist.begin(); eventIterator != evtlist.end(); ++eventIterator)
|
||||||
{
|
{
|
||||||
|
bool got_next = (eventIterator != (evtlist.end() - 1));
|
||||||
if (CEitManager::getInstance()->getEPGidShort(eventIterator->eventID, &epg))
|
if (CEitManager::getInstance()->getEPGidShort(eventIterator->eventID, &epg))
|
||||||
{
|
{
|
||||||
if( (eventIterator->startTime+eventIterator->duration) < u_azeit)
|
if( (eventIterator->startTime+eventIterator->duration) < u_azeit)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
struct tm *tmStartZeit = localtime(&eventIterator->startTime);
|
struct tm *tmStartZeit = localtime(&eventIterator->startTime);
|
||||||
result.clear();
|
item.clear();
|
||||||
if (hh->outType == json || hh->outType == xml)
|
if (hh->outType == json || hh->outType == xml)
|
||||||
{
|
{
|
||||||
result += hh->outPair("channelname", NeutrinoAPI->GetServiceName(eventIterator->channelID), true);
|
item += hh->outPair("channelname", NeutrinoAPI->GetServiceName(eventIterator->channelID), true);
|
||||||
result += hh->outPair("epgtitle", epg.title, true);
|
item += hh->outPair("epgtitle", epg.title, true);
|
||||||
if (search_epginfo) {
|
if (search_epginfo) {
|
||||||
result += hh->outPair("info1", hh->outValue(epg.info1), true);
|
item += hh->outPair("info1", hh->outValue(epg.info1), true);
|
||||||
result += hh->outPair("info2", hh->outValue(epg.info2), true);
|
item += hh->outPair("info2", hh->outValue(epg.info2), true);
|
||||||
}
|
}
|
||||||
if (CEitManager::getInstance()->getEPGid(eventIterator->eventID, eventIterator->startTime, &longepg))
|
if (CEitManager::getInstance()->getEPGid(eventIterator->eventID, eventIterator->startTime, &longepg))
|
||||||
{
|
{
|
||||||
result += hh->outPair("fsk", string_printf("%c", longepg.fsk), true);
|
item += hh->outPair("fsk", string_printf("%c", longepg.fsk), true);
|
||||||
genre = "";
|
genre = "";
|
||||||
#ifdef FULL_CONTENT_CLASSIFICATION
|
#ifdef FULL_CONTENT_CLASSIFICATION
|
||||||
if (!longepg.contentClassification.empty())
|
if (!longepg.contentClassification.empty())
|
||||||
@@ -1538,17 +1539,17 @@ void CControlAPI::SendFoundEvents(CyhookHandler *hh, bool xml_format)
|
|||||||
if (longepg.contentClassification)
|
if (longepg.contentClassification)
|
||||||
genre = GetGenre(longepg.contentClassification);
|
genre = GetGenre(longepg.contentClassification);
|
||||||
#endif
|
#endif
|
||||||
result += hh->outPair("genre", ZapitTools::UTF8_to_UTF8XML(genre.c_str()), true);
|
item += hh->outPair("genre", ZapitTools::UTF8_to_UTF8XML(genre.c_str()), true);
|
||||||
}
|
}
|
||||||
strftime(tmpstr, sizeof(tmpstr), "%Y-%m-%d", tmStartZeit );
|
strftime(tmpstr, sizeof(tmpstr), "%Y-%m-%d", tmStartZeit );
|
||||||
result += hh->outPair("date", tmpstr, true);
|
item += hh->outPair("date", tmpstr, true);
|
||||||
strftime(tmpstr, sizeof(tmpstr), "%H:%M", tmStartZeit );
|
strftime(tmpstr, sizeof(tmpstr), "%H:%M", tmStartZeit );
|
||||||
result += hh->outPair("time", tmpstr, true);
|
item += hh->outPair("time", tmpstr, true);
|
||||||
result += hh->outPair("duration", string_printf("%d", eventIterator->duration / 60), true);
|
item += hh->outPair("duration", string_printf("%d", eventIterator->duration / 60), true);
|
||||||
result += hh->outPair("channel_id", string_printf(PRINTF_CHANNEL_ID_TYPE_NO_LEADING_ZEROS, eventIterator->channelID), true);
|
item += hh->outPair("channel_id", string_printf(PRINTF_CHANNEL_ID_TYPE_NO_LEADING_ZEROS, eventIterator->channelID), true);
|
||||||
result += hh->outPair("eventid", string_printf("%ld", eventIterator->eventID), false);
|
item += hh->outPair("eventid", string_printf("%ld", eventIterator->eventID), false);
|
||||||
|
|
||||||
epgsearch += hh->outCollection("epgsearch", result);
|
result += hh->outArrayItem("item", item, got_next);
|
||||||
}
|
}
|
||||||
else // outType == plain
|
else // outType == plain
|
||||||
{
|
{
|
||||||
@@ -1591,12 +1592,12 @@ void CControlAPI::SendFoundEvents(CyhookHandler *hh, bool xml_format)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
result = hh->outArray("epgsearch", result);
|
||||||
if (outType == json) {
|
if (outType == json) {
|
||||||
hh->WriteLn(json_out_success(epgsearch));
|
hh->WriteLn(json_out_success(result));
|
||||||
}
|
}
|
||||||
else if (outType == xml) {
|
else if (outType == xml) {
|
||||||
epgsearch = hh->outCollection("neutrino", epgsearch); // to stay backward compatible :/
|
hh->WriteLn(result);
|
||||||
hh->WriteLn(epgsearch);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user