X-Git-Url: https://git-public.kairo.at/?p=php-utility-classes.git;a=blobdiff_plain;f=include%2Fcbsm%2Futil%2Fdocument.php-class;h=c267623a5f26831a85b21a281399d066cb576c42;hp=6a36dfc704987e24c8bb5ea5bb9b120cd12c0b03;hb=4bb9d784670b699918e82a2cf21d36835c6db9ee;hpb=6e698a41c5017150623531a9f2d6ec3baceda9c2
diff --git a/include/cbsm/util/document.php-class b/include/cbsm/util/document.php-class
index 6a36dfc..c267623 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 appendInputNumber($name, $maxlength, $size, [$id], [$value])
+ // appends an ExtendedDocument::createElementInputNumber() 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
@@ -74,6 +82,10 @@ class ExtendedDocument extends DOMDocument {
// appends an ExtendedDocument::createElementInputCheckbox() as a child of this document (see there for params)
// returns the new child
//
+ // function appendInputFile($name, $id, $accept)
+ // appends an ExtendedDocument::createElementInputFile() as a child of this document (see there for params)
+ // returns the new child
+ //
// function appendInputSubmit($value)
// appends an ExtendedDocument::createElementInputSubmit() as a child of this document (see there for params)
// returns the new child
@@ -139,6 +151,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 createElementInputNumber($name, $maxlength, $size, [$id], [$value])
+ // returns an ExtendedElement that is an HTML of type 'number' 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
@@ -151,6 +167,9 @@ class ExtendedDocument extends DOMDocument {
// returns an ExtendedElement that is an HTML of type 'checkbox' with the given name, id, value and
// checked state
//
+ // function createElementInputFile($name, $id, $accept)
+ // returns an ExtendedElement that is an HTML of type 'file' with the given name, id and accept
+ //
// function createElementInputSubmit($value)
// returns an ExtendedElement that is an HTML of type 'submit' with the given value as label
//
@@ -187,10 +206,7 @@ class ExtendedDocument extends DOMDocument {
}
function appendElement($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;
+ return $this->appendChild($this->createElement($name, $value));
}
function appendElementXML($name, $xmldata) {
$aelem = $this->appendChild($this->createElement($name));
@@ -204,8 +220,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) {
@@ -214,6 +233,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 appendInputNumber($name, $maxlength, $size, $id = null, $value = null) {
+ return $this->appendChild($this->createElementInputNumber($name, $maxlength, $size, $id, $value));
+ }
function appendInputPassword($name, $maxlength, $size, $id = null, $value = null) {
return $this->appendChild($this->createElementInputPassword($name, $maxlength, $size, $id, $value));
}
@@ -223,6 +245,9 @@ class ExtendedDocument extends DOMDocument {
function appendInputCheckbox($name, $id, $value, $checked) {
return $this->appendChild($this->createElementInputCheckbox($name, $id, $value, $checked));
}
+ function appendInputFile($name, $id, $accept) {
+ return $this->appendChild($this->createElementInputFile($name, $id, $accept));
+ }
function appendInputSubmit($value) {
return $this->appendChild($this->createElementInputSubmit($value));
}
@@ -272,9 +297,15 @@ class ExtendedDocument extends DOMDocument {
}
}
+ function createElement($name, $value = '') {
+ // Adding the $value in DOMDocument's createElement does NOT escape it, so override it and use appendText to support that.
+ $aelem = parent::createElement($name);
+ $aelem->appendText($value);
+ return $aelem;
+ }
+
function createElementLink($target, $value = '') {
- $link = $this->createElement('a');
- $link->appendText($value);
+ $link = $this->createElement('a', $value);
$link->setAttribute('href', $target); // XXX: take care of & etc. in links
return $link;
}
@@ -286,11 +317,12 @@ class ExtendedDocument extends DOMDocument {
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;
}
@@ -313,6 +345,17 @@ class ExtendedDocument extends DOMDocument {
return $txfield;
}
+ function createElementInputNumber($name, $maxlength, $size, $id = null, $value = null) {
+ $txfield = $this->createElement('input');
+ $txfield->setAttribute('type', 'number');
+ if (!is_null($id)) { $txfield->setAttribute('id', $id); }
+ $txfield->setAttribute('name', $name);
+ $txfield->setAttribute('maxlength', $maxlength);
+ $txfield->setAttribute('size', $size);
+ if (!is_null($value)) { $txfield->setAttribute('value', $value); }
+ return $txfield;
+ }
+
function createElementInputPassword($name, $maxlength, $size, $id = null, $value = null) {
$pwfield = $this->createElement('input');
$pwfield->setAttribute('type', 'password');
@@ -328,7 +371,7 @@ class ExtendedDocument extends DOMDocument {
$radio = $this->createElement('input');
$radio->setAttribute('type', 'radio');
$radio->setAttribute('name', $name);
- $radio->setAttribute('id', $id);
+ if (!is_null($id)) { $radio->setAttribute('id', $id); }
$radio->setAttribute('value', $value);
if ($checked) { $radio->setAttribute('checked', ''); }
return $radio;
@@ -338,12 +381,21 @@ class ExtendedDocument extends DOMDocument {
$cbox = $this->createElement('input');
$cbox->setAttribute('type', 'checkbox');
$cbox->setAttribute('name', $name);
- $cbox->setAttribute('id', $id);
+ if (!is_null($id)) { $cbox->setAttribute('id', $id); }
$cbox->setAttribute('value', $value);
if ($checked) { $cbox->setAttribute('checked', ''); }
return $cbox;
}
+ function createElementInputFile($name, $id, $accept) {
+ $fileinput = $this->createElement('input');
+ $fileinput->setAttribute('type', 'file');
+ $fileinput->setAttribute('name', $name);
+ if (!is_null($id)) { $fileinput->setAttribute('id', $id); }
+ $fileinput->setAttribute('accept', $accept);
+ return $fileinput;
+ }
+
function createElementInputSubmit($value) {
$submitbtn = $this->createElement('input');
$submitbtn->setAttribute('type', 'submit');
@@ -430,7 +482,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
//
@@ -442,6 +498,10 @@ class ExtendedElement extends DOMElement {
// appends an ExtendedDocument::createElementInputText() as a child of this element (see there for params)
// returns the new child
//
+ // function appendInputNumber($name, $maxlength, $size, [$id], [$value])
+ // appends an ExtendedDocument::createElementInputNumber() 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
@@ -454,6 +514,10 @@ class ExtendedElement extends DOMElement {
// appends an ExtendedDocument::createElementInputCheckbox() as a child of this element (see there for params)
// returns the new child
//
+ // function appendInputFile($name, $id, $accept)
+ // appends an ExtendedDocument::createElementInputFile() as a child of this element (see there for params)
+ // returns the new child
+ //
// function appendInputSubmit($value)
// appends an ExtendedDocument::createElementInputSubmit() as a child of this element (see there for params)
// returns the new child
@@ -503,10 +567,7 @@ class ExtendedElement extends DOMElement {
// returns the new child
function appendElement($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;
+ return $this->appendChild($this->ownerDocument->createElement($name, $value));
}
function appendElementXML($name, $xmldata) {
$aelem = $this->appendChild($this->ownerDocument->createElement($name));
@@ -519,8 +580,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) {
@@ -529,6 +593,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 appendInputNumber($name, $maxlength, $size, $id = null, $value = null) {
+ return $this->appendChild($this->ownerDocument->createElementInputNumber($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));
}
@@ -538,6 +605,9 @@ class ExtendedElement extends DOMElement {
function appendInputCheckbox($name, $id, $value, $checked) {
return $this->appendChild($this->ownerDocument->createElementInputCheckbox($name, $id, $value, $checked));
}
+ function appendInputFile($name, $id, $accept) {
+ return $this->appendChild($this->ownerDocument->createElementInputFile($name, $id, $accept));
+ }
function appendInputSubmit($value) {
return $this->appendChild($this->ownerDocument->createElementInputSubmit($value));
}
@@ -597,7 +667,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
//
@@ -609,6 +683,10 @@ class ExtendedDocumentFragment extends DOMDocumentFragment {
// appends an ExtendedDocument::createElementInputText() as a child of this fragment (see there for params)
// returns the new child
//
+ // function appendInputNumber($name, $maxlength, $size, [$id], [$value])
+ // appends an ExtendedDocument::createElementInputNumber() 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
@@ -621,6 +699,10 @@ class ExtendedDocumentFragment extends DOMDocumentFragment {
// appends an ExtendedDocument::createElementInputCheckbox() as a child of this fragment (see there for params)
// returns the new child
//
+ // function appendInputFile($name, $id, $accept)
+ // appends an ExtendedDocument::createElementInputFile() as a child of this fragment (see there for params)
+ // returns the new child
+ //
// function appendInputSubmit($value)
// appends an ExtendedDocument::createElementInputSubmit() as a child of this fragment (see there for params)
// returns the new child
@@ -670,10 +752,7 @@ class ExtendedDocumentFragment extends DOMDocumentFragment {
// returns the new child
function appendElement($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;
+ return $this->appendChild($this->ownerDocument->createElement($name, $value));
}
function appendElementXML($name, $xmldata) {
$aelem = $this->appendChild($this->ownerDocument->createElement($name));
@@ -686,8 +765,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) {
@@ -696,6 +778,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 appendInputNumber($name, $maxlength, $size, $id = null, $value = null) {
+ return $this->appendChild($this->ownerDocument->createElementInputNumber($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));
}
@@ -705,6 +790,9 @@ class ExtendedDocumentFragment extends DOMDocumentFragment {
function appendInputCheckbox($name, $id, $value, $checked) {
return $this->appendChild($this->ownerDocument->createElementInputCheckbox($name, $id, $value, $checked));
}
+ function appendInputFile($name, $id, $accept) {
+ return $this->appendChild($this->ownerDocument->createElementInputFile($name, $id, $accept));
+ }
function appendInputSubmit($value) {
return $this->appendChild($this->ownerDocument->createElementInputSubmit($value));
}