private void SaveData(bool confirmSave) { try { SipSettings sIP = this.m_pVirtualServer.SystemSettings.SIP; sIP.Enabled = this.m_pTabGeneral_Enabled.Checked; if (this.m_pTabGeneral_ProxyType.SelectedIndex == 0) { sIP.ProxyMode = (SIP_ProxyMode.Registrar | SIP_ProxyMode.B2BUA); } else { sIP.ProxyMode = (SIP_ProxyMode.Registrar | SIP_ProxyMode.Statefull); } sIP.MinimumExpires = (int)this.m_pTabGeneral_MinExpires.Value; List <IPBindInfo> list = new List <IPBindInfo>(); foreach (ListViewItem listViewItem in this.m_pTabGeneral_Bindings.Items) { list.Add((IPBindInfo)listViewItem.Tag); } sIP.Binds = list.ToArray(); if (this.m_pVirtualServer.SystemSettings.HasChanges && (!confirmSave || MessageBox.Show(this, "You have changes settings, do you want to save them ?", "Confirm:", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)) { this.m_pVirtualServer.SystemSettings.Commit(); } } catch (Exception x) { ErrorForm errorForm = new ErrorForm(x, new StackTrace()); errorForm.ShowDialog(this); } }
private void LoadData() { try { SipSettings sIP = this.m_pVirtualServer.SystemSettings.SIP; this.m_pTabGeneral_Enabled.Checked = sIP.Enabled; if ((sIP.ProxyMode & SIP_ProxyMode.B2BUA) != (SIP_ProxyMode)0) { this.m_pTabGeneral_ProxyType.SelectedIndex = 0; } else { this.m_pTabGeneral_ProxyType.SelectedIndex = 1; } this.m_pTabGeneral_MinExpires.Value = Convert.ToDecimal(sIP.MinimumExpires); IPBindInfo[] binds = sIP.Binds; for (int i = 0; i < binds.Length; i++) { IPBindInfo iPBindInfo = binds[i]; ListViewItem listViewItem = new ListViewItem(); listViewItem.Text = iPBindInfo.HostName; if (iPBindInfo.IP.ToString() == "0.0.0.0") { listViewItem.SubItems.Add("Any IPv4"); } else if (iPBindInfo.IP.ToString() == "0:0:0:0:0:0:0:0") { listViewItem.SubItems.Add("Any IPv6"); } else { listViewItem.SubItems.Add(iPBindInfo.IP.ToString()); } listViewItem.SubItems.Add(iPBindInfo.Protocol.ToString()); listViewItem.SubItems.Add(iPBindInfo.Port.ToString()); listViewItem.SubItems.Add(iPBindInfo.SslMode.ToString()); listViewItem.SubItems.Add(Convert.ToString(iPBindInfo.Certificate != null)); listViewItem.Tag = iPBindInfo; this.m_pTabGeneral_Bindings.Items.Add(listViewItem); } foreach (SipGateway sipGateway in this.m_pVirtualServer.SystemSettings.SIP.Gateways) { ListViewItem listViewItem2 = new ListViewItem(sipGateway.UriScheme); listViewItem2.SubItems.Add(sipGateway.Transport); listViewItem2.SubItems.Add(sipGateway.Host); listViewItem2.SubItems.Add(sipGateway.Port.ToString()); listViewItem2.Tag = sipGateway; this.m_pTabGateways_Gateways.Items.Add(listViewItem2); } this.m_pTabGateways_Gateways_SelectedIndexChanged(null, null); } catch (Exception x) { ErrorForm errorForm = new ErrorForm(x, new StackTrace()); errorForm.ShowDialog(this); } }