* * * * * * * * /**
** Created by IntelliJ IDEA.
** User: andy
** Date: 13/10/2011
** Time: 09:20
** To change this template use File | Settings | File Templates.
**/
var elite = {
* * * * cc : {
* * * * * * * * weapon : {
* * * * * * * * * * * * id : ""
* * * * * * * * }
* * * * },
* * versionNumber: '1.0',
* * domainName: "https://mobileapi.elite.callofduty.com/",
* * //domainName: 'https://mobileapi.elite.callofduty.com/',
* * * * assetURL: 'https://elite.callofduty.com',
* * remoteSessionId: null,
* * debugMode: false,
* * // Custom Class data
* * * * customClass : null,
* * * * selectedCustumClass : null,
* * * * selectedCustomClassID : 0,
* * * * selectedWeaponIndex : 0,
* * * * selectedWeaponType : 0,
* * * * selectedWeapon : 0,
* * * * customClassEdit : [],
* * * * customClassUpdated : null,
* * user: {
* * * * * * * * id : null,
* * * * career: {
* * * * * * * * * * * * username: null
* * * * * * * * }
* * },
* * prestigeCalculator: {},
* * touchListener: {},
* * refresh: false,
* * * * slideNav: null,
* * smartPhone: null,
* * loading: false,
* * clickMethod: 'touchend',
* * clickMethodStart: 'touchstart',
* * clickMethodMove: 'touchmove',
* * clickMethodEnd: 'touchend',
* * clickMethodCancel: 'touchcancel',
* * * * isTouching: false,
* * * * isMoving: false,
* * * * debug: false,
* * apiCache: null,
* * apiService: null,
* * pageCache: null,
* * * * selectedRecentMatchFilter: null,
* * // Primary key lookup table from API to Push
* * ccPrimaryKeysFromAPItoConsole : {
* * * * "frag_grenade" * * * * * * * * * * *: "frag_grenade_mp" * * * * * * ,
* * * * "semtex" * * * * * * * * * * * * * *: "semtex_mp" * * * * * * * * * ,
* * * * "throwingknife" * * * * * * * * * * : "throwingknife_mp" * * * * * *,
* * * * "bouncingbetty" * * * * * * * * * * : "bouncingbetty_mp" * * * * * *,
* * * * "claymore" * * * * * * * * * * * * *: "claymore_mp" * * * * * * * * ,
* * * * "c4" * * * * * * * * * * * * * * * *: "c4_mp" * * * * * * * * * * * ,
* * * * "flash_grenade" * * * * * * * * * * : "flash_grenade_mp" * * * * * *,
* * * * "concussion_grenade" * * * * * * * *: "concussion_grenade_mp" * * * ,
* * * * "scrambler" * * * * * * * * * * * * : "specialty_scrambler" * * * * ,
* * * * "emp_grenade" * * * * * * * * * * * : "emp_grenade_mp" * * * * * * *,
* * * * "smoke_grenade" * * * * * * * * * * : "smoke_grenade_mp" * * * * * *,
* * * * "trophy" * * * * * * * * * * * * * *: "trophy_mp" * * * * * * * * * ,
* * * * "tacticalinsertion" * * * * * * * * : "specialty_tacticalinsertion" ,
* * * * "portable_radar" * * * * * * * * * *: "specialty_portable_radar" * *,
* * * * "specialty_quickswap" * * * * * * * : "specialty_fastreload" * * * * *,
* * * * "specialty_fasterlockon" * * * * * *: "specialty_blindeye" * * * * *,
* * * * "specialty_paint_pro" * * * * * * * : "specialty_paint" * * * * * * ,
* * * * "specialty_fastmantle" * * * * * * *: "specialty_longersprint" * * *,
* * * * "specialty_extraammo" * * * * * * * : "specialty_scavenger" * * * * ,
* * * * "specialty_fastoffhand" * * * * * * : "specialty_quickdraw" * * * * ,
* * * * "specialty_stun_resistance" * * * * : "_specialty_blastshield" * * *,
* * * * "specialty_rollover" * * * * * * * *: "specialty_hardline" * * * * *,
* * * * "specialty_spygame" * * * * * * * * : "specialty_coldblooded" * * * ,
* * * * "specialty_overkillpro" * * * * * * : "specialty_twoprimaries" * * *,
* * * * "specialty_holdbreath" * * * * * * *: "specialty_autospot" * * * * *,
* * * * "specialty_delaymine" * * * * * * * : "specialty_stalker" * * * * * ,
* * * * "specialty_selectivehearing" * * * *: "specialty_detectexplosive" * ,
* * * * "specialty_fastsprintrecovery" * * *: "specialty_bulletaccuracy" * *,
* * * * "specialty_falldamage" * * * * * * *: "specialty_quieter" * * * * * ,
* * * * "specialty_paint_ks_pro" * * * * * *: "specialty_paint_ks" * * * * *,
* * * * "specialty_fastreload_ks_pro" * * * : "specialty_fastreload_ks" * * ,
* * * * "specialty_blindeye_ks_pro" * * * * : "specialty_blindeye_ks" * * * ,
* * * * "specialty_longersprint_ks_pro" * * : "specialty_longersprint_ks" * ,
* * * * "specialty_scavenger_ks_pro" * * * *: "specialty_scavenger_ks" * * *,
* * * * "specialty_quickdraw_ks_pro" * * * *: "specialty_quickdraw_ks" * * *,
* * * * "_specialty_blastshield_ks_pro" * * : "specialty_blastshield_ks" * *,
* * * * "specialty_hardline_ks_pro" * * * * : "specialty_hardline_ks" * * * ,
* * * * "specialty_coldblooded_ks_pro" * * *: "specialty_coldblooded_ks" * *,
* * * * "specialty_autospot_ks_pro" * * * * : "specialty_autospot_ks" * * * ,
* * * * "specialty_stalker_ks_pro" * * * * *: "specialty_stalker_ks" * * * *,
* * * * "specialty_detectexplosive_ks_pro" *: "specialty_detectexplosive_ks",
* * * * "specialty_bulletaccuracy_ks_pro" * : "specialty_bulletaccuracy_ks" ,
* * * * "specialty_quieter_ks_pro" * * * * *: "specialty_quieter_ks"
* * },
* * // Primary key lookup table from Console to API
* * ccPrimaryKeysFromConsoleToAPI : {
* * * * *"frag_grenade_mp" * * * * * * : "frag_grenade" * * * * * * * * * * ,
* * * * *"semtex_mp" * * * * * * * * * : "semtex" * * * * * * * * * * * * * ,
* * * * *"throwingknife_mp" * * * * * *: "throwingknife" * * * * * * * * * *,
* * * * *"bouncingbetty_mp" * * * * * *: "bouncingbetty" * * * * * * * * * *,
* * * * *"claymore_mp" * * * * * * * * : "claymore" * * * * * * * * * * * * ,
* * * * *"c4_mp" * * * * * * * * * * * : "c4" * * * * * * * * * * * * * * * ,
* * * * *"flash_grenade_mp" * * * * * *: "flash_grenade" * * * * * * * * * *,
* * * * *"concussion_grenade_mp" * * * : "concussion_grenade" * * * * * * * ,
* * * * *"specialty_scrambler" * * * * : "scrambler" * * * * * * * * * * * *,
* * * * *"emp_grenade_mp" * * * * * * *: "emp_grenade" * * * * * * * * * * *,
* * * * *"smoke_grenade_mp" * * * * * *: "smoke_grenade" * * * * * * * * * *,
* * * * *"trophy_mp" * * * * * * * * * : "trophy" * * * * * * * * * * * * * ,
* * * * *"specialty_tacticalinsertion" : "tacticalinsertion" * * * * * * * *,
* * * * *"specialty_portable_radar" * *: "portable_radar" * * * * * * * * * ,
* * * * *"specialty_fastreload" * * * *: "specialty_quickswap" * * * * * * *,
* * * * *"specialty_blindeye" * * * * *: "specialty_fasterlockon" * * * * * ,
* * * * *"specialty_paint" * * * * * * : "specialty_paint_pro" * * * * * * *,
* * * * *"specialty_longersprint" * * *: "specialty_fastmantle" * * * * * * ,
* * * * *"specialty_scavenger" * * * * : "specialty_extraammo" * * * * * * *,
* * * * *"specialty_quickdraw" * * * * : "specialty_fastoffhand" * * * * * *,
* * * * *"_specialty_blastshield" * * *: "specialty_stun_resistance" * * * *,
* * * * *"specialty_hardline" * * * * *: "specialty_rollover" * * * * * * * ,
* * * * *"specialty_coldblooded" * * * : "specialty_spygame" * * * * * * * *,
* * * * *"specialty_twoprimaries" * * *: "specialty_overkillpro" * * * * * *,
* * * * *"specialty_autospot" * * * * *: "specialty_holdbreath" * * * * * * ,
* * * * *"specialty_stalker" * * * * * : "specialty_delaymine" * * * * * * *,
* * * * *"specialty_detectexplosive" * : "specialty_selectivehearing" * * * ,
* * * * *"specialty_bulletaccuracy" * *: "specialty_fastsprintrecovery" * * ,
* * * * *"specialty_quieter" * * * * * : "specialty_falldamage" * * * * * * ,
* * * * *"specialty_paint_ks" * * * * *: "specialty_paint_ks_pro" * * * * * ,
* * * * *"specialty_fastreload_ks" * * : "specialty_fastreload_ks_pro" * * *,
* * * * *"specialty_blindeye_ks" * * * : "specialty_blindeye_ks_pro" * * * *,
* * * * *"specialty_longersprint_ks" * : "specialty_longersprint_ks_pro" * *,
* * * * *"specialty_scavenger_ks" * * *: "specialty_scavenger_ks_pro" * * * ,
* * * * *"specialty_quickdraw_ks" * * *: "specialty_quickdraw_ks_pro" * * * ,
* * * * *"specialty_blastshield_ks" * *: "_specialty_blastshield_ks_pro" * *,
* * * * *"specialty_hardline_ks" * * * : "specialty_hardline_ks_pro" * * * *,
* * * * *"specialty_coldblooded_ks" * *: "specialty_coldblooded_ks_pro" * * ,
* * * * *"specialty_autospot_ks" * * * : "specialty_autospot_ks_pro" * * * *,
* * * * *"specialty_stalker_ks" * * * *: "specialty_stalker_ks_pro" * * * * ,
* * * * *"specialty_detectexplosive_ks": "specialty_detectexplosive_ks_pro" ,
* * * * *"specialty_bulletaccuracy_ks" : "specialty_bulletaccuracy_ks_pro" *,
* * * * *"specialty_quieter_ks" * * * *: "specialty_quieter_ks_pro"
* * *},
* * // Primary key lookup table Streaks to Perks
* * ccPrimaryKeyStreaksToPerks : {
* * * * "specialty_paint_ks" * * * * * * * * : "specialty_paint" * * * * * * * *,
* * * * "specialty_fastreload_ks" * * * * * *: "specialty_fastreload" * * * * * ,
* * * * "specialty_blindeye_ks" * * * * * * *: "specialty_blindeye" * * * * * * ,
* * * * "specialty_longersprint_ks" * * * * *: "specialty_longersprint" * * * * ,
* * * * "specialty_scavenger_ks" * * * * * * : "specialty_scavenger" * * * * * *,
* * * * "specialty_quickdraw_ks" * * * * * * : "specialty_quickdraw" * * * * * *,
* * * * "_specialty_blastshield_ks" * * * * *: "_specialty_blastshield" * * * * ,
* * * * "specialty_hardline_ks" * * * * * * *: "specialty_coldblooded" * * * * *,
* * * * "specialty_coldblooded_ks" * * * * * : "specialty_coldblooded" * * * * *,
* * * * "specialty_autospot_ks" * * * * * * *: "specialty_autospot" * * * * * * ,
* * * * "specialty_stalker_ks" * * * * * * * : "specialty_stalker" * * * * * * *,
* * * * "specialty_detectexplosive_ks" * * * : "specialty_detectexplosive" * * *,
* * * * "specialty_bulletaccuracy_ks" * * * *: "specialty_bulletaccuracy" * * * ,
* * * * "specialty_quieter_ks" * * * * * * * : "specialty_quieter" * * * * * * *,
* * * * "specialty_paint_ks_pro" * * * * * * : "specialty_paint_pro" * * * * * *,
* * * * "specialty_fastreload_ks_pro" * * * *: "specialty_quickswap" * * * * * *,
* * * * "specialty_blindeye_ks_pro" * * * * *: "specialty_fasterlockon" * * * * ,
* * * * "specialty_longersprint_ks_pro" * * *: "specialty_fastmantle" * * * * * ,
* * * * "specialty_scavenger_ks_pro" * * * * : "specialty_extraammo" * * * * * *,
* * * * "specialty_quickdraw_ks_pro" * * * * : "specialty_fastoffhand" * * * * *,
* * * * "_specialty_blastshield_ks_pro" * * *: "specialty_stun_resistance" * * *,
* * * * "specialty_hardline_ks_pro" * * * * *: "specialty_rollover" * * * * * * ,
* * * * "specialty_coldblooded_ks_pro" * * * : "specialty_spygame" * * * * * * *,
* * * * "specialty_autospot_ks_pro" * * * * *: "specialty_holdbreath" * * * * * ,
* * * * "specialty_stalker_ks_pro" * * * * * : "specialty_delaymine" * * * * * *,
* * * * "specialty_detectexplosive_ks_pro" * : "specialty_selectivehearing" * * ,
* * * * "specialty_bulletaccuracy_ks_pro" * *: "specialty_fastsprintrecovery" * ,
* * * * "specialty_quieter_ks_pro" * * * * * : "specialty_falldamage"
* * },
* * init: function() {
* * * * elite.apiCache = new Cache(true);
* * * * elite.pageCache = new Cache();
* * * * elite.apiService = new ApiService();
* * * * //elite.apiCache.clearCache();
* * * * if (navigator.userAgent.match(/iPad/i)) {
* * * * * * $('meta[name="viewport"]'
.attr('content', 'width=device-width, initial-scale=2.133, maximum-scale=2.133, user-scalable=no'
;
* * * * * * $('body'
.css({backgroundColor: 'black'}).children('#content'
.css({left: '21px'});
* * * * }
* * * * elite.checkSmartPhone();
* * * * if (typeof(templateName) == 'undefined'
templateName='login.html';
* * * * elite.slideNav = new NavigationController($('.body'
, templateName);
* * * * elite.addTouchListener();
* * * * // Disable default webview scrolling
* * * * $('body'
.bind(elite.clickMethodMove, function(e) {
* * * * * * e.preventDefault();
* * * * * * return false;
* * * * });
* * * * $('live'
.bind(elite.clickMethodMove, function(e) {
* * * * * * e.preventDefault();
* * * * * * return false;
* * * * });
* * * * $('*'
.live(elite.clickMethod, function(e) {
* * * * * * if (elite.isMoving) {
* * * * * * * * elite.isMoving = false;
* * * * * * }
* * * * });
* * * * // Blur all input boxes on form submission to allow overlays over input elements
* * * * $('body'
.submit(function() {
* * * * * * * * $('body'
.find('input'
.blur();
* * * * * * * * return false;
* * * * });
* * * * * * * * // Challenges callback for tracking
* * },
* * addTouchListener: function(htmlData) {
* * * * $('*[data-nav-forward]'
.liveClick(function(e) {
* * * * * * if (elite.isMoving) return false;
* * * * * * $(this).addClass('selected'
;
* * * * * * var $clickEle = $(this);
* * * * * * var slideUp = $(this).hasClass('slideUp'
;
* * * * * * if (elite.slideNav.activeNavigation.activeController) elite.slideNav.activeNavigation.activeController.active = false;
* * * * * * if (slideUp) {
* * * * * * * * var doAction = elite.slideNav.slideUp($(this).attr('data-nav-forward'
, function() {
* * * * * * * * * * $clickEle.removeClass('selected'
;
* * * * * * * * });
* * * * * * * * if (doAction === false) $clickEle.removeClass('selected'
;
* * * * * * } else {
* * * * * * * * var doAction = elite.slideNav.activeNavigation.pushView($(this).attr('data-nav-forward'
, true, function() {
* * * * * * * * * * $clickEle.removeClass('selected'
;
* * * * * * * * });
* * * * * * * * if (doAction === false) $clickEle.removeClass('selected'
;
* * * * * * }
* * * * });
* * * * $('*[data-nav-backward]'
.liveClick(function(e) {
* * * * * * if (elite.isMoving) return false;
* * * * * *if (elite.slideNav.activeNavigation.activeController) *elite.slideNav.activeNavigation.activeController.active = false;
* * * * * * $(this).addClass('selected'
;
* * * * * * var $clickEle = $(this);
* * * * * * var doAction = elite.slideNav.activeNavigation.pushView($(this).attr('data-nav-backward'
, true, function() {
* * * * * * * * $clickEle.removeClass('selected'
;
* * * * * * }, true);
* * * * * * if (doAction === false) $clickEle.removeClass('selected'
;
* * * * });
* * },
* * * * showTermsOfServiceOverlay: function(forceLogOut) {
* * * * * * * * // @TODO: refactor ugly non DRY implementation used to evade loss*
* * * * * * * * // of execution context (variable scope) with overlayDialog
* * * * * * * * $('body'
.overlayDialog({
* * * * * * * * * * * * customclass: 'mask-overlay terms-of-service',
* * * * * * * * * * * * title: 'Terms of Service',
* * * * * * * * * * * * message: * * * *'Login Failed - You must visit elite.callofduty.com to accept the Terms of Service before you log in.',
* * * * * * * * * * * * buttons: {
* * * * * * * * * * * * * * * * 'Acknowledge': {
* * * * * * * * * * * * * * * * * * * * className: 'acknowledge',
* * * * * * * * * * * * * * * * * * * * action: function() {
* * * * * * * * * * * * * * * * * * * * * * * * *$('.mask-overlay'
.hide();
* * * * * * * * * * * * * * * * * * * * * * * * *var controller = new MainMenuController();
* * * * * * * * * * * * * * controller.url = 'login.html';
* * * * * * * * * * * * * * elite.slideNav.activeNavigation.setRootView(controller);
* * * * * * * * * * * * * * * * * * * * }
* * * * * * * * * * * * * * * * }
* * * * * * * * * * * * }
* * * * * * * * });
* * * * },
* * * **
* * * *
* * *isAndroid : (/android/gi).test(navigator.appVersion), * **
* * *isIDevice : (/iphone|ipad/gi).test(navigator.appVersion),
* * removeIconOnBackEvent : function(selector) {
* * * * $("body").bind("toolbar.back", function() {
* * * * * * $(selector).hide();
* * * * });
* * * * $(selector).show(); * **
* * },
* * checkSmartPhone: function() { * * * * * * *
* * * * $('html'
.addClass((this.isAndroid) ? 'android' : 'ios'
;
* * * * elite.isRetina = (window.devicePixelRatio > 1 ? true : false);
* * * * if (!elite.isAndroid && !elite.isIDevice) {
* * * * * * // this should be desktop
* * * * * * elite.debugMode = true;
* * * * * * elite.smartPhone = false;
* * * * * * elite.clickMethod = 'click';
* * * * * * elite.clickMethodStart = 'mousedown';
* * * * * * elite.clickMethodEnd = 'mouseup';
* * * * * * elite.clickMethodMove = 'mousemove';
* * * * * * elite.clickMethodCancel = 'mouseup';
* * * * } else {
* * * * * * elite.smartPhone = true;
* * * * }
* * * * return false;
* * },
* * showError: function(data) {
* * * * localStorage.setItem('errorMessage', JSON.stringify(data));
* * * * console.log(data);
* * * * document.location='error.html';
* * },
* * consumeApi: function(url, controller, postAnim, cache) {
* * * * elite.apiService.consume(url, controller, postAnim, cache);
* * },
* * getTimezone: function() {
* * * * tmSummer = new Date(Date.UTC(2005, 6, 30, 0, 0, 0, 0));
* * * * summerOffset = -1 * tmSummer.getTimezoneOffset();
* * * * tmWinter = new Date(Date.UTC(2005, 12, 30, 0, 0, 0, 0));
* * * * winterOffset = -1 * tmWinter.getTimezoneOffset();
* * * * var timezone = 'US/Pacific';
* * * * if (-660 == summerOffset && -660 == winterOffset) timezone='Pacific/Midway';
* * * * if (-600 == summerOffset && -600 == winterOffset) timezone='Pacific/Tahiti';
* * * * if (-570 == summerOffset && -570 == winterOffset) timezone='Pacific/Marquesas';
* * * * if (-540 == summerOffset && -600 == winterOffset) timezone='America/Adak';
* * * * if (-540 == summerOffset && -540 == winterOffset) timezone='Pacific/Gambier';
* * * * if (-480 == summerOffset && -540 == winterOffset) timezone='US/Alaska';
* * * * if (-480 == summerOffset && -480 == winterOffset) timezone='Pacific/Pitcairn';
* * * * if (-420 == summerOffset && -480 == winterOffset) timezone='US/Pacific';
* * * * if (-420 == summerOffset && -420 == winterOffset) timezone='US/Arizona';
* * * * if (-360 == summerOffset && -420 == winterOffset) timezone='US/Mountain';
* * * * if (-360 == summerOffset && -360 == winterOffset) timezone='America/Guatemala';
* * * * if (-360 == summerOffset && -300 == winterOffset) timezone='Pacific/Easter';
* * * * if (-300 == summerOffset && -360 == winterOffset) timezone='US/Central';
* * * * if (-300 == summerOffset && -300 == winterOffset) timezone='America/Bogota';
* * * * if (-240 == summerOffset && -300 == winterOffset) timezone='US/Eastern';
* * * * if (-240 == summerOffset && -240 == winterOffset) timezone='America/Caracas';
* * * * if (-240 == summerOffset && -180 == winterOffset) timezone='America/Santiago';
* * * * if (-180 == summerOffset && -240 == winterOffset) timezone='Canada/Atlantic';
* * * * if (-180 == summerOffset && -180 == winterOffset) timezone='America/Montevideo';
* * * * if (-180 == summerOffset && -120 == winterOffset) timezone='America/Sao_Paulo';
* * * * if (-150 == summerOffset && -210 == winterOffset) timezone='America/St_Johns';
* * * * if (-120 == summerOffset && -180 == winterOffset) timezone='America/Godthab';
* * * * if (-120 == summerOffset && -120 == winterOffset) timezone='America/Noronha';
* * * * if (-60 == summerOffset && -60 == winterOffset) timezone='Atlantic/Cape_Verde';
* * * * if (0 == summerOffset && -60 == winterOffset) timezone='Atlantic/Azores';
* * * * if (0 == summerOffset && 0 == winterOffset) timezone='Africa/Casablanca';
* * * * if (60 == summerOffset && 0 == winterOffset) timezone='Europe/London';
* * * * if (60 == summerOffset && 60 == winterOffset) timezone='Africa/Algiers';
* * * * if (60 == summerOffset && 120 == winterOffset) timezone='Africa/Windhoek';
* * * * if (120 == summerOffset && 60 == winterOffset) timezone='Europe/Amsterdam';
* * * * if (120 == summerOffset && 120 == winterOffset) timezone='Africa/Harare';
* * * * if (180 == summerOffset && 120 == winterOffset) timezone='Europe/Athens';
* * * * if (180 == summerOffset && 180 == winterOffset) timezone='Africa/Nairobi';
* * * * if (240 == summerOffset && 180 == winterOffset) timezone='Europe/Moscow';
* * * * if (240 == summerOffset && 240 == winterOffset) timezone='Asia/Dubai';
* * * * if (270 == summerOffset && 210 == winterOffset) timezone='Asia/Tehran';
* * * * if (270 == summerOffset && 270 == winterOffset) timezone='Asia/Kabul';
* * * * if (300 == summerOffset && 240 == winterOffset) timezone='Asia/Baku';
* * * * if (300 == summerOffset && 300 == winterOffset) timezone='Asia/Karachi';
* * * * if (330 == summerOffset && 330 == winterOffset) timezone='Asia/Calcutta';
* * * * if (345 == summerOffset && 345 == winterOffset) timezone='Asia/Katmandu';
* * * * if (360 == summerOffset && 300 == winterOffset) timezone='Asia/Yekaterinburg';
* * * * if (360 == summerOffset && 360 == winterOffset) timezone='Asia/Colombo';
* * * * if (390 == summerOffset && 390 == winterOffset) timezone='Asia/Rangoon';
* * * * if (420 == summerOffset && 360 == winterOffset) timezone='Asia/Almaty';
* * * * if (420 == summerOffset && 420 == winterOffset) timezone='Asia/Bangkok';
* * * * if (480 == summerOffset && 420 == winterOffset) timezone='Asia/Krasnoyarsk';
* * * * if (480 == summerOffset && 480 == winterOffset) timezone='Australia/Perth';
* * * * if (540 == summerOffset && 480 == winterOffset) timezone='Asia/Irkutsk';
* * * * if (540 == summerOffset && 540 == winterOffset) timezone='Asia/Tokyo';
* * * * if (570 == summerOffset && 570 == winterOffset) timezone='Australia/Darwin';
* * * * if (570 == summerOffset && 630 == winterOffset) timezone='Australia/Adelaide';
* * * * if (600 == summerOffset && 540 == winterOffset) timezone='Asia/Yakutsk';
* * * * if (600 == summerOffset && 600 == winterOffset) timezone='Australia/Brisbane';
* * * * if (600 == summerOffset && 660 == winterOffset) timezone='Australia/Sydney';
* * * * if (630 == summerOffset && 660 == winterOffset) timezone='Australia/Lord_Howe';
* * * * if (660 == summerOffset && 600 == winterOffset) timezone='Asia/Vladivostok';
* * * * if (660 == summerOffset && 660 == winterOffset) timezone='Pacific/Guadalcanal';
* * * * if (690 == summerOffset && 690 == winterOffset) timezone='Pacific/Norfolk';
* * * * if (720 == summerOffset && 660 == winterOffset) timezone='Asia/Magadan';
* * * * if (720 == summerOffset && 720 == winterOffset) timezone='Pacific/Fiji';
* * * * if (720 == summerOffset && 780 == winterOffset) timezone='Pacific/Auckland';
* * * * if (765 == summerOffset && 825 == winterOffset) timezone='Pacific/Chatham';
* * * * if (780 == summerOffset && 780 == winterOffset) timezone='Pacific/Enderbury';
* * * * if (840 == summerOffset && 840 == winterOffset) timezone='Pacific/Kiritimati';
* * * * return timezone;
* * },
* * processBasicApiResponse: function(data, ns) {
* * * * return;
* * * * if (typeof(ns) == 'undefined'
ns = '';
* * * * for (var item in data) {
* * * * * * if (typeof(data[item])=='object'
{
* * * * * * * * elite.processBasicApiResponse(data[item], ns+item+'_'
;
* * * * * * } else {
* * * * * * * * $('*[class*="response_'+ns+item+'"]'
.each(function() {
* * * * * * * * * * $(this).attr('class', $(this).attr('class'
.replace('{response_'+ns+item+'}', data[item]));
* * * * * * * * });
* * * * * * * * $('*[data-nav-forward*="response_'+ns+item+'"]'
.each(function() {
* * * * * * * * * * $(this).attr('data-nav-forward', $(this).attr('data-nav-forward'
.replace('{response_'+ns+item+'}', data[item]));
* * * * * * * * });
* * * * * * * * $('.response_'+ns+item).text(data[item]);
* * * * * * }
* * * * }
* * },
* * * * getNamefromDictionaryKey: function(dictionary, key) {
* * * * * * * * var dictionaryLen = dictionary.length,
* * * * * * * * * * * * dictionaryName = null;
* * * * * * * * for(j=0; j < dictionaryLen; j++) *{
* * * * * * * * * * * * if (dictionary[j].key == key) {
* * * * * * * * * * * * * * * * dictionaryName = dictionary[j].name;
* * * * * * * * * * * * }
* * * * * * * * }
* * * * * * * * return dictionaryName;
* * * * }, // end getNamefromDictionaryKey()
* * * * getDictionaryFromKey: function(dictionary, key) {
* * * * * * * * var dictionaryLen = dictionary.length,
* * * * * * * * * * * * dictionaryLevel = null;
* * * * * * * * for(j=0; j < dictionaryLen; j++) *{
* * * * * * * * * * * * if (dictionary[j].key == key) {
* * * * * * * * * * * * * * * * return dictionary[j];
* * * * * * * * * * * * }
* * * * * * * * }
* * * * * * * * return null;
* * * * }, // end getDictionaryFromKey()
* * cloneObject: function(source) {
* * * * for (i in source) {
* * * * * * if (typeof source[i] == 'source'
* * * * * * {
* * * * * * * * this[i] = new cloneObject(source[i]);
* * * * * * }
* * * * * * else
* * * * * * {
* * * * * * * * this[i] = source[i];
* * * * * * }
* * * * }
* * }
};
$(document).ready(function() {
* * elite.init();
});
$.fn.bindClick = function(fn)
{
* * return this.each(function() {
* * * * var obj = this;
* * * * $(this).bind(elite.clickMethodStart, function(e) {
* * * * * * if (elite.smartPhone) {
* * * * * * * * elite.touchListener.start = {
* * * * * * * * * * 'clientX': e.originalEvent.touches[0].clientX,
* * * * * * * * * * 'clientY': e.originalEvent.touches[0].clientY
* * * * * * * * };
* * * * * * } else {
* * * * * * }
* * * * }).bind(elite.clickMethod, function(e) {
* * * * * * //if (elite.loading == true) return false;
* * * * * * var radialDistance = 0;
* * * * * * if (elite.smartPhone) {
* * * * * * * * elite.touchListener.end = e.originalEvent.changedTouches[0];
* * * * * * * * radialDistance = Math.sqrt(
* * * * * * * * * * Math.pow(elite.touchListener.end.clientX - elite.touchListener.start.clientX, 2)
* * * * * * * * * * + Math.pow(elite.touchListener.end.clientY - elite.touchListener.start.clientY, 2)
* * * * * * * * );
* * * * * * * * //$('#debug'
.html(elite.touchListener.start.clientX+'<br />'+elite.touchListener.end.clientX+'<br />'+radialDistance);
* * * * * * }
* * * * * * try {
* * * * * * * * if (!elite.isMoving && radialDistance<30) {
* * * * * * * * * * fn.call(obj, e);
* * * * * * * * } else {
* * * * * * * * * * elite.isMoving = 0;
* * * * * * * * }
* * * * * * } catch (err) {
* * * * * * * * elite.error.fatalErrorDialog(err);
* * * * * * }
* * * * });
* * });
};
$.fn.liveClick = function(fn)
{
* * $(this).live(elite.clickMethodStart, function(e) {
* * * * if (elite.smartPhone) {
* * * * * * elite.touchListener.start = {
* * * * * * * * 'clientX': e.originalEvent.touches[0].clientX,
* * * * * * * * 'clientY': e.originalEvent.touches[0].clientY
* * * * * * };
* * * * } else {
* * * * }
* * }).live(elite.clickMethod, function(e) {
* * * * //if (elite.loading == true) return false;
* * * * var radialDistance = 0;
* * * * if (elite.smartPhone) {
* * * * * * elite.touchListener.end = e.originalEvent.changedTouches[0];
* * * * * * radialDistance = Math.sqrt(
* * * * * * * * Math.pow(elite.touchListener.end.clientX - elite.touchListener.start.clientX, 2)
* * * * * * * * + Math.pow(elite.touchListener.end.clientY - elite.touchListener.start.clientY, 2)
* * * * * * );
* * * * * * //$('#debug'
.html(elite.touchListener.start.clientX+'<br />'+elite.touchListener.end.clientX+'<br />'+radialDistance);
* * * * }
* * * * try {
* * * * * * if (!elite.isMoving && radialDistance<30) fn.call(this, e); else elite.isMoving = 0;
* * * * } catch (err) {
* * * * * * elite.error.fatalErrorDialog(err);
* * * * }
* * });
};
* * * * * * * * /**
** Created by IntelliJ IDEA.
** User: andy
** Date: 13/10/2011
** Time: 09:20
** To change this template use File | Settings | File Templates.
**/
var elite = {
* * * * cc : {
* * * * * * * * weapon : {
* * * * * * * * * * * * id : ""
* * * * * * * * }
* * * * },
* * versionNumber: '1.0',
* * domainName: "https://mobileapi.elite.callofduty.com/",
* * //domainName: 'https://mobileapi.elite.callofduty.com/',
* * * * assetURL: 'https://elite.callofduty.com',
* * remoteSessionId: null,
* * debugMode: false,
* * // Custom Class data
* * * * customClass : null,
* * * * selectedCustumClass : null,
* * * * selectedCustomClassID : 0,
* * * * selectedWeaponIndex : 0,
* * * * selectedWeaponType : 0,
* * * * selectedWeapon : 0,
* * * * customClassEdit : [],
* * * * customClassUpdated : null,
* * user: {
* * * * * * * * id : null,
* * * * career: {
* * * * * * * * * * * * username: null
* * * * * * * * }
* * },
* * prestigeCalculator: {},
* * touchListener: {},
* * refresh: false,
* * * * slideNav: null,
* * smartPhone: null,
* * loading: false,
* * clickMethod: 'touchend',
* * clickMethodStart: 'touchstart',
* * clickMethodMove: 'touchmove',
* * clickMethodEnd: 'touchend',
* * clickMethodCancel: 'touchcancel',
* * * * isTouching: false,
* * * * isMoving: false,
* * * * debug: false,
* * apiCache: null,
* * apiService: null,
* * pageCache: null,
* * * * selectedRecentMatchFilter: null,
* * // Primary key lookup table from API to Push
* * ccPrimaryKeysFromAPItoConsole : {
* * * * "frag_grenade" * * * * * * * * * * *: "frag_grenade_mp" * * * * * * ,
* * * * "semtex" * * * * * * * * * * * * * *: "semtex_mp" * * * * * * * * * ,
* * * * "throwingknife" * * * * * * * * * * : "throwingknife_mp" * * * * * *,
* * * * "bouncingbetty" * * * * * * * * * * : "bouncingbetty_mp" * * * * * *,
* * * * "claymore" * * * * * * * * * * * * *: "claymore_mp" * * * * * * * * ,
* * * * "c4" * * * * * * * * * * * * * * * *: "c4_mp" * * * * * * * * * * * ,
* * * * "flash_grenade" * * * * * * * * * * : "flash_grenade_mp" * * * * * *,
* * * * "concussion_grenade" * * * * * * * *: "concussion_grenade_mp" * * * ,
* * * * "scrambler" * * * * * * * * * * * * : "specialty_scrambler" * * * * ,
* * * * "emp_grenade" * * * * * * * * * * * : "emp_grenade_mp" * * * * * * *,
* * * * "smoke_grenade" * * * * * * * * * * : "smoke_grenade_mp" * * * * * *,
* * * * "trophy" * * * * * * * * * * * * * *: "trophy_mp" * * * * * * * * * ,
* * * * "tacticalinsertion" * * * * * * * * : "specialty_tacticalinsertion" ,
* * * * "portable_radar" * * * * * * * * * *: "specialty_portable_radar" * *,
* * * * "specialty_quickswap" * * * * * * * : "specialty_fastreload" * * * * *,
* * * * "specialty_fasterlockon" * * * * * *: "specialty_blindeye" * * * * *,
* * * * "specialty_paint_pro" * * * * * * * : "specialty_paint" * * * * * * ,
* * * * "specialty_fastmantle" * * * * * * *: "specialty_longersprint" * * *,
* * * * "specialty_extraammo" * * * * * * * : "specialty_scavenger" * * * * ,
* * * * "specialty_fastoffhand" * * * * * * : "specialty_quickdraw" * * * * ,
* * * * "specialty_stun_resistance" * * * * : "_specialty_blastshield" * * *,
* * * * "specialty_rollover" * * * * * * * *: "specialty_hardline" * * * * *,
* * * * "specialty_spygame" * * * * * * * * : "specialty_coldblooded" * * * ,
* * * * "specialty_overkillpro" * * * * * * : "specialty_twoprimaries" * * *,
* * * * "specialty_holdbreath" * * * * * * *: "specialty_autospot" * * * * *,
* * * * "specialty_delaymine" * * * * * * * : "specialty_stalker" * * * * * ,
* * * * "specialty_selectivehearing" * * * *: "specialty_detectexplosive" * ,
* * * * "specialty_fastsprintrecovery" * * *: "specialty_bulletaccuracy" * *,
* * * * "specialty_falldamage" * * * * * * *: "specialty_quieter" * * * * * ,
* * * * "specialty_paint_ks_pro" * * * * * *: "specialty_paint_ks" * * * * *,
* * * * "specialty_fastreload_ks_pro" * * * : "specialty_fastreload_ks" * * ,
* * * * "specialty_blindeye_ks_pro" * * * * : "specialty_blindeye_ks" * * * ,
* * * * "specialty_longersprint_ks_pro" * * : "specialty_longersprint_ks" * ,
* * * * "specialty_scavenger_ks_pro" * * * *: "specialty_scavenger_ks" * * *,
* * * * "specialty_quickdraw_ks_pro" * * * *: "specialty_quickdraw_ks" * * *,
* * * * "_specialty_blastshield_ks_pro" * * : "specialty_blastshield_ks" * *,
* * * * "specialty_hardline_ks_pro" * * * * : "specialty_hardline_ks" * * * ,
* * * * "specialty_coldblooded_ks_pro" * * *: "specialty_coldblooded_ks" * *,
* * * * "specialty_autospot_ks_pro" * * * * : "specialty_autospot_ks" * * * ,
* * * * "specialty_stalker_ks_pro" * * * * *: "specialty_stalker_ks" * * * *,
* * * * "specialty_detectexplosive_ks_pro" *: "specialty_detectexplosive_ks",
* * * * "specialty_bulletaccuracy_ks_pro" * : "specialty_bulletaccuracy_ks" ,
* * * * "specialty_quieter_ks_pro" * * * * *: "specialty_quieter_ks"
* * },
* * // Primary key lookup table from Console to API
* * ccPrimaryKeysFromConsoleToAPI : {
* * * * *"frag_grenade_mp" * * * * * * : "frag_grenade" * * * * * * * * * * ,
* * * * *"semtex_mp" * * * * * * * * * : "semtex" * * * * * * * * * * * * * ,
* * * * *"throwingknife_mp" * * * * * *: "throwingknife" * * * * * * * * * *,
* * * * *"bouncingbetty_mp" * * * * * *: "bouncingbetty" * * * * * * * * * *,
* * * * *"claymore_mp" * * * * * * * * : "claymore" * * * * * * * * * * * * ,
* * * * *"c4_mp" * * * * * * * * * * * : "c4" * * * * * * * * * * * * * * * ,
* * * * *"flash_grenade_mp" * * * * * *: "flash_grenade" * * * * * * * * * *,
* * * * *"concussion_grenade_mp" * * * : "concussion_grenade" * * * * * * * ,
* * * * *"specialty_scrambler" * * * * : "scrambler" * * * * * * * * * * * *,
* * * * *"emp_grenade_mp" * * * * * * *: "emp_grenade" * * * * * * * * * * *,
* * * * *"smoke_grenade_mp" * * * * * *: "smoke_grenade" * * * * * * * * * *,
* * * * *"trophy_mp" * * * * * * * * * : "trophy" * * * * * * * * * * * * * ,
* * * * *"specialty_tacticalinsertion" : "tacticalinsertion" * * * * * * * *,
* * * * *"specialty_portable_radar" * *: "portable_radar" * * * * * * * * * ,
* * * * *"specialty_fastreload" * * * *: "specialty_quickswap" * * * * * * *,
* * * * *"specialty_blindeye" * * * * *: "specialty_fasterlockon" * * * * * ,
* * * * *"specialty_paint" * * * * * * : "specialty_paint_pro" * * * * * * *,
* * * * *"specialty_longersprint" * * *: "specialty_fastmantle" * * * * * * ,
* * * * *"specialty_scavenger" * * * * : "specialty_extraammo" * * * * * * *,
* * * * *"specialty_quickdraw" * * * * : "specialty_fastoffhand" * * * * * *,
* * * * *"_specialty_blastshield" * * *: "specialty_stun_resistance" * * * *,
* * * * *"specialty_hardline" * * * * *: "specialty_rollover" * * * * * * * ,
* * * * *"specialty_coldblooded" * * * : "specialty_spygame" * * * * * * * *,
* * * * *"specialty_twoprimaries" * * *: "specialty_overkillpro" * * * * * *,
* * * * *"specialty_autospot" * * * * *: "specialty_holdbreath" * * * * * * ,
* * * * *"specialty_stalker" * * * * * : "specialty_delaymine" * * * * * * *,
* * * * *"specialty_detectexplosive" * : "specialty_selectivehearing" * * * ,
* * * * *"specialty_bulletaccuracy" * *: "specialty_fastsprintrecovery" * * ,
* * * * *"specialty_quieter" * * * * * : "specialty_falldamage" * * * * * * ,
* * * * *"specialty_paint_ks" * * * * *: "specialty_paint_ks_pro" * * * * * ,
* * * * *"specialty_fastreload_ks" * * : "specialty_fastreload_ks_pro" * * *,
* * * * *"specialty_blindeye_ks" * * * : "specialty_blindeye_ks_pro" * * * *,
* * * * *"specialty_longersprint_ks" * : "specialty_longersprint_ks_pro" * *,
* * * * *"specialty_scavenger_ks" * * *: "specialty_scavenger_ks_pro" * * * ,
* * * * *"specialty_quickdraw_ks" * * *: "specialty_quickdraw_ks_pro" * * * ,
* * * * *"specialty_blastshield_ks" * *: "_specialty_blastshield_ks_pro" * *,
* * * * *"specialty_hardline_ks" * * * : "specialty_hardline_ks_pro" * * * *,
* * * * *"specialty_coldblooded_ks" * *: "specialty_coldblooded_ks_pro" * * ,
* * * * *"specialty_autospot_ks" * * * : "specialty_autospot_ks_pro" * * * *,
* * * * *"specialty_stalker_ks" * * * *: "specialty_stalker_ks_pro" * * * * ,
* * * * *"specialty_detectexplosive_ks": "specialty_detectexplosive_ks_pro" ,
* * * * *"specialty_bulletaccuracy_ks" : "specialty_bulletaccuracy_ks_pro" *,
* * * * *"specialty_quieter_ks" * * * *: "specialty_quieter_ks_pro"
* * *},
* * // Primary key lookup table Streaks to Perks
* * ccPrimaryKeyStreaksToPerks : {
* * * * "specialty_paint_ks" * * * * * * * * : "specialty_paint" * * * * * * * *,
* * * * "specialty_fastreload_ks" * * * * * *: "specialty_fastreload" * * * * * ,
* * * * "specialty_blindeye_ks" * * * * * * *: "specialty_blindeye" * * * * * * ,
* * * * "specialty_longersprint_ks" * * * * *: "specialty_longersprint" * * * * ,
* * * * "specialty_scavenger_ks" * * * * * * : "specialty_scavenger" * * * * * *,
* * * * "specialty_quickdraw_ks" * * * * * * : "specialty_quickdraw" * * * * * *,
* * * * "_specialty_blastshield_ks" * * * * *: "_specialty_blastshield" * * * * ,
* * * * "specialty_hardline_ks" * * * * * * *: "specialty_coldblooded" * * * * *,
* * * * "specialty_coldblooded_ks" * * * * * : "specialty_coldblooded" * * * * *,
* * * * "specialty_autospot_ks" * * * * * * *: "specialty_autospot" * * * * * * ,
* * * * "specialty_stalker_ks" * * * * * * * : "specialty_stalker" * * * * * * *,
* * * * "specialty_detectexplosive_ks" * * * : "specialty_detectexplosive" * * *,
* * * * "specialty_bulletaccuracy_ks" * * * *: "specialty_bulletaccuracy" * * * ,
* * * * "specialty_quieter_ks" * * * * * * * : "specialty_quieter" * * * * * * *,
* * * * "specialty_paint_ks_pro" * * * * * * : "specialty_paint_pro" * * * * * *,
* * * * "specialty_fastreload_ks_pro" * * * *: "specialty_quickswap" * * * * * *,
* * * * "specialty_blindeye_ks_pro" * * * * *: "specialty_fasterlockon" * * * * ,
* * * * "specialty_longersprint_ks_pro" * * *: "specialty_fastmantle" * * * * * ,
* * * * "specialty_scavenger_ks_pro" * * * * : "specialty_extraammo" * * * * * *,
* * * * "specialty_quickdraw_ks_pro" * * * * : "specialty_fastoffhand" * * * * *,
* * * * "_specialty_blastshield_ks_pro" * * *: "specialty_stun_resistance" * * *,
* * * * "specialty_hardline_ks_pro" * * * * *: "specialty_rollover" * * * * * * ,
* * * * "specialty_coldblooded_ks_pro" * * * : "specialty_spygame" * * * * * * *,
* * * * "specialty_autospot_ks_pro" * * * * *: "specialty_holdbreath" * * * * * ,
* * * * "specialty_stalker_ks_pro" * * * * * : "specialty_delaymine" * * * * * *,
* * * * "specialty_detectexplosive_ks_pro" * : "specialty_selectivehearing" * * ,
* * * * "specialty_bulletaccuracy_ks_pro" * *: "specialty_fastsprintrecovery" * ,
* * * * "specialty_quieter_ks_pro" * * * * * : "specialty_falldamage"
* * },
* * init: function() {
* * * * elite.apiCache = new Cache(true);
* * * * elite.pageCache = new Cache();
* * * * elite.apiService = new ApiService();
* * * * //elite.apiCache.clearCache();
* * * * if (navigator.userAgent.match(/iPad/i)) {
* * * * * * $('meta[name="viewport"]'
.attr('content', 'width=device-width, initial-scale=2.133, maximum-scale=2.133, user-scalable=no'
;
* * * * * * $('body'
.css({backgroundColor: 'black'}).children('#content'
.css({left: '21px'});
* * * * }
* * * * elite.checkSmartPhone();
* * * * if (typeof(templateName) == 'undefined'
templateName='login.html';
* * * * elite.slideNav = new NavigationController($('.body'
, templateName);
* * * * elite.addTouchListener();
* * * * // Disable default webview scrolling
* * * * $('body'
.bind(elite.clickMethodMove, function(e) {
* * * * * * e.preventDefault();
* * * * * * return false;
* * * * });
* * * * $('live'
.bind(elite.clickMethodMove, function(e) {
* * * * * * e.preventDefault();
* * * * * * return false;
* * * * });
* * * * $('*'
.live(elite.clickMethod, function(e) {
* * * * * * if (elite.isMoving) {
* * * * * * * * elite.isMoving = false;
* * * * * * }
* * * * });
* * * * // Blur all input boxes on form submission to allow overlays over input elements
* * * * $('body'
.submit(function() {
* * * * * * * * $('body'
.find('input'
.blur();
* * * * * * * * return false;
* * * * });
* * * * * * * * // Challenges callback for tracking
* * },
* * addTouchListener: function(htmlData) {
* * * * $('*[data-nav-forward]'
.liveClick(function(e) {
* * * * * * if (elite.isMoving) return false;
* * * * * * $(this).addClass('selected'
;
* * * * * * var $clickEle = $(this);
* * * * * * var slideUp = $(this).hasClass('slideUp'
;
* * * * * * if (elite.slideNav.activeNavigation.activeController) elite.slideNav.activeNavigation.activeController.active = false;
* * * * * * if (slideUp) {
* * * * * * * * var doAction = elite.slideNav.slideUp($(this).attr('data-nav-forward'
, function() {
* * * * * * * * * * $clickEle.removeClass('selected'
;
* * * * * * * * });
* * * * * * * * if (doAction === false) $clickEle.removeClass('selected'
;
* * * * * * } else {
* * * * * * * * var doAction = elite.slideNav.activeNavigation.pushView($(this).attr('data-nav-forward'
, true, function() {
* * * * * * * * * * $clickEle.removeClass('selected'
;
* * * * * * * * });
* * * * * * * * if (doAction === false) $clickEle.removeClass('selected'
;
* * * * * * }
* * * * });
* * * * $('*[data-nav-backward]'
.liveClick(function(e) {
* * * * * * if (elite.isMoving) return false;
* * * * * *if (elite.slideNav.activeNavigation.activeController) *elite.slideNav.activeNavigation.activeController.active = false;
* * * * * * $(this).addClass('selected'
;
* * * * * * var $clickEle = $(this);
* * * * * * var doAction = elite.slideNav.activeNavigation.pushView($(this).attr('data-nav-backward'
, true, function() {
* * * * * * * * $clickEle.removeClass('selected'
;
* * * * * * }, true);
* * * * * * if (doAction === false) $clickEle.removeClass('selected'
;
* * * * });
* * },
* * * * showTermsOfServiceOverlay: function(forceLogOut) {
* * * * * * * * // @TODO: refactor ugly non DRY implementation used to evade loss*
* * * * * * * * // of execution context (variable scope) with overlayDialog
* * * * * * * * $('body'
.overlayDialog({
* * * * * * * * * * * * customclass: 'mask-overlay terms-of-service',
* * * * * * * * * * * * title: 'Terms of Service',
* * * * * * * * * * * * message: * * * *'Login Failed - You must visit elite.callofduty.com to accept the Terms of Service before you log in.',
* * * * * * * * * * * * buttons: {
* * * * * * * * * * * * * * * * 'Acknowledge': {
* * * * * * * * * * * * * * * * * * * * className: 'acknowledge',
* * * * * * * * * * * * * * * * * * * * action: function() {
* * * * * * * * * * * * * * * * * * * * * * * * *$('.mask-overlay'
.hide();
* * * * * * * * * * * * * * * * * * * * * * * * *var controller = new MainMenuController();
* * * * * * * * * * * * * * controller.url = 'login.html';
* * * * * * * * * * * * * * elite.slideNav.activeNavigation.setRootView(controller);
* * * * * * * * * * * * * * * * * * * * }
* * * * * * * * * * * * * * * * }
* * * * * * * * * * * * }
* * * * * * * * });
* * * * },
* * * **
* * * *
* * *isAndroid : (/android/gi).test(navigator.appVersion), * **
* * *isIDevice : (/iphone|ipad/gi).test(navigator.appVersion),
* * removeIconOnBackEvent : function(selector) {
* * * * $("body").bind("toolbar.back", function() {
* * * * * * $(selector).hide();
* * * * });
* * * * $(selector).show(); * **
* * },
* * checkSmartPhone: function() { * * * * * * *
* * * * $('html'
.addClass((this.isAndroid) ? 'android' : 'ios'
;
* * * * elite.isRetina = (window.devicePixelRatio > 1 ? true : false);
* * * * if (!elite.isAndroid && !elite.isIDevice) {
* * * * * * // this should be desktop
* * * * * * elite.debugMode = true;
* * * * * * elite.smartPhone = false;
* * * * * * elite.clickMethod = 'click';
* * * * * * elite.clickMethodStart = 'mousedown';
* * * * * * elite.clickMethodEnd = 'mouseup';
* * * * * * elite.clickMethodMove = 'mousemove';
* * * * * * elite.clickMethodCancel = 'mouseup';
* * * * } else {
* * * * * * elite.smartPhone = true;
* * * * }
* * * * return false;
* * },
* * showError: function(data) {
* * * * localStorage.setItem('errorMessage', JSON.stringify(data));
* * * * console.log(data);
* * * * document.location='error.html';
* * },
* * consumeApi: function(url, controller, postAnim, cache) {
* * * * elite.apiService.consume(url, controller, postAnim, cache);
* * },
* * getTimezone: function() {
* * * * tmSummer = new Date(Date.UTC(2005, 6, 30, 0, 0, 0, 0));
* * * * summerOffset = -1 * tmSummer.getTimezoneOffset();
* * * * tmWinter = new Date(Date.UTC(2005, 12, 30, 0, 0, 0, 0));
* * * * winterOffset = -1 * tmWinter.getTimezoneOffset();
* * * * var timezone = 'US/Pacific';
* * * * if (-660 == summerOffset && -660 == winterOffset) timezone='Pacific/Midway';
* * * * if (-600 == summerOffset && -600 == winterOffset) timezone='Pacific/Tahiti';
* * * * if (-570 == summerOffset && -570 == winterOffset) timezone='Pacific/Marquesas';
* * * * if (-540 == summerOffset && -600 == winterOffset) timezone='America/Adak';
* * * * if (-540 == summerOffset && -540 == winterOffset) timezone='Pacific/Gambier';
* * * * if (-480 == summerOffset && -540 == winterOffset) timezone='US/Alaska';
* * * * if (-480 == summerOffset && -480 == winterOffset) timezone='Pacific/Pitcairn';
* * * * if (-420 == summerOffset && -480 == winterOffset) timezone='US/Pacific';
* * * * if (-420 == summerOffset && -420 == winterOffset) timezone='US/Arizona';
* * * * if (-360 == summerOffset && -420 == winterOffset) timezone='US/Mountain';
* * * * if (-360 == summerOffset && -360 == winterOffset) timezone='America/Guatemala';
* * * * if (-360 == summerOffset && -300 == winterOffset) timezone='Pacific/Easter';
* * * * if (-300 == summerOffset && -360 == winterOffset) timezone='US/Central';
* * * * if (-300 == summerOffset && -300 == winterOffset) timezone='America/Bogota';
* * * * if (-240 == summerOffset && -300 == winterOffset) timezone='US/Eastern';
* * * * if (-240 == summerOffset && -240 == winterOffset) timezone='America/Caracas';
* * * * if (-240 == summerOffset && -180 == winterOffset) timezone='America/Santiago';
* * * * if (-180 == summerOffset && -240 == winterOffset) timezone='Canada/Atlantic';
* * * * if (-180 == summerOffset && -180 == winterOffset) timezone='America/Montevideo';
* * * * if (-180 == summerOffset && -120 == winterOffset) timezone='America/Sao_Paulo';
* * * * if (-150 == summerOffset && -210 == winterOffset) timezone='America/St_Johns';
* * * * if (-120 == summerOffset && -180 == winterOffset) timezone='America/Godthab';
* * * * if (-120 == summerOffset && -120 == winterOffset) timezone='America/Noronha';
* * * * if (-60 == summerOffset && -60 == winterOffset) timezone='Atlantic/Cape_Verde';
* * * * if (0 == summerOffset && -60 == winterOffset) timezone='Atlantic/Azores';
* * * * if (0 == summerOffset && 0 == winterOffset) timezone='Africa/Casablanca';
* * * * if (60 == summerOffset && 0 == winterOffset) timezone='Europe/London';
* * * * if (60 == summerOffset && 60 == winterOffset) timezone='Africa/Algiers';
* * * * if (60 == summerOffset && 120 == winterOffset) timezone='Africa/Windhoek';
* * * * if (120 == summerOffset && 60 == winterOffset) timezone='Europe/Amsterdam';
* * * * if (120 == summerOffset && 120 == winterOffset) timezone='Africa/Harare';
* * * * if (180 == summerOffset && 120 == winterOffset) timezone='Europe/Athens';
* * * * if (180 == summerOffset && 180 == winterOffset) timezone='Africa/Nairobi';
* * * * if (240 == summerOffset && 180 == winterOffset) timezone='Europe/Moscow';
* * * * if (240 == summerOffset && 240 == winterOffset) timezone='Asia/Dubai';
* * * * if (270 == summerOffset && 210 == winterOffset) timezone='Asia/Tehran';
* * * * if (270 == summerOffset && 270 == winterOffset) timezone='Asia/Kabul';
* * * * if (300 == summerOffset && 240 == winterOffset) timezone='Asia/Baku';
* * * * if (300 == summerOffset && 300 == winterOffset) timezone='Asia/Karachi';
* * * * if (330 == summerOffset && 330 == winterOffset) timezone='Asia/Calcutta';
* * * * if (345 == summerOffset && 345 == winterOffset) timezone='Asia/Katmandu';
* * * * if (360 == summerOffset && 300 == winterOffset) timezone='Asia/Yekaterinburg';
* * * * if (360 == summerOffset && 360 == winterOffset) timezone='Asia/Colombo';
* * * * if (390 == summerOffset && 390 == winterOffset) timezone='Asia/Rangoon';
* * * * if (420 == summerOffset && 360 == winterOffset) timezone='Asia/Almaty';
* * * * if (420 == summerOffset && 420 == winterOffset) timezone='Asia/Bangkok';
* * * * if (480 == summerOffset && 420 == winterOffset) timezone='Asia/Krasnoyarsk';
* * * * if (480 == summerOffset && 480 == winterOffset) timezone='Australia/Perth';
* * * * if (540 == summerOffset && 480 == winterOffset) timezone='Asia/Irkutsk';
* * * * if (540 == summerOffset && 540 == winterOffset) timezone='Asia/Tokyo';
* * * * if (570 == summerOffset && 570 == winterOffset) timezone='Australia/Darwin';
* * * * if (570 == summerOffset && 630 == winterOffset) timezone='Australia/Adelaide';
* * * * if (600 == summerOffset && 540 == winterOffset) timezone='Asia/Yakutsk';
* * * * if (600 == summerOffset && 600 == winterOffset) timezone='Australia/Brisbane';
* * * * if (600 == summerOffset && 660 == winterOffset) timezone='Australia/Sydney';
* * * * if (630 == summerOffset && 660 == winterOffset) timezone='Australia/Lord_Howe';
* * * * if (660 == summerOffset && 600 == winterOffset) timezone='Asia/Vladivostok';
* * * * if (660 == summerOffset && 660 == winterOffset) timezone='Pacific/Guadalcanal';
* * * * if (690 == summerOffset && 690 == winterOffset) timezone='Pacific/Norfolk';
* * * * if (720 == summerOffset && 660 == winterOffset) timezone='Asia/Magadan';
* * * * if (720 == summerOffset && 720 == winterOffset) timezone='Pacific/Fiji';
* * * * if (720 == summerOffset && 780 == winterOffset) timezone='Pacific/Auckland';
* * * * if (765 == summerOffset && 825 == winterOffset) timezone='Pacific/Chatham';
* * * * if (780 == summerOffset && 780 == winterOffset) timezone='Pacific/Enderbury';
* * * * if (840 == summerOffset && 840 == winterOffset) timezone='Pacific/Kiritimati';
* * * * return timezone;
* * },
* * processBasicApiResponse: function(data, ns) {
* * * * return;
* * * * if (typeof(ns) == 'undefined'
ns = '';
* * * * for (var item in data) {
* * * * * * if (typeof(data[item])=='object'
{
* * * * * * * * elite.processBasicApiResponse(data[item], ns+item+'_'
;
* * * * * * } else {
* * * * * * * * $('*[class*="response_'+ns+item+'"]'
.each(function() {
* * * * * * * * * * $(this).attr('class', $(this).attr('class'
.replace('{response_'+ns+item+'}', data[item]));
* * * * * * * * });
* * * * * * * * $('*[data-nav-forward*="response_'+ns+item+'"]'
.each(function() {
* * * * * * * * * * $(this).attr('data-nav-forward', $(this).attr('data-nav-forward'
.replace('{response_'+ns+item+'}', data[item]));
* * * * * * * * });
* * * * * * * * $('.response_'+ns+item).text(data[item]);
* * * * * * }
* * * * }
* * },
* * * * getNamefromDictionaryKey: function(dictionary, key) {
* * * * * * * * var dictionaryLen = dictionary.length,
* * * * * * * * * * * * dictionaryName = null;
* * * * * * * * for(j=0; j < dictionaryLen; j++) *{
* * * * * * * * * * * * if (dictionary[j].key == key) {
* * * * * * * * * * * * * * * * dictionaryName = dictionary[j].name;
* * * * * * * * * * * * }
* * * * * * * * }
* * * * * * * * return dictionaryName;
* * * * }, // end getNamefromDictionaryKey()
* * * * getDictionaryFromKey: function(dictionary, key) {
* * * * * * * * var dictionaryLen = dictionary.length,
* * * * * * * * * * * * dictionaryLevel = null;
* * * * * * * * for(j=0; j < dictionaryLen; j++) *{
* * * * * * * * * * * * if (dictionary[j].key == key) {
* * * * * * * * * * * * * * * * return dictionary[j];
* * * * * * * * * * * * }
* * * * * * * * }
* * * * * * * * return null;
* * * * }, // end getDictionaryFromKey()
* * cloneObject: function(source) {
* * * * for (i in source) {
* * * * * * if (typeof source[i] == 'source'
* * * * * * {
* * * * * * * * this[i] = new cloneObject(source[i]);
* * * * * * }
* * * * * * else
* * * * * * {
* * * * * * * * this[i] = source[i];
* * * * * * }
* * * * }
* * }
};
$(document).ready(function() {
* * elite.init();
});
$.fn.bindClick = function(fn)
{
* * return this.each(function() {
* * * * var obj = this;
* * * * $(this).bind(elite.clickMethodStart, function(e) {
* * * * * * if (elite.smartPhone) {
* * * * * * * * elite.touchListener.start = {
* * * * * * * * * * 'clientX': e.originalEvent.touches[0].clientX,
* * * * * * * * * * 'clientY': e.originalEvent.touches[0].clientY
* * * * * * * * };
* * * * * * } else {
* * * * * * }
* * * * }).bind(elite.clickMethod, function(e) {
* * * * * * //if (elite.loading == true) return false;
* * * * * * var radialDistance = 0;
* * * * * * if (elite.smartPhone) {
* * * * * * * * elite.touchListener.end = e.originalEvent.changedTouches[0];
* * * * * * * * radialDistance = Math.sqrt(
* * * * * * * * * * Math.pow(elite.touchListener.end.clientX - elite.touchListener.start.clientX, 2)
* * * * * * * * * * + Math.pow(elite.touchListener.end.clientY - elite.touchListener.start.clientY, 2)
* * * * * * * * );
* * * * * * * * //$('#debug'
.html(elite.touchListener.start.clientX+'<br />'+elite.touchListener.end.clientX+'<br />'+radialDistance);
* * * * * * }
* * * * * * try {
* * * * * * * * if (!elite.isMoving && radialDistance<30) {
* * * * * * * * * * fn.call(obj, e);
* * * * * * * * } else {
* * * * * * * * * * elite.isMoving = 0;
* * * * * * * * }
* * * * * * } catch (err) {
* * * * * * * * elite.error.fatalErrorDialog(err);
* * * * * * }
* * * * });
* * });
};
$.fn.liveClick = function(fn)
{
* * $(this).live(elite.clickMethodStart, function(e) {
* * * * if (elite.smartPhone) {
* * * * * * elite.touchListener.start = {
* * * * * * * * 'clientX': e.originalEvent.touches[0].clientX,
* * * * * * * * 'clientY': e.originalEvent.touches[0].clientY
* * * * * * };
* * * * } else {
* * * * }
* * }).live(elite.clickMethod, function(e) {
* * * * //if (elite.loading == true) return false;
* * * * var radialDistance = 0;
* * * * if (elite.smartPhone) {
* * * * * * elite.touchListener.end = e.originalEvent.changedTouches[0];
* * * * * * radialDistance = Math.sqrt(
* * * * * * * * Math.pow(elite.touchListener.end.clientX - elite.touchListener.start.clientX, 2)
* * * * * * * * + Math.pow(elite.touchListener.end.clientY - elite.touchListener.start.clientY, 2)
* * * * * * );
* * * * * * //$('#debug'
.html(elite.touchListener.start.clientX+'<br />'+elite.touchListener.end.clientX+'<br />'+radialDistance);
* * * * }
* * * * try {
* * * * * * if (!elite.isMoving && radialDistance<30) fn.call(this, e); else elite.isMoving = 0;
* * * * } catch (err) {
* * * * * * elite.error.fatalErrorDialog(err);
* * * * }
* * });
};
<script></script><page id=custom-class><section id="custom-class-1"><div class="ccTitleBlock"><h3>MW3 Custom Classes</h3></div><div id="ccCustomizeBlock"><h2>Customize Your Classes</h2><h3>Make changes to all your classes before sending.</h3><p><span class="button loginBtn">Send Changes to Game</span></p></div><a href="#"><div class="ccWeaponBlock"><h2>
annimator-Bigguns</h2><p>G36 USP .45</p></div></a><div class="ccWeaponBlock"><h2>The Garderner</h2><p>ACR 6.8 skorpion</p></div><div id="" class="ccWeaponBlock"><h2>This N00B is over 9000</h2><p>G36 JAVELIN</p></div><div id="" class="ccWeaponBlock"><h2>Scare for Life</h2><p>SCAR-L Five Seven</p></div><div id="" class="ccWeaponBlock"><h2>WWWWWWWWWWWWW...</h2><p>Riot Shield Stinger</p></div></section></page>
Elite app is located in iFile... I'm derp :derp:
kay:
Copyright © 2026, NextGenUpdate.
All Rights Reserved.