milqmedia / mq-util
Milq Media Utilities
Installs: 789
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 6
Forks: 0
Open Issues: 0
Language:JavaScript
Requires
- php: >=5.3.3
- leafo/lessphp: 0.4.0
- zendframework/zendframework: 2.*
This package is not auto-updated.
Last update: 2023-02-06 21:38:07 UTC
README
Basic utillities used in ZF2 controller and views.
Zend Framework 2 View helpers
- less() to convert LESS files to CSS
- js() to retrieve versioned js files
- dateFormat() to format dates in different, many used, formats
- percent() to quickly calculate a percentage
MQUtil\Collector\Milq
ZendDeveloperTools collector listing environment, timezone and defaultlocale
MQUtil\Log\Writer\Doctrine
Doctrine log writer
MQUtil\Service\ShortUrl
Url shortner using the Google urlshortener API.
MQUtil\Service\Paginator
Super simple and easy to use pagination class
MQUtil\Service\Iterator
Super simple and easy to use iteration class with prevItem support
Installation
- Run
php composer.phar require milqmedia/mq-util:dev-master
- Add
MQUtil
to the enabled modules list - Use the less or js viewhelper in your template
Usage
Less & JS helpers
$this->headLink()->setStylesheet($this->basePath($this->less('less/site.less')))
$this->headScript()->setFile({$this->basePath($this->js('jquery')))
Percent view helper
$this->percent($total, $count, $reverse = false);
- $total: Total items
- $count: Items to calculate percentage of
- $reverse: Return the remaining percentage instead of the calculated percentage
DateFormat view helper
$this->dateFormat($date)->dayName();
Available methods:
- forumDate: Returns "H:i" if today, "d-m H:i" if this year, else "d-m-y H:i"
- ago: Returns seconds, minutes, hours, days, etc. ago since given date
- dayName($short = false): Dayname for the given date, if short is true dayname is in a short format e.g. Sun.
- monthName: Monthname for the given date
MQUtil\Collector\Milq
Add the collector to the zdt config file
array(
'zenddevelopertools' => array(
'profiler' => array(
'collectors' => array('milq' => 'MQUtil\Collector\Milq'),
),
)
And a template to the toolbar
array(
'zenddevelopertools' => array(
'toolbar' => array(
'entries' => array(
'milq' => 'zend-developer-tools/toolbar/milq',
),
)
)
)
MQUtil\Log\Writer\Doctrine
Copy the Log.php.dist
file from the package root to your entity directory. Change the namespace if necessary.
Use it like this:
$this->getServiceLocator()->get('Zend\Log\Logger')->err("error")
MQUtil\Service\ShortUrl
Configure your Google API Key:
return array(
'google_short_url' => array(
'apiKey' => '<key>',
)
);
Use it like this:
$shortUrlApi = $this->getServiceLocator()->get('MQUtil\Service\ShortUrl');
$response = $shortUrlApi->shortenUrl('http://google.com');
If successful, the response will look like:
{
"kind": "urlshortener#url",
"id": "http://goo.gl/fbsS",
"longUrl": "http://www.google.com/"
}
MQUtil\Service\Paginator
Create a new pagination object:
$paginator = $this->getServiceLocator()->get('MQUtil\Service\Paginator')->getPaginator($numberOfItems, $numberOfItemsPerPage, $currentPage);
Available methods:
$paginator->next();
$paginator->prev();
$paginator->current();
$paginator->total();
$paginator->offsetStart();
$paginator->isLastPage();
MQUtil\Service\Iterator
Create a new iteration object:
$iterator = $this->getServiceLocator()->get('MQUtil\Service\Iterator')->getIterator($array, $currentItem);
Available methods:
$iterator->hasNext();
$iterator->nextItem();
$iterator->hasPrev();
$iterator->prevItem();
$iterator->currentItem();
$iterator->isLastItem();
Development
...
Contributing
- Fork it ( https://github.com/milqmedia/mq-util/fork )
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request