1 40 package com.mvnforum.admin.importexport.mvnforum; 41 42 import com.mvnforum.MVNForumConfig; 43 import com.mvnforum.MVNForumConstant; 44 import com.mvnforum.admin.*; 45 import com.mvnforum.db.DAOFactory; 46 import net.myvietnam.mvncore.exception.*; 47 48 55 public class MvnForumXML { 56 57 public static boolean addedAdminMember = false; 59 public static boolean addedGuestMember = false; 61 public static boolean addedRegisteredMembersGroup = false; 63 64 public MvnForumXML() throws DatabaseException, CreateException, 65 DuplicateKeyException, ObjectNotFoundException, ForeignKeyNotFoundException { 66 super(); 67 MvnForumXML.addedAdminMember=false; 68 MvnForumXML.addedGuestMember=false; 69 MvnForumXML.addedRegisteredMembersGroup=false; 70 ImportMvnForum.createDefaultContents(); 71 } 72 73 74 public void setMvnForumXmlVersion(String value) { 78 ImportMvnForum.addMessage("mvnForum XML version = \""+value+"\""); 79 } 80 81 public void setMvnForumExportDate(String value) { 82 ImportMvnForum.addMessage("mvnForum XML export date = \""+value+"\""); 83 } 84 85 public void postProcessMemberList() throws CreateException, DuplicateKeyException, 86 ObjectNotFoundException, DatabaseException, ForeignKeyNotFoundException, BadInputException { 87 MvnForumXML.checkAdminMember(); 88 MvnForumXML.checkGuestMember(); 89 } 90 91 public void postProcessGroupList() throws CreateException, DuplicateKeyException, 92 ObjectNotFoundException, DatabaseException, ForeignKeyNotFoundException { 93 MvnForumXML.checkRegisteredMembersGroup(); 94 } 95 96 public static void finishImport() throws CreateException, DuplicateKeyException, 97 ObjectNotFoundException, DatabaseException, ForeignKeyNotFoundException, BadInputException { 98 checkAdminMember(); 99 checkGuestMember(); 100 checkRegisteredMembersGroup(); 101 } 102 103 public void addGuestGlobalPermission(String permission) 104 throws CreateException, DuplicateKeyException, ObjectNotFoundException, 105 DatabaseException, ForeignKeyNotFoundException { 106 MvnForumXML.addGuestMemberPermission(permission); 107 } 108 109 public void addRegisteredMembersGlobalPermission(String permission) 110 throws CreateException, DuplicateKeyException, ObjectNotFoundException, 111 DatabaseException, ForeignKeyNotFoundException { 112 MvnForumXML.addRegisteredMembersGroupPermission(permission); 113 } 114 115 public void addRank(String rankMinPosts, String rankLevel, String rankTitle, 116 String rankImage, String rankType, String rankOption) 117 throws CreateException, DuplicateKeyException, ObjectNotFoundException, 118 DatabaseException, ForeignKeyNotFoundException { 119 ImportMvnForum.addMessage("Adding rank title \""+rankTitle+"\"."); 120 (new RankXML()).addRank(rankMinPosts, rankLevel, rankTitle, 121 rankImage, rankType, rankOption); 122 } 123 124 133 public static void addMemberPermission(String username, String permission) 134 throws ObjectNotFoundException, CreateException, DatabaseException, 135 ForeignKeyNotFoundException, DuplicateKeyException { 136 MemberXML.addMemberPermission(username, permission); 137 } 138 139 144 public static void addGuestMemberPermission(String permission) 145 throws CreateException, DatabaseException, DuplicateKeyException, 146 ForeignKeyNotFoundException { 147 MemberXML.addGuestMemberPermission(permission); 148 } 149 150 155 public static void addRegisteredMembersGroupPermission(String permission) 156 throws CreateException, DatabaseException, DuplicateKeyException, 157 ForeignKeyNotFoundException { 158 GroupXML.addRegisteredMembersGroupPermission(permission); 159 } 160 161 167 public static void addGroupPermission(String groupname, String permission) 168 throws CreateException, DatabaseException, DuplicateKeyException, 169 ForeignKeyNotFoundException, ObjectNotFoundException { 170 GroupXML.addGroupPermission(groupname, permission); 171 } 172 173 174 public static void checkAdminMember() throws CreateException, DuplicateKeyException, 178 ObjectNotFoundException, DatabaseException, ForeignKeyNotFoundException, BadInputException { 179 if (!addedAdminMember) { 180 ImportMvnForum.addImportantMessage("Didn't find SYSTEM_ADMIN member. Adding default one with a name \""+ 181 "admin\" and password \"admin\". For your security, "+ 182 "you should first change that password."); 183 ImportWebHelper.createDefaultAdminMember(); 184 addedAdminMember=true; 185 } 186 } 187 188 public static void checkGuestMember() throws CreateException, DuplicateKeyException, 189 ObjectNotFoundException, DatabaseException, ForeignKeyNotFoundException, BadInputException { 190 if (!addedGuestMember) { 191 ImportMvnForum.addImportantMessage("Didn't find virtual guest member. "+ 192 "Adding default one with a name \""+ 193 MVNForumConfig.getDefaultGuestName()+"\" and no password. "+ 194 "He'll have READ_POST permissions in all forums, "+ 195 "and global ADD_POST permission."); 196 try { 197 ImportWebHelper.createDefaultGuestMember(); 198 } catch (DuplicateKeyException de) { 199 } 202 addedGuestMember=true; 203 } 204 } 205 206 public static void checkRegisteredMembersGroup() throws CreateException, 207 DuplicateKeyException, ObjectNotFoundException, DatabaseException, ForeignKeyNotFoundException { 208 if (!addedRegisteredMembersGroup) { 210 String groupOwnerName=""; 212 try { 213 groupOwnerName=DAOFactory.getMemberDAO().getMember_forPublic(MVNForumConstant.MEMBER_ID_OF_ADMIN).getMemberName(); 214 } catch (Exception e) { 215 groupOwnerName=""; 216 } 217 ImportMvnForum.addImportantMessage("Didn't find \"Registered Members\" group. "+ 218 "Adding default one."); 219 ImportWebHelper.createDefaultRegisteredMembersGroup(groupOwnerName); 220 addedRegisteredMembersGroup=true; 221 } 222 } 223 224 225 } 226 227 | Popular Tags |