MemberExtension   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 20
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 3
eloc 7
c 1
b 0
f 0
dl 0
loc 20
rs 10

1 Method

Rating   Name   Duplication   Size   Complexity  
A getDiscount() 0 13 3
1
<?php
2
3
namespace SilverCommerce\Discounts\Extensions;
4
5
use SilverStripe\ORM\DataExtension;
6
use SilverStripe\ORM\ArrayList;
7
8
/**
9
 * Add additional settings to a memeber object
10
 *
11
 * @package    orders-admin
12
 * @subpackage extensions
13
 */
14
class MemberExtension extends DataExtension
15
{
16
    /**
17
     * Get a discount from the groups this member is in
18
     *
19
     * @return Discount
20
     */
21
    public function getDiscount()
22
    {
23
        $discounts = ArrayList::create();
24
25
        foreach ($this->owner->Groups() as $group) {
26
            foreach ($group->Discounts() as $discount) {
27
                $discounts->add($discount);
28
            }
29
        }
30
31
        $discounts->sort("Amount", "DESC");
32
33
        return $discounts->first();
34
    }
35
}
36