@@ -4,11 +4,11 @@ |
||
| 4 | 4 | |
| 5 | 5 | |
| 6 | 6 | class HtmlAccordionMenuItem extends HtmlMenuItem { |
| 7 | - public function __construct($identifier,$title,$content) { |
|
| 8 | - parent::__construct($identifier, new HtmlAccordionItem("accordion-".$identifier, $title,$content)); |
|
| 7 | + public function __construct($identifier, $title, $content) { |
|
| 8 | + parent::__construct($identifier, new HtmlAccordionItem("accordion-".$identifier, $title, $content)); |
|
| 9 | 9 | } |
| 10 | 10 | |
| 11 | - public function setActive($value=true){ |
|
| 11 | + public function setActive($value=true) { |
|
| 12 | 12 | $this->content->setActive($value); |
| 13 | 13 | return $this; |
| 14 | 14 | } |
@@ -20,30 +20,30 @@ |
||
| 20 | 20 | $this->_title=$title; |
| 21 | 21 | } |
| 22 | 22 | |
| 23 | - public function setTitle($title){ |
|
| 23 | + public function setTitle($title) { |
|
| 24 | 24 | $this->_title=$title; |
| 25 | 25 | } |
| 26 | 26 | |
| 27 | - public function setIcon($icon){ |
|
| 27 | + public function setIcon($icon) { |
|
| 28 | 28 | $this->_icon=$icon; |
| 29 | 29 | } |
| 30 | 30 | |
| 31 | - protected function createTitleElement(){ |
|
| 32 | - $element=new HtmlSemDoubleElement("title-".$this->identifier,"div","title"); |
|
| 33 | - $element->setContent(array(new HtmlIcon("", $this->_icon),$this->_title)); |
|
| 34 | - if($this->_active===true) |
|
| 31 | + protected function createTitleElement() { |
|
| 32 | + $element=new HtmlSemDoubleElement("title-".$this->identifier, "div", "title"); |
|
| 33 | + $element->setContent(array(new HtmlIcon("", $this->_icon), $this->_title)); |
|
| 34 | + if ($this->_active===true) |
|
| 35 | 35 | $element->addToProperty("class", "active"); |
| 36 | 36 | return $element; |
| 37 | 37 | } |
| 38 | 38 | |
| 39 | - public function compile(JsUtils $js=NULL, View $view=NULL){ |
|
| 39 | + public function compile(JsUtils $js=NULL, View $view=NULL) { |
|
| 40 | 40 | $this->titleElement=$this->createTitleElement(); |
| 41 | - return parent::compile($js,$view); |
|
| 41 | + return parent::compile($js, $view); |
|
| 42 | 42 | } |
| 43 | 43 | |
| 44 | - public function setActive($value=true){ |
|
| 44 | + public function setActive($value=true) { |
|
| 45 | 45 | $this->_active=$value; |
| 46 | - if($value===true) |
|
| 46 | + if ($value===true) |
|
| 47 | 47 | $this->addToPropertyCtrl("class", "active", array("active")); |
| 48 | 48 | else |
| 49 | 49 | $this->removePropertyValue("class", "active"); |
@@ -31,8 +31,9 @@ discard block |
||
| 31 | 31 | protected function createTitleElement(){ |
| 32 | 32 | $element=new HtmlSemDoubleElement("title-".$this->identifier,"div","title"); |
| 33 | 33 | $element->setContent(array(new HtmlIcon("", $this->_icon),$this->_title)); |
| 34 | - if($this->_active===true) |
|
| 35 | - $element->addToProperty("class", "active"); |
|
| 34 | + if($this->_active===true) { |
|
| 35 | + $element->addToProperty("class", "active"); |
|
| 36 | + } |
|
| 36 | 37 | return $element; |
| 37 | 38 | } |
| 38 | 39 | |
@@ -43,10 +44,11 @@ discard block |
||
| 43 | 44 | |
| 44 | 45 | public function setActive($value=true){ |
| 45 | 46 | $this->_active=$value; |
| 46 | - if($value===true) |
|
| 47 | - $this->addToPropertyCtrl("class", "active", array("active")); |
|
| 48 | - else |
|
| 49 | - $this->removePropertyValue("class", "active"); |
|
| 47 | + if($value===true) { |
|
| 48 | + $this->addToPropertyCtrl("class", "active", array("active")); |
|
| 49 | + } else { |
|
| 50 | + $this->removePropertyValue("class", "active"); |
|
| 51 | + } |
|
| 50 | 52 | return $this; |
| 51 | 53 | } |
| 52 | 54 | } |
| 53 | 55 | \ No newline at end of file |
@@ -8,8 +8,9 @@ discard block |
||
| 8 | 8 | public function __construct($identifier, $field,$label=NULL) { |
| 9 | 9 | parent::__construct($identifier, "div","ui field"); |
| 10 | 10 | $this->content=array(); |
| 11 | - if(isset($label)) |
|
| 12 | - $this->setLabel($label); |
|
| 11 | + if(isset($label)) { |
|
| 12 | + $this->setLabel($label); |
|
| 13 | + } |
|
| 13 | 14 | $this->setField($field); |
| 14 | 15 | } |
| 15 | 16 | |
@@ -28,8 +29,9 @@ discard block |
||
| 28 | 29 | } |
| 29 | 30 | |
| 30 | 31 | public function getLabel(){ |
| 31 | - if(\array_key_exists("label", $this->content)) |
|
| 32 | - return $this->content["label"]; |
|
| 32 | + if(\array_key_exists("label", $this->content)) { |
|
| 33 | + return $this->content["label"]; |
|
| 34 | + } |
|
| 33 | 35 | } |
| 34 | 36 | |
| 35 | 37 | public function getField(){ |
@@ -8,26 +8,26 @@ discard block |
||
| 8 | 8 | |
| 9 | 9 | class HtmlFormField extends HtmlSemDoubleElement { |
| 10 | 10 | protected $_container; |
| 11 | - public function __construct($identifier, $field,$label=NULL) { |
|
| 12 | - parent::__construct($identifier, "div","field"); |
|
| 11 | + public function __construct($identifier, $field, $label=NULL) { |
|
| 12 | + parent::__construct($identifier, "div", "field"); |
|
| 13 | 13 | $this->content=array(); |
| 14 | - $this->_states=[State::ERROR,State::DISABLED]; |
|
| 15 | - if(isset($label)) |
|
| 14 | + $this->_states=[State::ERROR, State::DISABLED]; |
|
| 15 | + if (isset($label)) |
|
| 16 | 16 | $this->setLabel($label); |
| 17 | 17 | $this->setField($field); |
| 18 | 18 | } |
| 19 | 19 | |
| 20 | - public function setLabel($label){ |
|
| 20 | + public function setLabel($label) { |
|
| 21 | 21 | $labelO=$label; |
| 22 | - if(\is_string($label)){ |
|
| 23 | - $labelO=new HtmlSemDoubleElement("","label",""); |
|
| 22 | + if (\is_string($label)) { |
|
| 23 | + $labelO=new HtmlSemDoubleElement("", "label", ""); |
|
| 24 | 24 | $labelO->setContent($label); |
| 25 | - $labelO->setProperty("for", \str_replace("field-", "",$this->identifier)); |
|
| 25 | + $labelO->setProperty("for", \str_replace("field-", "", $this->identifier)); |
|
| 26 | 26 | } |
| 27 | 27 | $this->content["label"]=$labelO; |
| 28 | 28 | } |
| 29 | 29 | |
| 30 | - public function setField($field){ |
|
| 30 | + public function setField($field) { |
|
| 31 | 31 | $this->content["field"]=$field; |
| 32 | 32 | } |
| 33 | 33 | |
@@ -35,8 +35,8 @@ discard block |
||
| 35 | 35 | * Returns the label or null |
| 36 | 36 | * @return mixed |
| 37 | 37 | */ |
| 38 | - public function getLabel(){ |
|
| 39 | - if(\array_key_exists("label", $this->content)) |
|
| 38 | + public function getLabel() { |
|
| 39 | + if (\array_key_exists("label", $this->content)) |
|
| 40 | 40 | return $this->content["label"]; |
| 41 | 41 | } |
| 42 | 42 | |
@@ -44,14 +44,14 @@ discard block |
||
| 44 | 44 | * Return the field |
| 45 | 45 | * @return mixed |
| 46 | 46 | */ |
| 47 | - public function getField(){ |
|
| 47 | + public function getField() { |
|
| 48 | 48 | return $this->content["field"]; |
| 49 | 49 | } |
| 50 | 50 | |
| 51 | 51 | /** |
| 52 | 52 | * puts the label before or behind |
| 53 | 53 | */ |
| 54 | - public function swapLabel(){ |
|
| 54 | + public function swapLabel() { |
|
| 55 | 55 | $label=$this->getLabel(); |
| 56 | 56 | unset($this->content["label"]); |
| 57 | 57 | $this->content["label"]=$label; |
@@ -62,27 +62,27 @@ discard block |
||
| 62 | 62 | * @param int $width |
| 63 | 63 | * @return \Ajax\semantic\html\collections\form\HtmlFormField |
| 64 | 64 | */ |
| 65 | - public function setWidth($width){ |
|
| 66 | - if(\is_int($width)){ |
|
| 65 | + public function setWidth($width) { |
|
| 66 | + if (\is_int($width)) { |
|
| 67 | 67 | $width=Wide::getConstants()["W".$width]; |
| 68 | 68 | } |
| 69 | 69 | $this->addToPropertyCtrl("class", $width, Wide::getConstants()); |
| 70 | - if(isset($this->_container)){ |
|
| 70 | + if (isset($this->_container)) { |
|
| 71 | 71 | $this->_container->setEqualWidth(false); |
| 72 | 72 | } |
| 73 | - return $this->addToPropertyCtrl("class", "wide",array("wide")); |
|
| 73 | + return $this->addToPropertyCtrl("class", "wide", array("wide")); |
|
| 74 | 74 | } |
| 75 | 75 | |
| 76 | 76 | /** |
| 77 | 77 | * Field displays an error state |
| 78 | 78 | * @return \Ajax\semantic\html\collections\form\HtmlFormField |
| 79 | 79 | */ |
| 80 | - public function setError(){ |
|
| 80 | + public function setError() { |
|
| 81 | 81 | return $this->addToProperty("class", "error"); |
| 82 | 82 | } |
| 83 | 83 | |
| 84 | - public function jsState($state){ |
|
| 85 | - return $this->jsDoJquery("addClass",$state); |
|
| 84 | + public function jsState($state) { |
|
| 85 | + return $this->jsDoJquery("addClass", $state); |
|
| 86 | 86 | } |
| 87 | 87 | |
| 88 | 88 | public function setContainer($_container) { |
@@ -90,7 +90,7 @@ discard block |
||
| 90 | 90 | return $this; |
| 91 | 91 | } |
| 92 | 92 | |
| 93 | - public function setReadonly(){ |
|
| 93 | + public function setReadonly() { |
|
| 94 | 94 | $this->getField()->setProperty("readonly", ""); |
| 95 | 95 | } |
| 96 | 96 | |
@@ -12,15 +12,15 @@ discard block |
||
| 12 | 12 | * @author jc |
| 13 | 13 | * @version 1.001 |
| 14 | 14 | */ |
| 15 | -class HtmlLabeledIconMenu extends HtmlMenu{ |
|
| 15 | +class HtmlLabeledIconMenu extends HtmlMenu { |
|
| 16 | 16 | |
| 17 | 17 | |
| 18 | 18 | /** |
| 19 | 19 | * @param string $identifier |
| 20 | 20 | * @param array $items icons |
| 21 | 21 | */ |
| 22 | - public function __construct( $identifier, $items=array()){ |
|
| 23 | - parent::__construct( $identifier, $items); |
|
| 22 | + public function __construct($identifier, $items=array()) { |
|
| 23 | + parent::__construct($identifier, $items); |
|
| 24 | 24 | $this->addToProperty("class", "labeled icon"); |
| 25 | 25 | } |
| 26 | 26 | |
@@ -31,14 +31,14 @@ discard block |
||
| 31 | 31 | protected function createItem($value) { |
| 32 | 32 | $text=""; |
| 33 | 33 | $v=$value; |
| 34 | - if(\is_array($value)){ |
|
| 34 | + if (\is_array($value)) { |
|
| 35 | 35 | $v=@$value[0]; |
| 36 | 36 | $text=@$value[1]; |
| 37 | 37 | } |
| 38 | 38 | $count=\sizeof($this->content); |
| 39 | 39 | $value=new HtmlIcon("icon-".$count, $v); |
| 40 | - $value->wrap("",$text); |
|
| 41 | - $itemO=new HtmlLink("item-".$count,"",$value); |
|
| 40 | + $value->wrap("", $text); |
|
| 41 | + $itemO=new HtmlLink("item-".$count, "", $value); |
|
| 42 | 42 | return $itemO->setClass("item"); |
| 43 | 43 | } |
| 44 | 44 | } |
| 45 | 45 | \ No newline at end of file |
@@ -12,15 +12,15 @@ discard block |
||
| 12 | 12 | * @author jc |
| 13 | 13 | * @version 1.001 |
| 14 | 14 | */ |
| 15 | -class HtmlIconMenu extends HtmlMenu{ |
|
| 15 | +class HtmlIconMenu extends HtmlMenu { |
|
| 16 | 16 | |
| 17 | 17 | |
| 18 | 18 | /** |
| 19 | 19 | * @param string $identifier |
| 20 | 20 | * @param array $items icons |
| 21 | 21 | */ |
| 22 | - public function __construct( $identifier, $items=array()){ |
|
| 23 | - parent::__construct( $identifier, $items); |
|
| 22 | + public function __construct($identifier, $items=array()) { |
|
| 23 | + parent::__construct($identifier, $items); |
|
| 24 | 24 | $this->addToProperty("class", "icon"); |
| 25 | 25 | } |
| 26 | 26 | |
@@ -32,7 +32,7 @@ discard block |
||
| 32 | 32 | protected function createItem($value) { |
| 33 | 33 | $count=\sizeof($this->content); |
| 34 | 34 | $value=new HtmlIcon("icon-".$count, $value); |
| 35 | - $itemO=new HtmlLink("item-".$count,"",$value); |
|
| 35 | + $itemO=new HtmlLink("item-".$count, "", $value); |
|
| 36 | 36 | return $itemO->setClass("item"); |
| 37 | 37 | } |
| 38 | 38 | } |
| 39 | 39 | \ No newline at end of file |
@@ -20,6 +20,9 @@ |
||
| 20 | 20 | protected $_tabsType="tabs"; |
| 21 | 21 | protected $stacked=""; |
| 22 | 22 | |
| 23 | + /** |
|
| 24 | + * @param string $identifier |
|
| 25 | + */ |
|
| 23 | 26 | public function __construct($identifier, $tagName="ul") { |
| 24 | 27 | parent::__construct($identifier, $tagName); |
| 25 | 28 | $this->_template="<%tagName% %properties%>%tabs%</%tagName%>%content%"; |
@@ -29,13 +29,13 @@ discard block |
||
| 29 | 29 | if (\is_string($end)) { |
| 30 | 30 | $label=$end; |
| 31 | 31 | \array_pop($fields); |
| 32 | - } else |
|
| 32 | + }else |
|
| 33 | 33 | $label=NULL; |
| 34 | 34 | } |
| 35 | 35 | } |
| 36 | 36 | if (isset($label)) |
| 37 | 37 | $this->setLabel($label); |
| 38 | - foreach ( $fields as $field ) { |
|
| 38 | + foreach ($fields as $field) { |
|
| 39 | 39 | $this->addItem($field); |
| 40 | 40 | } |
| 41 | 41 | return $this; |
@@ -65,7 +65,7 @@ discard block |
||
| 65 | 65 | if ($this->_equalWidth) { |
| 66 | 66 | $count=$this->count(); |
| 67 | 67 | $this->addToProperty("class", Wide::getConstants()["W".$count]." fields"); |
| 68 | - } else |
|
| 68 | + }else |
|
| 69 | 69 | $this->addToProperty("class", "fields"); |
| 70 | 70 | return parent::compile($js, $view); |
| 71 | 71 | } |
@@ -96,9 +96,9 @@ discard block |
||
| 96 | 96 | } |
| 97 | 97 | |
| 98 | 98 | public static function radios($name, $items=array(), $label=NULL, $value=null, $type=NULL) { |
| 99 | - $fields=array (); |
|
| 99 | + $fields=array(); |
|
| 100 | 100 | $i=0; |
| 101 | - foreach ( $items as $val => $caption ) { |
|
| 101 | + foreach ($items as $val => $caption) { |
|
| 102 | 102 | $itemO=new HtmlFormRadio($name."-".$i++, $name, $caption, $val, $type); |
| 103 | 103 | if ($val===$value) { |
| 104 | 104 | $itemO->getField()->getField()->setProperty("checked", ""); |
@@ -112,9 +112,9 @@ discard block |
||
| 112 | 112 | } |
| 113 | 113 | |
| 114 | 114 | public static function checkeds($name, $items=array(), $label=NULL, $values=array(), $type=NULL) { |
| 115 | - $fields=array (); |
|
| 115 | + $fields=array(); |
|
| 116 | 116 | $i=0; |
| 117 | - foreach ( $items as $val => $caption ) { |
|
| 117 | + foreach ($items as $val => $caption) { |
|
| 118 | 118 | $itemO=new HtmlFormCheckbox($name."-".$i++, $name, $caption, $val, $type); |
| 119 | 119 | if (\array_search($val, $values)!==false) { |
| 120 | 120 | $itemO->getField()->getField()->setProperty("checked", ""); |
@@ -29,12 +29,14 @@ discard block |
||
| 29 | 29 | if (\is_string($end)) { |
| 30 | 30 | $label=$end; |
| 31 | 31 | \array_pop($fields); |
| 32 | - } else |
|
| 33 | - $label=NULL; |
|
| 32 | + } else { |
|
| 33 | + $label=NULL; |
|
| 34 | + } |
|
| 34 | 35 | } |
| 35 | 36 | } |
| 36 | - if (isset($label)) |
|
| 37 | - $this->setLabel($label); |
|
| 37 | + if (isset($label)) { |
|
| 38 | + $this->setLabel($label); |
|
| 39 | + } |
|
| 38 | 40 | foreach ( $fields as $field ) { |
| 39 | 41 | $this->addItem($field); |
| 40 | 42 | } |
@@ -65,8 +67,9 @@ discard block |
||
| 65 | 67 | if ($this->_equalWidth) { |
| 66 | 68 | $count=$this->count(); |
| 67 | 69 | $this->addToProperty("class", Wide::getConstants()["W".$count]." fields"); |
| 68 | - } else |
|
| 69 | - $this->addToProperty("class", "fields"); |
|
| 70 | + } else { |
|
| 71 | + $this->addToProperty("class", "fields"); |
|
| 72 | + } |
|
| 70 | 73 | return parent::compile($js, $view); |
| 71 | 74 | } |
| 72 | 75 | |
@@ -106,8 +109,9 @@ discard block |
||
| 106 | 109 | $fields[]=$itemO; |
| 107 | 110 | } |
| 108 | 111 | $radios=new HtmlFormFields("fields-".$name, $fields); |
| 109 | - if (isset($label)) |
|
| 110 | - $radios->setLabel($label)->setProperty("for", $name); |
|
| 112 | + if (isset($label)) { |
|
| 113 | + $radios->setLabel($label)->setProperty("for", $name); |
|
| 114 | + } |
|
| 111 | 115 | return $radios; |
| 112 | 116 | } |
| 113 | 117 | |
@@ -122,8 +126,9 @@ discard block |
||
| 122 | 126 | $fields[]=$itemO; |
| 123 | 127 | } |
| 124 | 128 | $radios=new HtmlFormFields("fields-".$name, $fields); |
| 125 | - if (isset($label)) |
|
| 126 | - $radios->setLabel($label)->setProperty("for", $name); |
|
| 129 | + if (isset($label)) { |
|
| 130 | + $radios->setLabel($label)->setProperty("for", $name); |
|
| 131 | + } |
|
| 127 | 132 | return $radios; |
| 128 | 133 | } |
| 129 | 134 | |
@@ -7,7 +7,7 @@ discard block |
||
| 7 | 7 | |
| 8 | 8 | class HtmlInput extends HtmlSingleElement { |
| 9 | 9 | |
| 10 | - public function __construct($identifier,$type="text",$value=NULL,$placeholder=NULL) { |
|
| 10 | + public function __construct($identifier, $type="text", $value=NULL, $placeholder=NULL) { |
|
| 11 | 11 | parent::__construct($identifier, "input"); |
| 12 | 12 | $this->setProperty("name", $identifier); |
| 13 | 13 | $this->setValue($value); |
@@ -16,7 +16,7 @@ discard block |
||
| 16 | 16 | } |
| 17 | 17 | |
| 18 | 18 | public function setValue($value) { |
| 19 | - if(isset($value)) |
|
| 19 | + if (isset($value)) |
|
| 20 | 20 | $this->setProperty("value", $value); |
| 21 | 21 | return $this; |
| 22 | 22 | } |
@@ -25,8 +25,8 @@ discard block |
||
| 25 | 25 | return $this->setProperty("type", $value); |
| 26 | 26 | } |
| 27 | 27 | |
| 28 | - public function setPlaceholder($value){ |
|
| 29 | - if(JString::isNotNull($value)) |
|
| 28 | + public function setPlaceholder($value) { |
|
| 29 | + if (JString::isNotNull($value)) |
|
| 30 | 30 | $this->setProperty("placeholder", $value); |
| 31 | 31 | return $this; |
| 32 | 32 | } |
@@ -16,8 +16,9 @@ discard block |
||
| 16 | 16 | } |
| 17 | 17 | |
| 18 | 18 | public function setValue($value) { |
| 19 | - if(isset($value)) |
|
| 20 | - $this->setProperty("value", $value); |
|
| 19 | + if(isset($value)) { |
|
| 20 | + $this->setProperty("value", $value); |
|
| 21 | + } |
|
| 21 | 22 | return $this; |
| 22 | 23 | } |
| 23 | 24 | |
@@ -26,8 +27,9 @@ discard block |
||
| 26 | 27 | } |
| 27 | 28 | |
| 28 | 29 | public function setPlaceholder($value){ |
| 29 | - if(JString::isNotNull($value)) |
|
| 30 | - $this->setProperty("placeholder", $value); |
|
| 30 | + if(JString::isNotNull($value)) { |
|
| 31 | + $this->setProperty("placeholder", $value); |
|
| 32 | + } |
|
| 31 | 33 | return $this; |
| 32 | 34 | } |
| 33 | 35 | } |
| 34 | 36 | \ No newline at end of file |
@@ -7,17 +7,17 @@ |
||
| 7 | 7 | |
| 8 | 8 | class HtmlFormDropdown extends HtmlFormField { |
| 9 | 9 | |
| 10 | - public function __construct($identifier,$items=array(), $label=NULL,$value=NULL,$multiple=false) { |
|
| 11 | - parent::__construct("field-".$identifier, (new HtmlDropdown("dropdown-".$identifier,$value,$items))->asSelect($identifier,$multiple), $label); |
|
| 10 | + public function __construct($identifier, $items=array(), $label=NULL, $value=NULL, $multiple=false) { |
|
| 11 | + parent::__construct("field-".$identifier, (new HtmlDropdown("dropdown-".$identifier, $value, $items))->asSelect($identifier, $multiple), $label); |
|
| 12 | 12 | } |
| 13 | 13 | |
| 14 | - public function setItems($items){ |
|
| 14 | + public function setItems($items) { |
|
| 15 | 15 | return $this->getField()->setItems($items); |
| 16 | 16 | } |
| 17 | - public function addItem($item,$value=NULL,$image=NULL){ |
|
| 18 | - return $this->getField()->addItem($item,$value,$image); |
|
| 17 | + public function addItem($item, $value=NULL, $image=NULL) { |
|
| 18 | + return $this->getField()->addItem($item, $value, $image); |
|
| 19 | 19 | } |
| 20 | - public static function multipleDropdown($identifier,$items=array(), $label=NULL,$value=NULL){ |
|
| 21 | - return new HtmlFormDropdown($identifier,$items,$label,$value,true); |
|
| 20 | + public static function multipleDropdown($identifier, $items=array(), $label=NULL, $value=NULL) { |
|
| 21 | + return new HtmlFormDropdown($identifier, $items, $label, $value, true); |
|
| 22 | 22 | } |
| 23 | 23 | } |
| 24 | 24 | \ No newline at end of file |
@@ -5,5 +5,5 @@ |
||
| 5 | 5 | use Ajax\common\BaseEnum; |
| 6 | 6 | |
| 7 | 7 | abstract class CheckboxType extends BaseEnum { |
| 8 | - const STANDARD="",TOGGLE="toggle",SLIDER="slider"; |
|
| 8 | + const STANDARD="", TOGGLE="toggle", SLIDER="slider"; |
|
| 9 | 9 | } |
| 10 | 10 | \ No newline at end of file |