Rahul Katari 1 год назад
Родитель
Сommit
7b0be232b6
100 измененных файлов: 938 добавлений и 11277 удалений
  1. 931
    0
      aiodetails.html
  2. 7
    1
      all.css
  3. Двоичные данные
      dist/assets/imgs/banners/anwi-aio-old.png
  4. Двоичные данные
      dist/assets/imgs/banners/anwi-aio.png
  5. Двоичные данные
      dist/assets/imgs/banners/anwi-laptop-old (2).png
  6. Двоичные данные
      dist/assets/imgs/banners/anwi-laptop-old.png
  7. Двоичные данные
      dist/assets/imgs/banners/anwi-laptop.png
  8. Двоичные данные
      dist/assets/imgs/zeno/14 inch/10.png
  9. Двоичные данные
      dist/assets/imgs/zeno/14 inch/11.png
  10. Двоичные данные
      dist/assets/imgs/zeno/14 inch/22.png
  11. Двоичные данные
      dist/assets/imgs/zeno/14 inch/4.png
  12. Двоичные данные
      dist/assets/imgs/zeno/14 inch/5.png
  13. Двоичные данные
      dist/assets/imgs/zeno/14 inch/66.png
  14. Двоичные данные
      dist/assets/imgs/zeno/14 inch/Fan2.png
  15. Двоичные данные
      dist/assets/imgs/zeno/14 inch/trackpad.png
  16. Двоичные данные
      dist/assets/imgs/zeno/aio/7.png
  17. Двоичные данные
      dist/assets/imgs/zeno/aio/Renders.zip
  18. Двоичные данные
      dist/assets/imgs/zeno/aio/Renders/1.png
  19. Двоичные данные
      dist/assets/imgs/zeno/aio/Renders/2.png
  20. Двоичные данные
      dist/assets/imgs/zeno/aio/Renders/3.png
  21. Двоичные данные
      dist/assets/imgs/zeno/aio/Renders/4.png
  22. Двоичные данные
      dist/assets/imgs/zeno/aio/Renders/5.png
  23. Двоичные данные
      dist/assets/imgs/zeno/aio/Renders/6.png
  24. Двоичные данные
      dist/assets/imgs/zeno/aio/Renders/7.png
  25. Двоичные данные
      dist/assets/imgs/zeno/aio/Renders/8.png
  26. Двоичные данные
      dist/assets/imgs/zeno/aio/aio.png
  27. Двоичные данные
      dist/assets/imgs/zeno/aio/aio2.png
  28. Двоичные данные
      dist/assets/imgs/zeno/aio/anwi-aio-battery (1).png
  29. Двоичные данные
      dist/assets/imgs/zeno/aio/anwi-aio-battery.png
  30. Двоичные данные
      dist/assets/imgs/zeno/aio/banner.png
  31. Двоичные данные
      dist/assets/imgs/zeno/aio/banner1 (2).png
  32. Двоичные данные
      dist/assets/imgs/zeno/aio/battery-vector-removebg-preview.png
  33. Двоичные данные
      dist/assets/imgs/zeno/aio/battery-vector.jpg
  34. Двоичные данные
      dist/assets/imgs/zeno/aio/desktop-power.png
  35. Двоичные данные
      dist/assets/imgs/zeno/aio/flexibility.png
  36. Двоичные данные
      dist/assets/imgs/zeno/aio/metal-keyboard.png
  37. Двоичные данные
      dist/assets/imgs/zeno/aio/ports-asus.png
  38. Двоичные данные
      dist/assets/imgs/zeno/aio/ports.png
  39. Двоичные данные
      dist/assets/imgs/zeno/aio/reclaim-your-space.png
  40. 0
    0
      dist/assets/imgs/zeno/aio/sleek-asus.jpg
  41. Двоичные данные
      dist/assets/imgs/zeno/aio/sleek1.png
  42. Двоичные данные
      dist/assets/imgs/zeno/aio/topview.png
  43. Двоичные данные
      dist/assets/imgs/zeno/chip.png
  44. Двоичные данные
      dist/assets/imgs/zeno/fans.png
  45. Двоичные данные
      dist/assets/imgs/zeno/grid.png
  46. Двоичные данные
      dist/assets/imgs/zeno/slots.png
  47. Двоичные данные
      dist/assets/imgs/zeno/zero.png
  48. 0
    96
      dist/js-old/allInOne.js
  49. 0
    347
      dist/js-old/auth/apiservice.js
  50. 0
    701
      dist/js-old/auth/login.js
  51. 0
    383
      dist/js-old/auth/login_11.js
  52. 0
    780
      dist/js-old/auth/login_ing.js
  53. 0
    110
      dist/js-old/components/accordion/accordion.js
  54. 0
    162
      dist/js-old/components/authloader/authloader.js
  55. 0
    0
      dist/js-old/components/authloader/passwordinput.js
  56. 0
    256
      dist/js-old/components/select/selectcomponent.js
  57. 0
    6
      dist/js-old/fontawesome.all.js
  58. 0
    6
      dist/js-old/fontawesome.min.js
  59. 0
    453
      dist/js-old/footer.js
  60. 0
    73
      dist/js-old/form.js
  61. 0
    177
      dist/js-old/index/index.js
  62. 0
    2
      dist/js-old/jquery.min.js
  63. 0
    23
      dist/js-old/json.js
  64. 0
    14
      dist/js-old/laptopmuti.js
  65. 0
    18
      dist/js-old/localstorage/checkout.js
  66. 0
    14
      dist/js-old/localstorage/loginauthlocal.js
  67. 0
    1658
      dist/js-old/main.js
  68. 0
    377
      dist/js-old/myaccount/Address.js
  69. 0
    9
      dist/js-old/myaccount/Myaccount.js
  70. 0
    158
      dist/js-old/myaccount/Profile.js
  71. 0
    158
      dist/js-old/myaccount/myaccount_warrenty.js
  72. 0
    134
      dist/js-old/myaccount/orderdetails.js
  73. 0
    660
      dist/js-old/navbar.js
  74. 0
    644
      dist/js-old/navbar.js-old
  75. 0
    487
      dist/js-old/navbar2.js
  76. 0
    453
      dist/js-old/navbar_okay.js
  77. 0
    130
      dist/js-old/orderDetails/order_summary.js
  78. 0
    157
      dist/js-old/orderconfirmation.js
  79. 0
    48
      dist/js-old/plugins/ajax-mail.js
  80. 0
    22
      dist/js-old/plugins/countdown.js
  81. 0
    7
      dist/js-old/plugins/easyzoom.js
  82. 0
    7
      dist/js-old/plugins/images-loaded.js
  83. 0
    5
      dist/js-old/plugins/instafeed.js
  84. 0
    12
      dist/js-old/plugins/isotope.js
  85. 0
    11
      dist/js-old/plugins/jquery-ui-touch-punch.js
  86. 0
    6
      dist/js-old/plugins/jquery-ui.js
  87. 0
    4
      dist/js-old/plugins/jquery.nice-select.min.js
  88. 0
    6
      dist/js-old/plugins/magnific-popup.js
  89. 0
    2
      dist/js-old/plugins/mouse-parallax.js
  90. 0
    215
      dist/js-old/plugins/plugins.js
  91. 0
    1
      dist/js-old/plugins/plugins.min.js
  92. 0
    11
      dist/js-old/plugins/scrollup.js
  93. 0
    13
      dist/js-old/plugins/slick.js
  94. 0
    8
      dist/js-old/plugins/svg-injector.min.js
  95. 0
    3
      dist/js-old/plugins/wow.js
  96. 0
    67
      dist/js-old/product.js
  97. 0
    939
      dist/js-old/productdetails/laptopd.js
  98. 0
    593
      dist/js-old/productdetails/laptopdetails.js
  99. 0
    650
      dist/js-old/productdetails/laptopdetails.js-old
  100. 0
    0
      dist/js-old/productdetails/productdetails.js

+ 931
- 0
aiodetails.html Просмотреть файл

@@ -0,0 +1,931 @@
1
+<!DOCTYPE html>
2
+<html lang="en">
3
+
4
+<head>
5
+    <meta charset="UTF-8" />
6
+    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7
+    <meta http-equiv="X-UA-Compatible" content="ie=edge" />
8
+
9
+    <link rel="stylesheet" href="./all.css">
10
+
11
+    <title>Anwi</title>
12
+    <style>
13
+        .img-magnifier-glass {
14
+            position: absolute;
15
+            /* border: 3px solid #8a3033; */
16
+            cursor: none;
17
+            /* border-radius: 50%; */
18
+            width: 370px;
19
+            height: 310px;
20
+            z-index: 10;
21
+        }
22
+
23
+        .product_details {
24
+            right: 100px;
25
+            top: 40%;
26
+        }
27
+
28
+        .products-display-box .rg-card-box {
29
+            display: -webkit-box;
30
+            display: -webkit-flex;
31
+            display: -ms-flexbox;
32
+            display: flex;
33
+            align-content: flex-start;
34
+            align-items: flex-start;
35
+            justify-content: space-between;
36
+            flex-wrap: wrap;
37
+            width: calc(54% - 12px);
38
+        }
39
+
40
+        @media screen and (min-width: 1920px) {
41
+            .products-display-box .rg-card-box .rg-card-item {
42
+                min-height: 582px;
43
+            }
44
+        }
45
+
46
+
47
+        .products-display-box .rg-card-box .item-product {
48
+            padding: 56px 0;
49
+        }
50
+
51
+        .products-display-box .rg-card-box .rg-card-item {
52
+            position: relative;
53
+            width: calc(50% - 12px);
54
+            height: calc(50% - 12px);
55
+            min-height: 368px;
56
+            margin-bottom: 24px;
57
+            background-color: #fff;
58
+            border-radius: 24px;
59
+        }
60
+
61
+        .products-display-box .card-box {
62
+            position: relative;
63
+            height: 100%;
64
+        }
65
+
66
+        .products-display-box .rg-card-box .item-product .card-info {
67
+            padding: 0 32px;
68
+        }
69
+
70
+        .products-display-box .lf-card-box {
71
+            margin-right: 12px;
72
+            width: calc(46% - 12px);
73
+            background-color: #fff;
74
+            border-radius: 24px;
75
+            display: -webkit-box;
76
+            display: -webkit-flex;
77
+            display: -ms-flexbox;
78
+            display: flex;
79
+            flex-wrap: wrap;
80
+            justify-content: center;
81
+            align-items: center;
82
+            align-content: center;
83
+        }
84
+
85
+        @media screen and (min-width: 1920px) {
86
+
87
+            .products-display-box,
88
+            .products-display-box.init-editor,
89
+            .products-display-box .lf-card-box {
90
+                min-height: 1188px;
91
+            }
92
+        }
93
+
94
+        .bg-zeno-light {
95
+            background-color: #f5f5f5;
96
+        }
97
+
98
+        .card-title {
99
+            margin-bottom: 16px;
100
+            font-size: 18px;
101
+            line-height: 1.375;
102
+            font-weight: bold;
103
+        }
104
+
105
+        .products-display-box .card-box .card-title {
106
+            word-break: break-word;
107
+            height: 33px;
108
+        }
109
+
110
+        .products-display-box .card-selling-points li {
111
+            margin-bottom: 8px;
112
+            line-height: 1.2;
113
+            color: #757575;
114
+            word-break: break-word;
115
+        }
116
+
117
+        .products-display-box .rg-card-box .item-product .card-selling-points {
118
+            margin-bottom: 24px;
119
+            font-size: 13px;
120
+            line-height: 20px;
121
+            list-style: none;
122
+            height: 62.7812px;
123
+        }
124
+
125
+        .productDetailsShadow {
126
+            position: relative;
127
+        }
128
+
129
+        /* .left_anwi_img{
130
+    position: sticky;
131
+    top: 40px;
132
+} */
133
+        #main_show_img {
134
+            cursor: pointer;
135
+        }
136
+    </style>
137
+</head>
138
+
139
+<body>
140
+    <!-- navbar -->
141
+    <auth-loader></auth-loader>
142
+    <div id="navbar-head" class=""></div>
143
+    <!-- end-navbar -->
144
+    <!-- main-body -->
145
+    <main class="main-body home-main-container loading-main" id="home-main-container">
146
+        <section class="services barbgnav d-none h-100 pt-3  bg-gradient-anwi">
147
+            <div class="container pt-5 ">
148
+                <div class="text-center text-white ">
149
+                </div>
150
+            </div>
151
+        </section>
152
+        <section class="py-5">
153
+            <div class="container-fluid position-relative">
154
+                <div class="product_details d-md-none d-block">
155
+                    <div>
156
+                        <input type="hidden" name="" id="skudetailitem">
157
+                        <h4 class="productname fw-600 ps-3 pt-5"></h4>
158
+                    </div>
159
+                </div>
160
+                <div class="text-center">
161
+                    <img src="./dist/assets/imgs/new_img/main_banner.webp" class="w-100" />
162
+                </div>
163
+                <div class="position-absolute product_details d-md-block d-none">
164
+                    <div>
165
+                        <input type="hidden" name="" id="skudetailitem">
166
+                        <h4 class="productname"></h4>
167
+                    </div>
168
+                </div>
169
+            </div>
170
+        </section>
171
+        <section class="py-5 bg-zeno-light">
172
+            <div class="container py-md-5">
173
+                <div class="row">
174
+                    <div class="col-md-5 pb-3 pb-md-0 text-center">
175
+                        <div class="p-5 notes bg-white rounded-3 h-100">
176
+                            <a href="#" class="ga-pdp-link">
177
+                                <div class="card-title pt-4">FYRO Flagship - 17.3 - I9 13900HX - RTX 4080</div>
178
+                            </a>
179
+                            <a href="#" class="card-img-box mb-show ga-pdp-link notes">
180
+                                <img class=" pc-mb show success-img left-block pt-5" alt="card-img"
181
+                                    src="./dist/assets/imgs/new_img/lappy1.png" height="450px" width="450px">
182
+                            </a>
183
+                        </div>
184
+                    </div>
185
+                    <div class="col-md-7 ps-md-1">
186
+                        <div class="d-flex gap-3 pb-3 product_item">
187
+                            <div class=" bg-white rounded-3 text-center ">
188
+                                <div class="p-5 notes">
189
+                                    <a href="#" class="card-img-box mb-show ga-pdp-link "
190
+                                        data-nameforga="products_display_HUAWEI MateBook X Pro" data-position="1">
191
+                                        <img class="w-75 pc-mb show success-img " alt="card-img"
192
+                                            src="./dist/assets/imgs/new_img/lappy2.png">
193
+                                    </a>
194
+                                    <a href="#" class="ga-pdp-link"
195
+                                        data-nameforga="products_display_HUAWEI MateBook X Pro" data-position="1">
196
+                                        <div class="card-title">FYRO Flagship - 17.3 - I9 13900HX - RTX 4090</div>
197
+                                    </a>
198
+                                    <!-- <div>
199
+                                        13th Gen Intel® Core™ Processor
200
+                                    </div> -->
201
+
202
+                                </div>
203
+                            </div>
204
+                            <div class=" rounded-3 text-center bg-white">
205
+                                <div class="p-5 notes">
206
+                                    <a href="#" class="card-img-box mb-show ga-pdp-link"
207
+                                        data-nameforga="products_display_HUAWEI MateBook X Pro" data-position="1">
208
+                                        <img class="w-75 pc-mb show success-img" alt="card-img"
209
+                                            src="./dist/assets/imgs/new_img/lappy3.png">
210
+                                    </a>
211
+                                    <a href="#" class="ga-pdp-link"
212
+                                        data-nameforga="products_display_HUAWEI MateBook X Pro" data-position="1">
213
+                                        <div class="card-title">FYRO Flagship - 17.3 - I9 13900HX - RTX 4060</div>
214
+                                    </a>
215
+                                    <!-- <div>
216
+                                        13th Gen Intel® Core™ Processor
217
+                                    </div> -->
218
+
219
+                                </div>
220
+                            </div>
221
+                        </div>
222
+                        <div class="d-flex gap-3 product_item">
223
+                            <div class=" rounded-3 text-center bg-white">
224
+                                <div class="p-5 notes">
225
+                                    <a href="#" class="card-img-box mb-show ga-pdp-link"
226
+                                        data-nameforga="products_display_HUAWEI MateBook X Pro" data-position="1">
227
+                                        <img class="w-75 pc-mb show success-img" alt="card-img"
228
+                                            src="./dist/assets/imgs/new_img/lappy4.png">
229
+                                    </a>
230
+                                    <a href="#" class="ga-pdp-link"
231
+                                        data-nameforga="products_display_HUAWEI MateBook X Pro" data-position="1">
232
+                                        <div class="card-title">FYRO Flagship - 17.3 - I9 13900HX - RTX 3050</div>
233
+                                    </a>
234
+                                    <!-- <div>
235
+                                        13th Gen Intel® Core™ Processor
236
+                                    </div> -->
237
+
238
+                                </div>
239
+                            </div>
240
+                            <div class=" rounded-3 text-center bg-white">
241
+                                <div class="p-5 notes">
242
+                                    <a href="#" class="card-img-box mb-show ga-pdp-link"
243
+                                        data-nameforga="products_display_HUAWEI MateBook X Pro" data-position="1">
244
+                                        <img class="w-75 pc-mb show success-img" alt="card-img"
245
+                                            src="./dist/assets/imgs/new_img/lappy5.png">
246
+                                    </a>
247
+                                    <a href="#" class="ga-pdp-link"
248
+                                        data-nameforga="products_display_HUAWEI MateBook X Pro" data-position="1">
249
+                                        <div class="card-title">FYRO Flagship - 17.3 - I7-13700H - RTX 4090</div>
250
+                                    </a>
251
+                                    <!-- <div>
252
+                                        13th Gen Intel® Core™ Processor
253
+                                    </div> -->
254
+
255
+                                </div>
256
+                            </div>
257
+                        </div>
258
+                    </div>
259
+                </div>
260
+            </div>
261
+        </section>
262
+        <section class="position-relative bg-black section-one d-none">
263
+            <!-- <div class="d-flex justify-content-center align-items-center videospinning ">
264
+                <div class="spinner-border text-info" role="status">
265
+                    <span class="visually-hidden">Loading...</span>
266
+                </div>
267
+            </div> -->
268
+            <!-- <iframe class="d-none" src="https://player.vimeo.com/video/824707959?h=5b3654950a&amp&autoplay=1&loop=1&autopause=0&badge=0&player_id=0&controls=0&muted=1" width="100%" height="860px" frameborder="0" allow="autoplay; fullscreen; picture-in-picture" allowfullscreen></iframe> -->
269
+
270
+            <div class="iframcontainer d-none" style="padding:56.25% 0 0 0;position:relative;">
271
+                <iframe class="d-none"
272
+                    src="https://player.vimeo.com/video/824707959?h=5b3654950&amp&autoplay=1&loop=1&autopause=0&badge=0&player_id=0&controls=0&muted=1"
273
+                    frameborder="0" allow="autoplay; fullscreen; picture-in-picture"
274
+                    style="position:absolute;top:0;left:0;width:100%;height:100%;" title="Zeno Sleekbook"></iframe>
275
+            </div>
276
+        </section>
277
+
278
+        <section class="bg-black fyro_id">
279
+            <div class="container py-md-5 text-white d-none">
280
+                <div class="text-center">
281
+                    <h1 class="text-fyro">Unleashing the Beasts of Creativity &
282
+                        Innovation with Graphics, AI, and ML</h1>
283
+                    <p class="font-1-5 text-white">FYRO products are the ultimate machines for graphics, AI, and ML
284
+                        enthusiasts. With powerful Intel<sup>®</sup> processors and advanced NVIDIA graphic
285
+                        cards, <strong>FYRO laptops and all-in-ones deliver the raw power and
286
+                            performance</strong> needed to handle the most demanding workloads. Whether
287
+                        you're a gamer, video editor, or AI researcher, FYRO has the tools you need
288
+                        to unleash your creativity and push the boundaries of what's possible.</p>
289
+                    <div>
290
+                        <img src="./dist/assets/imgs/Home_new/Fyro_img.png" class="img-fluid w-50" alt="">
291
+                    </div>
292
+                </div>
293
+                <p class="font-1-5 text-center mb-5 mt-4">With sleek designs and customizable features, FYRO products
294
+                    are the
295
+                    perfect blend of style and substance, offering unparalleled performance
296
+                    and portability in a compact package. Join the FYRO revolution and
297
+                    experience the power of next-gen computing today.</p>
298
+                <div class="bg-blur border rounded-4 p-4 ">
299
+                    <div class="row p-md-3 ">
300
+                        <div class="col-6">
301
+                            <div class="row align-items-center h-100 pb-md-0 pb-3">
302
+                                <div class="col-md-2 col-6">
303
+                                    <img src="./dist/assets/imgs/icons/Group 4475.svg" class="img-fluid">
304
+                                </div>
305
+                                <p class="p-md-2 mb-0 fs-9 col-md-10 ps-md-4 pt-md-0 pt-3">Unmatched GPU Performance</p>
306
+                            </div>
307
+                        </div>
308
+                        <div class="col-6 ">
309
+                            <div class="row align-items-center h-100 pb-md-0 pb-3">
310
+                                <div class="col-md-2 col-6">
311
+                                    <img src="./dist/assets/imgs/icons/Group 4479.svg" class="img-fluid">
312
+                                </div>
313
+                                <p class="p-md-2 mb-0 fs-9 col-md-10 ps-md-4">High-end Gaming Capabilities</p>
314
+                            </div>
315
+                        </div>
316
+                    </div>
317
+                    <div class="row p-md-3">
318
+                        <div class="col-6">
319
+                            <div class="row align-items-center h-100">
320
+                                <div class="col-md-2 col-6">
321
+                                    <img src="./dist/assets/imgs/icons/Asset 5.svg" class="img-fluid">
322
+                                </div>
323
+                                <p class="p-md-2 mb-0 fs-9 col-md-10 ps-md-4 pt-md-0 pt-3">Thermal Tested to handle
324
+                                    high Temp upto 105<sup>o</sup></p>
325
+                            </div>
326
+                        </div>
327
+                        <div class="col-6">
328
+                            <div class="row align-items-center h-100">
329
+                                <div class="col-md-2 col-6">
330
+                                    <img src="./dist/assets/imgs/icons/Asset 4.svg" class="img-fluid">
331
+                                </div>
332
+                                <p class="p-md-2 mb-0 fs-9 col-md-10 ps-md-4" id="overview_data_fyro">Decent
333
+                                    Battery backup</p>
334
+                            </div>
335
+                        </div>
336
+                    </div>
337
+                </div>
338
+            </div>
339
+
340
+        </section>
341
+        <section class="bg-black zeno_id">
342
+            <div class="container py-md-5 text-center text-white d-none">
343
+                <h1 class="text-blue-1 m-auto">The compact powerhouse for your productivity</h1>
344
+                <p class="font-1-5 my-4">Zeno products are a range of <strong>sleek, powerful, and compact non-GPU
345
+                        laptops and all-in-ones</strong> that offer exceptional performance and style.
346
+                    Built with state-of-the-art components, including the latest generation of
347
+                    Intel<sup>®</sup> processors, <strong>High-speed RAM, and Fast NVMe PCIe 4.0 SSDs.</strong></p>
348
+                <div class="text-center">
349
+                    <img class="img-fluid" src="./dist/assets/imgs/allin_imgs/Asset 1.png" alt="">
350
+                </div>
351
+                <p class="font-1-2 mt-4 mb-5">
352
+                    Zeno products are designed to meet the needs of professionals, students, and
353
+                    anyone who requires a reliable and portable computing solution. With their advanced
354
+                    features, including customizable hotkeys, fingerprint recognition, and a variety of
355
+                    connectivity options, Zeno products offer the perfect blend of style and substance for
356
+                    those who want a high-performing computing experience in a compact package.
357
+                </p>
358
+                <div class="bg-blur border rounded-4 p-4 text-white">
359
+                    <div class="row p-md-3 text-center">
360
+                        <div class="col-4 border-end">
361
+                            <div>
362
+                                <img src="./dist/assets/imgs/icons/Asset 9.svg" class="h-100p p-3">
363
+                            </div>
364
+                            <p class="p-2 mb-0 font-1-5">Sleek & Light weight</p>
365
+                        </div>
366
+                        <div class="col-4 border-end">
367
+                            <div>
368
+                                <img src="./dist/assets/imgs/icons/Group 4492.svg" class="h-100p p-3">
369
+                            </div>
370
+                            <p class="p-2 mb-0 font-1-5">Lightening-fast Intel<sup>®</sup> Processors
371
+                            </p>
372
+                        </div>
373
+                        <div class="col-4">
374
+                            <div>
375
+                                <img src="./dist/assets/imgs/icons/Asset 8.svg" class="h-100p p-3">
376
+                            </div>
377
+                            <p class="p-2 mb-0 font-1-5" id="overview_data_zeno">Stunning Display</p>
378
+                        </div>
379
+                    </div>
380
+                </div>
381
+            </div>
382
+        </section>
383
+        <div class="loadingCall">
384
+            <div class="spinner-border" role="status">
385
+                <span class="visually-hidden">Loading...</span>
386
+            </div>
387
+        </div>
388
+        <div class="container mainContanierProduct d-none section-two">
389
+            <div class="row">
390
+                <div class="col-xl-5 ">
391
+                    <div class="left_anwi_img bgproductDGen">
392
+                        <div class=" productDetailsShadow productDetailsMain  card border-0 box-shodow">
393
+                            <img src="./dist/assets/imgs/nophoto.png" alt="" class="card-img img-fluid success-img p-5"
394
+                                id="main_show_img">
395
+                        </div>
396
+                    </div>
397
+
398
+                    <div class=" bgproductDGen  border-0 d-none">
399
+                        <div class="row">
400
+                            <div class="d-none">
401
+                                <div class=" flex-column gap-2 p-2 d-none">
402
+                                    <input type="hidden" id="productidtag">
403
+                                    <input type="hidden" id="itemidtag">
404
+                                    <div class="product-item-gallery active-gallery-img">
405
+                                        <img src="./dist/assets/imgs/Navbar/Accessiories-1.png" alt=""
406
+                                            class="w-100 h-100">
407
+                                    </div>
408
+                                    <div class="product-item-gallery ">
409
+                                        <img src="./dist/assets/imgs/Navbar/Accessiories-2.png" alt=""
410
+                                            class="w-100 h-100">
411
+                                    </div>
412
+                                    <div class="product-item-gallery ">
413
+                                        <img src="https://www.pngall.com/wp-content/uploads/5/RAM-Memory.png" alt=""
414
+                                            class="w-100 h-100">
415
+                                    </div>
416
+                                    <div class="product-item-gallery ">
417
+                                        <img src="https://www.pngall.com/wp-content/uploads/5/RAM-Random-Access-Memory-PNG-Clipart.png"
418
+                                            alt="" class="w-100 h-100">
419
+                                    </div>
420
+                                    <div class="product-item-gallery ">
421
+                                        <img src="https://www.pngall.com/wp-content/uploads/5/RAM-PNG.png" alt=""
422
+                                            class="w-100 h-100">
423
+                                    </div>
424
+                                </div>
425
+                            </div>
426
+                            <div class="col-xl-12" type="button" data-toggle="modal" data-target="#exampleModal">
427
+                                <!-- <div class=" productDetailsShadow productDetailsMain  card border-0 box-shodow d-flex justify-content-center align-items-center">
428
+                                    <img src="./dist/assets/imgs/nophoto.png" alt="" class="card-img img-fluid success-img" id="main_show_img">
429
+                                </div> -->
430
+                            </div>
431
+
432
+                        </div>
433
+                    </div>
434
+                </div>
435
+                <div class="col-xl-7  p-3 pt-0 productDetailsShadow">
436
+                    <div class="card border-0 mt-1">
437
+                        <div class="preorderimgcontainer">
438
+                            <img src="./dist/assets/imgs/redorder.png" class="w-100 h-100 img-fluid" alt="">
439
+                        </div>
440
+                        <div>
441
+                            <div>
442
+                                <input type="hidden" name="" id="skudetailitem">
443
+                                <h5 class="productname">ORA3, M.2 NVMe SSD </h5>
444
+                            </div>
445
+                            <div class="small-font des_productdes"></div>
446
+                            <div><span class="price"></span></div>
447
+                            <div class="text-danger msgErrorDetailsItem d-none">Product out of stock</div>
448
+                        </div>
449
+
450
+                        <hr>
451
+
452
+                        <!-- <div class="d-none">
453
+                            <h5 class="my-3 smallHeadingProductDetails ">Processor And Graphics
454
+                            </h5>
455
+                            <div class="d-flex gap-2">
456
+                                <div class="specsmallcard  borderselector card small-font  p-3">
457
+                                    Intel® Core i5-9400F
458
+                                </div>
459
+                                <div class="specsmallcard card small-font  p-3">
460
+                                    Intel® Core i5-9400F
461
+                                </div>
462
+                            </div>
463
+                        </div> -->
464
+                        <div class="pb-2 d-none">
465
+                            <h5 class="pt-2 smallHeadingProductDetails">Colors</h5>
466
+                            <!-- <div class="d-flex gap-2 colors-display-container">
467
+                            
468
+                           </div> -->
469
+                            <div class="d-flex gap-2 ">
470
+                                <div class="color-display-img color-display-img-active">
471
+                                    <img src="./dist/assets/imgs/allinone/onesection.png" alt="" class="w-100 h-100">
472
+                                </div>
473
+                                <div class="color-display-img ">
474
+                                    <img src="./dist/assets/imgs/allinone/onesection.png" alt="" class="w-100 h-100">
475
+                                </div>
476
+                                <div class="color-display-img ">
477
+                                    <img src="./dist/assets/imgs/Navbar/Accessiories-1.png" alt="" class="w-100 h-100">
478
+                                </div>
479
+                            </div>
480
+                        </div>
481
+                        <div id="spec-container-details">
482
+
483
+                        </div>
484
+
485
+
486
+                        <!-- <div class="pb-2 memory-parent d-none">
487
+                            <h5 class="py-2 smallHeadingProductDetails">Memory</h5>
488
+                            <div class="d-flex gap-2 memorycontainer">
489
+                                <div data-type="memory-desktop"
490
+                                    class="specsmallcard borderselector card small-font  p-3">
491
+                                    Desktop
492
+                                </div>
493
+                                <div data-type="memory-laptop" class="specsmallcard card small-font   p-3">
494
+                                    Laptop
495
+                                </div>
496
+                            </div>
497
+                        </div>
498
+
499
+                        <div class="memory-details d-none">
500
+                            <h5 class="py-2 smallHeadingProductDetails">RAM Memory Technology</h5>
501
+                            <div class="d-flex gap-2 pb-2 ramtech">
502
+                                <div type="button" onclick="onClickHandler(this)"
503
+                                    class="specsmallcard-mini borderselector card small-font  p-3">
504
+                                    DDR4
505
+                                </div>
506
+                                <div type="button" onclick="onClickHandler(this)"
507
+                                    class="specsmallcard-mini card small-font   p-3">
508
+                                    DDR5
509
+                                </div>
510
+                            </div>
511
+
512
+                            <div>
513
+                                <h5 class="py-2 smallHeadingProductDetails">Computer Memory Size</h5>
514
+                                <div class="d-flex gap-2 computersize">
515
+
516
+                                    <div type="button" onclick="onClickHandler(this)"
517
+                                        class="specsmallcard-mini borderselector card small-font  p-3">
518
+                                        8 GB
519
+                                    </div>
520
+                                    <div type="button" onclick="onClickHandler(this)"
521
+                                        class="specsmallcard-mini card small-font   p-3">
522
+                                        16 GB
523
+                                    </div>
524
+                                    <div type="button" onclick="onClickHandler(this)"
525
+                                        class="specsmallcard-mini card small-font   p-3">
526
+                                        32 GB
527
+                                    </div>
528
+                                </div>
529
+                            </div>
530
+                        </div> -->
531
+
532
+
533
+
534
+
535
+                        <!-- <div class="pb-2 d-none">
536
+                            <h5 class="py-2 smallHeadingProductDetails">Storage</h5>
537
+                            <div class="d-flex gap-2">
538
+                                <div class="specsmallcard borderselector card small-font  p-3">
539
+
540
+                                    256 GB SSD Capacity
541
+
542
+                                </div>
543
+                                <div class="specsmallcard card small-font   p-3">
544
+                                    1 TB SSD Capacity
545
+                                </div>
546
+                            </div>
547
+                        </div> -->
548
+
549
+
550
+                        <div class="d-none">
551
+                            <div class="d-flex justify-content-between align-items-center py-3">
552
+                                <h5 class="my-3 smallHeadingProductDetails">Quantity</h5>
553
+                                <a href="shopping-cart.html">
554
+                                    <!-- <div class="btn btn-sm btn-success ">Add To Cart</div> -->
555
+                                    <a class="btn btn-dark button_dark" href="shopping-cart.html">Add To Cart</a>
556
+                                </a>
557
+                            </div>
558
+                            <div class="d-flex">
559
+                                <span class="qtybtn qtybtleft bgGreyLight">-</span>
560
+                                <span class=" border-top border-bottom">
561
+                                    <span class="px-2">1</span>
562
+                                </span>
563
+                                <span class="qtybtn qtybtright bgGreyLight">+</span>
564
+                            </div>
565
+                        </div>
566
+
567
+                        <div class="d-none">
568
+                            <div class="small-font">Check if stock is available at your pincode
569
+                            </div>
570
+                            <div>
571
+                                <div class="mb-3 d-flex border">
572
+                                    <input class="form-control small-font border-0"
573
+                                        placeholder="input your pincode to check" type="text" id="formFile">
574
+                                    <button class="border-0 small-font px-2">Check</button>
575
+
576
+                                </div>
577
+                            </div>
578
+                        </div>
579
+                        <hr class="d-none">
580
+                        <div>
581
+                            <ul class="d-none">
582
+                                <li class="small-font">No Cost EMI Available <a class="learnMoreA" href="">Learn
583
+                                        More</a></li>
584
+                                <li class="small-font">Buy Anwi Extended Warranty 1 Year at ₹2,699 <a class="learnMoreA"
585
+                                        href="">Learn More</a></li>
586
+                                <li class="small-font">Avail No Cost EMI offer with BFL EMI Network Card<a
587
+                                        class="learnMoreA" href="">Learn More</a></li>
588
+                                <li class="small-font">
589
+                                    Anwi Notebook Pro Drivers<a class="learnMoreA" href="">Learn More</a>
590
+                                </li>
591
+                            </ul>
592
+                        </div>
593
+                        <hr>
594
+                        <div class="pb-2 quantityHTML" id="specification_data">
595
+                            <span>Quantity :</span>
596
+                            <select name="quantity" id="quantity">
597
+                                <option value="1">1</option>
598
+                                <option value="2">2</option>
599
+                                <option value="3">3</option>
600
+                                <option value="4">4</option>
601
+                                <option value="5">5</option>
602
+                                <option value="6">6</option>
603
+                                <option value="7">7</option>
604
+                                <option value="8">8</option>
605
+                                <option value="9">9</option>
606
+                                <option value="10">10</option>
607
+
608
+
609
+                            </select>
610
+                        </div>
611
+                        <div class="text-danger pt-2 insufficientqty d-none">Insufficient quantity</div>
612
+                        <div class=" d-flex  gap-2 mt-2">
613
+                            <button id="addtocart" class="w-100 bg-gradient-anwi  btn bg-black text-white"
614
+                                style="border-radius: 5px;">
615
+                                Add to cart
616
+                            </button>
617
+                            <button class="w-100 btn bg-gradient-anwi buynow bg-black text-white"
618
+                                style="border-radius: 5px;">
619
+                                Buy Now
620
+                            </button>
621
+                        </div>
622
+
623
+
624
+                    </div>
625
+
626
+                </div>
627
+            </div>
628
+
629
+            <!-- tabs -->
630
+            <div class="row tabsContainer">
631
+                <div class="col-lg-12">
632
+                    <div class="dec-review-topbar no-transition nav mb-65 productdetailstabs d-flex gap-4"
633
+                        role="tablist">
634
+                        <!-- <a class="active font-1-5 no-transition" data-bs-toggle="tab" href="#des-details1"  aria-selected="true" role="tab">Description</a> -->
635
+
636
+                        <a href="#des-details2" aria-selected="false" role="tab"
637
+                            class="fw-600 font-1-5 no-transition w-100 text-center py-2 bg-gray-background"
638
+                            tabindex="-1">Specification</a>
639
+
640
+                    </div>
641
+                    <div class="tab-content dec-review-bottom">
642
+                        <!-- <div id="des-details1" class="tab-pane active show" role="tabpanel">
643
+                            <div class="description-wrap wrap-content-product-tabs">
644
+                               <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Suscipit, recusandae! Alias tempore, molestias, architecto provident excepturi voluptate non repellendus, repellat a quis iusto consequuntur quas beatae fugit nisi totam ratione nesciunt reiciendis quod? Quae, consequuntur quasi. Laudantium, doloribus aliquam incidunt error qui itaque aperiam quia ducimus cupiditate, magnam aliquid iste molestiae eveniet? Eaque veniam illo hic, possimus dolorum quaerat ratione in ex voluptas itaque ullam, maiores iusto illum blanditiis sequi. Ex, ab nemo vero libero pariatur architecto culpa! Recusandae at fugiat itaque libero amet corporis exercitationem dolorum? Tenetur repellat tempora perspiciatis quibusdam maxime facilis necessitatibus eius sint corporis nihil! Accusantium.</p>
645
+                            </div>
646
+                        </div> -->
647
+                        <div id="des-details2" class="tab-pane active show" role="tabpanel">
648
+                            <!-- <div class="specification-wrap table-responsive">
649
+                                <table class="table table-bordered wrap-content-product-tabs">
650
+                                    <tbody class="append-specs">
651
+                                        <tr>
652
+                                            <td class="width1">Data Transfer Rate</td>
653
+                                            <td>Anwi Ram</td>
654
+                                        </tr>
655
+                                        <tr>
656
+                                            <td>Memory Speed</td>
657
+                                            <td>3200</td>
658
+                                        </tr>
659
+                                       
660
+                                    </tbody>
661
+                                </table>
662
+                            </div> -->
663
+                            <div class="specContainer mt-3">
664
+                                <!-- <div class="d-flex gap-5 specContainer mt-3"> -->
665
+                                <div class="specContainerleft">
666
+                                    <div class="accordion custom-accordion text-dark" id="faqAccordion">
667
+                                        <div class="accordion-item custom-accordion-item">
668
+                                            <h2 class="accordion-header  custom-accordion-header"
669
+                                                id="questionOneHeader">
670
+                                                <button
671
+                                                    class="accordion-button bg-white text-dark custom-accordion-button"
672
+                                                    type="button" data-bs-toggle="collapse" data-bs-target="#answerOne"
673
+                                                    aria-expanded="true" aria-controls="answerOne">
674
+
675
+                                                    <div id="answerOne"
676
+                                                        class="accordion-collapse  collapse show custom-accordion-content"
677
+                                                        aria-labelledby="questionOneHeader"
678
+                                                        data-bs-parent="#faqAccordion">
679
+                                                        <div class="accordion-body custom-accordion-body">
680
+
681
+                                                            Windows 11 Home/Windows 11 Pro
682
+                                                        </div>
683
+                                                    </div>
684
+                                                </button>
685
+                                            </h2>
686
+
687
+                                        </div>
688
+
689
+                                        <div class="accordion-item  border-x-none py-4">
690
+                                            <h2 class="accordion-header" id="${mainid}">
691
+                                                <button class=" accordion-button  bg-white text-dark " type="button"
692
+                                                    data-bs-toggle="collapse" data-bs-target="#${id}_child"
693
+                                                    aria-expanded="true" aria-controls="${id}_child">
694
+                                                    <span
695
+                                                        class="font-weight-600 font-5 text-dark acc-specs-name">${name}</span>
696
+                                                </button>
697
+                                            </h2>
698
+                                            <div>
699
+
700
+
701
+                                                <div id="${id}_child" class="accordion-collapse collapse  w-100 show"
702
+                                                    aria-labelledby="${mainid}">
703
+                                                    <div class="accordion-body   d-flex justify-content-right">
704
+                                                        <div class="text-secondary">${body}</div>
705
+                                                    </div>
706
+
707
+                                                </div>
708
+
709
+                                            </div>
710
+                                        </div>
711
+
712
+
713
+                                        <div class="accordion-item">
714
+                                            <h2 class="accordion-header" id="panelsStayOpen-headingOne">
715
+                                                <button class="accordion-button" type="button" data-bs-toggle="collapse"
716
+                                                    data-bs-target="#panelsStayOpen-collapseOne" aria-expanded="true"
717
+                                                    aria-controls="panelsStayOpen-collapseOne">
718
+                                                    <span class="font-weight-600 font-1-5 text-dark"> Operating
719
+                                                        System</span>
720
+                                                    <div id="panelsStayOpen-collapseOne"
721
+                                                        class="accordion-collapse collapse show"
722
+                                                        aria-labelledby="panelsStayOpen-headingOne">
723
+                                                        <div class="accordion-body">
724
+                                                            <strong>This is the first item's accordion body.</strong> It
725
+                                                            is shown by default, until the collapse plugin adds the
726
+                                                            appropriate classes that we use to style each element. These
727
+                                                            classes control the overall appearance, as well as the
728
+                                                            showing and hiding via CSS transitions. You can modify any
729
+                                                            of this with custom CSS or overriding our default variables.
730
+                                                            It's also worth noting that just about any HTML can go
731
+                                                            within the <code>.accordion-body</code>, though the
732
+                                                            transition does limit overflow.
733
+                                                        </div>
734
+                                                    </div>
735
+                                                </button>
736
+                                            </h2>
737
+
738
+                                        </div>
739
+                                        <!-- ... other accordion items ... -->
740
+                                    </div>
741
+
742
+                                </div>
743
+                                <div class="specContainerRight">
744
+
745
+                                    <div class="">
746
+                                        <div class="row  border-bottom">
747
+                                            <div class="col-sm-6 bg-gray-3">
748
+                                                Item part number
749
+                                            </div>
750
+                                            <div class="col-sm-6">
751
+                                                AWLD54816M
752
+                                            </div>
753
+                                        </div>
754
+                                    </div>
755
+                                    <div class="">
756
+                                        <div class="row  border-bottom">
757
+                                            <div class="col-sm-6 bg-gray-3">
758
+                                                RAM Size
759
+                                            </div>
760
+                                            <div class="col-sm-6">
761
+                                                16 GB
762
+                                            </div>
763
+                                        </div>
764
+                                    </div>
765
+                                    <div class="">
766
+                                        <div class="row  border-bottom">
767
+                                            <div class="col-sm-6 bg-gray-3">
768
+                                                Ram Memory Technology
769
+                                            </div>
770
+                                            <div class="col-sm-6">
771
+                                                DDR5, SO-DIMM
772
+
773
+                                            </div>
774
+                                        </div>
775
+                                    </div>
776
+                                </div>
777
+                            </div>
778
+                        </div>
779
+
780
+                    </div>
781
+                </div>
782
+
783
+            </div>
784
+
785
+
786
+        </div>
787
+    </main>
788
+    <!-- footer -->
789
+    <div id="footer-head" class="sec-space-1"></div>
790
+    <!-- end-footer -->
791
+
792
+
793
+    <!-- <script src="https://player.vimeo.com/api/player.js"></script> -->
794
+    <script src="./dist/js/components/authloader/authloader.js"></script>
795
+    <script src="./dist/js/jquery.min.js"></script>
796
+    <script src="./libs/bootstrap/js/bootstrap.bundle.min.js"></script>
797
+    <script src="./libs/owlcarousel/js/owl.carousel.min.js"></script>
798
+    <script src="./libs/axios.min.js"></script>
799
+    <script src="./libs/cookies.min.js"></script>
800
+    <script src="./dist/js/fontawesome.all.js"></script>
801
+    <script src="./dist/js/fontawesome.min.js"></script>
802
+    <script src="./dist/js/vendor/modernizr-3.11.7.min.js"></script>
803
+    <script src="./dist/js/vendor/jquery-v3.6.0.min.js"></script>
804
+    <script src="./dist/js/vendor/jquery-migrate-v3.3.2.min.js"></script>
805
+    <!-- <script src="./dist/js/vendor/bootstrap.min.js"></script> -->
806
+    <script src="./dist/js/plugins/slick.js"></script>
807
+    <script src="./dist/js/plugins/wow.js"></script>
808
+    <script src="./dist/js/plugins/svg-injector.min.js"></script>
809
+    <script src="./dist/js/plugins/jquery.nice-select.min.js"></script>
810
+    <script src="./dist/js/plugins/mouse-parallax.js"></script>
811
+    <script src="./dist/js/plugins/images-loaded.js"></script>
812
+    <script src="./dist/js/plugins/isotope.js"></script>
813
+    <script src="./dist/js/plugins/jquery-ui.js"></script>
814
+    <script src="./dist/js/plugins/magnific-popup.js"></script>
815
+    <script src="./dist/js/validate.min.js"></script>
816
+    <script src="./dist/toaster/toastr.js"></script>
817
+    <script src="./dist/js/utils/helpers.js"></script>
818
+    <script src="./dist/js/auth/apiservice.js"></script>
819
+    <script src="./dist/js/shoppingcart/addtocart.js"></script>
820
+
821
+    <script src="./dist/js/shoppingcart/shoppingcart.js"></script>
822
+    <!-- <script src="./dist/js/productdetails/productdetails.js"></script> -->
823
+    <script src="./dist/js/navbar.js"></script>
824
+    <script src="./dist/js/footer.js"></script>
825
+    <script src="./dist/js/main.js"></script>
826
+    <script src="./dist/js/productdetails/laptopd.js"></script>
827
+
828
+
829
+    <script>
830
+
831
+        let searchTerm = window.location.search.split('?')[1]?.toLowerCase();
832
+
833
+        if (searchTerm) {
834
+            if (searchTerm == 'zeno') {
835
+                $('.fyro_id').addClass('d-none');
836
+                // $('.zeno_id').removeClass('d-none');
837
+                $('.productitemnamefull').html('Zeno');
838
+            } else if (searchTerm == 'fyro') {
839
+                $('.zeno_id').addClass('d-none');
840
+                // $('.fyro_id').removeClass('d-none');
841
+                $('.productitemnamefull').html('Fyro');
842
+            } else if (searchTerm == "aio%20zeno") {
843
+                $('.fyro_id').addClass('d-none');
844
+                // $('.zeno_id').removeClass('d-none');
845
+            } else if (searchTerm == "aio%20fyro") {
846
+                $('.zeno_id').addClass('d-none');
847
+                // $('.fyro_id').removeClass('d-none');
848
+            }
849
+        } else {
850
+            $('.productitemnamefull').parent().addClass('d-none');
851
+        }
852
+
853
+
854
+
855
+        let ram_page = window.location.pathname;
856
+        let loc_3 = ram_page.includes('laptops.html');
857
+        if (loc_3 === true) {
858
+            let imgs = `./dist/assets/imgs/anwi-logo-1.png`;
859
+            $(".main-menu").find("nav ul li a").addClass("text-dark").removeClass("text-white");
860
+            $(".logo-menu-wrap").find(".logo img").attr("src", imgs);
861
+            // $('.same-style').find('svg path').attr('fill', '#fff');
862
+            // $('svg path').attr('fill', '#fff');
863
+        }
864
+        let loc_path = '?FYRO'
865
+        if (window.location.href.includes(loc_path)) {
866
+            $(".sticky-bar").addClass("stick");
867
+            $(".satoshi_font").removeClass("text-white");
868
+            let imgs = `./dist/assets/imgs/anwi-logo-1.png`;
869
+            $(".logo-menu-wrap").find(".logo img").attr("src", imgs);
870
+            $(".main-menu").find("nav ul li a").removeClass("text-dark").addClass("text-white");
871
+            $("iframe").addClass("d-none");
872
+            $(".iframcontainer").addClass("d-none");
873
+            $(".fyro_id").find(".container").addClass("pt-5")
874
+        } else if (window.location.href.includes("?Zeno")) {
875
+            $(".sticky-bar").addClass("stick");
876
+            $(".satoshi_font").removeClass("text-white");
877
+            $("iframe").removeClass("d-none");
878
+            $(".iframcontainer").removeClass("d-none");
879
+            // if($(window).width()<=768){
880
+            //     $("iframe").attr("width","100%").attr("height","300")
881
+            // }
882
+            let imgs = `./dist/assets/imgs/anwi-logo-1.png`;
883
+            $(".main-menu").find("nav ul li a").removeClass("text-dark").addClass("text-white");
884
+            $(".logo-menu-wrap").find(".logo img").attr("src", imgs);
885
+            $('.same-style').find('svg path').attr('fill', '#000');
886
+            $('svg path').attr('fill', '#000');
887
+        }
888
+
889
+        let product_page = window.location.pathname;
890
+        let loc = product_page.includes('?FYRO');
891
+        if (loc === true) {
892
+            $(".fyro_id").addClass("d-none");
893
+        } else {
894
+
895
+            // laptopdetails.html
896
+            // $(".sub_nav_container").removeClass("d-none");
897
+        }
898
+
899
+
900
+        setTimeout(function () {
901
+            $(".header-bottom").addClass("bg-white");
902
+            $(".sticky-bar").addClass("stick");
903
+            $(".main-menu").find("nav a.satoshi_font").removeClass("text-white");
904
+            let imgs = `./dist/assets/imgs/anwi-logo-1.png`;
905
+            $('.same-style').find('svg path').attr('fill', '#000');
906
+            $('svg path').attr('fill', '#000');
907
+            $(".logo-menu-wrap").find(".logo img").attr("src", imgs);
908
+
909
+        }, 1000);
910
+
911
+        // $(".img-magnifier-glass").css("display", "none !important;");
912
+        $(".productDetailsMain").on("mouseenter", function () {
913
+            let magnific_glass = $(".img-magnifier-glass").length;
914
+            if (magnific_glass > 1) {
915
+                for (let i = 1; i < magnific_glass; i++) {
916
+                    let val = i - 1;
917
+                    $(".img-magnifier-glass")[val].remove();
918
+                }
919
+            }
920
+
921
+            $(".img-magnifier-glass").removeClass("d-none")
922
+        })
923
+        $(".productDetailsMain").on("mouseleave", function () {
924
+            $(".img-magnifier-glass").addClass("d-none")
925
+        })
926
+
927
+    </script>
928
+
929
+</body>
930
+
931
+</html>

+ 7
- 1
all.css Просмотреть файл

@@ -23,4 +23,10 @@
23 23
 @import "./dist/css/style.css";
24 24
 @import "./dist/css/fontawesome.all.min.css";
25 25
 @import "./dist/css/fontawesome.min.css";
26
-@import "./dist/toaster/toastr.css";
26
+@import "./dist/toaster/toastr.css";
27
+
28
+@media (min-width:578px) {
29
+    .position-md-absolute {
30
+        position: absolute;
31
+    }
32
+}

Двоичные данные
dist/assets/imgs/banners/anwi-aio-old.png Просмотреть файл


Двоичные данные
dist/assets/imgs/banners/anwi-aio.png Просмотреть файл


Двоичные данные
dist/assets/imgs/banners/anwi-laptop-old (2).png Просмотреть файл


Двоичные данные
dist/assets/imgs/banners/anwi-laptop-old.png Просмотреть файл


Двоичные данные
dist/assets/imgs/banners/anwi-laptop.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/14 inch/10.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/14 inch/11.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/14 inch/22.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/14 inch/4.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/14 inch/5.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/14 inch/66.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/14 inch/Fan2.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/14 inch/trackpad.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/aio/7.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/aio/Renders.zip Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/aio/Renders/1.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/aio/Renders/2.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/aio/Renders/3.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/aio/Renders/4.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/aio/Renders/5.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/aio/Renders/6.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/aio/Renders/7.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/aio/Renders/8.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/aio/aio.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/aio/aio2.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/aio/anwi-aio-battery (1).png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/aio/anwi-aio-battery.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/aio/banner.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/aio/banner1 (2).png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/aio/battery-vector-removebg-preview.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/aio/battery-vector.jpg Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/aio/desktop-power.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/aio/flexibility.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/aio/metal-keyboard.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/aio/ports-asus.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/aio/ports.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/aio/reclaim-your-space.png Просмотреть файл


dist/assets/imgs/zeno/aio/sleek.jpg → dist/assets/imgs/zeno/aio/sleek-asus.jpg Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/aio/sleek1.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/aio/topview.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/chip.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/fans.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/grid.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/slots.png Просмотреть файл


Двоичные данные
dist/assets/imgs/zeno/zero.png Просмотреть файл


+ 0
- 96
dist/js-old/allInOne.js Просмотреть файл

@@ -1,96 +0,0 @@
1
-$('.owl-carousel').owlCarousel({
2
-    // rtl:true,
3
-    // loop:true,
4
-    margin:200,
5
- 
6
-    nav:true,
7
-    URLhashListener:true,
8
-        autoplayHoverPause:true,
9
-        responsiveClass:true,
10
-        responsive:{
11
-            0:{
12
-                items:1,
13
-                nav:true,
14
-                margin:10
15
-            },
16
-
17
-            600:{
18
-                items:2,
19
-                nav:false,
20
-                margin:200
21
-            },  
22
-
23
-            1000:{
24
-                items:3,
25
-                nav:true,
26
-                loop:false,
27
-                margin:10
28
-            },
29
-            1400:{
30
-                items:5,
31
-                nav:true,
32
-                loop:false,
33
-                margin:200
34
-            }
35
-        }
36
-})
37
-
38
-const controller  = new ScrollMagic.Controller();
39
-const exploreSence = new ScrollMagic.Scene({
40
-    triggerElement:".animateHeadingLeft",
41
-    triggerHook:0.5,
42
-    reverse:false
43
-}).setClassToggle('.animateHeadingLeft','addTextanimationLeft').addTo(controller)
44
-const controllerNew  = new ScrollMagic.Controller();
45
-new ScrollMagic.Scene({
46
-    triggerElement:".animateHeadingRight",
47
-    triggerHook:0.9,
48
-    reverse:false
49
-}).setClassToggle('.animateHeadingRight','addTextanimationRight').addTo(controllerNew)
50
-
51
-const controllerThree  = new ScrollMagic.Controller();
52
-new ScrollMagic.Scene({
53
-    triggerElement:".laptoponanimation",
54
-    triggerHook:0.9,
55
-    reverse:false
56
-}).setClassToggle('.laptoponanimation','addOpacity').addTo(controllerThree)
57
-
58
-const controllerFour  = new ScrollMagic.Controller();
59
-new ScrollMagic.Scene({
60
-    triggerElement:".allinOnepc",
61
-    triggerHook:0.9,
62
-    reverse:false
63
-}).setClassToggle('.allinOnepc','addOpacity').addTo(controllerFour)
64
-
65
-
66
-const controllerFive = new ScrollMagic.Controller();
67
-new ScrollMagic.Scene({
68
-    triggerElement:".dualLaptopSlideone",
69
-    triggerHook:0.9,
70
-    reverse:false
71
-}).setClassToggle('.dualLaptopSlideone','addTextanimationRight').addTo(controllerFive)
72
-
73
-const controllerSix = new ScrollMagic.Controller();
74
-new ScrollMagic.Scene({
75
-    triggerElement:".dualLaptopSlideLeftone",
76
-    triggerHook:0.9,
77
-    reverse:false
78
-}).setClassToggle('.dualLaptopSlideLeftone','dualLaptopSlideLeftoneLeft').addTo(controllerSix)
79
-
80
-const controllerSeven = new ScrollMagic.Controller();
81
-new ScrollMagic.Scene({
82
-    triggerElement:".cpuSlideLeftone",
83
-    triggerHook:0.9,
84
-    reverse:false
85
-}).setClassToggle('.cpuSlideLeftone','traslateZero').addTo(controllerSeven)
86
-
87
-const controllerEight = new ScrollMagic.Controller();
88
-new ScrollMagic.Scene({
89
-    triggerElement:".controllerEight",
90
-    triggerHook:0.9,
91
-    reverse:false
92
-}).setClassToggle('.controllerEight','traslateZero').addTo(controllerSeven)
93
-
94
-
95
-
96
-

+ 0
- 347
dist/js-old/auth/apiservice.js Просмотреть файл

@@ -1,347 +0,0 @@
1
-let SERVERNAME = 'https://app.anwisystems.com';
2
-//let SERVERNAME = 'https://anwi.bizgaze.app';
3
-//let SERVERNAME = 'http://beta.bizgaze.com';
4
-//let SERVERNAME = 'https://qa.anwisystems.com';
5
- //let SERVERNAME = 'http://localhost:3088';
6
-
7
-//template
8
-//const STAT = '5af6d904ca334734be706b86b8bfe252';
9
-
10
-//live
11
-const STAT = '484acd68fe014518b73fa54ad674f0b8';
12
-
13
-const USER_AUTH_OKAY = 'USER_AUTH_OKAY';
14
-
15
-
16
-function imgServerNameBuild(path){
17
-    return `https://assets.bizgaze.com/${path}`;
18
-}
19
-
20
-
21
-async function getStatAPIService(url,data={}){
22
-    let config = {
23
-        url,
24
-        method:'get',
25
-        data:data,
26
-        headers: {
27
-            'Authorization': `stat ${STAT}`,
28
-            'Content-Type': 'application/json'
29
-        },
30
-    }
31
-    let response = await axios(config);
32
-
33
-    return response;
34
-}
35
-
36
-async function getAPIService(url,data={}){
37
- 
38
-    const config = {
39
-        url:`${SERVERNAME}/${url}`,
40
-        method: "get",
41
-      };
42
-    let response = await axios(config);
43
-
44
-    return response;
45
-}
46
-
47
-async function postAPIService(url,data={}){
48
-    let config = {
49
-        url:`${SERVERNAME}/${url}`,
50
-        method:'post',
51
-        data:data,
52
-    }
53
-    let response = await axios(config);
54
-
55
-    return response;
56
-}
57
-
58
-
59
-async function postStatAPIService(url,data={}){
60
-    let config = {
61
-        url,
62
-        method:'post',
63
-        data:data,
64
-        headers: {
65
-            'Authorization': `stat ${STAT}`,
66
-            'Content-Type': 'application/json'
67
-        },
68
-    }
69
-    let response = await axios(config);
70
-
71
-    return response;
72
-}
73
-
74
-
75
-
76
-
77
-
78
-async function postAPIServiceLocal(url,data={}){
79
-    let config = {
80
-      url:`${SERVERNAME}/${url}`,
81
-        method:'post',
82
-        data:JSON.stringify(data    ),
83
-        headers: {
84
-            'Authorization': `Basic b67607dd-283e-478e-b2cf-35736e8bad69`,
85
-            'Content-Type': 'application/json'
86
-        },
87
-    }
88
-    let response = await axios(config);
89
-
90
-    return response;
91
-}
92
-async function getAPIServiceLocal(url){
93
-    let config = {
94
-      url:`${SERVERNAME}/${url}`,
95
-        method:'get',
96
-    
97
-        headers: {
98
-            'Authorization': `Basic b67607dd-283e-478e-b2cf-35736e8bad69`,
99
-            'Content-Type': 'application/json'
100
-        },
101
-    }
102
-    let response = await axios(config);
103
-
104
-    return response;
105
-}
106
-
107
-
108
-class API_SERVICE_CLASS{
109
-    baseURL = '';
110
-    token='';
111
-    statToken=STAT;
112
-    Instance = null;
113
-    
114
-    constructor(baseurl){
115
-        this.Instance = this;
116
-        this.baseURL = baseurl;
117
-
118
-        this.getService = this.getService.bind(this);
119
-        this.postService = this.postService.bind(this);
120
-        this.justGetAPIService =this.justGetAPIService.bind(this);
121
-        this.justPostAPIService = this.justPostAPIService.bind(this);
122
-        
123
-    }
124
-
125
-    getService(url,isStat = false){
126
-       return this.baseService(this.buildURL(url),'get',isStat);
127
-    }
128
-
129
-    postService(url,data,isStat = false){
130
-        return this.baseService(this.buildURL(url),'post',isStat,data);
131
-    }
132
-
133
-    
134
-
135
-    async baseService(url,method,isStat,data){
136
-        let isPost = method == 'get' ? false : true;
137
-        const cookieData = COOKIE_HELPER_ACTIONS.getCookie();
138
-       if(!isStat){
139
-        if(!cookieData) return window.location.href = "/"
140
-       }
141
-        let token = isStat ?`stat ${this.statToken}` : `Basic ${cookieData.token}`;
142
-        this.token = token;
143
-        let successResFun = this.buildSuccessResponse;
144
-        let failureResFun = this.buildFailureResponse;
145
-        let config = {
146
-            url,
147
-            method,
148
-            headers:{
149
-               'Authorization': token,
150
-               'Content-Type': 'application/json'
151
-            }
152
-        }
153
-
154
-        if(isPost){
155
-            config['data'] = data;
156
-        }
157
-
158
-        try {
159
-            let response 
160
-           try {
161
-            response = await axios(config);
162
-            if(response.data === true || response.data === false){
163
-                return successResFun(response.data)
164
-            }
165
-            if(response.data.code == '417'){
166
-                // window.location.href = '/index.html'
167
-                return failureResFun(response.data)
168
-            }
169
-            if(response.data.code != '0'){
170
-                return failureResFun(response.data)
171
-            }
172
-
173
-            if(response.data.errors?.length){
174
-                return failureResFun(response.data)
175
-            }
176
-            return successResFun(response.data)
177
-            
178
-           } catch (error) {
179
-            return failureResFun(error)
180
-           }
181
-            
182
-        } catch (error) {
183
-            return failureResFun(error)
184
-        }
185
-
186
-    }
187
-
188
-    buildURL(url){
189
-        return `${this.baseURL}/${url}`;
190
-    }
191
-
192
-    buildSuccessResponse(response){
193
-        return {
194
-            isError : false,
195
-            errorMsg : null,
196
-            response:response,
197
-        }
198
-    }
199
-
200
-    buildFailureResponse(error){
201
-        return {
202
-            isError : true,
203
-            errorMsg : error,
204
-            response:null,
205
-        }
206
-    }
207
-
208
-    async justAPI_BaseService(){
209
-        let isPost = method == 'get' ? false : true;
210
-
211
-    
212
-        let successResFun = this.buildSuccessResponse;
213
-        let failureResFun = this.buildFailureResponse;
214
-        let config = {
215
-            url,
216
-            method,
217
-            headers:{
218
-               
219
-               'Content-Type': 'application/json'
220
-            }
221
-        }
222
-
223
-        if(isPost){
224
-            config['data'] = data;
225
-        }
226
-
227
-        try {
228
-            let response 
229
-           try {
230
-            response = await axios(config);
231
-            if(response.data.code == '417'){
232
-                // window.location.href = '/index.html'
233
-                return failureResFun(response.data)
234
-            }
235
-            if(response.data.code != '0'){
236
-                return failureResFun(response.data)
237
-            }
238
-            return successResFun(response.data)
239
-            
240
-           } catch (error) {
241
-            return failureResFun(error)
242
-           }
243
-            
244
-        } catch (error) {
245
-            return failureResFun(error)
246
-        }
247
-    }
248
-
249
-    justGetAPIService(url){
250
-        return this.justAPI_BaseService('get',url)
251
-    }
252
-    justPostAPIService(url){
253
-        return this.justAPI_BaseService('post',url)
254
-    }
255
-
256
-
257
-    isValid(){
258
-        const cookieData = COOKIE_HELPER_ACTIONS.getCookie();
259
-        if(!cookieData){
260
-          return  justGetAPIService('/Account/Session/Validate')
261
-        }
262
-
263
-      
264
-
265
-
266
-    }
267
-
268
-    
269
-}
270
-
271
-const API_SERVICES = new API_SERVICE_CLASS(SERVERNAME);
272
-
273
-const API_SERVICES_ACTIONS = {
274
-    postAPIService:API_SERVICES.postService,
275
-    getAPIService:API_SERVICES.getService
276
-}
277
-
278
-
279
-// cookie helper
280
-const AUTH = 'AUTH'
281
-
282
-class COOKIE_HELPER_CLASS{
283
-    constructor(){
284
-        this.getCookie = this.getCookie.bind(this);
285
-    }
286
-    getCookie(){
287
-        let cookieVal = Cookies.get(AUTH);
288
-        if(!cookieVal){
289
-            return null;
290
-        }
291
-    return JSON.parse(cookieVal)
292
-    };
293
-    setCookie(value){
294
-        debugger;
295
-        return Cookies.set(AUTH,value)
296
-    };
297
-
298
-    removeCookie(token){
299
-        Cookies.remove(token)
300
-    }
301
-
302
-
303
-    async validateToken(){
304
-        return await API_SERVICES_ACTIONS.getAPIService(`Account/Session/Validate`)
305
-    }
306
-}
307
-
308
-
309
-const COOKIE_HELPER = new COOKIE_HELPER_CLASS();
310
-const COOKIE_HELPER_ACTIONS ={
311
-    getCookie : COOKIE_HELPER.getCookie,
312
-    setCookie :COOKIE_HELPER.setCookie,
313
-    removeAuthCookie:COOKIE_HELPER.removeCookie.bind(null,AUTH)
314
-}
315
-
316
-
317
-function setCookieManual(token){
318
-    Cookies.set(AUTH,{
319
-        token,
320
-        userId:null
321
-    })
322
-}
323
-
324
-async function checkValidAuth(cb,redirect=undefined){
325
-    debugger;
326
-
327
-   document.querySelector('auth-loader').show();
328
-    const res = await COOKIE_HELPER.validateToken();
329
-    if(!res.response){
330
-        if(redirect){
331
-            window.location.href =redirect;
332
-         document.querySelector('auth-loader').hide();
333
-         return;
334
-        }
335
-        window.location.href = '/';
336
-         document.querySelector('auth-loader').hide();
337
-        return;
338
-    }
339
-    
340
-   setTimeout(()=>{
341
-    document.querySelector('auth-loader').hide();
342
-    cb();
343
-   },300);
344
-}
345
-
346
-
347
-// setCookieManual('6eb70fee-35ef-4ca2-95cd-01ebdd616eb1');

+ 0
- 701
dist/js-old/auth/login.js Просмотреть файл

@@ -1,701 +0,0 @@
1
-
2
-
3
-let AUTH_LOGIN_APIS_URL = {
4
-  isUser(user) {
5
-    return `account/getuserbyphoneormail/${user}/${user}`;
6
-  },
7
-  login() {
8
-    return `bizgaze/crm/webapi/crmuserlogin`
9
-  },
10
-  signUp() {
11
-    return `bizgaze/crm/webapi/registercrmuser`;
12
-  },
13
-  resendOTP() {
14
-    return `bizgaze/crm/webapi/ReSendOtp`;
15
-  },
16
-  sendOTP() {
17
-    return `account/sendotp`;
18
-  },
19
-  updatePassword() {
20
-    return `account/UpdatePassword`;
21
-  }
22
-}
23
-
24
-initLogin();
25
-
26
-
27
-
28
-
29
-
30
-function initLogin() {
31
-  
32
-  let userDetails = {
33
-    otpid: null,
34
-    email: null,
35
-    password: null,
36
-    unibaseid: null
37
-  }
38
-  let backotp = null;
39
-  let backOptions = {
40
-    forgotPassword:'forgotPassword',
41
-    EmailnotV:'EmailnotV',
42
-    signUp:'signUp'
43
-  }
44
-  let authloginLoadingBtnAction = {
45
-    addLoading() {
46
-      $('.authloginLoading').addClass('d-none');
47
-      $('.authloginLoadingBtn').removeClass('d-none');
48
-    },
49
-    removeLoading() {
50
-      $('.authloginLoading').removeClass('d-none');
51
-      $('.authloginLoadingBtn').addClass('d-none');
52
-    }
53
-  }
54
-
55
-  let otpLoadingAction = {
56
-    addLoadingOTP() {
57
-      $('.otploading').removeClass('d-none');
58
-      $('.otploadingtext').addClass('d-none');
59
-    },
60
-    removeLoadingOTP() {
61
-      $('.otploading').addClass('d-none');
62
-      $('.otploadingtext').removeClass('d-none');
63
-    }
64
-  }
65
-
66
-  let formErrorAction = {
67
-    addError(message) {
68
-      $('.error_msg').removeClass('d-none');
69
-      $('.error_msg_res').html(message);
70
-    },
71
-    removeClass() {
72
-      $('.error_msg').addClass('d-none');
73
-      $('.error_msg_res').html('');
74
-    }
75
-  }
76
-  function init() {
77
-    const logoauth = $('.logoauth');
78
-    logoauth.removeClass('d-none');
79
-    loginUI();
80
-    //updatePasswordUI();
81
-    //OTP_UI()
82
-  }
83
-
84
-
85
-  function checkPassword(value){
86
-    const specailHelper = containsSpecialCharsHelper(value);
87
-    const isUpperCase = isUpperCaseHelper(value);
88
-    const isLowerCase = isLowerCaseHelper(value);
89
-    const isNumber = isNumberContainsHelper(value);
90
-    const len = value.length>=8;
91
-
92
-    return specailHelper && isUpperCase && isLowerCase && isNumber && len;
93
-
94
-  }
95
-
96
-  init();
97
-
98
-  function updatePasswordUI() {
99
-    formErrorAction.removeClass();
100
-    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>`;
101
-
102
-    $('.authContainerUI').html(html);
103
-    updatepasswordEvents();
104
-  }
105
-
106
-  function updatepasswordEvents() {
107
-
108
-    $('.needs-validation').off('submit');
109
-    loadPasswordListener();
110
-    $('.needs-validation').on('submit', async (event) => {
111
-      event.preventDefault();
112
-      let ele = document.querySelector('.needs-validation')
113
-      if (!ele.checkValidity()) {
114
-        ele.classList.add('was-validated')
115
-        return;
116
-      }
117
-
118
-
119
-      let newPassword = $('#updatepassword').val();
120
-      let passwordConfirm = $('#updateconfirmpassword').val();
121
-      
122
-
123
-      if (newPassword != passwordConfirm) {
124
-        formErrorAction.addError("Password doesn't match");
125
-        return;
126
-      }
127
-
128
-      if(!checkPassword(newPassword)){
129
-        formErrorAction.addError("Password doesn't match");
130
-        return;
131
-      }
132
-
133
-      const forgotpassPayload = {
134
-        username: userDetails.unibaseid,
135
-        password: passwordConfirm,
136
-      };
137
-
138
-      const res = await postAPIService(AUTH_LOGIN_APIS_URL.updatePassword(), forgotpassPayload);
139
-
140
-      console.log(res);
141
-
142
-      if (res.data.message == 'Password Updated Successfully') {
143
-        loginUI();
144
-        toasterHelper("success", "Password updated successfull");
145
-      }
146
-    });
147
-    
148
-
149
-  }
150
-
151
-  function loadPasswordListener(){
152
-    
153
-    $('.passwordvalidui').off().on('keyup',function (e){
154
-      debugger;
155
-      $(this).parent().find('.pswd_info').css('display','block');
156
-      let value = $(this).val();
157
-
158
-      const specailHelper = containsSpecialCharsHelper(value);
159
-      const isUpperCase = isUpperCaseHelper(value);
160
-      const isLowerCase = isLowerCaseHelper(value);
161
-      const isNumber = isNumberContainsHelper(value);
162
-
163
-
164
-      if(isLowerCase){
165
-         $(this).parent().find('#chck_small').addClass('text-decoration-line-through');
166
-      }else{
167
-         $(this).parent().find('#chck_small').removeClass('text-decoration-line-through');
168
-      }
169
-
170
-      if(specailHelper){
171
-         $(this).parent().find('#chck_special').addClass('text-decoration-line-through');
172
-      }else{
173
-         $(this).parent().find('#chck_special').removeClass('text-decoration-line-through');
174
-      }
175
-
176
-      if(isUpperCase){
177
-         $(this).parent().find('#chck_capital').addClass('text-decoration-line-through');
178
-      }else{
179
-         $(this).parent().find('#chck_capital').removeClass('text-decoration-line-through');
180
-      }
181
-
182
-      if(value.length>=8){
183
-         $(this).parent().find('#chck_length').addClass('text-decoration-line-through');
184
-      }else{
185
-         $(this).parent().find('#chck_length').removeClass('text-decoration-line-through');
186
-      }
187
-
188
-      if(isNumber){
189
-         $(this).parent().find('#chck_number').addClass('text-decoration-line-through');
190
-      }else{
191
-         $(this).parent().find('#chck_number').removeClass('text-decoration-line-through');
192
-      }
193
-
194
-
195
-    }).blur(function (e){
196
-      $(this).parent().find('.pswd_info').css('display','none');
197
-    })
198
-
199
-    $('.eyePassword').off();
200
-    $('.eyePassword').click(function (e){
201
-      e.stopPropagation();
202
-     let eyeOpen = '<i class="text-dark fa fa-eye"></i>';
203
-     let eyeClose = '<i class="text-dark fa fa-eye-slash"></i>';
204
-      console.log(this);
205
-      let isClose = $(this).find(`.fa-eye-slash`).length;
206
-      
207
-      if(isClose){
208
-        $(this).html(eyeOpen);
209
-        $(this).parent().find('.passwordvalidui').attr('type','text');
210
-      }else{
211
-        $(this).html(eyeClose);
212
-        $(this).parent().find('.passwordvalidui').attr('type','password');
213
-      }
214
-    });
215
-  }
216
-
217
-  async function resendOTP() {
218
-    otpLoadingAction.addLoadingOTP();
219
-    let payload = {
220
-      "FirstName": "",
221
-      "LastName": "",
222
-      "ContactNumber": "",
223
-      "Email": "",
224
-      "TenantName": "",
225
-      "ContactOrEmail": userDetails.email,
226
-      "IsSignup": false,
227
-      "IsRegisterUser": true,
228
-      "IsForgotPswd": false,
229
-      "UnibaseId": userDetails.unibaseid,
230
-      "OtpId": parseInt(userDetails.otpid),
231
-      "UserOtp": ""
232
-    }
233
-    let res = await postAPIService(AUTH_LOGIN_APIS_URL.resendOTP(), payload);
234
-    res = res.data;
235
-    if (res.code != '0' || res.message != 'OTP resent successfully') {
236
-      return;
237
-    }
238
-    userDetails = { ...userDetails, otpid: res.result };
239
-    otpLoadingAction.removeLoadingOTP();
240
-  }
241
-
242
-  function loadForpasswordsEvents() {
243
-    $('.needs-validation').off('submit');
244
-    $('.needs-validation').on('submit', async (event) => {
245
-      event.preventDefault()
246
-      let ele = document.querySelector('.needs-validation')
247
-      if (!ele.checkValidity()) {
248
-        ele.classList.add('was-validated')
249
-        return;
250
-      }
251
-      debugger;
252
-
253
-      const email = $('#forgotpassword').val();
254
-
255
-      await sendOTPService(email,1,backOptions.forgotPassword);
256
-
257
-      authloginLoadingBtnAction.removeLoading();
258
-
259
-
260
-
261
-
262
-    });
263
-
264
-    $('.btnForgotback').click(function (e) {
265
-      loginUI();
266
-    })
267
-  }
268
-
269
-  function forgotPasswordUIEmail() {
270
-    formErrorAction.removeClass();
271
-    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>`;
272
-    $('.authContainerUI').html(html);
273
-    loadForpasswordsEvents();
274
-  }
275
-
276
-
277
-
278
-  function loginEvents() {
279
-
280
-
281
-    // submit event
282
-    $('.needs-validation').off('submit');
283
-    $('.needs-validation').on('submit', async (event) => {
284
-      event.preventDefault();
285
-      let ele = document.querySelector('.needs-validation')
286
-      if (!ele.checkValidity()) {
287
-        ele.classList.add('was-validated')
288
-        return;
289
-      }
290
-
291
-
292
-      const email = $('#User_Email').val();
293
-
294
-      const isUserURL = AUTH_LOGIN_APIS_URL.isUser(email);
295
-      authloginLoadingBtnAction.addLoading();
296
-      const user = await getAPIService(isUserURL);
297
-      const isUser = user.data.result === null && user.data.message === `Email/Phonenumber doesn't exist`;
298
-
299
-      if (!isUser) {
300
-        loginUser();
301
-      } else {
302
-        signUpUser();
303
-      }
304
-    });
305
-
306
-    // forgot password
307
-    $('.forgotpasswordBtn').click(function (e) {
308
-      forgotPasswordUIEmail();
309
-    });
310
-
311
-  
312
-
313
-    loadPasswordListener();
314
-
315
-    
316
-    
317
-
318
-  }
319
-
320
-
321
-
322
-  async function loginUserService(email, passord) {
323
-    const loginPayload = {
324
-      username: email,
325
-      Password: passord,
326
-      UnibaseId: "",
327
-      RememberMe: false,
328
-    };
329
-
330
-    let res = await postAPIService(AUTH_LOGIN_APIS_URL.login(),
331
-      loginPayload
332
-    );
333
-
334
-    return res;
335
-  }
336
-
337
-  async function loginUser() {
338
-    formErrorAction.removeClass();
339
-    let userEmail = $("#User_Email").val();
340
-    let userPassword = $("#User_password").val();
341
-
342
-
343
-    let res = await loginUserService(userEmail, userPassword);
344
-    res = res.data;
345
-
346
-    let isError = res.code != '0';
347
-
348
-
349
-    userDetails['email'] = userEmail;
350
-    userDetails['password'] = userPassword;
351
-    debugger;
352
-    if (isError) {
353
-      if (res.message === 'Email is not verified') {
354
-        formErrorAction.addError(`<span><span>${res.message}</span> <span class="validemail cursor-pointer"><u>Valid here</u></span></span>`);
355
-
356
-        $('.validemail').off('click')
357
-        $('.validemail').click(async function (e) {
358
-          await sendOTPService(userEmail,2,backOptions.EmailnotV);
359
-          formErrorAction.removeClass();
360
-          authloginLoadingBtnAction.removeLoading();
361
-
362
-        });
363
-        authloginLoadingBtnAction.removeLoading();
364
-        return;
365
-      }
366
-
367
-      formErrorAction.addError(`${res.message}`);
368
-      authloginLoadingBtnAction.removeLoading();
369
-      return;
370
-    }
371
-
372
-    COOKIE_HELPER_ACTIONS.setCookie({
373
-      token: res.result.sessionId,
374
-      userid: res.result.userId,
375
-      ...res.result
376
-    });
377
-
378
-    const isCartAdded = localStorage.getItem(CART_ADD);
379
-          if(isCartAdded){
380
-            localStorage.removeItem(CART_ADD);
381
-            window.location.href = `/selectdelivery.html`;
382
-            return;
383
-          }
384
-    localStorage.setItem(USER_AUTH_OKAY,2);
385
-    window.location.href = '/';
386
-    //authloginLoadingBtnAction.removeLoading();
387
-    console.log(res);
388
-  }
389
-
390
-  async function sendOTPService(userEmail,num=0,option) {
391
-    const isUserURL = AUTH_LOGIN_APIS_URL.isUser(userEmail);
392
-    authloginLoadingBtnAction.addLoading();
393
-    const user = await getAPIService(isUserURL);
394
-    const isUser = user.data.result === null || user.data.message === `Email/Phonenumber doesn't exist`;
395
-    if (isUser) {
396
-      formErrorAction.addError(user.data.message);
397
-      authloginLoadingBtnAction.removeLoading();
398
-      return;
399
-    }
400
-
401
-    const forgotpassPayload = {
402
-      firstname: "",
403
-      lastname: "",
404
-      contactnumber: "",
405
-      email: "",
406
-      tenantname: "",
407
-      contactoremail: user.data.result.email,
408
-      IsSignup: false,
409
-      IsRegisterUser: false,
410
-      IsForgotPswd: true,
411
-      UnibaseId: user.data.result.userName,
412
-      OtpId: 0,
413
-      UserOtp: "",
414
-    };
415
-
416
-    const forgetpassRes = await postAPIService(
417
-      AUTH_LOGIN_APIS_URL.sendOTP(),
418
-      forgotpassPayload
419
-    );
420
-
421
-    userDetails.email = userEmail;
422
-    userDetails.otpid = forgetpassRes.data;
423
-    userDetails.unibaseid = user.data.result.userName;
424
-
425
-    console.log(forgetpassRes, userDetails);
426
-    backotp = option
427
-    OTP_UI(num);
428
- 
429
-  }
430
-
431
-  async function signUpUser() {
432
-    formErrorAction.removeClass();
433
-    let userEmail = $("#User_Email").val();
434
-    let userPassword = $("#User_password").val();
435
-    let checkPasswordValue = checkPassword(userPassword);
436
-    if(!checkPasswordValue){
437
-      authloginLoadingBtnAction.removeLoading();
438
-      formErrorAction.addError('Password must contain one specail letter ,number,small letter, uppercase letter and 8 letters');
439
-      return;
440
-    }
441
-    const userRegistratioNPayload = {
442
-      organizationtypeid: "2",
443
-      organizationid: "0",
444
-      contactid: "0",
445
-      userid: "0",
446
-      username: "0",
447
-      users_phonenumber: "0",
448
-      password: userPassword,
449
-      users_emailaddress: "0",
450
-      emailaddress: userEmail,
451
-      contactname: userEmail.split('@')[0],
452
-      phonenumber: "0",
453
-      branchid: "0",
454
-      tenantname: "Anwi Systems",
455
-      rolename: "Customer Admin",
456
-      currencyid: "0",
457
-      customerformuniqueid: "Bizgaze_Platform_Crm_RegisterCRMUser",
458
-    };
459
-
460
-    let res = await postAPIService(
461
-      AUTH_LOGIN_APIS_URL.signUp(),
462
-      userRegistratioNPayload
463
-    );
464
-
465
-    console.log(res);
466
-
467
-    res = res.data;
468
-    if (res.code != '0') {
469
-      formErrorAction.addError(res.message);
470
-      authloginLoadingBtnAction.removeLoading();
471
-      return;
472
-    }
473
-
474
-    res = res.result;
475
-
476
-    userDetails['otpid'] = res.OtpId;
477
-    userDetails['email'] = userEmail;
478
-    userDetails['password'] = userPassword;
479
-    userDetails['unibaseid'] = res.UnibaseId;
480
-    backotp = backOptions.signUp
481
-    OTP_UI();
482
-  
483
-
484
-  }
485
-
486
-
487
-  function loginUI() {
488
-    formErrorAction.removeClass();
489
-    let html = `  <div class="text-center pb-4">
490
-    <span class="font-weight-600">Login</span> / <span class="font-weight-600">Signup</span>
491
-  </div>
492
-  <form class="row g-3 needs-validation" novalidate>
493
-    <div class="form-floating py-0">
494
-      <input required type="email" class="form-control shadow-none h-50p" id="User_Email" placeholder="Enter Your Email" autocomplete="off">
495
-      <label for="User_Email">Email address</label>
496
-      <div class="invalid-feedback"> Please enter email. </div>
497
-    </div>
498
-    <div class="form-floating position-relative py-0">
499
-      <input required type="password" class="form-control shadow-none h-50p passwordvalidui" id="User_password" placeholder="Enter Your Password" autocomplete="off">
500
-      <span class="position-absolute eyePassword" style=" top: 50%; right: 3%; transform: translateY(-50%);">
501
-        <i class="text-dark fa fa-eye-slash"></i>
502
-      </span>
503
-      <label for="User_password">Password </label>
504
-      <div class="invalid-feedback"> Please enter password. </div>
505
-      <div class="pswd_info" style="display: none;z-index: 1;">
506
-        <p>Password must contain:</p>
507
-        <ul>
508
-        <li id="chck_capital" class="invalid">At least <strong>one capital letter</strong>
509
-        </li>
510
-         <li id="chck_small" class="invalid">At least <strong>one lowercase letter</strong>
511
-        </li>
512
-        <li id="chck_special" class="invalid">At least <strong>one special letter</strong>
513
-        </li>
514
-        <li id="chck_number" class="invalid">At least <strong>one number</strong>
515
-        </li>
516
-        <li id="chck_length" class="invalid">At least <strong>8 characters</strong>
517
-        </li>
518
-        </ul>
519
-      </div>
520
-    </div>
521
-    <div class="fs-7 my-2 satoshi_font text-center"> By continuing, I agree to the Terms of Use & Privacy Policy </div>
522
-    <div class="col-12 mt-0 px-0">
523
-      <button class="btn bg-gradient-anwi text-white w-100 cursor-pointer h-50p" type="submit">
524
-        <div class="spinner-border authloginLoadingBtn d-none" role="status">
525
-          <span class="visually-hidden">Loading...</span>
526
-        </div>
527
-        <span class="authloginLoading h-50p">Continue</span>
528
-      </button>
529
-    </div>
530
-  </form>
531
-  <div class="pt-3 text-center">
532
-    <span class="forgotpasswordBtn cursor-pointer">Forgot password?</span>
533
-  </div>
534
- `;
535
-    $('.authContainerUI').html(html);
536
-    
537
-    loginEvents();
538
-  }
539
-
540
-  function OTP_UI(forgot = 0) {
541
-    formErrorAction.removeClass();
542
-    let html = `<div class="d-flex justify-content-between border-bottom pb-1">
543
-    <span></span>
544
-    <span class="btnForgotback">
545
-      <i class="fa-solid fa-arrow-left"></i>
546
-    </span>
547
-  </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> <div class="btn bg-gradient-anwi w-100 loader-btn" style="display: none;"> <span class="loader"></span> </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">
548
-  </div><span class="otploadingtext">Verfiy OTP</span></a> </div> <div class="resendOTP cursor-pointer text-center pt-4 ">Resend OTP</div> </div></div>`;
549
-    $('.authContainerUI').html(html);
550
-    loadOTPEvents(forgot);
551
-  }
552
-
553
-  async function validOTP(email, id, otp) {
554
-    const validateForgotpass = {
555
-      email: email,
556
-      otpid: id,
557
-      userotp: otp,
558
-    };
559
-
560
-    const res = await postAPIService(
561
-      `hyperfusion/validateotp`,
562
-      validateForgotpass
563
-    );
564
-
565
-    return res;
566
-  }
567
-
568
-  function loadOTPEvents(forgot) {
569
-
570
-
571
-    $('.resendOTP').click(function (e) {
572
-      resendOTP();
573
-    })
574
-
575
-
576
-    $('.btnForgotback').off().click(function(e){
577
-      debugger;
578
-      if(backotp === backOptions.forgotPassword){
579
-        forgotPasswordUIEmail();
580
-      }else if(backotp === backOptions.EmailnotV){
581
-        loginUI();
582
-      }else if(backotp === backOptions.signUp){
583
-        loginUI();
584
-      }
585
-    });
586
-
587
-    $("#email_validate_proceed").click(async function () {
588
-      debugger;
589
-      otpLoadingAction.addLoadingOTP();
590
-      let userotp = '';
591
-      $(".otp-validation .otp-input-group input").each(function () {
592
-        let presVal = $(this).val();
593
-        userotp += presVal;
594
-      });
595
-
596
-      if (userotp.length == 6) {
597
-        // const validateForgotpass = {
598
-        //   email: userDetails.email,
599
-        //   otpid: userDetails.otpid,
600
-        //   userotp: userotp,
601
-        // };
602
-        $('#email_validate_proceed').hide()
603
-        $(".loader-btn").show();
604
-        const validate_email_resopt = await validOTP(userDetails.email, userDetails.otpid, userotp);
605
-
606
-        $(".loader-btn").hide();
607
-        $('#email_validate_proceed').show()
608
-        const Resotp = validate_email_resopt.data.result;
609
-        if (Resotp == "Otp verified successfully") {
610
-          if (forgot == 1) {
611
-            updatePasswordUI();
612
-            return;
613
-          } else if (forgot == 2) {
614
-            loginUI();
615
-            toasterHelper("success", "Email has been verified");
616
-            return;
617
-          }
618
-          const res = await loginUserService(userDetails.email, userDetails.password);
619
-
620
-
621
-          COOKIE_HELPER_ACTIONS.setCookie({
622
-            token: res.data.result.sessionId,
623
-            userid: res.data.result.userId,
624
-            ...res.data.result
625
-          });
626
-          const isCartAdded = localStorage.getItem(CART_ADD);
627
-          if(isCartAdded){
628
-            localStorage.removeItem(CART_ADD);
629
-            window.location.href = `/selectdelivery.html`;
630
-            return;
631
-          }
632
-          localStorage.setItem(USER_AUTH_OKAY,1);
633
-          window.location.href = '/';
634
-          otpLoadingAction.removeLoadingOTP();
635
-        } else {
636
-          // toasterOpts()
637
-          // Command: toastr["error"]("Please enter Valid OTP");
638
-          otpLoadingAction.removeLoadingOTP();
639
-          formErrorAction.addError("Please enter Valid OTP")
640
-  
641
-        }
642
-      }
643
-      else {
644
-        otpLoadingAction.removeLoadingOTP();
645
-        formErrorAction.addError("Please enter Valid OTP")
646
-      }
647
-    });
648
-
649
-    $(".otp-validation .otp-input-group").on("paste", function (p) {
650
-      let data = p.originalEvent.clipboardData.getData("text");
651
-      let dataLength = data.length;
652
-      for (let i = 0; i < dataLength; i++) {
653
-        let input = $(
654
-          '.otp-validation .otp-input-group input[tabindex="' + (i + 1) + '"]'
655
-        );
656
-        input.val(data.charAt(i));
657
-        if (input.val().length >= input.attr("maxlength")) {
658
-          let nextInput = $(
659
-            '.otp-validation .otp-input-group input[tabindex="' +
660
-            (i + 2) +
661
-            '"]'
662
-          );
663
-          if (nextInput) {
664
-            nextInput.focus();
665
-          }
666
-        }
667
-      }
668
-      p.preventDefault();
669
-    });
670
-
671
-    $('.otp-validation .otp-input-group input[type="text"]').on(
672
-      "keyup",
673
-      function (e) {
674
-        if ($(this).val().length >= $(this).attr("maxlength")) {
675
-          if (e.keyCode !== 9 && e.keyCode !== 16) {
676
-            let tabIndex = parseInt($(this).attr("tabindex")) + 1;
677
-            $(
678
-              '.otp-validation .otp-input-group input[tabindex="' +
679
-              $(this).attr("tabindex") +
680
-              '"]'
681
-            ).val($(this).val());
682
-            $(
683
-              '.otp-validation .otp-input-group input[tabindex="' +
684
-              tabIndex +
685
-              '"]'
686
-            ).focus();
687
-          }
688
-        } else {
689
-          if (e.keyCode === 8) {
690
-            let tabIndex = parseInt($(this).attr("tabindex")) - 1;
691
-            $(
692
-              '.otp-validation .otp-input-group input[tabindex="' +
693
-              tabIndex +
694
-              '"]'
695
-            ).focus();
696
-          }
697
-        }
698
-      }
699
-    );
700
-  }
701
-}

+ 0
- 383
dist/js-old/auth/login_11.js Просмотреть файл

@@ -1,383 +0,0 @@
1
-function initLogin() {
2
-  let reg_name, reg_email, reg_number, reg_pwd, reg_otp_email;
3
-  let loginForm = $("#login_form");
4
-  let registerForm = $("#register_form");
5
-
6
-  // document.querySelector('#register_form .otp-input-group input.press').addEventListener("paste", function (p) {
7
-  //   var data = p.clipboardData.getData('text');
8
-  //   var dataLength = data.length;
9
-
10
-  //   for (var i = 0; i < dataLength; i++) {
11
-  //     var input = document.querySelector("#register_form .otp-input-group input[tabindex='" + (i + 1) + "']");
12
-  //     input.value = data.charAt(i);
13
-  //     if (input.value.length >= input.maxLength) {
14
-  //       var nextInput = document.querySelector("#register_form .otp-input-group input[tabindex='" + (i + 2) + "']");
15
-  //       if (nextInput) {
16
-  //         nextInput.focus();
17
-  //       }
18
-  //     }
19
-  //   }
20
-  //   p.preventDefault();
21
-  // });
22
-  // document.querySelectorAll('#register_form .otp-input-group input[type="text"]').forEach(function (input) {
23
-  //   input.addEventListener('keyup', function (e) {
24
-  //     if (this.value.length >= this.maxLength) {
25
-  //       if (e.keyCode !== 9 && e.keyCode !== 16) {
26
-  //         var tabIndex = this.tabIndex + 1;
27
-  //         document.querySelector("#register_form .otp-input-group input[tabindex='" + this.tabIndex + "']").value = this.value;
28
-  //         document.querySelector("#register_form .otp-input-group input[tabindex='" + tabIndex + "']").focus();
29
-  //       }
30
-  //     } else {
31
-  //       if (e.keyCode === 8) {
32
-  //         var tabIndex = this.tabIndex - 1;
33
-  //         document.querySelector("#register_form .otp-input-group input[tabindex='" + tabIndex + "']").focus();
34
-  //       }
35
-  //     }
36
-  //   });
37
-  // });
38
-
39
-  $('#register_form .otp-input-group input.press').on('paste', function (p) {
40
-    var data = p.originalEvent.clipboardData.getData('text');
41
-    var dataLength = data.length;
42
-
43
-    for (var i = 0; i < dataLength; i++) {
44
-      var input = $('#register_form .otp-input-group input[tabindex="' + (i + 1) + '"]');
45
-      input.val(data.charAt(i));
46
-      if (input.val().length >= input.attr('maxlength')) {
47
-        var nextInput = $('#register_form .otp-input-group input[tabindex="' + (i + 2) + '"]');
48
-        if (nextInput) {
49
-          nextInput.focus();
50
-        }
51
-      }
52
-    }
53
-    p.preventDefault();
54
-  });
55
-
56
-  $('#register_form .otp-input-group input[type="text"]').on('keyup', function (e) {
57
-    if ($(this).val().length >= $(this).attr('maxlength')) {
58
-      if (e.keyCode !== 9 && e.keyCode !== 16) {
59
-        var tabIndex = parseInt($(this).attr('tabindex')) + 1;
60
-        $('#register_form .otp-input-group input[tabindex="' + $(this).attr('tabindex') + '"]').val($(this).val());
61
-        $('#register_form .otp-input-group input[tabindex="' + tabIndex + '"]').focus();
62
-      }
63
-    } else {
64
-      if (e.keyCode === 8) {
65
-        var tabIndex = parseInt($(this).attr('tabindex')) - 1;
66
-        $('#register_form .otp-input-group input[tabindex="' + tabIndex + '"]').focus();
67
-      }
68
-    }
69
-  });
70
-
71
-
72
-  loginForm.find("#User_Email,#User_password").keypress(function (e) {
73
-    if (e.which == 13)
74
-      document.getElementById("Login_btn").click();
75
-
76
-  });
77
-
78
-  $("#Login_btn").click(function () {
79
-    loginForm.find(".loader-btn").show();
80
-    $(this).hide();
81
-    let userEmail = loginForm.find("#User_Email").val();
82
-    let userPassword = loginForm.find("#User_password").val();
83
-    let emailInput = loginForm.find(".email-login-inputgroup");
84
-    let passwordInput = loginForm.find(".password-login-inputgroup");
85
-    if (userEmail == "") {
86
-      emailInput.find('#User_Email').addClass('is-invalid');
87
-      emailInput.find('.form-floating').addClass('is-invalid');
88
-      emailInput.find('.invalid-feedback').text('Please enter your email');
89
-      loginForm.find(".loader-btn").hide();
90
-      $(this).show();
91
-
92
-    }
93
-    if (userPassword == "") {
94
-      passwordInput.find('#User_password').addClass('is-invalid');
95
-      passwordInput.find('.form-floating').addClass('is-invalid');
96
-      loginForm.find(".loader-btn").hide();
97
-      $(this).show();
98
-    }
99
-    else {
100
-      emailInput.find('#User_Email').removeClass('is-invalid');
101
-      emailInput.find('.form-floating').removeClass('is-invalid');
102
-      passwordInput.find('#User_password').removeClass('is-invalid');
103
-      passwordInput.find('.form-floating').removeClass('is-invalid');
104
-      if (validateEmail(userEmail)) {
105
-        let port = SERVERNAME
106
-        // let port = "http://localhost:3088";
107
-        let url = `${port}/account/getuserbyphoneormail/${userEmail}/${userEmail}`;
108
-        getDataStatAxios(url, userEmail);
109
-      } else {
110
-        loginForm.find(".loader-btn").hide();
111
-        $(this).show();
112
-        emailInput.find('#User_Email').addClass('is-invalid');
113
-        emailInput.find('.form-floating').addClass('is-invalid');
114
-        emailInput.find('.invalid-feedback').text('Please enter a valid email');
115
-      }
116
-    }
117
-  });
118
-
119
-  async function getDataStatAxios(url, userEmail) {
120
-    const config = {
121
-      url,
122
-      method: "get",
123
-    };
124
-    let response = await axios(config);
125
-    if (response.data.result == null) {
126
-      $('.error-div').text(response.data.message);
127
-    }
128
-    else {
129
-      let userEmail = $("#User_Email").val();
130
-      let userPassword = $("#User_password").val();
131
-      const loginPayload = {
132
-        username: userEmail,
133
-        Password: userPassword,
134
-        UnibaseId: "",
135
-        RememberMe: false,
136
-      };
137
-      const res = await postAPIService(
138
-        `bizgaze/crm/webapi/crmuserlogin`,
139
-        loginPayload
140
-      );
141
-      debugger;
142
-      console.log(res);
143
-      if (res.data.message == "200") {
144
-        // Command: toastr["success"]("Logged in successfully")
145
-        // toasterOpts();
146
-        debugger;
147
-        COOKIE_HELPER_ACTIONS.setCookie({
148
-          token: res.data.result.sessionId,
149
-          userid: res.data.result.userId,
150
-          ...res.data.result
151
-        })
152
-        // setInitLoginLocal();
153
-        // window.localStorage.setItem("Useremail", userEmail);
154
-        //window.localStorage.setItem("Userpassword", userPassword);
155
-        //window.localStorage.setItem("Isloggedin", true);
156
-        const isCartAdded = localStorage.getItem(CART_ADD);
157
-        if(isCartAdded){
158
-          localStorage.removeItem(CART_ADD);
159
-          window.location.href = `/selectdelivery.html`;
160
-          return;
161
-        }
162
-        window.location.href = `/index.html`;
163
-      } else {
164
-        $("#empt_num").removeClass("d-none text-success").text(res.data.message).addClass('text-danger');
165
-        $(".my_avatar").attr("href", "./login.html");
166
-      }
167
-    }
168
-  }
169
-
170
-  // this function will be triggered on new user registration 
171
-  async function userRegistration() {
172
-    reg_form = $('#register_form');
173
-    // reg_name = $("#User_Name").val();
174
-    reg_email = reg_form.find("#User_Email").val();
175
-    // reg_otp_email = $("#User_otp_Email").val();
176
-    // reg_number = $("#user_number").val();
177
-    reg_pwd = reg_form.find("#User_password").val();
178
-    let userName = reg_email.split("@");
179
-    let otpRes = null;
180
-    const userRegistratioNPayload = {
181
-      organizationtypeid: "2",
182
-      organizationid: "0",
183
-      contactid: "0",
184
-      userid: "0",
185
-      username: "0",
186
-      users_phonenumber: "0",
187
-      password: reg_pwd,
188
-      users_emailaddress: "0",
189
-      emailaddress: reg_email,
190
-      contactname: userName[0],
191
-      phonenumber: "0",
192
-      branchid: "0",
193
-      tenantname: "Anwi Systems",
194
-      rolename: "Customer Admin",
195
-      currencyid: "0",
196
-      customerformuniqueid: "Bizgaze_Platform_Crm_RegisterCRMUser",
197
-    };
198
-    $('.spinner-border').removeClass('d-none');
199
-    const res = await postAPIService(
200
-      `bizgaze/crm/webapi/registercrmuser`,
201
-      userRegistratioNPayload
202
-    );
203
-    console.log(res, "register");
204
-    $('.spinner-border').addClass('d-none');
205
-    if (res.data.message == "User Already Exists!") {
206
-      $('.error-div').text('User Already Exists!');
207
-      // $(".useralready_exist").removeClass("d-none");
208
-    } else {
209
-    }
210
-
211
-    $("#proceed").click(async function () {
212
-      let userEnterOtp = "";
213
-      let userEmail = registerForm.find("#User_Email").val();
214
-      $('.otp-input-group input').each(function () {
215
-        let presVal = $(this).val();
216
-        userEnterOtp += presVal;
217
-      })
218
-      console.log(userEnterOtp);
219
-      debugger;
220
-      const userotppayload = {
221
-        email: userEmail,
222
-        otpid: res.data.result.OtpId,
223
-        userotp: userEnterOtp,
224
-      };
225
-      $('.spinner-border').removeClass('d-none');
226
-      otpRes = await postAPIService(
227
-        `bizgaze/crm/webapi/ValidateOtp`,
228
-        userotppayload
229
-      );
230
-      $('.spinner-border').addClass('d-none');
231
-      debugger;
232
-      console.log(otpRes, "otp");
233
-      const verifyotpStatus = otpRes.data.result;
234
-      debugger;
235
-      if (verifyotpStatus == "Otp verified successfully") {
236
-        alert("Account created successfully");
237
-        window.location.href = `/myaccount.html`;
238
-      } else {
239
-        alert("please enter valid otp");
240
-      }
241
-    });
242
-  }
243
-
244
-  // to validate password on keyup in password input field 
245
-  function passwordValidate(pswd) {
246
-    if (pswd.length < 11) {
247
-      $('#chck_length').removeClass('pswd_valid').addClass('pswd_invalid');
248
-    } else {
249
-      $('#chck_length').removeClass('pswd_invalid').addClass('pswd_valid');
250
-    }
251
-    // validate uppercase letter
252
-    if (pswd.match(/[A-Z]/)) {
253
-      $('#chck_capital').removeClass('pswd_invalid').addClass('pswd_valid');
254
-    } else {
255
-      $('#chck_capital').removeClass('pswd_valid').addClass('pswd_invalid');
256
-    }
257
-    //validate special letter
258
-    if (pswd.match(/[!@#$%^&*]/)) {
259
-      $('#chck_special').removeClass('pswd_invalid').addClass('pswd_valid');
260
-    } else {
261
-      $('#chck_special').removeClass('pswd_valid').addClass('pswd_invalid');
262
-    }
263
-    let pswdVal = $('#register_form #User_password').val();
264
-    let pattern = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9]).{11,}$/;
265
-    if (pswdVal.match(pattern)) {
266
-      $('#pswd_info').hide()
267
-    }
268
-    else {
269
-      $('#pswd_info').show()
270
-    }
271
-    //validate number
272
-    if (pswd.match(/\d/)) {
273
-      $('#chck_number').removeClass('pswd_invalid').addClass('pswd_valid');
274
-    } else {
275
-      $('#chck_number').removeClass('pswd_valid').addClass('pswd_invalid');
276
-    }
277
-
278
-  };
279
-
280
-  //you have to use keyup, because keydown will not catch the currently entered value
281
-  $('#register_form #User_password').keyup(function () {
282
-    // set password variable
283
-    var pswd = $(this).val();
284
-    passwordValidate(pswd);
285
-  }).focus(function () {
286
-    let pswdVal = $('#register_form #User_password').val();
287
-    let pattern = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9]).{11,}$/;
288
-    if (pswdVal.match(pattern)) {
289
-      $('#pswd_info').hide()
290
-    }
291
-    else {
292
-      $('#pswd_info').show()
293
-    }
294
-  }).blur(function () {
295
-    $('#pswd_info').hide();
296
-  });
297
-
298
-  // function to validate user entered email 
299
-  function validateEmail(userEmail) {
300
-    var pattern =
301
-      /^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/;
302
-    return $.trim(userEmail).match(pattern) ? true : false;
303
-  }
304
-
305
-  // function to validate user entered password
306
-  function validatepassword(userPassword) {
307
-    var pattern = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9]).{11,}$/;
308
-    return $.trim(userPassword).match(pattern) ? true : false;
309
-  }
310
-
311
-  registerForm.find("#User_Email,#User_password").keypress(function (e) {
312
-    if (e.which == 13)
313
-      document.getElementById("register_btn").click();
314
-
315
-  });
316
-
317
-  // this will be triggered on clicking continue in signup form 
318
-  $("#register_btn").click(function () {
319
-    registerForm.find(".loader-btn").show();
320
-    $(this).hide();
321
-    let userEmail = registerForm.find("#User_Email").val();
322
-    let userPassword = registerForm.find("#User_password").val();
323
-    let emailInput = registerForm.find(".email-login-inputgroup");
324
-    let passwordInput = registerForm.find(".password-login-inputgroup");
325
-    if (userEmail == "") {
326
-      emailInput.find('#User_Email').addClass('is-invalid');
327
-      emailInput.find('.form-floating').addClass('is-invalid');
328
-      emailInput.find('.invalid-feedback').text('Please enter your email');
329
-      registerForm.find(".loader-btn").hide();
330
-      $(this).show();
331
-    }
332
-    if (userPassword == "") {
333
-      passwordInput.find('#User_password').addClass('is-invalid');
334
-      passwordInput.find('.form-floating').addClass('is-invalid');
335
-      registerForm.find(".loader-btn").hide();
336
-      $(this).show();
337
-    }
338
-    else {
339
-      emailInput.find('#User_Email').removeClass('is-invalid');
340
-      emailInput.find('.form-floating').removeClass('is-invalid');
341
-      passwordInput.find('#User_password').removeClass('is-invalid');
342
-      passwordInput.find('.form-floating').removeClass('is-invalid');
343
-      if (validateEmail(userEmail)) {
344
-        $('#register_form .email-password-group').hide();
345
-        $('#register_form .otp-input-group').show();
346
-        $('#register_form .otp-input-group .otp-sent-email').text(userEmail);
347
-        userRegistration();
348
-      } else {
349
-        emailInput.find('#User_Email').addClass('is-invalid');
350
-        emailInput.find('.form-floating').addClass('is-invalid');
351
-        emailInput.find('.invalid-feedback').text('Please enter a valid email');
352
-        registerForm.find(".loader-btn").hide();
353
-        $(this).show();
354
-      }
355
-    }
356
-  });
357
-
358
-  $('#forgotPassword').click(function () {
359
-    $('.login-email-password-div').hide();
360
-    $('.login-forgot-passsword-div').show();
361
-  })
362
-
363
-  function toasterOpts() {
364
-    toastr.options = {
365
-      "closeButton": true,
366
-      "debug": false,
367
-      "newestOnTop": true,
368
-      "progressBar": true,
369
-      "positionClass": "toast-top-center",
370
-      "preventDuplicates": true,
371
-      "showDuration": "300",
372
-      "hideDuration": "1000",
373
-      "timeOut": "3000",
374
-      "extendedTimeOut": "1000",
375
-      "showEasing": "swing",
376
-      "hideEasing": "linear",
377
-      "showMethod": "fadeIn",
378
-      "hideMethod": "fadeOut"
379
-    }
380
-  }
381
-}
382
-
383
-initLogin();

+ 0
- 780
dist/js-old/auth/login_ing.js Просмотреть файл

@@ -1,780 +0,0 @@
1
-function initLogin() {
2
-  // alert('as')
3
-  // Command: toastr["success"]("Logged in successfully")
4
-  // Command: toastr["success"]("My name is Inigo Montoya. You killed my father. Prepare to die!")
5
-
6
-  // toasterOpts();
7
-  let reg_name, reg_email, reg_number, reg_pwd, reg_otp_email;
8
-  let loginForm = $("#login_form");
9
-  let registerForm = $("#register_form");
10
-
11
-  $("#register_form .otp-input-group input.press").on("paste", function (p) {
12
-    var data = p.originalEvent.clipboardData.getData("text");
13
-    var dataLength = data.length;
14
-
15
-    for (var i = 0; i < dataLength; i++) {
16
-      var input = $(
17
-        '#register_form .otp-input-group input[tabindex="' + (i + 1) + '"]'
18
-      );
19
-      input.val(data.charAt(i));
20
-      if (input.val().length >= input.attr("maxlength")) {
21
-        var nextInput = $(
22
-          '#register_form .otp-input-group input[tabindex="' + (i + 2) + '"]'
23
-        );
24
-        if (nextInput) {
25
-          nextInput.focus();
26
-        }
27
-      }
28
-    }
29
-    p.preventDefault();
30
-  });
31
-
32
-  $('#register_form .otp-input-group input[type="text"]').on(
33
-    "keyup",
34
-    function (e) {
35
-      if ($(this).val().length >= $(this).attr("maxlength")) {
36
-        if (e.keyCode !== 9 && e.keyCode !== 16) {
37
-          var tabIndex = parseInt($(this).attr("tabindex")) + 1;
38
-          $(
39
-            '#register_form .otp-input-group input[tabindex="' +
40
-              $(this).attr("tabindex") +
41
-              '"]'
42
-          ).val($(this).val());
43
-          $(
44
-            '#register_form .otp-input-group input[tabindex="' + tabIndex + '"]'
45
-          ).focus();
46
-        }
47
-      } else {
48
-        if (e.keyCode === 8) {
49
-          var tabIndex = parseInt($(this).attr("tabindex")) - 1;
50
-          $(
51
-            '#register_form .otp-input-group input[tabindex="' + tabIndex + '"]'
52
-          ).focus();
53
-        }
54
-      }
55
-    }
56
-  );
57
-
58
-  loginForm.find("#User_Email,#User_password").keypress(function (e) {
59
-    if (e.which == 13) $("#Login_btn").click();
60
-  });
61
-
62
-  $("#Login_btn").click(function () {
63
-    $('.error_msg').hide();
64
-    // loginForm.find(".loader-btn").show();
65
-    let userEmail = loginForm.find("#User_Email").val();
66
-    let userPassword = loginForm.find("#User_password").val();
67
-    let emailInput = loginForm.find(".email-login-inputgroup");
68
-    let passwordInput = loginForm.find(".password-login-inputgroup");
69
-    if (userEmail == "") {
70
-      emailInput.find("#User_Email").addClass("is-invalid");
71
-      emailInput.find(".form-floating").addClass("is-invalid");
72
-      emailInput.find(".invalid-feedback").text("Please enter your email");
73
-      loginForm.find(".loader-btn").hide();
74
-      $(this).show();
75
-    }
76
-    if (userPassword == "") {
77
-      passwordInput.find("#User_password").addClass("is-invalid");
78
-      passwordInput.find(".form-floating").addClass("is-invalid");
79
-      loginForm.find(".loader-btn").hide();
80
-      $(this).show();
81
-    } else {
82
-      emailInput.find("#User_Email").removeClass("is-invalid");
83
-      emailInput.find(".form-floating").removeClass("is-invalid");
84
-      passwordInput.find("#User_password").removeClass("is-invalid");
85
-      passwordInput.find(".form-floating").removeClass("is-invalid");
86
-      if (validateEmail(userEmail)) {
87
-         let port = SERVERNAME
88
-      // let port = "http://localhost:3088";
89
-        let url = `${port}/account/getuserbyphoneormail/${userEmail}/${userEmail}`;
90
-        getDataStatAxios(url, userEmail);
91
-      } else {
92
-        loginForm.find(".loader-btn").hide();
93
-        $(this).show();
94
-        emailInput.find("#User_Email").addClass("is-invalid");
95
-        emailInput.find(".form-floating").addClass("is-invalid");
96
-        emailInput.find(".invalid-feedback").text("Please enter a valid email");
97
-      }
98
-    }
99
-  });
100
-  async function getDataStatAxios(url, userEmail) {
101
-    const config = {
102
-      url,
103
-      method: "get",
104
-    };
105
-    let response = await axios(config);
106
-    if (response.data.result == null) {
107
-      $('.error_msg').show();
108
-      $('.error_msg .error_msg_res').html(`User doesn't exists with the email,  <a href="#" class="alert-link register_sectionbtn" id="register_sectionbtn">Sign Up </a>`);
109
-      $(".register_sectionbtn").click(function(){
110
-   
111
-      
112
-        $(".login_section").css("display","none");
113
-        $(".register_section").css("display","block");
114
-        $(".login_section").find("#User_Email").removeClass("is-invalid");
115
-        $(".login_section").find(".form-floating").removeClass("is-invalid");
116
-        $(".login_section").find("#User_password").removeClass("is-invalid");
117
-        $(".login_section").find(".form-floating").removeClass("is-invalid");
118
-        $('.error_msg').hide();
119
-      });
120
-      // toasterOpts();
121
-      
122
-      // Command: toastr["error"]("Please enter Valid email / password");
123
-    } else {
124
-      let userEmail = $("#User_Email").val();
125
-      let userPassword = $("#User_password").val();
126
-      const loginPayload = {
127
-        username: userEmail,
128
-        Password: userPassword,
129
-        UnibaseId: "",
130
-        RememberMe: false,
131
-      };
132
-      $("#Login_btn").hide();
133
-      $(".loader-btn").show();
134
-      const res = await postAPIService(
135
-        `bizgaze/crm/webapi/crmuserlogin`,
136
-        loginPayload
137
-      );
138
-      debugger;
139
-      console.log(res);
140
-      $(".loader-btn").hide();
141
-      $("#Login_btn").show();
142
-      if (res.data.message == "200") {
143
-        debugger;
144
-        // Command: toastr["success"]("Logged in successfully")
145
-        // toasterOpts();
146
-        COOKIE_HELPER_ACTIONS.setCookie({
147
-          token: res.data.result.sessionId,
148
-          userid: res.data.result.userId,
149
-          ...res.data.result
150
-        });
151
-        // setInitLoginLocal();
152
-        window.localStorage.setItem("Useremail", userEmail);
153
-        //window.localStorage.setItem("Userpassword", userPassword);
154
-        window.localStorage.setItem("Isloggedintoaster", true);
155
-        window.localStorage.setItem("Isloggedin", true);
156
-
157
-        const isCartAdded = localStorage.getItem(CART_ADD);
158
-        if(isCartAdded){
159
-          localStorage.removeItem(CART_ADD);
160
-          window.location.href = `/selectdelivery.html`;
161
-          return;
162
-        }
163
-        
164
-      window.location.href = `./index.html`;
165
-      } else {
166
-        $('.error_msg').show();
167
-        $('.error_msg .error_msg_res').html(res.data.message + ' <a class="validate_mail text-danger"><b>Validate Email</b></a>');
168
-      //   toasterOpts();
169
-      // Command: toastr["error"]()
170
-        /*Email validation*/
171
-  $('.validate_mail').click(function(){
172
-    $(".login_section").hide();
173
-    $(".email-validate-div").show();
174
-    $('.error_msg').hide();
175
-  })
176
-      }
177
-    }
178
-  }
179
-
180
-  // this function will be triggered on new user registration
181
-  async function userRegistration() {
182
-    reg_form = $("#register_form");
183
-    // reg_name = $("#User_Name").val();
184
-    reg_email = reg_form.find("#User_Email").val();
185
-    // reg_otp_email = $("#User_otp_Email").val();
186
-    // reg_number = $("#user_number").val();
187
-    reg_pwd = reg_form.find("#User_password").val();
188
-    let userName = reg_email.split("@");
189
-    let otpRes = null;
190
-    const userRegistratioNPayload = {
191
-      organizationtypeid: "2",
192
-      organizationid: "0",
193
-      contactid: "0",
194
-      userid: "0",
195
-      username: "0",
196
-      users_phonenumber: "0",
197
-      password: reg_pwd,
198
-      users_emailaddress: "0",
199
-      emailaddress: reg_email,
200
-      contactname: userName[0],
201
-      phonenumber: "0",
202
-      branchid: "0",
203
-      tenantname: "Anwi Systems",
204
-      rolename: "Customer Admin",
205
-      currencyid: "0",
206
-      customerformuniqueid: "Bizgaze_Platform_Crm_RegisterCRMUser",
207
-    };
208
-    debugger;
209
-    $('#register_btn').hide()
210
-    $(".loader-btn").show();
211
-    debugger;
212
-    const res = await postAPIService(
213
-      `bizgaze/crm/webapi/registercrmuser`,
214
-      userRegistratioNPayload
215
-    );
216
-    console.log(res, "register");
217
-    $(".loader-btn").hide();
218
-    $('#register_btn').show()
219
-    if (res.data.code == "404" ) {
220
-      // toasterOpts();
221
-      // Command: toastr["error"](res.data.message)
222
-      $('.error_msg').show();
223
-      $('.error_msg .error_msg_res').html(res.data.message);
224
-      return;
225
-    }
226
-     else {
227
-      $("#register_form .email-password-group").hide();
228
-      $("#register_form .register_otp.otp-input-group").show();
229
-    }
230
-  
231
-    $("#proceed").click(async function () {
232
-      let userEnterOtp = "";
233
-      let userEmail = registerForm.find("#User_Email").val();
234
-      $(".otp-input-group input").each(function () {
235
-        let presVal = $(this).val();
236
-        userEnterOtp += presVal;
237
-      });
238
-      console.log(userEnterOtp);
239
-      debugger;
240
-      const userotppayload = {
241
-        email: userEmail,
242
-        otpid: res.data.result.OtpId,
243
-        userotp: userEnterOtp,
244
-      };
245
-      $(".loader-btn").show();
246
-      $('#proceed').hide()
247
-      otpRes = await postAPIService(
248
-        `bizgaze/crm/webapi/ValidateOtp`,
249
-        userotppayload
250
-      );
251
-      $(".loader-btn").hide();
252
-      $('#proceed').show()
253
-      debugger;
254
-      console.log(otpRes, "otp");
255
-      const verifyotpStatus = otpRes.data.result;
256
-      if (verifyotpStatus == "Otp verified successfully") {
257
-        const loginPayload = {
258
-          username: reg_email,
259
-          Password: reg_pwd,
260
-          UnibaseId: "",
261
-          RememberMe: false,
262
-        };
263
-        const res = await postAPIService(
264
-          `bizgaze/crm/webapi/crmuserlogin`,
265
-          loginPayload
266
-        );
267
-        if (res.data.message == "200") {
268
-          debugger;
269
-          // Command: toastr["success"]("Logged in successfully")
270
-          // toasterOpts();
271
-          COOKIE_HELPER_ACTIONS.setCookie({
272
-            token: res.data.result.sessionId,
273
-            userid: res.data.result.userId,
274
-            ...res.data.result
275
-          });
276
-          // setInitLoginLocal();
277
-          window.localStorage.setItem("Useremail", userEmail);
278
-          //window.localStorage.setItem("Userpassword", userPassword);
279
-          window.localStorage.setItem("isaccountCreated", true);
280
-          const isCartAdded = localStorage.getItem(CART_ADD);
281
-          if(isCartAdded){
282
-            localStorage.removeItem(CART_ADD);
283
-            window.location.href = `/selectdelivery.html`;
284
-            return;
285
-          }
286
-          window.location.href = `./index.html`;
287
-        } else {
288
-        //   toasterOpts();
289
-        // Command: toastr["error"](res.data.message)
290
-        $('.error_msg').show();
291
-        $('.error_msg .error_msg_res').html(res.data.message);
292
-        }       
293
-      } else {
294
-        // toasterOpts();
295
-        // Command: toastr["error"]("Please enter Valid OTP");
296
-        $('.error_msg').show();
297
-        $('.error_msg .error_msg_res').html("Please enter Valid OTP");
298
-      }
299
-    });
300
-  }
301
-
302
-  // to validate password on keyup in password input field
303
-  function passwordValidate(pswd) {
304
-    if (pswd.length < 8) {
305
-      $("#chck_length").removeClass("pswd_valid").addClass("pswd_invalid");
306
-    } else {
307
-      $("#chck_length").removeClass("pswd_invalid").addClass("pswd_valid");
308
-    }
309
-    // validate uppercase letter
310
-    if (pswd.match(/[A-Z]/)) {
311
-      $("#chck_capital").removeClass("pswd_invalid").addClass("pswd_valid");
312
-    } else {
313
-      $("#chck_capital").removeClass("pswd_valid").addClass("pswd_invalid");
314
-    }
315
-    //validate special letter
316
-    if (pswd.match(/[!@#$%^&*]/)) {
317
-      $("#chck_special").removeClass("pswd_invalid").addClass("pswd_valid");
318
-    } else {
319
-      $("#chck_special").removeClass("pswd_valid").addClass("pswd_invalid");
320
-    }
321
-    let pswdVal = $("#register_form #User_password").val();
322
-    let pattern = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9]).{8,}$/;
323
-    if (pswdVal.match(pattern)) {
324
-      $(".pswd_info").hide();
325
-    } else {
326
-      $(".pswd_info").show();
327
-    }
328
-    //validate number
329
-    if (pswd.match(/\d/)) {
330
-      $("#chck_number").removeClass("pswd_invalid").addClass("pswd_valid");
331
-    } else {
332
-      $("#chck_number").removeClass("pswd_valid").addClass("pswd_invalid");
333
-    }
334
-  }
335
-
336
-  //you have to use keyup, because keydown will not catch the currently entered value
337
-  $("#register_form #User_password")
338
-    .keyup(function () {
339
-      // set password variable
340
-      var pswd = $(this).val();
341
-      passwordValidate(pswd);
342
-    })
343
-    .focus(function () {
344
-      let pswdVal = $("#register_form #User_password").val();
345
-      let pattern = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9]).{11,}$/;
346
-      if (pswdVal.match(pattern)) {
347
-        $(".pswd_info").hide();
348
-      } else {
349
-        $(".pswd_info").show();
350
-      }
351
-    })
352
-    .blur(function () {
353
-      $(".pswd_info").hide();
354
-    });
355
-
356
-  // function to validate user entered email
357
-  function validateEmail(userEmail) {
358
-    var pattern = /^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/;
359
-    // return $.trim(userEmail).test(pattern) ? true : false;
360
-    return pattern.test(userEmail) ? true : false;
361
-  }
362
-
363
-  // function to validate user entered password
364
-  function validatepassword(userPassword) {
365
-    var pattern =  /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9])(?!.*\s).{8,15}$/;
366
-    // return $.trim(userPassword).test(pattern) ? true : false;
367
-    return pattern.test(userPassword) ? true : false;
368
-  }
369
-
370
-  registerForm.find("#User_Email,#User_password").keypress(function (e) {
371
-    if (e.which == 13) $("#register_btn").click();
372
-  });
373
-
374
-  // this will be triggered on clicking continue in signup form
375
-  $("#register_btn").click(function () {
376
-    $('.error_msg').hide();
377
-    registerForm.find(".loader-btn").show();
378
-    $(this).hide();
379
-    let userEmail = registerForm.find("#User_Email").val();
380
-    let userPassword = registerForm.find("#User_password").val();
381
-    let emailInput = registerForm.find(".email-login-inputgroup");
382
-    let passwordInput = registerForm.find(".password-login-inputgroup");
383
-    if (userEmail == "") {
384
-      emailInput.find("#User_Email").addClass("is-invalid");
385
-      emailInput.find(".form-floating").addClass("is-invalid");
386
-      emailInput.find(".invalid-feedback").text("Please enter your email");
387
-      registerForm.find(".loader-btn").hide();
388
-      $(this).show();
389
-    }
390
-    if (userPassword == "") {
391
-      passwordInput.find("#User_password").addClass("is-invalid");
392
-      passwordInput.find(".form-floating").addClass("is-invalid");
393
-      registerForm.find(".loader-btn").hide();
394
-      $(this).show();
395
-    } else {
396
-      emailInput.find("#User_Email").removeClass("is-invalid");
397
-      emailInput.find(".form-floating").removeClass("is-invalid");
398
-      passwordInput.find("#User_password").removeClass("is-invalid");
399
-      passwordInput.find(".form-floating").removeClass("is-invalid");
400
-      let Email_valid = validateEmail(userEmail);
401
-      let Pwd_valid = validatepassword(userPassword);
402
-      if (Email_valid === true && Pwd_valid === true) {
403
-        userRegistration();
404
-        $("#register_form .otp-input-group .otp-sent-email").text(userEmail);
405
-      } else if(Email_valid === false) {
406
-        emailInput.find("#User_Email").addClass("is-invalid");
407
-        emailInput.find(".form-floating").addClass("is-invalid");
408
-        emailInput.find(".invalid-feedback").text("Please enter a valid email");
409
-        registerForm.find(".loader-btn").hide();
410
-        $(this).show();
411
-      }else if(Pwd_valid === false){
412
-        passwordInput.find("#User_password").addClass("is-invalid");
413
-        passwordInput.find(".form-floating").addClass("is-invalid");
414
-        passwordInput.find(".invalid-feedback").text("Please check the password!");
415
-        registerForm.find(".loader-btn").hide();
416
-        $(this).show();
417
-      }
418
-    }
419
-  });
420
-  $(".pswd_eye").click(function(){
421
-    let eyeClass = $(this).find('svg').hasClass("fa-eye-slash");
422
-    if(eyeClass == true){
423
-         $(this).find('svg').removeClass("fa-eye-slash"); 
424
-        $(this).find('svg').addClass("fa-eye");
425
-        $(this).siblings('input').attr('type','password')
426
-      }else{
427
-        $(this).find('svg').removeClass("fa-eye");
428
-        $(this).find('svg').addClass("fa-eye-slash");  
429
-        $(this).siblings('input').attr('type','text')
430
-    }
431
-})
432
-  
433
-  $("#forgotPassword").click(function () {
434
-    $(".login-email-password-div").hide();
435
-    $(".login-forgot-password-div").show();
436
-  });
437
-  $("#forgot_Password_Back").click(function () {
438
-    $(".login-forgot-password-div").hide();
439
-    $(".login-email-password-div").show();
440
-  });
441
-  $("#forgot_password_submit").click(async function () {
442
-    let forgot_email = $("#forgot_User_Email").val();
443
-    if(forgot_email == ''){
444
-$('#forgot_User_Email').addClass('is-invalid')
445
-$('#forgot_User_Email').after(`<div class="invalid-feedback">Please enter Valid email</div>`);
446
-return
447
-    }
448
-    else{
449
-    debugger;
450
-  let port = SERVERNAME
451
-   // let port = "http://localhost:3088";
452
-    let url = `${port}/account/getuserbyphoneormail/${forgot_email}/${forgot_email}`;
453
-    const config = {
454
-      url,
455
-      method: "get",
456
-    };
457
-    $(".loader-btn").show();
458
-    $('#forgot_password_submit').hide()
459
-    let response = await axios(config);
460
-    debugger;
461
-    console.log(response);
462
-    $(".loader-btn").hide();
463
-    $('#forgot_password_submit').show()
464
-    if (response.data.result != null) {
465
-      debugger;
466
-      console.log(response.data);
467
-      const forgotpassPayload = {
468
-        firstname: "",
469
-        lastname: "",
470
-        contactnumber: "",
471
-        email: "",
472
-        tenantname: "",
473
-        contactoremail: response.data.result.email,
474
-        IsSignup: false,
475
-        IsRegisterUser: false,
476
-        IsForgotPswd: true,
477
-        UnibaseId: response.data.result.userName,
478
-        OtpId: 0,
479
-        UserOtp: "",
480
-      };
481
-      $('#forgot_password_submit').hide()
482
-      $(".loader-btn").show();
483
-      const forgetpassRes = await postAPIService(
484
-        `account/sendotp`,
485
-        forgotpassPayload
486
-      );
487
-      $(".loader-btn").hide();
488
-      console.log(forgetpassRes);
489
-      $(".email-validation").hide();
490
-      $('.user_email').html(forgot_email)
491
-      $(".otp-validation .otp-input-group").show();
492
-      $(".otp-validation .otp-input-group").on("paste", function (p) {
493
-        let data = p.originalEvent.clipboardData.getData("text");
494
-        let dataLength = data.length;
495
-        for (let i = 0; i < dataLength; i++) {
496
-          let input = $(
497
-            '.otp-validation .otp-input-group input[tabindex="' + (i + 1) + '"]'
498
-          );
499
-          input.val(data.charAt(i));
500
-          if (input.val().length >= input.attr("maxlength")) {
501
-            let nextInput = $(
502
-              '.otp-validation .otp-input-group input[tabindex="' +
503
-                (i + 2) +
504
-                '"]'
505
-            );
506
-            if (nextInput) {
507
-              nextInput.focus();
508
-            }
509
-          }
510
-        }
511
-        p.preventDefault();
512
-      });
513
-
514
-      $('.otp-validation .otp-input-group input[type="text"]').on(
515
-        "keyup",
516
-        function (e) {
517
-          if ($(this).val().length >= $(this).attr("maxlength")) {
518
-            if (e.keyCode !== 9 && e.keyCode !== 16) {
519
-              let tabIndex = parseInt($(this).attr("tabindex")) + 1;
520
-              $(
521
-                '.otp-validation .otp-input-group input[tabindex="' +
522
-                  $(this).attr("tabindex") +
523
-                  '"]'
524
-              ).val($(this).val());
525
-              $(
526
-                '.otp-validation .otp-input-group input[tabindex="' +
527
-                  tabIndex +
528
-                  '"]'
529
-              ).focus();
530
-            }
531
-          } else {
532
-            if (e.keyCode === 8) {
533
-              let tabIndex = parseInt($(this).attr("tabindex")) - 1;
534
-              $(
535
-                '.otp-validation .otp-input-group input[tabindex="' +
536
-                  tabIndex +
537
-                  '"]'
538
-              ).focus();
539
-            }
540
-          }
541
-        }
542
-      );
543
-      $("#Forgot_pass_proceed").click(async function () {
544
-        debugger;
545
-        let userotp='';
546
-        $(".otp-validation .otp-input-group input").each(function () {
547
-          let presVal = $(this).val();
548
-          userotp += presVal;
549
-        });
550
-        console.log(userotp);
551
-          const validateForgotpass = {
552
-           email: forgot_email,
553
-            otpid: forgetpassRes.data,
554
-            userotp: userotp,
555
-          };
556
-          $('#Forgot_pass_proceed').hide()
557
-          $(".loader-btn").show();
558
-          const forgetpassResotp = await postAPIService(
559
-            `hyperfusion/validateotp`,
560
-            validateForgotpass
561
-         );
562
-         $(".loader-btn").hide();
563
-         $('#Forgot_pass_proceed').show()
564
-          console.log(forgetpassResotp);
565
-          const Resotp = forgetpassResotp.data.result;
566
-          if (Resotp == "Otp verified successfully") {
567
-            $(".login-forgot-password-details-div").show();
568
-        $(".otp-validation .otp-input-group").hide();
569
-          } else {
570
-            // toasterOpts()
571
-            // Command: toastr["error"]("Please enter Valid OTP");
572
-            $('.error_msg').show();
573
-            $('.error_msg .error_msg_res').html("Please enter Valid OTP");
574
-          }
575
-      });
576
-      $("#forgot_password_details_submit").click(async function () {
577
-        debugger;
578
-        let pswdone =$("#forgot-password-input-one").val();
579
-        let pswdtwo =$("#forgot-password-input-two").val();
580
-        if(pswdone == pswdtwo) {
581
-          const forgotpassPayload = {
582
-            username: response.data.result.userName,
583
-            password: pswdtwo,
584
-          };
585
-          $("#forgot_password_details_submit").hide();
586
-          $(".loader-btn").show();
587
-          const forgetpassRes = await postAPIService(
588
-            `account/UpdatePassword`,
589
-            forgotpassPayload
590
-          );
591
-          console.log(forgetpassRes);
592
-          $(".loader-btn").hide();
593
-          $("#forgot_password_details_submit").show();
594
-          window.localStorage.setItem('Ispasswordupdate',true)
595
-          window.location.href = `./myaccount.html`;
596
-        }else {
597
-          $("#forgot-password-input-one").addClass('is-invalid');
598
-          $("#forgot-password-input-two").addClass('is-invalid')
599
-          $('.password_display').text('Passwords are not matched !').addClass('text-danger')
600
-        }
601
-     
602
-      
603
-      });
604
-    } 
605
-    else{
606
-      $('#forgot_User_Email').addClass('is-invalid');
607
-      $('#forgot_User_Email').after(`<div class="invalid-feedback">Please enter Valid email</div>`);
608
-   
609
-    }
610
-  }
611
-  });
612
-  $(".user_pass")
613
-  .keyup(function () {
614
-    // set password variable
615
-    var pswd = $(this).val();
616
-    passwordValidate(pswd);
617
-    $('.pswd_info').hide();
618
-    $(this).parent().siblings('.pswd_info').show();
619
-  })
620
-  .focus(function () {
621
-    let pswdVal = $(this).val();
622
-    let pattern = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9]).{8,}$/;
623
-    if (pswdVal.match(pattern)) {
624
-      $(this).parent().siblings('.pswd_info').hide();
625
-    } else {
626
-      $(this).parent().siblings('.pswd_info').show();
627
-    }
628
-  })
629
-  .blur(function () {
630
-    $(this).parent().siblings('.pswd_info').hide();
631
-  });
632
-
633
-  function toasterOpts(){
634
-    toastr.options = {
635
-      "closeButton": true,
636
-      "debug": false,
637
-      "newestOnTop": true,
638
-      "progressBar": true,
639
-      "positionClass": "toast-top-center",
640
-      "preventDuplicates": true,
641
-      "onclick": null,
642
-      "showDuration": "300",
643
-      "hideDuration": "1000",
644
-      "timeOut": "5000",
645
-      "extendedTimeOut": "1000",
646
-      "showEasing": "swing",
647
-      "hideEasing": "linear",
648
-      "showMethod": "fadeIn",
649
-      "hideMethod": "fadeOut"
650
-    }
651
-  }
652
-}
653
- $("#email_validate_submit").click(async function () {
654
-  let vaidate_otp;
655
-    let validate_email = $("#email_validation_input").val();
656
-    if(validate_email == ''){
657
-$('#email_validation_input').addClass('is-invalid')
658
-$('#email_validation_input').after(`<div class="invalid-feedback">Please enter Valid email</div>`);
659
-return
660
-    }
661
-    else{
662
-    debugger;
663
-  let port = SERVERNAME;
664
-   // let port = "http://localhost:3088";
665
-    let url = `${port}/account/getuserbyphoneormail/${validate_email}/${validate_email}`;
666
-    const config = {
667
-      url,
668
-      method: "get",
669
-    };
670
-    $(".loader-btn").show();
671
-    $('#email_validate_submit').hide()
672
-    let response = await axios(config);
673
-    debugger;
674
-    console.log(response);
675
-    $(".loader-btn").hide();
676
-    $('#email_validate_submit').show()
677
-    if (response.data.result != null) {
678
-      debugger;
679
-      console.log(response.data);
680
-      const forgotpassPayload = {
681
-        firstname: "",
682
-        lastname: "",
683
-        contactnumber: "",
684
-        email: "",
685
-        tenantname: "",
686
-        contactoremail: response.data.result.email,
687
-        IsSignup: false,
688
-        IsRegisterUser: false,
689
-        IsForgotPswd: true,
690
-        UnibaseId: response.data.result.userName,
691
-        OtpId: 0,
692
-        UserOtp: "",
693
-      };
694
-      $('#email_validate_submit').hide()
695
-      $(".loader-btn").show();
696
-      const validate_email_res = await postAPIService(
697
-        `account/sendotp`,
698
-        forgotpassPayload
699
-      );
700
-      $(".loader-btn").hide();
701
-      vaidate_otp = validate_email_res.data;
702
-      console.log(validate_email_res);
703
-      $(".email-validation").hide();
704
-      $('.user_email').html(validate_email)
705
-      $(".otp-validation .otp-input-group").show();
706
-      $(".otp-validation .otp-input-group").on("paste", function (p) {
707
-        let data = p.originalEvent.clipboardData.getData("text");
708
-        let dataLength = data.length;
709
-        for (let i = 0; i < dataLength; i++) {
710
-          let input = $(
711
-            '.otp-validation .otp-input-group input[tabindex="' + (i + 1) + '"]'
712
-          );
713
-          input.val(data.charAt(i));
714
-          if (input.val().length >= input.attr("maxlength")) {
715
-            let nextInput = $(
716
-              '.otp-validation .otp-input-group input[tabindex="' +
717
-                (i + 2) +
718
-                '"]'
719
-            );
720
-            if (nextInput) {
721
-              nextInput.focus();
722
-            }
723
-          }
724
-        }
725
-        p.preventDefault();
726
-      });
727
-     
728
-    } 
729
-    else{
730
-      $('#email_validation_input').addClass('is-invalid');
731
-      $('#email_validation_input').after(`<div class="invalid-feedback">Please enter Valid email</div>`);
732
-   
733
-    }
734
-  }
735
-  $("#email_validate_proceed").click(async function () {
736
-    debugger;
737
-    let userotp='';
738
-    let validate_email = $("#email_validation_input").val();
739
-    $(".email-validate-div .otp-validation .otp-input-group input").each(function () {
740
-      let presVal = $(this).val();
741
-      userotp += presVal;
742
-    });
743
-  
744
-     if(userotp.length == 6){
745
-      const validateForgotpass = {
746
-        email: validate_email,
747
-         otpid: vaidate_otp,
748
-         userotp: userotp,
749
-       };
750
-       $('#email_validate_proceed').hide()
751
-       $(".loader-btn").show();
752
-       const validate_email_resopt = await postAPIService(
753
-         `hyperfusion/validateotp`,
754
-         validateForgotpass
755
-      );
756
-      
757
-      $(".loader-btn").hide();
758
-      $('#email_validate_proceed').show()
759
-       const Resotp = validate_email_resopt.data.result;
760
-       if (Resotp == "Otp verified successfully") {
761
-       $(".login_section").show();
762
-       $(".otp-validation .otp-input-group").hide();
763
-       $("#email_validate_back").hide();
764
-       $('.error_msg').hide();
765
-       } else {
766
-         // toasterOpts()
767
-         // Command: toastr["error"]("Please enter Valid OTP");
768
-         $('.error_msg').show();
769
-         $('.error_msg .error_msg_res').html("Please enter Valid OTP");
770
-       }
771
-     }
772
-     else{
773
-      $('.error_msg').show();
774
-      $('.error_msg .error_msg_res').html("Please enter OTP");
775
-     }
776
-  });
777
-  });
778
-
779
-
780
-initLogin();

+ 0
- 110
dist/js-old/components/accordion/accordion.js Просмотреть файл

@@ -1,110 +0,0 @@
1
-class AccordionItem extends HTMLElement {
2
-    static get observedAttributes() {
3
-      return ['title'];
4
-    }
5
-  
6
-    #title = '';
7
-    #collapsed = true;
8
-  
9
-    constructor() {
10
-      super();
11
-      this.attachShadow({ mode: 'open' });
12
-    }
13
-  
14
-    connectedCallback() {
15
-      this.update();
16
-      this.shadowRoot.addEventListener('click', this.toggle.bind(this));
17
-    }
18
-  
19
-    attributeChangedCallback(name, oldValue, newValue) {
20
-      if (name === 'title') {
21
-        this.#title = newValue;
22
-      }
23
-      this.update();
24
-    }
25
-  
26
-    toggle() {
27
-      this.#collapsed = !this.#collapsed;
28
-      this.update();
29
-  
30
-      // Dispatch a custom event to notify the parent AccordionElement
31
-      const event = new CustomEvent('accordion-item-toggle', {
32
-        bubbles: true,
33
-        detail: {
34
-          collapsed: this.#collapsed,
35
-          item: this,
36
-        },
37
-      });
38
-      this.dispatchEvent(event);
39
-    }
40
-  
41
-    update() {
42
-      this.shadowRoot.innerHTML = `
43
-        <style>
44
-          .accordion-item {
45
-          
46
-          }
47
-          .accordion-title {
48
-            display: flex;
49
-            justify-content: space-between;
50
-            align-items: center;
51
-            cursor: pointer;
52
-            padding: 0.5rem;
53
-            background-color: white;
54
-          }
55
-          .accordion-title:hover {
56
-            background-color: white;
57
-          }
58
-          .accordion-title::after {
59
-            content: '${this.#collapsed ? '+' : '−'}';
60
-            font-size: 1rem;
61
-            font-weight: bold;
62
-            color: #777;
63
-            margin-left: 0.5rem;
64
-          }
65
-          .accordion-content {
66
-            padding: 0.5rem;
67
-            display: ${this.#collapsed ? 'none' : 'block'};
68
-          }
69
-        </style>
70
-        <div class="accordion-item">
71
-          <div class="accordion-title">${this.#title}</div>
72
-          <div class="accordion-content">
73
-            <slot></slot>
74
-          </div>
75
-        </div>
76
-      `;
77
-    }
78
-  }
79
-
80
-  class AccordionElement extends HTMLElement {
81
-    #activeItem = null;
82
-  
83
-    constructor() {
84
-      super();
85
-      this.attachShadow({ mode: 'open' });
86
-      this.shadowRoot.innerHTML = '<slot></slot>';
87
-      this.addEventListener('accordion-item-toggle', this.handleItemToggle.bind(this));
88
-    }
89
-  
90
-    handleItemToggle(event) {
91
-      const { collapsed, item } = event.detail;
92
-  
93
-      // If the active item is different from the toggled item, collapse the active item
94
-      if (this.#activeItem && this.#activeItem !== item && !collapsed) {
95
-        this.#activeItem.toggle();
96
-      }
97
-
98
-      // Update the active item
99
-      if (!collapsed) {
100
-        this.#activeItem = item;
101
-      } else if (this.#activeItem === item) {
102
-        this.#activeItem = null;
103
-      }
104
-    }
105
-  }
106
-  
107
-  customElements.define('accordion-item', AccordionItem);
108
-  customElements.define('accordion-element', AccordionElement);
109
-  
110
-  

+ 0
- 162
dist/js-old/components/authloader/authloader.js Просмотреть файл

@@ -1,162 +0,0 @@
1
-const template = document.createElement('template');
2
-
3
-template.innerHTML = `
4
-<style>
5
-.authloaderanwi {
6
-    display: flex;
7
-    justify-content: center;
8
-    align-items: center;
9
-}
10
-.wrap{
11
-    position:absolute;
12
-    left:50%;
13
-    width:5em;
14
-    height:5em;
15
-    top:20%;
16
-    transform: translate(-50%,-50%);
17
-  }
18
-  
19
-  .loader{
20
-      transition: all 0.7s ease-in-out;
21
-  
22
-    border:5px solid #ebebeb;
23
-    border-bottom-color:black;
24
-    width: 20px;
25
-    height: 20px;
26
-    border-radius:50%;
27
-    -webkit-font-smoothing: antialiased !important;
28
-    margin:30px 0px;
29
-  }
30
-  
31
-  #lrd1{
32
-      -webkit-animation: spin1 0.5s linear infinite;
33
-  
34
-  }
35
-  #lrd2{
36
-      -webkit-animation: spin2 3s ease-in-out infinite;
37
-  
38
-  }
39
-  #lrd3{
40
-      -webkit-animation: spin3 15s ease-in-out infinite;
41
-  
42
-  }
43
-  
44
-  @keyframes spin1{
45
-    0% {
46
-      transform: rotate(0deg);    
47
-    }
48
-  
49
-  
50
-    100% {
51
-      transform: rotate(360deg); 
52
-    }
53
-  
54
-  }
55
-  @keyframes spin2{
56
-    0% {
57
-      transform: rotate(0deg);    
58
-    }
59
-    50% {
60
-      transform: rotate(1020deg);    
61
-    }
62
-    
63
-    
64
-    100% {
65
-      transform: rotate(720deg); 
66
-    }
67
-  }
68
-  
69
-  @keyframes spin3{
70
-    0% {
71
-      transform: rotate(0deg);    
72
-    }
73
-    40% {
74
-      transform: rotate(1070deg);    
75
-    }
76
-    
77
-    
78
-    100% {
79
-      transform: rotate(6119deg);
80
-      border-bottom-color:#072426 !important;
81
-    }
82
-  }
83
-  
84
-.authloaderanwi {
85
-    height: 100vh;
86
-}
87
-
88
-
89
-.overlayanwiAuth{
90
-    width:100vw;
91
-    height:100vh;
92
-    background:white;
93
-    position:fixed;
94
-    top:0;
95
-    right:0;
96
-    z-index:99999;
97
-    display:none;
98
-}
99
-
100
-</style>
101
-  <div class="overlayanwiAuth ">
102
-  
103
-  <div style="
104
-    position: absolute;
105
-    top: 50%;
106
-    left: 50%;
107
-    transform: translate(-50%, -50%);
108
-    width:40px;
109
-    display:none;
110
-    ">
111
-
112
-    <span>
113
-  <?xml version="1.0" encoding="utf-8"?><svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 122.88 116.31" style="enable-background:new 0 0 122.88 116.31" xml:space="preserve"><g><path d="M4.06,12.67C1.87,12.67,0,10.8,0,8.51c0-2.19,1.87-4.06,4.06-4.06h5.62c0.1,0,0.31,0,0.42,0c3.75,0.1,7.08,0.83,9.88,2.6 c3.12,1.98,5.41,4.99,6.66,9.47c0,0.1,0,0.21,0.1,0.31L27.78,21h2.34V4.12c0-2.27,1.85-4.12,4.12-4.12h21.67 c2.27,0,4.12,1.85,4.12,4.12v10.02c3.42-3.41,8.06-5.5,13.18-5.5c2.22,0,4.36,0.4,6.34,1.12c4.08-4.33,9.87-7.04,16.29-7.04 c10.96,0,20.07,7.88,21.99,18.28h0.99c2.29,0,4.06,1.87,4.06,4.06c0,0.42-0.11,0.83-0.21,1.25l-10.61,42.76 c-0.42,1.87-2.08,3.12-3.95,3.12l0,0H41.51c1.46,5.41,2.91,8.32,4.89,9.68c2.39,1.56,6.56,1.66,13.53,1.56h0.1l0,0h47.03 c2.29,0,4.06,1.87,4.06,4.06c0,2.29-1.87,4.06-4.06,4.06H60.04l0,0c-8.64,0.1-13.94-0.1-18.21-2.91 c-4.37-2.91-6.66-7.91-8.95-16.96l0,0L18.94,18.92c0-0.1,0-0.1-0.1-0.21c-0.62-2.29-1.66-3.85-3.12-4.68 c-1.46-0.94-3.43-1.35-5.72-1.35c-0.1,0-0.21,0-0.31,0H4.06L4.06,12.67L4.06,12.67z M84.38,37.69c0-1.28,1.27-2.32,2.83-2.32 c1.56,0,2.83,1.04,2.83,2.32v15.69c0,1.28-1.27,2.32-2.83,2.32c-1.56,0-2.83-1.04-2.83-2.32V37.69L84.38,37.69z M67.43,37.69 c0-1.28,1.27-2.32,2.83-2.32c1.56,0,2.83,1.04,2.83,2.32v15.69c0,1.28-1.27,2.32-2.83,2.32c-1.56,0-2.83-1.04-2.83-2.32V37.69 L67.43,37.69z M50.49,37.69c0-1.28,1.27-2.32,2.83-2.32c1.56,0,2.83,1.04,2.83,2.32v15.69c0,1.28-1.27,2.32-2.83,2.32 c-1.56,0-2.83-1.04-2.83-2.32V37.69L50.49,37.69z M85.57,13.37c2.31,2.05,4.14,4.66,5.29,7.63h19.85 c-1.68-6.65-7.7-11.58-14.87-11.58C91.89,9.42,88.29,10.91,85.57,13.37L85.57,13.37z M92.21,29.11L92.21,29.11l-38.01,0l0,0H30.07 l0,0l9.26,34.86h65.65l8.63-34.86H92.21L92.21,29.11z M55.31,21c0.11-0.29,0.23-0.57,0.35-0.85V7.2c0-1.64-1.35-2.99-2.99-2.99 H37.71c-1.64,0-2.99,1.34-2.99,2.99V21H55.31L55.31,21z M94.89,96.33c5.52,0,9.99,4.47,9.99,9.99s-4.47,9.99-9.99,9.99 c-5.51,0-9.99-4.47-9.99-9.99S89.38,96.33,94.89,96.33L94.89,96.33L94.89,96.33z M51.09,96.33c5.51,0,9.99,4.47,9.99,9.99 s-4.47,9.99-9.99,9.99s-9.99-4.47-9.99-9.99S45.57,96.33,51.09,96.33L51.09,96.33L51.09,96.33z"/></g>
114
-    </svg>
115
-    </span>
116
-    </div>
117
-<div class="authloaderanwi">
118
-<div class='loader' id='lrd1'></div>
119
-</div>
120
-
121
-  </div>
122
-`
123
-
124
-class AuthLoader extends HTMLElement {
125
-    constructor() {
126
-      super();
127
-      console.log(this.payment);
128
-      this._shadowRoot = this.attachShadow({ 'mode': 'open' });
129
-      this._shadowRoot.appendChild(template.content.cloneNode(true));
130
-      this.show();
131
-    }
132
-
133
-    static get observedAttributes() {
134
-      return ['payment'];
135
-    }
136
-  
137
-    // define getters and setters for attributes
138
-    get payment() {
139
-      return this.getAttribute('payment');
140
-    }
141
-  
142
-    set payment(val) {
143
-      if (val) {
144
-        this.setAttribute('payment', val);
145
-      } else {
146
-        this.removeAttribute('payment');
147
-      }
148
-    }
149
-    
150
-
151
-    show(){
152
-        // $('.overlayanwiAuth').css('display','block');
153
-        this._shadowRoot.querySelector('.overlayanwiAuth').style.display = "block";
154
-    }
155
-
156
-    hide(){
157
-         //$('.overlayanwiAuth').addClass('display','none');
158
-        this._shadowRoot.querySelector('.overlayanwiAuth').style.display = "none";
159
-    }
160
-}
161
-
162
-window.customElements.define('auth-loader', AuthLoader);

+ 0
- 0
dist/js-old/components/authloader/passwordinput.js Просмотреть файл


+ 0
- 256
dist/js-old/components/select/selectcomponent.js Просмотреть файл

@@ -1,256 +0,0 @@
1
-
2
-class SearchableMulti extends HTMLElement {
3
-    static get observedAttributes() {
4
-      return ['placeholder'];
5
-    }
6
-  
7
-    constructor() {
8
-      super();
9
-      this._values = [];
10
-      this._placeholder = 'Search...';
11
-    }
12
-  
13
-    connectedCallback() {
14
-      if(!this._rendered) {
15
-        this._rendered = true;
16
-        this.attachShadow({ mode: 'open' });
17
-        this.shadowRoot.appendChild(this._template());
18
-        this._refresh();
19
-      }
20
-  
21
-      this._nonSelected.addEventListener('click', this);
22
-      this._selected.addEventListener('click', this);
23
-      this._search.addEventListener('keyup', this);
24
-    }
25
-  
26
-    disconnectedCallback() {
27
-      this._nonSelected.removeEventListener('click', this);
28
-      this._selected.removeEventListener('click', this);
29
-      this._search.removeEventListener('keyup', this);
30
-    }
31
-  
32
-    attributeChangedCallback(name, oldVal, newVal) {
33
-      if(name === 'placeholder') {
34
-        this.placeholder = newVal;
35
-      }
36
-    }
37
-  
38
-    get value() {
39
-      return this._values;
40
-    }
41
-  
42
-    get placeholder() {
43
-      return this._placeholder;
44
-    }
45
-  
46
-    set placeholder(val) {
47
-      this._placeholder = val;
48
-      if(this._rendered) {
49
-        this.shadowRoot.querySelector('input').placeholder = val;
50
-      }
51
-    }
52
-  
53
-    handleEvent(ev) {
54
-      var el = ev.target;
55
-      switch(ev.type) {
56
-        case 'click':
57
-          if(el.className === 'item') {
58
-            if(el.parentNode.className === 'non-selected-wrapper') {
59
-              this._nonSelectedClick(el);
60
-            } else {
61
-              this._selectedClick(el);
62
-            }
63
-          }
64
-          break;
65
-        case 'keyup':
66
-          if(ev.keyCode === 32 || ev.keyCode === 13) {
67
-            if(el.className === 'item') {
68
-              if(el.parentNode.className === 'non-selected-wrapper') {
69
-                this._nonSelectedClick(el);
70
-              } else {
71
-                this._selectedClick(el);
72
-              }
73
-              ev.preventDefault();
74
-            }
75
-          } else {
76
-            this._onSearch();
77
-          }
78
-          break;
79
-      }
80
-    }
81
-  
82
-    _nonSelectedClick(el) {
83
-      // Not already selected
84
-      if(!el._selected) {
85
-        this._setSelected(el);
86
-        this.dispatchEvent(new Event('change'));
87
-      }
88
-    }
89
-  
90
-    _setSelected(el) {
91
-      el._option.selected = true;
92
-      var clone = el._selected = el.cloneNode(true);
93
-      clone._nonSelected = el;
94
-      this._selected.appendChild(clone);
95
-      this._values.push(el.dataset.value);
96
-    }
97
-  
98
-    _selectedClick(el) {
99
-      var nonSelected = el._nonSelected;
100
-      var option = nonSelected._option;
101
-      nonSelected._selected = undefined;
102
-      el.parentNode.removeChild(el);
103
-  
104
-      // Deselect the option
105
-      option.selected = false;
106
-  
107
-      // Remove from values
108
-      var idx = this._values.indexOf(el.dataset.value);
109
-      if(idx !== -1) {
110
-        this._values.splice(idx, 1);
111
-        this.dispatchEvent(new Event('change'));
112
-      }
113
-    }
114
-  
115
-    _onSearch() {
116
-      var term = this._search.value.toLowerCase();
117
-  
118
-      function includes(str) {
119
-        return str.toLowerCase().indexOf(term) !== -1;
120
-      }
121
-  
122
-      var nonSelected, d;
123
-      for(var i = 0, len = this._nonSelected.children.length; i < len; i++) {
124
-        nonSelected = this._nonSelected.children[i];
125
-  
126
-        if(term && !includes(nonSelected.dataset.value) &&
127
-          !includes(nonSelected.textContent)) {
128
-          d = 'none';
129
-        } else {
130
-          d = '';
131
-        }
132
-        nonSelected.style.display = d;
133
-        if(nonSelected._selected) {
134
-          nonSelected._selected.style.display = d;
135
-        }
136
-      }
137
-    }
138
-  
139
-    _template() {
140
-      var doc = this.ownerDocument;
141
-      var wrapper = doc.createElement('div');
142
-      wrapper.className = 'wrapper';
143
-  
144
-      var style = doc.createElement('style');
145
-      style.textContent = this._styles();
146
-  
147
-      var input = this._search = doc.createElement('input');
148
-      input.type = 'text';
149
-      input.className = 'search-input';
150
-      input.placeholder = this.placeholder;
151
-  
152
-      var nonSelected = this._nonSelected = doc.createElement('div');
153
-      nonSelected.className = 'non-selected-wrapper';
154
-  
155
-      var selected = this._selected = doc.createElement('div');
156
-      selected.className = 'selected-wrapper';
157
-  
158
-      wrapper.appendChild(style);
159
-      wrapper.appendChild(input);
160
-      wrapper.appendChild(nonSelected);
161
-      wrapper.appendChild(selected);
162
-      return wrapper;
163
-    }
164
-  
165
-    _styles() {
166
-      return `
167
-        :host {
168
-          display: block;
169
-        }
170
-  
171
-        .wrapper {
172
-            border: 1px solid #ccc;
173
-            border-radius: 3px;
174
-            overflow: hidden;
175
-            width: 100%;
176
-        }
177
-  
178
-        .non-selected-wrapper,
179
-        .selected-wrapper {
180
-            box-sizing: border-box;
181
-            display: inline-block;
182
-            height: 200px;
183
-            overflow-y: scroll;;
184
-            padding: 10px;
185
-            vertical-align: top;
186
-            width: 50%;
187
-        }
188
-  
189
-        .non-selected-wrapper {
190
-            background: #fafafa;
191
-            border-right: 1px solid #ccc;
192
-        }
193
-  
194
-        .selected-wrapper {
195
-            background: #fff;
196
-        }
197
-  
198
-        .item {
199
-            cursor: pointer;
200
-            display: block;
201
-            padding: 5px 10px;
202
-        }
203
-  
204
-        .item:hover {
205
-            background: #ececec;
206
-            border-radius: 2px;
207
-        }
208
-  
209
-        .search-input {
210
-            border: 0;
211
-            border-bottom: 1px solid #ccc;
212
-            border-radius: 0;
213
-            display: block;
214
-            font-size: 1em;
215
-            margin: 0;
216
-            outline: 0;
217
-            padding: 10px 20px;
218
-            width: 100%;
219
-        }
220
-  
221
-        .non-selected-wrapper .item.selected {
222
-            opacity: 0.5;
223
-        }
224
-  
225
-        .non-selected-wrapper .row.selected:hover {
226
-            background: inherit;
227
-            cursor: inherit;
228
-        }
229
-      `;
230
-    }
231
-  
232
-    _refresh() {
233
-      this._selected.innerHTML = this._nonSelected.innerHTML = '';
234
-  
235
-      var term = this._search.value;
236
-      var options = [].slice.call(this.querySelectorAll('option'));
237
-      var doc = this.ownerDocument;
238
-  
239
-      options.forEach(function(option){
240
-        var row = doc.createElement('a');
241
-        row.setAttribute('tabindex', "0");
242
-        row.setAttribute('role', 'button');
243
-        row.textContent = option.textContent;
244
-        row.dataset.value = option.value;
245
-        row.className = 'item';
246
-        row._option = option;
247
-        this._nonSelected.appendChild(row);
248
-  
249
-        if(option.selected) {
250
-          this._setSelected(row);
251
-        }
252
-      }.bind(this));
253
-    }
254
-  }
255
-  
256
-  customElements.define('searchable-multi', SearchableMulti);

+ 0
- 6
dist/js-old/fontawesome.all.js
Разница между файлами не показана из-за своего большого размера
Просмотреть файл


+ 0
- 6
dist/js-old/fontawesome.min.js
Разница между файлами не показана из-за своего большого размера
Просмотреть файл


+ 0
- 453
dist/js-old/footer.js Просмотреть файл

@@ -1,453 +0,0 @@
1
-$(document).ready(function () {
2
-    // Footer Js
3
-    let product_pg = $("body").hasClass("product_page");
4
-    let cookie = `<div id="cookieAcceptBar" class="cookieAcceptBar shadow bg-white py-3">
5
-   
6
-    <div class="cookie-content">
7
-        <p class="text-dark">We use cookies to enhance your user experience. please accept our
8
-          <a href="#" class="text-dark">cookies policy</a>
9
-        </p>
10
-        <div class="text-end">
11
-          <button id="btnAcceptCookiePolicy" class="btn btn-dark rounded">Accept</button>
12
-        </div>
13
-    </div>
14
-  </div>`;
15
-    $("#footer-head").after(cookie);
16
-        let footerHtml = `<footer class="footer-wrapper bg-black sec-space-1">
17
-    <div class="aw-mobile-footer d-block d-sm-none">
18
-    <div class="accordion" id="accordionExample">
19
-    <div class="accordion-item">
20
-      <h2 class="accordion-header" id="headingOne">
21
-        <button class="accordion-button bg-black text-white" type="button" data-bs-toggle="collapse" data-bs-target="#collapseOne" aria-expanded="true" aria-controls="collapseOne">
22
-        Products
23
-        </button>
24
-      </h2>
25
-      <div id="collapseOne" class="accordion-collapse collapse show" aria-labelledby="headingOne" data-bs-parent="#accordionExample">
26
-        <div class="accordion-body pt-0">
27
-        <ul class="list-inline ">
28
-         <li class="fs-6">
29
-                <a href="https://anwisystems.com/enterprise" target="_blank" class="text-white fs-9  text-decoration-none satoshi_font">Enterprise</a>
30
-            </li>
31
-            <li class="fs-6">
32
-                <a href="/ramproducts.html" class="text-white fs-9 text-decoration-none satoshi_font">Memory</a>
33
-            </li>
34
-            <li class="fs-6">
35
-                <a href="./storageproducts.html" class="text-white fs-9  text-decoration-none satoshi_font">Storage</a>
36
-            <li class="fs-6">
37
-                <a href="./single-phase-smart-meter-anwi.html" class="text-white fs-9  text-decoration-none satoshi_font">Smart Meter</a>
38
-            </li>
39
-              
40
-      <!--  <li>Monitors </li>
41
-        <li>Peripherals</li>
42
-        <li>Desktops</li>
43
-        <li>Components</li>
44
-        <li>Network Switches</li>
45
-        <li>Network Cards</li>
46
-        <li>Servers</li>
47
-        <li>Storage</li>
48
-        <li>Compact Workstations</li>-->
49
-    </ul>
50
-        </div>
51
-      </div>
52
-    </div>
53
-    <div class="accordion-item">
54
-      <h2 class="accordion-header" id="headingTwo">
55
-        <button class="accordion-button collapsed bg-black text-white" type="button" data-bs-toggle="collapse" data-bs-target="#collapseTwo" aria-expanded="false" aria-controls="collapseTwo">
56
-        Anwi
57
-        </button>
58
-      </h2>
59
-      <div id="collapseTwo" class="accordion-collapse collapse" aria-labelledby="headingTwo" data-bs-parent="#accordionExample">
60
-        <div class="accordion-body pt-0">
61
-        <ul class="list-inline">
62
-            <li><a href="./about.html" class="text-white text-decoration-none satoshi_font">About Us</a></li>
63
-            <li><a href="./press.html" class="text-white text-decoration-none satoshi_font">Press</a></li>
64
-            <li><a href="./becomeamember.html" class="text-white text-decoration-none satoshi_font">Become a Member</a></li>
65
-            <li><a href="#" class="text-white text-decoration-none satoshi_font">Quality Certification</a></li>
66
-            <li><a href="#" class="text-white text-decoration-none satoshi_font">Case Study</a></li>
67
-            <li><a href="#" class="text-white text-decoration-none satoshi_font">Terms</a></li>
68
-            <li><a href="#" class="text-white text-decoration-none satoshi_font">Privacy</a></li>
69
-            <li><a href="#" class="text-white text-decoration-none satoshi_font">Careers</a></li>
70
-        </ul>
71
-        </div>
72
-      </div>
73
-    </div>
74
-   <!-- <div class="accordion-item">
75
-      <h2 class="accordion-header" id="headingThree">
76
-        <button class="accordion-button collapsed bg-black text-white" type="button" data-bs-toggle="collapse" data-bs-target="#collapseThree" aria-expanded="false" aria-controls="collapseThree">
77
-        User Centre
78
-        </button>
79
-      </h2>
80
-      <div id="collapseThree" class="accordion-collapse collapse" aria-labelledby="headingThree" data-bs-parent="#accordionExample">
81
-        <div class="accordion-body pt-0">
82
-        <ul class="list-inline">
83
-        <li>My Quotes</li>
84
-        <li><a href="./support.html" class="text-white text-decoration-none satoshi_font">My Support</a></li>
85
-    </ul>
86
-        </div>
87
-      </div>
88
-    </div>-->
89
-    <div class="accordion-item">
90
-    <h2 class="accordion-header" id="headingFour">
91
-      <button class="accordion-button collapsed bg-black text-white" type="button" data-bs-toggle="collapse" data-bs-target="#collapseFour" aria-expanded="false" aria-controls="collapseFour">
92
-      Support
93
-      </button>
94
-    </h2>
95
-    <div id="collapseFour" class="accordion-collapse collapse" aria-labelledby="headingFour" data-bs-parent="#accordionExample">
96
-      <div class="accordion-body pt-0">
97
-      <ul class="list-inline">
98
-      <li><a href="./contact.html" class="text-white text-decoration-none satoshi_font">Contact Us</a></li>
99
-      <li><a href="./support.html" class="text-white text-decoration-none satoshi_font">Support</a></li>
100
-      <li>Help Centre</li>
101
-      <li>Feedback</li>
102
-  </ul>
103
-      </div>
104
-    </div>
105
-  </div>
106
-    <div class="accordion-item">
107
-    <h2 class="accordion-header" id="headingFive">
108
-      <button class="accordion-button collapsed bg-black text-white" type="button" data-bs-toggle="collapse" data-bs-target="#collapseFive" aria-expanded="false" aria-controls="collapseFive">
109
-      Service
110
-      </button>
111
-    </h2>
112
-    <div id="collapseFive" class="accordion-collapse collapse" aria-labelledby="headingFive" data-bs-parent="#accordionExample">
113
-      <div class="accordion-body pt-0">
114
-      <ul class="list-inline Services_list">
115
-        <li><a href="./services/paymentmethod.html" class="text-white text-decoration-none satoshi_font">Payment Method</a></li>
116
-        <li><a href="./services/shipping-delivary.html" class="text-white text-decoration-none satoshi_font">Shipping &amp; Delivery</a></li>
117
-        <li><a href="./services/return-policy.html" class="text-white text-decoration-none satoshi_font">Return Policy</a></li>
118
-        <li><a href="./services/product-warrenty.html" class="text-white text-decoration-none satoshi_font">Product Warranty</a></li>
119
-        <li><a href="./services/online-help.html" class="text-white text-decoration-none satoshi_font">Online Help</a></li>
120
-        <li><a href="./services/bulk-orders.html" class="text-white text-decoration-none satoshi_font">Bulk Orders</a></li>
121
-  </ul>
122
-      </div>
123
-    </div>
124
-  </div>
125
-    <div class="accordion-item">
126
-    <h2 class="accordion-header" id="headingSix">
127
-      <button class="accordion-button collapsed bg-black text-white" type="button" data-bs-toggle="collapse" data-bs-target="#collapseSix" aria-expanded="false" aria-controls="collapseSix">
128
-      Account
129
-      </button>
130
-    </h2>
131
-    <div id="collapseSix" class="accordion-collapse collapse" aria-labelledby="headingSix" data-bs-parent="#accordionExample">
132
-      <div class="accordion-body pt-0">
133
-      <ul class="list-inline">
134
-      <li>My Shopping Cart</li>
135
-      <li>My Account
136
-      </li>
137
-  </ul>
138
-      </div>
139
-    </div>
140
-  </div>
141
-    <div class="accordion-item">
142
-    <h2 class="accordion-header" id="headingSeven">
143
-      <button class="accordion-button collapsed bg-black text-white" type="button" data-bs-toggle="collapse" data-bs-target="#collapseSeven" aria-expanded="false" aria-controls="collapseSeven">
144
-      Follow Us
145
-      </button>
146
-    </h2>
147
-    <div id="collapseSeven" class="accordion-collapse collapse" aria-labelledby="headingSeven" data-bs-parent="#accordionExample">
148
-      <div class="accordion-body pt-0">
149
-      <ul class="p-0" style="list-style:none;">
150
-      <li>
151
-      <a href="#" target="_blank" class="text-white">
152
-          <ul class="d-flex list-inline">
153
-              <li class="footer-socailImg"><img src="./dist/assets/imgs/footer/twitter.png" alt="logo" class="px-1 img-fluid"></li>
154
-              <li>Twitter</li>
155
-          </ul>
156
-      </a>
157
-  </li>
158
-  <li>
159
-      <a href="https://www.instagram.com/anwi_systems/" target="_blank" class="text-white">
160
-          <ul class="d-flex list-inline">
161
-              <li class="footer-socailImg"><img src="./dist/assets/imgs/footer/instra.png" alt="logo" class="px-1 img-fluid"></li>
162
-              <li>Instagram</li>
163
-          </ul>
164
-      </a>
165
-  </li>
166
-  <li>
167
-      <a href="#" target="_blank" class="text-white">
168
-          <ul class="d-flex list-inline">
169
-              <li class="footer-socailImg"><img src="./dist/assets/imgs/footer/youtube.png" alt="logo" class="px-1 img-fluid"></li>
170
-              <li>Youtube</li>
171
-          </ul>
172
-      </a>
173
-  </li>
174
-  <li>
175
-      <a href="https://www.linkedin.com/company/anwisystems" target="_blank" class="text-white">
176
-          <ul class="d-flex list-inline">
177
-              <li class="footer-socailImg"><img src="./dist/assets/imgs/footer/linkedin.png" alt="logo" class="px-1 img-fluid"></li>
178
-              <li>Linkedin</li>
179
-          </ul>
180
-      </a>
181
-  </li>
182
-  <li>
183
-      <a href="https://www.facebook.com/profile.php?id=100089547520891" target="_blank" class="text-white">
184
-          <ul class="d-flex list-inline">
185
-              <li class="footer-socailImg">
186
-                  <img src="./dist/assets/imgs/footer/facebook.png" alt="logo" class="px-1 img-fluid">
187
-              </li>
188
-              <li>Facebook</li>
189
-          </ul>
190
-      </a>
191
-  </li>
192
-  </ul>
193
-
194
-      </div>
195
-    </div>
196
-  </div>
197
-  
198
-  </div>
199
-  <div class="footer-sub-content ">
200
-  <div class="container">
201
-  <div class="row g-0 align-items-center justify-content-around">
202
-          <div class="col-md-2 col-6 text-white
203
-                  text-center">
204
-              <p class="mb-0">Privacy Policy</p>
205
-          </div>
206
-          <div class="col-md-2 col-6 text-white
207
-                  text-center">
208
-              <p class="mb-0"> Terms of Use Sales
209
-              </p>
210
-          </div>
211
-          <div class="col-md-2 col-6 text-center text-white">
212
-          <p class="mb-0 d-flex align-items-center"><i class="fa fa-envelope"></i> <span class="satoshi_font"><a href="mailto:sales@anwisystems.com" class="satoshi_font text-white ps-1">sales@anwisystems.com </a></span>
213
-          </p>
214
-          </div>
215
-      </div>
216
-  <div class="text-white">
217
-  <p class="mb-0 text-center">Copyright ©2023 Anwisystems pvt ltd.</p>
218
-  <p class="mb-0 text-center">All rights reserved.</p>
219
-</div>
220
-  </div>
221
-</div>
222
-  </div>
223
-    <div class="footer-main-container d-none d-sm-block ">
224
-        <div class="footer-logo py-3
225
-                container"> <img src="./dist/assets/imgs/anwi-logo-2.png" class="img-fluid "  alt="anwi"> </div>
226
-        <hr class="container-fluid
227
-                text-white">
228
-        <div class="footer-content-main-container">
229
-            <div class="footer-content text-white position-relative ">
230
-                <div class="container">
231
-                    <div class="d-flex my-3">
232
-                        <div class="col-lg-3 border-end col-lg-3 mx-3">
233
-                            <h5 class="fw-bold">Products</h5>
234
-                            <ul class="list-inline ">
235
-                             <li class="fs-6">
236
-                <a href="https://anwisystems.com/enterprise" target="_blank" class="text-white fs-9  text-decoration-none satoshi_font">Enterprise</a>
237
-            </li>
238
-                                <li class="fs-6">
239
-                                    <a href="/ramproducts.html" class="text-white fs-9 text-decoration-none satoshi_font">Memory</a>
240
-                                </li>
241
-                                <li class="fs-6">
242
-                                    <a href="./storageproducts.html" class="text-white fs-9  text-decoration-none satoshi_font">Storage</a>
243
-                                </li>
244
-                                <li class="fs-6">
245
-                                     <a href="./single-phase-smart-meter-anwi.html" class="text-white fs-9  text-decoration-none satoshi_font">Smart Meter</a>
246
-                                </li>
247
-                            </ul>
248
-                        </div>
249
-                        <div class="col-lg-3 border-end col-lg-3 mx-3 fs-6">
250
-                            <h5 class="fw-bold">Anwi</h5>
251
-                            <ul class="list-inline">
252
-                                <li class="fs-6"><a href="./about.html" class="text-white text-decoration-none satoshi_font">About Us</a></li>
253
-                                <li class="fs-6"><a href="./press.html" class="text-white text-decoration-none satoshi_font">Press</a></li>
254
-                                <li><a href="./becomeamember.html" class="text-white text-decoration-none satoshi_font">Become a Member</a></li>
255
-                                <li class="fs-6"><a href="#" class="text-white text-decoration-none satoshi_font">Quality Certification</a></li>
256
-                                <li class="fs-6"><a href="#" class="text-white text-decoration-none satoshi_font">Case Study</a></li>
257
-                                <li class="fs-6"><a href="#" class="text-white text-decoration-none satoshi_font">Terms</a></li>
258
-                                <li class="fs-6"><a href="#" class="text-white text-decoration-none satoshi_font">Privacy</a></li>
259
-                                <li class="fs-6"><a href="#" class="text-white text-decoration-none satoshi_font">Careers</a></li>
260
-                            </ul>
261
-                        </div>
262
-                        <div class="col-lg-3 border-end col-lg-3
263
-                                mx-3">
264
-                            <h5 class="fw-bold">Support</h5>
265
-                            <ul class="list-inline">
266
-                                <li><a href="./contact.html" class="text-white text-decoration-none satoshi_font">Contact Us</a></li>
267
-                                <li><a href="./support.html" class="text-white text-decoration-none satoshi_font">Support</a></li>
268
-                                <li>Help Centre</li>
269
-                                <li>Feedback</li>
270
-                            </ul>
271
-                            <h5 class="fw-bold">Service</h5>
272
-                            <ul class="list-inline">
273
-                                <li><a href="./services/paymentmethod.html" class="text-white text-decoration-none satoshi_font">Payment Method</a></li>
274
-                                <li><a href="./services/shipping-delivary.html" class="text-white text-decoration-none satoshi_font">Shipping &amp; Delivery</a></li>
275
-                                <li><a href="./services/return-policy.html" class="text-white text-decoration-none satoshi_font">Return Policy</a></li>
276
-                                <li><a href="./services/product-warrenty.html" class="text-white text-decoration-none satoshi_font">Product Warranty</a></li>
277
-                                <li><a href="./services/online-help.html" class="text-white text-decoration-none satoshi_font">Online Help</a></li>
278
-                                <li><a href="./services/bulk-orders.html" class="text-white text-decoration-none satoshi_font">Bulk Orders</a></li>
279
-                            </ul>
280
-                        </div>
281
-                        <div class="col-lg-3 last-col-footer">
282
-                            <h5 class="fw-bold">Account</h5>
283
-                            <ul class="list-inline">
284
-                            <li>
285
-                            <a href="/shopping-cart.html" class="text-white text-decoration-none satoshi_font"> My Shopping Cart</a>
286
-                           </li>
287
-                      
288
-                            <li>
289
-                            <a href="/myaccount.html" class="text-white text-decoration-none satoshi_font"> My Account</a>
290
-                            
291
-                            </li>
292
-                                </li>
293
-                            </ul>
294
-                            <h5 class="fw-bold">Follow Us</h5>
295
-                            <ul class="p-0" style="list-style:none;">
296
-                                <li>
297
-                                    <a href="#" target="_blank" class="text-white">
298
-                                        <ul class="d-flex list-inline">
299
-                                            <li class="footer-socailImg"><img src="./dist/assets/imgs/footer/twitter.png" alt="logo" class="px-1 img-fluid"></li>
300
-                                            <li>Twitter</li>
301
-                                        </ul>
302
-                                    </a>
303
-                                </li>
304
-                                <li>
305
-                                    <a href="https://www.instagram.com/anwi_systems/" target="_blank" class="text-white">
306
-                                        <ul class="d-flex list-inline">
307
-                                            <li class="footer-socailImg"><img src="./dist/assets/imgs/footer/instra.png" alt="logo" class="px-1 img-fluid"></li>
308
-                                            <li>Instagram</li>
309
-                                        </ul>
310
-                                    </a>
311
-                                </li>
312
-                                <li>
313
-                                    <a href="#" target="_blank" class="text-white">
314
-                                        <ul class="d-flex list-inline">
315
-                                            <li class="footer-socailImg"><img src="./dist/assets/imgs/footer/youtube.png" alt="logo" class="px-1 img-fluid"></li>
316
-                                            <li>Youtube</li>
317
-                                        </ul>
318
-                                    </a>
319
-                                </li>
320
-                                <li>
321
-                                    <a href="https://www.linkedin.com/company/anwisystems" target="_blank" class="text-white">
322
-                                        <ul class="d-flex list-inline">
323
-                                            <li class="footer-socailImg"><img src="./dist/assets/imgs/footer/linkedin.png" alt="logo" class="px-1 img-fluid"></li>
324
-                                            <li>Linkedin</li>
325
-                                        </ul>
326
-                                    </a>
327
-                                </li>
328
-                                <li>
329
-                                    <a href="https://www.facebook.com/profile.php?id=100089547520891" target="_blank" class="text-white">
330
-                                        <ul class="d-flex list-inline">
331
-                                            <li class="footer-socailImg">
332
-                                                <img src="./dist/assets/imgs/footer/facebook.png" alt="logo" class="px-1 img-fluid">
333
-                                            </li>
334
-                                            <li>Facebook</li>
335
-                                        </ul>
336
-                                    </a>
337
-                                </li>
338
-                            </ul>
339
-                        </div>
340
-                    </div>
341
-                </div>
342
-                <div class="footer-rkt position-absolute bottom-0
343
-                        end-0 me-5">
344
-                    <img src="../dist/assets/imgs/Home/rocket-footer.png" alt="footer-rocket-img">
345
-                </div>
346
-            </div>
347
-        </div>
348
-        <hr class="container-fluid text-white">
349
-        <div class="footer-sub-content ">
350
-            <div class="container">
351
-                <div class="row g-0 py-4 align-items-center">
352
-                    <div class="col-md-5 text-white">
353
-                        <p class="mb-0">Copyright ©${new Date().getFullYear()} Anwisystems pvt ltd. All rights reserved.</p>
354
-                    </div>
355
-                    <div class="col-md-2 text-white border-end
356
-                            text-center">
357
-                        <p class="mb-0">Privacy Policy</p>
358
-                    </div>
359
-                    <div class="col-md-2 text-white border-end ps-3
360
-                            text-center">
361
-                        <p class="mb-0"> Terms of Use Sales
362
-                        </p>
363
-                    </div>
364
-                    <div class="col-md-2 text-white ps-5">
365
-                        <p class="mb-0 d-flex align-items-center"><i class="fa fa-envelope"></i> <span class="satoshi_font"><a href="mailto:sales@anwisystems.com" class="satoshi_font text-white ps-1">sales@anwisystems.com </a></span>
366
-                        </p>
367
-                    </div>
368
-
369
-                    <!-- <ul class="d-flex mb-0
370
-                            list-inline align-items-center text-white">
371
-                        <li>Copyright © 2022 Anwisystems pvt ltd. All rights reserved.
372
-                        </li>
373
-                        <li>
374
-                            <ul class="d-flex list-inline
375
-                                    align-items-center
376
-                                    ms-4">
377
-                                <li>Privacy Policy</li>
378
-                                <li class="mx-5">Terms of Use Sales</li>
379
-                                <li><p class="mb-0 d-flex align-items-center"><i class="fa fa-envelope"></i> <span class="satoshi_font"><a href="mailto:sales@anwisystems.com" class="satoshi_font text-white ps-1">sales@anwisystems.com </a></span>
380
-                                </p>
381
-                                </li>
382
-                            </ul>
383
-                        </li>
384
-                    </ul> -->
385
-                </div>
386
-            </div>
387
-        </div>
388
-    </div>
389
-</footer>`;
390
-        $("#footer-head").html(footerHtml);
391
-
392
-
393
-
394
-    $("[alt=footer-rocket-img]").click(function (e) {
395
-        document.documentElement.scrollTop = 0;
396
-    })
397
-    cookiesPolicyPrompt();
398
-
399
-    function cookiesPolicyPrompt() {
400
-        if (Cookies.get('AnwiCookiesPolicy') !== "yes") {
401
-            $("#cookieAcceptBar").fadeIn("slow");
402
-        }
403
-        $('#btnAcceptCookiePolicy').on('click', function () {
404
-            Cookies.set('AnwiCookiesPolicy', 'yes', { expires: 30 });
405
-            $("#cookieAcceptBar").fadeOut("slow");
406
-        });
407
-        let width = $(window).width();
408
-        if (width < 575) {
409
-            $("#cookieAcceptBar").css({
410
-                "max-width": "100%",
411
-            });
412
-        } else if (width <= 1600 && width > 1200) {
413
-            $("#cookieAcceptBar").css({
414
-                "max-width": "28%",
415
-            });
416
-        }
417
-        else if (width <= 1200 && width > 575) {
418
-            $("#cookieAcceptBar").css({
419
-                "max-width": "50%",
420
-            });
421
-        }
422
-    }
423
-
424
-
425
-    //services pages links and sources
426
-
427
-    let $body_pg = $("body").hasClass("services_page");
428
-    let $nav_img ="../dist/assets/imgs/anwi-logo-1.png";
429
-    let $footer_img = "../dist/assets/imgs/anwi-logo-2.png";
430
-    let $scrool_top_img = "../dist/assets/imgs/Home/rocket-footer.png";
431
-
432
-    if($body_pg == true){
433
-        $("#footer-head").find(".footer-logo img").attr("src",$footer_img);
434
-        $(".footer-socailImg").each(function(){
435
-            let $social_img = $(this).find("img").attr("src");
436
-            let $social_img_mbil = $social_img.includes("https://anwisystems.com/");
437
-                if($social_img_mbil === false){
438
-                    let $social_icon_mbil = `.${$social_img}`
439
-                    $(this).find("img").attr("src",$social_icon_mbil);
440
-                }
441
-        })
442
-        $(".list-inline").find("li a").each(function(){
443
-            let $footer_link = $(this).attr("href");
444
-            let $footer_in = $footer_link.includes("https://anwisystems.com/");
445
-            if($footer_in === false){
446
-                if( $footer_link != "#"){
447
-                    let $in_link = `.${$footer_link}`
448
-                    $(this).attr("href", $in_link);
449
-                }
450
-            }
451
-        }) 
452
-    }
453
-});

+ 0
- 73
dist/js-old/form.js Просмотреть файл

@@ -1,73 +0,0 @@
1
-let formHTML = `  <!-- pop up -->
2
-<!-- enquire-form pop up -->
3
-<div class="modal fade style" id="enquireModal" tabindex="-1" role="dialog">
4
-  <div class="modal-dialog modal-dialog-centered modal-dialog-scrollable mx-md-3 mx-3 mx-lg-auto" role="document">
5
-    <div class="wrap-contact100">
6
-      
7
-    <div class="modal-content contact100-form validate-form">
8
-      <div class=" justify-content-center position-absolute btn" style="right:0;z-index:10;">
9
-        <!-- <h5 class="modal-title" id="itemTitle"> </h5> -->
10
-        <button type="button" class="close btn" data-bs-dismiss="modal" >
11
-          <span >&times;</span>
12
-        </button>
13
-      </div>
14
-       <div class="d-flex w-100">
15
-      <div class="enquire-form-img col-md-6 col-lg-6 col-12 d-none d-lg-block d-md-block d-xl-block">
16
-      <img class="h-100 img-fluid" src="../backups/anwi-old-website/assets/img/quote-image.png">
17
-      </div>
18
-  <div class="enquire-form position-relative col-12 col-md-6 col-lg-6 pt-lg-5 pt-md-5 pt-2 px-30">
19
-  <div class="p-3">
20
-     <div>
21
-          <h3 class="contact-page-title">Request a Quote</h3>
22
-    </div>
23
-    <div>
24
-    
25
-                        <div id="pageloader" class="d-none">
26
-                            <img src="http://cdnjs.cloudflare.com/ajax/libs/semantic-ui/0.16.1/images/loader-large.gif"
27
-                                alt="processing..." />
28
-                        </div>
29
-    <form id="anwi-enquire-form" action="">
30
-      <div class="form-floating">
31
-        <input type="text" class="form-control" id="userName" name="name" placeholder="name@example.com"  required>
32
-        <label for="name">Your Name</label>
33
-      </div>
34
-      <div class="form-floating">
35
-        <input type="text" class="form-control" id="itemTitle" name="Title" placeholder="Password" disabled>
36
-        <label for="name">Product</label>
37
-      </div>
38
-      <div class="form-floating ">
39
-        <input type="email" class="form-control" id="floatingEmail" name="email" placeholder="name@example.com"  required>
40
-        <label for="floatingEmail">Email address</label>
41
-      </div>
42
-      <div class="form-floating">
43
-        <input type="number" class="form-control" id="floatingPhonenumber" name="phone" placeholder="Password"  required>
44
-        <label for="floatingPhonenumber">Mobile No</label>
45
-      </div>
46
-      <div class="form-floating ">
47
-        <input type="text" class="form-control" id="floatingSubject" name="subject" placeholder="name@example.com"  required>
48
-        <label for="floatingSubject">Subject</label>
49
-      </div>
50
-      <div class="form-floating">
51
-        <textarea name="contactMessage" class="form-control" id="contactMessage" name="message" placeholder="Your Message" required style="height:100px"></textarea>
52
-        <label for="floatingPassword">Message</label>
53
-      </div>
54
-      <div class="form-floating text-center my-4">
55
-        <button type="submit"  class="bg-black btn btn-lg text-white w-50" >
56
-          submit
57
-        </button>
58
-      </div>
59
-    </form>
60
-    </div>
61
-    </div>
62
-  </div>
63
-</div>
64
-    </div>
65
-    </div>
66
-  </div>
67
-</div>
68
-<!-- end popup -->`;
69
-
70
-$("#enquire").html(formHTML);
71
-$(".close").on("click", function () {
72
-    $("body").removeClass("open");
73
-  });

+ 0
- 177
dist/js-old/index/index.js Просмотреть файл

@@ -1,177 +0,0 @@
1
-function indexInit(){
2
-    function init(){
3
-        initData();
4
-    }
5
-    async function initData(){
6
-        const ids = await getProductIdService();
7
-        if(!ids) return;
8
-        let dataAcc = [];
9
-        for(let i=0;i<ids.length;i++){
10
-            let currId = ids[i];
11
-            let {productid} = currId;
12
-
13
-            let resData =await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/products/itemtagscombination/productid/${productid}`,true); 
14
-
15
-            if(resData.isError){
16
-                alert(resData.errorMsg.message);
17
-                return;
18
-            }
19
-    
20
-            let res = resData.response;
21
-                
22
-            res = JSON.parse(res.result);
23
-    
24
-            dataAcc = [...dataAcc,...res.slice(0, 4)];
25
-
26
-        }
27
-
28
-   
29
-
30
-        shuffleArray(dataAcc);
31
-        let html = '';
32
-       for(let i=0;i<dataAcc.length;i++){
33
-        html += getCardHTML({...dataAcc[i],img:dataAcc[i].itemimageurl})
34
-       }
35
-
36
-       $('.slider-hero').html(html);
37
-       
38
-
39
-        
40
-        initSlider();
41
-
42
-        $('.topproductbtn').click(function (e){
43
-            let productid = $(e.target).data('productid');
44
-            let itemid = $(e.target).data('itemid');
45
-            let name =  $(e.target).data('name');
46
-            debugger;
47
-            window.location.href = `/productdetails.html?productId=${productid}#itemid=${itemid}`;
48
-        });
49
-    }
50
-
51
-    function initSlider(){
52
-        $('.slider-hero').slick({
53
-            dots: false,
54
-            lazyLoad: 'ondemand',
55
-            // autoplay: true,
56
-            // autoplaySpeed: 1000,
57
-            slidesToShow: 4,
58
-            slidesToScroll: 1,
59
-            responsive: [
60
-                {
61
-                  breakpoint: 1024,
62
-                  settings: {
63
-                    slidesToShow: 3,
64
-                    slidesToScroll: 3,
65
-                    infinite: true,
66
-                  }
67
-                },
68
-                {
69
-                  breakpoint: 600,
70
-                  settings: {
71
-                    slidesToShow: 2,
72
-                    slidesToScroll: 2
73
-                  }
74
-                },
75
-                {
76
-                  breakpoint: 480,
77
-                  settings: {
78
-                    slidesToShow: 1,
79
-                    slidesToScroll: 1
80
-                  }
81
-                },
82
-                {
83
-                    breakpoint: 1199,
84
-                    settings: {
85
-                        slidesToShow: 5,
86
-                        slidesToScroll: 1,
87
-                    }
88
-                },
89
-                {
90
-                    breakpoint: 991,
91
-                    settings: {
92
-                        slidesToShow: 3,
93
-                        slidesToScroll: 1,
94
-                    }
95
-                },
96
-                {
97
-                    breakpoint: 767,
98
-                    settings: {
99
-                        slidesToShow: 3,
100
-                        slidesToScroll: 1,
101
-                    }
102
-                },
103
-                {
104
-                    breakpoint: 575,
105
-                    settings: {
106
-                        autoplay: true,
107
-                        slidesToShow: 3,
108
-                    }
109
-                }
110
-                // You can unslick at a given breakpoint now by adding:
111
-                // settings: "unslick"
112
-                // instead of a settings object
113
-            ]
114
-        });
115
-
116
-        $(".slick-prev").addClass("btn text-white");
117
-        $(".slick-next").addClass("btn text-white");
118
-        $(".slick-prev").html("←");
119
-        $(".slick-next").html("→")
120
-    }
121
-    function getCardHTML({itemname,img,sku,itemid,productid}){
122
-        let defaultImg = img ? imgServerNameBuild(img): `./dist/assets/imgs/nophoto.png`;
123
-        return ` <div class="card h-100 mx-1 text-center bg-gray-4 border-0">
124
-        <div class="card-body h-100 pt-5 px-5">
125
-            <div class="d-flex flex-column h-100 justify-content-between">
126
-                <img src="${defaultImg}" class="w-100"/>
127
-                <p class="mb-0 fs-7 py-2">${itemname}</p>
128
-                <p class="fw-600 text-primary fs-9 mb-0 topproductbtn" data-name="${itemname}" data-sku="${sku}" data-productid="${productid}" data-itemid="${itemid}">Buy Now</p>
129
-            </div>
130
-        </div>
131
-    </div>`;
132
-        return ` <div class="card h-100 mx-1 text-center bg-gray-4 border-0 top_sell">
133
-        <div class="card-body">
134
-            <img src="${defaultImg}" class="w-100"/>
135
-            <p class="mb-0 fs-7 py-2">${itemname}</p>
136
-             <p class="fw-600 text-primary mb-0" data-sku="${sku}" data-productid="${productid}" data-itemid="${itemid}">Buy Now</p>
137
-             
138
-        </div>
139
-    </div>`;
140
-    }
141
-
142
-    function getProductIdService(){
143
-        return new Promise(async (reslove,reject)=>{
144
-            let resData =await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/products/getallproducts`,true); 
145
-           if(resData.isError){
146
-                alert(resData.errorMsg.message);
147
-                return;
148
-            }
149
-
150
-            let res = resData.response;
151
-                
152
-            res = JSON.parse(res.result);
153
-
154
-          
155
-            let resultItem = [];
156
-
157
-            for(let i=0;i<res.length;i++){
158
-                if(resultItem.length == 2) break;
159
-                if(res[i].productname.includes('RAM ORA')||res[i].productname.includes('SSD ORA')){
160
-                    resultItem.push(res[i]);
161
-                  
162
-                }
163
-            }
164
-          
165
-            return reslove(resultItem)
166
-
167
-        });
168
-    }
169
-
170
-    
171
-
172
-    init();
173
-
174
-    
175
-}
176
-
177
-indexInit();

+ 0
- 2
dist/js-old/jquery.min.js
Разница между файлами не показана из-за своего большого размера
Просмотреть файл


+ 0
- 23
dist/js-old/json.js Просмотреть файл

@@ -1,23 +0,0 @@
1
-let product_detail = [
2
-  {
3
-    Name:"RAM",
4
-    Types:{
5
-        ProductType:"ORA",
6
-        ProductName:"DDR4 DESKTOP Memory",
7
-        ProductDesc:"ORA, Desktop RAM",
8
-        ProductSize:"16GB DDR4, 3200 Mhz",
9
-        ProductImage:"",
10
-        Product_features:{
11
-            memorysize:"32GB Kit (2 x 16GB)",
12
-            Frequency:"DDR5-6000 MT/s",
13
-            timing:"40-40-40-76 (XMP 6000MT/s)",
14
-            performance:"XMP 3.0",
15
-            warranty:"5 years",
16
-            intel:"Intel Z690 certificated",
17
-            productdesign:"Copper-aluminum composite heat spreaders with nano carbon coating to keep performance",
18
-            industrialStandards:"Comply with industrial standard JEDEC DDR5",
19
-            support:"RGB Fusion 2.0 Supported",
20
-        }
21
-    }
22
-  }
23
-];

+ 0
- 14
dist/js-old/laptopmuti.js Просмотреть файл

@@ -1,14 +0,0 @@
1
-function callGallery(){
2
-    $('.PO_gallery_box').each(function(i,el){
3
-        $(el).click(function(e){
4
-            const src = $(e.target).attr('src');
5
-            $('.PO_gallery_display_img').attr('src',src)
6
-        });
7
-    });
8
-}
9
-
10
-function callMain(){
11
-    callGallery();
12
-}
13
-
14
-callMain();

+ 0
- 18
dist/js-old/localstorage/checkout.js Просмотреть файл

@@ -1,18 +0,0 @@
1
-const ALL_ADDRESS_LOCAL = 'ALL_ADDRESS_LOCAL';
2
-
3
-function setAddressLocal(payload){
4
-    let addressList = getAddressLocal();
5
-    addressList = addressList?addressList:[];
6
-    localStorage.setItem(ALL_ADDRESS_LOCAL,JSON.stringify({...addressList,...payload}))
7
-}
8
-
9
-function getAddressLocal(){
10
-    let res =  localStorage.getItem(ALL_ADDRESS_LOCAL)
11
-    if(!res) return null;
12
-
13
-    return JSON.parse(res);
14
-}
15
-
16
-function removeAddressLocal(){
17
-    localStorage.removeItem(ALL_ADDRESS_LOCAL);
18
-}

+ 0
- 14
dist/js-old/localstorage/loginauthlocal.js Просмотреть файл

@@ -1,14 +0,0 @@
1
-const INIT_LOGIN_AUTH = 'INIT_LOGIN_AUTH';
2
-
3
-function setInitLoginLocal(){
4
-    localStorage.setItem(INIT_LOGIN_AUTH,true);
5
-}
6
-
7
-function getInitLoginLocal(){
8
-    return JSON.parse(localStorage.getItem(INIT_LOGIN_AUTH));
9
-}
10
-
11
-
12
-function removeInitLoginLocal(){
13
-    localStorage.setItem(INIT_LOGIN_AUTH,false);
14
-}

+ 0
- 1658
dist/js-old/main.js
Разница между файлами не показана из-за своего большого размера
Просмотреть файл


+ 0
- 377
dist/js-old/myaccount/Address.js Просмотреть файл

@@ -1,377 +0,0 @@
1
-async function addressDetails() {
2
-  debugger;
3
-  // const user_addr_num =$("#Profile_Phone_num").val();
4
-  getbillinginfoBind();
5
-  let addr_phone = $('#phonenumber');
6
-  let addr_addrline = $('#addressdes');
7
-  let addr_zip = $('#zipcode');
8
-
9
-  let stateArr = [];
10
-
11
-  function getCustomDropDownHTML({ cityid, cityname, countryid }) {
12
-    return ` <div class="bg-white stateoption px-2 border-bottom py-2 cursor-pointer" data-name="${cityname}" data-value="${cityid}">${cityname}</div>`;
13
-  }
14
-
15
-  function renderCustomStateDropdown(stateList) {
16
-    let html = ``;
17
-    debugger;;
18
-    let maxLen = stateList.length > 10 ? 10 : stateList.length
19
-    for (let i = 0; i < maxLen; i++) {
20
-      let currItem = stateList[i];
21
-      html += getCustomDropDownHTML(currItem);
22
-    }
23
-
24
-    $('.stateBox').html(html);
25
-
26
-    $('.stateoption').off().click(function (e) {
27
-      debugger;
28
-      const name = $(e.target).data('name');
29
-      const id = $(e.target).data('value');
30
-      $('#state').val(name);
31
-      $('#state').attr('data-id', id);
32
-    })
33
-  }
34
-
35
-  function loadDropdownStateEvents() {
36
-    $('#state').off().focus(function () {
37
-      $('.stateBox').removeClass('d-none');
38
-      $(document).off('click').click(closeDrop);
39
-
40
-
41
-    })
42
-
43
-
44
-    $(document).off().click(closeDrop);
45
-
46
-    function closeDrop(e) {
47
-      let id = $(e.target).hasClass('stateoption');
48
-      if ($(e.target).attr('id') === 'state') return;
49
-      if (id) {
50
-        $('.stateBox').addClass('d-none');
51
-        $(document).off();
52
-      } else {
53
-        $('.stateBox').addClass('d-none');
54
-        $(document).off();
55
-      }
56
-
57
-    }
58
-
59
-    $('#state').keyup(debounce(function (event) {
60
-      onChangeState(event)
61
-    }));
62
-  }
63
-
64
-  function getbillinginfoBind() {
65
-    return new Promise(async (resolve, reject) => {
66
-      let cookieRes = COOKIE_HELPER_ACTIONS.getCookie();
67
-      console.log(cookieRes);
68
-      const { errorMsg, isError, response } =
69
-        await API_SERVICES_ACTIONS.getAPIService(
70
-          `apis/v4/bizgaze/integrations/anwiauth/getbillinginfo/contactid/${cookieRes.userId}`
71
-        );
72
-      let res = JSON.parse(response.result);
73
-      debugger;
74
-      console.log(res);
75
-      res = res[res.length - 1];
76
-      debugger
77
-      addr_phone.val(res?.phonenumber);
78
-      $('#Profile_User_name').val(res?.organizationname)
79
-      $('#Profile_Phone_num').val(res?.phonenumber)
80
-      let Profileusername = $('#Profile_User_name').val()
81
-      let Profileuserphone = $('#Profile_Phone_num').val()
82
-      $('.overview_user_name').html(Profileusername);
83
-      $('.overview_user_phone').html(Profileuserphone);
84
-      if (res?.cityid == "0") {
85
-        $(".profile_Address").html(
86
-          `<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>`
87
-        );
88
-
89
-        $(".address_edit").hide();
90
-        $(".create_address").on("click", function () {
91
-          debugger
92
-          $(this).hide();
93
-          $('.saveaddress').hide()
94
-          $(".addresslist").show();
95
-          $(".Createaddress").show();
96
-          getCountryStateCurrency();
97
-        });
98
-        $('.Createaddress').on('click', async function () {
99
-          if (addr_zip.val() == "" || addr_addrline.val() == "") {
100
-            // toastr.error('Required Feilds are Empty!');
101
-            //  if(addr_phone.val() == '' || addr_phone.val().length <10){
102
-            //     addr_phone.addClass("is-invalid");
103
-            //  }
104
-            //  else{
105
-            //     addr_phone.removeClass("is-invalid");
106
-            //  }
107
-            if (addr_zip.val() == '' || addr_zip.val().length < 6) {
108
-              addr_zip.addClass("is-invalid");
109
-            }
110
-            else {
111
-              addr_zip.removeClass("is-invalid");
112
-            }
113
-            if (addr_addrline.val() == '') {
114
-              addr_addrline.addClass("is-invalid");
115
-            } else {
116
-              addr_addrline.removeClass("is-invalid");
117
-            }
118
-          }
119
-          else {
120
-            $(".addresslist").hide();
121
-            $(".profile_Address").show();
122
-            $(".address_edit").show();
123
-            $(".address_edit_cancel").hide();
124
-            await createBillingForm()
125
-            await getbillinginfoBind();
126
-          }
127
-
128
-        })
129
-      } else {
130
-        $(".profile_Address").html(
131
-          `<div class=User_address><address><p><strong class="">${res?.organizationname}</strong><p>${res?.addressline},${res?.cityname},${res?.zipcode}<p>Mobile: ${res?.phonenumber}</address></div>`
132
-        );
133
-        $('#state').val(res?.cityname)
134
-        $('#state').attr('data-id',res?.cityid);
135
-        $('#zipcode').val(res?.zipcode);
136
-        $('#addressdes').val(res?.addressline);
137
-      }
138
-      resolve();
139
-    });
140
-  } debugger
141
-
142
-
143
-  $(".address_edit").on("click", function () {
144
-    $(this).hide();
145
-    $(".profile_Address").hide();
146
-    $(".addresslist").show();
147
-    $(".address_edit_cancel").show();
148
-    getCountryStateCurrency();
149
-    getbillinginfoBind()
150
-  });
151
-
152
-  $(".address_edit_cancel").on("click", function () {
153
-    $(this).hide();
154
-    $(".addresslist").hide();
155
-    $(".profile_Address").show();
156
-    $(".address_edit").show();
157
-  });
158
-
159
-  $(".saveaddress")
160
-    .off("click")
161
-    .click(async function () {
162
-
163
-      debugger
164
-      if (addr_zip.val() == "" || addr_addrline.val() == "") {
165
-        // toastr.error('Required Feilds are Empty!');
166
-        //  if(addr_phone.val() == '' || addr_phone.val().length <10){
167
-        //     addr_phone.addClass("is-invalid");
168
-        //  }
169
-        //  else{
170
-        //     addr_phone.removeClass("is-invalid");
171
-        //  }
172
-        if (addr_zip.val() == '' || addr_zip.val().length < 6) {
173
-          addr_zip.addClass("is-invalid");
174
-        }
175
-        else {
176
-          addr_zip.removeClass("is-invalid");
177
-        }
178
-        if (addr_addrline.val() == '') {
179
-          addr_addrline.addClass("is-invalid");
180
-        } else {
181
-          addr_addrline.removeClass("is-invalid");
182
-        }
183
-      }
184
-      else {
185
-        $(".addresslist").hide();
186
-        $(".profile_Address").show();
187
-        $(".address_edit").show();
188
-        $(".address_edit_cancel").hide();
189
-        $('.spinner-border').removeClass('d-none')
190
-        $('.saveaddress').find('span').addClass('d-none')
191
-        await AddresssaveForm();
192
-        $('.spinner-border').addClass('d-none')
193
-        $('.saveaddress').find('span').removeClass('d-none')
194
-        await getbillinginfoBind();
195
-      }
196
-
197
-    });
198
-
199
-    function onChangeState(e){
200
-      let userItem = e.target.value.toLowerCase();
201
-      let limit = 10;
202
-      let results = [];
203
-      let maxLen = stateArr.length > 10 ? 10 :stateArr.length;
204
-      debugger
205
-      for(let i=0;i<stateArr.length;i++){
206
-          let currItem = stateArr[i];
207
-          let stateName = currItem.cityname.toLowerCase();
208
-          if(stateName.includes(userItem)){
209
-              results.push(currItem);
210
-              if(results.length>=10) break;
211
-          }
212
-      }
213
-      $('.stateBox').removeClass('d-none');
214
-      renderCustomStateDropdown(results);
215
-      loadDropdownStateEvents();
216
-
217
-
218
-  }
219
-
220
-  async function getCountryStateCurrency() {
221
- 
222
-    const countryRes = await API_SERVICES_ACTIONS.getAPIService(
223
-      "apis/v4/bizgaze/integrations/anwiauth/getcountry"
224
-    );
225
-    if (countryRes.isError) {
226
-      alert("something went wrong");
227
-      console.log(countryRes);
228
-      return;
229
-    }
230
-    let countryData = JSON.parse(countryRes.response.result);
231
-
232
-    console.log(countryData, "country");
233
-
234
-    for (let i = 0; i < countryData.length; i++) {
235
-      if (countryData[i].countryname.toLowerCase() === "india") {
236
-        countryID = countryData[i].countryid;
237
-        countrynameData = countryData[i].countryname;
238
-        break;
239
-      }
240
-    }
241
-    const stateRes = await API_SERVICES_ACTIONS.getAPIService(
242
-      `apis/v4/bizgaze/integrations/anwiauth/getcities/countryid/${countryID}`
243
-    );
244
-
245
-    if (stateRes.isError) {
246
-      alert("something went wrong");
247
-      console.log(stateRes, "state");
248
-      return;
249
-    }
250
-
251
-    let stateData = JSON.parse(stateRes.response.result);
252
-
253
-    console.log(stateData, "state");
254
-    stateArr = stateData;
255
-    renderCustomStateDropdown(stateArr);
256
-    loadDropdownStateEvents();
257
-    const currencyRes = await API_SERVICES_ACTIONS.getAPIService(
258
-      "apis/v4/bizgaze/integrations/anwiauth/getcurrencies"
259
-    );
260
-
261
-    if (currencyRes.isError) {
262
-      alert("something went wrong");
263
-      console.log(currencyRes);
264
-      return;
265
-    }
266
-
267
-    let currencyData = JSON.parse(currencyRes.response.result);
268
-
269
-    console.log(currencyData, "currencyDatacurrencyDatacurrencyData");
270
-
271
-    for (let i = 0; i < currencyData.length; i++) {
272
-      const curr = currencyData[i];
273
-      if (curr.currencyname.toLowerCase().includes("india")) {
274
-        currencyid = curr.currencyid;
275
-      }
276
-    }
277
-  }
278
-
279
-  async function getCountryId() {
280
-    const countryRes = await API_SERVICES_ACTIONS.getAPIService(
281
-      "apis/v4/bizgaze/integrations/anwiauth/getcountry"
282
-    );
283
-
284
-    if (countryRes.isError) {
285
-      alert("something went wrong");
286
-      console.log(countryRes);
287
-      return;
288
-    }
289
-
290
-    let ctyId = 0;
291
-    let countryData = JSON.parse(countryRes.response.result);
292
-
293
-    console.log(countryData);
294
-
295
-    for (let i = 0; i < countryData.length; i++) {
296
-      if (countryData[i].countryname.toLowerCase() === "india") {
297
-        countryId = countryData[i].countryid;
298
-        ctyId = countryId;
299
-        countrynameData = countryData[i].countryname;
300
-        break;
301
-      }
302
-    }
303
-
304
-    return ctyId;
305
-  }
306
-
307
-  function createBillingForm() {
308
-    debugger;
309
-    return new Promise(async (resolve, reject) => {
310
-      let cookieRes = COOKIE_HELPER_ACTIONS.getCookie();
311
-      let { userId, name } = cookieRes;
312
-      const ctyId = await getCountryId();
313
-      let stateId = parseInt($("#state").val());
314
-      let payload = {
315
-        cityid: stateId,
316
-        CityName: $(`[data-id="${stateId}"`).html(),
317
-        addressline1: $("#addressdes").val(),
318
-        OrganizationType: 2,
319
-        organizationname: name,
320
-        //"OrganizationId":,
321
-        ContactName: name,
322
-        ContactId: userId,
323
-        countryname: "india",
324
-        countryid: ctyId,
325
-        statename: $(`[data-id="${stateId}"`).html(),
326
-        phonenumber: $("#phonenumber").val(),
327
-        OrganizationId: userId,
328
-        currencyid: 2,
329
-        taxno: "0",
330
-        BillingInfoExists: false,
331
-        lobid: 0,
332
-        lobname: "IT Products",
333
-        gstindetailid: 0,
334
-        zipcode: $("#zipcode").val(),
335
-      };
336
-      const res = await API_SERVICES_ACTIONS.postAPIService(
337
-        "apis/v4/bizgaze/crm/address/savebillinginfo",
338
-        payload
339
-      );
340
-      // http://localhost:3088/apis/v4/bizgaze/crm/address/savebillinginfo
341
-      console.log(res);
342
-      resolve();
343
-    });
344
-  }
345
-
346
-  async function AddresssaveForm() {
347
-    debugger;
348
-    let cookieRes = COOKIE_HELPER_ACTIONS.getCookie();
349
-    let { userId, name } = cookieRes;
350
-    const { errorMsg, isError, response } =
351
-      await API_SERVICES_ACTIONS.getAPIService(
352
-        `apis/v4/bizgaze/integrations/anwiauth/getbillinginfo/contactid/${cookieRes.userId}`
353
-      );
354
-    let resAnwi = JSON.parse(response.result);
355
-    console.log(resAnwi, "befores");
356
-    resAnwi = resAnwi[resAnwi.length - 1];
357
-    let stateId = parseInt($("#state").data('id'));
358
-    let payload = {
359
-      ...resAnwi,
360
-      phonenumber: $("#phonenumber").val(),
361
-      addressline1: $("#addressdes").val(),
362
-      zipcode: $("#zipcode").val(),
363
-      cityid: stateId,
364
-      CityName: $('#state').val(),
365
-      cityname: $('#state').val(),
366
-    };
367
-    console.log(payload, "addresssaave");
368
-    //
369
-    const res = await API_SERVICES_ACTIONS.postAPIService(
370
-      "apis/v4/bizgaze/crm/address/savebillinginfo",
371
-      payload
372
-    );
373
-    return new Promise((reslove, reject) => {
374
-      reslove(res);
375
-    });
376
-  }
377
-}

+ 0
- 9
dist/js-old/myaccount/Myaccount.js Просмотреть файл

@@ -1,9 +0,0 @@
1
-function initmyaccount(){
2
-    $('.my_account_page').removeClass('d-none')
3
-    myProfile();
4
-    bindOrderDetails();   
5
-    wattantyFunction();
6
-    addressDetails()
7
-}
8
-
9
-checkValidAuth(initmyaccount,'./login.html')

+ 0
- 158
dist/js-old/myaccount/Profile.js Просмотреть файл

@@ -1,158 +0,0 @@
1
-function myProfile() {
2
-    debugger
3
-    getbillinginfoBind()
4
-   async function getbillinginfoBind(){
5
-    let cookieRes = COOKIE_HELPER_ACTIONS.getCookie();
6
-    console.log(cookieRes);
7
-    const { errorMsg, isError, response } = await API_SERVICES_ACTIONS.getAPIService(
8
-      `apis/v4/bizgaze/integrations/anwiauth/getbillinginfo/contactid/${cookieRes.userId}`
9
-    );
10
-    let res = JSON.parse(response.result);
11
-    debugger;
12
-    console.log(res);
13
-    res = res[res.length - 1];
14
-   $('#Profile_User_name').val(res?.organizationname)
15
-  $('#Profile_Phone_num').val(res?.phonenumber)
16
-    let Profileusername =$('#Profile_User_name').val()
17
-    let Profileuserphone=$('#Profile_Phone_num').val()
18
-    $('.overview_user_name').html(Profileusername);
19
-    $('.overview_user_phone').html(Profileuserphone);
20
-    $(".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>`
21
-      );
22
-}
23
-    let countryId = null;   
24
-  $(".profile_edit").on("click", function () {
25
-    $(this).hide();
26
-    // $('.profile_save_btn,.profile_edit_cancel').removeClass('d-none')
27
-    $(".profile_save_btn,.profile_edit_cancel,.profile_info_label").show();
28
-    $(".profile_info").removeAttr("disabled").removeClass("cursor-notvalid");
29
-  });
30
-  $(".profile_edit_cancel").on("click", function () {
31
-    $(this).hide();
32
-    $(".profile_save_btn,.profile_info_label").hide();
33
-    $('#Profile_User_name').val('');
34
-    $('#Profile_Phone_num').val('');
35
-    getbillinginfoBind();
36
-    $(".profile_edit").show();
37
-    $(".profile_info").attr("disabled", "disabled").addClass("cursor-notvalid");
38
-  });
39
-  $(".pass_edit").on("click", function () {
40
-    $(this).hide();
41
-    $(".update_profile_pass,.pass_edit_cancel").show();
42
-    $(".profile_info_pass")
43
-      .removeAttr("disabled")
44
-      .removeClass("cursor-notvalid");
45
-  });
46
-  $(".pass_edit_cancel").on("click", function () {
47
-    $('#Profile_User_current_pass').val('');
48
-    $('#Profile_User_confirm_pass').val('');
49
-    $('#Profile_User_new_pass').val('');
50
-    $('#Profile_User_current_pass,#Profile_User_new_pass,#Profile_User_confirm_pass').removeClass('is-invalid')
51
-    // $('#Profile_User_new_pass').val().removeClass('is-invalid')
52
-    // $('#Profile_User_confirm_pass').val().removeClass('is-invalid')
53
-    $(this).hide();
54
-    $(".update_profile_pass").hide();
55
-    $(".pass_edit").show();
56
-    $(".profile_info_pass")
57
-      .attr("disabled", "disabled")
58
-      .addClass("cursor-notvalid");
59
-  });
60
-  $(".update_profile_pass").on("click", async function () {
61
-    let userEmail = window.localStorage.getItem("Useremail");
62
-    console.log(userEmail);
63
-    let port = SERVERNAME;
64
-    // let port = "http://localhost:3088";
65
-    let url = `${port}/account/getuserbyphoneormail/${userEmail}/${userEmail}`;
66
-    const config = {
67
-      url,
68
-      method: "get",
69
-    };
70
-    debugger;
71
-
72
-    let response = await axios(config);
73
-    let usernameId = response.data.result.userName;
74
-    let UserNewpassword = $("#Profile_User_new_pass");
75
-    let usercurrentPass = $("#Profile_User_current_pass");
76
-    let userConfirmpass = $("#Profile_User_confirm_pass");
77
-    if (usercurrentPass.val() != "") {
78
-      $(usercurrentPass).removeClass("is-invalid");
79
-      if (UserNewpassword.val() && userConfirmpass.val() != "") {
80
-        if (UserNewpassword.val() == userConfirmpass.val()) {
81
-          console.log(usernameId);
82
-          const UpdatePassPayload = {
83
-            username: usernameId,
84
-            password: UserNewpassword.val(),
85
-            oldpassword: usercurrentPass.val(),
86
-          };
87
-          const update_passres = await postAPIService(
88
-            `hyperfusion/HypersfusionUpdatePassword`,
89
-            UpdatePassPayload
90
-          );
91
-          console.log(update_passres);
92
-          if (update_passres.data.errors != null) {
93
-            $(".profilepass_feedbackres")
94
-              .html(`<div class="alert alert-danger error_msg " role="alert" style="font-size: 12px;"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M11.2646 3.41366C11.7212 3.15681 12.2788 3.15681 12.7354 3.41366L19.2354 7.06991C19.7077 7.33558 20 7.83536 20 8.37727V15.6227C20 16.1646 19.7077 16.6644 19.2354 16.9301L12.7354 20.5863C12.2788 20.8432 11.7212 20.8432 11.2646 20.5863L4.76461 16.9301C4.29229 16.6644 4 16.1646 4 15.6227V8.37727C4 7.83536 4.29229 7.33559 4.76461 7.06991L11.2646 3.41366Z" fill="#FF3A2E"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M11 7.4C11 7.17909 11.1791 7 11.4 7H12.6C12.8209 7 13 7.17909 13 7.4V12.6C13 12.8209 12.8209 13 12.6 13H11.4C11.1791 13 11 12.8209 11 12.6V7.4Z" fill="white"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M11 16C11 15.4477 11.4477 15 12 15C12.5523 15 13 15.4477 13 16C13 16.5523 12.5523 17 12 17C11.4477 17 11 16.5523 11 16Z" fill="white"></path></svg>
95
-         <span class="error_msg_res">${update_passres.data.message}</a></span> 
96
-         
97
-         </div>`);
98
-            $(userConfirmpass).addClass("is-invalid");
99
-            $(UserNewpassword).removeClass("is-invalid");
100
-            $(userConfirmpass).removeClass("is-invalid");
101
-          } else {
102
-            $(".profilepass_feedbackres")
103
-              .html(`<div class="alert alert-success success_msg" role="alert" style="font-size: 12px;"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-check" viewBox="0 0 16 16">
104
-                <path d="M10.97 4.97a.75.75 0 0 1 1.07 1.05l-3.99 4.99a.75.75 0 0 1-1.08.02L4.324 8.384a.75.75 0 1 1 1.06-1.06l2.094 2.093 3.473-4.425a.267.267 0 0 1 .02-.022z"/>
105
-              </svg>
106
-         <span class="success_msg_res">${update_passres.data.message}</a></span> 
107
-         </div>`);
108
-            usercurrentPass.val("");
109
-            UserNewpassword.val("");
110
-            userConfirmpass.val("");
111
-          }
112
-        } else {
113
-          $(UserNewpassword).addClass("is-invalid");
114
-          $(userConfirmpass).addClass("is-invalid");
115
-          return;
116
-        }
117
-      } else {
118
-        $(UserNewpassword).addClass("is-invalid");
119
-        $(userConfirmpass).addClass("is-invalid");
120
-        return;
121
-      }
122
-    } else {
123
-      $(usercurrentPass).addClass("is-invalid");
124
-      return;
125
-    }
126
-  });
127
-  $('.profile_save_btn').on('click',async function(){
128
-    await ProfilesaveForm();
129
-    $('.profile_edit_cancel').trigger('click')
130
-})
131
-  async function ProfilesaveForm() {
132
-    debugger
133
-    let cookieRes = COOKIE_HELPER_ACTIONS.getCookie();
134
-    let { userId, name } = cookieRes;
135
-    const { errorMsg, isError, response } =
136
-      await API_SERVICES_ACTIONS.getAPIService(
137
-        `apis/v4/bizgaze/integrations/anwiauth/getbillinginfo/contactid/${cookieRes.userId}`
138
-      );
139
-    let resAnwi = JSON.parse(response.result);
140
-    console.log(resAnwi, "previous profilesave");
141
-    resAnwi = resAnwi[resAnwi.length - 1];
142
-    let payload = {
143
-      ...resAnwi,
144
-      organizationname: $("#Profile_User_name").val(),
145
-      phonenumber: $("#Profile_Phone_num").val(),
146
-    };
147
-    console.log(payload, "profilesave");
148
-    //
149
-    const res = await API_SERVICES_ACTIONS.postAPIService(
150
-      "apis/v4/bizgaze/crm/address/savebillinginfo",
151
-      payload
152
-    );
153
-    return new Promise((reslove, reject) => {
154
-      reslove(res);
155
-      getbillinginfoBind();
156
-    });
157
-  }
158
-}

+ 0
- 158
dist/js-old/myaccount/myaccount_warrenty.js Просмотреть файл

@@ -1,158 +0,0 @@
1
-function wattantyFunction(){
2
-
3
-debugger
4
-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>`;
5
-
6
-$(".user_orders").append(order_card);
7
-$('.add_serialNum').click(function () {
8
-    $('.warranty_productform').removeClass('d-none');
9
-    $(this).addClass('d-none');
10
-});
11
-$('.warranty_serialNumber_submit').click(async function () {
12
-    let serial_no_inp = $('#Add_serial_number_inp').val();
13
-    let phonenumber_inp = $('#Add_phonenumber_inp').val();
14
-    let contactname_inp = $('#Add_contactname_inp').val();
15
-    if(serial_no_inp && phonenumber_inp !=''){
16
-        $('.error_serial_num').addClass('d-none');
17
-         $('.error_phonenumber').addClass('d-none');
18
-         $('#Add_serial_number_inp').removeClass('border-danger')    
19
-         $('#Add_phonenumber_inp').removeClass('border-danger');
20
-    let port = SERVERNAME;
21
-    debugger
22
-    let url = `${port}/apis/v4/Bizgaze/integrations/products/warrantyservice/serialno/${serial_no_inp}`;
23
-    console.log(url);
24
-    // const STAT = `05b2f2ca510344968c65e1ebf49a5595`
25
-    const config = {
26
-        url,
27
-        method: "get",
28
-        headers: {
29
-            Authorization: `stat ${STAT}`,
30
-        },
31
-    };
32
-
33
-    let response = await axios(config);
34
-    debugger
35
-    console.log(response)
36
-    let product_res = response.data.result
37
-    if (product_res != null) {
38
-        let warrenty_res = JSON.parse(product_res);
39
-        let new_arr = [warrenty_res];
40
-        $.each(new_arr, function (key, value) {
41
-            console.log(value)
42
-            if (response.data.result == '[]') {
43
-                // Command: toastr["error"]("Serial number not found !")
44
-                // toasterOpts();
45
-                // $('#Add_serial_number_inp').addClass('border-danger');
46
-                // $('.error_serial_num').removeClass('d-none')
47
-                $(".user_Warranty_details").html(`<div class="Serial_numb_notfound text-danger text-center"><h2>Serial Number Not Found !</h2>`);
48
-                // $('.warranty_productform').addClass('d-none');
49
-                // $('.add_serialNum').removeClass('d-none');
50
-                return;
51
-            }
52
-            else {
53
-                const warrantyEnabled = value[0].warrantyenabled;
54
-                if (warrantyEnabled == false) {
55
-                    let phonenumber_updated = Number(phonenumber_inp)
56
-                    $('.user_Warranty_details').removeClass('d-none')
57
-                    //  let  strDate =  new Date(value[0].purchasedate).toISOString().slice(0, 10);
58
-                     let Warrentypayload =
59
-                     {
60
-                         "sku": value[0].sku,
61
-                         "serialno": serial_no_inp,
62
-                         "phonenumber": phonenumber_updated,
63
-                         "contactname": contactname_inp,
64
-                         "warrantyfromdate": value[0].purchasedate
65
-                    }
66
-                     warrentyService(Warrentypayload);
67
-                }
68
-                else {
69
-                    // let warrantySerialnumber =$('.serial_no_warrantynumber').text()
70
-                    let warrenty_date =value[0].warrantytodate
71
-                        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>`;
72
-                       let is_warranty_enable=value[0].warrantyenabled
73
-                       debugger
74
-                       $(".user_Warranty_details").html(userwarrenty_product);
75
-                       if(is_warranty_enable == true){
76
-                       $('.is_warranty_enable').text('Activated')
77
-                       }
78
-                       else{
79
-                        $('.is_warranty_enable').text('Not Activated')
80
-                       }
81
-                       if(warrenty_date == "" ){
82
-                        $('.warrenty_date').addClass('d-none')
83
-                       }
84
-                       else{
85
-                        $('.warrenty_date').removeClass('d-none')
86
-                       }
87
-                       $('#Add_serial_number_inp').addClass('border-success')
88
-                       $('.error_serial_num').addClass('d-none')
89
-                        // $('.warranty_productform').addClass('d-none');
90
-                        $('.add_serialNum').removeClass('d-none');
91
-                        //Command: toastr["success"]("Warranty already enabled !")
92
-                   
93
-                }
94
-                
95
-            }
96
-
97
-        })
98
-        
99
-
100
-    }
101
-}
102
-else{
103
-    if(serial_no_inp == ''){
104
-        $('#Add_serial_number_inp').addClass('border-danger')
105
-        $('.error_serial_num').removeClass('d-none')
106
-    }
107
-    else if(phonenumber_inp == ''){
108
-        $('#Add_phonenumber_inp').addClass('border-danger');
109
-        $('.error_phonenumber').removeClass('d-none');
110
-        
111
-
112
-    }
113
-}
114
-})
115
-async function warrentyService(Warrentypayload) {
116
-    //       let d = new Date();
117
-    //     // let  strDate = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
118
-    //     let  strDate =  new Date().toISOString().slice(0, 10)
119
-    // console.log(strDate)
120
-    debugger
121
-    const res = await postAPIServiceWarranty(`apis/v4/bizgaze/transact/items/savewarrantyasync`, Warrentypayload);
122
-    debugger
123
-    console.log(res)
124
-  if (res.data.status == 2) {
125
-    //   $('.warranty_productform').addClass('d-none');
126
-    //   $('.add_serialNum').removeClass('d-none');
127
-        // Command: toastr["warning"](res.data.message)
128
-        // toasterOpts();
129
-        $(".user_Warranty_details").html(`<div class="text-warning text-center"><h2>No Serial number found / Product not Delivered</h2>`);
130
-
131
-    }
132
-    else if(res.data.status == '0'){
133
-        // $('.warranty_productform').addClass('d-none');
134
-        // $('.add_serialNum').removeClass('d-none');
135
-        // Command: toastr["success"](res.data.message);
136
-        // toasterOpts();
137
-        $(".user_Warranty_details").html(`<div class="text-danger text-center"><h2>${res.data.message}</h2>`);
138
- }
139
-}
140
-// function toasterOpts() {
141
-//     toastr.options = {
142
-//         "closeButton": true,
143
-//         "debug": false,
144
-//         "newestOnTop": true,
145
-//         "progressBar": true,
146
-//         "positionClass": "toast-top-center",
147
-//         "preventDuplicates": true,
148
-//         "showDuration": "300",
149
-//         "hideDuration": "1000",
150
-//         "timeOut": "3000",
151
-//         "extendedTimeOut": "1000",
152
-//         "showEasing": "swing",
153
-//         "hideEasing": "linear",
154
-//         "showMethod": "fadeIn",
155
-//         "hideMethod": "fadeOut"
156
-//     }
157
-// }
158
-}

+ 0
- 134
dist/js-old/myaccount/orderdetails.js Просмотреть файл

@@ -1,134 +0,0 @@
1
-async function bindOrderDetails() {
2
-  let user_number = $('.User_phoneum').text();
3
-  // validatesession()
4
-  debugger
5
-  let cookieRes = COOKIE_HELPER_ACTIONS.getCookie();
6
-  let { userId } = cookieRes;
7
-  //let userId = '106631380000048';
8
-  debugger;
9
-  console.log(cookieRes);
10
-  let port = SERVERNAME;
11
-  // let port = "http://localhost:3088";
12
-  let url = `${port}/apis/v4/Bizgaze/integrations/products/salesorderdetailsbyorgid/organizationid/${userId}`;
13
-  // /apis/v4/bizgaze/integrations/products/salesorderdetailsbyorgid/phonenumber/
14
-  // https://anwi.bizgaze.app/apis/v4/Bizgaze/integrations/products/salesorderdetailsbyorgid/organizationid/{organizationid}
15
-  const config = {
16
-    url,
17
-    method: "get",
18
-    headers: {
19
-      'Authorization': `stat ${STAT} `,
20
-      'Content-Type': 'application/json'
21
-    }
22
-  };
23
-  debugger
24
-  let res = await axios(config);
25
-  if (res.data.result == '[]' || res.data.result === null) {
26
-    $(".user_order_details").append(`<div><h6 class="text-center">No orders Found</h6></div>`);
27
-    return;
28
-  }
29
-  const orderDetailsres = JSON.parse(res.data.result);
30
-  console.log(orderDetailsres);
31
-  let new_arrr = orderDetailsres;
32
-  console.log(new_arrr);
33
-  $(".user_order_details").html(``)
34
-  console.log('hello')
35
-  let user_order_details = ``;
36
-  let order_itemTotal = '';
37
-  let order_netTotal = '';
38
-  let order_quantity = '';
39
-  let order_taxAmount = '';
40
-  for (let i = 0; i < new_arrr.length; i++) {
41
-    let current = new_arrr[i]
42
-    let updatedCurent_total = current.nettotal.toLocaleString()
43
-    order_itemTotal = current.itemtotal;
44
-    order_netTotal = current.nettotal;
45
-    order_quantity = current.Quantity;
46
-    order_taxAmount = current.taxamount;
47
-    user_order_details += `<a href="" class="order_details_main_container">
48
-  <div class="border-3 mb-3 card">
49
-    <div class="text-dark card-body px-0 pt-0">
50
-      <div class="d-none">
51
-        <span class="order_itemTotal">${order_itemTotal}</span>
52
-        <span class="order_netTotal">${order_netTotal}</span>
53
-        <span class="order_tax">${order_taxAmount}</span>
54
-        <span class="order_qty">${order_quantity}</span>
55
-      </div>
56
-      <div class="bg-gray-4 p-2 m-0 border-bottom">
57
-      <p class="m-0 fw-600 text-secondary">ORDER NO: <span class="text-blue fs-9 serial_no ">${current.OrderNo}</span>
58
-      </p>
59
-    </div>
60
-      <div class="bg-gray-4 p-2 row g-0">
61
-        <div class="col-md-6 ">
62
-          <div class="d-flex justify-content-between align-items-center">
63
-            <div>
64
-              <p class="mb-1">ORDER PLACED</p>
65
-              <p class="mb-1 fw-500 order_date">${current.OrderDate}</p>
66
-            </div>
67
-            <div>
68
-              <p class="mb-1"> TOTAL</p>
69
-              <p class="mb-1 fw-500 Current_netTotal"> ₹${updatedCurent_total}</p>
70
-            </div>
71
-            <div>
72
-              <p class="mb-1">Delivered TO </p>
73
-              <p class="mb-1 fw-500">${current.OrganizationName}</p>
74
-            </div>
75
-          </div>
76
-        </div>
77
-        <div class="col-md-4 ms-auto">
78
-       
79
-          <div class="d-flex justify-content-between">
80
-            <p class="mb-1 text-info fw-500"> View order details </p>
81
-            <p class="mb-0 text-info fw-500">Invoice</p>
82
-          </div>
83
-        </div>
84
-      </div>
85
-      <div class="border-0 card rounded-0 order-cards py-3">
86
-        <div class="d-flex flex-wrap px-2 align-items-center text-center">
87
-          <div class="col-md-3">
88
-            <img src="https://appassets.bizgaze.app/${current.imageurl}" class="img-fluid w-75 order_item_name" />
89
-          </div>
90
-          <div class="col-md-9">
91
-            <div class="row align-items-center">
92
-              <div class="col-md-8">
93
-                <div class="order_item_name">${current.itemname}</div>
94
-              </div>
95
-              <div class="col-md-4">
96
-                <button type="button" class="btn btn-sm rounded order_details_btn  bg-gradient-anwi-outline py-0 mb-3" onClick="event.preventDefault();">Track Package</button>
97
-                <button type="button" class="btn btn-sm btn-light rounded order_details_btn py-0 mb-3 shadow-sm" onClick="event.preventDefault();">Cancel Item</button>
98
-              </div>
99
-            </div>
100
-          </div>
101
-        </div>
102
-      </div>
103
-    </div>
104
-  </div>
105
-</a>`;
106
-  }
107
-  $(".user_order_details").append(user_order_details);
108
-  $('.order_details_main_container').click(function () {
109
-    let current_serial_no = $(this).find('.serial_no').text();
110
-    //  window.localStorage.setItem('orderDate',current_order_date);
111
-    //  window.localStorage.setItem('orderSerialno',current_serial_no);
112
-    //  window.localStorage.setItem('Userphonenumber',user_number);
113
-    $(this).attr('href', `./orderdetails.html#${current_serial_no}`)
114
-  })
115
-}
116
-function toasterOpts() {
117
-  toastr.options = {
118
-    "closeButton": true,
119
-    "debug": false,
120
-    "newestOnTop": true,
121
-    "progressBar": true,
122
-    "positionClass": "toast-top-center",
123
-    "preventDuplicates": true,
124
-    "onclick": null,
125
-    "showDuration": "300",
126
-    "hideDuration": "1000",
127
-    "timeOut": "5000",
128
-    "extendedTimeOut": "1000",
129
-    "showEasing": "swing",
130
-    "hideEasing": "linear",
131
-    "showMethod": "fadeIn",
132
-    "hideMethod": "fadeOut"
133
-  }
134
-}

+ 0
- 660
dist/js-old/navbar.js Просмотреть файл

@@ -1,660 +0,0 @@
1
-navINIT();
2
-
3
-function navINIT() {
4
-  async function getAllProdouctsIds() {
5
-    let res = await API_SERVICES_ACTIONS.getAPIService(
6
-      "apis/v4/bizgaze/integrations/products/getallproducts",
7
-      true
8
-    );
9
-    if (res.isError) {
10
-      return;
11
-    }
12
-
13
-    res = JSON.parse(res.response.result);
14
-
15
-    for (let i = 0; i < res.length; i++) {
16
-      let curr = res[i];
17
-      let productname = curr.productname;
18
-      let id = curr.productid;
19
-
20
-      // ACCESSORIES
21
-      switch (productname) {
22
-        case "Zeno Sleekbook":
23
-          appendIdNav("zenosleekbook", id);
24
-          break;
25
-        case "Zeno Dualbook":
26
-          appendIdNav("zenodualbook", id);
27
-          break;
28
-        case "FYRO Flagship":
29
-          appendIdNav("fyroflagship", id);
30
-          break;
31
-        case "AIO Fyro":
32
-          // appendIdNav('fyroaio',id);
33
-          break;
34
-        case "AIO Zeno":
35
-        // appendIdNav('zenoaio',id);
36
-        default:
37
-          break;
38
-      }
39
-    }
40
-  }
41
-
42
-  function appendIdNav(className, id) {
43
-    let html = $(`.${className}`).attr("href");
44
-    const pattern = /{[^}]+}/g;
45
-    const replacedString = html.replace(pattern, id);
46
-    $(`.${className}`).parents(".nav-tab-show").removeClass("d-none");
47
-    $(`.${className}`).attr("href", replacedString);
48
-  }
49
-
50
-  if (
51
-    !window.location.href.includes("orderconfirmation") &&
52
-    !window.location.href.includes("/w/")
53
-  ) {
54
-    loadCart();
55
-  }
56
-
57
-  function loadHelper(src = "./dist/js/utils/helpers.js") {
58
-    if ($(`script[src="${src}"]`).length > 0) {
59
-      return new Promise((resolve) => resolve());
60
-    }
61
-    return new Promise(function (resolve, reject) {
62
-      var s;
63
-      s = document.createElement("script");
64
-      s.src = src;
65
-      s.onload = resolve;
66
-      s.onerror = reject;
67
-      document.head.appendChild(s);
68
-    });
69
-  }
70
-  async function loadCart() {
71
-    if (!window.location.href.includes("services/paymentmethod.html")) {
72
-      let files = ["./dist/js/shoppingcart/addtocart.js"];
73
-      await loadHelper();
74
-      for (let i = 0; i < files.length; i++) {
75
-        if ($(`script[src="${files[i]}"]`).length > 0) {
76
-          continue;
77
-        }
78
-        try {
79
-          await loadHelper(files[i]);
80
-        } catch (error) {
81
-          return;
82
-        }
83
-      }
84
-    }
85
-
86
-    setLengthCart();
87
-    getAllProdouctsIds();
88
-    //console.log("hello");
89
-  }
90
-  let URLNAMENAV = window.location.href;
91
-  const isTransparent =
92
-    URLNAMENAV.includes("login") ||
93
-    URLNAMENAV.includes("orderconfirmation") ||
94
-    URLNAMENAV.includes("services/paymentmethod.html");
95
-  debugger;
96
-  let nav_html = `
97
-<header class="header-area section-padding-1 transparent-bar" ${
98
-    isTransparent ? 'style="background:#fff"' : ""
99
-  }>
100
-            <div class="header-large-device">
101
-                <div class="header-bottom sticky-bar">
102
-                    <div class="container">
103
-                        <div class="header-bottom-flex">
104
-                            <div class="logo-menu-wrap d-flex gap-5">
105
-                                <div class="logo">
106
-                                    <a href="../index.html">
107
-                                        <img src="/dist/assets/imgs/anwi-logo-1.png" alt="logo" class="nav_logo">
108
-                                    </a>
109
-                                </div>
110
-                                <div class="main-menu menu-lh-1 main-menu-padding-1">
111
-                                    <nav>
112
-                                        <ul class="mb-0 p-0">
113
-                                        <li class="hover_tab_1">
114
-                                            <a href="/laptops.html" class="satoshi_font">LAPTOPS
115
-                                                <svg style="width:18px;height:15px" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg">
116
-                                                    <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"/>
117
-                                                </svg>
118
-                                            </a>
119
-                                        <ul class="pb-3" style="list-style:none">
120
-                                            <li>
121
-                                                <div class="d-flex gap-4r pt-4 pb-2 align-items-center justify-content-center">
122
-                                                    <div class="position-relative nav-tab-show  d-none">
123
-                                                        <a class="h-100 nav_items zenosleekbook" href="/laptopdetails.html?Zeno#productId={106633230000029}">
124
-                                                            <div  style="" class="align-items-center cursor-pointer d-flex flex-column h-100 justify-content-center rounded-3">
125
-                                                                <img src="https://assets.bizgaze.com/_files/documents/663/e7b635fd-2247-4691-9492-108889b17930/14%20inch.png" alt="ora img" class="nav_imgs"/>
126
-                                                                <p  class="mb-0 text-center text-dark w-100">Zeno Sleekbook </p>
127
-                                                            </div>
128
-                                                        </a>
129
-                                                    </div>
130
-                                                    <div class="position-relative nav-tab-show  d-none">
131
-                                                        <a class="h-100 nav_items fyroflagship" href="/laptopdetails.html?Fyro#productId={106633230000031}">
132
-                                                            <div  style="" class=" align-items-center cursor-pointer d-flex flex-column h-100 justify-content-center rounded-3">
133
-                                                                <img src="https://assets.bizgaze.com/_files/documents/663/c7ff1466-6274-48a4-abfd-aba94ad9d56f/17 inches.png" alt="ora img" class="nav_imgs"/>
134
-                                                                <p  class="mb-0 text-center text-dark w-100">Fyro Flagship </p>
135
-                                                            </div>
136
-                                                        </a>
137
-                                                    </div>
138
-                                                    <div class="position-relative nav-tab-show  d-none">
139
-                                                    <a class="h-100 nav_items zenodualbook" href="/laptopdetails.html?Zeno#productId={106633230000030}">
140
-                                                        <div  style="" class=" align-items-center cursor-pointer d-flex flex-column h-100 justify-content-center rounded-3">
141
-                                                            <img src="https://assets.bizgaze.com/_files/documents/663/74040488-b018-48bb-8dbc-d3d2a3ab0576/zeno-dual-book.png" alt="ora img" class="nav_imgs"/>
142
-                                                            <p  class="mb-0 text-center text-dark w-100">Zeno Dual Book </p>
143
-                                                        </div>
144
-                                                    </a>
145
-                                                </div>
146
-                                                </div>
147
-                                            </li>
148
-                                        </ul>
149
-                                    </li>
150
-                                    <li class="hover_tab_2">
151
-                                        <a href="/allinones.html" class="satoshi_font">ALL IN ONES
152
-                                            <svg style="width:18px;height:15px;" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg">
153
-                                                <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"/>
154
-                                            </svg>
155
-                                        </a>
156
-                                    <ul class="pb-3" style="list-style:none">
157
-                                        <li>
158
-                                            <div class="d-flex gap-4r pt-4 pb-2 align-items-center justify-content-center">
159
-                                                <div class="position-relative  nav-tab-show">
160
-                                                    <a class="h-100 nav_items zenoaio" href="/laptopdetails.html?AIO Zeno#productId=106633230000026#itemid=106633240000112">
161
-                                                        <div  style="" class="align-items-center cursor-pointer d-flex flex-column h-100 justify-content-center rounded-3">
162
-                                                            <img src="https://assets.bizgaze.com/_files/documents/663/3e4f2cb7-e48e-4805-a70e-78277dd2ac39/home-aio.png" alt="ora img" class="nav_imgs"/>
163
-                                                            <p  class="mb-0 text-center text-dark w-100">Zeno All in ones</p>
164
-                                                        </div>
165
-                                                    </a>
166
-                                                </div>
167
-                                                <div class="position-relative  nav-tab-show">
168
-                                                    <a class="h-100 nav_items" href="/laptopdetails.html?AIO Fyro#productId=106633230000027#itemid=106633240000126">
169
-                                                        <div  style="" class=" align-items-center cursor-pointer d-flex flex-column h-100 justify-content-center rounded-3">
170
-                                                            <img src="https://assets.bizgaze.com/_files/documents/663/abfaa5a3-339a-4bf8-ade2-f6928bfae04b/Asset 4@2x.png" alt="ora img" class="nav_imgs"/>
171
-                                                            <p  class="mb-0 text-center text-dark w-100">Fyro All in ones </p>
172
-                                                        </div>
173
-                                                    </a>
174
-                                                </div>
175
-                                            </div>
176
-                                        </li>
177
-                                    </ul>
178
-                                    </li>
179
-                                    <li class="hover_tab_2">
180
-                                        <a href="/accessories.html" class="satoshi_font">ACCESSORIES
181
-                                            <svg style="width:18px;height:15px;" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg">
182
-                                                <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"/>
183
-                                            </svg>
184
-                                        </a>
185
-                                        <ul class="pb-3" style="list-style:none">
186
-                                        <li>
187
-                                            <div class="d-flex gap-4r pt-4 pb-2 align-items-center justify-content-center">
188
-                                                <div class="position-relative  nav-tab-show_acc">
189
-                                                    <a class="h-100 nav_items" href="/storageproducts.html">
190
-                                                        <div  style="" class="align-items-center cursor-pointer d-flex flex-column h-100 justify-content-center rounded-3">
191
-                                                            <img src="https://assets.bizgaze.com/_files/documents/663/eb608765-7b0a-4ed0-92f7-6afbd2a2ee98/Ora4 SSD 2TB copy.png" alt="ora img" class="nav_imgs"/>
192
-                                                            <p  class="mb-0 text-center text-dark w-100">Storage</p>
193
-                                                        </div>
194
-                                                    </a>
195
-                                                </div>
196
-                                                <div class="position-relative  nav-tab-show_acc">
197
-                                                    <a class="h-100 nav_items" href="/ramproducts.html">
198
-                                                        <div  style="" class=" align-items-center cursor-pointer d-flex flex-column h-100 justify-content-center rounded-3">
199
-                                                            <img src="https://assets.bizgaze.com/_files/documents/663/aca8b4eb-23c8-4751-8096-694c12b46133/Laptop DDR5 8GB.png" alt="ora img" class="nav_imgs"/>
200
-                                                            <p  class="mb-0 text-center text-dark w-100">Memory </p>
201
-                                                        </div>
202
-                                                    </a>
203
-                                                </div>
204
-                                            </div>
205
-                                        </li>
206
-                                    </ul>
207
-                                    </li>
208
-                                    <!-- 
209
-                                    <li><a href="./storageproducts.html" class="satoshi_font">STORAGE</a></li>
210
-                                    <li><a href="./ramproducts.html" class="satoshi_font">MEMORY</a></li> -->
211
-                                            <li><a href="./support.html" class="satoshi_font">SUPPORT</a></li>
212
-                                            <li><a href="./press.html" class="satoshi_font">PRESS</a></li>
213
-                                            <li><a href="./contact.html" class="satoshi_font">CONTACT</a></li>
214
-                                            <li class="d-none"><a href="#" class="satoshi_font product_data" item_id="106633220000002">ACCESSORIES</a></li>
215
-                                        </ul>
216
-                                    </nav>
217
-                                </div>
218
-                            </div>
219
-                            <div class="header-action-wrap header-action-flex header-action-width header-action-mrg-1">
220
-                                <div class="same-style">
221
-                                <a href="/myaccount.html" class="my_avatar">
222
-                                <svg class="user-icon" width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
223
-                                    <g clip-path="url(#clip0)">
224
-                                        <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"/>
225
-                                        <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"/>
226
-                                    </g>
227
-                                    <defs>
228
-                                        <clipPath id="clip0">
229
-                                            <rect width="24" height="24" fill="white" transform="translate(0.444336 0.366516)"/>
230
-                                        </clipPath>
231
-                                    </defs>
232
-                                </svg>
233
-                                </a>
234
-                                </div>
235
-                                <div class="same-style header-cart">
236
-                                <a class="cart-active1 position-relative" href="/shopping-cart.html">
237
-                                <svg class="cart_icon" width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
238
-                                    <g clip-path="url(#clip0)">
239
-                                        <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"/>
240
-                                        <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"/>
241
-                                        <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"/>
242
-                                    </g>
243
-                                    <defs>
244
-                                        <clipPath id="clip0">
245
-                                            <rect width="24" height="24" fill="white" transform="translate(0.494141 0.366516)"/>
246
-                                        </clipPath>
247
-                                    </defs>
248
-                                </svg>
249
-                                <span class="position-absolute cartnumcount d-none" >0</span>
250
-                                </a>
251
-                                </div>
252
-                            </div>
253
-                        </div>
254
-                    </div>
255
-                    <div class="sub_nav_container bg-white d-none border-top" style="
256
-                        box-shadow: 0 6PX 16PX 0 #1919190f;
257
-                        -webkit-backdrop-filter: blur(6px);
258
-                        backdrop-filter: blur(6px);">
259
-                        <div class="container">
260
-                            <div class="d-flex justify-content-between">
261
-                           <span class="d-flex align-items-center font-weight-600">
262
-                           <h2 class="titleproductnav sub_nav_item me-3 fs-9"></h2></span>
263
-                                <ul class="d-flex mb-0 py-3  justify-content-center align-items-center" style="list-style:none;">
264
-                                    <li>
265
-                                        <a data-overview="#${
266
-                                          window.location.href.includes("Zeno")
267
-                                            ? "overview_data_zeno"
268
-                                            : "overview_data_fyro"
269
-                                        }" class="sub_nav_item overview me-3 fs-9">Overview</a>
270
-                                    </li>
271
-                                    <li>
272
-                                        <a data-spec="true" class="sub_nav_item me-3 fs-9 overviewspecs">Specifications</a>
273
-                                    </li>
274
-                                    <li>
275
-                                        <a href="#"  class="font-12p btn btn-dark button_dark sub_nav_item text-white">Buy now</a>
276
-                                    </li>
277
-                                </ul>
278
-                            </div>
279
-                        </div>
280
-                    </div>
281
-                </div>
282
-            </div>
283
-            <div class="header-small-device header-small-ptb sticky-bar py-md-2 py-2 bg-white">
284
-                <div class="container-fluid px-4">
285
-                    <div class="row align-items-center">
286
-                        <div class="col-6 header-action-wrap">
287
-                            <div class="d-flex">
288
-                                <div class="same-style header-info">
289
-                                    <button class="mobile-menu-button-active">
290
-                                        <span class="info-width-1"></span>
291
-                                        <span class="info-width-2"></span>
292
-                                        <span class="info-width-3"></span>
293
-                                    </button>
294
-                                </div>
295
-                                <div class="mobile-logo mobile-logo-width ps-3">
296
-                                    <a href="../index.html">
297
-                                        <img alt="" src="/dist/assets/imgs/anwi-logo-1.png" class="w-50">
298
-                                    </a>
299
-                                </div>
300
-                            </div>
301
-                        </div>
302
-                        <div class="col-6">
303
-                            <div class="header-action-wrap header-action-flex header-action-mrg-1">
304
-                                <div class="same-style">
305
-                                <a href="/myaccount.html" class="my_avatar">
306
-                                    <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">
307
-                                    <g clip-path="url(#clip0)">
308
-                                        <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"/>
309
-                                        <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"/>
310
-                                    </g>
311
-                                    <defs>
312
-                                        <clipPath id="clip0">
313
-                                            <rect width="24" height="24" fill="white" transform="translate(0.444336 0.366516)"/>
314
-                                        </clipPath>
315
-                                    </defs>
316
-                                </svg>
317
-                                </a>
318
-                                </div>
319
-                                <div class="same-style header-cart ms-3">
320
-                                <a class="cart-active1 position-relative" href="/shopping-cart.html">
321
-                                <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">
322
-                                    <g clip-path="url(#clip0)">
323
-                                        <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"/>
324
-                                        <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"/>
325
-                                        <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"/>
326
-                                    </g>
327
-                                    <defs>
328
-                                        <clipPath id="clip0">
329
-                                            <rect width="24" height="24" fill="white" transform="translate(0.494141 0.366516)"/>
330
-                                        </clipPath>
331
-                                    </defs>
332
-                                </svg>
333
-                                <span class="position-absolute cartnumcount d-none"  style="top:-27%;right:-80%">0</span>
334
-                                </a>
335
-                                </div>
336
-                            </div>
337
-                        </div>
338
-                    </div>
339
-                </div>
340
-            </div>
341
-        </header>
342
-        <!-- Mobile menu start -->
343
-        <div class="mobile-menu-active clickalbe-sidebar-wrapper-style-1">
344
-            <div class="clickalbe-sidebar-wrap">
345
-            <div class="row pb-2 border-bottom">
346
-                <div class="col-6">
347
-                    <div class="mobile-logo mobile-logo-width">
348
-                        <a href="../index.html">
349
-                            <img alt="" src="/dist/assets/imgs/anwi-logo-1.png" class="w-75">
350
-                        </a>
351
-                    </div>
352
-                </div>
353
-                <div class="col-6 text-end pe-4">
354
-                    <a class="sidebar-close"><i class="fa-solid fa-xmark"></i></a>
355
-                </div>
356
-            </div>
357
-               
358
-                <div class="mobile-menu-content-area sidebar-content-100-percent pt-3">
359
-                    <div class="mobile-search d-none">
360
-                        <form class="search-form" action="#">
361
-                            <input type="text" placeholder="Search here…" class="satoshi_font">
362
-                            <button class="button-search"><i class="fa-solid fa-magnifying-glass"></i></button>
363
-                        </form>
364
-                    </div>
365
-                    <div class="clickable-mainmenu-wrap clickable-mainmenu-style1">
366
-                        <nav>
367
-                            <ul class="pl-0">
368
-                          
369
-
370
-                                
371
-                                <li class="expandlinav">
372
-                                <div class="d-flex justify-content-between explandlinavnameparent">
373
-                                    <span class="explandlinavname">LAPTOP</span><span data-name="laptops.html" class=" viewall_li">+</span>
374
-                                </div>
375
-                               <div class="content-expandlinav pt-2 d-none">
376
-                               <a class="h-100 p-1 zenosleekbook" href="/laptopdetails.html?Zeno#productId={106633230000029}">
377
-                                    <div class="ps-2">
378
-                                    Zeno Sleekbook
379
-                                    </div>
380
-                                </a>
381
-                                <a class="h-100 p-1 fyroflagship" href="/laptopdetails.html?Fyro#productId={106633230000031}">
382
-                                    <div class="ps-2">Fyro Flagship  </div>
383
-                                    </a>
384
-                                    <a class="h-100 p-1 zenodualbook" href="/laptopdetails.html?Zeno#productId={106633230000030}">
385
-                                    <div class="ps-2">Zeno Dual Book   </div>
386
-                                    </a>
387
-                               </div>
388
-                                </li>
389
-                                <li class="expandlinav">
390
-                                <div class="d-flex justify-content-between explandlinavnameparent">
391
-                                    <span class="explandlinavname">ALL IN ONES </span><span  data-name="allinones.html" class="viewall_li">+</span>
392
-                                </div>
393
-                               <div class="content-expandlinav pt-2 d-none">
394
-                               <a class="h-100 p-1" href="/laptopdetails.html?AIO Zeno#productId=106633230000026#itemid=106633240000112">
395
-                                    <div class="ps-2">
396
-                                    Zeno All In One
397
-                                    </div>
398
-                                    </a>
399
-                                    <a class="h-100 p-1" href="/laptopdetails.html?AIO Fyro#productId=106633230000027#itemid=106633240000126">
400
-                                    <div class="ps-2">
401
-                                    Fyro All iIn One
402
-                                    </div>
403
-                                    </a>
404
-                               </div>
405
-                                </li>
406
-                                <li class="expandlinav">
407
-                                 <div class="d-flex justify-content-between explandlinavnameparent">
408
-                                   <span class="explandlinavname">ACCESSORIES </span><span  data-name="allinones.html" class="viewall_li">+</span>
409
-                                  </div>
410
-                                     <div class="content-expandlinav pt-2 d-none">
411
-                                    <a class="h-100 p-1" href="/storageproducts.html">
412
-                                     <div class="ps-2">
413
-                                      Storage
414
-                                     </div>
415
-                                      </a>
416
-                                   <a class="h-100 p-1" href="/ramproducts.html">
417
-                                  <div class="ps-2">
418
-                                   Memory
419
-                                   </div>
420
-                                  </a>
421
-                                 </div>
422
-                                 </li>
423
-                                 <!-- 
424
-                                 <li class=""><a href="./ramproducts.html" class="satoshi_font">MEMORY</a></li>
425
-                                 <li class=""><a href="./storageproducts.html" class="satoshi_font">STORAGE</a></li> -->
426
-                                <li class=""><a href="./support.html" class="satoshi_font" >SUPPORT</a></li>
427
-                                <li class=""><a href="./press.html" class="satoshi_font">PRESS</a></li>
428
-                                <li class=""><a href="./contact.html" class="satoshi_font">CONTACT</a></li>
429
-                            </ul>
430
-                        </nav>
431
-                    </div>
432
-                    <div class="mobile-curr-lang-wrap d-none">
433
-                        <div class="single-mobile-curr-lang">
434
-                            <a class="mobile-language-active" href="#">Language <i class="icofont-simple-down"></i></a>
435
-                            <div class="lang-curr-dropdown lang-dropdown-active">
436
-                                <ul>
437
-                                    <li><a href="#">English</a></li>
438
-                                    <li><a href="#">Spanish</a></li>
439
-                                    <li><a href="#">Hindi </a></li>
440
-                                </ul>
441
-                            </div>
442
-                        </div>
443
-                    </div>
444
-                    <div class="aside-contact-info d-none">
445
-                        <ul>
446
-                            <li><i class="icofont-clock-time"></i>Monday - Friday: 9:00 - 19:00</li>
447
-                            <li><i class="icofont-envelope"></i>Info@example.com</li>
448
-                            <li><i class="icofont-stock-mobile"></i>(+55) 254. 254. 254</li>
449
-                            <li><i class="icofont-home"></i>Helios Tower 75 Tam Trinh Hoang - Ha Noi - Viet Nam</li>
450
-                        </ul>
451
-                    </div>
452
-                </div>
453
-            </div>
454
-        </div>`;
455
-  $("#navbar-head").html(nav_html);
456
-
457
-  $(".explandlinavnameparent").click(function (e) {
458
-    let parentElement = $(e.target).parents(".expandlinav");
459
-    if ($(parentElement).find(".content-expandlinav").hasClass("d-none")) {
460
-      const name = $(parentElement).find(".viewall_li").data("name");
461
-      $(parentElement)
462
-        .find(".viewall_li")
463
-        .html(`<a href="${name}">view all</a>`);
464
-      $(parentElement).find(".content-expandlinav").removeClass("d-none");
465
-    } else {
466
-      $(parentElement).find(".viewall_li").html("+");
467
-      $(parentElement).find(".content-expandlinav").addClass("d-none");
468
-    }
469
-  });
470
-
471
-  let width = $(window).width();
472
-  $(".menu-negative-mrg2,.menu-negative-mrg3,.menu-negative-mrg4").css(
473
-    "width",
474
-    width
475
-  );
476
-  let ele_page = $("body").hasClass("product_pg");
477
-  if (ele_page == true) {
478
-    $(".header-area").removeClass("bg-white");
479
-    $(".main-menu").find("nav ul li a").addClass("text-white");
480
-    $(".header-bottom.sticky-bar").removeClass("sticky-bar");
481
-    let src = `../dist/assets/imgs/anwi-logo-2.png`;
482
-    $(".logo-menu-wrap").find(".logo a img").attr("src", src);
483
-    $(".main-body").find("iframe").attr("width", width);
484
-    if (width <= 575 && width >= 390) {
485
-      $(".main-body").find("iframe").attr({
486
-        width: width,
487
-        height: 236,
488
-      });
489
-    } else if (width <= 390 && width >= 270) {
490
-      $(".main-body").find("iframe").attr({
491
-        width: width,
492
-        height: 210,
493
-      });
494
-    } else if (width <= 998 && width > 575) {
495
-      $(".main-body").find("iframe").attr({
496
-        width: width,
497
-        height: 530,
498
-      });
499
-    } else if (width <= 2720 && width > 2300) {
500
-      $(".main-body").find("iframe").attr({
501
-        width: width,
502
-        height: 1440,
503
-      });
504
-    } else if (width <= 2300 && width > 1921) {
505
-      $(".main-body").find("iframe").attr({
506
-        width: width,
507
-        height: 1132,
508
-      });
509
-    } else if (width <= 1920 && width > 1620) {
510
-      $(".main-body").find("iframe").attr({
511
-        width: width,
512
-        height: 1083,
513
-      });
514
-    } else {
515
-      $(".main-body").find("iframe").attr({
516
-        width: width,
517
-        height: 861,
518
-      });
519
-    }
520
-  }
521
-
522
-  $("a.ram_data").click(function () {
523
-    let item_id = $(this).attr("accessories_id");
524
-    let loc_path = "/products.html";
525
-    if (window.location.pathname.includes(loc_path)) {
526
-      window.location.href = `?itemid=${item_id}`;
527
-    } else {
528
-      window.location.href = `/products.html#itemid=${item_id}`;
529
-    }
530
-  });
531
-
532
-  // $(".main-menu nav ul").find("li").each(function () {
533
-  //     var current = window.location.pathname;
534
-  //     var $this = $(this).find("a");
535
-  //     if (current != "/") {
536
-  //         if ($this.attr('href').indexOf(current) !== -1) {
537
-  //             $(this).addClass('active_nav');
538
-  //         }
539
-  //     }
540
-
541
-  // })
542
-
543
-  // destroy localstorage data
544
-  let loc_path = "/productdetails.html";
545
-  if (window.location.pathname.includes(loc_path) === false) {
546
-    localStorage.removeItem("product_data");
547
-    localStorage.removeItem("top_data");
548
-  }
549
-  let loc_path1 = "/productcatloguedetails.html";
550
-  if (window.location.pathname.includes(loc_path1) === false) {
551
-    localStorage.removeItem("product_catlogue_obj");
552
-  }
553
-
554
-  //services pages links and sources
555
-
556
-  let $body_pg = $("body").hasClass("services_page");
557
-  let $hm_pg = "../index.html";
558
-  let $nav_img = "../dist/assets/imgs/anwi-logo-1.png";
559
-  let $footer_img = "../dist/assets/imgs/anwi-logo-2.png";
560
-  let $scrool_top_img = "../dist/assets/imgs/Home/rocket-footer.png";
561
-  let $about_pg = $("body").hasClass("about_page");
562
-  if ($about_pg == true) {
563
-    $(".main-menu").find("nav ul li a").addClass("text-dark");
564
-    let img_src = `./dist/assets/imgs/anwi-logo-1.png`;
565
-    $(".logo-menu-wrap").find(".logo a img").attr("src", img_src);
566
-    $(".header-bottom").addClass("sticky-bar stick");
567
-    $("body.about_page")
568
-      .find(".header-large-device")
569
-      .find(".header-action-wrap")
570
-      .find(".same-style")
571
-      .find("svg")
572
-      .find("path")
573
-      .attr("fill", "#000");
574
-  }
575
-  if ($body_pg == true) {
576
-    $(".header-large-device")
577
-      .find(".logo-menu-wrap .logo")
578
-      .find("a")
579
-      .attr("href", $hm_pg);
580
-    $(".header-large-device")
581
-      .find(".logo-menu-wrap .logo")
582
-      .find("a img")
583
-      .attr("src", $nav_img);
584
-    $(".mobile-logo").find("a").attr("href", $hm_pg);
585
-    $(".mobile-logo").find(".logo a img").attr("src", $nav_img);
586
-    $("body.services_page")
587
-      .find(".header-large-device")
588
-      .find(".header-action-wrap")
589
-      .find(".same-style")
590
-      .find("svg")
591
-      .find("path")
592
-      .attr("fill", "#000");
593
-    $(".main-menu")
594
-      .find("nav ul")
595
-      .find("li a")
596
-      .each(function () {
597
-        $(this).addClass("text-dark");
598
-        $(".header-bottom").addClass("sticky-bar stick");
599
-        let $arc = $(this).attr("href");
600
-        let $spcial_char = $arc.includes("./");
601
-        if ($spcial_char === true) {
602
-          let $refarence = `.${$arc}`;
603
-          $(this).attr("href", $refarence);
604
-        }
605
-      });
606
-    $(".same-style")
607
-      .find("a")
608
-      .each(function () {
609
-        let $arc1 = $(this).attr("href");
610
-        let $spcial_char1 = $arc1.includes("./");
611
-        if ($spcial_char1 === true) {
612
-          let $refarence1 = `.${$arc1}`;
613
-          $(this).attr("href", $refarence1);
614
-        }
615
-      });
616
-    $(".tab-content")
617
-      .find("img")
618
-      .each(function () {
619
-        let $img_src = $(this).attr("src");
620
-        let $img_src1 = $img_src.includes("./");
621
-        if ($img_src1 === true) {
622
-          let $refarenceimg1 = `.${$img_src}`;
623
-          $(this).attr("src", $refarenceimg1);
624
-        }
625
-      });
626
-    $(".clickable-mainmenu-wrap")
627
-      .find("nav ul")
628
-      .find("li a")
629
-      .each(function () {
630
-        let $arc_mbil = $(this).attr("href");
631
-        let $spcial_char_mbil = $arc_mbil.includes("./");
632
-        if ($spcial_char_mbil === true) {
633
-          let $refarence_mbil = `.${$arc_mbil}`;
634
-          $(this).attr("href", $refarence_mbil);
635
-        }
636
-      });
637
-  }
638
-
639
-  setTimeout(() => {
640
-    if (width <= 600) {
641
-      $(".same-style").find("svg path").attr("fill", "#000");
642
-    }
643
-  }, 300);
644
-
645
-  // overview
646
-
647
-  $(".overview").click(function (e) {
648
-    let name = $(e.target).data("overview");
649
-
650
-    document.querySelector(name)?.scrollIntoView({
651
-      behavior: "smooth",
652
-    });
653
-  });
654
-
655
-  $(".overviewspecs").click(function (e) {
656
-    document.querySelector("#specification_data")?.scrollIntoView({
657
-      behavior: "smooth",
658
-    });
659
-  });
660
-}

+ 0
- 644
dist/js-old/navbar.js-old Просмотреть файл

@@ -1,644 +0,0 @@
1
-navINIT();
2
-
3
-function navINIT() {
4
-
5
-
6
-
7
-   
8
-
9
-    async function getAllProdouctsIds(){
10
-        let res = await API_SERVICES_ACTIONS.getAPIService('apis/v4/bizgaze/integrations/products/getallproducts',true);
11
-        if(res.isError){
12
-            alert(res.errorMsg);
13
-            return;
14
-        }
15
-
16
-        res = JSON.parse(res.response.result);
17
-    
18
-        for(let i=0;i<res.length;i++){
19
-            let curr = res[i];
20
-            let productname = curr.productname;
21
-            let id = curr.productid;
22
-            
23
-            // ACCESSORIES
24
-            switch (productname) {
25
-                case 'Zeno Sleekbook':
26
-                    appendIdNav('zenosleekbook',id);
27
-                    break;
28
-                case 'Zeno Dualbook':
29
-                    appendIdNav('zenodualbook',id);
30
-                    break;
31
-                case "FYRO Flagship":
32
-                    appendIdNav('fyroflagship',id);
33
-                    break;
34
-                case "AIO Fyro":
35
-                    // appendIdNav('fyroaio',id);
36
-                    break;
37
-                case "AIO Zeno":
38
-                    // appendIdNav('zenoaio',id);
39
-                default:
40
-                    break;
41
-            }
42
-        }
43
-    }
44
-
45
-    function appendIdNav(className,id){
46
-        let html = $(`.${className}`).attr('href');
47
-        const pattern = /{[^}]+}/g;
48
-        const replacedString = html.replace(pattern, id);
49
-        $(`.${className}`).parents('.nav-tab-show').removeClass('d-none')
50
-        $(`.${className}`).attr('href',replacedString);
51
-    }
52
-    
53
-    if(!window.location.href.includes('orderconfirmation')&&!window.location.href.includes('/w/')){
54
-        loadCart();
55
-        
56
-    }
57
-   
58
-    function loadHelper(src = './dist/js/utils/helpers.js'){
59
-        if ($(`script[src="${src}"]`).length > 0) {
60
-          return new Promise((resolve) => resolve());
61
-        }
62
-        return new Promise(function (resolve, reject) {
63
-            var s;
64
-            s = document.createElement('script');
65
-            s.src = src;
66
-            s.onload = resolve;
67
-            s.onerror = reject;
68
-            document.head.appendChild(s);
69
-        });
70
-    }
71
-    async function loadCart(){
72
-
73
-        if(!window.location.href.includes('services/paymentmethod.html')){
74
-            let files = ['./dist/js/shoppingcart/addtocart.js'];
75
-            await loadHelper();
76
-            for(let i=0;i<files.length;i++){
77
-                if ($(`script[src="${files[i]}"]`).length > 0) {
78
-                    continue;
79
-                }
80
-                try {
81
-            
82
-                    await loadHelper(files[i])
83
-                    console.log("done");
84
-    
85
-                } catch (error) {
86
-                    console.log(error);
87
-                    return;
88
-                }
89
-            }
90
-        }
91
-
92
-         setLengthCart();
93
-         getAllProdouctsIds();
94
-        //console.log("hello");
95
-
96
-        
97
-        
98
-      
99
-    }
100
-    let URLNAMENAV = window.location.href;
101
-    const isTransparent = URLNAMENAV.includes('login')||URLNAMENAV.includes('orderconfirmation')|| URLNAMENAV.includes('services/paymentmethod.html');
102
-    debugger;
103
-    let nav_html = `
104
-<header class="header-area section-padding-1 transparent-bar" ${isTransparent ?'style="background:#000"' :''}>
105
-            <div class="header-large-device">
106
-                <div class="header-bottom sticky-bar">
107
-                    <div class="container">
108
-                        <div class="header-bottom-flex">
109
-                            <div class="logo-menu-wrap d-flex gap-5">
110
-                                <div class="logo">
111
-                                    <a href="../index.html">
112
-                                        <img src="/dist/assets/imgs/anwi-logo-2.png" alt="logo" class="nav_logo">
113
-                                    </a>
114
-                                </div>
115
-                                <div class="main-menu menu-lh-1 main-menu-padding-1">
116
-                                    <nav>
117
-                                        <ul class="mb-0 p-0">
118
-                                        <li class="hover_tab_1">
119
-                                            <a href="/laptops.html" class="satoshi_font">LAPTOPS
120
-                                                <svg style="width:18px;height:15px" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg">
121
-                                                    <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"/>
122
-                                                </svg>
123
-                                            </a>
124
-                                        <ul class="pb-3" style="list-style:none">
125
-                                            <li>
126
-                                                <div class="d-flex gap-4r pt-4 pb-2 align-items-center justify-content-center">
127
-                                                    <div class="position-relative nav-tab-show  d-none">
128
-                                                        <a class="h-100 nav_items zenosleekbook" href="/laptopdetails.html?Zeno#productId={106633230000029}">
129
-                                                            <div  style="" class="align-items-center cursor-pointer d-flex flex-column h-100 justify-content-center rounded-3">
130
-                                                                <img src="https://appassets.bizgaze.app/_files/documents/663/cfed4b55-9c51-48a8-969f-2d443fdb9bac/15%20inch.png" alt="ora img" class="nav_imgs"/>
131
-                                                                <p  class="mb-0 text-center text-dark w-100">Zeno Sleekbook </p>
132
-                                                            </div>
133
-                                                        </a>
134
-                                                    </div>
135
-                                                    <div class="position-relative nav-tab-show  d-none">
136
-                                                        <a class="h-100 nav_items fyroflagship" href="/laptopdetails.html?Fyro#productId={106633230000031}">
137
-                                                            <div  style="" class=" align-items-center cursor-pointer d-flex flex-column h-100 justify-content-center rounded-3">
138
-                                                                <img src="https://appassets.bizgaze.app/_files/documents/663/39d3ec7f-c692-4489-a808-60d79c0ffcb1/17%20inches.png" alt="ora img" class="nav_imgs"/>
139
-                                                                <p  class="mb-0 text-center text-dark w-100">Fyro Flagship </p>
140
-                                                            </div>
141
-                                                        </a>
142
-                                                    </div>
143
-                                                    <div class="position-relative nav-tab-show  d-none">
144
-                                                    <a class="h-100 nav_items zenodualbook" href="/laptopdetails.html?Zeno#productId={106633230000030}">
145
-                                                        <div  style="" class=" align-items-center cursor-pointer d-flex flex-column h-100 justify-content-center rounded-3">
146
-                                                            <img src="https://appassets.bizgaze.app/_files/documents/663/3feb2ad5-7451-4cd5-ba7a-f6695e1fa708/zeno_dualbook.png" alt="ora img" class="nav_imgs"/>
147
-                                                            <p  class="mb-0 text-center text-dark w-100">Zeno Dual Book </p>
148
-                                                        </div>
149
-                                                    </a>
150
-                                                </div>
151
-                                                </div>
152
-                                            </li>
153
-                                        </ul>
154
-                                    </li>
155
-                                    <li class="hover_tab_2">
156
-                                        <a href="/allinones.html" class="satoshi_font">ALL IN ONES
157
-                                            <svg style="width:18px;height:15px;" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg">
158
-                                                <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"/>
159
-                                            </svg>
160
-                                        </a>
161
-                                    <ul class="pb-3" style="list-style:none">
162
-                                        <li>
163
-                                            <div class="d-flex gap-4r pt-4 pb-2 align-items-center justify-content-center">
164
-                                                <div class="position-relative  nav-tab-show">
165
-                                                    <a class="h-100 nav_items zenoaio" href="/laptopdetails.html?AIO Zeno#productId=106633230000026#itemid=106633240000112">
166
-                                                        <div  style="" class="align-items-center cursor-pointer d-flex flex-column h-100 justify-content-center rounded-3">
167
-                                                            <img src="https://appassets.bizgaze.app/_files/documents/663/42bdf033-74fb-45ca-b180-9bff7a0dca86/zeno_aio.png" alt="ora img" class="nav_imgs"/>
168
-                                                            <p  class="mb-0 text-center text-dark w-100">Zeno All in ones</p>
169
-                                                        </div>
170
-                                                    </a>
171
-                                                </div>
172
-                                                <div class="position-relative  nav-tab-show">
173
-                                                    <a class="h-100 nav_items" href="/laptopdetails.html?AIO Fyro#productId=106633230000027#itemid=106633240000126">
174
-                                                        <div  style="" class=" align-items-center cursor-pointer d-flex flex-column h-100 justify-content-center rounded-3">
175
-                                                            <img src="https://appassets.bizgaze.app/_files/documents/663/39e90b38-3d04-4f88-bff4-2b6feb3eb54c/Asset%204@2x.png" alt="ora img" class="nav_imgs"/>
176
-                                                            <p  class="mb-0 text-center text-dark w-100">Fyro All in ones </p>
177
-                                                        </div>
178
-                                                    </a>
179
-                                                </div>
180
-                                            </div>
181
-                                        </li>
182
-                                    </ul>
183
-                                    </li>
184
-                                    <li class="hover_tab_2">
185
-                                        <a href="/accessories.html" class="satoshi_font">ACCESSORIES
186
-                                            <svg style="width:18px;height:15px;" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg">
187
-                                                <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"/>
188
-                                            </svg>
189
-                                        </a>
190
-                                        <ul class="pb-3" style="list-style:none">
191
-                                        <li>
192
-                                            <div class="d-flex gap-4r pt-4 pb-2 align-items-center justify-content-center">
193
-                                                <div class="position-relative  nav-tab-show_acc">
194
-                                                    <a class="h-100 nav_items" href="/storageproducts.html">
195
-                                                        <div  style="" class="align-items-center cursor-pointer d-flex flex-column h-100 justify-content-center rounded-3">
196
-                                                            <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"/>
197
-                                                            <p  class="mb-0 text-center text-dark w-100">Storage</p>
198
-                                                        </div>
199
-                                                    </a>
200
-                                                </div>
201
-                                                <div class="position-relative  nav-tab-show_acc">
202
-                                                    <a class="h-100 nav_items" href="/ramproducts.html">
203
-                                                        <div  style="" class=" align-items-center cursor-pointer d-flex flex-column h-100 justify-content-center rounded-3">
204
-                                                            <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"/>
205
-                                                            <p  class="mb-0 text-center text-dark w-100">Memory </p>
206
-                                                        </div>
207
-                                                    </a>
208
-                                                </div>
209
-                                            </div>
210
-                                        </li>
211
-                                    </ul>
212
-                                    </li>
213
-                                    <!-- 
214
-                                    <li><a href="./storageproducts.html" class="satoshi_font">STORAGE</a></li>
215
-                                    <li><a href="./ramproducts.html" class="satoshi_font">MEMORY</a></li> -->
216
-                                            <li><a href="./support.html" class="satoshi_font">SUPPORT</a></li>
217
-                                            <li><a href="./press.html" class="satoshi_font">PRESS</a></li>
218
-                                            <li><a href="./contact.html" class="satoshi_font">CONTACT</a></li>
219
-                                            <li class="d-none"><a href="#" class="satoshi_font product_data" item_id="106633220000002">ACCESSORIES</a></li>
220
-                                        </ul>
221
-                                    </nav>
222
-                                </div>
223
-                            </div>
224
-                            <div class="header-action-wrap header-action-flex header-action-width header-action-mrg-1">
225
-                                <div class="same-style">
226
-                                <a href="/myaccount.html" class="my_avatar">
227
-                                <svg class="user-icon" width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
228
-                                    <g clip-path="url(#clip0)">
229
-                                        <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"/>
230
-                                        <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"/>
231
-                                    </g>
232
-                                    <defs>
233
-                                        <clipPath id="clip0">
234
-                                            <rect width="24" height="24" fill="white" transform="translate(0.444336 0.366516)"/>
235
-                                        </clipPath>
236
-                                    </defs>
237
-                                </svg>
238
-                                </a>
239
-                                </div>
240
-                                <div class="same-style header-cart">
241
-                                <a class="cart-active1 position-relative" href="/shopping-cart.html">
242
-                                <svg class="cart_icon" width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
243
-                                    <g clip-path="url(#clip0)">
244
-                                        <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"/>
245
-                                        <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"/>
246
-                                        <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"/>
247
-                                    </g>
248
-                                    <defs>
249
-                                        <clipPath id="clip0">
250
-                                            <rect width="24" height="24" fill="white" transform="translate(0.494141 0.366516)"/>
251
-                                        </clipPath>
252
-                                    </defs>
253
-                                </svg>
254
-                                <span class="position-absolute cartnumcount d-none" >0</span>
255
-                                </a>
256
-                                </div>
257
-                            </div>
258
-                        </div>
259
-                    </div>
260
-                    <div class="sub_nav_container bg-white d-none border-top" style="
261
-                        box-shadow: 0 6PX 16PX 0 #1919190f;
262
-                        -webkit-backdrop-filter: blur(6px);
263
-                        backdrop-filter: blur(6px);">
264
-                        <div class="container">
265
-                            <div class="d-flex justify-content-between">
266
-                           <span class="d-flex align-items-center font-weight-600">
267
-                           <h2 class="titleproductnav sub_nav_item me-3 fs-9"></h2></span>
268
-                                <ul class="d-flex mb-0 py-3  justify-content-center align-items-center" style="list-style:none;">
269
-                                    <li>
270
-                                        <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>
271
-                                    </li>
272
-                                    <li>
273
-                                        <a data-spec="true" class="sub_nav_item me-3 fs-9 overviewspecs">Specifications</a>
274
-                                    </li>
275
-                                    <li>
276
-                                        <a href="#"  class="font-12p btn btn-dark button_dark sub_nav_item text-white">Buy now</a>
277
-                                    </li>
278
-                                </ul>
279
-                            </div>
280
-                        </div>
281
-                    </div>
282
-                </div>
283
-            </div>
284
-            <div class="header-small-device header-small-ptb sticky-bar py-md-2 py-2 bg-white">
285
-                <div class="container-fluid px-4">
286
-                    <div class="row align-items-center">
287
-                        <div class="col-6 header-action-wrap">
288
-                            <div class="d-flex">
289
-                                <div class="same-style header-info">
290
-                                    <button class="mobile-menu-button-active">
291
-                                        <span class="info-width-1"></span>
292
-                                        <span class="info-width-2"></span>
293
-                                        <span class="info-width-3"></span>
294
-                                    </button>
295
-                                </div>
296
-                                <div class="mobile-logo mobile-logo-width ps-3">
297
-                                    <a href="../index.html">
298
-                                        <img alt="" src="/dist/assets/imgs/anwi-logo-1.png" class="w-50">
299
-                                    </a>
300
-                                </div>
301
-                            </div>
302
-                        </div>
303
-                        <div class="col-6">
304
-                            <div class="header-action-wrap header-action-flex header-action-mrg-1">
305
-                                <div class="same-style">
306
-                                <a href="/myaccount.html" class="my_avatar">
307
-                                    <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">
308
-                                    <g clip-path="url(#clip0)">
309
-                                        <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"/>
310
-                                        <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"/>
311
-                                    </g>
312
-                                    <defs>
313
-                                        <clipPath id="clip0">
314
-                                            <rect width="24" height="24" fill="white" transform="translate(0.444336 0.366516)"/>
315
-                                        </clipPath>
316
-                                    </defs>
317
-                                </svg>
318
-                                </a>
319
-                                </div>
320
-                                <div class="same-style header-cart ms-3">
321
-                                <a class="cart-active1 position-relative" href="/shopping-cart.html">
322
-                                <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">
323
-                                    <g clip-path="url(#clip0)">
324
-                                        <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"/>
325
-                                        <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"/>
326
-                                        <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"/>
327
-                                    </g>
328
-                                    <defs>
329
-                                        <clipPath id="clip0">
330
-                                            <rect width="24" height="24" fill="white" transform="translate(0.494141 0.366516)"/>
331
-                                        </clipPath>
332
-                                    </defs>
333
-                                </svg>
334
-                                <span class="position-absolute cartnumcount d-none"  style="top:-27%;right:-80%">0</span>
335
-                                </a>
336
-                                </div>
337
-                            </div>
338
-                        </div>
339
-                    </div>
340
-                </div>
341
-            </div>
342
-        </header>
343
-        <!-- Mobile menu start -->
344
-        <div class="mobile-menu-active clickalbe-sidebar-wrapper-style-1">
345
-            <div class="clickalbe-sidebar-wrap">
346
-            <div class="row pb-2 border-bottom">
347
-                <div class="col-6">
348
-                    <div class="mobile-logo mobile-logo-width">
349
-                        <a href="../index.html">
350
-                            <img alt="" src="/dist/assets/imgs/anwi-logo-1.png" class="w-75">
351
-                        </a>
352
-                    </div>
353
-                </div>
354
-                <div class="col-6 text-end pe-4">
355
-                    <a class="sidebar-close"><i class="fa-solid fa-xmark"></i></a>
356
-                </div>
357
-            </div>
358
-               
359
-                <div class="mobile-menu-content-area sidebar-content-100-percent pt-3">
360
-                    <div class="mobile-search d-none">
361
-                        <form class="search-form" action="#">
362
-                            <input type="text" placeholder="Search here…" class="satoshi_font">
363
-                            <button class="button-search"><i class="fa-solid fa-magnifying-glass"></i></button>
364
-                        </form>
365
-                    </div>
366
-                    <div class="clickable-mainmenu-wrap clickable-mainmenu-style1">
367
-                        <nav>
368
-                            <ul class="pl-0">
369
-                          
370
-
371
-                                
372
-                                <li class="expandlinav">
373
-                                <div class="d-flex justify-content-between explandlinavnameparent">
374
-                                    <span class="explandlinavname">LAPTOP</span><span data-name="laptops.html" class=" viewall_li">+</span>
375
-                                </div>
376
-                               <div class="content-expandlinav pt-2 d-none">
377
-                               <a class="h-100 p-1 zenosleekbook" href="/laptopdetails.html?Zeno#productId={106633230000029}">
378
-                                    <div class="ps-2">
379
-                                    Zeno Sleekbook
380
-                                    </div>
381
-                                </a>
382
-                                <a class="h-100 p-1 fyroflagship" href="/laptopdetails.html?Fyro#productId={106633230000031}">
383
-                                    <div class="ps-2">Fyro Flagship  </div>
384
-                                    </a>
385
-                                    <a class="h-100 p-1 zenodualbook" href="/laptopdetails.html?Zeno#productId={106633230000030}">
386
-                                    <div class="ps-2">Zeno Dual Book   </div>
387
-                                    </a>
388
-                               </div>
389
-                                </li>
390
-                                <li class="expandlinav">
391
-                                <div class="d-flex justify-content-between explandlinavnameparent">
392
-                                    <span class="explandlinavname">ALL IN ONES </span><span  data-name="allinones.html" class="viewall_li">+</span>
393
-                                </div>
394
-                               <div class="content-expandlinav pt-2 d-none">
395
-                               <a class="h-100 p-1" href="/laptopdetails.html?AIO Zeno#productId=106633230000026#itemid=106633240000112">
396
-                                    <div class="ps-2">
397
-                                    Zeno All In One
398
-                                    </div>
399
-                                    </a>
400
-                                    <a class="h-100 p-1" href="/laptopdetails.html?AIO Fyro#productId=106633230000027#itemid=106633240000126">
401
-                                    <div class="ps-2">
402
-                                    Fyro All iIn One
403
-                                    </div>
404
-                                    </a>
405
-                               </div>
406
-                                </li>
407
-                                <li class="expandlinav">
408
-                                 <div class="d-flex justify-content-between explandlinavnameparent">
409
-                                   <span class="explandlinavname">ACCESSORIES </span><span  data-name="allinones.html" class="viewall_li">+</span>
410
-                                  </div>
411
-                                     <div class="content-expandlinav pt-2 d-none">
412
-                                    <a class="h-100 p-1" href="/storageproducts.html">
413
-                                     <div class="ps-2">
414
-                                      Storage
415
-                                     </div>
416
-                                      </a>
417
-                                   <a class="h-100 p-1" href="/ramproducts.html">
418
-                                  <div class="ps-2">
419
-                                   Memory
420
-                                   </div>
421
-                                  </a>
422
-                                 </div>
423
-                                 </li>
424
-                                 <!-- 
425
-                                 <li class=""><a href="./ramproducts.html" class="satoshi_font">MEMORY</a></li>
426
-                                 <li class=""><a href="./storageproducts.html" class="satoshi_font">STORAGE</a></li> -->
427
-                                <li class=""><a href="./support.html" class="satoshi_font" >SUPPORT</a></li>
428
-                                <li class=""><a href="./press.html" class="satoshi_font">PRESS</a></li>
429
-                                <li class=""><a href="./contact.html" class="satoshi_font">CONTACT</a></li>
430
-                            </ul>
431
-                        </nav>
432
-                    </div>
433
-                    <div class="mobile-curr-lang-wrap d-none">
434
-                        <div class="single-mobile-curr-lang">
435
-                            <a class="mobile-language-active" href="#">Language <i class="icofont-simple-down"></i></a>
436
-                            <div class="lang-curr-dropdown lang-dropdown-active">
437
-                                <ul>
438
-                                    <li><a href="#">English</a></li>
439
-                                    <li><a href="#">Spanish</a></li>
440
-                                    <li><a href="#">Hindi </a></li>
441
-                                </ul>
442
-                            </div>
443
-                        </div>
444
-                    </div>
445
-                    <div class="aside-contact-info d-none">
446
-                        <ul>
447
-                            <li><i class="icofont-clock-time"></i>Monday - Friday: 9:00 - 19:00</li>
448
-                            <li><i class="icofont-envelope"></i>Info@example.com</li>
449
-                            <li><i class="icofont-stock-mobile"></i>(+55) 254. 254. 254</li>
450
-                            <li><i class="icofont-home"></i>Helios Tower 75 Tam Trinh Hoang - Ha Noi - Viet Nam</li>
451
-                        </ul>
452
-                    </div>
453
-                </div>
454
-            </div>
455
-        </div>`;
456
-    $("#navbar-head").html(nav_html);
457
-
458
-    $('.explandlinavnameparent').click(function (e){
459
-
460
-        let parentElement = $(e.target).parents('.expandlinav');
461
-        if($(parentElement).find('.content-expandlinav').hasClass('d-none')){
462
-            const name = $(parentElement).find('.viewall_li').data('name');
463
-            $(parentElement).find('.viewall_li').html(`<a href="${name}">view all</a>`);
464
-            $(parentElement).find('.content-expandlinav').removeClass('d-none');
465
-           }else{
466
-            $(parentElement).find('.viewall_li').html('+');
467
-            $(parentElement).find('.content-expandlinav').addClass('d-none');
468
-           }
469
-       
470
-       console.log($(e.target));
471
-        
472
-    });
473
-
474
-    let width = $(window).width();
475
-    $(".menu-negative-mrg2,.menu-negative-mrg3,.menu-negative-mrg4").css("width", width);
476
-    let ele_page = $("body").hasClass("product_pg");
477
-    if (ele_page == true) {
478
-        $(".header-area").removeClass("bg-white");
479
-        $(".main-menu").find("nav ul li a").addClass("text-white");
480
-        $(".header-bottom.sticky-bar").removeClass("sticky-bar");
481
-        let src = `../dist/assets/imgs/anwi-logo-2.png`;
482
-        $(".logo-menu-wrap").find(".logo a img").attr("src", src);
483
-        $(".main-body").find("iframe").attr("width", width);
484
-        if (width <= 575 && width >= 390) {
485
-            $(".main-body").find("iframe").attr({
486
-                width: width,
487
-                height: 236,
488
-            })
489
-        } else if (width <= 390 && width >= 270) {
490
-            $(".main-body").find("iframe").attr({
491
-                width: width,
492
-                height: 210,
493
-            });
494
-        } else if (width <= 998 && width > 575) {
495
-            $(".main-body").find("iframe").attr({
496
-                width: width,
497
-                height: 530,
498
-            });
499
-        } else if (width <= 2720 && width > 2300) {
500
-            $(".main-body").find("iframe").attr({
501
-                width: width,
502
-                height: 1440,
503
-            });
504
-        } else if(width <= 2300 && width > 1921){
505
-            $(".main-body").find("iframe").attr({
506
-                width: width,
507
-                height: 1132,
508
-            });
509
-        }
510
-        else if(width <= 1920 && width > 1620){
511
-            $(".main-body").find("iframe").attr({
512
-                width: width,
513
-                height: 1083,
514
-            });
515
-        }else {
516
-            $(".main-body").find("iframe").attr({
517
-                width: width,
518
-                height: 861,
519
-            });
520
-        }
521
-    }
522
-
523
-
524
-    $("a.ram_data").click(function () {
525
-        let item_id = $(this).attr("accessories_id");
526
-        let loc_path = '/products.html'
527
-        if (window.location.pathname.includes(loc_path)) {
528
-            window.location.href = `?itemid=${item_id}`
529
-        }
530
-        else {
531
-            window.location.href = `/products.html#itemid=${item_id}`;
532
-        }
533
-    })
534
-
535
-
536
-    // $(".main-menu nav ul").find("li").each(function () {
537
-    //     var current = window.location.pathname;
538
-    //     var $this = $(this).find("a");
539
-    //     if (current != "/") {
540
-    //         if ($this.attr('href').indexOf(current) !== -1) {
541
-    //             $(this).addClass('active_nav');
542
-    //         }
543
-    //     }
544
-
545
-    // })
546
-
547
-    // destroy localstorage data
548
-    let loc_path = '/productdetails.html';
549
-    if (window.location.pathname.includes(loc_path) === false) {
550
-        localStorage.removeItem("product_data");
551
-        localStorage.removeItem("top_data")
552
-    }
553
-    let loc_path1 = '/productcatloguedetails.html';
554
-    if (window.location.pathname.includes(loc_path1) === false) {
555
-        localStorage.removeItem("product_catlogue_obj");
556
-    }
557
-
558
-    //services pages links and sources
559
-
560
-   
561
-
562
-
563
-
564
-    let $body_pg = $("body").hasClass("services_page");
565
-    let $hm_pg = "../index.html";
566
-    let $nav_img = "../dist/assets/imgs/anwi-logo-1.png";
567
-    let $footer_img = "../dist/assets/imgs/anwi-logo-2.png";
568
-    let $scrool_top_img = "../dist/assets/imgs/Home/rocket-footer.png";
569
-    let $about_pg = $("body").hasClass("about_page");
570
-    if($about_pg == true){
571
-        $(".main-menu").find("nav ul li a").addClass("text-dark");
572
-        let img_src = `./dist/assets/imgs/anwi-logo-1.png`;
573
-        $(".logo-menu-wrap").find(".logo a img").attr("src",img_src);
574
-        $(".header-bottom").addClass("sticky-bar stick");
575
-        $("body.about_page").find(".header-large-device").find(".header-action-wrap").find(".same-style").find("svg").find("path").attr("fill","#000");
576
-    }
577
-    if ($body_pg == true) {
578
-        $(".header-large-device").find(".logo-menu-wrap .logo").find("a").attr("href", $hm_pg);
579
-        $(".header-large-device").find(".logo-menu-wrap .logo").find("a img").attr("src", $nav_img);
580
-        $(".mobile-logo").find("a").attr("href", $hm_pg);
581
-        $(".mobile-logo").find(".logo a img").attr("src", $nav_img);
582
-        $("body.services_page").find(".header-large-device").find(".header-action-wrap").find(".same-style").find("svg").find("path").attr("fill","#000");
583
-        $(".main-menu").find("nav ul").find("li a").each(function () {
584
-            $(this).addClass("text-dark")
585
-            $(".header-bottom").addClass("sticky-bar stick");
586
-            let $arc = $(this).attr("href");
587
-            let $spcial_char = $arc.includes("./");
588
-            if ($spcial_char === true) {
589
-                let $refarence = `.${$arc}`
590
-                $(this).attr("href", $refarence);
591
-            }
592
-            
593
-        });
594
-        $(".same-style").find("a").each(function () {
595
-            let $arc1 = $(this).attr("href");
596
-            let $spcial_char1 = $arc1.includes("./");
597
-            if ($spcial_char1 === true) {
598
-                let $refarence1 = `.${$arc1}`
599
-                $(this).attr("href", $refarence1);
600
-            }
601
-        })
602
-        $(".tab-content").find("img").each(function(){
603
-            let $img_src = $(this).attr("src");
604
-            let $img_src1 = $img_src.includes("./");
605
-            if ($img_src1 === true) {
606
-                let $refarenceimg1 = `.${$img_src}`;
607
-                $(this).attr("src", $refarenceimg1);
608
-            }
609
-        });
610
-        $(".clickable-mainmenu-wrap").find("nav ul").find("li a").each(function () {
611
-            let $arc_mbil = $(this).attr("href");
612
-            let $spcial_char_mbil = $arc_mbil.includes("./");
613
-            if ($spcial_char_mbil === true) {
614
-                let $refarence_mbil = `.${$arc_mbil}`
615
-                $(this).attr("href", $refarence_mbil);
616
-            }
617
-        });
618
-    }
619
-
620
-    setTimeout(()=>{
621
-        if(width<=600){
622
-            $('.same-style').find('svg path').attr('fill','#000');
623
-        }
624
-    },300);
625
-
626
-    // overview 
627
-
628
-    $('.overview').click(function (e){
629
-        let name = $(e.target).data('overview');
630
-        
631
-        document.querySelector(name)?.scrollIntoView({
632
-            behavior: 'smooth'
633
-        });
634
-        
635
-    });
636
-
637
-    $('.overviewspecs').click(function (e){
638
-        document.querySelector('#specification_data')?.scrollIntoView({
639
-            behavior: 'smooth'
640
-        });
641
-    });
642
-
643
-    
644
-}

+ 0
- 487
dist/js-old/navbar2.js Просмотреть файл

@@ -1,487 +0,0 @@
1
-navINIT();
2
-
3
-function navINIT() {
4
-    if(!window.location.href.includes('orderconfirmation')&&!window.location.href.includes('/w/')){
5
-        loadCart();
6
-    }
7
-   
8
-    function loadHelper(src = './dist/js/utils/helpers.js'){
9
-        if ($(`script[src="${src}"]`).length > 0) {
10
-          return new Promise((resolve) => resolve());
11
-        }
12
-        return new Promise(function (resolve, reject) {
13
-            var s;
14
-            s = document.createElement('script');
15
-            s.src = src;
16
-            s.onload = resolve;
17
-            s.onerror = reject;
18
-            document.head.appendChild(s);
19
-        });
20
-    }
21
-    async function loadCart(){
22
-
23
-        if(!window.location.href.includes('services/paymentmethod.html')){
24
-            let files = ['./dist/js/shoppingcart/addtocart.js'];
25
-            await loadHelper();
26
-            for(let i=0;i<files.length;i++){
27
-                if ($(`script[src="${files[i]}"]`).length > 0) {
28
-                    continue;
29
-                }
30
-                try {
31
-            
32
-                    await loadHelper(files[i])
33
-                    console.log("done");
34
-    
35
-                } catch (error) {
36
-                    console.log(error);
37
-                    return;
38
-                }
39
-            }
40
-        }
41
-
42
-         setLengthCart();
43
-        //console.log("hello");
44
-
45
-        
46
-        
47
-      
48
-    }
49
-    let URLNAMENAV = window.location.href;
50
-    const isTransparent = URLNAMENAV.includes('login')||URLNAMENAV.includes('orderconfirmation')|| URLNAMENAV.includes('services/paymentmethod.html');
51
-    let nav_html = `
52
-<header class="header-area section-padding-1 transparent-bar" ${isTransparent ?'style="background:#0A1039"' :''}>
53
-            <div class="header-large-device">
54
-                <div class="header-bottom sticky-bar">
55
-                    <div class="container">
56
-                        <div class="header-bottom-flex">
57
-                            <div class="logo-menu-wrap d-flex">
58
-                                <div class="logo">
59
-                                    <a href="../index.html">
60
-                                        <img src="/dist/assets/imgs/anwi-logo-1.png" alt="logo" class="w-50">
61
-                                    </a>
62
-                                </div>
63
-                                <div class="main-menu menu-lh-1 main-menu-padding-1">
64
-                                    <nav>
65
-                                        <ul class="mb-0 p-0">
66
-                                        <li class="hover_tab_1"><a href="./storageproducts.html" class="satoshi_font">STORAGE</a>
67
-                                        <ul class="py-3 px-3 rounded-bottom shadow">
68
-                                            <li class="d-flex">
69
-                                                <ul class="nav nav-pills flex-column w-200 border-end" id="experienceTab" role="tablist">
70
-                                                    <li class="nav-item">
71
-                                                        <a class="nav-link active text-dark" data-bs-toggle="tab" href="#ora3">ORA 3</a>
72
-                                                    </li>
73
-                                                    <li class="nav-item">
74
-                                                        <a class="nav-link text-dark" data-bs-toggle="tab" href="#ora4">ORA 4</a>
75
-                                                    </li>
76
-                                                </ul>
77
-                                                <ul class="nav w-500">
78
-                                                    <li>
79
-                                                    <div class="tab-content">
80
-                                                        <div id="ora3" class="container tab-pane active">
81
-                                                            <div class="row">
82
-                                                                <div class="col-4">
83
-                                                                    <div class="bg-gray-4 rounded-3 cursor-pointer">
84
-                                                                        <img src="./dist/assets/imgs/Navbar/ora3_ram.png" alt="ora img" class=""/>
85
-                                                                        <p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora3 M.2 NVMe 512GB</p>
86
-                                                                    </div>
87
-                                                                </div>
88
-                                                                <div class="col-4">
89
-                                                                    <div class="bg-gray-4 rounded-3 cursor-pointer">
90
-                                                                         <img src="./dist/assets/imgs/Navbar/ora3_ram.png" alt="ora img" class=""/>
91
-                                                                         <p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora3 M.2 NVMe 1TB</p>
92
-                                                                    </div>
93
-                                                                </div>
94
-                                                                <div class="col-4">
95
-                                                                    <div class="bg-gray-4 rounded-3 cursor-pointer">
96
-                                                                        <img src="./dist/assets/imgs/Navbar/ora3_ram.png" alt="ora img" class=""/>
97
-                                                                        <p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora3 M.2 NVMe 2TB</p>
98
-                                                                    </div>
99
-                                                                </div>
100
-                                                            </div>
101
-                                                        </div>
102
-                                                        <div id="ora4" class="container tab-pane fade">
103
-                                                            <div class="row">
104
-                                                                <div class="col-4">
105
-                                                                    <div class="bg-gray-4 rounded-3 cursor-pointer">
106
-                                                                        <img src="./dist/assets/imgs/Navbar/ora3_ram.png" alt="ora img" class=""/>
107
-                                                                        <p class="fs-7 fw-600 mb-0 text-a-color text-center  pb-1">Ora4 M.2 NVMe 512GB</p>
108
-                                                                    </div>
109
-                                                                </div>
110
-                                                                <div class="col-4">
111
-                                                                    <div class="bg-gray-4 rounded-3 cursor-pointer">
112
-                                                                        <img src="./dist/assets/imgs/Navbar/ora3_ram.png" alt="ora img" class=""/>
113
-                                                                        <p class="fs-7 fw-600 mb-0 text-a-color text-center  pb-1">Ora4 M.2 NVMe 1TB</p>
114
-                                                                    </div>
115
-                                                                </div>
116
-                                                                <div class="col-4">
117
-                                                                    <div class="bg-gray-4 rounded-3 cursor-pointer">
118
-                                                                        <img src="./dist/assets/imgs/Navbar/ora3_ram.png" alt="ora img" class=""/>
119
-                                                                        <p class="fs-7 fw-600 mb-0 text-a-color text-center  pb-1">Ora4 M.2 NVMe 2TB</p>
120
-                                                                    </div>
121
-                                                                </div>
122
-                                                            </div>
123
-                                                        </div>
124
-                                                  </div>
125
-                                                </li>
126
-                                                </ul>
127
-                                            </li>
128
-                                        </ul>
129
-                                    </li>
130
-                                    <li class="hover_tab_2"><a href="./ramproducts.html" class="satoshi_font">MEMORY</a>
131
-                                    <ul class="py-3 px-3 rounded-bottom shadow">
132
-                                    <li class="d-flex">
133
-                                        <ul class="nav nav-pills flex-column w-200 border-end" id="experienceTab" role="tablist">
134
-                                            <li class="nav-item">
135
-                                                <a class="nav-link active text-dark" data-bs-toggle="tab" href="#laptop">Laptop</a>
136
-                                            </li>
137
-                                            <li class="nav-item">
138
-                                                <a class="nav-link text-dark" data-bs-toggle="tab" href="#desktop">Desktop</a>
139
-                                            </li>
140
-                                        </ul>
141
-                                        <ul class="nav w-500">
142
-                                            <li>
143
-                                            <div class="tab-content">
144
-                                                <div id="laptop" class="container tab-pane active">
145
-                                                    <div class="row">
146
-                                                        <div class="col-4">
147
-                                                            <div class="bg-gray-4 rounded-3 cursor-pointer">
148
-                                                                <img src="./dist/assets/imgs/Navbar/ora_ddr4_laptop.png" alt="ora img" class=""/>
149
-                                                                <p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora 8GB DDR5</p>
150
-                                                            </div>
151
-                                                        </div>
152
-                                                        <div class="col-4">
153
-                                                            <div class="bg-gray-4 rounded-3 cursor-pointer">
154
-                                                                 <img src="./dist/assets/imgs/Navbar/ora_ddr5_laptop.png" alt="ora img" class=""/>
155
-                                                                 <p class="fs-7 fw-600 mb-0 text-a-color text-center  pb-1">Ora 16GB DDR5</p>
156
-                                                            </div>
157
-                                                        </div>
158
-                                                        <div class="col-4 ">
159
-                                                            <div class="bg-gray-4 rounded-3 cursor-pointer">
160
-                                                                 <img src="./dist/assets/imgs/Navbar/ora_ddr5_laptop.png" alt="ora img" class=""/>
161
-                                                                 <p class="fs-7 fw-600 mb-0 text-a-color text-center  pb-1">Ora 32GB DDR5</p>
162
-                                                            </div>
163
-                                                        </div>
164
-                                                    </div>
165
-                                                </div>
166
-                                                <div id="desktop" class="container tab-pane fade">
167
-                                                    <div class="row">
168
-                                                        <div class="col-4">
169
-                                                            <div class="bg-gray-4 rounded-3 cursor-pointer">
170
-                                                                <img src="./dist/assets/imgs/Navbar/ora_ddr4_desktop.png" alt="ora img" class=""/>
171
-                                                                <p class="fs-7 fw-600 mb-0 text-a-color text-center  pb-1">Ora 8GB DDR4</p>
172
-                                                            </div>
173
-                                                        </div>
174
-                                                        <div class="col-4">
175
-                                                            <div class="bg-gray-4 rounded-3 cursor-pointer">
176
-                                                                <img src="./dist/assets/imgs/Navbar/ora_ddr4_desktop.png" alt="ora img" class=""/>
177
-                                                                <p class="fs-7 fw-600 mb-0 text-a-color text-center  pb-1">Ora 16GB DDR4</p>
178
-                                                            </div>
179
-                                                        </div>
180
-                                                        <div class="col-4">
181
-                                                            <div class="bg-gray-4 rounded-3 cursor-pointer">
182
-                                                                 <img src="./dist/assets/imgs/Navbar/ora_ddr4_desktop.png" alt="ora img" class=""/>
183
-                                                                 <p class="fs-7 fw-600 mb-0 text-a-color text-center  pb-1">Ora 32GB DDR4</p>
184
-                                                            </div>
185
-                                                        </div>
186
-                                                    </div>
187
-                                                </div>
188
-                                          </div>
189
-                                        </li>
190
-                                        </ul>
191
-                                    </li>
192
-                                </ul>
193
-                                    </li>
194
-                                            <li><a href="./support.html" class="satoshi_font">SUPPORT</a></li>
195
-                                            <li><a href="./press.html" class="satoshi_font">PRESS</a></li>
196
-                                            <li><a href="./index1.html" class="satoshi_font">COMING SOON</a></li>
197
-                                            <li><a href="./contact.html" class="satoshi_font">CONTACT</a></li>
198
-                                            <li class="d-none"><a href="#" class="satoshi_font product_data" item_id="106633220000002">ACCESSORIES</a></li>
199
-                                        </ul>
200
-                                    </nav>
201
-                                </div>
202
-                            </div>
203
-                            <div class="header-action-wrap header-action-flex header-action-width header-action-mrg-1">
204
-                                <div class="same-style">
205
-                                <a href="/myaccount.html" class="my_avatar">
206
-                      
207
-                                <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>
208
-                                </a>
209
-                                </div>
210
-                                <div class="same-style header-cart">
211
-                                <a class="cart-active1 position-relative" href="/shopping-cart.html">
212
-                                <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>
213
-                                
214
-                                <span class="position-absolute cartnumcount d-none" >0</span>
215
-                                </a>
216
-                                </div>
217
-                            </div>
218
-                        </div>
219
-                    </div>
220
-                </div>
221
-            </div>
222
-            <div class="header-small-device header-small-ptb sticky-bar py-md-2 py-2 bg-white">
223
-                <div class="container-fluid px-4">
224
-                    <div class="row align-items-center">
225
-                        <div class="col-6 header-action-wrap">
226
-                            <div class="d-flex">
227
-                                <div class="same-style header-info">
228
-                                    <button class="mobile-menu-button-active">
229
-                                        <span class="info-width-1"></span>
230
-                                        <span class="info-width-2"></span>
231
-                                        <span class="info-width-3"></span>
232
-                                    </button>
233
-                                </div>
234
-                                <div class="mobile-logo mobile-logo-width ps-3">
235
-                                    <a href="../index.html">
236
-                                        <img alt="" src="/dist/assets/imgs/anwi-logo-1.png" class="w-50">
237
-                                    </a>
238
-                                </div>
239
-                            </div>
240
-                        </div>
241
-                        <div class="col-6">
242
-                            <div class="header-action-wrap header-action-flex header-action-mrg-1">
243
-                                <div class="same-style">
244
-                                <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>
245
-                                </div>
246
-                                <div class="same-style header-cart">
247
-                                <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>
248
-                                <span class="position-absolute cartnumcount d-none"  style="top:-27%;right:-80%">0</span>
249
-                                </a>
250
-                                </div>
251
-                            </div>
252
-                        </div>
253
-                    </div>
254
-                </div>
255
-            </div>
256
-        </header>
257
-        <!-- Mobile menu start -->
258
-        <div class="mobile-menu-active clickalbe-sidebar-wrapper-style-1">
259
-            <div class="clickalbe-sidebar-wrap">
260
-            <div class="row pb-2 border-bottom">
261
-                <div class="col-6">
262
-                    <div class="mobile-logo mobile-logo-width">
263
-                        <a href="../index.html">
264
-                            <img alt="" src="/dist/assets/imgs/anwi-logo-1.png" class="w-75">
265
-                        </a>
266
-                    </div>
267
-                </div>
268
-                <div class="col-6 text-end pe-4">
269
-                    <a class="sidebar-close"><i class="fa-solid fa-xmark"></i></a>
270
-                </div>
271
-            </div>
272
-               
273
-                <div class="mobile-menu-content-area sidebar-content-100-percent pt-3">
274
-                    <div class="mobile-search d-none">
275
-                        <form class="search-form" action="#">
276
-                            <input type="text" placeholder="Search here…" class="satoshi_font">
277
-                            <button class="button-search"><i class="fa-solid fa-magnifying-glass"></i></button>
278
-                        </form>
279
-                    </div>
280
-                    <div class="clickable-mainmenu-wrap clickable-mainmenu-style1">
281
-                        <nav>
282
-                            <ul class="pl-0">
283
-                          
284
-
285
-                                <li class=""><a href="./ramproducts.html" class="satoshi_font">RAM</a></li>
286
-                                <li class=""><a href="./storageproducts.html" class="satoshi_font">STORAGE</a></li>
287
-                                <li class="expandlinav">
288
-                                <div class="d-flex justify-content-between">
289
-                                    <span class="explandlinavname">LAPTOP</span><span class="d-none viewall_li">view all</span>
290
-                                </div>
291
-                               <div class="content-expandlinav d-none">
292
-                               <accordion-element>
293
-                               <accordion-item title="Accordion Item #1">
294
-                                 <p>Lorem ipsum dolor sit amet,.</p>
295
-                               </accordion-item>
296
-                               <accordion-item title="Accordion Item #2">
297
-                                 <p>Lorem ipsum dolor sit amet,.</p>
298
-                               </accordion-item>
299
-                               <accordion-item title="Accordion Item #3">
300
-                                 <p>Lorem ipsum dolor sit amet,</p>
301
-                               </accordion-item>
302
-                             </accordion-element>
303
-                               </div>
304
-                                </li>
305
-                                <li class=""><a href="./support.html" class="satoshi_font" >SUPPORT</a></li>
306
-                                <li class=""><a href="./press.html" class="satoshi_font">PRESS</a></li>
307
-                                <li class=""><a href="./index1.html" class="satoshi_font">COMING SOON</a></li>
308
-                                <li class=""><a href="./contact.html" class="satoshi_font">CONTACT</a></li>
309
-                            </ul>
310
-                        </nav>
311
-                    </div>
312
-                    <div class="mobile-curr-lang-wrap d-none">
313
-                        <div class="single-mobile-curr-lang">
314
-                            <a class="mobile-language-active" href="#">Language <i class="icofont-simple-down"></i></a>
315
-                            <div class="lang-curr-dropdown lang-dropdown-active">
316
-                                <ul>
317
-                                    <li><a href="#">English</a></li>
318
-                                    <li><a href="#">Spanish</a></li>
319
-                                    <li><a href="#">Hindi </a></li>
320
-                                </ul>
321
-                            </div>
322
-                        </div>
323
-                    </div>
324
-                    <div class="aside-contact-info d-none">
325
-                        <ul>
326
-                            <li><i class="icofont-clock-time"></i>Monday - Friday: 9:00 - 19:00</li>
327
-                            <li><i class="icofont-envelope"></i>Info@example.com</li>
328
-                            <li><i class="icofont-stock-mobile"></i>(+55) 254. 254. 254</li>
329
-                            <li><i class="icofont-home"></i>Helios Tower 75 Tam Trinh Hoang - Ha Noi - Viet Nam</li>
330
-                        </ul>
331
-                    </div>
332
-                </div>
333
-            </div>
334
-        </div>`;
335
-    $("#navbar-head").html(nav_html);
336
-
337
-    $('.explandlinavname').click(function (e){
338
-       if($('.expandlinav .viewall_li').hasClass('d-none')){
339
-        $('.expandlinav').find('.viewall_li').removeClass('d-none');
340
-        $('.expandlinav').find('.content-expandlinav').removeClass('d-none');
341
-       }else{
342
-        $('.expandlinav').find('.viewall_li').addClass('d-none');
343
-        $('.expandlinav').find('.content-expandlinav').addClass('d-none');
344
-       }
345
-       
346
-       console.log($(e.target));
347
-        
348
-    });
349
-
350
-    let width = $(window).width();
351
-    $(".menu-negative-mrg2,.menu-negative-mrg3,.menu-negative-mrg4").css("width", width);
352
-    let ele_page = $("body").hasClass("product_pg");
353
-    if (ele_page == true) {
354
-        $(".header-area").removeClass("bg-white");
355
-        $(".main-menu").find("nav ul li a").addClass("text-white");
356
-        $(".header-bottom.sticky-bar").removeClass("sticky-bar");
357
-        let src = `../dist/assets/imgs/anwi-logo-2.png`;
358
-        $(".logo-menu-wrap").find("a img").attr("src", src);
359
-        $(".main-body").find("iframe").attr("width", width);
360
-        if (width <= 575 && width >= 390) {
361
-            $(".main-body").find("iframe").attr({
362
-                width: width,
363
-                height: 236,
364
-            })
365
-        } else if (width <= 390 && width >= 270) {
366
-            $(".main-body").find("iframe").attr({
367
-                width: width,
368
-                height: 210,
369
-            });
370
-        } else if (width <= 998 && width > 575) {
371
-            $(".main-body").find("iframe").attr({
372
-                width: width,
373
-                height: 530,
374
-            });
375
-        } else if (width <= 2720 && width > 1920) {
376
-            $(".main-body").find("iframe").attr({
377
-                width: width,
378
-                height: 1440,
379
-            });
380
-        } else {
381
-            $(".main-body").find("iframe").attr({
382
-                width: width,
383
-                height: 860,
384
-            });
385
-        }
386
-    }
387
-
388
-
389
-    $("a.ram_data").click(function () {
390
-        let item_id = $(this).attr("accessories_id");
391
-        let loc_path = '/products.html'
392
-        if (window.location.pathname.includes(loc_path)) {
393
-            window.location.href = `?itemid=${item_id}`
394
-        }
395
-        else {
396
-            window.location.href = `/products.html#itemid=${item_id}`;
397
-        }
398
-    })
399
-
400
-
401
-    // $(".main-menu nav ul").find("li").each(function () {
402
-    //     var current = window.location.pathname;
403
-    //     var $this = $(this).find("a");
404
-    //     if (current != "/") {
405
-    //         if ($this.attr('href').indexOf(current) !== -1) {
406
-    //             $(this).addClass('active_nav');
407
-    //         }
408
-    //     }
409
-
410
-    // })
411
-
412
-    // destroy localstorage data
413
-    let loc_path = '/productdetails.html';
414
-    if (window.location.pathname.includes(loc_path) === false) {
415
-        localStorage.removeItem("product_data");
416
-        localStorage.removeItem("top_data")
417
-    }
418
-    let loc_path1 = '/productcatloguedetails.html';
419
-    if (window.location.pathname.includes(loc_path1) === false) {
420
-        localStorage.removeItem("product_catlogue_obj");
421
-    }
422
-
423
-    //services pages links and sources
424
-
425
-    let $body_pg = $("body").hasClass("services_page");
426
-    let $hm_pg = "../index.html";
427
-    let $nav_img = "../dist/assets/imgs/anwi-logo-1.png";
428
-    let $footer_img = "../dist/assets/imgs/anwi-logo-2.png";
429
-    let $scrool_top_img = "../dist/assets/imgs/Home/rocket-footer.png";
430
-    let $about_pg = $("body").hasClass("about_page");
431
-    if($about_pg == true){
432
-        debugger
433
-        $(".main-menu").find("nav ul li a").addClass("text-dark");
434
-        let img_src = `./dist/assets/imgs/anwi-logo-1.png`;
435
-        $(".logo-menu-wrap").find("a img").attr("src",img_src);
436
-        $(".header-bottom").addClass("sticky-bar stick");
437
-        $("body.about_page").find(".header-large-device").find(".header-action-wrap").find(".same-style").find("svg").find("path").attr("fill","#000");
438
-    }
439
-    if ($body_pg == true) {
440
-        $(".header-large-device").find(".logo-menu-wrap .logo").find("a").attr("href", $hm_pg);
441
-        $(".header-large-device").find(".logo-menu-wrap .logo").find("a img").attr("src", $nav_img);
442
-        $(".mobile-logo").find("a").attr("href", $hm_pg);
443
-        $(".mobile-logo").find("a img").attr("src", $nav_img);
444
-        $("body.services_page").find(".header-large-device").find(".header-action-wrap").find(".same-style").find("svg").find("path").attr("fill","#000");
445
-        $(".main-menu").find("nav ul").find("li a").each(function () {
446
-            $(this).addClass("text-dark")
447
-            $(".header-bottom").addClass("sticky-bar stick");
448
-            let $arc = $(this).attr("href");
449
-            let $spcial_char = $arc.includes("./");
450
-            if ($spcial_char === true) {
451
-                let $refarence = `.${$arc}`
452
-                $(this).attr("href", $refarence);
453
-            }
454
-            
455
-        });
456
-        $(".same-style").find("a").each(function () {
457
-            let $arc1 = $(this).attr("href");
458
-            let $spcial_char1 = $arc1.includes("./");
459
-            if ($spcial_char1 === true) {
460
-                let $refarence1 = `.${$arc1}`
461
-                $(this).attr("href", $refarence1);
462
-            }
463
-        })
464
-        $(".tab-content").find("img").each(function(){
465
-            let $img_src = $(this).attr("src");
466
-            let $img_src1 = $img_src.includes("./");
467
-            if ($img_src1 === true) {
468
-                let $refarenceimg1 = `.${$img_src}`;
469
-                $(this).attr("src", $refarenceimg1);
470
-            }
471
-        });
472
-        $(".clickable-mainmenu-wrap").find("nav ul").find("li a").each(function () {
473
-            let $arc_mbil = $(this).attr("href");
474
-            let $spcial_char_mbil = $arc_mbil.includes("./");
475
-            if ($spcial_char_mbil === true) {
476
-                let $refarence_mbil = `.${$arc_mbil}`
477
-                $(this).attr("href", $refarence_mbil);
478
-            }
479
-        });
480
-    }
481
-
482
-    setTimeout(()=>{
483
-        if(width<=600){
484
-            $('.same-style').find('svg path').attr('fill','#000')
485
-        }
486
-    },300)
487
-}

+ 0
- 453
dist/js-old/navbar_okay.js Просмотреть файл

@@ -1,453 +0,0 @@
1
-navINIT();
2
-
3
-function navINIT() {
4
-    if(!window.location.href.includes('orderconfirmation')&&!window.location.href.includes('/w/')){
5
-        loadCart();
6
-    }
7
-   
8
-    function loadHelper(src = './dist/js/utils/helpers.js'){
9
-        if ($(`script[src="${src}"]`).length > 0) {
10
-          return new Promise((resolve) => resolve());
11
-        }
12
-        return new Promise(function (resolve, reject) {
13
-            var s;
14
-            s = document.createElement('script');
15
-            s.src = src;
16
-            s.onload = resolve;
17
-            s.onerror = reject;
18
-            document.head.appendChild(s);
19
-        });
20
-    }
21
-    async function loadCart(){
22
-
23
-        if(!window.location.href.includes('services/paymentmethod.html')){
24
-            let files = ['./dist/js/shoppingcart/addtocart.js'];
25
-            await loadHelper();
26
-            for(let i=0;i<files.length;i++){
27
-                if ($(`script[src="${files[i]}"]`).length > 0) {
28
-                    continue;
29
-                }
30
-                try {
31
-            
32
-                    await loadHelper(files[i])
33
-                    console.log("done");
34
-    
35
-                } catch (error) {
36
-                    console.log(error);
37
-                    return;
38
-                }
39
-            }
40
-        }
41
-
42
-         setLengthCart();
43
-        //console.log("hello");
44
-
45
-        
46
-        
47
-      
48
-    }
49
-    let URLNAMENAV = window.location.href;
50
-    const isTransparent = URLNAMENAV.includes('login')||URLNAMENAV.includes('orderconfirmation')|| URLNAMENAV.includes('services/paymentmethod.html');
51
-    let nav_html = `
52
-<header class="header-area section-padding-1 transparent-bar" ${isTransparent ?'style="background:#0A1039"' :''}>
53
-            <div class="header-large-device">
54
-                <div class="header-bottom sticky-bar">
55
-                    <div class="container">
56
-                        <div class="header-bottom-flex">
57
-                            <div class="logo-menu-wrap d-flex">
58
-                                <div class="logo">
59
-                                    <a href="../index.html">
60
-                                        <img src="/dist/assets/imgs/anwi-logo-2.png" alt="logo" class="w-50">
61
-                                    </a>
62
-                                </div>
63
-                                <div class="main-menu menu-lh-1 main-menu-padding-1">
64
-                                    <nav>
65
-                                        <ul class="mb-0 p-0">
66
-                                        <li class="hover_tab_1"><a href="./storageproducts.html" class="satoshi_font">STORAGE</a>
67
-                                        <ul class="py-3 px-3 rounded-bottom shadow">
68
-                                            <li class="d-flex">
69
-                                                <ul class="nav nav-pills flex-column w-200 border-end" id="experienceTab" role="tablist">
70
-                                                    <li class="nav-item">
71
-                                                        <a class="nav-link active text-dark" data-bs-toggle="tab" href="#ora3">ORA 3</a>
72
-                                                    </li>
73
-                                                    <li class="nav-item">
74
-                                                        <a class="nav-link text-dark" data-bs-toggle="tab" href="#ora4">ORA 4</a>
75
-                                                    </li>
76
-                                                </ul>
77
-                                                <ul class="nav w-500">
78
-                                                    <li>
79
-                                                    <div class="tab-content">
80
-                                                        <div id="ora3" class="container tab-pane active">
81
-                                                            <div class="row">
82
-                                                                <div class="col-4">
83
-                                                                    <div class="bg-gray-4 rounded-3 cursor-pointer">
84
-                                                                        <img src="./dist/assets/imgs/Navbar/ora3_ram.png" alt="ora img" class=""/>
85
-                                                                        <p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora3 M.2 NVMe 512GB</p>
86
-                                                                    </div>
87
-                                                                </div>
88
-                                                                <div class="col-4">
89
-                                                                    <div class="bg-gray-4 rounded-3 cursor-pointer">
90
-                                                                         <img src="./dist/assets/imgs/Navbar/ora3_ram.png" alt="ora img" class=""/>
91
-                                                                         <p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora3 M.2 NVMe 1TB</p>
92
-                                                                    </div>
93
-                                                                </div>
94
-                                                                <div class="col-4">
95
-                                                                    <div class="bg-gray-4 rounded-3 cursor-pointer">
96
-                                                                        <img src="./dist/assets/imgs/Navbar/ora3_ram.png" alt="ora img" class=""/>
97
-                                                                        <p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora3 M.2 NVMe 2TB</p>
98
-                                                                    </div>
99
-                                                                </div>
100
-                                                            </div>
101
-                                                        </div>
102
-                                                        <div id="ora4" class="container tab-pane fade">
103
-                                                            <div class="row">
104
-                                                                <div class="col-4">
105
-                                                                    <div class="bg-gray-4 rounded-3 cursor-pointer">
106
-                                                                        <img src="./dist/assets/imgs/Navbar/ora3_ram.png" alt="ora img" class=""/>
107
-                                                                        <p class="fs-7 fw-600 mb-0 text-a-color text-center  pb-1">Ora4 M.2 NVMe 512GB</p>
108
-                                                                    </div>
109
-                                                                </div>
110
-                                                                <div class="col-4">
111
-                                                                    <div class="bg-gray-4 rounded-3 cursor-pointer">
112
-                                                                        <img src="./dist/assets/imgs/Navbar/ora3_ram.png" alt="ora img" class=""/>
113
-                                                                        <p class="fs-7 fw-600 mb-0 text-a-color text-center  pb-1">Ora4 M.2 NVMe 1TB</p>
114
-                                                                    </div>
115
-                                                                </div>
116
-                                                                <div class="col-4">
117
-                                                                    <div class="bg-gray-4 rounded-3 cursor-pointer">
118
-                                                                        <img src="./dist/assets/imgs/Navbar/ora3_ram.png" alt="ora img" class=""/>
119
-                                                                        <p class="fs-7 fw-600 mb-0 text-a-color text-center  pb-1">Ora4 M.2 NVMe 2TB</p>
120
-                                                                    </div>
121
-                                                                </div>
122
-                                                            </div>
123
-                                                        </div>
124
-                                                  </div>
125
-                                                </li>
126
-                                                </ul>
127
-                                            </li>
128
-                                        </ul>
129
-                                    </li>
130
-                                    <li class="hover_tab_2"><a href="./ramproducts.html" class="satoshi_font">MEMORY</a>
131
-                                    <ul class="py-3 px-3 rounded-bottom shadow">
132
-                                    <li class="d-flex">
133
-                                        <ul class="nav nav-pills flex-column w-200 border-end" id="experienceTab" role="tablist">
134
-                                            <li class="nav-item">
135
-                                                <a class="nav-link active text-dark" data-bs-toggle="tab" href="#laptop">Laptop</a>
136
-                                            </li>
137
-                                            <li class="nav-item">
138
-                                                <a class="nav-link text-dark" data-bs-toggle="tab" href="#desktop">Desktop</a>
139
-                                            </li>
140
-                                        </ul>
141
-                                        <ul class="nav w-500">
142
-                                            <li>
143
-                                            <div class="tab-content">
144
-                                                <div id="laptop" class="container tab-pane active">
145
-                                                    <div class="row">
146
-                                                        <div class="col-4">
147
-                                                            <div class="bg-gray-4 rounded-3 cursor-pointer">
148
-                                                                <img src="./dist/assets/imgs/Navbar/ora_ddr4_laptop.png" alt="ora img" class=""/>
149
-                                                                <p class="fs-7 fw-600 mb-0 text-a-color text-center pb-1">Ora 8GB DDR5</p>
150
-                                                            </div>
151
-                                                        </div>
152
-                                                        <div class="col-4">
153
-                                                            <div class="bg-gray-4 rounded-3 cursor-pointer">
154
-                                                                 <img src="./dist/assets/imgs/Navbar/ora_ddr5_laptop.png" alt="ora img" class=""/>
155
-                                                                 <p class="fs-7 fw-600 mb-0 text-a-color text-center  pb-1">Ora 16GB DDR5</p>
156
-                                                            </div>
157
-                                                        </div>
158
-                                                        <div class="col-4 ">
159
-                                                            <div class="bg-gray-4 rounded-3 cursor-pointer">
160
-                                                                 <img src="./dist/assets/imgs/Navbar/ora_ddr5_laptop.png" alt="ora img" class=""/>
161
-                                                                 <p class="fs-7 fw-600 mb-0 text-a-color text-center  pb-1">Ora 32GB DDR5</p>
162
-                                                            </div>
163
-                                                        </div>
164
-                                                    </div>
165
-                                                </div>
166
-                                                <div id="desktop" class="container tab-pane fade">
167
-                                                    <div class="row">
168
-                                                        <div class="col-4">
169
-                                                            <div class="bg-gray-4 rounded-3 cursor-pointer">
170
-                                                                <img src="./dist/assets/imgs/Navbar/ora_ddr4_desktop.png" alt="ora img" class=""/>
171
-                                                                <p class="fs-7 fw-600 mb-0 text-a-color text-center  pb-1">Ora 8GB DDR4</p>
172
-                                                            </div>
173
-                                                        </div>
174
-                                                        <div class="col-4">
175
-                                                            <div class="bg-gray-4 rounded-3 cursor-pointer">
176
-                                                                <img src="./dist/assets/imgs/Navbar/ora_ddr4_desktop.png" alt="ora img" class=""/>
177
-                                                                <p class="fs-7 fw-600 mb-0 text-a-color text-center  pb-1">Ora 16GB DDR4</p>
178
-                                                            </div>
179
-                                                        </div>
180
-                                                        <div class="col-4">
181
-                                                            <div class="bg-gray-4 rounded-3 cursor-pointer">
182
-                                                                 <img src="./dist/assets/imgs/Navbar/ora_ddr4_desktop.png" alt="ora img" class=""/>
183
-                                                                 <p class="fs-7 fw-600 mb-0 text-a-color text-center  pb-1">Ora 32GB DDR4</p>
184
-                                                            </div>
185
-                                                        </div>
186
-                                                    </div>
187
-                                                </div>
188
-                                          </div>
189
-                                        </li>
190
-                                        </ul>
191
-                                    </li>
192
-                                </ul>
193
-                                    </li>
194
-                                            <li><a href="./support.html" class="satoshi_font">SUPPORT</a></li>
195
-                                            <li><a href="./press.html" class="satoshi_font">PRESS</a></li>
196
-                                            <li><a href="./index1.html" class="satoshi_font">COMING SOON</a></li>
197
-                                            <li><a href="./contact.html" class="satoshi_font">CONTACT</a></li>
198
-                                            <li class="d-none"><a href="#" class="satoshi_font product_data" item_id="106633220000002">ACCESSORIES</a></li>
199
-                                        </ul>
200
-                                    </nav>
201
-                                </div>
202
-                            </div>
203
-                            <div class="header-action-wrap header-action-flex header-action-width header-action-mrg-1">
204
-                                <div class="same-style">
205
-                                <a href="/myaccount.html" class="my_avatar">
206
-                      
207
-                                <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>
208
-                                </a>
209
-                                </div>
210
-                                <div class="same-style header-cart">
211
-                                <a class="cart-active1 position-relative" href="/shopping-cart.html">
212
-                                <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>
213
-                                
214
-                                <span class="position-absolute cartnumcount d-none" >0</span>
215
-                                </a>
216
-                                </div>
217
-                            </div>
218
-                        </div>
219
-                    </div>
220
-                </div>
221
-            </div>
222
-            <div class="header-small-device header-small-ptb sticky-bar py-md-2 py-2 bg-white">
223
-                <div class="container-fluid px-4">
224
-                    <div class="row align-items-center">
225
-                        <div class="col-6 header-action-wrap">
226
-                            <div class="d-flex">
227
-                                <div class="same-style header-info">
228
-                                    <button class="mobile-menu-button-active">
229
-                                        <span class="info-width-1"></span>
230
-                                        <span class="info-width-2"></span>
231
-                                        <span class="info-width-3"></span>
232
-                                    </button>
233
-                                </div>
234
-                                <div class="mobile-logo mobile-logo-width ps-3">
235
-                                    <a href="../index.html">
236
-                                        <img alt="" src="/dist/assets/imgs/anwi-logo-1.png" class="w-50">
237
-                                    </a>
238
-                                </div>
239
-                            </div>
240
-                        </div>
241
-                        <div class="col-6">
242
-                            <div class="header-action-wrap header-action-flex header-action-mrg-1">
243
-                                <div class="same-style">
244
-                                <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>
245
-                                </div>
246
-                                <div class="same-style header-cart">
247
-                                <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>
248
-                                <span class="position-absolute cartnumcount d-none"  style="top:-27%;right:-80%">0</span>
249
-                                </a>
250
-                                </div>
251
-                            </div>
252
-                        </div>
253
-                    </div>
254
-                </div>
255
-            </div>
256
-        </header>
257
-        <!-- Mobile menu start -->
258
-        <div class="mobile-menu-active clickalbe-sidebar-wrapper-style-1">
259
-            <div class="clickalbe-sidebar-wrap">
260
-            <div class="row pb-2 border-bottom">
261
-                <div class="col-6">
262
-                    <div class="mobile-logo mobile-logo-width">
263
-                        <a href="../index.html">
264
-                            <img alt="" src="/dist/assets/imgs/anwi-logo-1.png" class="w-75">
265
-                        </a>
266
-                    </div>
267
-                </div>
268
-                <div class="col-6 text-end pe-4">
269
-                    <a class="sidebar-close"><i class="fa-solid fa-xmark"></i></a>
270
-                </div>
271
-            </div>
272
-               
273
-                <div class="mobile-menu-content-area sidebar-content-100-percent pt-3">
274
-                    <div class="mobile-search d-none">
275
-                        <form class="search-form" action="#">
276
-                            <input type="text" placeholder="Search here…" class="satoshi_font">
277
-                            <button class="button-search"><i class="fa-solid fa-magnifying-glass"></i></button>
278
-                        </form>
279
-                    </div>
280
-                    <div class="clickable-mainmenu-wrap clickable-mainmenu-style1">
281
-                        <nav>
282
-                            <ul class="pl-0">
283
-                                <li class=""><a href="./ramproducts.html" class="satoshi_font">RAM</a></li>
284
-                                <li class=""><a href="./storageproducts.html" class="satoshi_font">STORAGE</a></li>
285
-                                <li class=""><a href="./support.html" class="satoshi_font" >SUPPORT</a></li>
286
-                                <li class=""><a href="./press.html" class="satoshi_font">PRESS</a></li>
287
-                                <li class=""><a href="./index1.html" class="satoshi_font">COMING SOON</a></li>
288
-                                <li class=""><a href="./contact.html" class="satoshi_font">CONTACT</a></li>
289
-                            </ul>
290
-                        </nav>
291
-                    </div>
292
-                    <div class="mobile-curr-lang-wrap d-none">
293
-                        <div class="single-mobile-curr-lang">
294
-                            <a class="mobile-language-active" href="#">Language <i class="icofont-simple-down"></i></a>
295
-                            <div class="lang-curr-dropdown lang-dropdown-active">
296
-                                <ul>
297
-                                    <li><a href="#">English</a></li>
298
-                                    <li><a href="#">Spanish</a></li>
299
-                                    <li><a href="#">Hindi </a></li>
300
-                                </ul>
301
-                            </div>
302
-                        </div>
303
-                    </div>
304
-                    <div class="aside-contact-info d-none">
305
-                        <ul>
306
-                            <li><i class="icofont-clock-time"></i>Monday - Friday: 9:00 - 19:00</li>
307
-                            <li><i class="icofont-envelope"></i>Info@example.com</li>
308
-                            <li><i class="icofont-stock-mobile"></i>(+55) 254. 254. 254</li>
309
-                            <li><i class="icofont-home"></i>Helios Tower 75 Tam Trinh Hoang - Ha Noi - Viet Nam</li>
310
-                        </ul>
311
-                    </div>
312
-                </div>
313
-            </div>
314
-        </div>`;
315
-    $("#navbar-head").html(nav_html);
316
-    let width = $(window).width();
317
-    $(".menu-negative-mrg2,.menu-negative-mrg3,.menu-negative-mrg4").css("width", width);
318
-    let ele_page = $("body").hasClass("product_pg");
319
-    if (ele_page == true) {
320
-        $(".header-area").removeClass("bg-white");
321
-        $(".main-menu").find("nav ul li a").addClass("text-white");
322
-        $(".header-bottom.sticky-bar").removeClass("sticky-bar");
323
-        let src = `../dist/assets/imgs/anwi-logo-2.png`;
324
-        $(".logo-menu-wrap").find("a img").attr("src", src);
325
-        $(".main-body").find("iframe").attr("width", width);
326
-        if (width <= 575 && width >= 390) {
327
-            $(".main-body").find("iframe").attr({
328
-                width: width,
329
-                height: 236,
330
-            })
331
-        } else if (width <= 390 && width >= 270) {
332
-            $(".main-body").find("iframe").attr({
333
-                width: width,
334
-                height: 210,
335
-            });
336
-        } else if (width <= 998 && width > 575) {
337
-            $(".main-body").find("iframe").attr({
338
-                width: width,
339
-                height: 530,
340
-            });
341
-        } else if (width <= 2720 && width > 1920) {
342
-            $(".main-body").find("iframe").attr({
343
-                width: width,
344
-                height: 1440,
345
-            });
346
-        } else {
347
-            $(".main-body").find("iframe").attr({
348
-                width: width,
349
-                height: 860,
350
-            });
351
-        }
352
-    }
353
-
354
-
355
-    $("a.ram_data").click(function () {
356
-        let item_id = $(this).attr("accessories_id");
357
-        let loc_path = '/products.html'
358
-        if (window.location.pathname.includes(loc_path)) {
359
-            window.location.href = `?itemid=${item_id}`
360
-        }
361
-        else {
362
-            window.location.href = `/products.html#itemid=${item_id}`;
363
-        }
364
-    })
365
-
366
-
367
-    // $(".main-menu nav ul").find("li").each(function () {
368
-    //     var current = window.location.pathname;
369
-    //     var $this = $(this).find("a");
370
-    //     if (current != "/") {
371
-    //         if ($this.attr('href').indexOf(current) !== -1) {
372
-    //             $(this).addClass('active_nav');
373
-    //         }
374
-    //     }
375
-
376
-    // })
377
-
378
-    // destroy localstorage data
379
-    let loc_path = '/productdetails.html';
380
-    if (window.location.pathname.includes(loc_path) === false) {
381
-        localStorage.removeItem("product_data");
382
-        localStorage.removeItem("top_data")
383
-    }
384
-    let loc_path1 = '/productcatloguedetails.html';
385
-    if (window.location.pathname.includes(loc_path1) === false) {
386
-        localStorage.removeItem("product_catlogue_obj");
387
-    }
388
-
389
-    //services pages links and sources
390
-
391
-    let $body_pg = $("body").hasClass("services_page");
392
-    let $hm_pg = "../index.html";
393
-    let $nav_img = "../dist/assets/imgs/anwi-logo-1.png";
394
-    let $footer_img = "../dist/assets/imgs/anwi-logo-2.png";
395
-    let $scrool_top_img = "../dist/assets/imgs/Home/rocket-footer.png";
396
-    let $about_pg = $("body").hasClass("about_page");
397
-    if($about_pg == true){
398
-        debugger
399
-        $(".main-menu").find("nav ul li a").addClass("text-dark");
400
-        let img_src = `./dist/assets/imgs/anwi-logo-1.png`;
401
-        $(".logo-menu-wrap").find("a img").attr("src",img_src);
402
-        $(".header-bottom").addClass("sticky-bar stick");
403
-        $("body.about_page").find(".header-large-device").find(".header-action-wrap").find(".same-style").find("svg").find("path").attr("fill","#000");
404
-    }
405
-    if ($body_pg == true) {
406
-        $(".header-large-device").find(".logo-menu-wrap .logo").find("a").attr("href", $hm_pg);
407
-        $(".header-large-device").find(".logo-menu-wrap .logo").find("a img").attr("src", $nav_img);
408
-        $(".mobile-logo").find("a").attr("href", $hm_pg);
409
-        $(".mobile-logo").find("a img").attr("src", $nav_img);
410
-        $("body.services_page").find(".header-large-device").find(".header-action-wrap").find(".same-style").find("svg").find("path").attr("fill","#000");
411
-        $(".main-menu").find("nav ul").find("li a").each(function () {
412
-            $(this).addClass("text-dark")
413
-            $(".header-bottom").addClass("sticky-bar stick");
414
-            let $arc = $(this).attr("href");
415
-            let $spcial_char = $arc.includes("./");
416
-            if ($spcial_char === true) {
417
-                let $refarence = `.${$arc}`
418
-                $(this).attr("href", $refarence);
419
-            }
420
-            
421
-        });
422
-        $(".same-style").find("a").each(function () {
423
-            let $arc1 = $(this).attr("href");
424
-            let $spcial_char1 = $arc1.includes("./");
425
-            if ($spcial_char1 === true) {
426
-                let $refarence1 = `.${$arc1}`
427
-                $(this).attr("href", $refarence1);
428
-            }
429
-        })
430
-        $(".tab-content").find("img").each(function(){
431
-            let $img_src = $(this).attr("src");
432
-            let $img_src1 = $img_src.includes("./");
433
-            if ($img_src1 === true) {
434
-                let $refarenceimg1 = `.${$img_src}`;
435
-                $(this).attr("src", $refarenceimg1);
436
-            }
437
-        });
438
-        $(".clickable-mainmenu-wrap").find("nav ul").find("li a").each(function () {
439
-            let $arc_mbil = $(this).attr("href");
440
-            let $spcial_char_mbil = $arc_mbil.includes("./");
441
-            if ($spcial_char_mbil === true) {
442
-                let $refarence_mbil = `.${$arc_mbil}`
443
-                $(this).attr("href", $refarence_mbil);
444
-            }
445
-        });
446
-    }
447
-
448
-    setTimeout(()=>{
449
-        if(width<=600){
450
-            $('.same-style').find('svg path').attr('fill','#000')
451
-        }
452
-    },300)
453
-}

+ 0
- 130
dist/js-old/orderDetails/order_summary.js Просмотреть файл

@@ -1,130 +0,0 @@
1
-async function order_summary() {
2
-
3
-  let cookieRes = COOKIE_HELPER_ACTIONS.getCookie();
4
-  let { userId } = cookieRes;
5
-  // let res = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/Bizgaze/integrations/products/salesorderdetailsbyorgid/organizationid/${userId}`,true);
6
-  // https://templateserver.bizgaze.com/apis/v4/bizgaze/integrations/products/getordersbyid/organizationid/{organizationid}/orderno/{orderno}
7
-  let orderno = window.location.hash.split('#')[1];
8
-  let res = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/products/getordersbyid/organizationid/${106631380000075}/orderno/${orderno}`);
9
-  if (res.isError) {
10
-    return;
11
-  }
12
-  const orderDetailsres = JSON.parse(res.response.result);
13
-
14
-  let new_arrr = orderDetailsres;
15
-  console.log(new_arrr)
16
-  let orderNumber = window.location.hash.split('#')[1];
17
-  let filteredOrders = new_arrr.filter(function (order) {
18
-    return order.OrderNo === orderNumber;
19
-  });
20
-
21
-  for (let i = 0; i < filteredOrders.length; i++) {
22
-    let order = filteredOrders[i];
23
-    let Delivery_status = order.stageshortcode
24
-    let deliverdCard = appendItemHTML(order);
25
-    $('.deliverd-card').append(deliverdCard)
26
-    if (Delivery_status == 'CMD') {
27
-      $('.delivery_status').html('Deliverd')
28
-    }
29
-    if (Delivery_status == 'APL') {
30
-      $('.delivery_status').html('Approval')
31
-    }
32
-  }
33
-
34
-  $('.supportBtn').click(function (e){
35
-    let parentEl = $(e.target).parents('.card-body');
36
-    debugger;
37
-    const orderName = $(parentEl).find('.ordernameModal').text();
38
-
39
-
40
-    $('.modalitemname').text(orderName);
41
-
42
-    const orderQty = $(parentEl).find('.orderqtymodalinfo').text();
43
-    const orderPrice = $(parentEl).find('.order_price').text();
44
-    const [symbol,price] = getCurrencySymbol(orderPrice)
45
-    $('.modalitemqty').html(orderQty);
46
-    $('.modalprice').html(`${symbol} ${price}`);
47
-    console.log(orderName);
48
-  });
49
-
50
-  $('.warrantybtn').click(function (e){
51
-    let parentEl = $(e.target).parents('.card-body');
52
-    debugger;
53
-    const orderName = $(parentEl).find('.ordernameModal').text();
54
-
55
-    $('#warrenymodalname').html(orderName);
56
-  });
57
-
58
-  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>`;
59
-
60
-  $('.Order_details_section  .order_tax').html(filteredOrders[0].taxamount)
61
-  $('.Order_details_section .Order_total').html(filteredOrders[0].nettotal)
62
-  $('.Order_details_section  .order_price').html(filteredOrders[0].assessableamount)
63
-  $('.Order_details_section  .order-summary').html(summary);
64
-
65
-  $('.back_to_orders').click(function () {
66
-    $(this).attr('href', './myaccount.html')
67
-  });
68
-
69
-  function appendItemHTML(order) {
70
-    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}></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>`;
71
-  }
72
-
73
-
74
-
75
-
76
-
77
-  async function supportModalInit(){
78
-    $.fn.modal.Constructor.prototype.enforceFocus = function() {};
79
-    let ticketGroupRes =  await API_SERVICES_ACTIONS.getAPIService(`apis/v4/anwisystems/integrations/anwiauth/getticketgoups`);
80
-
81
-
82
-    if(ticketGroupRes.isError){
83
-      console.log(ticketGroupRes.errorMsg);
84
-      return;
85
-    }
86
-
87
-
88
-    ticketGroupRes = JSON.parse(ticketGroupRes.response.result);
89
-
90
-    console.log(ticketGroupRes);
91
-
92
- 
93
-
94
-    let htmlTGroup = '';
95
-    for (let i = 0; i < ticketGroupRes.length; i++) {
96
-      htmlTGroup += `<option value="${ticketGroupRes[i].ticketgroupid}" data-id="${ticketGroupRes[i].ticketgroupid}">${ticketGroupRes[i].ticketgroupname}</option>`
97
-    }
98
-
99
-    $('#supportgroups').html(htmlTGroup);
100
-
101
-    // priopty
102
-
103
-    let prioritiesRes =  await API_SERVICES_ACTIONS.getAPIService(`apis/v4/anwisystems/integrations/anwiauth/getticketpriorities`);
104
-
105
-    if(prioritiesRes.isError){
106
-      console.log(prioritiesRes.errorMsg);
107
-      return;
108
-    }
109
-
110
-
111
-    prioritiesRes = JSON.parse(prioritiesRes.response.result);
112
-
113
-    console.log(prioritiesRes,'prioritiesRes');
114
-
115
-    
116
-    let htmlTpriorites = '';
117
-    for (let i = 0; i < prioritiesRes.length; i++) {
118
-      htmlTpriorites += `<option value="${prioritiesRes[i].priorityid}" data-id="${prioritiesRes[i].priorityid}">${prioritiesRes[i].priorityname}</option>`
119
-    }
120
-
121
-    $('#supportlevel').html(htmlTpriorites);
122
-
123
-      
124
-
125
-  }
126
-
127
-
128
-  supportModalInit();
129
-}
130
-order_summary()

+ 0
- 157
dist/js-old/orderconfirmation.js Просмотреть файл

@@ -1,157 +0,0 @@
1
-function orderConfirmation(){
2
-    init();
3
-    function init(){
4
-        addFullLoader();
5
-        getOrderStatus();
6
-    }
7
-
8
-    function orderlistsummary({name,price,qty,total,img}){
9
-        let priceAmt = '';
10
-        let totalAmt = '';
11
-
12
-        let defaultImg =img ? imgServerNameBuild(img): `./dist/assets/imgs/nophoto.png`;
13
-        let [priceSysm,priceamt] = getCurrencySymbol(price)
14
-        priceAmt = `${priceSysm}${priceamt}`
15
-        
16
-
17
-        
18
-        let [qtySymb,qtyamt] = getCurrencySymbol(qty*price)
19
-       
20
-
21
-        totalAmt = `${qtySymb}${qtyamt}`
22
-
23
-        return `<div class="col-sm-4">
24
-     <div style="max-width:200px">   <img src="${defaultImg}" alt="" class="w-100 h-100">   </div>
25
-    </div>
26
-    <div class="col-sm-8 d-flex flex-column justify-content-center">
27
-        <div class="itemname"><span class="font-weight-500">${name}</span></div>
28
-        <div> <span>Unit Price :</span><span class="font-weight-500">${priceAmt}</span> </div>
29
-        <div> <span>Quantity :</span><span class="font-weight-500">${qty}</span> </div>
30
-        <div> <span>Total Amount :</span>  <span class="font-weight-500">${totalAmt}</span></div>
31
-    </div>`;
32
-
33
-        return `
34
-        <div class="row">
35
-                            <div class="col-4">
36
-                                <div class="row">
37
-                                    <div class="col-6">
38
-                                        <img class="w-100 h-100" src="http://127.0.0.1:5504/dist/assets/imgs/Navbar/Accessiories-2.png" alt="">
39
-                                    </div>
40
-                                    <div class="col-6 d-flex justify-content-center align-items-center">
41
-                                        <div class="itemname">${name}</div>
42
-                                        
43
-                                    </div>
44
-                                </div>
45
-                            </div>
46
-                            <div class="col-3 d-flex align-items-center justify-content-center">
47
-                                ${priceAmt}
48
-                            </div>
49
-                            <div class="col-2 d-flex align-items-center justify-content-center">
50
-                               ${qty}
51
-                            </div>
52
-                            <div class="col-3 text-end">
53
-                               ${totalAmt}
54
-                             </div>
55
-                        </div>`;
56
-    }
57
-
58
-    function addFullLoader(){
59
-        document.querySelector('auth-loader').show();
60
-    }
61
-
62
-    function removeFullLoader(){
63
-        document.querySelector('auth-loader').hide();
64
-    }
65
-
66
-    async function getOrderStatus(){
67
-       
68
-        const searchParams = window.location.search.split('&');
69
-        let orderId = searchParams[0].split('=')[1];
70
-
71
-        debugger;
72
-        let orderRes = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/hyperfusionpaymentgateway/gethyperfusionpaymentdetails/orderid/${orderId}`);
73
-        if(orderRes.isError){
74
-            removeFullLoader();
75
-            return;
76
-        }
77
-        console.log(orderRes);
78
-        //payment_group
79
-       
80
-        orderRes = JSON.parse(orderRes.response.result)[0];
81
-        $('.paymentmethodconfirm').html(orderRes.payment_group)
82
-        if(orderRes.payment_status === 'FAILED'){
83
-            $('.ordercontainerconfirmError').removeClass('d-none');
84
-            $('.successorderconfirm').addClass('d-none');
85
-            removeFullLoader();
86
-            return;
87
-        }
88
-      
89
-        const res =  await API_SERVICES_ACTIONS.postAPIService(`apis/v4/bizgaze/transact/orders/updatepaymenttransactionstatus/refid/${orderId}`,null);
90
-
91
-        console.log(res,'ress');
92
-
93
-        if(res.isError){
94
-            console.log(res);
95
-            $('.ordercontainerconfirmError').removeClass('d-none');
96
-            $('.successorderconfirm').addClass('d-none');
97
-            removeFullLoader();
98
-            return;
99
-        }
100
-
101
-
102
-        if(!res.response.message.toLowerCase().includes('success')){
103
-            console.log(res);
104
-            $('.ordercontainerconfirmError').removeClass('d-none');
105
-            $('.successorderconfirm').addClass('d-none');
106
-            removeFullLoader();
107
-            return;
108
-        }
109
-
110
-        let resData = JSON.parse(res.response.result);
111
-
112
-        const {NetTotal,TaxAmount,OrderItems,CreatedDate,OrderNo
113
-        } = resData;
114
-        let [netcurrencySymbol,netamount] = getCurrencySymbol(NetTotal);    
115
-        $('.totalordersummary').html(`${netcurrencySymbol}${netamount}`);
116
-
117
-       {
118
-        let [ordercurrencySymbol,orderamount] = getCurrencySymbol(TaxAmount);
119
-        $('.totaltaxsummary').html(`${ordercurrencySymbol}${orderamount}`);
120
-       }
121
-
122
-       let orderItemsListHTML = '';
123
-
124
-       for(let i=0;i<OrderItems.length;i++){
125
-        const {ItemName:name,UnitPrice:price,Quantity:qty,UnitPrice:total,ItemImage:img} = OrderItems[i];
126
-        debugger;
127
-        orderItemsListHTML += orderlistsummary({
128
-            name,
129
-            price,
130
-            qty,
131
-            total,
132
-            img
133
-        });
134
-       }
135
-       let userData = COOKIE_HELPER_ACTIONS.getCookie();
136
-       let {name} = userData;
137
-       $('.username').html(name);
138
-       $('.orderlistconfirm').html(orderItemsListHTML);
139
-
140
-       $('.createdDateConfirm').html(CreatedDate);
141
-
142
-       $('.ordernumber').html(OrderNo);
143
-debugger;
144
-       localStorage.removeItem(CART_DATA)
145
-
146
-       setLengthCart();
147
-       removeFullLoader();
148
-        console.log(resData);
149
-
150
-    }
151
-
152
-
153
-   
154
-}
155
-
156
-    
157
-checkValidAuth(orderConfirmation)

+ 0
- 48
dist/js-old/plugins/ajax-mail.js Просмотреть файл

@@ -1,48 +0,0 @@
1
-$(function() {
2
-
3
-	// Get the form.
4
-	var form = $('#contact-form');
5
-
6
-	// Get the messages div.
7
-	var formMessages = $('.form-messege');
8
-
9
-	// Set up an event listener for the contact form.
10
-	$(form).submit(function(e) {
11
-		// Stop the browser from submitting the form.
12
-		e.preventDefault();
13
-
14
-		// Serialize the form data.
15
-		var formData = $(form).serialize();
16
-
17
-		// Submit the form using AJAX.
18
-		$.ajax({
19
-			type: 'POST',
20
-			url: $(form).attr('action'),
21
-			data: formData
22
-		})
23
-		.done(function(response) {
24
-			// Make sure that the formMessages div has the 'success' class.
25
-			$(formMessages).removeClass('error');
26
-			$(formMessages).addClass('success');
27
-
28
-			// Set the message text.
29
-			$(formMessages).text(response);
30
-
31
-			// Clear the form.
32
-			$('#contact-form input,#contact-form textarea').val('');
33
-		})
34
-		.fail(function(data) {
35
-			// Make sure that the formMessages div has the 'error' class.
36
-			$(formMessages).removeClass('success');
37
-			$(formMessages).addClass('error');
38
-
39
-			// Set the message text.
40
-			if (data.responseText !== '') {
41
-				$(formMessages).text(data.responseText);
42
-			} else {
43
-				$(formMessages).text('Oops! An error occured and your message could not be sent.');
44
-			}
45
-		});
46
-	});
47
-
48
-});

+ 0
- 22
dist/js-old/plugins/countdown.js Просмотреть файл

@@ -1,22 +0,0 @@
1
-/*!
2
- * The Final Countdown for jQuery v2.2.0 (http://hilios.github.io/jQuery.countdown/)
3
- * Copyright (c) 2016 Edson Hilios
4
- * 
5
- * Permission is hereby granted, free of charge, to any person obtaining a copy of
6
- * this software and associated documentation files (the "Software"), to deal in
7
- * the Software without restriction, including without limitation the rights to
8
- * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
9
- * the Software, and to permit persons to whom the Software is furnished to do so,
10
- * subject to the following conditions:
11
- * 
12
- * The above copyright notice and this permission notice shall be included in all
13
- * copies or substantial portions of the Software.
14
- * 
15
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
17
- * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
18
- * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
19
- * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
20
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
21
- */
22
-!function(a){"use strict";"function"==typeof define&&define.amd?define(["jquery"],a):a(jQuery)}(function(a){"use strict";function b(a){if(a instanceof Date)return a;if(String(a).match(g))return String(a).match(/^[0-9]*$/)&&(a=Number(a)),String(a).match(/\-/)&&(a=String(a).replace(/\-/g,"/")),new Date(a);throw new Error("Couldn't cast `"+a+"` to a date object.")}function c(a){var b=a.toString().replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1");return new RegExp(b)}function d(a){return function(b){var d=b.match(/%(-|!)?[A-Z]{1}(:[^;]+;)?/gi);if(d)for(var f=0,g=d.length;f<g;++f){var h=d[f].match(/%(-|!)?([a-zA-Z]{1})(:[^;]+;)?/),j=c(h[0]),k=h[1]||"",l=h[3]||"",m=null;h=h[2],i.hasOwnProperty(h)&&(m=i[h],m=Number(a[m])),null!==m&&("!"===k&&(m=e(l,m)),""===k&&m<10&&(m="0"+m.toString()),b=b.replace(j,m.toString()))}return b=b.replace(/%%/,"%")}}function e(a,b){var c="s",d="";return a&&(a=a.replace(/(:|;|\s)/gi,"").split(/\,/),1===a.length?c=a[0]:(d=a[0],c=a[1])),Math.abs(b)>1?c:d}var f=[],g=[],h={precision:100,elapse:!1,defer:!1};g.push(/^[0-9]*$/.source),g.push(/([0-9]{1,2}\/){2}[0-9]{4}( [0-9]{1,2}(:[0-9]{2}){2})?/.source),g.push(/[0-9]{4}([\/\-][0-9]{1,2}){2}( [0-9]{1,2}(:[0-9]{2}){2})?/.source),g=new RegExp(g.join("|"));var i={Y:"years",m:"months",n:"daysToMonth",d:"daysToWeek",w:"weeks",W:"weeksToMonth",H:"hours",M:"minutes",S:"seconds",D:"totalDays",I:"totalHours",N:"totalMinutes",T:"totalSeconds"},j=function(b,c,d){this.el=b,this.$el=a(b),this.interval=null,this.offset={},this.options=a.extend({},h),this.firstTick=!0,this.instanceNumber=f.length,f.push(this),this.$el.data("countdown-instance",this.instanceNumber),d&&("function"==typeof d?(this.$el.on("update.countdown",d),this.$el.on("stoped.countdown",d),this.$el.on("finish.countdown",d)):this.options=a.extend({},h,d)),this.setFinalDate(c),this.options.defer===!1&&this.start()};a.extend(j.prototype,{start:function(){null!==this.interval&&clearInterval(this.interval);var a=this;this.update(),this.interval=setInterval(function(){a.update.call(a)},this.options.precision)},stop:function(){clearInterval(this.interval),this.interval=null,this.dispatchEvent("stoped")},toggle:function(){this.interval?this.stop():this.start()},pause:function(){this.stop()},resume:function(){this.start()},remove:function(){this.stop.call(this),f[this.instanceNumber]=null,delete this.$el.data().countdownInstance},setFinalDate:function(a){this.finalDate=b(a)},update:function(){if(0===this.$el.closest("html").length)return void this.remove();var a,b=new Date;return a=this.finalDate.getTime()-b.getTime(),a=Math.ceil(a/1e3),a=!this.options.elapse&&a<0?0:Math.abs(a),this.totalSecsLeft===a||this.firstTick?void(this.firstTick=!1):(this.totalSecsLeft=a,this.elapsed=b>=this.finalDate,this.offset={seconds:this.totalSecsLeft%60,minutes:Math.floor(this.totalSecsLeft/60)%60,hours:Math.floor(this.totalSecsLeft/60/60)%24,days:Math.floor(this.totalSecsLeft/60/60/24)%7,daysToWeek:Math.floor(this.totalSecsLeft/60/60/24)%7,daysToMonth:Math.floor(this.totalSecsLeft/60/60/24%30.4368),weeks:Math.floor(this.totalSecsLeft/60/60/24/7),weeksToMonth:Math.floor(this.totalSecsLeft/60/60/24/7)%4,months:Math.floor(this.totalSecsLeft/60/60/24/30.4368),years:Math.abs(this.finalDate.getFullYear()-b.getFullYear()),totalDays:Math.floor(this.totalSecsLeft/60/60/24),totalHours:Math.floor(this.totalSecsLeft/60/60),totalMinutes:Math.floor(this.totalSecsLeft/60),totalSeconds:this.totalSecsLeft},void(this.options.elapse||0!==this.totalSecsLeft?this.dispatchEvent("update"):(this.stop(),this.dispatchEvent("finish"))))},dispatchEvent:function(b){var c=a.Event(b+".countdown");c.finalDate=this.finalDate,c.elapsed=this.elapsed,c.offset=a.extend({},this.offset),c.strftime=d(this.offset),this.$el.trigger(c)}}),a.fn.countdown=function(){var b=Array.prototype.slice.call(arguments,0);return this.each(function(){var c=a(this).data("countdown-instance");if(void 0!==c){var d=f[c],e=b[0];j.prototype.hasOwnProperty(e)?d[e].apply(d,b.slice(1)):null===String(e).match(/^[$A-Z_][0-9A-Z_$]*$/i)?(d.setFinalDate.call(d,e),d.start()):a.error("Method %s does not exist on jQuery.countdown".replace(/\%s/gi,e))}else new j(this,b[0],b[1])})}});

+ 0
- 7
dist/js-old/plugins/easyzoom.js Просмотреть файл

@@ -1,7 +0,0 @@
1
-/*!
2
- * @name        easyzoom
3
- * @author       <>
4
- * @modified    Thursday, November 22nd, 2018
5
- * @version     2.5.2
6
- */
7
-!function(t,e){"use strict";"function"==typeof define&&define.amd?define(["jquery"],function(t){e(t)}):"object"==typeof module&&module.exports?module.exports=t.EasyZoom=e(require("jquery")):t.EasyZoom=e(t.jQuery)}(this,function(i){"use strict";var c,d,l,p,u,f,o={loadingNotice:"Loading image",errorNotice:"The image could not be loaded",errorDuration:2500,linkAttribute:"href",preventClicks:!0,beforeShow:i.noop,beforeHide:i.noop,onShow:i.noop,onHide:i.noop,onMove:i.noop};function s(t,e){this.$target=i(t),this.opts=i.extend({},o,e,this.$target.data()),void 0===this.isOpen&&this._init()}return s.prototype._init=function(){this.$link=this.$target.find("a"),this.$image=this.$target.find("img"),this.$flyout=i('<div class="easyzoom-flyout" />'),this.$notice=i('<div class="easyzoom-notice" />'),this.$target.on({"mousemove.easyzoom touchmove.easyzoom":i.proxy(this._onMove,this),"mouseleave.easyzoom touchend.easyzoom":i.proxy(this._onLeave,this),"mouseenter.easyzoom touchstart.easyzoom":i.proxy(this._onEnter,this)}),this.opts.preventClicks&&this.$target.on("click.easyzoom",function(t){t.preventDefault()})},s.prototype.show=function(t,e){var o=this;if(!1!==this.opts.beforeShow.call(this)){if(!this.isReady)return this._loadImage(this.$link.attr(this.opts.linkAttribute),function(){!o.isMouseOver&&e||o.show(t)});this.$target.append(this.$flyout);var i=this.$target.outerWidth(),s=this.$target.outerHeight(),h=this.$flyout.width(),n=this.$flyout.height(),a=this.$zoom.width(),r=this.$zoom.height();(c=a-h)<0&&(c=0),(d=r-n)<0&&(d=0),l=c/i,p=d/s,this.isOpen=!0,this.opts.onShow.call(this),t&&this._move(t)}},s.prototype._onEnter=function(t){var e=t.originalEvent.touches;this.isMouseOver=!0,e&&1!=e.length||(t.preventDefault(),this.show(t,!0))},s.prototype._onMove=function(t){this.isOpen&&(t.preventDefault(),this._move(t))},s.prototype._onLeave=function(){this.isMouseOver=!1,this.isOpen&&this.hide()},s.prototype._onLoad=function(t){t.currentTarget.width&&(this.isReady=!0,this.$notice.detach(),this.$flyout.html(this.$zoom),this.$target.removeClass("is-loading").addClass("is-ready"),t.data.call&&t.data())},s.prototype._onError=function(){var t=this;this.$notice.text(this.opts.errorNotice),this.$target.removeClass("is-loading").addClass("is-error"),this.detachNotice=setTimeout(function(){t.$notice.detach(),t.detachNotice=null},this.opts.errorDuration)},s.prototype._loadImage=function(t,e){var o=new Image;this.$target.addClass("is-loading").append(this.$notice.text(this.opts.loadingNotice)),this.$zoom=i(o).on("error",i.proxy(this._onError,this)).on("load",e,i.proxy(this._onLoad,this)),o.style.position="absolute",o.src=t},s.prototype._move=function(t){if(0===t.type.indexOf("touch")){var e=t.touches||t.originalEvent.touches;u=e[0].pageX,f=e[0].pageY}else u=t.pageX||u,f=t.pageY||f;var o=this.$target.offset(),i=f-o.top,s=u-o.left,h=Math.ceil(i*p),n=Math.ceil(s*l);if(n<0||h<0||c<n||d<h)this.hide();else{var a=-1*h,r=-1*n;this.$zoom.css({top:a,left:r}),this.opts.onMove.call(this,a,r)}},s.prototype.hide=function(){this.isOpen&&!1!==this.opts.beforeHide.call(this)&&(this.$flyout.detach(),this.isOpen=!1,this.opts.onHide.call(this))},s.prototype.swap=function(t,e,o){this.hide(),this.isReady=!1,this.detachNotice&&clearTimeout(this.detachNotice),this.$notice.parent().length&&this.$notice.detach(),this.$target.removeClass("is-loading is-ready is-error"),this.$image.attr({src:t,srcset:i.isArray(o)?o.join():o}),this.$link.attr(this.opts.linkAttribute,e)},s.prototype.teardown=function(){this.hide(),this.$target.off(".easyzoom").removeClass("is-loading is-ready is-error"),this.detachNotice&&clearTimeout(this.detachNotice),delete this.$link,delete this.$zoom,delete this.$image,delete this.$notice,delete this.$flyout,delete this.isOpen,delete this.isReady},i.fn.easyZoom=function(e){return this.each(function(){var t=i.data(this,"easyZoom");t?void 0===t.isOpen&&t._init():i.data(this,"easyZoom",new s(this,e))})},s});

+ 0
- 7
dist/js-old/plugins/images-loaded.js
Разница между файлами не показана из-за своего большого размера
Просмотреть файл


+ 0
- 5
dist/js-old/plugins/instafeed.js
Разница между файлами не показана из-за своего большого размера
Просмотреть файл


+ 0
- 12
dist/js-old/plugins/isotope.js
Разница между файлами не показана из-за своего большого размера
Просмотреть файл


+ 0
- 11
dist/js-old/plugins/jquery-ui-touch-punch.js Просмотреть файл

@@ -1,11 +0,0 @@
1
-/*!
2
- * jQuery UI Touch Punch 0.2.3
3
- *
4
- * Copyright 2011–2014, Dave Furfero
5
- * Dual licensed under the MIT or GPL Version 2 licenses.
6
- *
7
- * Depends:
8
- *  jquery.ui.widget.js
9
- *  jquery.ui.mouse.js
10
- */
11
-!function(a){function f(a,b){if(!(a.originalEvent.touches.length>1)){a.preventDefault();var c=a.originalEvent.changedTouches[0],d=document.createEvent("MouseEvents");d.initMouseEvent(b,!0,!0,window,1,c.screenX,c.screenY,c.clientX,c.clientY,!1,!1,!1,!1,0,null),a.target.dispatchEvent(d)}}if(a.support.touch="ontouchend"in document,a.support.touch){var e,b=a.ui.mouse.prototype,c=b._mouseInit,d=b._mouseDestroy;b._touchStart=function(a){var b=this;!e&&b._mouseCapture(a.originalEvent.changedTouches[0])&&(e=!0,b._touchMoved=!1,f(a,"mouseover"),f(a,"mousemove"),f(a,"mousedown"))},b._touchMove=function(a){e&&(this._touchMoved=!0,f(a,"mousemove"))},b._touchEnd=function(a){e&&(f(a,"mouseup"),f(a,"mouseout"),this._touchMoved||f(a,"click"),e=!1)},b._mouseInit=function(){var b=this;b.element.bind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),c.call(b)},b._mouseDestroy=function(){var b=this;b.element.unbind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),d.call(b)}}}(jQuery);

+ 0
- 6
dist/js-old/plugins/jquery-ui.js
Разница между файлами не показана из-за своего большого размера
Просмотреть файл


+ 0
- 4
dist/js-old/plugins/jquery.nice-select.min.js Просмотреть файл

@@ -1,4 +0,0 @@
1
-/*  jQuery Nice Select - v1.0
2
-    https://github.com/hernansartorio/jquery-nice-select
3
-    Made by Hernán Sartorio  */
4
-!function(e){e.fn.niceSelect=function(t){function s(t){t.after(e("<div></div>").addClass("nice-select").addClass(t.attr("class")||"").addClass(t.attr("disabled")?"disabled":"").attr("tabindex",t.attr("disabled")?null:"0").html('<span class="current"></span><ul class="list"></ul>'));var s=t.next(),n=t.find("option"),i=t.find("option:selected");s.find(".current").html(i.data("display")||i.text()),n.each(function(t){var n=e(this),i=n.data("display");s.find("ul").append(e("<li></li>").attr("data-value",n.val()).attr("data-display",i||null).addClass("option"+(n.is(":selected")?" selected":"")+(n.is(":disabled")?" disabled":"")).html(n.text()))})}if("string"==typeof t)return"update"==t?this.each(function(){var t=e(this),n=e(this).next(".nice-select"),i=n.hasClass("open");n.length&&(n.remove(),s(t),i&&t.next().trigger("click"))}):"destroy"==t?(this.each(function(){var t=e(this),s=e(this).next(".nice-select");s.length&&(s.remove(),t.css("display",""))}),0==e(".nice-select").length&&e(document).off(".nice_select")):console.log('Method "'+t+'" does not exist.'),this;this.hide(),this.each(function(){var t=e(this);t.next().hasClass("nice-select")||s(t)}),e(document).off(".nice_select"),e(document).on("click.nice_select",".nice-select",function(t){var s=e(this);e(".nice-select").not(s).removeClass("open"),s.toggleClass("open"),s.hasClass("open")?(s.find(".option"),s.find(".focus").removeClass("focus"),s.find(".selected").addClass("focus")):s.focus()}),e(document).on("click.nice_select",function(t){0===e(t.target).closest(".nice-select").length&&e(".nice-select").removeClass("open").find(".option")}),e(document).on("click.nice_select",".nice-select .option:not(.disabled)",function(t){var s=e(this),n=s.closest(".nice-select");n.find(".selected").removeClass("selected"),s.addClass("selected");var i=s.data("display")||s.text();n.find(".current").text(i),n.prev("select").val(s.data("value")).trigger("change")}),e(document).on("keydown.nice_select",".nice-select",function(t){var s=e(this),n=e(s.find(".focus")||s.find(".list .option.selected"));if(32==t.keyCode||13==t.keyCode)return s.hasClass("open")?n.trigger("click"):s.trigger("click"),!1;if(40==t.keyCode){if(s.hasClass("open")){var i=n.nextAll(".option:not(.disabled)").first();i.length>0&&(s.find(".focus").removeClass("focus"),i.addClass("focus"))}else s.trigger("click");return!1}if(38==t.keyCode){if(s.hasClass("open")){var l=n.prevAll(".option:not(.disabled)").first();l.length>0&&(s.find(".focus").removeClass("focus"),l.addClass("focus"))}else s.trigger("click");return!1}if(27==t.keyCode)s.hasClass("open")&&s.trigger("click");else if(9==t.keyCode&&s.hasClass("open"))return!1});var n=document.createElement("a").style;return n.cssText="pointer-events:auto","auto"!==n.pointerEvents&&e("html").addClass("no-csspointerevents"),this}}(jQuery);

+ 0
- 6
dist/js-old/plugins/magnific-popup.js
Разница между файлами не показана из-за своего большого размера
Просмотреть файл


+ 0
- 2
dist/js-old/plugins/mouse-parallax.js
Разница между файлами не показана из-за своего большого размера
Просмотреть файл


+ 0
- 215
dist/js-old/plugins/plugins.js
Разница между файлами не показана из-за своего большого размера
Просмотреть файл


+ 0
- 1
dist/js-old/plugins/plugins.min.js
Разница между файлами не показана из-за своего большого размера
Просмотреть файл


+ 0
- 11
dist/js-old/plugins/scrollup.js Просмотреть файл

@@ -1,11 +0,0 @@
1
-
2
-/*
3
- * 
4
- * scrollup 
5
- * Url: http://markgoodyear.com/labs/scrollup/
6
- * v2.4.1
7
- * 
8
- */
9
-!function(l,o,e){"use strict";l.fn.scrollUp=function(o){l.data(e.body,"scrollUp")||(l.data(e.body,"scrollUp",!0),l.fn.scrollUp.init(o))},l.fn.scrollUp.init=function(r){var s,t,c,i,n,a,d,p=l.fn.scrollUp.settings=l.extend({},l.fn.scrollUp.defaults,r),f=!1;switch(d=p.scrollTrigger?l(p.scrollTrigger):l("<a/>",{id:p.scrollName,href:"#top"}),p.scrollTitle&&d.attr("title",p.scrollTitle),d.appendTo("body"),p.scrollImg||p.scrollTrigger||d.html(p.scrollText),d.css({display:"none",position:"fixed",zIndex:p.zIndex}),p.activeOverlay&&l("<div/>",{id:p.scrollName+"-active"}).css({position:"absolute",top:p.scrollDistance+"px",width:"100%",borderTop:"1px dotted"+p.activeOverlay,zIndex:p.zIndex}).appendTo("body"),p.animation){case"fade":s="fadeIn",t="fadeOut",c=p.animationSpeed;break;case"slide":s="slideDown",t="slideUp",c=p.animationSpeed;break;default:s="show",t="hide",c=0}i="top"===p.scrollFrom?p.scrollDistance:l(e).height()-l(o).height()-p.scrollDistance,n=l(o).scroll(function(){l(o).scrollTop()>i?f||(d[s](c),f=!0):f&&(d[t](c),f=!1)}),p.scrollTarget?"number"==typeof p.scrollTarget?a=p.scrollTarget:"string"==typeof p.scrollTarget&&(a=Math.floor(l(p.scrollTarget).offset().top)):a=0,d.click(function(o){o.preventDefault(),l("html, body").animate({scrollTop:a},p.scrollSpeed,p.easingType)})},l.fn.scrollUp.defaults={scrollName:"scrollUp",scrollDistance:300,scrollFrom:"top",scrollSpeed:300,easingType:"linear",animation:"fade",animationSpeed:200,scrollTrigger:!1,scrollTarget:!1,scrollText:"Scroll to top",scrollTitle:!1,scrollImg:!1,activeOverlay:!1,zIndex:2147483647},l.fn.scrollUp.destroy=function(r){l.removeData(e.body,"scrollUp"),l("#"+l.fn.scrollUp.settings.scrollName).remove(),l("#"+l.fn.scrollUp.settings.scrollName+"-active").remove(),l.fn.jquery.split(".")[1]>=7?l(o).off("scroll",r):l(o).unbind("scroll",r)},l.scrollUp=l.fn.scrollUp}(jQuery,window,document);
10
-
11
-

+ 0
- 13
dist/js-old/plugins/slick.js
Разница между файлами не показана из-за своего большого размера
Просмотреть файл


+ 0
- 8
dist/js-old/plugins/svg-injector.min.js Просмотреть файл

@@ -1,8 +0,0 @@
1
-/**
2
- * SVGInjector v1.1.3 - Fast, caching, dynamic inline SVG DOM injection library
3
- * https://github.com/iconic/SVGInjector
4
- *
5
- * Copyright (c) 2014-2015 Waybury <hello@waybury.com>
6
- * @license MIT
7
- */
8
-!function(t,e){"use strict";function r(t){t=t.split(" ");for(var e={},r=t.length,n=[];r--;)e.hasOwnProperty(t[r])||(e[t[r]]=1,n.unshift(t[r]));return n.join(" ")}var n="file:"===t.location.protocol,i=e.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1"),o=Array.prototype.forEach||function(t,e){if(void 0===this||null===this||"function"!=typeof t)throw new TypeError;var r,n=this.length>>>0;for(r=0;n>r;++r)r in this&&t.call(e,this[r],r,this)},a={},l=0,s=[],u=[],c={},f=function(t){return t.cloneNode(!0)},p=function(t,e){u[t]=u[t]||[],u[t].push(e)},d=function(t){for(var e=0,r=u[t].length;r>e;e++)!function(e){setTimeout(function(){u[t][e](f(a[t]))},0)}(e)},v=function(e,r){if(void 0!==a[e])a[e]instanceof SVGSVGElement?r(f(a[e])):p(e,r);else{if(!t.XMLHttpRequest)return r("Browser does not support XMLHttpRequest"),!1;a[e]={},p(e,r);var i=new XMLHttpRequest;i.onreadystatechange=function(){if(4===i.readyState){if(404===i.status||null===i.responseXML)return r("Unable to load SVG file: "+e),n&&r("Note: SVG injection ajax calls do not work locally without adjusting security setting in your browser. Or consider using a local webserver."),r(),!1;if(!(200===i.status||n&&0===i.status))return r("There was a problem injecting the SVG: "+i.status+" "+i.statusText),!1;if(i.responseXML instanceof Document)a[e]=i.responseXML.documentElement;else if(DOMParser&&DOMParser instanceof Function){var t;try{var o=new DOMParser;t=o.parseFromString(i.responseText,"text/xml")}catch(l){t=void 0}if(!t||t.getElementsByTagName("parsererror").length)return r("Unable to parse SVG file: "+e),!1;a[e]=t.documentElement}d(e)}},i.open("GET",e),i.overrideMimeType&&i.overrideMimeType("text/xml"),i.send()}},h=function(e,n,a,u){var f=e.getAttribute("data-src")||e.getAttribute("src");if(!/\.svg/i.test(f))return void u("Attempted to inject a file with a non-svg extension: "+f);if(!i){var p=e.getAttribute("data-fallback")||e.getAttribute("data-png");return void(p?(e.setAttribute("src",p),u(null)):a?(e.setAttribute("src",a+"/"+f.split("/").pop().replace(".svg",".png")),u(null)):u("This browser does not support SVG and no PNG fallback was defined."))}-1===s.indexOf(e)&&(s.push(e),e.setAttribute("src",""),v(f,function(i){if("undefined"==typeof i||"string"==typeof i)return u(i),!1;var a=e.getAttribute("id");a&&i.setAttribute("id",a);var p=e.getAttribute("title");p&&i.setAttribute("title",p);var d=[].concat(i.getAttribute("class")||[],"injected-svg",e.getAttribute("class")||[]).join(" ");i.setAttribute("class",r(d));var v=e.getAttribute("style");v&&i.setAttribute("style",v);var h=[].filter.call(e.attributes,function(t){return/^data-\w[\w\-]*$/.test(t.name)});o.call(h,function(t){t.name&&t.value&&i.setAttribute(t.name,t.value)});var g,m,b,y,A,w={clipPath:["clip-path"],"color-profile":["color-profile"],cursor:["cursor"],filter:["filter"],linearGradient:["fill","stroke"],marker:["marker","marker-start","marker-mid","marker-end"],mask:["mask"],pattern:["fill","stroke"],radialGradient:["fill","stroke"]};Object.keys(w).forEach(function(t){g=t,b=w[t],m=i.querySelectorAll("defs "+g+"[id]");for(var e=0,r=m.length;r>e;e++){y=m[e].id,A=y+"-"+l;var n;o.call(b,function(t){n=i.querySelectorAll("["+t+'*="'+y+'"]');for(var e=0,r=n.length;r>e;e++)n[e].setAttribute(t,"url(#"+A+")")}),m[e].id=A}}),i.removeAttribute("xmlns:a");for(var x,S,k=i.querySelectorAll("script"),j=[],G=0,T=k.length;T>G;G++)S=k[G].getAttribute("type"),S&&"application/ecmascript"!==S&&"application/javascript"!==S||(x=k[G].innerText||k[G].textContent,j.push(x),i.removeChild(k[G]));if(j.length>0&&("always"===n||"once"===n&&!c[f])){for(var M=0,V=j.length;V>M;M++)new Function(j[M])(t);c[f]=!0}var E=i.querySelectorAll("style");o.call(E,function(t){t.textContent+=""}),e.parentNode.replaceChild(i,e),delete s[s.indexOf(e)],e=null,l++,u(i)}))},g=function(t,e,r){e=e||{};var n=e.evalScripts||"always",i=e.pngFallback||!1,a=e.each;if(void 0!==t.length){var l=0;o.call(t,function(e){h(e,n,i,function(e){a&&"function"==typeof a&&a(e),r&&t.length===++l&&r(l)})})}else t?h(t,n,i,function(e){a&&"function"==typeof a&&a(e),r&&r(1),t=null}):r&&r(0)};"object"==typeof module&&"object"==typeof module.exports?module.exports=exports=g:"function"==typeof define&&define.amd?define(function(){return g}):"object"==typeof t&&(t.SVGInjector=g)}(window,document);

+ 0
- 3
dist/js-old/plugins/wow.js
Разница между файлами не показана из-за своего большого размера
Просмотреть файл


+ 0
- 67
dist/js-old/product.js Просмотреть файл

@@ -1,67 +0,0 @@
1
-
2
-async function getDataStatAxios(url) {
3
-    const config = {
4
-        url,
5
-        method: 'get',
6
-        headers: {
7
-            'Authorization': `stat 05b2f2ca510344968c65e1ebf49a5595`,
8
-        }
9
-    };
10
-
11
-    let response = await axios(config);
12
-    let item_array = JSON.parse(response.data.result);
13
-    $.each(item_array, function (key, value) {
14
-        let item_html = `
15
-            <div class="col-lg-4 col-md-6 pb-3 items_ptoducts" data_item_search="${value.productname}">
16
-                <div class="card h-100 shadow border-0 p-1">
17
-                    <div class="card-head text-center">
18
-                    <img src="../dist/assets/imgs/Navbar/Accessiories-1.png" class="img-fluid"/>
19
-                    </div>
20
-                    <div class="card-body">
21
-                        <ul style="list-style:none" class="h-10p p-0">
22
-                            <li class="border-bottom py-1 satoshi_font">${value.productname}</li>
23
-                            <li class="border-bottom py-1 d-none satoshi_font">${value.itemname}</li>
24
-                            <li class="border-bottom py-1 d-none satoshi_font">${value.sku}</li>
25
-                        </ul>
26
-                        <div>
27
-                        <a href="#" class="bg-black btn font-1-2 px-5 rounded-5 text-white w-100 satoshi_font" data_detail="${value.productid}">Details</a>
28
-                        </div>
29
-                    </div>
30
-                </div>
31
-            </div>`;
32
-        // $(".product_name").html(value.productname);
33
-        $(".item_details").append(item_html);
34
-    })
35
-    $(".item_details").find(".items_ptoducts").each(function(){
36
-        $(this).find(".card_body").find("a.btn").click(function(){
37
-            let product_id = $(this).find(".card-body").find("a.btn").attr("data_detail");
38
-            let loc_path = '/productdetails.html'
39
-                   if (window.location.pathname.includes(loc_path)) {
40
-                       window.location.href = `?itemid=${product_id}`
41
-                   }
42
-                   else {
43
-                       window.location.href = `/productdetails.html?itemid=${product_id}`;
44
-                   }
45
-        })
46
-    });
47
-}
48
-let port = SERVERNAME
49
-let loc_id = window.location.search;
50
-let loc_url = loc_id.split("=");
51
-let locpath = "/products.html?products";
52
-let url;
53
-if (window.location.href.includes(locpath)) {
54
-    url = `${port}/apis/v4/bizgaze/integrations/products/getallproducts`;
55
-}else{
56
-    url = `${port}/apis/v4/bizgaze/integrations/products/getproductsbyid/itemgroupid/${loc_url[1]}`;
57
-}
58
-getDataStatAxios(url);
59
-
60
-$("#item_search").on("keyup", function() {
61
-    var value = $(this).val().toLowerCase();
62
-    $(".list_items").find(".items_ptoducts").filter(function() {
63
-      $(this).toggle($(this).attr("data_item_search").toLowerCase().indexOf(value) > -1)
64
-    });
65
-});
66
-
67
-

+ 0
- 939
dist/js-old/productdetails/laptopd.js Просмотреть файл

@@ -1,939 +0,0 @@
1
-function startDetails() {
2
-    // http://127.0.0.1:5502/productdetails.html?productId=106633230000024
3
-    
4
-    if (window.location.search.split('=')[0] == '') {
5
-        window.location.href = "/notfound.html";
6
-        return;
7
-    }
8
-    let productId = window.location.hash.split('#')[1].split('=')[1];
9
-    console.log(productId);
10
-    let itemtagscombinationRes = null;
11
-    let labels = {};
12
-    let isThereInLabel = {};
13
-    let currentComb = null;
14
-
15
-    let colorId = null;
16
-
17
-    let group = {};
18
-
19
-    let loadingActions = {
20
-        addLoader() {
21
-            $('.loadingCall').removeClass('d-none');
22
-            $('.mainContanierProduct').addClass('d-none');
23
-        },
24
-        removeLoader() {
25
-            $('.loadingCall').addClass('d-none');
26
-            $('.mainContanierProduct').removeClass('d-none');
27
-        }
28
-    }
29
-
30
-    let currentClick = null;
31
-
32
-    if (productId) {
33
-        swapSectionsVideo();
34
-        loadingActions.addLoader();
35
-        updateProductId(productId);
36
-        getProductDetails(productId);
37
-        appendSpecs(productId)
38
-    } else {
39
-        window.location.href = "/notfound.html"
40
-    }
41
-
42
-    function updateProductId(val) {
43
-        $('#productidtag').val(val);
44
-    }
45
-
46
-    function updateItemId(val) {
47
-        $('#itemidtag').val(val);
48
-    }
49
-
50
-    let specification_wrap_action = {
51
-        remove() {
52
-
53
-            $('.specification-wrap').addClass('d-none');
54
-        },
55
-
56
-        add() {
57
-            $('.specification-wrap').removeClass('d-none');
58
-        }
59
-    }
60
-
61
-    let description_action = {
62
-        addVal(value) {
63
-            $('.description-wrap > p').html(value);
64
-        },
65
-
66
-        removeVal(value) {
67
-            $('.description-wrap > p').html('');
68
-        }
69
-    }
70
-
71
-    function getSpecsItemHTML({ name, des, itemid, id }) {
72
-        return `<div id="${id}" data-specitemid="${itemid}" class="">
73
-        <div class="row  border-bottom">
74
-            <div class="col-sm-6 bg-gray-3 py-2">
75
-            ${name}
76
-            </div>
77
-            <div class="col-sm-6  py-2">
78
-            ${des}	
79
-            </div>
80
-        </div>
81
-    </div>`;
82
-
83
-    }
84
-    // function getSpecsItemHTML({name,des,itemid,id}){
85
-    //     return ` <tr id="${id}" data-specitemid="${itemid}">
86
-    //     <td style="width:200px">${name}</td>
87
-    //     <td class="">${des}</td>
88
-    // </tr>`;
89
-    // }
90
-
91
-    async function appendSpecs(id) {
92
-        let resData = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/products/itemspecifications/itemid/${id}`, true);
93
-
94
-        if (resData.isError) {
95
-            $('.productdetailstabs').addClass('d-none');
96
-            $('.specContainerleft').html('')
97
-            $('.specContainerRight').html('')
98
-            return;
99
-        }
100
-        $('.productdetailstabs ').removeClass('d-none');
101
-        const res = resData.response;
102
-   //     console.log(JSON.parse(res.result));
103
-        const data = JSON.parse(res.result);
104
-     //   console.log(data);
105
-        let html = '';
106
-        let leftHtml = '';
107
-        let rightHtml = '';
108
-
109
-        if (data.length == 0) {
110
-            $('.productdetailstabs ').addClass('d-none');
111
-            $('.specContainerleft').html('')
112
-            $('.specContainerRight').html('')
113
-            return;
114
-        }
115
-
116
-        for (let i = 0; i < data.length; i++) {
117
-            const { specificationname, specificationitemid, itemid, description } = data[i];
118
-            if ((i + 1) % 2 == 0) {
119
-                rightHtml += getSpecsItemHTML({
120
-                    name: specificationname, id: specificationitemid, itemid, des: description
121
-                })
122
-            } else {
123
-                leftHtml += getSpecsItemHTML({
124
-                    name: specificationname, id: specificationitemid, itemid, des: description
125
-                });
126
-            }
127
-
128
-        }
129
-
130
-        $('.specContainerleft').html(leftHtml)
131
-        $('.specContainerRight').html(rightHtml)
132
-
133
-    }
134
-
135
-
136
-    function getParentHTML(name, productid, id, isMain) {
137
-        return `<div data-parentidgroup="${name?.replace(" ", '')}-parent" class="pb-2 groupingitems_search ${name?.replace(" ", '')}-parent">
138
-        <h5 class="py-2 smallHeadingProductDetails">${name}</h5>
139
-        <div class="d-flex gap-2 flex-lg-row flex-wrap ${id}container" data-tagid="${id}">
140
-           
141
-        </div>
142
-    </div>`;
143
-    }
144
-
145
-    function onClickHandler(e) {
146
-
147
-        $(e).parent().find('.borderselector').removeClass('borderselector');
148
-
149
-        $(e).addClass('borderselector')
150
-
151
-    }
152
-
153
-    function getChildHTML(tagid, name, isTrue,parentid) {
154
-
155
-        let blue = '#253746';
156
-        let greenLight = '#5e7975';
157
-        let brown = '#624839';
158
-        let bgColor = '';
159
-       if(name === 'Deep Sea Blue'){
160
-        bgColor = blue;
161
-       }else if(name == 'Desert Brown'){
162
-        bgColor =  brown;
163
-       }else if(name == 'Eucalyptus Green'){
164
-        bgColor = greenLight;
165
-       }
166
-
167
-        if(colorId == parentid){
168
-            return `
169
-            <div data-type="${tagid}-${name}" data-tagiditem="${tagid}" class="specsmallcard optiontaganwi ${isTrue ? 'borderselector' : ''} colorselector card text-center small-font cursor-pointer ">
170
-        <span  style="
171
-        height: 25px;
172
-        border-radius: 5px;
173
-        width:25px;
174
-        background: ${bgColor} !important;
175
-        pointer-events:none;
176
-      
177
-    "></span>
178
-            </div> `
179
-        }
180
-        return `
181
-            <div data-type="${tagid}-${name}" data-tagiditem="${tagid}" class="specsmallcard optiontaganwi ${isTrue ? 'borderselector' : ''} card text-center small-font cursor-pointer p-3">
182
-                ${name}
183
-            </div> `
184
-
185
-
186
-    }
187
-
188
-    function addeventlisteners() {
189
-
190
-        $('.optiontaganwi').each(function (i, el) {
191
-            $(el).click(function (e) {
192
-                
193
-                $('#quantity').val(1);
194
-
195
-                $(e.target).parent().find('.borderselector').removeClass('borderselector');
196
-                $(e.target).addClass('borderselector');
197
-            
198
-                currentClick = e.target;
199
-                ;
200
-             //searchComb();
201
-                // getAllCombination();
202
-                getandsetCombination();
203
-              
204
-            })
205
-        });
206
-
207
-    }
208
-
209
-    function getandsetCombination(){
210
-        
211
-        let keyOption = $(currentClick).data('tagiditem');
212
-        $('.disabled-option-item').removeClass('disabled-option-item');
213
-        let tagsNames = [];
214
-     
215
-       
216
-
217
-        let currOptionAvaIds = {};
218
-       
219
-        $('.borderselector').each(function (i,e){
220
-            let id = $(e).data('tagiditem');
221
-            tagsNames.push(id);
222
-        });
223
-      
224
-
225
-        for(let i=0;i<itemtagscombinationRes.length;i++){
226
-            let tagItems = itemtagscombinationRes[i].tagids;;
227
-            if(tagItems.includes(keyOption)){
228
-                let splitArr = tagItems.split('|');
229
-                for(let j=0;j<splitArr.length;j++){
230
-                    if(keyOption){
231
-                        currOptionAvaIds[splitArr[j]] = splitArr[j];
232
-                    }
233
-                  
234
-                }
235
-            }
236
-        }
237
-
238
-        console.log(currOptionAvaIds);
239
-        console.log(itemtagscombinationRes);
240
-        let parentsArr = []; 
241
-        $('.optiontaganwi').each(function (i,e){
242
-           
243
-            let currParent = $(e).parents('.groupingitems_search');
244
-        
245
-            if(currParent.find(`[data-tagiditem="${keyOption}"]`).length==0){
246
-                let currId = $(e).data('tagiditem');
247
-                if(!currOptionAvaIds[currId]){
248
-                    if($(e).hasClass('borderselector')){
249
-                        parentsArr.push(currParent);
250
-                        $(e).removeClass('borderselector');
251
-                    }
252
-                    $(e).addClass('disabled-option-item');
253
-                }
254
-            }
255
-        });
256
-
257
-        for(let i=0;i<parentsArr.length;i++){
258
-            let currParent = parentsArr[i];
259
-            currParent.find('.optiontaganwi').each(function (j,e){
260
-                let isTrue = $(e).hasClass('disabled-option-item');
261
-                if(!isTrue){
262
-                    $(e).addClass('borderselector');
263
-                    return false; 
264
-                }
265
-            });
266
-        }
267
-
268
-        // $('.optiontaganwi').addClass('disabled-option-item');
269
-        let parentId = $(currentClick).parents('.groupingitems_search');
270
-        let parentData = $(parentId).data('parentidgroup');
271
-        let parentArr = [];
272
-       $('.groupingitems_search').each(function (i,e){
273
-           const curParentId =  $(e).data('parentidgroup');
274
-           if(parentData != curParentId){
275
-            let obj = {
276
-                name:$(e).find('.smallHeadingProductDetails').html(),
277
-                arr:[]
278
-            }
279
-                $(e).find('.optiontaganwi').each(function (j,evt){
280
-                    let id = $(evt).data('tagiditem');
281
-                    obj.arr.push(id);
282
-                });
283
-                parentArr.push(obj);
284
-
285
-           }
286
-       })
287
-
288
-       console.log(parentArr);
289
-
290
-       let arrone = parentArr[0].arr;
291
-       let arrtwo = []; 
292
-       if(parentArr.length>1){
293
-        arrtwo = parentArr[1]?.arr;
294
-       }
295
-
296
-       let currId = keyOption;
297
-       let ids = [];
298
-       for(let i=0;i<arrone.length;i++){
299
-        //let currEl = [currId,arrone[i]];
300
-        let currEl = ``
301
-        for(let j=0;j<arrtwo.length;j++){
302
-            currEl = `${currId}|${arrone[i]}|${arrtwo[j]}`;
303
-
304
-            ids.push(currEl);
305
-            currEl = '';
306
-        }
307
-        
308
-       }
309
-       console.log(ids,'ids');
310
-       let findObj = [];
311
-       debugger 
312
-       for(let i=0;i<ids.length;i++){
313
-      
314
-        let curId = ids[i]
315
-        for(let j=0;j<itemtagscombinationRes.length;j++){
316
-            const currItem = itemtagscombinationRes[j].tagids.split('|');
317
-            let isTrue = true;
318
-            for(let k=0;k<currItem.length;k++){
319
-                if(!curId.includes(currItem[k])){
320
-                    isTrue = false;
321
-                    break;
322
-                }
323
-            }
324
-
325
-            if(isTrue){
326
-                findObj.push(itemtagscombinationRes[j]);
327
-            }
328
-        }
329
-       }
330
-
331
-
332
-       console.log(findObj);
333
-
334
-       $('.optiontaganwi').addClass('disabled-option-item');
335
-
336
-debugger;
337
-       for(let i=0;i<findObj.length;i++){
338
-
339
-        let item = findObj[i].tagids.split('|');
340
-        for(let j=0;j<item.length;j++){
341
-            $(`[data-tagiditem=${item[j]}]`).removeClass('disabled-option-item');
342
-        }
343
-       
344
-       }
345
-
346
-       $(parentId).find('.optiontaganwi').each(function (i,e){
347
-        $(e).removeClass('disabled-option-item')
348
-       });
349
-
350
-
351
-       for(let i=0;i<itemtagscombinationRes.length;i++){
352
-        let currIds = itemtagscombinationRes[i].tagids;
353
-        let isTrue = true;
354
-        let isPro = false;
355
-
356
-        for(let j=0;j<tagsNames.length;j++){
357
-            if(tagsNames.join().includes('106631360000128')&&(tagsNames.join().includes('106631360000132')||tagsNames.join().includes('106631360000133'))){
358
-                isPro = true;
359
-            }
360
-            if(!currIds.includes(tagsNames[j])){
361
-                isTrue = false;
362
-            }
363
-        }
364
-
365
-        if(isTrue){
366
-            const { quantity } = itemtagscombinationRes[i];
367
-            if (true) {
368
-                currentComb = itemtagscombinationRes[i];
369
-              
370
-                updateDetailsByObj(itemtagscombinationRes[i]);
371
-
372
-                if(isPro){
373
-                    $(`[data-tagiditem="106631360000089"]`).addClass(' disabled-option-item')
374
-                    $(`[data-tagiditem="106631360000088"]`).addClass(' disabled-option-item')
375
-                }
376
-
377
-                
378
-            } else {
379
-
380
-                let name = itemtagscombinationRes[i].itemname.split('-')[0];
381
-                $('#addtocart').addClass('disabled');
382
-                let itemsName = name;
383
-                $('.borderselector').each(function (i, e) {
384
-                    itemsName += ` ${$(e).html().trim()}`;
385
-                });
386
-
387
-                updateItemId(null);
388
-
389
-                let defaultImg = itemtagscombinationRes[i].itemimageurl ? imgServerNameBuild(itemtagscombinationRes[i].itemimageurl) : `./dist/assets/imgs/nophoto.png`;
390
-            
391
-                $('.productDetailsMain  > img').attr('src', defaultImg);
392
-
393
-                specification_wrap_action.remove();
394
-                $('#skudetailitem').val(-1)
395
-                $('.productname').html(itemsName)
396
-               
397
-
398
-                $('.msgErrorDetailsItem').removeClass('d-none');
399
-                $('.des_productdes').html('');
400
-                $('.price').html('');
401
-            }
402
-
403
-            initAddToCart()
404
-            return;
405
-        }
406
-        
407
-       }
408
-
409
-   
410
-       
411
-   
412
-        // return;
413
-
414
-    
415
-
416
-
417
-        return;
418
-        let commonTags = [];
419
-      //  $('.optiontaganwi').addClass('disabled-option-item')
420
-
421
-        for(let i=0;i<tagsNames.length;i++){
422
-            let currtagName = tagsNames[i];
423
-            let arr = currtagItemCom(currtagName);
424
-            commonTags.push(arr);
425
-        }
426
-
427
-        
428
-
429
-         console.log(commonTags);
430
-
431
-        // for(let i=0;i<commonTags.length;i++){
432
-        //     let currObj = commonTags[i];
433
-        //     for(let item in currObj){
434
-        //         console.log($(`[data-tagiditem="${item}"]`));
435
-        //         $(`[data-tagiditem="${item}"]`).removeClass('disabled-option-item')
436
-        //     }
437
-        // }
438
-
439
-        let finalAns = {};
440
-        let arra = [];
441
-        for(let i=0;i<commonTags.length;i++){
442
-            let currObj = commonTags[i];
443
-            for(let item in currObj){
444
-                let isTrue = true;
445
-                for(let j=0;j<commonTags.length;j++){
446
-                    if(j!=i){
447
-                        let currComb = commonTags[j];
448
-                        if(!currComb[item]){
449
-                            isTrue = false;
450
-                        }
451
-                    }
452
-                }
453
-                if(isTrue){
454
-                    arra.push(currObj[item])
455
-                    finalAns[currObj[item]] = currObj[item];
456
-                    $(`[data-tagiditem="${item}"]`).removeClass('disabled-option-item')
457
-                }
458
-            }
459
-        }
460
-
461
-        // console.log(arra);
462
-
463
-        
464
-        
465
-
466
-       
467
-       
468
-        // for(let i=0;i<itemtagscombinationRes.length;i++){
469
-        //     let tagItems = itemtagscombinationRes[i].tagids;;
470
-        //     if(tagItems.includes(keyOption)){
471
-        //         let splitArr = tagItems.split('|');
472
-        //         for(let j=0;j<splitArr.length;j++){
473
-        //             commonTags[splitArr[j]] = splitArr[j];
474
-        //         }
475
-        //     }
476
-        // }
477
-
478
-
479
-
480
-        // for(let i=0;i<currOptionAvaIds.length;i++){
481
-        //     let currId = currOptionAvaIds[i];
482
-        //     if(parentId.find(currId).length === 0){
483
-        //         console.log(currId);
484
-        //     }
485
-        // }
486
-    }
487
-
488
-    
489
-    
490
-    function currtagItemCom(keyOption){
491
-        debugger;
492
-        let arr = [];
493
-        let commonTags = {};
494
-        for(let i=0;i<itemtagscombinationRes.length;i++){
495
-            let tagItems = itemtagscombinationRes[i].tagids;;
496
-            if(tagItems.includes(keyOption)){
497
-                let splitArr = tagItems.split('|');
498
-                for(let j=0;j<splitArr.length;j++){
499
-                    if(!commonTags[splitArr[j]]){
500
-                        commonTags[splitArr[j]] = {
501
-                        keyOption,
502
-                        data:itemtagscombinationRes[i]
503
-                        };
504
-                        arr.push(splitArr[j]);
505
-
506
-                    }
507
-                    
508
-                }
509
-            }
510
-        }
511
-
512
-        return commonTags;
513
-    }
514
-
515
-
516
-
517
-    function updateDetailsByObj(obj) {
518
-        $('.productname').html(obj.itemname);
519
-        $('.titleproductnav').html(obj.itemname);
520
-        let  [currencySymbol, amount] = getCurrencySymbol(obj?.pricelist||0);
521
-
522
-        let commingSoonText = window.location.href.toLowerCase().includes('zeno')||window.location.href.includes('fyro')
523
-        $('.price').html(obj.pricelist ? `<span class="font-w600">${currencySymbol}${amount}</span>${commingSoonText?'<span class="mx-1 badge  d-md-none  bg-gradient-violet text-a-color">Pre Order Now!</span>':''}` : 'pre order now');
524
-        appendSpecs(obj.itemid)
525
-        $('#skudetailitem').val(obj.sku)
526
-        $('.des_productdes').html(obj.itemdescription);
527
-        $('#addtocart').attr('data-qty', obj.quantity);
528
-
529
-
530
-        let defaultImg = obj.itemimageurl ? imgServerNameBuild(obj.itemimageurl) : `./dist/assets/imgs/nophoto.png`;
531
-      //  console.log(obj.itemimageurl, 'obj.itemimageurlobj.itemimageurlobj.itemimageurl');
532
-debugger;
533
-let productId = window.location.hash.split('#')[1]?.split('=')[1];
534
-let itemId = window.location.hash.split('#')[2]?.split('=')[1];
535
-history.replaceState(undefined, undefined, `#productId=${productId}#itemid=${obj.itemid}`)
536
-        $('.productDetailsMain  > img').attr('src', defaultImg).attr('loading','lazy');
537
-
538
-        updateItemId(obj.itemid);
539
-
540
-console.log(obj,'objobjobj');
541
-debugger;
542
-        if (!obj.pricelist || !obj.quantity) {
543
-            $('.buynow').attr('disabled', true);
544
-            $('#addtocart').attr('disabled', true);
545
-        } else {
546
-            $('.buynow').attr('disabled', false);
547
-            $('#addtocart').attr('disabled', false);
548
-        }
549
-    }
550
-
551
-    function searchComb() {
552
-        let valuesSelected = [];
553
-        $('.optiontaganwi').removeClass('disabled-option-item')
554
-
555
-        $('#addtocart').removeClass('disabled');
556
-        $('.msgErrorDetailsItem').addClass('d-none');
557
-        $('.borderselector,border_selector').each(function (i, el) {
558
-            console.log($(el).html())
559
-            let val = $(el).data('tagiditem');
560
-            valuesSelected.push(val);
561
-        });
562
-
563
-        let labelRecord = {};
564
-
565
-        for (let label in labels) {
566
-            labelRecord[label] = false;
567
-        }
568
-
569
-        console.log(labelRecord);
570
-        specification_wrap_action.add();
571
-        console.log(group);
572
-        let unFiler = null;
573
-        for (let i = 0; i < itemtagscombinationRes.length; i++) {
574
-            const currItem = itemtagscombinationRes[i];
575
-            const { tagids } = currItem;
576
-
577
-
578
-            let isTrue = true;
579
-            let labelFilter = labelRecord;
580
-
581
-            for (let i = 0; i < valuesSelected.length; i++) {
582
-
583
-                if (!tagids.includes(valuesSelected[i])) {
584
-                    isTrue = false
585
-
586
-                    unFiler = labelFilter;
587
-                    break;
588
-                }
589
-                labelFilter[group[valuesSelected[i]]] = true;
590
-            }
591
-
592
-            if (isTrue) {
593
-              //  console.log(itemtagscombinationRes[i], 'itemtagscombinationRes[i]');
594
-                const { quantity } = itemtagscombinationRes[i];
595
-                if (quantity >= $('#quantity').val() && quantity >= 1) {
596
-                    currentComb = itemtagscombinationRes[i];
597
-                    // $('.productname').html(itemtagscombinationRes[i].itemname)
598
-                    // $('.price').html(itemtagscombinationRes[i].pricelist);
599
-                    // location.hash = itemtagscombinationRes[i].itemname.trim();
600
-                    // appendSpecs(itemtagscombinationRes[i].itemid)
601
-                    // history.replaceState(null, null, `#itemid=${itemtagscombinationRes[i].itemid}#${itemtagscombinationRes[i].itemname.trim()}`);
602
-
603
-                    // $('#skudetailitem').val(itemtagscombinationRes[i].sku)
604
-                    // $('.des_productdes').html(itemtagscombinationRes[i].itemdescription);
605
-                    updateDetailsByObj(itemtagscombinationRes[i]);
606
-                } else {
607
-
608
-                    let name = itemtagscombinationRes[i].itemname.split('-')[0];
609
-                    $('#addtocart').addClass('disabled');
610
-                    let itemsName = name;
611
-                    $('.borderselector').each(function (i, e) {
612
-                        itemsName += ` ${$(e).html().trim()}`;
613
-                    });
614
-
615
-                    updateItemId(null);
616
-
617
-                    let defaultImg = itemtagscombinationRes[i].itemimageurl ? imgServerNameBuild(itemtagscombinationRes[i].itemimageurl) : `./dist/assets/imgs/nophoto.png`;
618
-                   // console.log(itemtagscombinationRes[i].itemimageurl, 'obj.itemimageurlobj.itemimageurlobj.itemimageurl');
619
-            
620
-                    $('.productDetailsMain  > img').attr('src', defaultImg);
621
-
622
-                    specification_wrap_action.remove();
623
-                    $('#skudetailitem').val(-1)
624
-                    $('.productname').html(itemsName)
625
-                    // history.replaceState(null, null, `#`);
626
-
627
-                    $('.msgErrorDetailsItem').removeClass('d-none');
628
-                    $('.des_productdes').html('');
629
-                    $('.price').html('');
630
-                }
631
-
632
-                initAddToCart()
633
-                return;
634
-
635
-            }
636
-
637
-        }
638
-
639
-        
640
-
641
-        // alert("j");
642
-       
643
-        let name = itemtagscombinationRes[0].itemname.split('-')[0];
644
-        let itemsName = name;
645
-        $('.borderselector').each(function (i, e) {
646
-            itemsName += `- ${$(e).html().trim()}`;
647
-        })
648
-        specification_wrap_action.remove();
649
-        $('.productname').html(itemsName)
650
-        $('#skudetailitem').val(-1)
651
-        $('.price').html('');
652
-        $('#addtocart').addClass('disabled');
653
-        $('.msgErrorDetailsItem').removeClass('d-none');
654
-
655
-        initAddToCart()
656
-    }
657
-
658
-    function getAllCombination() {
659
-        debugger;
660
-        const currClickAttr = $(currentClick).html().trim();
661
-        const optionId = $(currentClick).data('tagiditem');
662
-
663
-        let curr = $(currentClick).parents('.groupingitems_search').data('parentidgroup');
664
-        $('.groupingitems_search').each(function (i, e) {
665
-            const id = $(e).data('parentidgroup');
666
-            if (id != curr) {
667
-                $(e).find('.optiontaganwi').addClass('disabled-option-item');
668
-                $(e).find('.borderselector').removeClass('borderselector');
669
-            }
670
-        });
671
-
672
-        let ansArr = [];
673
-        let index = 0;
674
-        let comb = null;
675
-        for(let i=0;i<itemtagscombinationRes.length;i++){
676
-          
677
-            let currIds = itemtagscombinationRes[i].tagids;
678
-          
679
-            if(currIds.includes(optionId)){
680
-                currIds = currIds.split('|');
681
-              
682
-                for(let j=0;j<currIds.length;j++){
683
-                    debugger;
684
-                    if(index==0 &&optionId != currIds[j] ) {
685
-                        $(`[data-tagiditem="${currIds[j]}"]`).addClass('borderselector')
686
-                        comb = itemtagscombinationRes[i];
687
-                        index++;
688
-                    }
689
-                    $(`[data-tagiditem="${currIds[j]}"]`).removeClass('disabled-option-item');
690
-                   
691
-                    // $().parents('[data-tagid]').find()
692
-                }    
693
-    
694
-            }
695
-
696
-            
697
-           
698
-        }
699
-
700
-      //  console.log(comb,'comb tag');
701
-
702
-        updateDetailsByObj(comb);
703
-
704
-        let currentItem = comb.tagids.split('|');
705
-
706
-        for(let i=0;i<currentItem.length;i++){
707
-            $(`[data-tagiditem="${currentItem[i]}"]`).removeClass('disabled-option-item').addClass('borderselector');
708
-        }
709
-
710
-        // history.replaceState(null, null, `#${comb.itemname}`);
711
-        // window.location.href =  `#${comb.itemname}`
712
-        console.log(itemtagscombinationRes,'gobal');
713
-        return;
714
-      
715
-
716
-    };
717
-
718
-
719
-   
720
-
721
-
722
-    async function getProductDetails(id) {
723
-
724
-
725
-        debugger;
726
-
727
-        let resData = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/products/productattributelist/productid/${id}`, true);
728
-        
729
-        if (resData.isError) {
730
-            loadingActions.removeLoader();
731
-            alert(resData.errorMsg.message);
732
-            return;
733
-        }
734
-
735
-        if(resData.response.result == '[]' || !resData.response.result){
736
-            $('.barbgnav').removeClass('d-none')
737
-            loadingActions.removeLoader();
738
-            toasterHelper("Something Went Wrong")
739
-            return;
740
-        }
741
-
742
-        let res = resData.response;
743
-
744
-        res = JSON.parse(res.result);
745
-       // console.log(res, 'productattributelist');
746
-
747
-        if (!res) {
748
-            loadingActions.removeLoader();
749
-            return;
750
-        };
751
-
752
-
753
-
754
-
755
-        let html = '';
756
-
757
-        for (let i = 0; i < res.length; i++) {
758
-            const currItem = res[i];
759
-            // parenttagid means under what label
760
-            // tag id means it know unquie id
761
-            const { parentattribute, parenttagid, tagid, attribute, productid } = currItem;
762
-
763
-            if (labels[parentattribute]) {
764
-                labels[parentattribute].items.push({
765
-                    attribute,
766
-                    tagid: tagid
767
-                });
768
-            } else {
769
-                labels[parentattribute] = {
770
-                    id: parenttagid,
771
-                    items: [{
772
-                        attribute,
773
-                        tagid: tagid
774
-                    }]
775
-                };
776
-               
777
-                if(parentattribute.toLowerCase() === 'colour'){
778
-                    colorId = parenttagid;
779
-                }
780
-                html += getParentHTML(parentattribute, productid, parenttagid, i == 0);
781
-            }
782
-
783
-        }
784
-        $('#spec-container-details').html(html);
785
-
786
-
787
-      console.log(labels,'labels');
788
-
789
-        let childIds = [];
790
-
791
-        for (let item in labels) {
792
-            let { id, items } = labels[item];
793
-            // $(`[data-tagid=${id}]`)
794
-            let html = '';
795
-
796
-            for (let i = 0; i < items.length; i++) {
797
-                const { attribute, tagid } = items[i]
798
-                childIds.push(tagid);
799
-                group[attribute] = item;
800
-                console.log(attribute,colorId,"s");
801
-                html += getChildHTML(tagid, attribute, i == 0,id);
802
-                console.log(attribute,"attributeattributeattributeattribute");
803
-            }
804
-            debugger;
805
-            $(`[data-tagid="${id}"]`).html(html);
806
-        }
807
-        itemtagscombinationRes = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/products/getitemwithoutbranch/productid/${id}`, true);
808
-        itemtagscombinationRes = JSON.parse(itemtagscombinationRes.response.result);
809
-        console.log(itemtagscombinationRes, "conductt");
810
-
811
-        let itemidSearch = window.location.hash.split('#')[2]?.split('=')[1];
812
-
813
-        if(!itemidSearch){
814
-            itemidSearch = itemtagscombinationRes[0].itemid
815
-        }
816
-
817
-        let valuesSelected = [];
818
-
819
-        $('.borderselector').each(function (i, el) {
820
-
821
-            let val = $(el).html();
822
-            valuesSelected.push(val.trim());
823
-        });
824
-debugger;
825
-        // let searchParams = window.location.search.split("&");
826
-        // let skuId = window.location.hash.split('#')[2].split('=')[1];
827
-        // skuId = skuId.split('=')[1]
828
-        let isGo = true;
829
-        for (let i = 0; i < itemtagscombinationRes.length; i++) {
830
-            const currItem = itemtagscombinationRes[i];
831
-
832
-            const { tagnames, sku, itemid } = currItem;
833
-
834
-            isThereInLabel[tagnames] = itemtagscombinationRes[i];
835
-            let isTrue = true;
836
-            if (isGo) {
837
-                // for(let i=0;i<valuesSelected.length;i++){
838
-                //     if(!tagnames.includes(valuesSelected[i])){
839
-                //         isTrue = false
840
-                //     }
841
-                // }
842
-                if (itemidSearch != itemid) {
843
-                    isTrue = false
844
-                }
845
-                // if (i != 0) {
846
-                //     isTrue = false
847
-                // }
848
-                if (isTrue) {
849
-
850
-                   // console.log(itemtagscombinationRes[i], 'itemtagscombinationRes[i]');
851
-
852
-
853
-                    currentComb = itemtagscombinationRes[i];
854
-
855
-
856
-                    updateDetailsByObj(itemtagscombinationRes[i]);
857
-
858
-
859
-
860
-                    isGo = false;
861
-                    let { tagnames, tagids, pricelist } = itemtagscombinationRes[i];
862
-                    tagids = tagids.split('|');
863
-                    tagnames = tagnames.split('|');
864
-                    $('.optiontaganwi').removeClass('borderselector');
865
-
866
-                    for (let i = 0; i < tagids.length; i++) {
867
-
868
-                        $(`[data-tagiditem="${tagids[i]}"]`).addClass('borderselector');
869
-                    }
870
-
871
-                    break;
872
-                    // tagiditem
873
-                }
874
-            }
875
-        }
876
-
877
-
878
-        if (isGo && itemtagscombinationRes.length != 0) {
879
-
880
-          //  console.log(itemtagscombinationRes[0]);
881
-            let { tagnames, tagids, pricelist } = itemtagscombinationRes[0];
882
-            tagids = tagids.split('|');
883
-            tagnames = tagnames.split('|');
884
-            $('.optiontaganwi').removeClass('borderselector');
885
-            currentComb = itemtagscombinationRes[0];
886
-            // updateItemId(itemtagscombinationRes[0].itemid);
887
-
888
-            for (let i = 0; i < tagids.length; i++) {
889
-
890
-                $(`[data-type="${tagids[i]}-${tagnames[i]}"]`).addClass('borderselector');
891
-                // $(`[data-type="${tagids[i]}-Eucalyptus Green"]`).removeClass('borderselector');
892
-                // $(`[data-type="${tagids[i]}-Desert Brown"]`).removeClass('borderselector');
893
-                // $(`[data-type="${tagids[i]}-Deep Sea Blue"]`).removeClass('borderselector');
894
-            }
895
-
896
-            // $('.price').html(pricelist);
897
-            // $('.des_productdes').html(itemtagscombinationRes[0].itemdescription);
898
-            // appendSpecs(itemtagscombinationRes[0].itemid);
899
-
900
-            updateDetailsByObj(itemtagscombinationRes[0]);
901
-            //console.log(childIds);
902
-            // 
903
-
904
-        }
905
-
906
-      
907
-
908
-        //getAllCombination()
909
-
910
-
911
-
912
-        // for(let i=0;i<itemtagscombinationRes.length;i++){
913
-        //     const {tagnames} = itemtagscombinationRes[i];
914
-
915
-        // }
916
-
917
-        $('#spec-container-details').children().find('.specsmallcard').removeClass('specsmallcard');
918
-
919
-
920
-
921
-        //getting the first borderselector in first $('.groupingitems_search')[0] 
922
-
923
-        let firstParentGroup = $('.groupingitems_search')[0];
924
-        debugger;
925
-        let optionId = $(firstParentGroup).find('.borderselector').data('tagiditem');
926
-        
927
-        currentClick = $(firstParentGroup).find('.borderselector')
928
-        getandsetCombination();
929
-        addeventlisteners();
930
-        loadingActions.removeLoader();
931
-        return;
932
-       
933
-
934
-    }
935
-
936
-
937
-}
938
-startDetails();
939
-

+ 0
- 593
dist/js-old/productdetails/laptopdetails.js Просмотреть файл

@@ -1,593 +0,0 @@
1
-function startDetails() {
2
-    // http://127.0.0.1:5502/productdetails.html?productId=106633230000024
3
-    if (window.location.search.split('=')[0] == '') {
4
-        window.location.href = "/notfound.html";
5
-        return;
6
-    }
7
-    let productId = window.location.href.split('=')[1].split('&')[0].split('#')[0];
8
-    console.log(productId);
9
-    let itemtagscombinationRes = null;
10
-    let labels = {};
11
-    let isThereInLabel = {};
12
-    let currentComb = null;
13
-
14
-    let group = {};
15
-
16
-    let loadingActions = {
17
-        addLoader() {
18
-            $('.loadingCall').removeClass('d-none');
19
-            $('.mainContanierProduct').addClass('d-none');
20
-        },
21
-        removeLoader() {
22
-            $('.loadingCall').addClass('d-none');
23
-            $('.mainContanierProduct').removeClass('d-none');
24
-        }
25
-    }
26
-
27
-    let currentClick = null;
28
-
29
-    if (productId) {
30
-        loadingActions.addLoader();
31
-        updateProductId(productId);
32
-        getProductDetails(productId);
33
-        appendSpecs(productId)
34
-    } else {
35
-        window.location.href = "/notfound.html"
36
-    }
37
-
38
-    function updateProductId(val) {
39
-        $('#productidtag').val(val);
40
-    }
41
-
42
-    function updateItemId(val) {
43
-        $('#itemidtag').val(val);
44
-    }
45
-
46
-    let specification_wrap_action = {
47
-        remove() {
48
-
49
-            $('.specification-wrap').addClass('d-none');
50
-        },
51
-
52
-        add() {
53
-            $('.specification-wrap').removeClass('d-none');
54
-        }
55
-    }
56
-
57
-    let description_action = {
58
-        addVal(value) {
59
-            $('.description-wrap > p').html(value);
60
-        },
61
-
62
-        removeVal(value) {
63
-            $('.description-wrap > p').html('');
64
-        }
65
-    }
66
-
67
-    function getSpecsItemHTML({ name, des, itemid, id }) {
68
-        return `<div id="${id}" data-specitemid="${itemid}" class="">
69
-        <div class="row  border-bottom">
70
-            <div class="col-sm-6 bg-gray-3 py-2">
71
-            ${name}
72
-            </div>
73
-            <div class="col-sm-6  py-2">
74
-            ${des}	
75
-            </div>
76
-        </div>
77
-    </div>`;
78
-
79
-    }
80
-    // function getSpecsItemHTML({name,des,itemid,id}){
81
-    //     return ` <tr id="${id}" data-specitemid="${itemid}">
82
-    //     <td style="width:200px">${name}</td>
83
-    //     <td class="">${des}</td>
84
-    // </tr>`;
85
-    // }
86
-
87
-    async function appendSpecs(id) {
88
-        let resData = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/products/itemspecifications/itemid/${id}`, true);
89
-
90
-        if (resData.isError) {
91
-            $('.productdetailstabs').addClass('d-none');
92
-            $('.specContainerleft').html('')
93
-            $('.specContainerRight').html('')
94
-            return;
95
-        }
96
-        $('.productdetailstabs ').removeClass('d-none');
97
-        const res = resData.response;
98
-        console.log(JSON.parse(res.result));
99
-        const data = JSON.parse(res.result);
100
-        console.log(data);
101
-        let html = '';
102
-        let leftHtml = '';
103
-        let rightHtml = '';
104
-
105
-        if (data.length == 0) {
106
-            $('.productdetailstabs ').addClass('d-none');
107
-            $('.specContainerleft').html('')
108
-            $('.specContainerRight').html('')
109
-            return;
110
-        }
111
-
112
-        for (let i = 0; i < data.length; i++) {
113
-            const { specificationname, specificationitemid, itemid, description } = data[i];
114
-            if ((i + 1) % 2 == 0) {
115
-                rightHtml += getSpecsItemHTML({
116
-                    name: specificationname, id: specificationitemid, itemid, des: description
117
-                })
118
-            } else {
119
-                leftHtml += getSpecsItemHTML({
120
-                    name: specificationname, id: specificationitemid, itemid, des: description
121
-                });
122
-            }
123
-
124
-        }
125
-
126
-        $('.specContainerleft').html(leftHtml)
127
-        $('.specContainerRight').html(rightHtml)
128
-
129
-    }
130
-
131
-
132
-    function getParentHTML(name, productid, id, isMain) {
133
-        return `<div data-parentidgroup="${name?.replace(" ", '')}-parent" class="pb-2 groupingitems_search ${name?.replace(" ", '')}-parent">
134
-        <h5 class="py-2 smallHeadingProductDetails">${name}</h5>
135
-        <div class="d-flex gap-2 flex-lg-row flex-wrap ${id}container" data-tagid="${id}">
136
-           
137
-        </div>
138
-    </div>`;
139
-    }
140
-
141
-    function onClickHandler(e) {
142
-
143
-        $(e).parent().find('.borderselector').removeClass('borderselector');
144
-
145
-        $(e).addClass('borderselector')
146
-
147
-    }
148
-
149
-    function getChildHTML(tagid, name, isTrue) {
150
-
151
-
152
-        return `
153
-            <div data-type="${tagid}-${name}" data-tagiditem="${tagid}" class="specsmallcard optiontaganwi ${isTrue ? 'borderselector' : ''} card text-center small-font cursor-pointer p-3">
154
-                ${name}
155
-            </div> `
156
-
157
-
158
-    }
159
-
160
-    function addeventlisteners() {
161
-
162
-        $('.optiontaganwi').each(function (i, el) {
163
-            $(el).click(function (e) {
164
-                debugger;
165
-                $('#quantity').val(1);
166
-
167
-                $(e.target).parent().find('.borderselector').removeClass('borderselector');
168
-                $(e.target).addClass('borderselector');
169
-                searchComb();
170
-                currentClick = e.target;
171
-                getAllCombination();
172
-            })
173
-        });
174
-
175
-    }
176
-
177
-
178
-
179
-    function updateDetailsByObj(obj) {
180
-        $('.productname').html(obj.itemname)
181
-        let  [currencySymbol, amount] = getCurrencySymbol(obj?.pricelist||0);
182
-        
183
-        $('.price').html(obj.pricelist ?`${currencySymbol}${amount}'`:'');
184
-        appendSpecs(obj.itemid)
185
-        $('#skudetailitem').val(obj.sku)
186
-        $('.des_productdes').html(obj.itemdescription);
187
-        $('#addtocart').attr('data-qty', obj.quantity);
188
-
189
-debugger;
190
-        let defaultImg = obj.itemimageurl ? imgServerNameBuild(obj.itemimageurl) : `./dist/assets/imgs/nophoto.png`;
191
-        console.log(obj.itemimageurl, 'obj.itemimageurlobj.itemimageurlobj.itemimageurl');
192
-
193
-        $('.productDetailsMain  > img').attr('src', defaultImg);
194
-
195
-        updateItemId(obj.itemid);
196
-
197
-
198
-        if (!obj.pricelist) {
199
-            $('.buynow').attr('disabled', true);
200
-            $('#addtocart').attr('disabled', true);
201
-        } else {
202
-            $('.buynow').attr('disabled', false);
203
-            $('#addtocart').attr('disabled', false);
204
-        }
205
-    }
206
-
207
-    function searchComb() {
208
-        let valuesSelected = [];
209
-        $('.optiontaganwi').removeClass('disabled-option-item')
210
-
211
-        $('#addtocart').removeClass('disabled');
212
-        $('.msgErrorDetailsItem').addClass('d-none');
213
-        $('.borderselector,border_selector').each(function (i, el) {
214
-            console.log($(el).html())
215
-            let val = $(el).data('tagiditem');
216
-            valuesSelected.push(val);
217
-        });
218
-
219
-        let labelRecord = {};
220
-
221
-        for (let label in labels) {
222
-            labelRecord[label] = false;
223
-        }
224
-
225
-        console.log(labelRecord);
226
-        specification_wrap_action.add();
227
-        console.log(group);
228
-        let unFiler = null;
229
-        for (let i = 0; i < itemtagscombinationRes.length; i++) {
230
-            const currItem = itemtagscombinationRes[i];
231
-            const { tagids } = currItem;
232
-
233
-
234
-            let isTrue = true;
235
-            let labelFilter = labelRecord;
236
-
237
-            for (let i = 0; i < valuesSelected.length; i++) {
238
-
239
-                if (!tagids.includes(valuesSelected[i])) {
240
-                    isTrue = false
241
-
242
-                    unFiler = labelFilter;
243
-                    break;
244
-                }
245
-                labelFilter[group[valuesSelected[i]]] = true;
246
-            }
247
-
248
-            if (isTrue) {
249
-                console.log(itemtagscombinationRes[i], 'itemtagscombinationRes[i]');
250
-                const { quantity } = itemtagscombinationRes[i];
251
-                if (quantity >= $('#quantity').val() && quantity >= 1) {
252
-                    currentComb = itemtagscombinationRes[i];
253
-                    // $('.productname').html(itemtagscombinationRes[i].itemname)
254
-                    // $('.price').html(itemtagscombinationRes[i].pricelist);
255
-                    // location.hash = itemtagscombinationRes[i].itemname.trim();
256
-                    // appendSpecs(itemtagscombinationRes[i].itemid)
257
-                    history.replaceState(null, null, `#itemid=${itemtagscombinationRes[i].itemid}#${itemtagscombinationRes[i].itemname.trim()}`);
258
-
259
-                    // $('#skudetailitem').val(itemtagscombinationRes[i].sku)
260
-                    // $('.des_productdes').html(itemtagscombinationRes[i].itemdescription);
261
-                    updateDetailsByObj(itemtagscombinationRes[i]);
262
-                } else {
263
-
264
-                    let name = itemtagscombinationRes[i].itemname.split('-')[0];
265
-                    $('#addtocart').addClass('disabled');
266
-                    let itemsName = name;
267
-                    $('.borderselector').each(function (i, e) {
268
-                        itemsName += ` ${$(e).html().trim()}`;
269
-                    });
270
-
271
-                    updateItemId(null);
272
-
273
-                    let defaultImg = itemtagscombinationRes[i].itemimageurl ? imgServerNameBuild(itemtagscombinationRes[i].itemimageurl) : `./dist/assets/imgs/nophoto.png`;
274
-                    console.log(itemtagscombinationRes[i].itemimageurl, 'obj.itemimageurlobj.itemimageurlobj.itemimageurl');
275
-            
276
-                    $('.productDetailsMain  > img').attr('src', defaultImg);
277
-
278
-                    specification_wrap_action.remove();
279
-                    $('#skudetailitem').val(-1)
280
-                    $('.productname').html(itemsName)
281
-                    history.replaceState(null, null, `#`);
282
-
283
-                    $('.msgErrorDetailsItem').removeClass('d-none');
284
-                    $('.des_productdes').html('');
285
-                    $('.price').html('');
286
-                }
287
-
288
-                initAddToCart()
289
-                return;
290
-
291
-            }
292
-
293
-        }
294
-
295
-        alert("j");
296
-        let name = itemtagscombinationRes[0].itemname.split('-')[0];
297
-        let itemsName = name;
298
-        $('.borderselector').each(function (i, e) {
299
-            itemsName += `- ${$(e).html().trim()}`;
300
-        })
301
-        specification_wrap_action.remove();
302
-        $('.productname').html(itemsName)
303
-        $('#skudetailitem').val(-1)
304
-        $('.price').html('');
305
-        $('#addtocart').addClass('disabled');
306
-        $('.msgErrorDetailsItem').removeClass('d-none');
307
-
308
-        initAddToCart()
309
-    }
310
-
311
-    function getAllCombination() {
312
-        debugger;
313
-        const currClickAttr = $(currentClick).html().trim();
314
-
315
-        let isThere = [];
316
-        for (let item in isThereInLabel) {
317
-            let { tagnames } = isThereInLabel[item];
318
-            if (tagnames.includes(currClickAttr)) {
319
-                isThere.push(isThereInLabel[item])
320
-            }
321
-        }
322
-
323
-        if (!isThere.length) {
324
-            let curr = $(currentClick).parents('.groupingitems_search').data('parentidgroup');
325
-            $('.groupingitems_search').each(function (i, e) {
326
-                const id = $(e).data('parentidgroup');
327
-                if (id != curr) {
328
-                    $(e).find('.optiontaganwi').addClass('disabled-option-item');
329
-                }
330
-
331
-
332
-            });
333
-
334
-            return;
335
-        }
336
-        let selected = [];
337
-        $('.borderselector').each(function (i, e) {
338
-            selected.push($(e).html().trim())
339
-        });
340
-
341
-        // console.log(selected);
342
-        // console.log(isThere);
343
-
344
-        let ishashObj = {};
345
-
346
-        for (let i = 0; i < isThere.length; i++) {
347
-            let { tagnames, tagids } = isThere[i];
348
-            tagnames = tagnames.split('|');
349
-            tagids = tagids.split('|');
350
-
351
-            for (let j = 0; j < tagnames.length; j++) {
352
-                if (!ishashObj[tagnames[j]]) {
353
-                    ishashObj[tagnames[j]] = tagids[j];
354
-                }
355
-            }
356
-        }
357
-
358
-         console.log(ishashObj);
359
-
360
-        // for(let i=0;i<itemtagscombinationRes.length;i++){
361
-
362
-        // }
363
-
364
-    }
365
-
366
-
367
-    async function getProductDetails(id) {
368
-
369
-
370
-        debugger;
371
-
372
-        let resData = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/products/productattributelist/productid/${id}`, true);
373
-
374
-        if (resData.isError) {
375
-            loadingActions.removeLoader();
376
-            alert(resData.errorMsg.message);
377
-            return;
378
-        }
379
-
380
-        let res = resData.response;
381
-
382
-        res = JSON.parse(res.result);
383
-        console.log(res, 'productattributelist');
384
-
385
-        if (!res) {
386
-            loadingActions.removeLoader();
387
-            return;
388
-        };
389
-
390
-
391
-
392
-
393
-        let html = '';
394
-
395
-        for (let i = 0; i < res.length; i++) {
396
-            const currItem = res[i];
397
-            // parenttagid means under what label
398
-            // tag id means it know unquie id
399
-            const { parentattribute, parenttagid, tagid, attribute, productid } = currItem;
400
-
401
-            if (labels[parentattribute]) {
402
-                labels[parentattribute].items.push({
403
-                    attribute,
404
-                    tagid: tagid
405
-                });
406
-            } else {
407
-                labels[parentattribute] = {
408
-                    id: parenttagid,
409
-                    items: [{
410
-                        attribute,
411
-                        tagid: tagid
412
-                    }]
413
-                };
414
-                html += getParentHTML(parentattribute, productid, parenttagid, i == 0);
415
-            }
416
-
417
-        }
418
-        $('#spec-container-details').html(html);
419
-
420
-
421
-        // console.log(labels,'labels');
422
-
423
-        let childIds = [];
424
-
425
-        for (let item in labels) {
426
-            let { id, items } = labels[item];
427
-            // $(`[data-tagid=${id}]`)
428
-            let html = '';
429
-
430
-            for (let i = 0; i < items.length; i++) {
431
-                const { attribute, tagid } = items[i]
432
-                childIds.push(tagid);
433
-                group[attribute] = item;
434
-                html += getChildHTML(tagid, attribute, i == 0);
435
-            }
436
-            $(`[data-tagid="${id}"]`).html(html);
437
-        }
438
-        itemtagscombinationRes = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/products/getitemwithoutbranch/productid/${id}`, true);
439
-        itemtagscombinationRes = JSON.parse(itemtagscombinationRes.response.result);
440
-        console.log(itemtagscombinationRes, "conductt");
441
-
442
-        let valuesSelected = [];
443
-
444
-        $('.borderselector').each(function (i, el) {
445
-
446
-            let val = $(el).html();
447
-            valuesSelected.push(val.trim());
448
-        });
449
-
450
-        let searchParams = window.location.search.split("&");
451
-        let skuId = window.location.hash.split('#')[1].split('=')[1];
452
-        // skuId = skuId.split('=')[1]
453
-        let isGo = true;
454
-        for (let i = 0; i < itemtagscombinationRes.length; i++) {
455
-            const currItem = itemtagscombinationRes[i];
456
-
457
-            const { tagnames, sku, itemid } = currItem;
458
-
459
-            isThereInLabel[tagnames] = itemtagscombinationRes[i];
460
-            let isTrue = true;
461
-            if (isGo) {
462
-                // for(let i=0;i<valuesSelected.length;i++){
463
-                //     if(!tagnames.includes(valuesSelected[i])){
464
-                //         isTrue = false
465
-                //     }
466
-                // }
467
-                if (i != 0) {
468
-                    isTrue = false
469
-                }
470
-                if (isTrue) {
471
-
472
-                    console.log(itemtagscombinationRes[i], 'itemtagscombinationRes[i]');
473
-
474
-
475
-                    currentComb = itemtagscombinationRes[i];
476
-
477
-
478
-                    updateDetailsByObj(itemtagscombinationRes[i]);
479
-
480
-
481
-
482
-                    isGo = false;
483
-                    let { tagnames, tagids, pricelist } = itemtagscombinationRes[i];
484
-                    tagids = tagids.split('|');
485
-                    tagnames = tagnames.split('|');
486
-                    $('.optiontaganwi').removeClass('borderselector');
487
-
488
-                    for (let i = 0; i < tagids.length; i++) {
489
-
490
-                        $(`[data-tagiditem="${tagids[i]}"]`).addClass('borderselector');
491
-                    }
492
-                    // tagiditem
493
-                }
494
-            }
495
-        }
496
-
497
-
498
-        if (isGo && itemtagscombinationRes.length != 0) {
499
-
500
-            console.log(itemtagscombinationRes[0]);
501
-            let { tagnames, tagids, pricelist } = itemtagscombinationRes[0];
502
-            tagids = tagids.split('|');
503
-            tagnames = tagnames.split('|');
504
-            $('.optiontaganwi').removeClass('borderselector');
505
-            currentComb = itemtagscombinationRes[0];
506
-            // updateItemId(itemtagscombinationRes[0].itemid);
507
-
508
-            for (let i = 0; i < tagids.length; i++) {
509
-
510
-                $(`[data-type="${tagids[i]}-${tagnames[i]}"]`).addClass('borderselector');
511
-                // $(`[data-type="${tagids[i]}-Eucalyptus Green"]`).removeClass('borderselector');
512
-                // $(`[data-type="${tagids[i]}-Desert Brown"]`).removeClass('borderselector');
513
-                // $(`[data-type="${tagids[i]}-Deep Sea Blue"]`).removeClass('borderselector');
514
-            }
515
-
516
-            // $('.price').html(pricelist);
517
-            // $('.des_productdes').html(itemtagscombinationRes[0].itemdescription);
518
-            // appendSpecs(itemtagscombinationRes[0].itemid);
519
-
520
-            updateDetailsByObj(itemtagscombinationRes[0]);
521
-            //console.log(childIds);
522
-            // 
523
-
524
-        }
525
-
526
-        //getAllCombination()
527
-
528
-
529
-
530
-        // for(let i=0;i<itemtagscombinationRes.length;i++){
531
-        //     const {tagnames} = itemtagscombinationRes[i];
532
-
533
-        // }
534
-
535
-        $('#spec-container-details').children().find('.specsmallcard').removeClass('specsmallcard');
536
-
537
-        addeventlisteners();
538
-        loadingActions.removeLoader();
539
-        return;
540
-        // let resTwo = await postStatAPIService(`${SERVERNAME}/apis/v4/bizgaze/integrations/products/itemtagscombination/productid/${id}`);
541
-
542
-
543
-        //let html = '';
544
-        let attributesObj = {};
545
-        for (let i = 0; i < res.length; i++) {
546
-            const { parentattribute, tagid, productid } = res[i];
547
-            // let attributes = await postStatAPIService(`${SERVERNAME}/apis/v4/bizgaze/integrations/products/productattributelist/parenttagid/${tagid}`);
548
-            // attributesObj[tagid] = JSON.parse(attributes.data.result);
549
-            // console.log(attributes.data.result,tagid);
550
-            html += getParentHTML(parentattribute, productid, tagid, i == 0);
551
-        }
552
-
553
-        $('#spec-container-details').html(html);
554
-
555
-
556
-        // let attributes = await postStatAPIService(`${SERVERNAME}/apis/v4/bizgaze/integrations/products/productattributelist/parenttagid/${tagid}`);
557
-        return;
558
-        for (let attr in attributesObj) {
559
-            const arr = attributesObj[attr];
560
-
561
-            let html = '';
562
-            for (let i = 0; i < arr.length; i++) {
563
-                const { attribute, tagid } = arr[i];
564
-                html += getChildHTML(tagid, attribute, i == 0);
565
-            }
566
-
567
-
568
-            $(`[data-tagid="${attr}"]`).html(html);
569
-
570
-
571
-        }
572
-
573
-        let defaultValues = await postStatAPIService(`${SERVERNAME}/apis/v4/bizgaze/integrations/products/sellableitemlist/productid/${id}`);
574
-        defaultValues = JSON.parse(defaultValues.data.result);
575
-        let { itemname, price } = defaultValues[0];
576
-        $('.productname').html(itemname);
577
-        $('.price').html(price)
578
-
579
-        $('#spec-container-details').children().slice(1).find('.specsmallcard').removeClass('specsmallcard');
580
-
581
-
582
-
583
-
584
-        // getQuantityById(id)
585
-
586
-
587
-
588
-    }
589
-
590
-
591
-}
592
-startDetails();
593
-

+ 0
- 650
dist/js-old/productdetails/laptopdetails.js-old Просмотреть файл

@@ -1,650 +0,0 @@
1
-function startDetails() {
2
-    // http://127.0.0.1:5502/productdetails.html?productId=106633230000024
3
-    if (window.location.search.split('=')[0] == '') {
4
-        window.location.href = "/notfound.html";
5
-        return;
6
-    }
7
-    let productId = window.location.href.split('=')[1].split('&')[0].split('#')[0];
8
-    console.log(productId);
9
-    let itemtagscombinationRes = null;
10
-    let labels = {};
11
-    let isThereInLabel = {};
12
-    let currentComb = null;
13
-
14
-    let group = {};
15
-
16
-    let loadingActions = {
17
-        addLoader() {
18
-            $('.loadingCall').removeClass('d-none');
19
-            $('.mainContanierProduct').addClass('d-none');
20
-        },
21
-        removeLoader() {
22
-            $('.loadingCall').addClass('d-none');
23
-            $('.mainContanierProduct').removeClass('d-none');
24
-        }
25
-    }
26
-
27
-    let currentClick = null;
28
-
29
-    if (productId) {
30
-        loadingActions.addLoader();
31
-        updateProductId(productId);
32
-        getProductDetails(productId);
33
-        appendSpecs(productId)
34
-    } else {
35
-        window.location.href = "/notfound.html"
36
-    }
37
-
38
-    function updateProductId(val) {
39
-        $('#productidtag').val(val);
40
-    }
41
-
42
-    function updateItemId(val) {
43
-        $('#itemidtag').val(val);
44
-    }
45
-
46
-    let specification_wrap_action = {
47
-        remove() {
48
-
49
-            $('.specification-wrap').addClass('d-none');
50
-        },
51
-
52
-        add() {
53
-            $('.specification-wrap').removeClass('d-none');
54
-        }
55
-    }
56
-
57
-    let description_action = {
58
-        addVal(value) {
59
-            $('.description-wrap > p').html(value);
60
-        },
61
-
62
-        removeVal(value) {
63
-            $('.description-wrap > p').html('');
64
-        }
65
-    }
66
-
67
-    function getSpecsItemHTML({ name, des, itemid, id }) {
68
-        return `<div id="${id}" data-specitemid="${itemid}" class="">
69
-        <div class="row  border-bottom">
70
-            <div class="col-sm-6 bg-gray-3 py-2">
71
-            ${name}
72
-            </div>
73
-            <div class="col-sm-6  py-2">
74
-            ${des}	
75
-            </div>
76
-        </div>
77
-    </div>`;
78
-        return ` <tr id="${id}" data-specitemid="${itemid}">
79
-        <td style="width:200px">${name}</td>
80
-        <td class="">${des}</td>
81
-    </tr>`;
82
-    }
83
-    // function getSpecsItemHTML({name,des,itemid,id}){
84
-    //     return ` <tr id="${id}" data-specitemid="${itemid}">
85
-    //     <td style="width:200px">${name}</td>
86
-    //     <td class="">${des}</td>
87
-    // </tr>`;
88
-    // }
89
-
90
-    async function appendSpecs(id) {
91
-        let resData = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/products/itemspecifications/itemid/${id}`, true);
92
-
93
-        if (resData.isError) {
94
-            $('.productdetailstabs').addClass('d-none');
95
-            $('.specContainerleft').html('')
96
-            $('.specContainerRight').html('')
97
-            return;
98
-        }
99
-        $('.productdetailstabs ').removeClass('d-none');
100
-        const res = resData.response;
101
-        console.log(JSON.parse(res.result));
102
-        const data = JSON.parse(res.result);
103
-        console.log(data);
104
-        let html = '';
105
-        let leftHtml = '';
106
-        let rightHtml = '';
107
-
108
-        if (data.length == 0) {
109
-            $('.productdetailstabs ').addClass('d-none');
110
-            $('.specContainerleft').html('')
111
-            $('.specContainerRight').html('')
112
-            return;
113
-        }
114
-
115
-        for (let i = 0; i < data.length; i++) {
116
-            const { specificationname, specificationitemid, itemid, description } = data[i];
117
-            if ((i + 1) % 2 == 0) {
118
-                rightHtml += getSpecsItemHTML({
119
-                    name: specificationname, id: specificationitemid, itemid, des: description
120
-                })
121
-            } else {
122
-                leftHtml += getSpecsItemHTML({
123
-                    name: specificationname, id: specificationitemid, itemid, des: description
124
-                });
125
-            }
126
-
127
-        }
128
-
129
-        $('.specContainerleft').html(leftHtml)
130
-        $('.specContainerRight').html(rightHtml)
131
-
132
-    }
133
-
134
-
135
-    function getParentHTML(name, productid, id, isMain) {
136
-        return `<div class="pb-2 $${name?.replace(" ", '')}-parent">
137
-        <h5 class="py-2 smallHeadingProductDetails">${name}</h5>
138
-        <div class="d-flex gap-2 flex-lg-row flex-wrap ${id}container" data-tagid="${id}">
139
-           
140
-        </div>
141
-    </div>`;
142
-    }
143
-
144
-    function onClickHandler(e) {
145
-
146
-        $(e).parent().find('.borderselector').removeClass('borderselector');
147
-
148
-        $(e).addClass('borderselector')
149
-
150
-    }
151
-
152
-    function getChildHTML(tagid, name, isTrue) {
153
-        
154
-        let  item_color_1 = `#5e7975`;
155
-        let item_color_2 = `#624839`;
156
-        let item_color_3 = `#253746`;
157
-        if(name == "Eucalyptus Green"){
158
-
159
-            return `<p item_color=${item_color_1} data-type="${tagid}-${name}" data-tagiditem="${tagid}" class="optiontaganwi_color specsmallcard optiontaganwi fs-7 cursor-pointer text-white rounded mb-0 me-1 py-2 px-3" ${item_color_1 ? `style="background-color:${item_color_1}"`:''}><span class="${isTrue ? 'border-bottom color' : 'color'}">${name}</span></p>`;
160
-
161
-        }else if(name == "Desert Brown"){
162
-
163
-            return `<p item_color=${item_color_2} data-type="${tagid}-${name}" data-tagiditem="${tagid}" class="optiontaganwi_color specsmallcard optiontaganwi mb-0 fs-7 cursor-pointer me-1 rounded text-white py-2 px-3" ${item_color_2 ? `style="background-color:${item_color_2}"`:''}><span class="${isTrue ? 'border-bottom color' : 'color'}">${name}</span></p>`;
164
-
165
-        }else if(name == "Deep Sea Blue"){
166
-
167
-            return `<p item_color=${item_color_3} data-type="${tagid}-${name}" data-tagiditem="${tagid}" class="optiontaganwi_color specsmallcard optiontaganwi mb-0 fs-7 text-white cursor-pointer rounded py-2 px-3 " ${item_color_3 ? `style="background-color:${item_color_3}"`:''}><span class="${isTrue ? 'border-bottom color' : 'color'}">${name}</span></p>`;
168
-        }
169
-        else{
170
-            return `
171
-            <div data-type="${tagid}-${name}" data-tagiditem="${tagid}" class="specsmallcard optiontaganwi ${isTrue ? 'borderselector' : ''} card text-center small-font cursor-pointer p-3">
172
-                ${name}
173
-            </div> `
174
-         }
175
-   
176
-    }
177
-
178
-    function addeventlisteners() {
179
-
180
-        $('.optiontaganwi').each(function (i, el) {
181
-            $(el).click(function (e) {
182
-                $('#quantity').val(1);
183
-                debugger;
184
-                let ele_col = $(e.target).hasClass("color");
185
-                let ele_col1 = $(e.target).hasClass("optiontaganwi_color");
186
-                if(ele_col === true){
187
-                    $(e.target).parent().find("span.color").removeClass('border-bottom');
188
-                    $(e.target).parent().addClass("border_selector");
189
-                    $(e.target).addClass("border-bottom");
190
-                    $(e.target).parent().find("span.border-bottom").removeClass("border-bottom text-dark");
191
-                    $(e.target).addClass("border_selector");
192
-                    $(e.target).find("span.color").addClass("border-bottom text-dark");
193
-                    $(e.target).parent().find('.borderselector').removeClass('borderselector');
194
-                    // $(e.target).addClass('borderselector');
195
-                    searchComb();
196
-                    currentClick = e.target;
197
-                }else if(ele_col1 === true){
198
-                    $(e.target).parent().find("span.text-dark").removeClass("text-dark border-bottom");
199
-                    $(e.target).addClass("border_selector");
200
-                    $(e.target).find("span.color").addClass("text-dark");
201
-                    $(e.target).parent().find('.borderselector').removeClass('borderselector');
202
-                    $(e.target).addClass('borderselector');
203
-                    searchComb();
204
-                    currentClick = e.target;
205
-                }else{
206
-                    $(e.target).parent().find('.borderselector').removeClass('borderselector');
207
-                    $(e.target).addClass('borderselector');
208
-                    searchComb();
209
-                    currentClick = e.target;
210
-                 }
211
-              
212
-                searchComb();
213
-                currentClick = e.target;
214
-                // getAllCombination();
215
-            })
216
-        });
217
-        // $('.optiontaganwi_color span.color').each(function (i, el) {
218
-        //     $(el).click(function (e) {
219
-        //         $('#quantity').val(1);
220
-        //         $(e.target).parent().find("span.border-bottom").removeClass("border-bottom");
221
-        //         $(e.target).addClass("border-bottom");
222
-        //         searchComb();
223
-        //         currentClick = e.target;
224
-        //         // getAllCombination();
225
-        //     })
226
-        // });
227
-    }
228
-
229
-    // function getChildHTML(tagid,name,isTrue){
230
-    //     return `
231
-    //     <div  data-type="${tagid}-${name}" data-tagiditem="${tagid}" class="specsmallcard optiontaganwi ${isTrue?'borderselector':''} card small-font cursor-pointer p-3">
232
-    //         ${name}
233
-    //     </div>
234
-    // `
235
-    // }
236
-
237
-    // function addeventlisteners(){
238
-      
239
-    //     $('.optiontaganwi').each(function (i,el){
240
-    //       $(el).click(function (e){
241
-    //         $('#quantity').val(1)
242
-    //         $(e.target).parent().find('.borderselector').removeClass('borderselector');
243
-    //         $(e.target).addClass('borderselector')
244
-    //        searchComb();
245
-    //         currentClick = e.target;
246
-    //        // getAllCombination();
247
-    //       })
248
-    //     });
249
-    // }
250
-
251
-    function updateDetailsByObj(obj) {
252
-        $('.productname').html(obj.itemname)
253
-        $('.price').html(obj.pricelist?obj.pricelist:'coming soon');
254
-        appendSpecs(obj.itemid)
255
-        $('#skudetailitem').val(obj.sku)
256
-        $('.des_productdes').html(obj.itemdescription);
257
-        $('#addtocart').attr('data-qty', obj.quantity);
258
-
259
-
260
-        let defaultImg = obj.itemimageurl ? imgServerNameBuild(obj.itemimageurl) : `./dist/assets/imgs/nophoto.png`;
261
-        console.log(obj.itemimageurl, 'obj.itemimageurlobj.itemimageurlobj.itemimageurl');
262
-
263
-        $('.productDetailsMain  > img').attr('src', defaultImg);
264
-
265
-        updateItemId(obj.itemid);
266
-        
267
-
268
-        if(!obj.pricelist){
269
-            $('.buynow').attr('disabled',true);
270
-            $('#addtocart').attr('disabled',true);
271
-        }else{
272
-            $('.buynow').attr('disabled',false);
273
-            $('#addtocart').attr('disabled',false);
274
-        }
275
-    }
276
-
277
-    function searchComb() {
278
-        let valuesSelected = [];
279
-
280
-
281
-        $('#addtocart').removeClass('disabled');
282
-        $('.msgErrorDetailsItem').addClass('d-none');
283
-        $('.borderselector,border_selector').each(function (i, el) {
284
-            console.log($(el).html())
285
-            let val = $(el).html();
286
-            valuesSelected.push(val.trim());
287
-        });
288
-
289
-        let labelRecord = {};
290
-
291
-        for (let label in labels) {
292
-            labelRecord[label] = false;
293
-        }
294
-
295
-        console.log(labelRecord);
296
-        specification_wrap_action.add();
297
-        console.log(group);
298
-        let unFiler = null;
299
-        for (let i = 0; i < itemtagscombinationRes.length; i++) {
300
-            const currItem = itemtagscombinationRes[i];
301
-            const { tagnames } = currItem;
302
-
303
-
304
-            let isTrue = true;
305
-            let labelFilter = labelRecord;
306
-
307
-            for (let i = 0; i < valuesSelected.length; i++) {
308
-
309
-                if (!tagnames.includes(valuesSelected[i])) {
310
-                    isTrue = false
311
-
312
-                    unFiler = labelFilter;
313
-                    break;
314
-                }
315
-                labelFilter[group[valuesSelected[i]]] = true;
316
-            }
317
-
318
-            if (isTrue) {
319
-                console.log(itemtagscombinationRes[i], 'itemtagscombinationRes[i]');
320
-                const { quantity } = itemtagscombinationRes[i];
321
-                if (quantity >= $('#quantity').val() && quantity >= 1) {
322
-                    currentComb = itemtagscombinationRes[i];
323
-                    // $('.productname').html(itemtagscombinationRes[i].itemname)
324
-                    // $('.price').html(itemtagscombinationRes[i].pricelist);
325
-                    // location.hash = itemtagscombinationRes[i].itemname.trim();
326
-                    // appendSpecs(itemtagscombinationRes[i].itemid)
327
-                    history.replaceState(null, null, `#itemid=${itemtagscombinationRes[i].itemid}#${itemtagscombinationRes[i].itemname.trim()}`);
328
-
329
-                    // $('#skudetailitem').val(itemtagscombinationRes[i].sku)
330
-                    // $('.des_productdes').html(itemtagscombinationRes[i].itemdescription);
331
-                    updateDetailsByObj(itemtagscombinationRes[i]);
332
-                } else {
333
-
334
-                    let name = itemtagscombinationRes[i].itemname.split('-')[0];
335
-                    $('#addtocart').addClass('disabled');
336
-                    let itemsName = name;
337
-                    $('.borderselector').each(function (i, e) {
338
-                        itemsName += ` ${$(e).html().trim()}`;
339
-                    });
340
-
341
-                    updateItemId(null);
342
-
343
-                    specification_wrap_action.remove();
344
-                    $('#skudetailitem').val(-1)
345
-                    $('.productname').html(itemsName)
346
-                    history.replaceState(null, null, `#`);
347
-
348
-                    $('.msgErrorDetailsItem').removeClass('d-none');
349
-                    $('.des_productdes').html('');
350
-                    $('.price').html('');
351
-                }
352
-
353
-                initAddToCart()
354
-                return;
355
-
356
-            }
357
-
358
-        }
359
-
360
-        let name = itemtagscombinationRes[0].itemname.split('-')[0];
361
-        let itemsName = name;
362
-        $('.borderselector').each(function (i, e) {
363
-            itemsName += `- ${$(e).html().trim()}`;
364
-        })
365
-        specification_wrap_action.remove();
366
-        $('.productname').html(itemsName)
367
-        $('#skudetailitem').val(-1)
368
-        $('.price').html('');
369
-        $('#addtocart').addClass('disabled');
370
-        $('.msgErrorDetailsItem').removeClass('d-none');
371
-
372
-        initAddToCart()
373
-    }
374
-
375
-    function getAllCombination() {
376
-        const currClickAttr = $(currentClick).html().trim();
377
-
378
-        let isThere = [];
379
-        for (let item in isThereInLabel) {
380
-            let { tagnames } = isThereInLabel[item];
381
-            if (tagnames.includes(currClickAttr)) {
382
-                isThere.push(isThereInLabel[item])
383
-            }
384
-        }
385
-        let selected = [];
386
-        $('.borderselector').each(function (i, e) {
387
-            selected.push($(e).html().trim())
388
-        });
389
-
390
-        // console.log(selected);
391
-        // console.log(isThere);
392
-
393
-        let ishashObj = {};
394
-
395
-        for (let i = 0; i < isThere.length; i++) {
396
-            let { tagnames, tagids } = isThere[i];
397
-            tagnames = tagnames.split('|');
398
-            tagids = tagids.split('|');
399
-
400
-            for (let j = 0; j < tagnames.length; j++) {
401
-                if (!ishashObj[tagnames[j]]) {
402
-                    ishashObj[tagnames[j]] = tagids[j];
403
-                }
404
-            }
405
-        }
406
-
407
-        // console.log(ishashObj);
408
-
409
-        // for(let i=0;i<itemtagscombinationRes.length;i++){
410
-
411
-        // }
412
-
413
-    }
414
-
415
-
416
-    async function getProductDetails(id) {
417
-
418
-
419
-
420
-        // let res = await getStatAPIService(`${SERVERNAME}/apis/v4/bizgaze/integrations/products/productattributelist/productid/${id}`);
421
-
422
-        let resData = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/products/productattributelist/productid/${id}`, true);
423
-
424
-        if (resData.isError) {
425
-            loadingActions.removeLoader();
426
-            alert(resData.errorMsg.message);
427
-            return;
428
-        }
429
-
430
-        let res = resData.response;
431
-
432
-        res = JSON.parse(res.result);
433
-        console.log(res, 'productattributelist');
434
-
435
-        if (!res) {
436
-            loadingActions.removeLoader();
437
-            return;
438
-        };
439
-
440
-
441
-
442
-
443
-        let html = '';
444
-
445
-        for (let i = 0; i < res.length; i++) {
446
-            const currItem = res[i];
447
-            // parenttagid means under what label
448
-            // tag id means it know unquie id
449
-            const { parentattribute, parenttagid, tagid, attribute, productid } = currItem;
450
-
451
-            if (labels[parentattribute]) {
452
-                labels[parentattribute].items.push({
453
-                    attribute,
454
-                    tagid: tagid
455
-                });
456
-            } else {
457
-                labels[parentattribute] = {
458
-                    id: parenttagid,
459
-                    items: [{
460
-                        attribute,
461
-                        tagid: tagid
462
-                    }]
463
-                };
464
-                html += getParentHTML(parentattribute, productid, parenttagid, i == 0);
465
-            }
466
-
467
-        }
468
-        $('#spec-container-details').html(html);
469
-
470
-
471
-        // console.log(labels,'labels');
472
-
473
-        let childIds = [];
474
-
475
-        for (let item in labels) {
476
-            let { id, items } = labels[item];
477
-            // $(`[data-tagid=${id}]`)
478
-            let html = '';
479
-
480
-            for (let i = 0; i < items.length; i++) {
481
-                const { attribute, tagid } = items[i]
482
-                childIds.push(tagid);
483
-                group[attribute] = item;
484
-                html += getChildHTML(tagid, attribute, i == 0);
485
-            }
486
-            $(`[data-tagid="${id}"]`).html(html);
487
-        }
488
-        itemtagscombinationRes = await API_SERVICES_ACTIONS.getAPIService(`apis/v4/bizgaze/integrations/products/getitemwithoutbranch/productid/${id}`, true);
489
-        itemtagscombinationRes = JSON.parse(itemtagscombinationRes.response.result);
490
-        console.log(itemtagscombinationRes, "conductt");
491
-
492
-        let valuesSelected = [];
493
-
494
-        $('.borderselector').each(function (i, el) {
495
-
496
-            let val = $(el).html();
497
-            valuesSelected.push(val.trim());
498
-        });
499
-
500
-        let searchParams = window.location.search.split("&");
501
-        let skuId = window.location.hash.split('#')[1].split('=')[1];
502
-        // skuId = skuId.split('=')[1]
503
-        let isGo = true;
504
-        for (let i = 0; i < itemtagscombinationRes.length; i++) {
505
-            const currItem = itemtagscombinationRes[i];
506
-
507
-            const { tagnames, sku, itemid } = currItem;
508
-
509
-            isThereInLabel[tagnames] = itemtagscombinationRes[i];
510
-            let isTrue = true;
511
-            if (isGo) {
512
-                // for(let i=0;i<valuesSelected.length;i++){
513
-                //     if(!tagnames.includes(valuesSelected[i])){
514
-                //         isTrue = false
515
-                //     }
516
-                // }
517
-                if (skuId != itemid) {
518
-                    isTrue = false
519
-                }
520
-                if (isTrue) {
521
-
522
-                    console.log(itemtagscombinationRes[i], 'itemtagscombinationRes[i]');
523
-
524
-
525
-                    currentComb = itemtagscombinationRes[i];
526
-                    // location.hash = itemtagscombinationRes[i].itemname.trim();
527
-
528
-                    // $('.productname').html(itemtagscombinationRes[i].itemname);
529
-                    // $('#skudetailitem').val(itemtagscombinationRes[i].sku)
530
-                    // $('.price').html(itemtagscombinationRes[i].pricelist)
531
-
532
-                    // appendSpecs(itemtagscombinationRes[i].itemid);
533
-                    // $('.des_productdes').html(itemtagscombinationRes[i].itemdescription);
534
-
535
-                    updateDetailsByObj(itemtagscombinationRes[i]);
536
-
537
-
538
-
539
-                    isGo = false;
540
-                    let { tagnames, tagids, pricelist } = itemtagscombinationRes[i];
541
-                    tagids = tagids.split('|');
542
-                    tagnames = tagnames.split('|');
543
-                    $('.optiontaganwi').removeClass('borderselector');
544
-
545
-                    for (let i = 0; i < tagids.length; i++) {
546
-
547
-                        $(`[data-tagiditem="${tagids[i]}"]`).addClass('borderselector');
548
-                    }
549
-                    // tagiditem
550
-                }
551
-            }
552
-        }
553
-
554
-
555
-        if (isGo && itemtagscombinationRes.length != 0) {
556
-
557
-            console.log(itemtagscombinationRes[0]);
558
-            let { tagnames, tagids, pricelist } = itemtagscombinationRes[0];
559
-            tagids = tagids.split('|');
560
-            tagnames = tagnames.split('|');
561
-            $('.optiontaganwi').removeClass('borderselector');
562
-            currentComb = itemtagscombinationRes[0];
563
-            // updateItemId(itemtagscombinationRes[0].itemid);
564
-
565
-            for (let i = 0; i < tagids.length; i++) {
566
-
567
-                $(`[data-type="${tagids[i]}-${tagnames[i]}"]`).addClass('borderselector');
568
-                $(`[data-type="${tagids[i]}-Eucalyptus Green"]`).removeClass('borderselector');
569
-                $(`[data-type="${tagids[i]}-Desert Brown"]`).removeClass('borderselector');
570
-                $(`[data-type="${tagids[i]}-Deep Sea Blue"]`).removeClass('borderselector');
571
-            }
572
-
573
-            // $('.price').html(pricelist);
574
-            // $('.des_productdes').html(itemtagscombinationRes[0].itemdescription);
575
-            // appendSpecs(itemtagscombinationRes[0].itemid);
576
-
577
-            updateDetailsByObj(itemtagscombinationRes[0]);
578
-            //console.log(childIds);
579
-            // 
580
-
581
-        }
582
-
583
-        //getAllCombination(valuesSelected)
584
-
585
-
586
-
587
-        // for(let i=0;i<itemtagscombinationRes.length;i++){
588
-        //     const {tagnames} = itemtagscombinationRes[i];
589
-
590
-        // }
591
-
592
-        $('#spec-container-details').children().find('.specsmallcard').removeClass('specsmallcard');
593
-
594
-        addeventlisteners();
595
-        loadingActions.removeLoader();
596
-        return;
597
-        // let resTwo = await postStatAPIService(`${SERVERNAME}/apis/v4/bizgaze/integrations/products/itemtagscombination/productid/${id}`);
598
-
599
-
600
-        //let html = '';
601
-        let attributesObj = {};
602
-        for (let i = 0; i < res.length; i++) {
603
-            const { parentattribute, tagid, productid } = res[i];
604
-            // let attributes = await postStatAPIService(`${SERVERNAME}/apis/v4/bizgaze/integrations/products/productattributelist/parenttagid/${tagid}`);
605
-            // attributesObj[tagid] = JSON.parse(attributes.data.result);
606
-            // console.log(attributes.data.result,tagid);
607
-            html += getParentHTML(parentattribute, productid, tagid, i == 0);
608
-        }
609
-
610
-        $('#spec-container-details').html(html);
611
-
612
-
613
-        // let attributes = await postStatAPIService(`${SERVERNAME}/apis/v4/bizgaze/integrations/products/productattributelist/parenttagid/${tagid}`);
614
-        return;
615
-        for (let attr in attributesObj) {
616
-            const arr = attributesObj[attr];
617
-
618
-            let html = '';
619
-            for (let i = 0; i < arr.length; i++) {
620
-                const { attribute, tagid } = arr[i];
621
-                html += getChildHTML(tagid, attribute, i == 0);
622
-            }
623
-
624
-
625
-            $(`[data-tagid="${attr}"]`).html(html);
626
-
627
-
628
-        }
629
-
630
-        let defaultValues = await postStatAPIService(`${SERVERNAME}/apis/v4/bizgaze/integrations/products/sellableitemlist/productid/${id}`);
631
-        defaultValues = JSON.parse(defaultValues.data.result);
632
-        let { itemname, price } = defaultValues[0];
633
-        $('.productname').html(itemname);
634
-        $('.price').html(price)
635
-
636
-        $('#spec-container-details').children().slice(1).find('.specsmallcard').removeClass('specsmallcard');
637
-
638
-
639
-
640
-
641
-        // getQuantityById(id)
642
-
643
-
644
-
645
-    }
646
-
647
-
648
-}
649
-startDetails();
650
-

+ 0
- 0
dist/js-old/productdetails/productdetails.js Просмотреть файл


Некоторые файлы не были показаны из-за большого количества измененных файлов

Загрузка…
Отмена
Сохранить