moisesboy commited on
Commit
84c31ad
·
verified ·
1 Parent(s): 429a986

Promote version 1bf21a1 to main

Browse files

Promoted commit 1bf21a11bf82260196be2c0d932a00c79a8a8623 to main branch

Files changed (1) hide show
  1. index.html +79 -149
index.html CHANGED
@@ -54,12 +54,7 @@
54
  transform: translateY(-2px);
55
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
56
  }
57
- input[name="crimeType"]:checked + div {
58
- background-color: #fcd34d !important;
59
- color: #000 !important;
60
- border-color: #fcd34d !important;
61
- }
62
- .add-btn {
63
  transition: all 0.3s ease;
64
  }
65
  .add-btn:hover {
@@ -68,138 +63,28 @@
68
  </style>
69
  </head>
70
  <body class="text-gray-100 font-sans">
71
- <!-- Navigation Menu -->
72
- <nav class="bg-dark bg-opacity-90 backdrop-filter backdrop-blur-lg sticky top-0 z-50 shadow-lg">
73
- <div class="container mx-auto px-4 py-3 flex justify-between items-center">
74
- <div class="flex items-center space-x-2">
75
- <i data-feather="shield" class="w-6 h-6 text-yellow-400"></i>
76
- <span class="text-xl font-semibold">WhistleGlass</span>
77
- </div>
78
- <div class="hidden md:flex space-x-6">
79
- <a href="#" class="text-white hover:text-yellow-400 transition">Início</a>
80
- <a href="#" class="text-white hover:text-yellow-400 transition">Como Funciona</a>
81
- <a href="#" class="text-white hover:text-yellow-400 transition">Segurança</a>
82
- <a href="#" class="text-white hover:text-yellow-400 transition">Contato</a>
83
  </div>
84
- <button class="md:hidden text-white">
85
- <i data-feather="menu" class="w-6 h-6"></i>
86
- </button>
87
- </div>
88
- </nav>
89
- <div class="container mx-auto px-4 py-8 max-w-4xl">
90
- <!-- Menu de Tipo de Crime no início -->
91
- <div class="glass-card rounded-xl shadow-2xl overflow-hidden mb-6">
92
- <div class="bg-white bg-opacity-10 px-6 py-4">
93
- <h2 class="text-xl font-semibold border-b border-white border-opacity-20 pb-2">
94
- <i data-feather="alert-triangle" class="inline mr-2 w-5 h-5"></i>
95
- Tipo de Crime *
96
- </h2>
97
- <div class="grid grid-cols-2 md:grid-cols-3 gap-3 mt-4">
98
- <label class="crime-tag cursor-pointer">
99
- <input type="radio" name="crimeTypeTop" value="drugs" class="hidden peer" required>
100
- <div class="bg-dark peer-checked:bg-yellow-400 peer-checked:text-black rounded-lg p-3 text-center border border-white border-opacity-20 transition-colors duration-200">
101
- <i data-feather="package" class="w-5 h-5 mx-auto mb-1"></i>
102
- Tráfico de Drogas
103
- </div>
104
- </label>
105
- <label class="crime-tag cursor-pointer">
106
- <input type="radio" name="crimeTypeTop" value="weapons" class="hidden peer">
107
- <div class="bg-dark peer-checked:bg-yellow-400 peer-checked:text-black rounded-lg p-3 text-center border border-white border-opacity-20 transition-colors duration-200">
108
- <i data-feather="zap" class="w-5 h-5 mx-auto mb-1"></i>
109
- Porte Ilegal de Armas
110
- </div>
111
- </label>
112
- <label class="crime-tag cursor-pointer">
113
- <input type="radio" name="crimeTypeTop" value="homicide" class="hidden peer">
114
- <div class="bg-dark peer-checked:bg-yellow-400 peer-checked:text-black rounded-lg p-3 text-center border border-white border-opacity-20 transition-colors duration-200">
115
- <i data-feather="activity" class="w-5 h-5 mx-auto mb-1"></i>
116
- Autor de Homicídio
117
- </div>
118
- </label>
119
- <label class="crime-tag cursor-pointer">
120
- <input type="radio" name="crimeTypeTop" value="theft" class="hidden peer">
121
- <div class="bg-dark peer-checked:bg-yellow-400 peer-checked:text-black rounded-lg p-3 text-center border border-white border-opacity-20 transition-colors duration-200">
122
- <i data-feather="shield" class="w-5 h-5 mx-auto mb-1"></i>
123
- Roubo/Furto
124
- </div>
125
- </label>
126
- <label class="crime-tag cursor-pointer">
127
- <input type="radio" name="crimeTypeTop" value="wanted" class="hidden peer">
128
- <div class="bg-dark peer-checked:bg-yellow-400 peer-checked:text-black rounded-lg p-3 text-center border border-white border-opacity-20 transition-colors duration-200">
129
- <i data-feather="eye" class="w-5 h-5 mx-auto mb-1"></i>
130
- Procurado pela Justiça
131
- </div>
132
- </label>
133
- </div>
134
  </div>
135
  </div>
136
-
137
- <div class="glass-card rounded-xl shadow-2xl overflow-hidden">
138
- <!-- Header -->
139
- <div class="bg-white bg-opacity-10 px-6 py-4">
140
- <div class="flex items-center justify-between">
141
- <div class="flex items-center space-x-3">
142
- <i data-feather="alert-circle" class="w-8 h-8"></i>
143
- <h1 class="text-2xl font-bold">Denúncia Anônima</h1>
144
- </div>
145
- </div>
146
- <p class="mt-2 text-sm opacity-80">Sua identidade será preservada</p>
147
- <!-- Emergency Warning -->
148
- <div class="mt-3 bg-yellow-500 bg-opacity-20 text-yellow-200 px-4 py-2 rounded-lg flex items-center space-x-2">
149
- <i data-feather="alert-triangle" class="w-5 h-5"></i>
150
- <span class="text-sm font-semibold">Se estiver correndo risco de vida ligue 190</span>
151
- </div>
152
- </div>
153
  <!-- Form -->
154
  <form class="p-6 space-y-6">
155
- <!-- Section 1: Crime Type -->
156
  <div class="space-y-4">
157
- <h2 class="text-xl font-semibold border-b border-white border-opacity-20 pb-2">
158
- <i data-feather="alert-triangle" class="inline mr-2 w-5 h-5"></i>
159
- Tipo de Crime *
160
- </h2>
161
-
162
- <div class="grid grid-cols-2 md:grid-cols-3 gap-3">
163
- <label class="crime-tag cursor-pointer">
164
- <input type="radio" name="crimeType" value="drugs" class="hidden peer" required checked>
165
- <div class="bg-dark rounded-lg p-3 text-center border border-white border-opacity-20 transition-colors duration-200">
166
- <i data-feather="package" class="w-5 h-5 mx-auto mb-1"></i>
167
- Tráfico de Drogas
168
- </div>
169
- </label>
170
- <label class="crime-tag cursor-pointer">
171
- <input type="radio" name="crimeType" value="weapons" class="hidden peer">
172
- <div class="bg-dark rounded-lg p-3 text-center border border-white border-opacity-20 transition-colors duration-200">
173
- <i data-feather="zap" class="w-5 h-5 mx-auto mb-1"></i>
174
- Porte Ilegal de Armas
175
- </div>
176
- </label>
177
- <label class="crime-tag cursor-pointer">
178
- <input type="radio" name="crimeType" value="homicide" class="hidden peer">
179
- <div class="bg-dark rounded-lg p-3 text-center border border-white border-opacity-20 transition-colors duration-200">
180
- <i data-feather="activity" class="w-5 h-5 mx-auto mb-1"></i>
181
- Autor de Homicídio
182
- </div>
183
- </label>
184
- <label class="crime-tag cursor-pointer">
185
- <input type="radio" name="crimeType" value="theft" class="hidden peer">
186
- <div class="bg-dark rounded-lg p-3 text-center border border-white border-opacity-20 transition-colors duration-200">
187
- <i data-feather="shield" class="w-5 h-5 mx-auto mb-1"></i>
188
- Roubo/Furto
189
- </div>
190
- </label>
191
- <label class="crime-tag cursor-pointer">
192
- <input type="radio" name="crimeType" value="wanted" class="hidden peer">
193
- <div class="bg-dark rounded-lg p-3 text-center border border-white border-opacity-20 transition-colors duration-200">
194
- <i data-feather="eye" class="w-5 h-5 mx-auto mb-1"></i>
195
- Procurado pela Justiça
196
- </div>
197
- </label>
198
- </div>
199
- </div>
200
-
201
- <!-- Section 2: Basic Info -->
202
- <div class="space-y-4">
203
  <h2 class="text-xl font-semibold border-b border-white border-opacity-20 pb-2">
204
  <i data-feather="user" class="inline mr-2 w-5 h-5"></i>
205
  Informações do(s) Autor(es)
@@ -210,24 +95,24 @@
210
  <h3 class="text-lg font-medium">Autor 1</h3>
211
  <div class="grid grid-cols-1 md:grid-cols-2 gap-4">
212
  <div>
213
- <label class="block text-sm font-medium mb-1">Nome do Indivíduo (se souber)</label>
214
- <input type="text" class="w-full input-glass rounded-lg px-4 py-2 focus:outline-none focus:ring-2 focus:ring-primary">
215
  </div>
216
  <div>
217
- <label class="block text-sm font-medium mb-1">Vulgo/Apelido (se souber)</label>
218
  <input type="text" class="w-full input-glass rounded-lg px-4 py-2 focus:outline-none focus:ring-2 focus:ring-primary">
219
  </div>
220
- </div>
221
  <div class="grid grid-cols-1 md:grid-cols-2 gap-4">
222
  <div>
223
- <label class="block text-sm font-medium mb-1">Rede Social (se souber)</label>
224
  <input type="url" class="w-full input-glass rounded-lg px-4 py-2 focus:outline-none focus:ring-2 focus:ring-primary" placeholder="https://instagram.com/...">
225
  </div>
226
  <div>
227
- <label class="block text-sm font-medium mb-1">Documento (se souber)</label>
228
  <input type="text" class="flex-1 input-glass rounded-lg px-4 py-2 focus:outline-none focus:ring-2 focus:ring-primary" placeholder="RG, CPF, CNH...">
229
  </div>
230
- </div>
231
  <div class="grid grid-cols-1 md:grid-cols-4 gap-4">
232
  <div>
233
  <label class="block text-sm font-medium mb-1">Rua *</label>
@@ -272,9 +157,52 @@
272
  <span>Adicionar outro autor</span>
273
  </button>
274
  </div>
275
- <!-- Section 3: Crime Type (removido do formulário) -->
276
- <!-- Conteúdo removido -->
277
- <!-- Dynamic Fields for Drug Trafficking -->
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
278
  <div id="drugFields" class="space-y-4 hidden">
279
  <h3 class="text-lg font-medium border-b border-white border-opacity-20 pb-1">Detalhes sobre Tráfico</h3>
280
 
@@ -355,10 +283,11 @@
355
  <i data-feather="image" class="inline mr-2 w-5 h-5"></i>
356
  Fotos ou Vídeos
357
  </h2>
358
- <div id="photosContainer">
359
- <div class="flex space-x-2">
360
- <input type="file" accept="image/*,video/*" class="flex-1 input-glass rounded-lg px-4 py-2 focus:outline-none focus:ring-2 focus:ring-yellow-400 file:mr-4 file:py-2 file:px-4 file:rounded-lg file:border-0 file:text-sm file:font-semibold file:bg-yellow-400 file:text-black hover:file:bg-opacity-80">
361
- <button type="button" onclick="addPhotoField()" class="add-btn bg-yellow-400 bg-opacity-80 hover:bg-opacity-100 text-black px-3 rounded-lg flex items-center">
 
362
  <i data-feather="plus" class="w-5 h-5"></i>
363
  </button>
364
  </div>
@@ -408,8 +337,8 @@
408
  <script>
409
  // Initialize feather icons
410
  feather.replace();
411
- // Show/hide dynamic fields based on crime type (top menu)
412
- document.querySelectorAll('input[name="crimeTypeTop"]').forEach(radio => {
413
  radio.addEventListener('change', function() {
414
  // Hide all dynamic sections
415
  document.getElementById('drugFields').classList.add('hidden');
@@ -428,7 +357,8 @@
428
  }
429
  });
430
  });
431
- // Add author field
 
432
  function addAuthorField() {
433
  const container = document.getElementById('authorsContainer');
434
  const authorCount = container.querySelectorAll('.author-block').length + 1;
 
54
  transform: translateY(-2px);
55
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
56
  }
57
+ .add-btn {
 
 
 
 
 
58
  transition: all 0.3s ease;
59
  }
60
  .add-btn:hover {
 
63
  </style>
64
  </head>
65
  <body class="text-gray-100 font-sans">
66
+ <div class="container mx-auto px-4 py-12 max-w-4xl">
67
+ <div class="glass-card rounded-xl shadow-2xl overflow-hidden">
68
+ <!-- Header -->
69
+ <div class="bg-white bg-opacity-10 px-6 py-4">
70
+ <div class="flex items-center justify-between">
71
+ <div class="flex items-center space-x-3">
72
+ <i data-feather="alert-circle" class="w-8 h-8"></i>
73
+ <h1 class="text-2xl font-bold">Denúncia Anônima</h1>
74
+ </div>
75
+ </div>
 
 
76
  </div>
77
+ <p class="mt-2 text-sm opacity-80">Sua identidade será preservada</p>
78
+ <!-- Emergency Warning -->
79
+ <div class="mt-3 bg-yellow-500 bg-opacity-20 text-yellow-200 px-4 py-2 rounded-lg flex items-center space-x-2">
80
+ <i data-feather="alert-triangle" class="w-5 h-5"></i>
81
+ <span class="text-sm font-semibold">Se estiver correndo risco de vida ligue 190</span>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
82
  </div>
83
  </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
84
  <!-- Form -->
85
  <form class="p-6 space-y-6">
86
+ <!-- Section 1: Basic Info -->
87
  <div class="space-y-4">
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
88
  <h2 class="text-xl font-semibold border-b border-white border-opacity-20 pb-2">
89
  <i data-feather="user" class="inline mr-2 w-5 h-5"></i>
90
  Informações do(s) Autor(es)
 
95
  <h3 class="text-lg font-medium">Autor 1</h3>
96
  <div class="grid grid-cols-1 md:grid-cols-2 gap-4">
97
  <div>
98
+ <label class="block text-sm font-medium mb-1">Nome do Indivíduo *</label>
99
+ <input type="text" required class="w-full input-glass rounded-lg px-4 py-2 focus:outline-none focus:ring-2 focus:ring-primary">
100
  </div>
101
  <div>
102
+ <label class="block text-sm font-medium mb-1">Vulgo/Apelido</label>
103
  <input type="text" class="w-full input-glass rounded-lg px-4 py-2 focus:outline-none focus:ring-2 focus:ring-primary">
104
  </div>
105
+ </div>
106
  <div class="grid grid-cols-1 md:grid-cols-2 gap-4">
107
  <div>
108
+ <label class="block text-sm font-medium mb-1">Rede Social</label>
109
  <input type="url" class="w-full input-glass rounded-lg px-4 py-2 focus:outline-none focus:ring-2 focus:ring-primary" placeholder="https://instagram.com/...">
110
  </div>
111
  <div>
112
+ <label class="block text-sm font-medium mb-1">Documento</label>
113
  <input type="text" class="flex-1 input-glass rounded-lg px-4 py-2 focus:outline-none focus:ring-2 focus:ring-primary" placeholder="RG, CPF, CNH...">
114
  </div>
115
+ </div>
116
  <div class="grid grid-cols-1 md:grid-cols-4 gap-4">
117
  <div>
118
  <label class="block text-sm font-medium mb-1">Rua *</label>
 
157
  <span>Adicionar outro autor</span>
158
  </button>
159
  </div>
160
+ <!-- Section 3: Crime Type -->
161
+ <div class="space-y-4">
162
+ <h2 class="text-xl font-semibold border-b border-white border-opacity-20 pb-2">
163
+ <i data-feather="alert-triangle" class="inline mr-2 w-5 h-5"></i>
164
+ Tipo de Crime *
165
+ </h2>
166
+
167
+ <div class="grid grid-cols-2 md:grid-cols-3 gap-3">
168
+ <label class="crime-tag cursor-pointer">
169
+ <input type="radio" name="crimeType" value="drugs" class="hidden peer" required style="accent-color: yellow;">
170
+ <div class="bg-dark peer-checked:bg-primary peer-checked:text-white rounded-lg p-3 text-center border border-white border-opacity-20">
171
+ <i data-feather="package" class="w-5 h-5 mx-auto mb-1"></i>
172
+ Tráfico de Drogas
173
+ </div>
174
+ </label>
175
+ <label class="crime-tag cursor-pointer">
176
+ <input type="radio" name="crimeType" value="weapons" class="hidden peer">
177
+ <div class="bg-dark peer-checked:bg-primary peer-checked:text-white rounded-lg p-3 text-center border border-white border-opacity-20">
178
+ <i data-feather="zap" class="w-5 h-5 mx-auto mb-1"></i>
179
+ Porte Ilegal de Armas
180
+ </div>
181
+ </label>
182
+ <label class="crime-tag cursor-pointer">
183
+ <input type="radio" name="crimeType" value="homicide" class="hidden peer">
184
+ <div class="bg-dark peer-checked:bg-primary peer-checked:text-white rounded-lg p-3 text-center border border-white border-opacity-20">
185
+ <i data-feather="activity" class="w-5 h-5 mx-auto mb-1"></i>
186
+ Autor de Homicídio
187
+ </div>
188
+ </label>
189
+ <label class="crime-tag cursor-pointer">
190
+ <input type="radio" name="crimeType" value="theft" class="hidden peer">
191
+ <div class="bg-dark peer-checked:bg-primary peer-checked:text-white rounded-lg p-3 text-center border border-white border-opacity-20">
192
+ <i data-feather="shield" class="w-5 h-5 mx-auto mb-1"></i>
193
+ Roubo/Furto
194
+ </div>
195
+ </label>
196
+ <label class="crime-tag cursor-pointer">
197
+ <input type="radio" name="crimeType" value="wanted" class="hidden peer">
198
+ <div class="bg-dark peer-checked:bg-primary peer-checked:text-white rounded-lg p-3 text-center border border-white border-opacity-20">
199
+ <i data-feather="eye" class="w-5 h-5 mx-auto mb-1"></i>
200
+ Procurado pela Justiça
201
+ </div>
202
+ </label>
203
+ </div>
204
+ </div>
205
+ <!-- Dynamic Fields for Drug Trafficking -->
206
  <div id="drugFields" class="space-y-4 hidden">
207
  <h3 class="text-lg font-medium border-b border-white border-opacity-20 pb-1">Detalhes sobre Tráfico</h3>
208
 
 
283
  <i data-feather="image" class="inline mr-2 w-5 h-5"></i>
284
  Fotos ou Vídeos
285
  </h2>
286
+
287
+ <div id="photosContainer">
288
+ <div class="flex space-x-2">
289
+ <input type="file" accept="image/*,video/*" class="flex-1 input-glass rounded-lg px-4 py-2 focus:outline-none focus:ring-2 focus:ring-primary file:mr-4 file:py-2 file:px-4 file:rounded-lg file:border-0 file:text-sm file:font-semibold file:bg-primary file:text-white hover:file:bg-opacity-80">
290
+ <button type="button" onclick="addPhotoField()" class="add-btn bg-yellow-400 bg-opacity-80 hover:bg-opacity-100 text-black px-3 rounded-lg flex items-center">
291
  <i data-feather="plus" class="w-5 h-5"></i>
292
  </button>
293
  </div>
 
337
  <script>
338
  // Initialize feather icons
339
  feather.replace();
340
+ // Show/hide dynamic fields based on crime type
341
+ document.querySelectorAll('input[name="crimeType"]').forEach(radio => {
342
  radio.addEventListener('change', function() {
343
  // Hide all dynamic sections
344
  document.getElementById('drugFields').classList.add('hidden');
 
357
  }
358
  });
359
  });
360
+
361
+ // Add author field
362
  function addAuthorField() {
363
  const container = document.getElementById('authorsContainer');
364
  const authorCount = container.querySelectorAll('.author-block').length + 1;