diff --git a/.htaccess b/.htaccess new file mode 100644 index 0000000..55a7fe9 --- /dev/null +++ b/.htaccess @@ -0,0 +1,10 @@ +RewriteEngine On +RewriteCond %{HTTPS} off [OR] +RewriteCond %{HTTP_HOST} ^www\. [NC] +RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC] +RewriteRule ^ https://%1%{REQUEST_URI} [L,NE,R=301] + + +#index.html redirect +RewriteRule ^index\.html$ https://anwisystems.com/ [R=301,L] + diff --git a/accessories.html b/accessories.html new file mode 100644 index 0000000..daaebdf --- /dev/null +++ b/accessories.html @@ -0,0 +1,133 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Laptops | Anwi + + + + + + + + +
+
+
+
+
+
+
+ +
+
+
+

Discover the revolution of

+ +
+
+ Join the future with Anwi + Systems +
+
+ +
+
+
+
+ +
+
+
+

ORA 8GB DDR4 3200MHz Desktop RAM

+
+
8GB DDR4
+
3200 Mhz
+ +
+
+
+ +
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/allinones.html b/allinones.html new file mode 100644 index 0000000..2c5d867 --- /dev/null +++ b/allinones.html @@ -0,0 +1,284 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Laptops | Anwi + + + + + + + + +
+
+
+
+
+
+
+
+ +
+
+
+
+

Unleashing the Beasts of Creativity & + Innovation with Graphics, AI, and ML

+

FYRO products are the ultimate machines for graphics, AI, and ML + enthusiasts. With powerful Intel® processors and advanced NVIDIA graphics + cards, FYRO laptops and all-in-ones deliver the raw power and + performance needed to handle the most demanding workloads. Whether + you're a gamer, video editor, or AI researcher, FYRO has the tools you need + to unleash your creativity and push the boundaries of what's possible.

+
+ +
+
+

With sleek designs and customizable features, FYRO products + are the + perfect blend of style and substance, offering unparalleled performance + and portability in a compact package. Join the FYRO revolution and + experience the power of next-gen computing today.

+
+
+
+
+
+ +
+

Unmatched GPU Performance

+
+
+
+
+
+ +
+

High-end Gaming Capabilities

+
+
+
+
+
+
+
+ +
+

Thermal Tested to handle + high Temp upto 105o

+
+
+
+
+
+ +
+

Decent + Battery backup

+
+
+
+
+
+ +
+
+
+

The compact powerhouse for your productivity

+

Zeno products are a range of sleek, powerful, and compact non-GPU + laptops and all-in-ones that offer exceptional performance and style. + Built with state-of-the-art components, including the latest generation of + Intel® processors, High-speed RAM, and Fast NVMe PCIe 4.0 SSDs.

+
+ +
+

+ Zeno products are designed to meet the needs of professionals, students, and + anyone who requires a reliable and portable computing solution. With their advanced + features, including customizable hotkeys, fingerprint recognition, and a variety of + connectivity options, Zeno products offer the perfect blend of style and substance for + those who want a high-performing computing experience in a compact package. +

+
+
+
+
+ +
+

Sleek & Light weight

+
+
+
+ +
+

Lightening-fast Intel® Processors +

+
+
+
+ +
+

Stunning Display

+
+
+
+
+
+
+
+
+

Discover the revolution of

+ +
+
+ Join the future with Anwi + Systems +
+
+ +
+
+
+
+ +
+
+
+

ORA 8GB DDR4 3200MHz Desktop RAM

+
+
8GB DDR4
+
3200 Mhz
+ +
+
+
+ +
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/dist/Js/auth/login_11.js b/dist/Js/auth/login_11.js new file mode 100644 index 0000000..2b58723 --- /dev/null +++ b/dist/Js/auth/login_11.js @@ -0,0 +1,383 @@ +function initLogin() { + let reg_name, reg_email, reg_number, reg_pwd, reg_otp_email; + let loginForm = $("#login_form"); + let registerForm = $("#register_form"); + + // document.querySelector('#register_form .otp-input-group input.press').addEventListener("paste", function (p) { + // var data = p.clipboardData.getData('text'); + // var dataLength = data.length; + + // for (var i = 0; i < dataLength; i++) { + // var input = document.querySelector("#register_form .otp-input-group input[tabindex='" + (i + 1) + "']"); + // input.value = data.charAt(i); + // if (input.value.length >= input.maxLength) { + // var nextInput = document.querySelector("#register_form .otp-input-group input[tabindex='" + (i + 2) + "']"); + // if (nextInput) { + // nextInput.focus(); + // } + // } + // } + // p.preventDefault(); + // }); + // document.querySelectorAll('#register_form .otp-input-group input[type="text"]').forEach(function (input) { + // input.addEventListener('keyup', function (e) { + // if (this.value.length >= this.maxLength) { + // if (e.keyCode !== 9 && e.keyCode !== 16) { + // var tabIndex = this.tabIndex + 1; + // document.querySelector("#register_form .otp-input-group input[tabindex='" + this.tabIndex + "']").value = this.value; + // document.querySelector("#register_form .otp-input-group input[tabindex='" + tabIndex + "']").focus(); + // } + // } else { + // if (e.keyCode === 8) { + // var tabIndex = this.tabIndex - 1; + // document.querySelector("#register_form .otp-input-group input[tabindex='" + tabIndex + "']").focus(); + // } + // } + // }); + // }); + + $('#register_form .otp-input-group input.press').on('paste', function (p) { + var data = p.originalEvent.clipboardData.getData('text'); + var dataLength = data.length; + + for (var i = 0; i < dataLength; i++) { + var input = $('#register_form .otp-input-group input[tabindex="' + (i + 1) + '"]'); + input.val(data.charAt(i)); + if (input.val().length >= input.attr('maxlength')) { + var nextInput = $('#register_form .otp-input-group input[tabindex="' + (i + 2) + '"]'); + if (nextInput) { + nextInput.focus(); + } + } + } + p.preventDefault(); + }); + + $('#register_form .otp-input-group input[type="text"]').on('keyup', function (e) { + if ($(this).val().length >= $(this).attr('maxlength')) { + if (e.keyCode !== 9 && e.keyCode !== 16) { + var tabIndex = parseInt($(this).attr('tabindex')) + 1; + $('#register_form .otp-input-group input[tabindex="' + $(this).attr('tabindex') + '"]').val($(this).val()); + $('#register_form .otp-input-group input[tabindex="' + tabIndex + '"]').focus(); + } + } else { + if (e.keyCode === 8) { + var tabIndex = parseInt($(this).attr('tabindex')) - 1; + $('#register_form .otp-input-group input[tabindex="' + tabIndex + '"]').focus(); + } + } + }); + + + loginForm.find("#User_Email,#User_password").keypress(function (e) { + if (e.which == 13) + document.getElementById("Login_btn").click(); + + }); + + $("#Login_btn").click(function () { + loginForm.find(".loader-btn").show(); + $(this).hide(); + let userEmail = loginForm.find("#User_Email").val(); + let userPassword = loginForm.find("#User_password").val(); + let emailInput = loginForm.find(".email-login-inputgroup"); + let passwordInput = loginForm.find(".password-login-inputgroup"); + if (userEmail == "") { + emailInput.find('#User_Email').addClass('is-invalid'); + emailInput.find('.form-floating').addClass('is-invalid'); + emailInput.find('.invalid-feedback').text('Please enter your email'); + loginForm.find(".loader-btn").hide(); + $(this).show(); + + } + if (userPassword == "") { + passwordInput.find('#User_password').addClass('is-invalid'); + passwordInput.find('.form-floating').addClass('is-invalid'); + loginForm.find(".loader-btn").hide(); + $(this).show(); + } + else { + emailInput.find('#User_Email').removeClass('is-invalid'); + emailInput.find('.form-floating').removeClass('is-invalid'); + passwordInput.find('#User_password').removeClass('is-invalid'); + passwordInput.find('.form-floating').removeClass('is-invalid'); + if (validateEmail(userEmail)) { + let port = SERVERNAME + // let port = "http://localhost:3088"; + let url = `${port}/account/getuserbyphoneormail/${userEmail}/${userEmail}`; + getDataStatAxios(url, userEmail); + } else { + loginForm.find(".loader-btn").hide(); + $(this).show(); + emailInput.find('#User_Email').addClass('is-invalid'); + emailInput.find('.form-floating').addClass('is-invalid'); + emailInput.find('.invalid-feedback').text('Please enter a valid email'); + } + } + }); + + async function getDataStatAxios(url, userEmail) { + const config = { + url, + method: "get", + }; + let response = await axios(config); + if (response.data.result == null) { + $('.error-div').text(response.data.message); + } + else { + let userEmail = $("#User_Email").val(); + let userPassword = $("#User_password").val(); + const loginPayload = { + username: userEmail, + Password: userPassword, + UnibaseId: "", + RememberMe: false, + }; + const res = await postAPIService( + `bizgaze/crm/webapi/crmuserlogin`, + loginPayload + ); + debugger; + console.log(res); + if (res.data.message == "200") { + // Command: toastr["success"]("Logged in successfully") + // toasterOpts(); + debugger; + COOKIE_HELPER_ACTIONS.setCookie({ + token: res.data.result.sessionId, + userid: res.data.result.userId, + ...res.data.result + }) + // setInitLoginLocal(); + // window.localStorage.setItem("Useremail", userEmail); + //window.localStorage.setItem("Userpassword", userPassword); + //window.localStorage.setItem("Isloggedin", true); + const isCartAdded = localStorage.getItem(CART_ADD); + if(isCartAdded){ + localStorage.removeItem(CART_ADD); + window.location.href = `/selectdelivery.html`; + return; + } + window.location.href = `/index.html`; + } else { + $("#empt_num").removeClass("d-none text-success").text(res.data.message).addClass('text-danger'); + $(".my_avatar").attr("href", "./login.html"); + } + } + } + + // this function will be triggered on new user registration + async function userRegistration() { + reg_form = $('#register_form'); + // reg_name = $("#User_Name").val(); + reg_email = reg_form.find("#User_Email").val(); + // reg_otp_email = $("#User_otp_Email").val(); + // reg_number = $("#user_number").val(); + reg_pwd = reg_form.find("#User_password").val(); + let userName = reg_email.split("@"); + let otpRes = null; + const userRegistratioNPayload = { + organizationtypeid: "2", + organizationid: "0", + contactid: "0", + userid: "0", + username: "0", + users_phonenumber: "0", + password: reg_pwd, + users_emailaddress: "0", + emailaddress: reg_email, + contactname: userName[0], + phonenumber: "0", + branchid: "0", + tenantname: "Anwi Systems", + rolename: "Customer Admin", + currencyid: "0", + customerformuniqueid: "Bizgaze_Platform_Crm_RegisterCRMUser", + }; + $('.spinner-border').removeClass('d-none'); + const res = await postAPIService( + `bizgaze/crm/webapi/registercrmuser`, + userRegistratioNPayload + ); + console.log(res, "register"); + $('.spinner-border').addClass('d-none'); + if (res.data.message == "User Already Exists!") { + $('.error-div').text('User Already Exists!'); + // $(".useralready_exist").removeClass("d-none"); + } else { + } + + $("#proceed").click(async function () { + let userEnterOtp = ""; + let userEmail = registerForm.find("#User_Email").val(); + $('.otp-input-group input').each(function () { + let presVal = $(this).val(); + userEnterOtp += presVal; + }) + console.log(userEnterOtp); + debugger; + const userotppayload = { + email: userEmail, + otpid: res.data.result.OtpId, + userotp: userEnterOtp, + }; + $('.spinner-border').removeClass('d-none'); + otpRes = await postAPIService( + `bizgaze/crm/webapi/ValidateOtp`, + userotppayload + ); + $('.spinner-border').addClass('d-none'); + debugger; + console.log(otpRes, "otp"); + const verifyotpStatus = otpRes.data.result; + debugger; + if (verifyotpStatus == "Otp verified successfully") { + alert("Account created successfully"); + window.location.href = `/myaccount.html`; + } else { + alert("please enter valid otp"); + } + }); + } + + // to validate password on keyup in password input field + function passwordValidate(pswd) { + if (pswd.length < 11) { + $('#chck_length').removeClass('pswd_valid').addClass('pswd_invalid'); + } else { + $('#chck_length').removeClass('pswd_invalid').addClass('pswd_valid'); + } + // validate uppercase letter + if (pswd.match(/[A-Z]/)) { + $('#chck_capital').removeClass('pswd_invalid').addClass('pswd_valid'); + } else { + $('#chck_capital').removeClass('pswd_valid').addClass('pswd_invalid'); + } + //validate special letter + if (pswd.match(/[!@#$%^&*]/)) { + $('#chck_special').removeClass('pswd_invalid').addClass('pswd_valid'); + } else { + $('#chck_special').removeClass('pswd_valid').addClass('pswd_invalid'); + } + let pswdVal = $('#register_form #User_password').val(); + let pattern = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9]).{11,}$/; + if (pswdVal.match(pattern)) { + $('#pswd_info').hide() + } + else { + $('#pswd_info').show() + } + //validate number + if (pswd.match(/\d/)) { + $('#chck_number').removeClass('pswd_invalid').addClass('pswd_valid'); + } else { + $('#chck_number').removeClass('pswd_valid').addClass('pswd_invalid'); + } + + }; + + //you have to use keyup, because keydown will not catch the currently entered value + $('#register_form #User_password').keyup(function () { + // set password variable + var pswd = $(this).val(); + passwordValidate(pswd); + }).focus(function () { + let pswdVal = $('#register_form #User_password').val(); + let pattern = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9]).{11,}$/; + if (pswdVal.match(pattern)) { + $('#pswd_info').hide() + } + else { + $('#pswd_info').show() + } + }).blur(function () { + $('#pswd_info').hide(); + }); + + // function to validate user entered email + function validateEmail(userEmail) { + var pattern = + /^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/; + return $.trim(userEmail).match(pattern) ? true : false; + } + + // function to validate user entered password + function validatepassword(userPassword) { + var pattern = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9]).{11,}$/; + return $.trim(userPassword).match(pattern) ? true : false; + } + + registerForm.find("#User_Email,#User_password").keypress(function (e) { + if (e.which == 13) + document.getElementById("register_btn").click(); + + }); + + // this will be triggered on clicking continue in signup form + $("#register_btn").click(function () { + registerForm.find(".loader-btn").show(); + $(this).hide(); + let userEmail = registerForm.find("#User_Email").val(); + let userPassword = registerForm.find("#User_password").val(); + let emailInput = registerForm.find(".email-login-inputgroup"); + let passwordInput = registerForm.find(".password-login-inputgroup"); + if (userEmail == "") { + emailInput.find('#User_Email').addClass('is-invalid'); + emailInput.find('.form-floating').addClass('is-invalid'); + emailInput.find('.invalid-feedback').text('Please enter your email'); + registerForm.find(".loader-btn").hide(); + $(this).show(); + } + if (userPassword == "") { + passwordInput.find('#User_password').addClass('is-invalid'); + passwordInput.find('.form-floating').addClass('is-invalid'); + registerForm.find(".loader-btn").hide(); + $(this).show(); + } + else { + emailInput.find('#User_Email').removeClass('is-invalid'); + emailInput.find('.form-floating').removeClass('is-invalid'); + passwordInput.find('#User_password').removeClass('is-invalid'); + passwordInput.find('.form-floating').removeClass('is-invalid'); + if (validateEmail(userEmail)) { + $('#register_form .email-password-group').hide(); + $('#register_form .otp-input-group').show(); + $('#register_form .otp-input-group .otp-sent-email').text(userEmail); + userRegistration(); + } else { + emailInput.find('#User_Email').addClass('is-invalid'); + emailInput.find('.form-floating').addClass('is-invalid'); + emailInput.find('.invalid-feedback').text('Please enter a valid email'); + registerForm.find(".loader-btn").hide(); + $(this).show(); + } + } + }); + + $('#forgotPassword').click(function () { + $('.login-email-password-div').hide(); + $('.login-forgot-passsword-div').show(); + }) + + function toasterOpts() { + toastr.options = { + "closeButton": true, + "debug": false, + "newestOnTop": true, + "progressBar": true, + "positionClass": "toast-top-center", + "preventDuplicates": true, + "showDuration": "300", + "hideDuration": "1000", + "timeOut": "3000", + "extendedTimeOut": "1000", + "showEasing": "swing", + "hideEasing": "linear", + "showMethod": "fadeIn", + "hideMethod": "fadeOut" + } + } +} + +initLogin(); diff --git a/dist/Js/auth/login_ing.js b/dist/Js/auth/login_ing.js new file mode 100644 index 0000000..d93ba1c --- /dev/null +++ b/dist/Js/auth/login_ing.js @@ -0,0 +1,780 @@ +function initLogin() { + // alert('as') + // Command: toastr["success"]("Logged in successfully") + // Command: toastr["success"]("My name is Inigo Montoya. You killed my father. Prepare to die!") + + // toasterOpts(); + let reg_name, reg_email, reg_number, reg_pwd, reg_otp_email; + let loginForm = $("#login_form"); + let registerForm = $("#register_form"); + + $("#register_form .otp-input-group input.press").on("paste", function (p) { + var data = p.originalEvent.clipboardData.getData("text"); + var dataLength = data.length; + + for (var i = 0; i < dataLength; i++) { + var input = $( + '#register_form .otp-input-group input[tabindex="' + (i + 1) + '"]' + ); + input.val(data.charAt(i)); + if (input.val().length >= input.attr("maxlength")) { + var nextInput = $( + '#register_form .otp-input-group input[tabindex="' + (i + 2) + '"]' + ); + if (nextInput) { + nextInput.focus(); + } + } + } + p.preventDefault(); + }); + + $('#register_form .otp-input-group input[type="text"]').on( + "keyup", + function (e) { + if ($(this).val().length >= $(this).attr("maxlength")) { + if (e.keyCode !== 9 && e.keyCode !== 16) { + var tabIndex = parseInt($(this).attr("tabindex")) + 1; + $( + '#register_form .otp-input-group input[tabindex="' + + $(this).attr("tabindex") + + '"]' + ).val($(this).val()); + $( + '#register_form .otp-input-group input[tabindex="' + tabIndex + '"]' + ).focus(); + } + } else { + if (e.keyCode === 8) { + var tabIndex = parseInt($(this).attr("tabindex")) - 1; + $( + '#register_form .otp-input-group input[tabindex="' + tabIndex + '"]' + ).focus(); + } + } + } + ); + + loginForm.find("#User_Email,#User_password").keypress(function (e) { + if (e.which == 13) $("#Login_btn").click(); + }); + + $("#Login_btn").click(function () { + $('.error_msg').hide(); + // loginForm.find(".loader-btn").show(); + let userEmail = loginForm.find("#User_Email").val(); + let userPassword = loginForm.find("#User_password").val(); + let emailInput = loginForm.find(".email-login-inputgroup"); + let passwordInput = loginForm.find(".password-login-inputgroup"); + if (userEmail == "") { + emailInput.find("#User_Email").addClass("is-invalid"); + emailInput.find(".form-floating").addClass("is-invalid"); + emailInput.find(".invalid-feedback").text("Please enter your email"); + loginForm.find(".loader-btn").hide(); + $(this).show(); + } + if (userPassword == "") { + passwordInput.find("#User_password").addClass("is-invalid"); + passwordInput.find(".form-floating").addClass("is-invalid"); + loginForm.find(".loader-btn").hide(); + $(this).show(); + } else { + emailInput.find("#User_Email").removeClass("is-invalid"); + emailInput.find(".form-floating").removeClass("is-invalid"); + passwordInput.find("#User_password").removeClass("is-invalid"); + passwordInput.find(".form-floating").removeClass("is-invalid"); + if (validateEmail(userEmail)) { + let port = SERVERNAME + // let port = "http://localhost:3088"; + let url = `${port}/account/getuserbyphoneormail/${userEmail}/${userEmail}`; + getDataStatAxios(url, userEmail); + } else { + loginForm.find(".loader-btn").hide(); + $(this).show(); + emailInput.find("#User_Email").addClass("is-invalid"); + emailInput.find(".form-floating").addClass("is-invalid"); + emailInput.find(".invalid-feedback").text("Please enter a valid email"); + } + } + }); + async function getDataStatAxios(url, userEmail) { + const config = { + url, + method: "get", + }; + let response = await axios(config); + if (response.data.result == null) { + $('.error_msg').show(); + $('.error_msg .error_msg_res').html(`User doesn't exists with the email, Sign Up `); + $(".register_sectionbtn").click(function(){ + + + $(".login_section").css("display","none"); + $(".register_section").css("display","block"); + $(".login_section").find("#User_Email").removeClass("is-invalid"); + $(".login_section").find(".form-floating").removeClass("is-invalid"); + $(".login_section").find("#User_password").removeClass("is-invalid"); + $(".login_section").find(".form-floating").removeClass("is-invalid"); + $('.error_msg').hide(); + }); + // toasterOpts(); + + // Command: toastr["error"]("Please enter Valid email / password"); + } else { + let userEmail = $("#User_Email").val(); + let userPassword = $("#User_password").val(); + const loginPayload = { + username: userEmail, + Password: userPassword, + UnibaseId: "", + RememberMe: false, + }; + $("#Login_btn").hide(); + $(".loader-btn").show(); + const res = await postAPIService( + `bizgaze/crm/webapi/crmuserlogin`, + loginPayload + ); + debugger; + console.log(res); + $(".loader-btn").hide(); + $("#Login_btn").show(); + if (res.data.message == "200") { + debugger; + // Command: toastr["success"]("Logged in successfully") + // toasterOpts(); + COOKIE_HELPER_ACTIONS.setCookie({ + token: res.data.result.sessionId, + userid: res.data.result.userId, + ...res.data.result + }); + // setInitLoginLocal(); + window.localStorage.setItem("Useremail", userEmail); + //window.localStorage.setItem("Userpassword", userPassword); + window.localStorage.setItem("Isloggedintoaster", true); + window.localStorage.setItem("Isloggedin", true); + + const isCartAdded = localStorage.getItem(CART_ADD); + if(isCartAdded){ + localStorage.removeItem(CART_ADD); + window.location.href = `/selectdelivery.html`; + return; + } + + window.location.href = `./index.html`; + } else { + $('.error_msg').show(); + $('.error_msg .error_msg_res').html(res.data.message + ' Validate Email'); + // toasterOpts(); + // Command: toastr["error"]() + /*Email validation*/ + $('.validate_mail').click(function(){ + $(".login_section").hide(); + $(".email-validate-div").show(); + $('.error_msg').hide(); + }) + } + } + } + + // this function will be triggered on new user registration + async function userRegistration() { + reg_form = $("#register_form"); + // reg_name = $("#User_Name").val(); + reg_email = reg_form.find("#User_Email").val(); + // reg_otp_email = $("#User_otp_Email").val(); + // reg_number = $("#user_number").val(); + reg_pwd = reg_form.find("#User_password").val(); + let userName = reg_email.split("@"); + let otpRes = null; + const userRegistratioNPayload = { + organizationtypeid: "2", + organizationid: "0", + contactid: "0", + userid: "0", + username: "0", + users_phonenumber: "0", + password: reg_pwd, + users_emailaddress: "0", + emailaddress: reg_email, + contactname: userName[0], + phonenumber: "0", + branchid: "0", + tenantname: "Anwi Systems", + rolename: "Customer Admin", + currencyid: "0", + customerformuniqueid: "Bizgaze_Platform_Crm_RegisterCRMUser", + }; + debugger; + $('#register_btn').hide() + $(".loader-btn").show(); + debugger; + const res = await postAPIService( + `bizgaze/crm/webapi/registercrmuser`, + userRegistratioNPayload + ); + console.log(res, "register"); + $(".loader-btn").hide(); + $('#register_btn').show() + if (res.data.code == "404" ) { + // toasterOpts(); + // Command: toastr["error"](res.data.message) + $('.error_msg').show(); + $('.error_msg .error_msg_res').html(res.data.message); + return; + } + else { + $("#register_form .email-password-group").hide(); + $("#register_form .register_otp.otp-input-group").show(); + } + + $("#proceed").click(async function () { + let userEnterOtp = ""; + let userEmail = registerForm.find("#User_Email").val(); + $(".otp-input-group input").each(function () { + let presVal = $(this).val(); + userEnterOtp += presVal; + }); + console.log(userEnterOtp); + debugger; + const userotppayload = { + email: userEmail, + otpid: res.data.result.OtpId, + userotp: userEnterOtp, + }; + $(".loader-btn").show(); + $('#proceed').hide() + otpRes = await postAPIService( + `bizgaze/crm/webapi/ValidateOtp`, + userotppayload + ); + $(".loader-btn").hide(); + $('#proceed').show() + debugger; + console.log(otpRes, "otp"); + const verifyotpStatus = otpRes.data.result; + if (verifyotpStatus == "Otp verified successfully") { + const loginPayload = { + username: reg_email, + Password: reg_pwd, + UnibaseId: "", + RememberMe: false, + }; + const res = await postAPIService( + `bizgaze/crm/webapi/crmuserlogin`, + loginPayload + ); + if (res.data.message == "200") { + debugger; + // Command: toastr["success"]("Logged in successfully") + // toasterOpts(); + COOKIE_HELPER_ACTIONS.setCookie({ + token: res.data.result.sessionId, + userid: res.data.result.userId, + ...res.data.result + }); + // setInitLoginLocal(); + window.localStorage.setItem("Useremail", userEmail); + //window.localStorage.setItem("Userpassword", userPassword); + window.localStorage.setItem("isaccountCreated", true); + const isCartAdded = localStorage.getItem(CART_ADD); + if(isCartAdded){ + localStorage.removeItem(CART_ADD); + window.location.href = `/selectdelivery.html`; + return; + } + window.location.href = `./index.html`; + } else { + // toasterOpts(); + // Command: toastr["error"](res.data.message) + $('.error_msg').show(); + $('.error_msg .error_msg_res').html(res.data.message); + } + } else { + // toasterOpts(); + // Command: toastr["error"]("Please enter Valid OTP"); + $('.error_msg').show(); + $('.error_msg .error_msg_res').html("Please enter Valid OTP"); + } + }); + } + + // to validate password on keyup in password input field + function passwordValidate(pswd) { + if (pswd.length < 8) { + $("#chck_length").removeClass("pswd_valid").addClass("pswd_invalid"); + } else { + $("#chck_length").removeClass("pswd_invalid").addClass("pswd_valid"); + } + // validate uppercase letter + if (pswd.match(/[A-Z]/)) { + $("#chck_capital").removeClass("pswd_invalid").addClass("pswd_valid"); + } else { + $("#chck_capital").removeClass("pswd_valid").addClass("pswd_invalid"); + } + //validate special letter + if (pswd.match(/[!@#$%^&*]/)) { + $("#chck_special").removeClass("pswd_invalid").addClass("pswd_valid"); + } else { + $("#chck_special").removeClass("pswd_valid").addClass("pswd_invalid"); + } + let pswdVal = $("#register_form #User_password").val(); + let pattern = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9]).{8,}$/; + if (pswdVal.match(pattern)) { + $(".pswd_info").hide(); + } else { + $(".pswd_info").show(); + } + //validate number + if (pswd.match(/\d/)) { + $("#chck_number").removeClass("pswd_invalid").addClass("pswd_valid"); + } else { + $("#chck_number").removeClass("pswd_valid").addClass("pswd_invalid"); + } + } + + //you have to use keyup, because keydown will not catch the currently entered value + $("#register_form #User_password") + .keyup(function () { + // set password variable + var pswd = $(this).val(); + passwordValidate(pswd); + }) + .focus(function () { + let pswdVal = $("#register_form #User_password").val(); + let pattern = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9]).{11,}$/; + if (pswdVal.match(pattern)) { + $(".pswd_info").hide(); + } else { + $(".pswd_info").show(); + } + }) + .blur(function () { + $(".pswd_info").hide(); + }); + + // function to validate user entered email + function validateEmail(userEmail) { + var pattern = /^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/; + // return $.trim(userEmail).test(pattern) ? true : false; + return pattern.test(userEmail) ? true : false; + } + + // function to validate user entered password + function validatepassword(userPassword) { + var pattern = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9])(?!.*\s).{8,15}$/; + // return $.trim(userPassword).test(pattern) ? true : false; + return pattern.test(userPassword) ? true : false; + } + + registerForm.find("#User_Email,#User_password").keypress(function (e) { + if (e.which == 13) $("#register_btn").click(); + }); + + // this will be triggered on clicking continue in signup form + $("#register_btn").click(function () { + $('.error_msg').hide(); + registerForm.find(".loader-btn").show(); + $(this).hide(); + let userEmail = registerForm.find("#User_Email").val(); + let userPassword = registerForm.find("#User_password").val(); + let emailInput = registerForm.find(".email-login-inputgroup"); + let passwordInput = registerForm.find(".password-login-inputgroup"); + if (userEmail == "") { + emailInput.find("#User_Email").addClass("is-invalid"); + emailInput.find(".form-floating").addClass("is-invalid"); + emailInput.find(".invalid-feedback").text("Please enter your email"); + registerForm.find(".loader-btn").hide(); + $(this).show(); + } + if (userPassword == "") { + passwordInput.find("#User_password").addClass("is-invalid"); + passwordInput.find(".form-floating").addClass("is-invalid"); + registerForm.find(".loader-btn").hide(); + $(this).show(); + } else { + emailInput.find("#User_Email").removeClass("is-invalid"); + emailInput.find(".form-floating").removeClass("is-invalid"); + passwordInput.find("#User_password").removeClass("is-invalid"); + passwordInput.find(".form-floating").removeClass("is-invalid"); + let Email_valid = validateEmail(userEmail); + let Pwd_valid = validatepassword(userPassword); + if (Email_valid === true && Pwd_valid === true) { + userRegistration(); + $("#register_form .otp-input-group .otp-sent-email").text(userEmail); + } else if(Email_valid === false) { + emailInput.find("#User_Email").addClass("is-invalid"); + emailInput.find(".form-floating").addClass("is-invalid"); + emailInput.find(".invalid-feedback").text("Please enter a valid email"); + registerForm.find(".loader-btn").hide(); + $(this).show(); + }else if(Pwd_valid === false){ + passwordInput.find("#User_password").addClass("is-invalid"); + passwordInput.find(".form-floating").addClass("is-invalid"); + passwordInput.find(".invalid-feedback").text("Please check the password!"); + registerForm.find(".loader-btn").hide(); + $(this).show(); + } + } + }); + $(".pswd_eye").click(function(){ + let eyeClass = $(this).find('svg').hasClass("fa-eye-slash"); + if(eyeClass == true){ + $(this).find('svg').removeClass("fa-eye-slash"); + $(this).find('svg').addClass("fa-eye"); + $(this).siblings('input').attr('type','password') + }else{ + $(this).find('svg').removeClass("fa-eye"); + $(this).find('svg').addClass("fa-eye-slash"); + $(this).siblings('input').attr('type','text') + } +}) + + $("#forgotPassword").click(function () { + $(".login-email-password-div").hide(); + $(".login-forgot-password-div").show(); + }); + $("#forgot_Password_Back").click(function () { + $(".login-forgot-password-div").hide(); + $(".login-email-password-div").show(); + }); + $("#forgot_password_submit").click(async function () { + let forgot_email = $("#forgot_User_Email").val(); + if(forgot_email == ''){ +$('#forgot_User_Email').addClass('is-invalid') +$('#forgot_User_Email').after(`
Please enter Valid email
`); +return + } + else{ + debugger; + let port = SERVERNAME + // let port = "http://localhost:3088"; + let url = `${port}/account/getuserbyphoneormail/${forgot_email}/${forgot_email}`; + const config = { + url, + method: "get", + }; + $(".loader-btn").show(); + $('#forgot_password_submit').hide() + let response = await axios(config); + debugger; + console.log(response); + $(".loader-btn").hide(); + $('#forgot_password_submit').show() + if (response.data.result != null) { + debugger; + console.log(response.data); + const forgotpassPayload = { + firstname: "", + lastname: "", + contactnumber: "", + email: "", + tenantname: "", + contactoremail: response.data.result.email, + IsSignup: false, + IsRegisterUser: false, + IsForgotPswd: true, + UnibaseId: response.data.result.userName, + OtpId: 0, + UserOtp: "", + }; + $('#forgot_password_submit').hide() + $(".loader-btn").show(); + const forgetpassRes = await postAPIService( + `account/sendotp`, + forgotpassPayload + ); + $(".loader-btn").hide(); + console.log(forgetpassRes); + $(".email-validation").hide(); + $('.user_email').html(forgot_email) + $(".otp-validation .otp-input-group").show(); + $(".otp-validation .otp-input-group").on("paste", function (p) { + let data = p.originalEvent.clipboardData.getData("text"); + let dataLength = data.length; + for (let i = 0; i < dataLength; i++) { + let input = $( + '.otp-validation .otp-input-group input[tabindex="' + (i + 1) + '"]' + ); + input.val(data.charAt(i)); + if (input.val().length >= input.attr("maxlength")) { + let nextInput = $( + '.otp-validation .otp-input-group input[tabindex="' + + (i + 2) + + '"]' + ); + if (nextInput) { + nextInput.focus(); + } + } + } + p.preventDefault(); + }); + + $('.otp-validation .otp-input-group input[type="text"]').on( + "keyup", + function (e) { + if ($(this).val().length >= $(this).attr("maxlength")) { + if (e.keyCode !== 9 && e.keyCode !== 16) { + let tabIndex = parseInt($(this).attr("tabindex")) + 1; + $( + '.otp-validation .otp-input-group input[tabindex="' + + $(this).attr("tabindex") + + '"]' + ).val($(this).val()); + $( + '.otp-validation .otp-input-group input[tabindex="' + + tabIndex + + '"]' + ).focus(); + } + } else { + if (e.keyCode === 8) { + let tabIndex = parseInt($(this).attr("tabindex")) - 1; + $( + '.otp-validation .otp-input-group input[tabindex="' + + tabIndex + + '"]' + ).focus(); + } + } + } + ); + $("#Forgot_pass_proceed").click(async function () { + debugger; + let userotp=''; + $(".otp-validation .otp-input-group input").each(function () { + let presVal = $(this).val(); + userotp += presVal; + }); + console.log(userotp); + const validateForgotpass = { + email: forgot_email, + otpid: forgetpassRes.data, + userotp: userotp, + }; + $('#Forgot_pass_proceed').hide() + $(".loader-btn").show(); + const forgetpassResotp = await postAPIService( + `hyperfusion/validateotp`, + validateForgotpass + ); + $(".loader-btn").hide(); + $('#Forgot_pass_proceed').show() + console.log(forgetpassResotp); + const Resotp = forgetpassResotp.data.result; + if (Resotp == "Otp verified successfully") { + $(".login-forgot-password-details-div").show(); + $(".otp-validation .otp-input-group").hide(); + } else { + // toasterOpts() + // Command: toastr["error"]("Please enter Valid OTP"); + $('.error_msg').show(); + $('.error_msg .error_msg_res').html("Please enter Valid OTP"); + } + }); + $("#forgot_password_details_submit").click(async function () { + debugger; + let pswdone =$("#forgot-password-input-one").val(); + let pswdtwo =$("#forgot-password-input-two").val(); + if(pswdone == pswdtwo) { + const forgotpassPayload = { + username: response.data.result.userName, + password: pswdtwo, + }; + $("#forgot_password_details_submit").hide(); + $(".loader-btn").show(); + const forgetpassRes = await postAPIService( + `account/UpdatePassword`, + forgotpassPayload + ); + console.log(forgetpassRes); + $(".loader-btn").hide(); + $("#forgot_password_details_submit").show(); + window.localStorage.setItem('Ispasswordupdate',true) + window.location.href = `./myaccount.html`; + }else { + $("#forgot-password-input-one").addClass('is-invalid'); + $("#forgot-password-input-two").addClass('is-invalid') + $('.password_display').text('Passwords are not matched !').addClass('text-danger') + } + + + }); + } + else{ + $('#forgot_User_Email').addClass('is-invalid'); + $('#forgot_User_Email').after(`
Please enter Valid email
`); + + } + } + }); + $(".user_pass") + .keyup(function () { + // set password variable + var pswd = $(this).val(); + passwordValidate(pswd); + $('.pswd_info').hide(); + $(this).parent().siblings('.pswd_info').show(); + }) + .focus(function () { + let pswdVal = $(this).val(); + let pattern = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9]).{8,}$/; + if (pswdVal.match(pattern)) { + $(this).parent().siblings('.pswd_info').hide(); + } else { + $(this).parent().siblings('.pswd_info').show(); + } + }) + .blur(function () { + $(this).parent().siblings('.pswd_info').hide(); + }); + + function toasterOpts(){ + toastr.options = { + "closeButton": true, + "debug": false, + "newestOnTop": true, + "progressBar": true, + "positionClass": "toast-top-center", + "preventDuplicates": true, + "onclick": null, + "showDuration": "300", + "hideDuration": "1000", + "timeOut": "5000", + "extendedTimeOut": "1000", + "showEasing": "swing", + "hideEasing": "linear", + "showMethod": "fadeIn", + "hideMethod": "fadeOut" + } + } +} + $("#email_validate_submit").click(async function () { + let vaidate_otp; + let validate_email = $("#email_validation_input").val(); + if(validate_email == ''){ +$('#email_validation_input').addClass('is-invalid') +$('#email_validation_input').after(`
Please enter Valid email
`); +return + } + else{ + debugger; + let port = SERVERNAME; + // let port = "http://localhost:3088"; + let url = `${port}/account/getuserbyphoneormail/${validate_email}/${validate_email}`; + const config = { + url, + method: "get", + }; + $(".loader-btn").show(); + $('#email_validate_submit').hide() + let response = await axios(config); + debugger; + console.log(response); + $(".loader-btn").hide(); + $('#email_validate_submit').show() + if (response.data.result != null) { + debugger; + console.log(response.data); + const forgotpassPayload = { + firstname: "", + lastname: "", + contactnumber: "", + email: "", + tenantname: "", + contactoremail: response.data.result.email, + IsSignup: false, + IsRegisterUser: false, + IsForgotPswd: true, + UnibaseId: response.data.result.userName, + OtpId: 0, + UserOtp: "", + }; + $('#email_validate_submit').hide() + $(".loader-btn").show(); + const validate_email_res = await postAPIService( + `account/sendotp`, + forgotpassPayload + ); + $(".loader-btn").hide(); + vaidate_otp = validate_email_res.data; + console.log(validate_email_res); + $(".email-validation").hide(); + $('.user_email').html(validate_email) + $(".otp-validation .otp-input-group").show(); + $(".otp-validation .otp-input-group").on("paste", function (p) { + let data = p.originalEvent.clipboardData.getData("text"); + let dataLength = data.length; + for (let i = 0; i < dataLength; i++) { + let input = $( + '.otp-validation .otp-input-group input[tabindex="' + (i + 1) + '"]' + ); + input.val(data.charAt(i)); + if (input.val().length >= input.attr("maxlength")) { + let nextInput = $( + '.otp-validation .otp-input-group input[tabindex="' + + (i + 2) + + '"]' + ); + if (nextInput) { + nextInput.focus(); + } + } + } + p.preventDefault(); + }); + + } + else{ + $('#email_validation_input').addClass('is-invalid'); + $('#email_validation_input').after(`
Please enter Valid email
`); + + } + } + $("#email_validate_proceed").click(async function () { + debugger; + let userotp=''; + let validate_email = $("#email_validation_input").val(); + $(".email-validate-div .otp-validation .otp-input-group input").each(function () { + let presVal = $(this).val(); + userotp += presVal; + }); + + if(userotp.length == 6){ + const validateForgotpass = { + email: validate_email, + otpid: vaidate_otp, + userotp: userotp, + }; + $('#email_validate_proceed').hide() + $(".loader-btn").show(); + const validate_email_resopt = await postAPIService( + `hyperfusion/validateotp`, + validateForgotpass + ); + + $(".loader-btn").hide(); + $('#email_validate_proceed').show() + const Resotp = validate_email_resopt.data.result; + if (Resotp == "Otp verified successfully") { + $(".login_section").show(); + $(".otp-validation .otp-input-group").hide(); + $("#email_validate_back").hide(); + $('.error_msg').hide(); + } else { + // toasterOpts() + // Command: toastr["error"]("Please enter Valid OTP"); + $('.error_msg').show(); + $('.error_msg .error_msg_res').html("Please enter Valid OTP"); + } + } + else{ + $('.error_msg').show(); + $('.error_msg .error_msg_res').html("Please enter OTP"); + } + }); + }); + + +initLogin(); diff --git a/dist/Js/components/accordion/accordion.js b/dist/Js/components/accordion/accordion.js new file mode 100644 index 0000000..4fa1c4d --- /dev/null +++ b/dist/Js/components/accordion/accordion.js @@ -0,0 +1,110 @@ +class AccordionItem extends HTMLElement { + static get observedAttributes() { + return ['title']; + } + + #title = ''; + #collapsed = true; + + constructor() { + super(); + this.attachShadow({ mode: 'open' }); + } + + connectedCallback() { + this.update(); + this.shadowRoot.addEventListener('click', this.toggle.bind(this)); + } + + attributeChangedCallback(name, oldValue, newValue) { + if (name === 'title') { + this.#title = newValue; + } + this.update(); + } + + toggle() { + this.#collapsed = !this.#collapsed; + this.update(); + + // Dispatch a custom event to notify the parent AccordionElement + const event = new CustomEvent('accordion-item-toggle', { + bubbles: true, + detail: { + collapsed: this.#collapsed, + item: this, + }, + }); + this.dispatchEvent(event); + } + + update() { + this.shadowRoot.innerHTML = ` + +
+
${this.#title}
+
+ +
+
+ `; + } + } + + class AccordionElement extends HTMLElement { + #activeItem = null; + + constructor() { + super(); + this.attachShadow({ mode: 'open' }); + this.shadowRoot.innerHTML = ''; + this.addEventListener('accordion-item-toggle', this.handleItemToggle.bind(this)); + } + + handleItemToggle(event) { + const { collapsed, item } = event.detail; + + // If the active item is different from the toggled item, collapse the active item + if (this.#activeItem && this.#activeItem !== item && !collapsed) { + this.#activeItem.toggle(); + } + + // Update the active item + if (!collapsed) { + this.#activeItem = item; + } else if (this.#activeItem === item) { + this.#activeItem = null; + } + } + } + + customElements.define('accordion-item', AccordionItem); + customElements.define('accordion-element', AccordionElement); + + \ No newline at end of file diff --git a/dist/Js/myaccount/support_tickets.js b/dist/Js/myaccount/support_tickets.js new file mode 100644 index 0000000..2544cbc --- /dev/null +++ b/dist/Js/myaccount/support_tickets.js @@ -0,0 +1,79 @@ +function supportTicketMain() { + // https://qa.anwisystems.com/apis/v4/anwisystems/integrations/products/getticket/contactid/{contactid} + let cookieRes = COOKIE_HELPER_ACTIONS.getCookie(); + let { userId } = cookieRes; + init() + function init() { + getTickets(); + }; + + async function getTickets() { + let res = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/anwisystems/integrations/products/getticket/contactid/${userId}`); + + if (res.isError) { + toasterHelper("error", res.errorMsg); + return; + } + + res = JSON.parse(res.response.result); + + if (!res.length) { + $('.nosupportticket').removeClass('d-none'); + $('.headersupportlist').addClass('d-none'); + return; + } else { + $('.nosupportticket').addClass('d-none'); + $('.headersupportlist').removeClass('d-none'); + } + + let supportHTMLTicketList = ''; + + debugger + for (let i = 0; i < res.length; i++) { + supportHTMLTicketList += getTicketHTML(res[i]); + } + + $('.support-list-container').html(supportHTMLTicketList); + + + console.log(res, "support"); + + + } + + + function getTicketHTML(ticket) { + let color = ''; + let prioityName = ticket[`Priority Name`]; + if (prioityName.toLowerCase() === 'low') { + color = 'info'; + } else if (prioityName.toLowerCase() === 'high') { + color = 'danger'; + } else { + color = 'warning'; + } + + + + //
+
+
+ ${ticket[`Raised Date`]} +
+
+ + ${ticket[`ticketno`]} +
+
+ + ${ticket[`Stage Name`]} +
+
+ + ${prioityName} +
+
+
`; + } +} \ No newline at end of file diff --git a/dist/Js/navbar_okay.js b/dist/Js/navbar_okay.js new file mode 100644 index 0000000..d1852b1 --- /dev/null +++ b/dist/Js/navbar_okay.js @@ -0,0 +1,453 @@ +navINIT(); + +function navINIT() { + if(!window.location.href.includes('orderconfirmation')&&!window.location.href.includes('/w/')){ + loadCart(); + } + + function loadHelper(src = './dist/js/utils/helpers.js'){ + if ($(`script[src="${src}"]`).length > 0) { + return new Promise((resolve) => resolve()); + } + return new Promise(function (resolve, reject) { + var s; + s = document.createElement('script'); + s.src = src; + s.onload = resolve; + s.onerror = reject; + document.head.appendChild(s); + }); + } + async function loadCart(){ + + if(!window.location.href.includes('services/paymentmethod.html')){ + let files = ['./dist/js/shoppingcart/addtocart.js']; + await loadHelper(); + for(let i=0;i 0) { + continue; + } + try { + + await loadHelper(files[i]) + console.log("done"); + + } catch (error) { + console.log(error); + return; + } + } + } + + setLengthCart(); + //console.log("hello"); + + + + + } + let URLNAMENAV = window.location.href; + const isTransparent = URLNAMENAV.includes('login')||URLNAMENAV.includes('orderconfirmation')|| URLNAMENAV.includes('services/paymentmethod.html'); + let nav_html = ` +
+
+ +
+ +
+ +
+
+
+
+ +
+
+ +
+
+ + +
+
`; + $("#navbar-head").html(nav_html); + let width = $(window).width(); + $(".menu-negative-mrg2,.menu-negative-mrg3,.menu-negative-mrg4").css("width", width); + let ele_page = $("body").hasClass("product_pg"); + if (ele_page == true) { + $(".header-area").removeClass("bg-white"); + $(".main-menu").find("nav ul li a").addClass("text-white"); + $(".header-bottom.sticky-bar").removeClass("sticky-bar"); + let src = `../dist/assets/imgs/anwi-logo-2.png`; + $(".logo-menu-wrap").find("a img").attr("src", src); + $(".main-body").find("iframe").attr("width", width); + if (width <= 575 && width >= 390) { + $(".main-body").find("iframe").attr({ + width: width, + height: 236, + }) + } else if (width <= 390 && width >= 270) { + $(".main-body").find("iframe").attr({ + width: width, + height: 210, + }); + } else if (width <= 998 && width > 575) { + $(".main-body").find("iframe").attr({ + width: width, + height: 530, + }); + } else if (width <= 2720 && width > 1920) { + $(".main-body").find("iframe").attr({ + width: width, + height: 1440, + }); + } else { + $(".main-body").find("iframe").attr({ + width: width, + height: 860, + }); + } + } + + + $("a.ram_data").click(function () { + let item_id = $(this).attr("accessories_id"); + let loc_path = '/products.html' + if (window.location.pathname.includes(loc_path)) { + window.location.href = `?itemid=${item_id}` + } + else { + window.location.href = `/products.html#itemid=${item_id}`; + } + }) + + + // $(".main-menu nav ul").find("li").each(function () { + // var current = window.location.pathname; + // var $this = $(this).find("a"); + // if (current != "/") { + // if ($this.attr('href').indexOf(current) !== -1) { + // $(this).addClass('active_nav'); + // } + // } + + // }) + + // destroy localstorage data + let loc_path = '/productdetails.html'; + if (window.location.pathname.includes(loc_path) === false) { + localStorage.removeItem("product_data"); + localStorage.removeItem("top_data") + } + let loc_path1 = '/productcatloguedetails.html'; + if (window.location.pathname.includes(loc_path1) === false) { + localStorage.removeItem("product_catlogue_obj"); + } + + //services pages links and sources + + let $body_pg = $("body").hasClass("services_page"); + let $hm_pg = "../index.html"; + let $nav_img = "../dist/assets/imgs/anwi-logo-1.png"; + let $footer_img = "../dist/assets/imgs/anwi-logo-2.png"; + let $scrool_top_img = "../dist/assets/imgs/Home/rocket-footer.png"; + let $about_pg = $("body").hasClass("about_page"); + if($about_pg == true){ + debugger + $(".main-menu").find("nav ul li a").addClass("text-dark"); + let img_src = `./dist/assets/imgs/anwi-logo-1.png`; + $(".logo-menu-wrap").find("a img").attr("src",img_src); + $(".header-bottom").addClass("sticky-bar stick"); + $("body.about_page").find(".header-large-device").find(".header-action-wrap").find(".same-style").find("svg").find("path").attr("fill","#000"); + } + if ($body_pg == true) { + $(".header-large-device").find(".logo-menu-wrap .logo").find("a").attr("href", $hm_pg); + $(".header-large-device").find(".logo-menu-wrap .logo").find("a img").attr("src", $nav_img); + $(".mobile-logo").find("a").attr("href", $hm_pg); + $(".mobile-logo").find("a img").attr("src", $nav_img); + $("body.services_page").find(".header-large-device").find(".header-action-wrap").find(".same-style").find("svg").find("path").attr("fill","#000"); + $(".main-menu").find("nav ul").find("li a").each(function () { + $(this).addClass("text-dark") + $(".header-bottom").addClass("sticky-bar stick"); + let $arc = $(this).attr("href"); + let $spcial_char = $arc.includes("./"); + if ($spcial_char === true) { + let $refarence = `.${$arc}` + $(this).attr("href", $refarence); + } + + }); + $(".same-style").find("a").each(function () { + let $arc1 = $(this).attr("href"); + let $spcial_char1 = $arc1.includes("./"); + if ($spcial_char1 === true) { + let $refarence1 = `.${$arc1}` + $(this).attr("href", $refarence1); + } + }) + $(".tab-content").find("img").each(function(){ + let $img_src = $(this).attr("src"); + let $img_src1 = $img_src.includes("./"); + if ($img_src1 === true) { + let $refarenceimg1 = `.${$img_src}`; + $(this).attr("src", $refarenceimg1); + } + }); + $(".clickable-mainmenu-wrap").find("nav ul").find("li a").each(function () { + let $arc_mbil = $(this).attr("href"); + let $spcial_char_mbil = $arc_mbil.includes("./"); + if ($spcial_char_mbil === true) { + let $refarence_mbil = `.${$arc_mbil}` + $(this).attr("href", $refarence_mbil); + } + }); + } + + setTimeout(()=>{ + if(width<=600){ + $('.same-style').find('svg path').attr('fill','#000') + } + },300) +} \ No newline at end of file diff --git a/dist/Js/productdetails/laptopd.js b/dist/Js/productdetails/laptopd.js new file mode 100644 index 0000000..f153e7f --- /dev/null +++ b/dist/Js/productdetails/laptopd.js @@ -0,0 +1,943 @@ +function startDetails() { + // http://127.0.0.1:5502/productdetails.html?productId=106633230000024 + + if (window.location.search.split('=')[0] == '') { + window.location.href = "/notfound.html"; + return; + } + let productId = window.location.hash.split('#')[1].split('=')[1]; + // console.log(productId); + let itemtagscombinationRes = null; + let labels = {}; + let isThereInLabel = {}; + let currentComb = null; + + let colorId = null; + + let group = {}; + + let loadingActions = { + addLoader() { + $('.loadingCall').removeClass('d-none'); + $('.mainContanierProduct').addClass('d-none'); + }, + removeLoader() { + $('.loadingCall').addClass('d-none'); + $('.mainContanierProduct').removeClass('d-none'); + } + } + + let currentClick = null; + + if (productId) { + swapSectionsVideo(); + loadingActions.addLoader(); + updateProductId(productId); + getProductDetails(productId); + appendSpecs(productId) + } else { + window.location.href = "/notfound.html" + } + + function updateProductId(val) { + $('#productidtag').val(val); + } + + function updateItemId(val) { + $('#itemidtag').val(val); + } + + let specification_wrap_action = { + remove() { + + $('.specification-wrap').addClass('d-none'); + }, + + add() { + $('.specification-wrap').removeClass('d-none'); + } + } + + let description_action = { + addVal(value) { + $('.description-wrap > p').html(value); + }, + + removeVal(value) { + $('.description-wrap > p').html(''); + } + } + + function getSpecsItemHTML({ name, des, itemid, id }) { + let isMobile = $(window).width()<=600 ? '' : ''; + let addPaddM = $(window).width()<=600 ? 'py-2' : 'py-4'; + return `
+
+
+ ${name} +
+
+ ${des} +
+
+
`; + } + // function getSpecsItemHTML({name,des,itemid,id}){ + // return ` + // ${name} + // ${des} + // `; + // } + + async function appendSpecs(id) { + let resData = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/products/itemspecifications/itemid/${id}`, true); + + if (resData.isError) { + $('.productdetailstabs').addClass('d-none'); + $('.specContainerleft').html('') + $('.specContainerRight').html('') + return; + } + $('.productdetailstabs ').removeClass('d-none'); + const res = resData.response; + // console.log(JSON.parse(res.result)); + const data = JSON.parse(res.result); + // console.log(data); + let html = ''; + let leftHtml = ''; + let rightHtml = ''; + + if (data.length == 0) { + $('.productdetailstabs ').addClass('d-none'); + $('.specContainerleft').html('') + $('.specContainerRight').html('') + return; + } + + for (let i = 0; i < data.length; i++) { + const { specificationname, specificationitemid, itemid, description } = data[i]; + if ((i + 1) % 2 == 0) { + rightHtml += getSpecsItemHTML({ + name: specificationname, id: specificationitemid, itemid, des: description + }) + } else { + leftHtml += getSpecsItemHTML({ + name: specificationname, id: specificationitemid, itemid, des: description + }); + } + + } + + $('.specContainerleft').html(leftHtml) + $('.specContainerRight').html(rightHtml) + + } + + + function getParentHTML(name, productid, id, isMain) { + return ``; + } + + function onClickHandler(e) { + + $(e).parent().find('.borderselector').removeClass('borderselector'); + + $(e).addClass('borderselector') + + } + + function getChildHTML(tagid, name, isTrue,parentid) { + + let blue = '#253746'; + let greenLight = '#5e7975'; + let brown = '#624839'; + let bgColor = ''; + if(name === 'Deep Sea Blue'){ + bgColor = blue; + }else if(name == 'Desert Brown'){ + bgColor = brown; + }else if(name == 'Eucalyptus Green'){ + bgColor = greenLight; + } + + if(colorId == parentid){ + return ` +
+ +
` + } + return ` +
+ ${name} +
` + + + } + + function addeventlisteners() { + + $('.optiontaganwi').each(function (i, el) { + $(el).click(function (e) { + + $('#quantity').val(1); + + $(e.target).parent().find('.borderselector').removeClass('borderselector'); + $(e.target).addClass('borderselector'); + + currentClick = e.target; + ; + //searchComb(); + // getAllCombination(); + getandsetCombination(); + + }) + }); + + } + + function getandsetCombination(){ + + let keyOption = $(currentClick).data('tagiditem'); + $('.disabled-option-item').removeClass('disabled-option-item'); + let tagsNames = []; + + + + let currOptionAvaIds = {}; + + $('.borderselector').each(function (i,e){ + let id = $(e).data('tagiditem'); + tagsNames.push(id); + }); + + + for(let i=0;i1){ + arrtwo = parentArr[1]?.arr; + } + + let currId = keyOption; + let ids = []; + for(let i=0;i img').attr('src', defaultImg); + + specification_wrap_action.remove(); + $('#skudetailitem').val(-1) + $('.productname').html(itemsName) + + + $('.msgErrorDetailsItem').removeClass('d-none'); + $('.des_productdes').html(''); + $('.price').html(''); + } + + initAddToCart() + return; + } + + } + + + + + // return; + + + + + return; + let commonTags = []; + // $('.optiontaganwi').addClass('disabled-option-item') + + for(let i=0;i${currencySymbol}${amount}${commingSoonText?'Coming Soon':''}` : 'coming soon'); + $('.price').attr('data-price',obj.pricelist); + appendSpecs(obj.itemid) + $('#skudetailitem').val(obj.sku) + $('.des_productdes').html(obj.itemdescription); + $('#addtocart').attr('data-qty', obj.quantity); + + + let defaultImg = obj.itemimageurl ? imgServerNameBuild(obj.itemimageurl) : `./dist/assets/imgs/nophoto.png`; + // console.log(obj.itemimageurl, 'obj.itemimageurlobj.itemimageurlobj.itemimageurl'); +debugger; +let productId = window.location.hash.split('#')[1]?.split('=')[1]; +let itemId = window.location.hash.split('#')[2]?.split('=')[1]; +history.replaceState(undefined, undefined, `#productId=${productId}#itemid=${obj.itemid}`) + $('.productDetailsMain > img').attr('src', defaultImg).attr('loading','lazy'); + + updateItemId(obj.itemid); + +//console.log(obj,'objobjobj'); + if (!obj.pricelist || !obj.quantity) { + $('.buynow').attr('disabled', true); + $('#addtocart').attr('disabled', true); + } else { + $('.buynow').attr('disabled', false); + $('#addtocart').attr('disabled', false); + } + } + + function searchComb() { + let valuesSelected = []; + $('.optiontaganwi').removeClass('disabled-option-item') + + $('#addtocart').removeClass('disabled'); + $('.msgErrorDetailsItem').addClass('d-none'); + $('.borderselector,border_selector').each(function (i, el) { + // console.log($(el).html()) + let val = $(el).data('tagiditem'); + valuesSelected.push(val); + }); + + let labelRecord = {}; + + for (let label in labels) { + labelRecord[label] = false; + } + + specification_wrap_action.add(); + + let unFiler = null; + for (let i = 0; i < itemtagscombinationRes.length; i++) { + const currItem = itemtagscombinationRes[i]; + const { tagids } = currItem; + + + let isTrue = true; + let labelFilter = labelRecord; + + for (let i = 0; i < valuesSelected.length; i++) { + + if (!tagids.includes(valuesSelected[i])) { + isTrue = false + + unFiler = labelFilter; + break; + } + labelFilter[group[valuesSelected[i]]] = true; + } + + if (isTrue) { + // console.log(itemtagscombinationRes[i], 'itemtagscombinationRes[i]'); + const { quantity } = itemtagscombinationRes[i]; + if (quantity >= $('#quantity').val() && quantity >= 1) { + currentComb = itemtagscombinationRes[i]; + // $('.productname').html(itemtagscombinationRes[i].itemname) + // $('.price').html(itemtagscombinationRes[i].pricelist); + // location.hash = itemtagscombinationRes[i].itemname.trim(); + // appendSpecs(itemtagscombinationRes[i].itemid) + // history.replaceState(null, null, `#itemid=${itemtagscombinationRes[i].itemid}#${itemtagscombinationRes[i].itemname.trim()}`); + + // $('#skudetailitem').val(itemtagscombinationRes[i].sku) + // $('.des_productdes').html(itemtagscombinationRes[i].itemdescription); + updateDetailsByObj(itemtagscombinationRes[i]); + } else { + + let name = itemtagscombinationRes[i].itemname.split('-')[0]; + $('#addtocart').addClass('disabled'); + let itemsName = name; + $('.borderselector').each(function (i, e) { + itemsName += ` ${$(e).html().trim()}`; + }); + + updateItemId(null); + + let defaultImg = itemtagscombinationRes[i].itemimageurl ? imgServerNameBuild(itemtagscombinationRes[i].itemimageurl) : `./dist/assets/imgs/nophoto.png`; + // console.log(itemtagscombinationRes[i].itemimageurl, 'obj.itemimageurlobj.itemimageurlobj.itemimageurl'); + + $('.productDetailsMain > img').attr('src', defaultImg); + + specification_wrap_action.remove(); + $('#skudetailitem').val(-1) + $('.productname').html(itemsName) + // history.replaceState(null, null, `#`); + + $('.msgErrorDetailsItem').removeClass('d-none'); + $('.des_productdes').html(''); + $('.price').html(''); + } + + initAddToCart() + return; + + } + + } + + + + alert("j"); + + let name = itemtagscombinationRes[0].itemname.split('-')[0]; + let itemsName = name; + $('.borderselector').each(function (i, e) { + itemsName += `- ${$(e).html().trim()}`; + }) + specification_wrap_action.remove(); + $('.productname').html(itemsName) + $('#skudetailitem').val(-1) + $('.price').html(''); + $('#addtocart').addClass('disabled'); + $('.msgErrorDetailsItem').removeClass('d-none'); + + initAddToCart() + } + + function getAllCombination() { + debugger; + const currClickAttr = $(currentClick).html().trim(); + const optionId = $(currentClick).data('tagiditem'); + + let curr = $(currentClick).parents('.groupingitems_search').data('parentidgroup'); + $('.groupingitems_search').each(function (i, e) { + const id = $(e).data('parentidgroup'); + if (id != curr) { + $(e).find('.optiontaganwi').addClass('disabled-option-item'); + $(e).find('.borderselector').removeClass('borderselector'); + } + }); + + let ansArr = []; + let index = 0; + let comb = null; + for(let i=0;i p').html(value); + }, + + removeVal(value) { + $('.description-wrap > p').html(''); + } + } + + function getSpecsItemHTML({ name, des, itemid, id }) { + let isMobile = $(window).width()<=600 ? '' : ''; + let addPaddM = $(window).width()<=600 ? 'py-2' : 'py-4'; + return `
+
+
+ ${name} +
+
+ ${des} +
+
+
`; + return `
+
+
+ ${name} +
+
+ ${des} +
+
+
`; + + } + // function getSpecsItemHTML({name,des,itemid,id}){ + // return ` + // ${name} + // ${des} + // `; + // } + + async function appendSpecs(id) { + let resData = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/products/itemspecifications/itemid/${id}`, true); + + if (resData.isError) { + $('.productdetailstabs').addClass('d-none'); + $('.specContainerleft').html('') + $('.specContainerRight').html('') + return; + } + $('.productdetailstabs ').removeClass('d-none'); + const res = resData.response; + console.log(JSON.parse(res.result)); + const data = JSON.parse(res.result); + console.log(data); + let html = ''; + let leftHtml = ''; + let rightHtml = ''; + + if (data.length == 0) { + $('.productdetailstabs ').addClass('d-none'); + $('.specContainerleft').html('') + $('.specContainerRight').html('') + return; + } + + for (let i = 0; i < data.length; i++) { + const { specificationname, specificationitemid, itemid, description } = data[i]; + if ((i + 1) % 2 == 0) { + rightHtml += getSpecsItemHTML({ + name: specificationname, id: specificationitemid, itemid, des: description + }) + } else { + leftHtml += getSpecsItemHTML({ + name: specificationname, id: specificationitemid, itemid, des: description + }); + } + + } + + $('.specContainerleft').html(leftHtml) + $('.specContainerRight').html(rightHtml) + + } + + + function getParentHTML(name, productid, id, isMain) { + return ``; + } + + function onClickHandler(e) { + + $(e).parent().find('.borderselector').removeClass('borderselector'); + + $(e).addClass('borderselector') + + } + + function getChildHTML(tagid, name, isTrue) { + + + return ` +
+ ${name} +
` + + + } + + function addeventlisteners() { + + $('.optiontaganwi').each(function (i, el) { + $(el).click(function (e) { + debugger; + $('#quantity').val(1); + + $(e.target).parent().find('.borderselector').removeClass('borderselector'); + $(e.target).addClass('borderselector'); + searchComb(); + currentClick = e.target; + getAllCombination(); + }) + }); + + } + + + + function updateDetailsByObj(obj) { + $('.productname').html(obj.itemname) + let [currencySymbol, amount] = getCurrencySymbol(obj?.pricelist||0); + + $('.price').html(obj.pricelist ?`${currencySymbol}${amount}'`:''); + $('.price').attr('data-price',obj.pricelist); + appendSpecs(obj.itemid) + $('#skudetailitem').val(obj.sku) + $('.des_productdes').html(obj.itemdescription); + $('#addtocart').attr('data-qty', obj.quantity); + +debugger; + let defaultImg = obj.itemimageurl ? imgServerNameBuild(obj.itemimageurl) : `./dist/assets/imgs/nophoto.png`; + console.log(obj.itemimageurl, 'obj.itemimageurlobj.itemimageurlobj.itemimageurl'); + + $('.productDetailsMain > img').attr('src', defaultImg); + + updateItemId(obj.itemid); + + + if (!obj.pricelist) { + $('.buynow').attr('disabled', true); + $('#addtocart').attr('disabled', true); + } else { + $('.buynow').attr('disabled', false); + $('#addtocart').attr('disabled', false); + } + } + + function searchComb() { + let valuesSelected = []; + $('.optiontaganwi').removeClass('disabled-option-item') + + $('#addtocart').removeClass('disabled'); + $('.msgErrorDetailsItem').addClass('d-none'); + $('.borderselector,border_selector').each(function (i, el) { + console.log($(el).html()) + let val = $(el).data('tagiditem'); + valuesSelected.push(val); + }); + + let labelRecord = {}; + + for (let label in labels) { + labelRecord[label] = false; + } + + console.log(labelRecord); + specification_wrap_action.add(); + console.log(group); + let unFiler = null; + for (let i = 0; i < itemtagscombinationRes.length; i++) { + const currItem = itemtagscombinationRes[i]; + const { tagids } = currItem; + + + let isTrue = true; + let labelFilter = labelRecord; + + for (let i = 0; i < valuesSelected.length; i++) { + + if (!tagids.includes(valuesSelected[i])) { + isTrue = false + + unFiler = labelFilter; + break; + } + labelFilter[group[valuesSelected[i]]] = true; + } + + if (isTrue) { + console.log(itemtagscombinationRes[i], 'itemtagscombinationRes[i]'); + const { quantity } = itemtagscombinationRes[i]; + if (quantity >= $('#quantity').val() && quantity >= 1) { + currentComb = itemtagscombinationRes[i]; + // $('.productname').html(itemtagscombinationRes[i].itemname) + // $('.price').html(itemtagscombinationRes[i].pricelist); + // location.hash = itemtagscombinationRes[i].itemname.trim(); + // appendSpecs(itemtagscombinationRes[i].itemid) + history.replaceState(null, null, `#itemid=${itemtagscombinationRes[i].itemid}#${itemtagscombinationRes[i].itemname.trim()}`); + + // $('#skudetailitem').val(itemtagscombinationRes[i].sku) + // $('.des_productdes').html(itemtagscombinationRes[i].itemdescription); + updateDetailsByObj(itemtagscombinationRes[i]); + } else { + + let name = itemtagscombinationRes[i].itemname.split('-')[0]; + $('#addtocart').addClass('disabled'); + let itemsName = name; + $('.borderselector').each(function (i, e) { + itemsName += ` ${$(e).html().trim()}`; + }); + + updateItemId(null); + + let defaultImg = itemtagscombinationRes[i].itemimageurl ? imgServerNameBuild(itemtagscombinationRes[i].itemimageurl) : `./dist/assets/imgs/nophoto.png`; + console.log(itemtagscombinationRes[i].itemimageurl, 'obj.itemimageurlobj.itemimageurlobj.itemimageurl'); + + $('.productDetailsMain > img').attr('src', defaultImg); + + specification_wrap_action.remove(); + $('#skudetailitem').val(-1) + $('.productname').html(itemsName) + history.replaceState(null, null, `#`); + + $('.msgErrorDetailsItem').removeClass('d-none'); + $('.des_productdes').html(''); + $('.price').html(''); + } + + initAddToCart() + return; + + } + + } + + alert("j"); + let name = itemtagscombinationRes[0].itemname.split('-')[0]; + let itemsName = name; + $('.borderselector').each(function (i, e) { + itemsName += `- ${$(e).html().trim()}`; + }) + specification_wrap_action.remove(); + $('.productname').html(itemsName) + $('#skudetailitem').val(-1) + $('.price').html(''); + $('#addtocart').addClass('disabled'); + $('.msgErrorDetailsItem').removeClass('d-none'); + + initAddToCart() + } + + function getAllCombination() { + debugger; + const currClickAttr = $(currentClick).html().trim(); + + let isThere = []; + for (let item in isThereInLabel) { + let { tagnames } = isThereInLabel[item]; + if (tagnames.includes(currClickAttr)) { + isThere.push(isThereInLabel[item]) + } + } + + if (!isThere.length) { + let curr = $(currentClick).parents('.groupingitems_search').data('parentidgroup'); + $('.groupingitems_search').each(function (i, e) { + const id = $(e).data('parentidgroup'); + if (id != curr) { + $(e).find('.optiontaganwi').addClass('disabled-option-item'); + } + + + }); + + return; + } + let selected = []; + $('.borderselector').each(function (i, e) { + selected.push($(e).html().trim()) + }); + + // console.log(selected); + // console.log(isThere); + + let ishashObj = {}; + + for (let i = 0; i < isThere.length; i++) { + let { tagnames, tagids } = isThere[i]; + tagnames = tagnames.split('|'); + tagids = tagids.split('|'); + + for (let j = 0; j < tagnames.length; j++) { + if (!ishashObj[tagnames[j]]) { + ishashObj[tagnames[j]] = tagids[j]; + } + } + } + + console.log(ishashObj); + + // for(let i=0;i p').html(value); + }, + + removeVal(value) { + $('.description-wrap > p').html(''); + } + } + + function getSpecsItemHTML({ name, des, itemid, id }) { + return `
+
+
+ ${name} +
+
+ ${des} +
+
+
`; + return ` + ${name} + ${des} + `; + } + // function getSpecsItemHTML({name,des,itemid,id}){ + // return ` + // ${name} + // ${des} + // `; + // } + + async function appendSpecs(id) { + let resData = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/products/itemspecifications/itemid/${id}`, true); + + if (resData.isError) { + $('.productdetailstabs').addClass('d-none'); + $('.specContainerleft').html('') + $('.specContainerRight').html('') + return; + } + $('.productdetailstabs ').removeClass('d-none'); + const res = resData.response; + console.log(JSON.parse(res.result)); + const data = JSON.parse(res.result); + console.log(data); + let html = ''; + let leftHtml = ''; + let rightHtml = ''; + + if (data.length == 0) { + $('.productdetailstabs ').addClass('d-none'); + $('.specContainerleft').html('') + $('.specContainerRight').html('') + return; + } + + for (let i = 0; i < data.length; i++) { + const { specificationname, specificationitemid, itemid, description } = data[i]; + if ((i + 1) % 2 == 0) { + rightHtml += getSpecsItemHTML({ + name: specificationname, id: specificationitemid, itemid, des: description + }) + } else { + leftHtml += getSpecsItemHTML({ + name: specificationname, id: specificationitemid, itemid, des: description + }); + } + + } + + $('.specContainerleft').html(leftHtml) + $('.specContainerRight').html(rightHtml) + + } + + + function getParentHTML(name, productid, id, isMain) { + return `
+
${name}
+
+ +
+
`; + } + + function onClickHandler(e) { + + $(e).parent().find('.borderselector').removeClass('borderselector'); + + $(e).addClass('borderselector') + + } + + function getChildHTML(tagid, name, isTrue) { + + let item_color_1 = `#5e7975`; + let item_color_2 = `#624839`; + let item_color_3 = `#253746`; + if(name == "Eucalyptus Green"){ + + return `

${name}

`; + + }else if(name == "Desert Brown"){ + + return `

${name}

`; + + }else if(name == "Deep Sea Blue"){ + + return `

${name}

`; + } + else{ + return ` +
+ ${name} +
` + } + + } + + function addeventlisteners() { + + $('.optiontaganwi').each(function (i, el) { + $(el).click(function (e) { + $('#quantity').val(1); + debugger; + let ele_col = $(e.target).hasClass("color"); + let ele_col1 = $(e.target).hasClass("optiontaganwi_color"); + if(ele_col === true){ + $(e.target).parent().find("span.color").removeClass('border-bottom'); + $(e.target).parent().addClass("border_selector"); + $(e.target).addClass("border-bottom"); + $(e.target).parent().find("span.border-bottom").removeClass("border-bottom text-dark"); + $(e.target).addClass("border_selector"); + $(e.target).find("span.color").addClass("border-bottom text-dark"); + $(e.target).parent().find('.borderselector').removeClass('borderselector'); + // $(e.target).addClass('borderselector'); + searchComb(); + currentClick = e.target; + }else if(ele_col1 === true){ + $(e.target).parent().find("span.text-dark").removeClass("text-dark border-bottom"); + $(e.target).addClass("border_selector"); + $(e.target).find("span.color").addClass("text-dark"); + $(e.target).parent().find('.borderselector').removeClass('borderselector'); + $(e.target).addClass('borderselector'); + searchComb(); + currentClick = e.target; + }else{ + $(e.target).parent().find('.borderselector').removeClass('borderselector'); + $(e.target).addClass('borderselector'); + searchComb(); + currentClick = e.target; + } + + searchComb(); + currentClick = e.target; + // getAllCombination(); + }) + }); + // $('.optiontaganwi_color span.color').each(function (i, el) { + // $(el).click(function (e) { + // $('#quantity').val(1); + // $(e.target).parent().find("span.border-bottom").removeClass("border-bottom"); + // $(e.target).addClass("border-bottom"); + // searchComb(); + // currentClick = e.target; + // // getAllCombination(); + // }) + // }); + } + + // function getChildHTML(tagid,name,isTrue){ + // return ` + //
+ // ${name} + //
+ // ` + // } + + // function addeventlisteners(){ + + // $('.optiontaganwi').each(function (i,el){ + // $(el).click(function (e){ + // $('#quantity').val(1) + // $(e.target).parent().find('.borderselector').removeClass('borderselector'); + // $(e.target).addClass('borderselector') + // searchComb(); + // currentClick = e.target; + // // getAllCombination(); + // }) + // }); + // } + + function updateDetailsByObj(obj) { + $('.productname').html(obj.itemname) + $('.price').html(obj.pricelist?obj.pricelist:'coming soon'); + appendSpecs(obj.itemid) + $('#skudetailitem').val(obj.sku) + $('.des_productdes').html(obj.itemdescription); + $('#addtocart').attr('data-qty', obj.quantity); + + + let defaultImg = obj.itemimageurl ? imgServerNameBuild(obj.itemimageurl) : `./dist/assets/imgs/nophoto.png`; + console.log(obj.itemimageurl, 'obj.itemimageurlobj.itemimageurlobj.itemimageurl'); + + $('.productDetailsMain > img').attr('src', defaultImg); + + updateItemId(obj.itemid); + + + if(!obj.pricelist){ + $('.buynow').attr('disabled',true); + $('#addtocart').attr('disabled',true); + }else{ + $('.buynow').attr('disabled',false); + $('#addtocart').attr('disabled',false); + } + } + + function searchComb() { + let valuesSelected = []; + + + $('#addtocart').removeClass('disabled'); + $('.msgErrorDetailsItem').addClass('d-none'); + $('.borderselector,border_selector').each(function (i, el) { + console.log($(el).html()) + let val = $(el).html(); + valuesSelected.push(val.trim()); + }); + + let labelRecord = {}; + + for (let label in labels) { + labelRecord[label] = false; + } + + console.log(labelRecord); + specification_wrap_action.add(); + console.log(group); + let unFiler = null; + for (let i = 0; i < itemtagscombinationRes.length; i++) { + const currItem = itemtagscombinationRes[i]; + const { tagnames } = currItem; + + + let isTrue = true; + let labelFilter = labelRecord; + + for (let i = 0; i < valuesSelected.length; i++) { + + if (!tagnames.includes(valuesSelected[i])) { + isTrue = false + + unFiler = labelFilter; + break; + } + labelFilter[group[valuesSelected[i]]] = true; + } + + if (isTrue) { + console.log(itemtagscombinationRes[i], 'itemtagscombinationRes[i]'); + const { quantity } = itemtagscombinationRes[i]; + if (quantity >= $('#quantity').val() && quantity >= 1) { + currentComb = itemtagscombinationRes[i]; + // $('.productname').html(itemtagscombinationRes[i].itemname) + // $('.price').html(itemtagscombinationRes[i].pricelist); + // location.hash = itemtagscombinationRes[i].itemname.trim(); + // appendSpecs(itemtagscombinationRes[i].itemid) + history.replaceState(null, null, `#itemid=${itemtagscombinationRes[i].itemid}#${itemtagscombinationRes[i].itemname.trim()}`); + + // $('#skudetailitem').val(itemtagscombinationRes[i].sku) + // $('.des_productdes').html(itemtagscombinationRes[i].itemdescription); + updateDetailsByObj(itemtagscombinationRes[i]); + } else { + + let name = itemtagscombinationRes[i].itemname.split('-')[0]; + $('#addtocart').addClass('disabled'); + let itemsName = name; + $('.borderselector').each(function (i, e) { + itemsName += ` ${$(e).html().trim()}`; + }); + + updateItemId(null); + + specification_wrap_action.remove(); + $('#skudetailitem').val(-1) + $('.productname').html(itemsName) + history.replaceState(null, null, `#`); + + $('.msgErrorDetailsItem').removeClass('d-none'); + $('.des_productdes').html(''); + $('.price').html(''); + } + + initAddToCart() + return; + + } + + } + + let name = itemtagscombinationRes[0].itemname.split('-')[0]; + let itemsName = name; + $('.borderselector').each(function (i, e) { + itemsName += `- ${$(e).html().trim()}`; + }) + specification_wrap_action.remove(); + $('.productname').html(itemsName) + $('#skudetailitem').val(-1) + $('.price').html(''); + $('#addtocart').addClass('disabled'); + $('.msgErrorDetailsItem').removeClass('d-none'); + + initAddToCart() + } + + function getAllCombination() { + const currClickAttr = $(currentClick).html().trim(); + + let isThere = []; + for (let item in isThereInLabel) { + let { tagnames } = isThereInLabel[item]; + if (tagnames.includes(currClickAttr)) { + isThere.push(isThereInLabel[item]) + } + } + let selected = []; + $('.borderselector').each(function (i, e) { + selected.push($(e).html().trim()) + }); + + // console.log(selected); + // console.log(isThere); + + let ishashObj = {}; + + for (let i = 0; i < isThere.length; i++) { + let { tagnames, tagids } = isThere[i]; + tagnames = tagnames.split('|'); + tagids = tagids.split('|'); + + for (let j = 0; j < tagnames.length; j++) { + if (!ishashObj[tagnames[j]]) { + ishashObj[tagnames[j]] = tagids[j]; + } + } + } + + // console.log(ishashObj); + + // for(let i=0;i +
+ + ${itemname} + +
+
    +
  • +
    ${gb}
    ${ramTech}
    +
  • +
  • +
    ${pricelist?priceAmt:'Comming Soon'}
    +
  • +
+ + +
+ ` + + return `
+
+ + ${itemname} + +
    +
  • +
    ${gb}
    ${ramTech}
    +
  • +
  • +
    ${priceAmt}
    +
  • +
+ + +
+
`; + + //abhi anna design + return ` + + +
+
+
+
+ +
+
+
+

${itemname}

+
+
${gb}
${ramTech}
${priceAmt}
+ +
+
+
+ `; + return `
+
+ + ... + + +
    +
  • + ${gb} ${ramTech} +
  • +
  • + 3200 Mhz +
  • +
+
+ +
+
+
Details +
+
+
+
` + } +} + +initAcc(); \ No newline at end of file diff --git a/dist/Js/products/allinoneproduct.js b/dist/Js/products/allinoneproduct.js new file mode 100644 index 0000000..a2963f4 --- /dev/null +++ b/dist/Js/products/allinoneproduct.js @@ -0,0 +1,316 @@ +function ramProductsInit(){ + let RAM_ID = ''; + + async function init(){ + let id + if(location.search==''&&(location.href.includes('laptops')||location.href.includes('allinones'))){ + id = await getallproductsFun(); + }else{ + id = await getProductIdService(); + } + getRamData(id) + } + + async function getProductsIds(nameArr){ + let resData = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/products/getallproducts`,true); + if(resData.isError){ + toasterHelper("error","Something went wrong!") + return; + } + + let res = resData.response; + + res = JSON.parse(res.result); + let ids = []; + + for(let i=0;i{ + if(currName === item.productname){ + return item.productid; + } + }) + if(id){ + ids.push(id); + } + } + + return ids; + + } + + async function getallproductsFun(){ + let laptopStr = ['FYRO Flagship','Zeno Dualbook','Zeno Sleekbook']; + let allInOnesStr = ['AIO Zeno','AIO Fyro']; + + + + let name = window.location.href; + + name = name.includes('laptops') ?laptopStr : allInOnesStr; + + const ids = await getProductsIds(name); + + console.log(ids); + + return ids; + + } + + function getProductIdService(){ + return new Promise(async (reslove,reject)=>{ + + let resData =await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/products/getallproducts`,true); + if(resData.isError){ + alert(resData.errorMsg.message); + return; + } + + let res = resData.response; + + res = JSON.parse(res.result); + + console.log(res); + + let searchName = window.location.search.split('?')[1]; + let urlPathName = window.location.pathname; + let searchTerm = ''; + if(urlPathName.includes('ram')){ + searchTerm = "RAM ORA"; + }else if(urlPathName.includes('storage')){ + searchTerm = `SSD ORA`; + }else{ + searchTerm = searchName.replaceAll('%20',' '); + } + let resultItem = []; + + if(searchTerm.toLowerCase() === 'zeno'){ + for(let i=0;i +
+ + ${itemname} + +
+
    +
  • i3 / 15 / i7
  • +
+
    +
  • + +
    ${gb}
    +
    ${ramTech}
    +
    +
  • +
  • +
    ${pricelist?priceAmt:'Comming Soon'}
    +
  • +
+ + +
+ ` + + return `
+
+ + ${itemname} + +
    +
  • +
    ${gb}
    ${ramTech}
    +
  • +
  • +
    ${priceAmt}
    +
  • +
+ + +
+
`; + + //abhi anna design + return ` + + +
+
+
+
+ +
+
+
+

${itemname}

+
+
${gb}
${ramTech}
${priceAmt}
+ +
+
+
+ `; + return `
+
+ + ... + + +
    +
  • + ${gb} ${ramTech} +
  • +
  • + 3200 Mhz +
  • +
+
+ +
+
+
Details +
+
+
+
` + } + + init(); +} + +ramProductsInit(); diff --git a/dist/Js/products/laptopproduct.js b/dist/Js/products/laptopproduct.js new file mode 100644 index 0000000..da4c2e6 --- /dev/null +++ b/dist/Js/products/laptopproduct.js @@ -0,0 +1,419 @@ +function ramProductsInit(){ + let RAM_ID = ''; + + async function init(){ + let id + if(location.search==''&&(location.href.includes('laptops')||location.href.includes('allinones'))){ + id = await getallproductsFun(); + }else{ + id = await getProductIdService(); + } + getRamData(id) + } + + async function getProductsIds(nameArr){ + let resData = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/products/getallproducts`,true); + if(resData.isError){ + toasterHelper("error","Something went wrong!") + return; + } + + let res = resData.response; + + res = JSON.parse(res.result); + let ids = []; + + for(let i=0;i{ + if(currName === item.productname){ + return item.productid; + } + }) + if(id){ + ids.push(id); + } + } + + return ids; + + } + + async function getallproductsFun(){ + let laptopStr = ['FYRO Flagship','Zeno Dualbook','Zeno Sleekbook']; + let allInOnesStr = ['AIO Zeno','AIO Fyro']; + + + + let name = window.location.href; + + name = name.includes('laptops') ?laptopStr : allInOnesStr; + + const ids = await getProductsIds(name); + + console.log(ids); + + return ids; + + } + + function getProductIdService(){ + return new Promise(async (reslove,reject)=>{ + + let resData =await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/products/getallproducts`,true); + if(resData.isError){ + alert(resData.errorMsg.message); + return; + } + + let res = resData.response; + + res = JSON.parse(res.result); + + // console.log(res); + + let searchName = window.location.search.split('?')[1]; + let urlPathName = window.location.pathname; + let searchTerm = ''; + if(urlPathName.includes('ram')){ + searchTerm = "RAM ORA"; + }else if(urlPathName.includes('storage')){ + searchTerm = `SSD ORA`; + }else{ + searchTerm = searchName.replaceAll('%20',' '); + } + let resultItem = []; + + if(searchTerm.toLowerCase() === 'zeno'){ + for(let i=0;i +
+ + + ${itemname} + +
+
    +
  • ${processor?processor:""}
  • +
  • +

    +

    +

    +

    +
  • +
+
    + +
  • + +
    ${gb}
    +
    +
  • +
  • +
    ${pricelist?priceAmt:'Comming Soon'}
    +
  • +
+ + +
+ `; + + + + return `
+
+ + ${itemname} + +
    +
  • +
    ${gb}
    ${ramTech}
    +
  • +
  • +
    ${priceAmt}
    +
  • +
+ + +
+
`; + + //abhi anna design + return ` + + +
+
+
+
+ +
+
+
+

${itemname}

+
+
${gb}
${ramTech}
${priceAmt}
+ +
+
+
+ `; + return `
+
+ + ... + + +
    +
  • + ${gb} ${ramTech} +
  • +
  • + 3200 Mhz +
  • +
+
+ +
+
+
Details +
+
+
+
` + } + + init(); +} + +ramProductsInit(); \ No newline at end of file diff --git a/dist/Js/support/supportticket.js b/dist/Js/support/supportticket.js new file mode 100644 index 0000000..ad1cb33 --- /dev/null +++ b/dist/Js/support/supportticket.js @@ -0,0 +1,29 @@ +function supportTicketNoInit(){ + let ticketId = null; + + INIT(); + + function INIT(){ + ticketId = window.location.search.split("=")[1]; + getTicketData(ticketId); + } + + async function getTicketData(id){ + let res = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/anwisystems/integrations/products/getticketdetails/ticketno/${id}`); + + if(res.isError){ + toasterHelper("error",res.errorMsg,`toast-top-right`); + return; + } + + res = JSON.parse(res.response.result)[0]; + + $('.description_support').html(res['Description']); + $('.ticketidsupport').html(res['ticketno']); + $('.raiseddate').html(res['Raised Date']); + + console.log(res); + } +} + +supportTicketNoInit(); \ No newline at end of file diff --git a/dist/assets/imgs/Home_new/fyro_logo.png b/dist/assets/imgs/Home_new/fyro_logo.png new file mode 100644 index 0000000..eceff2c Binary files /dev/null and b/dist/assets/imgs/Home_new/fyro_logo.png differ diff --git a/dist/assets/imgs/fyro_laptop_images/14 inches.png b/dist/assets/imgs/fyro_laptop_images/14 inches.png new file mode 100644 index 0000000..a0d5ead Binary files /dev/null and b/dist/assets/imgs/fyro_laptop_images/14 inches.png differ diff --git a/dist/assets/imgs/fyro_laptop_images/15 inches.png b/dist/assets/imgs/fyro_laptop_images/15 inches.png new file mode 100644 index 0000000..b10c31c Binary files /dev/null and b/dist/assets/imgs/fyro_laptop_images/15 inches.png differ diff --git a/dist/assets/imgs/fyro_laptop_images/17 inches.png b/dist/assets/imgs/fyro_laptop_images/17 inches.png new file mode 100644 index 0000000..c4ec620 Binary files /dev/null and b/dist/assets/imgs/fyro_laptop_images/17 inches.png differ diff --git a/dist/assets/imgs/icons/Asset 4.svg b/dist/assets/imgs/icons/Asset 4.svg new file mode 100644 index 0000000..36a119b --- /dev/null +++ b/dist/assets/imgs/icons/Asset 4.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/dist/assets/imgs/icons/Asset 5.svg b/dist/assets/imgs/icons/Asset 5.svg new file mode 100644 index 0000000..e3a836a --- /dev/null +++ b/dist/assets/imgs/icons/Asset 5.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/dist/assets/imgs/icons/Asset 8.svg b/dist/assets/imgs/icons/Asset 8.svg new file mode 100644 index 0000000..605d244 --- /dev/null +++ b/dist/assets/imgs/icons/Asset 8.svg @@ -0,0 +1,13 @@ + + + + + + + + + \ No newline at end of file diff --git a/dist/assets/imgs/icons/Asset 9.svg b/dist/assets/imgs/icons/Asset 9.svg new file mode 100644 index 0000000..b1d6954 --- /dev/null +++ b/dist/assets/imgs/icons/Asset 9.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/dist/assets/imgs/icons/Group 4475.svg b/dist/assets/imgs/icons/Group 4475.svg new file mode 100644 index 0000000..ac369e5 --- /dev/null +++ b/dist/assets/imgs/icons/Group 4475.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/dist/assets/imgs/icons/Group 4479.svg b/dist/assets/imgs/icons/Group 4479.svg new file mode 100644 index 0000000..50d411a --- /dev/null +++ b/dist/assets/imgs/icons/Group 4479.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/dist/assets/imgs/icons/Group 4492.svg b/dist/assets/imgs/icons/Group 4492.svg new file mode 100644 index 0000000..8229310 --- /dev/null +++ b/dist/assets/imgs/icons/Group 4492.svg @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/dist/assets/imgs/laptop-icon.png b/dist/assets/imgs/laptop-icon.png new file mode 100644 index 0000000..dd89c19 Binary files /dev/null and b/dist/assets/imgs/laptop-icon.png differ diff --git a/dist/assets/imgs/laptop_aio/Fyro/14 inches 1 and 2/Asset 1@.png b/dist/assets/imgs/laptop_aio/Fyro/14 inches 1 and 2/Asset 1@.png new file mode 100644 index 0000000..e86e863 Binary files /dev/null and b/dist/assets/imgs/laptop_aio/Fyro/14 inches 1 and 2/Asset 1@.png differ diff --git a/dist/assets/imgs/laptop_aio/Fyro/14 inches 1 and 2/Asset 1@2x.png b/dist/assets/imgs/laptop_aio/Fyro/14 inches 1 and 2/Asset 1@2x.png new file mode 100644 index 0000000..3bb8450 Binary files /dev/null and b/dist/assets/imgs/laptop_aio/Fyro/14 inches 1 and 2/Asset 1@2x.png differ diff --git a/dist/assets/imgs/laptop_aio/Fyro/All-in-one 34 inches/Asset 4@2x-bg-white.png b/dist/assets/imgs/laptop_aio/Fyro/All-in-one 34 inches/Asset 4@2x-bg-white.png new file mode 100644 index 0000000..1b40a27 Binary files /dev/null and b/dist/assets/imgs/laptop_aio/Fyro/All-in-one 34 inches/Asset 4@2x-bg-white.png differ diff --git a/dist/assets/imgs/laptop_aio/Fyro/All-in-one 34 inches/Asset 4@2x.png b/dist/assets/imgs/laptop_aio/Fyro/All-in-one 34 inches/Asset 4@2x.png new file mode 100644 index 0000000..52779c4 Binary files /dev/null and b/dist/assets/imgs/laptop_aio/Fyro/All-in-one 34 inches/Asset 4@2x.png differ diff --git a/dist/assets/imgs/laptop_aio/Fyro/All-in-one 34 inches/Asset 5@2x.png b/dist/assets/imgs/laptop_aio/Fyro/All-in-one 34 inches/Asset 5@2x.png new file mode 100644 index 0000000..7eea563 Binary files /dev/null and b/dist/assets/imgs/laptop_aio/Fyro/All-in-one 34 inches/Asset 5@2x.png differ diff --git a/dist/assets/imgs/laptop_aio/Fyro/All-in-one 34 inches/Asset 6@2x.png b/dist/assets/imgs/laptop_aio/Fyro/All-in-one 34 inches/Asset 6@2x.png new file mode 100644 index 0000000..56ac60d Binary files /dev/null and b/dist/assets/imgs/laptop_aio/Fyro/All-in-one 34 inches/Asset 6@2x.png differ diff --git a/dist/assets/imgs/laptop_aio/Fyro/All-in-one 34 inches/Asset 7@2x.png b/dist/assets/imgs/laptop_aio/Fyro/All-in-one 34 inches/Asset 7@2x.png new file mode 100644 index 0000000..502976e Binary files /dev/null and b/dist/assets/imgs/laptop_aio/Fyro/All-in-one 34 inches/Asset 7@2x.png differ diff --git a/dist/assets/imgs/laptop_aio/Zeno/14.1-1/14 inch.png b/dist/assets/imgs/laptop_aio/Zeno/14.1-1/14 inch.png new file mode 100644 index 0000000..45a5e65 Binary files /dev/null and b/dist/assets/imgs/laptop_aio/Zeno/14.1-1/14 inch.png differ diff --git a/dist/assets/imgs/laptop_aio/Zeno/14.1-2/image_2.png b/dist/assets/imgs/laptop_aio/Zeno/14.1-2/image_2.png new file mode 100644 index 0000000..af78abf Binary files /dev/null and b/dist/assets/imgs/laptop_aio/Zeno/14.1-2/image_2.png differ diff --git a/dist/assets/imgs/laptop_aio/Zeno/14.1-2/imageopy.png b/dist/assets/imgs/laptop_aio/Zeno/14.1-2/imageopy.png new file mode 100644 index 0000000..138504e Binary files /dev/null and b/dist/assets/imgs/laptop_aio/Zeno/14.1-2/imageopy.png differ diff --git a/dist/assets/imgs/laptop_aio/Zeno/15.6 inches/15 inch.png b/dist/assets/imgs/laptop_aio/Zeno/15.6 inches/15 inch.png new file mode 100644 index 0000000..6977cb8 Binary files /dev/null and b/dist/assets/imgs/laptop_aio/Zeno/15.6 inches/15 inch.png differ diff --git a/dist/assets/imgs/laptop_aio/Zeno/16 inches/4_3.png b/dist/assets/imgs/laptop_aio/Zeno/16 inches/4_3.png new file mode 100644 index 0000000..1c43345 Binary files /dev/null and b/dist/assets/imgs/laptop_aio/Zeno/16 inches/4_3.png differ diff --git a/dist/assets/imgs/laptop_aio/Zeno/16 inches/5_3.png b/dist/assets/imgs/laptop_aio/Zeno/16 inches/5_3.png new file mode 100644 index 0000000..08a2dd8 Binary files /dev/null and b/dist/assets/imgs/laptop_aio/Zeno/16 inches/5_3.png differ diff --git a/dist/assets/imgs/laptop_aio/Zeno/all-in-one 21.5 inch/1 (3).png b/dist/assets/imgs/laptop_aio/Zeno/all-in-one 21.5 inch/1 (3).png new file mode 100644 index 0000000..a8b0423 Binary files /dev/null and b/dist/assets/imgs/laptop_aio/Zeno/all-in-one 21.5 inch/1 (3).png differ diff --git a/dist/assets/imgs/laptop_aio/Zeno/all-in-one 21.5 inch/2 (2).png b/dist/assets/imgs/laptop_aio/Zeno/all-in-one 21.5 inch/2 (2).png new file mode 100644 index 0000000..c3ebee8 Binary files /dev/null and b/dist/assets/imgs/laptop_aio/Zeno/all-in-one 21.5 inch/2 (2).png differ diff --git a/dist/assets/imgs/laptop_aio/Zeno/all-in-one 21.5 inch/3 (3).png b/dist/assets/imgs/laptop_aio/Zeno/all-in-one 21.5 inch/3 (3).png new file mode 100644 index 0000000..7291601 Binary files /dev/null and b/dist/assets/imgs/laptop_aio/Zeno/all-in-one 21.5 inch/3 (3).png differ diff --git a/dist/assets/imgs/laptop_aio/Zeno/all-in-one 21.5 inch/4 (2).png b/dist/assets/imgs/laptop_aio/Zeno/all-in-one 21.5 inch/4 (2).png new file mode 100644 index 0000000..846923c Binary files /dev/null and b/dist/assets/imgs/laptop_aio/Zeno/all-in-one 21.5 inch/4 (2).png differ diff --git a/dist/assets/imgs/laptop_aio/Zeno/all-in-one 23.8 inch/1.png b/dist/assets/imgs/laptop_aio/Zeno/all-in-one 23.8 inch/1.png new file mode 100644 index 0000000..f1ef3ed Binary files /dev/null and b/dist/assets/imgs/laptop_aio/Zeno/all-in-one 23.8 inch/1.png differ diff --git a/dist/assets/imgs/laptop_aio/Zeno/all-in-one 23.8 inch/2.png b/dist/assets/imgs/laptop_aio/Zeno/all-in-one 23.8 inch/2.png new file mode 100644 index 0000000..504eb30 Binary files /dev/null and b/dist/assets/imgs/laptop_aio/Zeno/all-in-one 23.8 inch/2.png differ diff --git a/dist/assets/imgs/laptop_aio/Zeno/all-in-one 23.8 inch/3.png b/dist/assets/imgs/laptop_aio/Zeno/all-in-one 23.8 inch/3.png new file mode 100644 index 0000000..cac88f1 Binary files /dev/null and b/dist/assets/imgs/laptop_aio/Zeno/all-in-one 23.8 inch/3.png differ diff --git a/dist/assets/imgs/laptop_aio/Zeno/all-in-one 23.8 inch/4.png b/dist/assets/imgs/laptop_aio/Zeno/all-in-one 23.8 inch/4.png new file mode 100644 index 0000000..9921758 Binary files /dev/null and b/dist/assets/imgs/laptop_aio/Zeno/all-in-one 23.8 inch/4.png differ diff --git a/dist/assets/imgs/laptop_aio/Zeno/all-in-one 23.8 inch/5.png b/dist/assets/imgs/laptop_aio/Zeno/all-in-one 23.8 inch/5.png new file mode 100644 index 0000000..9e14613 Binary files /dev/null and b/dist/assets/imgs/laptop_aio/Zeno/all-in-one 23.8 inch/5.png differ diff --git a/dist/assets/imgs/processor.svg b/dist/assets/imgs/processor.svg new file mode 100644 index 0000000..c53e273 --- /dev/null +++ b/dist/assets/imgs/processor.svg @@ -0,0 +1,32 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/index_16_05_2023.html b/index_16_05_2023.html new file mode 100644 index 0000000..227c3c9 --- /dev/null +++ b/index_16_05_2023.html @@ -0,0 +1,824 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Anwi + + + + + + + + +
+
+ + +
+ + + +
+
+
+
+ +
+

Streamlined and Efficient Computing!

+
ZENO, the ideal choice for those who value efficiency + and affordability.
+
+
+
+
+
+
+
+
+ ... +
+
Zeno All-in-One 21.5 inch
+

21.5 inch 4k Display

+

Intel® Core i5-| i7 + Processor (12th Gen)

+

24 GB RAM | 1 TB M.2 NVMe

+
Starting from ₹ + 33,990
+ Coming Soon +
+
+
+
+
+
+
+
+
+

24 Inch All-In-One

+

24" 2K FHD

+

Intel® CoreTM i5 13400 | 16GB + Memory | 1TB + NVMe SSD

+ + Coming Soon +
+
+
+ ... +
+
+
+
+
+
+
+
+
+
+
Zeno Sleekbook 14.1 + inch
+

14.1 inch 2.5K Display

+

Intel® + Core i5-| i7 (12th Gen)

+

24 GB RAM , 1 TB M.2 NVMe

+

1 TB M.2 NVMe

+
Starting from ₹ + 54,990
+ Coming Soon +
+
+
+
+ ... +
+
+
+
+
+
+
+
+
Zeno Sleekbook 15.6 + inch
+

15.6 inch 4k Display

+

Intel® + Core i5-| i7 (12th Gen)

+

24 GB RAM , 1 TB M.2 NVMe

+

1 TB M.2 NVMe

+
Starting from ₹ + 57,990
+ + Coming Soon +
+ +
+
+
+ ... +
+
+
+
+
+
+ Zeno Series +
+
+
+
+ + + +
+
+
+
+ +
+

Unleash the Power of GPU!

+
Explore the world of advanced computing with FYRO.
+
+
+
+
+
+
+
+
+ FYRO Series +
+
+
+
+
+
+
+
FYRO 17.3 RTX + 4080
+

17.3 inch IPS level LCD +

+

Intel® + Core i9

+

32 GB RAM , 2 TB M.2 NVMe

+
+ Starting from ₹ 2,49,990 +
+ Coming Soon +
+
+
+
+ ... +
+
+
+
+
+
+
+
+
FYRO 14 RTX + 4060
+

14.0 inch FHD

+

Intel® + Core i5 | i7 | i9

+

32 GB RAM , 2 TB M.2 NVMe

+

+
+ Starting from ₹ 1,09,990 +
+ Coming Soon +
+ +
+
+
+ ... +
+
+
+ +
+
+
+
+
+
+
+
+

24 Inch All-In-One

+

24" 2K FHD

+

Intel® CoreTM i5 13400 | 16GB + Memory | 1TB + NVMe SSD

+ + Coming Soon +
+
+
+ ... +
+
+
+
+
+
+ ... +
+
FYRO AIO34 ARC
+

34 inch Curved 4K LCD

+

Intel® Core i7-| i9 + Processor (12th | 13th Gen)

+

32 GB RAM , 2 TB M.2 NVMe

+
Starting from ₹ + 1,24,990
+ Coming Soon +
+
+
+
+
+ FYRO Series +
+
+
+
+ + + +
+
+
+
+ +
+
+

Our Innovation in Memory and Storage

+
Reliable Heat Dissipation with Graphene + Technology
+
+
+
+
+
+
+ +
+
+

A Breakthrough in Storage Performance and + Sustainability

+
Experience a new era of + storage technology with + our innovative Graphene-Thermal Pad solution + designed to revolutionize performance, longevity, + and environmental sustainability.
+ ORA Series offers unparalleled benefits + that set it apart from traditional storage options.
+
+
+

Optimal Thermal Management

+
+
+

Lightning-fast read and write speeds

+
+
+

Lightweight & Flexible Deisgn

+
+
+

Enhanced longevity

+
+
Upgrade to the Graphene Technology + Memory Series and experience unparalleled performance, durability, and + sustainability in your data storage solutions.
+
+ +
+
+
+
+
+
+

99% thinner than + Traditional Solutions

+
+
+
+
+
+

+ ||

+

 World's Thinnest Heat + Sink 100% More Effective

+
+
+
+
+
+
+ +
+

15% More + Performance & Life

+
+
+
+
+
+
+
+
+
+ Graphene Technology +
+
+
+ + + +
+
+
+

Discover the Future of Storage

+
with M2 NVMe SSDs at Lightning Speeds
+
+
+
+

ORA PCIe Storage

+
NVMe M.2 SSDs
+
SSDs for your All-in-Ones and Laptops
+
Starting from ₹ 2,700
+
+ Shop Now +
+
+
+ +
+
+
+ ORA Series +
+
+
+ + + +
+
+
+

Portability Meets Power

+
Boost the Laptops Potential with ORA Memory Series
+
+
+
+ +
+
+

ORA Series

+

Laptop Memory

+
Starting from ₹ 1,900
+
+ Shop Now +
+
+
+
+ ORA Series +
+
+
+ + + +
+
+
+

Empowering the Performance

+
Maximize Efficiency with ORA Desktop Memory Series
+
+
+
+

ORA Series

+

Desktop Memory

+
Starting from ₹ 2,100
+
+ Shop Now +
+
+
+ +
+
+
+ ORA Series +
+
+
+ + + +
+
+

Top Selling Products

+
+
+
+
+ + +
+
+ +

ORA 32GB DDR5
4800MHz Desktop Memory

+

Buy Now

+

+

+
+
+
+
+ +

ORA 8GB DDR5
4800MHz Laptop Memory

+

Buy Now

+

+

+
+
+
+
+ +

ORA 32GB DDR4
3200MHz Laptop Memory

+

Buy Now

+

+

+
+
+
+
+ +

DDR4
3200MHz Laptop Memory

+

Buy Now

+

+

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

Innovation at your fingertips

+
Be the first to set your digital world on fire!
+ Know More +
+
+ +
+
+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/index_oldd.html b/index_oldd.html new file mode 100644 index 0000000..6d4d521 --- /dev/null +++ b/index_oldd.html @@ -0,0 +1,572 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Anwi + + + + + + + + + +
+
+ + +
+ + +
+
+
+
+ +
+
+

Our Innovation in Memory and Storage

+
Reliable Heat Dissipation with Graphene + Technology
+
+
+
+
+
+
+ +
+
+

A Breakthrough in Storage Performance and Sustainability

+
Experience a new era of storage technology with + our innovative Graphene-Thermal Pad solution + designed to revolutionize performance, longevity, + and environmental sustainability.
+ ORA Series offers unparalleled benefits + that set it apart from traditional storage options.
+
+
+

Optimal Thermal Management

+
+
+

Lightning-fast read and write speeds

+
+
+

Lightweight & Flexible Deisgn

+
+
+

Enhanced longevity

+
+
Upgrade to the Graphene Technology Memory Series and experience unparalleled performance, durability, and sustainability in your data storage solutions.
+
+ +
+
+
+
+
+
+

99% thinner than + Traditional Solutions

+
+
+
+
+
+

||

+

 World's Thinnest Heat Sink 100% More Effective

+
+
+
+
+
+
+ +
+

15% More Performance & Life

+
+
+
+
+
+
+
+
+
+ Graphene Technology +
+
+
+ + + +
+
+
+

Discover the Future of Storage

+
with M2 NVMe SSDs at Lightning Speeds
+
+
+
+

ORA PCIe Storage

+
NVMe M.2 SSDs
+
SSDs for your All-in-Ones and Laptops
+
Starting from ₹ 2,700
+
+ Shop Now +
+
+
+ +
+
+
+ ORA Series +
+
+
+ + + +
+
+
+

Portability Meets Power

+
Boost the laptops Potentail with ORA Memory Series
+
+
+
+ +
+
+

ORA Series

+

Laptop Memory

+
Starting from ₹ 1,900
+
+ Shop Now +
+
+
+
+ ORA Series +
+
+
+ + + +
+
+
+

Empowering the Performance

+
Maximize Efficiency with ORA Desktop Memory Series
+
+
+
+

ORA Series

+

Desktop Memory

+
Starting from ₹ 2,100
+
+ Shop Now +
+
+
+ +
+
+
+ ORA Series +
+
+
+ + + +
+
+

Top Selling Products

+
+
+
+
+ + +
+
+ +

ORA 32GB DDR5
4800MHz Desktop Memory

+

Buy Now

+

+

+
+
+
+
+ +

ORA 8GB DDR5
4800MHz Laptop Memory

+

Buy Now

+

+

+
+
+
+
+ +

ORA 32GB DDR4
3200MHz Laptop Memory

+

Buy Now

+

+

+
+
+
+
+ +

ORA DDR4
3200MHz Laptop Memory

+

Buy Now

+

+

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

Innovation at your fingertips

+
Be the first to set your digital world on fire!
+ Know More +
+
+ +
+
+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/laptopdetails.html b/laptopdetails.html new file mode 100644 index 0000000..18ae7c0 --- /dev/null +++ b/laptopdetails.html @@ -0,0 +1,681 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Anwi + + + + + + + + + +
+
+
+
+
+
+
+
+ + + +
+
+
+
+
+

Unleashing the Beasts of Creativity & + Innovation with Graphics, AI, and ML

+

FYRO products are the ultimate machines for graphics, AI, and ML + enthusiasts. With powerful Intel® processors and advanced NVIDIA graphic + cards, FYRO laptops and all-in-ones deliver the raw power and + performance needed to handle the most demanding workloads. Whether + you're a gamer, video editor, or AI researcher, FYRO has the tools you need + to unleash your creativity and push the boundaries of what's possible.

+
+ +
+
+

With sleek designs and customizable features, FYRO products + are the + perfect blend of style and substance, offering unparalleled performance + and portability in a compact package. Join the FYRO revolution and + experience the power of next-gen computing today.

+
+
+
+
+
+ +
+

Unmatched GPU Performance

+
+
+
+
+
+ +
+

High-end Gaming Capabilities

+
+
+
+
+
+
+
+ +
+

Thermal Tested to handle + high Temp upto 105o

+
+
+
+
+
+ +
+

Decent + Battery backup

+
+
+
+
+
+ +
+
+
+

The compact powerhouse for your productivity

+

Zeno products are a range of sleek, powerful, and compact non-GPU + laptops and all-in-ones that offer exceptional performance and style. + Built with state-of-the-art components, including the latest generation of + Intel® processors, High-speed RAM, and Fast NVMe PCIe 4.0 SSDs.

+
+ +
+

+ Zeno products are designed to meet the needs of professionals, students, and + anyone who requires a reliable and portable computing solution. With their advanced + features, including customizable hotkeys, fingerprint recognition, and a variety of + connectivity options, Zeno products offer the perfect blend of style and substance for + those who want a high-performing computing experience in a compact package. +

+
+
+
+
+ +
+

Sleek & Light weight

+
+
+
+ +
+

Lightening-fast Intel® Processors +

+
+
+
+ +
+

Stunning Display

+
+
+
+
+
+
+
+ Loading... +
+
+
+
+
+
+
+
+ +
+ + + +
+
+
+
+ +
+
+ +
+
+
+
+
+
+
+ +
ORA3, M.2 NVMe SSD
+
+
+
+
Product out of stock
+
+ +
+ + +
+
Colors
+ +
+
+ +
+
+ +
+
+ +
+
+
+
+ +
+ + + + + + + + + + +
+
+
Quantity
+ + + Add To Cart + +
+
+ - + + 1 + + + +
+
+ + + + +
+
Check if stock is available at your pincode +
+
+
+ + + +
+
+
+
+
+ +
+
+
+ Quantity : + +
+
Insufficient quantity
+
+ + +
+ + +
+ +
+
+ + +
+
+ +
+ +
+ +
+
+
+
+
+ Manufacturer +
+
+ 26/F TOWER ONE TIME SQUARE 1 MATHESON STREET CAUSEWAY BAY HK +
+
+
+
+
+
+ Model Name +
+
+ ‎ORA 16 GB RAM DDR5 SDRAM 4800 MHz +
+
+
+
+
+
+ Product Dimensions +
+
+ 8 x 3.1 x 0.3 cm; 10 Grams +
+
+
+ +
+ +
+
+ +
+
+ +
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/laptops.html b/laptops.html new file mode 100644 index 0000000..a4cec4a --- /dev/null +++ b/laptops.html @@ -0,0 +1,272 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Laptops | Anwi + + + + + + + + +
+ +
+ +
+
+
+
+

Unleashing the Beasts of Creativity & + Innovation with Graphics, AI, and ML

+

FYRO products are the ultimate machines for graphics, AI, and ML + enthusiasts. With powerful Intel® processors and advanced NVIDIA graphics + cards, FYRO laptops and all-in-ones deliver the raw power and + performance needed to handle the most demanding workloads. Whether + you're a gamer, video editor, or AI researcher, FYRO has the tools you need + to unleash your creativity and push the boundaries of what's possible.

+
+ +
+
+

With sleek designs and customizable features, FYRO products + are the + perfect blend of style and substance, offering unparalleled performance + and portability in a compact package. Join the FYRO revolution and + experience the power of next-gen computing today.

+
+
+
+
+
+ +
+

Unmatched GPU Performance

+
+
+
+
+
+ +
+

High-end Gaming Capabilities

+
+
+
+
+
+
+
+ +
+

Thermal Tested to handle + high Temp upto 105o

+
+
+
+
+
+ +
+

Decent + Battery backup

+
+
+
+
+
+ +
+
+
+

The compact powerhouse for your productivity

+

Zeno products are a range of sleek, powerful, and compact non-GPU + laptops and all-in-ones that offer exceptional performance and style. + Built with state-of-the-art components, including the latest generation of + Intel® processors, High-speed RAM, and Fast NVMe PCIe 4.0 SSDs.

+
+ +
+

+ Zeno products are designed to meet the needs of professionals, students, and + anyone who requires a reliable and portable computing solution. With their advanced + features, including customizable hotkeys, fingerprint recognition, and a variety of + connectivity options, Zeno products offer the perfect blend of style and substance for + those who want a high-performing computing experience in a compact package. +

+
+
+
+
+ +
+

Sleek & Light weight

+
+
+
+ +
+

Lightening-fast Intel® Processors +

+
+
+
+ +
+

Stunning Display

+
+
+
+
+
+
+
+
+

Discover the revolution of

+ +
+
+ Join the future with Anwi + Systems +
+ + + + +
+ + + +
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/login_fav.html b/login_fav.html new file mode 100644 index 0000000..d92f4ce --- /dev/null +++ b/login_fav.html @@ -0,0 +1,620 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Anwi + + + + + + + + + +
+
+
+
+ Loading... +
+
+
+ +
+ +
+
+
+
+ logo + + + + + +
+
+ +
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/supportticket.html b/supportticket.html new file mode 100644 index 0000000..b661f75 --- /dev/null +++ b/supportticket.html @@ -0,0 +1,123 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Support | Anwi + + + + + + + + + +
+
+
+
+
+
+
+ +
+
+ +
+
+
+
Ticket ID -
+
+
+
Raised Date -
+
+
+
+
Description
+
+ Lorem ipsum dolor sit, amet consectetur adipisicing elit. Eum, enim! +
+
+
+
+ + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file