From 86b330101c30e1426650eb151acbe9be4e01e220 Mon Sep 17 00:00:00 2001 From: Namrata Diware Date: Thu, 8 Aug 2024 22:53:36 +0530 Subject: [PATCH 1/5] added changes to login signup page --- assets/css/styles.css | 1 + index.html | 2 +- log/login.css | 338 +++++++++++++++++------------------------- log/login.html | 279 +--------------------------------- log/rd1.png | Bin 0 -> 24444 bytes log/script.js | 141 +----------------- login.html | 184 +++++++++++++++++++++++ 7 files changed, 329 insertions(+), 616 deletions(-) create mode 100644 log/rd1.png create mode 100644 login.html diff --git a/assets/css/styles.css b/assets/css/styles.css index d496a529..334d6be7 100644 --- a/assets/css/styles.css +++ b/assets/css/styles.css @@ -47,6 +47,7 @@ --normal-font-size: 1rem; --small-font-size: .875rem; --smaller-font-size: .813rem; + background-color:black; } } diff --git a/index.html b/index.html index c0ff4ff4..b1a69bce 100644 --- a/index.html +++ b/index.html @@ -91,7 +91,7 @@
  • Doctor
  • Contact us
  • Rate Us
  • -
  • Sign in/Sign up
  • +
  • Sign in/Sign up
  • diff --git a/log/login.css b/log/login.css index 8808ee42..ad3eb38b 100644 --- a/log/login.css +++ b/log/login.css @@ -2,11 +2,13 @@ * { box-sizing: border-box; + + } body { - display: flex; - background: black; + display:contents; + justify-content: center; align-items: center; flex-direction: column; @@ -14,46 +16,13 @@ body { overflow: hidden; height: 100vh; } -.top-left-corner { - position: absolute; - top: 10px; - left: 50px; -} -.eye.active { - color: #007bff; /* Change this to whatever color you prefer */ -} - - -.home-button { - display: inline-flex; - align-items: center; - justify-content: center; - width: 40px; - height: 40px; - background-color: #f8f9fa; - border: 1px solid #ddd; - border-radius: 8px; - text-decoration: none; - box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); - transition: background-color 0.3s, box-shadow 0.3s; -} - -.home-button:hover { - background-color: #6be1f9; - box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); -} - -.home-button svg { - fill: #4bb6b7; - width: 30px; - height: 30px; -} h1 { font-weight: 700; letter-spacing: -1.5px; margin: 0; margin-bottom: 15px; + color: black; } h1.title { @@ -61,6 +30,7 @@ h1.title { line-height: 45px; margin: 0; text-shadow: 0 0 10px rgba(16, 64, 74, 0.5); + color: white; } p { @@ -75,10 +45,11 @@ p { span { font-size: 14px; margin-top: 25px; + color: black; } a { - color: #333; + color: #101010; font-size: 14px; text-decoration: none; margin: 15px 0; @@ -88,7 +59,9 @@ a { a:hover { color: #4bb6b7; } - +.logo{ + background: url("rd1.png"); +} .content { display: flex; width: 100%; @@ -113,13 +86,14 @@ a:hover { font-size: 14px; user-select: none; padding-left: 5px; + color: black; } button { position: relative; border-radius: 20px; - border: 1px solid #022a2d; - background-color: #022a2d; + border: 1px solid #4bb6b7; + background-color: #4bb6b7; color: #fff; font-size: 15px; font-weight: 700; @@ -132,7 +106,6 @@ button { button:hover { letter-spacing: 3px; - background-color: #28cacd; } button:active { @@ -194,6 +167,8 @@ input { } .container { + margin-top: 100px; + margin-left: 300px; background-color: #fff; border-radius: 25px; box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22); @@ -344,193 +319,156 @@ input { transition: 0.3s ease-in-out; } -.social-container #fb:hover { - color: white; - background-color: #1877F2; -} -.social-container #lin:hover { - color: white; - background-color: #0A66C2; +.social-container a:hover { + border: 1px solid #4bb6b7; } -.social-container #goog:hover { - color: white; - background-color: #34A853; -} - - -/* Adjustments for screens smaller than 1024px */ -@media (max-width: 1024px) { - .container { - width: 80%; - } - - .overlay-panel { - padding: 0 30px; - } - h1 { - font-size: 1.8rem; - } - input { - padding: 10px; - font-size: 1rem; - } - button { - padding: 10px 30px; - font-size: 1rem; - } +.navbar { + margin-top:0cqmax; + width: 100%; + display: flex; + justify-content: space-between; + align-items: center; + background-color: #022a2d; + padding: 0px 20px; + gap: 20px; + height: 100px; } -/* Adjustments for screens smaller than 768px */ -@media (max-width: 768px) { - .container { - width: 90%; - min-height: 450px; - padding: 20px; - } - - form { - padding: 0 20px; - } - - input { - padding: 10px; - margin: 6px 0; - font-size: 0.9rem; - } - - button { - padding: 10px 30px; - margin: 8px; - font-size: 0.9rem; - } - - h1 { - font-size: 1.5rem; - } - - .overlay { - width: 100%; - left: 0; - transform: none; - } - - .overlay-panel { - width: 100%; - position: relative; - transform: none; - padding: 20px; - } - - .overlay-left{ - display: none; - } +.logo img { + height: 60px; /* Adjust the logo size as needed */ + width: 90px; + background: url("rd1.png"); + background-size: contain; + margin-top: 110px; + background-repeat: no-repeat; } +.nav-links { + list-style: none; + display: flex; + gap: 20px; + margin-left: 123px; +} -/* Further adjustments for screens smaller than 480px */ -@media (max-width: 480px) { - .container { - width: 100%; - min-height: 400px; - padding: 10px; - } - - h1 { - font-size: 1.2rem; - margin-bottom: 10px; - } - - input { - padding: 8px; - margin: 5px 0; - font-size: 0.8rem; - } - - button { - padding: 8px 20px; - margin: 6px; - font-size: 0.8rem; - } - - .overlay { - height: 100%; - } - - .overlay-panel { - padding: 10px; - } +.nav-links li { + display: inline; } -/* Banner styling */ -#successBanner { - display: none; - position: fixed; - top: 0; - left: 0; - width: 100%; - padding: 1rem; - background-color: green; + +.nav-links a { + text-decoration: none; color: white; - text-align: center; - z-index: 1000; - font-size: 1.2rem; + font-size: 16px; } -.toggle-password { - position: relative; + +.find-doctor { + background-color: #3abca7; + color: white; + border: none; + padding: 10px 20px; + border-radius: 5px; cursor: pointer; - user-select: none; + font-size: 16px; } +.find-doctor a { + + color: white; -.toggle-password svg { - position: absolute; - right: 10px; - top: 50%; - transform: translateY(-50%); - height: 15px; } -/* Additional styles for password container */ -.password-container { - position: relative; +.find-doctor:hover { + background-color: #32a695; +} +footer { + margin-top: 56px; + background-color: #022a2d; + color: #afbcc7; + padding: 20px 0; + display: flex; + flex-wrap: wrap; + justify-content: space-around; + height: 400px; +} +.footer-wrapper { + display: flex; width: 100%; + justify-content: space-around; + padding: 20px 0; } - -.password-container input { - padding-right: 30px; /* Adjust based on your eye icon size */ +.footer-columns { + display: flex; + justify-content: space-around; + width: 80%; + flex-wrap: wrap; } - -.container{ - background-color: #143C3D; +.other-columns { + display: flex; + justify-content: space-around; + width: 100%; } -form{ - background-color: #143C3D; +section { + margin: 20px; } -.pass-link a{ - color: cadetblue; +section h4 { + color: #fff; + font-size: 18px; + margin-bottom: 10px; } -.pass-link a:hover{ - color:aqua; +section ul { + list-style: none; + padding: 0; } - -input[type="checkbox"] { - accent-color: aqua; +section ul li { + margin: 5px 0; } -.checkbox label{ - color:whitesmoke; +section ul li a { + color: #afbcc7; + text-decoration: none; } -span{ - color:whitesmoke; +section ul li a:hover { + text-decoration: underline; } -.social-container a{ - color: whitesmoke; +.subscribe-form input[type="email"] { + padding: 10px; + border: none; + border-radius: 3px; + margin-right: 10px; } -.social-container a:hover{ - color: #4BB6B7; +.subscribe-form button { + padding: 10px 20px; + border: none; + background-color: #fff; + color: #15332e; + border-radius: 3px; + cursor: pointer; +} +.footer-bottom { + /* background-color: #001d1f; */ + padding: 10px 0; + text-align: center; + width: 100%; +} +.footer-bottom-wrapper { + display: flex; + justify-content: space-between; + align-items: center; + flex-wrap: wrap; + padding: 0 20px; +} +.social-wrapper { + display: flex; + align-items: center; +} +.social-wrapper a { + color: #afbcc7; + margin: 0 5px; +} +.social-wrapper a:hover { + color: #fff; } -.home-button{ - background-color: #022A2D; - border:none; +.social-links div { + display: inline-block; } \ No newline at end of file diff --git a/log/login.html b/log/login.html index 44c4e6db..ad2331ae 100644 --- a/log/login.html +++ b/log/login.html @@ -1,278 +1 @@ - - - - - - - - RAPIDOC - - - - - - - - - - - - - -
    - - - - - -
    -
    -
    -
    -

    RAPIDOC

    - - -
    - - - - - - - - -
    - - - -
    -
    - - - -
    -
    -
    -

    Welcome Back!

    -

    To keep connected with us please login with your personal info

    - -
    -
    -

    Hello, Friend!

    -

    Enter your personal details and start journey with us

    - -
    -
    -
    -
    - - - - - - \ No newline at end of file + \ No newline at end of file diff --git a/log/rd1.png b/log/rd1.png new file mode 100644 index 0000000000000000000000000000000000000000..b504bf246a52b49fc9374ee16c239c3e0570f2ed GIT binary patch literal 24444 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 { event.preventDefault(); container.classList.add("right-panel-active"); @@ -33,31 +17,9 @@ document.addEventListener("DOMContentLoaded", function() { loginForm.scrollIntoView({ behavior: "smooth" }); }); - // Event listener for password visibility toggle in register form - const registerEye = document.querySelector("#registerForm .toggle-password"); - registerEye.addEventListener("click", function(event) { - event.preventDefault(); - togglePasswordVisibility(registerEye); - }); - - // Event listener for password visibility toggle in login form - const loginEye = document.querySelector("#loginForm .toggle-password"); - loginEye.addEventListener("click", function(event) { - event.preventDefault(); - togglePasswordVisibility(loginEye); - }); - registerForm.addEventListener("submit", (event) => { event.preventDefault(); // Your registration logic goes here - const name = registerForm.querySelector('input[type="text"]').value; - const email = registerForm.querySelector('input[type="email"]').value; - const password = registerForm.querySelector('#registerPassword').value; - - if (!name || !email || !password) { - alert("Kindly, Please fill all the details😊"); - return; - } // Simulate registration success document.getElementById("registerMessage").style.display = "block"; @@ -70,107 +32,12 @@ document.addEventListener("DOMContentLoaded", function() { loginForm.addEventListener("submit", (event) => { event.preventDefault(); // Your login logic goes here - const email = loginForm.querySelector('input[type="email"]').value; - const password = loginForm.querySelector('#loginPassword').value; - - if (!email || !password) { - alert("Kindly, Please fill all the details😊"); - return; - } // Simulate login success - successBanner.style.display = "block"; + alert("Login successful!"); + // Redirect to the homepage after login setTimeout(() => { - successBanner.style.display = "none"; - window.location.href = "login.html"; // Change "login.html" to your desired URL - }, 500); // Display banner for 2 seconds + window.location.href = "index.html"; // Change "index.html" to your desired URL + }, 1000); // Redirect after 1 second (1000 milliseconds) }); }); - - -// Import the functions you need from the SDKs you need -import { initializeApp } from "https://www.gstatic.com/firebasejs/9.9.2/firebase-app.js"; -import { getAuth, signInWithEmailAndPassword, createUserWithEmailAndPassword, sendEmailVerification, reload, deleteUser } from "https://www.gstatic.com/firebasejs/9.9.2/firebase-auth.js"; - -// Your web app's Firebase configuration -const firebaseConfig = { - apiKey: "YOUR_API_KEY", - authDomain: "YOUR_PROJECT_ID.firebaseapp.com", - projectId: "YOUR_PROJECT_ID", - storageBucket: "YOUR_PROJECT_ID.appspot.com", - messagingSenderId: "YOUR_MESSAGING_SENDER_ID", - appId: "YOUR_APP_ID", - measurementId: "YOUR_MEASUREMENT_ID" // optional -}; - - -// Initialize Firebase -const app = initializeApp(firebaseConfig); -const auth = getAuth(app); - -// Register event -const registerForm = document.getElementById('registerForm'); -registerForm.addEventListener('submit', async (e) => { - e.preventDefault(); - - const email = document.getElementById('registerEmail').value; - const password = document.getElementById('registerPassword').value; - - try { - const userCredential = await createUserWithEmailAndPassword(auth, email, password); - const user = userCredential.user; - - // Set a timeout for checking email verification - const timeout = setTimeout(async () => { - await reload(user); - if (!user.emailVerified) { - await deleteUser(user) - .then(() => { - alert('Account deleted due to unverified email.'); - location.reload(); // Reload the page after deletion - }) - .catch((error) => { - const errorCode = error.code; - const errorMessage = error.message; - alert(errorMessage); - location.reload(); // Reload the page on error - }); - } - }, 30000); // 30 seconds - - await sendEmailVerification(user); - alert('Registration successful! Please check your email to verify your account.'); - } catch (error) { - const errorCode = error.code; - const errorMessage = error.message; - alert(errorMessage); - location.reload(); // Reload the page on error - } -}); - -// Login event -const loginForm = document.getElementById('loginForm'); -loginForm.addEventListener('submit', async (e) => { - e.preventDefault(); - - const email = document.getElementById('loginEmail').value; - const password = document.getElementById('loginPassword').value; - - try { - const userCredential = await signInWithEmailAndPassword(auth, email, password); - const user = userCredential.user; - - // Check if email is verified - await reload(user); // Ensure latest user data is fetched - if (user.emailVerified) { - window.location.href = '/index.html'; // Redirect to index.html upon successful login - } else { - alert('Please verify your email address.'); - } - } catch (error) { - const errorCode = error.code; - const errorMessage = error.message; - alert(errorMessage); - location.reload(); // Reload the page on error - } -}); \ No newline at end of file diff --git a/login.html b/login.html new file mode 100644 index 00000000..e396b542 --- /dev/null +++ b/login.html @@ -0,0 +1,184 @@ + + + + + + + RAPIDOC + + + + + + + + + + + + + + + +
    +
    +
    +

    RAPIDOC

    + + + + + + +
    +
    + + + +
    +
    +
    +

    Hello
    friends

    +

    if you have an account, login here and have fun

    + +
    +
    +

    Start your
    journey now

    +

    if you don't have an account yet, join us and start your journey.

    + +
    +
    +
    +
    + + + + + + + From 30c407077222b97d5a70386ddfcb974b49d7b583 Mon Sep 17 00:00:00 2001 From: Namrata Diware Date: Fri, 9 Aug 2024 09:19:10 +0530 Subject: [PATCH 2/5] made changes --- index.html | 2 +- log/login.css | 21 ++++-- log/login.html | 189 ++++++++++++++++++++++++++++++++++++++++++++++++- login.html | 184 ----------------------------------------------- 4 files changed, 203 insertions(+), 193 deletions(-) delete mode 100644 login.html diff --git a/index.html b/index.html index b1a69bce..c0ff4ff4 100644 --- a/index.html +++ b/index.html @@ -91,7 +91,7 @@
  • Doctor
  • Contact us
  • Rate Us
  • -
  • Sign in/Sign up
  • +
  • Sign in/Sign up
  • diff --git a/log/login.css b/log/login.css index ad3eb38b..97eab1cd 100644 --- a/log/login.css +++ b/log/login.css @@ -2,13 +2,13 @@ * { box-sizing: border-box; - + } body { display:contents; - + justify-content: center; align-items: center; flex-direction: column; @@ -165,6 +165,10 @@ input { margin: 8px 0; width: 100%; } +.login-cont{ + background-color: #001d1f; + /* height: 100vh; */ +} .container { margin-top: 100px; @@ -177,6 +181,7 @@ input { width: 768px; max-width: 100%; min-height: 500px; + background-color: #001d1f; } .form-container { @@ -339,11 +344,12 @@ input { } .logo img { - height: 60px; /* Adjust the logo size as needed */ + height: 90px; /* Adjust the logo size as needed */ width: 90px; background: url("rd1.png"); - background-size: contain; - margin-top: 110px; + /* background-size: contain; */ + margin-top: 6px; + background-repeat: no-repeat; } @@ -352,6 +358,7 @@ input { display: flex; gap: 20px; margin-left: 123px; + width: 2500px; } .nav-links li { @@ -396,7 +403,7 @@ footer { display: flex; width: 100%; justify-content: space-around; - padding: 20px 0; + /* padding: 20px 0; */ } .footer-columns { display: flex; @@ -446,7 +453,7 @@ section ul li a:hover { cursor: pointer; } .footer-bottom { - /* background-color: #001d1f; */ + background-color: #001d1f; padding: 10px 0; text-align: center; width: 100%; diff --git a/log/login.html b/log/login.html index ad2331ae..e80cf839 100644 --- a/log/login.html +++ b/log/login.html @@ -1 +1,188 @@ - \ No newline at end of file + + + + + + + RAPIDOC + + + + + + + + + + + + + + + + + + + diff --git a/login.html b/login.html deleted file mode 100644 index e396b542..00000000 --- a/login.html +++ /dev/null @@ -1,184 +0,0 @@ - - - - - - - RAPIDOC - - - - - - - - - - - - - - - -
    -
    -
    -

    RAPIDOC

    - - - - - - -
    -
    - - - -
    -
    -
    -

    Hello
    friends

    -

    if you have an account, login here and have fun

    - -
    -
    -

    Start your
    journey now

    -

    if you don't have an account yet, join us and start your journey.

    - -
    -
    -
    -
    - - - - - - - From 7a93445df58af196722eb9e531876b40660f673c Mon Sep 17 00:00:00 2001 From: Namrata Diware Date: Sat, 10 Aug 2024 09:08:12 +0530 Subject: [PATCH 3/5] added changes in alignment --- log/login.css | 814 +++++++++++++++++++++++++++++++++++++++++++++++-- log/login.html | 409 +++++++++++++++++++------ 2 files changed, 1112 insertions(+), 111 deletions(-) diff --git a/log/login.css b/log/login.css index 97eab1cd..77b1d2b6 100644 --- a/log/login.css +++ b/log/login.css @@ -5,7 +5,10 @@ } - +.login-cont{ + background-color: #001d1f; + /* height: 100vh; */ +} body { display:contents; @@ -22,7 +25,7 @@ h1 { letter-spacing: -1.5px; margin: 0; margin-bottom: 15px; - color: black; + color: rgb(23, 23, 23); } h1.title { @@ -49,7 +52,7 @@ span { } a { - color: #101010; + color: #faf3f3; font-size: 14px; text-decoration: none; margin: 15px 0; @@ -69,8 +72,21 @@ a:hover { align-items: center; justify-content: space-around; } +.container { + margin-top: 100px; + margin-left: 300px; + background-color: #fff; + border-radius: 25px; + box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22); + position: relative; + overflow: hidden; + width: 768px; + max-width: 100%; + min-height: 500px; + background-color: #001d1f; +} -.content .checkbox { +/* .content .checkbox { display: flex; align-items: center; justify-content: center; @@ -104,6 +120,7 @@ button { transition: 0.3s ease-in-out; } + button:hover { letter-spacing: 3px; } @@ -168,21 +185,9 @@ input { .login-cont{ background-color: #001d1f; /* height: 100vh; */ -} +/* } */ -.container { - margin-top: 100px; - margin-left: 300px; - background-color: #fff; - border-radius: 25px; - box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22); - position: relative; - overflow: hidden; - width: 768px; - max-width: 100%; - min-height: 500px; - background-color: #001d1f; -} +/* .form-container { position: absolute; @@ -326,7 +331,7 @@ input { .social-container a:hover { border: 1px solid #4bb6b7; -} +} */ @@ -344,8 +349,8 @@ input { } .logo img { - height: 90px; /* Adjust the logo size as needed */ - width: 90px; + height: 60px; /* Adjust the logo size as needed */ + width: 60px; background: url("rd1.png"); /* background-size: contain; */ margin-top: 6px; @@ -439,10 +444,12 @@ section ul li a:hover { text-decoration: underline; } .subscribe-form input[type="email"] { - padding: 10px; + padding: 20px; border: none; - border-radius: 3px; - margin-right: 10px; + border-radius: 8px; + margin-right: 51px; + border: 1px solid slateblue; + width: 140px; } .subscribe-form button { padding: 10px 20px; @@ -478,4 +485,763 @@ section ul li a:hover { } .social-links div { display: inline-block; +} + +.header_container { + background-color: #022a2d; + display: flex; + flex-direction: row; + justify-content: space-between; + align-items: center; + /* position: fixed; */ + width: 100%; + height: 95px; + margin: auto; + margin-top: 0px; + padding-top: 15px; + z-index: 555; +} +.nav_menu.active .nav_link { + display: flex; + flex-direction: column; + position: absolute; + top: 85px; + left: 0; + width: 100%; + background-color: #022a2d; + border-top: 1px solid #ddd; + padding-top: 10px; + z-index: 1; /* Ensure the nav items are above other elements */ +} +.hamburger { + display: none; + flex-direction: column; + cursor: pointer; +} + +.hamburger .line { + width: 25px; + height: 3px; + background-color: white; + margin: 4px 0; +} +.mobile-logo-text { + display: inline-block; + color: white; + font-weight: bold; + margin-left: 50px; + margin-right: 5px; + font-size: 30px; +} +@media (min-width: 769px) { + .mobile-logo-text { + display: none; + } +} +.nav_link{ + display: flex; + text-align: center; + margin-right: 30px; + + +} +.nav_link li { + margin-right: 1px; + padding: 35px 10px; + display: inline-block; + color: white; + + +} +.nav_link li a { + transition: all 0.3s ease 0s; + color: white; + font-size: 1rem; +} +.nav_link li a:hover { + color: #55a5ea; +} +.btn1{ + padding:10px; + border: none; + color: white; + border-radius: 10px; + width: 100px; + height: 50px; + margin-bottom: 10px; +} +.footer { + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + max-width: 1280px; + width: 95%; + background: #3fbcc051; + border-radius: 6px; +} + +.footer .footer-row { + display: flex; + flex-wrap: wrap; + justify-content: space-between; + gap: 3.5rem; + padding: 60px; +} + +.footer-row .footer-col h4 { + color: #f0f0f0; + font-size: 1.2rem; + font-weight: 400; +} + +.footer-col .links { + margin-top: 20px; +} + +.footer-col .links li { + list-style: none; + margin-bottom: 10px; +} + +.footer-col .links li a { + text-decoration: none; + color: #bfbfbf; +} + +.footer-col .links li a:hover { + color: #fff; +} + +.footer-col p { + margin: 20px 0; + color: #bfbfbf; + max-width: 300px; +} + +.footer-col form { + display: flex; + gap: 5px; +} + + +.footer-col input::placeholder { + color: #ccc; +} + +.footer-col form button { + background: #fff; + border: none; + color: #08434551; + padding: 10px 15px; + border-radius: 6px; + cursor: pointer; + font-weight: 1000; + transition: 0.2s ease; +} + +.footer-col form button:hover { + background: #cecccc; +} + +@media (max-width: 768px) { + .footer { + position: relative; + bottom: 0; + left: 0; + transform: none; + width: 100%; + border-radius: 0; + } + + .footer .footer-row { + padding: 20px; + gap: 1rem; + } + + .footer-col form { + display: block; + } + + .footer-col form :where(input, button) { + width: 100%; + } + + .footer-col form button { + margin: 10px 0 0 0; + } +} +footer { + position: relative; + padding: 50px 0; +} + +:root { + --text-color: #959DA5; + --footer-bg: #3fbcc051; + --footer-bottom-bg: #3fbcc051s; + --white: white; + --link-color: #959DA5; + --link-hover: #2F81CF; + --button-border: #848D97; +} + +.footer-col p { + margin: 20px 0; + color: #bfbfbf; + max-width: 300px; +} + +.footer-col form { + display: flex; + gap: 5px; +} + +.footer-col input { + height: 40px; + border-radius: 6px; + background: none; + width: 100%; + outline: none; + border: 1px solid #7489c6; + caret-color: #fff; + color: #fff; + padding-left: 10px; +} + +.footer-col input::placeholder { + color: #ccc; +} + +.footer-col form button { + background: #fff; + border: none; + color: #08434551; + padding: 10px 15px; + border-radius: 6px; + cursor: pointer; + font-weight: 1000; + transition: 0.2s ease; + display: flex; + margin-top: -52px; + margin-left: 272px; +} + +.footer-col form button:hover { + background: #cecccc; +} + + .subscribe-form{ + background-color: transparent; + /* border: 1px solid #7489c6; */ + border-radius: 6px; + display: flex; + align-items: center; + justify-content: center; + height:50px; + width: 190px; + margin-top: 10px; + text-align: center; +} +.footer-col input { + height: 40px; + border-radius: 6px; + background: none; + width: 100%; + outline: none; + /* border: 1px solid #7489c6; */ + caret-color: #fff; + color: #fff; + padding-left: 10px; +} + + + +h1 { + font-weight: 700; + letter-spacing: -1.5px; + margin: 0; + margin-bottom: 15px; + color: rgb(19, 18, 18); +} + +h1.title { + font-size: 45px; + line-height: 45px; + margin: 0; + text-shadow: 0 0 10px rgba(16, 64, 74, 0.5); +} + +p { + font-size: 14px; + font-weight: 100; + line-height: 20px; + letter-spacing: 0.5px; + margin: 20px 0 30px; + text-shadow: 0 0 10px rgba(16, 64, 74, 0.5); +} + +span { + font-size: 14px; + margin-top: 25px; +} + +a { + color: #333; + font-size: 14px; + text-decoration: none; + margin: 15px 0; + transition: 0.3s ease-in-out; +} + +a:hover { + color: #4bb6b7; +} + +.content { + display: flex; + width: 100%; + height: 50px; + align-items: center; + justify-content: space-around; +} + +.content .checkbox { + display: flex; + align-items: center; + justify-content: center; +} + +.content input { + accent-color: #333; + width: 12px; + height: 12px; +} + +.content label { + font-size: 14px; + user-select: none; + padding-left: 5px; +} + +button { + position: relative; + border-radius: 20px; + background-color: #4bb6b7; + border: 1px solid #4bb6b7; + color: #fff; + font-size: 15px; + font-weight: 700; + margin: 10px; + padding: 12px 80px; + letter-spacing: 1px; + text-transform: capitalize; + transition: 0.3s ease-in-out; +} + +button:hover { + letter-spacing: 3px; + background-color: #28cacd; +} + +button:active { + transform: scale(0.95); +} + +button:focus { + outline: none; +} + +button.ghost { + background-color: rgba(225, 225, 225, 0.2); + border: 2px solid #fff; + color: #fff; +} + +button.ghost i{ + position: absolute; + opacity: 0; + transition: 0.3s ease-in-out; +} + +button.ghost i.register{ + right: 70px; +} + +button.ghost i.login{ + left: 70px; +} + +button.ghost:hover i.register{ + right: 40px; + opacity: 1; +} + +button.ghost:hover i.login{ + left: 40px; + opacity: 1; +} + +form { + background-color: #fff; + display: flex; + align-items: center; + justify-content: center; + flex-direction: column; + padding: 0 50px; + height: 100%; + text-align: center; +} + +input { + background-color: #eee; + border-radius: 10px; + border: none; + padding: 12px 15px; + margin: 8px 0; + width: 100%; +} + +.container { + background-color: #fff; + border-radius: 25px; + box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22); + position: relative; + overflow: hidden; + width: 768px; + max-width: 100%; + min-height: 500px; +} + +.form-container { + position: absolute; + top: 0; + height: 100%; + transition: all 0.6s ease-in-out; +} + +.login-container { + left: 0; + width: 50%; + z-index: 2; +} + +.container.right-panel-active .login-container { + transform: translateX(100%); +} + +.register-container { + left: 0; + width: 50%; + opacity: 0; + z-index: 1; +} + +.container.right-panel-active .register-container { + transform: translateX(100%); + opacity: 1; + z-index: 5; + animation: show 0.6s; +} + +@keyframes show { + 0%, + 49.99% { + opacity: 0; + z-index: 1; + } + + 50%, + 100% { + opacity: 1; + z-index: 5; + } +} + +.overlay-container { + position: absolute; + top: 0; + left: 50%; + width: 50%; + height: 100%; + overflow: hidden; + transition: transform 0.6s ease-in-out; + z-index: 100; +} + +.container.right-panel-active .overlay-container { + transform: translate(-100%); +} + +.overlay { + background-image: url('image.gif'); + background-repeat: no-repeat; + background-size: cover; + background-position: 0 0; + color: #fff; + position: relative; + left: -100%; + height: 100%; + width: 200%; + transform: translateX(0); + transition: transform 0.6s ease-in-out; +} + +.overlay::before { + content: ""; + position: absolute; + left: 0; + right: 0; + top: 0; + bottom: 0; + background: linear-gradient( + to top, + rgba(46, 94, 109, 0.4) 40%, + rgba(46, 94, 109, 0) + ); +} + +.container.right-panel-active .overlay { + transform: translateX(50%); +} + +.overlay-panel { + position: absolute; + display: flex; + align-items: center; + justify-content: center; + flex-direction: column; + padding: 0 40px; + text-align: center; + top: 0; + height: 100%; + width: 50%; + transform: translateX(0); + transition: transform 0.6s ease-in-out; +} + +.overlay-left { + transform: translateX(-20%); +} + +.container.right-panel-active .overlay-left { + transform: translateX(0); +} + +.overlay-right { + right: 0; + transform: translateX(0); +} + +.container.right-panel-active .overlay-right { + transform: translateX(20%); +} + +.social-container { + margin: 20px 0; + display: flex; + gap: 30px; +} + +.social-container a { + border: 1px solid #dddddd; + border-radius: 50%; + display: inline-flex; + justify-content: center; + align-items: center; + margin: 0 5px; + height: 40px; + width: 40px; + transition: 0.3s ease-in-out; +} + +.social-container #fb:hover { + color: white; + background-color: #1877F2; +} +.social-container #lin:hover { + color: white; + background-color: #0A66C2; +} +.social-container #goog:hover { + color: white; + background-color: #34A853; +} + + + +/* Adjustments for screens smaller than 1024px */ +@media (max-width: 1024px) { + .container { + width: 80%; + } + + .overlay-panel { + padding: 0 30px; + } + + h1 { + font-size: 1.8rem; + } + + input { + padding: 10px; + font-size: 1rem; + } + + button { + padding: 10px 30px; + font-size: 1rem; + } +} + +/* Adjustments for screens smaller than 768px */ +@media (max-width: 768px) { + .container { + width: 90%; + min-height: 450px; + padding: 20px; + } + + form { + padding: 0 20px; + } + + input { + padding: 10px; + margin: 6px 0; + font-size: 0.9rem; + } + + button { + padding: 10px 30px; + margin: 8px; + font-size: 0.9rem; + } + + h1 { + font-size: 1.5rem; + } + + .overlay { + width: 100%; + left: 0; + transform: none; + } + + .overlay-panel { + width: 100%; + position: relative; + transform: none; + padding: 20px; + } + + .overlay-left{ + display: none; + } + +} + +/* Further adjustments for screens smaller than 480px */ +@media (max-width: 480px) { + .container { + width: 100%; + min-height: 400px; + padding: 10px; + } + + h1 { + font-size: 1.2rem; + margin-bottom: 10px; + } + + input { + padding: 8px; + margin: 5px 0; + font-size: 0.8rem; + } + + button { + padding: 8px 20px; + margin: 6px; + font-size: 0.8rem; + } + + .overlay { + height: 100%; + } + + .overlay-panel { + padding: 10px; + } +} +/* Banner styling */ +#successBanner { + display: none; + position: fixed; + top: 0; + left: 0; + width: 100%; + padding: 1rem; + background-color: green; + color: white; + text-align: center; + z-index: 1000; + font-size: 1.2rem; +} +.toggle-password { + position: relative; + cursor: pointer; + user-select: none; +} + +.toggle-password svg { + position: absolute; + right: 10px; + top: 50%; + transform: translateY(-50%); + height: 15px; +} + +/* Additional styles for password container */ +.password-container { + position: relative; + width: 100%; +} + +.password-container input { + padding-right: 30px; /* Adjust based on your eye icon size */ +} + +.container{ + background-color: #143C3D; +} +/* form{ + background-color: #143C3D; +} */ +.pass-link a{ + color: rgb(7, 7, 7); +} +.pass-link a:hover{ + color:aqua; +} + +input[type="checkbox"] { + accent-color: aqua; +} +.checkbox label{ + color:rgb(17, 17, 17); +} +span{ + color:whitesmoke; +} +.social-container a{ + color: whitesmoke; +} +.social-container a:hover{ + color: #4BB6B7; +} +.home-button{ + background-color: #022A2D; + border:none; } \ No newline at end of file diff --git a/log/login.html b/log/login.html index e80cf839..e8eaa942 100644 --- a/log/login.html +++ b/log/login.html @@ -5,7 +5,7 @@ RAPIDOC - + @@ -14,11 +14,13 @@ + + + + From 23b8a02143b5bc54e2ef7425856f11f1787cbf09 Mon Sep 17 00:00:00 2001 From: Namrata Diware Date: Sat, 10 Aug 2024 09:28:31 +0530 Subject: [PATCH 4/5] added logo --- log/login.css | 2 +- log/login.html | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/log/login.css b/log/login.css index 77b1d2b6..c98a19c5 100644 --- a/log/login.css +++ b/log/login.css @@ -460,7 +460,7 @@ section ul li a:hover { cursor: pointer; } .footer-bottom { - background-color: #001d1f; + background-color: #143C3D; padding: 10px 0; text-align: center; width: 100%; diff --git a/log/login.html b/log/login.html index e8eaa942..48a6d347 100644 --- a/log/login.html +++ b/log/login.html @@ -378,7 +378,7 @@

    RAPIDOC Newsletter


    From 470a8a5d1bc632f911120fa683530142153c2cd5 Mon Sep 17 00:00:00 2001 From: Namrata Diware Date: Sat, 10 Aug 2024 16:02:15 +0530 Subject: [PATCH 5/5] added js file --- log/script.js | 185 ++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 181 insertions(+), 4 deletions(-) diff --git a/log/script.js b/log/script.js index cdde04e0..2b3a5a63 100644 --- a/log/script.js +++ b/log/script.js @@ -1,3 +1,47 @@ +// document.addEventListener("DOMContentLoaded", function() { +// const registerButton = document.getElementById("register"); +// const loginButton = document.getElementById("login"); +// const container = document.getElementById("container"); +// const registerForm = document.getElementById("registerForm"); +// const loginForm = document.getElementById("loginForm"); + +// registerButton.addEventListener("click", (event) => { +// event.preventDefault(); +// container.classList.add("right-panel-active"); +// registerForm.scrollIntoView({ behavior: "smooth" }); +// }); + +// loginButton.addEventListener("click", (event) => { +// event.preventDefault(); +// container.classList.remove("right-panel-active"); +// loginForm.scrollIntoView({ behavior: "smooth" }); +// }); + +// registerForm.addEventListener("submit", (event) => { +// event.preventDefault(); +// // Your registration logic goes here + +// // Simulate registration success +// document.getElementById("registerMessage").style.display = "block"; +// setTimeout(() => { +// container.classList.remove("right-panel-active"); +// loginForm.scrollIntoView({ behavior: "smooth" }); +// }, 2000); +// }); + +// loginForm.addEventListener("submit", (event) => { +// event.preventDefault(); +// // Your login logic goes here + +// // Simulate login success +// alert("Login successful!"); +// // Redirect to the homepage after login +// setTimeout(() => { +// window.location.href = "index.html"; // Change "index.html" to your desired URL +// }, 1000); // Redirect after 1 second (1000 milliseconds) +// }); +// }); + document.addEventListener("DOMContentLoaded", function() { const registerButton = document.getElementById("register"); const loginButton = document.getElementById("login"); @@ -5,6 +49,22 @@ document.addEventListener("DOMContentLoaded", function() { const registerForm = document.getElementById("registerForm"); const loginForm = document.getElementById("loginForm"); + const successBanner = document.createElement("div"); + // successBanner.id = "successBanner"; + // successBanner.textContent = "Login Successful"; + document.body.appendChild(successBanner); + + // Function to toggle password visibility + function togglePasswordVisibility(toggleButton) { + const passwordField = document.querySelector(toggleButton.getAttribute("toggle")); + const type = passwordField.getAttribute("type") === "password" ? "text" : "password"; + passwordField.setAttribute("type", type); + + // Change eye icon appearance based on password field visibility + toggleButton.querySelector("svg").classList.toggle("visible"); + } + + // Event listener for register and login buttons registerButton.addEventListener("click", (event) => { event.preventDefault(); container.classList.add("right-panel-active"); @@ -17,9 +77,31 @@ document.addEventListener("DOMContentLoaded", function() { loginForm.scrollIntoView({ behavior: "smooth" }); }); + // Event listener for password visibility toggle in register form + const registerEye = document.querySelector("#registerForm .toggle-password"); + registerEye.addEventListener("click", function(event) { + event.preventDefault(); + togglePasswordVisibility(registerEye); + }); + + // Event listener for password visibility toggle in login form + const loginEye = document.querySelector("#loginForm .toggle-password"); + loginEye.addEventListener("click", function(event) { + event.preventDefault(); + togglePasswordVisibility(loginEye); + }); + registerForm.addEventListener("submit", (event) => { event.preventDefault(); // Your registration logic goes here + const name = registerForm.querySelector('input[type="text"]').value; + const email = registerForm.querySelector('input[type="email"]').value; + const password = registerForm.querySelector('#registerPassword').value; + + if (!name || !email || !password) { + alert("Kindly, Please fill all the details😊"); + return; + } // Simulate registration success document.getElementById("registerMessage").style.display = "block"; @@ -32,12 +114,107 @@ document.addEventListener("DOMContentLoaded", function() { loginForm.addEventListener("submit", (event) => { event.preventDefault(); // Your login logic goes here + const email = loginForm.querySelector('input[type="email"]').value; + const password = loginForm.querySelector('#loginPassword').value; + + if (!email || !password) { + alert("Kindly, Please fill all the details😊"); + return; + } // Simulate login success - alert("Login successful!"); - // Redirect to the homepage after login + successBanner.style.display = "block"; setTimeout(() => { - window.location.href = "index.html"; // Change "index.html" to your desired URL - }, 1000); // Redirect after 1 second (1000 milliseconds) + successBanner.style.display = "none"; + window.location.href = "login.html"; // Change "login.html" to your desired URL + }, 500); // Display banner for 2 seconds }); }); + + +// Import the functions you need from the SDKs you need +import { initializeApp } from "https://www.gstatic.com/firebasejs/9.9.2/firebase-app.js"; +import { getAuth, signInWithEmailAndPassword, createUserWithEmailAndPassword, sendEmailVerification, reload, deleteUser } from "https://www.gstatic.com/firebasejs/9.9.2/firebase-auth.js"; + +// Your web app's Firebase configuration +const firebaseConfig = { + apiKey: "YOUR_API_KEY", + authDomain: "YOUR_PROJECT_ID.firebaseapp.com", + projectId: "YOUR_PROJECT_ID", + storageBucket: "YOUR_PROJECT_ID.appspot.com", + messagingSenderId: "YOUR_MESSAGING_SENDER_ID", + appId: "YOUR_APP_ID", + measurementId: "YOUR_MEASUREMENT_ID" // optional +}; + + +// Initialize Firebase +const app = initializeApp(firebaseConfig); +const auth = getAuth(app); + +// Register event +const registerForm = document.getElementById('registerForm'); +registerForm.addEventListener('submit', async (e) => { + e.preventDefault(); + + const email = document.getElementById('registerEmail').value; + const password = document.getElementById('registerPassword').value; + + try { + const userCredential = await createUserWithEmailAndPassword(auth, email, password); + const user = userCredential.user; + + // Set a timeout for checking email verification + const timeout = setTimeout(async () => { + await reload(user); + if (!user.emailVerified) { + await deleteUser(user) + .then(() => { + alert('Account deleted due to unverified email.'); + location.reload(); // Reload the page after deletion + }) + .catch((error) => { + const errorCode = error.code; + const errorMessage = error.message; + alert(errorMessage); + location.reload(); // Reload the page on error + }); + } + }, 30000); // 30 seconds + + await sendEmailVerification(user); + alert('Registration successful! Please check your email to verify your account.'); + } catch (error) { + const errorCode = error.code; + const errorMessage = error.message; + alert(errorMessage); + location.reload(); // Reload the page on error + } +}); + +// Login event +const loginForm = document.getElementById('loginForm'); +loginForm.addEventListener('submit', async (e) => { + e.preventDefault(); + + const email = document.getElementById('loginEmail').value; + const password = document.getElementById('loginPassword').value; + + try { + const userCredential = await signInWithEmailAndPassword(auth, email, password); + const user = userCredential.user; + + // Check if email is verified + await reload(user); // Ensure latest user data is fetched + if (user.emailVerified) { + window.location.href = '/index.html'; // Redirect to index.html upon successful login + } else { + alert('Please verify your email address.'); + } + } catch (error) { + const errorCode = error.code; + const errorMessage = error.message; + alert(errorMessage); + location.reload(); // Reload the page on error + } +}); \ No newline at end of file