[enh] adding offsetAndCount() cleanup function

This commit is contained in:
Benjamin Sonntag 2015-01-12 20:26:51 +01:00
parent a1a49955c2
commit 25fdd2c7eb
4 changed files with 23 additions and 31 deletions

View File

@ -39,6 +39,25 @@ class Alternc_Api_Legacyobject {
return new Alternc_Api_Response(array("code" => self::ERR_ALTERNC_FUNCTION, "message" => "[" . $err->clsid . "] " . $err->error));
}
/** ensure that offset & count are set properly from $options.
*/
protected function offsetAndCount($options, $max) {
$offset = -1;
$count = -1;
if (isset($options["count"]))
$count = intval($options["count"]);
if (isset($options["offset"]))
$offset = intval($options["offset"]);
if ($offset != -1 || $count != -1) {
if ($offset < 0 || $offset > $max)
$offset = 0;
if ($count < 0 || $count > 1000)
$count = 1000;
}
return array($offset, $count);
}
}
/* Aternc_Api_Legacyobject */
// Aternc_Api_Legacyobject

View File

@ -171,17 +171,8 @@ class Alternc_Api_Object_Account extends Alternc_Api_Legacyobject {
if (!$result) {
return $this->alterncLegacyErrorManager();
} else {
$offset = -1;
$count = -1;
if (isset($options["count"]))
$count = intval($options["count"]);
if (isset($options["offset"]))
$offset = intval($options["offset"]);
list($offset, $count) = $this->offsetAndCount($options, count($result));
if ($offset != -1 || $count != -1) {
if ($offset < 0 || $offset > count($result))
$offset = 0;
if ($count < 0 || $count > 1000)
$count = 1000;
$result = array_slice($result, $offset, $count);
}
return new Alternc_Api_Response(array("content" => $result));

View File

@ -44,17 +44,8 @@ class Alternc_Api_Object_Domain extends Alternc_Api_Legacyobject {
while ($me = $stmt->fetch(PDO::FETCH_OBJ)) {
$result[$me->domaine] = $me;
}
$offset = -1;
$count = -1;
if (isset($options["count"]))
$count = intval($options["count"]);
if (isset($options["offset"]))
$offset = intval($options["offset"]);
list($offset,$count)=$this->offsetAndCount($options, count($result));
if ($offset != -1 || $count != -1) {
if ($offset < 0 || $offset > count($result))
$offset = 0;
if ($count < 0 || $count > 1000)
$count = 1000;
$result = array_slice($result, $offset, $count);
}
return new Alternc_Api_Response(array("content" => $result));

View File

@ -96,17 +96,8 @@ class Alternc_Api_Object_Ftp extends Alternc_Api_Legacyobject {
if (!$result) {
return $this->alterncLegacyErrorManager();
} else {
$offset = -1;
$count = -1;
if (isset($options["count"]))
$count = intval($options["count"]);
if (isset($options["offset"]))
$offset = intval($options["offset"]);
list($offset, $count) = $this->offsetAndCount($options, count($result));
if ($offset != -1 || $count != -1) {
if ($offset < 0 || $offset > count($result))
$offset = 0;
if ($count < 0 || $count > 1000)
$count = 1000;
$result = array_slice($result, $offset, $count);
}
return new Alternc_Api_Response(array("content" => $result));