Skip to content

Commit 0b3d9de

Browse files
committed
Try to fix timers for IPTV services with "&" in sref
1 parent 8ea90df commit 0b3d9de

File tree

14 files changed

+21
-18
lines changed

14 files changed

+21
-18
lines changed

plugin/controllers/models/epg.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -158,7 +158,7 @@ def search(self, querystring, searchfulldescription=False):
158158
criteria = (SEARCH_FIELDS, MAX_RESULTS, querytype, querystring, CASE_INSENSITIVE_QUERY)
159159
return self._instance.search(criteria)
160160

161-
def getChannelEvents(self, sref, starttime, endtime, encode, picon, nownext):
161+
def getChannelEvents(self, sref, fullsref, starttime, endtime, encode, picon, nownext):
162162
if not sref:
163163
error("A required parameter 'sRef' is missing!", "EPG")
164164
return []
@@ -167,7 +167,7 @@ def getChannelEvents(self, sref, starttime, endtime, encode, picon, nownext):
167167

168168
self.doencode = encode
169169
self.currentpicon = picon
170-
self.currentsref = sref
170+
self.currentsref = fullsref
171171
if nownext:
172172
criteria = [SINGLE_CHANNEL_FIELDS_NN]
173173
criteria.append((sref, NOW_EVENT, -1))

plugin/controllers/models/services.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ def getCurrentService(session):
103103
"tsid": getServiceInfoString(info, iServiceInformation.sTSID),
104104
"onid": getServiceInfoString(info, iServiceInformation.sONID),
105105
"sid": getServiceInfoString(info, iServiceInformation.sSID),
106-
"ref": quote(ref, safe=' ~@#$&()*!+=:;,.?/\''),
106+
"ref": quote(ref, safe=' ~@#$()*!+=:;,.?/\''),
107107
"iswidescreen": info.getInfo(iServiceInformation.sAspect) in (3, 4, 7, 8, 0xB, 0xC, 0xF, 0x10),
108108
"bqref": quote(bqref, safe=' ~@#$&()*!+=:;,.?/\''),
109109
"bqname": bqname,
@@ -428,7 +428,7 @@ def _getPicon(sref):
428428
for channel in channels:
429429
index = index + 2 # each channel has a `now` and a `next` event entry
430430
chan = {
431-
'ref': quote(channel[0], safe=' ~@%#$&()*!+=:;,.?/\'')
431+
'ref': quote(channel[0], safe=' ~@%#$()*!+=:;,.?/\'')
432432
}
433433

434434
if chan['ref'].split(":")[1] == '320': # Hide hidden number markers
@@ -811,7 +811,7 @@ def getChannelEpg(ref, begintime=-1, endtime=-1, encode=True, nownext=False):
811811

812812
picon = getPicon(_ref)
813813
epg = EPG()
814-
events = epg.getChannelEvents(_ref, begintime, endtime, encode, picon, nownext)
814+
events = epg.getChannelEvents(_ref, ref, begintime, endtime, encode, picon, nownext)
815815
if events:
816816
return {"events": events, "result": True}
817817
# TODO do we need this?

plugin/controllers/views/ajax/epgdialog.tmpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ table { font-size:12px; font-family: Verdana,Arial,sans-serif;}
2828
#for $event in $events
2929
#set $channel = $event.sname.replace("'", r"\'")
3030
#set $title = $event.title.replace("'", r"\'")
31-
#set $sref=quote($event.sref, safe=' ~@#$&()*!+=:;,.?/\'')
31+
#set $sref=quote($event.sref, safe=' ~@#$()*!+=:;,.?/\'')
3232

3333
<tbody data-id='$sref;$event.begin_timestamp;$event.duration'>
3434
<tr class="eft">

plugin/controllers/views/ajax/epgpop.tmpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ table { font-size:12px; font-family: Verdana,Arial,sans-serif;}
6767
#for $event in $events
6868
#set $channel = $event.sname.replace("'", r"\'")
6969
#set $title = $event.title.replace("'", r"\'")
70-
#set $sref=quote($event.sref, safe=' ~@#$&()*!+=:;,.?/\'')
70+
#set $sref=quote($event.sref, safe=' ~@#$()*!+=:;,.?/\'')
7171

7272
<tbody data-id='$sref;$event.begin_timestamp;$event.duration'>
7373
<tr class="eft">

plugin/controllers/views/ajax/event.tmpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
#set $etime = time.localtime($event.begin)
44
#set $channel = $event.channel.replace("'", r"\'")
55
#set $title = $event.title.replace("'", r"\'")
6-
#set $sref=quote($event.sref, safe=' ~@#$&()*!+=:;,.?/\'')
6+
#set $sref=quote($event.sref, safe=' ~@#$()*!+=:;,.?/\'')
77
#from Plugins.Extensions.OpenWebif.controllers.i18n import tstrings
88

99
<style>

plugin/controllers/views/ajax/multiepg.tmpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,7 @@
195195
#for $event in $eventlist[0]
196196
#set pad = 0
197197
#if $c == 0
198-
#set $ref = quote(event['ref'], safe=' ~@#$&()*!+=:;,.?/\'')
198+
#set $ref = quote(event['ref'], safe=' ~@#$()*!+=:;,.?/\'')
199199
#set pad = 141 + ($event.begin_timestamp - $first) / 6
200200
<li class="event" style=;width:${pad}px;">
201201
</li>

plugin/controllers/views/ajax/renderevtblock.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
from time import localtime, strftime
22
from urllib.parse import quote
3-
#from Plugins.Extensions.OpenWebif.controllers.i18n import tstrings
3+
# from Plugins.Extensions.OpenWebif.controllers.i18n import tstrings
44

55

66
class renderEvtBlock:
@@ -22,7 +22,7 @@ def render(self, event):
2222
timerEventSymbol = ''
2323
timerbar = ''
2424

25-
ref = quote(event['ref'], safe=' ~@#$&()*!+=:;,.?/\'')
25+
ref = quote(event['ref'], safe=' ~@#$()*!+=:;,.?/\'')
2626
hourmin = strftime("%H:%M", localtime(event['begin_timestamp']))
2727

2828
return f"""

plugin/controllers/views/ajax/timers.tmpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@
3838
<div class="tm_row ui-widget-content ui-state-default" id="$timer.begin-$timer.end">
3939
<div class="t_buttons tm_buttons">
4040
<div>
41-
#set $sref=quote($timer.serviceref, safe=' ~@#$&()*!+=:;,.?/\'')
41+
#set $sref=quote($timer.serviceref, safe=' ~@#$()*!+=:;,.?/\'')
4242
#set $tname=quote($timer.name)
4343
<a href='#' onclick="editTimer('$sref', '$timer.begin', '$timer.end');" title="$tstrings['edit_timer']"><div><i class="fa fa-edit"></i></div></a>
4444
<a href='#' onclick="deleteTimer('$sref', '$timer.begin', '$timer.end', '$tname');" title="$tstrings['delete_timer']"><div><i class="fa fa-trash-o"></i></div></a>

plugin/controllers/views/responsive/ajax/epgdialog.tmpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929

3030
#set $channel = $event.sname.replace("'", r"\'")
3131
#set $title = $event.title.replace("'", r"\'")
32-
#set $sref=quote($event.sref, safe=' ~@#$&()*!+=:;,.?/\'')
32+
#set $sref=quote($event.sref, safe=' ~@#$()*!+=:;,.?/\'')
3333

3434
#if $isSettingEnabled('minepglist') == 'checked'
3535

plugin/controllers/views/responsive/ajax/event.tmpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
#set $channel = $event.channel
88
#set $channelQuoteEscaped = $channel.replace("&#x27;", "\\'")
99
#set $title = $event.title.replace("'", "\\'")
10-
#set $sref = quote($event.sref, safe=' ~@#$&()*!+=:;,.?/\'')
10+
#set $sref = quote($event.sref, safe=' ~@#$()*!+=:;,.?/\'')
1111
#set $sRefQuoteEscaped = $sref.replace("'", "\\'")
1212
#set $endTime = $int($event.begin + $event.duration)
1313
#set $metadata = $dumps({ 'sref': quote($event.sref), 'id': $event.id, 'begin': $event.begin, 'end': $int($event.begin + $event.duration) }, indent=None, separators=(",", ":"))

0 commit comments

Comments
 (0)