Этот коммит содержится в:
2023-05-25 12:32:11 +05:30
родитель c2f6fbdb94
Коммит 60ea1797f1
43 изменённых файлов: 2938 добавлений и 1006 удалений
поставляемый
+12 -5
Просмотреть файл
@@ -4,19 +4,25 @@ let SERVERNAME = 'https://qa.anwisystems.com';
//let SERVERNAME = 'http://localhost:3088';
//template
const STAT = 'd622a6ce4c8540ffadd0f885162ac8f4';
const STAT = 'd8c3dc7ce4d2404484004c02d1d3145f';
//live
//const STAT = '0c7ef2b000ca431290065753dfda56fe';
//const STAT = '23bdb3c6d08d492c939a53daec34e89a';
const USER_AUTH_OKAY = 'USER_AUTH_OKAY';
function imgServerNameBuild(path){
return `https://appassets.bizgaze.app/${path}`;
}
function buildLinkWithServerName(link){
return `${SERVERNAME}/${link}`
}
async function getStatAPIService(url,data={}){
let config = {
url,
@@ -33,7 +39,7 @@ async function getStatAPIService(url,data={}){
}
async function getAPIService(url,data={}){
debugger
const config = {
url:`${SERVERNAME}/${url}`,
method: "get",
@@ -135,7 +141,7 @@ class API_SERVICE_CLASS{
let isPost = method == 'get' ? false : true;
const cookieData = COOKIE_HELPER_ACTIONS.getCookie();
if(!isStat){
if(!cookieData) return window.location.href = "/"
if(!cookieData) return window.location.href = "login.html"
}
let token = isStat ?`stat ${this.statToken}` : `Basic ${cookieData.token}`;
this.token = token;
@@ -295,6 +301,7 @@ class COOKIE_HELPER_CLASS{
};
removeCookie(token){
debugger;
Cookies.remove(token)
}
@@ -321,7 +328,7 @@ function setCookieManual(token){
}
async function checkValidAuth(cb,redirect=undefined){
debugger;
document.querySelector('auth-loader').show();
const res = await COOKIE_HELPER.validateToken();
поставляемый
+41 -22
Просмотреть файл
@@ -97,7 +97,7 @@ function initLogin() {
function updatePasswordUI() {
formErrorAction.removeClass();
let html = ` <form class="row g-3 needs-validation" novalidate> <div class="form-floating position-relative py-0"> <input required type="password" class="form-control shadow-none h-50p passwordvalidui" id="updatepassword" placeholder="Enter Your Password" autocomplete="off"> <span class="position-absolute eyePassword" style=" top: 50%; right: 3%; transform: translateY(-50%);"> <i class="text-dark fa fa-eye-slash"></i> </span> <label for="updatepassword">Password </label> <div class="invalid-feedback"> Please enter password. </div> <div class="pswd_info" style="display: none;z-index: 1;"> <p>Password must contain:</p> <ul> <li id="chck_capital" class="invalid">At least <strong>one capital letter</strong> </li> <li id="chck_small" class="invalid">At least <strong>one lowercase letter</strong> </li> <li id="chck_special" class="invalid">At least <strong>one special letter</strong> </li> <li id="chck_number" class="invalid">At least <strong>one number</strong> </li> <li id="chck_length" class="invalid">At least <strong>8 characters</strong> </li> </ul> </div> </div> <div class="form-floating position-relative py-0"> <input required type="password" class="form-control shadow-none h-50p passwordvalidui" id="updateconfirmpassword" placeholder="Enter Your Password" autocomplete="off"> <span class="position-absolute eyePassword" style=" top: 50%; right: 3%; transform: translateY(-50%);"> <i class="text-dark fa fa-eye-slash"></i> </span> <label for="updateconfirmpassword">Password </label> <div class="invalid-feedback"> Please enter password. </div> <div class="pswd_info" style="display: none;z-index: 1;"> <p>Password must contain:</p> <ul> <li id="chck_capital" class="invalid">At least <strong>one capital letter</strong> </li> <li id="chck_small" class="invalid">At least <strong>one lowercase letter</strong> </li> <li id="chck_special" class="invalid">At least <strong>one special letter</strong> </li> <li id="chck_number" class="invalid">At least <strong>one number</strong> </li> <li id="chck_length" class="invalid">At least <strong>8 characters</strong> </li> </ul> </div> </div> <div class="col-12 pt-3 mt-0 px-0"> <button class="btn bg-gradient-anwi text-white w-100 cursor-pointer btnupdatepassword" type="submit"> <div class="spinner-border authloginLoadingBtn d-none" role="status"> <span class="visually-hidden">Loading...</span> </div> <span class="authloginLoading">Update Password</span> </button> </div> </form>`;
let html = ` <form class="row g-3 needs-validation" novalidate> <div class="form-floating position-relative py-0"> <input required type="password" class="form-control shadow-none h-50p passwordvalidui" id="updatepassword" placeholder="Enter Your Password" autocomplete="off"> <span class="position-absolute eyePassword" style=" top: 50%; right: 3%; transform: translateY(-50%);"> <i class="text-dark fa fa-eye-slash"></i> </span> <label for="updatepassword">Password </label> <div class="invalid-feedback"> Please enter password. </div> <div class="pswd_info" style="display: none;z-index: 1;"> <p>Password must contain:</p> <ul> <li id="chck_capital" class="invalid">At least <strong>one capital letter</strong> </li> <li id="chck_small" class="invalid">At least <strong>one lowercase letter</strong> </li> <li id="chck_special" class="invalid">At least <strong>one special letter</strong> </li> <li id="chck_number" class="invalid">At least <strong>one number</strong> </li> <li id="chck_length" class="invalid">At least <strong>8 characters</strong> </li> </ul> </div> </div> <div class="form-floating position-relative py-0"> <input required type="password" class="form-control shadow-none h-50p passwordvalidui" id="updateconfirmpassword" placeholder="Enter Your Password" autocomplete="off"> <span class="position-absolute eyePassword" style=" top: 50%; right: 3%; transform: translateY(-50%);"> <i class="text-dark fa fa-eye-slash"></i> </span> <label for="updateconfirmpassword">Password </label> <div class="invalid-feedback"> Please enter password. </div> <div class="pswd_info" style="display: none;z-index: 1;"> <p>Password must contain:</p> <ul> <li id="chck_capital" class="invalid">At least <strong>one capital letter</strong> </li> <li id="chck_small" class="invalid">At least <strong>one lowercase letter</strong> </li> <li id="chck_special" class="invalid">At least <strong>one special letter</strong> </li> <li id="chck_number" class="invalid">At least <strong>one number</strong> </li> <li id="chck_length" class="invalid">At least <strong>8 characters</strong> </li> </ul> </div> </div> <div class="col-12 pt-3 mt-0 px-0"> <button class="btn bg-gradient-anwi text-white w-100 cursor-pointer h-50p btnupdatepassword" type="submit"> <div class="spinner-border authloginLoadingBtn d-none" role="status"> <span class="visually-hidden">Loading...</span> </div> <span class="authloginLoading">Update Password</span> </button> </div> </form>`;
$('.authContainerUI').html(html);
updatepasswordEvents();
@@ -151,7 +151,7 @@ function initLogin() {
function loadPasswordListener(){
$('.passwordvalidui').off().on('keyup',function (e){
debugger;
$(this).parent().find('.pswd_info').css('display','block');
let value = $(this).val();
@@ -268,7 +268,7 @@ function initLogin() {
function forgotPasswordUIEmail() {
formErrorAction.removeClass();
let html = `<div> <div class="d-flex justify-content-between border-bottom pb-1"><span>Forgot Password?</span><span class="btnForgotback cursor-pointer"><i class="fa-solid fa-arrow-left"></i></span></div> <div class="py-3">Enter the email associated with your account and we'll send an email with instructions to reset your password.</div> <div> <form class="row g-3 needs-validation" novalidate> <div class="pb-3 form-floating py-0"> <input required type="email" class="form-control shadow-none h-50p" id="forgotpassword" placeholder="Enter Your Email" autocomplete="off"> <label for="forgotpassword">Email address</label> <div class="invalid-feedback"> Please enter email. </div> </div> <div class="col-12 mt-0 px-0"> <button class="btn forgotpasswordbtn bg-gradient-anwi text-white w-100 cursor-pointer" type="submit"> <div class="spinner-border authloginLoadingBtn d-none" role="status"> <span class="visually-hidden">Loading...</span> </div> <span class="authloginLoading">Find email</span> </button> </div> </form> </div></div>`;
let html = `<div> <div class="d-flex justify-content-between border-bottom pb-1"><span>Forgot Password?</span><span class="btnForgotback cursor-pointer"><i class="fa-solid fa-arrow-left"></i></span></div> <div class="py-3">Enter the email associated with your account and we'll send an email with instructions to reset your password.</div> <div> <form class="row g-3 needs-validation" novalidate> <div class="pb-3 form-floating py-0"> <input required type="email" class="form-control shadow-none h-50p" id="forgotpassword" placeholder="Enter Your Email" autocomplete="off"> <label for="forgotpassword">Email address</label> <div class="invalid-feedback"> Please enter email. </div> </div> <div class="col-12 mt-0 px-0"> <button class="btn h-50p forgotpasswordbtn bg-gradient-anwi text-white w-100 cursor-pointer" type="submit"> <div class="spinner-border authloginLoadingBtn d-none" role="status"> <span class="visually-hidden">Loading...</span> </div> <span class="authloginLoading ">Password Reset</span> </button> </div> </form> </div></div>`;
$('.authContainerUI').html(html);
loadForpasswordsEvents();
}
@@ -288,7 +288,7 @@ function initLogin() {
return;
}
debugger;
const email = $('#User_Email').val();
const isUserURL = AUTH_LOGIN_APIS_URL.isUser(email);
@@ -299,6 +299,7 @@ function initLogin() {
if (!isUser) {
loginUser();
} else {
debugger;
signUpUser();
}
});
@@ -368,12 +369,21 @@ function initLogin() {
authloginLoadingBtnAction.removeLoading();
return;
}
COOKIE_HELPER_ACTIONS.setCookie({
let authObj = {
token: res.result.sessionId,
userid: res.result.userId,
...res.result
});
userId: res.result.userId,
unibaseId:res.result.unibaseId,
sessionId:res.result.sessionId,
tenantId:res.result.tenantId,
name:res.result.name,
assetUrl:res.result.assetUrl
};
COOKIE_HELPER_ACTIONS.setCookie(authObj);
localStorage.setItem("userdata",JSON.stringify(res.result));
const isCartAdded = localStorage.getItem(CART_ADD);
if(isCartAdded){
@@ -438,6 +448,8 @@ function initLogin() {
formErrorAction.addError('Password must contain one specail letter ,number,small letter, uppercase letter and 8 letters');
return;
}
const userRegistratioNPayload = {
organizationtypeid: "2",
organizationid: "0",
@@ -487,7 +499,7 @@ function initLogin() {
function loginUI() {
formErrorAction.removeClass();
let html = ` <div class="text-center pb-4">
<span class="font-weight-600">Sign Up</span> or <span class="font-weight-600">Login</span>
<span class="font-weight-600">Login</span> / <span class="font-weight-600">Signup</span>
</div>
<form class="row g-3 needs-validation" novalidate>
<div class="form-floating py-0">
@@ -520,11 +532,11 @@ function initLogin() {
</div>
<div class="fs-7 my-2 satoshi_font text-center"> By continuing, I agree to the Terms of Use & Privacy Policy </div>
<div class="col-12 mt-0 px-0">
<button class="btn bg-gradient-anwi text-white w-100 cursor-pointer" type="submit">
<button class="btn bg-gradient-anwi text-white w-100 cursor-pointer h-50p" type="submit">
<div class="spinner-border authloginLoadingBtn d-none" role="status">
<span class="visually-hidden">Loading...</span>
</div>
<span class="authloginLoading">Continue</span>
<span class="authloginLoading h-50p">Continue</span>
</button>
</div>
</form>
@@ -544,8 +556,8 @@ function initLogin() {
<span class="btnForgotback">
<i class="fa-solid fa-arrow-left"></i>
</span>
</div> <div class="otp-validation"> <div class="otp-input-group mt-3"> <div> <h4 class="text-center">Enter OTP</h4> <div class="text-center">we have sent an OTP to this Email </div> <p class="user_email text-center"></p> <div class="otp-sent-email fw-600 text-center"></div> </div> <div class="d-flex my-4"> <div class="col"> <div class="form-group"> <input type="text" class="press form-control" name="code" maxlength="1" tabindex="1" autocomplete="off"> </div> </div> <div class="col"> <div class="form-group"> <input type="text" class="press form-control" name="code" maxlength="1" tabindex="2" autocomplete="off"> </div> </div> <div class="col"> <div class="form-group"> <input type="text" class="press form-control" name="code" maxlength="1" tabindex="3" autocomplete="off"> </div> </div> <div class="col"> <div class="form-group"> <input type="text" class="press form-control" name="code" maxlength="1" tabindex="4" autocomplete="off"> </div> </div> <div class="col"> <div class="form-group"> <input type="text" class="press form-control" name="code" maxlength="1" tabindex="5" autocomplete="off"> </div> </div> <div class="col"> <div class="form-group"> <input type="text" class="press form-control" name="code" maxlength="1" tabindex="6" autocomplete="off"> </div> </div> </div> <div> <div class="btn bg-gradient-anwi w-100 loader-btn" style="display: none;"> <span class="loader"></span> </div> <a href="#" class="bg-gradient-anwi btn fw-500 text-white w-100" id="email_validate_proceed" type="submit"><div class="spinner-border otploading d-none" role="status">
</div><span class="otploadingtext">CONFIRM</span></a> </div> <div class="resendOTP cursor-pointer text-center pt-4 font-weight-600">Resend OTP</div> </div></div>`;
</div> <div class="otp-validation"> <div class="otp-input-group mt-3"> <div> <h4 class="text-center">Enter OTP</h4> <div class="text-center">We have send OTP to your email </div> <p class="user_email text-center"></p> <div class="otp-sent-email fw-600 text-center"></div> </div> <div class="d-flex my-4"> <div class="col"> <div class="form-group"> <input type="text" class="press form-control" name="code" maxlength="1" tabindex="1" autocomplete="off"> </div> </div> <div class="col"> <div class="form-group"> <input type="text" class="press form-control" name="code" maxlength="1" tabindex="2" autocomplete="off"> </div> </div> <div class="col"> <div class="form-group"> <input type="text" class="press form-control" name="code" maxlength="1" tabindex="3" autocomplete="off"> </div> </div> <div class="col"> <div class="form-group"> <input type="text" class="press form-control" name="code" maxlength="1" tabindex="4" autocomplete="off"> </div> </div> <div class="col"> <div class="form-group"> <input type="text" class="press form-control" name="code" maxlength="1" tabindex="5" autocomplete="off"> </div> </div> <div class="col"> <div class="form-group"> <input type="text" class="press form-control" name="code" maxlength="1" tabindex="6" autocomplete="off"> </div> </div> </div> <div> <a href="#" class=" h-50p d-flex align-items-center justify-content-center bg-gradient-anwi btn fw-500 text-white w-100" id="email_validate_proceed" type="submit"><div class="spinner-border otploading d-none" role="status">
</div><span class="otploadingtext">Verfiy OTP</span></a> </div> <div class="resendOTP cursor-pointer text-center pt-4 ">Resend OTP</div> </div></div>`;
$('.authContainerUI').html(html);
loadOTPEvents(forgot);
}
@@ -592,7 +604,7 @@ function initLogin() {
let presVal = $(this).val();
userotp += presVal;
});
debugger;
if (userotp.length == 6) {
// const validateForgotpass = {
// email: userDetails.email,
@@ -615,14 +627,21 @@ function initLogin() {
toasterHelper("success", "Email has been verified");
return;
}
const res = await loginUserService(userDetails.email, userDetails.password);
let res = await loginUserService(userDetails.email, userDetails.password);
res = res.data;
COOKIE_HELPER_ACTIONS.setCookie({
token: res.data.result.sessionId,
userid: res.data.result.userId,
...res.data.result
});
let authObj = {
token: res.result.sessionId,
userId: res.result.userId,
unibaseId:res.result.unibaseId,
sessionId:res.result.sessionId,
tenantId:res.result.tenantId,
name:res.result.name,
assetUrl:res.result.assetUrl
};
COOKIE_HELPER_ACTIONS.setCookie(authObj);
localStorage.setItem("userdata",JSON.stringify(res.result));
const isCartAdded = localStorage.getItem(CART_ADD);
if(isCartAdded){
localStorage.removeItem(CART_ADD);
+1
Просмотреть файл
@@ -127,6 +127,7 @@ class AuthLoader extends HTMLElement {
console.log(this.payment);
this._shadowRoot = this.attachShadow({ 'mode': 'open' });
this._shadowRoot.appendChild(template.content.cloneNode(true));
this.show();
}
static get observedAttributes() {
поставляемый
+1 -1
Просмотреть файл
@@ -334,7 +334,7 @@ $(document).ready(function () {
</div>
<div class="footer-rkt position-absolute bottom-0
end-0 me-5">
<img src="https://anwisystems.com/dist/assets/imgs/Home/rocket-footer.png" alt="footer-rocket-img">
<img src="../dist/assets/imgs/Home/rocket-footer.png" alt="footer-rocket-img">
</div>
</div>
</div>
поставляемый
+183 -32
Просмотреть файл
@@ -7,83 +7,231 @@
let width = $(window).width();
const ADD_SUB_NAV_CONTAINER = 'ADD_SUB_NAV_CONTAINER';
const REMOVE_SUB_NAV_CONTAINER = 'REMOVE_SUB_NAV_CONTAINER';
var header = $('.sticky-bar');
var win = $(window);
let ele_page = $("body").hasClass("product_pg");
if(ele_page == true){
let win_wid = win.width();
let ram_page = window.location.pathname;
let loc= ram_page.includes('ramproducts.html');
let loc_2= ram_page.includes('allinones.html');
let loc_3= ram_page.includes('laptops.html');
function naChanges(){
if(loc === true){
$("svg").find("path").attr("fill","#000");
}
else if(loc_2 === true || loc_3 === true){
if(window.location.href.includes("?Zeno") || window.location.href.includes("?AIO%20Fyro") || window.location.href.includes("?FYRO") || window.location.href.includes("?AIO%20Zeno")){
if(win_wid <=1199){
$(".user-icon").find('path').attr('fill',"#000");
$(".cart_icon").find('path').attr('fill',"#000");
}else{
$("svg").find("path").attr("fill","#fff");
}
}else{
$("svg").find("path").attr("fill","#000");
}
}
else{
$("body.product_pg").find(".header-large-device").find(".header-action-wrap").find(".same-style").find("svg").find("path").attr("fill","#fff");
}
}
setTimeout(naChanges, 1000);
let $body_pg = $("body").hasClass("services_page");
if ($body_pg == true) {
$(".main-menu").find("nav ul li a").addClass("text-dark");
let img_src = `/dist/assets/imgs/anwi-logo-1.png`;
$(".logo-menu-wrap").find(".logo a img").attr("src",img_src);
$(".header-bottom").addClass("sticky-bar stick");
$("body.services_page").find(".header-large-device").find(".header-action-wrap").find(".same-style").find("svg").find("path").attr("fill","#000");
}
}
function naChanges(){
$("body.product_pg").find(".header-large-device").find(".header-action-wrap").find(".same-style").find("svg").find("path").attr("fill","#fff");
}
setTimeout(naChanges, 1000);
let $body_pg = $("body").hasClass("services_page");
if ($body_pg == true) {
$(".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.services_page").find(".header-large-device").find(".header-action-wrap").find(".same-style").find("svg").find("path").attr("fill","#000");
}
function subNavContainer(option){
let urlName = window.location.href;
if(!urlName.toLowerCase().includes('zeno') && !urlName.toLowerCase().includes('fyro')){
return;
}
if(option === ADD_SUB_NAV_CONTAINER){
$('.sub_nav_container').removeClass('d-none');
}else if(option === REMOVE_SUB_NAV_CONTAINER){
$('.sub_nav_container').addClass('d-none');
}
}
win.on('scroll', function() {
var scroll = win.scrollTop();
// const mainContainerIsThere = document.querySelector('.mainContanierProduct').getBoundingClientRect();
// if(mainContainerIsThere.top <200){
// $('.sub_nav_container').removeClass('d-none');
// }else{
// $('.sub_nav_container').addClass('d-none');
// }
if (scroll < 100) {
header.removeClass('stick');
$("body.about_page").find(".header-large-device").find(".header-action-wrap").find(".same-style").find("svg").find("path").attr("fill","#fff");
$("body.product_pg").find(".header-large-device").find(".header-action-wrap").find(".same-style").find("svg").find("path").attr("fill","#fff");
$("body.services_page").find(".header-large-device").find(".header-action-wrap").find(".same-style").find("svg").find("path").attr("fill","#fff");
$(".hover_tab_1").find("svg").find("path").attr("fill","#fff");
$(".hover_tab_2").find("svg").find("path").attr("fill","#fff");
// $('.header-bottom-flex').find('svg path').attr('fill','#fff');
$("body").find(".header-large-device").find(".header-action-wrap").find(".same-style").find("svg").find("path").attr("fill","#fff");
$("body.services_page").find(".header-large-device").find(".header-action-wrap").find(".same-style").find("svg").find("path").attr("fill","#fff");
if(!$('.iframcontainer').hasClass('d-none')){
subNavContainer(REMOVE_SUB_NAV_CONTAINER);
}else if($('.iframcontainer').hasClass('d-none')){
$('.sub_nav_container').addClass('d-none');
}
if ($body_pg == true) {
$(".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);
let img_src = `/dist/assets/imgs/anwi-logo-1.png`;
$(".logo-menu-wrap").find(".logo a img").attr("src",img_src);
$(".header-bottom").addClass("sticky-bar stick");
}else{
let $about_pg = $("body").hasClass("about_page");
if($about_pg == true){
$(".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);
let img_src = `/dist/assets/imgs/anwi-logo-1.png`;
$(".logo-menu-wrap").find(".logo 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");
}else{
let img_src = `./dist/assets/imgs/anwi-logo-2.png`;
$(".logo-menu-wrap").find("a img").attr("src",img_src);
$(".main-menu").find("nav ul li a").addClass("text-white");
$(".header-bottom.sticky-bar.stick").removeClass("sticky-bar stick");
if(loc === true || loc_2 === true || loc_3 === true){
if(window.location.href.includes("?Zeno") || window.location.href.includes("?FYRO") || window.location.href.includes("?AIO%20Fyro") || window.location.href.includes("?AIO%20Zeno")){
if(win_wid <=1199){
$(".user-icon").find('path').attr('fill',"#000");
$(".cart_icon").find('path').attr('fill',"#000");
}else{
let imgs = `/dist/assets/imgs/anwi-logo-2.png`;
$(".logo-menu-wrap").find(".logo img").attr("src",imgs);
$(".main-menu").find("nav ul li a").addClass("text-white").removeClass("text-dark");
$('.same-style').find('svg path').attr('fill','#fff');
$('.header-bottom-flex').find('svg path').attr('fill','#fff');
$(".header-bottom.sticky-bar.stick").removeClass("sticky-bar stick");
}
}
else{
let imgs = `/dist/assets/imgs/anwi-logo-1.png`;
$(".main-menu").find("nav ul li a").addClass("text-dark").removeClass("text-white");
$(".logo-menu-wrap").find(".logo img").attr("src",imgs);
$('.same-style').find('svg path').attr('fill','#000');
$('.header-bottom-flex').find('svg path').attr('fill','#000');
$(".header-bottom.sticky-bar.stick").removeClass("sticky-bar stick");
}
} else{
let contact_pg = $("body").hasClass("contact_page");
if(contact_pg === true){
$(".main-menu").find("nav ul li a").addClass("text-dark");
let img_src = `/dist/assets/imgs/anwi-logo-1.png`;
$(".logo-menu-wrap").find(".logo a img").attr("src",img_src);
$('.header-bottom-flex').find('svg path').attr('fill','#000');
}else{
let img_src = `/dist/assets/imgs/anwi-logo-2.png`;
$(".logo-menu-wrap").find(".logo a img").attr("src",img_src);
$(".main-menu").find("nav ul li a").addClass("text-white");
$(".header-bottom.sticky-bar.stick").removeClass("sticky-bar stick");
}
}
}
}
} else {
header.addClass('stick');
subNavContainer(ADD_SUB_NAV_CONTAINER);
$(".header-bottom").addClass("sticky-bar stick");
let src = `./dist/assets/imgs/anwi-logo-1.png`;
$(".logo-menu-wrap").find("a img").attr("src",src);
let src = `/dist/assets/imgs/anwi-logo-1.png`;
$(".logo-menu-wrap").find(".logo a img").attr("src",src);
$(".main-menu").find("nav ul li a").removeClass("text-white");
$("body.product_pg").find(".header-large-device").find(".header-action-wrap").find(".same-style").find("svg").find("path").attr("fill","#000");
$('.header-bottom-flex').find('svg path').attr('fill','#000')
let $body_pg = $("body").hasClass("services_page");
if ($body_pg == true) {
let src = `../dist/assets/imgs/anwi-logo-1.png`;
$(".logo-menu-wrap").find("a img").attr("src",src);
let src = `/dist/assets/imgs/anwi-logo-1.png`;
$(".logo-menu-wrap").find(".logo a img").attr("src",src);
$(".main-menu").find("nav ul li a").removeClass("text-white");
}
let $about_pg = $("body").hasClass("about_page");
if($about_pg == true){
$(".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);
let img_src = `/dist/assets/imgs/anwi-logo-1.png`;
$(".logo-menu-wrap").find(".logo a img").attr("src",img_src);
$(".header-bottom").addClass("sticky-bar stick");
}
}
});
});
$("nav ul li").each(function(){
let nav_item = $(this).find("ul").hasClass("pb-3");
if(nav_item === true){
$(this).on("mouseenter",function(){
$(".sub_nav_container").addClass("d-none");
let nav_cls = $(".header-bottom").hasClass("stick");
if(nav_cls === false){
$(".header-bottom").addClass("bg-white");
let src = `/dist/assets/imgs/anwi-logo-1.png`;
$(".logo-menu-wrap").find(".logo a img").attr("src",src);
$(".main-menu").find("nav ul li a").addClass("text-dark").removeClass("text-white");
$('.header-bottom-flex').find('svg path').attr('fill','#000');
}
});
$(this).on("mouseleave",function(){
let nav_cls = $(".header-bottom").hasClass("stick");
let product_detail = window.location.pathname;
let detail = product_detail.includes("productdetails.html");
if(detail === true){
$(".sub_nav_container").removeClass("d-none");
}
if(nav_cls === false){
let ram_page = window.location.pathname;
let loc= ram_page.includes('ramproducts.html');
if(loc === false){
let contact_pg = $("body").hasClass("contact_page");
let product_pg = $("body").hasClass("product_pg");
if(contact_pg === true){
$(".header-bottom").removeClass("bg-white");
$(".main-menu").find("nav ul li a").addClass("text-dark").removeClass("text-white");
let img_src = `/dist/assets/imgs/anwi-logo-1.png`;
$(".logo-menu-wrap").find(".logo a img").attr("src",img_src);
}else if(product_pg === true){
$(".header-bottom").removeClass("bg-white");
$(".main-menu").find("nav ul li a").addClass("text-dark").removeClass("text-white");
let img_src = `/dist/assets/imgs/anwi-logo-1.png`;
$(".logo-menu-wrap").find(".logo a img").attr("src",img_src);
$('.header-bottom-flex').find('svg path').attr('fill','#000');
}else{
$(".header-bottom").removeClass("bg-white");
let src = `/dist/assets/imgs/anwi-logo-2.png`;
$(".logo-menu-wrap").find(".logo a img").attr("src",src);
$(".main-menu").find("nav ul li a").addClass("text-white").removeClass("text-dark");
$('.header-bottom-flex').find('svg path').attr('fill','#fff');
}
}else{
$(".header-bottom").removeClass("bg-white");
}
}
})
}
})
/*--------------------------------
Slider active 1
-----------------------------------*/
@@ -1503,5 +1651,8 @@
}
},300)
})(jQuery);
поставляемый
+22 -22
Просмотреть файл
@@ -1,5 +1,5 @@
async function addressDetails() {
debugger;
// const user_addr_num =$("#Profile_Phone_num").val();
getbillinginfoBind();
let addr_phone = $('#phonenumber');
@@ -14,7 +14,7 @@ async function addressDetails() {
function renderCustomStateDropdown(stateList) {
let html = ``;
debugger;;
let maxLen = stateList.length > 10 ? 10 : stateList.length
for (let i = 0; i < maxLen; i++) {
let currItem = stateList[i];
@@ -24,7 +24,7 @@ async function addressDetails() {
$('.stateBox').html(html);
$('.stateoption').off().click(function (e) {
debugger;
const name = $(e.target).data('name');
const id = $(e.target).data('value');
$('#state').val(name);
@@ -70,32 +70,32 @@ async function addressDetails() {
`apis/v4/bizgaze/integrations/anwiauth/getbillinginfo/contactid/${cookieRes.userId}`
);
let res = JSON.parse(response.result);
debugger;
console.log(res);
res = res[res.length - 1];
debugger
addr_phone.val(res.phonenumber);
$('#Profile_User_name').val(res.organizationname)
$('#Profile_Phone_num').val(res.phonenumber)
addr_phone.val(res?.phonenumber);
$('#Profile_User_name').val(res?.organizationname)
$('#Profile_Phone_num').val(res?.phonenumber)
let Profileusername = $('#Profile_User_name').val()
let Profileuserphone = $('#Profile_Phone_num').val()
$('.overview_user_name').html(Profileusername);
$('.overview_user_phone').html(Profileuserphone);
if (res.cityid == "0") {
if (res?.cityid == "0") {
$(".profile_Address").html(
`<div class=User_address><button class="btn btn-outline-primary create_address" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-plus-circle" viewBox="0 0 16 16"><path d="M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z"/><path d="M8 4a.5.5 0 0 1 .5.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3A.5.5 0 0 1 8 4z"/></svg> ADD NEW ADDRESS</button></div>`
);
$(".address_edit").hide();
$(".create_address").on("click", function () {
debugger
$(this).hide();
$('.saveaddress').hide()
$(".addresslist").show();
$(".Createaddress").show();
getCountryStateCurrency();
});
$('.Createaddress').on('click', async function () {
$('.Createaddress').off().on('click', async function () {
if (addr_zip.val() == "" || addr_addrline.val() == "") {
// toastr.error('Required Feilds are Empty!');
// if(addr_phone.val() == '' || addr_phone.val().length <10){
@@ -128,16 +128,16 @@ async function addressDetails() {
})
} else {
$(".profile_Address").html(
`<div class=User_address><address><p><strong class="">${res.organizationname}</strong><p>${res.addressline},${res.cityname},${res.zipcode}<p>Mobile: ${res.phonenumber}</address></div>`
`<div class=User_address><address><p><strong class="">${res?.organizationname}</strong><p>${res?.addressline},${res?.cityname},${res?.zipcode}<p>Mobile: ${res?.phonenumber}</address></div>`
);
$('#state').val(res.cityname)
$('#state').attr('data-id',res.cityid);
$('#zipcode').val(res.zipcode);
$('#addressdes').val(res.addressline);
$('#state').val(res?.cityname)
$('#state').attr('data-id',res?.cityid);
$('#zipcode').val(res?.zipcode);
$('#addressdes').val(res?.addressline);
}
resolve();
});
} debugger
}
$(".address_edit").on("click", function () {
@@ -160,7 +160,7 @@ async function addressDetails() {
.off("click")
.click(async function () {
debugger
if (addr_zip.val() == "" || addr_addrline.val() == "") {
// toastr.error('Required Feilds are Empty!');
// if(addr_phone.val() == '' || addr_phone.val().length <10){
@@ -201,7 +201,7 @@ async function addressDetails() {
let limit = 10;
let results = [];
let maxLen = stateArr.length > 10 ? 10 :stateArr.length;
debugger
for(let i=0;i<stateArr.length;i++){
let currItem = stateArr[i];
let stateName = currItem.cityname.toLowerCase();
@@ -305,12 +305,12 @@ async function addressDetails() {
}
function createBillingForm() {
debugger;
return new Promise(async (resolve, reject) => {
let cookieRes = COOKIE_HELPER_ACTIONS.getCookie();
let { userId, name } = cookieRes;
const ctyId = await getCountryId();
let stateId = parseInt($("#state").val());
let stateId = $("#state").data('id');
let payload = {
cityid: stateId,
CityName: $(`[data-id="${stateId}"`).html(),
@@ -344,7 +344,7 @@ async function addressDetails() {
}
async function AddresssaveForm() {
debugger;
let cookieRes = COOKIE_HELPER_ACTIONS.getCookie();
let { userId, name } = cookieRes;
const { errorMsg, isError, response } =
поставляемый
+1
Просмотреть файл
@@ -1,6 +1,7 @@
function initmyaccount(){
$('.my_account_page').removeClass('d-none')
myProfile();
supportTicketMain();
bindOrderDetails();
wattantyFunction();
addressDetails()
поставляемый
+8 -8
Просмотреть файл
@@ -1,5 +1,5 @@
function myProfile() {
debugger
getbillinginfoBind()
async function getbillinginfoBind(){
let cookieRes = COOKIE_HELPER_ACTIONS.getCookie();
@@ -8,16 +8,16 @@ function myProfile() {
`apis/v4/bizgaze/integrations/anwiauth/getbillinginfo/contactid/${cookieRes.userId}`
);
let res = JSON.parse(response.result);
debugger;
console.log(res);
res = res[res.length - 1];
$('#Profile_User_name').val(res.organizationname)
$('#Profile_Phone_num').val(res.phonenumber)
$('#Profile_User_name').val(res?.organizationname)
$('#Profile_Phone_num').val(res?.phonenumber)
let Profileusername =$('#Profile_User_name').val()
let Profileuserphone=$('#Profile_Phone_num').val()
$('.overview_user_name').html(Profileusername);
$('.overview_user_phone').html(Profileuserphone);
$(".profile_Address").html(`<div class=User_address><address><p><strong>${res.organizationname}</strong><p>${res.addressline},${res.cityname}<br>${res.statename},${res.zipcode}<p>Mobile: ${res.phonenumber}</address></div>`
$(".profile_Address").html(`<div class=User_address><address><p><strong>${res?.organizationname}</strong><p>${res?.addressline},${res?.cityname}<br>${res?.statename},${res?.zipcode}<p>Mobile: ${res?.phonenumber}</address></div>`
);
}
let countryId = null;
@@ -60,14 +60,14 @@ function myProfile() {
$(".update_profile_pass").on("click", async function () {
let userEmail = window.localStorage.getItem("Useremail");
console.log(userEmail);
let port = "http://beta.bizgaze.com";
let port = SERVERNAME;
// let port = "http://localhost:3088";
let url = `${port}/account/getuserbyphoneormail/${userEmail}/${userEmail}`;
const config = {
url,
method: "get",
};
debugger;
let response = await axios(config);
let usernameId = response.data.result.userName;
@@ -129,7 +129,7 @@ function myProfile() {
$('.profile_edit_cancel').trigger('click')
})
async function ProfilesaveForm() {
debugger
let cookieRes = COOKIE_HELPER_ACTIONS.getCookie();
let { userId, name } = cookieRes;
const { errorMsg, isError, response } =
+6 -6
Просмотреть файл
@@ -1,6 +1,6 @@
function wattantyFunction(){
debugger
let order_card = `<div class=warranty_product><div class="py-3 warranty_productform"><div class=mb-3><label class=form-label for=Add_serial_number_inp>Enter Your Serial Number</label><input class=form-control id=Add_serial_number_inp required><label class="form-label text-danger d-none error_serial_num" for=Add_serial_number_inp >Serial Number Not Found</label></div><div class=mb-3><label class=form-label for=Add_phonenumber_inp>Enter Your Phone Number</label> <input class=form-control id=Add_phonenumber_inp required><label class="text-danger d-none form-label error_phonenumber" for=Add_phonenumber_inp>Enter Valid Phone Number</label></div><div class=mb-3><label class=form-label for=Add_contactname_inp>Enter Your Contactname</label> <input class=form-control id=Add_contactname_inp required></div><div class="serial_submit text-end"><button class="btn btn-dark warranty_serialNumber_submit" type="button">Submit</button></div></div></div>`;
$(".user_orders").append(order_card);
@@ -18,7 +18,7 @@ $('.warranty_serialNumber_submit').click(async function () {
$('#Add_serial_number_inp').removeClass('border-danger')
$('#Add_phonenumber_inp').removeClass('border-danger');
let port = SERVERNAME;
debugger
let url = `${port}/apis/v4/Bizgaze/integrations/products/warrantyservice/serialno/${serial_no_inp}`;
console.log(url);
// const STAT = `05b2f2ca510344968c65e1ebf49a5595`
@@ -31,7 +31,7 @@ $('.warranty_serialNumber_submit').click(async function () {
};
let response = await axios(config);
debugger
console.log(response)
let product_res = response.data.result
if (product_res != null) {
@@ -70,7 +70,7 @@ $('.warranty_serialNumber_submit').click(async function () {
let warrenty_date =value[0].warrantytodate
let userwarrenty_product = `<div class="border-3 border-start my-3 order-cards ps-4 rounded-0" id='order-cards'> <div class="col-md-12 "><b>Warranty For :</b> ${value[0].itemname}</div><div class="row align-items-center"> <div class=col-md-12> <div class="col-md-6 my-2"><span>Serail NO :</span> <span class="fs-9 text-secondary serial_no_warrantynumber">${value[0].serialno}</span> </div><div class="col-md-6 my-2"><span> Warrenty Expiry Date :</span> <span class=" fs-9 text-secondary rounded-2 warrenty_date">${value[0].warrantytodate}</span> </div><div class="my-2 col-md-6"><span> Warranty Start Date :</span> <span class="fs-9 text-secondary purchase_date">${value[0].warrantyfromdate}</span> </div><div class="col-md-6 my-2"> <span> Warranty Status : </span><span class="bg-success btn fs-9 is_warranty_enable py-0 text-white"> ${value[0].warrantyenabled}</span> </div></div></div></div>`;
let is_warranty_enable=value[0].warrantyenabled
debugger
$(".user_Warranty_details").html(userwarrenty_product);
if(is_warranty_enable == true){
$('.is_warranty_enable').text('Activated')
@@ -117,9 +117,9 @@ async function warrentyService(Warrentypayload) {
// // let strDate = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
// let strDate = new Date().toISOString().slice(0, 10)
// console.log(strDate)
debugger
const res = await postAPIServiceWarranty(`apis/v4/bizgaze/transact/items/savewarrantyasync`, Warrentypayload);
debugger
console.log(res)
if (res.data.status == 2) {
// $('.warranty_productform').addClass('d-none');
поставляемый
+51 -13
Просмотреть файл
@@ -1,11 +1,12 @@
async function bindOrderDetails() {
let user_number = $('.User_phoneum').text();
// validatesession()
debugger
let cookieRes = COOKIE_HELPER_ACTIONS.getCookie();
let { userId } = cookieRes;
//let userId = '106631380000048';
debugger;
console.log(cookieRes);
let port = SERVERNAME;
// let port = "http://localhost:3088";
let url = `${port}/apis/v4/Bizgaze/integrations/products/salesorderdetailsbyorgid/organizationid/${userId}`;
@@ -19,14 +20,14 @@ async function bindOrderDetails() {
'Content-Type': 'application/json'
}
};
debugger
let res = await axios(config);
if (res.data.result == '[]' || res.data.result === null) {
$(".user_order_details").append(`<div><h6 class="text-center">No orders Found</h6></div>`);
return;
}
const orderDetailsres = JSON.parse(res.data.result);
console.log(orderDetailsres);
console.log(orderDetailsres,"order");
let new_arrr = orderDetailsres;
console.log(new_arrr);
$(".user_order_details").html(``)
@@ -36,14 +37,16 @@ async function bindOrderDetails() {
let order_netTotal = '';
let order_quantity = '';
let order_taxAmount = '';
for (let i = 0; i < new_arrr.length; i++) {
let current = new_arrr[i]
console.log(current);
let updatedCurent_total = current.nettotal.toLocaleString()
order_itemTotal = current.itemtotal;
order_netTotal = current.nettotal;
order_quantity = current.Quantity;
order_taxAmount = current.taxamount;
user_order_details += `<a href="" class="order_details_main_container">
user_order_details += `<div href="" class="order_details_main_container">
<div class="border-3 mb-3 card">
<div class="text-dark card-body px-0 pt-0">
<div class="d-none">
@@ -53,7 +56,7 @@ async function bindOrderDetails() {
<span class="order_qty">${order_quantity}</span>
</div>
<div class="bg-gray-4 p-2 m-0 border-bottom">
<p class="m-0 fw-600 text-secondary">ORDER NO: <span class="text-blue fs-9 serial_no ">${current.OrderNo}</span>
<p class="m-0 fw-600 text-secondary">ORDER NO: <span class="text-blue fs-9 serial_no serial_no_btn "><u class="cursor-pointer">${current.OrderNo}</u></span>
</p>
</div>
<div class="bg-gray-4 p-2 row g-0">
@@ -76,8 +79,17 @@ async function bindOrderDetails() {
<div class="col-md-4 ms-auto">
<div class="d-flex justify-content-between">
<p class="mb-1 text-info fw-500"> View order details </p>
<p class="mb-0 text-info fw-500">Invoice</p>
<div>
<p class="mb-1 text-info fw-500"> View order details </p>
</div>
<div>
<p class="mb-0 text-info fw-500 text-center">Invoice</p>
<p class="mb-1 fw-500 d-flex gap-2 pt-1">
<span data-invoiceid="${current.invoiceid}" class="invoicedownload w-100 cursor-pointer bg-white rounded p-1 d-flex align-items-center justify-content-around"> <i class="fa-solid fa-file-invoice p-1 "></i></span>
</p>
</div>
</div>
</div>
</div>
@@ -101,16 +113,42 @@ async function bindOrderDetails() {
</div>
</div>
</div>
</a>`;
</div>`;
}
$(".user_order_details").append(user_order_details);
$('.order_details_main_container').click(function () {
let current_serial_no = $(this).find('.serial_no').text();
$('.serial_no_btn').click(function () {
// order_details_main_container
let current_serial_no = $(this).text();
// window.localStorage.setItem('orderDate',current_order_date);
// window.localStorage.setItem('orderSerialno',current_serial_no);
// window.localStorage.setItem('Userphonenumber',user_number);
$(this).attr('href', `./orderdetails.html#${current_serial_no}`)
})
// $(this).attr('href', `./orderdetails.html#${current_serial_no}`);
window.location.href = `/orderdetails.html#${current_serial_no}`;
});
$('.invoicedownload').off('click').click(async function (e){
let invoiceId = $(this).data('invoiceid');
console.log(invoiceId);
$(this).html(`<div style="width:15px;height:15px" class="spinner-border" role="status">
<span class="sr-only">Loading...</span>
</div>`)
let res = await API_SERVICES_ACTIONS.postAPIService(`apis/v4/unibase/platform/templates/generatetemplatepdf/printprovideruniquekey/Bizgaze_Extension_Transact_Transact_PrintProvider_InvoicePrint/pkid/${invoiceId}`);
if(res.isError){
toasterHelper(`error`,err.errorMsg,`toast-top-right`);
return;
}
res=JSON.parse(res.response.result);
let {FilePath:fileLink} = res;
let link = buildLinkWithServerName(fileLink);
console.log(link);
window.open(link, "_blank");
$(this).html(`<i class="fa-solid fa-file-invoice p-1 "></i>`)
});
}
function toasterOpts() {
toastr.options = {
поставляемый
+333 -142
Просмотреть файл
@@ -1,8 +1,58 @@
navINIT();
function navINIT() {
async function getAllProdouctsIds(){
let res = await API_SERVICES_ACTIONS.getAPIService('apis/v4/bizgaze/integrations/products/getallproducts',true);
if(res.isError){
alert(res.errorMsg);
return;
}
res = JSON.parse(res.response.result);
for(let i=0;i<res.length;i++){
let curr = res[i];
let productname = curr.productname;
let id = curr.productid;
// ACCESSORIES
switch (productname) {
case 'Zeno Sleekbook':
appendIdNav('zenosleekbook',id);
break;
case 'Zeno Dualbook':
appendIdNav('zenodualbook',id);
break;
case "FYRO Flagship":
appendIdNav('fyroflagship',id);
break;
case "AIO Fyro":
// appendIdNav('fyroaio',id);
break;
case "AIO Zeno":
// appendIdNav('zenoaio',id);
default:
break;
}
}
}
function appendIdNav(className,id){
let html = $(`.${className}`).attr('href');
const pattern = /{[^}]+}/g;
const replacedString = html.replace(pattern, id);
$(`.${className}`).parents('.nav-tab-show').removeClass('d-none')
$(`.${className}`).attr('href',replacedString);
}
if(!window.location.href.includes('orderconfirmation')&&!window.location.href.includes('/w/')){
loadCart();
}
function loadHelper(src = './dist/js/utils/helpers.js'){
@@ -40,6 +90,7 @@ function navINIT() {
}
setLengthCart();
getAllProdouctsIds();
//console.log("hello");
@@ -48,152 +99,122 @@ function navINIT() {
}
let URLNAMENAV = window.location.href;
const isTransparent = URLNAMENAV.includes('login')||URLNAMENAV.includes('orderconfirmation')|| URLNAMENAV.includes('services/paymentmethod.html');
let nav_html = `
<header class="header-area section-padding-1 transparent-bar" ${isTransparent ?'style="background:#0A1039"' :''}>
<header class="header-area section-padding-1 transparent-bar" ${isTransparent ?'style="background:#000"' :''}>
<div class="header-large-device">
<div class="header-bottom sticky-bar">
<div class="container">
<div class="header-bottom-flex">
<div class="logo-menu-wrap d-flex">
<div class="logo-menu-wrap d-flex gap-5">
<div class="logo">
<a href="../index.html">
<img src="/dist/assets/imgs/anwi-logo-2.png" alt="logo" class="w-50">
<img src="/dist/assets/imgs/anwi-logo-2.png" alt="logo" class="nav_logo">
</a>
</div>
<div class="main-menu menu-lh-1 main-menu-padding-1">
<nav>
<ul class="mb-0 p-0">
<li class="hover_tab_1"><a href="./storageproducts.html" class="satoshi_font">STORAGE</a>
<ul class="py-3 px-3 rounded-bottom shadow">
<li class="d-flex">
<ul class="nav nav-pills flex-column w-200 border-end" id="experienceTab" role="tablist">
<li class="nav-item">
<a class="nav-link active text-dark" data-bs-toggle="tab" href="#ora3">ORA 3</a>
</li>
<li class="nav-item">
<a class="nav-link text-dark" data-bs-toggle="tab" href="#ora4">ORA 4</a>
</li>
</ul>
<ul class="nav w-500">
<li>
<div class="tab-content">
<div id="ora3" class="container tab-pane active">
<div class="row">
<div class="col-4">
<div class="bg-gray-4 rounded-3 cursor-pointer">
<img src="./dist/assets/imgs/Navbar/ora3_ram.png" alt="ora img" class=""/>
<p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora3 M.2 NVMe 512GB</p>
</div>
</div>
<div class="col-4">
<div class="bg-gray-4 rounded-3 cursor-pointer">
<img src="./dist/assets/imgs/Navbar/ora3_ram.png" alt="ora img" class=""/>
<p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora3 M.2 NVMe 1TB</p>
</div>
</div>
<div class="col-4">
<div class="bg-gray-4 rounded-3 cursor-pointer">
<img src="./dist/assets/imgs/Navbar/ora3_ram.png" alt="ora img" class=""/>
<p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora3 M.2 NVMe 2TB</p>
</div>
</div>
</div>
</div>
<div id="ora4" class="container tab-pane fade">
<div class="row">
<div class="col-4">
<div class="bg-gray-4 rounded-3 cursor-pointer">
<img src="./dist/assets/imgs/Navbar/ora3_ram.png" alt="ora img" class=""/>
<p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora4 M.2 NVMe 512GB</p>
</div>
</div>
<div class="col-4">
<div class="bg-gray-4 rounded-3 cursor-pointer">
<img src="./dist/assets/imgs/Navbar/ora3_ram.png" alt="ora img" class=""/>
<p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora4 M.2 NVMe 1TB</p>
</div>
</div>
<div class="col-4">
<div class="bg-gray-4 rounded-3 cursor-pointer">
<img src="./dist/assets/imgs/Navbar/ora3_ram.png" alt="ora img" class=""/>
<p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora4 M.2 NVMe 2TB</p>
</div>
</div>
</div>
</div>
</div>
</li>
</ul>
</li>
</ul>
</li>
<li class="hover_tab_2"><a href="./ramproducts.html" class="satoshi_font">MEMORY</a>
<ul class="py-3 px-3 rounded-bottom shadow">
<li class="d-flex">
<ul class="nav nav-pills flex-column w-200 border-end" id="experienceTab" role="tablist">
<li class="nav-item">
<a class="nav-link active text-dark" data-bs-toggle="tab" href="#laptop">Laptop</a>
</li>
<li class="nav-item">
<a class="nav-link text-dark" data-bs-toggle="tab" href="#desktop">Desktop</a>
</li>
</ul>
<ul class="nav w-500">
<li class="hover_tab_1">
<a href="/laptops.html" class="satoshi_font">LAPTOPS
<svg style="width:18px;height:15px" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg">
<path fill="#fff" d="M1395 736q0 13-10 23l-466 466q-10 10-23 10t-23-10l-466-466q-10-10-10-23t10-23l50-50q10-10 23-10t23 10l393 393 393-393q10-10 23-10t23 10l50 50q10 10 10 23z"/>
</svg>
</a>
<ul class="pb-3" style="list-style:none">
<li>
<div class="tab-content">
<div id="laptop" class="container tab-pane active">
<div class="row">
<div class="col-4">
<div class="bg-gray-4 rounded-3 cursor-pointer">
<img src="./dist/assets/imgs/Navbar/ora_ddr4_laptop.png" alt="ora img" class=""/>
<p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora 8GB DDR5</p>
<div class="d-flex gap-4r pt-4 pb-2 align-items-center justify-content-center">
<div class="position-relative nav-tab-show d-none">
<a class="h-100 nav_items zenosleekbook" href="/laptopdetails.html?Zeno#productId={106633230000029}">
<div style="" class="align-items-center cursor-pointer d-flex flex-column h-100 justify-content-center rounded-3">
<img src="https://appassets.bizgaze.app/_files/documents/663/cfed4b55-9c51-48a8-969f-2d443fdb9bac/15%20inch.png" alt="ora img" class="nav_imgs"/>
<p class="mb-0 text-center text-dark w-100">Zeno Sleekbook </p>
</div>
</div>
<div class="col-4">
<div class="bg-gray-4 rounded-3 cursor-pointer">
<img src="./dist/assets/imgs/Navbar/ora_ddr5_laptop.png" alt="ora img" class=""/>
<p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora 16GB DDR5</p>
</div>
</div>
<div class="col-4 ">
<div class="bg-gray-4 rounded-3 cursor-pointer">
<img src="./dist/assets/imgs/Navbar/ora_ddr5_laptop.png" alt="ora img" class=""/>
<p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora 32GB DDR5</p>
</div>
</div>
</a>
</div>
</div>
<div id="desktop" class="container tab-pane fade">
<div class="row">
<div class="col-4">
<div class="bg-gray-4 rounded-3 cursor-pointer">
<img src="./dist/assets/imgs/Navbar/ora_ddr4_desktop.png" alt="ora img" class=""/>
<p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora 8GB DDR4</p>
<div class="position-relative nav-tab-show d-none">
<a class="h-100 nav_items fyroflagship" href="/laptopdetails.html?Fyro#productId={106633230000031}">
<div style="" class=" align-items-center cursor-pointer d-flex flex-column h-100 justify-content-center rounded-3">
<img src="https://appassets.bizgaze.app/_files/documents/663/39d3ec7f-c692-4489-a808-60d79c0ffcb1/17%20inches.png" alt="ora img" class="nav_imgs"/>
<p class="mb-0 text-center text-dark w-100">Fyro Flagship </p>
</div>
</div>
<div class="col-4">
<div class="bg-gray-4 rounded-3 cursor-pointer">
<img src="./dist/assets/imgs/Navbar/ora_ddr4_desktop.png" alt="ora img" class=""/>
<p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora 16GB DDR4</p>
</div>
</div>
<div class="col-4">
<div class="bg-gray-4 rounded-3 cursor-pointer">
<img src="./dist/assets/imgs/Navbar/ora_ddr4_desktop.png" alt="ora img" class=""/>
<p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora 32GB DDR4</p>
</div>
</div>
</a>
</div>
<div class="position-relative nav-tab-show d-none">
<a class="h-100 nav_items zenodualbook" href="/laptopdetails.html?Zeno#productId={106633230000030}">
<div style="" class=" align-items-center cursor-pointer d-flex flex-column h-100 justify-content-center rounded-3">
<img src="https://appassets.bizgaze.app/_files/documents/663/3feb2ad5-7451-4cd5-ba7a-f6695e1fa708/zeno_dualbook.png" alt="ora img" class="nav_imgs"/>
<p class="mb-0 text-center text-dark w-100">Zeno Dual Book </p>
</div>
</a>
</div>
</div>
</li>
</div>
</li>
</ul>
</li>
</ul>
<li class="hover_tab_2">
<a href="/allinones.html" class="satoshi_font">ALL IN ONES
<svg style="width:18px;height:15px;" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg">
<path fill="#fff" d="M1395 736q0 13-10 23l-466 466q-10 10-23 10t-23-10l-466-466q-10-10-10-23t10-23l50-50q10-10 23-10t23 10l393 393 393-393q10-10 23-10t23 10l50 50q10 10 10 23z"/>
</svg>
</a>
<ul class="pb-3" style="list-style:none">
<li>
<div class="d-flex gap-4r pt-4 pb-2 align-items-center justify-content-center">
<div class="position-relative nav-tab-show">
<a class="h-100 nav_items zenoaio" href="/laptopdetails.html?AIO Zeno#productId=106633230000026#itemid=106633240000112">
<div style="" class="align-items-center cursor-pointer d-flex flex-column h-100 justify-content-center rounded-3">
<img src="https://appassets.bizgaze.app/_files/documents/663/42bdf033-74fb-45ca-b180-9bff7a0dca86/zeno_aio.png" alt="ora img" class="nav_imgs"/>
<p class="mb-0 text-center text-dark w-100">Zeno All in ones</p>
</div>
</a>
</div>
<div class="position-relative nav-tab-show">
<a class="h-100 nav_items" href="/laptopdetails.html?AIO Fyro#productId=106633230000027#itemid=106633240000126">
<div style="" class=" align-items-center cursor-pointer d-flex flex-column h-100 justify-content-center rounded-3">
<img src="https://appassets.bizgaze.app/_files/documents/663/39e90b38-3d04-4f88-bff4-2b6feb3eb54c/Asset%204@2x.png" alt="ora img" class="nav_imgs"/>
<p class="mb-0 text-center text-dark w-100">Fyro All in ones </p>
</div>
</a>
</div>
</div>
</li>
</ul>
</li>
<li class="hover_tab_2">
<a href="/accessories.html" class="satoshi_font">ACCESSORIES
<svg style="width:18px;height:15px;" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg">
<path fill="#fff" d="M1395 736q0 13-10 23l-466 466q-10 10-23 10t-23-10l-466-466q-10-10-10-23t10-23l50-50q10-10 23-10t23 10l393 393 393-393q10-10 23-10t23 10l50 50q10 10 10 23z"/>
</svg>
</a>
<ul class="pb-3" style="list-style:none">
<li>
<div class="d-flex gap-4r pt-4 pb-2 align-items-center justify-content-center">
<div class="position-relative nav-tab-show_acc">
<a class="h-100 nav_items" href="/storageproducts.html">
<div style="" class="align-items-center cursor-pointer d-flex flex-column h-100 justify-content-center rounded-3">
<img src="https://appassets.bizgaze.app/_files/documents/663/c3ea1dde-6c5b-4169-922b-97c297c55737/Ora4%20SSD%202TB%20copy.png" alt="ora img" class="nav_imgs"/>
<p class="mb-0 text-center text-dark w-100">Storage</p>
</div>
</a>
</div>
<div class="position-relative nav-tab-show_acc">
<a class="h-100 nav_items" href="/ramproducts.html">
<div style="" class=" align-items-center cursor-pointer d-flex flex-column h-100 justify-content-center rounded-3">
<img src="https://appassets.bizgaze.app/_files/documents/663/9d71f7a4-bf31-4d3c-b120-5de610321dc2/image_2023_05_05T09_12_42_081Z.png" alt="ora img" class="nav_imgs"/>
<p class="mb-0 text-center text-dark w-100">Memory </p>
</div>
</a>
</div>
</div>
</li>
</ul>
</li>
<!--
<li><a href="./storageproducts.html" class="satoshi_font">STORAGE</a></li>
<li><a href="./ramproducts.html" class="satoshi_font">MEMORY</a></li> -->
<li><a href="./support.html" class="satoshi_font">SUPPORT</a></li>
<li><a href="./press.html" class="satoshi_font">PRESS</a></li>
<li><a href="./index1.html" class="satoshi_font">COMING SOON</a></li>
<li><a href="./contact.html" class="satoshi_font">CONTACT</a></li>
<li class="d-none"><a href="#" class="satoshi_font product_data" item_id="106633220000002">ACCESSORIES</a></li>
</ul>
@@ -203,20 +224,61 @@ function navINIT() {
<div class="header-action-wrap header-action-flex header-action-width header-action-mrg-1">
<div class="same-style">
<a href="/myaccount.html" class="my_avatar">
<svg style="width:20px;" viewBox="0 0 96 96" xmlns="http://www.w3.org/2000/svg" focusable="false" aria-hidden="true" class="icon" data-di-res-id="e576e1a9-2f4a9ed6" data-di-rand="1682677695656"><path fill="#fff" d="M48 50c17.346 0 32 14.221 32 31.054V89c0 2.757-2.243 5-5 5H21c-2.757 0-5-2.243-5-5v-7.946C16 64.221 30.654 50 48 50zm0 8c-12.785 0-24 10.773-24 23.054V86h48v-4.946C72 68.773 60.785 58 48 58zm-.002-56c12.133 0 22.003 9.87 22.003 22.001C70 36.131 60.13 46 47.998 46c-12.13 0-21.997-9.869-21.997-21.999C26 11.87 35.867 2 47.998 2zm0 8c-7.718 0-13.997 6.281-13.997 14.001C34 31.72 40.28 38 47.998 38 55.718 38 62 31.72 62 24.001 62 16.281 55.719 10 47.998 10z"></path></svg>
<svg class="user-icon" width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0)">
<path d="M21.4443 24.3665H19.4443V19.3235C19.4435 18.5395 19.1317 17.7879 18.5774 17.2335C18.023 16.6791 17.2713 16.3673 16.4873 16.3665H8.40134C7.61733 16.3673 6.86567 16.6791 6.3113 17.2335C5.75693 17.7879 5.44513 18.5395 5.44434 19.3235V24.3665H3.44434V19.3235C3.44592 18.0093 3.96869 16.7494 4.89796 15.8201C5.82723 14.8909 7.08714 14.3681 8.40134 14.3665H16.4873C17.8015 14.3681 19.0614 14.8909 19.9907 15.8201C20.92 16.7494 21.4427 18.0093 21.4443 19.3235V24.3665Z" fill="#fff"/>
<path d="M12.4443 12.3665C11.2577 12.3665 10.0976 12.0146 9.11092 11.3553C8.12422 10.696 7.35519 9.75898 6.90106 8.66262C6.44694 7.56626 6.32812 6.35986 6.55963 5.19598C6.79114 4.03209 7.36258 2.96299 8.2017 2.12388C9.04081 1.28476 10.1099 0.713318 11.2738 0.481807C12.4377 0.250296 13.6441 0.369116 14.7404 0.823242C15.8368 1.27737 16.7739 2.0464 17.4332 3.0331C18.0924 4.01979 18.4443 5.17983 18.4443 6.36652C18.4427 7.95733 17.8101 9.48253 16.6852 10.6074C15.5604 11.7323 14.0352 12.3649 12.4443 12.3665ZM12.4443 2.36652C11.6532 2.36652 10.8799 2.60111 10.2221 3.04064C9.56426 3.48017 9.05157 4.10488 8.74882 4.83579C8.44607 5.56669 8.36686 6.37096 8.5212 7.14688C8.67554 7.9228 9.0565 8.63554 9.61591 9.19495C10.1753 9.75436 10.8881 10.1353 11.664 10.2897C12.4399 10.444 13.2442 10.3648 13.9751 10.062C14.706 9.75929 15.3307 9.2466 15.7702 8.5888C16.2097 7.931 16.4443 7.15764 16.4443 6.36652C16.4443 5.30565 16.0229 4.28824 15.2728 3.53809C14.5226 2.78795 13.5052 2.36652 12.4443 2.36652Z" fill="#fff"/>
</g>
<defs>
<clipPath id="clip0">
<rect width="24" height="24" fill="white" transform="translate(0.444336 0.366516)"/>
</clipPath>
</defs>
</svg>
</a>
</div>
<div class="same-style header-cart">
<a class="cart-active1 position-relative" href="/shopping-cart.html">
<svg style="width:20px;" viewBox="0 0 96 96" xmlns="http://www.w3.org/2000/svg" focusable="false" aria-hidden="true" class="icon" data-di-res-id="e576e1a9-90f52cd9" data-di-rand="1682677695656"><path fill="#fff" d="M72.848 70.25c6.075 0 11 4.925 11 11s-4.925 11-11 11-11-4.925-11-11 4.925-11 11-11zm-35 0c6.075 0 11 4.925 11 11s-4.925 11-11 11-11-4.925-11-11c0-6.074 4.926-11 11-11zm35 7a4 4 0 10.002 8.001 4 4 0 00-.002-8.001zm-35 0a4 4 0 100 8 4 4 0 000-8zM13.892 3.75c2.287 0 4.376 1.55 5.058 3.72l.064.22 2.97 11.187h68.128a4.727 4.727 0 014.661 5.786l-.048.2-9.559 36.291c-.583 2.216-2.618 3.842-4.894 3.944l-.228.005H30.06c-2.287 0-4.377-1.55-5.06-3.72l-.063-.219-13.124-49.413-10.7.006-.004-8 12.782-.007zm72.03 23.127H24.108l8.027 30.226H77.96l7.962-30.226z"></path></svg>
<svg class="cart_icon" width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0)">
<path d="M24.4941 3.36652H4.73614L4.69414 3.01552C4.60819 2.28593 4.25753 1.61325 3.70863 1.12499C3.15974 0.636739 2.45077 0.366858 1.71614 0.366516L0.494141 0.366516V2.36652H1.71614C1.96107 2.36655 2.19748 2.45647 2.38051 2.61923C2.56355 2.78199 2.68048 3.00626 2.70914 3.24952L4.29414 16.7175C4.38009 17.4471 4.73076 18.1198 5.27965 18.608C5.82855 19.0963 6.53751 19.3662 7.27214 19.3665H20.4941V17.3665H7.27214C7.02705 17.3665 6.79052 17.2764 6.60747 17.1134C6.42441 16.9505 6.30757 16.7259 6.27914 16.4825L6.14814 15.3665H22.3301L24.4941 3.36652ZM20.6581 13.3665H5.91314L4.97214 5.36652H22.1011L20.6581 13.3665Z" fill="#fff"/>
<path d="M7.49414 24.3665C8.59871 24.3665 9.49414 23.4711 9.49414 22.3665C9.49414 21.2619 8.59871 20.3665 7.49414 20.3665C6.38957 20.3665 5.49414 21.2619 5.49414 22.3665C5.49414 23.4711 6.38957 24.3665 7.49414 24.3665Z" fill="#fff"/>
<path d="M17.4941 24.3665C18.5987 24.3665 19.4941 23.4711 19.4941 22.3665C19.4941 21.2619 18.5987 20.3665 17.4941 20.3665C16.3896 20.3665 15.4941 21.2619 15.4941 22.3665C15.4941 23.4711 16.3896 24.3665 17.4941 24.3665Z" fill="#fff"/>
</g>
<defs>
<clipPath id="clip0">
<rect width="24" height="24" fill="white" transform="translate(0.494141 0.366516)"/>
</clipPath>
</defs>
</svg>
<span class="position-absolute cartnumcount d-none" >0</span>
</a>
</div>
</div>
</div>
</div>
<div class="sub_nav_container bg-white d-none border-top" style="
box-shadow: 0 6PX 16PX 0 #1919190f;
-webkit-backdrop-filter: blur(6px);
backdrop-filter: blur(6px);">
<div class="container">
<div class="d-flex justify-content-between">
<span class="d-flex align-items-center font-weight-600">
<h2 class="titleproductnav sub_nav_item me-3 fs-9"></h2></span>
<ul class="d-flex mb-0 py-3 justify-content-center align-items-center" style="list-style:none;">
<li>
<a data-overview="#${window.location.href.includes('Zeno')?'overview_data_zeno':'overview_data_fyro'}" class="sub_nav_item overview me-3 fs-9">Overview</a>
</li>
<li>
<a data-spec="true" class="sub_nav_item me-3 fs-9 overviewspecs">Specifications</a>
</li>
<li>
<a href="#" class="font-12p btn btn-dark button_dark sub_nav_item text-white">Buy now</a>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
<div class="header-small-device header-small-ptb sticky-bar py-md-2 py-2 bg-white">
@@ -241,10 +303,34 @@ function navINIT() {
<div class="col-6">
<div class="header-action-wrap header-action-flex header-action-mrg-1">
<div class="same-style">
<a href="/myaccount.html" class="my_avatar"> <svg style="width:22px;" viewBox="0 0 96 96" xmlns="http://www.w3.org/2000/svg" focusable="false" aria-hidden="true" class="icon" data-di-res-id="e576e1a9-2f4a9ed6" data-di-rand="1682677695656"><path fill="#fff" d="M48 50c17.346 0 32 14.221 32 31.054V89c0 2.757-2.243 5-5 5H21c-2.757 0-5-2.243-5-5v-7.946C16 64.221 30.654 50 48 50zm0 8c-12.785 0-24 10.773-24 23.054V86h48v-4.946C72 68.773 60.785 58 48 58zm-.002-56c12.133 0 22.003 9.87 22.003 22.001C70 36.131 60.13 46 47.998 46c-12.13 0-21.997-9.869-21.997-21.999C26 11.87 35.867 2 47.998 2zm0 8c-7.718 0-13.997 6.281-13.997 14.001C34 31.72 40.28 38 47.998 38 55.718 38 62 31.72 62 24.001 62 16.281 55.719 10 47.998 10z"></path></svg></a>
<a href="/myaccount.html" class="my_avatar">
<svg class="user-icon" width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg" data-di-res-id="e576e1a9-2f4a9ed6" data-di-rand="1682677695656">
<g clip-path="url(#clip0)">
<path d="M21.4443 24.3665H19.4443V19.3235C19.4435 18.5395 19.1317 17.7879 18.5774 17.2335C18.023 16.6791 17.2713 16.3673 16.4873 16.3665H8.40134C7.61733 16.3673 6.86567 16.6791 6.3113 17.2335C5.75693 17.7879 5.44513 18.5395 5.44434 19.3235V24.3665H3.44434V19.3235C3.44592 18.0093 3.96869 16.7494 4.89796 15.8201C5.82723 14.8909 7.08714 14.3681 8.40134 14.3665H16.4873C17.8015 14.3681 19.0614 14.8909 19.9907 15.8201C20.92 16.7494 21.4427 18.0093 21.4443 19.3235V24.3665Z" fill="#fff"/>
<path d="M12.4443 12.3665C11.2577 12.3665 10.0976 12.0146 9.11092 11.3553C8.12422 10.696 7.35519 9.75898 6.90106 8.66262C6.44694 7.56626 6.32812 6.35986 6.55963 5.19598C6.79114 4.03209 7.36258 2.96299 8.2017 2.12388C9.04081 1.28476 10.1099 0.713318 11.2738 0.481807C12.4377 0.250296 13.6441 0.369116 14.7404 0.823242C15.8368 1.27737 16.7739 2.0464 17.4332 3.0331C18.0924 4.01979 18.4443 5.17983 18.4443 6.36652C18.4427 7.95733 17.8101 9.48253 16.6852 10.6074C15.5604 11.7323 14.0352 12.3649 12.4443 12.3665ZM12.4443 2.36652C11.6532 2.36652 10.8799 2.60111 10.2221 3.04064C9.56426 3.48017 9.05157 4.10488 8.74882 4.83579C8.44607 5.56669 8.36686 6.37096 8.5212 7.14688C8.67554 7.9228 9.0565 8.63554 9.61591 9.19495C10.1753 9.75436 10.8881 10.1353 11.664 10.2897C12.4399 10.444 13.2442 10.3648 13.9751 10.062C14.706 9.75929 15.3307 9.2466 15.7702 8.5888C16.2097 7.931 16.4443 7.15764 16.4443 6.36652C16.4443 5.30565 16.0229 4.28824 15.2728 3.53809C14.5226 2.78795 13.5052 2.36652 12.4443 2.36652Z" fill="#fff"/>
</g>
<defs>
<clipPath id="clip0">
<rect width="24" height="24" fill="white" transform="translate(0.444336 0.366516)"/>
</clipPath>
</defs>
</svg>
</a>
</div>
<div class="same-style header-cart">
<a class="cart-active1 position-relative" href="/shopping-cart.html"> <svg style="width:22px;" viewBox="0 0 96 96" xmlns="http://www.w3.org/2000/svg" focusable="false" aria-hidden="true" class="icon" data-di-res-id="e576e1a9-90f52cd9" data-di-rand="1682677695656"><path fill="#fff" d="M72.848 70.25c6.075 0 11 4.925 11 11s-4.925 11-11 11-11-4.925-11-11 4.925-11 11-11zm-35 0c6.075 0 11 4.925 11 11s-4.925 11-11 11-11-4.925-11-11c0-6.074 4.926-11 11-11zm35 7a4 4 0 10.002 8.001 4 4 0 00-.002-8.001zm-35 0a4 4 0 100 8 4 4 0 000-8zM13.892 3.75c2.287 0 4.376 1.55 5.058 3.72l.064.22 2.97 11.187h68.128a4.727 4.727 0 014.661 5.786l-.048.2-9.559 36.291c-.583 2.216-2.618 3.842-4.894 3.944l-.228.005H30.06c-2.287 0-4.377-1.55-5.06-3.72l-.063-.219-13.124-49.413-10.7.006-.004-8 12.782-.007zm72.03 23.127H24.108l8.027 30.226H77.96l7.962-30.226z"></path></svg>
<div class="same-style header-cart ms-3">
<a class="cart-active1 position-relative" href="/shopping-cart.html">
<svg class="cart_icon icon" width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg" data-di-res-id="e576e1a9-90f52cd9" data-di-rand="1682677695656">
<g clip-path="url(#clip0)">
<path d="M24.4941 3.36652H4.73614L4.69414 3.01552C4.60819 2.28593 4.25753 1.61325 3.70863 1.12499C3.15974 0.636739 2.45077 0.366858 1.71614 0.366516L0.494141 0.366516V2.36652H1.71614C1.96107 2.36655 2.19748 2.45647 2.38051 2.61923C2.56355 2.78199 2.68048 3.00626 2.70914 3.24952L4.29414 16.7175C4.38009 17.4471 4.73076 18.1198 5.27965 18.608C5.82855 19.0963 6.53751 19.3662 7.27214 19.3665H20.4941V17.3665H7.27214C7.02705 17.3665 6.79052 17.2764 6.60747 17.1134C6.42441 16.9505 6.30757 16.7259 6.27914 16.4825L6.14814 15.3665H22.3301L24.4941 3.36652ZM20.6581 13.3665H5.91314L4.97214 5.36652H22.1011L20.6581 13.3665Z" fill="#fff"/>
<path d="M7.49414 24.3665C8.59871 24.3665 9.49414 23.4711 9.49414 22.3665C9.49414 21.2619 8.59871 20.3665 7.49414 20.3665C6.38957 20.3665 5.49414 21.2619 5.49414 22.3665C5.49414 23.4711 6.38957 24.3665 7.49414 24.3665Z" fill="#fff"/>
<path d="M17.4941 24.3665C18.5987 24.3665 19.4941 23.4711 19.4941 22.3665C19.4941 21.2619 18.5987 20.3665 17.4941 20.3665C16.3896 20.3665 15.4941 21.2619 15.4941 22.3665C15.4941 23.4711 16.3896 24.3665 17.4941 24.3665Z" fill="#fff"/>
</g>
<defs>
<clipPath id="clip0">
<rect width="24" height="24" fill="white" transform="translate(0.494141 0.366516)"/>
</clipPath>
</defs>
</svg>
<span class="position-absolute cartnumcount d-none" style="top:-27%;right:-80%">0</span>
</a>
</div>
@@ -280,11 +366,66 @@ function navINIT() {
<div class="clickable-mainmenu-wrap clickable-mainmenu-style1">
<nav>
<ul class="pl-0">
<li class=""><a href="./ramproducts.html" class="satoshi_font">RAM</a></li>
<li class=""><a href="./storageproducts.html" class="satoshi_font">STORAGE</a></li>
<li class="expandlinav">
<div class="d-flex justify-content-between explandlinavnameparent">
<span class="explandlinavname">LAPTOP</span><span data-name="laptops.html" class=" viewall_li">+</span>
</div>
<div class="content-expandlinav pt-2 d-none">
<a class="h-100 p-1 zenosleekbook" href="/laptopdetails.html?Zeno#productId={106633230000029}">
<div class="ps-2">
Zeno Sleekbook
</div>
</a>
<a class="h-100 p-1 fyroflagship" href="/laptopdetails.html?Fyro#productId={106633230000031}">
<div class="ps-2">Fyro Flagship </div>
</a>
<a class="h-100 p-1 zenodualbook" href="/laptopdetails.html?Zeno#productId={106633230000030}">
<div class="ps-2">Zeno Dual Book </div>
</a>
</div>
</li>
<li class="expandlinav">
<div class="d-flex justify-content-between explandlinavnameparent">
<span class="explandlinavname">ALL IN ONES </span><span data-name="allinones.html" class="viewall_li">+</span>
</div>
<div class="content-expandlinav pt-2 d-none">
<a class="h-100 p-1" href="/laptopdetails.html?AIO Zeno#productId=106633230000026#itemid=106633240000112">
<div class="ps-2">
Zeno All In One
</div>
</a>
<a class="h-100 p-1" href="/laptopdetails.html?AIO Fyro#productId=106633230000027#itemid=106633240000126">
<div class="ps-2">
Fyro All iIn One
</div>
</a>
</div>
</li>
<li class="expandlinav">
<div class="d-flex justify-content-between explandlinavnameparent">
<span class="explandlinavname">ACCESSORIES </span><span data-name="allinones.html" class="viewall_li">+</span>
</div>
<div class="content-expandlinav pt-2 d-none">
<a class="h-100 p-1" href="/storageproducts.html">
<div class="ps-2">
Storage
</div>
</a>
<a class="h-100 p-1" href="/ramproducts.html">
<div class="ps-2">
Memory
</div>
</a>
</div>
</li>
<!--
<li class=""><a href="./ramproducts.html" class="satoshi_font">MEMORY</a></li>
<li class=""><a href="./storageproducts.html" class="satoshi_font">STORAGE</a></li> -->
<li class=""><a href="./support.html" class="satoshi_font" >SUPPORT</a></li>
<li class=""><a href="./press.html" class="satoshi_font">PRESS</a></li>
<li class=""><a href="./index1.html" class="satoshi_font">COMING SOON</a></li>
<li class=""><a href="./contact.html" class="satoshi_font">CONTACT</a></li>
</ul>
</nav>
@@ -313,6 +454,23 @@ function navINIT() {
</div>
</div>`;
$("#navbar-head").html(nav_html);
$('.explandlinavnameparent').click(function (e){
let parentElement = $(e.target).parents('.expandlinav');
if($(parentElement).find('.content-expandlinav').hasClass('d-none')){
const name = $(parentElement).find('.viewall_li').data('name');
$(parentElement).find('.viewall_li').html(`<a href="${name}">view all</a>`);
$(parentElement).find('.content-expandlinav').removeClass('d-none');
}else{
$(parentElement).find('.viewall_li').html('+');
$(parentElement).find('.content-expandlinav').addClass('d-none');
}
console.log($(e.target));
});
let width = $(window).width();
$(".menu-negative-mrg2,.menu-negative-mrg3,.menu-negative-mrg4").css("width", width);
let ele_page = $("body").hasClass("product_pg");
@@ -321,7 +479,7 @@ function navINIT() {
$(".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);
$(".logo-menu-wrap").find(".logo a img").attr("src", src);
$(".main-body").find("iframe").attr("width", width);
if (width <= 575 && width >= 390) {
$(".main-body").find("iframe").attr({
@@ -338,15 +496,26 @@ function navINIT() {
width: width,
height: 530,
});
} else if (width <= 2720 && width > 1920) {
} else if (width <= 2720 && width > 2300) {
$(".main-body").find("iframe").attr({
width: width,
height: 1440,
});
} else {
} else if(width <= 2300 && width > 1921){
$(".main-body").find("iframe").attr({
width: width,
height: 860,
height: 1132,
});
}
else if(width <= 1920 && width > 1620){
$(".main-body").find("iframe").attr({
width: width,
height: 1083,
});
}else {
$(".main-body").find("iframe").attr({
width: width,
height: 861,
});
}
}
@@ -388,6 +557,10 @@ function navINIT() {
//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";
@@ -395,10 +568,9 @@ function navINIT() {
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);
$(".logo-menu-wrap").find(".logo 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");
}
@@ -406,7 +578,7 @@ function navINIT() {
$(".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);
$(".mobile-logo").find(".logo 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")
@@ -447,7 +619,26 @@ function navINIT() {
setTimeout(()=>{
if(width<=600){
$('.same-style').find('svg path').attr('fill','#000')
$('.same-style').find('svg path').attr('fill','#000');
}
},300)
},300);
// overview
$('.overview').click(function (e){
let name = $(e.target).data('overview');
document.querySelector(name)?.scrollIntoView({
behavior: 'smooth'
});
});
$('.overviewspecs').click(function (e){
document.querySelector('#specification_data')?.scrollIntoView({
behavior: 'smooth'
});
});
}
поставляемый
+370 -266
Просмотреть файл
@@ -1,121 +1,226 @@
let nav_html = `
<header class="header-area section-padding-1 transparent-bar bg-white">
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<files.length;i++){
if ($(`script[src="${files[i]}"]`).length > 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 = `
<header class="header-area section-padding-1 transparent-bar" ${isTransparent ?'style="background:#0A1039"' :''}>
<div class="header-large-device">
<div class="header-bottom sticky-bar">
<div class="container">
<div class="header-bottom-flex">
<div class="logo-menu-wrap d-flex">
<div class="logo">
<a href="index.html">
<img src="./dist/assets/imgs/anwi-logo-1.png" alt="logo" class="w-50">
<a href="../index.html">
<img src="/dist/assets/imgs/anwi-logo-2.png" alt="logo" class="w-50">
</a>
</div>
<div class="main-menu menu-lh-1 main-menu-padding-1">
<nav>
<ul class="mb-0 p-0">
<li><a href="#" class="satoshi_font">LAPTOP</a>
<ul class="mega-menu-style-1 border-top mega-menu-width2 menu-negative-mrg2 shadow d-flex justify-content-center">
<li class="mega-menu-sub-width20 p-0 me-4"><a class="menu-title" href="#">Shop Layout</a>
<a class="dropdown-item" href="./allinone34inch.html">
<div class="dropdown-item-img text-center mb-2 hover-zoom">
<img src="../dist/assets/imgs/allinone14inch/preview-front.png" alt="Laptop-img" class="img-fluid mx-auto">
</div>
<div class="dropdown-item-content">
<h6 class="dropdown-item-title text-center satoshi_font px-2 fs-9">ZENO 14-inch</h6>
</div>
</a>
<li class="hover_tab_1"><a href="./storageproducts.html" class="satoshi_font">STORAGE</a>
<ul class="py-3 px-3 rounded-bottom shadow">
<li class="d-flex">
<ul class="nav nav-pills flex-column w-200 border-end" id="experienceTab" role="tablist">
<li class="nav-item">
<a class="nav-link active text-dark" data-bs-toggle="tab" href="#ora3">ORA 3</a>
</li>
<li class="mega-menu-sub-width20 p-0 d-none"><a class="menu-title" href="#">Product Layout</a>
<a class="dropdown-item " href="#">
<div class="dropdown-item-img text-center mb-2 hover-zoom">
<img src="../dist/assets/imgs/Navbar/Business-laptop.png" alt="Laptop-img" class="img-fluid mx-auto">
</div>
<div class="dropdown-item-content">
<h6 class="dropdown-item-title text-center satoshi_font px-2 fs-9">ZENO 15.6-inch Business Laptop</h6>
</div>
</a>
<li class="nav-item">
<a class="nav-link text-dark" data-bs-toggle="tab" href="#ora4">ORA 4</a>
</li>
</ul>
</li>
<li><a href="#" class="satoshi_font">ALL IN ONE</a>
<ul class="mega-menu-style-1 border-top mega-menu-width2 menu-negative-mrg3 shadow d-flex justify-content-center">
<li class="me-4 p-0 mt-4">
<a class="dropdown-item" href="./allin_one.html">
<div class="dropdown-item-img text-center mb-2 hover-zoom">
<img src="../dist/assets/imgs/allin_imgs/desktop_1a.png" alt="Laptop-img" class="img-fluid mx-auto">
<ul class="nav w-500">
<li>
<div class="tab-content">
<div id="ora3" class="container tab-pane active">
<div class="row">
<div class="col-4">
<div class="bg-gray-4 rounded-3 cursor-pointer">
<img src="./dist/assets/imgs/Navbar/ora3_ram.png" alt="ora img" class=""/>
<p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora3 M.2 NVMe 512GB</p>
</div>
</div>
<div class="col-4">
<div class="bg-gray-4 rounded-3 cursor-pointer">
<img src="./dist/assets/imgs/Navbar/ora3_ram.png" alt="ora img" class=""/>
<p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora3 M.2 NVMe 1TB</p>
</div>
</div>
<div class="col-4">
<div class="bg-gray-4 rounded-3 cursor-pointer">
<img src="./dist/assets/imgs/Navbar/ora3_ram.png" alt="ora img" class=""/>
<p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora3 M.2 NVMe 2TB</p>
</div>
</div>
</div>
<div class="dropdown-item-content">
<h6 class="dropdown-item-title text-center satoshi_font fs-9">AIO 24-inch i5</h6>
</div>
<div id="ora4" class="container tab-pane fade">
<div class="row">
<div class="col-4">
<div class="bg-gray-4 rounded-3 cursor-pointer">
<img src="./dist/assets/imgs/Navbar/ora3_ram.png" alt="ora img" class=""/>
<p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora4 M.2 NVMe 512GB</p>
</div>
</div>
<div class="col-4">
<div class="bg-gray-4 rounded-3 cursor-pointer">
<img src="./dist/assets/imgs/Navbar/ora3_ram.png" alt="ora img" class=""/>
<p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora4 M.2 NVMe 1TB</p>
</div>
</div>
<div class="col-4">
<div class="bg-gray-4 rounded-3 cursor-pointer">
<img src="./dist/assets/imgs/Navbar/ora3_ram.png" alt="ora img" class=""/>
<p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora4 M.2 NVMe 2TB</p>
</div>
</div>
</div>
</a>
</li>
<li class="p-0 d-none">
<a class="dropdown-item " href="#">
<div class="dropdown-item-img text-center mb-2 hover-zoom">
<img src="../dist/assets/imgs/Navbar/Compact-cpu.png" alt="Laptop-img" class="img-fluid mx-auto">
</div>
<div class="dropdown-item-content">
<h6 class="dropdown-item-title text-center satoshi_font fs-9">34 inch AIO i7 4K</h6>
</div>
</a>
</li>
</div>
</div>
</li>
</ul>
</li>
<li><a href="#" class="satoshi_font product_data" item_id="106633220000002">ACCESSORIES</a>
<ul class="mega-menu-style-1 border-top mega-menu-width2 menu-negative-mrg4 shadow d-flex justify-content-center">
<li class="me-4 p-0">
<a class="dropdown-item ram_data cursor-pointer" href="../ramproducts.html" accessories_id="106633220000007">
<div class="dropdown-item-img text-center mb-2 hover-zoom">
<img src="../dist/assets/imgs/Navbar/ram_img.png" alt="Laptop-img" class="h-120p img-fluid mx-auto">
</div>
<div class="dropdown-item-content">
<h6 class="dropdown-item-title text-center satoshi_font px-2 fs-9">RAM</h6>
</div>
</a>
</li>
<li class="p-0">
<a class="dropdown-item" href="../storageproducts.html">
<div class="dropdown-item-img text-center mb-2 hover-zoom">
<img src="../dist/assets/imgs/Navbar/ora3_ram.png" alt="Laptop-img" class="h-120p img-fluid mx-auto">
</div>
<div class="dropdown-item-content">
<h6 class="dropdown-item-title text-center satoshi_font px-2 fs-9">Storage</h6>
</div>
</a>
</li>
</ul>
</ul>
</li>
<li class="hover_tab_2"><a href="./ramproducts.html" class="satoshi_font">MEMORY</a>
<ul class="py-3 px-3 rounded-bottom shadow">
<li class="d-flex">
<ul class="nav nav-pills flex-column w-200 border-end" id="experienceTab" role="tablist">
<li class="nav-item">
<a class="nav-link active text-dark" data-bs-toggle="tab" href="#laptop">Laptop</a>
</li>
<li class="nav-item">
<a class="nav-link text-dark" data-bs-toggle="tab" href="#desktop">Desktop</a>
</li>
</ul>
<ul class="nav w-500">
<li>
<a href="./support.html" class="satoshi_font">SUPPORT</a>
</li>
<div class="tab-content">
<div id="laptop" class="container tab-pane active">
<div class="row">
<div class="col-4">
<div class="bg-gray-4 rounded-3 cursor-pointer">
<img src="./dist/assets/imgs/Navbar/ora_ddr4_laptop.png" alt="ora img" class=""/>
<p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora 8GB DDR5</p>
</div>
</div>
<div class="col-4">
<div class="bg-gray-4 rounded-3 cursor-pointer">
<img src="./dist/assets/imgs/Navbar/ora_ddr5_laptop.png" alt="ora img" class=""/>
<p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora 16GB DDR5</p>
</div>
</div>
<div class="col-4 ">
<div class="bg-gray-4 rounded-3 cursor-pointer">
<img src="./dist/assets/imgs/Navbar/ora_ddr5_laptop.png" alt="ora img" class=""/>
<p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora 32GB DDR5</p>
</div>
</div>
</div>
</div>
<div id="desktop" class="container tab-pane fade">
<div class="row">
<div class="col-4">
<div class="bg-gray-4 rounded-3 cursor-pointer">
<img src="./dist/assets/imgs/Navbar/ora_ddr4_desktop.png" alt="ora img" class=""/>
<p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora 8GB DDR4</p>
</div>
</div>
<div class="col-4">
<div class="bg-gray-4 rounded-3 cursor-pointer">
<img src="./dist/assets/imgs/Navbar/ora_ddr4_desktop.png" alt="ora img" class=""/>
<p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora 16GB DDR4</p>
</div>
</div>
<div class="col-4">
<div class="bg-gray-4 rounded-3 cursor-pointer">
<img src="./dist/assets/imgs/Navbar/ora_ddr4_desktop.png" alt="ora img" class=""/>
<p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora 32GB DDR4</p>
</div>
</div>
</div>
</div>
</div>
</li>
</ul>
</li>
</ul>
</li>
<li><a href="./support.html" class="satoshi_font">SUPPORT</a></li>
<li><a href="./press.html" class="satoshi_font">PRESS</a></li>
<li><a href="./index1.html" class="satoshi_font">COMING SOON</a></li>
<li><a href="./contact.html" class="satoshi_font">CONTACT</a></li>
<li class="d-none"><a href="#" class="satoshi_font product_data" item_id="106633220000002">ACCESSORIES</a></li>
</ul>
</nav>
</div>
</div>
<div class="header-action-wrap header-action-flex header-action-width header-action-mrg-1">
<div class="search-style-1 d-none">
<form>
<div class="form-search-1">
<input class="input-text" value="" placeholder="Type to search (Ex: Phone, Laptop)" type="search">
<button>
<i class="icofont-search-1"></i>
</button>
</div>
</form>
</div>
<div class="same-style">
<a href="login.html"><i class="fa-solid fa-user"></i></a>
<a href="/myaccount.html" class="my_avatar">
<svg style="width:20px;" viewBox="0 0 96 96" xmlns="http://www.w3.org/2000/svg" focusable="false" aria-hidden="true" class="icon" data-di-res-id="e576e1a9-2f4a9ed6" data-di-rand="1682677695656"><path fill="#fff" d="M48 50c17.346 0 32 14.221 32 31.054V89c0 2.757-2.243 5-5 5H21c-2.757 0-5-2.243-5-5v-7.946C16 64.221 30.654 50 48 50zm0 8c-12.785 0-24 10.773-24 23.054V86h48v-4.946C72 68.773 60.785 58 48 58zm-.002-56c12.133 0 22.003 9.87 22.003 22.001C70 36.131 60.13 46 47.998 46c-12.13 0-21.997-9.869-21.997-21.999C26 11.87 35.867 2 47.998 2zm0 8c-7.718 0-13.997 6.281-13.997 14.001C34 31.72 40.28 38 47.998 38 55.718 38 62 31.72 62 24.001 62 16.281 55.719 10 47.998 10z"></path></svg>
</a>
</div>
<div class="same-style header-cart">
<a class="cart-active1" href="#"><i class="fa-solid fa-cart-shopping"></i></a>
<a class="cart-active1 position-relative" href="/shopping-cart.html">
<svg style="width:20px;" viewBox="0 0 96 96" xmlns="http://www.w3.org/2000/svg" focusable="false" aria-hidden="true" class="icon" data-di-res-id="e576e1a9-90f52cd9" data-di-rand="1682677695656"><path fill="#fff" d="M72.848 70.25c6.075 0 11 4.925 11 11s-4.925 11-11 11-11-4.925-11-11 4.925-11 11-11zm-35 0c6.075 0 11 4.925 11 11s-4.925 11-11 11-11-4.925-11-11c0-6.074 4.926-11 11-11zm35 7a4 4 0 10.002 8.001 4 4 0 00-.002-8.001zm-35 0a4 4 0 100 8 4 4 0 000-8zM13.892 3.75c2.287 0 4.376 1.55 5.058 3.72l.064.22 2.97 11.187h68.128a4.727 4.727 0 014.661 5.786l-.048.2-9.559 36.291c-.583 2.216-2.618 3.842-4.894 3.944l-.228.005H30.06c-2.287 0-4.377-1.55-5.06-3.72l-.063-.219-13.124-49.413-10.7.006-.004-8 12.782-.007zm72.03 23.127H24.108l8.027 30.226H77.96l7.962-30.226z"></path></svg>
<span class="position-absolute cartnumcount d-none" >0</span>
</a>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="header-small-device header-small-ptb sticky-bar py-md-2 py-2">
<div class="container-fluid">
<div class="header-small-device header-small-ptb sticky-bar py-md-2 py-2 bg-white">
<div class="container-fluid px-4">
<div class="row align-items-center">
<div class="col-6 header-action-wrap">
<div class="d-flex">
@@ -127,8 +232,8 @@ let nav_html = `
</button>
</div>
<div class="mobile-logo mobile-logo-width ps-3">
<a href="index.html">
<img alt="" src="./dist/assets/imgs/anwi-logo-1.png" class="w-50">
<a href="../index.html">
<img alt="" src="/dist/assets/imgs/anwi-logo-1.png" class="w-50">
</a>
</div>
</div>
@@ -136,10 +241,12 @@ let nav_html = `
<div class="col-6">
<div class="header-action-wrap header-action-flex header-action-mrg-1">
<div class="same-style">
<a href="login.html"><i class="fa-solid fa-user"></i></a>
<a href="/myaccount.html" class="my_avatar"> <svg style="width:22px;" viewBox="0 0 96 96" xmlns="http://www.w3.org/2000/svg" focusable="false" aria-hidden="true" class="icon" data-di-res-id="e576e1a9-2f4a9ed6" data-di-rand="1682677695656"><path fill="#fff" d="M48 50c17.346 0 32 14.221 32 31.054V89c0 2.757-2.243 5-5 5H21c-2.757 0-5-2.243-5-5v-7.946C16 64.221 30.654 50 48 50zm0 8c-12.785 0-24 10.773-24 23.054V86h48v-4.946C72 68.773 60.785 58 48 58zm-.002-56c12.133 0 22.003 9.87 22.003 22.001C70 36.131 60.13 46 47.998 46c-12.13 0-21.997-9.869-21.997-21.999C26 11.87 35.867 2 47.998 2zm0 8c-7.718 0-13.997 6.281-13.997 14.001C34 31.72 40.28 38 47.998 38 55.718 38 62 31.72 62 24.001 62 16.281 55.719 10 47.998 10z"></path></svg></a>
</div>
<div class="same-style header-cart">
<a class="cart-active1" href="./shopping-cart.html"><i class="fa-solid fa-cart-shopping"></i></a>
<a class="cart-active1 position-relative" href="/shopping-cart.html"> <svg style="width:22px;" viewBox="0 0 96 96" xmlns="http://www.w3.org/2000/svg" focusable="false" aria-hidden="true" class="icon" data-di-res-id="e576e1a9-90f52cd9" data-di-rand="1682677695656"><path fill="#fff" d="M72.848 70.25c6.075 0 11 4.925 11 11s-4.925 11-11 11-11-4.925-11-11 4.925-11 11-11zm-35 0c6.075 0 11 4.925 11 11s-4.925 11-11 11-11-4.925-11-11c0-6.074 4.926-11 11-11zm35 7a4 4 0 10.002 8.001 4 4 0 00-.002-8.001zm-35 0a4 4 0 100 8 4 4 0 000-8zM13.892 3.75c2.287 0 4.376 1.55 5.058 3.72l.064.22 2.97 11.187h68.128a4.727 4.727 0 014.661 5.786l-.048.2-9.559 36.291c-.583 2.216-2.618 3.842-4.894 3.944l-.228.005H30.06c-2.287 0-4.377-1.55-5.06-3.72l-.063-.219-13.124-49.413-10.7.006-.004-8 12.782-.007zm72.03 23.127H24.108l8.027 30.226H77.96l7.962-30.226z"></path></svg>
<span class="position-absolute cartnumcount d-none" style="top:-27%;right:-80%">0</span>
</a>
</div>
</div>
</div>
@@ -147,56 +254,14 @@ let nav_html = `
</div>
</div>
</header>
<!-- mini cart start -->
<div class="sidebar-cart-active">
<div class="sidebar-cart-all">
<a class="cart-close" href="#"><i class="fa-solid fa-xmark"></i></a>
<div class="cart-content">
<h3 class="satoshi_font">Shopping Cart</h3>
<ul>
<li class="single-product-cart">
<div class="cart-img">
<a href="#"><img src="assets/images/cart/cart-1.jpg" alt=""></a>
</div>
<div class="cart-title">
<h4><a href="#" class="satoshi_font">Awesome Mobile</a></h4>
<span class="satoshi_font"> 1 × $49.00 </span>
</div>
<div class="cart-delete">
<a href="#" class="satoshi_font">×</a>
</div>
</li>
<li class="single-product-cart">
<div class="cart-img">
<a href="#"><img src="assets/images/cart/cart-2.jpg" alt=""></a>
</div>
<div class="cart-title">
<h4><a href="#" class="satoshi_font">Smart Watch</a></h4>
<span class="satoshi_font"> 1 × $49.00 </span>
</div>
<div class="cart-delete">
<a href="#" class="satoshi_font">×</a>
</div>
</li>
</ul>
<div class="cart-total">
<h4 class="satoshi_font">Subtotal: <span class="satoshi_font">$170.00</span></h4>
</div>
<div class="cart-checkout-btn d-flex">
<a class="btn-hover cart-btn-style satoshi_font mx-1" href="cart.html">view cart</a>
<a class="no-mrg btn-hover cart-btn-style satoshi_font m-0" href="checkout.html">checkout</a>
</div>
</div>
</div>
</div>
<!-- Mobile menu start -->
<div class="mobile-menu-active clickalbe-sidebar-wrapper-style-1">
<div class="clickalbe-sidebar-wrap">
<div class="row pb-2 border-bottom">
<div class="col-6">
<div class="mobile-logo mobile-logo-width">
<a href="index.html">
<img alt="" src="./dist/assets/imgs/anwi-logo-1.png" class="w-75">
<a href="../index.html">
<img alt="" src="/dist/assets/imgs/anwi-logo-1.png" class="w-75">
</a>
</div>
</div>
@@ -215,107 +280,32 @@ let nav_html = `
<div class="clickable-mainmenu-wrap clickable-mainmenu-style1">
<nav>
<ul class="pl-0">
<li class="has-sub-menu d-none"><a href="#">Home</a>
<ul class="sub-menu-2">
<li class="has-sub-menu"><a href="#">Demo Group #01</a>
<ul class="sub-menu-2">
<li><a href="index.html">Home Multipurpose</a></li>
<li><a href="index-megashop.html">Home Mega Shop</a></li>
<li><a href="index-fashion.html">Home Fashion</a></li>
<li><a href="index-fashion-2.html">Home Fashion 2 </a></li>
<li><a href="index-automobile.html">Home Automobile</a></li>
<li><a href="index-furniture.html">Home Furniture</a></li>
<li><a href="index-electric.html">Home Electric</a></li>
</ul>
</li>
<li class="has-sub-menu"><a href="#">Demo Group #02</a>
<ul class="sub-menu-2">
<li><a href="index-electric-2.html">Home Electric 2</a></li>
<li><a href="index-handcraft.html">Home Hand Craft</a></li>
<li><a href="index-book.html">Home Book</a></li>
<li><a href="index-book-2.html">Home Book 2</a></li>
<li><a href="index-cake.html">Home cake</a></li>
<li><a href="index-organic.html">Home Organic</a></li>
</ul>
</li>
<li class="has-sub-menu"><a href="#">Demo Group #03</a>
<ul class="sub-menu-2">
<li><a href="index-flower.html">Home Flower</a></li>
<li><a href="index-treeplant.html">Home Tree plant</a></li>
<li><a href="index-pet-food.html">Home Pet Food</a></li>
<li><a href="index-kids.html">Home Kids</a></li>
<li><a href="index-kids-2.html">Home Kids 2</a></li>
<li><a href="index-kids-3.html">Home Kids 3</a></li>
</ul>
</li>
</ul>
</li>
<li class="has-sub-menu d-none"><a href="#">shop</a>
<ul class="sub-menu-2">
<li class="has-sub-menu"><a href="#">Shop Layout</a>
<ul class="sub-menu-2">
<li><a href="shop.html">Shop Grid Style 1</a></li>
<li><a href="shop-2.html">Shop Grid Style 2</a></li>
<li><a href="shop-3.html">Shop Grid Style 3</a></li>
<li><a href="shop-4.html">Shop Grid Style 4</a></li>
<li><a href="shop-5.html">Shop Grid Style 5</a></li>
<li><a href="shop-6.html">Shop Grid Style 6</a></li>
<li><a href="shop-list.html">Shop List Style 1</a></li>
<li><a href="shop-list-no-sidebar.html">Shop List Style 2</a></li>
</ul>
</li>
<li class="has-sub-menu"><a href="#">Product Layout</a>
<ul class="sub-menu-2">
<li><a href="product-details.html">Product Layout 1</a></li>
<li><a href="product-details-2.html">Product Layout 2</a></li>
<li><a href="product-details-3.html">Product Layout 3</a></li>
<li><a href="product-details-4.html">Product Layout 4</a></li>
<li><a href="product-details-5.html">Product Layout 5</a></li>
<li><a href="product-details-6.html">Product Layout 6</a></li>
<li><a href="product-details-7.html">Product Layout 7</a></li>
<li><a href="product-details-8.html">Product Layout 8</a></li>
<li><a href="product-details-9.html">Product Layout 9</a></li>
</ul>
</li>
<li class="has-sub-menu"><a href="#">Shop Page</a>
<ul class="sub-menu-2">
<li><a href="my-account.html">My Account</a></li>
<li><a href="checkout.html">Check Out</a></li>
<li><a href="cart.html">Shopping Cart</a></li>
<li><a href="wishlist.html">Wishlist</a></li>
<li><a href="order-tracking.html">Order Tracking</a></li>
<li><a href="compare.html">Compare</a></li>
<li><a href="store.html">Store</a></li>
<li><a href="empty-cart.html">Empty Cart</a></li>
<li><a href="login-register.html">login / register</a></li>
</ul>
</li>
</ul>
</li>
<li class="has-sub-menu"><a href="#" class="satoshi_font">Laptop</a>
<ul class="sub-menu-2" style="list-style:none;">
<li><a href="./allinone34inch.html" class="satoshi_font">ZENO 14 inch Business Laptop</a></li>
<li class="d-none"><a href="#" class="satoshi_font">ZENO 15.6 inch Business Laptop</a></li>
</ul>
</li>
<li class="has-sub-menu"><a href="#" class="satoshi_font">All in One</a>
<ul class="sub-menu-2" style="list-style:none;">
<li><a href="./allin_one.html" class="satoshi_font">24 inch AIO i5</a></li>
<li class="d-none"><a href="#" class="satoshi_font">34 inch AIO i7 4K</a></li>
</ul>
</li>
<li class="has-sub-menu">
<a href="#"class="satoshi_font product_data" item_id="106633220000002">Products</a>
</li>
<li class="has-sub-menu"><a href="#" class="satoshi_font">Accessories</a>
<ul class="sub-menu-2" style="list-style:none;">
<li><a href="../ramproducts.html" accessories_id="106633220000007" class="satoshi_font ram_data">Ram</a></li>
<li><a href="#" class="satoshi_font">Storage</a></li>
</ul>
</li>
<li class="">
<a href="./support.html"class="satoshi_font" >Support</a>
<li class=""><a href="./ramproducts.html" class="satoshi_font">RAM</a></li>
<li class=""><a href="./storageproducts.html" class="satoshi_font">STORAGE</a></li>
<li class="expandlinav">
<div class="d-flex justify-content-between">
<span class="explandlinavname">LAPTOP</span><span class="d-none viewall_li">view all</span>
</div>
<div class="content-expandlinav d-none">
<accordion-element>
<accordion-item title="Accordion Item #1">
<p>Lorem ipsum dolor sit amet,.</p>
</accordion-item>
<accordion-item title="Accordion Item #2">
<p>Lorem ipsum dolor sit amet,.</p>
</accordion-item>
<accordion-item title="Accordion Item #3">
<p>Lorem ipsum dolor sit amet,</p>
</accordion-item>
</accordion-element>
</div>
</li>
<li class=""><a href="./support.html" class="satoshi_font" >SUPPORT</a></li>
<li class=""><a href="./press.html" class="satoshi_font">PRESS</a></li>
<li class=""><a href="./index1.html" class="satoshi_font">COMING SOON</a></li>
<li class=""><a href="./contact.html" class="satoshi_font">CONTACT</a></li>
</ul>
</nav>
</div>
@@ -342,42 +332,156 @@ let nav_html = `
</div>
</div>
</div>`;
$("#navbar-head").html(nav_html);
$("#navbar-head").html(nav_html);
let ele_page = $("body").hasClass("login_page");
if(ele_page == true){
// $(".header-area").removeClass("bg-white")
}
$('.explandlinavname').click(function (e){
if($('.expandlinav .viewall_li').hasClass('d-none')){
$('.expandlinav').find('.viewall_li').removeClass('d-none');
$('.expandlinav').find('.content-expandlinav').removeClass('d-none');
}else{
$('.expandlinav').find('.viewall_li').addClass('d-none');
$('.expandlinav').find('.content-expandlinav').addClass('d-none');
}
console.log($(e.target));
});
// $(".product_data").each(function () {
// $(this).click(function () {
// debugger;
// let item_id = $(this).attr("item_id");
// let loc_path = '/products.html'
// if (window.location.pathname.includes(loc_path)) {
// window.location.href = `?products`
// }
// else {
// window.location.href = `/products.html?products`;
// }
// })
// });
let width = $(window).width();
$(".menu-negative-mrg2,.menu-negative-mrg3,.menu-negative-mrg4").css("width",width);
$("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}`
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,
});
}
}
else {
window.location.href = `/products.html?itemid=${item_id}`;
}
})
// destroy localstorage data
let loc_path = '/productdetails.html';
if (window.location.pathname.includes(loc_path) === false) {
localStorage.removeItem("product_data")
$("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)
}
+248 -26
Просмотреть файл
@@ -1,49 +1,271 @@
async function order_summary(){
async function order_summary() {
let cookieRes = COOKIE_HELPER_ACTIONS.getCookie();
let { userId} = cookieRes;
// let res = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/Bizgaze/integrations/products/salesorderdetailsbyorgid/organizationid/${userId}`,true);
// https://templateserver.bizgaze.com/apis/v4/bizgaze/integrations/products/getordersbyid/organizationid/{organizationid}/orderno/{orderno}
let orderno = window.location.hash.split('#')[1];
let res = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/products/getordersbyid/organizationid/${userId}/orderno/${orderno}`);
if(res.isError){
return;
}
const orderDetailsres = JSON.parse(res.response.result);
let { userId } = cookieRes;
let filesInputSupport = [];
let new_arrr = orderDetailsres;
console.log(new_arrr)
let orderNumber =window.location.hash.split('#')[1];
let filteredOrders = new_arrr.filter(function(order) {
// let res = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/Bizgaze/integrations/products/salesorderdetailsbyorgid/organizationid/${userId}`,true);
// https://templateserver.bizgaze.com/apis/v4/bizgaze/integrations/products/getordersbyid/organizationid/{organizationid}/orderno/{orderno}
let orderno = window.location.hash.split('#')[1];
let res = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/products/getordersbyid/organizationid/${userId}/orderno/${orderno}`);
if (res.isError) {
return;
}
const orderDetailsres = JSON.parse(res.response.result);
let new_arrr = orderDetailsres;
console.log(new_arrr)
let orderNumber = window.location.hash.split('#')[1];
let filteredOrders = new_arrr.filter(function (order) {
return order.OrderNo === orderNumber;
});
for(let i=0;i<filteredOrders.length;i++){
for (let i = 0; i < filteredOrders.length; i++) {
let order = filteredOrders[i];
let Delivery_status =order.stageshortcode
let deliverdCard=appendItemHTML(order);
let Delivery_status = order.stageshortcode
let deliverdCard = appendItemHTML(order);
$('.deliverd-card').append(deliverdCard)
if(Delivery_status == 'CMD'){
$('.delivery_status').html('Deliverd')
if (Delivery_status == 'CMD') {
$('.delivery_status').html('Deliverd')
}
if(Delivery_status == 'APL'){
$('.delivery_status').html('Approval')
if (Delivery_status == 'APL') {
$('.delivery_status').html('Approval')
}
}
let summary =`<div class=card-body><div><p class="mb-0 fw-500">Order : <span>${orderNumber}</span><small class=" "> ( ${filteredOrders.length} items )</samll><p class="mb-0 ">Order placed on ${filteredOrders[0].OrderDate}</p></div>`;
$('.supportBtn').click(function (e) {
let parentEl = $(e.target).parents('.card-body');
const orderName = $(parentEl).find('.ordernameModal').text();
const img = $(parentEl).find('.order_img').attr('src');
$('#exampleModalsupport').find('.order_img').attr('src', img);
$('.modalitemname').text(orderName);
const orderQty = $(parentEl).find('.orderqtymodalinfo').text();
const orderPrice = $(parentEl).find('.order_price').text();
const [symbol, price] = getCurrencySymbol(orderPrice)
$('.modalitemqty').html(orderQty);
$('.modalprice').html(`${symbol} ${price}`);
console.log(orderName);
});
// modal start
// files append html ui
function getInputsListHTML(arr){
let html = '';
for(let i=0;i<arr.length;i++){
const {FileName,FileType} = arr[i];
html += `<span class='p-1 rounded text-truncate containerfilesupport' data-name="${FileName}.${FileType}" >
<span class="border p-1 rounded"> <span class=" w-50 filenamesupportticket"> ${FileName}.${FileType}</span>
<span class=' text-center bg-white rounded removeFilesupportticket'>
<i class='p-1 fa fa-close'></i>
</span></span>
</span>`
}
return html;
}
// files onchange handler for input files
async function fileUploadSaveHandler(e){
const promiseFiles = await getMulFileToGetBase64(e);
// console.log(promiseFiles,'promisepromise');
filesInputSupport = promiseFiles;
let html = getInputsListHTML(filesInputSupport);
$('.inputlistsupportcontainer').html(html);
$('.removeFilesupportticket').off('click').click(function (e){
let el = $(this);
let nameWithExt = $(el).parents('.containerfilesupport').data('name')
console.log(nameWithExt);
filterRemoveInputsFiles(nameWithExt)
});
}
function filterRemoveInputsFiles(nameWithExt){
console.log("okay");
console.log(filesInputSupport);
filesInputSupport = filesInputSupport.filter(function (e){
const {FileName,FileType} = e;
const str = `${FileName}.${FileType}`;
if(str != nameWithExt) return e;
});
console.log(filesInputSupport);
}
$('#supportattachfile').off().change(function (e){
debugger;
if(!e.target.files.length) return;
fileUploadSaveHandler(e);
});
// submit support ticket
$('.submitsupportticket').off('click').click(async function (e) {
console.log("tick");
let supportGroup = $('#supportgroups').val();
let priortyGroup = $('#supportlevel').val();
let description = $('.desmodalsupportarea').val()?.trim();
let isErrorValidtion = false;
if (!supportGroup) {
isErrorValidtion = true;
$('#supportgroups').parent().find('.invalid-feedback').addClass('d-block');
} else {
$('#supportgroups').parent().find('.invalid-feedback').removeClass('d-block');
}
if (!priortyGroup) {
isErrorValidtion = true;
$('#supportlevel').parent().find('.invalid-feedback').addClass('d-block');
} else {
$('#supportlevel').parent().find('.invalid-feedback').removeClass('d-block');
}
if (!description) {
isErrorValidtion = true;
$('.desmodalsupportarea').parent().find('.invalid-feedback').addClass('d-block');
} else {
$('.desmodalsupportarea').parent().find('.invalid-feedback').removeClass('d-block');
}
if (isErrorValidtion) return;
const payload = {
ticketgroupid: Number(supportGroup),
description: description,
documents: filesInputSupport.length > 0 ? filesInputSupport : 0,
PriorityId: Number(priortyGroup),
ticketid: 0,
contactid: Number(userId)
}
$('.supportticketsubmit').removeClass('d-none');
$('.supportticketsubmitbtn').addClass('d-none');
$('.closesupportticket').attr('disabled', true);
console.log(payload);
const res = await API_SERVICES_ACTIONS.postAPIService(`apis/v4/hyperfusion/hireserver/machines/saveticket`, payload);
console.log(res);
if (res.isError) {
toasterHelper("error", res.errorMsg, `toast-top-right`);
$('.supportticketsubmit').addClass('d-none');
$('.supportticketsubmitbtn').removeClass('d-none');
$('.closesupportticket').attr('disabled', false);
return;
}
$('.supportticketsubmit').addClass('d-none');
$('.supportticketsubmitbtn').removeClass('d-none');
$('.closesupportticket').attr('disabled', false);
toasterHelper("success", 'Ticket successfully submitted!', `toast-top-right`);
// $('#supportgroups').val(null);
// $('#supportlevel').val(null);
$('.desmodalsupportarea').val('');
$("#exampleModalsupport .closesupportticket").click()
});
// modal end
$('.warrantybtn').click(function (e) {
let parentEl = $(e.target).parents('.card-body');
const orderName = $(parentEl).find('.ordernameModal').text();
$('#warrenymodalname').html(orderName);
});
let summary = `<div class="bg-gradient-anwi card-body"><div><p class="mb-0 fw-500">Order : <span>${orderNumber}</span><small class=" "> ( ${filteredOrders.length} items )</samll><p class="mb-0 ">Order placed on ${filteredOrders[0].OrderDate}</p></div>`;
$('.Order_details_section .order_tax').html(filteredOrders[0].taxamount)
$('.Order_details_section .Order_total').html(filteredOrders[0].nettotal)
$('.Order_details_section .order_price').html(filteredOrders[0].assessableamount)
$('.Order_details_section .order-summary').html(summary);
$('.back_to_orders').click(function(){
$(this).attr('href','./myaccount.html')
$('.back_to_orders').click(function () {
$(this).attr('href', './myaccount.html')
});
function appendItemHTML(order){
return `<div class="card rounded-0 border-0 bg-white mb-3 "><div class=card-body><div class="align-items-center row"><div class=col-md-6><div class=d-flex><img class=img-fluid src=""></div><div class="d-flex align-items-center"><div class="text-secondary">Delivery Status : </div><div class=" delivery_status text-blue fw-600" data-status="${order.stageshortcode}"></div></div></div><div class="col-md-6 text-end"><button class=" bg-gradient-anwi-outline btn-sm btn ">Claim warranty</button> <button class=" bg-gradient-anwi-outline btn-sm btn ">Support</button></div></div><div><small class=" text-secondary me-2">Delivered To : </small><small class="fw-600 user_name">${order.OrganizationName}</div><div class="row pb-4 pb-md-0 align-items-center"><div class="col-md-4 text-center"><img class="img-fluid order_img w-75"src=https://appassets.bizgaze.app/${order.imageurl}></div><div class="col-md-8 position-relative"><small class=" mb-0 order_itemname">${order.itemname} (${order.Quantity} items)<small class=" align-items-center d-flex fw-600 mb-3"><svg class="bi bi-currency-rupee"fill=currentColor height=16 viewBox="0 0 16 16"width=16 xmlns=http://www.w3.org/2000/svg><path d="M4 3.06h2.726c1.22 0 2.12.575 2.325 1.724H4v1.051h5.051C8.855 7.001 8 7.558 6.788 7.558H4v1.317L8.437 14h2.11L6.095 8.884h.855c2.316-.018 3.465-1.476 3.688-3.049H12V4.784h-1.345c-.08-.778-.357-1.335-.793-1.732H12V2H4v1.06Z"></path></svg><small class="order_price fs-6">${order.itemtotal}</small><p class=" mb-0 close_exchange position-absolute d-none text-secondary">Return/Exchange window closed on Friday,24 March <a class=text-primary href=#>Why?</a></div></div></div></div>`;
function appendItemHTML(order) {
return `<div class="card rounded-0 bg-white mb-3 "><div class=card-body><div class="align-items-center row"><div class=col-md-6><div class=d-flex><img class=img-fluid src=""></div><div class="d-flex align-items-center"><div class="text-secondary">Delivery Status : </div><div class=" delivery_status text-blue fw-600" data-status="${order.stageshortcode}"></div></div></div><div class="col-md-6 text-end"><button data-bs-toggle="modal" data-bs-target="#exampleModalwarrenty" class=" bg-gradient-anwi-outline btn-sm btn warrantybtn ">Claim warranty</button> <button data-bs-toggle="modal" data-bs-target="#exampleModalsupport" class="supportBtn bg-gradient-anwi-outline btn-sm btn ">Support</button></div></div><div><small class=" text-secondary me-2">Delivered To : </small><small class="fw-600 user_name">${order.OrganizationName}</div><div class="row pb-4 pb-md-0 align-items-center"><div class="col-md-4 text-center"><img class="img-fluid order_img w-75"src=https://appassets.bizgaze.app/${order.imageurl?.replaceAll(" ", "%20")}></div><div class="col-md-8 position-relative"><small class=" mb-0 order_itemname"><span ><span class="ordernameModal">${order.itemname}</span> (<span class="orderqtymodalinfo">${order.Quantity}</span> items)</span><small class=" align-items-center d-flex fw-600 mb-3"><svg class="bi bi-currency-rupee"fill=currentColor height=16 viewBox="0 0 16 16"width=16 xmlns=http://www.w3.org/2000/svg><path d="M4 3.06h2.726c1.22 0 2.12.575 2.325 1.724H4v1.051h5.051C8.855 7.001 8 7.558 6.788 7.558H4v1.317L8.437 14h2.11L6.095 8.884h.855c2.316-.018 3.465-1.476 3.688-3.049H12V4.784h-1.345c-.08-.778-.357-1.335-.793-1.732H12V2H4v1.06Z"></path></svg><small class="order_price fs-6">${order.itemtotal}</small><p class=" mb-0 close_exchange position-absolute d-none text-secondary">Return/Exchange window closed on Friday,24 March <a class=text-primary href=#>Why?</a></div></div></div></div>`;
}
async function supportModalInit() {
$.fn.modal.Constructor.prototype.enforceFocus = function () { };
let ticketGroupRes = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/anwisystems/integrations/anwiauth/getticketgoups`);
if (ticketGroupRes.isError) {
console.log(ticketGroupRes.errorMsg);
return;
}
ticketGroupRes = JSON.parse(ticketGroupRes.response.result);
console.log(ticketGroupRes);
let htmlTGroup = '';
for (let i = 0; i < ticketGroupRes.length; i++) {
htmlTGroup += `<option value="${ticketGroupRes[i].ticketgroupid}" data-id="${ticketGroupRes[i].ticketgroupid}">${ticketGroupRes[i].ticketgroupname}</option>`
}
$('#supportgroups').html(htmlTGroup);
// priopty
let prioritiesRes = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/anwisystems/integrations/anwiauth/getticketpriorities`);
if (prioritiesRes.isError) {
console.log(prioritiesRes.errorMsg);
return;
}
prioritiesRes = JSON.parse(prioritiesRes.response.result);
console.log(prioritiesRes, 'prioritiesRes');
let htmlTpriorites = '';
for (let i = 0; i < prioritiesRes.length; i++) {
htmlTpriorites += `<option value="${prioritiesRes[i].priorityid}" data-id="${prioritiesRes[i].priorityid}">${prioritiesRes[i].priorityname}</option>`
}
$('#supportlevel').html(htmlTpriorites);
}
supportModalInit();
}
order_summary()
+45 -23
Просмотреть файл
@@ -4,7 +4,8 @@ function startDetails(){
window.location.href = "/notfound.html";
return;
}
let productId = window.location.search.split('=')[1].split('&')[0];
debugger;
let productId = window.location.href.split('=')[1].split('&')[0].split('#')[0];
console.log(productId);
let itemtagscombinationRes = null;
let labels = {};
@@ -65,12 +66,14 @@ function startDetails(){
}
function getSpecsItemHTML({name,des,itemid,id}){
return `<div id="${id}" data-specitemid="${itemid}" class="">
<div class="row border-bottom">
<div class="col-sm-6 bg-gray-3 py-2">
let isMobile = $(window).width()<=600 ? '' : '';
let addPaddM = $(window).width()<=600 ? 'py-2' : 'py-4';
return `<div id="${id}" data-specitemid="${itemid}" >
<div class="row border-bottom">
<div class="col-sm-3 ${isMobile} font-weight-600 ${addPaddM} ">
${name}
</div>
<div class="col-sm-6 py-2">
<div class="col-sm-9 py-2 d-flex align-items-center">
${des}
</div>
</div>
@@ -93,7 +96,7 @@ function startDetails(){
if(resData.isError){
$('.productdetailstabs').addClass('d-none');
$('.specContainerleft').html('')
$('.specContainerRight').html('')
$('.specContainerRight').html('')
return;
}
$('.productdetailstabs ').removeClass('d-none');
@@ -114,15 +117,18 @@ function startDetails(){
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
});
}
leftHtml += getSpecsItemHTML({
name:specificationname,id:specificationitemid,itemid,des:description
});
// if((i+1)%2 == 0){
// rightHtml += getSpecsItemHTML({
// name:specificationname,id:specificationitemid,itemid,des:description
// })
// }else{
// leftHtml += getSpecsItemHTML({
// name:specificationname,id:specificationitemid,itemid,des:description
// });
// }
}
@@ -135,7 +141,7 @@ function startDetails(){
function getParentHTML(name,productid,id,isMain){
return `<div class="pb-2 $${name?.replace(" ",'')}-parent">
<h5 class="py-2 smallHeadingProductDetails">${name}</h5>
<div class="d-flex gap-2 ${id}container" data-tagid="${id}">
<div class="d-flex gap-2 flex-wrap ${id}container" data-tagid="${id}">
</div>
</div>`;
@@ -151,7 +157,7 @@ function startDetails(){
function getChildHTML(tagid,name,isTrue){
return `
<div data-type="${tagid}-${name}" data-tagiditem="${tagid}" class="specsmallcard optiontaganwi ${isTrue?'borderselector':''} card small-font p-3">
<div data-type="${tagid}-${name}" data-tagiditem="${tagid}" class="specsmallcard optiontaganwi ${isTrue?'borderselector':''} card small-font cursor-pointer p-3">
${name}
</div>
`
@@ -172,8 +178,10 @@ function startDetails(){
}
function updateDetailsByObj(obj){
$('.productname').html(obj.itemname)
$('.price').html(obj.pricelist);
$('.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);
@@ -186,6 +194,14 @@ console.log(obj.itemimageurl,'obj.itemimageurlobj.itemimageurlobj.itemimageurl')
$('.productDetailsMain > img').attr('src',defaultImg);
updateItemId(obj.itemid);
debugger;
if (!obj.pricelist || !obj.quantity) {
$('.buynow').attr('disabled', true);
$('#addtocart').attr('disabled', true);
} else {
$('.buynow').attr('disabled', false);
$('#addtocart').attr('disabled', false);
}
}
function searchComb(){
@@ -246,6 +262,7 @@ console.log(obj.itemimageurl,'obj.itemimageurlobj.itemimageurlobj.itemimageurl')
let name = itemtagscombinationRes[i].itemname.split('-')[0];
$('#addtocart').addClass('disabled');
$('.buynow').attr('disabled', true);
let itemsName = name;
$('.borderselector').each(function (i,e){
itemsName += ` ${$(e).html().trim()}`;
@@ -280,6 +297,7 @@ console.log(obj.itemimageurl,'obj.itemimageurlobj.itemimageurlobj.itemimageurl')
$('#skudetailitem').val(-1)
$('.price').html('');
$('#addtocart').addClass('disabled');
$('.buynow').attr('disabled', true);
$('.msgErrorDetailsItem').removeClass('d-none');
initAddToCart()
@@ -333,7 +351,7 @@ console.log(obj.itemimageurl,'obj.itemimageurlobj.itemimageurlobj.itemimageurl')
// let res = await getStatAPIService(`${SERVERNAME}/apis/v4/bizgaze/integrations/products/productattributelist/productid/${id}`);
let resData = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/products/productattributelist/productid/${id}`,true);
console.log(resData,'resDataresDataresDataresDataresData');
if(resData.isError){
loadingActions.removeLoader();
alert(resData.errorMsg.message);
@@ -399,6 +417,7 @@ console.log(obj.itemimageurl,'obj.itemimageurlobj.itemimageurlobj.itemimageurl')
$(`[data-tagid="${id}"]`).html(html);
}
// itemtagscombinationRes = await API_SERVICES_ACTIONS.getAPIService(`pis/v4/bizgaze/integrations/products/getitemwithoutbranch/productid/${id}`,true);
itemtagscombinationRes = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/products/itemtagscombination/productid/${id}`,true);
itemtagscombinationRes = JSON.parse(itemtagscombinationRes.response.result);
@@ -471,6 +490,11 @@ console.log(obj.itemimageurl,'obj.itemimageurlobj.itemimageurlobj.itemimageurl')
if(isGo){
if(itemtagscombinationRes.length === 0){
loadingActions.removeLoader();
toasterHelper("error","Something went wrong!",`toast-top-right`)
return;
}
console.log(itemtagscombinationRes[0]);
let {tagnames,tagids,pricelist} = itemtagscombinationRes[0];
tagids = tagids.split('|');
@@ -503,7 +527,7 @@ console.log(obj.itemimageurl,'obj.itemimageurlobj.itemimageurlobj.itemimageurl')
// }
$('#spec-container-details').children().slice(1).find('.specsmallcard').removeClass('specsmallcard');
$('#spec-container-details').children().find('.specsmallcard').removeClass('specsmallcard');
addeventlisteners();
loadingActions.removeLoader();
@@ -561,7 +585,5 @@ console.log(obj.itemimageurl,'obj.itemimageurlobj.itemimageurlobj.itemimageurl')
}
startDetails();
поставляемый
+160 -31
Просмотреть файл
@@ -2,8 +2,61 @@ function ramProductsInit(){
let RAM_ID = '';
async function init(){
const id = await getProductIdService();
getRamData(id)
let id
if(location.search==''&&(location.href.includes('laptops')||location.href.includes('allinones'))){
id = await getallproductsFun();
}else{
id = await getProductIdService();
}
getRamData(id);
swapSectionsVideo();
}
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<nameArr.length;i++){
const currName = nameArr[i];
let id = res.find((item)=>{
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(){
@@ -20,67 +73,143 @@ function ramProductsInit(){
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 = null;
for(let i=0;i<res.length;i++){
if(res[i].productname.includes(searchTerm)){
resultItem = res[i];
break;
let resultItem = [];
if(searchTerm.toLowerCase() === 'zeno'){
for(let i=0;i<res.length;i++){
if(res[i].productname.includes("Zeno Sleekbook")||res[i].productname.includes("Zeno Dualbook")){
resultItem.push( res[i])
}
}
return reslove(resultItem)
}else if(searchTerm.toLowerCase() === 'fyro'){
for(let i=0;i<res.length;i++){
if(res[i].productname.includes("FYRO Flagship")){
resultItem.push( res[i]);
return reslove(resultItem)
}
}
}else{
for(let i=0;i<res.length;i++){
if(res[i].productname.includes(searchTerm)){
resultItem.push( res[i])
}
}
return reslove(resultItem)
}
const {productid} = resultItem;
RAM_ID = productid;
console.log(resultItem);
return reslove(productid)
});
}
async function getRamData(id){
let resData =await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/products/itemtagscombination/productid/${id}`,true);
if(resData.isError){
alert(resData.errorMsg.message);
return;
}
let res = resData.response;
async function getRamData(ids){
let resData;
let res
let data = [];
let windowSearch = window.location.href;
for(let i=0;i<ids.length;i++){
let id = ids[i].productid;
if (windowSearch.includes('laptops')||windowSearch.includes('allinones')) {
resData = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/Bizgaze/integrations/products/getitemwithoutbranch/productid/${id}`, true);
}
else {
resData = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/products/itemtagscombination/productid/${id}`, true);
}
if(resData.isError){
alert(resData.errorMsg.message);
return;
}
res = resData.response;
res = JSON.parse(res.result);
res = JSON.parse(res.result);
data = [...data,...res];
}
console.log(res);
console.log(data);
let html = '';
for(let i=0;i<res.length;i++){
html += getRamCardHTML(res[i]);
for(let i=0;i<data.length;i++){
if(data[i].itemname.includes('AIO Fyro - 32')) continue;
html += getRamCardHTML(data[i]);
}
$('.product_card_section').html(html);
$('.ramcard').click(function(e){
// $('.ramcard').click(function(e){
let sku = $(e.target).data('itemid');
let itemid = $(e.target).data('itemid');
// let sku = $(e.target).data('itemid');
// let itemid = $(e.target).data('itemid');
window.location.href = `/productdetails.html?productId=${RAM_ID}#itemid=${itemid}`
// window.location.href = `/productdetails.html?productId=${RAM_ID}#itemid=${itemid}`
})
// })
}
function getRamCardHTML({itemname,pricelist,itemid,sku,itemimageurl}){
function getRamCardHTML({itemname,pricelist,itemid,sku,itemimageurl,productid}){
let img = itemimageurl ? imgServerNameBuild(itemimageurl) : './dist/assets/imgs/nophoto.png'
let tags = itemname.split('-');
let ramTech = tags[tags.length-2];
let gb = tags[tags.length-1];
const [currencySymbol,amount] = getCurrencySymbol(pricelist);
let priceAmt = `${currencySymbol} ${amount}`;
let detailPageName;
let addSearch = '?';
if (window.location.href.includes('laptops')) {
detailPageName = 'laptopdetails';
let name = itemname.toLowerCase().includes('zeno') ? 'Zeno' : 'Fyro';
addSearch = `?${name}`;
} else {
detailPageName = 'productdetails';
};
debugger;
return `<div class="col-lg-4 col-md-6 mb-4 col-md-6 ram_card cursor-pointer">
<div class="card border bg-gray-3 rounded-3 p-1 h-100">
<a href="/${detailPageName}.html${addSearch}productId=${productid}#itemid=${itemid}" class=""><img src="${img}" alt="${itemname}" class="w-100 h-100 p-5"></a>
<div class="card-body">
<a href="/${detailPageName}.html${addSearch}productId=${productid}#itemid=${itemid}" class="">
<h5 class="card-title satoshi_font mb-0 px-2 text-center font-weight-600">${itemname}</h5>
</a>
</div>
<hr>
<ul class="border-0 d-flex h-100 justify-content-between px-md-3 px-4 list-group-flush p-0 text-secondary" style="list-style: none;">
<li class="border-0 py-0">
<span class="satoshi_font"> <h6>${gb}</h6> <h6>${ramTech}</h6></span>
</li>
<li class="border-0 py-0">
<span class="satoshi_font"><h6>${pricelist?priceAmt:'Comming Soon'}</h6></span>
</li>
</ul>
<div class="card-body text-center">
<a href="/${detailPageName}.html?productId=${productid}#itemid=${itemid}" class="btn bg-white font-1-2 px-5 w-100">Details
</a>
</div>
</div>
</div>`
return `<div class="col-lg-4 col-md-6 mb-4 col-md-6 ram_card cursor-pointer">
<div class="card border bg-gray-3 rounded-3 p-1 h-100">
поставляемый
+9 -9
Просмотреть файл
@@ -120,7 +120,7 @@ function initAddToCart(){
cartObj[$('#skudetailitem').val()] = {
name:$('.productname').html(),
price:$('.price').html(),
price:$('.price').data('price'),
quantity:$('#quantity').val(),
img:$('.productDetailsMain img').attr('src'),
sku:$('#skudetailitem').val(),
@@ -137,7 +137,7 @@ function initAddToCart(){
}else{
//if(!data[id]) data['length']++;
let name = $('.productname').html();
let price = $('.price').html();
let price = $('.price').data('price');
let quantity = $('#quantity').val();
let img = $('.productDetailsMain img').attr('src');
let sku = $('#skudetailitem').val();
@@ -180,7 +180,7 @@ function initAddToCart(){
$('#addtocart').html('Add to cart');
$('#addtocart').removeAttr('gotocart');
$('#addtocart').off('click').click((e)=>{
debugger
$('.insufficientqty').addClass('d-none');
const qty = parseInt($('#addtocart').data('qty'));
@@ -188,18 +188,18 @@ function initAddToCart(){
$('.insufficientqty').removeClass('d-none');
return;
}
// $('#addtocart').off().click(function (el){
// window.location.href = '/shopping-cart.html';
$('#addtocart').off().click(function (el){
window.location.href = '/shopping-cart.html';
// });
});
addToCartFun();
toasterHelper('success',"Item added to cart","toast-top-right");
// $('#addtocart').html('Go to cart');
// debugger;
// $('#addtocart').attr('gotocart',1);
$('#addtocart').html('Go to cart');
$('#addtocart').attr('gotocart',1);
});
// $('.quantityHTML #quantity').off('change').change(function (e){
+1
Просмотреть файл
@@ -501,6 +501,7 @@ let Newuser =window.localStorage.getItem('isaccountCreated');
payload['OrderItems'] = orderItems;
debugger;
try {
const res = await API_SERVICES_ACTIONS.postAPIService(`apis/v4/bizgaze/integrations/salesorder/save`,payload);
console.log(res.response.result);;
+8 -7
Просмотреть файл
@@ -211,24 +211,25 @@ function shoppingCartInit() {
<div class=" inputcartaddmore d-flex gap-2 ${value >= 5 ? '' : 'd-none'}">
<input min="1" class="form-control" style="max-width:100px" value="${value <= 5 ? '5' : value}" type="number" />
<button class="btn border-none bg-info">Add</button>
<button class="bg-gradient-anwi border-none btn text-white">Add</button>
</div>
<div class="text-danger pt-2 insufficientqty d-none">Insufficient quantity</div>
</div>`
}
function shoppingCartDesktopHTML({ id, img, name, price, description, quantity, total, totalQty, productid, itemid }) {
const [currencySymbol, amt] = getCurrencySymbol(price);
const [currencySymbol, amount] = getCurrencySymbol(price);
debugger;
let tamt = 0;
{
const [currencySymbol, amt] = getCurrencySymbol(total);
tamt = amt;
const [currencySymbol, amount] = getCurrencySymbol(total);
tamt = amount;
}
return `
<div class="d-none d-md-block">
<div class="row bg-white border-bottom py-4 d-flex justify-content-center align-items-center">
<div class="col-md-2 text-center"><img src="https://appassets.bizgaze.app/_files/documents/663/5f6dc634-ffba-47d3-90d2-63004d9d41b6/LAPTOP_DDR5_32GB.jpeg" alt="${name}" class="img-fluid"></div>
<div class="col-md-2 text-center"><img src="${img}" alt="${name}" class="img-fluid"></div>
<div class="col-md-4 ">
<a class="text-decoration-none text-blue fw-600 cursor-pointer" href="productdetails.html?productId=${productid}#itemid=${itemid}">${name}</a>
@@ -236,7 +237,7 @@ function shoppingCartInit() {
<span class="badge d-none text-bg-warning">8 Offers ></span>
</div>
<div class="col-md-2">
<p class="text-right m-0"><span>${currencySymbol}</span> ${amt}</p>
<p class="text-right m-0"><span>${currencySymbol}</span> ${amount}</p>
</div>
<div class="col-md-2 ">
@@ -256,7 +257,7 @@ function shoppingCartInit() {
<div class="row d-block d-md-none smallcart py-3">
<div class="row bg-white py-5 m-0">
<div class="col-4 text-center">
<img src="https://appassets.bizgaze.app/_files/documents/663/5f6dc634-ffba-47d3-90d2-63004d9d41b6/LAPTOP_DDR5_32GB.jpeg" alt="${name}" class="img-fluid">
<img src="${img}" alt="${name}" class="img-fluid">
</div>
<div class="col-8 position-relative d-flex flex-column gap-1">
поставляемый
+64 -1
Просмотреть файл
@@ -77,6 +77,40 @@ function toasterHelper(type, message, align = 'toast-top-center') {
}
}
async function getMulFileToGetBase64(event) {
let files = event.target.files;
let filePromise = [];
for (let i = 0; i < files.length; i++) {
let currFile = files[i];
let currFilePromise = new Promise((resolve, reject) => {
const reader = new FileReader();
reader.readAsDataURL(currFile);
// Wait till complete
reader.onloadend = function () {
let base64String = reader.result
.toString()
.replace(/^data:.+;base64,/, "");
let fileReq = {
FileData: base64String,
FileName: currFile.name.split(".").slice(0, -1).join("."),
FileType: currFile.name.split(".").pop(),
RefId: 0,
"ByteData": null,
"FilePath": ""
};
resolve(fileReq);
};
// Make sure to handle error states
reader.onerror = function (e) {
reject(e);
};
});
filePromise.push(currFilePromise)
}
return Promise.all(filePromise);
}
function containsSpecialCharsHelper(str) {
const specialChars = /[`!@#$%^&*()_+\-=\[\]{};':"\\|,.<>\/?~]/;
@@ -84,4 +118,33 @@ function containsSpecialCharsHelper(str) {
}
const isUpperCaseHelper = (string) => /^(?=.*[A-Z])/.test(string);
const isLowerCaseHelper = (string) => /^(?=.*[a-z])/.test(string);
const isNumberContainsHelper = (string) => /\d/.test(string);
const isNumberContainsHelper = (string) => /\d/.test(string);
function swapSectionsVideo(){
function swapSections() {
var sectionOne = document.querySelector('.section-one');
var sectionTwo = document.querySelector('.section-two');
let nextSibling = sectionOne.nextSibling;
var isMobile = window.matchMedia("(max-width: 768px)").matches;
if(!isMobile) return;
if(nextSibling){
sectionOne.insertAdjacentElement("beforeBegin",sectionTwo)
}else{
sectionOne.parentNode.insertBefore(sectionOne, sectionTwo);
}
// sectionOne.parentNode.insertBefore(sectionOne, sectionTwo);
}
swapSections();
// Call the swapSections function on load and resize
// window.addEventListener('load', swapSections);
window.addEventListener('resize', swapSections);
setTimeout(function (){
document.querySelector('auth-loader').hide();
$('.loading-main').removeClass('d-none');
},1000);
}