1 package de.webman.content.eventhandler; 2 3 import com.teamkonzept.web.*; 4 import com.teamkonzept.webman.*; 5 import com.teamkonzept.webman.db.TKWebmanDBManager; 6 import com.teamkonzept.webman.mainint.*; 7 import com.teamkonzept.webman.mainint.db.*; 8 import com.teamkonzept.webman.mainint.db.queries.*; 9 import com.teamkonzept.webman.mainint.events.*; 10 import com.teamkonzept.lib.*; 11 import com.teamkonzept.field.*; 12 import com.teamkonzept.field.db.*; 13 import com.teamkonzept.db.*; 14 import com.teamkonzept.publishing.markups.*; 15 16 import java.sql.*; 17 import java.io.*; 18 19 26 public class CEArrangeStartHandler extends DefaultEventHandler implements ParameterTypes, FrameConstants, DatabaseDefaults 27 { 28 private CEArrangeStartHandler() 29 {} 30 31 private static CEArrangeStartHandler instance = new CEArrangeStartHandler(); 32 33 public static CEArrangeStartHandler getInstance() 34 { 35 return instance; 36 } 37 38 public void handleEvent(TKEvent evt) throws TKException 39 { 40 try 41 { 42 CEUtils.checkEvent(evt); 43 44 TKHTMLTemplate t = evt.getPrepHTMLTemplate( "ce_arrange.tmpl" ); 45 46 TKVector openNodes = new TKVector(); 47 openNodes.put( 0, "-1" ); TKStandardIterator iterator1 = new TKStandardIterator( openNodes, t.getListIterator(), "OPEN_NODES", "OPEN_NODES" ); 49 t.setListIterator( iterator1 ); 50 51 TKQuery q = TKDBManager.newQuery(TKDBContentTreeGetOpen.class); 52 q.setQueryParams( "NODE_ID", TKNull.NULL ); 53 q.execute(); 54 TKDBResult tree = new TKDBResult( q.fetchResultSet() ); 55 56 int maxDepth = TreeUtils.getMaxDepth( tree, "CONTENT" ); 57 TKOpenContentTreeIterator iterator = new TKOpenContentTreeIterator( tree, t.getListIterator(), "CE_NODE_LIST", maxDepth ); 58 t.set( "IS_TOP", "1" ); 59 t.setListIterator( iterator ); 60 61 t.set( "MAXDEPTH_PLUS_ONE", Integer.toString(maxDepth+1)); 62 t.set( "MAXDEPTH_PLUS_TWO", Integer.toString(maxDepth+2)); 63 evt.finishTemplate(t); 64 } 65 catch (Throwable e) 66 { 67 throw WebmanExceptionHandler.getException(e); 69 } 70 } 71 72 public boolean isHandler(TKEvent evt) 73 { 74 return evt.getName().equalsIgnoreCase("CE_ARRANGE_START"); 75 } 76 } 77 | Popular Tags |