firebase App Recibos Premium
by thvinic
HTML
<script src="https://www.gstatic.com/firebasejs/9.1.3/firebase-analytics.js"></script>
<script src="https://www.gstatic.com/firebasejs/9.1.3/firebase-auth.js"></script>
<script src="https://www.gstatic.com/firebasejs/9.1.3/firebase-app.js"></script>
<!doctype html>
<html>
<head>
<title>App Recibos Empresas PDF</title>
</head>
<center>
<div class="informacao">
<span>Se você já comprou o seu aplicativo, <span style="color: #045949;">você receberá um email para ativar o seu App, e fazer login, e utilizar todos os recursos.</span></span>
<br><br>
<span>Se você é novo por aqui, poderá solicitar uma licensa do Aplicativo App Recibos PDF empresas no link abaixo:</span>
<br><br>
<a href="https://bit.ly/AppRecibos" class="link">Ativar o meu Aplicativo</a>
</div>
<br><br><br>
</center>
<body class="centralize">
<form id="formulario">
<div class="form-field">
<div><label>Email</label></div>
<input type="email" name="email" id="email" placeholder="[email protected]" onchange="onChangeEmail()"/>
<div class="error" id="email-required-error">Email é obrigatório</div>
<div class="error" id="email-invalid-error">Email é inválido</div>
</div>
<div class="form-field">
<div><label>Senha</label></div>
<input type="password" name="password" id="password" placeholder="Senha" onchange="onChangePassword()"/>
<div class="error" id="password-required-error">Senha é obrigatória</div>
</div>
<div>
<button type="button" class="solid" id="login-button" disabled="true" onclick="login()">Entrar</button>
</div>
<div>
<button type="button" class="clear" id="recover-password-button" onclick="recoverPassword()" disabled="true">Recuperar senha</button>
</div>
<div>
</div>
</form>
</body>
<link rel="stylesheet" href="index.css">
<link...
CSS
body {
background: aliceblue;
height: auto;
}
form {
width: 300px;
}
input {
border: none;
}
button {
margin-bottom: 10px;
}
.centralize {
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
}
.form-field {
margin-bottom: 10px;
}
input,
button {
padding: 10px;
width: -webkit-fill-available;
}
.loading {
background: rgba(0, 0, 0, 0.5);
position: fixed;
width: 100%;
height: 100%;
}
.loading label {
font-size: 24px;
}
button {
cursor: pointer;
}
button:active {
opacity: 0.8;
}
button[disabled] {
color: #ffffff;
background-color: #009f00ba;
border-radius: 5px;
}
.clear {
background: transparent;
border: none;
color: white;
}
.solid {
background: white;
border: none;
color: rgb(45, 211, 111);
}
.outline {
background: transparent;
color: white;
border: 1px solid white;
}
.error {
background: red;
color: white;
display: none;
}
.informacao {
background-color: #f2f2f2;
padding: 20px;
border-radius: 4px;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
text-align: center;
}
.link {
color: #333;
text-decoration: none;
font-size: 16px;
font-weight: bold;
margin-top: 10px;
}
.link:hover {
color: #007bff;
text-decoration: underline;
}
JavaScript
const firebaseConfig = {
apiKey: "AIzaSyBW2xD4JylrcRHn_HlySLXFDotjva8anPA",
authDomain: "apprecibos1.firebaseapp.com",
projectId: "apprecibos1",
storageBucket: "apprecibos1.appspot.com",
messagingSenderId: "320101019050",
appId: "1:320101019050:web:17b218d477083760f94fd3",
measurementId: "G-RBLSG6XH22"
};
firebase.initializeApp(firebaseConfig);
firebase.auth().onAuthStateChanged(user => {
if (user) {
window.location.href = "https://www.google.com";
}
})
function onChangeEmail() {
toggleButtonsDisable();
toggleEmailErrors();
}
function onChangePassword() {
toggleButtonsDisable();
togglePasswordErrors();
}
function login() {
showLoading();
firebase.auth().signInWithEmailAndPassword(
form.email().value, form.password().value
).then(() => {
hideLoading();
window.location.href = "https://www.google.com";
}).catch(error => {
hideLoading();
alert(getErrorMessage(error));
});
}
function register() {
window.location.href = "pages/register/register.html";
}
function recoverPassword() {
showLoading();
firebase.auth().sendPasswordResetEmail(form.email().value).then(() => {
hideLoading();
alert('Email enviado com sucesso');
}).catch(error => {
hideLoading();
alert(getErrorMessage(error));
});
}
function getErrorMessage(error) {
if (error.code == "auth/user-not-found") {
return "Usuário nao encontrado";
}
if (error.code == "auth/wrong-password") {
return "Senha inválida";
}
return error.message;
}
function toggleEmailErrors() {
const email = form.email().value;
form.emailRequiredError().style.display = email ? "none" : "block";
form.emailInvalidError().style.display = validateEmail(email) ? "none" : "block";
}
function togglePasswordErrors() {
const password = form.password().value;
form.passwordRequiredError().style.display = password ?...