Update data_gc_tab.html
Browse files- data_gc_tab.html +51 -18
data_gc_tab.html
CHANGED
|
@@ -233,6 +233,33 @@
|
|
| 233 |
|
| 234 |
<input id="filter-value" type="text" placeholder="Значение фильтра">
|
| 235 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 236 |
<button id="filter-clear">Очистить фильтр</button>
|
| 237 |
|
| 238 |
<button id="download-json">Рассылка по выбранным</button>
|
|
@@ -240,10 +267,6 @@
|
|
| 240 |
</div>
|
| 241 |
<div id="example-table"></div>
|
| 242 |
|
| 243 |
-
|
| 244 |
-
|
| 245 |
-
|
| 246 |
-
|
| 247 |
<script>
|
| 248 |
vkBridge.send('VKWebAppInit');
|
| 249 |
document.addEventListener('DOMContentLoaded', function() {
|
|
@@ -329,22 +352,16 @@
|
|
| 329 |
{title:"Статус WhatsApp", field:"ws_st"},
|
| 330 |
{title:"Стутус подписки", field:"ws_stop"},
|
| 331 |
{title:"Вебинары-присутствовал", field:"web_st", formatter:"star", formatterParams:{stars:7}, hozAlign:"center", width:120},
|
| 332 |
-
|
| 333 |
-
|
| 334 |
{title:"Вебинары-досмотрел до конца", field:"b_fin", formatter:function(cell, formatterParams, onRendered){
|
| 335 |
var value = cell.getValue();
|
| 336 |
var icon;
|
| 337 |
-
|
| 338 |
if (value === 'True') {
|
| 339 |
icon = ' <img src="https://i.ibb.co/7zKrd5G/Screenshot-75.jpg" width="30" height="14" />'; // Иконка для активного статуса
|
| 340 |
} else {
|
| 341 |
icon = ''; // Пустая строка для неактивного статуса или если значение не определено
|
| 342 |
}
|
| 343 |
-
|
| 344 |
return icon;
|
| 345 |
}, width:100},
|
| 346 |
-
|
| 347 |
-
|
| 348 |
|
| 349 |
{title:"Прогрес по воронке", field:"fin_prog", formatter:"progress", formatterParams:{color:["#00dd00", "orange", "rgb(255,0,0)"]}, sorter:"number", width:100},
|
| 350 |
{title:"pr1", field:"pr1"},
|
|
@@ -360,42 +377,58 @@
|
|
| 360 |
var fieldEl = document.getElementById("filter-field");
|
| 361 |
var typeEl = document.getElementById("filter-type");
|
| 362 |
var valueEl = document.getElementById("filter-value");
|
|
|
|
|
|
|
|
|
|
| 363 |
function updateFilter() {
|
| 364 |
-
var
|
| 365 |
-
var
|
| 366 |
-
|
| 367 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 368 |
}
|
| 369 |
}
|
|
|
|
| 370 |
document.getElementById("filter-field").addEventListener("change", updateFilter);
|
| 371 |
document.getElementById("filter-type").addEventListener("change", updateFilter);
|
| 372 |
document.getElementById("filter-value").addEventListener("keyup", updateFilter);
|
|
|
|
|
|
|
|
|
|
| 373 |
document.getElementById("filter-clear").addEventListener("click", function() {
|
| 374 |
fieldEl.value = "";
|
| 375 |
typeEl.value = "=";
|
| 376 |
valueEl.value = "";
|
|
|
|
|
|
|
| 377 |
table.clearFilter();
|
| 378 |
});
|
|
|
|
| 379 |
function handleDownloadJson() {
|
| 380 |
var tableData = table.getData("active");
|
| 381 |
var jsonData = JSON.stringify(tableData, null, 2);
|
| 382 |
console.log("Данные для рассылки:", jsonData);
|
| 383 |
}
|
|
|
|
| 384 |
function handleTakeForYourself() {
|
| 385 |
var tableData = table.getData("active");
|
| 386 |
var jsonData = JSON.stringify(tableData, null, 2);
|
| 387 |
console.log("Данные для себя:", jsonData);
|
| 388 |
}
|
|
|
|
| 389 |
document.getElementById("download-json").addEventListener("click", handleDownloadJson);
|
| 390 |
document.getElementById("take-for-yourself").addEventListener("click", handleTakeForYourself);
|
| 391 |
})
|
| 392 |
.catch(error => console.error('Error fetching data:', error));
|
| 393 |
});
|
| 394 |
</script>
|
| 395 |
-
|
| 396 |
-
|
| 397 |
-
|
| 398 |
-
|
| 399 |
</body>
|
| 400 |
|
| 401 |
</html>
|
|
|
|
| 233 |
|
| 234 |
<input id="filter-value" type="text" placeholder="Значение фильтра">
|
| 235 |
|
| 236 |
+
<select id="filter-field2">
|
| 237 |
+
<option></option>
|
| 238 |
+
<option value="id">Номер в списке</option>
|
| 239 |
+
<option value="name">Имя</option>
|
| 240 |
+
<option value="phone">WhatsApp</option>
|
| 241 |
+
<option value="email">Email</option>
|
| 242 |
+
<option value="b_mess">Реплики</option>
|
| 243 |
+
<option value="curator">Куратор</option>
|
| 244 |
+
<option value="shop_st">Статус покупки</option>
|
| 245 |
+
<option value="ad_url">Ссылка на пользователя в GC</option>
|
| 246 |
+
<option value="vk_id">Ссылка на VK</option>
|
| 247 |
+
<option value="chat_id">Ссылка на Tg</option>
|
| 248 |
+
<option value="ws_stop">Стутус подписки</option>
|
| 249 |
+
<option value="web_st">Вебинары</option>
|
| 250 |
+
<option value="fin_prog">Прогрес по воронке</option>
|
| 251 |
+
<option value="pr1">pr1</option>
|
| 252 |
+
<option value="pr2">pr2</option>
|
| 253 |
+
<option value="pr3">pr3</option>
|
| 254 |
+
<option value="pr4">Канал трафика</option>
|
| 255 |
+
<option value="pr5">Дата</option>
|
| 256 |
+
<option value="key_pr">Ключ PR</option>
|
| 257 |
+
<option value="canal">Канал</option>
|
| 258 |
+
<option value="data_t">Дата</option>
|
| 259 |
+
</select>
|
| 260 |
+
|
| 261 |
+
<input id="filter-value2" type="text" placeholder="Значение фильтра 2">
|
| 262 |
+
|
| 263 |
<button id="filter-clear">Очистить фильтр</button>
|
| 264 |
|
| 265 |
<button id="download-json">Рассылка по выбранным</button>
|
|
|
|
| 267 |
</div>
|
| 268 |
<div id="example-table"></div>
|
| 269 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 270 |
<script>
|
| 271 |
vkBridge.send('VKWebAppInit');
|
| 272 |
document.addEventListener('DOMContentLoaded', function() {
|
|
|
|
| 352 |
{title:"Статус WhatsApp", field:"ws_st"},
|
| 353 |
{title:"Стутус подписки", field:"ws_stop"},
|
| 354 |
{title:"Вебинары-присутствовал", field:"web_st", formatter:"star", formatterParams:{stars:7}, hozAlign:"center", width:120},
|
|
|
|
|
|
|
| 355 |
{title:"Вебинары-досмотрел до конца", field:"b_fin", formatter:function(cell, formatterParams, onRendered){
|
| 356 |
var value = cell.getValue();
|
| 357 |
var icon;
|
|
|
|
| 358 |
if (value === 'True') {
|
| 359 |
icon = ' <img src="https://i.ibb.co/7zKrd5G/Screenshot-75.jpg" width="30" height="14" />'; // Иконка для активного статуса
|
| 360 |
} else {
|
| 361 |
icon = ''; // Пустая строка для неактивного статуса или если значение не определено
|
| 362 |
}
|
|
|
|
| 363 |
return icon;
|
| 364 |
}, width:100},
|
|
|
|
|
|
|
| 365 |
|
| 366 |
{title:"Прогрес по воронке", field:"fin_prog", formatter:"progress", formatterParams:{color:["#00dd00", "orange", "rgb(255,0,0)"]}, sorter:"number", width:100},
|
| 367 |
{title:"pr1", field:"pr1"},
|
|
|
|
| 377 |
var fieldEl = document.getElementById("filter-field");
|
| 378 |
var typeEl = document.getElementById("filter-type");
|
| 379 |
var valueEl = document.getElementById("filter-value");
|
| 380 |
+
var fieldEl2 = document.getElementById("filter-field2");
|
| 381 |
+
var valueEl2 = document.getElementById("filter-value2");
|
| 382 |
+
|
| 383 |
function updateFilter() {
|
| 384 |
+
var filterVal1 = fieldEl.value;
|
| 385 |
+
var typeVal1 = typeEl.value;
|
| 386 |
+
var valueVal1 = valueEl.value;
|
| 387 |
+
|
| 388 |
+
var filterVal2 = fieldEl2.value;
|
| 389 |
+
var valueVal2 = valueEl2.value;
|
| 390 |
+
|
| 391 |
+
if (filterVal1 && filterVal2) {
|
| 392 |
+
table.setFilter([
|
| 393 |
+
{ field: filterVal1, type: typeVal1, value: valueVal1 },
|
| 394 |
+
{ field: filterVal2, type: "=", value: valueVal2 }
|
| 395 |
+
]);
|
| 396 |
}
|
| 397 |
}
|
| 398 |
+
|
| 399 |
document.getElementById("filter-field").addEventListener("change", updateFilter);
|
| 400 |
document.getElementById("filter-type").addEventListener("change", updateFilter);
|
| 401 |
document.getElementById("filter-value").addEventListener("keyup", updateFilter);
|
| 402 |
+
document.getElementById("filter-field2").addEventListener("change", updateFilter);
|
| 403 |
+
document.getElementById("filter-value2").addEventListener("keyup", updateFilter);
|
| 404 |
+
|
| 405 |
document.getElementById("filter-clear").addEventListener("click", function() {
|
| 406 |
fieldEl.value = "";
|
| 407 |
typeEl.value = "=";
|
| 408 |
valueEl.value = "";
|
| 409 |
+
fieldEl2.value = "";
|
| 410 |
+
valueEl2.value = "";
|
| 411 |
table.clearFilter();
|
| 412 |
});
|
| 413 |
+
|
| 414 |
function handleDownloadJson() {
|
| 415 |
var tableData = table.getData("active");
|
| 416 |
var jsonData = JSON.stringify(tableData, null, 2);
|
| 417 |
console.log("Данные для рассылки:", jsonData);
|
| 418 |
}
|
| 419 |
+
|
| 420 |
function handleTakeForYourself() {
|
| 421 |
var tableData = table.getData("active");
|
| 422 |
var jsonData = JSON.stringify(tableData, null, 2);
|
| 423 |
console.log("Данные для себя:", jsonData);
|
| 424 |
}
|
| 425 |
+
|
| 426 |
document.getElementById("download-json").addEventListener("click", handleDownloadJson);
|
| 427 |
document.getElementById("take-for-yourself").addEventListener("click", handleTakeForYourself);
|
| 428 |
})
|
| 429 |
.catch(error => console.error('Error fetching data:', error));
|
| 430 |
});
|
| 431 |
</script>
|
|
|
|
|
|
|
|
|
|
|
|
|
| 432 |
</body>
|
| 433 |
|
| 434 |
</html>
|