scullwm/inboxsearch

wip

dev-master 2016-09-30 06:58 UTC

This package is not auto-updated.

Last update: 2024-05-09 21:51:29 UTC


README

Search operators library. See more from Gmail: https://support.google.com/mail/answer/7190?hl=en

Supported operators

  • Filename (string)
  • Size (integer - convert string in bytes)
  • Has (string)
  • From (string)
  • To (string)
  • Subject (string)
  • Label (string)
  • Delivered To (string)
  • After (\DateTime)
  • Before (\DateTime)
  • Older (\DateTime)
  • Newer (\DateTime)
  • In (string)

How to use

$term = 'from:thomas@scullwm.com forum';
$factory = new InboxSearchFactory($term);

//  return InboxSearchInterface
$inboxSearch = $factory->process();

$from    = $inboxSearch->getFrom(); // thomas@scullwm.com
$keyword = $inboxSearch->getKeyword(); // array('from' => 'forum')

$fromKeyword = $inboxSearch->getKeywordFor(InboxSearchInterface::FILTER_FROM); // forum

Create your own filter

Filter must implement FilterInterface. Then register the filter in your factory instance

$factory = new InboxSearchFactory($term);

$myFilterParserFqcn = 'Swm\InboxSearch\FilterModel\MyCustomFilter';
$factory->addFilterParser($myFilterParserFqcn);

Tests

php composer install --dev
bin/atoum -d tests/units