diff --git a/phpgwapi/js/dhtmlxtree/License_Commercial.html b/phpgwapi/js/dhtmlxtree/License_Commercial.html deleted file mode 100644 index 41e688570a..0000000000 --- a/phpgwapi/js/dhtmlxtree/License_Commercial.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - dhtmlxTree Commercial License - - - -

dhtmlxTree Commercial License

- -

1. LIMITED LICENSE GRANT.

- -

Scand LLC grants to you ("Licensee") a nonexclusive, nontransferable, worldwide, royalty-free license to use this version of dhtmlxTree (the "Software").

- -

The Licensee has the right to use the software only in ONE commercial project (for one License). It is possible to use the software on any Website unlimited number of times but within the ONE commercial project (application). "Website" and "site" means the technology, and is not limited by internet sites, it also includes intranet and extranet websites. When referred to a site, a site means a location where all the web pages share a single fully qualified domain name.

- -

The Licensee has the right to apply for free-of-charge support (consultations) on the product within 1 month since purchasing the product and also free-of-charge elimination of any found bugs during the same period.

- -

Modifications to the software are allowed, as long as they do not conflict with the license, but distribution of the modified software or part(s) of it as standalone application is forbidden. A non-exclusive royalty-free right is granted to the initial developer of the Software to use, modify and distribute your modification in future versions of the Software.

- - -

a) specific restrictions

-

The licensee is not permitted to distribute the component or its part(s) in any fashion which would promote, encourage or allow reuse or redistribution of the JavaScript component.

-

b) general restrictions

-

Software may not be transferred, leased, assigned, or sublicensed, in whole or in part.

-

IF THESE RESTRICTIONS ARE NOT ALLOWED BY YOUR RESPECTIVE LAW THEN CONTACT SCAND LLC TO CHECK IF THE RESTRICTIONS CAN BE RELAXED IN YOUR CASE. THE RELAXATION CAN ONLY BE GIVEN BY WRITTEN CONSENT.

-

c) disclaimer of warranty

-

The Software is provided "AS IS," without a warranty of any kind.

-

ALL EXPRESS OR IMPLIED REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED.

-

IF THIS DISCLAIMER IS NOT ALLOWED BY YOUR RESPECTIVE LAW THEN CONTACT SCAND LLC TO CHECK IF THE DISCLAIMER CAN BE RELAXED IN YOUR CASE. THE RELAXATION CAN ONLY BE GIVEN BY WRITTEN CONSENT.

-

d) limitation of liability.

-

IN NO EVENT WILL SCAND LLC BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES HOWEVER CAUSED AND REGARDLESS OF THEORY OF LIABILITY ARISING OUT OF THE USE OF, INABILITY TO USE OR DOWNLOADING OF THE SOFTWARE, EVEN IF SCAND LLC HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

-

IF THIS LIMITATION IS NOT ALLOWED BY YOUR RESPECTIVE LAW THEN CONTACT SCAND LLC TO CHECK IF THE LIMITATION CAN BE RELAXED IN YOUR CASE. THE RELAXATION CAN ONLY BE GIVEN BY WRITTEN CONSENT.

- -

2. COPYRIGHT

- -

SCAND LLC and its licensors retain all ownership rights to the software and related documentation. Use of the software and related documentation is governed by the license agreement accompanying the software and applicable copyright law.

-

The documentation must always follow the related software. Making unauthorized copies, adaptations, or compilation works is prohibited. SCAND LLC may revise this documentation from time to time without notice.

-

THIS DOCUMENTATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. IN NO EVENT SHALL SCAND LLC BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF BUSINESS, LOSS OF USE OR DATA, INTERRUPTION OF BUSINESS, OR FOR INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY KIND, ARISING FROM ANY ERROR IN THIS DOCUMENTATION.

-

This means that the software and documentation come with no warranty, without any limitation. No liability of any kind can be accepted and this the fullest extent. If your law doesn't allow this, then do not use this software and documentation.

- -

The Software and documentation are copyright © 1996-2005 Scand LLC. All rights reserved.

- - - - diff --git a/phpgwapi/js/dhtmlxtree/License_Enterprise.html b/phpgwapi/js/dhtmlxtree/License_Enterprise.html deleted file mode 100644 index 0463ae7030..0000000000 --- a/phpgwapi/js/dhtmlxtree/License_Enterprise.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - dhtmlxTree Enterprise License - - - -

dhtmlxTree Enterprise License

- -

1. LIMITED LICENSE GRANT.

- -

Scand LLC grants to you ("Licensee") a nonexclusive, nontransferable, worldwide, royalty-free license to use this version of dhtmlxTree (the "Software"). -The Licensee has the right to use the Software in any number of projects (applications) any number of times per each, but only developed by the ONE company (for one license). -

- -

The Licensee has the right to apply for free-of-charge support (consultations) on the product within 1 year since purchasing the product and also free-of-charge elimination of any found bugs during the same period.

- -

Modifications to the software are allowed, as long as they do not conflict with the license, but distribution of the modified software or part(s) of it as standalone application is forbidden. A non-exclusive royalty-free right is granted to the initial developer of the Software to use, modify and distribute your modification in future versions of the Software.

- -

a) specific restrictions

- -

The Licensee is not permitted to distribute the component or its part(s) in any fashion which would promote, encourage or allow reuse or redistribution of the JavaScript component.

- -

b) general restrictions

-

Software may not be transferred, leased, assigned, or sublicensed, in whole or in part.

- -

IF THESE RESTRICTIONS ARE NOT ALLOWED BY YOUR RESPECTIVE LAW THEN CONTACT SCAND LLC TO CHECK IF THE RESTRICTIONS CAN BE RELAXED IN YOUR CASE. THE RELAXATION CAN ONLY BE GIVEN BY WRITTEN CONSENT.

- -

c) disclaimer of warranty

- -

The Software is provided "AS IS," without a warranty of any kind.

-

ALL EXPRESS OR IMPLIED REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED.

-

IF THIS DISCLAIMER IS NOT ALLOWED BY YOUR RESPECTIVE LAW THEN CONTACT SCAND LLC TO CHECK IF THE DISCLAIMER CAN BE RELAXED IN YOUR CASE. THE RELAXATION CAN ONLY BE GIVEN BY WRITTEN CONSENT.

-

d) limitation of liability.

-

IN NO EVENT WILL SCAND LLC BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES HOWEVER CAUSED AND REGARDLESS OF THEORY OF LIABILITY ARISING OUT OF THE USE OF, INABILITY TO USE OR DOWNLOADING OF THE SOFTWARE, EVEN IF SCAND LLC HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

-

IF THIS LIMITATION IS NOT ALLOWED BY YOUR RESPECTIVE LAW THEN CONTACT SCAND LLC TO CHECK IF THE LIMITATION CAN BE RELAXED IN YOUR CASE. THE RELAXATION CAN ONLY BE GIVEN BY WRITTEN CONSENT.

- -

2. COPYRIGHT

-

SCAND LLC and its licensors retain all ownership rights to the software and related documentation. Use of the software and related documentation is governed by the license agreement accompanying the software and applicable copyright law.

-

The documentation must always follow the related software. Making unauthorized copies, adaptations, or compilation works is prohibited. SCAND LLC may revise this documentation from time to time without notice.

-

THIS DOCUMENTATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. IN NO EVENT SHALL SCAND LLC BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF BUSINESS, LOSS OF USE OR DATA, INTERRUPTION OF BUSINESS, OR FOR INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY KIND, ARISING FROM ANY ERROR IN THIS DOCUMENTATION.

-

This means that the software and documentation come with no warranty, without any limitation. No liability of any kind can be accepted and this the fullest extent. If your law doesn't allow this, then do not use this software and documentation.

-

The Software and documentation are copyright © 1996-2005 Scand LLC. All rights reserved.

- - - diff --git a/phpgwapi/js/dhtmlxtree/License_GPL.txt b/phpgwapi/js/dhtmlxtree/License_GPL.txt deleted file mode 100644 index 947e61d70c..0000000000 --- a/phpgwapi/js/dhtmlxtree/License_GPL.txt +++ /dev/null @@ -1,72 +0,0 @@ -GNU GENERAL PUBLIC LICENSE -Version 2, June 1991 - -Copyright (C) 1989, 1991 Free Software Foundation, Inc. -59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - -Everyone is permitted to copy and distribute verbatim copies -of this license document, but changing it is not allowed. - - -TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION -0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. - -1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. - -You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. - -2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: - - -a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. - -b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. - -c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) -These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. - -3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: - -a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, - -b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, - -c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) -The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. - -If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. - -4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. - -5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. - -6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. - -7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. - -It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. - -This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. - -8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. - -9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. - -Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. - -10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. - -NO WARRANTY - -11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - -12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - diff --git a/phpgwapi/js/dhtmlxtree/License_OpenSource.html b/phpgwapi/js/dhtmlxtree/License_OpenSource.html deleted file mode 100644 index 3e0e20a4e6..0000000000 --- a/phpgwapi/js/dhtmlxtree/License_OpenSource.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - dhtmlxTree Open Source License - - - -

dhtmlxTree Open Source License

- -

1. LIMITED LICENSE GRANT.

- -

Scand LLC grants to you ("Licensee") a nonexclusive, nontransferable, worldwide, royalty-free license to use this version of dhtmlxTree Professional Edition (the "Software") in open-source project.

- -

The Licensee has the right to use the software only in ONE open-source project (for one License). It is possible to use the software on any Website unlimited number of times but within the ONE open-source project (application). "Website" and "site" means the technology, and is not limited by internet sites, it also includes intranet and extranet websites. When referred to a site, a site means a location where all the web pages share a single fully qualified domain name.

- -

The Licensee has the right to apply for free-of-charge support (consultations) on the product within 3 months since purchasing the product and also free-of-charge elimination of any found bugs during the same period.

- -

Modifications to the software are allowed, as long as they do not conflict with the license, but distribution of the modified software or part(s) of it as standalone application is forbidden. A non-exclusive royalty-free right is granted to the initial developer of the Software to use, modify and distribute your modification in future versions of the Software.

- - -

a) specific restrictions

-

The licensee is not permitted to distribute the component or its part(s) in any fashion which would promote, encourage or allow reuse or redistribution of the JavaScript component.

-

The Licensee is not permitted to distribute the Software in source code form together with open-source product. Modified javascript files should be obfuscated using jsShreder utility (provided by Scand LLC for free) before including into distributed product.

-

b) general restrictions

-

Software may not be transferred, leased, assigned, or sublicensed, in whole or in part.

-

IF THESE RESTRICTIONS ARE NOT ALLOWED BY YOUR RESPECTIVE LAW THEN CONTACT SCAND LLC TO CHECK IF THE RESTRICTIONS CAN BE RELAXED IN YOUR CASE. THE RELAXATION CAN ONLY BE GIVEN BY WRITTEN CONSENT.

-

c) disclaimer of warranty

-

The Software is provided "AS IS," without a warranty of any kind.

-

ALL EXPRESS OR IMPLIED REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED.

-

IF THIS DISCLAIMER IS NOT ALLOWED BY YOUR RESPECTIVE LAW THEN CONTACT SCAND LLC TO CHECK IF THE DISCLAIMER CAN BE RELAXED IN YOUR CASE. THE RELAXATION CAN ONLY BE GIVEN BY WRITTEN CONSENT.

-

d) limitation of liability.

-

IN NO EVENT WILL SCAND LLC BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES HOWEVER CAUSED AND REGARDLESS OF THEORY OF LIABILITY ARISING OUT OF THE USE OF, INABILITY TO USE OR DOWNLOADING OF THE SOFTWARE, EVEN IF SCAND LLC HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

-

IF THIS LIMITATION IS NOT ALLOWED BY YOUR RESPECTIVE LAW THEN CONTACT SCAND LLC TO CHECK IF THE LIMITATION CAN BE RELAXED IN YOUR CASE. THE RELAXATION CAN ONLY BE GIVEN BY WRITTEN CONSENT.

- -

2. COPYRIGHT

- -

SCAND LLC and its licensors retain all ownership rights to the software and related documentation. Use of the software and related documentation is governed by the license agreement accompanying the software and applicable copyright law.

-

The documentation must always follow the related software. Making unauthorized copies, adaptations, or compilation works is prohibited. SCAND LLC may revise this documentation from time to time without notice.

-

THIS DOCUMENTATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. IN NO EVENT SHALL SCAND LLC BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF BUSINESS, LOSS OF USE OR DATA, INTERRUPTION OF BUSINESS, OR FOR INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY KIND, ARISING FROM ANY ERROR IN THIS DOCUMENTATION.

-

This means that the software and documentation come with no warranty, without any limitation. No liability of any kind can be accepted and this the fullest extent. If your law doesn't allow this, then do not use this software and documentation.

- -

The Software and documentation are copyright © 1996-2005 Scand LLC. All rights reserved.

- - - - diff --git a/phpgwapi/js/dhtmlxtree/cf_custom_tag/dhtmlXTree.cfm b/phpgwapi/js/dhtmlxtree/cf_custom_tag/dhtmlXTree.cfm deleted file mode 100644 index f2ce9ed492..0000000000 --- a/phpgwapi/js/dhtmlxtree/cf_custom_tag/dhtmlXTree.cfm +++ /dev/null @@ -1,82 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
- -
- - -
- \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/cf_custom_tag/dhtmlXTreeGrid.cfm b/phpgwapi/js/dhtmlxtree/cf_custom_tag/dhtmlXTreeGrid.cfm deleted file mode 100644 index b26fc49343..0000000000 --- a/phpgwapi/js/dhtmlxtree/cf_custom_tag/dhtmlXTreeGrid.cfm +++ /dev/null @@ -1,82 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
- -
- - -
- \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/cf_custom_tag/dhtmlXTreeGrid_tag_help.html b/phpgwapi/js/dhtmlxtree/cf_custom_tag/dhtmlXTreeGrid_tag_help.html deleted file mode 100644 index 1dad38c130..0000000000 --- a/phpgwapi/js/dhtmlxtree/cf_custom_tag/dhtmlXTreeGrid_tag_help.html +++ /dev/null @@ -1,109 +0,0 @@ -

Cold Fusion Tag for dhtmlXTree

- This chapter also included into main documentation for dhtmlXTree. - -<cf_dhtmlXTree - name="tree" - width="250" - height="250" - JSPath="../" - CSSPath="../" - iconspath="gfx/" - xmldoc="tree.xml" - checkboxes="false" - dragndrop="true" - style="background-color:whitesmoke;border:1px solid blue;" - onSelect="onNodeSelect" - onDrop="onDropNode"> - ...configuration xml... - </cf_dhtmlXTree> - -
  • name - [optional] name of the tree js object to use in javascript, if skiped, then name autogenerated
  • -
  • width - [optional] width of the tree (definitely it sets the with of the tree box, leaving the with of the tree itself by 100%)
  • -
  • height - [optional] height of the tree
  • -
  • JSPath - [optional] absolute or relative path to directory which contains tree js files, "js" directory by default
  • -
  • CSSPath - [optional] absolute or relative path to directory which contains tree css files, "css" directory by default
  • -
  • iconspath - [optional] absolute or relative path to directory which contains tree icon files, "img" directory by default
  • -
  • xmldoc - [mandatory for xml loading] url of the xml file used to load levels dynamically
  • -
  • checkboxes - [optional] show checkboxes (none, twoState, threeState)
  • -
  • dragndrop - [optional] activate drag-&-drop (true,false)
  • -
  • style - [optional] style for the tree box
  • -
  • onSelect - [optional] javascript function to call on node selection
  • -
  • oncheck - [optional] javascript function to call on node (un)checking
  • -
  • onDrop - [optional] javascript function to call on node drop
  • -
  • im1 - [optional] default image used for child nodes
  • -
  • im2 - [optional] default image used for opened branches
  • -
  • im3 - [optional] default image used for closed branches
  • -
    - For description of optional configuration xml - see chapter "Loading data with XML" -

    -Minimal possible tag syntax with on-page xml: - -<cf_dhtmlXTree> - <item text="Top node" id="t1" > - <item text="Child node 1" id="c1" ></item> - <item text="Child node 2" id="c2" ></item> - </item> -</cf_dhtmlXTree> - -Minimal possible tag syntax with server-side xml: - -<cf_dhtmlXTree xmldoc="tree.xml"> -</cf_dhtmlXTree> - -With images specified: - -<cf_dhtmlXTree - im1="book.gif" - im2="books_open.gif" - im3="books_close.gif"> - <item text="Mystery " id="mystery" open="yes" > - <item text="Lawrence Block" id="lb" > - <item text="All the Flowers Are Dying" id="lb_1" /> - <item text="The Burglar on the Prowl" id="lb_2" /> - <item text="The Plot Thickens" id="lb_3" /> - <item text="Grifters Game" id="lb_4" /> - <item text="The Burglar Who Thought He Was Bogart" id="lb_5" /> - </item> - <item text="Robert Crais" id="rc" > - <item text="The Forgotten Man" id="rc_1" /> - <item text="Stalking the Angel" id="rc_2" /> - <item text="Free Fall" id="rc_3" /> - <item text="Sunset Express" id="rc_4" /> - <item text="Hostage" id="rc_5" /> - </item> - <item text="Ian Rankin" id="ir" ></item> - <item text="James Patterson" id="jp" ></item> - <item text="Nancy Atherton" id="na" ></item> - </item> -</cf_dhtmlXTree> - -With Events Handlers,Checkboxes and Drag-n-drop: - -<cf_dhtmlXTree - dragndrop="true" - checkboxes="twoState" - onSelect="onClick" - onCheck="onCheck" - onDrop="onDrag"> - <item text="Mystery " id="mystery" open="yes" > - <item text="Lawrence Block" id="lb" > - <item text="All the Flowers Are Dying" id="lb_1" /> - <item text="The Burglar on the Prowl" id="lb_2" /> - <item text="The Plot Thickens" id="lb_3" /> - <item text="Grifters Game" id="lb_4" /> - <item text="The Burglar Who Thought He Was Bogart" id="lb_5" /> - </item> - <item text="Robert Crais" id="rc" > - <item text="The Forgotten Man" id="rc_1" /> - <item text="Stalking the Angel" id="rc_2" /> - <item text="Free Fall" id="rc_3" /> - <item text="Sunset Express" id="rc_4" /> - <item text="Hostage" id="rc_5" /> - </item> - <item text="Ian Rankin" id="ir" ></item> - <item text="James Patterson" id="jp" ></item> - <item text="Nancy Atherton" id="na" ></item> - </item> -</cf_dhtmlXTree> - - \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/cf_custom_tag/dhtmlXTree_tag_help.html b/phpgwapi/js/dhtmlxtree/cf_custom_tag/dhtmlXTree_tag_help.html deleted file mode 100644 index 1dad38c130..0000000000 --- a/phpgwapi/js/dhtmlxtree/cf_custom_tag/dhtmlXTree_tag_help.html +++ /dev/null @@ -1,109 +0,0 @@ -

    Cold Fusion Tag for dhtmlXTree

    - This chapter also included into main documentation for dhtmlXTree. - -<cf_dhtmlXTree - name="tree" - width="250" - height="250" - JSPath="../" - CSSPath="../" - iconspath="gfx/" - xmldoc="tree.xml" - checkboxes="false" - dragndrop="true" - style="background-color:whitesmoke;border:1px solid blue;" - onSelect="onNodeSelect" - onDrop="onDropNode"> - ...configuration xml... - </cf_dhtmlXTree> - -
  • name - [optional] name of the tree js object to use in javascript, if skiped, then name autogenerated
  • -
  • width - [optional] width of the tree (definitely it sets the with of the tree box, leaving the with of the tree itself by 100%)
  • -
  • height - [optional] height of the tree
  • -
  • JSPath - [optional] absolute or relative path to directory which contains tree js files, "js" directory by default
  • -
  • CSSPath - [optional] absolute or relative path to directory which contains tree css files, "css" directory by default
  • -
  • iconspath - [optional] absolute or relative path to directory which contains tree icon files, "img" directory by default
  • -
  • xmldoc - [mandatory for xml loading] url of the xml file used to load levels dynamically
  • -
  • checkboxes - [optional] show checkboxes (none, twoState, threeState)
  • -
  • dragndrop - [optional] activate drag-&-drop (true,false)
  • -
  • style - [optional] style for the tree box
  • -
  • onSelect - [optional] javascript function to call on node selection
  • -
  • oncheck - [optional] javascript function to call on node (un)checking
  • -
  • onDrop - [optional] javascript function to call on node drop
  • -
  • im1 - [optional] default image used for child nodes
  • -
  • im2 - [optional] default image used for opened branches
  • -
  • im3 - [optional] default image used for closed branches
  • -
    - For description of optional configuration xml - see chapter "Loading data with XML" -

    -Minimal possible tag syntax with on-page xml: - -<cf_dhtmlXTree> - <item text="Top node" id="t1" > - <item text="Child node 1" id="c1" ></item> - <item text="Child node 2" id="c2" ></item> - </item> -</cf_dhtmlXTree> - -Minimal possible tag syntax with server-side xml: - -<cf_dhtmlXTree xmldoc="tree.xml"> -</cf_dhtmlXTree> - -With images specified: - -<cf_dhtmlXTree - im1="book.gif" - im2="books_open.gif" - im3="books_close.gif"> - <item text="Mystery " id="mystery" open="yes" > - <item text="Lawrence Block" id="lb" > - <item text="All the Flowers Are Dying" id="lb_1" /> - <item text="The Burglar on the Prowl" id="lb_2" /> - <item text="The Plot Thickens" id="lb_3" /> - <item text="Grifters Game" id="lb_4" /> - <item text="The Burglar Who Thought He Was Bogart" id="lb_5" /> - </item> - <item text="Robert Crais" id="rc" > - <item text="The Forgotten Man" id="rc_1" /> - <item text="Stalking the Angel" id="rc_2" /> - <item text="Free Fall" id="rc_3" /> - <item text="Sunset Express" id="rc_4" /> - <item text="Hostage" id="rc_5" /> - </item> - <item text="Ian Rankin" id="ir" ></item> - <item text="James Patterson" id="jp" ></item> - <item text="Nancy Atherton" id="na" ></item> - </item> -</cf_dhtmlXTree> - -With Events Handlers,Checkboxes and Drag-n-drop: - -<cf_dhtmlXTree - dragndrop="true" - checkboxes="twoState" - onSelect="onClick" - onCheck="onCheck" - onDrop="onDrag"> - <item text="Mystery " id="mystery" open="yes" > - <item text="Lawrence Block" id="lb" > - <item text="All the Flowers Are Dying" id="lb_1" /> - <item text="The Burglar on the Prowl" id="lb_2" /> - <item text="The Plot Thickens" id="lb_3" /> - <item text="Grifters Game" id="lb_4" /> - <item text="The Burglar Who Thought He Was Bogart" id="lb_5" /> - </item> - <item text="Robert Crais" id="rc" > - <item text="The Forgotten Man" id="rc_1" /> - <item text="Stalking the Angel" id="rc_2" /> - <item text="Free Fall" id="rc_3" /> - <item text="Sunset Express" id="rc_4" /> - <item text="Hostage" id="rc_5" /> - </item> - <item text="Ian Rankin" id="ir" ></item> - <item text="James Patterson" id="jp" ></item> - <item text="Nancy Atherton" id="na" ></item> - </item> -</cf_dhtmlXTree> - - \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/css/dhtmlXTree.css b/phpgwapi/js/dhtmlxtree/css/dhtmlXTree.css deleted file mode 100644 index 13e5ba2788..0000000000 --- a/phpgwapi/js/dhtmlxtree/css/dhtmlXTree.css +++ /dev/null @@ -1,11 +0,0 @@ -.defaultTreeTable{ - margin : 0; - padding : 0; - border : 0; -} -.containerTableStyle { overflow : auto; font-size : 11px;} -.standartTreeRow{ font-family : Verdana, Geneva, Arial, Helvetica, sans-serif; font-size : 11px; -moz-user-select: none; } -.selectedTreeRow{ background-color : navy; color:white; font-family : Verdana, Geneva, Arial, Helvetica, sans-serif; font-size : 11px; -moz-user-select: none; } -.standartTreeImage{ width:18px; height:18px; overflow:hidden; border:0; padding:0; margin:0; } -.hiddenRow { width:1px; overflow:hidden; } -.dragSpanDiv{ font-size : 11px; border: thin solid 1 1 1 1; } diff --git a/phpgwapi/js/dhtmlxtree/css/dhtmlXTreeGrid.css b/phpgwapi/js/dhtmlxtree/css/dhtmlXTreeGrid.css deleted file mode 100644 index 387a43fe3b..0000000000 --- a/phpgwapi/js/dhtmlxtree/css/dhtmlXTreeGrid.css +++ /dev/null @@ -1,4 +0,0 @@ - .treeGridHeader { font-family:arial;font-size:12px;background-Color:activeborder;border: 1px solid;border-color : white Gray Gray white;text-align: center;height:18; overflow:hidden; background-position:right; background-repeat:no-repeat; -moz-user-select: none; } - .treeGridHeaderDrag { background-color:white; float:left; width:1px; overflow:hidden; cursor: w-resize; height:18px; } - .selectedGridRow { font-family:arial;font-size:12px; background-color:navy; color:white; -moz-user-select: none; width: 100%; overflow-x:100; height: 18px; } - .standartGridRow { font-family:arial;font-size:12px; -moz-user-select: none; width: 100%; overflow-x:100; height: 18px; vertical-align: middle; } diff --git a/phpgwapi/js/dhtmlxtree/css/editor.css b/phpgwapi/js/dhtmlxtree/css/editor.css deleted file mode 100644 index c73a98b397..0000000000 --- a/phpgwapi/js/dhtmlxtree/css/editor.css +++ /dev/null @@ -1,21 +0,0 @@ -p{ - margin-top : 1px; - margin-bottom : 1px; -} -body{ - font-weight : bold; - font-family : Tahoma; - font-size : 13px; -} -.editorComment{ - color:gray; -} -.editorTags{ - color: #0000CD; -} -.editorCFTags{ - color: #D2691E; -} -.editorQuotes{ - color: #3CB371; -} diff --git a/phpgwapi/js/dhtmlxtree/doc/alpha.html b/phpgwapi/js/dhtmlxtree/doc/alpha.html deleted file mode 100644 index dc0be26bdb..0000000000 --- a/phpgwapi/js/dhtmlxtree/doc/alpha.html +++ /dev/null @@ -1,216 +0,0 @@ -
    changeItemId(itemId,newItemId)
    change item id
    Object: dhtmlXTreeObject
    Topic(s): Node/level control; -
    File required:dhtmlXTree.js
  • itemId - old node id
  • newItemId - new node id
  • clearCut()
    clear cut
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
    clearSelection(itemId) - [Professional] -
    unselect item in tree
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • itemId - reserved
  • closeAllItems(itemId)
    collapse target node and all child nodes
    Object: dhtmlXTreeObject
    Topic(s): Node/level control; -
    File required:dhtmlXTree.js
  • itemId - node id
  • closeItem(itemId)
    collapse node
    Object: dhtmlXTreeObject
    Topic(s): Node/level control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • deleteChildItems(itemId)
    delete all children of node
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
  • itemId - node id
  • deleteItem(itemId,selectParent)
    delete node
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
  • itemId - node id
  • selectParent - If true parent of deleted item get selection, else no selected items leaving in tree.
  • disableCheckbox(itemId,mode) - [Professional] -
    disable checkbox
    Object: dhtmlXTreeObject
    Topic(s): Checkboxes/user data manipulation; -
    File required:dhtmlXTree.js
  • itemId - Id of tree item
  • mode - 1 - on, 0 - off;
  • doCut()
    mark selected item as cutted
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
    doPaste(itemId)
    insert previously cutted branch
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
  • itemId - id of new parent node
  • enableActiveImages(mode) - [Professional] -
    enable active images (clickable and dragable)
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - 1 - on, 0 - off;
  • enableAutoSavingSelected(mode,cookieName) - [Professional] -
    enable/disable autosaving selected node in cookie
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
    File required:dhtmlXTree_xw.js
  • mode - true/false
  • enableAutoTooltips(mode) - [Professional] -
    enable auto tooltips (node text as tooltip)
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - 1 - on, 0 - off;
  • enableCheckBoxes(mode)
    hide checkboxes (all checkboxes in tree)
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - enabled/disabled
  • enableContextMenu(menu) - [Professional] -
    enable context menu
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • menu - dhtmlXmenu object
  • enableDragAndDrop(mode)
    enable/disable drag-and-drop
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - enabled/disabled [ can be true/false/temporary_disabled - last value mean that tree can be D-n-D can be switched to true later ]
  • enableDragAndDropScrolling(mode) - [Professional] -
    enable/disable auto scrolling while drag-and-drop
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - enabled/disabled
  • enableHighlighting(mode) - [Professional] -
    enable item highlighting (item text highlited on mouseover)
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - 1 - on, 0 - off;
  • enableMercyDrag(mode) - [Professional] -
    enable drag without removing (copy instead of move)
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - 1 - on, 0 - off;
  • enableMultiLineItems(width) - [Professional] -
    enable multi line items
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • width - text width, if equls zero then use single lines items;
  • enableSmartCheckboxes(mode) - [Professional] -
    enable smart checkboxes ,true by default (auto checking childs and parents for 3-state checkboxes)
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - 1 - on, 0 - off;
  • enableSmartXMLParsing(mode) - [Professional] -
    enable/disable smart XML parsing mode (usefull for big, well structured XML)
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - 1 - on, 0 - off;
  • enableThreeStateCheckboxes(mode)
    enable three state checkboxes
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - 1 - on, 0 - off;
  • enableTreeImages(mode)
    enable tree images
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - 1 - on, 0 - off;
  • enableTreeLines(mode)
    enable/disable tree lines (parent-child threads)
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • mode - enable/disable tree lines
  • findItem(searchStr,direction,top) - [Professional] -
    find tree item by text, select and focus it
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
  • searchStr - search text
  • direction - 0: top -> bottom; 1: bottom -> top
  • top - 1: start searching from top
  • findItemIdByLabel(searchStr,direction,top) - [Professional] -
    find tree item by text
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
  • searchStr - search text
  • direction - 0: top -> bottom; 1: bottom -> top
  • top - 1: start searching from top
  • focusItem(itemId) - [Professional] -
    focus item in tree
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • itemId - item Id
  • getAllChecked()
    return list of identificators of nodes with checked checkboxes, separated by comma
    Object: dhtmlXTreeObject
    Topic(s): Checkboxes/user data manipulation; -
    File required:dhtmlXTree.js
    getAllCheckedBranches()
    return list of identificators of nodes with checked and third state checkboxes, separated by comma
    Object: dhtmlXTreeObject
    Topic(s): Checkboxes/user data manipulation; -
    File required:dhtmlXTree.js
    getAllFatItems()
    Returns the list of all items which has child nodes, separated by commas.
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
    getAllLeafs()
    Returns the list of all items which doesn't have child nodes.
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
    getAllPartiallyChecked()
    return list of identificators of nodes with third state checkboxes, separated by comma
    Object: dhtmlXTreeObject
    Topic(s): Checkboxes/user data manipulation; -
    File required:dhtmlXTree.js
    getAllSubItems(itemId)
    Returns the list of all children items from all next levels of tree, separated by commas.
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • getAllUnchecked(itemId)
    return list of identificators of nodes with unchecked checkboxes, separated by comma
    Object: dhtmlXTreeObject
    Topic(s): Checkboxes/user data manipulation; -
    File required:dhtmlXTree.js
    getChildItemIdByIndex(itemId,index)
    retun child node id by index
    Object: dhtmlXTreeObject
    Topic(s): Selection control; -
    File required:dhtmlXTree.js
  • itemId - parent node id
  • index - index of child node
  • getItemColor(itemId)
    get node color
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • getItemIdByIndex(itemId,index)
    retun node id by index
    Object: dhtmlXTreeObject
    Topic(s): Selection control; -
    File required:dhtmlXTree.js
  • itemId - node id
  • index - index of node, 0 based
  • getItemText(itemId)
    return item text
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • getLevel(itemId)
    return node level (position in hierarchy)
    Object: dhtmlXTreeObject
    Topic(s): Node/level control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • getOpenState(itemId)
    return open/close state
    Object: dhtmlXTreeObject
    Topic(s): Node/level control; -
    File required:dhtmlXTree.js
  • itemId - node id
  • getParentId(itemId)
    return parent item id
    Object: dhtmlXTreeObject
    Topic(s): Node/level control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • getSelectedItemId()
    retun selected item id
    Object: dhtmlXTreeObject
    Topic(s): Selection control; -
    File required:dhtmlXTree.js
    getSelectedItemText()
    retun selected node text
    Object: dhtmlXTreeObject
    Topic(s): Selection control; -
    File required:dhtmlXTree.js
    getSubItems(itemId)
    Returns the list of all children items from the next level of tree, separated by commas.
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • getUserData(itemId,name)
    return user data from target node
    Object: dhtmlXTreeObject
    Topic(s): Checkboxes/user data manipulation; -
    File required:dhtmlXTree.js
  • itemId - target node id
  • name - key for user data
  • getXMLState() - [Professional] -
    return current state of XML loading
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
    hasChildren(itemId)
    return number of childrens
    Object: dhtmlXTreeObject
    Topic(s): Node/level control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • insertNewChild(parentId,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,childs)
    create new node as a child to specified with parentId
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
  • parentId - parent node id
  • itemId - new node id
  • itemText - new node label
  • itemActionHandler - function fired on node select event (optional)
  • image1 - image for node without childrens; (optional)
  • image2 - image for closed node; (optional)
  • image3 - image for opened node (optional)
  • optionStr - options string (optional)
  • childs - node children flag (for dynamical trees) (optional)
  • insertNewItem(parentId,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,childs)
    create new node as a child to specified with parentId
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
  • parentId - parent node id
  • itemId - new node id
  • itemText - new node text
  • itemActionHandler - function fired on node select event (optional)
  • image1 - image for node without childrens; (optional)
  • image2 - image for closed node; (optional)
  • image3 - image for opened node (optional)
  • optionStr - options string (optional)
  • childs - node childs flag (for dynamical trees) (optional)
  • insertNewNext(itemId,newItemId,itemText,itemActionHandler,image1,image2,image3,optionStr,childs)
    create new node next to specified
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
  • itemId - node id
  • newItemId - new node id
  • itemText - new node text
  • itemActionHandler - function fired on node select event (optional)
  • image1 - image for node without childrens; (optional)
  • image2 - image for closed node; (optional)
  • image3 - image for opened node (optional)
  • optionStr - options string (optional)
  • childs - node childs flag (for dynamical trees) (optional)
  • isItemChecked(itemId)
    return state of nodes's checkbox
    Object: dhtmlXTreeObject
    Topic(s): Checkboxes/user data manipulation; -
    File required:dhtmlXTree.js
  • itemId - target node id
  • loadOpenStates(name) - [Professional] -
    restore open nodes from cookie
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
    File required:dhtmlXTree_xw.js
  • name - optional,cookie name
  • loadState(name) - [Professional] -
    load tree from cookie
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
    File required:dhtmlXTree_xw.js
  • name - optional,cookie name
  • loadXML(file,afterCall)
    load tree from xml file
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • file - link too XML file
  • afterCall - function which will be called after xml loading
  • loadXMLString(xmlString,afterCall)
    load tree from xml string
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • xmlString - XML string
  • afterCall - function which will be called after xml loading
  • moveItem(itemId,mode) - [Professional] -
    move item (inside of tree)
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
  • itemId - item Id
  • mode - moving mode (left,up,down)
  • openAllItems(itemId)
    expand target node and all child nodes
    Object: dhtmlXTreeObject
    Topic(s): Node/level control; -
    File required:dhtmlXTree.js
  • itemId - node id
  • openAllItemsDynamic(itemId)
    expand target node and all child nodes (same as openAllItems, but works in dynamic trees)
    Object: dhtmlXTreeObject
    Topic(s): Node/level control; -
    File required:dhtmlXTree_xw.js
  • itemId - node id, optional
  • openItem(itemId)
    expand node
    Object: dhtmlXTreeObject
    Topic(s): Node/level control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • refreshItem(itemId)
    refresh tree branch from xml (XML with description of child nodes rerequested from server)
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • itemId - id of node, if not defined tree super root used.
  • refreshItems(itemIdList,source) - [Professional] -
    refresh specified tree nodes (get XML from server and updat only nodes included in itemIdList)
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • itemIdList - list of node identificators
  • source - server side script
  • restoreSelectedItem(name) - [Professional] -
    restore selected item from cookie
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
    File required:dhtmlXTree_xw.js
  • name - optional, cookie name
  • saveOpenStates(name) - [Professional] -
    save open nodes to cookie
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
    File required:dhtmlXTree_xw.js
  • name - optional,cookie name
  • saveSelectedItem(name) - [Professional] -
    save selected item to cookie
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
    File required:dhtmlXTree_xw.js
  • name - optional, cookie name
  • saveState(name) - [Professional] -
    save tree to cookie
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
    File required:dhtmlXTree_xw.js
  • name - optional, cookie name
  • selectItem(itemId,mode)
    select node ( and optionaly fire onselect event)
    Object: dhtmlXTreeObject
    Topic(s): Selection control; -
    File required:dhtmlXTree.js
  • itemId - node id
  • mode - If true, script function for selected node will be called.
  • serializeTree() - [Professional] -
    return xml description of tree
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
    File required:dhtmlXTree_xw.js
    setCheck(itemId,state)
    change state of node's checkbox
    Object: dhtmlXTreeObject
    Topic(s): Checkboxes/user data manipulation; -
    File required:dhtmlXTree.js
  • itemId - target node id
  • state - checkbox state (0/1/unsure)
  • setChildCalcHTML( htmlA,htmlB ) - [Professional] -
    set child calculation prefix and postfix
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • htmlA - postfix ([ - by default)
  • htmlB - postfix (] - by default)
  • setChildCalcMode( mode ) - [Professional] -
    set child calculation mode
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - mode name as string . Possible values: child - child, no recursive; leafs - child without subchilds, no recursive; ,childrec - child, recursive; leafsrec - child without subchilds, recursive; disabled (disabled by default)
  • setDragBehavior(mode) - [Professional] -
    set Drag-And-Drop behavior (child - drop as chils, sibling - drop as sibling, complex - complex drop behaviour )
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - behavior name (child,sibling,complex)
  • setDragHandler(func)
    set function called when drag-and-drop event occured

    EventName:onDrag
    Event occured after item was dragged and droped on another item, but before item moving processed.
  • ID of source item
  • ID of target item
  • if node droped as sibling then contain id of item before whitch source node will be inserted
  • source Tree object
  • target Tree object

  • Event returns:true - confirm drag-and-drop; false - deny drag-and-drop;
    Object: dhtmlXTreeObject
    Topic(s): Initialization; - Event Handlers; -
    File required:dhtmlXTree.js
  • aFunc - event handling function
  • setDropHandler(func) - [Professional] -
    set function called after drag-and-drap event occured

    EventName:onDrop
    Event raised after drag-and-drop processed. Event also raised while programmatic moving nodes.
  • ID of source item
  • ID of target item
  • Object: dhtmlXTreeObject
    Topic(s): Initialization; - Event Handlers; -
    File required:dhtmlXTree.js
  • func - event handling function
  • setEscapingMode(mode) - [Professional] -
    set escaping mode (used for escaping ID in server requests)
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - escaping mode ("utf8" for UTF escaping)
  • setIconSize(newWidth,newHeight,itemId) - [Professional] -
    set size of gfx icons
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
  • newWidth - new icon width
  • newHeight - new icon height
  • itemId - item Id, if skipped set default value for all new icons, optional
  • setImageArrays(arrayName,image1,image2,image3,image4,image5)
    set images used for parent-child threads drawing
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • arrayName - name of array: plus, minus
  • image1 - line crossed image
  • image2 - image with top line
  • image3 - image with bottom line
  • image4 - image without line
  • image5 - single root image
  • setImagePath( newPath )
    set path to image directory
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • newPath - path to image directory
  • setItemCloseable(itemId,flag)
    prevent node from closing
    Object: dhtmlXTreeObject
    Topic(s): Node/level control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • flag - if 0 - node can't be closed, else node can be closed
  • setItemColor(itemId,defaultColor,selectedColor)
    set node color
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • defaultColor - node color
  • selectedColor - selected node color
  • setItemContextMenu(itemId,cMenu) - [Professional] -
    set context menu to individual nodes
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
  • itemId - node id
  • cMenu - context menu object
  • setItemImage(itemId,image1,image2)
    set item images
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • image1 - node without childrens image or closed node image (if image2 specified)
  • image2 - open node image (optional)
  • setItemImage2(itemId, image1,image2,image3)
    set item images
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • image1 - node without childrens image
  • image2 - closed node image
  • image3 - open node image
  • setItemStyle(itemId,style_string) - [Professional] -
    set individual item style
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
  • itemId - node id
  • style_string - valid CSS string
  • setItemText(itemId,newLabel,newTooltip)
    set new node text (HTML allowed)
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • newLabel - node text
  • newTooltip - (optional)tooltip for the node
  • setListDelimeter(separator)
    set list separator (comma by default)
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • separator - char or string using for separating items in lists
  • setOnCheckHandler(func)
    set function called before checkbox checked/unchecked

    EventName:onCheck
    Event raised immideatly after item in tree was checked/unchecked.
  • ID of item which will be checked/unchecked
  • Current checkbox state. 1 - item checked, 0 - item unchecked.
  • Object: dhtmlXTreeObject
    Topic(s): Initialization; - Event Handlers; -
    File required:dhtmlXTree.js
  • func - event handling function
  • setOnClickHandler(func)
    set function called when tree node selected

    EventName:onClick
    Event raised immideatly after text part of item in tree was clicked, but after default onClick functionality was processed.
  • ID of clicked item
  • Object: dhtmlXTreeObject
    Topic(s): Initialization; - Event Handlers; -
    File required:dhtmlXTree.js
  • func - event handling function
  • setOnDblClickHandler(func)
    set function called when tree node double clicked

    EventName:onDblClick
    Event raised immideatly after item in tree was doubleclicked, before default onDblClick functionality was processed.
  • ID of item which was doubleclicked

  • Event returns:true - confirm opening/closing; false - deny opening/closing;
    Object: dhtmlXTreeObject
    Topic(s): Initialization; - Event Handlers; -
    File required:dhtmlXTree.js
  • func - event handling function
  • setOnLoadingEnd(func) - [Professional] -
    set function called after xml loading/parsing ended

    EventName:onXMLLoadingEnd
    event fired simultaneously with ending XML parsing, new items already available in tree
  • tree object
  • Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • func - event handling function
  • setOnLoadingStart(func) - [Professional] -
    set function called before xml loading/parsing started

    EventName:onXMLLoadingStart
    event fired simultaneously with starting XML parsing
  • tree object
  • Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • func - event handling function
  • setOnOpenHandler(func)
    set function called before tree node opened/closed

    EventName:onOpen
    Event raised immideatly after item in tree got command to open/close , and before item was opened//closed. Event also raised for unclosable nodes and nodes without open/close functionality - in that case result of function will be ignored.
  • ID of node which will be opened/closed
  • Current open state of tree item. 0 - item has not childs, -1 - item closed, 1 - item opened.

  • Event returns:true - confirm opening/closing; false - deny opening/closing;
    Object: dhtmlXTreeObject
    Topic(s): Initialization; - Event Handlers; -
    File required:dhtmlXTree.js
  • func - event handling function
  • setOnRightClickHandler(func)
    set function called when tree node selected

    EventName:onRightClick
    Event occured after right mouse button was clicked.
  • ID of clicked item
  • Object: dhtmlXTreeObject
    Topic(s): Initialization; - Event Handlers; -
    File required:dhtmlXTree.js
  • func - event handling function
  • setSerializationLevel(userData,fullXML) - [Professional] -
    configure XML serialization
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
    File required:dhtmlXTree_xw.js
  • userData - enable/disable user data serialization
  • fullXML - enable/disable full XML serialization
  • setStdImages(image1,image2,image3)
    set default images for nodes (must be called before XML loading)
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • a0 - image for node without childrens;
  • a1 - image for closed node;
  • a2 - image for opened node
  • setSubChecked(itemId,state)
    change state of node's checkbox and all childnodes checkboxes
    Object: dhtmlXTreeObject
    Topic(s): Checkboxes/user data manipulation; -
    File required:dhtmlXTree.js
  • itemId - target node id
  • state - checkbox state
  • setUserData(itemId,name,value)
    set user data for target node
    Object: dhtmlXTreeObject
    Topic(s): Checkboxes/user data manipulation; -
    File required:dhtmlXTree.js
  • itemId - target node id
  • name - key for user data
  • value - user data
  • setXMLAutoLoading(filePath)
    enables dynamic loading from XML
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • filePath - name of script returning XML;
  • setXMLAutoLoadingBehaviour(mode) - [Professional] -
    define which script be called on dynamic loading
    Object: dhtmlXTreeObject
    Topic(s): Selection control; -
    File required:dhtmlXTree.js
  • mode - id for some_script?id=item_id ; name for some_scriptitem_id, xmlname for some_scriptitem_id.xml
  • showItemCheckbox(itemId,state) - [Professional] -
    show/hide checkbox for tree item (work only for individual items, not for all tree )
    Object: dhtmlXTreeObject
    Topic(s): Checkboxes/user data manipulation; -
    File required:dhtmlXTree.js
  • itemId - id of selected item
  • state - checkbox show state : 0/1
  • showItemSign(itemId,state) - [Professional] -
    show/hide (+/-) icon (work only for individual items, not for all tree )
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • itemId - id of selected item
  • state - show state : 0/1
  • sortTree(nodeId,order,all_levels) - [Professional] -
    reorder items in tree
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    File required:dhtmlXTree_sb.js
  • nodeId - id of top node
  • all_levels - sorting all levels or only current level
  • order - sorting order - ASC or DES
  • updateItem(itemId,name,im0,im1,im2,achecked) - [Professional] -
    update item properties
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • itemId - list of node identificators
  • name - list of node identificators, optional
  • im0 - list of node identificators, optional
  • im1 - list of node identificators, optional
  • im2 - list of node identificators, optional
  • achecked - list of node identificators, optional
  • \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/doc/dhtmlXCommon.js b/phpgwapi/js/dhtmlxtree/doc/dhtmlXCommon.js deleted file mode 100644 index c688716410..0000000000 --- a/phpgwapi/js/dhtmlxtree/doc/dhtmlXCommon.js +++ /dev/null @@ -1,463 +0,0 @@ - /** - * @desc: xmlLoader object - * @type: private - * @param: funcObject - xml parser function - * @param: object - jsControl object - * @topic: 0 - */ -function dtmlXMLLoaderObject(funcObject, dhtmlObject,async){ - this.xmlDoc=""; - if(arguments.length==2) - this.async=true; - else - this.async=async; - this.onloadAction=funcObject||null; - this.mainObject=dhtmlObject||null; - return this; -}; - /** - * @desc: xml loading handler - * @type: private - * @param: dtmlObject - xmlLoader object - * @topic: 0 - */ - dtmlXMLLoaderObject.prototype.waitLoadFunction=function(dhtmlObject){ - this.check=function (){ - if(dhtmlObject.onloadAction!=null){ - if (!dhtmlObject.xmlDoc.readyState) dhtmlObject.onloadAction(dhtmlObject.mainObject); - else { - if (dhtmlObject.xmlDoc.readyState != 4) return false; - else dhtmlObject.onloadAction(dhtmlObject.mainObject,null,null,null,dhtmlObject); } - } - }; - return this.check; - }; - - /** - * @desc: return XML top node - * @param: tagName - top XML node tag name (not used in IE, required for Safari and Mozilla) - * @type: private - * @returns: top XML node - * @topic: 0 - */ - dtmlXMLLoaderObject.prototype.getXMLTopNode=function(tagName){ - if (this.xmlDoc.responseXML) { var temp=this.xmlDoc.responseXML.getElementsByTagName(tagName); var z=temp[0]; } - else var z=this.xmlDoc.documentElement; - if (z) return z; - dhtmlxError.throwError("LoadXML","Incorrect XML",[this.xmlDoc]) - return document.createElement("DIV"); - }; - - /** - * @desc: load XML - * @type: private - * @param: filePath - xml file path - * @topic: 0 - */ - dtmlXMLLoaderObject.prototype.loadXMLString=function(xmlString){ - try - { - var parser = new DOMParser(); - this.xmlDoc = parser.parseFromString(xmlString,"text/xml"); - } - catch(e){ - this.xmlDoc = new ActiveXObject("Microsoft.XMLDOM"); - this.xmlDoc.async=this.async - this.xmlDoc.loadXML(xmlString); - } - this.onloadAction(this.mainObject); - } - dtmlXMLLoaderObject.prototype.loadXML=function(filePath){ - try - { - this.xmlDoc = new XMLHttpRequest(); - this.xmlDoc.open("GET",filePath,this.async); - this.xmlDoc.onreadystatechange=new this.waitLoadFunction(this); - this.xmlDoc.send(null); - } - catch(e){ - - if (document.implementation && document.implementation.createDocument) - { - this.xmlDoc = document.implementation.createDocument("", "", null); - this.xmlDoc.onload = new this.waitLoadFunction(this); - } - else - { - this.xmlDoc = new ActiveXObject("Microsoft.XMLDOM"); - this.xmlDoc.async=this.async - this.xmlDoc.onreadystatechange=new this.waitLoadFunction(this); - } - this.xmlDoc.load(filePath); - } - }; - - /** - * @desc: Call wrapper - * @type: private - * @param: funcObject - action handler - * @param: dhtmlObject - user data - * @returns: function handler - * @topic: 0 - */ -function callerFunction(funcObject,dhtmlObject){ - this.handler=function(e){ - if (!e) e=event; - funcObject(e,dhtmlObject); - return true; - }; - return this.handler; -}; - - /** - * @desc: Calculate absolute position of html object - * @type: private - * @param: htmlObject - html object - * @topic: 0 - */ -function getAbsoluteLeft(htmlObject){ - var xPos = htmlObject.offsetLeft; - var temp = htmlObject.offsetParent; - while (temp != null) { - xPos += temp.offsetLeft; - temp = temp.offsetParent; - } - return xPos; - } - /** - * @desc: Calculate absolute position of html object - * @type: private - * @param: htmlObject - html object - * @topic: 0 - */ -function getAbsoluteTop(htmlObject) { - var yPos = htmlObject.offsetTop; - var temp = htmlObject.offsetParent; - while (temp != null) { - yPos += temp.offsetTop; - temp = temp.offsetParent; - } - return yPos; - } - - -/** -* @desc: Convert string to it boolean representation -* @type: private -* @param: inputString - string for covertion -* @topic: 0 -*/ -function convertStringToBoolean(inputString){ if (typeof(inputString)=="string") inputString=inputString.toLowerCase(); - switch(inputString){ - case "1": - case "true": - case "yes": - case "y": - case 1: - case true: - return true; - break; - default: return false; - } -} - -/** -* @desc: find out what symbol to use as url param delimiters in further params -* @type: private -* @param: str - current url string -* @topic: 0 -*/ -function getUrlSymbol(str){ - if(str.indexOf("?")!=-1) - return "&" - else - return "?" - } - - -function dhtmlDragAndDropObject(){ - this.lastLanding=0; - this.dragNode=0; - this.dragStartNode=0; - this.dragStartObject=0; - this.tempDOMU=null; - this.tempDOMM=null; - this.waitDrag=0; - if (window.dhtmlDragAndDrop) return window.dhtmlDragAndDrop; - window.dhtmlDragAndDrop=this; - - return this; - }; - - dhtmlDragAndDropObject.prototype.removeDraggableItem=function(htmlNode){ - htmlNode.onmousedown=null; - htmlNode.dragStarter=null; - htmlNode.dragLanding=null; - } - dhtmlDragAndDropObject.prototype.addDraggableItem=function(htmlNode,dhtmlObject){ - htmlNode.onmousedown=this.preCreateDragCopy; - htmlNode.dragStarter=dhtmlObject; - this.addDragLanding(htmlNode,dhtmlObject); - } - dhtmlDragAndDropObject.prototype.addDragLanding=function(htmlNode,dhtmlObject){ - htmlNode.dragLanding=dhtmlObject; - } - dhtmlDragAndDropObject.prototype.preCreateDragCopy=function(e) - { - if (window.dhtmlDragAndDrop.waitDrag) { - window.dhtmlDragAndDrop.waitDrag=0; - document.body.onmouseup=window.dhtmlDragAndDrop.tempDOMU; - document.body.onmousemove=window.dhtmlDragAndDrop.tempDOMM; - return false; - } - - window.dhtmlDragAndDrop.waitDrag=1; - window.dhtmlDragAndDrop.tempDOMU=document.body.onmouseup; - window.dhtmlDragAndDrop.tempDOMM=document.body.onmousemove; - window.dhtmlDragAndDrop.dragStartNode=this; - window.dhtmlDragAndDrop.dragStartObject=this.dragStarter; - document.body.onmouseup=window.dhtmlDragAndDrop.preCreateDragCopy; - document.body.onmousemove=window.dhtmlDragAndDrop.callDrag; - - if ((e)&&(e.preventDefault)) { e.preventDefault(); return false; } - return false; - }; - dhtmlDragAndDropObject.prototype.callDrag=function(e){ - if (!e) e=window.event; - dragger=window.dhtmlDragAndDrop; - - if ((e.button==0)&&(isIE())) return dragger.stopDrag(); - if (!dragger.dragNode) { - dragger.dragNode=dragger.dragStartObject._createDragNode(dragger.dragStartNode); - if (!dragger.dragNode) return dragger.stopDrag(); - dragger.gldragNode=dragger.dragNode; - document.body.appendChild(dragger.dragNode); - document.body.onmouseup=dragger.stopDrag; - dragger.waitDrag=0; - dragger.dragNode.pWindow=window; - dragger.initFrameRoute(); - } - - - if (dragger.dragNode.parentNode!=window.document.body){ - var grd=dragger.gldragNode; - if (dragger.gldragNode.old) grd=dragger.gldragNode.old; - - //if (!document.all) dragger.calculateFramePosition(); - grd.parentNode.removeChild(grd); - var oldBody=dragger.dragNode.pWindow; - if (isIE()){ - var div=document.createElement("Div"); - div.innerHTML=dragger.dragNode.outerHTML; - dragger.dragNode=div.childNodes[0]; } - else dragger.dragNode=dragger.dragNode.cloneNode(true); - dragger.dragNode.pWindow=window; - dragger.gldragNode.old=dragger.dragNode; - document.body.appendChild(dragger.dragNode); - oldBody.dhtmlDragAndDrop.dragNode=dragger.dragNode; - } - dragger.dragNode.style.left=e.clientX+15+(dragger.fx?dragger.fx*(-1):0)+document.body.scrollLeft+"px"; - dragger.dragNode.style.top=e.clientY+3+(dragger.fy?(-1)*dragger.fy:0)+document.body.scrollTop+"px"; - if (!e.srcElement) var z=e.target; else z=e.srcElement; - dragger.checkLanding(z,e.clientX, e.clientY ); - } - - dhtmlDragAndDropObject.prototype.calculateFramePosition=function(n){ - //this.fx = 0, this.fy = 0; - if (window.name) { - var el =parent.frames[window.name].frameElement.offsetParent; - var fx=0; - var fy=0; - while (el) { fx += el.offsetLeft; fy += el.offsetTop; el = el.offsetParent; } - if ((parent.dhtmlDragAndDrop)) { var ls=parent.dhtmlDragAndDrop.calculateFramePosition(1); fx+=ls.split('_')[0]*1; fy+=ls.split('_')[1]*1; } - if (n) return fx+"_"+fy; - else this.fx=fx; this.fy=fy; - } - return "0_0"; - } - dhtmlDragAndDropObject.prototype.checkLanding=function(htmlObject,x,y){ - - if ((htmlObject)&&(htmlObject.dragLanding)) { if (this.lastLanding) this.lastLanding.dragLanding._dragOut(this.lastLanding); - this.lastLanding=htmlObject; this.lastLanding=this.lastLanding.dragLanding._dragIn(this.lastLanding,this.dragStartNode,x,y); } - else { - if ((htmlObject)&&(htmlObject.tagName!="BODY")) this.checkLanding(htmlObject.parentNode,x,y); - else { if (this.lastLanding) this.lastLanding.dragLanding._dragOut(this.lastLanding,x,y); this.lastLanding=0; } - } - } - dhtmlDragAndDropObject.prototype.stopDrag=function(e,mode){ - dragger=window.dhtmlDragAndDrop; - if (!mode) - { - dragger.stopFrameRoute(); - var temp=dragger.lastLanding; - dragger.lastLanding=null; - if (temp) temp.dragLanding._drag(dragger.dragStartNode,dragger.dragStartObject,temp); - } - dragger.lastLanding=null; - if ((dragger.dragNode)&&(dragger.dragNode.parentNode==document.body)) dragger.dragNode.parentNode.removeChild(dragger.dragNode); - dragger.dragNode=0; - dragger.gldragNode=0; - dragger.fx=0; - dragger.fy=0; - dragger.dragStartNode=0; - dragger.dragStartObject=0; - document.body.onmouseup=dragger.tempDOMU; - document.body.onmousemove=dragger.tempDOMM; - dragger.tempDOMU=null; - dragger.tempDOMM=null; - dragger.waitDrag=0; - } - - dhtmlDragAndDropObject.prototype.stopFrameRoute=function(win){ - if (win) - window.dhtmlDragAndDrop.stopDrag(1,1); - - for (var i=0; i20) this.selectionBar.style.width=this.allTree.offsetWidth-20; - this.selectionBar.style.display="none"; - - this.allTree.appendChild(this.selectionBar); - /* - this.selectionBox=document.createElement("DIV"); - this.selectionBox.className="selectionBox"; - this.selectionBox.innerHTML=" "; - //this.selectionBar.style.left=getAbsoluteLeft(this.allTree); - this.selectionBox.style.width=this.allTree.offsetWidth; - this.selectionBox.style.height=this.allTree.offsetHeight; - this.selectionBox.style.display="none"; - this.allTree.appendChild(this.selectionBox);*/ - - - - return this; -}; - -/** -* @desc: tree node constructor -* @param: itemId - node id -* @param: itemText - node label -* @param: parentObject - parent item object -* @param: treeObject - tree object -* @param: actionHandler - onclick event handler(optional) -* @param: mode - do not show images -* @type: private -* @topic: 0 -*/ -function dhtmlXTreeItemObject(itemId,itemText,parentObject,treeObject,actionHandler,mode){ - this.htmlNode=""; - this.acolor=""; - this.scolor=""; - this.tr=0; - this.childsCount=0; - this.tempDOMM=0; - this.tempDOMU=0; - this.dragSpan=0; - this.dragMove=0; - this.span=0; - this.closeble=1; - this.childNodes=new Array(); - this.userData=new Object(); - - this.checkstate=0; - this.treeNod=treeObject; - this.label=itemText; - this.parentObject=parentObject; - this.actionHandler=actionHandler; - this.images=new Array(treeObject.imageArray[0],treeObject.imageArray[1],treeObject.imageArray[2]); - - - this.id=treeObject._globalIdStorageAdd(itemId,this); - if (this.treeNod.checkBoxOff ) this.htmlNode=this.treeNod._createItem(1,this,mode); - else this.htmlNode=this.treeNod._createItem(0,this,mode); - - this.htmlNode.objBelong=this; - return this; - }; - - -/** -* @desc: register node -* @type: private -* @param: itemId - node identificator -* @param: itemObject - node object -* @topic: 3 -*/ - dhtmlXTreeObject.prototype._globalIdStorageAdd=function(itemId,itemObject){ - if (this._globalIdStorageFind(itemId,1,1)) { d=new Date(); itemId=d.valueOf()+"_"+itemId; return this._globalIdStorageAdd(itemId,itemObject); } - this._globalIdStorage[this._globalIdStorageSize]=itemId; - this.globalNodeStorage[this._globalIdStorageSize]=itemObject; - this._globalIdStorageSize++; - return itemId; - }; -/** -* @desc: unregister node -* @type: private -* @param: itemId - node identificator -* @topic: 3 -*/ - dhtmlXTreeObject.prototype._globalIdStorageSub=function(itemId){ - for (var i=0; i0) { beforeNode=new Object; beforeNode.tr=parentObject.childNodes[0].tr.previousSibling; } - for (ik=0; ik=2) - { - this._correctPlus(Nodes[parentObject.childsCount-2]); - this._correctLine(Nodes[parentObject.childsCount-2]); - } - if (parentObject.childsCount!=2) this._correctPlus(Nodes[0]); - if (this.tscheck) this._correctCheckStates(parentObject); - } - if (this.cMenu) this.cMenu.setContextZone(Nodes[Count].span,Nodes[Count].id); - return Nodes[Count]; -}; - - -/** -* @desc: create new node, next to existing -* @type: public -* @param: parentId - parent node id -* @param: itemId - new node id -* @param: itemText - new node text -* @param: itemActionHandler - function fired on node select event (optional) -* @param: image1 - image for node without childrens; (optional) -* @param: image2 - image for closed node; (optional) -* @param: image3 - image for opened node (optional) -* @param: optionStr - options string (optional) -* @param: childs - node childs flag (for dynamical trees) (optional) -* @topic: 2 -*/ - dhtmlXTreeObject.prototype.insertNewItem=function(parentId,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,childs){ - var parentObject=this._globalIdStorageFind(parentId); - if (!parentObject) return (-1); - return this._attachChildNode(parentObject,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,childs); - }; -/** -* @desc: parse xml -* @type: private -* @param: dhtmlObject - jsTree object -* @param: node - top XML node -* @param: parentId - parent node id -* @param: level - level of tree -* @topic: 2 -*/ - dhtmlXTreeObject.prototype._parseXMLTree=function(dhtmlObject,node,parentId,level){ - - //alert("s"+dhtmlObject.parsCount+"-"+parentId); - if (!dhtmlObject.parsCount) dhtmlObject.parsCount=1; else dhtmlObject.parsCount++; - //alert("x"+dhtmlObject.parsCount+"-"+parentId); - dhtmlObject.XMLloadingWarning=1; - var nodeAskingCall=""; - if (!node) { - node=dhtmlObject.XMLLoader.getXMLTopNode("tree"); - parentId=node.getAttribute("id"); - dhtmlObject.parsingOn=parentId; - dhtmlObject.parsedArray=new Array(); - dhtmlObject.setCheckList=""; - } - - - if (node.getAttribute("order")) - dhtmlObject._reorderXMLBranch(node); - - - for(var i=0; i0) { - for (var a=0; athis._getNodeLevel(nodeB,0)) - { - return this._moveNodeTo(itemObject,nodeA.parentObject); - } - else - { -// if (this._checkParenNodes(itemObject.id,d)) return; - return this._moveNodeTo(itemObject,nodeB.parentObject,nodeB); - } - - -/* - if ((!targetObject.tr.nextSibling)||(!targetObject.tr.nextSibling.nodem)) - return this._moveNodeTo(itemObject,targetObject.parentObject); - //move in middle of group - else return this._moveNodeTo(itemObject,targetObject.parentObject,targetObject.tr.nextSibling.nodem); - */ -// debugger; - - } - else return this._moveNodeTo(itemObject,targetObject); - - } - - /** -* @desc: fix order of nodes in collection -* @type: private -* @param: target - parent item node -* @param: zParent - before node -* @topic: 2 -*/ - -dhtmlXTreeObject.prototype._fixNodesCollection=function(target,zParent){ - var flag=0; var icount=0; - var Nodes=target.childNodes; - var Count=target.childsCount-1; - - if (zParent==Nodes[Count]) return; - for (var i=0; i0))) - if (!htmlNode.nocheckbox) { if (list) list+=","+htmlNode.id; else list=htmlNode.id; } - var j=htmlNode.childsCount; - for (var i=0; iz.childsCount)) return null; - return z.childNodes[index].id; - }; - -/** -* @desc: retun child node identificator by index -* @type: public -* @param: itemId - parent node identificator -* @param: index - index of child node -* @return: node id -* @topic: 1 -*/ - dhtmlXTreeObject.prototype.getChildItemIdByIndex=function(itemId,index){ - var z=this._globalIdStorageFind(itemId); - if ((!z)||(index>z.childsCount)) return null; - return z.childNodes[index].id; - }; - - - - - -/** -* @desc: set function called when drag-and-drop event occured -* @param: aFunc - event handling function -* @type: public -* @topic: 0 -* @event: onDrag -* @eventdesc: Event occured after item was dragged and droped on another item, but before item moving processed. - Event also raised while programmatic moving nodes. -* @eventparam: ID of source item -* @eventparam: ID of target item -* @eventparam: if node droped as sibling then contain id of item before whitch source node will be inserted -* @eventparam: source Tree object -* @eventparam: target Tree object -* @eventreturn: true - confirm drag-and-drop; false - deny drag-and-drop; -*/ - dhtmlXTreeObject.prototype.setDragHandler=function(func){ if (typeof(func)=="function") this.dragFunc=func; else this.dragFunc=eval(func); }; - - /** -* @desc: clear selection from node -* @param: htmlNode - pointer to node object -* @type: private -* @topic: 1 -*/ - dhtmlXTreeObject.prototype._clearMove=function(htmlNode){ - if ((htmlNode.parentObject)&&(htmlNode.parentObject.span)) { - htmlNode.parentObject.span.className='standartTreeRow'; - if (htmlNode.parentObject.acolor) htmlNode.parentObject.span.style.color=htmlNode.parentObject.acolor; - } - - this.selectionBar.style.display="none"; - //this.selectionBox.style.display="none"; - this.allTree.className="containerTableStyle"; - }; - - /** -* @desc: enable/disable drag-and-drop -* @type: public -* @param: mode - enabled/disabled -* @topic: 0 -*/ - dhtmlXTreeObject.prototype.enableDragAndDrop=function(mode){ - this.dragAndDropOff=convertStringToBoolean(mode); - if (this.dragAndDropOff) this.dragger.addDragLanding(this.allTree,this); - }; - - -/** -* @desc: set selection on node -* @param: node - pointer to node object -* @type: private -* @topic: 1 -*/ - dhtmlXTreeObject.prototype._setMove=function(htmlNode,x,y){ - if (htmlNode.parentObject.span) { - //window.status=x; - var a1=getAbsoluteTop(htmlNode); - var a2=getAbsoluteTop(this.allTree); - - this.dadmodec=this.dadmode;//this.dadmode; - this.dadmodefix=0; - - - if (this.dadmodec==0) - { - htmlNode.parentObject.span.className='selectedTreeRow'; - if (htmlNode.parentObject.scolor) htmlNode.parentObject.span.style.color=htmlNode.parentObject.scolor; - } - else{ - htmlNode.parentObject.span.className='standartTreeRow'; - if (htmlNode.parentObject.acolor) htmlNode.parentObject.span.style.color=htmlNode.parentObject.acolor; - this.selectionBar.style.top=a1-a2+16+this.dadmodefix; - this.selectionBar.style.left=5; - this.selectionBar.style.display=""; - } - - - if (this.autoScroll) - { - //scroll down - if ( (a1-a2-parseInt(this.allTree.scrollTop))>(parseInt(this.allTree.offsetHeight)-50) ) - this.allTree.scrollTop=parseInt(this.allTree.scrollTop)+20; - //scroll top - if ( (a1-a2)<(parseInt(this.allTree.scrollTop)+30) ) - this.allTree.scrollTop=parseInt(this.allTree.scrollTop)-20; - } - } - }; - - - -/** -* @desc: create html element for dragging -* @type: private -* @param: htmlObject - html node object -* @topic: 1 -*/ -dhtmlXTreeObject.prototype._createDragNode=function(htmlObject){ - dhtmlObject=htmlObject.parentObject; - if (this.lastSelected) this._clearMove(this.lastSelected); - var dragSpan=document.createElement('div'); - dragSpan.innerHTML=dhtmlObject.label; - dragSpan.style.position="absolute"; - dragSpan.className="dragSpanDiv"; - return dragSpan; -} - -///DragAndDrop - -dhtmlXTreeObject.prototype._preventNsDrag=function(e){ - if ((e)&&(e.preventDefault)) { e.preventDefault(); return false; } - return false; -} - -dhtmlXTreeObject.prototype._drag=function(sourceHtmlObject,dhtmlObject,targetHtmlObject){ - - if (this._autoOpenTimer) clearTimeout(this._autoOpenTimer); - - if (!targetHtmlObject.parentObject){ - targetHtmlObject=this.htmlNode.htmlNode.childNodes[0].childNodes[0].childNodes[1].childNodes[0]; - this.dadmodec=0; - } - - this._clearMove(targetHtmlObject); - var z=targetHtmlObject.parentObject.treeNod; - z._clearMove(""); - //if (z.lastSelected) z._setMove(z.lastSelected); - if ((!this.dragMove)||(this.dragMove())) - { - var newID=this._moveNode(sourceHtmlObject.parentObject,targetHtmlObject.parentObject); - z.selectItem(newID); - } - - try{ } - catch(e){ - return; - } -} - -dhtmlXTreeObject.prototype._dragIn=function(htmlObject,shtmlObject,x,y){ - if (!htmlObject.parentObject) - { - //this.selectionBox.style.display=""; - //this.selectionBox.style.top=this.allTree.scrollTop; - this.allTree.className="containerTableStyle selectionBox"; - //if (this.htmlNode.childsCount==0) - return htmlObject; - //else return 0; - } - - if ( (!this._checkParenNodes(shtmlObject.parentObject.id,htmlObject.parentObject,shtmlObject.parentObject))&&(htmlObject.parentObject.id!=shtmlObject.parentObject.id)) - { - htmlObject.parentObject.span.parentNode.appendChild(this.selectionBar); - this._setMove(htmlObject,x,y); - if (this._getOpenState(htmlObject.parentObject)<0) - this._autoOpenTimer=window.setTimeout(new callerFunction(this._autoOpenItem,this),1000); - this._autoOpenId=htmlObject.parentObject.id; - return htmlObject; - } - else return 0; -} -dhtmlXTreeObject.prototype._autoOpenItem=function(e,treeObject){ - treeObject.openItem(treeObject._autoOpenId); -}; -dhtmlXTreeObject.prototype._dragOut=function(htmlObject){ -this._clearMove(htmlObject); -if (this._autoOpenTimer) clearTimeout(this._autoOpenTimer); - } - - - -/** -* @desc: return next node -* @type: private -* @param: item - node object -* @param: mode - inner flag -* @return: next node or -1 -* @topic: 2 -*/ -dhtmlXTreeObject.prototype._getNextNode=function(item,mode){ - if ((!mode)&&(item.childsCount)) return item.childNodes[0]; - if (item==this.htmlNode) - return -1; - if ((item.tr)&&(item.tr.nextSibling)&&(item.tr.nextSibling.nodem)) - return item.tr.nextSibling.nodem; - - return this._getNextNode(item.parentObject,true); -}; - -/** -* @desc: return last child of item (include all sub-child collections) -* @type: private -* @param: item - node object -* @topic: 2 -*/ -dhtmlXTreeObject.prototype._lastChild=function(item){ - if (item.childsCount) - return this._lastChild(item.childNodes[item.childsCount-1]); - else return item; -}; - -/** -* @desc: return previous node -* @type: private -* @param: item - node object -* @param: mode - inner flag -* @return: previous node or -1 -* @topic: 2 -*/ -dhtmlXTreeObject.prototype._getPrevNode=function(node,mode){ - if ((node.tr)&&(node.tr.previousSibling)&&(node.tr.previousSibling.nodem)) - return this._lastChild(node.tr.previousSibling.nodem); - - if (node.parentObject) - return node.parentObject; - else return -1; -}; - - - - - - - - - diff --git a/phpgwapi/js/dhtmlxtree/doc/gr/alpha.html b/phpgwapi/js/dhtmlxtree/doc/gr/alpha.html deleted file mode 100644 index 885fa80596..0000000000 --- a/phpgwapi/js/dhtmlxtree/doc/gr/alpha.html +++ /dev/null @@ -1,81 +0,0 @@ -
    addRow(parentId,itemId,data,itemActionHandler,image1,image2,image3)
    add row to grid
    Object: dhtmlXTreeGridObject
    Topic(s): Add/delete; -
  • parentId - parent node id
  • itemId - new node id
  • data - array of row data
  • itemActionHandler - function fired on node select event (optional)
  • image1 - image for node without childrens; (optional)
  • image2 - image for closed node; (optional)
  • image3 - image for opened node (optional)
  • changeItemId(itemId,newItemId)
    change item id
    Object: dhtmlXTreeObject
    Topic(s): Node/level control; -
  • itemId - old node id
  • newItemId - new node id
  • clearCut()
    clear cut
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
    closeAllItems(itemId)
    collapse target node and all child nodes
    Object: dhtmlXTreeObject
    Topic(s): Node/level control; -
  • itemId - node id
  • closeItem(itemId)
    collapse node
    Object: dhtmlXTreeObject
    Topic(s): Node/level control; -
  • itemId - identificator of node
  • deleteChildItems(itemId)
    delete all child of node
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
  • itemId - node identificator
  • deleteItem(itemId,selectParent)
    delete node
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
  • itemId - node identificator
  • selectParent - If true parent of deleted item get selection, else no selected items leaving in tree.
  • deleteRow(itemId)
    delete row of grid
    Object: dhtmlXTreeGridObject
    Topic(s): Add/delete; -
  • itemId - item id
  • doCut()
    mark selected item as cutted
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
    doPaste(itemId)
    insert previously cutted branch
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
  • itemId - id of new parent node
  • enableCheckBoxes(mode)
    hide checkboxes
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    enableDragAndDrop(mode)
    enable/disable drag-and-drop
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
    enableTreeLines(mode)
    enableTreeLines(mode);
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
  • mode - enable/disable tree lines
  • getAllChecked()
    return list of identificators of nodes with checked checkboxes
    Object: dhtmlXTreeObject
    Topic(s): Checkboxes/user data manipulation; -
    getAllCheckedBranches()
    return list of identificators of nodes with checked checkboxes, and parent of that checkboxes
    Object: dhtmlXTreeObject
    Topic(s): Checkboxes/user data manipulation; -
    getAllSubItems(itemId)
    Returns the list of all children items from all next levels of tree, separated by commas.
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
  • itemId - identificator of node
  • getChildItemIdByIndex(itemId,index)
    retun child node identificator by index
    Object: dhtmlXTreeObject
    Topic(s): Selection control; -
  • itemId - parent node identificator
  • index - index of child node
  • getGridData(itemId,index)
    get data from specefied row by index
    Object: dhtmlXTreeGridObject
    Topic(s): Data manipulation; -
  • itemId - item id
  • index - column index
  • getItemColor(itemId)
    get node color
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
  • itemId - identificator of node
  • getItemIdByIndex(itemId,index)
    retun node identificator by index
    Object: dhtmlXTreeObject
    Topic(s): Selection control; -
  • itemId - node identificator
  • index - index of node
  • getItemText(itemId)
    return node text
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
  • itemId - identificator of node
  • getLevel(itemId)
    return node level
    Object: dhtmlXTreeObject
    Topic(s): Node/level control; -
  • itemId - identificator of node
  • getParentId(itemId)
    return parent node identificator
    Object: dhtmlXTreeObject
    Topic(s): Node/level control; -
  • itemId - identificator of node
  • getSelectedItemId()
    retun selected node identificator
    Object: dhtmlXTreeObject
    Topic(s): Selection control; -
    getSelectedItemText()
    retun selected node text
    Object: dhtmlXTreeObject
    Topic(s): Selection control; -
    getSubItems(itemId)
    Returns the list of all children items from the next level of tree, separated by commas.
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
  • itemId - identificator of node
  • getUserData(itemId,name)
    return user data from target node
    Object: dhtmlXTreeObject
    Topic(s): Checkboxes/user data manipulation; -
  • itemId - target node identificator
  • name - key for user data
  • hasChildren(itemId)
    return count of childrens
    Object: dhtmlXTreeObject
    Topic(s): Node/level control; -
  • itemId - identificator of node
  • insertNewItem(parentId,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,childs)
    create new child node
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
  • parentId - parent node id
  • itemId - new node id
  • itemText - new node text
  • itemActionHandler - function fired on node select event (optional)
  • image1 - image for node without childrens; (optional)
  • image2 - image for closed node; (optional)
  • image3 - image for opened node (optional)
  • optionStr - options string (optional)
  • childs - node childs flag (for dynamical trees) (optional)
  • insertNewNext(parentItemId,itemId,itemName,itemActionHandler,image1,image2,image3,optionStr,childs)
    create new node next to specified
    Object: dhtmlXTreeObject
    Topic(s): Add/delete; -
  • parentItemId - node id
  • itemId - new node id
  • itemName - new node text
  • itemActionHandler - function fired on node select event (optional)
  • image1 - image for node without childrens; (optional)
  • image2 - image for closed node; (optional)
  • image3 - image for opened node (optional)
  • optionStr - options string (optional)
  • childs - node childs flag (for dynamical trees) (optional)
  • isItemChecked(itemId)
    return state of nodes's checkbox
    Object: dhtmlXTreeObject
    Topic(s): Checkboxes/user data manipulation; -
  • itemId - target node identificator
  • loadXML(file)
    load tree from xml file
    Object: dhtmlXTreeGridObject
    Topic(s): Initialization; -
  • file - link to XML file
  • loadXMLString(xmlString)
    load tree from xml string
    Object: dhtmlXTreeGridObject
    Topic(s): Initialization; -
  • xmlString - XML string
  • loadXMLString(xmlString)
    load tree from xml string
    Object: dhtmlXTreeObject
    Topic(s): Private; -
  • xmlString - XML string
  • openAllItems(itemId)
    expand target node and all child nodes
    Object: dhtmlXTreeObject
    Topic(s): Node/level control; -
  • itemId - node id
  • openItem(itemId)
    expand node
    Object: dhtmlXTreeObject
    Topic(s): Node/level control; -
  • itemId - identificator of node
  • refreshItem(itemId)
    refresh tree branch from xml
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
  • itemId - identificator of node, if not defined tree super root used.
  • selectItem(itemId,mode)
    select node ( and optionaly fire onselect event)
    Object: dhtmlXTreeObject
    Topic(s): Selection control; -
  • itemId - node identificator
  • mode - If true, script function for selected node will be called.
  • setCheck(itemId,state)
    change state of node's checkbox
    Object: dhtmlXTreeObject
    Topic(s): Checkboxes/user data manipulation; -
  • itemId - target node identificator
  • state - checkbox state
  • setDragHandler(func)
    set function called when drag-and-drap event occured
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
  • aFunc - event handling function
  • setGridData(itemId,index,newValue)
    set data in specefied row by index
    Object: dhtmlXTreeGridObject
    Topic(s): Data manipulation; -
  • itemId - item id
  • index - column index
  • newValue - new grid value
  • setImageArrays(arrayName,image1,image2,image3,image4,image5)
    enableTreeLines(mode);
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
  • arrayName - name of array: plus, minus
  • image1 - line crossed image
  • image2 - image with top line
  • image3 - image with bottom line
  • image4 - image without line
  • image5 - single root image
  • setImagePath( newPath )
    set path to image directory
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
  • newPath - path to image directory
  • setItemCloseable(itemId,flag)
    prevent node from closing
    Object: dhtmlXTreeObject
    Topic(s): Node/level control; -
  • itemId - identificator of node
  • flag - if 0 - node can't be closed, else node can be closed
  • setItemColor(itemId,defaultColor,selectedColor)
    set node color
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
  • itemId - identificator of node
  • defaultColor - node color
  • selectedColor - selected node color
  • setItemImage(itemId,image1,image2)
    set node images
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
  • itemId - identificator of node
  • image1 - node without childrens image or closed node image (if image2 specified)
  • image2 - open node image (optional)
  • setItemImage2(itemId, image1,image2,image3)
    set node images
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
  • itemId - identificator of node
  • image1 - node without childrens image
  • image2 - closed node image
  • image3 - open node image
  • setItemText(itemId,newLabel)
    set new node text (HTML allowed)
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
  • itemId - identificator of node
  • newLabel - node text
  • setOnCheckHandler(func)
    set function called before checkbox checked/unchecked
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
  • func - event handling function
  • setOnClickHandler(func)
    set function called when tree node selected
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
  • func - event handling function
  • setOnDblClickHandler(func)
    set function called when tree node double clicked
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
  • func - event handling function
  • setOnOpenHandler(func)
    set function called before tree node opened/closed
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
  • func - event handling function
  • setStdImages(image1,image2,image3)
    set default images for nodes
    Object: dhtmlXTreeObject
    Topic(s): Appearence control; -
  • a0 - image for node without childrens;
  • a1 - image for closed node;
  • a2 - image for opened node
  • setSubChecked(itemId,state)
    change state of node's checkbox and all childnodes checkboxes
    Object: dhtmlXTreeObject
    Topic(s): Checkboxes/user data manipulation; -
  • itemId - target node identificator
  • state - checkbox state
  • setUserData(itemId,name,value)
    set user data for target node
    Object: dhtmlXTreeObject
    Topic(s): Checkboxes/user data manipulation; -
  • itemId - target node identificator
  • name - key for user data
  • value - user data
  • setXMLAutoLoading(filePath)
    enables dinamic loading from XML mode
    Object: dhtmlXTreeGridObject
    Topic(s): Initialization; -
  • filePath - name of script returning XML;
  • setXMLAutoLoading(filePath)
    enables dinamic loading from XML mode
    Object: dhtmlXTreeObject
    Topic(s): Initialization; -
  • filePath - name of script returning XML;
  • \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/doc/gr/guide.html b/phpgwapi/js/dhtmlxtree/doc/gr/guide.html deleted file mode 100644 index 0b9cbb989d..0000000000 --- a/phpgwapi/js/dhtmlxtree/doc/gr/guide.html +++ /dev/null @@ -1,342 +0,0 @@ - - - - - DHTML Tree Grid Extension guide and samples - - - - - - - -

    dhtmlXTreeGrid Guide and Samples

    -
    - - -

    Main features

    -
  • Multibrowser/Multiplatform support
  • -
  • Full controll with JavaScript
  • -
  • Dynamic loading
  • -
  • XML support
  • -
  • drag-&-drop (within one treegrid, between treegrids)
  • -
  • checkboxes (two/three states)
  • -
  • customizable icons (with javascript or xml)
  • -
  • user data for nodes
  • -
  • high stability
  • -
  • Macromedia Cold Fusion support
  • -
    - -

    Supported browsers

    -
  • IE 5.x and above
  • -
  • Mac OS X Safari
  • -
  • Mozilla 1.4 and above
  • -
  • FireFox 0.9 and above
  • -
  • Opera (Xml loading depends on browser version)
  • -
    - -

    Working with dhtmlXTreeGrid

    - -

    Initialize object on page

    - -

    Set Event Handlers

    - -

    Adding nodes with Script

    - -

    Loading data with XML

    - -

    Setting custom icons to nodes

    - -

    Building dynamic tree

    - - - -

    Manipulating nodes

    -
    - - - -

    Cold Fusion Tag for dhtmlXTree

    - - -
    - - diff --git a/phpgwapi/js/dhtmlxtree/doc/gr/index.html b/phpgwapi/js/dhtmlxtree/doc/gr/index.html deleted file mode 100644 index 32836ba0fc..0000000000 --- a/phpgwapi/js/dhtmlxtree/doc/gr/index.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - DHTML Tree Grid SDK - - - - - - - - - - - - - - - -
    - dhtmlXTreeGrid SDK -
    - -
    -©Scand LLC, 2004 - - - - - - - - diff --git a/phpgwapi/js/dhtmlxtree/doc/gr/ogroup.html b/phpgwapi/js/dhtmlxtree/doc/gr/ogroup.html deleted file mode 100644 index 1c23bbe478..0000000000 --- a/phpgwapi/js/dhtmlxtree/doc/gr/ogroup.html +++ /dev/null @@ -1,81 +0,0 @@ -

    dhtmlXTreeGridObject object API

    addRow(parentId,itemId,data,itemActionHandler,image1,image2,image3)
    add row to grid
    Topic(s): Add/delete; -
  • parentId - parent node id
  • itemId - new node id
  • data - array of row data
  • itemActionHandler - function fired on node select event (optional)
  • image1 - image for node without childrens; (optional)
  • image2 - image for closed node; (optional)
  • image3 - image for opened node (optional)
  • deleteRow(itemId)
    delete row of grid
    Topic(s): Add/delete; -
  • itemId - item id
  • getGridData(itemId,index)
    get data from specefied row by index
    Topic(s): Data manipulation; -
  • itemId - item id
  • index - column index
  • loadXML(file)
    load tree from xml file
    Topic(s): Initialization; -
  • file - link to XML file
  • loadXMLString(xmlString)
    load tree from xml string
    Topic(s): Initialization; -
  • xmlString - XML string
  • setGridData(itemId,index,newValue)
    set data in specefied row by index
    Topic(s): Data manipulation; -
  • itemId - item id
  • index - column index
  • newValue - new grid value
  • setXMLAutoLoading(filePath)
    enables dinamic loading from XML mode
    Topic(s): Initialization; -
  • filePath - name of script returning XML;
  • dhtmlXTreeObject object API

    changeItemId(itemId,newItemId)
    change item id
    Topic(s): Node/level control; -
  • itemId - old node id
  • newItemId - new node id
  • clearCut()
    clear cut
    Topic(s): Add/delete; -
    closeAllItems(itemId)
    collapse target node and all child nodes
    Topic(s): Node/level control; -
  • itemId - node id
  • closeItem(itemId)
    collapse node
    Topic(s): Node/level control; -
  • itemId - identificator of node
  • deleteChildItems(itemId)
    delete all child of node
    Topic(s): Add/delete; -
  • itemId - node identificator
  • deleteItem(itemId,selectParent)
    delete node
    Topic(s): Add/delete; -
  • itemId - node identificator
  • selectParent - If true parent of deleted item get selection, else no selected items leaving in tree.
  • doCut()
    mark selected item as cutted
    Topic(s): Add/delete; -
    doPaste(itemId)
    insert previously cutted branch
    Topic(s): Add/delete; -
  • itemId - id of new parent node
  • enableCheckBoxes(mode)
    hide checkboxes
    Topic(s): Initialization; -
    enableDragAndDrop(mode)
    enable/disable drag-and-drop
    Topic(s): Initialization; -
    enableTreeLines(mode)
    enableTreeLines(mode);
    Topic(s): Appearence control; -
  • mode - enable/disable tree lines
  • getAllChecked()
    return list of identificators of nodes with checked checkboxes
    Topic(s): Checkboxes/user data manipulation; -
    getAllCheckedBranches()
    return list of identificators of nodes with checked checkboxes, and parent of that checkboxes
    Topic(s): Checkboxes/user data manipulation; -
    getAllSubItems(itemId)
    Returns the list of all children items from all next levels of tree, separated by commas.
    Topic(s): Appearence control; -
  • itemId - identificator of node
  • getChildItemIdByIndex(itemId,index)
    retun child node identificator by index
    Topic(s): Selection control; -
  • itemId - parent node identificator
  • index - index of child node
  • getItemColor(itemId)
    get node color
    Topic(s): Appearence control; -
  • itemId - identificator of node
  • getItemIdByIndex(itemId,index)
    retun node identificator by index
    Topic(s): Selection control; -
  • itemId - node identificator
  • index - index of node
  • getItemText(itemId)
    return node text
    Topic(s): Appearence control; -
  • itemId - identificator of node
  • getLevel(itemId)
    return node level
    Topic(s): Node/level control; -
  • itemId - identificator of node
  • getParentId(itemId)
    return parent node identificator
    Topic(s): Node/level control; -
  • itemId - identificator of node
  • getSelectedItemId()
    retun selected node identificator
    Topic(s): Selection control; -
    getSelectedItemText()
    retun selected node text
    Topic(s): Selection control; -
    getSubItems(itemId)
    Returns the list of all children items from the next level of tree, separated by commas.
    Topic(s): Appearence control; -
  • itemId - identificator of node
  • getUserData(itemId,name)
    return user data from target node
    Topic(s): Checkboxes/user data manipulation; -
  • itemId - target node identificator
  • name - key for user data
  • hasChildren(itemId)
    return count of childrens
    Topic(s): Node/level control; -
  • itemId - identificator of node
  • insertNewItem(parentId,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,childs)
    create new child node
    Topic(s): Add/delete; -
  • parentId - parent node id
  • itemId - new node id
  • itemText - new node text
  • itemActionHandler - function fired on node select event (optional)
  • image1 - image for node without childrens; (optional)
  • image2 - image for closed node; (optional)
  • image3 - image for opened node (optional)
  • optionStr - options string (optional)
  • childs - node childs flag (for dynamical trees) (optional)
  • insertNewNext(parentItemId,itemId,itemName,itemActionHandler,image1,image2,image3,optionStr,childs)
    create new node next to specified
    Topic(s): Add/delete; -
  • parentItemId - node id
  • itemId - new node id
  • itemName - new node text
  • itemActionHandler - function fired on node select event (optional)
  • image1 - image for node without childrens; (optional)
  • image2 - image for closed node; (optional)
  • image3 - image for opened node (optional)
  • optionStr - options string (optional)
  • childs - node childs flag (for dynamical trees) (optional)
  • isItemChecked(itemId)
    return state of nodes's checkbox
    Topic(s): Checkboxes/user data manipulation; -
  • itemId - target node identificator
  • loadXMLString(xmlString)
    load tree from xml string
    Topic(s): Private; -
  • xmlString - XML string
  • openAllItems(itemId)
    expand target node and all child nodes
    Topic(s): Node/level control; -
  • itemId - node id
  • openItem(itemId)
    expand node
    Topic(s): Node/level control; -
  • itemId - identificator of node
  • refreshItem(itemId)
    refresh tree branch from xml
    Topic(s): Appearence control; -
  • itemId - identificator of node, if not defined tree super root used.
  • selectItem(itemId,mode)
    select node ( and optionaly fire onselect event)
    Topic(s): Selection control; -
  • itemId - node identificator
  • mode - If true, script function for selected node will be called.
  • setCheck(itemId,state)
    change state of node's checkbox
    Topic(s): Checkboxes/user data manipulation; -
  • itemId - target node identificator
  • state - checkbox state
  • setDragHandler(func)
    set function called when drag-and-drap event occured
    Topic(s): Initialization; -
  • aFunc - event handling function
  • setImageArrays(arrayName,image1,image2,image3,image4,image5)
    enableTreeLines(mode);
    Topic(s): Appearence control; -
  • arrayName - name of array: plus, minus
  • image1 - line crossed image
  • image2 - image with top line
  • image3 - image with bottom line
  • image4 - image without line
  • image5 - single root image
  • setImagePath( newPath )
    set path to image directory
    Topic(s): Initialization; -
  • newPath - path to image directory
  • setItemCloseable(itemId,flag)
    prevent node from closing
    Topic(s): Node/level control; -
  • itemId - identificator of node
  • flag - if 0 - node can't be closed, else node can be closed
  • setItemColor(itemId,defaultColor,selectedColor)
    set node color
    Topic(s): Appearence control; -
  • itemId - identificator of node
  • defaultColor - node color
  • selectedColor - selected node color
  • setItemImage(itemId,image1,image2)
    set node images
    Topic(s): Appearence control; -
  • itemId - identificator of node
  • image1 - node without childrens image or closed node image (if image2 specified)
  • image2 - open node image (optional)
  • setItemImage2(itemId, image1,image2,image3)
    set node images
    Topic(s): Appearence control; -
  • itemId - identificator of node
  • image1 - node without childrens image
  • image2 - closed node image
  • image3 - open node image
  • setItemText(itemId,newLabel)
    set new node text (HTML allowed)
    Topic(s): Appearence control; -
  • itemId - identificator of node
  • newLabel - node text
  • setOnCheckHandler(func)
    set function called before checkbox checked/unchecked
    Topic(s): Initialization; -
  • func - event handling function
  • setOnClickHandler(func)
    set function called when tree node selected
    Topic(s): Initialization; -
  • func - event handling function
  • setOnDblClickHandler(func)
    set function called when tree node double clicked
    Topic(s): Initialization; -
  • func - event handling function
  • setOnOpenHandler(func)
    set function called before tree node opened/closed
    Topic(s): Initialization; -
  • func - event handling function
  • setStdImages(image1,image2,image3)
    set default images for nodes
    Topic(s): Appearence control; -
  • a0 - image for node without childrens;
  • a1 - image for closed node;
  • a2 - image for opened node
  • setSubChecked(itemId,state)
    change state of node's checkbox and all childnodes checkboxes
    Topic(s): Checkboxes/user data manipulation; -
  • itemId - target node identificator
  • state - checkbox state
  • setUserData(itemId,name,value)
    set user data for target node
    Topic(s): Checkboxes/user data manipulation; -
  • itemId - target node identificator
  • name - key for user data
  • value - user data
  • setXMLAutoLoading(filePath)
    enables dinamic loading from XML mode
    Topic(s): Initialization; -
  • filePath - name of script returning XML;
  • \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/doc/gr/tgroup.html b/phpgwapi/js/dhtmlxtree/doc/gr/tgroup.html deleted file mode 100644 index 0edb193a0a..0000000000 --- a/phpgwapi/js/dhtmlxtree/doc/gr/tgroup.html +++ /dev/null @@ -1,25 +0,0 @@ -

    dhtmlXTreeGridObject object API

    Initialization

    Add/delete

    Data manipulation

    dhtmlXTreeObject object API

    Initialization

    Selection control

    Add/delete

    Private

    Node/level control

    Checkboxes/user data manipulation

    Appearence control

    \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/doc/guide.html b/phpgwapi/js/dhtmlxtree/doc/guide.html deleted file mode 100644 index 357500d287..0000000000 --- a/phpgwapi/js/dhtmlxtree/doc/guide.html +++ /dev/null @@ -1,626 +0,0 @@ - - - - - DHTML Tree guide and samples - - - - -

    dhtmlXTree Guide and Samples

    -
    - -

    Main features

    -
  • Multibrowser/Multiplatform support
  • -
  • Full controll with JavaScript
  • -
  • Dynamic loading
  • -
  • XML support
  • -
  • Dynamic rendering (Smart XML parsing) for big trees
  • -
  • drag-&-drop (within one tree, between trees, between frames)
  • -
  • checkboxes (two/three states)
  • -
  • customizable icons (with javascript or xml)
  • -
  • context menu (integration with dhtmlxMenu)
  • -
  • user data for nodes
  • -
  • multi-line tree items
  • -
  • high stability
  • -
  • Macromedia Cold Fusion support
  • -
  • JSP support
  • -
  • ASP.NET support
  • -
    - -

    Supported browsers

    -
  • IE 5.x and above
  • -
  • Mac OS X Safari
  • -
  • Mozilla 1.4 and above
  • -
  • FireFox 0.9 and above
  • -
  • Opera (Xml loading depends on browser version)
  • -
    - -

    Working with dhtmlXTree

    - -

    Initialize object on page

    - -<div id="treeBox" style="width:200;height:200"></div> -<script> - tree=new dhtmlXTreeObject(document.getElementById('treeBox'),"100%","100%",0); - tree.setImagePath("gfx/"); - tree.enableCheckBoxes(false); - tree.enableDragAndDrop(true); -</script> - - Parameters passed to the constructor are: -
  • object to attach tree to (should be loaded before calling constructor)
  • -
  • width of the tree
  • -
  • height of the tree
  • -
  • identifier of level parent to tree root level (superroot)

  • - Specify Additional parameters of the tree: -
  • setImagePath(url) - method specifies the path to the folder with tree icons
  • -
  • enableCheckBoxes(mode) - enable/disable checkboxes in tree (checkboxes appear by default)
  • -
  • enableDragAndDrop(mode) - enable/disable drag-n-drop in tree
  • -
    - -

    Set Event Handlers

    - -<div id="treeBox" style="width:200;height:200"></div> -<script> - tree=new dhtmlXTreeObject(document.getElementById('treeBox'),"100%","100%",0); - ... - tree.setOnClickHandler(onNodeSelect);//set function object to call on node select - //see other available event handlers in API documentation - function onNodeSelect(nodeId){ - ... - } -</script> - - In most cases functions specified inside event handlers get some values with the arguments. For details about passed arguments please refer to API documentation.
    -
    - -

    Adding nodes with Script

    - -<script> - tree=new dhtmlXTreeObject('treeBox',"100%","100%",0); - ... - tree.insertNewChild(0,1,"New Node 1",0,0,0,0,"SELECT,CALL,TOP,CHILD,CHECKED"); - tree.insertNewNext(1,2,"New Node 2",0,0,0,0,"CHILD,CHECKED"); -</script> - -
  • 0s passed to the function for arguments 4-7 (function to call on select, images) mean use default values for them
  • -
  • Last argument is a comma delimited string of following possible value (upper case only):
  • -
  • SELECT - move selection to this node after inserting
  • -
  • CALL - call function on select
  • -
  • TOP - add node to the top position
  • -
  • CHILD - node has children
  • -
  • CHECKED - checkbox is checked (if exists)
  • -
    - -

    Loading data with XML

    - -<script> - tree=new dhtmlXTreeObject('treeBox',"100%","100%",0); - tree.setXMLAutoLoading("http://127.0.0.1/xml/tree.xml"); - tree.loadXML("http://127.0.0.1/xml/tree.xml");//load root level from xml -</script> - -
  • ID of opened node (as id url parameter) will be added to URL specified in initXMLAutoLoading(url) during the call
  • -
  • No additional ID is added to the url specified in loadXML(url) method during the call
  • -
  • Using loadXML() without parameters you load url specified in initXMLAutoLoading(url) method
  • - -XML Syntax: -<?xml version='1.0' encoding='iso-8859-1'?> -<tree id="0"> - <item text="My Computer" id="1" child="1" im0="my_cmp.gif" im1="my_cmp.gif" im2="my_cmp.gif" call="true" select="yes"> - <userdata name="system">true</userdata> - <item text="Floppy (A:)" id="11" child="0" im0="flop.gif" im1="flop.gif" im2="flop.gif"/> - <item text="Local Disk (C:)" id="12" child="0" im0="drv.gif" im1="drv.gif" im2="drv.gif"/> - </item> - <item text="Recycle Bin" id="4" child="0" im0="recyc.gif" im1="recyc.gif" im2="recyc.gif"/> -</tree> - -
    -In PHP script use the following code for page header:
    - -<?php - if ( stristr($_SERVER["HTTP_ACCEPT"],"application/xhtml+xml") ) { - header("Content-type: application/xhtml+xml"); } else { - header("Content-type: text/xml"); - } - echo("<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n"); -?> - -
    - <tree> node is mandatory. It specifies the parent of loading block of data. According to this its id parameter specifies the ID oth that parent. - To load root level you need to specify the ID you used when created tree object: new myObjTree(boxObject,width,height,0)
    - - <item> can contain subitems (in order to load more than one level at once) or not.
    - Mandatory parameters for this tag are:
    -
  • text - label of the node
  • -
  • id - id of the node
  • - Optional parameters for this tag are:
    -
  • tooltip - tooltip for the node
  • -
  • im0 - image for node without children (tree will get images from the path specified in setImagePath(url) method)
  • -
  • im1 - image for opened node with children
  • -
  • im2 - image for closed node with children
  • -
  • acolor - colour of not selected item
  • -
  • scolor - colour of selected item
  • - -
  • select - select node on load (any value)
  • -
  • open - show node opened (any value)
  • -
  • call - call function on select(any value)
  • -
  • checked - check checkbox if exists(any value)
  • -
  • child - spec. if node has children (1) or not (0)

  • -
  • imheight - height of the icon
  • -
  • imwidth - width of the icon
  • -

    -To set userdata directly within XML use <userdata>
    - It has just one parameter:
    -
  • name

  • - and value to specify userdata value -
    - -

    Setting custom icons to nodes

    - There are two ways to set custom icons for the node. And it depends on the way you add items.
    - Important: tree will get images for the nodes from the path specified in setImagePath(url) method.

    - - Javascript way. Using arguments of insertNewChild(...) or insertNewNext(...) methods: - -<script> - var im0 = "doc.gif";//icon to show if node contains no children - var im1 = "opened.gif";//if node contains children and opened - var im2 = "closed.gif";//if node contains children and closed - tree.insertNewItem(0,1,"New Node 1",0,im0,im1,im2); - tree.insertNewNext(1,2,"New Node 2",0,"txt.gif","opened.gif","closed.gif"); -</script> - - XML way. Using parameters of <item> tag: - -<?xml version='1.0' encoding='iso-8859-1'?> -<tree id="0"> - <item text="My Computer" id="1" child="1" im0="doc.gif" im1="my_opened.gif" im2="my_closed.gif"> -</tree> - -
  • im0 - image for node without children (tree will get images from the path specified in setImagePath(url) method)
  • -
  • im1 - image for opened node with children
  • -
  • im2 - image for closed node with children
  • -
    - -

    Building dynamic tree

    - If your tree should contain large amount of nodes (or you simply do not want to waist time loading hidden nodes), it would be better to load them on demand, not at once. - For this purpose we made the tree to load levels dynamically using XML.
    - See chapter "Loading data with XML"
    - or for more details "Dynamical Loading in dhtmlxTree v.1.x" article from our Knowledge Base. -
    - - - -

    Manipulating nodes

    - A few examples of manipulating node with tree object methods: - -<script> - tree=new dhtmlXTreeObject('treeboxbox_tree',"100%","100%",0); - ... - var sID = tree.getSelectedItemId();//get id of selected node - tree.setLabel(sID,"New Label");//change label of selecte node - tree.setItemColor(sID,'blue','red');//set colors for selected node's label (for not selected state and for selected state) - tree.openItem(sID);//expand selected node - tree.closeItem(sID);//close selected node - tree.changeItemId(sID,100);//change id of selected node to 100 - alert("This node has children: "+tree.hasChildren(100));//show alert with information if this node has children -</script> - -
    - -

    Serializing Tree

    -Serialization methods allows getting tree in xml representation (xml string). Various levels of serializations define the number of tree parameters reflected in resulting XML:
    - - -<script> - tree.setSerializationLevel(userDataFl,itemDetailsFl); - var myXmlStr = tree.serializeTree(); - -</script> - -
  • no parameters - id,open,select,text,child
  • -
  • userDataFl true - userdata
  • -
  • itemDetailsFl true - im0,im1,im2,acolor,scolor,checked,open
  • -
    - - -

    Tooltips

    -There are three ways to set tooltip for the node:
    -
  • Use node label ("text" attribute of item node) as tooltip - enableAutoTooltips(mode) - false by default
  • -
  • Use "tooltip" attribute of item node for tooltip (it is used by default if this attribute was specified)
  • -
  • setItemText(itemId,newLabel,newTooltip)
  • -
    - -

    Moving Nodes

    -To move Item programaticaly developer can use the following ways:
    -
    -To move upp/down/left: - - tree.moveItem(nodeId,mode) - -mode possible values are:
    -
  • "down" - move node down in list of nodes (do not pay attention on hierarchy)
  • -
  • "up" - move node up in list of nodes
  • -
  • "left" - move node up in hierarchy
  • -

    - -To move directly into position (within tree) - - tree.moveItem(nodeId,mode,targetId) - -mode possible values are:
    -
  • "item_child" - place node as child of node specified in third argument
  • -
  • "item_sibling" - place node as sibling of node specified in third argument

  • -targetId - id of target node. -

    - -To move node into position (to another tree) - - tree.moveItem(nodeId,mode,targetId,targetTree) - -mode possible values as above.
    -targetId - id of target node (in target tree).
    -targetTree - target tree object

    - -Cut/Paste way
    -Another way is to use doCut(),doPaste(id) - but this works with selected item only. Developer can also delete node in one place and create it in other (also the way ;-)).
    -To give users the possibility to move items use drag-n-drop functionlity. -
    - -

    Items Counter

    -There is a possibility to display item children elements counter with the label of the node. To activate this feature use the following: - -<script> - tree.setChildCalcMode(mode); -</script> - -Possible modes are:
    -
  • "child" - all childs on this level
  • -
  • "leafs" - all childs without subchilds on this level
  • -
  • "childrec" - all childs
  • -
  • "leafsrec" all childs without subchilds
  • -
  • "disabled" - nothing
  • -
    -Other related methods:
    -_getChildCounterValue(itemId) - get current counter value
    -setChildCalcHTML(before,after) - html around counter to change default [x]
    -Use child attribute in xml if you need to set counter value when using dynamical loading. - -
    - -

    Smart XML Parsing

    -The idea of Smart XML Parsing is simple - the entire tree structute loaded on client side, but only nodes which should be displayed are rendered. This helps to dramaticaly decrease loading time and general performance of large trees. Plus - in the contrary to Dynamical Loading - entrire tree structure is available for most of script methods (for example Search performed agains all nodes - not only rendered). To activate Smart XML Parsing use the following method: - -<script> - tree.enableSmartXMLParsing(true);//false to disable -</script> - -Smart XML Parsing do not work if tree loaded fully expanded. -
    - -

    Checkboxes in tree

    -dhtmlxTree support two or three state checkboxes. Three state checkboxes means: checked/unchecked/some-child-checked (not all). -To enable three state checkboxes use the following method: - -<script> - tree.enableThreeStateCheckboxes(true)//false to disable -</script> - -Using three-state checboxes with smart xml parsing you need to specify third state manually (checked="-1"): - - <item checked="-1" ...> - <item checked="1" .../> - <item .../> - </item> - -Checkboxes can be disabled - disableCheckbox(id,state)
    -Some node can hide checkboxes - showItemCheckbox(id,state) (nocheckbox xml attribute) - -
    - -

    Drag-and-drop technics

    -There are three modes of drag-n-drop (set with setDragBehavior(mode)):
    -
  • Drop as child - "child"

  • -
  • Drop as sibling - "sibling"

  • -
  • Complex mode (both previous are active) - "complex"

  • -Plus two modes of each of them:
    -
  • 1. Common drag-n-drop

  • -
  • 2. Copy with drag-n-drop - tree.enableMercyDrag(1/0)

  • -All modes can be changed on the fly.
    -
    -
    Event handlers
    -To process drag-n-drop before drop occured use onDrug event handler - setDragHandler(func). If func doesn't return true, drop will be canceled.
    -After drop occured there is another event - onDrop - handle it using setDropHandler(func).
    -Both event handlers pass 5 parameters into the func object:
    -
  • id of node which was dragged
  • -
  • id of target node
  • -
  • id of target-before node (if drop as sibling)
  • -
  • tree object source
  • -
  • tree object target
  • -
    - -

    Drag-and-drop between iframes

    -Drag-n-drop between iframes enabled by default. All you need to do additionaly is to insert the following code into the page where no tree exists:
    - -<script src="js/dhtmlXCommon.js"></script> -<script> - new dhtmlDragAndDropObject(); -</script> - -
    - -

    Increasing Performance

    -Taking into account the general low performance of DHTML we introducrd two ways of increasing performance of large trees:
    -1. Dynamical Loading
    -2. Smart XML Parsing
    -Also be sure your tree was organized well - putting a lot of items on one level of the branch makes tree difficalt for visual perception and decrease performance. -
    - -

    Context Menu

    -There is built in context menu in dhtmlxTree. The content of this menu can be set with XML or script. For changing context menu content depending on tree item developer can implement function for hidding/showing items of the same menu or associate different menues with different items. To enable context menu do the following: - -<script> -//init menu - aMenu=new dhtmlXContextMenuObject('120',0,"Demo menu"); - aMenu.menu.setGfxPath("../imgs/"); - aMenu.menu.loadXML("menu/_context.xml"); - aMenu.setContextMenuHandler(onMenuClick); - -//init tree - tree=new dhtmlXTreeObject("treeboxbox_tree","100%","100%",0); - ... - tree.enableContextMenu(aMenu); //link context menu to tree -function onMenuClick(id){ - alert("Menu item "+id+" was clicked"); -} -</script> - -
    - -

    Refreshing nodes

    -
  • refreshItems(itemIdList,source) to refresh only items from the itemIdList (not their children)
  • -
  • refreshItem(itemId) - to refresh children of item with itemId. In this case auto loading should be activated.
  • -
    - -

    Sorting nodes

    -You can sort nodes in dhtmlxTree Pro (necessary file: dhtmlXTree_sb.js) using follwoing ways:
    -Sort by label text (if no custom comparator specified)
    - - tree.sortTree(nodeId,order,all_levels); - -
  • nodeId - parent of the level to start sorting from (id of superroot for entire tree)
  • -
  • order - sort direction: "ASC"/"DES"
  • -
  • all_levels - if true, then all sublevels will be processed as well
  • -

    -Custom defined sorting
    - - //define your comparator (in our case it compares second words in label) - function mySortFunc(idA,idB){ - a=(tree.getItemText(idA)).split(" ")[1]||""; - b=(tree.getItemText(idB)).split(" ")[1]||""; - return ((a>b)?1:-1); - } - tree = new ... - //attach your comparator to the tree - tree.setCustomSortFunction(mySortFunc); - -Comparator function gets 2 nodes IDs. Use your tree object there and these IDs to return a comparison result. -
    -If custome comparator was specified, then tree.sortTree(...) method uses it for sorting. - -
    - -

    Search functionlity

    -Search functionality of dhtmlxTree allows moving focus on node with label fitting searchString mask.
    -Has support for Smart XML Parsing.

    -Script syntax: - - tree.findItem(searchString); //find item next to current selection - tree.findItem(searchString,1,1)//find item previous to current selection - tree.findItem(searchString,0,1)//search from top - -Example of usage is included in Professional Edition package – samples/treeExPro2.html. -
    - - -

    Multiline tree items

    -...allows displaying tree items in multiline mode. For now it is recommended to turn tree lines off for better appearance. To enable multiline feature you need to do the following: - - tree.enableTreeLines(false); - tree.enableMultiLineItems(true); - -Example of usage is included in professional edition package – samples/treeExPro6.html. -
    - -

    Icons in Tree

    -

    Set Icons

    -There is a way to set icons for the node explicetly using script (setItemImage,setItemImage2) or xml (im0,im1,im2 attributes of item node):
    -
  • im0 - item without children
  • -
  • im1 - closed item with children
  • -
  • im2 - opened item with children
  • -

    Set Icon Size

    -There is a way to set icon size for the whole tree or each node using script or xml:
    - -XML syntax for icon size per each item (optional): -<item ... imheight="Xpx" imwidth="Xpx"></item> - -Script syntax: - - tree.setIconSize(w,h);//set global icon size - tree.setIconSize(w,h,itemId)//set icon size for particular item - -
    - -
    - -

    Error handling in dhtmlxTree

    -Some exceptions in dhtmlxTree can be captured and processed. - - -function myErrorHandler(type, desc, erData){ - alert(erData[0].status) -} -dhtmlxError.catchError("ALL",myErrorHandler); - -Supported Error Types are:
    -
  • "All"
  • -
  • "LoadXML"
  • -

    -Handler gets the following params:
    -
  • type - string (mentioned above)
  • -
  • desc - error description (hardcoded in code)
  • -
  • erData - error related array objects(see below).
  • -
    - - - - - - - - - -
    TypeObject(s)
    LoadXML[0] - response object
    - -
    -
    - -

    Cold Fusion Tag for dhtmlXTree

    - -<cf_dhtmlXTree - name="tree" - width="250" - height="250" - JSPath="../" - CSSPath="../" - iconspath="gfx/" - xmldoc="tree.xml" - checkboxes="false" - dragndrop="true" - style="background-color:whitesmoke;border:1px solid blue;" - onSelect="onNodeSelect" - onDrop="onDropNode"> - ...configuration xml... - </cf_dhtmlXTree> - -
  • name - [optional] name of the tree js object to use in javascript, if skiped, then name autogenerated
  • -
  • width - [optional] width of the tree (definitely it sets the with of the tree box, leaving the with of the tree itself by 100%)
  • -
  • height - [optional] height of the tree
  • -
  • JSPath - [optional] absolute or relative path to directory which contains tree js files, "js" directory by default
  • -
  • CSSPath - [optional] absolute or relative path to directory which contains tree css files, "css" directory by default
  • -
  • iconspath - [optional] absolute or relative path to directory which contains tree icon files, "img" directory by default
  • -
  • xmldoc - [mandatory for xml loading] url of the xml file used to load levels dynamically
  • -
  • checkboxes - [optional] show checkboxes (none, twoState, threeState)
  • -
  • dragndrop - [optional] activate drag-&-drop (true,false)
  • -
  • style - [optional] style for the tree box
  • -
  • onSelect - [optional] javascript function to call on node selection
  • -
  • oncheck - [optional] javascript function to call on node (un)checking
  • -
  • onDrop - [optional] javascript function to call on node drop
  • -
  • im1 - [optional] default image used for child nodes
  • -
  • im2 - [optional] default image used for opened branches
  • -
  • im3 - [optional] default image used for closed branches
  • -
    - For description of optional configuration xml - see chapter "Loading data with XML" -

    -Minimal possible tag syntax with on-page xml: - -<cf_dhtmlXTree> - <item text="Top node" id="t1" > - <item text="Child node 1" id="c1" ></item> - <item text="Child node 2" id="c2" ></item> - </item> -</cf_dhtmlXTree> - -Minimal possible tag syntax with server-side xml: - -<cf_dhtmlXTree xmldoc="tree.xml"> -</cf_dhtmlXTree> - -With images specified: - -<cf_dhtmlXTree - im1="book.gif" - im2="books_open.gif" - im3="books_close.gif"> - <item text="Mystery " id="mystery" open="yes" > - <item text="Lawrence Block" id="lb" > - <item text="All the Flowers Are Dying" id="lb_1" /> - <item text="The Burglar on the Prowl" id="lb_2" /> - <item text="The Plot Thickens" id="lb_3" /> - <item text="Grifters Game" id="lb_4" /> - <item text="The Burglar Who Thought He Was Bogart" id="lb_5" /> - </item> - <item text="Robert Crais" id="rc" > - <item text="The Forgotten Man" id="rc_1" /> - <item text="Stalking the Angel" id="rc_2" /> - <item text="Free Fall" id="rc_3" /> - <item text="Sunset Express" id="rc_4" /> - <item text="Hostage" id="rc_5" /> - </item> - <item text="Ian Rankin" id="ir" ></item> - <item text="James Patterson" id="jp" ></item> - <item text="Nancy Atherton" id="na" ></item> - </item> -</cf_dhtmlXTree> - -With Events Handlers,Checkboxes and Drag-n-drop: - -<cf_dhtmlXTree - dragndrop="true" - checkboxes="twoState" - onSelect="onClick" - onCheck="onCheck" - onDrop="onDrag"> - <item text="Mystery " id="mystery" open="yes" > - <item text="Lawrence Block" id="lb" > - <item text="All the Flowers Are Dying" id="lb_1" /> - <item text="The Burglar on the Prowl" id="lb_2" /> - <item text="The Plot Thickens" id="lb_3" /> - <item text="Grifters Game" id="lb_4" /> - <item text="The Burglar Who Thought He Was Bogart" id="lb_5" /> - </item> - <item text="Robert Crais" id="rc" > - <item text="The Forgotten Man" id="rc_1" /> - <item text="Stalking the Angel" id="rc_2" /> - <item text="Free Fall" id="rc_3" /> - <item text="Sunset Express" id="rc_4" /> - <item text="Hostage" id="rc_5" /> - </item> - <item text="Ian Rankin" id="ir" ></item> - <item text="James Patterson" id="jp" ></item> - <item text="Nancy Atherton" id="na" ></item> - </item> -</cf_dhtmlXTree> - -
    - - - - - diff --git a/phpgwapi/js/dhtmlxtree/doc/imgs/blank.gif b/phpgwapi/js/dhtmlxtree/doc/imgs/blank.gif deleted file mode 100644 index d7ae406713..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/doc/imgs/blank.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/doc/imgs/folderClosed.gif b/phpgwapi/js/dhtmlxtree/doc/imgs/folderClosed.gif deleted file mode 100644 index 1ebe3c977b..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/doc/imgs/folderClosed.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/doc/imgs/folderOpen.gif b/phpgwapi/js/dhtmlxtree/doc/imgs/folderOpen.gif deleted file mode 100644 index c193e869f1..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/doc/imgs/folderOpen.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/doc/imgs/leaf.gif b/phpgwapi/js/dhtmlxtree/doc/imgs/leaf.gif deleted file mode 100644 index 1cf40f1e0c..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/doc/imgs/leaf.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/doc/imgs/minus.gif b/phpgwapi/js/dhtmlxtree/doc/imgs/minus.gif deleted file mode 100644 index ef04a54696..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/doc/imgs/minus.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/doc/imgs/plus.gif b/phpgwapi/js/dhtmlxtree/doc/imgs/plus.gif deleted file mode 100644 index abb84bdfbf..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/doc/imgs/plus.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/doc/index.html b/phpgwapi/js/dhtmlxtree/doc/index.html deleted file mode 100644 index b4b3638d52..0000000000 --- a/phpgwapi/js/dhtmlxtree/doc/index.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - dhtmlxTree v.1.2 SDK - - - - - - - - - diff --git a/phpgwapi/js/dhtmlxtree/doc/kb/dyn_loading.html b/phpgwapi/js/dhtmlxtree/doc/kb/dyn_loading.html deleted file mode 100644 index b1338329c7..0000000000 --- a/phpgwapi/js/dhtmlxtree/doc/kb/dyn_loading.html +++ /dev/null @@ -1,309 +0,0 @@ - - - - - - - - - -Dynamical loading means loading data on request - - - - - - - -

    Dynamical Loading in dhtmlxTree v.1.x

    - -
    - -

    Dynamical loading means loading data on request. You -can split your data into parts by levels and decrease loading time this way. -For example initial xml document will be as follows:

    - -

    -

    - -

    Just add parameter child=”1” to all nodes which have -dependent elements (children) and child=”0” to all nodes without children.

    - -

     

    - -

    <?xml -version="1.0" encoding="iso-8859-1" ?>

    - -

    <tree -id=”0”>

    - -

    <item  text="Surveillance" -id="a1" im0="book.gif" … child=”1”/>

    - -

    <item -…/>

    - -

    - -

    <item -…/>

    - -

    <item -text=”Low income countries” id=”a333” im0=”book_titel.gif” … child=”0”>

    - -

                </tree>

    - -

     

    - -

     

    - -

     

    - -

    As dynamical loading needs to process incoming url parameters to work really useful, it would be good to -use some server side programming language like ASP, ColdFusion, JSP or any -other. This is necessary on next stage.

    - -

     

    - -

    If you use XML for building the tree, then you already -used the method

    - -

    tree.setXMLAutoLoading(url)

    - -

    When user trying to open node with child=”1” tree -looks for data on client side first – if no data found, then it goes to server -using URL specified in method mentioned above with id of node added to it, -like: http://127.0.0.1/myTree/tree.cfm?id=a1, -where “a1” is id of the node which should be opened. So, here you need a server -side language to process incoming id parameter and to put just required part of -XML into response (in our case the xml contains next level of a1 node):

    - -

     

    - -

                <?xml version="1.0" -encoding="iso-8859-1" ?>

    - -

    <tree -id=”a1”>

    - -

    <item -text="Bilateral surveillance" id="a2" -im0="book.gif" im1="books_open.gif" -im2="books_close.gif" child=”1”/>

    - -

    <item -…/>

    - -

     

    - -

                </tree>

    - -

     

    - -

    The same should be repeated for each level and each -node that has children. If you xml contains data from Database, it would be -much better to generate xml on request directly from db – otherwise you’d -better use the following way to reduce the number of parts:

    - -

     

    - -

    You can split your xml document in any number of parts -(maximum – all levels, minimum - 1). For example you can load not only next -level of children for a1, but the -whole branch started from the level next to a1. -In this case initial loading of -the tree will be rather fast, as you load just one level, then if user opens -some node, the whole branch will be loaded (but not the whole tree), so in any way it is much faster than load the whole tree on -start.

    - -

     

    - -
    - - - - diff --git a/phpgwapi/js/dhtmlxtree/doc/kb/faq.html b/phpgwapi/js/dhtmlxtree/doc/kb/faq.html deleted file mode 100644 index d6e55701e8..0000000000 --- a/phpgwapi/js/dhtmlxtree/doc/kb/faq.html +++ /dev/null @@ -1,291 +0,0 @@ - - - -

    F.A.Q.

    -
    -

    Licensing

    -
    -
    -
    -
  • May I use dhtmlxTree Standard Edition in my commercial projects for free?
  • -
    -
    No. To use any edition in commercial project you need to purchase a Commercial or Enterprise License.
    -
    -
  • How much does the professional version cost? Is it included with the commercial license?
  • -
    -
    You'll get Professional Edition when you purchase Commercial ($99) or Enterprise ($399) License.
    -
    -
  • What is the difference between Commercial and Enterprise Licenses?
  • -
    -
    There are two main differences: -
  • According to Enterprise license you may use dhtmlxTree in any number of your projects, whereas Commercial License allows using dhtmlxTree in one project per license
  • -
  • Supporting period (as well as period of free upgrade) is 1 month for Commercial and 1 year for Enterprise License.
  • -
    -
  • How can I get Professional Edition of dhtmlxTree?
  • -
    -
    To get Professional Edition of dhtmlxTree you need to purchase Commercial or Enterprise License. Right after that you'll get Professional Edition together with additional sample files by email.
    -
    -
  • Are the "pro" features available in the file downloaded from the site for evaluation, or do we have to buy a different file to try it out?
  • -
    -
    You can download only Standard Edition from the site. If you want to evaluate Professional Edition please write us - info@scbr.com
    -
    -
  • Will I get commented not obfuscated sources together with Professional Edition?
  • -
    -
    Yes.
    -
    -
  • Is there some special documentation available with Professional Edition?
  • -
    -
    No. There is only one variant of documentation. All methods specific for Professional Edition marked in documentation with red colored text "Professional" or "Commercial".
    -
    -
  • May I modify dhtmlxTree and use modified files in my project?
  • -
    -
    Yes you may. At the same time according to the License Scand LLC remains the owner of all modifications in the code.
    -
    -
  • How to buy dhtmlxTree License?
  • -
    -
    Please send email to info@scbr.com and you'll get necessary instructions right away.
    -
    -
  • May I distribute dhtmlxTree as a part of my application? What License do I need for this? Should I buy additional License for each copy of my application?
  • -
    -
    You may distribute dhtmlxTree as a part of you application if this application is not competitor to dhtmlxTree. You can use either Commercial or Enterprise License. Only one license necessary for one application - irregardless to number of copies sold.
    -
    -
  • My licensing question regards including your dhtmlxtree code in a commercial product which will be redistributed and run on clients' machines. I'm curious whether this would require a license on each client machine, or whether my company would simply need to license the code once for inclusion in the code base.
  • -
    -
    Only once.
    -
    -
  • Can we modify dhtmlxTree code and/or change some functionalities in order to match our requirements.
  • -
    -
    Modifications to the software are allowed, and you may distribute it as a part of your application, but distribution of the modified software as a standalone component or as a part of concurrent software is forbidden.
    -
    - -
    -
    -
  • How can I load xml dynamically, so that the loading gets done more quickly?
  • -
    -
    -As you know dhtmlXTree supports dynamical loading for such purposes. Dynamical loading means loading data on request. To make tree do this use method tree.setXMLAutoLoading(url)
    -In this case your xml should contain only necessary nodes. For example initial xml should contain only nodes of top level. To let the tree know that some node has children, use child="1". Like this: - - <tree id="0"> - <item text="Surveillance" id="a1" im0="book.gif" child="1"/> - ... - <item text="Low income countries" id="a333" im0="book_titel.gif" child="0"/> - </tree> - -When user trying to open node which has children, tree looks for data on client side first - if no data found, then it goes to server using URL specified in method mentioned above with ID of node added to it, like: http://127.0.0.1/myTree/tree.cfm?id=a1, where "a1" is ID of the node which should be opened. Using this ID you can create another xml, which contains only child nodes of opening node. Like this: - - <tree id="a1"> - <item text="Bilateral surveillance" id="a2" /> - ... - </tree> - - -As dynamical loading needs to process incoming url parameters and generate xml file content based on it to work really useful, it would be good to use some server side programming language like ASP, ColdFusion, JSP, PHP or any other for this. -
    -
    -
  • Is there any solution for increasing tree performance when it contains hundreds or thousands of nodes?
  • -
    -
    There are two ways:
    -
  • Dynamical loading. In this case tree contains only nodes which were already opened and it doesn't really matters how much nodes are in the datasource .
  • -
  • Advanced XML Processing (available in Professional edition). In this case the whole xml documents loaded on client side, but only nodes which are visible are created in tree. This increases performance and decreases loading time.
  • -
    -
  • What happens is that the nodes get drawn as siblings of the root and not as children of the expanded node.
  • -
    -
    The reason is in xml file. It always contains the same ID of parent element: <tree id="every-time-id-of-super-root-level">, but it should be <tree id="id-of-node-that-was-expanded">
    -
    -
  • Dynamical Loading always loads the whole tree and adds it to existing one.
  • -
    -
    XML file for initial loading should contain ONLY top level of the tree, xml that loads children should contain ONLY necessary nodes - so in most cases it generated with some server side routine using incoming "id" of parent node (node that was opened) which is passed to the file while calling it.
    -
    -
  • I've created simple xml containig 10 000 nodes and ... after 30second IE almost breaks down with a warning
  • -
    -
    As performance is a weak place of DHTML, we implemented two ways of processing big trees. First is dynamical loading - xml loaded from server by parts (on request). This feature available in all editions. Second is "advanced xml processing" - xml loaded at once, but processed by parts on request. This feature available in pro edition only.
    -
    - -
    -
    -
  • Is there any way to rearrange the nodes without reloading the tree?
  • -
    -
    You can rearrange nodes with script (moveItem method) or using drag-n-drop (drop-as-sibling type)
    -
    -
  • Can we use different drag-n-drop types for different nodes? For example we need drop-as-sibling for files and drop-as-child for folders.
  • -
    -
    You can switch the drop mode on-the-fly. Using onDrag or onDrop event handlers you can manage the active mode based on some specificity of node which is dragged or dropped. To identify the type of the node you can use userData property of the node, which can be set with xml or with javascript: setUserData(itemId,name,value). Any time you can get the value of any block of user data of any node using getUserData(id,name)
    -
    -
  • Can I drag and drop either the node's id or value into the html text input field?
  • -
    -
    Yes, this is possible. Any page control can be set as "landing zone". Here is an example: - - <div id="treeboxbox_tree" style="width:200;height:200"></div> - <input type="text" width="120px" id="sInput"> - <script> - tree=new dhtmlXTreeObject("treeboxbox_tree","100%","100%",0); - tree.setImagePath("../imgs/"); - //user defined drag and drop control with event handlers inside - function s_control(){ - //action occures on drag - this._drag=function(sourceHtmlObject,dhtmlObject,targetHtmlObject){ - targetHtmlObject.style.backgroundColor=""; - targetHtmlObject.value=sourceHtmlObject.parentObject.label; - } - - //action occures on drag moved in landing zone - this._dragIn=function(htmlObject,shtmlObject){ - htmlObject.style.backgroundColor="#fffacd"; - return htmlObject; - } - - //action occures on drag moved out landing zone - this._dragOut=function(htmlObject){ - htmlObject.style.backgroundColor=""; - return this; - } - } - //set input control as "landing zone" - tree.dragger.addDragLanding(document.getElementById('sInput'), new s_control); - </script> - -
    -
    - -
    -
    -
  • It seems that your tree does not make a distinction between "files" and "folders". If I drag a "file" onto another "file", it becomes a "folder".
  • -
    -
    Generally the tree can only output data, it knows nothing about files or folders - you need to supply it with additional data and manage its behavior with script to get functionality you need.
    -First you need to specify what nodes are files and what are folders using UserData (invisible data blocks that you can assign to any node). In your xml file use syntax like this: - - <tree id="0"> - <item text="My Folder" id="my_folder" child="1" ...> - <userdata name="folder">1</userdata> - <item text="My File" id="my_file" child="0" ...> - <userdata name="folder">0</userdata> - </item> - </item> - ... - </tree> - -In script you can manipulate this data using script methods: - -tree.getUserData(nodeId,key), for example: - - function doOnSomeEvent(id){ - If(yourTree.getUserData(id,"folder")=='0') - alert("This was file") - else - alert("This was folder") - } - -This way you can cancel drop event for files: - -tree.setDragFunction(doOnDrop); -function doOnDrop(nodeId,parentId){ - if(tree.getUserData(parentId,"folder")=="0") - return false; -} - -For more details about eventHandlers see "Set Event Handlers" chapter of Tree documentation. -
    -
    -
  • How to collapse all nodes in the tree.
  • -
    -
    To collapse all root nodes (nodes of first level) in the tree you need to close them all one by one: - - function closeAllRoots(){ - var rootsAr = tree.getSubItems(0).split(",") - for(var i=0;i<rootsAr.length;i++){ - tree.closeAllItems(rootsAr[i]) - } - } - -where "0" is ID of Super Root level.
    -
    -
  • Is there a way to get a modified tree back to xml?
  • -
    -
    Yes, you can use serializeTree() method for this. It returns xml string.
    -
    -
  • How can I have different nodes call different functions when clicked?
  • -
    -
    You can use userData to keep function name for each node. In onclick event handler get this name and evaluate it.
    -
    -
  • How to create nodes in tree and save them to db at the same time?
  • -
    -
    1. user clicks button "add new item" (or whatever you have for this)
    -2. create node in the tree with some unique identifier, like "newnodeid" and label like "New" or something. (Do not forget to call open node method before this if you use dynamical loading, inserting node as child and parent node was never opened before)
    -3. move selection to the node with calling onclick function (last parameter should be true)
    -4. determine that node id is "newnodeid" and load the form for creating new item.
    -5. when form was submitted and data was saved on server return the page with added javascript block which should rename selected node according to entered name or whatever you need as a node label, set new node id - according to created record id (or whatever you have as node ids).
    -6. Delete and update should be done very likely.
    -7. Do not forget the main principle - update the tree after database was updated.
    -
    -
  • Can we limit the "maximum depth" of the tree to disallow child-dropping beyond a certain number of sub-nodes?
  • -
    -
    You can get the level of the node in onDrop event handler and cancel drop if it exceeds maximum allowed.
    -
    -
  • Can we use HTML as a node label?
  • -
    -
    Yes.
    -
    -
  • Serialization of the modified trees - how does that work?
  • -
    -
    Using serializeTree() method you can get back tree structure as xml string. In version 1.1 it serializes node text, icons, state, order, selection. Version 1.2 will support serialization of userData, checkboxes.
    -
    - -
    -
    -
  • Is there any support for cookies?
  • -
    -
    Yes, Professional Edition has the ability to save tree state into cookies and restore it. There are two types of this functionality: -
  • save the whole tree (not good for large trees as cookies has size limit)
  • -
  • save only opened/closed/selected state.
  • -
    -
  • Is there any ability to use context menu (right-click menu) with dhtmlxTree
  • -
    -
    Context menu implemented into dhtmlxTree v.1.1 Professional Edition - the content of the menu can be defined with xml or javascript and can be managed with javascript.
    -
    -
  • What is Super Root in the dhtmlxTree?
  • -
    -
    When you create tree from constructor function, there is 4th parameter which represents the ID of Super Root element. Usually it is "0". Super Root is invisible level of the tree - the parent element for elements of first visible level ("root level").
    -
    -
  • Is it possible to use multiple-lines for a dhtmlxTree node?
  • -
    -
    Yes, there is such possibility in Professional Edition. The only limitation for current version - tree should not have dotted lines which visually link nodes (they should be turned off using enableTreeLines(false)) - otherwise appearance will be damaged.
    -
    -
  • I use various dhtmlX components on one page - tree, toolbar, menu. All of them have dhtmlxCommon.js file. Is it the same for all of them?
  • -
    -
    Yes, it is the same and you can get it either from tree package or from menu, toolbar - any dhtmlX component. If you have different versions of this file - would be better to use most recent.
    -
    diff --git a/phpgwapi/js/dhtmlxtree/doc/kb/imgs/image001.jpg b/phpgwapi/js/dhtmlxtree/doc/kb/imgs/image001.jpg deleted file mode 100644 index 145ca693db..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/doc/kb/imgs/image001.jpg and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/doc/kb/special.html b/phpgwapi/js/dhtmlxtree/doc/kb/special.html deleted file mode 100644 index 5126bf362d..0000000000 --- a/phpgwapi/js/dhtmlxtree/doc/kb/special.html +++ /dev/null @@ -1,13 +0,0 @@ - - - - - Untitled - - - - - - - - diff --git a/phpgwapi/js/dhtmlxtree/doc/ogroup.html b/phpgwapi/js/dhtmlxtree/doc/ogroup.html deleted file mode 100644 index 6c1eae8b57..0000000000 --- a/phpgwapi/js/dhtmlxtree/doc/ogroup.html +++ /dev/null @@ -1,216 +0,0 @@ -

    dhtmlXTreeObject object API

    changeItemId(itemId,newItemId)
    change item id
    Topic(s): Node/level control; -
    File required:dhtmlXTree.js
  • itemId - old node id
  • newItemId - new node id
  • clearCut()
    clear cut
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
    clearSelection(itemId) - [Professional] -
    unselect item in tree
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • itemId - reserved
  • closeAllItems(itemId)
    collapse target node and all child nodes
    Topic(s): Node/level control; -
    File required:dhtmlXTree.js
  • itemId - node id
  • closeItem(itemId)
    collapse node
    Topic(s): Node/level control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • deleteChildItems(itemId)
    delete all children of node
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
  • itemId - node id
  • deleteItem(itemId,selectParent)
    delete node
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
  • itemId - node id
  • selectParent - If true parent of deleted item get selection, else no selected items leaving in tree.
  • disableCheckbox(itemId,mode) - [Professional] -
    disable checkbox
    Topic(s): Checkboxes/user data manipulation; -
    File required:dhtmlXTree.js
  • itemId - Id of tree item
  • mode - 1 - on, 0 - off;
  • doCut()
    mark selected item as cutted
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
    doPaste(itemId)
    insert previously cutted branch
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
  • itemId - id of new parent node
  • enableActiveImages(mode) - [Professional] -
    enable active images (clickable and dragable)
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - 1 - on, 0 - off;
  • enableAutoSavingSelected(mode,cookieName) - [Professional] -
    enable/disable autosaving selected node in cookie
    Topic(s): Add/delete; -
    File required:dhtmlXTree_xw.js
  • mode - true/false
  • enableAutoTooltips(mode) - [Professional] -
    enable auto tooltips (node text as tooltip)
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - 1 - on, 0 - off;
  • enableCheckBoxes(mode)
    hide checkboxes (all checkboxes in tree)
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - enabled/disabled
  • enableContextMenu(menu) - [Professional] -
    enable context menu
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • menu - dhtmlXmenu object
  • enableDragAndDrop(mode)
    enable/disable drag-and-drop
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - enabled/disabled [ can be true/false/temporary_disabled - last value mean that tree can be D-n-D can be switched to true later ]
  • enableDragAndDropScrolling(mode) - [Professional] -
    enable/disable auto scrolling while drag-and-drop
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - enabled/disabled
  • enableHighlighting(mode) - [Professional] -
    enable item highlighting (item text highlited on mouseover)
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - 1 - on, 0 - off;
  • enableMercyDrag(mode) - [Professional] -
    enable drag without removing (copy instead of move)
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - 1 - on, 0 - off;
  • enableMultiLineItems(width) - [Professional] -
    enable multi line items
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • width - text width, if equls zero then use single lines items;
  • enableSmartCheckboxes(mode) - [Professional] -
    enable smart checkboxes ,true by default (auto checking childs and parents for 3-state checkboxes)
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - 1 - on, 0 - off;
  • enableSmartXMLParsing(mode) - [Professional] -
    enable/disable smart XML parsing mode (usefull for big, well structured XML)
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - 1 - on, 0 - off;
  • enableThreeStateCheckboxes(mode)
    enable three state checkboxes
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - 1 - on, 0 - off;
  • enableTreeImages(mode)
    enable tree images
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - 1 - on, 0 - off;
  • enableTreeLines(mode)
    enable/disable tree lines (parent-child threads)
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • mode - enable/disable tree lines
  • findItem(searchStr,direction,top) - [Professional] -
    find tree item by text, select and focus it
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
  • searchStr - search text
  • direction - 0: top -> bottom; 1: bottom -> top
  • top - 1: start searching from top
  • findItemIdByLabel(searchStr,direction,top) - [Professional] -
    find tree item by text
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
  • searchStr - search text
  • direction - 0: top -> bottom; 1: bottom -> top
  • top - 1: start searching from top
  • focusItem(itemId) - [Professional] -
    focus item in tree
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • itemId - item Id
  • getAllChecked()
    return list of identificators of nodes with checked checkboxes, separated by comma
    Topic(s): Checkboxes/user data manipulation; -
    File required:dhtmlXTree.js
    getAllCheckedBranches()
    return list of identificators of nodes with checked and third state checkboxes, separated by comma
    Topic(s): Checkboxes/user data manipulation; -
    File required:dhtmlXTree.js
    getAllFatItems()
    Returns the list of all items which has child nodes, separated by commas.
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
    getAllLeafs()
    Returns the list of all items which doesn't have child nodes.
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
    getAllPartiallyChecked()
    return list of identificators of nodes with third state checkboxes, separated by comma
    Topic(s): Checkboxes/user data manipulation; -
    File required:dhtmlXTree.js
    getAllSubItems(itemId)
    Returns the list of all children items from all next levels of tree, separated by commas.
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • getAllUnchecked(itemId)
    return list of identificators of nodes with unchecked checkboxes, separated by comma
    Topic(s): Checkboxes/user data manipulation; -
    File required:dhtmlXTree.js
    getChildItemIdByIndex(itemId,index)
    retun child node id by index
    Topic(s): Selection control; -
    File required:dhtmlXTree.js
  • itemId - parent node id
  • index - index of child node
  • getItemColor(itemId)
    get node color
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • getItemIdByIndex(itemId,index)
    retun node id by index
    Topic(s): Selection control; -
    File required:dhtmlXTree.js
  • itemId - node id
  • index - index of node, 0 based
  • getItemText(itemId)
    return item text
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • getLevel(itemId)
    return node level (position in hierarchy)
    Topic(s): Node/level control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • getOpenState(itemId)
    return open/close state
    Topic(s): Node/level control; -
    File required:dhtmlXTree.js
  • itemId - node id
  • getParentId(itemId)
    return parent item id
    Topic(s): Node/level control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • getSelectedItemId()
    retun selected item id
    Topic(s): Selection control; -
    File required:dhtmlXTree.js
    getSelectedItemText()
    retun selected node text
    Topic(s): Selection control; -
    File required:dhtmlXTree.js
    getSubItems(itemId)
    Returns the list of all children items from the next level of tree, separated by commas.
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • getUserData(itemId,name)
    return user data from target node
    Topic(s): Checkboxes/user data manipulation; -
    File required:dhtmlXTree.js
  • itemId - target node id
  • name - key for user data
  • getXMLState() - [Professional] -
    return current state of XML loading
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
    hasChildren(itemId)
    return number of childrens
    Topic(s): Node/level control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • insertNewChild(parentId,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,childs)
    create new node as a child to specified with parentId
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
  • parentId - parent node id
  • itemId - new node id
  • itemText - new node label
  • itemActionHandler - function fired on node select event (optional)
  • image1 - image for node without childrens; (optional)
  • image2 - image for closed node; (optional)
  • image3 - image for opened node (optional)
  • optionStr - options string (optional)
  • childs - node children flag (for dynamical trees) (optional)
  • insertNewItem(parentId,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,childs)
    create new node as a child to specified with parentId
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
  • parentId - parent node id
  • itemId - new node id
  • itemText - new node text
  • itemActionHandler - function fired on node select event (optional)
  • image1 - image for node without childrens; (optional)
  • image2 - image for closed node; (optional)
  • image3 - image for opened node (optional)
  • optionStr - options string (optional)
  • childs - node childs flag (for dynamical trees) (optional)
  • insertNewNext(itemId,newItemId,itemText,itemActionHandler,image1,image2,image3,optionStr,childs)
    create new node next to specified
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
  • itemId - node id
  • newItemId - new node id
  • itemText - new node text
  • itemActionHandler - function fired on node select event (optional)
  • image1 - image for node without childrens; (optional)
  • image2 - image for closed node; (optional)
  • image3 - image for opened node (optional)
  • optionStr - options string (optional)
  • childs - node childs flag (for dynamical trees) (optional)
  • isItemChecked(itemId)
    return state of nodes's checkbox
    Topic(s): Checkboxes/user data manipulation; -
    File required:dhtmlXTree.js
  • itemId - target node id
  • loadOpenStates(name) - [Professional] -
    restore open nodes from cookie
    Topic(s): Add/delete; -
    File required:dhtmlXTree_xw.js
  • name - optional,cookie name
  • loadState(name) - [Professional] -
    load tree from cookie
    Topic(s): Add/delete; -
    File required:dhtmlXTree_xw.js
  • name - optional,cookie name
  • loadXML(file,afterCall)
    load tree from xml file
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • file - link too XML file
  • afterCall - function which will be called after xml loading
  • loadXMLString(xmlString,afterCall)
    load tree from xml string
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • xmlString - XML string
  • afterCall - function which will be called after xml loading
  • moveItem(itemId,mode) - [Professional] -
    move item (inside of tree)
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
  • itemId - item Id
  • mode - moving mode (left,up,down)
  • openAllItems(itemId)
    expand target node and all child nodes
    Topic(s): Node/level control; -
    File required:dhtmlXTree.js
  • itemId - node id
  • openAllItemsDynamic(itemId)
    expand target node and all child nodes (same as openAllItems, but works in dynamic trees)
    Topic(s): Node/level control; -
    File required:dhtmlXTree_xw.js
  • itemId - node id, optional
  • openItem(itemId)
    expand node
    Topic(s): Node/level control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • refreshItem(itemId)
    refresh tree branch from xml (XML with description of child nodes rerequested from server)
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • itemId - id of node, if not defined tree super root used.
  • refreshItems(itemIdList,source) - [Professional] -
    refresh specified tree nodes (get XML from server and updat only nodes included in itemIdList)
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • itemIdList - list of node identificators
  • source - server side script
  • restoreSelectedItem(name) - [Professional] -
    restore selected item from cookie
    Topic(s): Add/delete; -
    File required:dhtmlXTree_xw.js
  • name - optional, cookie name
  • saveOpenStates(name) - [Professional] -
    save open nodes to cookie
    Topic(s): Add/delete; -
    File required:dhtmlXTree_xw.js
  • name - optional,cookie name
  • saveSelectedItem(name) - [Professional] -
    save selected item to cookie
    Topic(s): Add/delete; -
    File required:dhtmlXTree_xw.js
  • name - optional, cookie name
  • saveState(name) - [Professional] -
    save tree to cookie
    Topic(s): Add/delete; -
    File required:dhtmlXTree_xw.js
  • name - optional, cookie name
  • selectItem(itemId,mode)
    select node ( and optionaly fire onselect event)
    Topic(s): Selection control; -
    File required:dhtmlXTree.js
  • itemId - node id
  • mode - If true, script function for selected node will be called.
  • serializeTree() - [Professional] -
    return xml description of tree
    Topic(s): Add/delete; -
    File required:dhtmlXTree_xw.js
    setCheck(itemId,state)
    change state of node's checkbox
    Topic(s): Checkboxes/user data manipulation; -
    File required:dhtmlXTree.js
  • itemId - target node id
  • state - checkbox state (0/1/unsure)
  • setChildCalcHTML( htmlA,htmlB ) - [Professional] -
    set child calculation prefix and postfix
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • htmlA - postfix ([ - by default)
  • htmlB - postfix (] - by default)
  • setChildCalcMode( mode ) - [Professional] -
    set child calculation mode
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - mode name as string . Possible values: child - child, no recursive; leafs - child without subchilds, no recursive; ,childrec - child, recursive; leafsrec - child without subchilds, recursive; disabled (disabled by default)
  • setDragBehavior(mode) - [Professional] -
    set Drag-And-Drop behavior (child - drop as chils, sibling - drop as sibling, complex - complex drop behaviour )
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - behavior name (child,sibling,complex)
  • setDragHandler(func)
    set function called when drag-and-drop event occured

    EventName:onDrag
    Event occured after item was dragged and droped on another item, but before item moving processed.
  • ID of source item
  • ID of target item
  • if node droped as sibling then contain id of item before whitch source node will be inserted
  • source Tree object
  • target Tree object

  • Event returns:true - confirm drag-and-drop; false - deny drag-and-drop;
    Topic(s): Initialization; - Event Handlers; -
    File required:dhtmlXTree.js
  • aFunc - event handling function
  • setDropHandler(func) - [Professional] -
    set function called after drag-and-drap event occured

    EventName:onDrop
    Event raised after drag-and-drop processed. Event also raised while programmatic moving nodes.
  • ID of source item
  • ID of target item
  • Topic(s): Initialization; - Event Handlers; -
    File required:dhtmlXTree.js
  • func - event handling function
  • setEscapingMode(mode) - [Professional] -
    set escaping mode (used for escaping ID in server requests)
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • mode - escaping mode ("utf8" for UTF escaping)
  • setIconSize(newWidth,newHeight,itemId) - [Professional] -
    set size of gfx icons
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
  • newWidth - new icon width
  • newHeight - new icon height
  • itemId - item Id, if skipped set default value for all new icons, optional
  • setImageArrays(arrayName,image1,image2,image3,image4,image5)
    set images used for parent-child threads drawing
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • arrayName - name of array: plus, minus
  • image1 - line crossed image
  • image2 - image with top line
  • image3 - image with bottom line
  • image4 - image without line
  • image5 - single root image
  • setImagePath( newPath )
    set path to image directory
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • newPath - path to image directory
  • setItemCloseable(itemId,flag)
    prevent node from closing
    Topic(s): Node/level control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • flag - if 0 - node can't be closed, else node can be closed
  • setItemColor(itemId,defaultColor,selectedColor)
    set node color
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • defaultColor - node color
  • selectedColor - selected node color
  • setItemContextMenu(itemId,cMenu) - [Professional] -
    set context menu to individual nodes
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
  • itemId - node id
  • cMenu - context menu object
  • setItemImage(itemId,image1,image2)
    set item images
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • image1 - node without childrens image or closed node image (if image2 specified)
  • image2 - open node image (optional)
  • setItemImage2(itemId, image1,image2,image3)
    set item images
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • image1 - node without childrens image
  • image2 - closed node image
  • image3 - open node image
  • setItemStyle(itemId,style_string) - [Professional] -
    set individual item style
    Topic(s): Add/delete; -
    File required:dhtmlXTree.js
  • itemId - node id
  • style_string - valid CSS string
  • setItemText(itemId,newLabel,newTooltip)
    set new node text (HTML allowed)
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • itemId - id of node
  • newLabel - node text
  • newTooltip - (optional)tooltip for the node
  • setListDelimeter(separator)
    set list separator (comma by default)
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • separator - char or string using for separating items in lists
  • setOnCheckHandler(func)
    set function called before checkbox checked/unchecked

    EventName:onCheck
    Event raised immideatly after item in tree was checked/unchecked.
  • ID of item which will be checked/unchecked
  • Current checkbox state. 1 - item checked, 0 - item unchecked.
  • Topic(s): Initialization; - Event Handlers; -
    File required:dhtmlXTree.js
  • func - event handling function
  • setOnClickHandler(func)
    set function called when tree node selected

    EventName:onClick
    Event raised immideatly after text part of item in tree was clicked, but after default onClick functionality was processed.
  • ID of clicked item
  • Topic(s): Initialization; - Event Handlers; -
    File required:dhtmlXTree.js
  • func - event handling function
  • setOnDblClickHandler(func)
    set function called when tree node double clicked

    EventName:onDblClick
    Event raised immideatly after item in tree was doubleclicked, before default onDblClick functionality was processed.
  • ID of item which was doubleclicked

  • Event returns:true - confirm opening/closing; false - deny opening/closing;
    Topic(s): Initialization; - Event Handlers; -
    File required:dhtmlXTree.js
  • func - event handling function
  • setOnLoadingEnd(func) - [Professional] -
    set function called after xml loading/parsing ended

    EventName:onXMLLoadingEnd
    event fired simultaneously with ending XML parsing, new items already available in tree
  • tree object
  • Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • func - event handling function
  • setOnLoadingStart(func) - [Professional] -
    set function called before xml loading/parsing started

    EventName:onXMLLoadingStart
    event fired simultaneously with starting XML parsing
  • tree object
  • Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • func - event handling function
  • setOnOpenHandler(func)
    set function called before tree node opened/closed

    EventName:onOpen
    Event raised immideatly after item in tree got command to open/close , and before item was opened//closed. Event also raised for unclosable nodes and nodes without open/close functionality - in that case result of function will be ignored.
  • ID of node which will be opened/closed
  • Current open state of tree item. 0 - item has not childs, -1 - item closed, 1 - item opened.

  • Event returns:true - confirm opening/closing; false - deny opening/closing;
    Topic(s): Initialization; - Event Handlers; -
    File required:dhtmlXTree.js
  • func - event handling function
  • setOnRightClickHandler(func)
    set function called when tree node selected

    EventName:onRightClick
    Event occured after right mouse button was clicked.
  • ID of clicked item
  • Topic(s): Initialization; - Event Handlers; -
    File required:dhtmlXTree.js
  • func - event handling function
  • setSerializationLevel(userData,fullXML) - [Professional] -
    configure XML serialization
    Topic(s): Add/delete; -
    File required:dhtmlXTree_xw.js
  • userData - enable/disable user data serialization
  • fullXML - enable/disable full XML serialization
  • setStdImages(image1,image2,image3)
    set default images for nodes (must be called before XML loading)
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • a0 - image for node without childrens;
  • a1 - image for closed node;
  • a2 - image for opened node
  • setSubChecked(itemId,state)
    change state of node's checkbox and all childnodes checkboxes
    Topic(s): Checkboxes/user data manipulation; -
    File required:dhtmlXTree.js
  • itemId - target node id
  • state - checkbox state
  • setUserData(itemId,name,value)
    set user data for target node
    Topic(s): Checkboxes/user data manipulation; -
    File required:dhtmlXTree.js
  • itemId - target node id
  • name - key for user data
  • value - user data
  • setXMLAutoLoading(filePath)
    enables dynamic loading from XML
    Topic(s): Initialization; -
    File required:dhtmlXTree.js
  • filePath - name of script returning XML;
  • setXMLAutoLoadingBehaviour(mode) - [Professional] -
    define which script be called on dynamic loading
    Topic(s): Selection control; -
    File required:dhtmlXTree.js
  • mode - id for some_script?id=item_id ; name for some_scriptitem_id, xmlname for some_scriptitem_id.xml
  • showItemCheckbox(itemId,state) - [Professional] -
    show/hide checkbox for tree item (work only for individual items, not for all tree )
    Topic(s): Checkboxes/user data manipulation; -
    File required:dhtmlXTree.js
  • itemId - id of selected item
  • state - checkbox show state : 0/1
  • showItemSign(itemId,state) - [Professional] -
    show/hide (+/-) icon (work only for individual items, not for all tree )
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • itemId - id of selected item
  • state - show state : 0/1
  • sortTree(nodeId,order,all_levels) - [Professional] -
    reorder items in tree
    Topic(s): Initialization; -
    File required:dhtmlXTree_sb.js
  • nodeId - id of top node
  • all_levels - sorting all levels or only current level
  • order - sorting order - ASC or DES
  • updateItem(itemId,name,im0,im1,im2,achecked) - [Professional] -
    update item properties
    Topic(s): Appearence control; -
    File required:dhtmlXTree.js
  • itemId - list of node identificators
  • name - list of node identificators, optional
  • im0 - list of node identificators, optional
  • im1 - list of node identificators, optional
  • im2 - list of node identificators, optional
  • achecked - list of node identificators, optional
  • \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/doc/special.html b/phpgwapi/js/dhtmlxtree/doc/special.html deleted file mode 100644 index 441ccc725b..0000000000 --- a/phpgwapi/js/dhtmlxtree/doc/special.html +++ /dev/null @@ -1,88 +0,0 @@ - - - - - DHTML Tree Special Technics - - - - -

    DHTML Tree Special Technics

    -
    - - -

    Links in tree

    - Xml for the tree:
    - -<tree..> - <item ...> - <userdata name=“myurl“>http://www.google.com</userdata> - <item ...> - <userdata name=“myurl“>http://groups.google.com</userdata> - </item> - </item> - -
    -there is an event handler for click processing: - -tree.setOnClickHandler(doOnClick); -function doOnClick(nodeId){ - var myUrl = tree.getUserData(nodeId,“myurl“); - window.open(myUrl);// or frames[“someframe“].location.href = myUrl -} - -
    - -

    Drag-n-drop outside tree

    - Any page control can be set as “landing zone”. Here is an example: - -<div id="treeboxbox_tree" style="width:200;height:200"></div> -<input type="text" width="120px" id="sInput"> -<script> -tree=new dhtmlXTreeObject("treeboxbox_tree","100%","100%",0); -tree.setImagePath("../imgs/"); - -//user defined drag and drop control with event handlers inside -function s_control(){ - //action occures on drag - this._drag=function(sourceHtmlObject,dhtmlObject,targetHtmlObject){ - targetHtmlObject.style.backgroundColor=""; - targetHtmlObject.value=sourceHtmlObject.parentObject.label; - } - //action occures on drag moved in landing zone - this._dragIn=function(htmlObject,shtmlObject){ - htmlObject.style.backgroundColor="#fffacd"; - return htmlObject; - } - //action occures on drag moved out landing zone - this._dragOut=function(htmlObject){ - htmlObject.style.backgroundColor=""; - return this; - } -} -//set input control as “landing zone” -tree.dragger.addDragLanding(document.getElementById('sInput'), new s_control); -</script> - -
    - - - - - - -
    - - diff --git a/phpgwapi/js/dhtmlxtree/doc/tgroup.html b/phpgwapi/js/dhtmlxtree/doc/tgroup.html deleted file mode 100644 index aff2c66b51..0000000000 --- a/phpgwapi/js/dhtmlxtree/doc/tgroup.html +++ /dev/null @@ -1,109 +0,0 @@ -

    dhtmlXTreeObject object API

    Initialization

    Selection control

    Add/delete

    Node/level control

    Checkboxes/user data manipulation

    Appearence control

    Event Handlers

    \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/doc/toc.html b/phpgwapi/js/dhtmlxtree/doc/toc.html deleted file mode 100644 index 27f6682f23..0000000000 --- a/phpgwapi/js/dhtmlxtree/doc/toc.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - dhtmlxTree v.1.2 SDK TOC - - - - - - - - - - - - - - - - - - -
    - dhtmlXTree v.1.2 SDK -
    -
    -
    Visit dhtmlxTree home page
    - - - - diff --git a/phpgwapi/js/dhtmlxtree/doc/toc.xml b/phpgwapi/js/dhtmlxtree/doc/toc.xml deleted file mode 100644 index f5f15694c1..0000000000 --- a/phpgwapi/js/dhtmlxtree/doc/toc.xml +++ /dev/null @@ -1,73 +0,0 @@ - - - - - guide.html - - - guide.html - - - guide.html - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - alpha.html - - - tgroup.html - - - ogroup.html - - - - - special.html - - - - - - kb/faq.html - - - - - - - - - kb/dyn_loading.html - - - - diff --git a/phpgwapi/js/dhtmlxtree/doc/treeEvents.xml b/phpgwapi/js/dhtmlxtree/doc/treeEvents.xml deleted file mode 100644 index 4f54881f9c..0000000000 --- a/phpgwapi/js/dhtmlxtree/doc/treeEvents.xml +++ /dev/null @@ -1,74 +0,0 @@ - - - - ID of clicked node - Event raised immideatly after text part of item in tree was clicked, but after default onClick functionality was processed. - Richh mouse button click can be catched by onRightClick handler. - - - ID of clicked node - Event raised immideatly after item in tree was doubleclicked, before default onDblClick functionality was processed. - Beware using both onClick and onDblClick events, because component can generate onClick event before onDblClick event while doubleclicking item in tree. - ( that behavior depend on used brouser ) - - - true - confirm opening/closing; false - deny opening/closing; - - - - ID of node which will be closed - Current open state of tree item. 0 - item has not childs, -1 - item closed, 1 - item opened. - Event raised immideatly after item in tree was opened/closed , and before item opened//closed. Event also raised for unclosable nodes and nodes without open/close functionality - in that case result of function will be ignored. - Event not raised if node opened by dhtmlXtree API. - - - true - confirm opening/closing; false - deny opening/closing; - - - - ID of node which will be closed - Current checkbox state. 1 - item checked, 0 - item unchecked. - Event raised immideatly after item in tree was opened/closed, but after item checked/unchecked. - - - ID of source item - ID of target item - Event occured after item was dragged and droped on another item, but before item moving processed. - Event also raised while programmatic moving nodes. - - true - confirm drag-and-drop; false - deny drag-and-drop; - - - - Commercial - ID of source item - ID of target item - ID of clicked node - Event raised after drag-and-drop processed. Event also raised while programmatic moving nodes. - - - - Commercial (not released yet) - ID of tree item - ID of target item - ID of clicked node - - Event occured after right mouse button was clicked. - Assigning this handler can disable default context menu, and noncompattible with dhtmlXMenu integration. - - - - - Commercial (not released yet) - ID of tree item - ID of target item - ID of clicked node - - Event occured after right mouse button was clicked. - Assigning this handler can disable default context menu, and noncompattible with dhtmlXMenu integration. - - - - - - \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/imgs/blank.gif b/phpgwapi/js/dhtmlxtree/imgs/blank.gif deleted file mode 100644 index d7ae406713..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/blank.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/book.gif b/phpgwapi/js/dhtmlxtree/imgs/book.gif deleted file mode 100644 index b0ce63a9d1..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/book.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/book_titel.gif b/phpgwapi/js/dhtmlxtree/imgs/book_titel.gif deleted file mode 100644 index 31c916d065..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/book_titel.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/books_close.gif b/phpgwapi/js/dhtmlxtree/imgs/books_close.gif deleted file mode 100644 index e4bd9d6fe2..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/books_close.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/books_open.gif b/phpgwapi/js/dhtmlxtree/imgs/books_open.gif deleted file mode 100644 index 020ce728c0..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/books_open.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/btn_up1.gif b/phpgwapi/js/dhtmlxtree/imgs/btn_up1.gif deleted file mode 100644 index dd7675fd62..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/btn_up1.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/btn_up2.gif b/phpgwapi/js/dhtmlxtree/imgs/btn_up2.gif deleted file mode 100644 index a7837e0f7f..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/btn_up2.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/close2.gif b/phpgwapi/js/dhtmlxtree/imgs/close2.gif deleted file mode 100644 index 94c267d5b9..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/close2.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/folderClosed.gif b/phpgwapi/js/dhtmlxtree/imgs/folderClosed.gif deleted file mode 100644 index 1ebe3c977b..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/folderClosed.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/folderOpen.gif b/phpgwapi/js/dhtmlxtree/imgs/folderOpen.gif deleted file mode 100644 index c193e869f1..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/folderOpen.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/iconCheckAll.gif b/phpgwapi/js/dhtmlxtree/imgs/iconCheckAll.gif deleted file mode 100644 index d90899259b..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/iconCheckAll.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/iconCheckGray.gif b/phpgwapi/js/dhtmlxtree/imgs/iconCheckGray.gif deleted file mode 100644 index cb54c0a8f3..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/iconCheckGray.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/iconClient.gif b/phpgwapi/js/dhtmlxtree/imgs/iconClient.gif deleted file mode 100644 index 95b3b75913..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/iconClient.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/iconDeleteSelected.gif b/phpgwapi/js/dhtmlxtree/imgs/iconDeleteSelected.gif deleted file mode 100644 index 1fd762b44d..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/iconDeleteSelected.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/iconJob.gif b/phpgwapi/js/dhtmlxtree/imgs/iconJob.gif deleted file mode 100644 index c073898e99..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/iconJob.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/iconReport.gif b/phpgwapi/js/dhtmlxtree/imgs/iconReport.gif deleted file mode 100644 index bdcc6a54da..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/iconReport.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/iconTask.gif b/phpgwapi/js/dhtmlxtree/imgs/iconTask.gif deleted file mode 100644 index a43d60d2be..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/iconTask.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/iconTimeRecordsEdit.gif b/phpgwapi/js/dhtmlxtree/imgs/iconTimeRecordsEdit.gif deleted file mode 100644 index 1ca8341d26..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/iconTimeRecordsEdit.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/iconUnCheckAll.gif b/phpgwapi/js/dhtmlxtree/imgs/iconUnCheckAll.gif deleted file mode 100644 index 5e54ec5995..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/iconUnCheckAll.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/item.gif b/phpgwapi/js/dhtmlxtree/imgs/item.gif deleted file mode 100644 index 56c0221a0d..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/item.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/item2.gif b/phpgwapi/js/dhtmlxtree/imgs/item2.gif deleted file mode 100644 index 47274d09f3..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/item2.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/leaf.gif b/phpgwapi/js/dhtmlxtree/imgs/leaf.gif deleted file mode 100644 index 1cf40f1e0c..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/leaf.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/line1.gif b/phpgwapi/js/dhtmlxtree/imgs/line1.gif deleted file mode 100644 index 60f2ccb26e..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/line1.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/line2.gif b/phpgwapi/js/dhtmlxtree/imgs/line2.gif deleted file mode 100644 index f2d7bdd506..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/line2.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/line3.gif b/phpgwapi/js/dhtmlxtree/imgs/line3.gif deleted file mode 100644 index d718be218f..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/line3.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/line4.gif b/phpgwapi/js/dhtmlxtree/imgs/line4.gif deleted file mode 100644 index 29285e5986..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/line4.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/magazines_close.gif b/phpgwapi/js/dhtmlxtree/imgs/magazines_close.gif deleted file mode 100644 index 513c01a006..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/magazines_close.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/magazines_open.gif b/phpgwapi/js/dhtmlxtree/imgs/magazines_open.gif deleted file mode 100644 index fcda411c79..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/magazines_open.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/minus.gif b/phpgwapi/js/dhtmlxtree/imgs/minus.gif deleted file mode 100644 index ef04a54696..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/minus.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/minus2.gif b/phpgwapi/js/dhtmlxtree/imgs/minus2.gif deleted file mode 100644 index 0372294cb9..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/minus2.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/minus3.gif b/phpgwapi/js/dhtmlxtree/imgs/minus3.gif deleted file mode 100644 index d928af6394..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/minus3.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/minus4.gif b/phpgwapi/js/dhtmlxtree/imgs/minus4.gif deleted file mode 100644 index 30bc7deecb..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/minus4.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/minus5.gif b/phpgwapi/js/dhtmlxtree/imgs/minus5.gif deleted file mode 100644 index e2e30fcb24..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/minus5.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/minus_ar.gif b/phpgwapi/js/dhtmlxtree/imgs/minus_ar.gif deleted file mode 100644 index 4428ba1500..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/minus_ar.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/open2.gif b/phpgwapi/js/dhtmlxtree/imgs/open2.gif deleted file mode 100644 index 7d8f2f8ba0..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/open2.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/plus.gif b/phpgwapi/js/dhtmlxtree/imgs/plus.gif deleted file mode 100644 index abb84bdfbf..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/plus.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/plus2.gif b/phpgwapi/js/dhtmlxtree/imgs/plus2.gif deleted file mode 100644 index ea2816efce..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/plus2.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/plus3.gif b/phpgwapi/js/dhtmlxtree/imgs/plus3.gif deleted file mode 100644 index cd6967e52b..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/plus3.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/plus4.gif b/phpgwapi/js/dhtmlxtree/imgs/plus4.gif deleted file mode 100644 index 185bd9b704..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/plus4.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/plus5.gif b/phpgwapi/js/dhtmlxtree/imgs/plus5.gif deleted file mode 100644 index 72fe4e577f..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/plus5.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/plus_ar.gif b/phpgwapi/js/dhtmlxtree/imgs/plus_ar.gif deleted file mode 100644 index d2fcaf0120..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/plus_ar.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/tombs.gif b/phpgwapi/js/dhtmlxtree/imgs/tombs.gif deleted file mode 100644 index 25131eeeb6..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/tombs.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/imgs/tombs_mag.gif b/phpgwapi/js/dhtmlxtree/imgs/tombs_mag.gif deleted file mode 100644 index b58e29a1e4..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/imgs/tombs_mag.gif and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/index.shtml b/phpgwapi/js/dhtmlxtree/index.shtml deleted file mode 100644 index aed0e7d0eb..0000000000 --- a/phpgwapi/js/dhtmlxtree/index.shtml +++ /dev/null @@ -1,198 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - -

    Often there is a need to show a hierarchically structured data.
    -Our dhtmlxTree (DHTML extensions Tree) lets you do this in an easy and most comfortable way - in any browser! This JavaScript Tree Menu component allows creating user-friendly navigation bar for a commercial application or a web site. Menu items are organized into compact, hierarchical tree structure so users can find information they need easily.
    -Having such feature, as dynamical loading of items from XML stream allows dhtmlxTree to handle large amounts of data. Drag-and-drop makes it possible to drag items not just within one tree, but between different trees. Try by yourself now:

    - - - - - - - -
    -
    -
    -
      -
    -
    -
    - - Drag & drop items within the trees as well as between trees
    - Double-click on folder label or click on [+] plus to expand subitems. -
    -

    -

    Rich client-side Javascript API gives an opportunity to change tree styles (folder images, fonts, indents, and colors) and manage any part or activity. Our DHTML tree works perfectly in all main Web-browsers for Windows, Mac OS X, Linux or Unix so you don't have to care about the browser compatibility.
    -dhtmlxTree has built-in checkboxes providing a handy tool for any kind of navigation system where selection lists are required. -

    - - - - - - - - - -
    -

    What's new in version 1.2* (October 20, 2005):

    -
  • XHTML compartibility
  • -
  • Complex drag-n-drop (inside/between)
  • -
  • Extended Serialization (userdata, more other parameters)
  • -
  • Sorting (a-z,z-a)
  • -
  • .Net support
  • -
  • JSP support
  • -
  • Event handlers for loading process
  • -
  • Extended event handlers for drag-n-drop
  • -
  • drag-n-Drop outside the tree
  • -
  • Icon sizes now changable
  • -
  • Possibility to turn +/- off
  • -
  • Increased overal performance
  • -
  • Disabling/hiding checkboxes
  • -
  • New Samples
  • -
  • More Detailed documentation
  • -
  • PHP/MySQL, ASP.Net, JSP sample applications
  • -
    * - some functionlity available in professional edition only -

    -
    -

    Supported Browsers:

    -
  • IE 5.x and above
  • -
  • Mac OS X Safari
  • -
  • Mozilla 1.4 and above
  • -
  • FireFox 0.9 and above
  • -
  • Opera (Xml support depends on browser version)
  • - -

    Features:*

    -
  • Multibrowser/Multiplatform support
  • -
  • XHTML compartible
  • -
  • Full controll with JavaScript API
  • -
  • Dynamic loading
  • -
  • XML support
  • -
  • Extended XML serialization
  • -
  • drag-&-drop (within one tree, between trees)
  • -
  • copy with drag-n-drop
  • -
  • drop-between/drop-inside
  • -
  • checkboxes (two/three states), disabled/hidden
  • -
  • customizable icons (with javascript or xml), icon size
  • -
  • user data for nodes
  • -
  • Async mode loading support
  • -
  • .NET custom server control
  • -
  • JSP custom tag
  • -
  • Macromedia Cold Fusion support
  • -
  • More detailed documentation
  • -
    - * - some functionlity available in professional edition only -

    Editions

    -
  • Standard - available for free download (for non-commercial use).
  • -
  • Professional - contains additional features (with examples) which are not present at standard edition. Included with Commercial and Enterprise licenses. Contact us to buy.
  • -

    Licensing

    -
  • Open Source - GPL (standard edition only)
  • -
  • Commercial License (standard and professional editions): in order to use any edition of dhtmlxTree in a commercial project, get all features available in professional edition or to have support you can purchase a Commercial License ($99). Contact us to buy.
  • -
    -

    Download:

    -
  • Full package (v.1.2 standard)
  • -
  • Documentation only
  • -

    Examples:

    -
  • Initialize object
  • -
  • Add/Delete items
  • -
  • Attached events
  • -
  • Collapse/Expand branch
  • -
  • Change item text/images
  • -
  • Checkboxes
  • -
  • Change design
  • -
  • Autoloading from xml
  • -
  • Drag and Drop
  • -
  • Working with database (PHP/MySQL)
  • -

    Documentation:

    -
  • API Functions and Documentation
  • -
    -
    - -

    Code Sample

    - - -<link rel="STYLESHEET" type="text/css" href="jTreeX.css"> -<script src="dhtmlXCommon.js"></script> -<script src="dhtmlXTree.js"></script> - -<script> - var tree1 = null; - function doOnLoad(){ - tree1=new dhtmlXTreeObject('treebox1',"100%","100%",0); - tree1.setImagePath("imgs/"); - tree1.enableDragAndDrop(true); - tree1.loadXML("tree.xml") - } -</script> -<body onload="doOnLoad()"> -<div - id="treebox1" - style=" width:250; - height:250; - background-color:#f5f5f5; - border :1px solid Silver; - overflow:auto;"> -</div> - - -

    See also our Java tree applet - jTree.

    -
    - - \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/js/dhtmlXCommon.js b/phpgwapi/js/dhtmlxtree/js/dhtmlXCommon.js deleted file mode 100644 index 42bd7d568c..0000000000 --- a/phpgwapi/js/dhtmlxtree/js/dhtmlXCommon.js +++ /dev/null @@ -1,419 +0,0 @@ -/* -Copyright Scand LLC http://www.scbr.com -This version of Software is free for using in non-commercial applications. -For commercial use please contact info@scbr.com to obtain license -*/ -function dtmlXMLLoaderObject(funcObject,dhtmlObject,async){ - this.xmlDoc=""; - if(arguments.length==2) - this.async=true; - else - this.async=async; - this.onloadAction=funcObject||null; - this.mainObject=dhtmlObject||null; - return this; -}; - - dtmlXMLLoaderObject.prototype.waitLoadFunction=function(dhtmlObject){ - this.check=function(){ - if(dhtmlObject.onloadAction!=null){ - if(!dhtmlObject.xmlDoc.readyState)dhtmlObject.onloadAction(dhtmlObject.mainObject); - else{ - if(dhtmlObject.xmlDoc.readyState != 4)return false; - else dhtmlObject.onloadAction(dhtmlObject.mainObject,null,null,null,dhtmlObject);} -} -}; - return this.check; -}; - - - dtmlXMLLoaderObject.prototype.getXMLTopNode=function(tagName){ - if(this.xmlDoc.responseXML){var temp=this.xmlDoc.responseXML.getElementsByTagName(tagName);var z=temp[0];} - else var z=this.xmlDoc.documentElement; - if(z)return z; - dhtmlxError.throwError("LoadXML","Incorrect XML",[this.xmlDoc]) - return document.createElement("DIV"); -}; - - - dtmlXMLLoaderObject.prototype.loadXMLString=function(xmlString){ - try -{ - var parser = new DOMParser(); - this.xmlDoc = parser.parseFromString(xmlString,"text/xml"); -} - catch(e){ - this.xmlDoc = new ActiveXObject("Microsoft.XMLDOM"); - this.xmlDoc.async=this.async - this.xmlDoc.loadXML(xmlString); -} - this.onloadAction(this.mainObject); -} - dtmlXMLLoaderObject.prototype.loadXML=function(filePath){ - try -{ - this.xmlDoc = new XMLHttpRequest(); - this.xmlDoc.open("GET",filePath,this.async); - this.xmlDoc.onreadystatechange=new this.waitLoadFunction(this); - this.xmlDoc.send(null); -} - catch(e){ - - if(document.implementation && document.implementation.createDocument) -{ - this.xmlDoc = document.implementation.createDocument("","",null); - this.xmlDoc.onload = new this.waitLoadFunction(this); -} - else -{ - this.xmlDoc = new ActiveXObject("Microsoft.XMLDOM"); - this.xmlDoc.async=this.async - this.xmlDoc.onreadystatechange=new this.waitLoadFunction(this); -} - this.xmlDoc.load(filePath); -} -}; - - -function callerFunction(funcObject,dhtmlObject){ - this.handler=function(e){ - if(!e)e=event; - funcObject(e,dhtmlObject); - return true; -}; - return this.handler; -}; - - -function getAbsoluteLeft(htmlObject){ - var xPos = htmlObject.offsetLeft; - var temp = htmlObject.offsetParent; - while(temp != null){ - xPos+= temp.offsetLeft; - temp = temp.offsetParent; -} - return xPos; -} - -function getAbsoluteTop(htmlObject){ - var yPos = htmlObject.offsetTop; - var temp = htmlObject.offsetParent; - while(temp != null){ - yPos+= temp.offsetTop; - temp = temp.offsetParent; -} - return yPos; -} - - - -function convertStringToBoolean(inputString){if(typeof(inputString)=="string")inputString=inputString.toLowerCase(); - switch(inputString){ - case "1": - case "true": - case "yes": - case "y": - case 1: - case true: - return true; - break; - default: return false; -} -} - - -function getUrlSymbol(str){ - if(str.indexOf("?")!=-1) - return "&" - else - return "?" -} - - -function dhtmlDragAndDropObject(){ - this.lastLanding=0; - this.dragNode=0; - this.dragStartNode=0; - this.dragStartObject=0; - this.tempDOMU=null; - this.tempDOMM=null; - this.waitDrag=0; - if(window.dhtmlDragAndDrop)return window.dhtmlDragAndDrop; - window.dhtmlDragAndDrop=this; - - return this; -}; - - dhtmlDragAndDropObject.prototype.removeDraggableItem=function(htmlNode){ - htmlNode.onmousedown=null; - htmlNode.dragStarter=null; - htmlNode.dragLanding=null; -} - dhtmlDragAndDropObject.prototype.addDraggableItem=function(htmlNode,dhtmlObject){ - htmlNode.onmousedown=this.preCreateDragCopy; - htmlNode.dragStarter=dhtmlObject; - this.addDragLanding(htmlNode,dhtmlObject); -} - dhtmlDragAndDropObject.prototype.addDragLanding=function(htmlNode,dhtmlObject){ - htmlNode.dragLanding=dhtmlObject; -} - dhtmlDragAndDropObject.prototype.preCreateDragCopy=function(e) -{ - if(window.dhtmlDragAndDrop.waitDrag){ - window.dhtmlDragAndDrop.waitDrag=0; - document.body.onmouseup=window.dhtmlDragAndDrop.tempDOMU; - document.body.onmousemove=window.dhtmlDragAndDrop.tempDOMM; - return false; -} - - window.dhtmlDragAndDrop.waitDrag=1; - window.dhtmlDragAndDrop.tempDOMU=document.body.onmouseup; - window.dhtmlDragAndDrop.tempDOMM=document.body.onmousemove; - window.dhtmlDragAndDrop.dragStartNode=this; - window.dhtmlDragAndDrop.dragStartObject=this.dragStarter; - document.body.onmouseup=window.dhtmlDragAndDrop.preCreateDragCopy; - document.body.onmousemove=window.dhtmlDragAndDrop.callDrag; - - if((e)&&(e.preventDefault)){e.preventDefault();return false;} - return false; -}; - dhtmlDragAndDropObject.prototype.callDrag=function(e){ - if(!e)e=window.event; - dragger=window.dhtmlDragAndDrop; - - if((e.button==0)&&(isIE()))return dragger.stopDrag(); - if(!dragger.dragNode){ - dragger.dragNode=dragger.dragStartObject._createDragNode(dragger.dragStartNode); - if(!dragger.dragNode)return dragger.stopDrag(); - dragger.gldragNode=dragger.dragNode; - document.body.appendChild(dragger.dragNode); - document.body.onmouseup=dragger.stopDrag; - dragger.waitDrag=0; - dragger.dragNode.pWindow=window; - dragger.initFrameRoute(); -} - - - if(dragger.dragNode.parentNode!=window.document.body){ - var grd=dragger.gldragNode; - if(dragger.gldragNode.old)grd=dragger.gldragNode.old; - - - grd.parentNode.removeChild(grd); - var oldBody=dragger.dragNode.pWindow; - if(isIE()){ - var div=document.createElement("Div"); - div.innerHTML=dragger.dragNode.outerHTML; - dragger.dragNode=div.childNodes[0];} - else dragger.dragNode=dragger.dragNode.cloneNode(true); - dragger.dragNode.pWindow=window; - dragger.gldragNode.old=dragger.dragNode; - document.body.appendChild(dragger.dragNode); - oldBody.dhtmlDragAndDrop.dragNode=dragger.dragNode; -} - dragger.dragNode.style.left=e.clientX+15+(dragger.fx?dragger.fx*(-1):0)+document.body.scrollLeft+"px"; - dragger.dragNode.style.top=e.clientY+3+(dragger.fy?(-1)*dragger.fy:0)+document.body.scrollTop+"px"; - if(!e.srcElement)var z=e.target;else z=e.srcElement; - dragger.checkLanding(z,e.clientX,e.clientY); -} - - dhtmlDragAndDropObject.prototype.calculateFramePosition=function(n){ - - if(window.name){ - var el =parent.frames[window.name].frameElement.offsetParent; - var fx=0; - var fy=0; - while(el){fx+= el.offsetLeft;fy+= el.offsetTop;el = el.offsetParent;} - if((parent.dhtmlDragAndDrop)){var ls=parent.dhtmlDragAndDrop.calculateFramePosition(1);fx+=ls.split('_')[0]*1;fy+=ls.split('_')[1]*1;} - if(n)return fx+"_"+fy; - else this.fx=fx;this.fy=fy; -} - return "0_0"; -} - dhtmlDragAndDropObject.prototype.checkLanding=function(htmlObject,x,y){ - - if((htmlObject)&&(htmlObject.dragLanding)){if(this.lastLanding)this.lastLanding.dragLanding._dragOut(this.lastLanding); - this.lastLanding=htmlObject;this.lastLanding=this.lastLanding.dragLanding._dragIn(this.lastLanding,this.dragStartNode,x,y);} - else{ - if((htmlObject)&&(htmlObject.tagName!="BODY"))this.checkLanding(htmlObject.parentNode,x,y); - else{if(this.lastLanding)this.lastLanding.dragLanding._dragOut(this.lastLanding,x,y);this.lastLanding=0;} -} -} - dhtmlDragAndDropObject.prototype.stopDrag=function(e,mode){ - dragger=window.dhtmlDragAndDrop; - if(!mode) -{ - dragger.stopFrameRoute(); - var temp=dragger.lastLanding; - dragger.lastLanding=null; - if(temp)temp.dragLanding._drag(dragger.dragStartNode,dragger.dragStartObject,temp); -} - dragger.lastLanding=null; - if((dragger.dragNode)&&(dragger.dragNode.parentNode==document.body))dragger.dragNode.parentNode.removeChild(dragger.dragNode); - dragger.dragNode=0; - dragger.gldragNode=0; - dragger.fx=0; - dragger.fy=0; - dragger.dragStartNode=0; - dragger.dragStartObject=0; - document.body.onmouseup=dragger.tempDOMU; - document.body.onmousemove=dragger.tempDOMM; - dragger.tempDOMU=null; - dragger.tempDOMM=null; - dragger.waitDrag=0; -} - - dhtmlDragAndDropObject.prototype.stopFrameRoute=function(win){ - if(win) - window.dhtmlDragAndDrop.stopDrag(1,1); - - for(var i=0;i20)this.selectionBar.style.width=this.allTree.offsetWidth-20; - this.selectionBar.style.display="none"; - - this.allTree.appendChild(this.selectionBar); - - - - - return this; -}; - - -function dhtmlXTreeItemObject(itemId,itemText,parentObject,treeObject,actionHandler,mode){ - this.htmlNode=""; - this.acolor=""; - this.scolor=""; - this.tr=0; - this.childsCount=0; - this.tempDOMM=0; - this.tempDOMU=0; - this.dragSpan=0; - this.dragMove=0; - this.span=0; - this.closeble=1; - this.childNodes=new Array(); - this.userData=new Object(); - - this.checkstate=0; - this.treeNod=treeObject; - this.label=itemText; - this.parentObject=parentObject; - this.actionHandler=actionHandler; - this.images=new Array(treeObject.imageArray[0],treeObject.imageArray[1],treeObject.imageArray[2]); - - - this.id=treeObject._globalIdStorageAdd(itemId,this); - if(this.treeNod.checkBoxOff)this.htmlNode=this.treeNod._createItem(1,this,mode); - else this.htmlNode=this.treeNod._createItem(0,this,mode); - - this.htmlNode.objBelong=this; - return this; -}; - - - - dhtmlXTreeObject.prototype._globalIdStorageAdd=function(itemId,itemObject){ - if(this._globalIdStorageFind(itemId,1,1)){d=new Date();itemId=d.valueOf()+"_"+itemId;return this._globalIdStorageAdd(itemId,itemObject);} - this._globalIdStorage[this._globalIdStorageSize]=itemId; - this.globalNodeStorage[this._globalIdStorageSize]=itemObject; - this._globalIdStorageSize++; - return itemId; -}; - - dhtmlXTreeObject.prototype._globalIdStorageSub=function(itemId){ - for(var i=0;i0){beforeNode=new Object;beforeNode.tr=parentObject.childNodes[0].tr.previousSibling;} - for(ik=0;ik=2) -{ - this._correctPlus(Nodes[parentObject.childsCount-2]); - this._correctLine(Nodes[parentObject.childsCount-2]); -} - if(parentObject.childsCount!=2)this._correctPlus(Nodes[0]); - if(this.tscheck)this._correctCheckStates(parentObject); -} - if(this.cMenu)this.cMenu.setContextZone(Nodes[Count].span,Nodes[Count].id); - return Nodes[Count]; -}; - - - - dhtmlXTreeObject.prototype.insertNewItem=function(parentId,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,childs){ - var parentObject=this._globalIdStorageFind(parentId); - if(!parentObject)return(-1); - return this._attachChildNode(parentObject,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,childs); -}; - - dhtmlXTreeObject.prototype._parseXMLTree=function(dhtmlObject,node,parentId,level){ - - - if(!dhtmlObject.parsCount)dhtmlObject.parsCount=1;else dhtmlObject.parsCount++; - - dhtmlObject.XMLloadingWarning=1; - var nodeAskingCall=""; - if(!node){ - node=dhtmlObject.XMLLoader.getXMLTopNode("tree"); - parentId=node.getAttribute("id"); - dhtmlObject.parsingOn=parentId; - dhtmlObject.parsedArray=new Array(); - dhtmlObject.setCheckList=""; -} - - - if(node.getAttribute("order")) - dhtmlObject._reorderXMLBranch(node); - - - for(var i=0;i0){ - for(var a=0;a1){ - if(((Nodes[1].style.display!="none")||(mode==1))&&(mode!=2)){ - - this.allTree.childNodes[0].border = "1"; - this.allTree.childNodes[0].border = "0"; - nodestyle="none"; -} - else nodestyle=""; - - for(var i=1;ithis._getNodeLevel(nodeB,0)) -{ - return this._moveNodeTo(itemObject,nodeA.parentObject); -} - else -{ - - return this._moveNodeTo(itemObject,nodeB.parentObject,nodeB); -} - - - - - -} - else return this._moveNodeTo(itemObject,targetObject); - -} - - - -dhtmlXTreeObject.prototype._fixNodesCollection=function(target,zParent){ - var flag=0;var icount=0; - var Nodes=target.childNodes; - var Count=target.childsCount-1; - - if(zParent==Nodes[Count])return; - for(var i=0;i=2) -{ - - this._correctPlus(Nodes[targetObject.childsCount-2]); - this._correctLine(Nodes[targetObject.childsCount-2]); -} - - this._correctPlus(Nodes[targetObject.childsCount-1]); - - - - if(this.tscheck)this._correctCheckStates(targetObject); - if(oldTree.tscheck)oldTree._correctCheckStates(z); - -} - - - - if(c>1){oldTree._correctPlus(z.childNodes[c-2]); - oldTree._correctLine(z.childNodes[c-2]); -} - - oldTree._correctPlus(z); - - - - - if(this.dropFunc)this.dropFunc(itemObject.id,targetObject.id,(beforeNode?beforeNode.id:null),itemObject.treeNod,targetObject.treeNod); - return itemObject.id; -}; - - -dhtmlXTreeObject.prototype._checkParenNodes=function(itemId,htmlObject,shtmlObject){ - if(shtmlObject){if(shtmlObject.parentObject.id==htmlObject.id)return 1;} - if(htmlObject.id==itemId)return 1; - if(htmlObject.parentObject)return this._checkParenNodes(itemId,htmlObject.parentObject);else return 0; -}; - - - - - dhtmlXTreeObject.prototype._clearStyles=function(itemObject){ - var td1=itemObject.htmlNode.childNodes[0].childNodes[0].childNodes[1]; - var td3=td1.nextSibling.nextSibling; - - itemObject.span.innerHTML=itemObject.label; - - if(this.checkBoxOff){td1.childNodes[0].style.display="";td1.childNodes[0].onclick=this.onCheckBoxClick;} - else td1.childNodes[0].style.display="none"; - td1.childNodes[0].treeNod=this; - - this.dragger.removeDraggableItem(td3); - if(this.dragAndDropOff)this.dragger.addDraggableItem(td3,this); - td3.childNodes[0].className="standartTreeRow"; - td3.onclick=this.onRowSelect;td3.ondblclick=this.onRowClick2; - td1.previousSibling.onclick=this.onRowClick; - - this._correctLine(itemObject); - this._correctPlus(itemObject); - for(var i=0;i0))) - if(!htmlNode.nocheckbox){if(list)list+=","+htmlNode.id;else list=htmlNode.id;} - var j=htmlNode.childsCount; - for(var i=0;iz.childsCount))return null; - return z.childNodes[index].id; -}; - - - dhtmlXTreeObject.prototype.getChildItemIdByIndex=function(itemId,index){ - var z=this._globalIdStorageFind(itemId); - if((!z)||(index>z.childsCount))return null; - return z.childNodes[index].id; -}; - - - - - - - dhtmlXTreeObject.prototype.setDragHandler=function(func){if(typeof(func)=="function")this.dragFunc=func;else this.dragFunc=eval(func);}; - - - dhtmlXTreeObject.prototype._clearMove=function(htmlNode){ - if((htmlNode.parentObject)&&(htmlNode.parentObject.span)){ - htmlNode.parentObject.span.className='standartTreeRow'; - if(htmlNode.parentObject.acolor)htmlNode.parentObject.span.style.color=htmlNode.parentObject.acolor; -} - - this.selectionBar.style.display="none"; - - this.allTree.className="containerTableStyle"; -}; - - - dhtmlXTreeObject.prototype.enableDragAndDrop=function(mode){ - this.dragAndDropOff=convertStringToBoolean(mode); - if(this.dragAndDropOff)this.dragger.addDragLanding(this.allTree,this); -}; - - - - dhtmlXTreeObject.prototype._setMove=function(htmlNode,x,y){ - if(htmlNode.parentObject.span){ - - var a1=getAbsoluteTop(htmlNode); - var a2=getAbsoluteTop(this.allTree); - - this.dadmodec=this.dadmode; - this.dadmodefix=0; - - - if(this.dadmodec==0) -{ - htmlNode.parentObject.span.className='selectedTreeRow'; - if(htmlNode.parentObject.scolor)htmlNode.parentObject.span.style.color=htmlNode.parentObject.scolor; -} - else{ - htmlNode.parentObject.span.className='standartTreeRow'; - if(htmlNode.parentObject.acolor)htmlNode.parentObject.span.style.color=htmlNode.parentObject.acolor; - this.selectionBar.style.top=a1-a2+16+this.dadmodefix; - this.selectionBar.style.left=5; - this.selectionBar.style.display=""; -} - - - if(this.autoScroll) -{ - - if((a1-a2-parseInt(this.allTree.scrollTop))>(parseInt(this.allTree.offsetHeight)-50)) - this.allTree.scrollTop=parseInt(this.allTree.scrollTop)+20; - - if((a1-a2)<(parseInt(this.allTree.scrollTop)+30)) - this.allTree.scrollTop=parseInt(this.allTree.scrollTop)-20; -} -} -}; - - - - -dhtmlXTreeObject.prototype._createDragNode=function(htmlObject){ - dhtmlObject=htmlObject.parentObject; - if(this.lastSelected)this._clearMove(this.lastSelected); - var dragSpan=document.createElement('div'); - dragSpan.innerHTML=dhtmlObject.label; - dragSpan.style.position="absolute"; - dragSpan.className="dragSpanDiv"; - return dragSpan; -} - - - -dhtmlXTreeObject.prototype._preventNsDrag=function(e){ - if((e)&&(e.preventDefault)){e.preventDefault();return false;} - return false; -} - -dhtmlXTreeObject.prototype._drag=function(sourceHtmlObject,dhtmlObject,targetHtmlObject){ - - if(this._autoOpenTimer)clearTimeout(this._autoOpenTimer); - - if(!targetHtmlObject.parentObject){ - targetHtmlObject=this.htmlNode.htmlNode.childNodes[0].childNodes[0].childNodes[1].childNodes[0]; - this.dadmodec=0; -} - - this._clearMove(targetHtmlObject); - var z=targetHtmlObject.parentObject.treeNod; - z._clearMove(""); - - if((!this.dragMove)||(this.dragMove())) -{ - var newID=this._moveNode(sourceHtmlObject.parentObject,targetHtmlObject.parentObject); - z.selectItem(newID); -} - - try{} - catch(e){ - return; -} -} - -dhtmlXTreeObject.prototype._dragIn=function(htmlObject,shtmlObject,x,y){ - if(!htmlObject.parentObject) -{ - - - this.allTree.className="containerTableStyle selectionBox"; - - return htmlObject; - -} - - if((!this._checkParenNodes(shtmlObject.parentObject.id,htmlObject.parentObject,shtmlObject.parentObject))&&(htmlObject.parentObject.id!=shtmlObject.parentObject.id)) -{ - htmlObject.parentObject.span.parentNode.appendChild(this.selectionBar); - this._setMove(htmlObject,x,y); - if(this._getOpenState(htmlObject.parentObject)<0) - this._autoOpenTimer=window.setTimeout(new callerFunction(this._autoOpenItem,this),1000); - this._autoOpenId=htmlObject.parentObject.id; - return htmlObject; -} - else return 0; -} -dhtmlXTreeObject.prototype._autoOpenItem=function(e,treeObject){ - treeObject.openItem(treeObject._autoOpenId); -}; -dhtmlXTreeObject.prototype._dragOut=function(htmlObject){ -this._clearMove(htmlObject); -if(this._autoOpenTimer)clearTimeout(this._autoOpenTimer); -} - - - - -dhtmlXTreeObject.prototype._getNextNode=function(item,mode){ - if((!mode)&&(item.childsCount))return item.childNodes[0]; - if(item==this.htmlNode) - return -1; - if((item.tr)&&(item.tr.nextSibling)&&(item.tr.nextSibling.nodem)) - return item.tr.nextSibling.nodem; - - return this._getNextNode(item.parentObject,true); -}; - - -dhtmlXTreeObject.prototype._lastChild=function(item){ - if(item.childsCount) - return this._lastChild(item.childNodes[item.childsCount-1]); - else return item; -}; - - -dhtmlXTreeObject.prototype._getPrevNode=function(node,mode){ - if((node.tr)&&(node.tr.previousSibling)&&(node.tr.previousSibling.nodem)) - return this._lastChild(node.tr.previousSibling.nodem); - - if(node.parentObject) - return node.parentObject; - else return -1; -}; - - - - - - - - - - diff --git a/phpgwapi/js/dhtmlxtree/pro_features.html b/phpgwapi/js/dhtmlxtree/pro_features.html deleted file mode 100644 index 4b69012e64..0000000000 --- a/phpgwapi/js/dhtmlxtree/pro_features.html +++ /dev/null @@ -1,31 +0,0 @@ - - - - - DHTML Tree. Professional edition features - - - - -

    dhtmlxTree Professional Edition Features:

    -
    -
  • Context Menu
  • -
  • Sorting
  • -
  • OnDrag/OnDrop event handler
  • -
  • Additional Drag-n-drop behavior – drop-as-sibling, complex drag-n-drop
  • -
  • Drag-n-drop between frames
  • -
  • Focus item with script method
  • -
  • Dynamic rendering – advanced xml processing for loading big trees when dynamical loading can't be used
  • -
  • Serialization – possibility to create XML based on updated tree structure.
  • -
  • Search
  • -
  • Multi-line tree items
  • -
  • Saving/Restoring tree state in/from cookies
  • -
  • Change icon size
  • - - - diff --git a/phpgwapi/js/dhtmlxtree/readme.txt b/phpgwapi/js/dhtmlxtree/readme.txt deleted file mode 100644 index a5b4193079..0000000000 --- a/phpgwapi/js/dhtmlxtree/readme.txt +++ /dev/null @@ -1,23 +0,0 @@ - -Current version: 1.2 from October 20, 2005 - -============================================================================================ - -If you want to use dhtmlXTree in a commercial product, you have to buy a commercial license. -Please contact us at info@scand.com - -Some comments on commercial usage: - -1.Commercial License allows you to use dhtmlXTree on unlimited number of Websites or sites -but only in one commercial project(application). According to this license we provide you -with support (consultations) and free-of-charge bug fixing during 1 month. -This license costs $99. - -2.Enterprise License allows you to use dhtmlXTree in unlimited number of projects on condition -that all of them are projects of one company. Support period is 1 year. -This license costs $399. - - -According to both licenses you are allowed to make changes to the code of Software but Scand LLC -still owns the code and you are not allowed to distribute changed code. - diff --git a/phpgwapi/js/dhtmlxtree/samples/dhtmlXTree.cfm b/phpgwapi/js/dhtmlxtree/samples/dhtmlXTree.cfm deleted file mode 100644 index f2ce9ed492..0000000000 --- a/phpgwapi/js/dhtmlxtree/samples/dhtmlXTree.cfm +++ /dev/null @@ -1,82 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - -
    - -
    - - -
    - \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/samples/dhtmlxTree_db_sample.zip b/phpgwapi/js/dhtmlxtree/samples/dhtmlxTree_db_sample.zip deleted file mode 100644 index d0b398ba89..0000000000 Binary files a/phpgwapi/js/dhtmlxtree/samples/dhtmlxTree_db_sample.zip and /dev/null differ diff --git a/phpgwapi/js/dhtmlxtree/samples/example.cfm b/phpgwapi/js/dhtmlxtree/samples/example.cfm deleted file mode 100644 index 6298250b80..0000000000 --- a/phpgwapi/js/dhtmlxtree/samples/example.cfm +++ /dev/null @@ -1,122 +0,0 @@ - - - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - <cf_dhtmlXTree im1="book.gif" im2="books_open.gif" im3="books_close.gif" > - - <item text="Mystery " id="mystery" open="yes" > - <item text="Lawrence Block" id="lb" > - <item text="All the Flowers Are Dying" id="lb_1" /> - <item text="The Burglar on the Prowl" id="lb_2" /> - <item text="The Plot Thickens" id="lb_3" /> - <item text="Grifters Game" id="lb_4" /> - <item text="The Burglar Who Thought He Was Bogart" id="lb_5" /> - </item> - <item text="Robert Crais" id="rc" > - <item text="The Forgotten Man" id="rc_1" /> - <item text="Stalking the Angel" id="rc_2" /> - <item text="Free Fall" id="rc_3" /> - <item text="Sunset Express" id="rc_4" /> - <item text="Hostage" id="rc_5" /> - </item> - <item text="Ian Rankin" id="ir" ></item> - <item text="James Patterson" id="jp" ></item> - <item text="Nancy Atherton" id="na" ></item> - </item> - - </cf_dhtmlXTree> - -
    - - - - <cf_dhtmlXTree checkboxes="threeState" xmlFile="tree4.xml" > - </cf_dhtmlXTree> - -
    - - - - - - - - - - - - - - - - - - - - - - - <cf_dhtmlXTree width="50%" dragndrop="true" checkboxes="twoState" onSelect="onClick" onCheck="onCheck" onDrop="onDrag" > - - <item text="Mystery " id="mystery" open="yes" > - <item text="Lawrence Block" id="lb" > - <item text="All the Flowers Are Dying" id="lb_1" /> - <item text="The Burglar on the Prowl" id="lb_2" /> - <item text="The Plot Thickens" id="lb_3" /> - <item text="Grifters Game" id="lb_4" /> - <item text="The Burglar Who Thought He Was Bogart" id="lb_5" /> - </item> - <item text="Robert Crais" id="rc" > - <item text="The Forgotten Man" id="rc_1" /> - <item text="Stalking the Angel" id="rc_2" /> - <item text="Free Fall" id="rc_3" /> - <item text="Sunset Express" id="rc_4" /> - <item text="Hostage" id="rc_5" /> - </item> - <item text="Ian Rankin" id="ir" ></item> - <item text="James Patterson" id="jp" ></item> - <item text="Nancy Atherton" id="na" ></item> - </item> - - </cf_dhtmlXTree> - -
    \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/samples/tree3.xml b/phpgwapi/js/dhtmlxtree/samples/tree3.xml deleted file mode 100644 index 79f13eed5e..0000000000 --- a/phpgwapi/js/dhtmlxtree/samples/tree3.xml +++ /dev/null @@ -1,64 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/phpgwapi/js/dhtmlxtree/samples/tree4.xml b/phpgwapi/js/dhtmlxtree/samples/tree4.xml deleted file mode 100644 index c74ca65901..0000000000 --- a/phpgwapi/js/dhtmlxtree/samples/tree4.xml +++ /dev/null @@ -1,61 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/phpgwapi/js/dhtmlxtree/samples/tree5.xml b/phpgwapi/js/dhtmlxtree/samples/tree5.xml deleted file mode 100644 index 42f89ef5fc..0000000000 --- a/phpgwapi/js/dhtmlxtree/samples/tree5.xml +++ /dev/null @@ -1,64 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/phpgwapi/js/dhtmlxtree/samples/tree6.xml b/phpgwapi/js/dhtmlxtree/samples/tree6.xml deleted file mode 100644 index bbc8081eb8..0000000000 --- a/phpgwapi/js/dhtmlxtree/samples/tree6.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/phpgwapi/js/dhtmlxtree/samples/treeEx11.html b/phpgwapi/js/dhtmlxtree/samples/treeEx11.html deleted file mode 100644 index 5c16c1c7c4..0000000000 --- a/phpgwapi/js/dhtmlxtree/samples/treeEx11.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - DHTML Tree samples. dhtmlXTree - Initialize object on page - - - -

    Initialize object on page

    - - - - - - - - - - - -
    -
    -
    - - -
     
    -
    - -<div id="treeboxbox_tree" style="width:200;height:200"></div> -<script> - tree=new dhtmlXTreeObject("treeboxbox_tree","100%","100%",0); - tree.setImagePath("../imgs/"); - tree.loadXML("tree.xml") -</script> - - Parameters passed to the constructor are: -
  • object to attach tree to (should be loaded before calling constructor)
  • -
  • width of the tree
  • -
  • height of the tree
  • -
  • identifier of level parent to tree root level

  • - Specify Additional parameters of the tree: -
  • setImagePath(url) - method specifies the path to the folder with tree icons
  • -
  • loadXML("tree.xml") - load tree items from XML
  • - -

    - - - diff --git a/phpgwapi/js/dhtmlxtree/samples/treeEx12.html b/phpgwapi/js/dhtmlxtree/samples/treeEx12.html deleted file mode 100644 index 56bbeeda2b..0000000000 --- a/phpgwapi/js/dhtmlxtree/samples/treeEx12.html +++ /dev/null @@ -1,95 +0,0 @@ - - - - - DHTML Tree samples. dhtmlXTree - Add / Delete items - - - -

    Add / Delete items

    - - - - - - - - - - - - -
    - - -
    -
    - - - Insert new child item Item label

    - - Insert new item next Item label

    - - Delete item

    - - - -
     
    -
    - - -<div id="treeboxbox_tree" style="width:200;height:200"></div> -<script> - tree=new dhtmlXTreeObject("treeboxbox_tree","100%","100%",0); - tree.setImagePath("../imgs/"); - tree.loadXML("tree.xml") - - tree.insertNewItem(0,100,"New Node 1",0,0,0,0,"SELECT"); - tree.insertNewNext(2,101,"New Node 2",0,0,0,0,""); - tree.deleteItem("2"); -</script> - -
  • 0s passed to the function for arguments 4-7 (function to call on select, images) mean use default values for them
  • -
  • Last argument is a comma delimited string of following possible value (upper case only):
  • -
  • SELECT - move selection to this node after inserting
  • -
  • CALL - call function on select
  • -
  • TOP - add node to the top position
  • -
  • CHILD - node has children
  • -
  • CHECKED - checkbox is checked (if exists)
  • - -

    - - - diff --git a/phpgwapi/js/dhtmlxtree/samples/treeEx13.html b/phpgwapi/js/dhtmlxtree/samples/treeEx13.html deleted file mode 100644 index 9358416b60..0000000000 --- a/phpgwapi/js/dhtmlxtree/samples/treeEx13.html +++ /dev/null @@ -1,82 +0,0 @@ - - - - - DHTML Tree samples. dhtmlXTree - Action handlers - - - -

    Action handlers

    - - - - - - - - - - - - -
    -
    -
    - -
     
    -
    - -<div id="treeBox" style="width:200;height:200"></div> -<script> - tree=new dhtmlXTreeObject(document.getElementById('treeBox'),"100%","100%",0); - - ... - tree.setDragHandler(onDrop);//set function object to call on drop - tree.setOnClickHandler(onNodeSelect);//set function object to call on node select - tree.setOnOpenHandler(aFunc);//set function to call on open/close node - tree.setOnCheckHandler(aFunc);//set function to call on open/close node - tree.setOnDblClickHandler(aFunc);//set function to call on dbl click -</script> - -
  • Selected node ID will be passed to function specified as argument for setDefaultAction(funcObj)
  • -
  • Dropped node ID and new parent node ID will be passed to function specified as argument for setDragFunction(funcObj)
  • -
  • node ID will be passed to the function specified as argument for setOpenAction(aFunc)
  • -
  • node ID will be passed to the function specified as argument for setDblClickAction(aFunc)
  • - -

    - - - diff --git a/phpgwapi/js/dhtmlxtree/samples/treeEx21.html b/phpgwapi/js/dhtmlxtree/samples/treeEx21.html deleted file mode 100644 index 7df293b711..0000000000 --- a/phpgwapi/js/dhtmlxtree/samples/treeEx21.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - DHTML Tree samples. dhtmlXTree - Collapse/Expand - - - -

    Collapse/Expand

    - - - - - - - - - - - - -
    - - -
    -
    - - - Expand all

    - Collapse all

    - Close selected item

    - Open selected item

    - Collapse selected branch

    - Expand selected branch

    - -
     
    -
    - -<div id="treeboxbox_tree" style="width:200;height:200"></div> -<script> - tree=new dhtmlXTreeObject("treeboxbox_tree","100%","100%",0); - tree.setImagePath("../imgs/"); - tree.loadXML("tree.xml"); - - .... - //expand all - tree.openAllItems(0); - //open item - tree.openItem(id); - //close item - tree.closeItem(id); - //open branch - tree.openAllItems(id); - //close branch - tree.closeAllItems(id); -</script> - - - -

    - - - diff --git a/phpgwapi/js/dhtmlxtree/samples/treeEx22.html b/phpgwapi/js/dhtmlxtree/samples/treeEx22.html deleted file mode 100644 index b148f4a142..0000000000 --- a/phpgwapi/js/dhtmlxtree/samples/treeEx22.html +++ /dev/null @@ -1,100 +0,0 @@ - - - - - DHTML Tree samples. dhtmlXTree - Change text/image - - - -

    Change text/image

    - - - - - - - - - - - - -
    -
    -
    - - - Set new item label 

    - - To change item's image - click on one of next images: - - - - - - - - - - - - - -
    -
    -
    -
    - To change item's color - click on one of next colors: - - - - - - - - - - - - - - - - -
     
     
     
     
     
     
     
     
     
    -
     
    -
    - -<div id="treeboxbox_tree" style="width:200;height:200"></div> -<script> - tree=new dhtmlXTreeObject("treeboxbox_tree","100%","100%",0); - tree.setImagePath("../imgs/"); - tree.loadXML("tree.xml"); - - .... - //set item text - tree.setItemText(id,"New text"); - //set item images - tree.setItemImage2(id,"item.gif","closeItem.gif","openItem.gif"); -</script> - - -

    - - - diff --git a/phpgwapi/js/dhtmlxtree/samples/treeEx23.html b/phpgwapi/js/dhtmlxtree/samples/treeEx23.html deleted file mode 100644 index a78ec07c16..0000000000 --- a/phpgwapi/js/dhtmlxtree/samples/treeEx23.html +++ /dev/null @@ -1,95 +0,0 @@ - - - - - DHTML Tree samples. dhtmlXTree - Checkboxes - - - -

    Checkboxes

    - - - - - - - - - - - - - -
    -
    -
    - - Two state checkboxes - Check item

    - UnCheck item

    - Check branch

    - UnCheck branch

    - - Get list of checked

    - -
    -
    -
    - - Three state checkboxes
    -
    - - Check item

    - UnCheck item

    - - Get list of checked

    - -
    -
    - -<div id="treeboxbox_tree" style="width:200;height:200"></div> -<script> - tree=new dhtmlXTreeObject("treeboxbox_tree","100%","100%",0); - tree.setImagePath("../imgs/"); - //enable checkboxes - tree.enableCheckBoxes(1); - tree.loadXML("tree.xml"); - - .... - //check item - tree.setCheck(id,true); - //uncheck item - tree.setCheck(id,false); - //check branch - tree.setSubChecked(id,true); - //uncheck branch - tree.setSubChecked(id,false); - //check item - tree.setCheck(id,true); - //return ids of checked items - var list=tree.getAllChecked(); -</script> - - -

    - - - diff --git a/phpgwapi/js/dhtmlxtree/samples/treeEx24.html b/phpgwapi/js/dhtmlxtree/samples/treeEx24.html deleted file mode 100644 index 614386600f..0000000000 --- a/phpgwapi/js/dhtmlxtree/samples/treeEx24.html +++ /dev/null @@ -1,109 +0,0 @@ - - - - - DHTML Tree samples. dhtmlXTree - Easy skinable design - - - -

    Easy skinable design

    - - - - - - - - - - - - -
    - - -

    -
    - -
    - - Set design 1
    - Set design 2
    - Set design 3
    - Set design 4
    - - -
     
    -
    - -<div id="treeboxbox_tree" style="width:200;height:200"></div> -<script> - tree=new dhtmlXTreeObject("treeboxbox_tree","100%","100%",0); - tree.setImagePath("../imgs/"); - tree.loadXML("tree.xml"); - - // enable/disable tree lines - tree.enableTreeLines(false); - // set plus images - tree.setImageArrays("plus","","","","open2.gif"); - //set minus images - tree.setImageArrays("minus","","","","close2.gif"); - //set default node images - tree.setStdImages("book.gif","books_open.gif","books_close.gif"); - -</script> - - - -

    - - - - diff --git a/phpgwapi/js/dhtmlxtree/samples/treeEx31.html b/phpgwapi/js/dhtmlxtree/samples/treeEx31.html deleted file mode 100644 index 79fe889188..0000000000 --- a/phpgwapi/js/dhtmlxtree/samples/treeEx31.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - DHTML Tree samples. dhtmlXTree - Autoloading from XML - - - -

    Autoloading from XML

    - - - - - - - - - - - - -
    - - -
    -
    - Tree has unlimmited level count. Each new level loaded from asp script. - - - - - - - -
     
    -
    - -<div id="treeboxbox_tree" style="width:200;height:200"></div> -<script> - tree=new dhtmlXTreeObject("treeboxbox_tree","100%","100%",0); - tree.setImagePath("../imgs/"); - //link tree to asp script - tree.setXMLAutoLoading("xml.php"); - - //load first level of tree - tree.loadXML("xml.asp?id=0"); -</script> - - -

    - - - diff --git a/phpgwapi/js/dhtmlxtree/samples/treeEx32.html b/phpgwapi/js/dhtmlxtree/samples/treeEx32.html deleted file mode 100644 index 24ee99d1f5..0000000000 --- a/phpgwapi/js/dhtmlxtree/samples/treeEx32.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - DHTML Tree samples. dhtmlXTree - Drag and Drop - - - -

    Drag and Drop

    - - - - - - - - - - -
    - -

    -
    - -
    - -

    -
    - -
    - Drag&Drop works in each tree and between trees too. -
    - -<div id="treeboxbox_tree" style="width:200;height:200"></div> -<script> - tree=new dhtmlXTreeObject("treeboxbox_tree","100%","100%",0); - tree.setImagePath("../imgs/"); - - //enable Drag&Drop - tree.enableDragAndDrop(1); - //set my Drag&Drop handler - tree.setDragHandler(myDragHandler); - tree.loadXML("tree.xml"); - - function myDragHandler(idFrom,idTo){ - //if we return false then drag&drop be aborted - return true; - } -</script> - - - -

    - - - diff --git a/phpgwapi/js/dhtmlxtree/samples/with_db/config.php b/phpgwapi/js/dhtmlxtree/samples/with_db/config.php deleted file mode 100644 index d46592826e..0000000000 --- a/phpgwapi/js/dhtmlxtree/samples/with_db/config.php +++ /dev/null @@ -1,14 +0,0 @@ - \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/samples/with_db/database.sql b/phpgwapi/js/dhtmlxtree/samples/with_db/database.sql deleted file mode 100644 index 3a84820db5..0000000000 --- a/phpgwapi/js/dhtmlxtree/samples/with_db/database.sql +++ /dev/null @@ -1,10 +0,0 @@ -Create database sampledb; -use sampledb; -CREATE TABLE Tree ( - item_id INT UNSIGNED not null AUTO_INCREMENT, - item_nm VARCHAR (200) DEFAULT '0', - item_order INT UNSIGNED DEFAULT '0', - item_desc TEXT , - item_parent_id INT UNSIGNED DEFAULT '0', - PRIMARY KEY ( item_id ) - ) \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/samples/with_db/deletenode.php b/phpgwapi/js/dhtmlxtree/samples/with_db/deletenode.php deleted file mode 100644 index 907574251e..0000000000 --- a/phpgwapi/js/dhtmlxtree/samples/with_db/deletenode.php +++ /dev/null @@ -1,30 +0,0 @@ -top.doDeleteTreeItem('$id');"); - } - function deleteSingleNode($id){ - $d_sql = "Delete from tree where item_id=".$id; - $resDel = mysql_query($d_sql); - } - function deleteBranch($pid){ - $s_sql = "Select item_id from tree where item_parent_id=$pid"; - $res = mysql_query($s_sql); - if($res){ - while($row=mysql_fetch_array($res)){ - deleteBranch($row['item_id']); - deleteSingleNode($row['item_id']); - } - - } - } -?> \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/samples/with_db/dropprocessor.php b/phpgwapi/js/dhtmlxtree/samples/with_db/dropprocessor.php deleted file mode 100644 index f51fd70bbb..0000000000 --- a/phpgwapi/js/dhtmlxtree/samples/with_db/dropprocessor.php +++ /dev/null @@ -1,27 +0,0 @@ -"); - $id = $_GET["id"]; - $pid = $_GET["parent_id"]; - - $link = mysql_pconnect($mysql_host, $mysql_user, $mysql_pasw); - mysql_select_db ($mysql_db); - - saveNewParent($id,$pid); - - mysql_close($link); - - //creates xml show item details - function saveNewParent($id,$pid){ - global $id_out; - $sql = "Update Tree set item_parent_id=$pid where item_id=$id"; - $res = mysql_query($sql); - if($res){ - $id_out = $id; - }else{ - $id_out = "-1"; - } - } -?> - \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/samples/with_db/index.html b/phpgwapi/js/dhtmlxtree/samples/with_db/index.html deleted file mode 100644 index 9f2c9b924a..0000000000 --- a/phpgwapi/js/dhtmlxtree/samples/with_db/index.html +++ /dev/null @@ -1,258 +0,0 @@ - - - - dhtmlxTree sample - - - - - - - - - - -
    Processing...
    - -

    dhtmlxTree
    Relationships with database sample (PHP/MySQL)

    - Get zipped code -

    -
  • Create/Update/Delete nodes in tree with simultaneous database update
  • -
  • Drag-n-drop with simultaneous database update
  • - - - - - - - - - - -
    -
    -
    - - - -

    © Scand LLC 2005

    - - - - diff --git a/phpgwapi/js/dhtmlxtree/samples/with_db/loaddetails.php b/phpgwapi/js/dhtmlxtree/samples/with_db/loaddetails.php deleted file mode 100644 index 3ae5ca3c3b..0000000000 --- a/phpgwapi/js/dhtmlxtree/samples/with_db/loaddetails.php +++ /dev/null @@ -1,32 +0,0 @@ -"); - $id = $_GET["id"]; -?> -
    -".$row['item_nm'].""); - print("".$row['item_parent_id'].""); - print("".$row['item_desc'].""); - } - - }else{ - echo mysql_errno().": ".mysql_error()." at ".__LINE__." line in ".__FILE__." file
    "; - } - } -?> -
    \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/samples/with_db/readme b/phpgwapi/js/dhtmlxtree/samples/with_db/readme deleted file mode 100644 index d937f97d12..0000000000 --- a/phpgwapi/js/dhtmlxtree/samples/with_db/readme +++ /dev/null @@ -1,9 +0,0 @@ -INSTALLATION INSTRUCTIONS =========================================================== - - To run sample application you need to have: - - PHP - - MySQL - - To install application, just make sure that your MySQL running and load index.php - after entering suitable (for you) information in config.php -===================================================================================== \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/samples/with_db/savenode.php b/phpgwapi/js/dhtmlxtree/samples/with_db/savenode.php deleted file mode 100644 index e8a4af3dc0..0000000000 --- a/phpgwapi/js/dhtmlxtree/samples/with_db/savenode.php +++ /dev/null @@ -1,32 +0,0 @@ -top.doUpdateItem('$newId','$name');"); - - } - //insert item - function saveUpdate($id,$name,$parent_id,$desc,$order){ - $sql = "Update tree set item_nm = '".addslashes($name)."',item_parent_id = $parent_id,item_desc = '".addslashes($desc)."',item_order = $order where item_id=$id"; - print($sql); - $res = mysql_query($sql); - print(""); - - } -?> diff --git a/phpgwapi/js/dhtmlxtree/samples/with_db/treefromdb.php b/phpgwapi/js/dhtmlxtree/samples/with_db/treefromdb.php deleted file mode 100644 index 864d79f563..0000000000 --- a/phpgwapi/js/dhtmlxtree/samples/with_db/treefromdb.php +++ /dev/null @@ -1,41 +0,0 @@ -"); -?> - -"; - } - } - getLevelFromDB(0); - mysql_close($link); - - //print one level of the tree, based on parent_id - function getLevelFromDB($parent_id){ - $sql = "Select item_id, item_nm from Tree where item_parent_id=$parent_id"; - $res = mysql_query ($sql); - if($res){ - while($row=mysql_fetch_array($res)){ - print(""); - getLevelFromDB($row['item_id']); - print(""); - } - }else{ - echo mysql_errno().": ".mysql_error()." at ".__LINE__." line in ".__FILE__." file
    "; - } - } -?> -
    \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/samples/xml.asp b/phpgwapi/js/dhtmlxtree/samples/xml.asp deleted file mode 100644 index 4c5b2c9525..0000000000 --- a/phpgwapi/js/dhtmlxtree/samples/xml.asp +++ /dev/null @@ -1,14 +0,0 @@ - -<% -Response.ContentType="text/xml" - -Dim url_id -Dim intCurrPos -url_var=request.querystring("id") - -Response.Write "" - For intCurrPos = 0 To 4 - Response.Write "" - Next -Response.Write "" -%> diff --git a/phpgwapi/js/dhtmlxtree/samples/xml.php b/phpgwapi/js/dhtmlxtree/samples/xml.php deleted file mode 100644 index c9da831420..0000000000 --- a/phpgwapi/js/dhtmlxtree/samples/xml.php +++ /dev/null @@ -1,10 +0,0 @@ -"); -if (isset($_GET["id"])) - $url_var=$_GET["id"]; -else - $url_var=0; -print(""); - for ($inta=0; $inta<4; $inta++) - print(""); -print(""); -?> diff --git a/phpgwapi/js/dhtmlxtree/src/dhtmlXCommon.js b/phpgwapi/js/dhtmlxtree/src/dhtmlXCommon.js deleted file mode 100644 index c688716410..0000000000 --- a/phpgwapi/js/dhtmlxtree/src/dhtmlXCommon.js +++ /dev/null @@ -1,463 +0,0 @@ - /** - * @desc: xmlLoader object - * @type: private - * @param: funcObject - xml parser function - * @param: object - jsControl object - * @topic: 0 - */ -function dtmlXMLLoaderObject(funcObject, dhtmlObject,async){ - this.xmlDoc=""; - if(arguments.length==2) - this.async=true; - else - this.async=async; - this.onloadAction=funcObject||null; - this.mainObject=dhtmlObject||null; - return this; -}; - /** - * @desc: xml loading handler - * @type: private - * @param: dtmlObject - xmlLoader object - * @topic: 0 - */ - dtmlXMLLoaderObject.prototype.waitLoadFunction=function(dhtmlObject){ - this.check=function (){ - if(dhtmlObject.onloadAction!=null){ - if (!dhtmlObject.xmlDoc.readyState) dhtmlObject.onloadAction(dhtmlObject.mainObject); - else { - if (dhtmlObject.xmlDoc.readyState != 4) return false; - else dhtmlObject.onloadAction(dhtmlObject.mainObject,null,null,null,dhtmlObject); } - } - }; - return this.check; - }; - - /** - * @desc: return XML top node - * @param: tagName - top XML node tag name (not used in IE, required for Safari and Mozilla) - * @type: private - * @returns: top XML node - * @topic: 0 - */ - dtmlXMLLoaderObject.prototype.getXMLTopNode=function(tagName){ - if (this.xmlDoc.responseXML) { var temp=this.xmlDoc.responseXML.getElementsByTagName(tagName); var z=temp[0]; } - else var z=this.xmlDoc.documentElement; - if (z) return z; - dhtmlxError.throwError("LoadXML","Incorrect XML",[this.xmlDoc]) - return document.createElement("DIV"); - }; - - /** - * @desc: load XML - * @type: private - * @param: filePath - xml file path - * @topic: 0 - */ - dtmlXMLLoaderObject.prototype.loadXMLString=function(xmlString){ - try - { - var parser = new DOMParser(); - this.xmlDoc = parser.parseFromString(xmlString,"text/xml"); - } - catch(e){ - this.xmlDoc = new ActiveXObject("Microsoft.XMLDOM"); - this.xmlDoc.async=this.async - this.xmlDoc.loadXML(xmlString); - } - this.onloadAction(this.mainObject); - } - dtmlXMLLoaderObject.prototype.loadXML=function(filePath){ - try - { - this.xmlDoc = new XMLHttpRequest(); - this.xmlDoc.open("GET",filePath,this.async); - this.xmlDoc.onreadystatechange=new this.waitLoadFunction(this); - this.xmlDoc.send(null); - } - catch(e){ - - if (document.implementation && document.implementation.createDocument) - { - this.xmlDoc = document.implementation.createDocument("", "", null); - this.xmlDoc.onload = new this.waitLoadFunction(this); - } - else - { - this.xmlDoc = new ActiveXObject("Microsoft.XMLDOM"); - this.xmlDoc.async=this.async - this.xmlDoc.onreadystatechange=new this.waitLoadFunction(this); - } - this.xmlDoc.load(filePath); - } - }; - - /** - * @desc: Call wrapper - * @type: private - * @param: funcObject - action handler - * @param: dhtmlObject - user data - * @returns: function handler - * @topic: 0 - */ -function callerFunction(funcObject,dhtmlObject){ - this.handler=function(e){ - if (!e) e=event; - funcObject(e,dhtmlObject); - return true; - }; - return this.handler; -}; - - /** - * @desc: Calculate absolute position of html object - * @type: private - * @param: htmlObject - html object - * @topic: 0 - */ -function getAbsoluteLeft(htmlObject){ - var xPos = htmlObject.offsetLeft; - var temp = htmlObject.offsetParent; - while (temp != null) { - xPos += temp.offsetLeft; - temp = temp.offsetParent; - } - return xPos; - } - /** - * @desc: Calculate absolute position of html object - * @type: private - * @param: htmlObject - html object - * @topic: 0 - */ -function getAbsoluteTop(htmlObject) { - var yPos = htmlObject.offsetTop; - var temp = htmlObject.offsetParent; - while (temp != null) { - yPos += temp.offsetTop; - temp = temp.offsetParent; - } - return yPos; - } - - -/** -* @desc: Convert string to it boolean representation -* @type: private -* @param: inputString - string for covertion -* @topic: 0 -*/ -function convertStringToBoolean(inputString){ if (typeof(inputString)=="string") inputString=inputString.toLowerCase(); - switch(inputString){ - case "1": - case "true": - case "yes": - case "y": - case 1: - case true: - return true; - break; - default: return false; - } -} - -/** -* @desc: find out what symbol to use as url param delimiters in further params -* @type: private -* @param: str - current url string -* @topic: 0 -*/ -function getUrlSymbol(str){ - if(str.indexOf("?")!=-1) - return "&" - else - return "?" - } - - -function dhtmlDragAndDropObject(){ - this.lastLanding=0; - this.dragNode=0; - this.dragStartNode=0; - this.dragStartObject=0; - this.tempDOMU=null; - this.tempDOMM=null; - this.waitDrag=0; - if (window.dhtmlDragAndDrop) return window.dhtmlDragAndDrop; - window.dhtmlDragAndDrop=this; - - return this; - }; - - dhtmlDragAndDropObject.prototype.removeDraggableItem=function(htmlNode){ - htmlNode.onmousedown=null; - htmlNode.dragStarter=null; - htmlNode.dragLanding=null; - } - dhtmlDragAndDropObject.prototype.addDraggableItem=function(htmlNode,dhtmlObject){ - htmlNode.onmousedown=this.preCreateDragCopy; - htmlNode.dragStarter=dhtmlObject; - this.addDragLanding(htmlNode,dhtmlObject); - } - dhtmlDragAndDropObject.prototype.addDragLanding=function(htmlNode,dhtmlObject){ - htmlNode.dragLanding=dhtmlObject; - } - dhtmlDragAndDropObject.prototype.preCreateDragCopy=function(e) - { - if (window.dhtmlDragAndDrop.waitDrag) { - window.dhtmlDragAndDrop.waitDrag=0; - document.body.onmouseup=window.dhtmlDragAndDrop.tempDOMU; - document.body.onmousemove=window.dhtmlDragAndDrop.tempDOMM; - return false; - } - - window.dhtmlDragAndDrop.waitDrag=1; - window.dhtmlDragAndDrop.tempDOMU=document.body.onmouseup; - window.dhtmlDragAndDrop.tempDOMM=document.body.onmousemove; - window.dhtmlDragAndDrop.dragStartNode=this; - window.dhtmlDragAndDrop.dragStartObject=this.dragStarter; - document.body.onmouseup=window.dhtmlDragAndDrop.preCreateDragCopy; - document.body.onmousemove=window.dhtmlDragAndDrop.callDrag; - - if ((e)&&(e.preventDefault)) { e.preventDefault(); return false; } - return false; - }; - dhtmlDragAndDropObject.prototype.callDrag=function(e){ - if (!e) e=window.event; - dragger=window.dhtmlDragAndDrop; - - if ((e.button==0)&&(isIE())) return dragger.stopDrag(); - if (!dragger.dragNode) { - dragger.dragNode=dragger.dragStartObject._createDragNode(dragger.dragStartNode); - if (!dragger.dragNode) return dragger.stopDrag(); - dragger.gldragNode=dragger.dragNode; - document.body.appendChild(dragger.dragNode); - document.body.onmouseup=dragger.stopDrag; - dragger.waitDrag=0; - dragger.dragNode.pWindow=window; - dragger.initFrameRoute(); - } - - - if (dragger.dragNode.parentNode!=window.document.body){ - var grd=dragger.gldragNode; - if (dragger.gldragNode.old) grd=dragger.gldragNode.old; - - //if (!document.all) dragger.calculateFramePosition(); - grd.parentNode.removeChild(grd); - var oldBody=dragger.dragNode.pWindow; - if (isIE()){ - var div=document.createElement("Div"); - div.innerHTML=dragger.dragNode.outerHTML; - dragger.dragNode=div.childNodes[0]; } - else dragger.dragNode=dragger.dragNode.cloneNode(true); - dragger.dragNode.pWindow=window; - dragger.gldragNode.old=dragger.dragNode; - document.body.appendChild(dragger.dragNode); - oldBody.dhtmlDragAndDrop.dragNode=dragger.dragNode; - } - dragger.dragNode.style.left=e.clientX+15+(dragger.fx?dragger.fx*(-1):0)+document.body.scrollLeft+"px"; - dragger.dragNode.style.top=e.clientY+3+(dragger.fy?(-1)*dragger.fy:0)+document.body.scrollTop+"px"; - if (!e.srcElement) var z=e.target; else z=e.srcElement; - dragger.checkLanding(z,e.clientX, e.clientY ); - } - - dhtmlDragAndDropObject.prototype.calculateFramePosition=function(n){ - //this.fx = 0, this.fy = 0; - if (window.name) { - var el =parent.frames[window.name].frameElement.offsetParent; - var fx=0; - var fy=0; - while (el) { fx += el.offsetLeft; fy += el.offsetTop; el = el.offsetParent; } - if ((parent.dhtmlDragAndDrop)) { var ls=parent.dhtmlDragAndDrop.calculateFramePosition(1); fx+=ls.split('_')[0]*1; fy+=ls.split('_')[1]*1; } - if (n) return fx+"_"+fy; - else this.fx=fx; this.fy=fy; - } - return "0_0"; - } - dhtmlDragAndDropObject.prototype.checkLanding=function(htmlObject,x,y){ - - if ((htmlObject)&&(htmlObject.dragLanding)) { if (this.lastLanding) this.lastLanding.dragLanding._dragOut(this.lastLanding); - this.lastLanding=htmlObject; this.lastLanding=this.lastLanding.dragLanding._dragIn(this.lastLanding,this.dragStartNode,x,y); } - else { - if ((htmlObject)&&(htmlObject.tagName!="BODY")) this.checkLanding(htmlObject.parentNode,x,y); - else { if (this.lastLanding) this.lastLanding.dragLanding._dragOut(this.lastLanding,x,y); this.lastLanding=0; } - } - } - dhtmlDragAndDropObject.prototype.stopDrag=function(e,mode){ - dragger=window.dhtmlDragAndDrop; - if (!mode) - { - dragger.stopFrameRoute(); - var temp=dragger.lastLanding; - dragger.lastLanding=null; - if (temp) temp.dragLanding._drag(dragger.dragStartNode,dragger.dragStartObject,temp); - } - dragger.lastLanding=null; - if ((dragger.dragNode)&&(dragger.dragNode.parentNode==document.body)) dragger.dragNode.parentNode.removeChild(dragger.dragNode); - dragger.dragNode=0; - dragger.gldragNode=0; - dragger.fx=0; - dragger.fy=0; - dragger.dragStartNode=0; - dragger.dragStartObject=0; - document.body.onmouseup=dragger.tempDOMU; - document.body.onmousemove=dragger.tempDOMM; - dragger.tempDOMU=null; - dragger.tempDOMM=null; - dragger.waitDrag=0; - } - - dhtmlDragAndDropObject.prototype.stopFrameRoute=function(win){ - if (win) - window.dhtmlDragAndDrop.stopDrag(1,1); - - for (var i=0; i20) this.selectionBar.style.width=this.allTree.offsetWidth-20; - this.selectionBar.style.display="none"; - - this.allTree.appendChild(this.selectionBar); - /* - this.selectionBox=document.createElement("DIV"); - this.selectionBox.className="selectionBox"; - this.selectionBox.innerHTML=" "; - //this.selectionBar.style.left=getAbsoluteLeft(this.allTree); - this.selectionBox.style.width=this.allTree.offsetWidth; - this.selectionBox.style.height=this.allTree.offsetHeight; - this.selectionBox.style.display="none"; - this.allTree.appendChild(this.selectionBox);*/ - - - - return this; -}; - -/** -* @desc: tree node constructor -* @param: itemId - node id -* @param: itemText - node label -* @param: parentObject - parent item object -* @param: treeObject - tree object -* @param: actionHandler - onclick event handler(optional) -* @param: mode - do not show images -* @type: private -* @topic: 0 -*/ -function dhtmlXTreeItemObject(itemId,itemText,parentObject,treeObject,actionHandler,mode){ - this.htmlNode=""; - this.acolor=""; - this.scolor=""; - this.tr=0; - this.childsCount=0; - this.tempDOMM=0; - this.tempDOMU=0; - this.dragSpan=0; - this.dragMove=0; - this.span=0; - this.closeble=1; - this.childNodes=new Array(); - this.userData=new Object(); - - this.checkstate=0; - this.treeNod=treeObject; - this.label=itemText; - this.parentObject=parentObject; - this.actionHandler=actionHandler; - this.images=new Array(treeObject.imageArray[0],treeObject.imageArray[1],treeObject.imageArray[2]); - - - this.id=treeObject._globalIdStorageAdd(itemId,this); - if (this.treeNod.checkBoxOff ) this.htmlNode=this.treeNod._createItem(1,this,mode); - else this.htmlNode=this.treeNod._createItem(0,this,mode); - - this.htmlNode.objBelong=this; - return this; - }; - - -/** -* @desc: register node -* @type: private -* @param: itemId - node identificator -* @param: itemObject - node object -* @topic: 3 -*/ - dhtmlXTreeObject.prototype._globalIdStorageAdd=function(itemId,itemObject){ - if (this._globalIdStorageFind(itemId,1,1)) { d=new Date(); itemId=d.valueOf()+"_"+itemId; return this._globalIdStorageAdd(itemId,itemObject); } - this._globalIdStorage[this._globalIdStorageSize]=itemId; - this.globalNodeStorage[this._globalIdStorageSize]=itemObject; - this._globalIdStorageSize++; - return itemId; - }; -/** -* @desc: unregister node -* @type: private -* @param: itemId - node identificator -* @topic: 3 -*/ - dhtmlXTreeObject.prototype._globalIdStorageSub=function(itemId){ - for (var i=0; i0) { beforeNode=new Object; beforeNode.tr=parentObject.childNodes[0].tr.previousSibling; } - for (ik=0; ik=2) - { - this._correctPlus(Nodes[parentObject.childsCount-2]); - this._correctLine(Nodes[parentObject.childsCount-2]); - } - if (parentObject.childsCount!=2) this._correctPlus(Nodes[0]); - if (this.tscheck) this._correctCheckStates(parentObject); - } - if (this.cMenu) this.cMenu.setContextZone(Nodes[Count].span,Nodes[Count].id); - return Nodes[Count]; -}; - - -/** -* @desc: create new node, next to existing -* @type: public -* @param: parentId - parent node id -* @param: itemId - new node id -* @param: itemText - new node text -* @param: itemActionHandler - function fired on node select event (optional) -* @param: image1 - image for node without childrens; (optional) -* @param: image2 - image for closed node; (optional) -* @param: image3 - image for opened node (optional) -* @param: optionStr - options string (optional) -* @param: childs - node childs flag (for dynamical trees) (optional) -* @topic: 2 -*/ - dhtmlXTreeObject.prototype.insertNewItem=function(parentId,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,childs){ - var parentObject=this._globalIdStorageFind(parentId); - if (!parentObject) return (-1); - return this._attachChildNode(parentObject,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,childs); - }; -/** -* @desc: parse xml -* @type: private -* @param: dhtmlObject - jsTree object -* @param: node - top XML node -* @param: parentId - parent node id -* @param: level - level of tree -* @topic: 2 -*/ - dhtmlXTreeObject.prototype._parseXMLTree=function(dhtmlObject,node,parentId,level){ - - //alert("s"+dhtmlObject.parsCount+"-"+parentId); - if (!dhtmlObject.parsCount) dhtmlObject.parsCount=1; else dhtmlObject.parsCount++; - //alert("x"+dhtmlObject.parsCount+"-"+parentId); - dhtmlObject.XMLloadingWarning=1; - var nodeAskingCall=""; - if (!node) { - node=dhtmlObject.XMLLoader.getXMLTopNode("tree"); - parentId=node.getAttribute("id"); - dhtmlObject.parsingOn=parentId; - dhtmlObject.parsedArray=new Array(); - dhtmlObject.setCheckList=""; - } - - - if (node.getAttribute("order")) - dhtmlObject._reorderXMLBranch(node); - - - for(var i=0; i0) { - for (var a=0; athis._getNodeLevel(nodeB,0)) - { - return this._moveNodeTo(itemObject,nodeA.parentObject); - } - else - { -// if (this._checkParenNodes(itemObject.id,d)) return; - return this._moveNodeTo(itemObject,nodeB.parentObject,nodeB); - } - - -/* - if ((!targetObject.tr.nextSibling)||(!targetObject.tr.nextSibling.nodem)) - return this._moveNodeTo(itemObject,targetObject.parentObject); - //move in middle of group - else return this._moveNodeTo(itemObject,targetObject.parentObject,targetObject.tr.nextSibling.nodem); - */ -// debugger; - - } - else return this._moveNodeTo(itemObject,targetObject); - - } - - /** -* @desc: fix order of nodes in collection -* @type: private -* @param: target - parent item node -* @param: zParent - before node -* @topic: 2 -*/ - -dhtmlXTreeObject.prototype._fixNodesCollection=function(target,zParent){ - var flag=0; var icount=0; - var Nodes=target.childNodes; - var Count=target.childsCount-1; - - if (zParent==Nodes[Count]) return; - for (var i=0; i0))) - if (!htmlNode.nocheckbox) { if (list) list+=","+htmlNode.id; else list=htmlNode.id; } - var j=htmlNode.childsCount; - for (var i=0; iz.childsCount)) return null; - return z.childNodes[index].id; - }; - -/** -* @desc: retun child node identificator by index -* @type: public -* @param: itemId - parent node identificator -* @param: index - index of child node -* @return: node id -* @topic: 1 -*/ - dhtmlXTreeObject.prototype.getChildItemIdByIndex=function(itemId,index){ - var z=this._globalIdStorageFind(itemId); - if ((!z)||(index>z.childsCount)) return null; - return z.childNodes[index].id; - }; - - - - - -/** -* @desc: set function called when drag-and-drop event occured -* @param: aFunc - event handling function -* @type: public -* @topic: 0 -* @event: onDrag -* @eventdesc: Event occured after item was dragged and droped on another item, but before item moving processed. - Event also raised while programmatic moving nodes. -* @eventparam: ID of source item -* @eventparam: ID of target item -* @eventparam: if node droped as sibling then contain id of item before whitch source node will be inserted -* @eventparam: source Tree object -* @eventparam: target Tree object -* @eventreturn: true - confirm drag-and-drop; false - deny drag-and-drop; -*/ - dhtmlXTreeObject.prototype.setDragHandler=function(func){ if (typeof(func)=="function") this.dragFunc=func; else this.dragFunc=eval(func); }; - - /** -* @desc: clear selection from node -* @param: htmlNode - pointer to node object -* @type: private -* @topic: 1 -*/ - dhtmlXTreeObject.prototype._clearMove=function(htmlNode){ - if ((htmlNode.parentObject)&&(htmlNode.parentObject.span)) { - htmlNode.parentObject.span.className='standartTreeRow'; - if (htmlNode.parentObject.acolor) htmlNode.parentObject.span.style.color=htmlNode.parentObject.acolor; - } - - this.selectionBar.style.display="none"; - //this.selectionBox.style.display="none"; - this.allTree.className="containerTableStyle"; - }; - - /** -* @desc: enable/disable drag-and-drop -* @type: public -* @param: mode - enabled/disabled -* @topic: 0 -*/ - dhtmlXTreeObject.prototype.enableDragAndDrop=function(mode){ - this.dragAndDropOff=convertStringToBoolean(mode); - if (this.dragAndDropOff) this.dragger.addDragLanding(this.allTree,this); - }; - - -/** -* @desc: set selection on node -* @param: node - pointer to node object -* @type: private -* @topic: 1 -*/ - dhtmlXTreeObject.prototype._setMove=function(htmlNode,x,y){ - if (htmlNode.parentObject.span) { - //window.status=x; - var a1=getAbsoluteTop(htmlNode); - var a2=getAbsoluteTop(this.allTree); - - this.dadmodec=this.dadmode;//this.dadmode; - this.dadmodefix=0; - - - if (this.dadmodec==0) - { - htmlNode.parentObject.span.className='selectedTreeRow'; - if (htmlNode.parentObject.scolor) htmlNode.parentObject.span.style.color=htmlNode.parentObject.scolor; - } - else{ - htmlNode.parentObject.span.className='standartTreeRow'; - if (htmlNode.parentObject.acolor) htmlNode.parentObject.span.style.color=htmlNode.parentObject.acolor; - this.selectionBar.style.top=a1-a2+16+this.dadmodefix; - this.selectionBar.style.left=5; - this.selectionBar.style.display=""; - } - - - if (this.autoScroll) - { - //scroll down - if ( (a1-a2-parseInt(this.allTree.scrollTop))>(parseInt(this.allTree.offsetHeight)-50) ) - this.allTree.scrollTop=parseInt(this.allTree.scrollTop)+20; - //scroll top - if ( (a1-a2)<(parseInt(this.allTree.scrollTop)+30) ) - this.allTree.scrollTop=parseInt(this.allTree.scrollTop)-20; - } - } - }; - - - -/** -* @desc: create html element for dragging -* @type: private -* @param: htmlObject - html node object -* @topic: 1 -*/ -dhtmlXTreeObject.prototype._createDragNode=function(htmlObject){ - dhtmlObject=htmlObject.parentObject; - if (this.lastSelected) this._clearMove(this.lastSelected); - var dragSpan=document.createElement('div'); - dragSpan.innerHTML=dhtmlObject.label; - dragSpan.style.position="absolute"; - dragSpan.className="dragSpanDiv"; - return dragSpan; -} - -///DragAndDrop - -dhtmlXTreeObject.prototype._preventNsDrag=function(e){ - if ((e)&&(e.preventDefault)) { e.preventDefault(); return false; } - return false; -} - -dhtmlXTreeObject.prototype._drag=function(sourceHtmlObject,dhtmlObject,targetHtmlObject){ - - if (this._autoOpenTimer) clearTimeout(this._autoOpenTimer); - - if (!targetHtmlObject.parentObject){ - targetHtmlObject=this.htmlNode.htmlNode.childNodes[0].childNodes[0].childNodes[1].childNodes[0]; - this.dadmodec=0; - } - - this._clearMove(targetHtmlObject); - var z=targetHtmlObject.parentObject.treeNod; - z._clearMove(""); - //if (z.lastSelected) z._setMove(z.lastSelected); - if ((!this.dragMove)||(this.dragMove())) - { - var newID=this._moveNode(sourceHtmlObject.parentObject,targetHtmlObject.parentObject); - z.selectItem(newID); - } - - try{ } - catch(e){ - return; - } -} - -dhtmlXTreeObject.prototype._dragIn=function(htmlObject,shtmlObject,x,y){ - if (!htmlObject.parentObject) - { - //this.selectionBox.style.display=""; - //this.selectionBox.style.top=this.allTree.scrollTop; - this.allTree.className="containerTableStyle selectionBox"; - //if (this.htmlNode.childsCount==0) - return htmlObject; - //else return 0; - } - - if ( (!this._checkParenNodes(shtmlObject.parentObject.id,htmlObject.parentObject,shtmlObject.parentObject))&&(htmlObject.parentObject.id!=shtmlObject.parentObject.id)) - { - htmlObject.parentObject.span.parentNode.appendChild(this.selectionBar); - this._setMove(htmlObject,x,y); - if (this._getOpenState(htmlObject.parentObject)<0) - this._autoOpenTimer=window.setTimeout(new callerFunction(this._autoOpenItem,this),1000); - this._autoOpenId=htmlObject.parentObject.id; - return htmlObject; - } - else return 0; -} -dhtmlXTreeObject.prototype._autoOpenItem=function(e,treeObject){ - treeObject.openItem(treeObject._autoOpenId); -}; -dhtmlXTreeObject.prototype._dragOut=function(htmlObject){ -this._clearMove(htmlObject); -if (this._autoOpenTimer) clearTimeout(this._autoOpenTimer); - } - - - -/** -* @desc: return next node -* @type: private -* @param: item - node object -* @param: mode - inner flag -* @return: next node or -1 -* @topic: 2 -*/ -dhtmlXTreeObject.prototype._getNextNode=function(item,mode){ - if ((!mode)&&(item.childsCount)) return item.childNodes[0]; - if (item==this.htmlNode) - return -1; - if ((item.tr)&&(item.tr.nextSibling)&&(item.tr.nextSibling.nodem)) - return item.tr.nextSibling.nodem; - - return this._getNextNode(item.parentObject,true); -}; - -/** -* @desc: return last child of item (include all sub-child collections) -* @type: private -* @param: item - node object -* @topic: 2 -*/ -dhtmlXTreeObject.prototype._lastChild=function(item){ - if (item.childsCount) - return this._lastChild(item.childNodes[item.childsCount-1]); - else return item; -}; - -/** -* @desc: return previous node -* @type: private -* @param: item - node object -* @param: mode - inner flag -* @return: previous node or -1 -* @topic: 2 -*/ -dhtmlXTreeObject.prototype._getPrevNode=function(node,mode){ - if ((node.tr)&&(node.tr.previousSibling)&&(node.tr.previousSibling.nodem)) - return this._lastChild(node.tr.previousSibling.nodem); - - if (node.parentObject) - return node.parentObject; - else return -1; -}; - - - - - - - - - diff --git a/phpgwapi/js/dhtmlxtree/tree.xml b/phpgwapi/js/dhtmlxtree/tree.xml deleted file mode 100644 index 884dd5ccc9..0000000000 --- a/phpgwapi/js/dhtmlxtree/tree.xml +++ /dev/null @@ -1,40 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/phpgwapi/js/dhtmlxtree/tree2.xml b/phpgwapi/js/dhtmlxtree/tree2.xml deleted file mode 100644 index 6d31941c87..0000000000 --- a/phpgwapi/js/dhtmlxtree/tree2.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -