Skip to content

Commit

Permalink
Fixed bugs on app deletion and notification for shared access on dele…
Browse files Browse the repository at this point in the history
…tion.
  • Loading branch information
nthnn committed Jul 29, 2024
1 parent a4317d5 commit 16cf29a
Showing 1 changed file with 46 additions and 15 deletions.
61 changes: 46 additions & 15 deletions controller/apps.php
Original file line number Diff line number Diff line change
Expand Up @@ -494,24 +494,11 @@ public static function unshareApp($originId, $apiKey, $email) {
$appName = mysqli_fetch_row($res)[0];
freeDBQuery($res);

$res = mysqli_query(
$db_conn,
"SELECT username FROM accounts WHERE id=".$subjectId
);

if(mysqli_num_rows($res) != 1) {
Response::failedMessage("Something went wrong.");
return;
}

$username = mysqli_fetch_row($res)[0];
freeDBQuery($res);

shell_exec(
"..".DIRECTORY_SEPARATOR.
"bin".DIRECTORY_SEPARATOR.
"notifier remove \"".
$username."\" \"".
Account::getUsername($originId)."\" \"".
$appName."\" \"".
$email."\""
);
Expand Down Expand Up @@ -546,7 +533,51 @@ public static function deleteApp($originId, $apiKey, $username, $password) {
while($row = mysqli_fetch_row($res))
unlink("..".DIRECTORY_SEPARATOR ."drive".DIRECTORY_SEPARATOR.$row[0].".zip");
freeDBQuery($res);


$res = mysqli_query(
$db_conn,
"SELECT DISTINCT a.email FROM accounts a ".
"JOIN shared_access sa ON sa.friend=a.id ".
"WHERE sa.app_key=\"".$apiKey."\";"
);

if(mysqli_num_rows($res) > 0) {
$sharedAccess = mysqli_fetch_array($res);
freeDBQuery($res);
error_log(join(", ", $sharedAccess));

$res = mysqli_query(
$db_conn,
"SELECT name FROM app WHERE app_key=\"".$apiKey."\""
);

if(mysqli_num_rows($res) != 1) {
Response::failedMessage("Something went wrong.");
return;
}

$appName = mysqli_fetch_row($res)[0];
freeDBQuery($res);

foreach($sharedAccess as $email)
shell_exec(
"..".DIRECTORY_SEPARATOR.
"bin".DIRECTORY_SEPARATOR.
"notifier deletion \"".
$username."\" \"".
$appName."\" \"".
$email."\""
);
}
else freeDBQuery($res);

freeDBQuery(
mysqli_query(
$db_conn,
"DELETE FROM shared_access WHERE app_key=\"".$apiKey."\""
)
);

$tables = [
"_accounts", "_database", "_data_analytics_id",
"_data_analytics_page", "_data_analytics_track",
Expand Down

0 comments on commit 16cf29a

Please sign in to comment.