- Implementado servicio backend [PaymentIntentService](cci:2://file:///home/unms/data/ucrm/ucrm/data/plugins/siip-stripe-payment_intents/src/PaymentIntentService.php:8:0-152:1) para manejar interacciones con API de UCRM y Stripe. - Creado frontend moderno y responsivo en HTML/JS dentro de [public.php](cci:7://file:///home/unms/data/ucrm/ucrm/data/plugins/siip-stripe-payment_intents/public.php:0:0-0:0). - Agregada búsqueda con autocompletado para clientes. - Agregada validación para Stripe Customer ID y monto mínimo. - Integrada la creación de Payment Intents de Stripe para fondos tipo `customer_balance`. - Agregada documentación (README.md, CHANGELOG.md) y limpieza de archivos legado.
49 lines
820 B
PHP
49 lines
820 B
PHP
<?php
|
|
|
|
namespace Stripe\Util;
|
|
|
|
use ArrayIterator;
|
|
use IteratorAggregate;
|
|
|
|
class Set implements IteratorAggregate
|
|
{
|
|
private $_elts;
|
|
|
|
public function __construct($members = [])
|
|
{
|
|
$this->_elts = [];
|
|
foreach ($members as $item) {
|
|
$this->_elts[$item] = true;
|
|
}
|
|
}
|
|
|
|
public function includes($elt)
|
|
{
|
|
return isset($this->_elts[$elt]);
|
|
}
|
|
|
|
public function add($elt)
|
|
{
|
|
$this->_elts[$elt] = true;
|
|
}
|
|
|
|
public function discard($elt)
|
|
{
|
|
unset($this->_elts[$elt]);
|
|
}
|
|
|
|
public function toArray()
|
|
{
|
|
return \array_keys($this->_elts);
|
|
}
|
|
|
|
/**
|
|
* @return ArrayIterator
|
|
*/
|
|
#[\ReturnTypeWillChange]
|
|
public function getIterator()
|
|
{
|
|
return new ArrayIterator($this->toArray());
|
|
}
|
|
}
|