CurrencySelectFactory::__invoke()   A
last analyzed

Complexity

Conditions 2
Paths 2

Size

Total Lines 14
Code Lines 8

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 8
CRAP Score 2

Importance

Changes 1
Bugs 1 Features 0
Metric Value
c 1
b 1
f 0
dl 0
loc 14
ccs 8
cts 8
cp 1
rs 9.4285
cc 2
eloc 8
nc 2
nop 1
crap 2
1
<?php
2
3
namespace ZFBrasil\DoctrineMoneyModule\Form\Element\Factory;
4
5
use Zend\Form\FormElementManager;
6
use ZFBrasil\DoctrineMoneyModule\Form\Element\CurrencySelect;
7
use InvalidArgumentException;
8
9
/**
10
 * @author Gabriel Schmitt <[email protected]>
11
 * @license MIT
12
 */
13
class CurrencySelectFactory
14
{
15
    /**
16
     * @param FormElementManager $formElementManager
17
     *
18
     * @return CurrencySelect
19
     */
20 3
    public function __invoke(FormElementManager $formElementManager)
21
    {
22 3
        $serviceManager = $formElementManager->getServiceLocator();
23 3
        $config = $serviceManager->get('Config');
24
25 3
        if (!isset($config['money']['currencies'])) {
26 1
            throw new InvalidArgumentException('Couldn\'t find currencies configuration.');
27
        }
28
29 2
        $select = new CurrencySelect();
30 2
        $select->setValueOptions($config['money']['currencies']);
31
32 2
        return $select;
33
    }
34
}
35