wasmdashai commited on
Commit
7e84459
·
verified ·
1 Parent(s): 5dc221c

undefined - Initial Deployment

Browse files
Files changed (2) hide show
  1. README.md +7 -5
  2. index.html +581 -19
README.md CHANGED
@@ -1,10 +1,12 @@
1
  ---
2
- title: Sh 35
3
- emoji: 🦀
4
- colorFrom: gray
5
- colorTo: purple
6
  sdk: static
7
  pinned: false
 
 
8
  ---
9
 
10
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
1
  ---
2
+ title: sh-35
3
+ emoji: 🐳
4
+ colorFrom: yellow
5
+ colorTo: green
6
  sdk: static
7
  pinned: false
8
+ tags:
9
+ - deepsite
10
  ---
11
 
12
+ Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
index.html CHANGED
@@ -1,19 +1,581 @@
1
- <!doctype html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8" />
5
- <meta name="viewport" content="width=device-width" />
6
- <title>My static Space</title>
7
- <link rel="stylesheet" href="style.css" />
8
- </head>
9
- <body>
10
- <div class="card">
11
- <h1>Welcome to your static Space!</h1>
12
- <p>You can modify this app directly by editing <i>index.html</i> in the Files and versions tab.</p>
13
- <p>
14
- Also don't forget to check the
15
- <a href="https://huggingface.co/docs/hub/spaces" target="_blank">Spaces documentation</a>.
16
- </p>
17
- </div>
18
- </body>
19
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="ar" dir="rtl">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>تجربة الواقع المعزز - دليل عسير الذكي</title>
7
+ <script src="https://cdn.tailwindcss.com"></script>
8
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
9
+ <style>
10
+ @import url('https://fonts.googleapis.com/css2?family=Tajawal:wght@400;500;700;900&display=swap');
11
+
12
+ body {
13
+ font-family: 'Tajawal', sans-serif;
14
+ }
15
+
16
+ .ar-overlay {
17
+ position: absolute;
18
+ top: 0;
19
+ left: 0;
20
+ width: 100%;
21
+ height: 100%;
22
+ pointer-events: none;
23
+ }
24
+
25
+ .ar-marker {
26
+ position: absolute;
27
+ width: 80px;
28
+ height: 80px;
29
+ background-color: rgba(255, 255, 255, 0.2);
30
+ border: 2px dashed #fff;
31
+ border-radius: 50%;
32
+ display: flex;
33
+ align-items: center;
34
+ justify-content: center;
35
+ animation: pulse 2s infinite;
36
+ }
37
+
38
+ @keyframes pulse {
39
+ 0% { transform: scale(0.95); opacity: 0.7; }
40
+ 50% { transform: scale(1.05); opacity: 1; }
41
+ 100% { transform: scale(0.95); opacity: 0.7; }
42
+ }
43
+
44
+ .location-card:hover {
45
+ transform: translateY(-5px);
46
+ box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
47
+ }
48
+
49
+ .map-marker {
50
+ width: 20px;
51
+ height: 20px;
52
+ background-color: #3B82F6;
53
+ border-radius: 50%;
54
+ border: 2px solid white;
55
+ cursor: pointer;
56
+ }
57
+
58
+ .map-marker.active {
59
+ background-color: #10B981;
60
+ transform: scale(1.3);
61
+ }
62
+ </style>
63
+ </head>
64
+ <body class="bg-gray-100 text-gray-800">
65
+ <!-- Header -->
66
+ <header class="bg-gradient-to-r from-blue-600 to-green-500 text-white py-4 px-6 shadow-lg">
67
+ <div class="container mx-auto flex justify-between items-center">
68
+ <div class="flex items-center space-x-2 space-x-reverse">
69
+ <i class="fas fa-mobile-screen text-2xl"></i>
70
+ <h1 class="text-2xl font-bold">دليل عسير الذكي</h1>
71
+ </div>
72
+ <button class="bg-white text-blue-600 px-4 py-2 rounded-full font-medium hover:bg-gray-100 transition">
73
+ <i class="fas fa-sign-in-alt ml-2"></i> تسجيل الدخول
74
+ </button>
75
+ </div>
76
+ </header>
77
+
78
+ <!-- Main Content -->
79
+ <main class="container mx-auto px-4 py-8">
80
+ <!-- Page Title -->
81
+ <div class="flex items-center justify-between mb-8">
82
+ <div>
83
+ <h2 class="text-3xl font-bold text-gray-800">تجربة الواقع المعزز</h2>
84
+ <p class="text-gray-600 mt-2">استكشف معالم عسير السياحية بتقنية الواقع المعزز</p>
85
+ </div>
86
+ <div class="bg-blue-100 text-blue-800 px-4 py-2 rounded-full flex items-center">
87
+ <i class="fas fa-info-circle ml-2"></i>
88
+ <span>كيفية الاستخدام</span>
89
+ </div>
90
+ </div>
91
+
92
+ <!-- AR Experience Section -->
93
+ <div class="grid grid-cols-1 lg:grid-cols-3 gap-8">
94
+ <!-- Locations List -->
95
+ <div class="lg:col-span-1 bg-white rounded-xl shadow-md overflow-hidden">
96
+ <div class="bg-gradient-to-r from-blue-500 to-blue-600 p-4 text-white">
97
+ <h3 class="text-xl font-bold flex items-center">
98
+ <i class="fas fa-map-marked-alt ml-2"></i>
99
+ <span>اختر موقعًا سياحيًا</span>
100
+ </h3>
101
+ </div>
102
+
103
+ <!-- Search and Filter -->
104
+ <div class="p-4 border-b">
105
+ <div class="relative">
106
+ <input type="text" placeholder="ابحث عن موقع..." class="w-full pr-10 pl-4 py-2 border rounded-full focus:outline-none focus:ring-2 focus:ring-blue-500">
107
+ <i class="fas fa-search absolute right-3 top-3 text-gray-400"></i>
108
+ </div>
109
+
110
+ <div class="flex mt-4 space-x-2 space-x-reverse">
111
+ <button class="filter-btn active bg-blue-100 text-blue-800 px-3 py-1 rounded-full text-sm">الكل</button>
112
+ <button class="filter-btn bg-green-100 text-green-800 px-3 py-1 rounded-full text-sm">طبيعة</button>
113
+ <button class="filter-btn bg-yellow-100 text-yellow-800 px-3 py-1 rounded-full text-sm">تراث</button>
114
+ <button class="filter-btn bg-purple-100 text-purple-800 px-3 py-1 rounded-full text-sm">فعاليات</button>
115
+ </div>
116
+ </div>
117
+
118
+ <!-- Locations List -->
119
+ <div class="overflow-y-auto h-96">
120
+ <div class="location-card p-4 border-b cursor-pointer transition duration-300 hover:bg-blue-50" data-location="souda">
121
+ <div class="flex">
122
+ <img src="https://images.unsplash.com/photo-1581431886210-8c668d690d3a?ixlib=rb-1.2.1&auto=format&fit=crop&w=500&q=80" alt="منتزه السودة" class="w-20 h-20 object-cover rounded-lg">
123
+ <div class="mr-3">
124
+ <h4 class="font-bold">منتزه السودة</h4>
125
+ <p class="text-sm text-gray-600 mt-1">أعلى قمة في المملكة بارتفاع 3,015 متر</p>
126
+ <div class="flex mt-2">
127
+ <span class="bg-blue-100 text-blue-800 text-xs px-2 py-1 rounded-full">طبيعة</span>
128
+ </div>
129
+ </div>
130
+ </div>
131
+ </div>
132
+
133
+ <div class="location-card p-4 border-b cursor-pointer transition duration-300 hover:bg-blue-50" data-location="almas">
134
+ <div class="flex">
135
+ <img src="https://images.unsplash.com/photo-1582719474627-64d53c51a4e3?ixlib=rb-1.2.1&auto=format&fit=crop&w=500&q=80" alt="قرية رجال ألمع" class="w-20 h-20 object-cover rounded-lg">
136
+ <div class="mr-3">
137
+ <h4 class="font-bold">قرية رجال ألمع</h4>
138
+ <p class="text-sm text-gray-600 mt-1">قرية تراثية تعود لأكثر من 400 عام</p>
139
+ <div class="flex mt-2">
140
+ <span class="bg-yellow-100 text-yellow-800 text-xs px-2 py-1 rounded-full">تراث</span>
141
+ </div>
142
+ </div>
143
+ </div>
144
+ </div>
145
+
146
+ <div class="location-card p-4 border-b cursor-pointer transition duration-300 hover:bg-blue-50" data-location="habala">
147
+ <div class="flex">
148
+ <img src="https://images.unsplash.com/photo-1527631746610-bca00a040d60?ixlib=rb-1.2.1&auto=format&fit=crop&w=500&q=80" alt="قرية حبلة" class="w-20 h-20 object-cover rounded-lg">
149
+ <div class="mr-3">
150
+ <h4 class="font-bold">قرية حبلة</h4>
151
+ <p class="text-sm text-gray-600 mt-1">قرية معلقة على حافة جبلية شاهقة</p>
152
+ <div class="flex mt-2">
153
+ <span class="bg-green-100 text-green-800 text-xs px-2 py-1 rounded-full">طبيعة</span>
154
+ <span class="bg-yellow-100 text-yellow-800 text-xs px-2 py-1 rounded-full mr-2">تراث</span>
155
+ </div>
156
+ </div>
157
+ </div>
158
+ </div>
159
+
160
+ <div class="location-card p-4 border-b cursor-pointer transition duration-300 hover:bg-blue-50" data-location="alqara">
161
+ <div class="flex">
162
+ <img src="https://images.unsplash.com/photo-1519046904884-53103b34b206?ixlib=rb-1.2.1&auto=format&fit=crop&w=500&q=80" alt="جبل القارة" class="w-20 h-20 object-cover rounded-lg">
163
+ <div class="mr-3">
164
+ <h4 class="font-bold">جبل القارة</h4>
165
+ <p class="text-sm text-gray-600 mt-1">موقع أثري يحتوي على نقوش ورسومات قديمة</p>
166
+ <div class="flex mt-2">
167
+ <span class="bg-yellow-100 text-yellow-800 text-xs px-2 py-1 rounded-full">تراث</span>
168
+ </div>
169
+ </div>
170
+ </div>
171
+ </div>
172
+
173
+ <div class="location-card p-4 border-b cursor-pointer transition duration-300 hover:bg-blue-50" data-location="alnomas">
174
+ <div class="flex">
175
+ <img src="https://images.unsplash.com/photo-1464822759023-fed622ff2c3b?ixlib=rb-1.2.1&auto=format&fit=crop&w=500&q=80" alt="منتزه النماص" class="w-20 h-20 object-cover rounded-lg">
176
+ <div class="mr-3">
177
+ <h4 class="font-bold">منتزه النماص</h4>
178
+ <p class="text-sm text-gray-600 mt-1">منتزه طبيعي غني بالتنوع النباتي والحيواني</p>
179
+ <div class="flex mt-2">
180
+ <span class="bg-green-100 text-green-800 text-xs px-2 py-1 rounded-full">طبيعة</span>
181
+ </div>
182
+ </div>
183
+ </div>
184
+ </div>
185
+ </div>
186
+ </div>
187
+
188
+ <!-- Map and AR View -->
189
+ <div class="lg:col-span-2">
190
+ <!-- Map Preview -->
191
+ <div id="map-container" class="bg-white rounded-xl shadow-md overflow-hidden mb-6">
192
+ <div class="bg-gradient-to-r from-blue-500 to-blue-600 p-4 text-white flex justify-between items-center">
193
+ <h3 class="text-xl font-bold flex items-center">
194
+ <i class="fas fa-map ml-2"></i>
195
+ <span>خريطة عسير السياحية</span>
196
+ </h3>
197
+ <button id="start-ar-btn" class="bg-white text-blue-600 px-4 py-2 rounded-full font-medium hover:bg-gray-100 transition hidden">
198
+ <i class="fas fa-camera ml-2"></i> بدء تجربة AR
199
+ </button>
200
+ </div>
201
+
202
+ <div class="p-4">
203
+ <div class="relative bg-gray-200 rounded-lg overflow-hidden" style="height: 300px;">
204
+ <!-- Simple Map Representation -->
205
+ <img src="https://maps.googleapis.com/maps/api/staticmap?center=19.0965,42.8633&zoom=8&size=800x400&maptype=roadmap&key=YOUR_API_KEY" alt="Asir Map" class="w-full h-full object-cover">
206
+
207
+ <!-- Map Markers -->
208
+ <div class="map-marker absolute" style="top: 30%; left: 40%;" data-location="souda"></div>
209
+ <div class="map-marker absolute" style="top: 50%; left: 60%;" data-location="almas"></div>
210
+ <div class="map-marker absolute" style="top: 45%; left: 30%;" data-location="habala"></div>
211
+ <div class="map-marker absolute" style="top: 35%; left: 50%;" data-location="alqara"></div>
212
+ <div class="map-marker absolute" style="top: 60%; left: 45%;" data-location="alnomas"></div>
213
+ </div>
214
+ </div>
215
+ </div>
216
+
217
+ <!-- AR View (Initially Hidden) -->
218
+ <div id="ar-view" class="bg-white rounded-xl shadow-md overflow-hidden hidden">
219
+ <div class="bg-gradient-to-r from-blue-500 to-blue-600 p-4 text-white flex justify-between items-center">
220
+ <h3 class="text-xl font-bold flex items-center">
221
+ <i class="fas fa-vr-cardboard ml-2"></i>
222
+ <span>تجربة الواقع المعزز</span>
223
+ </h3>
224
+ <button id="back-to-map" class="bg-white text-blue-600 px-4 py-2 rounded-full font-medium hover:bg-gray-100 transition">
225
+ <i class="fas fa-arrow-left ml-2"></i> العودة للخريطة
226
+ </button>
227
+ </div>
228
+
229
+ <div class="relative" style="height: 500px;">
230
+ <!-- Camera Feed -->
231
+ <video id="camera-feed" autoplay playsinline class="w-full h-full object-cover"></video>
232
+
233
+ <!-- AR Overlay Content -->
234
+ <div id="ar-overlay" class="ar-overlay">
235
+ <!-- This will be populated with AR content based on location -->
236
+ </div>
237
+
238
+ <!-- AR Controls -->
239
+ <div class="absolute bottom-4 left-4 right-4 flex justify-center space-x-4 space-x-reverse">
240
+ <button id="toggle-camera" class="bg-white bg-opacity-80 text-blue-600 w-12 h-12 rounded-full flex items-center justify-center shadow-lg">
241
+ <i class="fas fa-camera-retro text-xl"></i>
242
+ </button>
243
+ <button id="toggle-audio" class="bg-white bg-opacity-80 text-blue-600 w-12 h-12 rounded-full flex items-center justify-center shadow-lg">
244
+ <i class="fas fa-volume-up text-xl"></i>
245
+ </button>
246
+ <button id="toggle-info" class="bg-white bg-opacity-80 text-blue-600 w-12 h-12 rounded-full flex items-center justify-center shadow-lg">
247
+ <i class="fas fa-info-circle text-xl"></i>
248
+ </button>
249
+ </div>
250
+ </div>
251
+
252
+ <!-- Info Panel (Initially Hidden) -->
253
+ <div id="info-panel" class="bg-white border-t p-4 hidden">
254
+ <h4 class="font-bold text-lg mb-2" id="location-title">منتزه السودة</h4>
255
+ <p id="location-description">أعلى قمة في المملكة العربية السعودية، حيث يصل ارتفاعها إلى 3,015 متراً فوق سطح البحر. يتميز المنتزه بمناخه المعتدل صيفاً والبارد شتاءً، ويوفر إطلالات بانورامية خلابة على جبال عسير.</p>
256
+
257
+ <div class="mt-4">
258
+ <h5 class="font-bold mb-2">المعالم البارزة:</h5>
259
+ <ul class="list-disc mr-5 space-y-1">
260
+ <li>قمة السودة - أعلى نقطة في المملكة</li>
261
+ <li>منتزه السودة الوطني</li>
262
+ <li>مسار المشي الجبلي</li>
263
+ <li>منطقة التخييم</li>
264
+ </ul>
265
+ </div>
266
+
267
+ <div class="mt-4 flex space-x-3 space-x-reverse">
268
+ <button class="bg-blue-100 text-blue-800 px-4 py-2 rounded-full flex items-center">
269
+ <i class="fas fa-headphones ml-2"></i>
270
+ <span>جولة صوتية</span>
271
+ </button>
272
+ <button class="bg-green-100 text-green-800 px-4 py-2 rounded-full flex items-center">
273
+ <i class="fas fa-video ml-2"></i>
274
+ <span>مشاهدة فيديو</span>
275
+ </button>
276
+ </div>
277
+ </div>
278
+ </div>
279
+ </div>
280
+ </div>
281
+ </main>
282
+
283
+ <!-- Footer -->
284
+ <footer class="bg-gray-800 text-white py-8 px-6 mt-12">
285
+ <div class="container mx-auto">
286
+ <div class="grid grid-cols-1 md:grid-cols-4 gap-8">
287
+ <div>
288
+ <h4 class="text-lg font-bold mb-4">دليل عسير الذكي</h4>
289
+ <p class="text-gray-400">منصة سياحية متكاملة تقدم تجارب تفاعلية للزوار باستخدام أحدث التقنيات.</p>
290
+ </div>
291
+ <div>
292
+ <h4 class="text-lg font-bold mb-4">روابط سريعة</h4>
293
+ <ul class="space-y-2">
294
+ <li><a href="#" class="text-gray-400 hover:text-white transition">الرئيسية</a></li>
295
+ <li><a href="#" class="text-gray-400 hover:text-white transition">المواقع السياحية</a></li>
296
+ <li><a href="#" class="text-gray-400 hover:text-white transition">الفعاليات</a></li>
297
+ <li><a href="#" class="text-gray-400 hover:text-white transition">تجربة AR</a></li>
298
+ </ul>
299
+ </div>
300
+ <div>
301
+ <h4 class="text-lg font-bold mb-4">تواصل معنا</h4>
302
+ <ul class="space-y-2">
303
+ <li class="flex items-center">
304
+ <i class="fas fa-phone ml-2 text-gray-400"></i>
305
+ <span class="text-gray-400">920000000</span>
306
+ </li>
307
+ <li class="flex items-center">
308
+ <i class="fas fa-envelope ml-2 text-gray-400"></i>
309
+ <span class="text-gray-400">[email protected]</span>
310
+ </li>
311
+ </ul>
312
+ </div>
313
+ <div>
314
+ <h4 class="text-lg font-bold mb-4">تابعنا</h4>
315
+ <div class="flex space-x-4 space-x-reverse">
316
+ <a href="#" class="bg-gray-700 w-10 h-10 rounded-full flex items-center justify-center hover:bg-blue-600 transition">
317
+ <i class="fab fa-twitter"></i>
318
+ </a>
319
+ <a href="#" class="bg-gray-700 w-10 h-10 rounded-full flex items-center justify-center hover:bg-blue-800 transition">
320
+ <i class="fab fa-facebook-f"></i>
321
+ </a>
322
+ <a href="#" class="bg-gray-700 w-10 h-10 rounded-full flex items-center justify-center hover:bg-pink-600 transition">
323
+ <i class="fab fa-instagram"></i>
324
+ </a>
325
+ <a href="#" class="bg-gray-700 w-10 h-10 rounded-full flex items-center justify-center hover:bg-red-600 transition">
326
+ <i class="fab fa-youtube"></i>
327
+ </a>
328
+ </div>
329
+ </div>
330
+ </div>
331
+ <div class="border-t border-gray-700 mt-8 pt-8 text-center text-gray-400">
332
+ <p>© 2023 دليل عسير الذكي. جميع الحقوق محفوظة.</p>
333
+ </div>
334
+ </div>
335
+ </footer>
336
+
337
+ <!-- AR Content Templates (Hidden) -->
338
+ <div id="ar-content-templates" class="hidden">
339
+ <!-- Souda Park Content -->
340
+ <div id="souda-content">
341
+ <div class="ar-marker" style="top: 30%; left: 40%;">
342
+ <i class="fas fa-mountain text-white text-2xl"></i>
343
+ </div>
344
+ <div class="absolute top-20 left-20 bg-white bg-opacity-90 p-3 rounded-lg max-w-xs shadow-lg">
345
+ <h5 class="font-bold">قمة السودة</h5>
346
+ <p class="text-sm mt-1">أعلى نقطة في المملكة (3,015 م)</p>
347
+ </div>
348
+ <div class="absolute bottom-40 right-20 bg-white bg-opacity-90 p-3 rounded-lg max-w-xs shadow-lg">
349
+ <img src="https://images.unsplash.com/photo-1581431886210-8c668d690d3a?ixlib=rb-1.2.1&auto=format&fit=crop&w=300&q=80" alt="Old Souda" class="rounded mb-2">
350
+ <p class="text-sm">منتزه السودة في الثمانينات الميلادية</p>
351
+ </div>
352
+ </div>
353
+
354
+ <!-- Almas Village Content -->
355
+ <div id="almas-content">
356
+ <div class="ar-marker" style="top: 50%; left: 60%;">
357
+ <i class="fas fa-home text-white text-2xl"></i>
358
+ </div>
359
+ <div class="absolute top-20 right-20 bg-white bg-opacity-90 p-3 rounded-lg max-w-xs shadow-lg">
360
+ <h5 class="font-bold">قرية رجال ألمع</h5>
361
+ <p class="text-sm mt-1">قرية تراثية عمرها 400 عام</p>
362
+ </div>
363
+ <div class="absolute bottom-40 left-20 bg-white bg-opacity-90 p-3 rounded-lg max-w-xs shadow-lg">
364
+ <img src="https://images.unsplash.com/photo-1582719474627-64d53c51a4e3?ixlib=rb-1.2.1&auto=format&fit=crop&w=300&q=80" alt="Old Almas" class="rounded mb-2">
365
+ <p class="text-sm">القرية في بداية القرن العشرين</p>
366
+ </div>
367
+ </div>
368
+ </div>
369
+
370
+ <script>
371
+ document.addEventListener('DOMContentLoaded', function() {
372
+ // Elements
373
+ const locationCards = document.querySelectorAll('.location-card');
374
+ const mapMarkers = document.querySelectorAll('.map-marker');
375
+ const startArBtn = document.getElementById('start-ar-btn');
376
+ const backToMapBtn = document.getElementById('back-to-map');
377
+ const mapContainer = document.getElementById('map-container');
378
+ const arView = document.getElementById('ar-view');
379
+ const cameraFeed = document.getElementById('camera-feed');
380
+ const arOverlay = document.getElementById('ar-overlay');
381
+ const toggleCameraBtn = document.getElementById('toggle-camera');
382
+ const toggleAudioBtn = document.getElementById('toggle-audio');
383
+ const toggleInfoBtn = document.getElementById('toggle-info');
384
+ const infoPanel = document.getElementById('info-panel');
385
+ const locationTitle = document.getElementById('location-title');
386
+ const locationDescription = document.getElementById('location-description');
387
+
388
+ // Location data
389
+ const locations = {
390
+ souda: {
391
+ title: "منتزه السودة",
392
+ description: "أعلى قمة في المملكة العربية السعودية، حيث يصل ارتفاعها إلى 3,015 متراً فوق سطح البحر. يتميز المنتزه بمناخه المعتدل صيفاً والبارد شتاءً، ويوفر إطلالات بانورامية خلابة على جبال عسير.",
393
+ features: [
394
+ "قمة السودة - أعلى نقطة في المملكة",
395
+ "منتزه السودة الوطني",
396
+ "مسار المشي الجبلي",
397
+ "منطقة التخييم"
398
+ ]
399
+ },
400
+ almas: {
401
+ title: "قرية رجال ألمع",
402
+ description: "قرية تراثية تعود لأكثر من 400 عام، تتميز ببيوتها الحجرية المبنية بطريقة فريدة. القرية مدرجة على قائمة اليونسكو للتراث العالمي وتقدم لمحة عن حياة الأجداد في المنطقة.",
403
+ features: [
404
+ "المتحف التراثي",
405
+ "البيو�� الحجرية التقليدية",
406
+ "سوق الحرف اليدوية",
407
+ "معرض الفنون القديمة"
408
+ ]
409
+ },
410
+ habala: {
411
+ title: "قرية حبلة",
412
+ description: "قرية معلقة على حافة جبلية شاهقة الارتفاع، كانت تُعرف سابقاً باسم 'قرية السحب' بسبب موقعها المرتفع. يمكن الوصول إليها عبر التلفريك الذي يقدم إطلالات رائعة على الوادي.",
413
+ features: [
414
+ "التلفريك المعلق",
415
+ "المنحدرات الصخرية",
416
+ "المدرجات الزراعية",
417
+ "المناظر البانورامية"
418
+ ]
419
+ }
420
+ };
421
+
422
+ // Selected location
423
+ let selectedLocation = null;
424
+
425
+ // Select location
426
+ function selectLocation(locationId) {
427
+ // Update UI
428
+ locationCards.forEach(card => {
429
+ if (card.dataset.location === locationId) {
430
+ card.classList.add('bg-blue-50', 'border-blue-200');
431
+ } else {
432
+ card.classList.remove('bg-blue-50', 'border-blue-200');
433
+ }
434
+ });
435
+
436
+ mapMarkers.forEach(marker => {
437
+ if (marker.dataset.location === locationId) {
438
+ marker.classList.add('active');
439
+ } else {
440
+ marker.classList.remove('active');
441
+ }
442
+ });
443
+
444
+ // Set selected location
445
+ selectedLocation = locationId;
446
+
447
+ // Show start AR button
448
+ startArBtn.classList.remove('hidden');
449
+
450
+ // Update info panel if visible
451
+ if (!infoPanel.classList.contains('hidden')) {
452
+ updateInfoPanel(locationId);
453
+ }
454
+ }
455
+
456
+ // Update info panel
457
+ function updateInfoPanel(locationId) {
458
+ const location = locations[locationId];
459
+ if (location) {
460
+ locationTitle.textContent = location.title;
461
+ locationDescription.textContent = location.description;
462
+ // You would update features list here as well
463
+ }
464
+ }
465
+
466
+ // Start AR Experience
467
+ function startAR() {
468
+ if (!selectedLocation) return;
469
+
470
+ // Request camera access
471
+ if (navigator.mediaDevices && navigator.mediaDevices.getUserMedia) {
472
+ navigator.mediaDevices.getUserMedia({ video: true })
473
+ .then(function(stream) {
474
+ cameraFeed.srcObject = stream;
475
+
476
+ // Switch to AR view
477
+ mapContainer.classList.add('hidden');
478
+ arView.classList.remove('hidden');
479
+
480
+ // Load AR content for selected location
481
+ loadARContent(selectedLocation);
482
+ })
483
+ .catch(function(error) {
484
+ alert('يجب السماح باستخدام الكاميرا لتجربة الواقع المعزز');
485
+ console.error('Camera access error:', error);
486
+ });
487
+ } else {
488
+ alert('عذرًا، تجربة الواقع المعزز غير مدعومة في متصفحك');
489
+ }
490
+ }
491
+
492
+ // Load AR content
493
+ function loadARContent(locationId) {
494
+ // Clear previous content
495
+ arOverlay.innerHTML = '';
496
+
497
+ // Get template for this location
498
+ const template = document.getElementById(`${locationId}-content`);
499
+ if (template) {
500
+ arOverlay.innerHTML = template.innerHTML;
501
+ } else {
502
+ // Default AR marker if no specific content
503
+ const marker = document.createElement('div');
504
+ marker.className = 'ar-marker';
505
+ marker.style.top = '50%';
506
+ marker.style.left = '50%';
507
+ marker.innerHTML = '<i class="fas fa-map-marker-alt text-white text-2xl"></i>';
508
+ arOverlay.appendChild(marker);
509
+
510
+ const info = document.createElement('div');
511
+ info.className = 'absolute top-20 left-1/2 transform -translate-x-1/2 bg-white bg-opacity-90 p-3 rounded-lg max-w-xs shadow-lg';
512
+ info.innerHTML = `<h5 class="font-bold">${locations[locationId]?.title || 'موقع سياحي'}</h5>
513
+ <p class="text-sm mt-1">توجيه الكاميرا نحو المعلم السياحي</p>`;
514
+ arOverlay.appendChild(info);
515
+ }
516
+
517
+ // Update info panel
518
+ updateInfoPanel(locationId);
519
+ }
520
+
521
+ // Back to map
522
+ function backToMap() {
523
+ // Stop camera
524
+ if (cameraFeed.srcObject) {
525
+ cameraFeed.srcObject.getTracks().forEach(track => track.stop());
526
+ cameraFeed.srcObject = null;
527
+ }
528
+
529
+ // Switch views
530
+ arView.classList.add('hidden');
531
+ mapContainer.classList.remove('hidden');
532
+
533
+ // Hide info panel
534
+ infoPanel.classList.add('hidden');
535
+ }
536
+
537
+ // Event Listeners
538
+ locationCards.forEach(card => {
539
+ card.addEventListener('click', function() {
540
+ selectLocation(this.dataset.location);
541
+ });
542
+ });
543
+
544
+ mapMarkers.forEach(marker => {
545
+ marker.addEventListener('click', function() {
546
+ selectLocation(this.dataset.location);
547
+ });
548
+ });
549
+
550
+ startArBtn.addEventListener('click', startAR);
551
+ backToMapBtn.addEventListener('click', backToMap);
552
+
553
+ toggleCameraBtn.addEventListener('click', function() {
554
+ alert('سيتم تبديل الكاميرا الأمامية/الخلفية في التطبيق الكامل');
555
+ });
556
+
557
+ toggleAudioBtn.addEventListener('click', function() {
558
+ this.querySelector('i').classList.toggle('fa-volume-up');
559
+ this.querySelector('i').classList.toggle('fa-volume-mute');
560
+ alert('سيتم تبديل الصوت في التطبيق الكامل');
561
+ });
562
+
563
+ toggleInfoBtn.addEventListener('click', function() {
564
+ infoPanel.classList.toggle('hidden');
565
+ });
566
+
567
+ // Filter buttons
568
+ document.querySelectorAll('.filter-btn').forEach(btn => {
569
+ btn.addEventListener('click', function() {
570
+ document.querySelectorAll('.filter-btn').forEach(b => b.classList.remove('active'));
571
+ this.classList.add('active');
572
+ // In a real app, you would filter locations here
573
+ });
574
+ });
575
+
576
+ // Initial selection
577
+ selectLocation('souda');
578
+ });
579
+ </script>
580
+ <p style="border-radius: 8px; text-align: center; font-size: 12px; color: #fff; margin-top: 16px;position: fixed; left: 8px; bottom: 8px; z-index: 10; background: rgba(0, 0, 0, 0.8); padding: 4px 8px;">Made with <img src="https://enzostvs-deepsite.hf.space/logo.svg" alt="DeepSite Logo" style="width: 16px; height: 16px; vertical-align: middle;display:inline-block;margin-right:3px;filter:brightness(0) invert(1);"><a href="https://enzostvs-deepsite.hf.space" style="color: #fff;text-decoration: underline;" target="_blank" >DeepSite</a> - 🧬 <a href="https://enzostvs-deepsite.hf.space?remix=wasmdashai/sh-35" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body>
581
+ </html>