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.db.queries.sitetree.InheritedSiteStucture; 12 import com.teamkonzept.webman.mainint.events.*; 13 import com.teamkonzept.lib.*; 14 import com.teamkonzept.field.*; 15 import com.teamkonzept.field.db.*; 16 import com.teamkonzept.db.*; 17 import com.teamkonzept.publishing.markups.*; 18 19 import java.sql.*; 20 import java.io.*; 21 import java.util.*; 22 23 import de.webman.sitetree.eventhandler.*; 24 29 public class STNewStructureDocHandler extends DefaultEventHandler implements ParameterTypes, FrameConstants, DatabaseDefaults, QueryConstants 30 { 31 32 private STNewStructureDocHandler() 33 {} 34 35 36 private static STNewStructureDocHandler instance = new STNewStructureDocHandler(); 37 38 39 public static STNewStructureDocHandler getInstance() 40 { 41 return instance; 42 } 43 44 45 public void handleEvent(TKEvent evt) throws TKException 46 { 47 try 48 { 49 WebManEvent.checkEvent(evt.getRemoteUser(), evt.getName(), ContextConstants.SITE_TREE); 50 51 String sNewFormId = evt.getParameter( PARAMETER, "NEW_FORM_ID" ); 52 Integer siteNodeID = new Integer (evt.getParameter( PARAMETER, "SITE_NODE_ID")); 53 54 TKHTMLTemplate t = evt.getPrepHTMLTemplate( "st_fields.tmpl" ); 55 TKFormDBData data = new TKFormDBData( Integer.parseInt( sNewFormId ), STRUCTURE_FORM_TYPE ); 56 TKFormDBInterface.Get( data ); 57 TKBaseField field = TKFieldRegistry.getFieldFromDB( data ); 58 59 TKContentDBData conDB = new TKContentDBData(); 61 TKQuery qInheritedSiteStruc = TKWebmanDBManager.newQuery(InheritedSiteStucture.class); 62 qInheritedSiteStruc.setQueryParams(SITE_NODE_ID, siteNodeID); 63 qInheritedSiteStruc.setQueryParams(FORM_ID, new Integer (sNewFormId)); 64 qInheritedSiteStruc.execute(); 65 66 ResultSet rsInSiSt = qInheritedSiteStruc.fetchResultSet(); 67 if(rsInSiSt.next()) 68 { 69 conDB.content_id = rsInSiSt.getInt(CONTENT_ID); 71 TKContentDBInterface.Get( conDB ); 72 Object contentData = field.getDataFromDB( conDB ); 73 field.fillIntoTemplate( t, contentData, "" ); 74 } 75 else 76 { 77 field.fillIntoTemplate( t, field.getDefault(), "" ); 78 } 79 SiteTreeUtils.keepSTContext( evt, t ); 80 t.set( "UPBASE", SiteTreeUtils.getCurrentPath(new Integer (evt.getParameter(PARAMETER, "SITE_NODE_ID")) ) ); 81 t.set( "FORM_ID", sNewFormId ); 82 WebManEvent.fillEventsIntoTemplate(evt.getRemoteUser(), t, SITE_TREE); 83 evt.finishTemplate(t); 84 } 85 catch (Throwable e) 86 { 87 throw WebmanExceptionHandler.getException(e); 89 } 90 } 91 92 public boolean isHandler(TKEvent evt) 93 { 94 return evt.getName().equalsIgnoreCase("ST_NEW_STRUC"); 95 } 96 } 97 | Popular Tags |