X-Git-Url: https://git-public.kairo.at/?p=php-utility-classes.git;a=blobdiff_plain;f=include%2Fcbsm%2Futil%2Fdocument.php-class;h=1563e9fa13d1c08996f87057da9992e7570f175b;hp=257d52bcbcda23848532fbba679ba071a6d78e27;hb=b8d168371c98b48193b8c61f8521618038feac1e;hpb=1109f526885e1e23ab52321ddb941dda14eb5f2f diff --git a/include/cbsm/util/document.php-class b/include/cbsm/util/document.php-class index 257d52b..1563e9f 100755 --- a/include/cbsm/util/document.php-class +++ b/include/cbsm/util/document.php-class @@ -50,7 +50,11 @@ class ExtendedDocument extends DOMDocument { // appends an ExtendedDocument::createElementImage() as a child of this document (see there for params) // returns the new child // - // function appendFormDiv($action, $method, $name) + // function appendForm($action, $method, $name, [$id]) + // appends an ExtendedDocument::createElementForm() as a child of this document (see there for params) + // returns the new child + // + // function appendFormDiv($action, $method, $name, [$id]) // appends an ExtendedDocument::createElementForm() as a child of this document (see there for params) // returns an HTML
that is a child of the new child // @@ -62,6 +66,10 @@ class ExtendedDocument extends DOMDocument { // appends an ExtendedDocument::createElementInputText() as a child of this document (see there for params) // returns the new child // + // function appendInputPassword($name, $maxlength, $size, [$id], [$value]) + // appends an ExtendedDocument::createElementInputPassword() as a child of this document (see there for params) + // returns the new child + // // function appendInputRadio($name, $id, $value, $checked) // appends an ExtendedDocument::createElementInputRadio() as a child of this document (see there for params) // returns the new child @@ -135,6 +143,10 @@ class ExtendedDocument extends DOMDocument { // returns an ExtendedElement that is an HTML of type 'text' with the given name, maxlength, size, // and optionally id and value // + // function createElementInputPassword($name, $maxlength, $size, [$id], [$value]) + // returns an ExtendedElement that is an HTML of type 'password' with the given name, maxlength, size, + // and optionally id and value + // // function createElementInputRadio($name, $id, $value, $checked) // returns an ExtendedElement that is an HTML of type 'radio' with the given name, id, value and // checked state @@ -179,7 +191,10 @@ class ExtendedDocument extends DOMDocument { } function appendElement($name, $value = '') { - return $this->appendChild($this->createElement($name, $value)); + // Adding the $value in createElement does NOT escape it, so use appendText to support that. + $aelem = $this->appendChild($this->createElement($name)); + $aelem->appendText($value); + return $aelem; } function appendElementXML($name, $xmldata) { $aelem = $this->appendChild($this->createElement($name)); @@ -193,8 +208,11 @@ class ExtendedDocument extends DOMDocument { function appendImage($src, $alt_text = '') { return $this->appendChild($this->createElementImage($src, $alt_text)); } - function appendFormDiv($action, $method, $name) { - $formelem = $this->appendChild($this->createElementForm($action, $method, $name)); + function appendForm($action, $method, $name, $id = null) { + return $this->appendChild($this->createElementForm($action, $method, $name, $id)); + } + function appendFormDiv($action, $method, $name, $id = null) { + $formelem = $this->appendChild($this->createElementForm($action, $method, $name, $id)); return $formelem->appendElement('div'); } function appendInputHidden($name, $value) { @@ -203,6 +221,9 @@ class ExtendedDocument extends DOMDocument { function appendInputText($name, $maxlength, $size, $id = null, $value = null) { return $this->appendChild($this->createElementInputText($name, $maxlength, $size, $id, $value)); } + function appendInputPassword($name, $maxlength, $size, $id = null, $value = null) { + return $this->appendChild($this->createElementInputPassword($name, $maxlength, $size, $id, $value)); + } function appendInputRadio($name, $id, $value, $checked) { return $this->appendChild($this->createElementInputRadio($name, $id, $value, $checked)); } @@ -259,23 +280,25 @@ class ExtendedDocument extends DOMDocument { } function createElementLink($target, $value = '') { - $link = $this->createElement('a', $value); + $link = $this->createElement('a'); + $link->appendText($value); $link->setAttribute('href', $target); // XXX: take care of & etc. in links return $link; } function createElementImage($src, $alt_text = '') { - $link = $this->createElement('img'); - $link->setAttribute('src', $src); - $link->setAttribute('alt', $alt_text); - return $link; + $img = $this->createElement('img'); + $img->setAttribute('src', $src); + $img->setAttribute('alt', $alt_text); + return $img; } - function createElementForm($action, $method, $name) { + function createElementForm($action, $method, $name, $id = null) { $formelem = $this->createElement('form'); $formelem->setAttribute('action', $action); $formelem->setAttribute('method', $method); $formelem->setAttribute('name', $name); + $formelem->setAttribute('id', $id); return $formelem; } @@ -298,6 +321,17 @@ class ExtendedDocument extends DOMDocument { return $txfield; } + function createElementInputPassword($name, $maxlength, $size, $id = null, $value = null) { + $pwfield = $this->createElement('input'); + $pwfield->setAttribute('type', 'password'); + if (!is_null($id)) { $pwfield->setAttribute('id', $id); } + $pwfield->setAttribute('name', $name); + $pwfield->setAttribute('maxlength', $maxlength); + $pwfield->setAttribute('size', $size); + if (!is_null($value)) { $pwfield->setAttribute('value', $value); } + return $pwfield; + } + function createElementInputRadio($name, $id, $value, $checked) { $radio = $this->createElement('input'); $radio->setAttribute('type', 'radio'); @@ -404,7 +438,11 @@ class ExtendedElement extends DOMElement { // appends an ExtendedDocument::createElementImage() as a child of this document (see there for params) // returns the new child // - // function appendFormDiv($action, $method, $name) + // function appendForm($action, $method, $name, [$id]) + // appends an ExtendedDocument::createElementForm() as a child of this element (see there for params) + // returns the new child + // + // function appendFormDiv($action, $method, $name, [$id]) // appends an ExtendedDocument::createElementForm() as a child of this element (see there for params) // returns an HTML
that is a child of the new child // @@ -416,6 +454,10 @@ class ExtendedElement extends DOMElement { // appends an ExtendedDocument::createElementInputText() as a child of this element (see there for params) // returns the new child // + // function appendInputPassword($name, $maxlength, $size, [$id], [$value]) + // appends an ExtendedDocument::createElementInputPassword() as a child of this element (see there for params) + // returns the new child + // // function appendInputRadio($name, $id, $value, $checked) // appends an ExtendedDocument::createElementInputRadio() as a child of this element (see there for params) // returns the new child @@ -473,7 +515,10 @@ class ExtendedElement extends DOMElement { // returns the new child function appendElement($name, $value = '') { - return $this->appendChild($this->ownerDocument->createElement($name, $value)); + // Adding the $value in createElement does NOT escape it, so use appendText to support that. + $aelem = $this->appendChild($this->ownerDocument->createElement($name)); + $aelem->appendText($value); + return $aelem; } function appendElementXML($name, $xmldata) { $aelem = $this->appendChild($this->ownerDocument->createElement($name)); @@ -486,8 +531,11 @@ class ExtendedElement extends DOMElement { function appendImage($src, $alt_text = '') { return $this->appendChild($this->ownerDocument->createElementImage($src, $alt_text)); } - function appendFormDiv($action, $method, $name) { - $formelem = $this->appendChild($this->ownerDocument->createElementForm($action, $method, $name)); + function appendForm($action, $method, $name, $id = null) { + return $this->appendChild($this->ownerDocument->createElementForm($action, $method, $name, $id)); + } + function appendFormDiv($action, $method, $name, $id = null) { + $formelem = $this->appendChild($this->ownerDocument->createElementForm($action, $method, $name, $id)); return $formelem->appendElement('div'); } function appendInputHidden($name, $value) { @@ -496,6 +544,9 @@ class ExtendedElement extends DOMElement { function appendInputText($name, $maxlength, $size, $id = null, $value = null) { return $this->appendChild($this->ownerDocument->createElementInputText($name, $maxlength, $size, $id, $value)); } + function appendInputPassword($name, $maxlength, $size, $id = null, $value = null) { + return $this->appendChild($this->ownerDocument->createElementInputPassword($name, $maxlength, $size, $id, $value)); + } function appendInputRadio($name, $id, $value, $checked) { return $this->appendChild($this->ownerDocument->createElementInputRadio($name, $id, $value, $checked)); } @@ -561,7 +612,11 @@ class ExtendedDocumentFragment extends DOMDocumentFragment { // appends an ExtendedDocument::createElementImage() as a child of this document (see there for params) // returns the new child // - // function appendFormDiv($action, $method, $name) + // function appendForm($action, $method, $name, [$id]) + // appends an ExtendedDocument::createElementForm() as a child of this fragment (see there for params) + // returns the new child + // + // function appendFormDiv($action, $method, $name, [$id]) // appends an ExtendedDocument::createElementForm() as a child of this fragment (see there for params) // returns an HTML
that is a child of the new child // @@ -573,6 +628,10 @@ class ExtendedDocumentFragment extends DOMDocumentFragment { // appends an ExtendedDocument::createElementInputText() as a child of this fragment (see there for params) // returns the new child // + // function appendInputPassword($name, $maxlength, $size, [$id], [$value]) + // appends an ExtendedDocument::createElementInputPassword() as a child of this fragment (see there for params) + // returns the new child + // // function appendInputRadio($name, $id, $value, $checked) // appends an ExtendedDocument::createElementInputRadio() as a child of this fragment (see there for params) // returns the new child @@ -630,7 +689,10 @@ class ExtendedDocumentFragment extends DOMDocumentFragment { // returns the new child function appendElement($name, $value = '') { - return $this->appendChild($this->ownerDocument->createElement($name, $value)); + // Adding the $value in createElement does NOT escape it, so use appendText to support that. + $aelem = $this->appendChild($this->ownerDocument->createElement($name)); + $aelem->appendText($value); + return $aelem; } function appendElementXML($name, $xmldata) { $aelem = $this->appendChild($this->ownerDocument->createElement($name)); @@ -643,8 +705,11 @@ class ExtendedDocumentFragment extends DOMDocumentFragment { function appendImage($src, $alt_text = '') { return $this->appendChild($this->ownerDocument->createElementImage($src, $alt_text)); } - function appendFormDiv($action, $method, $name) { - $formelem = $this->appendChild($this->ownerDocument->createElementForm($action, $method, $name)); + function appendForm($action, $method, $name, $id = null) { + return $this->appendChild($this->ownerDocument->createElementForm($action, $method, $name, $id)); + } + function appendFormDiv($action, $method, $name, $id = null) { + $formelem = $this->appendChild($this->ownerDocument->createElementForm($action, $method, $name, $id)); return $formelem->appendElement('div'); } function appendInputHidden($name, $value) { @@ -653,6 +718,9 @@ class ExtendedDocumentFragment extends DOMDocumentFragment { function appendInputText($name, $maxlength, $size, $id = null, $value = null) { return $this->appendChild($this->ownerDocument->createElementInputText($name, $maxlength, $size, $id, $value)); } + function appendInputPassword($name, $maxlength, $size, $id = null, $value = null) { + return $this->appendChild($this->ownerDocument->createElementInputPassword($name, $maxlength, $size, $id, $value)); + } function appendInputRadio($name, $id, $value, $checked) { return $this->appendChild($this->ownerDocument->createElementInputRadio($name, $id, $value, $checked)); }