protected void btnWebService_Click(object sender, EventArgs e) { string host = "yb19-avr01-01.test.pncbank.com"; ClearViewWebServices ws = new ClearViewWebServices(); ws.Url = "http://localhost:64919/ClearViewWebServices.asmx"; string result = ws.GetAvamarGrid(host); if (!string.IsNullOrEmpty(result) && result.TrimStart().StartsWith("<")) { XmlDocument doc = new XmlDocument(); doc.LoadXml(result); XmlNodeList xnList = doc.SelectNodes("/CLIOutput/Data/Row"); foreach (XmlNode xn in xnList) { //if (xn["Attribute"].InnerText == "Server utilization") //{ // Response.Write(xn["Value"].InnerText + "<br/>"); // break; //} Response.Write(xn["Attribute"].InnerText + " = " + xn["Value"].InnerText + "<br/>"); } } else { Response.Write(result + "<br/>"); } }
protected void btnActivated_Click(object sender, EventArgs e) { string grid = "yb19-avr01-01.test.pncbank.com"; ClearViewWebServices oWebService = new ClearViewWebServices(); oWebService.Url = "http://localhost:64919/ClearViewWebServices.asmx"; AvamarRegistration oAvamarRegistration = new AvamarRegistration(0, dsn); AvamarReturnType activated = oAvamarRegistration.API(oWebService.GetAvamarClient(grid, "/BRII", "WCIRU301A.pncbank.com")); if (activated.Error == false) { foreach (XmlNode node in activated.Nodes) { if (node["Attribute"].InnerText == "Activated") { Response.Write(node["Value"].InnerText + "<br/>"); } } } else { Response.Write(activated.Message + "<br/>"); } }
protected void btnRecom_Click(object sender, EventArgs e) { Variables oVariable = new Variables((int)CurrentEnvironment.PNCNT_DEV); string client = "WDCLV015A.pncbank.com"; string strError = ""; Avamar oAvamar = new Avamar(0, dsn); AvamarRegistration oAvamarRegistration = new AvamarRegistration(0, dsn); ClearViewWebServices oWebService = new ClearViewWebServices(); System.Net.NetworkCredential oCredentialsDNS = new System.Net.NetworkCredential(oVariable.ADUser(), oVariable.ADPassword(), oVariable.Domain()); oWebService.Credentials = oCredentialsDNS; oWebService.Url = oVariable.WebServiceURL(); // First, query for groups. DataSet dsGroups = oAvamar.GetDecoms(client); if (dsGroups.Tables[0].Rows.Count > 0) { string grid = dsGroups.Tables[0].Rows[0]["grid"].ToString(); string domain = dsGroups.Tables[0].Rows[0]["domain"].ToString(); // Second, add the groups. foreach (DataRow drGroup in dsGroups.Tables[0].Rows) { if (String.IsNullOrEmpty(strError) == false) { break; } AvamarReturnType restore = oAvamarRegistration.API(oWebService.AddAvamarGroup(grid, domain, client, drGroup["group"].ToString())); if (restore.Error == false) { } else { strError = restore.Message; } } // Third, remove the /Decom group AvamarReturnType decom = oAvamarRegistration.API(oWebService.DeleteAvamarGroup(grid, domain, client, oAvamar.DecomGroup)); if (decom.Error == false) { // Fourth, recommission the saved decom groups. oAvamar.UpdateDecom(client); } else { strError = decom.Message; } } }
private void LoadServer(DataRow dr) { int intRequest = Int32.Parse(dr["requestid"].ToString()); int intItem = Int32.Parse(dr["itemid"].ToString()); int intNumber = Int32.Parse(dr["number"].ToString()); string strNameCurrent = dr["name_current"].ToString(); string strIPCurrent = dr["ip_current"].ToString(); string strAliasCurrent = dr["alias_current"].ToString(); string strNameNew = dr["name_new"].ToString(); string strIPNew = dr["ip_new"].ToString(); string strAliasNew = dr["alias_new"].ToString(); string strReason = dr["reason"].ToString(); txtSearchName.Text = strNameCurrent; txtSearchIP.Text = strIPCurrent; txtSearchAlias.Text = strAliasCurrent; if (strReason != "") { // Show Confirmation Page lblName.Text = strNameCurrent; lblIP.Text = strIPCurrent; lblAlias.Text = strAliasCurrent; panConfirm.Visible = true; strConfirm = oDNS.GetDNSBody(intRequest, intItem, intNumber, true, intEnvironment); btnNext.Attributes.Add("onclick", "return ValidateCheck('" + chkAgree.ClientID + "','Please check the box stating that you agree to the disclaimer notice')" + " && ProcessButton(this)" + ";"); btnDiscard.Attributes.Add("onclick", "return confirm('WARNING: Starting over will discard all the changes you have made.\\n\\nAre you sure you want to continue?') && ProcessButton(this);"); btnContinue.Visible = false; btnConfirm.Visible = false; } else { panSearch.Visible = true; btnNext.Visible = false; // Get Record from DNS System.Net.NetworkCredential oCredentials = new System.Net.NetworkCredential(oVariable.ADUser(), oVariable.ADPassword(), oVariable.Domain()); ClearViewWebServices oWebService = new ClearViewWebServices(); oWebService.Timeout = Int32.Parse(ConfigurationManager.AppSettings["WS_TIMEOUT"]); oWebService.Credentials = oCredentials; oWebService.Url = oVariable.WebServiceURL(); Settings oSetting = new Settings(0, dsn); bool boolDNS_QIP = oSetting.IsDNS_QIP(); bool boolDNS_Bluecat = oSetting.IsDNS_Bluecat(); // Get Values if (strNameCurrent != "") { if (boolDNS_QIP == true) { strIPCurrent = oWebService.SearchDNSforPNC("", strNameCurrent, false, true); if (strIPCurrent.StartsWith("***") == false) { strNameCurrent = oWebService.SearchDNSforPNC(strIPCurrent, "", false, true); strAliasCurrent = oWebService.SearchDNSforPNC(strIPCurrent, "", true, true); if (strAliasCurrent.StartsWith("***") == true) { strAliasCurrent = ""; } } else { strNameCurrent = ""; strIPCurrent = ""; } } if (boolDNS_Bluecat == true) { strIPCurrent = oWebService.SearchBluecatDNS("", strNameCurrent); if (strIPCurrent.StartsWith("***") == false) { strNameCurrent = oWebService.SearchBluecatDNS(strIPCurrent, ""); strAliasCurrent = ""; } else { strNameCurrent = ""; strIPCurrent = ""; } } } else if (strIPCurrent != "") { if (boolDNS_QIP == true) { strNameCurrent = oWebService.SearchDNSforPNC(strIPCurrent, "", false, true); if (strNameCurrent.StartsWith("***") == false) { strAliasCurrent = oWebService.SearchDNSforPNC(strIPCurrent, "", true, true); if (strAliasCurrent.StartsWith("***") == true) { strAliasCurrent = ""; } } else { strNameCurrent = ""; strIPCurrent = ""; } } if (boolDNS_Bluecat == true) { strNameCurrent = oWebService.SearchBluecatDNS(strIPCurrent, ""); if (strNameCurrent.StartsWith("***") == false) { strAliasCurrent = ""; } else { strNameCurrent = ""; strIPCurrent = ""; } } } else if (strAliasCurrent != "") { if (boolDNS_QIP == true) { strIPCurrent = oWebService.SearchDNSforPNC("", strAliasCurrent, true, true); if (strIPCurrent.StartsWith("***") == false) { strNameCurrent = oWebService.SearchDNSforPNC(strIPCurrent, "", false, true); strAliasCurrent = oWebService.SearchDNSforPNC(strIPCurrent, "", true, true); if (strAliasCurrent.StartsWith("***") == true) { strAliasCurrent = ""; } } else { strAliasCurrent = ""; strIPCurrent = ""; } } if (boolDNS_Bluecat == true) { strAliasCurrent = ""; strIPCurrent = ""; } } if (strNameCurrent.Contains(".") == true) { strDomain = strNameCurrent.Substring(strNameCurrent.IndexOf(".")); strNameCurrent = strNameCurrent.Substring(0, strNameCurrent.IndexOf(".")); } if (strNameCurrent != "" && strIPCurrent != "") { DataSet ds = oServer.GetDNS(strNameCurrent); if (ds.Tables[0].Rows.Count == 1) { bool boolPermit = false; int intServer = Int32.Parse(ds.Tables[0].Rows[0]["id"].ToString()); int intUser = (ds.Tables[0].Rows[0]["userid"].ToString() == "" ? 0 : Int32.Parse(ds.Tables[0].Rows[0]["userid"].ToString())); int intOwner = (ds.Tables[0].Rows[0]["appcontact"].ToString() == "" ? 0 : Int32.Parse(ds.Tables[0].Rows[0]["appcontact"].ToString())); int intPrimary = (ds.Tables[0].Rows[0]["admin1"].ToString() == "" ? 0 : Int32.Parse(ds.Tables[0].Rows[0]["admin1"].ToString())); int intSecondary = (ds.Tables[0].Rows[0]["admin2"].ToString() == "" ? 0 : Int32.Parse(ds.Tables[0].Rows[0]["admin2"].ToString())); int intRequestor = (ds.Tables[0].Rows[0]["requestor"].ToString() == "" ? 0 : Int32.Parse(ds.Tables[0].Rows[0]["requestor"].ToString())); int intClass = (ds.Tables[0].Rows[0]["classid"].ToString() == "" ? 0 : Int32.Parse(ds.Tables[0].Rows[0]["classid"].ToString())); int intProd = (intClass > 0 ? (oClass.IsProd(intClass) ? 1 : 0) : -1); panShow.Visible = true; panAlias.Visible = boolDNS_QIP; lblName.Text = strNameCurrent; lblIP.Text = strIPCurrent; lblAlias.Text = strAliasCurrent; lblDomain.Text = strDomain; // Load Values txtName.Text = strNameCurrent; char[] strIPSplit = { '.' }; string[] strIP = strIPCurrent.Split(strIPSplit); txtIP1.Text = strIP[0]; txtIP2.Text = strIP[1]; txtIP3.Text = strIP[2]; txtIP4.Text = strIP[3]; char[] strAliasSplit = { ';' }; string[] strAlias = strAliasCurrent.Split(strAliasSplit); for (int ii = 0; ii < strAlias.Length; ii++) { if (strAlias[ii].Trim() != "") { string strAliasName = strAlias[ii].Trim(); while (strAliasName.Contains(strDomain) == true) { strAliasName = strAliasName.Replace(strDomain, ""); } lstAlias.Items.Add(new ListItem(strAliasName, strAliasName)); } } // Check Permission and either show read only, or permit edit if (intProfile == intOwner || intProfile == intPrimary || intProfile == intSecondary || intProfile == intRequestor) { boolPermit = true; } if (oApplication.Get(intApplication, "dns") == "1" || oUser.IsAdmin(intProfile) || intProfile == intUser) { boolPermit = true; } if (boolPermit == true) { btnContinue.Visible = false; txtSearchName.Enabled = false; txtSearchIP.Enabled = false; txtSearchAlias.Enabled = false; chkName.Attributes.Add("onclick", "CheckChange3('" + chkName.ClientID + "','" + chkIP.ClientID + "','" + chkAlias.ClientID + "','" + txtName.ClientID + "');"); chkIP.Attributes.Add("onclick", "CheckChange3('" + chkIP.ClientID + "','" + chkName.ClientID + "','" + chkAlias.ClientID + "','" + txtIP1.ClientID + "','" + txtIP2.ClientID + "','" + txtIP3.ClientID + "','" + txtIP4.ClientID + "');"); chkAlias.Attributes.Add("onclick", "CheckChange3('" + chkAlias.ClientID + "','" + chkName.ClientID + "','" + chkIP.ClientID + "','" + lstAlias.ClientID + "','" + btnAdd.ClientID + "','" + btnEdit.ClientID + "','" + btnRemove.ClientID + "','" + txtAlias.ClientID + "');"); btnAdd.Attributes.Add("onclick", "return AddDNS('" + lstAlias.ClientID + "','" + txtAlias.ClientID + "','" + hdnAlias.ClientID + "');"); btnEdit.Attributes.Add("onclick", "return EditDNS('" + lstAlias.ClientID + "','" + txtAlias.ClientID + "','" + hdnAlias.ClientID + "');"); btnRemove.Attributes.Add("onclick", "return RemoveDNS('" + lstAlias.ClientID + "','" + hdnAlias.ClientID + "');"); string strChange = ""; if (intProd != 0 || oServer.Get(intServer, "infrastructure") == "1") { panChange.Visible = true; strChange = " && ValidateTextLength('" + txtChange.ClientID + "', 'Please enter a valid change control number\\n\\n - Must start with either \"CHG\" or \"PTM\"\\n - Must be exactly 10 characters in length', 10, ['CHG','PTM'], ['CHG0000000','PTM0000000','CHG1111111','PTM1111111','CHG9999999','PTM9999999','CHGXXXXXXX','PTMXXXXXXX'])"; } btnConfirm.Attributes.Add("onclick", "return EnsureDNSCheck('" + chkName.ClientID + "','" + chkIP.ClientID + "','" + chkAlias.ClientID + "')" + " && (document.getElementById('" + chkName.ClientID + "').checked == false || (document.getElementById('" + chkName.ClientID + "').checked == true" + " && ValidateText('" + txtName.ClientID + "','Please enter a valid name')" + "))" + " && (document.getElementById('" + chkIP.ClientID + "').checked == false || (document.getElementById('" + chkIP.ClientID + "').checked == true" + " && ValidateNumberBetween('" + txtIP1.ClientID + "',1,255,'Please enter a valid IP Address')" + " && ValidateNumberBetween('" + txtIP2.ClientID + "',1,255,'Please enter a valid IP Address')" + " && ValidateNumberBetween('" + txtIP3.ClientID + "',1,255,'Please enter a valid IP Address')" + " && ValidateNumberBetween('" + txtIP4.ClientID + "',1,255,'Please enter a valid IP Address')" + "))" + strChange + " && ValidateText('" + txtReason.ClientID + "','Please enter a reason')" + " && ProcessButton(this)" + ";"); } else { btnConfirm.Visible = false; panAccess.Visible = true; chkName.Enabled = false; chkIP.Enabled = false; chkAlias.Enabled = false; btnAdd.Enabled = false; btnEdit.Enabled = false; btnRemove.Enabled = false; if (intUser > 0) { strContacts += "<tr><td>Device Owner:</td><td>" + oUser.GetFullName(intUser) + " (" + oUser.GetName(intUser) + ")" + "</td></tr>"; } if (intOwner > 0) { strContacts += "<tr><td>Departmental Manager:</td><td>" + oUser.GetFullName(intOwner) + " (" + oUser.GetName(intOwner) + ")" + "</td></tr>"; } if (intPrimary > 0) { strContacts += "<tr><td>Application Technical Lead:</td><td>" + oUser.GetFullName(intPrimary) + " (" + oUser.GetName(intPrimary) + ")" + "</td></tr>"; } if (intSecondary > 0) { strContacts += "<tr><td>Administrative Contact:</td><td>" + oUser.GetFullName(intSecondary) + " (" + oUser.GetName(intSecondary) + ")" + "</td></tr>"; } if (intRequestor > 0) { strContacts += "<tr><td>Design Initiated By:</td><td>" + oUser.GetFullName(intRequestor) + " (" + oUser.GetName(intRequestor) + ")" + "</td></tr>"; } DataSet dsDecoms = oApplication.GetDecoms(); if (dsDecoms.Tables[0].Rows.Count > 0) { strContacts += "<tr><td colspan=\"2\">Alternatively, you can contact a resource from one of the following departments:</td></tr>"; foreach (DataRow drDecom in dsDecoms.Tables[0].Rows) { strContacts += "<tr><td></td><td>" + drDecom["name"].ToString() + "</td></tr>"; } } } } else { btnReset.Enabled = false; btnConfirm.Visible = false; panExist.Visible = true; lblExist.Text = "This device does not exist in the database. Please try again..."; } } else { btnReset.Enabled = false; btnConfirm.Visible = false; panExist.Visible = true; lblExist.Text = "This device does not exist in DNS. Please try again..."; } } }
protected void btnGo_Click(object sender, EventArgs e) { string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\temp\\destroys.xls;Extended Properties=Excel 8.0;"; System.Net.NetworkCredential oCredentials = new System.Net.NetworkCredential(oVariable.ADUser(), oVariable.ADPassword(), oVariable.Domain()); ClearViewWebServices oServiceNow = new ClearViewWebServices(); oServiceNow.Timeout = Timeout.Infinite; oServiceNow.Credentials = oCredentials; oServiceNow.Url = oVariable.WebServiceURL(); System.Net.NetworkCredential oCredentialsSN = new System.Net.NetworkCredential(oVariable.ServiceNowUsername(), oVariable.ServiceNowPassword()); string url = oVariable.ServiceNowHost(); string user = oVariable.ServiceNowUsername(); string pass = oVariable.ServiceNowPassword(); OleDbDataAdapter myCommand1 = new OleDbDataAdapter("SELECT * FROM [Sheet1$]", strConn); DataSet ds1 = new DataSet(); myCommand1.Fill(ds1, "ExcelInfo"); foreach (DataRow dr in ds1.Tables[0].Rows) { if (dr[0].ToString().Trim() == "") { break; } string name = dr[0].ToString().Trim(); Response.Write(name + "..."); if (name.Contains("-DR") == false) { // Ping server name Ping ping = new Ping(); string response = ""; try { PingReply reply = ping.Send(name); response = reply.Status.ToString().ToUpper(); } catch { } Response.Write((response == "SUCCESS" ? "** ONLINE **" : "offline") + "..."); // Check Service Now string result = oServiceNow.GetServiceNowServer(url, user, pass, name); if (String.IsNullOrEmpty(result) == false) { int _state = result.IndexOf("<u_desired_operational_state"); if (_state > -1) { string state = result.Substring(_state); state = state.Substring(state.IndexOf(">") + 1); state = state.Substring(0, state.IndexOf("<")); if (state == "-2") { Response.Write("decommissioned" + "..."); } else { Response.Write("** " + state + " **..."); } } else { Response.Write("** missing desired operational state **..."); } int _status = result.IndexOf("<install_status"); if (_status > -1) { string status = result.Substring(_status); status = status.Substring(status.IndexOf(">") + 1); status = status.Substring(0, status.IndexOf("<")); if (status == "7") { Response.Write("retired" + "..."); } else { Response.Write("** " + status + " **..."); } } else { Response.Write("** missing install status **..."); } } else { Response.Write("** NOT THERE **" + "..."); } } else { Response.Write("dr"); } Response.Write("<br/>"); } }
public void Backups(int EnvironmentID) { // Setup Classes Servers oServer = new Servers(0, dsn); AvamarRegistration oAvamarRegistration = new AvamarRegistration(0, dsn); Log oLog = new Log(0, dsn); Variables oVariable = new Variables(EnvironmentID); // Setup Webservice for querying via SSH System.Net.NetworkCredential oCredentialsDNS = new System.Net.NetworkCredential(oVariable.ADUser(), oVariable.ADPassword(), oVariable.Domain()); ClearViewWebServices oWebService = new ClearViewWebServices(); oWebService.Url = oVariable.WebServiceURL(); DataSet dsBackups = oServer.GetAvamarBackups(); if (dsBackups.Tables[0].Rows.Count > 0) { oLog.AddEvent("", "", "Get avamar backups (" + dsBackups.Tables[0].Rows.Count.ToString() + ")", LoggingType.Debug); foreach (DataRow drBackup in dsBackups.Tables[0].Rows) { ClearResults(); int intServer = Int32.Parse(drBackup["id"].ToString()); DateTime datCreated = DateTime.Parse(drBackup["created"].ToString()); int intAnswer = Int32.Parse(drBackup["answerid"].ToString()); string strName = drBackup["servername"].ToString(); string strGrid = drBackup["grid"].ToString(); string strDomain = drBackup["domain"].ToString(); string strGroup = drBackup["group"].ToString(); oLog.AddEvent(intAnswer, strName, "", "Starting automated Avamar backup validation", LoggingType.Debug); string strError = ""; // Initiate backup for client AvamarReturnType backup = oAvamarRegistration.API(oWebService.GetAvamarBackup(strGrid, strDomain, strName)); if (backup.Error == false) { oLog.AddEvent(intAnswer, strName, "", "There are " + backup.Nodes.Count.ToString() + " backup(s).", LoggingType.Information); if (backup.Nodes.Count > 0) { oLog.AddEvent(intAnswer, strName, "", "Backup has been validated", LoggingType.Information); oServer.UpdateAvamarBackupCompleted(intServer, backup.Nodes[0].InnerXml, DateTime.Now.ToString(), 0); } else { // Check to see if a certain amount of time has passed and if so, throw error. TimeSpan span = DateTime.Now.Subtract(datCreated); if (span.TotalMinutes > 90) { // It's been an hour and a half. Throw error. strError = "The backup has still not completed after 90 minutes on grid " + strGrid; } } } else { strError = backup.Message + " (" + backup.Code + ")"; } if (strError != "") { oLog.AddEvent(intAnswer, strName, "", strError, LoggingType.Error); oServer.UpdateAvamarBackupCompleted(intServer, strError, DateTime.Now.ToString(), 1); oServer.AddError(0, 0, 0, intServer, 906, strError); } } } }
protected void btnSubmit_Click(Object Sender, EventArgs e) { int intUser = 0; string strAssets = ""; if (Int32.TryParse(Request.Form["hdnAJAXValue"], out intUser) == true && intUser > 0) { foreach (RepeaterItem ri in rptDevices.Items) { CheckBox chkDevice = (CheckBox)ri.FindControl("chkDevice"); Label lblName = (Label)ri.FindControl("lblName"); Label lblSerial = (Label)ri.FindControl("lblSerial"); Label lblStatus = (Label)ri.FindControl("lblStatus"); bool boolComplete = lblStatus.Text.ToUpper().Contains("COMPLETED"); oLog.AddEvent(lblName.Text, lblSerial.Text, "RECOMMISSION: Started by " + oUser.GetFullNameWithLanID(intProfile), LoggingType.Information); if (chkDevice.Checked == true) { if (chkDevice.ToolTip[0].ToString() == "S") { int intServer = Int32.Parse(chkDevice.ToolTip.Substring(1)); DataSet dsServers = oServer.GetAssetsServer(intServer); foreach (DataRow drServer in dsServers.Tables[0].Rows) { int intAsset = Int32.Parse(drServer["assetid"].ToString()); string strName = lblName.Text; if (drServer["dr"].ToString() == "1") { strName += "-DR"; } // Update Recommission Reason oAsset.UpdateDecommissionRecommission(intAsset, intUser, txtReason.Text); // Set status to InUse oAsset.AddStatus(intAsset, strName, (int)AssetStatus.InUse, intUser, DateTime.Now); // Clear cv_servers_assets DECOM field oServer.UpdateAssetDecom(intServer, intAsset, ""); if (boolComplete == true) { DataSet dsOrders = oAssetOrder.GetByAsset(intAsset, false); foreach (DataRow drOrders in dsOrders.Tables[0].Rows) { int intOrder = Int32.Parse(drOrders["orderid"].ToString()); // Cancel Resource Requests int intResource = 0; if (Int32.TryParse(drOrders["resourceid"].ToString(), out intResource) == true) { oResourceRequest.UpdateStatusOverallWorkflow(intResource, (int)ResourceRequestStatus.Cancelled); } // Delete Order oAssetOrder.DeleteOrder(intOrder); // Delete Asset Order Asset Selection oAssetOrder.DeleteAssetOrderAssetSelection(intOrder, intAsset); } // Set NewOrderID = 0 oAsset.updateNewOrderId(0, intAsset); } // Set strAssets to assets recommissioned (for status message on postback) if (strAssets != "") { strAssets += strSplit[0].ToString(); } strAssets += intAsset.ToString(); } // Remove previous decom records if (boolComplete == true) { bool boolPNC = (oServer.Get(intServer, "pnc") == "1"); // Update Server Name Record int intName = Int32.Parse(oServer.Get(intServer, "nameid")); if (boolPNC) { oServerName.UpdateFactory(intName, 0); } else { oServerName.Update(intName, 0); } } // Clear cv_servers DECOM field oServer.UpdateDecommissioned(intServer, ""); // Update IP Address(es) availability DataSet dsIP = oServer.GetIP(intServer, 0, 0, 0, 0); foreach (DataRow drIP in dsIP.Tables[0].Rows) { int intIP = Int32.Parse(drIP["ipaddressid"].ToString()); oIPAddresses.UpdateAvailable(intIP, 0); } // Restore Avamar Group(s) if (chkAvamar.Checked) { Avamar oAvamar = new Avamar(0, dsn); AvamarRegistration oAvamarRegistration = new AvamarRegistration(0, dsn); ClearViewWebServices oWebService = new ClearViewWebServices(); System.Net.NetworkCredential oCredentialsDNS = new System.Net.NetworkCredential(oVariable.ADUser(), oVariable.ADPassword(), oVariable.Domain()); oWebService.Credentials = oCredentialsDNS; oWebService.Url = oVariable.WebServiceURL(); string strError = ""; // First, query for groups. DataSet dsGroups = oAvamar.GetDecoms(lblName.Text); if (dsGroups.Tables[0].Rows.Count > 0) { string client = dsGroups.Tables[0].Rows[0]["client"].ToString(); string grid = dsGroups.Tables[0].Rows[0]["grid"].ToString(); string domain = dsGroups.Tables[0].Rows[0]["domain"].ToString(); // Second, add the groups. foreach (DataRow drGroup in dsGroups.Tables[0].Rows) { if (String.IsNullOrEmpty(strError) == false) { break; } AvamarReturnType restore = oAvamarRegistration.API(oWebService.AddAvamarGroup(grid, domain, client, drGroup["group"].ToString())); if (restore.Error == true) { strError = restore.Message; } } // Third, remove the /Decom group AvamarReturnType decom = oAvamarRegistration.API(oWebService.DeleteAvamarGroup(grid, domain, client, oAvamar.DecomGroup)); if (decom.Error == false) { // Fourth, recommission the saved decom groups. oAvamar.UpdateDecom(client); } else { strError = decom.Message; } } if (String.IsNullOrEmpty(strError)) { oLog.AddEvent(lblName.Text, lblSerial.Text, "RECOMMISSION: Avamar completed.", LoggingType.Information); } else { oLog.AddEvent(lblName.Text, lblSerial.Text, "RECOMMISSION: Avamar encountered an error = " + strError, LoggingType.Error); } } // Add log entry oLog.AddEvent(lblName.Text, lblSerial.Text, "Asset Recommissioned (Client = " + oUser.GetFullName(intUser) + ")", LoggingType.Information); } else { // Manual recommission - just delete the resource request to get out of the person's queue int intResource = Int32.Parse(chkDevice.ToolTip.Substring(1)); oResourceRequest.UpdateStatusOverall(intResource, -2); } } } } Response.Redirect(Request.Path + "?assets=" + strAssets); }
protected void Page_Load(object sender, EventArgs e) { RequestItems oRequestItem = new RequestItems(intProfile, dsn); RequestFields oRequestField = new RequestFields(intProfile, dsn); ServiceRequests oServiceRequest = new ServiceRequests(intProfile, dsn); Services oService = new Services(intProfile, dsn); int intRequest = Int32.Parse(Request.QueryString["rid"]); string strStatus = oServiceRequest.Get(intRequest, "checkout"); DataSet dsItems = oRequestItem.GetForms(intRequest); int intItem = 0; int intService = 0; int intNumber = 0; if (dsItems.Tables[0].Rows.Count > 0) { bool boolBreak = false; foreach (DataRow drItem in dsItems.Tables[0].Rows) { if (boolBreak == true) { break; } if (drItem["done"].ToString() == "0") { intItem = Int32.Parse(drItem["itemid"].ToString()); intService = Int32.Parse(drItem["serviceid"].ToString()); intNumber = Int32.Parse(drItem["number"].ToString()); boolBreak = true; } if (intItem > 0 && (strStatus == "1" || strStatus == "2")) { bool boolSuccess = true; string strResult = oService.GetName(intService) + " Completed"; string strError = oService.GetName(intService) + " Error"; // ********* BEGIN PROCESSING ************** DNS oDNS = new DNS(intProfile, dsn); strResult = ""; strError = ""; if (intEnvironment < 3) { intEnvironment = 3; } Variables oVariable = new Variables(intEnvironment); Requests oRequest = new Requests(intProfile, dsn); Users oUser = new Users(intProfile, dsn); DataSet ds = oDNS.GetDNS(intRequest, intItem, intNumber); Domains oDomain = new Domains(intProfile, dsn); if (ds.Tables[0].Rows.Count > 0) { string strAction = ds.Tables[0].Rows[0]["action"].ToString(); string strNameCurrent = ds.Tables[0].Rows[0]["name_current"].ToString(); string strIPCurrent = ds.Tables[0].Rows[0]["ip_current"].ToString(); string strAliasCurrent = ds.Tables[0].Rows[0]["alias_current"].ToString(); string strNameNew = ds.Tables[0].Rows[0]["name_new"].ToString(); string strIPNew = ds.Tables[0].Rows[0]["ip_new"].ToString(); string strAliasNew = ds.Tables[0].Rows[0]["alias_new"].ToString(); string strDomain = ds.Tables[0].Rows[0]["domain"].ToString(); string strObject = ds.Tables[0].Rows[0]["value"].ToString(); int intUser = oRequest.GetUser(intRequest); // Connect to DNS to process the request System.Net.NetworkCredential oCredentials = new System.Net.NetworkCredential(oVariable.ADUser(), oVariable.ADPassword(), oVariable.Domain()); ClearViewWebServices oWebService = new ClearViewWebServices(); oWebService.Timeout = Int32.Parse(ConfigurationManager.AppSettings["WS_TIMEOUT"]); oWebService.Credentials = oCredentials; oWebService.Url = oVariable.WebServiceURL(); Settings oSetting = new Settings(0, dsn); bool boolDNS_QIP = oSetting.IsDNS_QIP(); bool boolDNS_Bluecat = oSetting.IsDNS_Bluecat(); string strWebServiceResult = ""; switch (strAction) { case "CREATE": if (strIPNew != "" && strNameNew != "") { if (boolDNS_QIP == true) { strWebServiceResult = oWebService.CreateDNSforPNC(strIPNew, strNameNew, strObject, strAliasNew, oVariable.DNS_Domain(), oVariable.DNS_NameService(), oVariable.DNS_DynamicDNSUpdate(), intProfile, 0, true); if (strWebServiceResult == "SUCCESS") { strResult += "<p>The following record was successfully created in QIP DNS...</p><p>" + oDNS.GetDNSBody(intRequest, intItem, intNumber, true, intEnvironment) + "</p>"; } else if (strWebServiceResult.StartsWith("***DUPLICATE") == true) { strResult += "<p>The following record was already created in QIP DNS...</p><p>" + oDNS.GetDNSBody(intRequest, intItem, intNumber, true, intEnvironment) + "</p>"; } else if (strWebServiceResult.StartsWith("***CONFLICT") == true) { strError += "<p>A CONFLICT occurred when attempting to create the following record in QIP DNS...</p><p>" + oDNS.GetDNSBody(intRequest, intItem, intNumber, true, intEnvironment) + "</p><p>Conflict Message:</p><p>" + strWebServiceResult + "</p>"; } else { strError += "<p>An ERROR occurred when attempting to create the following record in QIP DNS...</p><p>" + oDNS.GetDNSBody(intRequest, intItem, intNumber, true, intEnvironment) + "</p><p>Error Message:</p><p>" + strWebServiceResult + "</p>"; } } if (boolDNS_Bluecat == true) { strWebServiceResult = oWebService.CreateBluecatDNS(strIPNew, strNameNew, strNameNew, ""); if (strWebServiceResult == "SUCCESS") { strResult += "<p>The following record was successfully created in BlueCat DNS...</p><p>" + oDNS.GetDNSBody(intRequest, intItem, intNumber, true, intEnvironment) + "</p>"; } else if (strWebServiceResult.StartsWith("***DUPLICATE") == true) { strResult += "<p>The following record was already created in BlueCat DNS...</p><p>" + oDNS.GetDNSBody(intRequest, intItem, intNumber, true, intEnvironment) + "</p>"; } else if (strWebServiceResult.StartsWith("***CONFLICT") == true) { strError += "<p>A CONFLICT occurred when attempting to create the following record in BlueCat DNS...</p><p>" + oDNS.GetDNSBody(intRequest, intItem, intNumber, true, intEnvironment) + "</p><p>Conflict Message:</p><p>" + strWebServiceResult + "</p>"; } else { strError += "<p>An ERROR occurred when attempting to create the following record in BlueCat DNS...</p><p>" + oDNS.GetDNSBody(intRequest, intItem, intNumber, true, intEnvironment) + "</p><p>Error Message:</p><p>" + strWebServiceResult + "</p>"; } } } else { strError = "<p>Invalid Parameters...</p>"; } break; case "UPDATE": string strIP = (strIPNew != "" ? strIPNew : strIPCurrent); string strName = (strNameNew != "" ? strNameNew : strNameCurrent); string strAlias = (((strAliasCurrent != "" && strAliasNew == "") || strAliasNew != "") ? strAliasNew : strAliasCurrent); if (strObject == "") { strObject = "Server"; } if (boolDNS_QIP == true) { strWebServiceResult = oWebService.UpdateDNSforPNC(strIP, strName, strObject, strAlias, oVariable.DNS_Domain(), oVariable.DNS_NameService(), oVariable.DNS_DynamicDNSUpdate(), intProfile, 0, true); if (strWebServiceResult == "SUCCESS") { strResult += "<p>The following record was successfully updated in QIP DNS...</p><p>" + oDNS.GetDNSBody(intRequest, intItem, intNumber, true, intEnvironment) + "</p>"; } else if (strWebServiceResult.StartsWith("***DUPLICATE") == true) { strResult += "<p>The following record was already updated in QIP DNS...</p><p>" + oDNS.GetDNSBody(intRequest, intItem, intNumber, true, intEnvironment) + "</p>"; } else if (strWebServiceResult.StartsWith("***CONFLICT") == true) { strError += "<p>A CONFLICT occurred when attempting to update the following record in QIP DNS...</p><p>" + oDNS.GetDNSBody(intRequest, intItem, intNumber, true, intEnvironment) + "</p><p>Conflict Message:</p><p>" + strWebServiceResult + "</p>"; } else { strError += "<p>An ERROR occurred when attempting to update the following record in QIP DNS...</p><p>" + oDNS.GetDNSBody(intRequest, intItem, intNumber, true, intEnvironment) + "</p><p>Error Message:</p><p>" + strWebServiceResult + "</p>"; } } if (boolDNS_Bluecat == true) { strWebServiceResult = oWebService.UpdateBluecatDNS(strIP, strName, strNameNew, ""); if (strWebServiceResult == "SUCCESS") { strResult += "<p>The following record was successfully updated in BlueCat DNS...</p><p>" + oDNS.GetDNSBody(intRequest, intItem, intNumber, true, intEnvironment) + "</p>"; } else if (strWebServiceResult.StartsWith("***DUPLICATE") == true) { strResult += "<p>The following record was already updated in BlueCat DNS...</p><p>" + oDNS.GetDNSBody(intRequest, intItem, intNumber, true, intEnvironment) + "</p>"; } else if (strWebServiceResult.StartsWith("***CONFLICT") == true) { strError += "<p>A CONFLICT occurred when attempting to update the following record in BlueCat DNS...</p><p>" + oDNS.GetDNSBody(intRequest, intItem, intNumber, true, intEnvironment) + "</p><p>Conflict Message:</p><p>" + strWebServiceResult + "</p>"; } else { strError += "<p>An ERROR occurred when attempting to update the following record in BlueCat DNS...</p><p>" + oDNS.GetDNSBody(intRequest, intItem, intNumber, true, intEnvironment) + "</p><p>Error Message:</p><p>" + strWebServiceResult + "</p>"; } } break; case "DELETE": if (boolDNS_QIP == true) { if (strIPCurrent != "") { strWebServiceResult = oWebService.DeleteDNSforPNC(strIPCurrent, "", intProfile, true); } else if (strNameCurrent != "") { strWebServiceResult = oWebService.DeleteDNSforPNC("", strNameCurrent, intProfile, true); } if (strWebServiceResult == "SUCCESS") { strResult += "<p>The following record was successfully deleted in QIP DNS...</p><p>" + oDNS.GetDNSBody(intRequest, intItem, intNumber, true, intEnvironment) + "</p>"; } else { strError += "<p>An ERROR occurred when attempting to delete the following record in QIP DNS...</p><p>" + oDNS.GetDNSBody(intRequest, intItem, intNumber, true, intEnvironment) + "</p><p>Error Message:</p><p>" + strWebServiceResult + "</p>"; } } if (boolDNS_Bluecat == true) { if (strIPCurrent != "") { strWebServiceResult = oWebService.DeleteBluecatDNS(strIPCurrent, "", false, false); } else if (strNameCurrent != "") { strWebServiceResult = oWebService.DeleteBluecatDNS("", strNameCurrent, false, false); } if (strWebServiceResult == "SUCCESS") { strResult += "<p>The following record was successfully deleted in BlueCat DNS...</p><p>" + oDNS.GetDNSBody(intRequest, intItem, intNumber, true, intEnvironment) + "</p>"; } else { strError += "<p>An ERROR occurred when attempting to delete the following record in BlueCat DNS...</p><p>" + oDNS.GetDNSBody(intRequest, intItem, intNumber, true, intEnvironment) + "</p><p>Error Message:</p><p>" + strWebServiceResult + "</p>"; } } break; } if (strResult != "") { oRequest.AddResult(intRequest, intItem, intNumber, oService.GetName(intService), "", strResult, intEnvironment, (oService.Get(intService, "notify_client") == "1"), oUser.GetName(intUser)); } else if (strError != "") { oRequest.AddResult(intRequest, intItem, intNumber, oService.GetName(intService), strError, "", intEnvironment, (oService.Get(intService, "notify_client") == "1"), oUser.GetName(intUser)); } oDNS.UpdateDNSCompleted(intRequest, intItem, intNumber); } if (strResult == "") { boolSuccess = false; } // ******** END PROCESSING ************** if (oService.Get(intService, "automate") == "1" && boolSuccess == true) { strDone += "<table border=\"0\"><tr><td><img src=\"/images/bigCheck.gif\" border=\"0\" align=\"absmiddle\"/></td><td class=\"biggerbold\">" + strResult + "</td></tr></table>"; } else { if (boolSuccess == false) { strDone += "<table border=\"0\"><tr><td><img src=\"/images/bigError.gif\" border=\"0\" align=\"absmiddle\"/></td><td class=\"biggerbold\">" + strError + "</td></tr></table>"; } else { strDone += "<table border=\"0\"><tr><td><img src=\"/images/bigCheck.gif\" border=\"0\" align=\"absmiddle\"/></td><td class=\"biggerbold\">" + oService.GetName(intService) + " Submitted</td></tr></table>"; } } oRequestItem.UpdateFormDone(intRequest, intItem, intNumber, 1); } } } }
protected void btnGo_Click(Object Sender, EventArgs e) { boolVMFound = false; Response.Write(DateTime.Now.ToString() + "<br/>"); Variables oVariable = new Variables(999); System.Net.NetworkCredential oCredentials = new System.Net.NetworkCredential(oVariable.ADUser(), oVariable.ADPassword(), oVariable.Domain()); ClearViewWebServices oWS = new ClearViewWebServices(); oWS.Timeout = Int32.Parse(ConfigurationManager.AppSettings["WS_TIMEOUT"]); oWS.Credentials = oCredentials; //oWS.Url = oVariable.WebServiceURL(); oWS.Url = "http://localhost:55030/ClearViewWebServices.asmx"; string path = oWS.GetVMwarePath(txtVM.Text, "http://localhost:53744/", "OpHAa0tdJBAdeJALK65pMptAyK2SFcismq7QZNB9rMd4Fuhp6K8Zqx8z5gdA8KIGsi1YLTV7E57alz5cDMW5escYrHVTKbaReGLyDtNmYauuA8oFka6vXNCafcGe8cwD5q5OYHJk8Kgd7RyttpIJeO4BeLrAWJoWN1zkcJRNAWwnGxcyPnUSDXxqwEJmqjyzvuzfsmqTH5jssQ4QI3UJYFs0DiYHaEyrz71l86fC7blINf8PK2OwxYKZcIMjxSTcI13uZTSLYsMXuUmykj7h0b3Lybjzu5eori9WmN00kdHflWFrvo9pUMmH7s7XKsq3oyFlUAlGth6XDYzKG1dg5ZDP6CZ4Qcq2WN1XquH5dC6NPzdj2wrSok7x30prKrZq0eaZ6LtluhdD309GzPbuVINMQC4AfpuVMPXLxnnrcfxghEFd0S25pFFsAxjDR3gfXr0ndxilCTrPjGFm70JwwzGgkElaeTKj8ttZNsaCKQCFoZi337G0"); while (path.Contains("\"")) { path = path.Replace("\"", ""); } string[] paths = path.Split(new string[] { "|" }, StringSplitOptions.RemoveEmptyEntries); if (paths.Length >= 3) { string strConnect = oVMware.ConnectDEBUG("https://" + paths[0] + ".pncbank.com/sdk", 999, ""); if (strConnect == "") { _service = oVMware.GetService(); _sic = oVMware.GetSic(); //ManagedObjectReference datacenterRef = oVMWare.GetDataCenter(); //ManagedObjectReference vmFolderRef = oVMWare.GetVMFolder(datacenterRef); //ManagedObjectReference clusterRef = oVMWare.GetCluster(strCluster); //ManagedObjectReference resourcePoolRootRef = (ManagedObjectReference)oVMWare.getObjectProperty(clusterRef, "resourcePool"); ManagedObjectReference oComputer = GetVM(txtVM.Text, paths); if (oComputer != null) { VirtualMachineConfigInfo oInfo = (VirtualMachineConfigInfo)oVMware.getObjectProperty(oComputer, "config"); Response.Write(oInfo.uuid + "<br/>"); } if (_service != null) { //ServiceContent _sic = oVMware.GetSic(); _service.Abort(); if (_service.Container != null) { _service.Container.Dispose(); } try { _service.Logout(_sic.sessionManager); } catch { } _service.Dispose(); _service = null; _sic = null; //oLog.AddEvent(intAnswer, strName, strSerial, "Logged out of VMware", LoggingType.Information); } } } Response.Write(DateTime.Now.ToString() + "<br/>"); }
private bool CheckIP(int _answerid, int _ip1, int _ip2, int _ip3, int _ip4) { if (_ip1 > 0 && _ip1 < 256 && _ip2 > 0 && _ip2 < 256 && _ip3 > 0 && _ip3 < 256 && _ip4 > 0 && _ip4 < 256) { string strIP = _ip1.ToString() + "." + _ip2.ToString() + "." + _ip3.ToString() + "." + _ip4.ToString(); // Make sure PING times out (that it is not in use) Ping oPing = new Ping(); string strStatus = ""; try { PingReply oReply = oPing.Send(strIP); strStatus = oReply.Status.ToString().ToUpper(); } catch { } if (strStatus == "SUCCESS") { boolValidatePing = true; return(false); } // Make sure that this IP address does not exist in DNS (only if PNC) Classes oClass = new Classes(intProfile, dsn); int intClass = Int32.Parse(oForecast.GetAnswer(_answerid, "classid")); if (oClass.Get(intClass, "pnc") == "1") { Variables oVariableWS = new Variables(intEnvironment); System.Net.NetworkCredential oCredentials = new System.Net.NetworkCredential(oVariableWS.ADUser(), oVariableWS.ADPassword(), oVariableWS.Domain()); ClearViewWebServices oWS = new ClearViewWebServices(); oWS.Timeout = Int32.Parse(ConfigurationManager.AppSettings["WS_TIMEOUT"]); oWS.Credentials = oCredentials; oWS.Url = oVariableWS.WebServiceURL(); Settings oSetting = new Settings(0, dsn); bool boolDNS_QIP = oSetting.IsDNS_QIP(); bool boolDNS_Bluecat = oSetting.IsDNS_Bluecat(); if (boolDNS_QIP == true) { string strSearchName = oWS.SearchDNSforPNC(strIP, "", false, true); if (strSearchName.Trim().ToUpper() != "***NOTFOUND") { boolValidateDNS = true; return(false); } } if (boolDNS_Bluecat == true) { string strSearchName = oWS.SearchBluecatDNS(strIP, ""); if (strSearchName.Trim().ToUpper() != "***NOTFOUND") { boolValidateDNS = true; return(false); } } } // Make sure it is not already assigned in database IPAddresses oIPAddresses = new IPAddresses(intProfile, dsnIP, dsn); DataSet dsIP = oIPAddresses.Get(_ip1, _ip2, _ip3, _ip4); foreach (DataRow drIP in dsIP.Tables[0].Rows) { if (drIP["available"].ToString() == "0") { boolValidateDB = true; return(false); break; } } return(true); } else { boolValidateFormat = true; return(false); } }
public void Activations(int EnvironmentID) { // Setup Classes Servers oServer = new Servers(0, dsn); AvamarRegistration oAvamarRegistration = new AvamarRegistration(0, dsn); Log oLog = new Log(0, dsn); Variables oVariable = new Variables(EnvironmentID); // Setup Webservice for querying via SSH System.Net.NetworkCredential oCredentialsDNS = new System.Net.NetworkCredential(oVariable.ADUser(), oVariable.ADPassword(), oVariable.Domain()); ClearViewWebServices oWebService = new ClearViewWebServices(); oWebService.Url = oVariable.WebServiceURL(); DataSet dsActivations = oServer.GetAvamarActivations(); if (dsActivations.Tables[0].Rows.Count > 0) { oLog.AddEvent("", "", "Get avamar activations (" + dsActivations.Tables[0].Rows.Count.ToString() + ")", LoggingType.Debug); foreach (DataRow drActivation in dsActivations.Tables[0].Rows) { ClearResults(); int intServer = Int32.Parse(drActivation["id"].ToString()); oServer.UpdateAvamarActivationStarted(intServer, DateTime.Now.ToString()); int intAnswer = Int32.Parse(drActivation["answerid"].ToString()); string strName = drActivation["servername"].ToString(); string strGrid = drActivation["grid"].ToString(); string strDomain = drActivation["domain"].ToString(); string strGroup1 = drActivation["group1"].ToString(); string strGroup2 = drActivation["group2"].ToString(); string strGroup3 = drActivation["group3"].ToString(); oLog.AddEvent(intAnswer, strName, "", "Starting automated Avamar activation", LoggingType.Information); string strError = ""; string strSuccess = ""; try { // Activate client AvamarReturnType activate = oAvamarRegistration.API(oWebService.ActivateAvamarClient(strGrid, strDomain, strName)); if (activate.Error == false) { strSuccess = activate.Message; // Wait 1/2 minute for synchronization oLog.AddEvent(intAnswer, strName, "", "Activation script complete = " + activate.Message + ".", LoggingType.Information); bool HasActivated = false; for (int ii = 0; ii < 10 && HasActivated == false; ii++) { int activateCount = ii + 1; oLog.AddEvent(intAnswer, strName, "", "Checking activation status (" + activateCount.ToString() + " of 10)...", LoggingType.Debug); AvamarReturnType activated = oAvamarRegistration.API(oWebService.GetAvamarClient(strGrid, strDomain, strName)); if (activated.Error == false) { foreach (XmlNode node in activated.Nodes) { if (node["Attribute"].InnerText == "Activated") { if (node["Value"].InnerText.Trim().ToUpper() == "YES") { HasActivated = true; oLog.AddEvent(intAnswer, strName, "", "Client has activated!", LoggingType.Information); } else { oLog.AddEvent(intAnswer, strName, "", "Client is not active. Waiting 30 seconds before retrying...", LoggingType.Debug); Thread.Sleep(30000); } break; } } } else { strError = "Error while activating - " + activated.Message; break; } } if (String.IsNullOrEmpty(strError)) { if (HasActivated) { // Initiate backup oLog.AddEvent(intAnswer, strName, "", "Initiating backup...", LoggingType.Information); AvamarReturnType start = oAvamarRegistration.API(oWebService.StartAvamarBackup(strGrid, strDomain, strGroup1, strName)); if (start.Error) { strError = start.Message + " (" + start.Code + ")"; } else if (String.IsNullOrEmpty(strGroup2) == false) { oLog.AddEvent(intAnswer, strName, "", "Backup for " + strGroup1 + " started = " + start.Message, LoggingType.Information); AvamarReturnType start2 = oAvamarRegistration.API(oWebService.StartAvamarBackup(strGrid, strDomain, strGroup2, strName)); if (start2.Error) { strError = start2.Message + " (" + start2.Code + ")"; } else if (String.IsNullOrEmpty(strGroup3) == false) { oLog.AddEvent(intAnswer, strName, "", "Backup for " + strGroup2 + " started = " + start2.Message, LoggingType.Information); AvamarReturnType start3 = oAvamarRegistration.API(oWebService.StartAvamarBackup(strGrid, strDomain, strGroup3, strName)); if (start3.Error) { strError = start3.Message + " (" + start3.Code + ")"; } else { oLog.AddEvent(intAnswer, strName, "", "Backup for " + strGroup3 + " started = " + start3.Message, LoggingType.Information); } } } } else { strError = "Client has not activated after 5 minutes"; } } } else { strError = activate.Message + " (" + activate.Code + ")"; } } catch (Exception exError) { strError = exError.Message; if (exError.InnerException != null) { strError += " ~ " + exError.InnerException.Message; } } if (strError != "") { oLog.AddEvent(intAnswer, strName, "", strError, LoggingType.Error); oServer.UpdateAvamarActivationCompleted(intServer, "", strError, DateTime.Now.ToString(), 1); oServer.AddError(0, 0, 0, intServer, 906, strError); } else { oLog.AddEvent(intAnswer, strName, "", "Activation completed and backup initiated", LoggingType.Information); oServer.UpdateAvamarActivationCompleted(intServer, "", strSuccess, DateTime.Now.ToString(), 0); oServer.AddAvamarBackup(intServer, strName, strGrid, strDomain, strGroup1); } } } }
private void LoadServer(DataRow dr) { int intRequest = Int32.Parse(dr["requestid"].ToString()); int intItem = Int32.Parse(dr["itemid"].ToString()); int intNumber = Int32.Parse(dr["number"].ToString()); string strNameNew = dr["name_new"].ToString(); string strIPNew = dr["ip_new"].ToString(); string strAliasNew = dr["alias_new"].ToString(); ddlType.SelectedValue = dr["typeid"].ToString(); txtName.Text = strNameNew; char[] strIPSplit = { '.' }; string[] strIP = strIPNew.Split(strIPSplit); txtIP1.Text = strIP[0]; txtIP2.Text = strIP[1]; txtIP3.Text = strIP[2]; txtIP4.Text = strIP[3]; if (strAliasNew != "NONE") { // Show Confirmation Page lblName.Text = strNameNew; lblIP.Text = strIPNew; lblAlias.Text = strAliasNew; panConfirm.Visible = true; strConfirm = oDNS.GetDNSBody(intRequest, intItem, intNumber, true, intEnvironment); btnNext.Attributes.Add("onclick", "return ValidateCheck('" + chkAgree.ClientID + "','Please check the box stating that you agree to the disclaimer notice')" + " && ProcessButton(this)" + ";"); btnDiscard.Attributes.Add("onclick", "return confirm('WARNING: Starting over will discard all the changes you have made.\\n\\nAre you sure you want to continue?') && ProcessButton(this);"); btnContinue.Visible = false; btnConfirm.Visible = false; } else { panSearch.Visible = true; btnNext.Visible = false; // Get Record from DNS System.Net.NetworkCredential oCredentials = new System.Net.NetworkCredential(oVariable.ADUser(), oVariable.ADPassword(), oVariable.Domain()); ClearViewWebServices oWebService = new ClearViewWebServices(); oWebService.Timeout = Int32.Parse(ConfigurationManager.AppSettings["WS_TIMEOUT"]); oWebService.Credentials = oCredentials; oWebService.Url = oVariable.WebServiceURL(); bool boolFoundName = false; bool boolFoundIP = false; // Get Values if (strNameNew != "") { string strTemp = ""; if (boolDNS_QIP == true) { strTemp = oWebService.SearchDNSforPNC("", strNameNew, false, true); if (strTemp.StartsWith("***") == false) { boolFoundName = true; } } if (boolDNS_Bluecat == true) { strTemp = oWebService.SearchBluecatDNS("", strNameNew); if (strTemp.StartsWith("***") == false) { boolFoundName = true; } } } if (strIPNew != "") { string strTemp = ""; if (boolDNS_QIP == true) { strTemp = oWebService.SearchDNSforPNC(strIPNew, "", false, true); if (strTemp.StartsWith("***") == false) { boolFoundIP = true; } } if (boolDNS_Bluecat == true) { strTemp = oWebService.SearchBluecatDNS(strIPNew, ""); if (strTemp.StartsWith("***") == false) { boolFoundIP = true; } } } //DataSet ds = oServer.GetDNS(strNameNew); //if (ds.Tables[0].Rows.Count == 0) if (boolFoundName == false && boolFoundIP == false) { //if (boolFound == true) //{ // btnReset.Enabled = false; // btnConfirm.Visible = false; // panExist.Visible = true; // lblExist.Text = "This device already exists in DNS. Please try again..."; //} //else //{ bool boolPermit = true; panAlias.Visible = boolDNS_QIP; panShow.Visible = true; lblName.Text = strNameNew; lblIP.Text = strIPNew; lblAlias.Text = strAliasNew; // Check Permission and either show read only, or permit edit if (oApplication.Get(intApplication, "dns") == "1" || oUser.IsAdmin(intProfile)) { boolPermit = true; } if (boolPermit == true) { btnContinue.Visible = false; ddlType.Enabled = false; txtName.Enabled = false; txtIP1.Enabled = false; txtIP2.Enabled = false; txtIP3.Enabled = false; txtIP4.Enabled = false; txtAlias.Enabled = true; lstAlias.Enabled = true; txtContact1.Enabled = true; txtContact2.Enabled = true; btnAdd.Attributes.Add("onclick", "return AddDNS('" + lstAlias.ClientID + "','" + txtAlias.ClientID + "','" + hdnAlias.ClientID + "');"); btnEdit.Attributes.Add("onclick", "return EditDNS('" + lstAlias.ClientID + "','" + txtAlias.ClientID + "','" + hdnAlias.ClientID + "');"); btnRemove.Attributes.Add("onclick", "return RemoveDNS('" + lstAlias.ClientID + "','" + hdnAlias.ClientID + "');"); string strChange = ""; if (boolChange == true) { panChange.Visible = true; strChange = " && ValidateTextLength('" + txtChange.ClientID + "', 'Please enter a valid change control number\\n\\n - Must start with either \"CHG\" or \"PTM\"\\n - Must be exactly 10 characters in length', 10, ['CHG','PTM'], ['CHG0000000','PTM0000000','CHG1111111','PTM1111111','CHG9999999','PTM9999999','CHGXXXXXXX','PTMXXXXXXX'])"; } btnConfirm.Attributes.Add("onclick", "return ValidateHidden0('" + hdnContact1.ClientID + "','" + txtContact1.ClientID + "','Please enter the LAN ID of your contact # 1')" + " && ValidateHidden0('" + hdnContact2.ClientID + "','" + txtContact2.ClientID + "','Please enter the LAN ID of your contact # 2')" + strChange + " && ValidateText('" + txtReason.ClientID + "','Please enter a reason')" + " && ProcessButton(this)" + ";"); } else { btnConfirm.Visible = false; panAccess.Visible = true; btnAdd.Enabled = false; btnEdit.Enabled = false; btnRemove.Enabled = false; DataSet dsDecoms = oApplication.GetDecoms(); if (dsDecoms.Tables[0].Rows.Count > 0) { strContacts += "<tr><td colspan=\"2\">Alternatively, you can contact a resource from one of the following departments:</td></tr>"; foreach (DataRow drDecom in dsDecoms.Tables[0].Rows) { strContacts += "<tr><td></td><td>" + drDecom["name"].ToString() + "</td></tr>"; } } } //} } else { btnReset.Enabled = false; btnConfirm.Visible = false; panExist.Visible = true; lblExist.Text = "The " + (boolFoundName ? "device name" : "IP address") + " is already registered in DNS. Please try again..."; //lblExist.Text = "This device already exists in the database. Please try again..."; } } }
protected void btnDecom_Click(object sender, EventArgs e) { Variables oVariable = new Variables((int)CurrentEnvironment.PNCNT_DEV); string grid = "yb19-avr01-01.test.pncbank.com"; string domain = "/BRII"; string client = "WDCLV015A.pncbank.com"; string strError = ""; Avamar oAvamar = new Avamar(0, dsn); AvamarRegistration oAvamarRegistration = new AvamarRegistration(0, dsn); ClearViewWebServices oWebService = new ClearViewWebServices(); System.Net.NetworkCredential oCredentialsDNS = new System.Net.NetworkCredential(oVariable.ADUser(), oVariable.ADPassword(), oVariable.Domain()); oWebService.Credentials = oCredentialsDNS; oWebService.Url = oVariable.WebServiceURL(); // First, query for groups. AvamarReturnType groups = oAvamarRegistration.API(oWebService.GetAvamarClient(grid, domain, client)); if (groups.Error == false) { List <string> members = new List <string>(); foreach (XmlNode node in groups.Nodes) { if (node["Attribute"].InnerText == "Member of Group") { members.Add(node["Value"].InnerText); } } if (members.Count > 0) { // Second, add /Decom group (so there will always be at least one group) AvamarReturnType decom = oAvamarRegistration.API(oWebService.AddAvamarGroup(grid, domain, client, oAvamar.DecomGroup)); if (decom.Error == false) { oAvamar.DeleteDecom(client); foreach (string member in members) { if (String.IsNullOrEmpty(strError) == false) { break; } // Third, remove groups (one at a time) AvamarReturnType remove = oAvamarRegistration.API(oWebService.DeleteAvamarGroup(grid, domain, client, member)); if (remove.Error == false) { // Fourth, save groups. oAvamar.AddDecom(client, grid, domain, member); } else { strError = remove.Message; } } } else { strError = decom.Message; } } } else { strError = groups.Message; } }