public static function getSession() { if (!isset(self::$persistentSession)) { self::$persistentSession = new ezcPersistentSession(ezcDbInstance::get(), new ezcPersistentCodeManager('./extension/xmppservice/pos')); } return self::$persistentSession; }
public static function getList($paramsSearch = array()) { $paramsDefault = array('limit' => 32, 'offset' => 0); $params = array_merge($paramsDefault, $paramsSearch); $session = erLhcoreClassExtensionXmppservice::getSession(); $q = $session->createFindQuery('erLhcoreClassModelXMPPAccount'); $conditions = array(); if (isset($params['filter']) && count($params['filter']) > 0) { foreach ($params['filter'] as $field => $fieldValue) { $conditions[] = $q->expr->eq($field, $q->bindValue($fieldValue)); } } if (isset($params['filterlike']) && count($params['filterlike']) > 0) { foreach ($params['filterlike'] as $field => $fieldValue) { $conditions[] = $q->expr->like($field, $q->bindValue($fieldValue . '%')); } } if (isset($params['filterin']) && count($params['filterin']) > 0) { foreach ($params['filterin'] as $field => $fieldValue) { $conditions[] = $q->expr->in($field, $fieldValue); } } if (isset($params['filterlt']) && count($params['filterlt']) > 0) { foreach ($params['filterlt'] as $field => $fieldValue) { $conditions[] = $q->expr->lt($field, $q->bindValue($fieldValue)); } } if (isset($params['filtergt']) && count($params['filtergt']) > 0) { foreach ($params['filtergt'] as $field => $fieldValue) { $conditions[] = $q->expr->gt($field, $q->bindValue($fieldValue)); } } if (isset($params['filterlte']) && count($params['filterlte']) > 0) { foreach ($params['filterlte'] as $field => $fieldValue) { $conditions[] = $q->expr->lte($field, $q->bindValue($fieldValue)); } } if (isset($params['filtergte']) && count($params['filtergte']) > 0) { foreach ($params['filtergte'] as $field => $fieldValue) { $conditions[] = $q->expr->gte($field, $q->bindValue($fieldValue)); } } if (count($conditions) > 0) { $q->where($conditions); } $q->limit($params['limit'], $params['offset']); $q->orderBy(isset($params['sort']) ? $params['sort'] : 'id DESC'); $objects = $session->find($q); return $objects; }