mirror of
https://framagit.org/hubzilla/core.git
synced 2026-06-21 00:52:33 -04:00
allow zotfinger to recurse through all known hublocs if the one we got does not exist (404) or got removed (410). add functions for updating tables from array and deleting hublocs.
This commit is contained in:
@@ -3592,6 +3592,45 @@ function create_table_from_array($table, $arr, $binary_fields = []) {
|
||||
return $r;
|
||||
}
|
||||
|
||||
|
||||
function update_table_from_array($table, $arr, $where, $binary_fields = []) {
|
||||
|
||||
if (! ($arr && $table)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
$columns = db_columns($table);
|
||||
|
||||
$clean = [];
|
||||
foreach ($arr as $k => $v) {
|
||||
if (! in_array($k, $columns)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$matches = false;
|
||||
if (preg_match('/([^a-zA-Z0-9\-\_\.])/', $k, $matches)) {
|
||||
return false;
|
||||
}
|
||||
if (in_array($k, $binary_fields)) {
|
||||
$clean[$k] = dbescbin($v);
|
||||
} else {
|
||||
$clean[$k] = dbesc($v);
|
||||
}
|
||||
}
|
||||
|
||||
$sql = "UPDATE " . TQUOT . $table . TQUOT . " SET ";
|
||||
|
||||
foreach ($clean as $k => $v) {
|
||||
$sql .= TQUOT . $k . TQUOT . ' = "' . $v . '",';
|
||||
}
|
||||
|
||||
$sql = rtrim($sql,',');
|
||||
|
||||
$r = dbq($sql . " WHERE " . $where);
|
||||
|
||||
return $r;
|
||||
}
|
||||
|
||||
function share_shield($m) {
|
||||
return str_replace($m[1],'!=+=+=!' . base64url_encode($m[1]) . '=+!=+!=',$m[0]);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user