1/*global console, GamesManager: true */ 2var iwin = iwin || {}; 3 4(function($) { 5 "use strict"; 6 $.extend(true, iwin, { 7 modals: { 8 ignoredMsg: 0, 9 unableToRemoveMsg: 1, 10 errorMsg: 2, 11 failedToUninstallExeMsg: 3, 12 downloadErrorMsg: 4, 13 unableToPlayMsg: 5, 14 invalidDirectoryMsg: 6, 15 unableToLaunchMsg: 7, 16 gameInstallationInProgressMsg: 8, 17 gameDownloadInProgressMsg: 9, 18 areYouSureDeleteMsg: 11, 19 cacheClearPendingMsg: 12, 20 failedToUninstallMsg: 13, 21 //missingGameMsg: 14, 22 gameInstallFailedMsg: 15, 23 brokenGameMsg: 16, 24 sqlDatabaseError: 17, 25 unableToLaunchConnectivityIssueMsg: 18, 26 learnMoreAboutFreeTrialDownloads: 19, 27 gasGamesRequireOnlineMsg: 20, 28 downloadCannotBeCancelled: 22, 29 otherGameAlreadyPlayingMsg: 23, 30 unableToLaunchDueToPausedSubscriptionMsg: 24, 31 unableToLaunchDueToLicenseServerErrorMsg: 25, 32 unableToLaunchDueToNoLicenseMsg: 26, 33 unableToLaunchDueToNotSignedInErrorMsg: 27, 34 35 showMessageModalMsg: function(msgType, title, message, gamecode, occassionalMessage){ 36 $('#message-modal #fgm-game-image').empty(); 37 iwin.modals.configureMessageModalHeaderAndFooter(true,true); 38 39 $('#message-modal .modal-footer').empty(); 40 if(msgType === iwin.modals.errorMsg){ 41 iwin.modals.configureGameImage( null ); 42 iwin.modals.configureMessageModalContent(title, message, "", false); 43 iwin.uiUtils.addBtnToPage('#message-modal .modal-footer', 'iwin-green', 'ok-btn', 'OK'); 44 // iwin.ga.sendVirtualPageView('/modal/error','Error Modal'); 45 } 46 else if (msgType === iwin.modals.gasGamesRequireOnlineMsg ) { 47 iwin.modals.configureGameImage( gamecode ); 48 iwin.modals.configureMessageModalContent(title, message, "", false); 49 iwin.uiUtils.addBtnToPage('#message-modal .modal-footer', 'iwin-green', 'try-playing-game-again-btn', 'Try Again'); 50 iwin.uiUtils.addBtnToPage('#message-modal .modal-footer', 'iwin-blue', 'ok-btn', 'OK'); 51 iwin.uiUtils.addGameCodeToRelevantButton('#try-playing-game-again-btn',gamecode); 52 // iwin.ga.sendVirtualPageView('/modal/gas-game-needs-online',"Gas Needs Online Modal"); 53 } 54 else if (msgType === iwin.modals.downloadErrorMsg ) { 55 iwin.modals.configureGameImage( gamecode ); 56 iwin.modals.configureMessageModalContent(title, message, "", false); 57 iwin.uiUtils.addBtnToPage('#message-modal .modal-footer', 'iwin-green', 'try-playing-game-again-btn', 'Try Again'); 58 iwin.uiUtils.addBtnToPage('#message-modal .modal-footer', 'iwin-blue', 'ok-btn', 'OK'); 59 iwin.uiUtils.addGameCodeToRelevantButton('#try-playing-game-again-btn',gamecode); 60 // iwin.ga.sendVirtualPageView('/modal/download-error',"Download Error Modal"); 61 } 62 else if (msgType === iwin.modals.downloadCannotBeCancelled ) { 63 iwin.modals.configureGameImage( gamecode ); 64 iwin.modals.configureMessageModalContent(title, message, "", false); 65 iwin.uiUtils.addBtnToPage('#message-modal .modal-footer', 'iwin-green', 'ok-btn', 'OK'); 66 // iwin.ga.sendVirtualPageView('/modal/download-cannot-be-cancelled-error',"Download Cancel Error Modal"); 67 } 68 else if (msgType === iwin.modals.gameInstallFailedMsg ) { 69 iwin.modals.configureGameImage( gamecode ); 70 iwin.modals.configureMessageModalContent(title, message, "", false); 71 iwin.uiUtils.addBtnToPage('#message-modal .modal-footer', 'iwin-green', 'try-playing-game-again-btn', 'Try Again'); 72 iwin.uiUtils.addBtnToPage('#message-modal .modal-footer', 'iwin-blue', 'ok-btn', 'OK'); 73 iwin.uiUtils.addGameCodeToRelevantButton('#try-playing-game-again-btn',gamecode); 74 // iwin.ga.sendVirtualPageView('/modal/game_install_failed',"Install Failed Modal"); 75 //} else if (msgType === iwin.modals.missingGameMsg) { 76 // iwin.modals.configureGameImage( gamecode ); 77 // iwin.modals.configureMessageModalContent(title, message, "", false); 78 // iwin.uiUtils.addBtnToPage('#message-modal .modal-footer', 'iwin-green', 'delete-game-btn', 'Remove Game'); 79 // iwin.uiUtils.addGameCodeToRelevantButton('#delete-game-btn',gamecode); 80 // iwin.ga.sendVirtualPageView('/modal/missing_game',"Missing Game"); 81 } else if (msgType === iwin.modals.brokenGameMsg) { 82 iwin.modals.configureGameImage( gamecode ); 83 iwin.modals.configureMessageModalContent(title, message, "", false); 84 iwin.uiUtils.addBtnToPage('#message-modal .modal-footer', 'iwin-green', 'try-playing-game-again-btn', 'Try Again'); 85 iwin.uiUtils.addBtnToPage('#message-modal .modal-footer', 'iwin-green', 'delete-game-btn', 'Remove Game'); 86 iwin.uiUtils.addGameCodeToRelevantButton('#try-playing-game-again-btn',gamecode); 87 iwin.uiUtils.addGameCodeToRelevantButton('#delete-game-btn',gamecode); 88 // iwin.ga.sendVirtualPageView('/modal/broken_game',"Broken Game"); 89 } else if (msgType === iwin.modals.otherGameAlreadyPlayingMsg) { 90 iwin.modals.configureMessageModalContent(title, message, "", false); 91 iwin.uiUtils.addBtnToPage('#message-modal .modal-footer', 'iwin-blue', 'ok-btn', 'OK'); 92 // iwin.ga.sendVirtualPageView('/modal/other_game_already_playing',"Other Game Already Playing"); 93 } else if (msgType === iwin.modals.unableToLaunchDueToLicenseServerErrorMsg) { 94 iwin.modals.configureGameImage( null ); 95 iwin.modals.configureMessageModalContent(title, message, "", false); 96 iwin.uiUtils.addBtnToPage('#message-modal .modal-footer', 'iwin-green', 'ok-btn', 'OK'); 97 } else if (msgType === iwin.modals.unableToLaunchDueToNoLicenseMsg) { 98 iwin.modals.configureGameImage( null ); 99 iwin.modals.configureMessageModalContent(title, message, "", false); 100 iwin.uiUtils.addBtnToPage('#message-modal .modal-footer', 'iwin-green', 'ok-btn', 'OK'); 101 } else if (msgType === iwin.modals.unableToLaunchDueToNotSignedInErrorMsg) { 102 iwin.modals.configureGameImage( null ); 103 iwin.modals.configureMessageModalContent(title, message, "", false); 104 iwin.uiUtils.addBtnToPage('#message-modal .modal-footer', 'iwin-green', 'ok-btn', 'OK'); 105 } 106 }, 107 108 showMessageModal: function(modalstyle, msgType, title, message, gamecode, occassionalMessage) { 109 iwin.modals.hideAllOverlays().done( function() { 110 iwin.modals.showMessageModalMsg(msgType, title, message, gamecode, occassionalMessage); 111 $('#message-modal').modal('show'); 112 }); 113 }, 114 115 configureMessageModalHeaderAndFooter: function (header, footer){ 116 if(header){ 117 $('#message-modal .modal-header').show(); 118 } else { 119 $('#message-modal .modal-header').hide(); 120 } 121 if(footer){ 122 $('#message-modal .modal-footer').show(); 123 } else { 124 $('#message-modal .modal-footer').hide(); 125 } 126 127 }, 128 129 configureMessageModalContent: function (title, message, lwr_message, loading) { 130 $('#mdl-msg-title').html(title); 131 $('#mdl-msg-message').html(message); 132 if (lwr_message !== "") { 133 $('#lwr-msg-message').html(lwr_message); 134 $('#lwr-msg-message').show(); 135 } else { 136 $('#lwr-msg-message').hide(); 137 } 138 iwin.modals.configureLoadingSpinner( loading ); 139 }, 140 141 configureGameImage: function( gameCode ) { 142 if(gameCode !== null){ 143 iwin.modals.internal.addGameImageContent( gameC
143ode ); 144 } 145 }, 146 147 configureLoadingSpinner: function( loading ) { 148 if(loading){ 149 $('#message-modal #loading').show(); 150 } else { 151 $('#message-modal #loading').hide(); 152 } 153 }, 154 155 // iwin.modals.hideAllOverlays() 156 hideAllOverlays: function () { 157 var deferred = $.Deferred(); 158 159 if ($('body').hasClass('modal-open')) { 160 $('.modal').on('hidden.bs.modal', function () { 161 $('body').removeClass('modal-open'); 162 $('#wait-overlay').hide(); 163 deferred.resolve(); 164 }); 165 $('.modal').modal('hide'); 166 $('.modal-backdrop').remove(); 167 } else { 168 $('#wait-overlay').hide(); 169 deferred.resolve(); 170 } 171 return deferred; 172 }, 173 174 //Note could be optimized by storing the gameid on the play request inside the fgm and retrieving later using /<channel code>/game_data/<game code> 175 addGameImageContent: function( gameCode ){ 176 $.ajax({ 177 url: ajax_object.ajax_url, 178 type: "POST", 179 dataType: "json", 180 data: { 181 action: 'get_sku_id_by_game_code', 182 game_code: gameCode 183 }, 184 success: function (data) { 185 console.log(data); 186 var gameImageUrl = "//static.iplaycdn.com/images/product/" + data.original_product_id + "/small_square_tile_image.jpg"; 187 $('#message-modal #fgm-game-image').html( "<img class=\"affected-game\" src=\"" + gameImageUrl+ "\">" ); 188 $('#message-modal #fgm-game-image').show(); 189 }, 190 error: function (msg) { 191 $('#message-modal #fgm-game-image').hide(); 192 } 193 }); 194 } 195 196 } 197 }); 198})(jQuery);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.