protected void confirmEdit(object sender, EventArgs e) { ImageButton sendBtn = (ImageButton)sender; String args = sendBtn.CommandArgument.ToString(); Database dbCheck = new Database(); DataTable dtCheck; try { dtCheck = dbCheck.executeQueryLocal("SELECT name,dbName,userName,password,port,address,type,protocol,serviceName,SID FROM Connection WHERE ID=\'" + args + "\'"); } catch (ODBC2KMLException) { ErrorHandler eh = new ErrorHandler("There was an error retreiving connection information for connection " + args + ".", errorPanel1); eh.displayError(); return; } foreach (DataRow dr in dtCheck.Rows) { editConnName.Text = dr[0].ToString(); editConnDBName.Text = dr[1].ToString(); editConnUser.Text = dr[2].ToString(); editConnPass.Attributes.Add("value", dr[3].ToString()); editConnDBPort.Text = dr[4].ToString(); editConnDBAddr.Text = dr[5].ToString(); if (Convert.ToInt32(dr[6].ToString()) == ConnInfo.MYSQL) { editConnDBType.SelectedValue = "MySQL"; } else if (Convert.ToInt32(dr[6].ToString()) == ConnInfo.MSSQL) { editConnDBType.SelectedValue = "MSSQL"; } else { editConnDBType.SelectedValue = "Oracle"; } editConnDBType.Text = dr[6].ToString(); editOracleProtocol.Text = dr[7].ToString(); editOracleService.Text = dr[8].ToString(); editOracleSID.Text = dr[9].ToString(); } saveAndEditConn.CommandArgument = args; saveEditConn.CommandArgument = args; this.editConnModalPopUp.Show(); }
protected void deleteConnFunction(object sender, EventArgs e) { //Delete the connection Button sendBtn = (Button)sender; String args = sendBtn.CommandArgument.ToString(); Database db = new Database(); try { db.executeQueryLocal("DELETE FROM CONNECTION WHERE ID=" + args); } catch (ODBC2KMLException) { ErrorHandler eh = new ErrorHandler("There was an error deleting the connection", errorPanel1); eh.displayError(); return; } this.deletePopupExtender.Hide(); Response.Redirect("Main.aspx"); }
protected void addOverlayColorToConn(object sender, EventArgs e) { Button sendBtn = (Button)sender; String args = HiddenValue.Value.ToString(); args = args.Substring(1); Overlay ovr = new Overlay(); ovr.setColor(args); bool exists = false; foreach (Overlay over in conn.overlays) { if (over.getColor().Equals(ovr.getColor())) { exists = true; break; } } if (ovr.getColor().Equals("-111111")) { this.AddOverlayPopupExtender.Hide(); ErrorHandler eh = new ErrorHandler("Overlay color must be selected!", errorPanel1, "AddOverlayPopupExtender"); eh.displayError(); } else if (exists) { this.AddOverlayPopupExtender.Hide(); ErrorHandler eh = new ErrorHandler("Overlay color already exists! Please choose another.", errorPanel1, "AddOverlayPopupExtender"); eh.displayError(); } else { try { ovr.setId(curOverlayCount.ToString()); curOverlayCount -= 1; overlayListAvailableToRemove.Add(ovr); //overlayList.Add(new Overlay(ovr)); conn.overlays.Add(new Overlay(ovr)); this.fillOverlayPopupRemove(); this.genOverlayConditionTable(sender, e); } catch (ODBC2KMLException ex) { ErrorHandler eh = new ErrorHandler(ex.errorText, errorPanel1); eh.displayError(); return; } } sessionSave(); }
protected void addConditionToOverlay(object sender, EventArgs e) { Button btn = (Button)sender; string args = btn.CommandArgument.ToString(); TextBox lowerBound = (TextBox)Page.FindControl("addOverlayLowerBound" + args); DropDownList lowerOperator = (DropDownList)Page.FindControl("addOverlayLowerOperator" + args); DropDownList tableName = (DropDownList)Page.FindControl("addOverlayTable" + args); DropDownList fieldName = (DropDownList)Page.FindControl("addOverlayField" + args); DropDownList upperOperator = (DropDownList)Page.FindControl("addOverlayUpperOperator" + args); TextBox upperBound = (TextBox)Page.FindControl("addOverlayUpperBound" + args); UpdatePanel modifyIconConditionInsidePopupPanel = (UpdatePanel)Page.FindControl("modifyOverlayConditionInsidePopupPanel" + args); string overlayId = args; Condition condition = new Condition(); condition.setId(tempId--); condition.setLowerBound(lowerBound.Text.ToString()); condition.setUpperBound(upperBound.Text.ToString()); condition.setTableName(tableName.Text.ToString()); condition.setFieldName(fieldName.Text.ToString()); if (lowerOperator != null) condition.setLowerOperator(lowerOperator.SelectedItem.Text.ToString()); if (upperOperator != null) condition.setUpperOperator(upperOperator.SelectedItem.Text.ToString()); string conditionErrors = condition.getErrorText(); if (conditionErrors != "") { ErrorHandler eh = new ErrorHandler(conditionErrors, (UpdatePanel)Page.FindControl("modifyOverlayConditionInsidePopupPanel" + overlayId), "MPE_OVERLAY_" + overlayId); eh.displayError(); lowerBound.Text = condition.getLowerBound(); lowerOperator.SelectedValue = condition.getLowerOperator(); tableName.SelectedValue = condition.getTableName(); fieldName.SelectedValue = condition.getFieldName(); upperOperator.SelectedValue = condition.getUpperOperator(); upperBound.Text = condition.getUpperBound(); return; } //Verify that the bounds are of the same datatype as the column value if (conditionErrors == "") { //Create database based on the connInfo Database testDB = new Database(conn.connInfo); DataTable testTable = null; try { //Create the datatable to parse through testTable = testDB.executeQueryRemote("SELECT " + condition.getFieldName() + " FROM " + condition.getTableName()); } catch (ODBC2KMLException) { ErrorHandler eh = new ErrorHandler("There was an error connecting to the remote database to verify overlay condition information", errorPanel1); eh.displayError(); return; } //Counter to break out of the loop, this way only a subset of the data is tested int counter = 0; //Check the bounds against the database values foreach (DataRow row in testTable.Rows) { //If both conditions.... if (condition.getLowerBound() != "" && condition.getUpperBound() != "") { //Need variables for Try parse Double lower; Double upper; //See if both conditions evaluate to doubles if (Double.TryParse(condition.getLowerBound(), out lower) && Double.TryParse(condition.getUpperBound(), out upper)) { Double value; //If value is not a double, throw an error if (!Double.TryParse(row[condition.getFieldName()].ToString(), out value) && row[condition.getFieldName()] != null && row[condition.getFieldName()].ToString() != "") { conditionErrors = "The datatype of the entered bounds do not match the datatype of the database values."; ErrorHandler eh = new ErrorHandler(conditionErrors, (UpdatePanel)Page.FindControl("modifyOverlayConditionInsidePopupPanel" + overlayId), "MPE_OVERLAY_" + overlayId); lowerBound.Text = condition.getLowerBound(); lowerOperator.SelectedValue = condition.getLowerOperator(); tableName.SelectedValue = condition.getTableName(); fieldName.SelectedValue = condition.getFieldName(); upperOperator.SelectedValue = condition.getUpperOperator(); upperBound.Text = condition.getUpperBound(); eh.displayError(); return; } //test five elements if (++counter > 5) break; } else //They evaluate to strings { Double value; //If value is a double, throw an error if (Double.TryParse(row[condition.getFieldName()].ToString(), out value) && row[condition.getFieldName()] != null && row[condition.getFieldName()].ToString() != "") { conditionErrors = "The datatype of the entered bounds do not match the datatype of the database values."; ErrorHandler eh = new ErrorHandler(conditionErrors, (UpdatePanel)Page.FindControl("modifyOverlayConditionInsidePopupPanel" + overlayId), "MPE_OVERLAY_" + overlayId); lowerBound.Text = condition.getLowerBound(); lowerOperator.SelectedValue = condition.getLowerOperator(); tableName.SelectedValue = condition.getTableName(); fieldName.SelectedValue = condition.getFieldName(); upperOperator.SelectedValue = condition.getUpperOperator(); upperBound.Text = condition.getUpperBound(); eh.displayError(); return; } else //Decrement counter, this row wasn't a valid row and should be ignored //test five elements if (++counter > 5) break; } } else if (condition.getLowerBound() != "") { //Need variables for Try parse Double lower; //See if the lower conditions evaluate to doubles if (Double.TryParse(condition.getLowerBound(), out lower)) { Double value; //If value is not a double, throw an error if (!Double.TryParse(row[condition.getFieldName()].ToString(), out value) && row[condition.getFieldName()] != null && row[condition.getFieldName()].ToString() != "") { conditionErrors = "The datatype of the entered bounds do not match the datatype of the database values."; ErrorHandler eh = new ErrorHandler(conditionErrors, (UpdatePanel)Page.FindControl("modifyOverlayConditionInsidePopupPanel" + overlayId), "MPE_OVERLAY_" + overlayId); lowerBound.Text = condition.getLowerBound(); lowerOperator.SelectedValue = condition.getLowerOperator(); tableName.SelectedValue = condition.getTableName(); fieldName.SelectedValue = condition.getFieldName(); upperOperator.SelectedValue = condition.getUpperOperator(); upperBound.Text = condition.getUpperBound(); eh.displayError(); return; } //test five elements if (++counter > 5) break; } else //They evaluate to strings { Double value; //If value is a double, throw an error if (Double.TryParse(row[condition.getFieldName()].ToString(), out value) && row[condition.getFieldName()] != null && row[condition.getFieldName()].ToString() != "") { conditionErrors = "The datatype of the entered bounds do not match the datatype of the database values."; ErrorHandler eh = new ErrorHandler(conditionErrors, (UpdatePanel)Page.FindControl("modifyOverlayConditionInsidePopupPanel" + overlayId), "MPE_OVERLAY_" + overlayId); lowerBound.Text = condition.getLowerBound(); lowerOperator.SelectedValue = condition.getLowerOperator(); tableName.SelectedValue = condition.getTableName(); fieldName.SelectedValue = condition.getFieldName(); upperOperator.SelectedValue = condition.getUpperOperator(); upperBound.Text = condition.getUpperBound(); eh.displayError(); return; } //test five elements if (++counter > 5) break; } } else { //Need variables for Try parse Double upper; //See if the lower conditions evaluate to doubles if (Double.TryParse(condition.getUpperBound(), out upper)) { Double value; //If value is not a double, throw an error if (!Double.TryParse(row[condition.getFieldName()].ToString(), out value) && row[condition.getFieldName()] != null && row[condition.getFieldName()].ToString() != "") { conditionErrors = "The datatype of the entered bounds do not match the datatype of the database values."; ErrorHandler eh = new ErrorHandler(conditionErrors, (UpdatePanel)Page.FindControl("modifyOverlayConditionInsidePopupPanel" + overlayId), "MPE_OVERLAY_" + overlayId); lowerBound.Text = condition.getLowerBound(); lowerOperator.SelectedValue = condition.getLowerOperator(); tableName.SelectedValue = condition.getTableName(); fieldName.SelectedValue = condition.getFieldName(); upperOperator.SelectedValue = condition.getUpperOperator(); upperBound.Text = condition.getUpperBound(); eh.displayError(); return; } //test five elements if (++counter > 5) break; } else //They evaluate to strings { Double value; //If value is a double, throw an error if (Double.TryParse(row[condition.getFieldName()].ToString(), out value) && row[condition.getFieldName()] != null && row[condition.getFieldName()].ToString() != "") { conditionErrors = "The datatype of the entered bounds do not match the datatype of the database values."; ErrorHandler eh = new ErrorHandler(conditionErrors, (UpdatePanel)Page.FindControl("modifyOverlayConditionInsidePopupPanel" + overlayId), "MPE_OVERLAY_" + overlayId); lowerBound.Text = condition.getLowerBound(); lowerOperator.SelectedValue = condition.getLowerOperator(); tableName.SelectedValue = condition.getTableName(); fieldName.SelectedValue = condition.getFieldName(); upperOperator.SelectedValue = condition.getUpperOperator(); upperBound.Text = condition.getUpperBound(); eh.displayError(); return; } //test five elements if (++counter > 5) break; } } } } foreach (Overlay overlay in conn.overlays) { if (overlay.getId() == overlayId) { overlay.setConditions(condition); } } try { genOverlayConditionTable(sender, e); } catch (ODBC2KMLException ex) { ErrorHandler eh = new ErrorHandler(ex.errorText, errorPanel1); eh.displayError(); return; } sessionSave(); }
/// <summary> /// used for uploading icons from remote sources /// if fetch is checked this function downloads the linked icon and saves its info to the db and saves the icon /// if fetch is not checked it just saves the linked icon's info to the db /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void URLsubmitClick(object sender, EventArgs e) { String pathToAdd = ""; String URL = URLtextBox.Text.Trim(); bool fetch = fetchCheckBox.Checked; try { pathToAdd = Utilities.URLsubmitClick(fetch, URL, fileSaveLoc, relativeFileSaveLoc); } catch (ODBC2KMLException ex) { ErrorHandler eh = new ErrorHandler(ex.errorText, errorPanel1, this.ModalPopupExtender3.ID); eh.displayError(); return; } fetchCheckBox.Checked = false; URLtextBox.Text = ""; if (!pathToAdd.Equals("")) { try { addSingleIconToLib(pathToAdd); } catch (ODBC2KMLException) { ErrorHandler eh = new ErrorHandler("There was an error adding the icon to the library", errorPanel1); eh.displayError(); } } sessionSave(); }
protected void updateConnection(object sender, EventArgs e) { invalidConnInfo.Visible = false; unableToConnect.Visible = false; connectionEstablished.Visible = false; conn.connInfo.connectionName = odbcName.Text; conn.connInfo.serverAddress = odbcAdd.Text; conn.connInfo.portNumber = odbcPN.Text; conn.connInfo.databaseName = odbcDName.Text; conn.connInfo.userName = odbcUser.Text; conn.connInfo.password = odbcPass.Text; conn.connInfo.databaseType = odbcDBType.SelectedIndex; conn.connInfo.oracleProtocol = odbcProtocol.Text; conn.connInfo.oracleServiceName = odbcSName.Text; conn.connInfo.oracleSID = odbcSID.Text; String connectionString = ""; try { //If the connection is invalid, return false, else purge invalid conditions and return true if (!conn.validateConnnection(descriptionBox)) { ErrorHandler eh; if (conn.connInfo.databaseType == ConnInfo.ORACLE) { eh = new ErrorHandler("Connection information is invalid. Please verify that all fields are correct and that the oracle specific fields have a value.", errorPanel1); } else { eh = new ErrorHandler("Connection information is invalid. Please verify that all fields are correct.", errorPanel1); } eh.displayError(); return; } if (conn.connInfo.getDatabaseType() == ConnInfo.MSSQL) { connectionString = "Data Source=" + conn.connInfo.getServerAddress() + ";Initial Catalog=" + conn.connInfo.getDatabaseName() + ";Persist Security Info=True;User Id=" + conn.connInfo.getUserName() + ";Password="******"SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA != 'information_schema' AND TABLE_NAME != 'sysdiagrams'"; } else if (conn.connInfo.getDatabaseType() == ConnInfo.MYSQL) { String providerName = ""; connectionString = "server=" + conn.connInfo.getServerAddress() + ";User Id=" + conn.connInfo.getUserName() + ";password="******";Persist Security Info=True;database=" + conn.connInfo.getDatabaseName(); providerName = "MySql.Data.MySqlClient"; SQLTables_Mapping.ConnectionString = connectionString; SQLTables_Mapping.ProviderName = providerName; SQLTables_Mapping.SelectCommand = "SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA != 'information_schema' && TABLE_SCHEMA != 'mysql'"; } else if (conn.connInfo.getDatabaseType() == ConnInfo.ORACLE) { String providerName = ""; connectionString = "Data Source=" + conn.connInfo.getServerAddress() + ";Persist Security Info=True;User ID=" + conn.connInfo.getUserName() + ";Password="******";Unicode=True"; providerName = "System.Data.OracleClient"; oracleTables_Mapping.ConnectionString = connectionString; oracleTables_Mapping.ProviderName = providerName; oracleTables_Mapping.SelectCommand = "select TABLE_NAME from user_tables"; } else { //Display Error Handler, something crashed.... ErrorHandler eh = new ErrorHandler("An unexpected error occured, please verify your connection and connection information and try again.", errorPanel1); eh.displayError(); return; } updateTables(conn.connInfo.getDatabaseType()); updateSqlDataSources(); genIconConditionTable(sender, e); genOverlayConditionTable(sender, e); displayCurrentMapping(); sessionSave(); // genIconConditionTable(sender, e); // genOverlayConditionTable(sender, e); } catch (ODBC2KMLException ex) { ErrorHandler eh = new ErrorHandler(ex.errorText, errorPanel1); eh.displayError(); return; } catch (Exception) { ErrorHandler eh = new ErrorHandler("An unexpected error occured, please check your database connection.", errorPanel1); eh.displayError(); return; } }
protected void submitModifyIconConditionPopup_Click(object sender, EventArgs e) { iconList = new ArrayList(); foreach (Icon icon in conn.icons) // conn.icons is the icons/conditions that were in the connection when we generated this table { iconList.Add(new Icon(icon)); } try { genIconConditionTable(sender, e); } catch (ODBC2KMLException ex) { ErrorHandler eh = new ErrorHandler(ex.errorText, errorPanel1); eh.displayError(); return; } sessionSave(); }
protected void saveLatLong_Click(object sender, EventArgs e) { string tableName = GridViewTables.SelectedValue.ToString(); //if the table hasn't bee mapped yet or there is a placemark field mapping and it's table matches this table if (conn.mapping.tableName.Equals(tableName) || ((conn.mapping.placemarkFieldName.Equals("") || conn.mapping.placemarkFieldName == null)) || conn.mapping.tableName.Equals("") || conn.mapping.tableName == null) { //if lat/lon mapped separately if (LLSepPanel.Visible == true) { //if the lon field equals the lat field, report error if (latDD.SelectedValue.ToString().Equals(longDD.SelectedValue.ToString())) { ErrorHandler eh = new ErrorHandler("Latitude and longitude cannot be the same column in this case. If they are, choose the \"Together\" button.", MappingUpdatePanel); eh.displayError(); } else { //else, set the current mapping to the selected values //conn.mapping.connID = conn.connID; conn.mapping.tableName = tableName; conn.mapping.latFieldName = latDD.SelectedValue.ToString(); conn.mapping.longFieldName = longDD.SelectedValue.ToString(); conn.mapping.format = 1; //update the mapping box displayCurrentMapping(); } } //else if they are mapped together else if (LLTogetherPanel.Visible == true) { //conn.mapping.connID = conn.connID; //set conn.mapping latFieldName and longFieldName to the selected value conn.mapping.latFieldName = conn.mapping.longFieldName = llDD.SelectedValue.ToString(); conn.mapping.tableName = tableName; //if the format is lon first, set the format to 3, else set it to 2 if (LongLatCheck.Selected) { conn.mapping.format = 3; } else { conn.mapping.format = 2; } //update the current mapping box displayCurrentMapping(); } } else { ErrorHandler eh = new ErrorHandler("Lat/long mapping must use the same table as placemark. If both are mapped, remove the current mapping and try again.", errorPanel1); eh.displayError(); } sessionSave(); }
/// <summary> /// used for uploading icons from remote sources /// if fetch is checked this function downloads the linked icon and saves its info to the db and saves the icon /// if fetch is not checked it just saves the linked icon's info to the db /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void URLsubmitClick(object sender, EventArgs e) { String URL = URLtextBox.Text.Trim(); bool fetch = fetchCheckBox.Checked; try { Utilities.URLsubmitClick(fetch, URL, fileSaveLoc, relativeFileSaveLoc); } catch (ODBC2KMLException ex) { ErrorHandler eh = new ErrorHandler(ex.errorText, errorPanel1); eh.displayError(); return; } fetchCheckBox.Checked = false; URLtextBox.Text = ""; }
/// <summary> /// used for uploading icons from local computer /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void uploadClick(object sender, EventArgs e) { try { Utilities.uploadClick(fileSaveLoc, relativeFileSaveLoc, fileUpEx); } catch (ODBC2KMLException ex) { ErrorHandler eh = new ErrorHandler(ex.errorText, errorPanel1); eh.displayError(); return; } fileUpEx = new FileUpload(); // this is to clear the upload box incase someone wants to upload another file }
protected void updateConnection(object sender, CommandEventArgs e) { Button sendBtn = (Button)sender; String args = sendBtn.CommandArgument.ToString(); ConnInfo tempConnInfo = new ConnInfo(); tempConnInfo.setConnectionName(editConnName.Text); tempConnInfo.setDatabaseName(editConnDBName.Text); tempConnInfo.setServerAddress(editConnDBAddr.Text); tempConnInfo.setPortNumber(editConnDBPort.Text); tempConnInfo.setUserName(editConnUser.Text); tempConnInfo.setPassword(editConnPass.Text); tempConnInfo.setDatabaseType((editConnDBType.SelectedIndex)); tempConnInfo.setOracleProtocol(editOracleProtocol.Text); tempConnInfo.setOracleServiceName(editOracleService.Text); tempConnInfo.setOracleSID(editOracleSID.Text); //If the connection information is bad, report the error and cancel the function. This does NOT run against the database. try { if (!tempConnInfo.isValid(Convert.ToInt32(args))) { throw new ODBC2KMLException(""); // Throw any error. The catch is generic. } } catch { String error = "The entered connection information is invalid. Please make sure all fields are filled and that they are in proper format."; if (tempConnInfo.getDatabaseType() == ConnInfo.ORACLE) { error = "The entered connection information is invalid. Please verify that all fields have a value and the value is of proper type." + " Also, make sure that Oracle SID or Oracle Service Name and Oracle Protocol have been entered."; } ErrorHandler eh = new ErrorHandler(error, errorPanel1); this.editConnModalPopUp.Hide(); eh.displayError(); return; } //Create database and test it Database db = new Database(tempConnInfo); //See if you can reach the database. If not, error out and don't save. try { if (tempConnInfo.getDatabaseType() == ConnInfo.MSSQL) { String query = "SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA != 'information_schema' AND TABLE_NAME != 'sysdiagrams'"; db.executeQueryRemote(query); } else if (tempConnInfo.getDatabaseType() == ConnInfo.MYSQL) { String query = "SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA != 'information_schema' && TABLE_SCHEMA != 'mysql'"; db.executeQueryRemote(query); } else if (tempConnInfo.getDatabaseType() == ConnInfo.ORACLE) { String query = "select TABLE_NAME from user_tables"; db.executeQueryRemote(query); } } catch { ErrorHandler eh = new ErrorHandler("The database entered could not be connected to. Please verify the information is correct.", errorPanel1); this.editConnModalPopUp.Hide(); eh.displayError(); return; } db.executeQueryLocal("UPDATE Connection SET name='" + tempConnInfo.getConnectionName() + "', dbName='" + tempConnInfo.getDatabaseName() + "', userName='******', password='******', port='" + tempConnInfo.getPortNumber() + "', address='" + tempConnInfo.getServerAddress() + "', type='" + tempConnInfo.getDatabaseType() + "', protocol='" + tempConnInfo.getOracleProtocol() + "', serviceName='" + tempConnInfo.getOracleServiceName() + "', SID='" + tempConnInfo.getOracleSID() + "' WHERE (ID='" + args + "')"); Connection conn = new Connection(Convert.ToInt16(args)); try { conn.populateFields(); //Force the connection into a safe state, if it is not if (!conn.safeStateConnection()) { String error = "Invalid connection information. Please verify all of your fields are filled in correctly." + "If you are using an oracle connection, please make sure you filled out the oracle specific information."; ErrorHandler eh = new ErrorHandler(error, errorPanel1); this.editConnModalPopUp.Hide(); eh.displayError(); return; } } catch (ODBC2KMLException err) { ErrorHandler eh = new ErrorHandler(err.errorText, errorPanel1); this.editConnModalPopUp.Hide(); eh.displayError(); return; } if (e.CommandName.Equals("saveConn")) { this.editConnModalPopUp.Hide(); Response.Redirect("Main.aspx"); } else { this.editConnModalPopUp.Hide(); Response.Redirect("ConnDetails.aspx?ConnID=" + ((Button)sender).CommandArgument.ToString() + "&locked=false"); } }
protected void Page_Load(object sender, EventArgs e) { fileSaveLoc = Server.MapPath("/icons/"); //Get the DB stuff from here Database db = new Database(); DataTable dt; try { dt = db.executeQueryLocal("SELECT id,name FROM CONNECTION"); } catch (ODBC2KMLException) { ErrorHandler eh = new ErrorHandler("There was an error getting the current connections", errorPanel1); eh.displayError(); return; } int i = 0; if (dt.Rows.Count == 0) { ConnectionsAvailable.Controls.Add(new LiteralControl("<tr><td class=\"tableTD\">No connections currently exist.</td></tr>\n")); } else { foreach (DataRow dr in dt.Rows) { string dbID = dr.ItemArray.ElementAt(0).ToString(); string odbcName = dr.ItemArray.ElementAt(1).ToString(); //Defines buttons ImageButton openConn = new ImageButton(); openConn.CssClass = "openIcon"; openConn.ImageUrl = "graphics/connIcon.gif"; openConn.AlternateText = "Open Connection"; openConn.ToolTip = "Open Connection"; openConn.PostBackUrl = "ConnDetails.aspx?ConnID=" + dbID + "&locked=true"; ImageButton editConn = new ImageButton(); editConn.CssClass = "editIcon"; editConn.ImageUrl = "graphics/connIcon.gif"; editConn.AlternateText = "Edit Connection"; editConn.ToolTip = "Edit Connection"; editConn.Click += new ImageClickEventHandler(confirmEdit); editConn.CommandArgument = dbID; ImageButton deleteConn = new ImageButton(); deleteConn.ID = "dc" + Convert.ToString(i); deleteConn.CssClass = "deleteIcon"; deleteConn.ImageUrl = "graphics/connIcon.gif"; deleteConn.AlternateText = "Delete Connection"; deleteConn.ToolTip = "Delete Connection"; deleteConn.Click += new ImageClickEventHandler(confirmDelete); deleteConn.CommandArgument = dbID; deleteConn.CommandArgument += "#" + odbcName; ImageButton genKML = new ImageButton(); genKML.CssClass = "kmlIcon"; genKML.ImageUrl = "graphics/connIcon.gif"; genKML.AlternateText = "Generate KML File"; genKML.ToolTip = "Generate KML File"; genKML.Click += new ImageClickEventHandler(genKMLFunction); genKML.CommandArgument = dbID; //End button definition if (i % 2.00 == 0) { ConnectionsAvailable.Controls.Add(new LiteralControl("<tr class=\"oddConn\">\n")); } else { ConnectionsAvailable.Controls.Add(new LiteralControl("<tr class=\"evenConn\">\n")); } ConnectionsAvailable.Controls.Add(new LiteralControl("<td>\n")); ConnectionsAvailable.Controls.Add(new LiteralControl("<span id=\"Conn" + dbID + "\">" + odbcName + "</span>\n")); ConnectionsAvailable.Controls.Add(new LiteralControl("<a href=\"#\" title=\"Open Connection\"></a>\n")); ConnectionsAvailable.Controls.Add(new LiteralControl("</td>\n")); ConnectionsAvailable.Controls.Add(new LiteralControl("<td class=\"connIcons\">\n")); ConnectionsAvailable.Controls.Add(new LiteralControl("<table>\n")); ConnectionsAvailable.Controls.Add(new LiteralControl("<tr>\n")); ConnectionsAvailable.Controls.Add(new LiteralControl("<td>\n")); ConnectionsAvailable.Controls.Add(openConn); ConnectionsAvailable.Controls.Add(new LiteralControl("</td>\n")); ConnectionsAvailable.Controls.Add(new LiteralControl("<td>\n")); ConnectionsAvailable.Controls.Add(editConn); ConnectionsAvailable.Controls.Add(new LiteralControl("</td>\n")); ConnectionsAvailable.Controls.Add(new LiteralControl("<td>\n")); ConnectionsAvailable.Controls.Add(deleteConn); ConnectionsAvailable.Controls.Add(new LiteralControl("</td>\n")); ConnectionsAvailable.Controls.Add(new LiteralControl("<td>\n")); ConnectionsAvailable.Controls.Add(genKML); ConnectionsAvailable.Controls.Add(new LiteralControl("</td>\n")); ConnectionsAvailable.Controls.Add(new LiteralControl("</tr>\n")); ConnectionsAvailable.Controls.Add(new LiteralControl("</table>\n")); ConnectionsAvailable.Controls.Add(new LiteralControl("</td>\n")); ConnectionsAvailable.Controls.Add(new LiteralControl("</tr>\n")); i += 1; } } }
protected void genKMLFunction(object sender, EventArgs e) { try { //Generate the KML from the connection ImageButton sendBtn = (ImageButton)sender; String serverPath = "http://" + Request.ServerVariables["SERVER_NAME"] + ":" + Request.ServerVariables["SERVER_PORT"]; string args = sendBtn.CommandArgument.ToString(); KMLGenerator kml = new KMLGenerator(ConnInfo.getConnInfo(Convert.ToInt32(args)).getConnectionName(), serverPath); //Generate the KML string based on the connection id String kmlString = kml.generateKML(int.Parse(args)); Connection conn = new Connection(int.Parse(args)); conn.populateFields(); //Write the KML string to a downloadable file Response.ClearHeaders(); Response.ClearContent(); Response.ContentType = "application/vnd.google-earth.kml+xml kml"; Response.AddHeader("Content-Disposition", "attachment; filename=\"" + (conn.getConnInfo()).getConnectionName() + ".kml"); Response.Write(kmlString); Response.End(); return; } catch (ODBC2KMLException ex) { ErrorHandler err = new ErrorHandler(ex.errorText, errorPanel1); err.displayError(); return; } //Response.Redirect("Main.aspx", true); }
protected void editAndSaveConnectionInformation(object sender, CommandEventArgs e) { Button sendBtn = (Button)sender; String args = sendBtn.CommandArgument.ToString(); Database dbCheck = new Database(); DataTable dtCheck; DataRow dr; try { dtCheck = dbCheck.executeQueryLocal("SELECT name,dbName,userName,password,port,address,type,protocol,serviceName,SID FROM Connection WHERE ID=\'" + args + "\'"); dr = dtCheck.Rows[0]; } catch (ODBC2KMLException) { ErrorHandler eh = new ErrorHandler("There was an error retreiving connection information for connection " + args + ".", errorPanel1); eh.displayError(); return; } ConnInfo tempConnInfo = new ConnInfo(); tempConnInfo.setConnectionName(editConnName.Text); tempConnInfo.setDatabaseName(editConnDBName.Text); tempConnInfo.setServerAddress(editConnDBAddr.Text); tempConnInfo.setPortNumber(editConnDBPort.Text); tempConnInfo.setUserName(editConnUser.Text); tempConnInfo.setPassword(editConnPass.Text); tempConnInfo.setDatabaseType((editConnDBType.SelectedIndex)); tempConnInfo.setOracleProtocol(editOracleProtocol.Text); tempConnInfo.setOracleServiceName(editOracleService.Text); tempConnInfo.setOracleSID(editOracleSID.Text); if (editConnName.Text.Equals(dr["name"].ToString()) && editConnDBName.Text.Equals(dr["dbName"].ToString()) && editConnDBAddr.Text.Equals(dr["address"].ToString()) && editConnDBPort.Text.Equals(dr["port"].ToString()) && editConnUser.Text.Equals(dr["userName"].ToString()) && editConnPass.Text.Equals(dr["password"].ToString()) && editConnDBType.SelectedIndex.ToString().Equals(dr["type"].ToString()) && editOracleProtocol.Text.Equals(dr["protocol"].ToString()) && editOracleService.Text.Equals(dr["serviceName"].ToString()) && editOracleSID.Text.Equals(dr["SID"].ToString())) { updateConnection(sender, e); }else{ this.editConnModalPopUp.Hide(); this.warningModal.Show(); continueUpdate.CommandName = e.CommandName.ToString(); continueUpdate.CommandArgument = args; } }
//Removes an icon assocaiated with a connection and all conditions associated with it protected void removeIconFromConnFunct(object sender, EventArgs e) { ImageButton sendBtn = (ImageButton)sender; String args = sendBtn.CommandArgument.ToString(); Icon icn = new Icon(); Icon iconSaved = new Icon(); icn.setId(args); foreach (Icon icon in iconList) { if (icon.getId().Equals(icn.getId())) { iconList.Remove(icon); break; } } foreach (Icon icon in conn.icons) { if (icon.getId().Equals(icn.getId())) { conn.icons.Remove(icon); break; } } try { foreach (Icon icon in iconListAvailableToRemove) { if (icon.getId().Equals(icn.getId())) { iconSaved.setId(icon.getId()); iconSaved.setLocation(icon.getLocation()); iconListAvailableToRemove.Remove(icon); int j = 0; foreach (Icon icon2 in iconListAvailableToAdd) { if (System.Convert.ToInt32(iconSaved.getId()) < System.Convert.ToInt32(icon2.getId())) { iconListAvailableToAdd.Insert(j, iconSaved); break; } j += 1; if (j == iconListAvailableToAdd.Count) { iconListAvailableToAdd.Add(iconSaved); break; } } this.fillIconLibraryPopup(); this.fillIconLibraryPopupRemove(); this.genIconConditionTable(sender, e); break; } } } catch (ODBC2KMLException ex) { ErrorHandler eh = new ErrorHandler(ex.errorText, errorPanel1); eh.displayError(); return; } sessionSave(); }
protected void cancelModifyOverlayConditionPopup_Click(object sender, EventArgs e) { Button btn = (Button)sender; string overlayId = btn.CommandArgument; Overlay replaceWithThisOverlay = new Overlay(); foreach (Overlay overlay in overlayList) { if (overlay.getId() == overlayId) { replaceWithThisOverlay = overlay; break; } } foreach (Overlay overlay in conn.overlays) { if (overlay.getId() == overlayId) overlay.setConditions(replaceWithThisOverlay.getDeepCopyOfConditions()); } try { genOverlayConditionTable(sender, e); } catch (ODBC2KMLException ex) { ErrorHandler eh = new ErrorHandler(ex.errorText, errorPanel1); eh.displayError(); return; } sessionSave(); }
protected void removeOverlayColorFromConn(object sender, EventArgs e) { ImageButton sendBtn = (ImageButton)sender; String args = sendBtn.CommandArgument.ToString(); Overlay ovr = new Overlay(); ovr.setColor(args); // This should only be for the overlays in conn.overlays, not for overlayList -Micah /*foreach (Overlay over in overlayList) { if (over.getColor().Equals(ovr.getColor())) { overlayList.Remove(over); break; } }*/ foreach (Overlay over in conn.overlays) { if (over.getColor().Equals(ovr.getColor())) { conn.overlays.Remove(over); break; } } try { foreach (Overlay over in overlayListAvailableToRemove) { if (over.getColor().Equals(ovr.getColor())) { overlayListAvailableToRemove.Remove(over); this.fillOverlayPopupRemove(); this.genOverlayConditionTable(sender, e); break; } } } catch (ODBC2KMLException ex) { ErrorHandler eh = new ErrorHandler(ex.errorText, errorPanel1); eh.displayError(); return; } sessionSave(); }
protected void deleteOverlayCondition(object sender, EventArgs e) { Button btn = (Button)sender; int lastSpace = btn.CommandArgument.LastIndexOf(" "); if (lastSpace >= 0) { string overlayId = btn.CommandArgument.Substring(0, lastSpace); string conditionId = btn.CommandArgument.Substring(lastSpace + 1); foreach (Overlay overlay in conn.overlays) { if (overlay.getId() == overlayId) { overlay.removeConditions(conditionId); } } } try { genOverlayConditionTable(sender, e); } catch (ODBC2KMLException ex) { ErrorHandler eh = new ErrorHandler(ex.errorText, errorPanel1); eh.displayError(); return; } sessionSave(); }
/// <summary> /// Method to save the currently selected field as the placemark name field. Sets the placemarkFieldName and /// tableName members of conn.mapping /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void savePlacemarkMapping_click(object sender, EventArgs e) { //if the current mapping doesnt have a table, set it and the placemark field name if (conn.mapping.tableName.Equals("")) { conn.mapping.setPlacemarkFieldName(nameColumnDD.SelectedValue); conn.mapping.setTableName(GridViewTables.SelectedValue.ToString()); //mapSuccess2.Visible = true; } //else if the currently mapped table matches the currently selected table, set the placemark field name else if (conn.mapping.tableName.Equals(GridViewTables.SelectedValue.ToString())) { conn.mapping.setPlacemarkFieldName(nameColumnDD.SelectedValue); //mapSuccess2.Visible = true; } else //else the tables don't match, throw error handler { ErrorHandler eh = new ErrorHandler("Placemark mapping must use the same table as lat/long. If both are currently set, remove the current mapping and try again.", errorPanel1); eh.displayError(); } dFieldPanel.Visible = false; dFieldPanelE.Visible = false; displayCurrentMapping(); sessionSave(); }
protected void genIconConditionTable(object sender, EventArgs e) { IconConditionPanel.Controls.Clear(); Boolean altRows = true; if (conn.icons.Count == 0) // No images set for the condition. Display a simple table stating such. { IconConditionPanel.Controls.Add(new LiteralControl("<tr>\n")); IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"conditionsBox\">\n")); IconConditionPanel.Controls.Add(new LiteralControl("<div class=\"conditionsBoxStyle\">\n")); IconConditionPanel.Controls.Add(new LiteralControl("<table class=\"omainBox5\" cellspacing=\"0\" cellpadding=\"0\">\n")); IconConditionPanel.Controls.Add(new LiteralControl("<tr>\n")); IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD\">\n")); IconConditionPanel.Controls.Add(new LiteralControl("No images are currently set for this connection.\n")); if (Request.QueryString.Get("locked") != "true") IconConditionPanel.Controls.Add(new LiteralControl("<br />Add some using the Add Icons button below.\n")); IconConditionPanel.Controls.Add(new LiteralControl("</td>\n")); IconConditionPanel.Controls.Add(new LiteralControl("</tr>\n")); IconConditionPanel.Controls.Add(new LiteralControl("</table>\n")); IconConditionPanel.Controls.Add(new LiteralControl("</div>\n")); IconConditionPanel.Controls.Add(new LiteralControl("</td>\n")); IconConditionPanel.Controls.Add(new LiteralControl("</tr>\n")); } else { foreach (Icon icon in conn.icons) { IconConditionPanel.Controls.Add(new LiteralControl("<tr>\n")); IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"iconBox\">\n")); IconConditionPanel.Controls.Add(new LiteralControl("<img src=\"" + icon.getLocation() + "\" alt=\"\" border=\"2\" width=\"64\" height=\"64\" />\n")); IconConditionPanel.Controls.Add(new LiteralControl("</td>\n")); IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"conditionsBox\">\n")); IconConditionPanel.Controls.Add(new LiteralControl("<div class=\"conditionsBoxStyle\">\n")); if (icon.getConditions().Count != 0) // conditions exist; display them. { IconConditionPanel.Controls.Add(new LiteralControl("<table class=\"omainBox7\" cellspacing=\"0\" cellpadding=\"0\">\n")); IconConditionPanel.Controls.Add(new LiteralControl("<tr class=\"tableTRTitle\">\n")); IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\">\n")); IconConditionPanel.Controls.Add(new LiteralControl("Lower Bound\n")); IconConditionPanel.Controls.Add(new LiteralControl("</td>\n")); IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\">\n")); IconConditionPanel.Controls.Add(new LiteralControl("Lower Operator\n")); IconConditionPanel.Controls.Add(new LiteralControl("</td>\n")); IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\">\n")); IconConditionPanel.Controls.Add(new LiteralControl("Table\n")); IconConditionPanel.Controls.Add(new LiteralControl("</td>\n")); IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\">\n")); IconConditionPanel.Controls.Add(new LiteralControl("Field\n")); IconConditionPanel.Controls.Add(new LiteralControl("</td>\n")); IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\">\n")); IconConditionPanel.Controls.Add(new LiteralControl("Upper Operator\n")); IconConditionPanel.Controls.Add(new LiteralControl("</td>\n")); IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\">\n")); IconConditionPanel.Controls.Add(new LiteralControl("Upper Bound\n")); IconConditionPanel.Controls.Add(new LiteralControl("</td>\n")); IconConditionPanel.Controls.Add(new LiteralControl("</tr>\n")); foreach (Condition condition in icon.getConditions()) { if (altRows == true) { IconConditionPanel.Controls.Add(new LiteralControl("<tr>\n")); if (condition.getLowerOperator() != ODBC2KML.Condition.NONE.ToString()) { IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\">\n")); IconConditionPanel.Controls.Add(new LiteralControl(condition.getLowerBound() + "\n")); IconConditionPanel.Controls.Add(new LiteralControl("</td>\n")); IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\">\n")); IconConditionPanel.Controls.Add(new LiteralControl(condition.getLowerOperator() + "\n")); IconConditionPanel.Controls.Add(new LiteralControl("</td>\n")); } else { IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\"> </td><td class=\"tableTD2\"> </td>\n")); } IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\">\n")); IconConditionPanel.Controls.Add(new LiteralControl(condition.getTableName() + "\n")); IconConditionPanel.Controls.Add(new LiteralControl("</td>\n")); IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\">\n")); IconConditionPanel.Controls.Add(new LiteralControl(condition.getFieldName() + "\n")); IconConditionPanel.Controls.Add(new LiteralControl("</td>\n")); if (condition.getUpperOperator() != ODBC2KML.Condition.NONE.ToString()) { IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\">\n")); IconConditionPanel.Controls.Add(new LiteralControl(condition.getUpperOperator() + "\n")); IconConditionPanel.Controls.Add(new LiteralControl("</td>\n")); IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\">\n")); IconConditionPanel.Controls.Add(new LiteralControl(condition.getUpperBound() + "\n")); IconConditionPanel.Controls.Add(new LiteralControl("</td>\n")); } else { IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\"> </td><td class=\"tableTD2\"> </td>\n")); } IconConditionPanel.Controls.Add(new LiteralControl("</tr>\n")); } else { IconConditionPanel.Controls.Add(new LiteralControl("<tr>\n")); if (condition.getLowerOperator() != ODBC2KML.Condition.NONE.ToString()) { IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD3\">\n")); IconConditionPanel.Controls.Add(new LiteralControl(condition.getLowerBound() + "\n")); IconConditionPanel.Controls.Add(new LiteralControl("</td>\n")); IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD3\">\n")); IconConditionPanel.Controls.Add(new LiteralControl(condition.getLowerOperator() + "\n")); IconConditionPanel.Controls.Add(new LiteralControl("</td>\n")); } else { IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD3\"> </td><td class=\"tableTD3\"> </td>\n")); } IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD3\">\n")); IconConditionPanel.Controls.Add(new LiteralControl(condition.getTableName() + "\n")); IconConditionPanel.Controls.Add(new LiteralControl("</td>\n")); IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD3\">\n")); IconConditionPanel.Controls.Add(new LiteralControl(condition.getFieldName() + "\n")); IconConditionPanel.Controls.Add(new LiteralControl("</td>\n")); if (condition.getUpperOperator() != ODBC2KML.Condition.NONE.ToString()) { IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD3\">\n")); IconConditionPanel.Controls.Add(new LiteralControl(condition.getUpperOperator() + "\n")); IconConditionPanel.Controls.Add(new LiteralControl("</td>\n")); IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD3\">\n")); IconConditionPanel.Controls.Add(new LiteralControl(condition.getUpperBound() + "\n")); IconConditionPanel.Controls.Add(new LiteralControl("</td>\n")); } else { IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD3\"> </td><td class=\"tableTD3\"> </td>\n")); } IconConditionPanel.Controls.Add(new LiteralControl("</tr>\n")); } altRows = !altRows; } IconConditionPanel.Controls.Add(new LiteralControl("</table>\n")); } else // no conditions set. display table stating such. { IconConditionPanel.Controls.Add(new LiteralControl("<table class=\"omainBox5\" cellspacing=\"0\" cellpadding=\"0\">\n")); IconConditionPanel.Controls.Add(new LiteralControl("<tr>\n")); IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD\">\n")); IconConditionPanel.Controls.Add(new LiteralControl("No conditions are currently set.\n")); if (Request.QueryString.Get("locked") != "true") IconConditionPanel.Controls.Add(new LiteralControl("<br />Add some using the button to the right.\n")); IconConditionPanel.Controls.Add(new LiteralControl("</td>\n")); IconConditionPanel.Controls.Add(new LiteralControl("</tr>\n")); IconConditionPanel.Controls.Add(new LiteralControl("</table>\n")); } IconConditionPanel.Controls.Add(new LiteralControl("</div>\n")); IconConditionPanel.Controls.Add(new LiteralControl("</td>\n")); IconConditionPanel.Controls.Add(new LiteralControl("<td class=\"buttonClass\">\n")); Button modifyButton = new Button(); if (Request.QueryString.Get("locked") != "true") { modifyButton.Text = "Modify Condition"; modifyButton.CssClass = "button"; modifyButton.Width = 135; modifyButton.ID = "modifyIconCondition_" + icon.getId(); IconConditionPanel.Controls.Add(modifyButton); } Panel modifyIconConditionPopupPanel = new Panel(); //modifyIconConditionPopupPanel.ScrollBars = ScrollBars.Auto; modifyIconConditionPopupPanel.ID = "modifyIconConditionPopupPanel" + icon.getId(); modifyIconConditionPopupPanel.Style["display"] = "none"; modifyIconConditionPopupPanel.CssClass = "boxPopupStyle"; UpdatePanel modifyIconConditionInsidePopupPanel = new UpdatePanel(); modifyIconConditionInsidePopupPanel.ID = "modifyIconConditionInsidePopupPanel" + icon.getId().ToString(); modifyIconConditionInsidePopupPanel.UpdateMode = UpdatePanelUpdateMode.Conditional; try { genIconConditionPopup(modifyIconConditionInsidePopupPanel, icon.getId()); } catch (ODBC2KMLException ex) { ErrorHandler eh = new ErrorHandler(ex.errorText, errorPanel1); eh.displayError(); return; } modifyIconConditionPopupPanel.Controls.Add(modifyIconConditionInsidePopupPanel); modifyIconConditionPopupPanel.Controls.Add(new LiteralControl("<div align=\"right\">")); Button submitModifyConditionPopup = new Button(); submitModifyConditionPopup.ID = "submitModifyCondition" + icon.getId(); submitModifyConditionPopup.Text = "Submit"; submitModifyConditionPopup.CssClass = "button"; submitModifyConditionPopup.Click += new EventHandler(submitModifyIconConditionPopup_Click);; submitModifyConditionPopup.CommandArgument = icon.getId(); modifyIconConditionPopupPanel.Controls.Add(submitModifyConditionPopup); modifyIconConditionPopupPanel.Controls.Add(new LiteralControl(" ")); Button cancelModifyConditionPopup = new Button(); cancelModifyConditionPopup.ID = "cancelIconModifyCondition" + icon.getId(); cancelModifyConditionPopup.Text = "Cancel"; cancelModifyConditionPopup.CssClass = "button"; cancelModifyConditionPopup.Click += new EventHandler(cancelModifyIconConditionPopup_Click); cancelModifyConditionPopup.CommandArgument = icon.getId(); modifyIconConditionPopupPanel.Controls.Add(cancelModifyConditionPopup); modifyIconConditionPopupPanel.Controls.Add(new LiteralControl(" ")); modifyIconConditionPopupPanel.Controls.Add(new LiteralControl("</div>")); if (Request.QueryString.Get("locked") != "true") { AjaxControlToolkit.ModalPopupExtender mpe = new AjaxControlToolkit.ModalPopupExtender(); mpe.ID = "MPE_" + icon.getId(); mpe.BackgroundCssClass = "modalBackground"; mpe.DropShadow = true; mpe.PopupControlID = modifyIconConditionPopupPanel.ID.ToString(); mpe.TargetControlID = modifyButton.ID.ToString(); IconConditionPanel.Controls.Add(mpe); IconConditionPanel.Controls.Add(modifyIconConditionPopupPanel); } IconConditionPanel.Controls.Add(new LiteralControl("</td>\n")); IconConditionPanel.Controls.Add(new LiteralControl("</tr>\n")); DropDownList addTableName = (DropDownList)Page.FindControl("addIconTable" + icon.getId()); if ((addTableName != null) && (addTableName.Items.Count != 0)) { //addTableName.SelectedIndex = 0; addTableName_SelectedIndexChanged(addTableName, new EventArgs()); } } // end of foreach icon in tempIconlist } }
protected void submitModifyOverlayConditionPopup_Click(object sender, EventArgs e) { overlayList = new ArrayList(); foreach (Overlay overlay in conn.overlays) // conn.overlays is the overlays/conditions that were in the connection when we generated this table { overlayList.Add(new Overlay(overlay)); // Make the list that Cancel falls back to look just like the current list. } try { genOverlayConditionTable(sender, e); } catch (ODBC2KMLException ex) { ErrorHandler eh = new ErrorHandler(ex.errorText, errorPanel1); eh.displayError(); return; } sessionSave(); }
protected void genOverlayConditionTable(object sender, EventArgs e) { OverlayConditionPanel.Controls.Clear(); if (conn.overlays.Count == 0) // No images set for the condition. Display a simple table stating such. { overlayDirections.Controls.Clear(); OverlayConditionPanel.Controls.Add(new LiteralControl("<tr>\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"conditionsBox\">\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("<div class=\"conditionsBoxStyle\">\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("<table class=\"omainBox5\" cellspacing=\"0\" cellpadding=\"0\">\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("<tr>\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD\">\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("No overlays are currently set for this connection.</span>\n")); if (Request.QueryString.Get("locked") != "true") OverlayConditionPanel.Controls.Add(new LiteralControl("<br />Add some using the Add Overlay button below.\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</td>\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</tr>\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</table>\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</div>\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</td>\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</tr>\n")); } else { foreach (Overlay overlay in conn.overlays) { OverlayConditionPanel.Controls.Add(new LiteralControl("<tr>\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"iconBox\">\n")); if (Request.QueryString.Get("locked") != "true") { // Generate Text Box to hold the color TextBox tx = new TextBox(); tx.ReadOnly = true; tx.CssClass = "overlayBox"; tx.ToolTip = "Click to change the overlay color"; tx.ID = "overlay" + overlay.getId() + "color"; tx.Style["background-color"] = "#" + overlay.getColor(); tx.Style["border"] = "2px solid black"; tx.Style["cursor"] = "pointer"; // Generate the ColorPicker for each overlay ColorPicker colorPicker = new ColorPicker(); colorPicker.InitialColor = "#" + overlay.getColor(); colorPicker.ColorPostBack += overlayColorChanged; colorPicker.TargetId = tx.ClientID; colorPicker.ID = "overlayColorPicker" + overlay.getId(); colorPicker.PickButton = false; colorPicker.TargetProperty = "style.backgroundColor"; colorPicker.AutoPostBack = true; colorPicker.Controls.Add(tx); OverlayConditionPanel.Controls.Add(colorPicker); } else { // Generate Text Box to hold the color TextBox tx = new TextBox(); tx.Enabled = false; tx.CssClass = "overlayBox"; tx.ToolTip = "Click to change the overlay color"; tx.ID = "overlay" + overlay.getId() + "color"; tx.Style["background-color"] = "#" + overlay.getColor(); tx.Style["border"] = "2px solid black"; OverlayConditionPanel.Controls.Add(tx); } OverlayConditionPanel.Controls.Add(new LiteralControl("</td>\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"conditionsBox\">\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("<div class=\"conditionsBoxStyle\">\n")); if (overlay.getConditions().Count != 0) // conditions exist; display them. { OverlayConditionPanel.Controls.Add(new LiteralControl("<table class=\"omainBox7\" cellspacing=\"0\" cellpadding=\"0\">\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("<tr class=\"tableTRTitle\">\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\">\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("Lower Bound\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</td>\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\">\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("Lower Operator\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</td>\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\">\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("Table\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</td>\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\">\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("Field\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</td>\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\">\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("Upper Operator\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</td>\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\">\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("Upper Bound\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</td>\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</tr>\n")); Boolean altRows = true; foreach (Condition condition in overlay.getConditions()) { if (altRows == true) { OverlayConditionPanel.Controls.Add(new LiteralControl("<tr>\n")); if (condition.getLowerOperator() != ODBC2KML.Condition.NONE.ToString()) { OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\">\n")); OverlayConditionPanel.Controls.Add(new LiteralControl(condition.getLowerBound() + "\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</td>\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\">\n")); OverlayConditionPanel.Controls.Add(new LiteralControl(condition.getLowerOperator() + "\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</td>\n")); } else { OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\"> </td><td class=\"tableTD2\"> </td>\n")); } OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\">\n")); OverlayConditionPanel.Controls.Add(new LiteralControl(condition.getTableName() + "\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</td>\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\">\n")); OverlayConditionPanel.Controls.Add(new LiteralControl(condition.getFieldName() + "\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</td>\n")); if (condition.getUpperOperator() != ODBC2KML.Condition.NONE.ToString()) { OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\">\n")); OverlayConditionPanel.Controls.Add(new LiteralControl(condition.getUpperOperator() + "\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</td>\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\">\n")); OverlayConditionPanel.Controls.Add(new LiteralControl(condition.getUpperBound() + "\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</td>\n")); } else { OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD2\"> </td><td class=\"tableTD2\"> </td>\n")); } OverlayConditionPanel.Controls.Add(new LiteralControl("</tr>\n")); } else { OverlayConditionPanel.Controls.Add(new LiteralControl("<tr>\n")); if (condition.getLowerOperator() != ODBC2KML.Condition.NONE.ToString()) { OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD3\">\n")); OverlayConditionPanel.Controls.Add(new LiteralControl(condition.getLowerBound() + "\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</td>\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD3\">\n")); OverlayConditionPanel.Controls.Add(new LiteralControl(condition.getLowerOperator() + "\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</td>\n")); } else { OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD3\"> </td><td class=\"tableTD3\"> </td>\n")); } OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD3\">\n")); OverlayConditionPanel.Controls.Add(new LiteralControl(condition.getTableName() + "\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</td>\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD3\">\n")); OverlayConditionPanel.Controls.Add(new LiteralControl(condition.getFieldName() + "\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</td>\n")); if (condition.getUpperOperator() != ODBC2KML.Condition.NONE.ToString()) { OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD3\">\n")); OverlayConditionPanel.Controls.Add(new LiteralControl(condition.getUpperOperator() + "\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</td>\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD3\">\n")); OverlayConditionPanel.Controls.Add(new LiteralControl(condition.getUpperBound() + "\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</td>\n")); } else { OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD3\"> </td><td class=\"tableTD3\"> </td>\n")); } OverlayConditionPanel.Controls.Add(new LiteralControl("</tr>\n")); } altRows = !altRows; } OverlayConditionPanel.Controls.Add(new LiteralControl("</table>\n")); } else // no conditions set. display table stating such. { OverlayConditionPanel.Controls.Add(new LiteralControl("<table class=\"omainBox5\" cellspacing=\"0\" cellpadding=\"0\">\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("<tr>\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"tableTD\">\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("No conditions are currently set.\n")); if (Request.QueryString.Get("locked") != "true") OverlayConditionPanel.Controls.Add(new LiteralControl("<br />Add some using the button to the right.\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</td>\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</tr>\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</table>\n")); } OverlayConditionPanel.Controls.Add(new LiteralControl("</div>\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</td>\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("<td class=\"buttonClass\">\n")); Button modifyButton = new Button(); if (Request.QueryString.Get("locked") != "true") { modifyButton.Text = "Modify Condition"; modifyButton.CssClass = "button"; modifyButton.Width = 135; modifyButton.ID = "modifyOverlayCondition_" + overlay.getId(); OverlayConditionPanel.Controls.Add(modifyButton); } Panel modifyOverlayConditionPopupPanel = new Panel(); modifyOverlayConditionPopupPanel.ScrollBars = ScrollBars.Auto; modifyOverlayConditionPopupPanel.ID = "modifyOverlayConditionPopupPanel" + overlay.getId(); modifyOverlayConditionPopupPanel.Style["display"] = "none"; modifyOverlayConditionPopupPanel.CssClass = "boxPopupStyle"; UpdatePanel modifyOverlayConditionInsidePopupPanel = new UpdatePanel(); modifyOverlayConditionInsidePopupPanel.ID = "modifyOverlayConditionInsidePopupPanel" + overlay.getId(); modifyOverlayConditionInsidePopupPanel.UpdateMode = UpdatePanelUpdateMode.Conditional; try { genOverlayConditionPopup(modifyOverlayConditionInsidePopupPanel, overlay.getId()); } catch (ODBC2KMLException ex) { ErrorHandler eh = new ErrorHandler(ex.errorText, errorPanel1); eh.displayError(); return; } modifyOverlayConditionPopupPanel.Controls.Add(modifyOverlayConditionInsidePopupPanel); modifyOverlayConditionPopupPanel.Controls.Add(new LiteralControl("<div align=\"right\">")); Button submitModifyConditionPopup = new Button(); submitModifyConditionPopup.ID = "submitOverlayModifyCondition" + overlay.getId(); submitModifyConditionPopup.Text = "Submit"; submitModifyConditionPopup.CssClass = "button"; submitModifyConditionPopup.Click += new EventHandler(submitModifyOverlayConditionPopup_Click); modifyOverlayConditionPopupPanel.Controls.Add(submitModifyConditionPopup); modifyOverlayConditionPopupPanel.Controls.Add(new LiteralControl(" ")); Button cancelModifyConditionPopup = new Button(); cancelModifyConditionPopup.ID = "cancelOverlayModifyCondition" + overlay.getId(); cancelModifyConditionPopup.Text = "Cancel"; cancelModifyConditionPopup.CssClass = "button"; cancelModifyConditionPopup.Click += new EventHandler(cancelModifyOverlayConditionPopup_Click); cancelModifyConditionPopup.CommandArgument = overlay.getId(); modifyOverlayConditionPopupPanel.Controls.Add(cancelModifyConditionPopup); modifyOverlayConditionPopupPanel.Controls.Add(new LiteralControl(" ")); modifyOverlayConditionPopupPanel.Controls.Add(new LiteralControl("</div>")); if (Request.QueryString.Get("locked") != "true") { AjaxControlToolkit.ModalPopupExtender mpe = new AjaxControlToolkit.ModalPopupExtender(); mpe.ID = "MPE_OVERLAY_" + overlay.getId(); mpe.BackgroundCssClass = "modalBackground"; mpe.DropShadow = true; mpe.PopupControlID = modifyOverlayConditionPopupPanel.ID.ToString(); mpe.TargetControlID = modifyButton.ID.ToString(); OverlayConditionPanel.Controls.Add(mpe); OverlayConditionPanel.Controls.Add(modifyOverlayConditionPopupPanel); } OverlayConditionPanel.Controls.Add(new LiteralControl("</td>\n")); OverlayConditionPanel.Controls.Add(new LiteralControl("</tr>\n")); DropDownList addTableName = (DropDownList)Page.FindControl("addOverlayTable" + overlay.getId()); if ((addTableName != null) && (addTableName.Items.Count != 0)) { //addTableName.SelectedIndex = 0; addTableName_SelectedIndexChanged(addTableName, new EventArgs()); } } // end of foreach overlay in tempOverlaylist } }
/// <summary> /// used for uploading icons from local computer /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void uploadClick(object sender, EventArgs e) { String pathToAdd = ""; try { pathToAdd = Utilities.uploadClick(fileSaveLoc, relativeFileSaveLoc, fileUpEx); } catch (ODBC2KMLException ex) { ErrorHandler eh = new ErrorHandler(ex.errorText, errorPanel1); eh.displayError(); return; } fileUpEx = new FileUpload(); // this is to clear the upload box incase someone wants to upload another file if (!pathToAdd.Equals("")) { try { addSingleIconToLib(pathToAdd); } catch (ODBC2KMLException) { ErrorHandler eh = new ErrorHandler("There was an error adding the icon to the library", errorPanel1); eh.displayError(); } } sessionSave(); }
protected void googleEarthPopup(object sender, EventArgs args) { //Set any variables that might have been saved conn.description.setDesc(descriptionBox.Text); conn.connInfo.setConnectionName(odbcName.Text); conn.connInfo.setDatabaseName(odbcDName.Text); conn.connInfo.setDatabaseType(odbcDBType.SelectedIndex); conn.connInfo.setOracleProtocol(odbcProtocol.Text); conn.connInfo.setOracleServiceName(odbcSName.Text); conn.connInfo.setOracleSID(odbcSID.Text); conn.connInfo.setPassword(odbcPass.Text); conn.connInfo.setPortNumber(odbcPN.Text); conn.connInfo.setServerAddress(odbcAdd.Text); conn.connInfo.setUserName(odbcUser.Text); //Generate the server path and pass the connection object and path to preview String serverPath = "http://" + Request.ServerVariables["SERVER_NAME"] + ":" + Request.ServerVariables["SERVER_PORT"]; Session["serverPath"] = serverPath; Session["Connection"] = conn; try { //check if connection is valid before generating KML if (!conn.connInfo.isValid(conn.connID)) { throw new ODBC2KMLException("Invalid connection info. Resolve this before previewing KML."); } else if (!conn.mapping.isValid(conn.connInfo) || conn.mapping.format == 0) { throw new ODBC2KMLException("Invalid mapping. Resolve this before previewing KML."); } else if (!conn.description.isValid(conn.connInfo, conn.mapping)) { throw new ODBC2KMLException("Invalid description. Resolve this before previewing KML."); } else { //Save the session sessionSave(); ClientScript.RegisterStartupScript(this.GetType(), "Preview KML", "previewKMLPopup();", true); } } catch (ODBC2KMLException ex) { ErrorHandler eh = new ErrorHandler(ex.errorText, errorPanel1); eh.displayError(); } }
/// <summary> /// PostBack function for the overlay colorPicker /// </summary> /// <param name="sender">Object that called postback</param> /// <param name="e">Color and Previous color for that colorPicker</param> private void overlayColorChanged(Object sender, ColorPostBackEventArgs e) { ColorPicker colorPicker = (ColorPicker)sender; string overlayID = colorPicker.TargetId; overlayID = overlayID.Replace("overlay", ""); overlayID = overlayID.Replace("color", ""); // Check to see if the overlay color already exists in the connection foreach (Overlay over in conn.overlays) { if (e.Color == ("#" + over.color) && over.id != int.Parse(overlayID)) { ErrorHandler eh = new ErrorHandler("Overlay color already exists! Please choose another.", errorPanel1); eh.displayError(); return; } } // if it is a unique color, save the change foreach (Overlay over in conn.overlays) { if(over.id == int.Parse(overlayID)) { over.color = e.Color.Replace("#",""); break; } } //Regenerate the overlay condition table genOverlayConditionTable(null, null); // Recreate overlay popup panel to display the new overlay colors. fillOverlayLibraryLists(); fillOverlayPopupRemove(); sessionSave(); }
protected void modifyConnection(object sender, EventArgs e) { //Set the current description and conninfo right before save conn.description.setDesc(descriptionBox.Text); conn.connInfo.setConnectionName(odbcName.Text); conn.connInfo.setDatabaseName(odbcDName.Text); conn.connInfo.setDatabaseType(odbcDBType.SelectedIndex); conn.connInfo.setOracleProtocol(odbcProtocol.Text); conn.connInfo.setOracleServiceName(odbcSName.Text); conn.connInfo.setOracleSID(odbcSID.Text); conn.connInfo.setPassword(odbcPass.Text); conn.connInfo.setPortNumber(odbcPN.Text); conn.connInfo.setServerAddress(odbcAdd.Text); conn.connInfo.setUserName(odbcUser.Text); //If format is 0, set mapping to null for save connection validation if (conn.mapping.getFormat() == -1) { conn.mapping.setFormat(0) ; } try { int returnVal = conn.saveConn(); //Check the return code switch(returnVal) { case 0: break; case 1: throw new ODBC2KMLException("The connection information is invalid."); case 2: throw new ODBC2KMLException("The mapping information is invalid."); case 3: throw new ODBC2KMLException("The connection could not be converted to a safe state."); case 4: throw new ODBC2KMLException("The description is not a valid description."); case 5: throw new ODBC2KMLException("Save connection did not operate properly."); } } catch (ODBC2KMLException err) { ErrorHandler eh = new ErrorHandler("There was an error saving the connection. " + err.errorText, errorPanel1); eh.displayError(); return; } sessionSave(); Response.Redirect("ConnDetails.aspx?ConnID=" + conn.connID + "&locked=false"); }
//Adds an icon to a connection from the library protected void addIconFromLibraryToConn(object sender, EventArgs e) { ImageButton sendBtn = (ImageButton)sender; String args = sendBtn.CommandArgument.ToString(); // IconLibrary.ID in database try { foreach (Icon icon in iconListAvailableToAdd) // icon is pointer to icon with the ID in the Icon Library's ArrayList { if (icon.getId().Equals(args)) { iconListAvailableToAdd.Remove(icon); iconListAvailableToRemove.Add(new Icon(icon)); iconList.Add(new Icon(icon)); conn.icons.Add(new Icon(icon)); this.fillIconLibraryPopup(); this.fillIconLibraryPopupRemove(); this.genIconConditionTable(sender, e); break; } } } catch (ODBC2KMLException ex) { ErrorHandler eh = new ErrorHandler(ex.errorText, errorPanel1); eh.displayError(); return; } sessionSave(); }
protected void Page_Load(object sender, EventArgs e) { try { fileSaveLoc = Server.MapPath("/icons/"); dFieldPanel.Visible = false; dLinkPanel.Visible = false; dFieldPanelE.Visible = false; if (!IsPostBack) { //No ID, redirect to main if (Request.QueryString.Get("ConnID") == null) { Response.Redirect("Main.aspx"); return; } else { //Grab and parse connection ID bool isValidConnId = int.TryParse(Request.QueryString.Get("ConnID"),out conn.connID); if (!isValidConnId) { Response.Redirect("Main.aspx"); } try { conn.populateFields(); } catch (ODBC2KMLException) { ErrorHandler eh = new ErrorHandler("There was an error retreiving connection information", errorPanel1); eh.displayError(); return; } string portNum = HttpContext.Current.Request.ServerVariables["SERVER_PORT"]; string labelText = ""; //labelText = "http://polytech-deploy/KMLGenWebSVC.asmx/getKML?connID=" + conn.connID; labelText = "http://" + Dns.GetHostName() +"/KMLGenWebSVC.asmx/getKML?connID=" + conn.connID; //labelText = "http://" + Dns.GetHostAddresses(Dns.GetHostName())[0].ToString() +"/KMLGenWebSVC.asmx/getKML?connID=" + conn.connID; GELink.Text = labelText; iLinkURLBox.Text = "http://"; ColorAddText.Style["background-color"] = HiddenValue.Value = "#FFFFFF"; curOverlayCount = -1; odbcAdd.Text = conn.connInfo.getServerAddress(); odbcDName.Text = conn.connInfo.getDatabaseName(); odbcName.Text = conn.connInfo.getConnectionName(); odbcPass.Attributes.Add("value", conn.connInfo.getPassword()); odbcPN.Text = conn.connInfo.getPortNumber(); odbcUser.Text = conn.connInfo.getUserName(); odbcProtocol.Text = conn.connInfo.getOracleProtocol(); odbcSName.Text = conn.connInfo.getOracleServiceName(); odbcSID.Text = conn.connInfo.getOracleSID(); updateSqlDataSources(); if (!alreadySetupLists) { try { fillIconLibraryLists(); fillOverlayLibraryLists(); fillIconListFromDatabase(); alreadySetupLists = true; } catch (ODBC2KMLException) { ErrorHandler eh = new ErrorHandler("There was an error populating the icon and overlay lists", errorPanel1); eh.displayError(); return; } } //editor insertion string connectionString_editor = ""; string providerName_editor = ""; //Set Table Datasources & fill in gridview/boxes if (conn.connInfo.getDatabaseType() == ConnInfo.MSSQL) { connectionString_editor = "Data Source=" + conn.connInfo.getServerAddress() + ";Initial Catalog=" + conn.connInfo.getDatabaseName() + ";Persist Security Info=True;User Id=" + conn.connInfo.getUserName() + ";Password="******"SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA != 'information_schema' AND TABLE_NAME != 'sysdiagrams'"; } else if (conn.connInfo.getDatabaseType() == ConnInfo.MYSQL) { connectionString_editor = "server=" + conn.connInfo.getServerAddress() + ";User Id=" + conn.connInfo.getUserName() + ";password="******";Persist Security Info=True;database=" + conn.connInfo.getDatabaseName(); providerName_editor = "MySql.Data.MySqlClient"; SQLTables_Mapping.ConnectionString = connectionString_editor; SQLTables_Mapping.ProviderName = providerName_editor; SQLTables_Mapping.SelectCommand = "SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA != 'information_schema' && TABLE_SCHEMA != 'mysql'"; } else if (conn.connInfo.getDatabaseType() == ConnInfo.ORACLE) { connectionString_editor = "Data Source=" + conn.connInfo.getServerAddress() + ";Persist Security Info=True;User ID=" + conn.connInfo.getUserName() + ";Password="******";Unicode=True"; providerName_editor = "System.Data.OracleClient"; oracleTables_Mapping.ConnectionString = connectionString_editor; oracleTables_Mapping.ProviderName = providerName_editor; oracleTables_Mapping.SelectCommand = "select TABLE_NAME from user_tables"; } else { throw new ODBC2KMLException("Unknown database type."); } updateTables(conn.connInfo.getDatabaseType()); descriptionBox.Text = conn.description.getDesc(); //show the current mapping box displayCurrentMapping(); sessionSave(); } } sessionLoad(); ColorPicker1.InitialColor = "-111111"; fillIconLibraryPopup(); fillIconLibraryPopupRemove(); fillOverlayPopupRemove(); genIconConditionTable(sender, e); genOverlayConditionTable(sender, e); sessionSave(); if (Request.QueryString.Get("locked") == "true") { LockPage(); } } catch (ODBC2KMLException ex) { ErrorHandler eh = new ErrorHandler(ex.errorText, errorPanel1); eh.displayError(); return; } }
protected void cancelModifyIconConditionPopup_Click(object sender, EventArgs e) { Button btn = (Button)sender; string iconId = btn.CommandArgument; Icon replaceWithThisIcon = new Icon(); foreach (Icon icon in iconList) { if (icon.getId() == iconId) { replaceWithThisIcon = icon; break; } } foreach (Icon icon in conn.icons) { if (icon.getId() == iconId) icon.setConditions(replaceWithThisIcon.getDeepCopyOfConditions()); } try { genIconConditionTable(sender, e); } catch (ODBC2KMLException ex) { ErrorHandler eh = new ErrorHandler(ex.errorText, errorPanel1); eh.displayError(); return; } sessionSave(); }
protected void createConnection(object sender, EventArgs e) { String ConnName = odbcNameE.Text.ToString(); String ConnDBName = odbcDNameE.Text.ToString(); String ConnDBAddress = odbcDatabaseE.Text.ToString(); String ConnPortNum = odbcPNE.Text.ToString(); String ConnUser = odbcUserE.Text.ToString(); String ConnPWD = odbcPWE.Text.ToString(); String ConnDBType = odbcDBType.SelectedValue.ToString(); String oracleProtocol = odbcProtocol.Text.ToString(); String oracleSName = odbcSName.Text.ToString(); String oracleSID = odbcSID.Text.ToString(); String DBTypeNum; odbcDBType.SelectedIndex = 0; if (ConnDBType.Equals("MySQL")){ DBTypeNum = "0"; }else if(ConnDBType.Equals("MSSQL")){ DBTypeNum = "1"; }else{ DBTypeNum = "2"; } if (DBTypeNum.Equals("2")){ if (oracleSName.Equals("") && oracleSID.Equals("")){ ErrorHandler eh = new ErrorHandler("Either Service Name or Service ID must be completed!", errorPanel1); this.NewConn1ModalPopUp.Hide(); eh.displayError(); return; } if (oracleProtocol.Equals("")) { ErrorHandler eh = new ErrorHandler("Oracle protocol must be provided!", errorPanel1); this.NewConn1ModalPopUp.Hide(); eh.displayError(); return; } } Database dbCheck = new Database(); DataTable dtCheck = null; try { dtCheck = dbCheck.executeQueryLocal("SELECT name FROM Connection WHERE name=\'" + ConnName + "\'"); } catch (ODBC2KMLException) { ErrorHandler eh = new ErrorHandler("There was an error getting the Connection's name", errorPanel1); this.NewConn1ModalPopUp.Hide(); eh.displayError(); return; } if (dtCheck.Rows.Count > 0) { ErrorHandler eh = new ErrorHandler("Connection name already in use!", errorPanel1); this.NewConn1ModalPopUp.Hide(); eh.displayError(); return; } if (ConnName.Equals("")) { ErrorHandler eh = new ErrorHandler("The connection must have a unique name!", errorPanel1); this.NewConn1ModalPopUp.Hide(); eh.displayError(); return; }else if (ConnDBName.Equals("")) { ErrorHandler eh = new ErrorHandler("The connection must have a database name!", errorPanel1); this.NewConn1ModalPopUp.Hide(); eh.displayError(); return; }else if (ConnDBAddress.Equals("")) { ErrorHandler eh = new ErrorHandler("The connection must have a database address!", errorPanel1); this.NewConn1ModalPopUp.Hide(); eh.displayError(); return; }else if (ConnPortNum.Equals("")) { ErrorHandler eh = new ErrorHandler("The connection must have a port number!", errorPanel1); this.NewConn1ModalPopUp.Hide(); eh.displayError(); return; }else if(ConnUser.Equals("")) { ErrorHandler eh = new ErrorHandler("The connection must have a user name!", errorPanel1); this.NewConn1ModalPopUp.Hide(); eh.displayError(); return; }else if (ConnPWD.Equals("")) { ErrorHandler eh = new ErrorHandler("The connection must have a password!", errorPanel1); this.NewConn1ModalPopUp.Hide(); eh.displayError(); return; } ConnInfo testConn = new ConnInfo(); testConn.setConnectionName(ConnName); testConn.setDatabaseName(ConnDBName); testConn.setDatabaseType((int)Convert.ToInt32(DBTypeNum)); testConn.setPassword(ConnPWD); testConn.setPortNumber(ConnPortNum); testConn.setServerAddress(ConnDBAddress); testConn.setUserName(ConnUser); if (DBTypeNum.Equals("2")) { testConn.setOracleProtocol(oracleProtocol); testConn.setOracleServiceName(oracleSName); testConn.setOracleSID(oracleSID); } try { Database dbTest = new Database(testConn); DataTable dtTest; if (DBTypeNum.Equals("0")) { dtTest = dbTest.executeQueryRemote("SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES"); } else if (DBTypeNum.Equals("1")) { dtTest = dbTest.executeQueryRemote("SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES"); } else { dtTest = dbTest.executeQueryRemote("SELECT TABLE_NAME FROM user_tables"); } } catch (ODBC2KMLException ex) { ErrorHandler eh = new ErrorHandler(ex.errorText, errorPanel1); this.NewConn1ModalPopUp.Hide(); eh.displayError(); return; } //Call Create DB with the DB Function Database db = new Database(); DataTable dt; try { if (DBTypeNum.Equals("2")) { db.executeQueryLocal("INSERT INTO Connection (name, dbName, userName, password, port, address, type, protocol, serviceName, SID) VALUES ('" + ConnName + "', '" + ConnDBName + "', '" + ConnUser + "', '" + ConnPWD + "', '" + ConnPortNum + "', '" + ConnDBAddress + "', '" + DBTypeNum + "', '" + oracleProtocol + "', '" + oracleSName + "', '" + oracleSID + "')"); } else { db.executeQueryLocal("INSERT INTO Connection (name, dbName, userName, password, port, address, type, protocol, serviceName, SID) VALUES ('" + ConnName + "', '" + ConnDBName + "', '" + ConnUser + "', '" + ConnPWD + "', '" + ConnPortNum + "', '" + ConnDBAddress + "', '" + DBTypeNum + "', '', '', '')"); } } catch (ODBC2KMLException) { ErrorHandler eh = new ErrorHandler("There was an error saving the connection to the database.", errorPanel1); this.NewConn1ModalPopUp.Hide(); eh.displayError(); return; } this.NewConn1ModalPopUp.Hide(); //Jump to the Modify page try { dt = db.executeQueryLocal("SELECT ID FROM CONNECTION WHERE name='" + ConnName + "' AND dbName='" + ConnDBName + "' AND userName='******' AND port='" + ConnPortNum + "' AND address='" + ConnDBAddress + "' AND type='" + DBTypeNum + "'"); } catch (ODBC2KMLException) { ErrorHandler eh = new ErrorHandler("There was an error retreiving the new connection's connID.", errorPanel1); this.NewConn1ModalPopUp.Hide(); eh.displayError(); return; } foreach (DataRow dr in dt.Rows) { string connID = dr["ID"].ToString(); Response.Redirect("ConnDetails.aspx?ConnID=" + connID + "&locked=false"); } }