package is.idega.idegaweb.travel.presentation; import java.util.List; import com.idega.presentation.IWContext; import com.idega.presentation.Table; import com.idega.presentation.ui.DropdownMenu; import com.idega.presentation.ui.Form; import com.idega.presentation.ui.SubmitButton; /** * @author gimmi */ public class TravelTransformer extends TravelBlock { public void main(IWContext iwc) throws Exception{ super.main(iwc); // if (super.isSuperAdmin) { List supplierManagers = getSupplierManagerBusiness(iwc).getSupplierManagerGroup().getChildGroups(); DropdownMenu menu = new DropdownMenu(supplierManagers, "managerID"); Form form = new Form(); form.add("Select a supplier manager to be owner for everything unowned"); form.add(menu); form.add(new SubmitButton("save", "save", "yes")); add(form); if (iwc.isParameterSet("save")) { runFix(iwc.getParameter("managerID")); } showSuppliers(null); showResellers(null); showSearchEngines(null); // } } private void runFix(String managerID) { System.out.println("Manager ID = "+managerID); java.sql.Connection conn = null; java.sql.Statement stmt = null; javax.transaction.TransactionManager t = com.idega.transaction.IdegaTransactionManager.getInstance(); try { t.begin(); conn = com.idega.util.database.ConnectionBroker.getConnection(); stmt = conn.createStatement(); System.out.println("Executing supplier fix"); stmt.execute("update sr_supplier set SUPPLIER_MANAGER_ID = "+managerID+" where SUPPLIER_MANAGER_ID is null"); System.out.println("Executing reseller fix"); stmt.execute("update sr_reseller set SUPPLIER_MANAGER_ID = "+managerID+" where SUPPLIER_MANAGER_ID is null"); System.out.println("Executing searchengine fix"); stmt.execute("update TB_SERVICE_SEARCH_ENGINE set SUPPLIER_MANAGER_ID = "+managerID+" where SUPPLIER_MANAGER_ID is null"); System.out.print("Committing..."); t.commit(); System.out.println("done"); } catch (Exception e) { try { add("UPDATE FAILED - check log"); e.printStackTrace(); t.rollback(); } catch (Exception e1) { e1.printStackTrace(); } } finally{ if (stmt != null) { try { stmt.close(); } catch (java.sql.SQLException e1) { e1.printStackTrace(); } } if (conn != null) { com.idega.util.database.ConnectionBroker.freeConnection(conn); } } } public String getDefaultSupplierSelectSQL(){ return "select SR_SUPPLIER_ID, NAME from SR_SUPPLIER where SUPPLIER_MANAGER_ID is null"; } public void showSuppliers(String userSelectSQL)throws Exception{ Table table = new Table(); String userSQL = userSelectSQL!=null?userSelectSQL:getDefaultSupplierSelectSQL(); java.sql.Connection conn = null; java.sql.Statement stmt = null; try{ conn = com.idega.util.database.ConnectionBroker.getConnection(); stmt = conn.createStatement(); java.sql.ResultSet rs = stmt.executeQuery(userSQL); table.add("SuppID",1,1); table.add("Name",2,1); int row = 2; while(rs.next()){ table.add(rs.getString(1),1,row); table.add(rs.getString(2),2,row++); } rs.close(); } finally{ if (stmt != null) { try { stmt.close(); } catch (java.sql.SQLException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } if (conn != null) { com.idega.util.database.ConnectionBroker.freeConnection(conn); } } table.setHorizontalZebraColored("#F2e1a9","FFFFFF"); table.setRowColor(1,"#C38536"); add(table); } public String getDefaultResellerSelectSQL(){ return "select SR_RESELLER_ID, NAME from SR_RESELLER where SUPPLIER_MANAGER_ID is null"; } public void showResellers(String userSelectSQL)throws Exception{ Table table = new Table(); String userSQL = userSelectSQL!=null?userSelectSQL:getDefaultResellerSelectSQL(); java.sql.Connection conn = null; java.sql.Statement stmt = null; try{ conn = com.idega.util.database.ConnectionBroker.getConnection(); stmt = conn.createStatement(); java.sql.ResultSet rs = stmt.executeQuery(userSQL); table.add("resellerID",1,1); table.add("Name",2,1); int row = 2; while(rs.next()){ table.add(rs.getString(1),1,row); table.add(rs.getString(2),2,row++); } rs.close(); } finally{ if (stmt != null) { try { stmt.close(); } catch (java.sql.SQLException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } if (conn != null) { com.idega.util.database.ConnectionBroker.freeConnection(conn); } } table.setHorizontalZebraColored("#F2e1a9","FFFFFF"); table.setRowColor(1,"#C38536"); add(table); } public String getDefaultSearchEngineSelectSQL(){ return "select TB_SERVICE_SEARCH_ENGINE_ID, OWNER_NAME, BOOKING_CODE from TB_SERVICE_SEARCH_ENGINE where SUPPLIER_MANAGER_ID is null"; } public void showSearchEngines(String userSelectSQL)throws Exception{ Table table = new Table(); String userSQL = userSelectSQL!=null?userSelectSQL:getDefaultSearchEngineSelectSQL(); java.sql.Connection conn = null; java.sql.Statement stmt = null; try{ conn = com.idega.util.database.ConnectionBroker.getConnection(); stmt = conn.createStatement(); java.sql.ResultSet rs = stmt.executeQuery(userSQL); table.add("searchID",1,1); table.add("Name",2,1); table.add("Code",3,1); int row = 2; while(rs.next()){ table.add(rs.getString(1),1,row); table.add(rs.getString(2),2,row); table.add(rs.getString(3),3,row++); } rs.close(); } finally{ if (stmt != null) { try { stmt.close(); } catch (java.sql.SQLException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } if (conn != null) { com.idega.util.database.ConnectionBroker.freeConnection(conn); } } table.setHorizontalZebraColored("#F2e1a9","FFFFFF"); table.setRowColor(1,"#C38536"); add(table); } }