Code Coverage |
||||||||||
Lines |
Functions and Methods |
Classes and Traits |
||||||||
Total | |
0.00% |
0 / 26 |
|
0.00% |
0 / 2 |
CRAP | |
0.00% |
0 / 1 |
ExtendedTextInteraction | |
0.00% |
0 / 26 |
|
0.00% |
0 / 2 |
20 | |
0.00% |
0 / 1 |
getUsedAttributes | |
0.00% |
0 / 14 |
|
0.00% |
0 / 1 |
2 | |||
getBaseType | |
0.00% |
0 / 12 |
|
0.00% |
0 / 1 |
12 |
1 | <?php |
2 | |
3 | /* |
4 | * This program is free software; you can redistribute it and/or |
5 | * modify it under the terms of the GNU General Public License |
6 | * as published by the Free Software Foundation; under version 2 |
7 | * of the License (non-upgradable). |
8 | * |
9 | * This program is distributed in the hope that it will be useful, |
10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
12 | * GNU General Public License for more details. |
13 | * |
14 | * You should have received a copy of the GNU General Public License |
15 | * along with this program; if not, write to the Free Software |
16 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. |
17 | * |
18 | * Copyright (c) 2013 (original work) Open Assessment Technologies SA (under the project TAO-PRODUCT); |
19 | * |
20 | * |
21 | */ |
22 | |
23 | namespace oat\taoQtiItem\model\qti\interaction; |
24 | |
25 | use oat\taoQtiItem\model\qti\interaction\ExtendedTextInteraction; |
26 | use oat\taoQtiItem\model\qti\interaction\BlockInteraction; |
27 | |
28 | /** |
29 | * QTI Extended Text Interaction |
30 | * |
31 | * @access public |
32 | * @author Sam, <sam@taotesting.com> |
33 | * @package taoQTI |
34 | * @see http://www.imsglobal.org/question/qtiv2p1/imsqti_infov2p1.html#element10334 |
35 | |
36 | */ |
37 | class ExtendedTextInteraction extends BlockInteraction |
38 | { |
39 | /** |
40 | * the QTI tag name as defined in QTI standard |
41 | * |
42 | * @access protected |
43 | * @var string |
44 | */ |
45 | protected static $qtiTagName = 'extendedTextInteraction'; |
46 | protected static $choiceClass = ''; //none |
47 | protected static $baseType = 'string'; |
48 | |
49 | protected function getUsedAttributes() |
50 | { |
51 | return array_merge( |
52 | parent::getUsedAttributes(), |
53 | [ |
54 | 'oat\\taoQtiItem\\model\\qti\\attribute\\Base', |
55 | 'oat\\taoQtiItem\\model\\qti\\attribute\\StringIdentifier', |
56 | 'oat\\taoQtiItem\\model\\qti\\attribute\\ExpectedLength', |
57 | 'oat\\taoQtiItem\\model\\qti\\attribute\\PatternMask', |
58 | 'oat\\taoQtiItem\\model\\qti\\attribute\\PlaceholderText', |
59 | 'oat\\taoQtiItem\\model\\qti\\attribute\\MaxStrings', |
60 | 'oat\\taoQtiItem\\model\\qti\\attribute\\MinStrings', |
61 | 'oat\\taoQtiItem\\model\\qti\\attribute\\ExpectedLines', |
62 | 'oat\\taoQtiItem\\model\\qti\\attribute\\Format', |
63 | ] |
64 | ); |
65 | } |
66 | |
67 | public function getBaseType() |
68 | { |
69 | |
70 | $returnValue = parent::getBaseType(); |
71 | |
72 | $response = $this->getResponse(); |
73 | if (!is_null($response)) { |
74 | $authorizedBaseType = [ |
75 | 'string', |
76 | 'integer', |
77 | 'float' |
78 | ]; |
79 | $baseType = strtolower($response->getAttributeValue('baseType')); |
80 | if (in_array($baseType, $authorizedBaseType)) { |
81 | $returnValue = $baseType; |
82 | } |
83 | } |
84 | |
85 | return $returnValue; |
86 | } |
87 | } |