1 package de.webman.sitetree.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 9 10 import com.teamkonzept.webman.mainint.db.queries.*; 11 import com.teamkonzept.webman.mainint.events.*; 12 import com.teamkonzept.lib.*; 13 import com.teamkonzept.field.*; 14 import com.teamkonzept.field.db.*; 15 import com.teamkonzept.db.*; 16 import com.teamkonzept.publishing.markups.*; 17 18 import java.sql.*; 19 import java.io.*; 20 import java.util.*; 21 22 28 public class STEditDocumentHandler extends DefaultEventHandler implements ParameterTypes, FrameConstants, DatabaseDefaults 29 { 30 private STEditDocumentHandler() 31 {} 32 33 34 private static STEditDocumentHandler instance = new STEditDocumentHandler(); 35 36 public static STEditDocumentHandler getInstance() 37 { 38 return instance; 39 } 40 41 public void handleEvent(TKEvent evt) throws TKException 42 { 43 try 44 { 45 WebManEvent.checkEvent(evt.getRemoteUser(), evt.getName(), ContextConstants.SITE_TREE); 46 String sNodeId = evt.getParameter( PARAMETER, "SITE_NODE_ID" ); 47 String sPresId = evt.getParameter( PARAMETER, "PRESENTATION_ID" ); 48 if (sPresId == null || sPresId.equals("")) 49 sPresId = evt.getParameter(PARAMETER, "THE_PRESENTATION_ID"); 50 String sNodeDocIdx = evt.getParameter( PARAMETER, "SITE_NODE_DOC_IDX" ); 51 52 ResultSet rsPC; 53 TKDBResult rsDC, rsDR; 54 55 TKQuery q = TKDBManager.newQuery(TKDBDocContentDCGet.class); 56 q.setQueryParams( "SITE_NODE_ID", new Integer (sNodeId) ); 57 q.setQueryParams( "SITE_NODE_DOC_IDX", new Integer (sNodeDocIdx) ); 58 q.setQueryParams( "PRESENTATION_ID", new Integer (sPresId) ); 59 q.execute(); 60 rsDC = new TKDBResult( q.fetchResultSet() ); 61 62 q = TKDBManager.newQuery(TKDBDocContentDRGet.class); 63 q.setQueryParams( "SITE_NODE_ID", new Integer (sNodeId) ); 64 q.setQueryParams( "SITE_NODE_DOC_IDX", new Integer (sNodeDocIdx) ); 65 q.setQueryParams( "PRESENTATION_ID", new Integer (sPresId) ); 66 q.execute(); 67 rsDR = new TKDBResult( q.fetchResultSet() ); 68 69 q = TKDBManager.newQuery(TKDBDocContentPCGet.class); 70 q.setQueryParams( "SITE_NODE_ID", new Integer (sNodeId) ); 71 q.setQueryParams( "SITE_NODE_DOC_IDX", new Integer (sNodeDocIdx) ); 72 q.setQueryParams( "PRESENTATION_ID", new Integer (sPresId) ); 73 q.execute(); 74 rsPC = q.fetchResultSet(); 75 76 TKHTMLTemplate t = evt.getPrepHTMLTemplate( "st_docComp.tmpl" ); 77 TKComponentIterator iterator = new TKComponentIterator( rsPC, rsDC, rsDR, t.getListIterator(), "ST_DOC_CONT_LIST" ); 78 t.setListIterator( iterator ); 79 t.set( evt.getParams().getClass( PARAMETER ) ); 80 WebManEvent.fillEventsIntoTemplate(evt.getRemoteUser(), t, SITE_TREE); 81 evt.finishTemplate(t); 82 } 83 catch (Throwable e) 84 { 85 throw WebmanExceptionHandler.getException(e); 87 } 88 } 89 90 public boolean isHandler(TKEvent evt) 91 { 92 return evt.getName().equalsIgnoreCase("ST_EDIT_DOCUMENT"); 93 } 94 95 } 96 | Popular Tags |