commit 397f507c150fb5c2f21b829c87616538de003798
parent 40e1abc01bfa5f0ee15940be9767dabfff04a033
Author: dankert <devnull@localhost>
Date: Tue, 15 Feb 2011 21:38:25 +0100
Einzelne Zweige per AJAX auf- und zuklappen.
Diffstat:
3 files changed, 81 insertions(+), 34 deletions(-)
diff --git a/action/TreeAction.class.php b/action/TreeAction.class.php
@@ -222,6 +222,9 @@ class TreeAction extends Action
*/
function show()
{
+ if ( $this->hasRequestVar('projectid') )
+ $this->load();
+
$project = Session::getProject();
if ( is_object($project) )
{
@@ -261,6 +264,38 @@ class TreeAction extends Action
$this->setTemplateVar( 'lines',$this->outputElement( 0,0,array() ) );
$this->setTemplateVar( 'tree',$this->tree->elements );
}
+
+
+
+ /**
+ * Anzeigen des Baumes fuer asynchrone Anfragen.
+ */
+ function loadBranch()
+ {
+ $this->tree = Session::getTree();
+
+ if ( !is_object($this->tree) ) {
+ $this->setTemplateVar('notice','fuck, kein Baum');
+ return;
+ }
+
+ $type = $this->getRequestVar('type');
+
+ $this->tree->tempElements = array();
+
+ if ( intval($this->getRequestVar('id')) != 0 )
+ $this->tree->$type( $this->getRequestId() );
+ else
+ $this->tree->$type();
+
+ $branch = array();
+ foreach( $this->tree->tempElements as $element )
+ {
+ $branch[] = get_object_vars($element);
+ }
+
+ $this->setTemplateVar( 'branch',$branch );
+ }
}
diff --git a/action/TreeAction.ini.php b/action/TreeAction.ini.php
@@ -3,6 +3,7 @@
goto=show
[show]
+menu=true
[load]
;write=get
@@ -29,3 +30,10 @@ async=true
[loadAll]
async=true
+
+[loadBranch]
+async=true
+
+[menu]
+menu=content,settings
+
diff --git a/themes/default/templates/tree/show.tpl.src.php b/themes/default/templates/tree/show.tpl.src.php
@@ -1,37 +1,40 @@
-part class:breadcrumb
- if present:projectname
- link action:start subaction:projectmenu target:content
- image icon:project align:left
- text title:message:project var:projectname maxlength:20
-
-link action:tree subaction:openall class:action
- image icon:open
- text key:open_all
-link action:start subaction:projectmenu class:action target:content
- image icon:project
- text key:change_to
-
-table space:0 padding:0 class:tree
- list list:zeilen extract:true
- row class:var:class
- list list:cols value:i
- cell class:treecol
- image tree:var:i
- if present:image
- cell class:treeimage
- if present:image_url
- link url:var:image_url class:tree target:_self title:var:image_url_desc
+window
+# part class:breadcrumb
+# if present:projectname
+# link action:start subaction:projectmenu target:content
+# image icon:project align:left
+# text title:message:project var:projectname maxlength:20
+#
+# part class:menu
+# link action:tree subaction:openall class:action
+# image icon:open
+# text key:open_all
+# link action:start subaction:projectmenu class:action target:content
+# image icon:project
+# text key:change_to
+
+ table space:0 padding:0 class:tree
+ list list:zeilen extract:true
+ row class:var:class
+ list list:cols value:i
+ cell class:treecol
+ image tree:var:i
+ if present:image
+ cell class:treeimage
+ if present:image_url
+ link url:var:image_url class:tree target:_self title:var:image_url_desc
+ image tree:var:image
+ else
image tree:var:image
+ cell colspan:var:colspan class:treevalue
+ link name:var:name
+ if present:url
+ link url:var:url title:var:desc class:tree target:var:target
+ image icon:var:icon
+ text var:text maxlength:20 cut:right
else
- image tree:var:image
- cell colspan:var:colspan class:treevalue
- link name:var:name
- if present:url
- link url:var:url title:var:desc class:tree target:var:target
image icon:var:icon
- text var:text maxlength:20 cut:right
- else
- image icon:var:icon
- text var:text maxlength:20 cut:right title:var:desc
- set var:url
- set var:image
+ text var:text maxlength:20 cut:right title:var:desc
+ set var:url
+ set var:image
+ insert function:loadTree+
\ No newline at end of file