Split out feed parsing from document
WIP - still moving things around...
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
<?php
|
||||
|
||||
use BitBadger\Documents\DocumentException;
|
||||
use BitBadger\Documents\Field;
|
||||
use BitBadger\Documents\SQLite\Count;
|
||||
use BitBadger\Documents\SQLite\Delete;
|
||||
@@ -161,22 +162,19 @@ function delete_user(string $email): void
|
||||
try {
|
||||
$displayUser = display_user($email);
|
||||
|
||||
// Get the ID for the provided e-mail address
|
||||
// Get the user for the provided e-mail address
|
||||
$user = Security::findUserByEmail($email, $db);
|
||||
if (!$user) {
|
||||
printfn('No %s exists', $displayUser);
|
||||
return;
|
||||
}
|
||||
|
||||
$feedCount = Count::byField(Table::FEED, Field::EQ('user_id', $user->id));
|
||||
// $feedCountQuery = $db->prepare('SELECT COUNT(*) FROM feed WHERE user_id = :user');
|
||||
// $feedCountQuery->bindValue(':user', $user['id']);
|
||||
// $feedCountResult = $feedCountQuery->execute();
|
||||
// if (!$feedCountResult) {
|
||||
// printfn('SQLite error: %s', $db->lastErrorMsg());
|
||||
// return;
|
||||
// }
|
||||
// $feedCount = $feedCountResult->fetchArray(SQLITE3_NUM);
|
||||
try {
|
||||
$feedCount = Count::byFields(Table::FEED, [Field::EQ('user_id', $user->id)], $db);
|
||||
} catch (DocumentException $ex) {
|
||||
printfn("$ex");
|
||||
return;
|
||||
}
|
||||
|
||||
$proceed = readline("Delete the $displayUser and their $feedCount feed(s)? (y/N)" . PHP_EOL);
|
||||
if (!$proceed || !str_starts_with(strtolower($proceed), 'y')) {
|
||||
@@ -184,21 +182,19 @@ function delete_user(string $email): void
|
||||
return;
|
||||
}
|
||||
|
||||
$itemDelete = $db->prepare('DELETE FROM item WHERE feed_id IN (SELECT id FROM feed WHERE user_id = :user)');
|
||||
$itemDelete->bindValue(':user', $user->id);
|
||||
$itemDelete->execute();
|
||||
try {
|
||||
// TODO: convert query
|
||||
$itemDelete = $db->prepare('DELETE FROM item WHERE feed_id IN (SELECT id FROM feed WHERE user_id = :user)');
|
||||
$itemDelete->bindValue(':user', $user->id);
|
||||
$itemDelete->execute();
|
||||
|
||||
Delete::byField(Table::FEED, Field::EQ('user_id', $user['id']), $db);
|
||||
// $feedDelete = $db->prepare('DELETE FROM feed WHERE user_id = :user');
|
||||
// $feedDelete->bindValue(':user', $user['id']);
|
||||
// $feedDelete->execute();
|
||||
Delete::byFields(Table::FEED, [Field::EQ('user_id', $user->id)], $db);
|
||||
Delete::byId(Table::USER, $user->id, $db);
|
||||
|
||||
Delete::byId(Table::USER, $user->id, $db);
|
||||
// $userDelete = $db->prepare('DELETE FROM frc_user WHERE id = :user');
|
||||
// $userDelete->bindValue(':user', $user['id']);
|
||||
// $userDelete->execute();
|
||||
|
||||
printfn('%s deleted successfully', init_cap($displayUser));
|
||||
printfn('%s deleted successfully', init_cap($displayUser));
|
||||
} catch (DocumentException $ex) {
|
||||
printfn("$ex");
|
||||
}
|
||||
} finally {
|
||||
$db->close();
|
||||
}
|
||||
@@ -221,13 +217,10 @@ function migrate_single_user(): void
|
||||
|
||||
Patch::byId(Table::USER, $single->id,
|
||||
['email' => $argv[2], 'password' => password_hash($argv[3], Security::PW_ALGORITHM)], $db);
|
||||
// $migrateQuery = $db->prepare('UPDATE frc_user SET email = :email, password = :password WHERE id = :id');
|
||||
// $migrateQuery->bindValue(':email', $argv[2]);
|
||||
// $migrateQuery->bindValue(':password', password_hash($argv[3], Security::PW_ALGORITHM));
|
||||
// $migrateQuery->bindValue(':id', $single['id']);
|
||||
// $migrateQuery->execute();
|
||||
|
||||
printfn('The single user has been moved to "%s", with password "%s"', $argv[2], $argv[3]);
|
||||
} catch (DocumentException $ex) {
|
||||
printfn("$ex");
|
||||
} finally {
|
||||
$db->close();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user