@@ -13,11 +13,11 @@ discard block |
||
13 | 13 | class HtmlViewContent extends HtmlSemDoubleElement { |
14 | 14 | use ContentPartTrait; |
15 | 15 | public function __construct($identifier, $content=array()) { |
16 | - parent::__construct($identifier, "div", "content",[]); |
|
16 | + parent::__construct($identifier, "div", "content", []); |
|
17 | 17 | $this->setContent($content); |
18 | 18 | } |
19 | 19 | |
20 | - public function setContent($value){ |
|
20 | + public function setContent($value) { |
|
21 | 21 | if (\is_array($value)) { |
22 | 22 | $header=JArray::getValue($value, "header", 0); |
23 | 23 | $metas=JArray::getValue($value, "metas", 1); |
@@ -27,24 +27,24 @@ discard block |
||
27 | 27 | if (isset($image)) { |
28 | 28 | $this->addImage($image); |
29 | 29 | } |
30 | - $this->addHeaderContent($header, $metas, $description,$extra); |
|
30 | + $this->addHeaderContent($header, $metas, $description, $extra); |
|
31 | 31 | } else |
32 | 32 | $this->addContent($value); |
33 | 33 | } |
34 | 34 | |
35 | - public function addElement($content, $baseClass="",$part=NULL) { |
|
35 | + public function addElement($content, $baseClass="", $part=NULL) { |
|
36 | 36 | $count=\sizeof($this->content); |
37 | - $result=new HtmlViewContent("element-" . $count . "-" . $this->identifier, $content); |
|
37 | + $result=new HtmlViewContent("element-".$count."-".$this->identifier, $content); |
|
38 | 38 | $result->setClass($baseClass); |
39 | 39 | $this->addContent($result); |
40 | 40 | return $result; |
41 | 41 | } |
42 | 42 | |
43 | 43 | public function addMeta($value, $direction=Direction::LEFT) { |
44 | - if (\array_key_exists("meta", $this->content) === false) { |
|
45 | - $this->content["meta"]=new HtmlSemDoubleElement("meta-" . $this->identifier, "div", "meta", array ()); |
|
44 | + if (\array_key_exists("meta", $this->content)===false) { |
|
45 | + $this->content["meta"]=new HtmlSemDoubleElement("meta-".$this->identifier, "div", "meta", array()); |
|
46 | 46 | } |
47 | - if ($direction === Direction::RIGHT) { |
|
47 | + if ($direction===Direction::RIGHT) { |
|
48 | 48 | $value=new HtmlSemDoubleElement("", "span", "", $value); |
49 | 49 | $value->setFloated($direction); |
50 | 50 | } |
@@ -53,8 +53,8 @@ discard block |
||
53 | 53 | } |
54 | 54 | |
55 | 55 | public function addExtra($value) { |
56 | - if (\array_key_exists("extra", $this->content) === false) { |
|
57 | - $this->content["extra"]=new HtmlSemDoubleElement("extra-" . $this->identifier, "div", "extra", array ()); |
|
56 | + if (\array_key_exists("extra", $this->content)===false) { |
|
57 | + $this->content["extra"]=new HtmlSemDoubleElement("extra-".$this->identifier, "div", "extra", array()); |
|
58 | 58 | } |
59 | 59 | $this->content["extra"]->addContent($value); |
60 | 60 | return $this->content["extra"]; |
@@ -75,15 +75,15 @@ discard block |
||
75 | 75 | * @param boolean $before |
76 | 76 | * @return HtmlButtonGroups |
77 | 77 | */ |
78 | - public function addContentButtons($elements=array(), $asIcons=false,$part="extra",$before=false){ |
|
79 | - $buttons=new HtmlButtonGroups("buttons-".$this->identifier,$elements,$asIcons); |
|
80 | - $this->addElementInPart($buttons,$part, $before,true); |
|
78 | + public function addContentButtons($elements=array(), $asIcons=false, $part="extra", $before=false) { |
|
79 | + $buttons=new HtmlButtonGroups("buttons-".$this->identifier, $elements, $asIcons); |
|
80 | + $this->addElementInPart($buttons, $part, $before, true); |
|
81 | 81 | return $buttons; |
82 | 82 | } |
83 | 83 | |
84 | 84 | public function addMetas($metas) { |
85 | 85 | if (\is_array($metas)) { |
86 | - foreach ( $metas as $meta ) { |
|
86 | + foreach ($metas as $meta) { |
|
87 | 87 | $this->addMeta($meta); |
88 | 88 | } |
89 | 89 | } else |
@@ -92,7 +92,7 @@ discard block |
||
92 | 92 | } |
93 | 93 | |
94 | 94 | public function addContentIcon($icon, $caption=NULL, $direction=Direction::LEFT) { |
95 | - if ($direction === Direction::RIGHT) { |
|
95 | + if ($direction===Direction::RIGHT) { |
|
96 | 96 | if (isset($caption)) { |
97 | 97 | $result=new HtmlSemDoubleElement("", "span", "", $caption); |
98 | 98 | $result->addIcon($icon); |
@@ -110,7 +110,7 @@ discard block |
||
110 | 110 | } |
111 | 111 | |
112 | 112 | public function addContentText($caption, $direction=Direction::LEFT) { |
113 | - if ($direction === Direction::RIGHT) { |
|
113 | + if ($direction===Direction::RIGHT) { |
|
114 | 114 | $result=new HtmlSemDoubleElement("", "span", "", $caption); |
115 | 115 | $this->addContent($result); |
116 | 116 | $result->setFloated($direction); |
@@ -120,20 +120,20 @@ discard block |
||
120 | 120 | } |
121 | 121 | |
122 | 122 | public function addContentIcons($icons, $direction=Direction::LEFT) { |
123 | - foreach ( $icons as $icon ) { |
|
123 | + foreach ($icons as $icon) { |
|
124 | 124 | $this->addContentIcon($icon, NULL, $direction); |
125 | 125 | } |
126 | 126 | return $this; |
127 | 127 | } |
128 | 128 | |
129 | - public function addHeaderContent($header, $metas=array(), $description=NULL,$extra=NULL) { |
|
130 | - if(isset($header)) |
|
129 | + public function addHeaderContent($header, $metas=array(), $description=NULL, $extra=NULL) { |
|
130 | + if (isset($header)) |
|
131 | 131 | $this->addElement($header, "header"); |
132 | 132 | $this->addMetas($metas); |
133 | 133 | if (isset($description)) { |
134 | 134 | $this->addElement($description, "description"); |
135 | 135 | } |
136 | - if(isset($extra)){ |
|
136 | + if (isset($extra)) { |
|
137 | 137 | $this->addExtra($extra); |
138 | 138 | } |
139 | 139 | return $this; |
@@ -17,14 +17,14 @@ discard block |
||
17 | 17 | * @version 1.001 |
18 | 18 | */ |
19 | 19 | class HtmlHeader extends HtmlSemDoubleElement { |
20 | - use TextAlignmentTrait,AttachedTrait; |
|
20 | + use TextAlignmentTrait, AttachedTrait; |
|
21 | 21 | protected $image; |
22 | 22 | |
23 | 23 | public function __construct($identifier, $niveau=1, $content=NULL, $type="page") { |
24 | 24 | parent::__construct($identifier, "div", "ui header"); |
25 | 25 | $this->_template="<%tagName% id='%identifier%' %properties%>%image%%wrapContentBefore%%content%%wrapContentAfter%</%tagName%>"; |
26 | 26 | if (isset($type)) { |
27 | - if ($type == "page") { |
|
27 | + if ($type=="page") { |
|
28 | 28 | $this->asPageHeader($niveau); |
29 | 29 | } else |
30 | 30 | $this->asContentHeader($niveau); |
@@ -33,7 +33,7 @@ discard block |
||
33 | 33 | } |
34 | 34 | |
35 | 35 | public function asPageHeader($niveau) { |
36 | - $this->tagName="h" . $niveau; |
|
36 | + $this->tagName="h".$niveau; |
|
37 | 37 | } |
38 | 38 | |
39 | 39 | public function asContentHeader($niveau) { |
@@ -46,25 +46,25 @@ discard block |
||
46 | 46 | |
47 | 47 | public function asIcon($icon, $title, $subHeader=NULL) { |
48 | 48 | $this->addToProperty("class", "icon"); |
49 | - $this->image=new HtmlIcon("icon-" . $this->identifier, $icon); |
|
49 | + $this->image=new HtmlIcon("icon-".$this->identifier, $icon); |
|
50 | 50 | return $this->asTitle($title, $subHeader); |
51 | 51 | } |
52 | 52 | |
53 | 53 | public function asImage($src, $title, $subHeader=NULL) { |
54 | - $this->image=new HtmlImg("img-" . $this->identifier, $src, $title); |
|
54 | + $this->image=new HtmlImg("img-".$this->identifier, $src, $title); |
|
55 | 55 | return $this->asTitle($title, $subHeader); |
56 | 56 | } |
57 | 57 | |
58 | 58 | public function asTitle($title, $subHeader=NULL) { |
59 | 59 | if (!\is_object($title)) { |
60 | - $this->content=new HtmlDoubleElement("content-" . $this->identifier, "div"); |
|
60 | + $this->content=new HtmlDoubleElement("content-".$this->identifier, "div"); |
|
61 | 61 | $this->content->setContent($title); |
62 | 62 | } else { |
63 | 63 | $this->content=$title; |
64 | 64 | } |
65 | 65 | $this->content->setClass("content"); |
66 | 66 | if (isset($subHeader)) { |
67 | - $sub=new HtmlDoubleElement("subheader-" . $this->identifier, "div"); |
|
67 | + $sub=new HtmlDoubleElement("subheader-".$this->identifier, "div"); |
|
68 | 68 | $sub->setClass("sub header"); |
69 | 69 | $sub->setContent($subHeader); |
70 | 70 | $this->content->addContent($sub); |
@@ -69,7 +69,7 @@ discard block |
||
69 | 69 | * @return HtmlIcon |
70 | 70 | */ |
71 | 71 | public function setFlipped($sens="horizontally") { |
72 | - return $this->addToProperty("class", "flipped " . $sens); |
|
72 | + return $this->addToProperty("class", "flipped ".$sens); |
|
73 | 73 | } |
74 | 74 | |
75 | 75 | /** |
@@ -78,7 +78,7 @@ discard block |
||
78 | 78 | * @return HtmlIcon |
79 | 79 | */ |
80 | 80 | public function setRotated($sens="clockwise") { |
81 | - return $this->addToProperty("class", "rotated " . $sens); |
|
81 | + return $this->addToProperty("class", "rotated ".$sens); |
|
82 | 82 | } |
83 | 83 | |
84 | 84 | /** |
@@ -87,12 +87,12 @@ discard block |
||
87 | 87 | * @param string target |
88 | 88 | * @return HtmlIcon |
89 | 89 | */ |
90 | - public function asLink($href=NULL,$target=NULL) { |
|
90 | + public function asLink($href=NULL, $target=NULL) { |
|
91 | 91 | if (isset($href)) { |
92 | 92 | $_target=""; |
93 | - if(isset($target)) |
|
93 | + if (isset($target)) |
|
94 | 94 | $_target="target='{$target}'"; |
95 | - $this->wrap("<a href='" . $href . "' {$_target}>", "</a>"); |
|
95 | + $this->wrap("<a href='".$href."' {$_target}>", "</a>"); |
|
96 | 96 | } |
97 | 97 | return $this->addToProperty("class", "link"); |
98 | 98 | } |
@@ -108,9 +108,9 @@ discard block |
||
108 | 108 | */ |
109 | 109 | public function setBordered($inverted=false) { |
110 | 110 | $invertedStr=""; |
111 | - if ($inverted !== false) |
|
111 | + if ($inverted!==false) |
|
112 | 112 | $invertedStr=" inverted"; |
113 | - return $this->addToProperty("class", "bordered" . $invertedStr); |
|
113 | + return $this->addToProperty("class", "bordered".$invertedStr); |
|
114 | 114 | } |
115 | 115 | |
116 | 116 | /** |
@@ -122,11 +122,11 @@ discard block |
||
122 | 122 | } |
123 | 123 | |
124 | 124 | public function addLabel($label, $before=false, $icon=NULL) { |
125 | - if($before) |
|
125 | + if ($before) |
|
126 | 126 | $this->wrap($label); |
127 | 127 | else |
128 | 128 | $this->wrap("", $label); |
129 | - if(isset($icon)) |
|
129 | + if (isset($icon)) |
|
130 | 130 | $this->addToIcon($icon); |
131 | 131 | return $this; |
132 | 132 | } |
@@ -26,8 +26,8 @@ discard block |
||
26 | 26 | protected $_contentSeparator=""; |
27 | 27 | |
28 | 28 | |
29 | - public function __construct($identifier,$tagName,$baseClass){ |
|
30 | - parent::__construct($identifier,$tagName,$baseClass); |
|
29 | + public function __construct($identifier, $tagName, $baseClass) { |
|
30 | + parent::__construct($identifier, $tagName, $baseClass); |
|
31 | 31 | $this->root=""; |
32 | 32 | $this->attr="data-ajax"; |
33 | 33 | } |
@@ -37,37 +37,37 @@ discard block |
||
37 | 37 | * @param string $targetSelector the target of the get |
38 | 38 | * @return HtmlNavElement |
39 | 39 | */ |
40 | - public function autoGetOnClick($targetSelector){ |
|
41 | - return $this->getOnClick($this->root, $targetSelector,array("attr"=>$this->attr)); |
|
40 | + public function autoGetOnClick($targetSelector) { |
|
41 | + return $this->getOnClick($this->root, $targetSelector, array("attr"=>$this->attr)); |
|
42 | 42 | } |
43 | 43 | |
44 | - public function contentAsString(){ |
|
44 | + public function contentAsString() { |
|
45 | 45 | return JArray::implode($this->_contentSeparator, $this->content); |
46 | 46 | } |
47 | 47 | |
48 | - public function setContentDivider($divider,$index=NULL) { |
|
48 | + public function setContentDivider($divider, $index=NULL) { |
|
49 | 49 | $divider="<div class='divider'> {$divider} </div>"; |
50 | 50 | return $this->setDivider($divider, $index); |
51 | 51 | } |
52 | 52 | |
53 | - public function setIconContentDivider($iconContentDivider,$index=NULL) { |
|
53 | + public function setIconContentDivider($iconContentDivider, $index=NULL) { |
|
54 | 54 | $contentDivider="<i class='".$iconContentDivider." icon divider'></i>"; |
55 | 55 | return $this->setDivider($contentDivider, $index); |
56 | 56 | } |
57 | 57 | |
58 | - protected function setDivider($divider,$index){ |
|
59 | - if(isset($index)){ |
|
60 | - if(!\is_array($this->_contentSeparator)) |
|
61 | - $this->_contentSeparator=array_fill (0, $this->count()-1,$this->_contentSeparator); |
|
58 | + protected function setDivider($divider, $index) { |
|
59 | + if (isset($index)) { |
|
60 | + if (!\is_array($this->_contentSeparator)) |
|
61 | + $this->_contentSeparator=array_fill(0, $this->count()-1, $this->_contentSeparator); |
|
62 | 62 | $this->_contentSeparator[$index]=$divider; |
63 | - }else{ |
|
63 | + } else { |
|
64 | 64 | $this->_contentSeparator=$divider; |
65 | 65 | } |
66 | 66 | return $this; |
67 | 67 | } |
68 | 68 | |
69 | - protected function getContentDivider($index){ |
|
70 | - if(\is_array($this->_contentSeparator)){ |
|
69 | + protected function getContentDivider($index) { |
|
70 | + if (\is_array($this->_contentSeparator)) { |
|
71 | 71 | return @$this->_contentSeparator[$index]; |
72 | 72 | } |
73 | 73 | return $this->_contentSeparator; |
@@ -79,15 +79,15 @@ |
||
79 | 79 | $element=null; |
80 | 80 | $i=0; |
81 | 81 | if (is_int($index)) { |
82 | - $elements=array (); |
|
83 | - foreach ( $this->elements as $group ) { |
|
82 | + $elements=array(); |
|
83 | + foreach ($this->elements as $group) { |
|
84 | 84 | $elements=array_merge($elements, $group->getElements()); |
85 | 85 | } |
86 | 86 | if ($index<sizeof($elements)) { |
87 | 87 | $element=$elements [$index]; |
88 | 88 | } |
89 | 89 | } else { |
90 | - while ( $element===null && $i<sizeof($this->elements) ) { |
|
90 | + while ($element===null && $i<sizeof($this->elements)) { |
|
91 | 91 | $element=$this->elements [$i]->getElement($index); |
92 | 92 | $i++; |
93 | 93 | } |
@@ -176,8 +176,8 @@ discard block |
||
176 | 176 | * @param string $tagName container tagName |
177 | 177 | * @return HtmlListgroup |
178 | 178 | */ |
179 | - public function htmlListgroup($identifier,$items=array(),$tagName="ul"){ |
|
180 | - $listGroup=new HtmlListgroup($identifier,$tagName); |
|
179 | + public function htmlListgroup($identifier, $items=array(), $tagName="ul") { |
|
180 | + $listGroup=new HtmlListgroup($identifier, $tagName); |
|
181 | 181 | $listGroup->addItems($items); |
182 | 182 | return $this->addHtmlComponent($listGroup); |
183 | 183 | } |
@@ -202,8 +202,8 @@ discard block |
||
202 | 202 | * @param string $onClick |
203 | 203 | * @return HtmlSplitbutton |
204 | 204 | */ |
205 | - public function htmlSplitbutton($identifier,$value="", $items=array(), $cssStyle="btn-default", $onClick=NULL) { |
|
206 | - return $this->addHtmlComponent(new HtmlSplitbutton($identifier, $value, $items, $cssStyle,$onClick)); |
|
205 | + public function htmlSplitbutton($identifier, $value="", $items=array(), $cssStyle="btn-default", $onClick=NULL) { |
|
206 | + return $this->addHtmlComponent(new HtmlSplitbutton($identifier, $value, $items, $cssStyle, $onClick)); |
|
207 | 207 | } |
208 | 208 | |
209 | 209 | /** |
@@ -211,7 +211,7 @@ discard block |
||
211 | 211 | * @param string $identifier |
212 | 212 | * @return HtmlInputgroup |
213 | 213 | */ |
214 | - public function htmlInputgroup($identifier){ |
|
214 | + public function htmlInputgroup($identifier) { |
|
215 | 215 | return $this->addHtmlComponent(new HtmlInputgroup($identifier)); |
216 | 216 | } |
217 | 217 | |
@@ -223,8 +223,8 @@ discard block |
||
223 | 223 | * @param function $hrefFunction the function who generates the href elements. default : function($e){return $e->getContent()} |
224 | 224 | * @return HtmlBreadcrumbs |
225 | 225 | */ |
226 | - public function htmlBreadcrumbs($identifier,$elements=array(),$autoActive=true,$startIndex=0,$hrefFunction=NULL){ |
|
227 | - return $this->addHtmlComponent(new HtmlBreadcrumbs($identifier,$elements,$autoActive,$startIndex,$hrefFunction)); |
|
226 | + public function htmlBreadcrumbs($identifier, $elements=array(), $autoActive=true, $startIndex=0, $hrefFunction=NULL) { |
|
227 | + return $this->addHtmlComponent(new HtmlBreadcrumbs($identifier, $elements, $autoActive, $startIndex, $hrefFunction)); |
|
228 | 228 | } |
229 | 229 | |
230 | 230 | /** |
@@ -236,8 +236,8 @@ discard block |
||
236 | 236 | * @param int $active The active page |
237 | 237 | * @return HtmlPagination |
238 | 238 | */ |
239 | - public function htmlPagination($identifier,$from=1,$to=1,$active=NULL,$countVisible=NULL){ |
|
240 | - return $this->addHtmlComponent(new HtmlPagination($identifier,$from,$to,$active,$countVisible)); |
|
239 | + public function htmlPagination($identifier, $from=1, $to=1, $active=NULL, $countVisible=NULL) { |
|
240 | + return $this->addHtmlComponent(new HtmlPagination($identifier, $from, $to, $active, $countVisible)); |
|
241 | 241 | } |
242 | 242 | |
243 | 243 | /** |
@@ -248,7 +248,7 @@ discard block |
||
248 | 248 | * @param int $numCols |
249 | 249 | * @return HtmlGridSystem |
250 | 250 | */ |
251 | - public function htmlGridSystem($identifier,$numRows=1,$numCols=NULL){ |
|
252 | - return $this->addHtmlComponent(new HtmlGridSystem($identifier,$numRows,$numCols)); |
|
251 | + public function htmlGridSystem($identifier, $numRows=1, $numCols=NULL) { |
|
252 | + return $this->addHtmlComponent(new HtmlGridSystem($identifier, $numRows, $numCols)); |
|
253 | 253 | } |
254 | 254 | } |
@@ -15,9 +15,9 @@ discard block |
||
15 | 15 | */ |
16 | 16 | class HtmlLabelGroups extends HtmlSemCollection { |
17 | 17 | |
18 | - public function __construct($identifier,$labels=array(), $attributes=array()) { |
|
18 | + public function __construct($identifier, $labels=array(), $attributes=array()) { |
|
19 | 19 | parent::__construct($identifier, "div", "ui labels"); |
20 | - $this->_states=\array_merge(Size::getConstants(),Color::getConstants(),["tag","circular"]); |
|
20 | + $this->_states=\array_merge(Size::getConstants(), Color::getConstants(), ["tag", "circular"]); |
|
21 | 21 | $this->addItems($labels); |
22 | 22 | $this->setStates($attributes); |
23 | 23 | } |
@@ -31,12 +31,12 @@ discard block |
||
31 | 31 | $icon=JArray::getValue($value, "icon", 1); |
32 | 32 | $tagName=JArray::getValue($value, "tagName", 2); |
33 | 33 | } |
34 | - $labelO=new HtmlLabel("label-" . $this->identifier, $caption,$icon,$tagName); |
|
34 | + $labelO=new HtmlLabel("label-".$this->identifier, $caption, $icon, $tagName); |
|
35 | 35 | return $labelO; |
36 | 36 | } |
37 | 37 | |
38 | 38 | protected function createCondition($value) { |
39 | - return ($value instanceof HtmlLabel) === false; |
|
39 | + return ($value instanceof HtmlLabel)===false; |
|
40 | 40 | } |
41 | 41 | |
42 | 42 | } |
@@ -14,11 +14,11 @@ |
||
14 | 14 | class HtmlContainer extends HtmlSemDoubleElement { |
15 | 15 | use TextAlignmentTrait; |
16 | 16 | public function __construct($identifier, $content="") { |
17 | - parent::__construct($identifier, "div","ui container"); |
|
17 | + parent::__construct($identifier, "div", "ui container"); |
|
18 | 18 | $this->content=$content; |
19 | 19 | } |
20 | 20 | |
21 | - public function asText(){ |
|
21 | + public function asText() { |
|
22 | 22 | return $this->addToProperty("class", "text"); |
23 | 23 | } |
24 | 24 | } |
@@ -10,14 +10,14 @@ discard block |
||
10 | 10 | use Ajax\JsUtils; |
11 | 11 | |
12 | 12 | class HtmlInput extends HtmlSemDoubleElement { |
13 | - use IconTrait,TextFieldsTrait,FieldTrait; |
|
13 | + use IconTrait, TextFieldsTrait, FieldTrait; |
|
14 | 14 | |
15 | 15 | public function __construct($identifier, $type="text", $value="", $placeholder="") { |
16 | - parent::__construct("div-" . $identifier, "div", "ui input"); |
|
16 | + parent::__construct("div-".$identifier, "div", "ui input"); |
|
17 | 17 | $this->_identifier=$identifier; |
18 | - $this->content=[ "field" => new \Ajax\common\html\html5\HtmlInput($identifier, $type, $value, $placeholder) ]; |
|
19 | - $this->_states=[ State::DISABLED,State::FOCUS,State::ERROR ]; |
|
20 | - $this->_variations=[ Variation::TRANSPARENT ]; |
|
18 | + $this->content=["field" => new \Ajax\common\html\html5\HtmlInput($identifier, $type, $value, $placeholder)]; |
|
19 | + $this->_states=[State::DISABLED, State::FOCUS, State::ERROR]; |
|
20 | + $this->_variations=[Variation::TRANSPARENT]; |
|
21 | 21 | } |
22 | 22 | |
23 | 23 | public function getField() { |
@@ -37,11 +37,11 @@ discard block |
||
37 | 37 | |
38 | 38 | public function run(JsUtils $js) { |
39 | 39 | $result=parent::run($js); |
40 | - $result->attach("#" . $this->getDataField()->getIdentifier()); |
|
40 | + $result->attach("#".$this->getDataField()->getIdentifier()); |
|
41 | 41 | return $result; |
42 | 42 | } |
43 | 43 | |
44 | - public function setTransparent(){ |
|
44 | + public function setTransparent() { |
|
45 | 45 | return $this->addToProperty("class", "transparent"); |
46 | 46 | } |
47 | 47 | } |