<script type='application/javascript' src='../../js/extern/jquery.min.js'></script> <script type='application/javascript' src='../../js/extern/bootstrap.js'></script> <script type='application/javascript' src='../../js/extern/underscore-min.js'></script> <script type='application/javascript' src='../../js/extern/backbone-min.js'></script> </head> <body> <?php /* Setup and session verification */ require_once 'dbimport/Importer.php'; chdir('..'); require_once 'common.php'; require_once '../query/cacheProvider.php'; session_validate() or Config::error('403 Forbidden'); session_mayEdit() or Config::error('403 Forbidden'); //Parsing client data, and using Importer: $uId = $dbConnection->escape_string(session_getUid()); $merge = false; $fs = array(); $uploads = $_FILES['upload']; if (count($uploads['name']) === 1 && $uploads['name'][0] === '') { Config::error('No file given.'); echo '<h1>You need to select a file first.</h1>'; } else { while (count($uploads['name']) > 0) { array_push($fs, array('name' => array_pop($uploads['name']), 'path' => array_pop($uploads['tmp_name']))); } CacheProvider::cleanCache('../'); $log = Importer::processFiles($fs, $uId, $merge); echo '<ul><li>' . implode($log, '</li><li>') . '</li></ul>'; $tables = implode(',', Importer::findTables($fs)); $href = "../translate.php?tId=1&action=compareOriginal&tables={$tables}";
if (isset($_POST['mayEdit'])) { $mayE = $dbConnection->escape_string($_POST['mayEdit']); if ($mayE != '1') { $mayE = '0'; } $q = "UPDATE Edit_Users SET AccessEdit= {$mayE} WHERE UserId = {$userid}"; $dbConnection->query($q); echo "Updated edit access.\n"; } break; /* Parameters: userid */ /* Parameters: userid */ case 'delete': $userid = $dbConnection->escape_string($_POST['userid']); /* Checking that the user won't delete itself: */ if ($userid == session_getUid()) { Config::error("You cannot delete yourself, sorry."); } /* Deleting the user: */ $q = "DELETE FROM Edit_Users WHERE UserId = {$userid}"; $dbConnection->query($q); echo "Deleted user: {$userid}"; break; case 'export': $export = array(); $q = 'SELECT UserId, Login, Hash, AccessEdit, AccessTranslate FROM Edit_Users'; $set = $dbConnection->query($q); while ($row = $set->fetch_assoc()) { array_push($export, $row); } header("Pragma: public");
<?php } break; case 'updatePassword': if (session_validate()) { $newP = $_POST['new']; $confirm = $_POST['confirm']; if ($newP !== $confirm) { Config::error("New password doesn't match confirmation."); } $hash = password_hash($_POST['new'], PASSWORD_BCRYPT); if (!$hash) { //Fallback to md5 $hash = md5($_POST['new']); } $uid = session_getUid(); $q = "UPDATE Edit_Users SET Hash = '{$hash}' WHERE UserId = {$uid}"; $dbConnection->query($q); session_destroy(); header('LOCATION: index.php'); } else { Config::error('Invalid session!'); } break; case 'meanings': require_once 'meanings.php'; break; default: if (session_validate()) { if (session_mayEdit()) { header('LOCATION: userAccount.php');