@@ -9,6 +9,15 @@ angular.module('KMCModule').controller('PlayerListCtrl',
99 requestNotificationChannel . requestStarted ( 'list' ) ;
1010 $rootScope . lang = 'en-US' ;
1111
12+ var getHTML5Version = function ( path ) {
13+ var version = "" ;
14+ if ( path . indexOf ( "{latest}" ) !== - 1 ) {
15+ version = "latest" ;
16+ } else {
17+ version = path . substring ( path . lastIndexOf ( '/v' ) + 2 , path . indexOf ( '/mwEmbedLoader.php' ) ) ;
18+ }
19+ return version ;
20+ }
1221 // init search
1322 $scope . search = '' ;
1423 $scope . searchSelect2Options = { } ;
@@ -122,19 +131,19 @@ angular.module('KMCModule').controller('PlayerListCtrl',
122131 } ;
123132 // check if this player is a v2 player that can be upgraded to a new version
124133 $scope . checkV2Upgrade = function ( item ) {
125- var html5libVersion = item . html5Url . substring ( item . html5Url . indexOf ( '/v' ) + 2 , item . html5Url . indexOf ( '/mwEmbedLoader.php' ) ) ; // get html5 lib version from its URL
126- return ! $scope . checkVersionNeedsUpgrade ( item ) && window . MWEMBED_VERSION !== html5libVersion ;
134+ var html5libVersion = getHTML5Version ( item . html5Url ) ; // get html5 lib version from its URL
135+ return ! $scope . checkVersionNeedsUpgrade ( item ) && window . MWEMBED_VERSION !== html5libVersion && html5libVersion !== "latest" ;
127136 } ;
128137
129138 // check if this player should be upgraded (binded to the player's HTML outdated message)
130139 $scope . checkVersionNeedsUpgrade = function ( item ) {
131- var html5libVersion = item . html5Url . substr ( item . html5Url . indexOf ( '/v' ) + 2 , 1 ) ; // get html5 lib version number from its URL
140+ var html5libVersion = getHTML5Version ( item . html5Url ) [ 0 ] ; // get html5 lib version number from its URL
132141 return ( ( html5libVersion == "1" ) ) ; // need to upgrade if the version is lower than 2 or the player doesn't have a config object
133142 } ;
134143
135144 // check if this player is an old playlist
136145 $scope . checkOldPlaylistPlayer = function ( item ) {
137- var html5libVersion = item . html5Url . substr ( item . html5Url . indexOf ( '/v' ) + 2 , 1 ) ; // get html5 lib version number from its URL
146+ var html5libVersion = getHTML5Version ( item . html5Url ) [ 0 ] ; // get html5 lib version number from its URL
138147 return ( ( html5libVersion == "1" ) && item . tags . indexOf ( "playlist" ) !== - 1 ) ; // this player is an old playlist that is not supported in Universal studio
139148 } ;
140149
@@ -278,15 +287,15 @@ angular.module('KMCModule').controller('PlayerListCtrl',
278287 // upgrade a V2 player to the latest version
279288 $scope . upgrade = function ( player ) {
280289 var upgradeProccess = $q . defer ( ) ;
281- var html5libVersion = player . html5Url . substring ( player . html5Url . indexOf ( '/v' ) + 2 , player . html5Url . indexOf ( '/mwEmbedLoader.php' ) ) ;
290+ var html5libVersion = getHTML5Version ( player . html5Url ) ;
282291 var currentVersion = window . MWEMBED_VERSION ;
283292 var msg = 'This will update the player "' + player . name + '" (ID: ' + player . id + ').' ;
284293 msg += '<br>Current player version: ' + html5libVersion ;
285294 msg += '<br>Update to version: ' + currentVersion + '<a href="https://github.com/kaltura/mwEmbed/releases/tag/v' + currentVersion + '" target="_blank"> (release notes)</a>' ;
286295 var modal = utilsSvc . confirm ( 'Updating confirmation' , msg , 'Update' ) ;
287296 modal . result . then ( function ( result ) {
288297 if ( result ) {
289- var html5lib = player . html5Url . substr ( 0 , player . html5Url . indexOf ( '/v' ) + 2 ) + window . MWEMBED_VERSION + "/mwEmbedLoader.php" ;
298+ var html5lib = player . html5Url . substr ( 0 , player . html5Url . lastIndexOf ( '/v' ) + 2 ) + window . MWEMBED_VERSION + "/mwEmbedLoader.php" ;
290299 PlayerService . playerUpgrade ( player , html5lib ) . then ( function ( data ) {
291300 // update local data (we will not retrieve from the server again)
292301 player . html5Url = html5lib ;
@@ -316,7 +325,7 @@ angular.module('KMCModule').controller('PlayerListCtrl',
316325 if ( isPlaylist ) {
317326 text += "<br><span><b>Note:</b> Playlist configuration will not be updated.<br>Please re-configure your playlist plugin after this upgrade.</span>" ;
318327 }
319- var html5lib = player . html5Url . substr ( 0 , player . html5Url . indexOf ( '/v' ) + 2 ) + window . MWEMBED_VERSION + "/mwEmbedLoader.php" ;
328+ var html5lib = player . html5Url . substr ( 0 , player . html5Url . lastIndexOf ( '/v' ) + 2 ) + window . MWEMBED_VERSION + "/mwEmbedLoader.php" ;
320329 var modal = utilsSvc . confirm ( 'Upgrade confirmation' , text , 'Upgrade' ) ;
321330 modal . result . then ( function ( result ) {
322331 if ( result )
0 commit comments