Mercurial > hg > fapweb
comparison admajax.php @ 1092:95b74632cfe2
Rename votekeys table to userkeys, and all related variables and settings.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Thu, 26 Jan 2017 13:38:19 +0200 |
parents | c4b93729269d |
children | 0a2117349f46 0eca3f1b1d48 |
comparison
equal
deleted
inserted
replaced
1091:c4b93729269d | 1092:95b74632cfe2 |
---|---|
378 if ($tr) | 378 if ($tr) |
379 echo " </div>\n"; | 379 echo " </div>\n"; |
380 } | 380 } |
381 | 381 |
382 | 382 |
383 function stGetVoteKeyClass($item) | 383 function stGetUserKeyClass($item) |
384 { | 384 { |
385 global $setVoteKeyMode; | 385 global $setUserKeyMode; |
386 | 386 |
387 switch ($setVoteKeyMode) | 387 switch ($setUserKeyMode) |
388 { | 388 { |
389 case VOTE_FREELY: | 389 case VOTE_FREELY: |
390 $cond = 0; | 390 $cond = 0; |
391 break; | 391 break; |
392 | 392 |
398 $cond = $item["key_id"] > 0; | 398 $cond = $item["key_id"] > 0; |
399 break; | 399 break; |
400 } | 400 } |
401 | 401 |
402 return | 402 return |
403 "votekey ".($cond ? "vkeyActive" : "vkeyInactive"). | 403 "userkey ".($cond ? "vkeyActive" : "vkeyInactive"). |
404 " ".($item["nvotes"] > 0 ? "vkeyUsed" : "vkeyUnused"); | 404 " ".($item["nvotes"] > 0 ? "vkeyUsed" : "vkeyUnused"); |
405 } | 405 } |
406 | 406 |
407 | 407 |
408 function stGetVoteKeyInfo() | 408 function stGetUserKeyInfo() |
409 { | 409 { |
410 $nkeys = stFetchSQLColumn("SELECT COUNT(*) FROM votekeys WHERE active=1"); | 410 $nkeys = stFetchSQLColumn("SELECT COUNT(*) FROM userkeys WHERE active=1"); |
411 $totalKeys = stFetchSQLColumn("SELECT COUNT(*) FROM votekeys"); | 411 $totalKeys = stFetchSQLColumn("SELECT COUNT(*) FROM userkeys"); |
412 | 412 |
413 $nvoters = stFetchSQLColumn("SELECT COUNT(DISTINCT(key_id)) FROM votes"); | 413 $nvoters = stFetchSQLColumn("SELECT COUNT(DISTINCT(key_id)) FROM votes"); |
414 | 414 |
415 return | 415 return |
416 "Info: <b>".$nkeys."</b> of <b>".$totalKeys."</b> votekeys are activated. ". | 416 "Info: <b>".$nkeys."</b> of <b>".$totalKeys."</b> userkeys are activated. ". |
417 "Also, <b>".$nvoters."</b> keys have been used for voting."; | 417 "Also, <b>".$nvoters."</b> keys have been used for voting."; |
418 } | 418 } |
419 | 419 |
420 | 420 |
421 function stGetVoteKeyItemData($id, $item, $prefix) | 421 function stGetUserKeyItemData($id, $item, $prefix) |
422 { | 422 { |
423 global $setVoteKeyMode, $setVoteKeyLen; | 423 global $setUserKeyMode, $setUserKeyLen; |
424 | 424 |
425 switch ($setVoteKeyMode) | 425 switch ($setUserKeyMode) |
426 { | 426 { |
427 case VOTE_FREELY: | 427 case VOTE_FREELY: |
428 case VOTE_ACTIVATE: | 428 case VOTE_ACTIVATE: |
429 $klen = $setVoteKeyLen - strlen($item["key"]); | 429 $klen = $setUserKeyLen - strlen($item["key"]); |
430 $str = sprintf( | 430 $str = sprintf( |
431 "<span class=\"keyid\">%03d</span> : ". | 431 "<span class=\"keyid\">%03d</span> : ". |
432 "<span class=\"keycode\">%s</span>", | 432 "<span class=\"keycode\">%s</span>", |
433 $id, | 433 $id, |
434 (($klen > 0) ? str_repeat(" ", $klen) : "").$item["key"]); | 434 (($klen > 0) ? str_repeat(" ", $klen) : "").$item["key"]); |
435 | 435 |
436 if ($setVoteKeyMode == VOTE_ACTIVATE) | 436 if ($setUserKeyMode == VOTE_ACTIVATE) |
437 { | 437 { |
438 $str .= stGetFormCheckBoxInput("active", $id, $prefix, $item["active"], FALSE, | 438 $str .= stGetFormCheckBoxInput("active", $id, $prefix, $item["active"], FALSE, |
439 "class=\"keyactive\" onChange=\"voteKeySetActive(".$id.")\"", ""); | 439 "class=\"keyactive\" onChange=\"userKeySetActive(".$id.")\"", ""); |
440 } | 440 } |
441 | 441 |
442 return $str; | 442 return $str; |
443 | 443 |
444 case VOTE_ASSIGN: | 444 case VOTE_ASSIGN: |
445 $str = | 445 $str = |
446 " <td class=\"name\">".chentities($item["name"])."</td>\n". | 446 " <td class=\"name\">".chentities($item["name"])."</td>\n". |
447 " <td class=\"groups\">".chentities($item["groups"])."</td>\n". | 447 " <td class=\"groups\">".chentities($item["groups"])."</td>\n". |
448 " <td class=\"vkeynum\">". | 448 " <td class=\"vkeynum\">". |
449 stGetFormTextInput(5, 5, "key_id", $id, $prefix, $item["key_id"]). | 449 stGetFormTextInput(5, 5, "key_id", $id, $prefix, $item["key_id"]). |
450 stGetFormButtonInput("assign", $id, $prefix, "Set", "voteKeyAssign(".$id.",1)"); | 450 stGetFormButtonInput("assign", $id, $prefix, "Set", "userKeyAssign(".$id.",1)"); |
451 | 451 |
452 if ($item["key_id"] != 0) | 452 if ($item["key_id"] != 0) |
453 $str .= stGetFormButtonInput("clear", $id, $prefix, "Clear", "voteKeyAssign(".$id.",0)"); | 453 $str .= stGetFormButtonInput("clear", $id, $prefix, "Clear", "userKeyAssign(".$id.",0)"); |
454 | 454 |
455 $str .= | 455 $str .= |
456 "</td>\n". | 456 "</td>\n". |
457 " <td class=\"vkey\">"; | 457 " <td class=\"vkey\">"; |
458 | 458 |
804 stReloadSettings(); | 804 stReloadSettings(); |
805 stReloadDisplayVars(); | 805 stReloadDisplayVars(); |
806 stSessionExpire(SESS_ADMIN, FALSE); | 806 stSessionExpire(SESS_ADMIN, FALSE); |
807 | 807 |
808 | 808 |
809 $setVoteKeyMode = stGetSetting("voteKeyMode"); | 809 $setUserKeyMode = stGetSetting("userKeyMode"); |
810 $setVoteKeyLen = stGetSetting("userKeyLength"); | 810 $setUserKeyLen = stGetSetting("userKeyLength"); |
811 $type = stGetRequestItem("type", ""); | 811 $type = stGetRequestItem("type", ""); |
812 switch (stGetRequestItem("action", "")) | 812 switch (stGetRequestItem("action", "")) |
813 { | 813 { |
814 case "upload": | 814 case "upload": |
815 // | 815 // |
1404 stPrintAttendee($res, -1, FALSE, TRUE, stGetRequestItem("edit", FALSE)); | 1404 stPrintAttendee($res, -1, FALSE, TRUE, stGetRequestItem("edit", FALSE)); |
1405 else | 1405 else |
1406 stError("No such attendee ID!"); | 1406 stError("No such attendee ID!"); |
1407 break; | 1407 break; |
1408 | 1408 |
1409 case "votekeyinfo": | 1409 case "userkeyinfo": |
1410 echo stGetVoteKeyInfo(); | 1410 echo stGetUserKeyInfo(); |
1411 break; | 1411 break; |
1412 | 1412 |
1413 case "votekey": | 1413 case "userkey": |
1414 case "votekeyclass": | 1414 case "userkeyclass": |
1415 switch ($setVoteKeyMode) | 1415 switch ($setUserKeyMode) |
1416 { | 1416 { |
1417 case VOTE_FREELY: | 1417 case VOTE_FREELY: |
1418 case VOTE_ACTIVATE: | 1418 case VOTE_ACTIVATE: |
1419 $sql = stPrepareSQL("SELECT (SELECT COUNT(id) FROM votes WHERE key_id=%D) AS nvotes,votekeys.* FROM votekeys WHERE id=%D", "id", "id"); | 1419 $sql = stPrepareSQL("SELECT (SELECT COUNT(id) FROM votes WHERE key_id=%D) AS nvotes,userkeys.* FROM userkeys WHERE id=%D", "id", "id"); |
1420 break; | 1420 break; |
1421 | 1421 |
1422 case VOTE_ASSIGN: | 1422 case VOTE_ASSIGN: |
1423 $sql = stPrepareSQL("SELECT (SELECT COUNT(id) FROM votes WHERE key_id=%D) AS nvotes,votekeys.key,attendees.* FROM attendees ". | 1423 $sql = stPrepareSQL("SELECT (SELECT COUNT(id) FROM votes WHERE key_id=%D) AS nvotes,userkeys.key,attendees.* FROM attendees ". |
1424 "LEFT JOIN votekeys ON votekeys.id=attendees.key_id ". | 1424 "LEFT JOIN userkeys ON userkeys.id=attendees.key_id ". |
1425 "WHERE attendees.id=%D", "id", "id"); | 1425 "WHERE attendees.id=%D", "id", "id"); |
1426 break; | 1426 break; |
1427 } | 1427 } |
1428 if (($res = stFetchSQL($sql)) !== FALSE) | 1428 if (($res = stFetchSQL($sql)) !== FALSE) |
1429 { | 1429 { |
1430 if ($type == "votekeyclass") | 1430 if ($type == "userkeyclass") |
1431 echo stGetVoteKeyClass($res); | 1431 echo stGetUserKeyClass($res); |
1432 else | 1432 else |
1433 echo stGetVoteKeyItemData($res["id"], $res, "vk"); | 1433 echo stGetUserKeyItemData($res["id"], $res, "vk"); |
1434 } | 1434 } |
1435 break; | 1435 break; |
1436 | 1436 |
1437 case "voters": | 1437 case "voters": |
1438 // Generate vote keys, if needed | 1438 // Generate user keys, if needed |
1439 $numVKeys = stFetchSQLColumn("SELECT COUNT(*) FROM votekeys"); | 1439 $numVKeys = stFetchSQLColumn("SELECT COUNT(*) FROM userkeys"); |
1440 $numUsers = stFetchSQLColumn("SELECT COUNT(*) FROM attendees"); | 1440 $numUsers = stFetchSQLColumn("SELECT COUNT(*) FROM attendees"); |
1441 if (($tmp = stGetSetting("maxAttendeesHard")) > $numUsers) | 1441 if (($tmp = stGetSetting("maxAttendeesHard")) > $numUsers) |
1442 $numUsers = $tmp; | 1442 $numUsers = $tmp; |
1443 else | 1443 else |
1444 if (($tmp = stGetSetting("maxAttendeesSoft")) > $numUsers) | 1444 if (($tmp = stGetSetting("maxAttendeesSoft")) > $numUsers) |
1446 | 1446 |
1447 while ($numVKeys <= $numUsers) | 1447 while ($numVKeys <= $numUsers) |
1448 { | 1448 { |
1449 if (($key = stGenerateUserKey()) !== false) | 1449 if (($key = stGenerateUserKey()) !== false) |
1450 { | 1450 { |
1451 if (stExecSQL(stPrepareSQL("INSERT INTO votekeys (key) VALUES (%s)", $key)) !== false) | 1451 if (stExecSQL(stPrepareSQL("INSERT INTO userkeys (key) VALUES (%s)", $key)) !== false) |
1452 $numVKeys++; | 1452 $numVKeys++; |
1453 } | 1453 } |
1454 } | 1454 } |
1455 | 1455 |
1456 // Some information | 1456 // Some information |
1457 echo | 1457 echo |
1458 "<div class=\"tabHeadersSub\">\n". | 1458 "<div class=\"tabHeadersSub\">\n". |
1459 " <a href=\"print.php?type=votekeys\" target=\"_blank\">Show printable key list</a>\n". | 1459 " <a href=\"print.php?type=userkeys\" target=\"_blank\">Show printable key list</a>\n". |
1460 " <a href=\"print.php?type=results&flags=".(RFLAG_NORMAL)."\" target=\"_blank\">Printable results</a>\n". | 1460 " <a href=\"print.php?type=results&flags=".(RFLAG_NORMAL)."\" target=\"_blank\">Printable results</a>\n". |
1461 " <a href=\"print.php?type=results&flags=".(RFLAG_DISQUALIFIED)."\" target=\"_blank\">Printable full results</a> (shows also disqualified entries)\n". | 1461 " <a href=\"print.php?type=results&flags=".(RFLAG_DISQUALIFIED)."\" target=\"_blank\">Printable full results</a> (shows also disqualified entries)\n". |
1462 " <a href=\"print.php?type=results&flags=".(RFLAG_DISQUALIFIED | RFLAG_HIDDEN_COMPOS)."\" target=\"_blank\">Printable FULL results</a> (shows also hidden and empty compos)\n". | 1462 " <a href=\"print.php?type=results&flags=".(RFLAG_DISQUALIFIED | RFLAG_HIDDEN_COMPOS)."\" target=\"_blank\">Printable FULL results</a> (shows also hidden and empty compos)\n". |
1463 " <div id=\"vkeyInfo\">".stGetVoteKeyInfo()."</div>\n". | 1463 " <div id=\"vkeyInfo\">".stGetUserKeyInfo()."</div>\n". |
1464 "</div>\n"; | 1464 "</div>\n"; |
1465 | 1465 |
1466 echo | 1466 echo |
1467 "<div class=\"info\"><b>Voting mode: "; | 1467 "<div class=\"info\">". |
1468 "User key length ".stGetSetting("userKeyLength")." ". | |
1469 "<b>Voting mode: "; | |
1468 | 1470 |
1469 if (isset($voteModeData[$setVoteKeyMode])) | 1471 if (isset($voteModeData[$setUserKeyMode])) |
1470 echo $voteModeData[$setVoteKeyMode][0]."</b>. ".$voteModeData[$setVoteKeyMode][1]; | 1472 echo $voteModeData[$setUserKeyMode][0]."</b>. ".$voteModeData[$setUserKeyMode][1]; |
1471 else | 1473 else |
1472 echo "VOTE MODE NOT SET! CHECK CONFIGURATION!</b>"; | 1474 echo "VOTE MODE NOT SET! CHECK CONFIGURATION!</b>"; |
1473 | 1475 |
1474 echo "</div>\n"; | 1476 echo "</div>\n"; |
1475 | 1477 |
1476 // List of votekeys | 1478 // List of userkeys |
1477 switch ($setVoteKeyMode) | 1479 switch ($setUserKeyMode) |
1478 { | 1480 { |
1479 case VOTE_FREELY: | 1481 case VOTE_FREELY: |
1480 case VOTE_ACTIVATE: | 1482 case VOTE_ACTIVATE: |
1481 $sql = "SELECT votekeys.*,COUNT(votes.id) AS nvotes FROM votekeys ". | 1483 $sql = "SELECT userkeys.*,COUNT(votes.id) AS nvotes FROM userkeys ". |
1482 "LEFT JOIN votes ON votes.key_id=votekeys.id ". | 1484 "LEFT JOIN votes ON votes.key_id=userkeys.id ". |
1483 "GROUP BY votekeys.id ". | 1485 "GROUP BY userkeys.id ". |
1484 "ORDER BY votekeys.id ASC"; | 1486 "ORDER BY userkeys.id ASC"; |
1485 | 1487 |
1486 foreach (stExecSQL($sql) as $item) | 1488 foreach (stExecSQL($sql) as $item) |
1487 { | 1489 { |
1488 echo | 1490 echo |
1489 "<div class=\"".stGetVoteKeyClass($item). | 1491 "<div class=\"".stGetUserKeyClass($item). |
1490 "\" id=\"vkey".$item["id"]."\">". | 1492 "\" id=\"vkey".$item["id"]."\">". |
1491 stGetVoteKeyItemData($item["id"], $item, "vk"). | 1493 stGetUserKeyItemData($item["id"], $item, "vk"). |
1492 "</div>\n"; | 1494 "</div>\n"; |
1493 } | 1495 } |
1494 break; | 1496 break; |
1495 | 1497 |
1496 case VOTE_ASSIGN: | 1498 case VOTE_ASSIGN: |
1497 $sql = "SELECT votekeys.*,attendees.*,COUNT(votes.id) AS nvotes FROM attendees ". | 1499 $sql = "SELECT userkeys.*,attendees.*,COUNT(votes.id) AS nvotes FROM attendees ". |
1498 "LEFT JOIN votekeys ON votekeys.id=attendees.key_id ". | 1500 "LEFT JOIN userkeys ON userkeys.id=attendees.key_id ". |
1499 "LEFT JOIN votes ON votes.key_id=attendees.key_id ". | 1501 "LEFT JOIN votes ON votes.key_id=attendees.key_id ". |
1500 "GROUP BY votekeys.id ". | 1502 "GROUP BY userkeys.id ". |
1501 "ORDER BY attendees.regtime DESC"; | 1503 "ORDER BY attendees.regtime DESC"; |
1502 | 1504 |
1503 echo | 1505 echo |
1504 "<table class=\"attendees\">\n". | 1506 "<table class=\"attendees\">\n". |
1505 " <tr>\n". | 1507 " <tr>\n". |
1506 " <th class=\"name\">Name</th>\n". | 1508 " <th class=\"name\">Name</th>\n". |
1507 " <th class=\"groups\">Groups</th>\n". | 1509 " <th class=\"groups\">Groups</th>\n". |
1508 " <th class=\"vkeynum\">Key #</th>\n". | 1510 " <th class=\"vkeynum\">Key #</th>\n". |
1509 " <th class=\"vkey\">Votekey</th>\n". | 1511 " <th class=\"vkey\">Userkey</th>\n". |
1510 " </tr>\n"; | 1512 " </tr>\n"; |
1511 | 1513 |
1512 $index = 0; | 1514 $index = 0; |
1513 foreach (stExecSQL($sql) as $item) | 1515 foreach (stExecSQL($sql) as $item) |
1514 { | 1516 { |
1515 echo | 1517 echo |
1516 " <tr class=\"".stGetVoteKeyClass($item). | 1518 " <tr class=\"".stGetUserKeyClass($item). |
1517 "\" id=\"vkey".$item["id"]."\">\n". | 1519 "\" id=\"vkey".$item["id"]."\">\n". |
1518 stGetVoteKeyItemData($item["id"], $item, "vk"). | 1520 stGetUserKeyItemData($item["id"], $item, "vk"). |
1519 " </tr>\n"; | 1521 " </tr>\n"; |
1520 } | 1522 } |
1521 | 1523 |
1522 echo | 1524 echo |
1523 "</table>\n"; | 1525 "</table>\n"; |
1714 if (($attn = stFetchSQL($sql)) !== false) | 1716 if (($attn = stFetchSQL($sql)) !== false) |
1715 { | 1717 { |
1716 $sql = stPrepareSQL("DELETE FROM attendees WHERE id=%d", $id); | 1718 $sql = stPrepareSQL("DELETE FROM attendees WHERE id=%d", $id); |
1717 stExecSQLCond($sql, "OK, attendee ".$id." deleted."); | 1719 stExecSQLCond($sql, "OK, attendee ".$id." deleted."); |
1718 | 1720 |
1719 // If assigned votekey mode, delete the key and votes as well | 1721 // If assigned userkey mode, delete the key and votes as well |
1720 if ($setVoteKeyMode == VOTE_ASSIGN && $attn["key_id"] != 0) | 1722 if ($setUserKeyMode == VOTE_ASSIGN && $attn["key_id"] != 0) |
1721 { | 1723 { |
1722 $sql = stPrepareSQL("DELETE FROM votekeys WHERE id=%d", $attn["key_id"]); | 1724 $sql = stPrepareSQL("DELETE FROM userkeys WHERE id=%d", $attn["key_id"]); |
1723 stExecSQLCond($sql, "OK, attendee ".$id." votekey deleted."); | 1725 stExecSQLCond($sql, "OK, attendee ".$id." userkey deleted."); |
1724 | 1726 |
1725 $sql = stPrepareSQL("DELETE FROM votes WHERE key_id=%d", $attn["key_id"]); | 1727 $sql = stPrepareSQL("DELETE FROM votes WHERE key_id=%d", $attn["key_id"]); |
1726 stExecSQLCond($sql, "OK, attendee ".$id." votes deleted."); | 1728 stExecSQLCond($sql, "OK, attendee ".$id." votes deleted."); |
1727 } | 1729 } |
1728 } | 1730 } |
1746 "DELETE FROM compos WHERE id=".$id, | 1748 "DELETE FROM compos WHERE id=".$id, |
1747 "OK, compo ".$id." deleted."); | 1749 "OK, compo ".$id." deleted."); |
1748 } | 1750 } |
1749 } | 1751 } |
1750 else | 1752 else |
1751 if ($type == "votekeys") | 1753 if ($type == "userkeys") |
1752 { | 1754 { |
1753 $sql = stPrepareSQL("DELETE FROM votekeys"); | 1755 $sql = stPrepareSQL("DELETE FROM userkeys"); |
1754 stExecSQLCond($sql, "OK, all votekeys purged"); | 1756 stExecSQLCond($sql, "OK, all userkeys purged"); |
1755 } | 1757 } |
1756 | 1758 |
1757 stDBCommitTransaction(); | 1759 stDBCommitTransaction(); |
1758 break; | 1760 break; |
1759 | 1761 |
1938 } | 1940 } |
1939 } | 1941 } |
1940 stDBCommitTransaction(); | 1942 stDBCommitTransaction(); |
1941 break; | 1943 break; |
1942 | 1944 |
1943 case "votekey": | 1945 case "userkey": |
1944 // | 1946 // |
1945 // Votekey activation/deactivation handling | 1947 // Userkey activation/deactivation handling |
1946 // | 1948 // |
1947 stDBBeginTransaction(); | 1949 stDBBeginTransaction(); |
1948 if (stChkRequestItem("id", $id, array(CHK_TYPE, VT_INT, "Invalid data."))) | 1950 if (stChkRequestItem("id", $id, array(CHK_TYPE, VT_INT, "Invalid data."))) |
1949 { | 1951 { |
1950 switch ($type) | 1952 switch ($type) |
1951 { | 1953 { |
1952 case "assign": | 1954 case "assign": |
1953 // Check if already assigned to someone .. | 1955 // Check if already assigned to someone .. |
1954 $key_id = intval(stGetRequestItem("key_id", 0)); | 1956 $key_id = intval(stGetRequestItem("key_id", 0)); |
1955 $sql = stPrepareSQL("SELECT * FROM votekeys WHERE id=%d", $key_id); | 1957 $sql = stPrepareSQL("SELECT * FROM userkeys WHERE id=%d", $key_id); |
1956 if (stFetchSQL($sql) === false) | 1958 if (stFetchSQL($sql) === false) |
1957 stError("Invalid key ID #."); | 1959 stError("Invalid key ID #."); |
1958 else | 1960 else |
1959 { | 1961 { |
1960 $sql = stPrepareSQL("SELECT * FROM attendees WHERE key_id=%d", $key_id); | 1962 $sql = stPrepareSQL("SELECT * FROM attendees WHERE key_id=%d", $key_id); |
1974 stExecSQLCond($sql, "Assigned key cleared."); | 1976 stExecSQLCond($sql, "Assigned key cleared."); |
1975 break; | 1977 break; |
1976 | 1978 |
1977 case "active": | 1979 case "active": |
1978 // Autobots activate! | 1980 // Autobots activate! |
1979 $sql = stPrepareSQL("UPDATE votekeys SET active=%B WHERE id=%d", "active", $id); | 1981 $sql = stPrepareSQL("UPDATE userkeys SET active=%B WHERE id=%d", "active", $id); |
1980 stExecSQLCond($sql, "Votekey status changed."); | 1982 stExecSQLCond($sql, "Userkey status changed."); |
1981 break; | 1983 break; |
1982 } | 1984 } |
1983 } | 1985 } |
1984 stDBCommitTransaction(); | 1986 stDBCommitTransaction(); |
1985 break; | 1987 break; |