var excludeMobileRedirect = ["/fifaworldcup/organisation/ticketing/", "/worldcup/organisation/ticketing/"];define(['frameworks/bundle'],function () {(function(w){w.fifa.vocManager.addVocabulary({"__name__":{text:"fifa.jsbasic",abbr:"fifa.jsbasic"},"hours":{text:"Hours", abbr:"H"},"minutes":{text:"Minutes", abbr:"Min"},"days":{text:"Days", abbr:"D"},"allTimeStatistics":{text:"All Time Statistics", abbr:""},"fifa.winningReason_2":{text:"{WinTeamName} win after extra time", abbr:"{WinTeamName} win AET"},"fifa.more":{text:"More ", abbr:""},"fifa.matches":{text:"Matches", abbr:"MT"},"fifa.teams":{text:"Teams", abbr:"TM"},"fifa.appearances":{text:"Appearances", abbr:"Apps."},"fifa.titles":{text:"Titles", abbr:""},"fifa.ranking.position":{text:"FIFA Ranking position", abbr:""},"fifa.winningReason_0":{text:"Draw", abbr:"Draw"},"fifa.winningReason_3":{text:"{WinTeamName} win on penalties ({ScorePenH} - {ScorePenA})", abbr:"{WinTeamCountry} win after PSO"},"fifa.winningReason_4":{text:"{WinTeamName} win on aggregate after regular time ({ScoreAggH} - {ScoreAggA})", abbr:"{WinTeamCountry} Win on agg."},"fifa.winningReason_5":{text:"{WinTeamName} win on aggregate after extra time ({ScoreAggH} - {ScoreAggA})", abbr:"{WinTeamCountry} win on agg AET"},"fifa.winningReason_6":{text:"{WinTeamName} win on away goal after regular time", abbr:"{WinTeamCountry} win on away goals"},"fifa.winningReason_7":{text:"{WinTeamName} win on away goal after extra time", abbr:"{WinTeamCountry} win on away goals AET"},"fifa.winningReason_8":{text:"Win by Silver Goal", abbr:"Win by Silver Goal"},"fifa.winningReason_9":{text:"Win on Golden Goal", abbr:"Win by Golden Goal"},"fifa.forfeited":{text:"Match forfeited", abbr:"f"},"fifa.abandonedStatus":{text:"Abandoned", abbr:"ABD"},"fifa.postponedStatus":{text:"Postponed", abbr:"PPD"},"fifa.cancelled":{text:"Cancelled", abbr:""},"fifa.dayOfWeek_0":{text:"Sunday", abbr:"Sun"},"fifa.dayOfWeek_1":{text:"Monday", abbr:"Mon"},"fifa.dayOfWeek_2":{text:"Tuesday", abbr:"Tue"},"fifa.dayOfWeek_3":{text:"Wednesday", abbr:"Wed"},"fifa.dayOfWeek_4":{text:"Thursday", abbr:"Thu"},"fifa.dayOfWeek_5":{text:"Friday", abbr:"Fri"},"fifa.dayOfWeek_6":{text:"Saturday", abbr:"Sat"},"fifa.month_1":{text:"January", abbr:"Jan"},"fifa.month_2":{text:"February", abbr:"Feb"},"fifa.month_3":{text:"March", abbr:"Mar"},"fifa.month_4":{text:"April", abbr:"Apr"},"fifa.month_5":{text:"May", abbr:"May"},"fifa.month_6":{text:"June", abbr:"Jun"},"fifa.month_7":{text:"July", abbr:"Jul"},"fifa.month_8":{text:"August", abbr:"Aug"},"fifa.month_9":{text:"September", abbr:"Sep"},"fifa.month_10":{text:"October", abbr:"Oct"},"fifa.month_11":{text:"November", abbr:"Nov"},"fifa.month_12":{text:"December", abbr:"Dec"},"fifa.match":{text:"Match", abbr:""},"fifa.goalsScored":{text:"Goals scored", abbr:"GS"},"fifa.totalLosts":{text:"Losses", abbr:"L"},"fifa.goalsAgainst":{text:"Goals against", abbr:"GA"},"fifa.end2ndhalf":{text:"End of Second Half", abbr:"End 2H"},"fifa.endfirstextra":{text:"End of First Half Extra Time", abbr:"End 1H ET"},"fifa.penaltiesphase":{text:"Penalties", abbr:"PEN"},"fifa.endpenaltiesphase":{text:"End of Penalties", abbr:"End of PSO"},"fifa.matchesPlayed":{text:"Matches Played", abbr:"MP"},"fifa.termsAndConditions":{text:"Terms and Conditions", abbr:"TC"},"fifa.date":{text:"Date", abbr:"DT"},"fifa.competitions":{text:"Competitions", abbr:""},"fifa.NoMatchesAvailable":{text:"No matches available", abbr:""},"fifa.day":{text:"Day", abbr:"d"},"fifa.month":{text:"Month", abbr:""},"fifa.close":{text:"Close", abbr:""},"fifa.win":{text:"Wins", abbr:""},"fifa.drawn":{text:"Draws", abbr:""},"fifa.endsecondextra":{text:"End of Second Half Extra Time", abbr:"End 2nd ET"},"fifa.head2head":{text:"Head-to-Head", abbr:"H2H"},"fifa.selectPlayer":{text:"Select player", abbr:""},"fifa.kickOffContestSavedMessage":{text:"Your selection has been saved", abbr:""},"fifa.minutes":{text:"minutes", abbr:""},"fifa.january":{text:"January", abbr:"Jan"},"fifa.february":{text:"February", abbr:"Feb"},"fifa.march":{text:"March", abbr:"Mar"},"fifa.april":{text:"April", abbr:"Apr"},"fifa.may":{text:"May", abbr:"May"},"fifa.june":{text:"June", abbr:"Jun"},"fifa.july":{text:"July", abbr:"Jul"},"fifa.august":{text:"August", abbr:"Aug"},"fifa.september":{text:"September", abbr:"Sep"},"fifa.october":{text:"October", abbr:"Oct"},"fifa.november":{text:"November", abbr:"Nov"},"fifa.december":{text:"December", abbr:"Dec"},"fifa.fromTo":{text:"from {0} to {1}", abbr:""},"fifa.selectYear":{text:"Select year", abbr:""},"fifa.noDataForFilters":{text:"No data available for specified filters", abbr:""},"fifa.newRankingPoints":{text:"Possible Ranking Points", abbr:""},"fifa.rankingCurrentPoints":{text:"Current Points", abbr:""},"fifa.rk_nomatches":{text:"No official games scheduled within the next month", abbr:""},"fifa.videopollSavedMessage":{text:"Thank you for voting! Which of the shortlisted 12 goals will win the Goal of the Tournament for Chile 2015? Come back on 16 November to find out!", abbr:""},"fifa.selectLanguageForSite":{text:"Please select a language for fifa.com", abbr:""},"fifa.setLanguage":{text:"SET LANGUAGE", abbr:""},"fifa.fiwcGoTvideopollSavedMessage":{text:"Thank you for voting! Don't forget to share your selection on Facebook using the hashtag #FIWCbestgoal to stand a chance of winning a Chelsea jersey signed by Cesar Azpilicueta.", abbr:""},"fifa.seconds":{text:"Seconds", abbr:"SEC"},"fifa.hideMatches":{text:"Hide matches", abbr:""},"fifa.pleaseSelectDifferentTeams":{text:"Please select different teams", abbr:""},"fifa.continentalFinalFutsal":{text:"Continental Final Futsal", abbr:""},"fifa.neitherTeamHasParticipated":{text:"Neither team has participated at this tournament", abbr:""},"fifa.selectCoach":{text:"Select coach", abbr:""},"fifa.coachCareer":{text:"Coach Career", abbr:""},"fifa.playerCareerFemale":{text:"Player career", abbr:""},"fifa.noAwardsForPersonMessage":{text:"No awards available for this person", abbr:""},"fifa.friendlies":{text:"Friendlies", abbr:""},"fifa.continentalFinals":{text:"Continental finals", abbr:""},"fifa.friendliesBeachSoccer":{text:"Beach Soccer Friendlies", abbr:""},"fifa.futsalWorldCupQualifiers":{text:"FIFA Futsal World Cup Qualifiers", abbr:""},"fifa.womenContinentalFinals":{text:"Women's Continental Finals", abbr:""},"fifa.olympicFootballTournaments":{text:"Olympic Football Tournaments", abbr:""},"fifa.playerNoMatch":{text:"The player hasn't played any match in this tournament", abbr:""},"fifa.KOBCoptin":{text:"fifa.KOBCoptin", abbr:""},"fifa.coachCareerFemale":{text:"Coach Career", abbr:""},"fifa.KOBCthankYou":{text:"Thank you for submitting your answers. The correct answers will be revealed once this Kick-Off Ball contest is closed.", abbr:""},"fifa.hours":{text:"hours", abbr:"H"},"fifa.mbm_goals_oh":{text:"@@player1 Goal (overhead)", abbr:""},"fifa.endSecondPeriod":{text:"End of second period", abbr:"End 2nd"},"fifa.endThirdPeriod":{text:"End of third period", abbr:"End 3rd"},"fifa.endExtraPeriod":{text:"End of extra time", abbr:"End ET"},"fifa.disclaimerNoMatchesThisRound":{text:"{Team} have automatically qualified for the next round", abbr:""},"fifa.showMatches":{text:"Show matches", abbr:""},"fifa.matchesCurrentlyLive":{text:"{0} matches currently live", abbr:""},"fifa.matchCurrentlyLive":{text:"1 match currently live", abbr:""},"fifa.noMatchesCurrentlyLive":{text:"No matches are currently live", abbr:""},"fifa.fullMatchPage":{text:"Match details", abbr:""},"fifa.noMatchesFound":{text:"Sorry, no matches were found. Please change your search criteria.", abbr:""},"fifa.followTheQualifiersLive":{text:"Follow the Qualifiers Live", abbr:""},"fifa.puskasCandidatesSavedMessage":{text:"Thank you for voting! Visit us on 30 November to see if your favourite goal has made it on to the final shortlist for the 2015 FIFA Puskás award", abbr:""},"fifa.otherMatches":{text:"Other matches", abbr:""},"fifa.favouritesMatches":{text:"Favourites matches", abbr:""},"fifa.favouritesMatchesLogInInvitation":{text:"If you want to see your favourites, please LOG IN NOW.", abbr:""},"fifa.yourFavourites":{text:"Your favourites", abbr:""}});}(window));;(function($,w,d) {var worldRankingView=fifa.view.extend({$rankTable:null,$rankTeamList:null,$quickLinkTeamList:null,$mapDetailAllConf:null,$selectedMapDetail:null,_selectedConf:null,_filterClicked:false,_paginationItems:50,_displayedItems:0,_maRankDetails:new Array(),_headerOffset:50,_confederationMaps:new Array(),assetsImg:'http://img.fifa.com',confMapBasePath:'/images/fwc/2014/tournaments/preliminaries/{conf}.png',initialize:function(options) {var _this=this;fifa.view.prototype.initialize.apply(_this,[options]);fifa.log("worldranking init");_this.$rankTable=_this.$el.find('.table.tbl-ranking.table-striped');_this.$rankTable.each(function() {_this.initTable(this);});$(".ranking-paginationlinks li.paginationAnchor").click(function(e) {e.preventDefault();window.fifa.analytics.Page.getActiveVars().noTrackOnScroll=true;var position=$(e.currentTarget).find("a").attr("href");position=position.replace("#","");_this.JumpToPosition(position);});$(".ranking-paginationlinks li.moverAnchor").click(function(e) {e.preventDefault();var selector=$(e.currentTarget).find("a").attr("href");selector=selector.replace("#","");_this.JumpToMovers(selector);});if(_this.$(".ranking-assocations-map-menu,.ranking-associations-map-menu").length>0) {_this.initMap();}if(_this.$(".ranking-teamlist-quicklink").length>0) {_this.$quickLinkTeamList=_this.$(".ranking-teamlist-quicklink");}if(_this.$(".ranking-teamlist,.associations-teamlist").length>0) {_this.$rankTeamList=_this.$(".ranking-teamlist,.associations-teamlist");_this.iniTeamList();}},initTable:function(tbl) {var _this=this;var $table=$(tbl);if($table.attr("data-rowsperpage")) {_this._paginationItems=$table.attr("data-rowsperpage");if(_this._paginationItems) {_this._paginationItems=_this._paginationItems - 0;var $rows=$table.find("tbody tr");if($rows.length>_this._paginationItems) {$rows.each(function() {var rnkPosition=$(this).find(".tbl-rank .text").html();if($(this).index()>(_this._paginationItems - 1)) {if(!$(this).hasClass("expanded")) {$(this).addClass("hidden");}}});_this._displayedItems=_this._paginationItems;}else {_this._displayedItems=$rows.length;}var btnMoreText=fifa.vocManager.translate("fifa.more");var _moreBtnMarkup="";$table.parent().find(".dcm-listnav.ranking-more").remove();$table.parent().append(_moreBtnMarkup);$table.parent().find(".btn-more-ranking").click(function(e) {e.preventDefault();_this.onShowMore(e);});if($table.attr("class").indexOf("sortable")!==-1) {$table.find("th").click(function(e) {var $rows=$table.find("tbody tr.hidden");$rows.removeClass("hidden");$table.parent().find(".btn-more-ranking").remove();});}}}if($table.attr("data-confed")) {var _conf=$table.attr("data-confed").toLowerCase();$(".ranking-confnav").find("li." + _conf).addClass("active");}else {$(".ranking-confnav").find("li.allconfederations").addClass("active");}},initMap:function() {var _this=this;var $mapMenu=_this.$(".ranking-assocations-map-menu");$mapMenu.add('.ranking-associations-map-menu').find("li").mouseover(function(e) {e.preventDefault();e.stopPropagation();var _conf=$(this).attr("id").replace("mitem-","");_this.ToggleConfDetail(_conf);_this.showConfMap(_conf);_this.filterTeamList(_conf);}).mouseout(function(e) {e.preventDefault();e.stopPropagation();var _conf=$(this).attr("id").replace("mitem-","");_this.ToggleConfDetail(_conf);$(".confederation-map").addClass("hidden");if(!!_this._selectedConf) {_this._confederationMaps[_this._selectedConf].removeClass("hidden");_this.filterTeamList(_this._selectedConf);}else {_this.filterTeamList("all");}});$mapMenu.find('li').click(function(e) {var _conf=$(this).attr("id").replace("mitem-","");$(".ranking-topteams-confederation").addClass("hidden");$(".ranking-topteams-confederation#" + _conf).removeClass("hidden");_this.$selectedMapDetail=$(".ranking-topteams-confederation#" + _conf);_this._selectedConf=_conf;_this.filterTeamList(_conf);var _top=$(".ranking-assocations-teamfilters,.associations-teamfilters").offset().top - 0;var _scroll=_top - (_this._headerOffset - 0);$("html,body").animate({ scrollTop:_scroll},300);});_this.$mapDetailAllConf=$(".ranking-topteams-confederation#all");$(_this.$mapDetailAllConf).removeClass("hidden");},showConfMap:function(conf) {var _this=this;var _confImage=_this.assetsImg + _this.confMapBasePath.replace("{conf}",conf);if(!!!_this._confederationMaps[conf]) {var _confImgHTML="";_this.$el.find(".map").append(_confImgHTML);_this._confederationMaps[conf]=$(".confederation-map#" + conf);}else {$(".confederation-map").addClass("hidden");_this._confederationMaps[conf].removeClass("hidden");}},iniTeamList:function() {var _this=this;var $mapMenu=_this.$(".ranking-assocations-map-menu,.ranking-associations-map-menu"),$li;if(($li=_this.$(".ranking-assocations-teamfilters,.associations-teamfilters").find("li")).length>0) {$li.click(function(e) {e.preventDefault();e.stopPropagation();var _conf=$(this).find("a").attr("href").replace("#","");_this.ToggleConfDetail(_conf,true);_this.showConfMap(_conf);_this.filterTeamList(_conf);_this._selectedConf=_conf;_this._filterClicked=true;_this.$selectedMapDetail=$(".ranking-topteams-confederation#" + _conf);fifa.dispatcher.trigger('worldranking:view:filteredTeamList');});}},filterTeamList:function(conf) {var _this=this;if(conf.toLowerCase()=="all") {_this.$rankTeamList.find("li").removeClass("hidden");if(_this.$quickLinkTeamList!==null) {_this.$quickLinkTeamList.find("div[data-confederation]").addClass("hidden");}_this.$selectedMapDetail=null;_this._selectedConf=null;$(".confederation-map").addClass("hidden");}else {_this.$rankTeamList.find("li[data-confederation!='" + conf.toLowerCase() + "']").addClass("hidden");_this.$rankTeamList.find("li[data-confederation='" + conf.toLowerCase() + "']").removeClass("hidden");if(_this.$quickLinkTeamList!==null) {_this.$quickLinkTeamList.find("div[data-confederation][data-confederation!='" + conf.toLowerCase() + "']").addClass("hidden");_this.$quickLinkTeamList.find("div[data-confederation][data-confederation='" + conf.toLowerCase() + "']").removeClass("hidden");}$(".confederation-map").addClass("hidden");_this.showConfMap(conf);}_this.$el.find(".courtesy-text").addClass('hidden');_this.$(".ranking-assocations-teamfilters,.associations-teamfilters").find("li").removeClass("active").end().find("a[href='#" + conf + "']").parents("li").addClass("active");},onShowMore:function(e) {var _this=this;var $btnMore=$(e.currentTarget);var $rows=_this.$rankTable.find("tbody tr");if($rows.length>(_this._displayedItems)) {$rows.each(function() {if(($(this).index()>(_this._displayedItems - 1))&&($(this).index()<(_this._displayedItems + _this._paginationItems))) {$(this).removeClass("hidden");$(this).addClass("expanded");}});_this._displayedItems += _this._paginationItems;fifa.dispatcher.trigger('analytics:buttonMore');if(_this._displayedItems>=$rows.length) {_this._displayedItems=$rows.length;$btnMore.remove();}}},ToggleRankDetail:function(e) {e.preventDefault();var _this=this;$caller=$(e.currentTarget);var $row=$caller.parents("tr");if($caller.attr("class")==="glyphicon-chevron-down") {$caller.addClass("glyphicon-remove");$caller.removeClass("glyphicon-chevron-down");if($caller.parents("table").attr("data-detail-library")) {var detailBasePath=$caller.parents("table").attr("data-detail-library");var countryCode=$row.find(".tbl-countrycode .text").html().toUpperCase();detailBasePath=detailBasePath.replace("[countrycode]",countryCode);_this.LoadRankDetail(countryCode,detailBasePath,$row);}}else {$caller.addClass("glyphicon-chevron-down");$caller.removeClass("glyphicon-remove");$row.next(".expandcol").remove();}},ShowConfDetail:function(conf) {var _this=this;$(".ranking-topteams-confederation").addClass("hidden");$(".ranking-topteams-confederation#" + conf).removeClass("hidden");},ToggleConfDetail:function(conf) {var _this=this;var $defaultMapDetail=_this.$mapDetailAllConf;if(!!_this.$selectedMapDetail&&_this.$selectedMapDetail.length>0) {var $defaultMapDetail=_this.$selectedMapDetail;}if($($defaultMapDetail).hasClass("hidden")&&(!_this._filterClicked)) {$(".ranking-topteams-confederation").addClass("hidden");$defaultMapDetail.removeClass("hidden");}else {$(".ranking-topteams-confederation").addClass("hidden");$(".ranking-topteams-confederation#" + conf).removeClass("hidden");}if(!!_this._filterClicked) {_this._filterClicked=false;}},LoadRankDetail:function(countrycode,detailBasePath,$row) {var _this=this;var _detailContent="";if(_this._maRankDetails[countrycode]) {_detailContent=_this._maRankDetails[countrycode];_this.ShowRankDetail($row,_detailContent);fifa.dispatcher.trigger('core:reinit');}else {$.get(detailBasePath).done(function(data) {_this._maRankDetails[countrycode]=data;_detailContent=_this._maRankDetails[countrycode];_this.ShowRankDetail($row,_detailContent);fifa.dispatcher.trigger('core:reinit');});}},ShowRankDetail:function($row,content) {var colspan=$row.find("td").length;$("" + content + "").insertAfter($row);},JumpToMovers:function(selector) {var _this=this;$moverItem=$("#" + selector);if($moverItem.length>0) {var position=$moverItem.parents("tr").attr("id");position=position.replace("rnk_","");_this.JumpToPosition(position);}},JumpToPosition:function(position) {var _this=this;var $tbl=_this.$rankTable[0];var $rows=$($tbl).find("tbody tr");if(position>_this._displayedItems) {var itemToShow=_this._displayedItems + _this._paginationItems;while (position>itemToShow) {itemToShow += _this._paginationItems;}$rows.each(function() {if(($(this).index()>(_this._displayedItems - 1))&&($(this).index()0) {var scroll=$posItem.offset().top - _this._headeroffset;$('html,body').animate({ scrolltop:scroll},300);}else {var attempts=0;while ($posItem.length==0&&(attempts<10)) {$posItem=$("#rnk_" + (position - 1));if($posItem.length>0) {var scroll=$posItem.offset().top - _this._headerOffset;$('html,body').animate({ scrollTop:scroll},300);}attempts++;}}if($($tbl).find("tbody tr.hidden").length==0) {$(".btn-more-ranking").remove();}},coreOnReinit:function() {var _this=this;_this.initialize();},filterViewOnDone:function() {$(".ranking-assocations-teamfilters,.associations-teamfilters").find("li").removeClass("active").end().find("a[href='#all']").parents("li").addClass("active");$(".ranking-teamlist-quicklink").find("div[data-confederation]").addClass("hidden");},events:{"click .glyphicon-chevron-down":"ToggleRankDetail","click .glyphicon-remove":"ToggleRankDetail"},name:'worldRanking:view'});w.views.worldRanking=new worldRankingView({el:'.ranking,.associations',bind:['core:reinit','module:view:itemLoaded','filter:view:done','filteredTeamList']});$(d).off('click.infopopup').on('click.infopopup',function(e) {var $target=$(e.target);if($target.is('.popovTrigger')||$target.closest('.popovTrigger').length>0||$target.is('.popover')||$target.closest('.popover').length>0) { return true;}$('.popovTrigger').each(function() {$(this).data('bs.popover').hoverState=undefined;});$('.popovTrigger').popover('hide');});}(window.jQuery||window.jm,window,document));;(function($,w,d) {var tableView=Backbone.View.extend({initialize:function(options) {var _this=this,pathname=w.location.pathname;fifa.view.prototype.initialize.apply(_this,[options]);},onClickTr:function(e){var _this=this;if($(e.target).closest('tr').attr('data-href').length){document.location.href=$(e.target).closest('tr').attr('data-href');}},onScrollToRow:function(rowSelector,offset) {if(!!!offset) {offset=0;}var _this=this;var $rows=$(_this).find("tr");$row=$(rowSelector);if($row.length>0) {var scroll=$row.offset().top - offset;$('html,body').animate({ scrollTop:scroll},300);}},events:{'click tr[data-href]':'onClickTr'},name:'table:view'});w.views.table=new tableView({el:'table tbody',bind:['scrollToRow']});}(window.jQuery||window.jm,window,document));;(function($,w,d) {var rankingToolsView=fifa.view.extend({$_teamDDLs:new Array(),$_timeRangeDDL:null,$_confedDDL:null,$_customTimeSearch:null,$_customFromMonth:null,$_customFromYear:null,$_customToMonth:null,$_customToYear:null,$_resultPageUrl:null,$_bestWorstSorting:null,$_editionsJSON:null,confed:null,teams:new Array(),fromDate:new Date(),toDate:new Date(),bestWorstSorting:'best',assetsImg:'http://img.fifa.com',initialize:function(options) {var _this=this;fifa.view.prototype.initialize.apply(_this,[options]);fifa.log("ranking tools init");_this.Init();},Init:function(){var _this=this;var _currentYear=new Date().getFullYear();if(_this.$el.find("#editionsJSON").length>0) {_this.$_editionsJSON=$.parseJSON(_this.$el.find("#editionsJSON").html());}_this.GetDomElements(".ranking-tools");for (year=_currentYear; year>=1993; year--) {_this.$_customFromYear.append("");_this.$_customToYear.append("");}if(window.location.hash.length>0) {var _toolClass=".ranking-tools"; if(_this.$el.hasClass(".compareteams")) {_toolClass=".compareteams";}else if(_this.$el.hasClass(".bestworstranking")) {_toolClass=".bestworstranking";}else if(_this.$el.hasClass(".bestworstmovers")) {_toolClass=".bestworstmovers";}else if(_this.$el.hasClass(".prognosis")) {_toolClass=".prognosis";}_this.GetHashData(_toolClass);}},GetDomElements:function(filter){var _this=this;_this.$_confedDDL=_this.$el.filter(filter).find("select#confed");_this.$_teamDDLs[0]=_this.$el.filter(filter).find("select#t1");_this.$_teamDDLs[1]=_this.$el.filter(filter).find("select#t2");_this.$_teamDDLs[2]=_this.$el.filter(filter).find("select#t3");_this.$_teamDDLs[3]=_this.$el.filter(filter).find("select#t4");_this.$_timeRangeDDL=_this.$el.filter(filter).find("select#time-range");_this.$_customTimeSearch=_this.$el.filter(filter).find(".ranking-tools-customizeTimeSearch");_this.$_customFromMonth=_this.$_customTimeSearch.find("#from-month");_this.$_customFromYear=_this.$_customTimeSearch.find("#from-year");_this.$_customToMonth=_this.$_customTimeSearch.find("#to-month");_this.$_customToYear=_this.$_customTimeSearch.find("#to-year");_this.$_bestWorstSorting=_this.$el.filter(filter).find("input[name='bestworstoption']");},SetTimeRange:function() {var _this=this;var _timeRange=_this.$_timeRangeDDL.val()||"fifarankingcreation";var _today=new Date();var _tmonth=_today.getMonth(); var _tyear=_today.getFullYear();var _tday=_today.getDate();var _daysInLastMonth=new Date(_tyear,_tmonth,0).getDate();switch (_timeRange) {case "lastmonth":_this.GetDatesByPastEditions(1);break;case "last4months":_this.GetDatesByPastEditions(4);break;case "lastyear":_this.GetDatesByPastEditions(12);break;case "last4years":_this.GetDatesByPastEditions(48);break;case "fifarankingcreation":_this.toDate=_today;_this.GetDatesByPastEditions(12); _this.fromDate=new Date(1993,7,1);break;case "customizesearch":var _fm=_this.$_customFromMonth.val();var _fy=_this.$_customFromYear.val();var _tm=_this.$_customToMonth.val();var _ty=_this.$_customToYear.val();_this.fromDate=new Date(_fy,_fm - 1,1);_this.toDate=new Date(_ty,_tm - 1,1);_this.toDate=_this.toDate.Add("m",1);_this.toDate=_this.toDate.Add("d",-1);_this.fromDate=_this.fromDate.Add("d",((_this.fromDate.getDate() - 1) * -1));_this.RetreiveEditionsDates();break;}},GetDatesByPastEditions:function(editionsBack){var _this=this;var _from=_this.fromDate;var _currentEdition=new Date();var _currentEditionIndex=0;for (i in _this.$_editionsJSON) {var _edition=_this.$_editionsJSON[i];if(_edition.isvalid==1) {var _editionDate=new Date();_editionDate.setTime(Date.parse(_edition.deliverydate.substring(0,10)));if((_editionDate<=_currentEdition)&&_currentEditionIndex==0) {_currentEdition=_editionDate;_currentEditionIndex=i - 0;}if(i==(_currentEditionIndex + editionsBack)) {_from=_editionDate;}}}_this.fromDate=_from;_this.toDate=_currentEdition;},RetreiveEditionsDates:function(){var _this=this;var _toDateFound=false;var _from=_this.fromDate;var _to=_this.toDate;for (i in _this.$_editionsJSON) {var _edition=_this.$_editionsJSON[i];if(_edition.isvalid==1) {var _editionDate=new Date();_editionDate.setTime(Date.parse(_edition.deliverydate.substring(0,10)));if((_editionDate<=_to)&&!_toDateFound) {_to=_editionDate;_toDateFound=true;}if((_editionDate>=_this.fromDate)) {_from=_editionDate;}}}_this.fromDate=_from;_this.toDate=_to;},CustomizeSearchCheck:function(e) {var _this=this;if(!!e) {_this.$_customTimeSearch=$(e.currentTarget).parents(".ranking-tools-customizeTimeSearch");_this.$_timeRangeDDL=_this.$_customTimeSearch.siblings("select#time-range");}_this.$_customFromMonth=_this.$_customTimeSearch.find("#from-month");_this.$_customFromYear=_this.$_customTimeSearch.find("#from-year");_this.$_customToMonth=_this.$_customTimeSearch.find("#to-month");_this.$_customToYear=_this.$_customTimeSearch.find("#to-year");var _fm=_this.$_customFromMonth.val();var _fy=_this.$_customFromYear.val();var _tm=_this.$_customToMonth.val();var _ty=_this.$_customToYear.val();var fromDate=new Date(_fy,_fm - 1,1);var toDate=new Date(_ty,_tm - 1,1);if(_fm==""||_fy==""||_tm==""||_ty==""||(fromDate>toDate)) {_this.triggerMe('invalidDate',_this.$_timeRangeDDL);}else {_this.triggerMe('validDate',_this.$_timeRangeDDL);}},TimeRangeChange:function(e) {var _this=this;_this.$_timeRangeDDL=$(e.currentTarget);_this.$_customTimeSearch=_this.$_timeRangeDDL.siblings(".ranking-tools-customizeTimeSearch");var _selectedValue=_this.$_timeRangeDDL.val();if(_selectedValue=="customizesearch") {_this.CustomizeSearchCheck();_this.$_customTimeSearch.removeClass("hidden");}else {_this.triggerMe('validDate',_this.$_timeRangeDDL);_this.$_customTimeSearch.addClass("hidden");}},onCalculate:function(caller){var _this=this;switch (caller.name.toLowerCase()) {case "rankingcompareteams:view":_this.CalculateCompareTeams();break;case "bestworstranking:view":_this.CalculateBestWorstRanking();break;case "bestworstmovers:view":_this.CalculateBestWorstMovers();break;}},GetHashData:function(filter) {var _this=this;var _hash=window.location.hash.replace("#","");fifa.log("hash:",_hash);if(_hash.length>0) {var _params=_hash.toQueryParams();_this.$_teamDDLs[0].val(_params.t1);_this.$_teamDDLs[1].val(_params.t2);_this.$_teamDDLs[2].val(_params.t3);_this.$_teamDDLs[3].val(_params.t4);_this.$_timeRangeDDL.val(_params.timeRange);_this.$_confedDDL.val(_params.confed);if(_params.timeRange=="customizesearch") {var _fromDate=new Date();_fromDate.setTime(Date.parse(_params.fromDate));var _toDate=new Date();_toDate.setTime(Date.parse(_params.toDate));_this.$_customFromMonth.val((_fromDate.getMonth() + 1));_this.$_customFromYear.val(_fromDate.getFullYear());_this.$_customToMonth.val((_toDate.getMonth() + 1));_this.$_customToYear.val(_toDate.getFullYear());_this.$_customTimeSearch.removeClass("hidden");}if(!!_params.bestWorstSorting) {_this.$_bestWorstSorting.filter("[value='" + _params.bestWorstSorting + "']").prop('checked',true);_this.$_bestWorstSorting.filter("[value!='" + _params.bestWorstSorting + "']").prop('checked',false);_this.bestWorstSorting=_params.bestWorstSorting;}_this.GetFormData(filter);}},GetFormData:function(filter){var _this=this;_this.GetDomElements(filter);_this.teams[0]=_this.$_teamDDLs[0].val();_this.teams[1]=_this.$_teamDDLs[1].val();_this.teams[2]=_this.$_teamDDLs[2].val();_this.teams[3]=_this.$_teamDDLs[3].val();_this.confed=_this.$_confedDDL.val();_this.bestWorstSorting=_this.$el.find("input[name='bestworstoption']:checked").val();_this.SetTimeRange();},CalculateCompareTeams:function() {var _this=this;_this.GetFormData(".compareteams");_this.$_resultPageUrl=_this.$el.filter(".compareteams").attr("data-resultpageurl");if((!!_this.$_resultPageUrl)&&_this.$_resultPageUrl.length>0) {var _timeRange=_this.$_timeRangeDDL.val();var _rpUrl=_this.$_resultPageUrl.concat("#dataform=true&t1=",_this.teams[0],"&t2=",_this.teams[1],"&t3=",_this.teams[2],"&t4=",_this.teams[3],"&timeRange=",_timeRange,"&fromDate=",_this.DateFormatForParameter(_this.fromDate),"&toDate=",_this.DateFormatForParameter(_this.toDate));window.location=_rpUrl;}else {_this.GetFormData(".compareteams");var _countryCodes=new Array();for (i in _this.teams) {if(!!_this.teams[i]&&(_this.teams[i]!="")) {_countryCodes.push(_this.teams[i]);}}fifa.dispatcher.trigger('rankingcompareteams:view:compareTeams',_countryCodes,_this.fromDate,_this.toDate);}},CalculateBestWorstRanking:function() {var _this=this;_this.GetFormData(".bestworstranking");_this.$_resultPageUrl=_this.$el.filter(".bestworstranking").attr("data-resultpageurl");if((!!_this.$_resultPageUrl)&&_this.$_resultPageUrl.length>0) {var _timeRange=_this.$_timeRangeDDL.val();var _rpUrl=_this.$_resultPageUrl.concat("#dataform=true&t1=",_this.teams[0],"&confed=",_this.confed,"&timeRange=",_timeRange,"&fromDate=",_this.DateFormatForParameter(_this.fromDate),"&toDate=",_this.DateFormatForParameter(_this.toDate));window.location=_rpUrl;}else {_this.GetFormData(".bestworstranking");var _countryCodes=new Array();for (i in _this.teams) {if(!!_this.teams[i]&&(_this.teams[i]!="")) {_countryCodes.push(_this.teams[i]);}}fifa.dispatcher.trigger('bestworstranking:view:getBestWorstRanking',_countryCodes,_this.confed,_this.fromDate,_this.toDate);}},CalculateBestWorstMovers:function() {var _this=this;_this.GetFormData(".bestworstmovers");_this.$_resultPageUrl=_this.$el.filter(".bestworstmovers").attr("data-resultpageurl");if((!!_this.$_resultPageUrl)&&_this.$_resultPageUrl.length>0) {var _timeRange=_this.$_timeRangeDDL.val();var _rpUrl=_this.$_resultPageUrl.concat("#dataform=true&confed=",_this.confed,"&timeRange=",_timeRange,"&fromDate=",_this.DateFormatForParameter(_this.fromDate),"&toDate=",_this.DateFormatForParameter(_this.toDate),"&bestWorstSorting=",_this.bestWorstSorting);window.location=_rpUrl;}else {_this.GetFormData(".bestworstmovers");fifa.dispatcher.trigger('bestworstmovers:view:getBestWorstMovers',_this.confed,_this.fromDate,_this.toDate,_this.bestWorstSorting);}},DateFormatForParameter:function(srcDate){var _year=srcDate.getFullYear().toString();var _month=("00" + (srcDate.getMonth() + 1)).slice(-2);var _day=("00" + (srcDate.getDate())).slice(-2);return _year.concat("-",_month,"-",_day);},coreOnReinit:function(){var _this=this;_this.initialize();},events:{"change select#time-range":"TimeRangeChange","change .ranking-tools-customizeTimeSearch select":"CustomizeSearchCheck"},name:'rankingtools:view'});w.views.rankingTools=new rankingToolsView({el:'.ranking-tools',bind:['core:reinit','module:view:itemLoaded','calculate','invalidDate','validDate']});}(window.jQuery||window.jm,window,document));;(function($,w,d) {var rankingCompareTeamsView=fifa.view.extend({$_teamHistoriesJSON:new Array(4),$_teamNames:new Array(4),$_detailTimeRangeSummary:null,$_comparedTeamPositions:null,$_associationsBaseUrl:null,$charts:null,context:null,teamJSONLibPath:null,JSONUpdated:new Array(),timedTeamHistories:new Array(),fromDate:null,toDate:null,isValidDate:true,assetsImg:'http://img.fifa.com',initialize:function(options) {var _this=this;fifa.view.prototype.initialize.apply(_this,[options]);_this.Init(_this.$el);},Init:function(el) {var _this=this;var _el=$(el);_this.teamJSONLibPath=_el.attr("data-teamjsonlib");_this.$_associationsBaseUrl=_el.attr("data-associations-url");if(!!_this.teamJSONLibPath) {_this.getTeamJSON(_el.find("select#t1"));_this.getTeamJSON(_el.find("select#t2"));_this.getTeamJSON(_el.find("select#t3"));_this.getTeamJSON(_el.find("select#t4"));_this.$_teamNames["t1"]=_el.find("select#t1").find("option:selected").text();_this.$_teamNames["t2"]=_el.find("select#t2").find("option:selected").text();_this.$_teamNames["t3"]=_el.find("select#t3").find("option:selected").text();_this.$_teamNames["t4"]=_el.find("select#t4").find("option:selected").text();_this.$_detailTimeRangeSummary=_el.find(".detail-range-summary .table");_this.$_comparedTeamPositions=_el.find(".compared-teams-positions .table");}},Calculate:function(e) {e.preventDefault();var _this=this;if(_this.$el.length>0&&_this.$el.hasClass("inpage")) {w.fifa.dispatcher.trigger("analytics:customPageView",{});}fifa.dispatcher.trigger('rankingtools:view:calculate',{ name:this.name});},onCompareTeams:function(teamsCountryCodes,fromDate,toDate) {var _this=this;_this.fromDate=fromDate;_this.toDate=toDate;var _summaryRows=new Array();_this.timedTeamHistories=new Array();var _countryCodeIndex=0;for (var i=1; i<=_this.$_teamHistoriesJSON.length; i++) {var _rowId="t" + i;if(_this.$_teamHistoriesJSON[_rowId]) {var _history=_this.GetTimeRangeHistory(fromDate,toDate,_this.$_teamHistoriesJSON[_rowId]);_this.timedTeamHistories.push(_history);var _teamRow=_this.GetTimeRangeSummaryRow(_rowId,teamsCountryCodes[_countryCodeIndex++],_this.$_teamNames["t" + i],_history);_summaryRows.push(_teamRow);}}_this.DisplayTimeRangeSummaryRows(_summaryRows);var _compTeamPosRows=new Array();var _noDataText=fifa.vocManager.translate('fifa.noDataForFilters');var _dateRange=new Array();var _validIndex=0,j=0,l=_this.timedTeamHistories.length;fifa.log('timedTeamHistories',_this.timedTeamHistories);for (var j; j_dateRange.length)) {_dateRange=_this.timedTeamHistories[j];_validIndex=j;}}l=_dateRange.length;for (var i=0; i0) { _ranks.push(_rnk1)}else { _ranks.push(_noDataText);}if(_rnk2>0) { _ranks.push(_rnk2)}else { _ranks.push(_noDataText);}if(_rnk3>0) { _ranks.push(_rnk3)}else { _ranks.push(_noDataText);}if(_rnk4>0) { _ranks.push(_rnk4)}else { _ranks.push(_noDataText);}_rowObj={ rankingDate:_this.GetDateFormat(_date,true).toString(),ranks:_ranks};_compTeamPosRows.push(_rowObj);}if(_compTeamPosRows.length==0) {var _ranks=new Array();for (var i=0; i<4; i++) { _ranks.push(_noDataText);}var _rowObj={ rankingDate:_noDataText,ranks:_ranks};_compTeamPosRows.push(_rowObj);}_this.DisplayComparedTeamPosRows(_compTeamPosRows,teamsCountryCodes);_this.prepareChartData();},GetRankByDate:function(date,teamHistory) {var _rankSeq=0;for (var i in teamHistory) {if(teamHistory[i].deliverydate==date) {_rankSeq=teamHistory[i].rankseq;}}return _rankSeq;},DisplayComparedTeamPosRows:function(summaryRows,teamsCountryCodes) {var _this=this;var _rowMarkup="";var _rowTemplate="[0][1][2][3][4]";_rowTemplate=_rowTemplate.replaceAndFormat("{{date}}","{{rank1}}","{{rank2}}","{{rank3}}","{{rank4}}");if(_this.timedTeamHistories.length==3) {_rowTemplate="[0][1][2][3]";_rowTemplate=_rowTemplate.replaceAndFormat("{{date}}","{{rank1}}","{{rank2}}","{{rank3}}");}if(_this.timedTeamHistories.length==2) {_rowTemplate="[0][1][2]";_rowTemplate=_rowTemplate.replaceAndFormat("{{date}}","{{rank1}}","{{rank2}}");}Mustache.parse(_rowTemplate);_.each(summaryRows,function(row) {row.date=function() { return this.rankingDate;};row.rank1=function() { return this.ranks[0];};row.rank2=function() { return this.ranks[1];};row.rank3=function() { return this.ranks[2];};row.rank4=function() { return this.ranks[3];};_rowMarkup += Mustache.render(_rowTemplate,row);});_this.$_comparedTeamPositions.find("tbody").empty();_this.$_comparedTeamPositions.find("tbody").append(_rowMarkup);var _headerColumnTemplate="\"[1]\"[3]";_headerColumnTemplate=_headerColumnTemplate.replaceAndFormat("{{columnclass}}","{{countrycode}}","{{flag}}","{{teamname}}","{{malink}}");var _headerRowMarkup="" + fifa.vocManager.translate('fifa.date'); +"";var _headerColumns=[];Mustache.parse(_headerColumnTemplate);var j=0,l=teamsCountryCodes.length;for (var j; j" + _fromToText + "");},GetTimeRangeHistory:function(fromDate,toDate,history) {var _teamHistory=$.grep(history,function(element,index) {var _elementDate=new Date();_elementDate.setTime(Date.parse(element.deliverydate.substring(0,10)));return (_elementDate>=fromDate&&_elementDate<=toDate);});return _teamHistory;},GetTimeRangeSummaryRow:function(rowId,teamCountryCode,tName,teamHistory) {var _this=this;var _rowObj=null;var _noDataText=fifa.vocManager.translate('fifa.noDataForFilters');if(teamHistory.length>0) {var _bestRanking=_this.GetTeamBestRank(teamHistory);var _worstRanking=_this.GetTeamWorstRank(teamHistory);var _rankingAvg=_this.GetTeamRankAvg(teamHistory);_rowObj={ id:rowId,teamcode:teamCountryCode,teamName:tName,bestRanking:_this.GetDateFormat(_bestRanking.deliverydate,true) + " - " + _bestRanking.rankseq,worstRanking:_this.GetDateFormat(_worstRanking.deliverydate,true) + " - " + _worstRanking.rankseq,rankingAvg:_rankingAvg};}else {_rowObj={ id:rowId,teamcode:teamCountryCode,teamName:tName,bestRanking:_noDataText,worstRanking:_noDataText,rankingAvg:_noDataText};}return _rowObj;},GetDateFormat:function(strDate,abbreviation) {var _date=new Date();if(!strDate) {strDate="";}if(strDate.length>10) {strDate=strDate.substring(0,10);}_date.setTime(Date.parse(strDate));var _month=_date.GetMonthStr(abbreviation);var _dateformat=_month.concat(" ",_date.getFullYear().toString());return _dateformat;},GetTeamBestRank:function(teamHistory) {var _best=209; var _bestElement=null;for (var i in teamHistory) {if(teamHistory[i].rankseq<_best) {_best=teamHistory[i].rankseq;_bestElement=teamHistory[i];}}return _bestElement;},GetTeamWorstRank:function(teamHistory) {var _worst=0;var _worstElement=null;for (var i in teamHistory) {if(teamHistory[i].rankseq>_worst) {_worst=teamHistory[i].rankseq;_worstElement=teamHistory[i];}}return _worstElement;},GetTeamRankAvg:function(teamHistory) {var _rankSum=0;for (var i=0; i0) {_this.$_teamHistoriesJSON[_tid]=$.parseJSON(data);if(!_this.JSONUpdated[_tid]) {_this.JSONUpdated.push(_tid);}var _filledDDL=_this.$el.find("select#t1,select#t2,select#t3,select#t4").filter(function() {return ($(this).val()!='');}).length;if(_this.JSONUpdated.length==_filledDDL) {fifa.dispatcher.trigger('rankingtools:view:calculate',{ name:_this.name});_this.JSONUpdated=new Array();}}});},rankingtoolsViewOnInvalidDate:function(timeRangeDDL) {var _this=this;if(timeRangeDDL.parents(".ranking-tools").hasClass("compareteams")) {_this.$el.find('#i_btnCompareTeams').attr("disabled","true");_this.isValidDate=false;}},rankingtoolsViewOnValidDate:function(timeRangeDDL) {var _this=this;if(timeRangeDDL.parents(".ranking-tools").hasClass("compareteams")) {_this.isValidDate=true;_this.TeamSelectionCheck();}},prepareChartData:function() {var _this=this;_this.$charts=_this.$('.chart-item');_this.$charts.each(function() {_this.renderChart($(this));});},renderChart:function($chart) {var _this=this;var _isWomen=false;var _isAssociationChart=false;if($chart.parents(".women").length>0) {fifa.log("is women");_isWomen=true;}if($chart.parents(".association-chart").length>0) {fifa.log("is association");_isAssociationChart=true;}var _data_attr=$chart.attr("data-attr");var time_range_selected=$('#time-range').val()||"fifarankingcreation",$legends=_this.$('.legend'),_ctx=$chart.find("#" + _data_attr),_history=_this.timedTeamHistories,_labels=[],_datasets=[],data={labels:null,datasets:null},i,l=_history.length,i2,l2,is_first=true,max_length=Math.max.apply(Math,$.map(_history,function(el) { return el.length}));if(!$chart.length) { return;}for (i=0; i<4; i++) {var $option=$('#t' + (i + 1)).find('option:selected'),_timed=_history[i],$legend_i_color=$legends.filter('.t' + (i + 1)).css('background-color'),obj={title:$option.text(),fillColor:'transparent',pointColor:$legend_i_color,strokeColor:$legend_i_color,data:[]},data_value;if($option.length==0||$option.val()==='') {_history.splice(i,0,[]);continue;}l2=_timed.length;if(time_range_selected==='customizesearch') {var from_year=_this.fromDate.getFullYear(),to_year=_this.toDate.getFullYear(),diff_years=Math.abs(from_year - to_year),from_month=_this.fromDate.getMonth(),to_month=_this.toDate.getMonth(),diff_months=Math.abs(from_month - to_month);if(diff_years>=1) {if(diff_years>4) {time_range_selected='fifarankingcreation';}else if(diff_years===4) {time_range_selected='last4years';}else if(diff_years===1) {time_range_selected='lastyear';}}else if(diff_months>=1) {if(diff_months>4) {time_range_selected='lastyear';}else if(diff_months===4) {time_range_selected='last4months';}else {time_range_selected='lastmonth';}}else {time_range_selected='lastmonth';}}for (i2=0; i2(i2 + 1)) {var dtNext=new Date(Date.parse(_timed[i2 + 1].deliverydate.substring(0,10)));nextLabel=dtNext.getFullYear();;}if(time_range_selected==='fifarankingcreation'&&label!==nextLabel) {_labels.push(label);data_value=210 - _timed[i2].rankseq;fifa.log("DATA PUSH:i2:".concat(i2," label:",label," value:",data_value," raw value:",_timed[i2].rankseq));obj.data.push(data_value);}continue;}else {if(time_range_selected==='fifarankingcreation'&&(((i2 % 12!==0)&&!_isWomen)||((i2 % 6!==0)&&_isWomen))) { continue;}if(time_range_selected==='last4years'&&i2 % 4!==0) { continue;}data_value=210 - _timed[i2].rankseq;obj.data.push(data_value);}}fifa.log("data:",obj.data);fifa.log("_labels:",_labels);if(obj.data.length&&l2===max_length) {is_first=false;}_datasets.push(obj);}data.labels=_labels;data.datasets=_datasets.reverse();var _width=$chart.parents("div[class ^= 'col-xs-']").width();_ctx.attr('width',_width);_ctx.attr('height',300);fifa.dispatcher.trigger('chart:view:drawLines',data,_ctx[0].getContext("2d"),{bezierCurve:false,datasetFill:false,pointDot:true,maintainAspectRatio:false,showTooltips:true,scaleOverride:false,scaleShowLabels:true,scaleLabel:'<%=(210-value)<=0 ? "":(210-value) % 1>0 ? "":210-value%>',spaceTop:10,spaceBottom:10,legend:true,maxLegendCols:5,legendBlockSize:25,legendColorIndicatorStrokeWidth:2,legendSpaceBeforeText:5,legendSpaceLeftText:5,legendSpaceRightText:5,legendBorders:false,legendSpaceAfterText:5,legendSpaceBetweenBoxAndText:5,legendSpaceBetweenTextHorizontal:15,legendSpaceBetweenTextVertical:15,legendFontSize:15,annotateDisplay:true,annotateLabel:'<%=v2 + "
" + v1 + " #" +(210-v3)%>',annotatePadding:"8px"});},tabbedcontentViewOnTabLoaded:function(activeTab) {var el=$(activeTab).find(".compareteams");this.setElement(el);var _this=this;_this.initialize();},events:{"click #i_btnCompareTeams":"Calculate","change select#t1":"TeamSelectChange","change select#t2":"TeamSelectChange","change select#t3":"TeamSelectChange","change select#t4":"TeamSelectChange"},name:'rankingcompareteams:view'}),__ct_cfg={el:'.compareteams',bind:['core:reinit','core:ajaxDataRequire','core:ajaxReinit','ajaxRefresh','module:view:itemLoaded','compareTeams','rankingtools:view:invalidDate','rankingtools:view:validDate','rankingtools:view:dataUpdated','tabbedcontent:tabChange','tabbedcontent:view:tabLoaded']};w.views.rankingcompareteams=new rankingCompareTeamsView(__ct_cfg);}(window.jQuery||window.jm,window,document));;(function($,w,d) {var bestWorstRankingView=fifa.view.extend({$_teamHistoriesJSON:new Array(4),$_teamNames:new Array(4),$_detailTimeRangeSummary:null,$_overallRanking:null,$_overallRankingBest:null,$_overallRankingWorst:null,$_resultContainer:null,$_associationsBaseUrl:null,$_teamSelect:null,$_confedSelect:null,teamJSONLibPath:null,resultLibUrl:null,timedTeamHistories:new Array(),fromDate:null,toDate:null,assetsImg:'http://img.fifa.com',initialize:function(options) {var _this=this;fifa.view.prototype.initialize.apply(_this,[options]);_this.Init();},Init:function() {var _this=this;_this.teamJSONLibPath=_this.$el.attr("data-teamjsonlib");_this.resultLibUrl=_this.$el.attr("data-resultliburl");_this.$_associationsBaseUrl=_this.$el.attr("data-associations-url");_this.$_detailTimeRangeSummary=_this.$el.find(".detail-range-summary .table");_this.$_overallRankingBest=_this.$el.find(".overall-ranking .best");_this.$_overallRankingWorst=_this.$el.find(".overall-ranking .worst");_this.$_overallRanking=_this.$el.find(".overall-ranking");_this.$_resultContainer=_this.$el.find(".bestworstranking-result");_this.$_teamSelect=_this.$el.find("select#t1");_this.$_confedSelect=_this.$el.find("select#confed");if(!!_this.teamJSONLibPath) {_this.getTeamJSON(_this.$el.find("select#t1"),true);if(_this.$el.find("select#t1").val()!="") {_this.$_teamNames["t1"]=_this.$el.find("select#t1").find("option:selected").text();}}if((!_this.$_teamNames["t1"])||_this.$_teamNames["t1"]=="") {if(_this.$el.length>0&&_this.$el.hasClass("inpage")) {fifa.dispatcher.trigger('rankingtools:view:calculate',{ name:_this.name});}}},GetDomElements:function() {var _this=this;_this.$_detailTimeRangeSummary=_this.$el.find(".detail-range-summary .table");_this.$_overallRankingBest=_this.$el.find(".overall-ranking .best");_this.$_overallRankingWorst=_this.$el.find(".overall-ranking .worst");_this.$_overallRanking=_this.$el.find(".overall-ranking");},Calculate:function(e) {e.preventDefault();fifa.dispatcher.trigger('rankingtools:view:calculate',{ name:this.name});},onGetBestWorstRanking:function(teamsCountryCodes,confed,fromDate,toDate) {var _this=this;_this.fromDate=fromDate;_this.toDate=toDate;if(teamsCountryCodes.length>0) {var _summaryRows=new Array();_this.timedTeamHistories=new Array();var _countryCodeIndex=0;for (var i=1; i<=_this.$_teamHistoriesJSON.length; i++) {var _rowId="t" + i;if((_this.$_teamHistoriesJSON[_rowId])&&(_this.$_teamHistoriesJSON[_rowId]!="")) {var _history=_this.GetTimeRangeHistory(fromDate,toDate,_this.$_teamHistoriesJSON[_rowId]);_this.timedTeamHistories.push(_history);var _teamRow=_this.GetTimeRangeSummaryRow(_rowId,teamsCountryCodes[_countryCodeIndex++],_this.$_teamNames["t" + i],_history);_summaryRows.push(_teamRow);}}_this.DisplayTimeRangeSummaryRows(_summaryRows);_this.$_detailTimeRangeSummary.removeClass("hidden");_this.$_overallRanking.addClass("hidden");_this.AddDateRangeDisclaimer();}else if(confed!=""&&_this.resultLibUrl) {var _resUrl=_this.resultLibUrl.concat("?dataForm=true&fromDate=",_this.DateFormatForParameter(_this.fromDate),"&toDate=",_this.DateFormatForParameter(_this.toDate)).replace("[confed]",confed);$.get(_resUrl).done(function(data) {if(data.length>0) {_this.$_resultContainer.empty();_this.$_resultContainer.html(data);_this.GetDomElements();if(confed!="ALL") {_this.$el.find(".overall-ranking-title").html(confed.toUpperCase());}_this.AddDateRangeDisclaimer();}});}},DisplayTimeRangeSummaryRows:function(summaryRows) {var _this=this;var _rowMarkup="";var _rowTemplate="[1][2][3][4]";_rowTemplate=_rowTemplate.replaceAndFormat("{{flag}}","{{countrycode}}","{{getteam}}","{{bestranking}}","{{worstranking}}","{{malink}}");Mustache.parse(_rowTemplate);_this.summaryRows=summaryRows;_.each(summaryRows,function(row) {row.rowid=function() { return this.id;};row.flag=function() { return _this.assetsImg.concat("/images/flags/4/",this.teamcode,".png");};row.countrycode=function() { return this.teamcode;};row.getteam=function() { return this.teamName;};row.bestranking=function() { return this.bestRanking;};row.worstranking=function() { return this.worstRanking;};row.malink=function() { return _this.$_associationsBaseUrl.replace("[ma]",this.teamcode);};_rowMarkup += Mustache.render(_rowTemplate,row);});_this.$_detailTimeRangeSummary.find("tbody").empty();_this.$_detailTimeRangeSummary.find("tbody").append(_rowMarkup);_this.AddDateRangeDisclaimer();},AddDateRangeDisclaimer:function() {var _this=this;var _fromToText=fifa.vocManager.translate('fifa.fromTo');_fromToText=_fromToText.replace("{0}",_this.GetDateFormat(_this.fromDate,false));_fromToText=_fromToText.replace("{1}",_this.GetDateFormat(_this.toDate,false));_this.$el.find(".detail-range-summary-title .date-range-disclaimer").remove();_this.$el.find(".detail-range-summary-title").append("" + _fromToText + "");_this.$el.find(".overall-ranking-title .date-range-disclaimer").remove();_this.$el.find(".overall-ranking-title").append("" + _fromToText + "");},GetTimeRangeHistory:function(fromDate,toDate,history) {var _teamHistory=$.grep(history,function(element,index) {var _elementDate=new Date();_elementDate.setTime(Date.parse(element.deliverydate.substring(0,10)));return (_elementDate>=fromDate&&_elementDate<=toDate);});return _teamHistory;},GetTimeRangeSummaryRow:function(rowId,teamCountryCode,tName,teamHistory) {var _this=this;var _rowObj=null;var _noDataText=fifa.vocManager.translate('fifa.noDataForFilters');if(teamHistory.length>0) {var _bestRanking=_this.GetTeamBestRank(teamHistory);var _worstRanking=_this.GetTeamWorstRank(teamHistory);_rowObj={ id:rowId,teamcode:teamCountryCode,teamName:tName,bestRanking:_this.GetDateFormat(_bestRanking.deliverydate,true) + " - " + _bestRanking.rankseq,worstRanking:_this.GetDateFormat(_worstRanking.deliverydate,true) + " - " + _worstRanking.rankseq};}else {_rowObj={ id:rowId,teamcode:teamCountryCode,teamName:tName,bestRanking:_noDataText,worstRanking:_noDataText,rankingAvg:_noDataText};}return _rowObj;},GetDateFormat:function(strDate,abbreviation) {var _date=new Date();if(!strDate) {strDate="";}if(strDate.length>10) {strDate=strDate.substring(0,10);}_date.setTime(Date.parse(strDate));var _month=_date.GetMonthStr(abbreviation);var _dateformat=_month.concat(" ",_date.getFullYear().toString());return _dateformat;},GetTeamBestRank:function(teamHistory) {var _best=209; var _bestElement=null;for (var i in teamHistory) {if(teamHistory[i].rankseq<_best) {_best=teamHistory[i].rankseq;_bestElement=teamHistory[i];}}return _bestElement;},GetTeamWorstRank:function(teamHistory) {var _worst=0;var _worstElement=null;for (var i in teamHistory) {if(teamHistory[i].rankseq>_worst) {_worst=teamHistory[i].rankseq;_worstElement=teamHistory[i];}}return _worstElement;},TeamSelectChange:function(e) {var _this=this;_this.getTeamJSON(e.currentTarget,false);var _tid=_this.$_teamSelect.attr("id");var _team=_this.$_teamSelect.val();_this.$_teamNames[_tid]=_this.$_teamSelect.find("option:selected").text();if(_team!="") {_this.$_confedSelect.val("ALL");}},ConfedSelectChange:function(e) {var _this=this;var _confed=_this.$_confedSelect.val();_this.$_teamSelect.val("");},getTeamJSON:function(teamSelect,startCalculation) {var _this=this;var _team=$(teamSelect).val();var _tid=$(teamSelect).attr("id");if(!_this.teamJSONLibPath) { return;}if(_team=="") {_this.$_teamHistoriesJSON[_tid]="";return;}var _jsonlibraryPath=_this.teamJSONLibPath.replace("[ma]",_team);$.get(_jsonlibraryPath).done(function(data) {if(data.length>0) {_this.$_teamHistoriesJSON[_tid]=$.parseJSON(data);if(startCalculation) {fifa.dispatcher.trigger('rankingtools:view:calculate',{ name:_this.name});}}});},DateFormatForParameter:function(srcDate) {var _year=srcDate.getFullYear().toString();var _month=("00" + (srcDate.getMonth() + 1)).slice(-2);var _day=("00" + (srcDate.getDate())).slice(-2);return _year.concat("-",_month,"-",_day);},rankingtoolsViewOnInvalidDate:function(timeRangeDDL) {var _this=this;if(timeRangeDDL.parents(".ranking-tools").hasClass("bestworstranking")) {_this.$el.find('#i_btnBestWorstRanking').attr("disabled","true");}},rankingtoolsViewOnValidDate:function(timeRangeDDL) {var _this=this;if(timeRangeDDL.parents(".ranking-tools").hasClass("bestworstranking")) {_this.FormCheck();}},FormCheck:function() {var _this=this;_this.$el.find('#i_btnBestWorstRanking').removeAttr("disabled");},coreOnReinit:function() {var _this=this;_this.initialize();},events:{"click #i_btnBestWorstRanking":"Calculate","change select#t1":"TeamSelectChange","change select#confed":"ConfedSelectChange"},name:'bestworstranking:view'});w.views.bestworstranking=new bestWorstRankingView({el:'.bestworstranking',bind:['core:reinit','module:view:itemLoaded','getBestWorstRanking','rankingtools:view:invalidDate','rankingtools:view:validDate']});}(window.jQuery||window.jm,window,document));;(function($,w,d) {var bestWorstMoversView=fifa.view.extend({$_resultContainer:null,resultLibUrl:null,fromDate:null,toDate:null,assetsImg:'http://img.fifa.com',initialize:function(options) {var _this=this;fifa.view.prototype.initialize.apply(_this,[options]);_this.Init();},Init:function() {var _this=this;_this.resultLibUrl=_this.$el.attr("data-resultliburl");_this.$_resultContainer=_this.$el.find(".bestworstmovers-result-container");if(_this.$el.length>0&&_this.$el.hasClass("inpage")) {fifa.dispatcher.trigger('rankingtools:view:calculate',{ name:_this.name});}},Calculate:function(e) {e.preventDefault();fifa.dispatcher.trigger('rankingtools:view:calculate',{ name:this.name});},onGetBestWorstMovers:function(confed,fromDate,toDate,sorting) {var _this=this;_this.fromDate=fromDate;_this.toDate=toDate;var _resUrl=_this.resultLibUrl.concat("?dataForm=true&fromDate=",_this.DateFormatForParameter(_this.fromDate),"&toDate=",_this.DateFormatForParameter(_this.toDate),"&bestWorstSorting=",sorting).replace("[confed]",confed);$.get(_resUrl).done(function(data) {if(data.length>0) {_this.$_resultContainer.empty();_this.$_resultContainer.html(data);}});},GetDateFormat:function(strDate,abbreviation) {var _date=new Date();if(!strDate) {strDate="";}if(strDate.length>10) {strDate=strDate.substring(0,10);}_date.setTime(Date.parse(strDate));var _month=_date.GetMonthStr(abbreviation);var _dateformat=_month.concat(" ",_date.getFullYear().toString());return _dateformat;},DateFormatForParameter:function(srcDate) {var _year=srcDate.getFullYear().toString();var _month=("00" + (srcDate.getMonth() + 1)).slice(-2);var _day=("00" + (srcDate.getDate())).slice(-2);return _year.concat("-",_month,"-",_day);},rankingtoolsViewOnInvalidDate:function(timeRangeDDL) {var _this=this;if(timeRangeDDL.parents(".ranking-tools").hasClass("bestworstmovers")) {_this.$el.find('#i_btnBestWorstMovers').attr("disabled","true");}},rankingtoolsViewOnValidDate:function(timeRangeDDL) {var _this=this;if(timeRangeDDL.parents(".ranking-tools").hasClass("bestworstmovers")) {_this.FormCheck();}},FormCheck:function() {var _this=this;_this.$el.find('#i_btnBestWorstMovers').removeAttr("disabled");},coreOnReinit:function() {var _this=this;_this.initialize();},events:{"click #i_btnBestWorstMovers":"Calculate"},name:'bestworstmovers:view'});w.views.bestworstmovers=new bestWorstMoversView({el:'.bestworstmovers',bind:['core:reinit','module:view:itemLoaded','getBestWorstMovers','rankingtools:view:invalidDate','rankingtools:view:validDate']});}(window.jQuery||window.jm,window,document));;(function($,w,d) {var prognosisToolView=fifa.view.extend({$_prognosisObj:new Array(),$_associationsBaseUrl:null,assetsImg:'http://img.fifa.com',matchJSONUrl:'/common/fifa-world-ranking/ma={ma}/_ranking_matches.js',matchesJSON:new Array(),matchPointsJSONLib:'/common/fifa-world-ranking/_ranking_matchpoints_totals.js',matchPointsJSON:null,matchPoints:{},lang:"en",noMatchesCalculationDone:false,matchPointsLoaded:false,initialize:function(options) {var _this=this;fifa.view.prototype.initialize.apply(_this,[options]);_this.$_associationsBaseUrl=_this.$el.attr("data-associations-url");if(_this.matchPointsJSONLib!="") {$.get(_this.matchPointsJSONLib).done(function(data) {if(data.length>0) {_this.matchPointsJSON=$.parseJSON(data);for (var i in _this.matchPointsJSON) {var _mp=_this.matchPointsJSON[i];var _countryCode=_mp.countrycode;_this.matchPoints[_countryCode]=_mp;}}fifa.log("matchpoints loaded");_this.triggerMe('matchPointsLoaded');_this.matchPointsLoaded=true;_this.$el.each(function(e) {_this.Init($(this));});});}else {_this.$el.each(function(e) {_this.Init($(this));});}},onMatchPointsLoaded:function(e) {_this=this;fifa.log("ON MATCH POINTS LOADED");},Init:function($obj) {var _this=this;var _id=$obj.attr("id");var _prObj={id:_id,$_el:$obj,$_matchesContainer:$obj.find(".prognosis-matches .table tbody"),$_resultContainer:$obj.find(".prognosis-result table tbody"),$_teamSelect:$obj.find("select#t1"),$_teamNameText:$obj.find(".t .t-n .t-nText"),$_teamRank:$obj.find(".currentrank span"),$_teamFlag:$obj.find(".t .t-i .t-i-wrap img.flag"),$_teamLink:$obj.find(".prognosis-teaminfo a"),$_score:$obj.find(".prognosis-result .prognosis-score"),$_calculateBtn:$obj.find("#i_btnPrognosisTool")};_this.$_prognosisObj[_id]=_prObj;_this.LoadMatches(_id);},NoMatchCalculation:function(_id) {var _this=this;var _countryCode=_this.$_prognosisObj[_id].$_teamSelect.val();if(_this.$_prognosisObj[_id].$_el.find(".prognosis-matches .tbl-ranking tr").length>0) {fifa.log("Hide 1");_this.$_prognosisObj[_id].$_el.find(".prognosis-result").addClass("hidden");_this.$_prognosisObj[_id].$_calculateBtn.removeClass("hidden");_this.$_prognosisObj[_id].$_el.find("#i_btnPrognosisToolNewCalc").removeClass("hidden");return;}fifa.log("NO MATCH CALCULATION");fifa.log("_countryCode:",_countryCode);var _pointsYear234=0;var _pointsYear1=0;var _gamesYear1=0;var _currentRankPoints=0;if(!!_this.matchPoints[_countryCode]) {var _pointsYear234=_this.matchPoints[_countryCode].pointsyear234;var _pointsYear1=_this.matchPoints[_countryCode].pointsyear1;var _gamesYear1=_this.matchPoints[_countryCode].gamesyear1;var _currentRankPoints=_this.matchPoints[_countryCode].points;}var _factor=1;if((_gamesYear1)<5) {_factor=((_gamesYear1) / 5);}fifa.log("_pointsYear234:",_pointsYear234);fifa.log("_pointsYear1:",_pointsYear1);fifa.log("_gamesYear1:",_gamesYear1);fifa.log("_currentRankPoints:",_currentRankPoints);var _newRankingScore=Math.round(_pointsYear234 + ((_pointsYear1) / ((_gamesYear1)) * _factor));if(isNaN(_newRankingScore)) {_newRankingScore=Math.round(_pointsYear234 * _factor);}fifa.log("no match calculation done:",_newRankingScore);_this.$_prognosisObj[_id].$_el.find(".actualscore #score").html(_currentRankPoints);_this.$_prognosisObj[_id].$_el.find(".newscore #score").html(_newRankingScore);_this.$_prognosisObj[_id].$_el.find(".prognosis-result").removeClass("hidden");_this.$_prognosisObj[_id].$_el.find(".prognosis-matches").addClass("hidden");_this.$_prognosisObj[_id].$_resultContainer.parents(".prognosis-result .tbl-ranking").addClass("hidden");_this.$_prognosisObj[_id].$_calculateBtn.addClass("hidden");_this.$_prognosisObj[_id].$_el.find("#i_btnPrognosisToolNewCalc").addClass("hidden");_this.noMatchesCalculationDone=true;},Calculate:function(e) {e.preventDefault();var _this=this;w.fifa.dispatcher.trigger("analytics:customPageView",{ contenttype:"tool"});var _id=$(e.currentTarget).parents(".prognosis").attr("id");var _countryCode=_this.$_prognosisObj[_id].$_teamSelect.val();var _matchObj=null;var $matchRows=_this.$_prognosisObj[_id].$_el.find(".prognosis-match-row");var _rowTemplate="
{0}
{1}- {2}
{3}
{4}
";_rowTemplate += "{5}{6}{7}{8}{9}";_rowTemplate=_rowTemplate.replaceAndFormat("{{homeTeam}}","{{homeScore}}","{{awayScore}}","{{awayTeam}}","{{matchDate}}","{{points}}","{{pt_m}}","{{pt_i}}","{{pt_t}}","{{pt_c}}");Mustache.parse(_rowTemplate);_this.$_prognosisObj[_id].$_resultContainer.empty();var _newPoints=0;var _newMatchesCount=$matchRows.length;$matchRows.each(function() {var _idMatch=$(this).attr("data-matchid");var _partialCalc=$(this).attr("data-partial-calc");var _teamSide=$(this).attr("data-teamside");var _homeScrore=$(this).find("#hscore").val() - 0;var _awayScore=$(this).find("#ascore").val() - 0;var _m=0;var _mJSON=null; for (var i in _this.matchesJSON[_countryCode]) {var _mj=_this.matchesJSON[_countryCode][i];if(_mj.idmatch==_idMatch) {_mJSON=_mj;}}if(_teamSide=="home") {if(_homeScrore>_awayScore) {_m=3;}else if(_homeScrore<_awayScore) {_m=0;}else if(_homeScrore==_awayScore) {_m=1;}}else {if(_homeScrore>_awayScore) {_m=0;}else if(_homeScrore<_awayScore) {_m=3;}else if(_homeScrore==_awayScore) {_m=1;}}_resultObj={homeTeam:_mJSON.homecountrycode,homeScore:_homeScrore,awayScore:_awayScore,awayTeam:_mJSON.awaycountrycode,matchDate:_this.GetMatchDateFormat(_mJSON.matchdate),points:Math.round(_m * _partialCalc),pt_m:_m,pt_i:_mJSON.i,pt_t:_mJSON.t,pt_c:_mJSON.c};var _rowMarckup="";_rowMarckup=Mustache.render(_rowTemplate,_resultObj);_this.$_prognosisObj[_id].$_resultContainer.append(_rowMarckup);_this.$_prognosisObj[_id].$_resultContainer.parents(".prognosis-result").removeClass("hidden");_this.$_prognosisObj[_id].$_matchesContainer.parents(".prognosis-matches").addClass("hidden");_this.$_prognosisObj[_id].$_calculateBtn.addClass("hidden");_this.$_prognosisObj[_id].$_el.find(".prognosis-result").removeClass("hidden");_newPoints += Math.round(_m * _partialCalc);if($(this).is(':last-child')) {var _pointsYear234=0;var _pointsYear1=0;var _gamesYear1=0;var _currentRankPoints=0;if(!!_this.matchPoints[_countryCode]) {var _pointsYear234=_this.matchPoints[_countryCode].pointsyear234;var _pointsYear1=_this.matchPoints[_countryCode].pointsyear1;var _gamesYear1=_this.matchPoints[_countryCode].gamesyear1;var _currentRankPoints=_this.matchPoints[_countryCode].points;}var _factor=1;if((_gamesYear1 + _newMatchesCount)<5) {_factor=((_gamesYear1 + _newMatchesCount) / 5);}fifa.log("_pointsYear234:",_pointsYear234);fifa.log("_pointsYear1:",_pointsYear1);fifa.log("_newPoints:",_newPoints);fifa.log("_gamesYear1:",_gamesYear1);fifa.log("_newMatchesCount:",_newMatchesCount);fifa.log("_factor:",_factor);var _newRankingScore=Math.round(_pointsYear234 + ((_pointsYear1 + _newPoints) / ((_gamesYear1 + _newMatchesCount)) * _factor));var _newRankingPointsText=fifa.vocManager.translate('fifa.newRankingPoints');var _actualRankingPointsText=fifa.vocManager.translate('fifa.rankingCurrentPoints');_this.$_prognosisObj[_id].$_score.find(".actualscore #score").html(_currentRankPoints);_this.$_prognosisObj[_id].$_score.find(".newscore #score").html(_newRankingScore);}});_this.noMatchesCalculationDone=false;fifa.log("SHOW");_this.$_prognosisObj[_id].$_resultContainer.parents(".prognosis-result .tbl-ranking").removeClass("hidden");},ResetCalculation:function(e) {e.preventDefault();var _this=this;var _id=$(e.currentTarget).parents(".prognosis").attr("id");fifa.log("Hide 2");if(!_this.noMatchesCalculationDone) {_this.$_prognosisObj[_id].$_resultContainer.parents(".prognosis-result").addClass("hidden");}_this.$_prognosisObj[_id].$_matchesContainer.parents(".prognosis-matches").removeClass("hidden");_this.$_prognosisObj[_id].$_calculateBtn.removeClass("hidden");},TeamChange:function(e) {var _this=this;var _id=$(e.currentTarget).parents(".prognosis").attr("id");_this.LoadMatches(_id);var _countryCode=_this.$_prognosisObj[_id].$_teamSelect.val();if((!!_this.matchesJSON[_countryCode])&&(_this.matchesJSON[_countryCode].length>0)) {_this.ResetCalculation(e);}},LoadMatches:function(ptid) {var _this=this;fifa.log("LOAD MATCHES");var _countryCode=_this.$_prognosisObj[ptid].$_teamSelect.val();var _countryName=_this.$_prognosisObj[ptid].$_teamSelect.find("option:selected").text();var _countryRank=_this.$_prognosisObj[ptid].$_teamSelect.find("option:selected").attr("data-currentrank");_this.$_prognosisObj[ptid].$_teamNameText.html(_countryName);_this.$_prognosisObj[ptid].$_teamRank.html(_countryRank);_this.$_prognosisObj[ptid].$_teamLink.attr("href",_this.$_associationsBaseUrl.replace("[ma]",_countryCode));_this.$_prognosisObj[ptid].$_teamFlag.attr("src",_this.assetsImg + "/images/flags/2/" + _countryCode + ".png");_this.$_prognosisObj[ptid].$_teamFlag.attr("class",_countryCode + " i-2-flag flag");_this.$_prognosisObj[ptid].$_teamFlag.attr("alt",_countryName);var _matchJSONLib=_this.matchJSONUrl.replace("{ma}",_countryCode);fifa.log("_this.matchesJSON[_countryCode]",_this.matchesJSON[_countryCode]);if(!!_this.matchesJSON[_countryCode]) {_this.DisplayMatches(ptid,_countryCode);if(_this.matchesJSON[_countryCode].length>0) {_this.$_prognosisObj[ptid].$_calculateBtn.removeAttr("disabled");_this.$_prognosisObj[ptid].$_teamRank.find(".nomatches-text").remove();}else {_this.$_prognosisObj[ptid].$_calculateBtn.attr("disabled","true");var _noMatchesText=fifa.vocManager.translate('fifa.rk_nomatches');_this.$_prognosisObj[ptid].$_teamRank.append("
" + _noMatchesText + "
");}}else {$.get(_matchJSONLib).done(function(data) {if(data.length>0) {_this.matchesJSON[_countryCode]=$.parseJSON(data);_this.DisplayMatches(ptid,_countryCode);if(_this.matchesJSON[_countryCode].length>0) {_this.$_prognosisObj[ptid].$_calculateBtn.removeAttr("disabled");_this.$_prognosisObj[ptid].$_teamRank.find(".nomatches-text").remove();}else {_this.$_prognosisObj[ptid].$_calculateBtn.attr("disabled","true");var _noMatchesText=fifa.vocManager.translate('fifa.rk_nomatches');_this.$_prognosisObj[ptid].$_teamRank.append("
" + _noMatchesText + "
");}}});}},DisplayMatches:function(ptid,countryCode) {var _this=this;var _mjson=_this.matchesJSON[countryCode];var _rowMarkup="";var _rowTemplate="
{8}
:
{6}
";_rowTemplate=_rowTemplate.replaceAndFormat("{{matchid}}","{{partialCalculation}}","{{hometeam}}","{{awayteam}}","{{scoreHome}}","{{scoreAway}}","{{competition}}","{{teamSide}}","{{matchinfo}}");Mustache.parse(_rowTemplate);_.each(_mjson,function(row) {row.hometeam=function() { return this.homecountrycode;};row.awayteam=function() { return this.awaycountrycode;};row.matchid=function() { return this.idmatch;};row.competition=function() { return this.cupname;};row.scoreHome=function() { return this.scoreh;};row.scoreAway=function() { return this.scorea;};row.partialCalculation=function() {var partialCalc=this.i * this.t * this.c;return partialCalc;};row.teamSide=function() { return ((this.homecountrycode.toUpperCase().trim())==(countryCode.toUpperCase().trim())) ? "home":"away";};row.matchinfo=function() { return (_this.lang==='ar') ? this.awaycountrycode + " - " + this.homecountrycode:this.homecountrycode + " - " + this.awaycountrycode;};_rowMarkup += Mustache.render(_rowTemplate,row);});_this.$_prognosisObj[ptid].$_matchesContainer.html(_rowMarkup);_this.$_prognosisObj[ptid].$_matchesContainer.parents(".prognosis-matches").removeClass("hidden");_this.NoMatchCalculation(ptid);},CheckResultInputvalue:function(e) {var _input=$(e.currentTarget);var _originalValue=_input.attr("data-origvalue");var _value=_input.val().trim();if(isNaN(_value)||((_value - 0)<0)||!(_value % 1===0)||_value==="") {_input.val(_originalValue);}},GetDateFormat:function(strDate,abbreviation) {var _this=this;var _date=new Date();if(!strDate) {strDate="";}if(strDate.length>10) {strDate=strDate.substring(0,10);}_date.setTime(Date.parse(strDate));var _month=_date.GetMonthStr(abbreviation);var _dateformat=_month.concat(" ",_date.getFullYear().toString());return _dateformat;},GetMatchDateFormat:function(strDate) {var _this=this;var _date=new Date();var _strFlatDate=strDate;var _strHours="";if(_strFlatDate.length>10) {_strFlatDate=_strFlatDate.substring(0,10);}if(strDate.length>10) {_strHours=strDate.substring(10);_strHours=_strHours.substring(0,6).trim();}_date.setTime(Date.parse(_strFlatDate));var _day=_date.getDate();_day=("00" + _day.toString()).slice(-2);var _month=_date.GetMonthStr(true);var _dateformat="";_dateformat=_dateformat.concat(_day," ",_month," ",_date.getFullYear().toString());return _dateformat;},DateFormatForParameter:function(srcDate) {var _year=srcDate.getFullYear().toString();var _month=("00" + (srcDate.getMonth() + 1)).slice(-2);var _day=("00" + (srcDate.getDate())).slice(-2);return _year.concat("-",_month,"-",_day);},coreOnReinit:function() {var _this=this;this.setElement(__cfg.el);_this.initialize();},events:{"click #i_btnPrognosisTool":"Calculate","click #i_btnPrognosisToolNewCalc":"ResetCalculation","change select#t1":"TeamChange","change input#hscore":"CheckResultInputvalue","change input#ascore":"CheckResultInputvalue"},name:'prognosistool:view'}),__cfg={el:'.prognosis',bind:['core:reinit','module:view:itemLoaded','getBestWorstMovers','matchPointsLoaded']};w.views.prognosistool=new prognosisToolView(__cfg);}(window.jQuery||window.jm,window,document)); });