/**
  * @param Message $message
  *
  * @return Purchase[]
  */
 protected function parseData(Message $message)
 {
     $dom = new \DOMDocument();
     $dom->loadHTML($message->getMessageBody(true));
     $nodes = $dom->getElementsByTagName('p');
     $purchase = new Purchase\Purchase();
     $purchase->date = new Date();
     $purchase->place = 'Pagamento';
     $matches = [];
     preg_match('/no valor de R\\$ (.*)/', $nodes->item(2)->nodeValue, $matches);
     $purchase->amount = (new Currency($matches[1]))->getValue();
     return [$purchase];
 }
 /**
  * @param Message $message
  *
  * @return Purchase[]
  */
 protected function parseData(Message $message)
 {
     $dom = new \DOMDocument();
     $dom->loadHTML($message->getMessageBody(true));
     $nodes = $dom->getElementsByTagName('p');
     $purchase = new Purchase\Purchase();
     $matches = [];
     preg_match('/((?:(?:[0-2]?\\d{1})|(?:[3][01]{1}))[-:\\/.](?:[0]?[1-9]|[1][012])[-:\\/.](?:(?:[1]{1}\\d{1}\\d{1}\\d{1})|(?:[2]{1}\\d{3})))(?![\\d])/', $nodes->item(2)->nodeValue, $matches);
     $purchase->date = new Date(join('-', array_reverse(explode('/', $matches[1]))));
     preg_match('/local: (.*?),/', str_replace('.', ',', str_replace("\n", ' ', $nodes->item(2)->nodeValue)), $matches);
     $purchase->place = trim($matches[1]);
     preg_match('/R\\$ (.*), no dia/', $nodes->item(2)->nodeValue, $matches);
     $purchase->amount = (new Currency($matches[1]))->getValue();
     return [$purchase];
 }
 /**
  * @param Message $message
  *
  * @return Purchase[]
  */
 protected function parseData(Message $message)
 {
     $dom = new \DOMDocument();
     $dom->loadHTML($message->getMessageBody(true));
     $nodes = $dom->getElementsByTagName('tr');
     $data = array();
     for ($i = 5; $i <= $nodes->length; $i++) {
         if (strstr($nodes->item($i)->nodeValue, 'R$')) {
             $date = $nodes->item($i)->childNodes->item(0)->nodeValue;
             $date = new \DateTime(trim($date));
             $place = $nodes->item($i)->childNodes->item(1)->nodeValue;
             $amount = $nodes->item($i)->childNodes->item(2)->nodeValue;
             $purchase = new \shina\controlmybudget\Purchase\Purchase();
             $purchase->date = $date;
             $purchase->place = trim($place);
             $purchase->amount = (double) str_replace('R$', '', str_replace(',', '.', str_replace('.', '', trim($amount))));
             $data[] = $purchase;
         } else {
             break;
         }
     }
     return $data;
 }
 private function createItem(Message $message)
 {
     $item = new Item();
     $item->title(utf8_encode($message->getSubject()))->description(utf8_encode($message->getMessageBody()))->url($this->url . $message->getUid() . '.html')->pubDate($message->getDate())->guid($message->getUid())->appendTo($this->channel);
     file_put_contents($this->dir . '/' . $message->getUid() . '.html', $message->getMessageBody(true));
 }