1 package de.webman.duplication.eventhandler; 2 3 import java.sql.*; 4 import java.awt.*; 5 import com.teamkonzept.web.*; 6 import java.text.*; 7 import java.io.*; 8 import com.teamkonzept.db.*; 9 10 import com.teamkonzept.lib.*; 11 import com.teamkonzept.webman.mainint.db.queries.duplication.*; 12 13 public class Utils{ 14 15 static final int MAX_DUPLICATION = 200; 17 18 22 public static String toFilename( final String name ) { 23 final StringBuffer fname = new StringBuffer ( name.length() ); 24 final StringCharacterIterator iter = new StringCharacterIterator( name ); 25 for ( char ch = iter.current(); ch != CharacterIterator.DONE; ch = 26 iter.next() ) { 27 switch ( ch ) { 28 case 'ä': 29 fname.append( "ae" ); 30 break; 31 case 'Ä': 32 fname.append( "Ae" ); 33 break; 34 case 'ö': 35 fname.append( "oe" ); 36 break; 37 case 'Ö': 38 fname.append( "Oe" ); 39 break; 40 case 'ü': 41 fname.append( "ue" ); 42 break; 43 case 'Ü': 44 fname.append( "Ue" ); 45 break; 46 case 'ß': 47 fname.append( "ss" ); 48 break; 49 case '_': 50 default: 51 if ( Character.isWhitespace( ch ) 52 || Character.isISOControl( ch ) 53 || ch == File.separatorChar ) { 54 fname.append( '_' ); 55 } else { 56 fname.append( ch ); 57 } 58 break; 59 } 60 } 61 return fname.toString(); 62 } 63 64 68 public static String getDUPropertyValue(String propName) throws SQLException{ 69 String propValue = null; 70 TKQuery query = TKDBManager.newQuery(TKDBGetProperty.class) ; 71 query.setQueryParams("NAME", "DU_" + propName); 72 query.execute(); 73 ResultSet rs = query.fetchResultSet(); 74 if(rs.next()){ 75 propValue = rs.getString("VALUE"); 76 } 77 query.close(); 78 return propValue != null? propValue: ""; 79 } 80 81 83 84 public static boolean doDUVerifyParameterSet(boolean withNames, TKEvent evt) throws Throwable 85 { 86 87 TKParams params = evt.getParams(); 88 89 String contentTreeFlag = params.get( "PAR", "CONTENT_FLAG" ) != null ? params.get( "PAR", "CONTENT_FLAG" ) : "" ; 90 91 String tmplRootId = params.get( "PAR", "TEMPLATE_ROOT_ID" ) != null ? params.get( "PAR", "TEMPLATE_ROOT_ID" ) : "" ; 92 String targetRootId = params.get( "PAR", "TARGET_ROOT_ID" ) != null ? params.get( "PAR", "TARGET_ROOT_ID" ) : "" ; 93 String newConRootName = params.get( "PAR", "NEW_CONTENT_ROOT_NAME" ) != null ? params.get( "PAR", "NEW_CONTENT_ROOT_NAME" ) : "" ; 94 String newConRootShortname = params.get( "PAR", "NEW_CONTENT_ROOT_SHORTNAME" ) != null ? params.get( "PAR", "NEW_CONTENT_ROOT_SHORTNAME" ) : "" ; 95 96 String siteDupFlag = params.get( "PAR", "SITE_TREE_FLAG" ) != null ? params.get( "PAR", "SITE_TREE_FLAG" ) : "" ; 97 String stSubRootId = params.get( "PAR", "ST_SUBTREE_ROOT_ID" ) != null ? params.get( "PAR", "ST_SUBTREE_ROOT_ID" ) : "" ; 98 String stTargetRootId = params.get( "PAR", "ST_TARGET_ROOT_ID" ) != null ? params.get( "PAR", "ST_TARGET_ROOT_ID" ) : "" ; 99 String newSiteRootName = params.get( "PAR", "NEW_SITE_ROOT_NAME" ) != null ? params.get( "PAR", "NEW_SITE_ROOT_NAME" ) : "" ; 100 String newSiteRootShortname = params.get( "PAR", "NEW_SITE_ROOT_SHORTNAME" ) != null ? params.get( "PAR", "NEW_SITE_ROOT_SHORTNAME" ) : "" ; 101 102 103 104 if(!contentTreeFlag.equals("ON") && !siteDupFlag.equals("ON")) 105 { 106 return false; 107 } 108 109 if(contentTreeFlag.equals("ON")){ 111 if( withNames ){ 112 if( newConRootName.equals("") || newConRootShortname.equals("") ){ 113 return false; 114 } 115 } 116 if(tmplRootId.equals("") || targetRootId.equals("")){ 117 return false; 118 } 119 try{ 120 Integer.parseInt(tmplRootId); 121 Integer.parseInt(targetRootId); 122 } 123 catch(NumberFormatException e){ 124 return false; 125 } 126 } 127 if(siteDupFlag.equals("ON")){ 129 if( withNames ){ 130 if(newSiteRootName.equals("") || newSiteRootShortname.equals("") ){ 131 return false; 132 } 133 } 134 135 if(stSubRootId.equals("") || stTargetRootId.equals("") ){ 136 return false; 137 } 138 try{ 139 Integer.parseInt(stSubRootId); 140 Integer.parseInt(stTargetRootId); 141 } 142 catch(NumberFormatException e){ 143 return false; 144 } 145 } 146 return true; 147 148 } 149 150 151 154 public static boolean doErrorSide(TKEvent evt) throws Throwable 155 { 156 TKHTMLTemplate t = evt.getPrepHTMLTemplate( "du_intro.tmpl" ); 157 t.set( "FIRST", "1" ); 158 t.set( "ERROR", "1"); 159 evt.finishTemplate(t); 160 return true; 161 } 162 163 164 165 } | Popular Tags |