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 30 public class STEditPresentationComponentHandler extends DefaultEventHandler implements ParameterTypes, FrameConstants, DatabaseDefaults 31 { 32 33 private STEditPresentationComponentHandler() 34 {} 35 36 private static STEditPresentationComponentHandler instance = new STEditPresentationComponentHandler(); 37 38 public static STEditPresentationComponentHandler getInstance() 39 { 40 return instance; 41 } 42 43 public void handleEvent(TKEvent evt) throws TKException 44 { 45 try 46 { 47 WebManEvent.checkEvent(evt.getRemoteUser(), evt.getName(), ContextConstants.SITE_TREE); 48 String sFormId = evt.getParameter( PARAMETER, "FORM_ID" ); 49 String sIntType = evt.getParameter( PARAMETER, "INTEGRATION_TYPE" ); 50 String sConNodeId = evt.getNotNullParameter( PARAMETER, "CONTENT_NODE_ID" ); 51 String sSelType = evt.getNotNullParameter( PARAMETER, "SELECTION_TYPE" ); 52 53 TKHTMLTemplate t = evt.getPrepHTMLTemplate( "st_editComp.tmpl" ); 54 55 TKQuery q = TKDBManager.newQuery(TKDBContentTreeGetFormSingle.class); 57 q.setQueryParams( "CONTENT_FORM", new Integer (sFormId) ); 58 59 q.execute(); 60 TKDBResult srs = new TKDBResult( q.fetchResultSet() ); 63 64 TKContentSelectionIterator iterator = new TKContentSelectionIterator(srs, t.getListIterator(), "ST_SCON_LIST"); 65 t.setListIterator(iterator); 66 q.close(); 67 68 q = TKDBManager.newQuery(TKDBContentTreeGetFormType.class); 70 q.setQueryParams( "CONTENT_NODE_TYPE", GROUP_INTEGER ); 71 q.setQueryParams( "CONTENT_FORM", new Integer (sFormId) ); 72 q.execute(); 73 TKDBResult grs = new TKDBResult( q.fetchResultSet() ); 74 iterator = new TKContentSelectionIterator(grs, t.getListIterator(), "ST_GCON_LIST"); 75 t.setListIterator(iterator); 76 77 79 q = TKDBManager.newQuery(TKDBContentSelClassGet.class); 80 q.setQueryParams( "RESULT_TYPE", new Integer (sIntType) ); 81 q.execute(); 82 ResultSet rs = q.fetchResultSet(); 83 TKDBTemplate.prepareListTemplate( rs, t, "ST_SELTYPE_LIST" ); 84 85 String siteNodeType = evt.getParameter( PARAMETER, "SITE_NODE_TYPE" ); 86 String sAttachSel = ""; 87 t.set( evt.getParams().getClass( PARAMETER ) ); 88 if( sIntType.equals( SINGLE ) ) { 89 if( sSelType.equals( "" ) && sConNodeId.equals( "" ) ) { if( siteNodeType.equals( GROUP ) ) { sAttachSel = "PGC"; 92 } 93 else { sAttachSel = "SC"; 95 } 96 } 97 else if( sSelType.equals( "" ) && !sConNodeId.equals( "" ) ) { 98 if( SiteTreeUtils.isGroupNode( sConNodeId, grs ) ) { 99 sAttachSel = "GC"; 100 t.set( "THE_CONTENT_NODE_ID", sConNodeId ); 101 } 102 else { 103 sAttachSel = "SC"; t.set( "SINGLE_CONTENT_NODE_ID", sConNodeId ); 105 } 106 } 107 else { 108 sAttachSel = "GC"; t.set( "THE_CONTENT_NODE_ID", sConNodeId ); 110 } 111 } 112 t.set( "ATTACH_SEL", sAttachSel ); 113 t.set( "UPDATE", (evt.getParameter( PARAMETER, "FILLED" ))==null?"":"Yes" ); 114 t.set( "THE_SELECTION_TYPE", sSelType ); 115 WebManEvent.fillEventsIntoTemplate(evt.getRemoteUser(), t, SITE_TREE); 116 evt.finishTemplate(t); 117 } 118 catch (Throwable e) 119 { 120 throw WebmanExceptionHandler.getException(e); 122 } 123 } 124 125 public boolean isHandler(TKEvent evt) 126 { 127 return evt.getName().equalsIgnoreCase("ST_EDIT_PRES_COMPONENT"); 128 } 129 } 130 | Popular Tags |