FormRecurRules::__construct()   F
last analyzed

Complexity

Conditions 11
Paths 1024

Size

Total Lines 31
Code Lines 20

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
eloc 20
dl 0
loc 31
rs 3.15
c 0
b 0
f 0
cc 11
nc 1024
nop 1

How to fix   Complexity   

Long Method

Small methods make your code easier to understand, in particular if combined with a good name. Besides, if your method is small, finding a good name is usually much easier.

For example, if you find yourself adding comments to a method's body, this is usually a good sign to extract the commented part to a new method, and use the comment as a starting point when coming up with a good name for this new method.

Commonly applied refactorings include:

1
<?php
2
3
namespace XoopsModules\Extcal\Form;
4
5
use  XoopsModules\Extcal;
6
7
/**
8
 * Class FormRecurRules.
9
 */
10
class FormRecurRules extends \XoopsFormElement
11
{
12
    // Initial value form reccur form
13
    public $_rrule_freq             = 'none';
14
    public $_rrule_daily_interval   = '';
15
    public $_rrule_weekly_interval  = '';
16
    public $_rrule_weekly_bydays    = '';
17
    public $_rrule_monthly_interval = '';
18
    public $_rrule_monthly_byday    = '';
19
    public $_rrule_bymonthday       = '';
20
    public $_rrule_yearly_interval  = '';
21
    public $_rrule_yearly_bymonths  = '';
22
    public $_rrule_yearly_byday     = '';
23
24
    /**
25
     * @param $values
26
     */
27
    public function __construct($values)
28
    {
29
        if (isset($values['rrule_freq'])) {
30
            $this->_rrule_freq = $values['rrule_freq'];
31
        }
32
        if (isset($values['rrule_daily_interval'])) {
33
            $this->_rrule_daily_interval = $values['rrule_daily_interval'];
34
        }
35
        if (isset($values['rrule_weekly_interval'])) {
36
            $this->_rrule_weekly_interval = $values['rrule_weekly_interval'];
37
        }
38
        if (isset($values['rrule_weekly_bydays'])) {
39
            $this->_rrule_weekly_bydays = $values['rrule_weekly_bydays'];
40
        }
41
        if (isset($values['rrule_monthly_interval'])) {
42
            $this->_rrule_monthly_interval = $values['rrule_monthly_interval'];
43
        }
44
        if (isset($values['rrule_monthly_byday'])) {
45
            $this->_rrule_monthly_byday = $values['rrule_monthly_byday'];
46
        }
47
        if (isset($values['rrule_bymonthday'])) {
48
            $this->_rrule_bymonthday = $values['rrule_bymonthday'];
49
        }
50
        if (isset($values['rrule_yearly_interval'])) {
51
            $this->_rrule_yearly_interval = $values['rrule_yearly_interval'];
52
        }
53
        if (isset($values['rrule_yearly_bymonths'])) {
54
            $this->_rrule_yearly_bymonths = $values['rrule_yearly_bymonths'];
55
        }
56
        if (isset($values['rrule_yearly_byday'])) {
57
            $this->_rrule_yearly_byday = $values['rrule_yearly_byday'];
58
        }
59
    }
60
61
    /**
62
     * prepare HTML for output.
63
     *
64
     * @return string
65
     */
66
    public function render()
67
    {
68
        $ret = '';
69
70
        $formObject = new \XoopsFormRadio('', 'rrule_freq', $this->_rrule_freq);
71
        $formObject->addOption('none', \_MD_EXTCAL_NO_RECCUR_EVENT);
72
        $ret .= $formObject->render();
73
        $ret .= '<br><br><fieldset><legend>' . \_MD_EXTCAL_RECCUR_POLICY . '</legend><fieldset><legend>';
74
75
        $formObject = new \XoopsFormRadio('', 'rrule_freq', $this->_rrule_freq);
76
        $formObject->addOption('daily', \_MD_EXTCAL_DAILY);
77
        $ret .= $formObject->render();
78
        $ret .= '</legend>' . \_MD_EXTCAL_DURING . ' ';
79
80
        $formObject = new \XoopsFormText('', 'rrule_daily_interval', 3, 2, $this->_rrule_daily_interval);
81
        $ret        .= $formObject->render();
82
        $ret        .= ' ' . \_MD_EXTCAL_DAYS . '</fieldset><br><fieldset><legend>';
83
84
        $formObject = new \XoopsFormRadio('', 'rrule_freq', $this->_rrule_freq);
85
        $formObject->addOption('weekly', \_MD_EXTCAL_WEEKLY);
86
        $ret .= $formObject->render();
87
        $ret .= '</legend>' . \_MD_EXTCAL_DURING . ' ';
88
89
        $formObject = new \XoopsFormText('', 'rrule_weekly_interval', 3, 2, $this->_rrule_weekly_interval);
90
        $ret        .= $formObject->render();
91
        $ret        .= ' ' . \_MD_EXTCAL_WEEKS . '<br>';
92
93
        $formObject = new \XoopsFormCheckBox('', 'rrule_weekly_bydays', $this->_rrule_weekly_bydays);
94
        $formObject->addOption('MO', \_MD_EXTCAL_MO2 . '&nbsp;');
95
        $formObject->addOption('TU', \_MD_EXTCAL_TU2 . '&nbsp;');
96
        $formObject->addOption('WE', \_MD_EXTCAL_WE2 . '&nbsp;');
97
        $formObject->addOption('TH', \_MD_EXTCAL_TH2 . '&nbsp;');
98
        $formObject->addOption('FR', \_MD_EXTCAL_FR2 . '&nbsp;');
99
        $formObject->addOption('SA', \_MD_EXTCAL_SA2 . '&nbsp;');
100
        $formObject->addOption('SU', \_MD_EXTCAL_SU2 . '&nbsp;');
101
        $ret .= $formObject->render();
102
        $ret .= '</fieldset><br><fieldset><legend>';
103
104
        $formObject = new \XoopsFormRadio('', 'rrule_freq', $this->_rrule_freq);
105
        $formObject->addOption('monthly', \_MD_EXTCAL_MONTHLY);
106
        $ret .= $formObject->render();
107
        $ret .= '</legend>' . \_MD_EXTCAL_DURING . ' ';
108
109
        $formObject = new \XoopsFormText('', 'rrule_monthly_interval', 3, 2, $this->_rrule_monthly_interval);
110
        $ret        .= $formObject->render();
111
        $ret        .= ' ' . \_MD_EXTCAL_MONTH . ', ' . \_MD_EXTCAL_ON . ' ';
112
113
        $formObject = new \XoopsFormSelect('', 'rrule_monthly_byday', $this->_rrule_monthly_byday);
114
        $formObject->addOption('', '&nbsp;');
115
        $formObject->addOption('1MO', \_MD_EXTCAL_1_MO);
116
        $formObject->addOption('1TU', \_MD_EXTCAL_1_TU);
117
        $formObject->addOption('1WE', \_MD_EXTCAL_1_WE);
118
        $formObject->addOption('1TH', \_MD_EXTCAL_1_TH);
119
        $formObject->addOption('1FR', \_MD_EXTCAL_1_FR);
120
        $formObject->addOption('1SA', \_MD_EXTCAL_1_SA);
121
        $formObject->addOption('1SU', \_MD_EXTCAL_1_SU);
122
        $formObject->addOption('2MO', \_MD_EXTCAL_2_MO);
123
        $formObject->addOption('2TU', \_MD_EXTCAL_2_TU);
124
        $formObject->addOption('2WE', \_MD_EXTCAL_2_WE);
125
        $formObject->addOption('2TH', \_MD_EXTCAL_2_TH);
126
        $formObject->addOption('2FR', \_MD_EXTCAL_2_FR);
127
        $formObject->addOption('2SA', \_MD_EXTCAL_2_SA);
128
        $formObject->addOption('2SU', \_MD_EXTCAL_2_SU);
129
        $formObject->addOption('3MO', \_MD_EXTCAL_3_MO);
130
        $formObject->addOption('3TU', \_MD_EXTCAL_3_TU);
131
        $formObject->addOption('3WE', \_MD_EXTCAL_3_WE);
132
        $formObject->addOption('3TH', \_MD_EXTCAL_3_TH);
133
        $formObject->addOption('3FR', \_MD_EXTCAL_3_FR);
134
        $formObject->addOption('3SA', \_MD_EXTCAL_3_SA);
135
        $formObject->addOption('3SU', \_MD_EXTCAL_3_SU);
136
        $formObject->addOption('4MO', \_MD_EXTCAL_4_MO);
137
        $formObject->addOption('4TU', \_MD_EXTCAL_4_TU);
138
        $formObject->addOption('4WE', \_MD_EXTCAL_4_WE);
139
        $formObject->addOption('4TH', \_MD_EXTCAL_4_TH);
140
        $formObject->addOption('4FR', \_MD_EXTCAL_4_FR);
141
        $formObject->addOption('4SA', \_MD_EXTCAL_4_SA);
142
        $formObject->addOption('4SU', \_MD_EXTCAL_4_SU);
143
        $formObject->addOption('-1MO', \_MD_EXTCAL_LAST_MO);
144
        $formObject->addOption('-1TU', \_MD_EXTCAL_LAST_TU);
145
        $formObject->addOption('-1WE', \_MD_EXTCAL_LAST_WE);
146
        $formObject->addOption('-1TH', \_MD_EXTCAL_LAST_TH);
147
        $formObject->addOption('-1FR', \_MD_EXTCAL_LAST_FR);
148
        $formObject->addOption('-1SA', \_MD_EXTCAL_LAST_SA);
149
        $formObject->addOption('-1SU', \_MD_EXTCAL_LAST_SU);
150
        $ret .= $formObject->render();
151
        $ret .= ' ' . \_MD_EXTCAL_OR_THE . ' ';
152
153
        $formObject = new \XoopsFormText('', 'rrule_bymonthday', 3, 2, $this->_rrule_bymonthday);
154
        $ret        .= $formObject->render();
155
        $ret        .= ' ' . \_MD_EXTCAL_DAY_NUM_MONTH . '</fieldset><br><fieldset><legend>';
156
157
        $formObject = new \XoopsFormRadio('', 'rrule_freq', $this->_rrule_freq);
158
        $formObject->addOption('yearly', \_MD_EXTCAL_YEARLY);
159
        $ret .= $formObject->render();
160
        $ret .= '</legend>' . \_MD_EXTCAL_DURING . ' ';
161
162
        $formObject = new \XoopsFormText('', 'rrule_yearly_interval', 3, 2, $this->_rrule_yearly_interval);
163
        $ret        .= $formObject->render();
164
        $ret        .= ' ' . \_MD_EXTCAL_YEARS . '<br>';
165
166
        $formObject = new Extcal\Form\FormRRuleCheckBox('', 'rrule_yearly_bymonths', $this->_rrule_yearly_bymonths);
167
        $formObject->addOption('1', \_MD_EXTCAL_JAN . '&nbsp;');
168
        $formObject->addOption('2', \_MD_EXTCAL_FEB . '&nbsp;');
169
        $formObject->addOption('3', \_MD_EXTCAL_MAR . '&nbsp;');
170
        $formObject->addOption('4', \_MD_EXTCAL_APR . '&nbsp;');
171
        $formObject->addOption('5', \_MD_EXTCAL_MAY . '&nbsp;');
172
        $formObject->addOption('6', \_MD_EXTCAL_JUN . '&nbsp;');
173
        $formObject->addOption('7', \_MD_EXTCAL_JUL . '&nbsp;');
174
        $formObject->addOption('8', \_MD_EXTCAL_AUG . '&nbsp;');
175
        $formObject->addOption('9', \_MD_EXTCAL_SEP . '&nbsp;');
176
        $formObject->addOption('10', \_MD_EXTCAL_OCT . '&nbsp;');
177
        $formObject->addOption('11', \_MD_EXTCAL_NOV . '&nbsp;');
178
        $formObject->addOption('12', \_MD_EXTCAL_DEC . '&nbsp;');
179
        $ret .= $formObject->render();
180
        $ret .= '<br>';
181
182
        $formObject = new \XoopsFormSelect('', 'rrule_yearly_byday', $this->_rrule_yearly_byday);
183
        $formObject->addOption('', \_MD_EXTCAL_SAME_ST_DATE);
184
        $formObject->addOption('1MO', \_MD_EXTCAL_1_MO);
185
        $formObject->addOption('1TU', \_MD_EXTCAL_1_TU);
186
        $formObject->addOption('1WE', \_MD_EXTCAL_1_WE);
187
        $formObject->addOption('1TH', \_MD_EXTCAL_1_TH);
188
        $formObject->addOption('1FR', \_MD_EXTCAL_1_FR);
189
        $formObject->addOption('1SA', \_MD_EXTCAL_1_SA);
190
        $formObject->addOption('1SU', \_MD_EXTCAL_1_SU);
191
        $formObject->addOption('2MO', \_MD_EXTCAL_2_MO);
192
        $formObject->addOption('2TU', \_MD_EXTCAL_2_TU);
193
        $formObject->addOption('2WE', \_MD_EXTCAL_2_WE);
194
        $formObject->addOption('2TH', \_MD_EXTCAL_2_TH);
195
        $formObject->addOption('2FR', \_MD_EXTCAL_2_FR);
196
        $formObject->addOption('2SA', \_MD_EXTCAL_2_SA);
197
        $formObject->addOption('2SU', \_MD_EXTCAL_2_SU);
198
        $formObject->addOption('3MO', \_MD_EXTCAL_3_MO);
199
        $formObject->addOption('3TU', \_MD_EXTCAL_3_TU);
200
        $formObject->addOption('3WE', \_MD_EXTCAL_3_WE);
201
        $formObject->addOption('3TH', \_MD_EXTCAL_3_TH);
202
        $formObject->addOption('3FR', \_MD_EXTCAL_3_FR);
203
        $formObject->addOption('3SA', \_MD_EXTCAL_3_SA);
204
        $formObject->addOption('3SU', \_MD_EXTCAL_3_SU);
205
        $formObject->addOption('4MO', \_MD_EXTCAL_4_MO);
206
        $formObject->addOption('4TU', \_MD_EXTCAL_4_TU);
207
        $formObject->addOption('4WE', \_MD_EXTCAL_4_WE);
208
        $formObject->addOption('4TH', \_MD_EXTCAL_4_TH);
209
        $formObject->addOption('4FR', \_MD_EXTCAL_4_FR);
210
        $formObject->addOption('4SA', \_MD_EXTCAL_4_SA);
211
        $formObject->addOption('4SU', \_MD_EXTCAL_4_SU);
212
        $formObject->addOption('-1MO', \_MD_EXTCAL_LAST_MO);
213
        $formObject->addOption('-1TU', \_MD_EXTCAL_LAST_TU);
214
        $formObject->addOption('-1WE', \_MD_EXTCAL_LAST_WE);
215
        $formObject->addOption('-1TH', \_MD_EXTCAL_LAST_TH);
216
        $formObject->addOption('-1FR', \_MD_EXTCAL_LAST_FR);
217
        $formObject->addOption('-1SA', \_MD_EXTCAL_LAST_SA);
218
        $formObject->addOption('-1SU', \_MD_EXTCAL_LAST_SU);
219
        $ret .= $formObject->render();
220
        $ret .= '</fieldset></fieldset>';
221
222
        return $ret;
223
    }
224
}
225