Source of file EqLogicRest.php
Size: 2,837 Bytes - Last Modified: 2020-10-24T02:46:31+00:00
/home/travis/build/NextDom/nextdom-core/src/Rest/EqLogicRest.php
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 | <?php /* * This file is part of the NextDom software (https://github.com/NextDom or http://nextdom.github.io). * Copyright (c) 2018 NextDom. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, version 2. * * This program is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. */ namespace NextDom\Rest; use NextDom\Managers\EqLogicManager; use NextDom\Model\Entity\EqLogic; /** * Class EqLogicRest * * @package NextDom\Rest */ class EqLogicRest { /** * Get all eqLogics * * @throws \Exception */ public static function getAll() { $eqLogics = EqLogicManager::all(); return self::prepareResults($eqLogics); } /** * Prepare result for response\n * Associative array with following keys : * - id * - name * - type (plugin id) * - objectId * - enable * - visible * - configuration * * @param EqLogic[] $eqLogics Array of eqLogics to convert * * @return array */ private static function prepareResults($eqLogics) { $result = []; foreach ($eqLogics as $eqLogic) { $eqLogicRow = []; $eqLogicRow['id'] = $eqLogic->getId(); $eqLogicRow['name'] = $eqLogic->getName(); $eqLogicRow['type'] = $eqLogic->getEqType_name(); $eqLogicRow['objectId'] = $eqLogic->getObject_id(); $eqLogicRow['enable'] = $eqLogic->isEnabled(); $eqLogicRow['visible'] = $eqLogic->isVisible(); $eqLogicRow['configuration'] = $eqLogic->getConfiguration(); $result[] = $eqLogicRow; } return $result; } /** * Get all eqLogics in room * * @param int $roomId Id of the room * * @return array List of eqLogics data in the room * * @throws \Exception */ public static function getByRoom(int $roomId) { $eqLogics = EqLogicManager::byObjectId($roomId); return self::prepareResults($eqLogics); } /** * Get all visibles eqLogics in room * * @param int $roomId Id of the room * * @return array List of eqLogics data in the room * * @throws \Exception */ public static function getVisibleByRoom(int $roomId) { $eqLogics = EqLogicManager::byObjectId($roomId, true, true); return self::prepareResults($eqLogics); } } |