Commit Graph

288 Commits

Author SHA1 Message Date
Uwe Steinmann
fc851f342a - replace_child() will not add a child twice
- domxml_open_mem() drops old optional parameter to switch between reading
  from a string or a file.
- new optional parameter for domxml_open_mem() which set the mode how the
  document shall be parsed
2002-04-23 13:24:25 +00:00
Uwe Steinmann
1e9000e315 - added new function DomDocument->ids (subject to change) 2002-04-23 06:26:46 +00:00
Uwe Steinmann
d4c273c3a7 - get_element_by_id() doesn't use xpath anymore but searches in
xmlDoc->ids as provided by libxml.
- New function DomDocument->ids() returns a list of ids (subject to change)
- replace_node() doesn't make a copy of the new node if it has no parents
2002-04-23 06:05:38 +00:00
Uwe Steinmann
de2ef69032 - DomNode->replace_node() now returns the node that was replace and
not the new node
- fixes Bug #15949
2002-04-15 15:39:10 +00:00
Uwe Steinmann
c7e391637c - added DomNode->replace_child() 2002-04-15 14:45:38 +00:00
Christian Stocker
67292ee205 @- old $node->append_child() is now $node->append_sibling(), since
@  new append_child() now behaves like excepted (= W3C standard) (chregu, uwe)
2002-04-13 10:23:46 +00:00
Uwe Steinmann
ce00085cdd - added method DomNode->remove_child() 2002-04-12 13:23:07 +00:00
Uwe Steinmann
53de1218fd - fixed stupid compile error 2002-04-12 11:47:48 +00:00
Uwe Steinmann
9b0564beb5 - insert_before(): copy node before doing the insert
- append_child(): actually do an append child and not and add sibling
- what is called xmlDtd in libxml is actually the class DocumentType
  in DOM. The domxml extension used a class DomDtd which is not defined
	in the DOM standard. Instead of using DomDtd DomDocumentType is now
	used. DomDtd has been renamed to Dtd but has not meaning anymore.
- added more functions
2002-04-12 11:32:23 +00:00
Jan Lehnardt
49d6f53007 - add quotes. Cought by: Roman Neuhauser <neuhauser@mail.cz> 2002-04-11 17:20:47 +00:00
Joseph Tate
5ae6b3e17a Added test suite for domxml extension.
#eventually I'll separate all the tests into separate files, but until
#then, I'll commit it so that everyone can use it.
2002-04-05 20:55:37 +00:00
Joseph Tate
7954c7bafe Added unlink_node alias for consistency 2002-04-05 18:18:23 +00:00
Christian Stocker
672586726e oops. that was an error not detected in shared library mode ... 2002-04-05 15:47:08 +00:00
Christian Stocker
e448122bd5 added domxml_parser(), domxml_parser_add_chunk() and domxml_parser_end().
It provides access to the PushParser interface of libxml2.
2002-04-05 15:27:52 +00:00
Christian Stocker
afeda57153 - fixed a lot of memory leaks (by Lukas Schroeder)
- get_attribute() returns False instead of empty string, if attribute not found
2002-04-04 12:16:48 +00:00
Joseph Tate
113f08bc4b Fixing compile warning under Win32 2002-03-27 21:45:45 +00:00
Derick Rethans
b5252e28dd - Fix proto (again) 2002-03-15 19:04:22 +00:00
Derick Rethans
108448f37a - proto fixes 2002-03-15 18:22:57 +00:00
Christian Stocker
7542aa7499 Return attribute name in node_name(), if it's a XML_ATTRIBUTE_NODE 2002-03-13 08:08:22 +00:00
Christian Stocker
da773a0cfc Return #document in node_name(), if it's a XML_DOCUMENT_NODE 2002-03-13 07:31:16 +00:00
Sascha Schumann
5cba3a99c2 extension converted automatically to PHP_NEW_EXTENSION. Manually confirmed 2002-03-12 16:44:00 +00:00
Christian Stocker
b6d4004fd9 forgot SEPARATE_ZVAL, produced segfaults.
segfaulted only in 4_2_0 (not in HEAD and 4_0_7, strange...)
2002-03-12 11:15:03 +00:00
Markus Fischer
f499aa1f33 - Remove *FETCH() statements.
- Clean up WS and parenthesis indentation.
2002-03-12 09:12:42 +00:00
Christian Stocker
668ade05c6 nicer (optional) formated output in dump_mem and dump_mem_file 2002-03-12 08:24:50 +00:00
Christian Stocker
48da8216f9 @ implemented domxml_elem_get_elements_by_tagname
@ new function domxml_doc_get_elements_by_tagname
@ new function domxml_doc_get_element_by_id (chregu)
2002-03-11 22:37:32 +00:00
foobar
16d61c974c - Fixed bug: #15686 2002-03-09 21:30:12 +00:00
Christian Stocker
f8964007f8 @ implemented domxml_elem_get_attribute_node(attrname) (chregu) 2002-03-08 22:16:07 +00:00
Joseph Tate
ea48f89d26 Added linking files to make build compatible with RH 7.2's updated libxslt
packages.  Should not break when compiling with older versions.  This may
fix bug #15942 as well.
Configure was giving a Warning message without these lines when --with-xslt was
specified.
2002-03-08 18:56:00 +00:00
Christian Stocker
2cdb9f1bf9 @ domxml_elem_remove_attribute(attibutename) is now implemented (chregu) 2002-03-08 11:05:13 +00:00
Christian Stocker
0cf6de6fcb @ added formatting option to domxml_dump_mem() (chregu) 2002-03-08 09:18:31 +00:00
Joseph Tate
7ad4b465ca Commented out a few lines that were causing a segfault in the unlink code.
This fixes bug #14522.  I've tested that it does not cause a segfault under
RH 7.2, and retains all functionality.  I recommend that this patch be
considered for the PHP_4_2_0 tree as well, as having a function that core
dumps every time is a bad thing(TM).
2002-03-07 23:52:57 +00:00
Joseph Tate
b6c9805cc8 Added type attribute wrappers to the remaining node types that did not have
them.  I.e. XML_ATTRIBUTE_NODE and XML_CDATA_SECTION_NODE.  Mentioned in
Bug #15918.
2002-03-07 16:34:13 +00:00
Joseph Tate
f0bb6ff3db Added TODO item to modify new_child so that more than just element nodes
can be created.
2002-03-07 16:33:02 +00:00
Sascha Schumann
9d9d39a0de Please welcome the new build system.
If you encounter any problems, please make sure to email sas@php.net
directly.

An introduction can be found on

http://schumann.cx/buildv5.txt
2002-03-07 14:20:02 +00:00
Sebastian Bergmann
90613d2282 Maintain headers. 2002-02-28 08:29:35 +00:00
Christian Stocker
94d06d34e0 "o|a|b" is not valid ZE code. changed to "o|ab" 2002-02-20 23:35:20 +00:00
Jaroslaw Kolakowski
176a426b2e Fixed compile error 2002-02-04 21:07:39 +00:00
Yasuo Ohgaki
488f6a706d Fix ZTS build 2002-02-04 11:43:07 +00:00
Derick Rethans
22b1b4547f - Fix for bug #14934: type property not set in comment nodes (domxml) 2002-01-25 07:40:38 +00:00
Jaroslaw Kolakowski
4674123cca Simplified domxml_substitute_entities_default() function 2002-01-22 18:47:06 +00:00
Christian Stocker
deb652deed Getting rid of some compile warnings (thanks to markus for pointing me in the right direction :) ) 2002-01-22 09:52:56 +00:00
Jaroslaw Kolakowski
b7f0e6bd1c Added domxml_substitute_entities_default() function 2002-01-21 23:21:32 +00:00
Chris Jarecki
5f153ca929 - fixed bug caused by libxml2 in xpath_register_ns()
- registered namespaces are now persistent
2002-01-21 19:12:00 +00:00
Hartmut Holzgraefe
b0bffb022a proto fix 2002-01-20 14:40:59 +00:00
Jaroslaw Kolakowski
833de5e0d2 - Fixed passing parameters to domxml_xslt_process(). Now they can be either strings or XPath expressions.
- Several minor fixes in domxml_xslt_process().
2002-01-19 21:12:05 +00:00
Markus Fischer
b7285dde4e - More WS fixes 2002-01-18 15:54:50 +00:00
Christian Stocker
6c08b99aac shite :) too much WS fixes. leave the licence as it was...
# (why uses pear spaces and php tabs anyway... but i don't want to start another CS flame war ...)
2002-01-18 15:45:44 +00:00
Christian Stocker
33ffb64091 - WS fixes (replaced " " by \t) 2002-01-18 15:40:26 +00:00
Christian Stocker
98e5d33bb8 - added optional parameters format and level for domxml_dump_node() 2002-01-18 15:03:13 +00:00
Christian Stocker
8e70e61bfa - added macro DOMXML_PARAM_ONE
@- added function domxml_dump_node($doc,$node). Dumps a node plus all
@  children into a string. (chregu)
2002-01-18 12:40:12 +00:00
Christian Stocker
afb8248e91 @- Added function domxml_node_get_content() (chregu) 2002-01-18 11:04:10 +00:00
Christian Stocker
793bc648bf # sorry for the mixing of different things in this commit
- added DOMXML_PARAM_THREE macro
- renamed domxml_dumpmem to domxml_dump_mem, added alias for
  domxml_dumpmem
- domxml_has_attributes was missing in in zend_function_entry
@- added function domxml_dump_file($filename,[$compression]). Dumps XML to
@  a file and uses compression, if specified (chregu)
@- added exslt integration (see http://exslt.org for details). To be
@  configured with --with-dom-exslt[=DIR] (and --with-dom-xslt) (chregu, jaroslaw)
2002-01-18 07:58:47 +00:00
Yasuo Ohgaki
6c41675b0f Use libxml2 header if there are older version. Reported by <jwagoner@wlion.com> 2002-01-17 01:18:25 +00:00
Jaroslaw Kolakowski
bde9576660 Added XsltStylesheet class with methods:
- domxml_xslt_stylesheet(string),
- domxml_xslt_stylesheet_doc(DomDocument),
- domxml_xslt_stylesheet_file(filename),
- process(DomDocument,parameters array) - previously domxml_xslt_process().
2002-01-17 01:13:39 +00:00
Chris Jarecki
300b5c0955 - using macro in xpath_register_ns()
- fixed protos in xpath functions
2002-01-14 21:43:18 +00:00
Chris Jarecki
6536287267 - Added xpath_register_ns() function.
@ - Added xpath_register_ns() function.
@   It makes possible to issue XPath queries with namespaces
@   like for example: "//namespace:sampletag" (Chris Jarecki)
2002-01-13 01:17:34 +00:00
Jaroslaw Kolakowski
ca7c5978d9 Added domxml_node_replace_node() function. 2002-01-11 21:15:46 +00:00
Markus Fischer
904e3e4a41 - Fix compilation. (Christian Stocker) 2002-01-10 01:53:22 +00:00
foobar
6d14a5c60b - Fixed compile with older libxml.
# I had libxml 2.4.2 installed.
2002-01-09 03:42:30 +00:00
Jaroslaw Kolakowski
b178addf5c A
Changed names of functions:
- htmldoc() to html_doc(),
- htmldocfile() to html_doc_file(),
- domxml_htmldumpmem() to domxml_html_dump_mem(),
- htmldumpmem() to html_dump_mem().
2002-01-08 19:13:42 +00:00
Jaroslaw Kolakowski
415d5cbb75 - Added functions: htmldoc(), htmldocfile(), domxml_htmldumpmem().
- Added error handling for the libxml library.
- Added preliminary DOM XSLT support:
-- uses the libxslt library,
-- operates on DOM objects, not strings,
-- functions: domxml_xslt_process(), domxml_xslt_version().
2002-01-08 00:31:26 +00:00
Markus Fischer
d4fa619d49 - Fix domxml_node_unlink_node() proto and return value. 2002-01-07 00:54:20 +00:00
Markus Fischer
734b77d130 - Refuse attribute nodes on add_child() and add list destructor for PI
nodes. (Christian Stocker)
- Fix append_child() according to add_child().
- Fix some protos, minor code and warning message cosmetics.
2002-01-05 23:50:59 +00:00
Hartmut Holzgraefe
e69e9be289 proto fixes 2002-01-04 14:10:05 +00:00
Markus Fischer
7f428de370 - domxml_node_add_child(): Perform deep copy before adding child to prevent
double memory freeing.
# I wonder how this could work before.
2002-01-03 13:20:04 +00:00
Markus Fischer
529761f0f7 - Fix crash with EntityRef nodes (and properly support them). 2001-12-20 14:40:43 +00:00
Markus Fischer
e1d33db97f - Damn Typo. 2001-12-14 21:03:06 +00:00
Markus Fischer
022bef6ca7 - Remove redundant code. 2001-12-14 20:48:29 +00:00
Sebastian Bergmann
38933514e1 Update headers. 2001-12-11 15:32:16 +00:00
Hartmut Holzgraefe
6a42e63dee proto fix 2001-12-05 22:43:21 +00:00
Markus Fischer
3f9f54dcca Please Egon. 2001-12-02 17:40:38 +00:00
Markus Fischer
949d0d7002 - Standardize function to accept either $obj->foo or domxml_foo($obj)
where they should.
- Use xml*Len functions where available.
- Workaround in set_content() to prevent crash.
- Cleaned up php_xpathptr_eval().
- Added NO_ARGS check where missing; moved check for $this always
  before arg parsing.
2001-12-02 16:17:51 +00:00
Markus Fischer
31a74b4aec - Reverted macro moving stupidity (thx to Sterling). 2001-12-02 12:21:50 +00:00
Egon Schmid
3c01151a08 I hope that this is a better explanation as unknown. 2001-12-02 10:00:15 +00:00
Markus Fischer
222fe23275 Last commit:
- Fix segfault in xmldoc().
- Proper free zval in php_xpathptr_eval().

This one:
- Fix segfault in php_xpathptr_eval().
- Fix win32 build (TSRMLS_FETCH issues).
- More sanity checking in php_xpath_get_object(), php_xpath_get_context()
  and php_dom_get_object().
- Moved macros into header file.
- Register le_domxmldtd, le_domxmlcdatap (removes anoying warning message on shutdown).
- Fig segfault in node_children() with unsupported node types.
- Fix leak in php_domobject_new() with unsupported note types.
- Fix leak when freeing xpath context/objects.
- Reverted behaviour change to append_child() [old crashes].
- set_content() also sets the node->content property.

# Testers/patches/contribs welcome.
2001-12-01 19:42:34 +00:00
foobar
f1397d5339 Unified the configure messages. 2001-11-30 19:00:13 +00:00
Uwe Steinmann
9ed2694ce0 - introduced several macros to simply code (done by Markus Fischer) 2001-11-28 12:07:17 +00:00
Egon Schmid
feee0f5a08 Fixed some protos. If pi means processing instruction, it should be written IMHO in uppercase characters. 2001-11-25 19:22:51 +00:00
Uwe Steinmann
6affe84ee7 - add functions clone_node(), is_blank_node(), create_entity_reference()
- fixed bug in node_name()
- fixed behavior of append_child(), it now adds a child a not a sibling
2001-11-21 17:01:19 +00:00
Stig Bakken
689252082c * zend_module_entry change: apino, debug and zts are moved first,
see README.EXTENSIONS file for upgrade help.
@Introduced extension version numbers (Stig)
2001-10-11 23:33:59 +00:00
Derick Rethans
5a34b26972 - This patch adds proper header file detection on system which
simultaneously isntallied libxml1 and libxml2 (eg. Debian) (patch by
  Markus Fischer <mfischer@php.net>)
2001-09-26 19:02:33 +00:00
Jeroen van Wolffelaar
c033288573 Back-substitute for Z_* macro's. If it breaks some extension (the script isn't optimal, it parses for example var->zval.value incorrect) please let me know. 2001-09-25 21:58:48 +00:00
Joey Smith
0098833e86 Don't manually register the resource, let php_domobject_new do it for us.
This fixes and elusive SIGSEGV.
Bug id'd and fixed by Ivo Hulinsky <huld@fido.cz>.

This fixes #13322.
2001-09-19 02:24:05 +00:00
Derick Rethans
78747bd2df - Don't wrap lines... this is annoying while coding. 2001-09-09 13:29:31 +00:00
Sterling Hughes
b5d77099fe have this go through php's error warning system 2001-09-09 09:58:49 +00:00
Sterling Hughes
6ee9f04f87 ws fix, MFB 2001-09-09 09:51:02 +00:00
Sterling Hughes
645a98ef99 Change DOM-XML's error reporting to E_WARNING which is more appropriate 2001-09-09 09:41:40 +00:00
foobar
e4df7dc7bf if test -f /usr/local/lib/libexample.s?; then <-- no workie
if test -f /usr/local/lib/libexample.so; then   <-- workie
#
# You can all point at me and laugh now..  :(
#
2001-09-07 00:24:06 +00:00
Joey Smith
a4a1543753 Fix bug #13025. 2001-08-29 22:26:04 +00:00
Joey Smith
5d451c9885 Fix 1st case of #9893. 2nd case was already fixed in previous commit. 2001-08-26 11:36:27 +00:00
Joey Smith
f0ea3478cb Some changes to help out previous users of domxml...
node::tagname == node::name.
Add property "type" to textnode types.
2001-08-21 21:49:32 +00:00
foobar
a000bdd93e libxml 2.4.2 is required now. 2001-08-18 21:08:52 +00:00
Joey Smith
862472efdc Obviously not complete, but somewhere to start. 2001-08-14 08:28:34 +00:00
Joey Smith
df7967729e Kill some duplicate PHP_FALIAS()'s.
Many of these were commented out, but I killed them anyways just to be
consistent.
2001-08-14 08:23:22 +00:00
Joey Smith
14f05c17dd Group PHP_FE and PHP_FALIAS with their own kind. 2001-08-14 07:49:28 +00:00
Joey Smith
a26110de2c Fix my own ws errors. 2001-08-14 07:44:21 +00:00
Joey Smith
b79868c28c Register le_domxmltextp. 2001-08-14 07:37:14 +00:00
Joey Smith
109f414557 Don't hammer the resource type right off the bat. 2001-08-14 07:36:18 +00:00
Joey Smith
e3d6fc72e5 Trim ws only lines. 2001-08-14 07:34:20 +00:00
foobar
a870fd2757 ws fix. Also added some missing protos and fold tags. 2001-08-14 07:14:23 +00:00