[pvr] refactor: define map type for epg container
[pvr] refactor: use map to improve recording lookup in recordings container
[pvr] refactor: use std::string for recording id to avoid implicit casts
[pvr] cosmetics: fix minor typos in comments
[pvr] add optional support for playing recordings from epg timeline or epg osd
[confluence] add "has recording" marker to programmes having associated recordings in epg timeline view, epg osd and programme search results
Removed generating new texture repeatedly during character cache.
Copy valid region only from old texture after ReallocTexture().
As a result, reduced stuttering video playback with subtitle.
Use TEXTURE_VOID instead of m_bTextureLoaded
tvshowmatching: match names without season (foo.E01)
tvshowmatching: allow digits after 'part'. e.g. foo.part.1
[webinterface.default] Sort audio tracks by track number
[pvr] adjust labels for setting pvrplayback.startlast

This change the current used labels 'Yes' and 'Minimised' to 'Foreground' and 'Background', so it's easier to understand what's happen if you choose one of these options.
[pvr] remove unnecessary filler method for setting 'pvrplayback.startlast'

This removes the filler method for setting 'pvrplayback.startlast' and add options directly to the settings.xml.
[pvr] refactor: change method parameter bPreview to bMinimised to be more reasonable
[pvr] refactor enum ChannelStartLast to reflect the setting
add tests for EnumerateEpisodeItem
[videodb] fix seasons update query for mysql, which doesn't like SELECT subqueries on the same table
[cleanup] followup to f86b9d2884
Merge pull request #4942 from t0xicCode/patch-1

[webinterface.default] Sort audio tracks by track number
[videodb] fix tvshow view for mysql by utilising a subview. Thanks to @sccplg