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 CEUpdateNodeHandler extends DefaultEventHandler implements ParameterTypes, FrameConstants, DatabaseDefaults 27 { 28 private CEUpdateNodeHandler() 29 {} 30 31 private static CEUpdateNodeHandler instance = new CEUpdateNodeHandler(); 32 33 public static CEUpdateNodeHandler getInstance() 34 { 35 return instance; 36 } 37 38 public void handleEvent(TKEvent evt) throws TKException 39 { 40 try 41 { 42 CEUtils.checkEvent(evt); 43 ContentContext ceContext = new ContentContext(evt.getParams()); 44 String openNode = ceContext.getParam ("OPEN_NODE"); 45 if (openNode == null) openNode = "-1"; 46 47 if( !CEUtils.isValidPathname( ceContext.conNodeShortName )) 48 return; 49 50 TKQuery q = TKDBManager.newQuery(TKDBContentTreeUpdateNode.class); 51 q.setQueryParams( "CONTENT_NODE_ID", ceContext.conNodeId ); 52 q.setQueryParams( "CONTENT_NODE_NAME", ceContext.conNodeName ); 53 q.setQueryParams( "CONTENT_NODE_SHORTNAME", ceContext.conNodeShortName ); 54 q.setQueryParams( "CONTENT_NODE_TYPE", ceContext.conNodeType ); 55 q.setQueryParams( "TREE_ID", new Integer (0) ); 56 q.setQueryParams( "PROTOTYPE_ID", TKNull.NULL ); 57 q.setQueryParams( "CONTENT_FORM", ceContext.formId); 58 59 if( ceContext.conNodeType.intValue() == DIRECTORY_NODE_INTEGER.intValue() ) { 60 q.setQueryParams( "CONTENT_FORM", TKNull.NULL ); 61 } 62 else { 63 q.setQueryParams( "CONTENT_FORM", ceContext.formId); 64 } 65 q.execute(); 66 if( ceContext.conNodeType.equals( DIRECTORY_NODE_INTEGER ) || ceContext.conNodeType.equals( GROUP_INTEGER )) { 67 TKHTMLTemplate frame = evt.getPrepHTMLTemplate( "f_ce.tmpl" ); 69 HTMLUtils.fillFrameSet( frame, LEFT_FRAME_WIDTH, "CE_SHOWLIST", "CE_EMPTY" ); 70 CEUtils.keepSortParameter(evt, frame); 72 73 TreeUtils.keepOpenNodes(evt, frame); 74 evt.finishTemplate(frame); 75 } 76 else 77 { 78 evt.getParams().put(PARAMETER, "RECALCULATE", "a"); 79 CEBrowseHandler.getInstance().handleEvent(evt); 80 } 81 } 82 catch (Throwable e) 83 { 84 throw WebmanExceptionHandler.getException(e); 86 } 87 } 88 89 public boolean isHandler(TKEvent evt) 90 { 91 return evt.getName().equalsIgnoreCase("CE_UPDATE_NODE"); 92 } 93 } 94 | Popular Tags |