KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > teamkonzept > field > TKFieldOptionFakeIterator


1 /*
2  * $Header: /cvsroot/webman-cms/source/webman/com/teamkonzept/field/TKFieldOptionFakeIterator.java,v 1.7 2002/01/18 15:41:15 mischa Exp $
3  *
4  */

5 /**
6  * Die Klasse TKFieldoption stellt Methoden zur Verfuegung, optional auszuwaehlen,
7  * ob ein uebergebens Field generiert werden soll oder nicht, die ausgewaehlte Option
8  * zu modifizieren, und um die Daten und Struktur in der Datenbank abzulegen.
9  *
10  * Sie definiert sich ueber einen Namen, einer Beschreibung
11  * und einer Auswahlliste aller verfuegbaren Fields. Im Content-Edit Modus wird
12  * dann das Template field_option.tmpl generiert, welches einen Switch mit der
13  * Auswahl Ja bzw. Nein enthaelt. Wird Ja ausgewaehlt, so wird der Default des
14  * Feldes generiert, das zuvor ausgewaehlt wurde.
15  *
16  * Bsp.: Eine Liste, enthaelt Textfelder. Zu jedem Textfeld kann optional die Moeglichkeit
17  * zur Verfuegung gestellt werden, ein Bild am Ende des Textes hinzuzufuegen oder nicht.
18  */

19
20 package com.teamkonzept.field;
21
22 import com.teamkonzept.web.*;
23 import com.teamkonzept.publishing.markups.*;
24 import com.teamkonzept.lib.*;
25 import com.teamkonzept.field.db.*;
26
27 /**
28  * Wurde Ja aus der Switchlist ausgewaehlt, so muss das Subfield im
29  * Template dargestellt werden
30  * @author $Author: mischa $
31  * @version $Revision: 1.7 $
32  */

33 public class TKFieldOptionFakeIterator implements TKListIterator {
34
35     TKListIterator oldIterator;
36     String JavaDoc listName;
37     TKFieldOptionData optionData;
38     String JavaDoc prefix;
39     TKBaseField optionEntry;
40     
41     public TKFieldOptionFakeIterator(
42         
43         TKBaseField optionEntry,
44         TKFieldOptionData optionData,
45         String JavaDoc prefix,
46         TKListIterator oldIterator,
47         String JavaDoc listName
48     )
49     {
50         this.optionEntry = optionEntry;
51         this.oldIterator = oldIterator;
52         this.listName = listName;
53         this.optionData = optionData;
54         this.prefix = prefix;
55     }
56     
57     public boolean apply( TKTemplate t, int i, String JavaDoc currListName )
58     {
59
60         TKHTMLTemplate template = (TKHTMLTemplate) t;
61         if( currListName.equalsIgnoreCase( listName ) ) {
62             if( i >= 1) return false;
63             if( optionData.data == null ) return false;
64             if(optionData.currJaNein.equalsIgnoreCase("NO")) return false;
65                         
66             if( optionData.currJaNein.equalsIgnoreCase("YES")){
67                 optionEntry.fillIntoTemplate( template, optionData.data, prefix+optionData.currJaNein+'.' );
68             }
69             return true;
70         }
71         else if( oldIterator != null ) {
72             return oldIterator.apply( template, i, currListName );
73         }
74         else {
75             return false;
76         }
77     }
78     //{{DECLARE_CONTROLS
79
//}}
80
}
81
82
Popular Tags