model-manager 0.0.5
Sign up to get free protection for your applications and to get access to all the features.
- package/administration/insert.js +179 -0
- package/administration/insert_one.js +33 -0
- package/administration/test_data.js +46 -0
- package/administration.html +76 -0
- package/app-update.yml +0 -0
- package/assets/css/admin.css +79 -0
- package/assets/css/basic.css +474 -0
- package/assets/css/checkout.css +517 -0
- package/assets/css/dialog.css +158 -0
- package/assets/css/dialog_checkout.css +156 -0
- package/assets/css/info.css +10 -0
- package/assets/logo.png +0 -0
- package/assets/partnerart.png +0 -0
- package/assets/spinner.gif +0 -0
- package/assets/three/GLTFLoader.js +4448 -0
- package/assets/three/ModelLoader.js +58 -0
- package/assets/three/OrbitControls.js +1252 -0
- package/assets/three/three.js +36819 -0
- package/assets/three/three.module.js +50708 -0
- package/assets/white/add_white_24dp.svg +1 -0
- package/assets/white/admin/person_add_FILL0_wght400_GRAD0_opsz48.svg +1 -0
- package/assets/white/admin/person_remove_FILL0_wght400_GRAD0_opsz48.svg +1 -0
- package/assets/white/admin.svg +1 -0
- package/assets/white/arrow_forward.svg +1 -0
- package/assets/white/brush_white_24dp.svg +1 -0
- package/assets/white/close_white_24dp.svg +1 -0
- package/assets/white/code_white_24dp.svg +1 -0
- package/assets/white/dashboard_white_24dp.svg +1 -0
- package/assets/white/done_white_24dp.svg +1 -0
- package/assets/white/emoji_people_white_24dp.svg +1 -0
- package/assets/white/filter_list_white_24dp.svg +1 -0
- package/assets/white/info_white_24dp.svg +1 -0
- package/assets/white/minimize_white_24dp.svg +1 -0
- package/assets/white/receipt_white_24dp.svg +1 -0
- package/assets/white/rocket_launch_white_24dp.svg +1 -0
- package/assets/white/search_black_24dp.svg +1 -0
- package/assets/white/search_white_24dp.svg +1 -0
- package/assets/white/settings_white_24dp.svg +1 -0
- package/assets/white/shopping_cart_white_24dp.svg +1 -0
- package/assets/white/store_white_24dp.svg +1 -0
- package/assets/white/timeline_white_24dp.svg +1 -0
- package/assets/white/view_in_ar_white_24dp.svg +1 -0
- package/checkout.html +131 -0
- package/checkout_admin.html +140 -0
- package/icon.png +0 -0
- package/imgs/armchair.png +0 -0
- package/imgs/arrow_tnt.png +0 -0
- package/imgs/bed_wnm.png +0 -0
- package/imgs/big_bed.png +0 -0
- package/imgs/birdscythe.png +0 -0
- package/imgs/blue_tnt.png +0 -0
- package/imgs/bull.png +0 -0
- package/imgs/carpet.png +0 -0
- package/imgs/chest.png +0 -0
- package/imgs/coin_stash.png +0 -0
- package/imgs/creeper_tnt.png +0 -0
- package/imgs/garbage_can.png +0 -0
- package/imgs/generator.png +0 -0
- package/imgs/golden_sword.png +0 -0
- package/imgs/highbed.png +0 -0
- package/imgs/jetpack1.png +0 -0
- package/imgs/jetpack2.png +0 -0
- package/imgs/jetpack3.png +0 -0
- package/imgs/jetpack4.png +0 -0
- package/imgs/jetpack5.png +0 -0
- package/imgs/jetpack6.png +0 -0
- package/imgs/karmincross.png +0 -0
- package/imgs/light_tnt.png +0 -0
- package/imgs/lucky_block.png +0 -0
- package/imgs/lucky_block_2.png +0 -0
- package/imgs/mega_tnt.png +0 -0
- package/imgs/modern_lamp.png +0 -0
- package/imgs/multiply_tnt.png +0 -0
- package/imgs/nuke.png +0 -0
- package/imgs/oak_tree.png +0 -0
- package/imgs/oak_tree_2.png +0 -0
- package/imgs/old_globe.png +0 -0
- package/imgs/scificannon_1.png +0 -0
- package/imgs/scificannon_10.png +0 -0
- package/imgs/scificannon_11.png +0 -0
- package/imgs/scificannon_12.png +0 -0
- package/imgs/scificannon_13.png +0 -0
- package/imgs/scificannon_14.png +0 -0
- package/imgs/scificannon_2.png +0 -0
- package/imgs/scificannon_3.png +0 -0
- package/imgs/scificannon_4.png +0 -0
- package/imgs/scificannon_5.png +0 -0
- package/imgs/scificannon_6.png +0 -0
- package/imgs/scificannon_7.png +0 -0
- package/imgs/scificannon_8.png +0 -0
- package/imgs/scificannon_9.png +0 -0
- package/imgs/simple_chair.png +0 -0
- package/imgs/small_car.png +0 -0
- package/imgs/small_modern_lamp.png +0 -0
- package/imgs/small_wardrobe.png +0 -0
- package/imgs/small_wooden_table.png +0 -0
- package/imgs/spike_sword.png +0 -0
- package/imgs/stone_holder.png +0 -0
- package/imgs/stone_sword.png +0 -0
- package/imgs/street_lamp.png +0 -0
- package/imgs/sword_1.png +0 -0
- package/imgs/sword_with_hole.png +0 -0
- package/imgs/testing.png +0 -0
- package/imgs/timer_tnt.png +0 -0
- package/imgs/tiny_tnt.png +0 -0
- package/imgs/tnt_cannon.png +0 -0
- package/imgs/wing_tnt.png +0 -0
- package/imgs/wooden_stool.png +0 -0
- package/imgs/wooden_wardrobe.png +0 -0
- package/index.html +178 -0
- package/index_admin.html +188 -0
- package/js/db/push_model.js +30 -0
- package/js/dialoges.js +23 -0
- package/js/item_functionality.js +7 -0
- package/js/load_cart.js +76 -0
- package/js/load_items.js +480 -0
- package/js/update.js +35 -0
- package/login.html +289 -0
- package/main.js +277 -0
- package/models/armchair.gltf +1 -0
- package/models/arrow_tnt.gltf +1 -0
- package/models/bedwnm.gltf +1 -0
- package/models/big_bed.gltf +1 -0
- package/models/birdscythe.gltf +1 -0
- package/models/blue_tnt.gltf +1 -0
- package/models/bull.gltf +1 -0
- package/models/carpet.gltf +1 -0
- package/models/chest.gltf +1 -0
- package/models/coin_stash.gltf +1 -0
- package/models/creeper_tnt.gltf +1 -0
- package/models/garbage_can.gltf +1 -0
- package/models/generator.gltf +1 -0
- package/models/golden_sword.gltf +1 -0
- package/models/highbed.gltf +1 -0
- package/models/jetpack1.gltf +1 -0
- package/models/jetpack2.gltf +1 -0
- package/models/jetpack3.gltf +1 -0
- package/models/jetpack4.gltf +1 -0
- package/models/jetpack5.gltf +1 -0
- package/models/jetpack6.gltf +1 -0
- package/models/karmincross.gltf +1 -0
- package/models/light_tnt.gltf +1 -0
- package/models/lucky_block.gltf +1 -0
- package/models/lucky_block_2.gltf +1 -0
- package/models/mega_tnt.gltf +1 -0
- package/models/modern_lamp.gltf +1 -0
- package/models/multiply_tnt.gltf +1 -0
- package/models/nuke.gltf +1 -0
- package/models/oak_tree.gltf +1 -0
- package/models/oak_tree_2.gltf +1 -0
- package/models/old globe.gltf +1 -0
- package/models/scificannon_1.gltf +1 -0
- package/models/scificannon_10.gltf +1 -0
- package/models/scificannon_11.gltf +1 -0
- package/models/scificannon_12.gltf +1 -0
- package/models/scificannon_13.gltf +1 -0
- package/models/scificannon_14.gltf +1 -0
- package/models/scificannon_2.gltf +1 -0
- package/models/scificannon_3.gltf +1 -0
- package/models/scificannon_4.gltf +1 -0
- package/models/scificannon_5.gltf +1 -0
- package/models/scificannon_6.gltf +1 -0
- package/models/scificannon_7.gltf +1 -0
- package/models/scificannon_8.gltf +1 -0
- package/models/scificannon_9.gltf +1 -0
- package/models/simple_chair.gltf +1 -0
- package/models/small_car.gltf +1 -0
- package/models/small_modern_lamp.gltf +1 -0
- package/models/small_wardrobe.gltf +1 -0
- package/models/small_wooden_table.gltf +1 -0
- package/models/spike_sword.gltf +1 -0
- package/models/stone_holder.gltf +1 -0
- package/models/stone_sword.gltf +1 -0
- package/models/street_lamp.gltf +1 -0
- package/models/sword_1.gltf +1 -0
- package/models/sword_with_hole.gltf +1 -0
- package/models/timer_tnt.gltf +1 -0
- package/models/tiny_tnt.gltf +1 -0
- package/models/tnt_cannon.gltf +1 -0
- package/models/wing_tnt.gltf +1 -0
- package/models/wooden_stool.gltf +1 -0
- package/models/wooden_wardrobe.gltf +1 -0
- package/package.json +47 -0
- package/preload.js +26 -0
- package/update.html +48 -0
package/index.html
ADDED
@@ -0,0 +1,178 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<meta charset="UTF-8">
|
5
|
+
<meta name="viewport" content="width=device-width,initial-scale=1.0"/>
|
6
|
+
<link href="./assets/css/basic.css" rel="stylesheet">
|
7
|
+
<link href="./assets/css/dialog.css" rel="stylesheet">
|
8
|
+
</head>
|
9
|
+
<body>
|
10
|
+
|
11
|
+
|
12
|
+
<section id="head">
|
13
|
+
<div class="drag-field-head">
|
14
|
+
<p class="drag-field-text">MN-Modelstore</p>
|
15
|
+
</div>
|
16
|
+
<div class="win-btn">
|
17
|
+
<a class="btn-win" id="close-button">
|
18
|
+
<img src="assets/white/close_white_24dp.svg" style="display: flex;">
|
19
|
+
</a>
|
20
|
+
</div>
|
21
|
+
</section>
|
22
|
+
|
23
|
+
|
24
|
+
<section id="sidebar">
|
25
|
+
<section class="title-container">
|
26
|
+
<img src="assets/logo.png" width="70px" alt="logo">
|
27
|
+
</section>
|
28
|
+
<section class="links-container">
|
29
|
+
<div class="links active">
|
30
|
+
<div class="icon">
|
31
|
+
<img src="assets/white/store_white_24dp.svg">
|
32
|
+
</div>
|
33
|
+
<span>Browse</span>
|
34
|
+
</div>
|
35
|
+
<div class="links" id="checkout-side">
|
36
|
+
<div class="icon">
|
37
|
+
<img src="assets/white/receipt_white_24dp.svg">
|
38
|
+
</div>
|
39
|
+
<span class="underline-hovered">Checkout</span>
|
40
|
+
</div>
|
41
|
+
</section>
|
42
|
+
</section>
|
43
|
+
|
44
|
+
|
45
|
+
|
46
|
+
<section id="main-content">
|
47
|
+
|
48
|
+
<div id="loading">
|
49
|
+
<h3 id="loading-text">loading...</h3>
|
50
|
+
<img id="loading-image" src="assets/spinner.gif" alt="Loading..." width="70px"/>
|
51
|
+
</div>
|
52
|
+
|
53
|
+
|
54
|
+
<section id="top-section">
|
55
|
+
<div class="input-box" >
|
56
|
+
<div class="input-icon">
|
57
|
+
<img src="assets/white/search_white_24dp.svg">
|
58
|
+
</div>
|
59
|
+
<input placeholder="Search..." data-search>
|
60
|
+
|
61
|
+
</div>
|
62
|
+
<!-- THIS NEEDS TO BE IMPLEMENTED -->
|
63
|
+
<!-- <div class="action-icons">
|
64
|
+
<div class="action-icon-one">
|
65
|
+
<img class="action-icons" src="assets/white/filter_list_white_24dp.svg" width="25px">
|
66
|
+
</div>
|
67
|
+
</div> -->
|
68
|
+
</section>
|
69
|
+
|
70
|
+
<h3 class="result-headline">Results: </h3>
|
71
|
+
|
72
|
+
<!-- All items listed in here -->
|
73
|
+
<section id="items">
|
74
|
+
<template data-item-template>
|
75
|
+
<div class="grid-item" id="template">
|
76
|
+
<div class="grid-picture">
|
77
|
+
<img src="assets/testing.png" width="190px">
|
78
|
+
</div>
|
79
|
+
<h4 class="grid-label">Testmodel</h4>
|
80
|
+
<div class="grid-blur"></div>
|
81
|
+
<div class="grid-data">
|
82
|
+
<div class="grid-textures">
|
83
|
+
<span data-tooltip="Textures" data-flow="bottom">
|
84
|
+
<img src="assets/white/brush_white_24dp.svg">
|
85
|
+
</span>
|
86
|
+
</div>
|
87
|
+
<div class="grid-anims">
|
88
|
+
<span data-tooltip="Animations" data-flow="bottom">
|
89
|
+
<img src="assets/white/emoji_people_white_24dp.svg">
|
90
|
+
</span>
|
91
|
+
</div>
|
92
|
+
<div class="grid-behavior">
|
93
|
+
<span data-tooltip="Behavior" data-flow="bottom">
|
94
|
+
<img src="assets/white/code_white_24dp.svg">
|
95
|
+
</span>
|
96
|
+
</div>
|
97
|
+
<div class="grid-view-vr">
|
98
|
+
<span data-tooltip="3D View" data-flow="bottom" id="">
|
99
|
+
<img src="assets/white/view_in_ar_white_24dp.svg">
|
100
|
+
</span>
|
101
|
+
</div>
|
102
|
+
</div>
|
103
|
+
</div>
|
104
|
+
</template>
|
105
|
+
</section>
|
106
|
+
</section>
|
107
|
+
<!--transition-->
|
108
|
+
<main id="swup" class="transition-fade">
|
109
|
+
<h1>Cart</h1>
|
110
|
+
</main>
|
111
|
+
<!--Renderer-->
|
112
|
+
<div id="body-overlay"></div>
|
113
|
+
<div class="dialog" id="item-dialog">
|
114
|
+
<a href="#" role="button" class="dialog-close-button" id="dialog-close-button">
|
115
|
+
<image src="assets/white/close_white_24dp.svg"> </image>
|
116
|
+
</a>
|
117
|
+
<h3 id="item-dialog-name" style="float: left;">MODELNAME</h3>
|
118
|
+
<h4 id="item-dialog-creator" style="font-weight: lighter; float: left; margin-left: 5px;">by Tristan</h4>
|
119
|
+
|
120
|
+
<div class="model-content">
|
121
|
+
<div class="model-view-text">
|
122
|
+
<div class="multi-textures">
|
123
|
+
<h3>Texture Variants:</h3>
|
124
|
+
<div class="behavior_list" id="textures_listing">
|
125
|
+
<label class="control control-checkbox">
|
126
|
+
Idle
|
127
|
+
<input type="checkbox" />
|
128
|
+
<div class="control_indicator"></div>
|
129
|
+
</label>
|
130
|
+
</div>
|
131
|
+
</div>
|
132
|
+
<div class="multi-animations">
|
133
|
+
<h3>Animations:</h3>
|
134
|
+
<div class="behavior_list" id="animation_listing">
|
135
|
+
<label class="control control-checkbox">
|
136
|
+
Idle
|
137
|
+
<input type="checkbox" />
|
138
|
+
<div class="control_indicator"></div>
|
139
|
+
</label>
|
140
|
+
</div>
|
141
|
+
</div>
|
142
|
+
<div class="multi-behaviors">
|
143
|
+
<h3>Behaviors:</h3>
|
144
|
+
<div class="behavior_list" id="behavior_listing">
|
145
|
+
</div>
|
146
|
+
</div>
|
147
|
+
<a class="add-to-cart" id="addtocart">
|
148
|
+
Add to cart
|
149
|
+
</a>
|
150
|
+
</div>
|
151
|
+
<div id="model-view" class="model-view">
|
152
|
+
|
153
|
+
</div>
|
154
|
+
</div>
|
155
|
+
</div>
|
156
|
+
<script>
|
157
|
+
document.getElementById("close-button").addEventListener('click', event => {
|
158
|
+
window.api.send("toMain", "closeWindow");
|
159
|
+
});
|
160
|
+
document.getElementById("checkout-side").onclick = function () {
|
161
|
+
location.href = "./checkout.html";
|
162
|
+
};
|
163
|
+
</script>
|
164
|
+
|
165
|
+
<!-- three.js -->
|
166
|
+
<script src="assets/three/three.js"></script>
|
167
|
+
<script type="module" src="assets/three/GLTFLoader.js"></script>
|
168
|
+
<script type="module">
|
169
|
+
|
170
|
+
|
171
|
+
</script>
|
172
|
+
|
173
|
+
<script type="module" src="./js/load_items.js">
|
174
|
+
</script>
|
175
|
+
<script src="./js/dialoges.js">
|
176
|
+
</script>
|
177
|
+
</body>
|
178
|
+
</html>
|
package/index_admin.html
ADDED
@@ -0,0 +1,188 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<meta charset="UTF-8">
|
5
|
+
<meta name="viewport" content="width=device-width,initial-scale=1.0"/>
|
6
|
+
<link href="./assets/css/basic.css" rel="stylesheet">
|
7
|
+
<link href="./assets/css/dialog.css" rel="stylesheet">
|
8
|
+
</head>
|
9
|
+
<body>
|
10
|
+
|
11
|
+
|
12
|
+
<section id="head">
|
13
|
+
<div class="drag-field-head">
|
14
|
+
<p class="drag-field-text">MN-Modelstore</p>
|
15
|
+
</div>
|
16
|
+
<div class="win-btn">
|
17
|
+
<a class="btn-win" id="close-button">
|
18
|
+
<img src="assets/white/close_white_24dp.svg" style="display: flex;">
|
19
|
+
</a>
|
20
|
+
</div>
|
21
|
+
</section>
|
22
|
+
|
23
|
+
|
24
|
+
<section id="sidebar">
|
25
|
+
<section class="title-container">
|
26
|
+
<img src="assets/logo.png" width="70px" alt="logo">
|
27
|
+
</section>
|
28
|
+
<section class="links-container">
|
29
|
+
<div class="links active">
|
30
|
+
<div class="icon">
|
31
|
+
<img src="assets/white/store_white_24dp.svg">
|
32
|
+
</div>
|
33
|
+
<span>Browse</span>
|
34
|
+
</div>
|
35
|
+
<div class="links" id="checkout-side">
|
36
|
+
<div class="icon">
|
37
|
+
<img src="assets/white/receipt_white_24dp.svg">
|
38
|
+
</div>
|
39
|
+
<span class="underline-hovered">Checkout</span>
|
40
|
+
</div>
|
41
|
+
<div class="links" id="admin_panel">
|
42
|
+
<div class="icon">
|
43
|
+
<img width="32px" height="37px" src="assets/white/admin.svg">
|
44
|
+
</div>
|
45
|
+
<span class="underline-hovered">Admin</span>
|
46
|
+
</div>
|
47
|
+
</section>
|
48
|
+
</section>
|
49
|
+
|
50
|
+
|
51
|
+
|
52
|
+
<section id="main-content">
|
53
|
+
|
54
|
+
<div id="loading">
|
55
|
+
<h3 id="loading-text">loading...</h3>
|
56
|
+
<img id="loading-image" src="assets/spinner.gif" alt="Loading..." width="70px"/>
|
57
|
+
</div>
|
58
|
+
|
59
|
+
|
60
|
+
<section id="top-section">
|
61
|
+
<div class="input-box" >
|
62
|
+
<div class="input-icon">
|
63
|
+
<img src="assets/white/search_white_24dp.svg">
|
64
|
+
</div>
|
65
|
+
<input placeholder="Search..." data-search>
|
66
|
+
|
67
|
+
</div>
|
68
|
+
<!-- THIS NEEDS TO BE IMPLEMENTED -->
|
69
|
+
<!-- <div class="action-icons">
|
70
|
+
<div class="action-icon-one">
|
71
|
+
<img class="action-icons" src="assets/white/filter_list_white_24dp.svg" width="25px">
|
72
|
+
</div>
|
73
|
+
</div> -->
|
74
|
+
</section>
|
75
|
+
|
76
|
+
<h3 class="result-headline">Results: </h3>
|
77
|
+
|
78
|
+
<!-- All items listed in here -->
|
79
|
+
<section id="items">
|
80
|
+
<template data-item-template>
|
81
|
+
<div class="grid-item" id="template">
|
82
|
+
<div class="grid-picture">
|
83
|
+
<img src="assets/testing.png" width="190px">
|
84
|
+
</div>
|
85
|
+
<h4 class="grid-label">Testmodel</h4>
|
86
|
+
|
87
|
+
<div class="grid-data">
|
88
|
+
<div class="grid-textures">
|
89
|
+
<span data-tooltip="Textures" data-flow="bottom">
|
90
|
+
<img src="assets/white/brush_white_24dp.svg">
|
91
|
+
</span>
|
92
|
+
</div>
|
93
|
+
<div class="grid-anims">
|
94
|
+
<span data-tooltip="Animations" data-flow="bottom">
|
95
|
+
<img src="assets/white/emoji_people_white_24dp.svg">
|
96
|
+
</span>
|
97
|
+
</div>
|
98
|
+
<div class="grid-behavior">
|
99
|
+
<span data-tooltip="Behavior" data-flow="bottom">
|
100
|
+
<img src="assets/white/code_white_24dp.svg">
|
101
|
+
</span>
|
102
|
+
</div>
|
103
|
+
<div class="grid-view-vr">
|
104
|
+
<span data-tooltip="3D View" data-flow="bottom" id="">
|
105
|
+
<img src="assets/white/view_in_ar_white_24dp.svg">
|
106
|
+
</span>
|
107
|
+
</div>
|
108
|
+
</div>
|
109
|
+
</div>
|
110
|
+
</template>
|
111
|
+
</section>
|
112
|
+
</section>
|
113
|
+
<!--transition-->
|
114
|
+
<main id="swup" class="transition-fade">
|
115
|
+
<h1>Cart</h1>
|
116
|
+
</main>
|
117
|
+
<!--Renderer-->
|
118
|
+
<div id="body-overlay"></div>
|
119
|
+
<div class="dialog" id="item-dialog">
|
120
|
+
<a href="#" role="button" class="dialog-close-button" id="dialog-close-button">
|
121
|
+
<image src="assets/white/close_white_24dp.svg"> </image>
|
122
|
+
</a>
|
123
|
+
<h3 id="item-dialog-name" style="float: left;">MODELNAME</h3>
|
124
|
+
<h4 id="item-dialog-creator" style="font-weight: lighter; float: left; margin-left: 5px;">by Tristan</h4>
|
125
|
+
|
126
|
+
<div class="model-content">
|
127
|
+
<div class="model-view-text">
|
128
|
+
<div class="multi-textures">
|
129
|
+
<h3>Texture Variants:</h3>
|
130
|
+
<div class="behavior_list" id="textures_listing">
|
131
|
+
<label class="control control-checkbox">
|
132
|
+
Idle
|
133
|
+
<input type="checkbox" />
|
134
|
+
<div class="control_indicator"></div>
|
135
|
+
</label>
|
136
|
+
</div>
|
137
|
+
</div>
|
138
|
+
<div class="multi-animations">
|
139
|
+
<h3>Animations:</h3>
|
140
|
+
<div class="behavior_list" id="animation_listing">
|
141
|
+
<label class="control control-checkbox">
|
142
|
+
Idle
|
143
|
+
<input type="checkbox" />
|
144
|
+
<div class="control_indicator"></div>
|
145
|
+
</label>
|
146
|
+
</div>
|
147
|
+
</div>
|
148
|
+
<div class="multi-behaviors">
|
149
|
+
<h3>Behaviors:</h3>
|
150
|
+
<div class="behavior_list" id="behavior_listing">
|
151
|
+
</div>
|
152
|
+
</div>
|
153
|
+
<a class="add-to-cart" id="addtocart">
|
154
|
+
Add to cart
|
155
|
+
</a>
|
156
|
+
</div>
|
157
|
+
<div id="model-view" class="model-view">
|
158
|
+
|
159
|
+
</div>
|
160
|
+
</div>
|
161
|
+
</div>
|
162
|
+
<script>
|
163
|
+
document.getElementById("close-button").addEventListener('click', event => {
|
164
|
+
window.api.send("toMain", "closeWindow");
|
165
|
+
});
|
166
|
+
document.getElementById("checkout-side").onclick = function () {
|
167
|
+
location.href = "./checkout_admin.html";
|
168
|
+
};
|
169
|
+
|
170
|
+
document.getElementById("admin_panel").onclick = function () {
|
171
|
+
location.href = "./administration.html";
|
172
|
+
};
|
173
|
+
</script>
|
174
|
+
|
175
|
+
<!-- three.js -->
|
176
|
+
<script src="assets/three/three.js"></script>
|
177
|
+
<script type="module" src="assets/three/GLTFLoader.js"></script>
|
178
|
+
<script type="module">
|
179
|
+
|
180
|
+
|
181
|
+
</script>
|
182
|
+
|
183
|
+
<script type="module" src="./js/load_items.js">
|
184
|
+
</script>
|
185
|
+
<script src="./js/dialoges.js">
|
186
|
+
</script>
|
187
|
+
</body>
|
188
|
+
</html>
|
@@ -0,0 +1,30 @@
|
|
1
|
+
const { MongoClient, ServerApiVersion } = require('mongodb');
|
2
|
+
const uri = "mongodb+srv://adminmn:eQJ62Cszrvi7VgD@mnmodeldatabase.zsxqn.mongodb.net/myFirstDatabase?retryWrites=true&w=majority";
|
3
|
+
const client = new MongoClient(uri, { useNewUrlParser: true, useUnifiedTopology: true, serverApi: ServerApiVersion.v1 });
|
4
|
+
|
5
|
+
const database = client.db("modeldatabase");
|
6
|
+
const models = database.collection("models");
|
7
|
+
|
8
|
+
|
9
|
+
function push(model_name, model_creator, model_path, thumbnail, has_anims, has_behavior, has_textures, animations, behaviors, textures, tags) {
|
10
|
+
client.connect(err => {
|
11
|
+
if (err) throw err;
|
12
|
+
var modelobj = {
|
13
|
+
released: true, model_name: model_name, model_creator: model_creator,
|
14
|
+
model_path: model_path, thumbnail: thumbnail, has_anims: has_anims, has_behavior: has_behavior,
|
15
|
+
has_textures: has_textures,
|
16
|
+
animations: animations,
|
17
|
+
behavior: behaviors,
|
18
|
+
textures: textures,
|
19
|
+
tags: tags
|
20
|
+
}
|
21
|
+
models.insertOne(modelobj);
|
22
|
+
|
23
|
+
models.find().forEach( function(item) {
|
24
|
+
item.animations.forEach(function (item, index) {
|
25
|
+
|
26
|
+
});
|
27
|
+
});
|
28
|
+
});
|
29
|
+
client.close();
|
30
|
+
}
|
package/js/dialoges.js
ADDED
@@ -0,0 +1,23 @@
|
|
1
|
+
document.getElementById('body-overlay').addEventListener('click', function(e) {
|
2
|
+
document.getElementById("item-dialog").classList.remove("visable");
|
3
|
+
document.getElementById("body-overlay").classList.remove("visable");
|
4
|
+
});
|
5
|
+
|
6
|
+
document.getElementById('dialog-close-button').addEventListener('click', function(e) {
|
7
|
+
document.getElementById("item-dialog").classList.remove("visable");
|
8
|
+
document.getElementById("body-overlay").classList.remove("visable");
|
9
|
+
});
|
10
|
+
|
11
|
+
document.onkeydown = function(evt) {
|
12
|
+
evt = evt || window.event;
|
13
|
+
var isEscape = false;
|
14
|
+
if ("key" in evt) {
|
15
|
+
isEscape = (evt.key === "Escape" || evt.key === "Esc");
|
16
|
+
} else {
|
17
|
+
isEscape = (evt.keyCode === 27);
|
18
|
+
}
|
19
|
+
if (isEscape) {
|
20
|
+
document.getElementById("item-dialog").classList.remove("visable");
|
21
|
+
document.getElementById("body-overlay").classList.remove("visable");
|
22
|
+
}
|
23
|
+
};
|
@@ -0,0 +1,7 @@
|
|
1
|
+
document.querySelectorAll('.grid-item').forEach(function(item) {
|
2
|
+
item.addEventListener('click', function() {
|
3
|
+
document.getElementById("item-dialog").classList.add("visable");
|
4
|
+
document.getElementById("body-overlay").classList.add("visable");
|
5
|
+
document.getElementById("item-dialog-name").innerText = item.dataset.identifier;
|
6
|
+
});
|
7
|
+
});
|
package/js/load_cart.js
ADDED
@@ -0,0 +1,76 @@
|
|
1
|
+
import { GLTFLoader } from '../assets/three/GLTFLoader.js'
|
2
|
+
import { OrbitControls } from '../assets/three/OrbitControls.js'
|
3
|
+
|
4
|
+
var newCart = [];
|
5
|
+
// define cart
|
6
|
+
window.api.send("cart_request", "rq")
|
7
|
+
window.api.receive('cart_answer', function (data, evt) {
|
8
|
+
newCart = [...new Set(data)];;
|
9
|
+
});
|
10
|
+
|
11
|
+
|
12
|
+
window.api.send("database_request", "rqID");
|
13
|
+
|
14
|
+
const items = []
|
15
|
+
window.api.receive('item_channel', function (data, evt) {
|
16
|
+
items.push(data)
|
17
|
+
if (newCart.includes(data[0].modelname)) {
|
18
|
+
var item = document.createElement('div');
|
19
|
+
item.className = "grid-item";
|
20
|
+
item.dataset.identifier = data[0].count;
|
21
|
+
// grid picture div
|
22
|
+
var grid_pic = document.createElement('div');
|
23
|
+
grid_pic.className = "grid-picture";
|
24
|
+
var grid_pic_img = document.createElement('img');
|
25
|
+
// get img path
|
26
|
+
grid_pic_img.src = data[0].thumbnail;
|
27
|
+
grid_pic_img.width = 190;
|
28
|
+
grid_pic.appendChild(grid_pic_img);
|
29
|
+
item.appendChild(grid_pic);
|
30
|
+
// grid label
|
31
|
+
var grid_label = document.createElement('h4');
|
32
|
+
grid_label.className = "grid-label"
|
33
|
+
grid_label.innerText = data[0].modelname
|
34
|
+
item.appendChild(grid_label)
|
35
|
+
// add item to items sections
|
36
|
+
document.getElementById('items').appendChild(item);
|
37
|
+
item.dataset.modelname = data[0].modelname
|
38
|
+
item.dataset.modelcreator = data[0].modelcreator
|
39
|
+
item.dataset.modelpath = data[0].model_path
|
40
|
+
|
41
|
+
// create li
|
42
|
+
var catalog_item = document.createElement('li');
|
43
|
+
catalog_item.innerHTML = data[0].modelname
|
44
|
+
catalog_item.id = data[0].modelname
|
45
|
+
|
46
|
+
document.getElementById('checkout_catalog').appendChild(catalog_item);
|
47
|
+
|
48
|
+
|
49
|
+
// var catlog_removal = document.createElement('a');
|
50
|
+
// catlog_removal.id = "remove_item_from_checkout";
|
51
|
+
// catlog_removal.innerHTML = "Remove"
|
52
|
+
// document.getElementById(data[0].modelname).appendChild(catlog_removal);
|
53
|
+
|
54
|
+
|
55
|
+
// set item data so we can work with it later
|
56
|
+
item.dataset.behaviors = data[0].behaviors
|
57
|
+
item.dataset.textures = data[0].textures
|
58
|
+
item.dataset.animation = data[0].animations
|
59
|
+
item.dataset.tags = data[0].tags
|
60
|
+
}
|
61
|
+
});
|
62
|
+
|
63
|
+
|
64
|
+
window.api.receive('renderer', function (data, evt) {
|
65
|
+
if(data = "stop-spinner") {
|
66
|
+
document.getElementById("loading").remove()
|
67
|
+
}
|
68
|
+
if (newCart.length == 0) {
|
69
|
+
let no_results = document.createElement("h2");
|
70
|
+
no_results.textContent = "Your Cart is empty!"
|
71
|
+
document.getElementById("action-icon-one").remove();
|
72
|
+
document.getElementById("items").appendChild(no_results)
|
73
|
+
}
|
74
|
+
|
75
|
+
|
76
|
+
});
|