mckabue commited on
Commit
41fde5b
·
1 Parent(s): 21ac1a1

Refactor platform card layout to enhance UI structure and improve event handling

Browse files
Files changed (1) hide show
  1. index.html +15 -18
index.html CHANGED
@@ -91,22 +91,14 @@
91
  for (const platform of platforms) {
92
  platformContainer.innerHTML +=
93
  `<div class="card mb-2" data-platform="${platform.id}">
94
- <div class="card-body d-flex align-items-center">
95
- <span class="me-auto"
96
- data-bs-toggle="collapse"
97
- data-bs-target="#collapse-${platform.id}"
98
- aria-expanded="false"
99
  aria-controls="collapse-${platform.id}">
100
- <img src="${platform.img}" alt="${platform.name}" class="platform-logo">
101
- <span>${platform.name}</span>
102
- </span>
103
  <div class="spinner-border text-primary d-none me-2"></div>
104
  <span class="status"></span>
105
- <i class="ms-2 d-none bi bi-info-circle-fill"
106
- data-bs-toggle="collapse"
107
- data-bs-target="#collapse-${platform.id}"
108
- aria-expanded="false"
109
- aria-controls="collapse-${platform.id}"></i>
110
  </div>
111
  <div class="collapse p-3 pt-0 fst-italic" id="collapse-${platform.id}">
112
  <hr class="mt-0" />
@@ -137,6 +129,7 @@
137
 
138
  card.classList.remove('bg-success-subtle', 'bg-danger-subtle', 'bg-warning-subtle');
139
  spinner.classList.remove('d-none');
 
140
  statusSpan.textContent = 'Checking...';
141
 
142
  fetch(`/check/${platform.id}/${username}`)
@@ -160,14 +153,18 @@
160
  collapse.innerHTML = error;
161
  }).finally(() => {
162
  spinner.classList.add('d-none');
163
- if (collapse.textContent.trim().length > 0) {
164
- i_toggle.classList.remove('d-none');
165
- } else {
166
- i_toggle.classList.add('d-none');
167
- }
168
  });
169
  });
170
  });
 
 
 
 
 
 
 
 
171
  </script>
172
  </body>
173
 
 
91
  for (const platform of platforms) {
92
  platformContainer.innerHTML +=
93
  `<div class="card mb-2" data-platform="${platform.id}">
94
+ <div class="card-body d-flex align-items-center" data-bs-toggle="collapse"
95
+ data-bs-target="#collapse-${platform.id}" aria-expanded="false"
 
 
 
96
  aria-controls="collapse-${platform.id}">
97
+ <img src="${platform.img}" alt="${platform.name}" class="platform-logo">
98
+ <span class="me-auto">${platform.name}</span>
 
99
  <div class="spinner-border text-primary d-none me-2"></div>
100
  <span class="status"></span>
101
+ <i class="ms-2 d-none bi bi-info-circle-fill"></i>
 
 
 
 
102
  </div>
103
  <div class="collapse p-3 pt-0 fst-italic" id="collapse-${platform.id}">
104
  <hr class="mt-0" />
 
129
 
130
  card.classList.remove('bg-success-subtle', 'bg-danger-subtle', 'bg-warning-subtle');
131
  spinner.classList.remove('d-none');
132
+ i_toggle.classList.add('d-none');
133
  statusSpan.textContent = 'Checking...';
134
 
135
  fetch(`/check/${platform.id}/${username}`)
 
153
  collapse.innerHTML = error;
154
  }).finally(() => {
155
  spinner.classList.add('d-none');
156
+ i_toggle.classList.remove('d-none');
 
 
 
 
157
  });
158
  });
159
  });
160
+
161
+ platformContainer.addEventListener('click', e => {
162
+ if (e.target.closest(".status > a")){
163
+ e.stopPropagation();
164
+ e.preventDefault()
165
+ window.open(e.target.href, '_blank').focus();
166
+ }
167
+ });
168
  </script>
169
  </body>
170