Completed
Pull Request — master (#39)
by
unknown
05:19 queued 02:35
created

OutletOption::rules()   B

Complexity

Conditions 1
Paths 1

Size

Total Lines 31
Code Lines 19

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
c 0
b 0
f 0
dl 0
loc 31
rs 8.8571
cc 1
eloc 19
nc 1
nop 0
1
<?php
2
namespace pastuhov\ymlcatalog\models;
3
4
/**
5
 * Class DeliveryOption
6
 *
7
 * Модель опции условий доставки - тега option в секции delivery-option
8
 * @package pastuhov\ymlcatalog\models
9
 */
10
class OutletOption extends BaseModel
11
{
12
    /**
13
     * @inheritdoc
14
     */
15
    public static $tag = 'outlet';
16
17
    /**
18
     * @var int Идентификатор точки продаж, заданный в личном кабинете.
19
     */
20
    public $id;
21
22
    /**
23
     * @var int Количество товара, доступное для бронирования в точке продаж. Число должно быть равно либо больше 0
24
     */
25
    public $instock;
26
27
    /**
28
     * @var string Возможность бронирования в точке продаж
29
     */
30
    public $booking;
31
32
    /**
33
     * @inheritdoc
34
     */
35
    public static function getTagProperties()
36
    {
37
        return [
38
            'id',
39
            'instock',
40
            'booking',
41
        ];
42
    }
43
44
    /**
45
     * @inheritdoc
46
     */
47
    public function rules()
48
    {
49
        return [
50
            [
51
                ['id'],
52
                'required',
53
            ],
54
            [
55
                ['id'],
56
                'number',
57
                'integerOnly' => true,
58
                'min' => 0,
59
                'max' => SimpleOffer::NUMBER_LIMIT,
60
            ],
61
            [
62
                ['instock'],
63
                'number',
64
                'integerOnly' => true,
65
                'min' => 0,
66
                'max' => SimpleOffer::NUMBER_LIMIT,
67
            ],
68
            [
69
                ['booking'],
70
                'in',
71
                'range' => [
72
                    'true',
73
                    'false'
74
                ]
75
            ],
76
        ];
77
    }
78
79
    /**
80
     * @inheritdoc
81
     */
82
    protected function getYmlBody()
83
    {
84
        return null;
85
    }
86
87
    /**
88
     * @return string
89
     */
90
    protected function getYmlStartTag()
91
    {
92
        return str_replace('>', ' />', parent::getYmlStartTag());
93
    }
94
95
    /**
96
     * @return string
97
     */
98
    protected function getYmlEndTag()
99
    {
100
        return '';
101
    }
102
}
103