Merge pull request #7435 from annando/select-to-array
Added "selectToArray" functions in DBA and Item
This commit is contained in:
commit
b5a9a1f1d3
|
@ -408,6 +408,23 @@ class DBA
|
||||||
return self::$database->selectFirst($table, $fields, $condition, $params);
|
return self::$database->selectFirst($table, $fields, $condition, $params);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Select rows from a table and fills an array with the data
|
||||||
|
*
|
||||||
|
* @param string $table Table name
|
||||||
|
* @param array $fields Array of selected fields, empty for all
|
||||||
|
* @param array $condition Array of fields for condition
|
||||||
|
* @param array $params Array of several parameters
|
||||||
|
*
|
||||||
|
* @return array Data array
|
||||||
|
* @throws \Exception
|
||||||
|
* @see self::select
|
||||||
|
*/
|
||||||
|
public static function selectToArray(string $table, array $fields = [], array $condition = [], array $params = [])
|
||||||
|
{
|
||||||
|
return self::$database->selectToArray($table, $fields, $condition, $params);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Select rows from a table
|
* @brief Select rows from a table
|
||||||
*
|
*
|
||||||
|
|
|
@ -1407,6 +1407,23 @@ class Database
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Select rows from a table and fills an array with the data
|
||||||
|
*
|
||||||
|
* @param string $table Table name
|
||||||
|
* @param array $fields Array of selected fields, empty for all
|
||||||
|
* @param array $condition Array of fields for condition
|
||||||
|
* @param array $params Array of several parameters
|
||||||
|
*
|
||||||
|
* @return array Data array
|
||||||
|
* @throws \Exception
|
||||||
|
* @see self::select
|
||||||
|
*/
|
||||||
|
public function selectToArray(string $table, array $fields = [], array $condition = [], array $params = [])
|
||||||
|
{
|
||||||
|
return $this->toArray($this->select($table, $fields, $condition, $params));
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Select rows from a table
|
* @brief Select rows from a table
|
||||||
*
|
*
|
||||||
|
|
|
@ -38,7 +38,7 @@ class Attach extends BaseObject
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Select rows from the attach table
|
* @brief Select rows from the attach table and return them as array
|
||||||
*
|
*
|
||||||
* @param array $fields Array of selected fields, empty for all
|
* @param array $fields Array of selected fields, empty for all
|
||||||
* @param array $conditions Array of fields for conditions
|
* @param array $conditions Array of fields for conditions
|
||||||
|
@ -47,16 +47,15 @@ class Attach extends BaseObject
|
||||||
* @return boolean|array
|
* @return boolean|array
|
||||||
*
|
*
|
||||||
* @throws \Exception
|
* @throws \Exception
|
||||||
* @see \Friendica\Database\DBA::select
|
* @see \Friendica\Database\DBA::selectToArray
|
||||||
*/
|
*/
|
||||||
public static function select(array $fields = [], array $conditions = [], array $params = [])
|
public static function selectToArray(array $fields = [], array $conditions = [], array $params = [])
|
||||||
{
|
{
|
||||||
if (empty($fields)) {
|
if (empty($fields)) {
|
||||||
$fields = self::getFields();
|
$fields = self::getFields();
|
||||||
}
|
}
|
||||||
|
|
||||||
$r = DBA::select('attach', $fields, $conditions, $params);
|
$r = DBA::selectToArray('attach', $fields, $conditions, $params);
|
||||||
return DBA::toArray($r);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -264,7 +263,7 @@ class Attach extends BaseObject
|
||||||
{
|
{
|
||||||
if (!is_null($img)) {
|
if (!is_null($img)) {
|
||||||
// get items to update
|
// get items to update
|
||||||
$items = self::select(['backend-class','backend-ref'], $conditions);
|
$items = self::selectToArray(['backend-class','backend-ref'], $conditions);
|
||||||
|
|
||||||
foreach($items as $item) {
|
foreach($items as $item) {
|
||||||
/** @var IStorage $backend_class */
|
/** @var IStorage $backend_class */
|
||||||
|
@ -297,7 +296,7 @@ class Attach extends BaseObject
|
||||||
public static function delete(array $conditions, array $options = [])
|
public static function delete(array $conditions, array $options = [])
|
||||||
{
|
{
|
||||||
// get items to delete data info
|
// get items to delete data info
|
||||||
$items = self::select(['backend-class','backend-ref'], $conditions);
|
$items = self::selectToArray(['backend-class','backend-ref'], $conditions);
|
||||||
|
|
||||||
foreach($items as $item) {
|
foreach($items as $item) {
|
||||||
/** @var IStorage $backend_class */
|
/** @var IStorage $backend_class */
|
||||||
|
|
|
@ -117,11 +117,9 @@ class Contact extends BaseObject
|
||||||
* @return array
|
* @return array
|
||||||
* @throws \Exception
|
* @throws \Exception
|
||||||
*/
|
*/
|
||||||
public static function select(array $fields = [], array $condition = [], array $params = [])
|
public static function selectToArray(array $fields = [], array $condition = [], array $params = [])
|
||||||
{
|
{
|
||||||
$statement = DBA::select('contact', $fields, $condition, $params);
|
return DBA::selectToArray('contact', $fields, $condition, $params);
|
||||||
|
|
||||||
return DBA::toArray($statement);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -368,6 +368,33 @@ class Item extends BaseObject
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Select rows from the item table and returns them as an array
|
||||||
|
*
|
||||||
|
* @param array $selected Array of selected fields, empty for all
|
||||||
|
* @param array $condition Array of fields for condition
|
||||||
|
* @param array $params Array of several parameters
|
||||||
|
*
|
||||||
|
* @return array
|
||||||
|
* @throws \Exception
|
||||||
|
*/
|
||||||
|
public static function selectToArray(array $fields = [], array $condition = [], $params = [])
|
||||||
|
{
|
||||||
|
$result = self::select($fields, $condition, $params);
|
||||||
|
|
||||||
|
if (is_bool($result)) {
|
||||||
|
return $result;
|
||||||
|
}
|
||||||
|
|
||||||
|
$data = [];
|
||||||
|
while ($row = self::fetch($result)) {
|
||||||
|
$data[] = $row;
|
||||||
|
}
|
||||||
|
DBA::close($result);
|
||||||
|
|
||||||
|
return $data;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Select rows from the item table
|
* @brief Select rows from the item table
|
||||||
*
|
*
|
||||||
|
|
|
@ -29,7 +29,7 @@ require_once "include/dba.php";
|
||||||
class Photo extends BaseObject
|
class Photo extends BaseObject
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* @brief Select rows from the photo table
|
* @brief Select rows from the photo table and returns them as array
|
||||||
*
|
*
|
||||||
* @param array $fields Array of selected fields, empty for all
|
* @param array $fields Array of selected fields, empty for all
|
||||||
* @param array $conditions Array of fields for conditions
|
* @param array $conditions Array of fields for conditions
|
||||||
|
@ -38,16 +38,15 @@ class Photo extends BaseObject
|
||||||
* @return boolean|array
|
* @return boolean|array
|
||||||
*
|
*
|
||||||
* @throws \Exception
|
* @throws \Exception
|
||||||
* @see \Friendica\Database\DBA::select
|
* @see \Friendica\Database\DBA::selectToArray
|
||||||
*/
|
*/
|
||||||
public static function select(array $fields = [], array $conditions = [], array $params = [])
|
public static function selectToArray(array $fields = [], array $conditions = [], array $params = [])
|
||||||
{
|
{
|
||||||
if (empty($fields)) {
|
if (empty($fields)) {
|
||||||
$fields = self::getFields();
|
$fields = self::getFields();
|
||||||
}
|
}
|
||||||
|
|
||||||
$r = DBA::select("photo", $fields, $conditions, $params);
|
return DBA::selectToArray('photo', $fields, $conditions, $params);
|
||||||
return DBA::toArray($r);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -89,7 +88,7 @@ class Photo extends BaseObject
|
||||||
$conditions["resource-id"] = $resourceid;
|
$conditions["resource-id"] = $resourceid;
|
||||||
$conditions["uid"] = $uid;
|
$conditions["uid"] = $uid;
|
||||||
|
|
||||||
return self::select([], $conditions, $params);
|
return self::selectToArray([], $conditions, $params);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -350,7 +349,7 @@ class Photo extends BaseObject
|
||||||
public static function delete(array $conditions, array $options = [])
|
public static function delete(array $conditions, array $options = [])
|
||||||
{
|
{
|
||||||
// get photo to delete data info
|
// get photo to delete data info
|
||||||
$photos = self::select(["backend-class","backend-ref"], $conditions);
|
$photos = self::selectToArray(['backend-class', 'backend-ref'], $conditions);
|
||||||
|
|
||||||
foreach($photos as $photo) {
|
foreach($photos as $photo) {
|
||||||
/** @var IStorage $backend_class */
|
/** @var IStorage $backend_class */
|
||||||
|
@ -380,7 +379,7 @@ class Photo extends BaseObject
|
||||||
{
|
{
|
||||||
if (!is_null($img)) {
|
if (!is_null($img)) {
|
||||||
// get photo to update
|
// get photo to update
|
||||||
$photos = self::select(["backend-class","backend-ref"], $conditions);
|
$photos = self::selectToArray(['backend-class', 'backend-ref'], $conditions);
|
||||||
|
|
||||||
foreach($photos as $photo) {
|
foreach($photos as $photo) {
|
||||||
/** @var IStorage $backend_class */
|
/** @var IStorage $backend_class */
|
||||||
|
|
|
@ -53,7 +53,7 @@ class Contact extends BaseAdminModule
|
||||||
|
|
||||||
$pager = new Pager($a->query_string, 30);
|
$pager = new Pager($a->query_string, 30);
|
||||||
|
|
||||||
$contacts = Model\Contact::select([], $condition, ['limit' => [$pager->getStart(), $pager->getItemsPerPage()]]);
|
$contacts = Model\Contact::selectToArray([], $condition, ['limit' => [$pager->getStart(), $pager->getItemsPerPage()]]);
|
||||||
|
|
||||||
$t = Renderer::getMarkupTemplate('admin/blocklist/contact.tpl');
|
$t = Renderer::getMarkupTemplate('admin/blocklist/contact.tpl');
|
||||||
$o = Renderer::replaceMacros($t, [
|
$o = Renderer::replaceMacros($t, [
|
||||||
|
|
|
@ -2176,7 +2176,7 @@ class DFRN
|
||||||
if (($entrytype == DFRN::TOP_LEVEL) && !empty($importer['id'])) {
|
if (($entrytype == DFRN::TOP_LEVEL) && !empty($importer['id'])) {
|
||||||
// The filling of the the "contact" variable is done for legcy reasons
|
// The filling of the the "contact" variable is done for legcy reasons
|
||||||
// The functions below are partly used by ostatus.php as well - where we have this variable
|
// The functions below are partly used by ostatus.php as well - where we have this variable
|
||||||
$contact = Contact::select([], ['id' => $importer['id']]);
|
$contact = Contact::selectFirst([], ['id' => $importer['id']]);
|
||||||
|
|
||||||
// Big question: Do we need these functions? They were part of the "consume_feed" function.
|
// Big question: Do we need these functions? They were part of the "consume_feed" function.
|
||||||
// This function once was responsible for DFRN and OStatus.
|
// This function once was responsible for DFRN and OStatus.
|
||||||
|
|
Loading…
Reference in a new issue