https://cp.ecos.am/user/dashboard !function(a){FormValidation.AddOn.reCaptcha2={html5Attributes:{element:"element",language:"language",message:"message",sitekey:"siteKey",theme:"theme",timeout:"timeout"},CAPTCHA_FIELD:"g-recaptcha-response",CAPTCHA_TIMEOUT:120,init:function(b,c){var d=this,e="undefined"==typeof window.reCaptchaLoaded?function(){}:window.reCaptchaLoaded;window.reCaptchaLoaded=function(){e(),grecaptcha.render(c.element,{sitekey:c.siteKey,theme:c.theme||"light",callback:function(){b.updateStatus(d.CAPTCHA_FIELD,b.STATUS_VALID),setTimeout(function(){b.updateStatus(d.CAPTCHA_FIELD,b.STATUS_INVALID)},1e3*(c.timeout||d.CAPTCHA_TIMEOUT))}}),setTimeout(function(){d._addCaptcha(b,c)},3e3)};var f="//www.google.com/recaptcha/api.js?onload=reCaptchaLoaded&render=explicit"+(c.language?"&hl="+c.language:"");if(0===a("body").find('script[src="'+f+'"]').length){var g=document.createElement("script");g.type="text/javascript",g.async=!0,g.defer=!0,g.src=f,document.getElementsByTagName("body")[0].appendChild(g)}},_addCaptcha:function(a,b){var c=this;a.getForm().formValidation("addField",c.CAPTCHA_FIELD,{excluded:!1,validators:{callback:{message:b.message,callback:function(a){return""!==a}}}})}}}(jQuery); // Ion.Sound | version 2.1.3 | https://github.com/IonDen/ion.sound var ion = ion || {}; (function (e) { var l = function (a) { a && console && (console.warn && "function" === typeof console.warn ? console.warn(a) : console.log && "function" === typeof console.log && console.log(a)) }; if (e.sound) l("ion.sound already exists!"); else if ("function" !== typeof Audio && "object" !== typeof Audio) { var g = function () { l("HTML5 Audio is not supported in this browser") }; e.sound = function () { }; e.sound.play = g; e.sound.stop = g; e.sound.destroy = g; g() } else { var f, m = /iPad|iPhone/.test(navigator.appVersion), k, d = {}, b = {}, n, h, c; m ? (f = function (a) { this.name = a.name; this.paused = this.loop = !1; this.callback = this.sound = null }, f.prototype = { init: function () { this.sound = k }, play: function (a) { a || (a = {}); a.loop ? this.paused ? this._playLoop(this.loop + 1) : this._playLoop(a.loop) : (this.loop = !1, this._play()); a.onEnded && "function" === typeof a.onEnded && (this.callback = a.onEnded) }, _play: function () { if (this.paused) this.paused = !1; else try { this.sound.currentTime = 0 } catch (a) { } this.sound.removeEventListener("ended"); this.sound.addEventListener("ended", this._ended.bind(this), !1); this.sound.src = d.path + this.name + h; this.sound.load(); this.sound.play() } }) : (f = function (a) { this.name = a.name; this.volume = d.volume || .5; this.preload = d.preload ? "auto" : "none"; this.paused = this.loop = !1; this.callback = this.sound = null; "volume" in a && (this.volume = +a.volume); "preload" in a && (this.preload = a.preload ? "auto" : "none") }, f.prototype = { init: function () { this.sound = new Audio; this.sound.src = d.path + this.name + h; this.sound.load(); this.sound.preload = this.preload; this.sound.volume = this.volume; this.sound.addEventListener("ended", this._ended.bind(this), !1) }, play: function (a) { a || (a = {}); if (a.volume || 0 === a.volume) this.volume = +a.volume, this.sound.volume = this.volume; a.loop ? this.paused ? this._playLoop(this.loop + 1) : this._playLoop(a.loop) : (this.loop = !1, this._play()); a.onEnded && "function" === typeof a.onEnded && (this.callback = a.onEnded) }, _play: function () { if (this.paused) this.paused = !1; else try { this.sound.currentTime = 0 } catch (a) { } this.sound.play() } }); f.prototype._playLoop = function (a) { "boolean" === typeof a ? (this.loop = 9999999, this._play()) : "number" === typeof a && (this.loop = a - 1, this._play()) }; f.prototype._ended = function () { 0 < this.loop && (--this.loop, this._play()); this.callback && this.callback(this.name) }; f.prototype.pause = function () { this.paused = !0; this.sound.pause() }; f.prototype.stop = function () { this.loop = !1; this.sound.pause(); try { this.sound.currentTime = 0 } catch (a) { } }; f.prototype.destroy = function () { this.stop(); this.sound.removeEventListener("ended", this._ended.bind(this), !1); this.sound.src = ""; this.sound = null }; e.sound = function (a) { d = JSON.parse(JSON.stringify(a)); d.path = d.path || ""; d.volume = d.volume || .5; d.preload = d.preload || !1; d.mix = d.mix || !0; if (n = d.sounds.length) { k = new Audio; a = k.canPlayType("audio/mpeg"); var e = k.canPlayType("audio/ogg"), g = k.canPlayType('audio/mp4; codecs="mp4a.40.2"'); m ? "probably" === a ? h = ".mp3" : "probably" === g ? h = ".aac" : "maybe" === a ? h = ".mp3" : "maybe" === g && (h = ".aac") : h = "probably" === a ? ".mp3" : "probably" === e ? ".ogg" : "maybe" === a ? ".mp3" : "maybe" === e ? ".ogg" : ".wav"; for (c = 0; c < n; c++) a = d.sounds[c], b[a.name] = new f(a), b[a.name].init() } else l("No sound-files provided!") }; e.sound.version = "2.1.3"; e.sound.play = function (a, c) { b[a] && b[a].play(c) }; e.sound.pause = function (a) { if (a && b[a]) b[a].pause(); else for (c in b) b.hasOwnProperty(c) && b[c] && b[c].pause() }; e.sound.stop = function (a) { if (a && b[a]) b[a].stop(); else for (c in b) b.hasOwnProperty(c) && b[c] && b[c].stop() }; e.sound.destroy = function (a) { if (a && b[a]) b[a].destroy(), b[a] = null; else for (c in b) b.hasOwnProperty(c) && b[c] && (b[c].destroy(), b[c] = null) } } })(ion); // Faucet view model var faucetVM = new function () { var self = this; var form = $('#ClaimForm'); self.interval = 60000; self.referralURL = ko.observable(''); self.balance = ko.observable(0); self.referralCount = ko.observable(0); self.referralTotal = ko.observable(0); self.alert = ko.observable(true, { persistKey: 'alert' }); self.alertWhenClaimReady = ko.observable(true, { persistKey: 'alertWhenClaimReady' }); self.alertAtClaimThreshold = ko.observable(false, { persistKey: 'alertAtClaimThreshold' }); self.alertAtClaimThresholdAmount = ko.observable(0, { persistKey: 'alertAtClaimThresholdAmount' }).extend({ crypto: null }); self.alertPageTitle = ko.observable(true, { persistKey: 'alertPageTitle' }); self.alertPlaySound = ko.observable(true, { persistKey: 'alertPlaySound' }); self.claimAmount = ko.observable(0); self.canClaim = ko.observable(true); self.resultHtml = ko.observable(''); self.captchaType = ko.observable(0, { persistKey: 'CaptchaType' }); self.alerted = false; self.currentAnimate = null; self.fp = ''; self.pageTitle = document.title; self.claimedAmount = ko.observable(0); self.baseClaimedAmount = ko.observable(0); self.loyaltyBonus = ko.observable(0); self.referralBonus = ko.observable(0); self.mysteryBonus = ko.observable(0); self.validate = function () { form.formValidation('validate'); return form.data('formValidation').isValid(); }; self.load = function (skipBind) { callAPI('faucet', 'GetFaucetSummary', self, 'Get Faucet Summary', null, function (response) { if (response.result) { ko.mapping.fromJS(response, {}, self); } self.referralDetails = ko.computed(function () { return "Your referral link is...

" + self.referralURL() + "


" + "To date you have " + self.referralCount() + " referrals and have been paid  " + self.referralTotal().toFixed(8) + " in referral commission (last 30 days)"; }, this); // Apply bindings ko.applyBindings(self, $('#Navigation')[0]); ko.applyBindings(self, $('#Faucet')[0]); ko.applyBindings(self, $('#ClaimModal')[0]); ko.applyBindings(self, $('#FaucetClaimModal')[0]); ko.applyBindings(self, $('#AlertSettingsModal')[0]); ko.applyBindings(self, $('#ReferModal')[0]); //Start refresh cycle self.refreshClaimSummary(); }, null, null); } self.refreshClaimSummary = function () { callAPI('faucet', 'GetClaimSummary', self, 'Get claim summary', null, function (response) { if (response.result) { self.canClaim(response.canClaim); // Set up form validation $('#ClaimForm').formValidation({ framework: 'bootstrap4' }); self.currentAnimate = { claimAmount: response.claimAmount }; $(self.currentAnimate).animate({ claimAmount: response.nextClaimAmount }, { duration: self.interval, easing: 'linear', step: function () { self.claimAmount(this.claimAmount); var seconds = Math.round(new Date().getTime() / 1000); if (self.alerted && self.alertPageTitle() && (seconds % 2 == 0)) document.title = 'READY TO CLAIM - ' + self.pageTitle; else { document.title = self.claimAmount().toFixed(self.claimAmount() >= 0.001 ? 4 : 8) + ' - ' + self.pageTitle; } if (self.alert() && !self.alerted) { var alertNow = false; if (self.canClaim() && self.alertWhenClaimReady()) { if (self.alertAtClaimThreshold()) { if (!isNaN(self.alertAtClaimThresholdAmount()) && self.claimAmount() >= self.alertAtClaimThresholdAmount()) alertNow = true; } else alertNow = true; } else if (self.alertAtClaimThreshold()) { if (!isNaN(self.alertAtClaimThresholdAmount()) && self.claimAmount() >= self.alertAtClaimThresholdAmount()) alertNow = true; } if (alertNow) { if (self.alertPageTitle()) { document.title = 'READY TO CLAIM - ' + self.pageTitle; self.alerted = true; } if (self.alertPlaySound()) { self.playAlertSound(); self.alerted = true; } } } }, complete: function () { self.refreshClaimSummary(); } }); } else { setTimeout(function () { self.refreshClaimSummary(); }, self.interval); } }, function (error) { if (window.console) console.log("GetClaimSummary error: ", error); setTimeout(function () { self.refreshClaimSummary(); }, self.interval); }, null); } self.instantClaim = function () { self.submitClaim(true); } self.delayedClaim = function () { self.submitClaim(false); } self.submitClaim = function (instantClaim) { if (self.captchaType() == 1 || self.validate()) { $(self.currentAnimate).stop(); $('#ClaimModal').modal('hide'); var captchaResponse = grecaptcha.getResponse(); if (self.captchaType() == 1) captchaResponse = $('#adcopy_challenge').val() + '|' + $('#adcopy_response').val(); callAPI('faucet', 'FaucetClaim', { adBlocked: (!$('#claimAd').is(":visible")), captchaResponse: captchaResponse, instantClaim: !instantClaim, fp: self.fp, version: $('#faucetVersion').val() }, 'Faucet claim', 'Processing claim', function (response) { if (response.result) { self.balance(response.newBalance); self.resultHtml(response.resultHtml); form[0].reset(); form.data('formValidation').resetForm(); self.baseClaimedAmount(response.baseClaimAmount); self.loyaltyBonus(response.loyaltyBonus); self.referralBonus(response.referralBonus); self.mysteryBonus(response.mysteryBonus); self.claimedAmount(response.claimAmount); $('#FaucetClaimModal').modal('show'); } else { showMessageModal('Faucet claim', response.resultHtml, response.result); } }, null, function () { grecaptcha.reset(); self.refreshClaimSummary(); }); }; } self.playAlertSound = function () { ion.sound.play("alert"); } }; $(document).ready(function () { //Load view models faucetVM.load(); //Set up alert sound ion.sound({ sounds: [{ name: "alert", volume: 0.3 }], path: "coin/", preload: true }); $('#slideIn').delay(1000).animate({ 'bottom': '35px' }, 2000); });