Ajoute l'envoi d'annonce (sans images)

This commit is contained in:
2017-09-06 06:29:28 +02:00
parent 4f12d3da3b
commit 0245bda600
3 changed files with 109 additions and 73 deletions

View File

@@ -6,6 +6,56 @@ class Deals extends \ArrayObject
{
protected $account;
public function addDeal(Deal $deal)
{
$this->append($deal);
return $this;
}
public function addDeals(array $deals)
{
array_walk($deals, function(&$deal) {
if (is_string($deal)) {
$deal = Deal::fromURL($this->account, $deal);
}
});
foreach ($deals as $deal) {
$this->append($deal);
}
return $this;
}
public function setDeals(array $deals)
{
array_walk($deals, function(&$deal) {
if (is_string($deal)) {
$deal = Deal::fromURL($this->account, $deal);
}
});
$this->exchangeArray($deals);
return $this;
}
/**
* @param Account $account
* @return Deals
*/
public function setAccount($account)
{
$this->account = $account;
return $this;
}
public function append($value)
{
if (is_array($value)) {
parent::append($this->parseArray($value));
}
if ($value instanceof Deal) {
parent::append($value);
}
}
private function parseArray(array $array = [])
{
if (count($array) == 1) {
@@ -19,33 +69,4 @@ class Deals extends \ArrayObject
return $deal;
}
/**
* Deals constructor.
*
* @param Account $account
* @param array|Deal $input
*/
public function __construct(Account $account, $input)
{
$this->account = $account;
if (is_array($input)) {
foreach ($input as $item) {
$this->append($item);
}
}
if ($input instanceof Deal) {
$this->append($input);
}
}
public function append($value)
{
if (is_array($value)) {
parent::append($this->parseArray($value));
}
if ($value instanceof Deal) {
parent::append($value);
}
}
}