KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > de > webman > form > eventhandler > CTCancelTestHandler


1 package de.webman.form.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
21 /************************************************************************
22 /**
23 * Importieren von Content
24 *
25 */

26 public class CTCancelTestHandler extends DefaultEventHandler implements ParameterTypes, FrameConstants, DatabaseDefaults
27 {
28     
29     private CTCancelTestHandler()
30     {}
31     
32     private static CTCancelTestHandler instance = new CTCancelTestHandler();
33     
34     public static CTCancelTestHandler getInstance()
35     {
36         return instance;
37     }
38     
39     public void handleEvent(TKEvent evt) throws TKException
40     {
41         try
42         {
43             WebManEvent.checkEvent(evt.getRemoteUser(), evt.getName(), ContextConstants.CONTENT_TREE);
44             TKHTMLTemplate t = evt.getPrepHTMLTemplate( "ct_fields.tmpl" );
45             int formType = Integer.parseInt( evt.getParameter( PARAMETER, "FORM_TYPE" ) );
46
47             TKBaseField field = CTUtils.getStructure( formType );
48             /*
49             das tmpObject (tmpFid) aus der DB holen, anzeigen (wie edit)
50             und dann aus der DB loeschen,
51             */

52             int tmpFid = Integer.parseInt( evt.getParameter( PARAMETER, "TMP_FORM_ID" ) );
53
54             TKFormDBData data = new TKFormDBData( tmpFid, TEMP_CONTENT_FORM_TYPE ); // neues Formdb-obj. mit tmp. form_id
55
TKFormDBInterface.Get( data ); // fuellt data
56
String JavaDoc classId = ((TKFieldTableData) data.field.firstElement()).field_type;
57
58             TKBaseField editField = TKFieldRegistry.getFieldFromDB( data ); // editfield als field aus der DB
59
TKFormDBInterface.Del( data ); // loeschen des tmp.Objects
60
Object JavaDoc editFieldData = editField.toData(); // editFieldData als int.Repraesentation (data),
61

62             //---- FRAGMENT: erhaelt andere Daten fuer fillIntoTeplate ----//
63
if(formType == FRAGMENT_FORM_TYPE ) {
64                 TKFieldSwitchData switchFieldData = new TKFieldSwitchData( classId, classId, editFieldData);
65                 TKHashtable groupData = new TKHashtable(1);
66                 groupData.put( TKBaseField.SUB_TYPE_KEY, switchFieldData );
67                 field.fillIntoTemplate( t, groupData, "" );
68             }
69             //---- sonstige FORMS ----//
70
else {
71                 field.fillIntoTemplate( t, editFieldData, "" );
72             }
73
74             CTUtils.keepCTContext(evt, t );
75             CTUtils.switchTest( t, false );
76             
77             WebManEvent.fillEventsIntoTemplate(evt.getRemoteUser(), t, CONTENT_TREE);
78             evt.finishTemplate(t);
79         }
80         catch (Throwable JavaDoc e)
81         {
82             // TO DO : Analyze Exception !
83
throw WebmanExceptionHandler.getException(e);
84         }
85     }
86     
87     public boolean isHandler(TKEvent evt)
88     {
89         return evt.getName().equalsIgnoreCase("CT_CANCELTEST");
90     }
91 }
92
Popular Tags