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 de.webman.acl.Policy; 15 import java.sql.*; 16 17 24 public class CEModifyHandler extends DefaultEventHandler implements ParameterTypes, FrameConstants, DatabaseDefaults 25 { 26 private CEModifyHandler() 27 {} 28 29 private static CEModifyHandler instance = new CEModifyHandler(); 30 31 public static CEModifyHandler getInstance() 32 { 33 return instance; 34 } 35 36 public void handleEvent(TKEvent evt) throws TKException 37 { 38 try 39 { 40 CEUtils.checkEvent(evt); 41 TKHTMLTemplate t = evt.getPrepHTMLTemplate( "ce_fields.tmpl" ); 42 43 ContentContext ceContext = CEUtils.keepCEContext(evt, t ); 44 45 TKFormDBData data = new TKFormDBData( ceContext.formId.intValue() ); 46 TKFormDBInterface.Get( data ); 47 TKBaseField field = TKFieldRegistry.getFieldFromDB( data ); 48 TKHashtable fieldContext = new TKHashtable(); 49 50 Object realData = field.compileData( "", evt.getParams().getClass( PARAMETER ), fieldContext ); 51 String action = evt.getParameter( ACTION, "MODIFY" ); 52 String target = evt.getParameter( TARGET, "MODIFY" ); 53 54 t.set( "DESTINATION", field.modify( action, target, realData ) ); 55 t.set( "CHANGED",new Integer (1)); 57 62 field.fillIntoTemplate( t, realData, "" ); 63 WebManEvent.fillEventsIntoTemplate(evt.getRemoteUser(), t, ContextConstants.CONTENT_EDIT, Policy.CONTENT_TREE_ID, ceContext.conNodeId); 64 65 evt.finishTemplate(t); 66 } 67 catch (Throwable e) 68 { 69 throw WebmanExceptionHandler.getException(e); 71 } 72 } 73 74 public boolean isHandler(TKEvent evt) 75 { 76 return evt.getName().equalsIgnoreCase("CE_MODIFY"); 77 } 78 } 79 | Popular Tags |