using System; using System.Windows.Forms; using FastReport.Utils; namespace FastReport.Messaging.Xmpp { /// /// Represents the form of the XMPP messenger. /// public partial class XmppMessengerForm : MessengerForm { #region Fields private XmppMessenger messenger; #endregion // Fields #region Constructors /// /// Initializes a new instance of the class. /// public XmppMessengerForm() : base() { messenger = new XmppMessenger(); InitializeComponent(); Localize(); Init(); UIUtils.CheckRTL(this); UpdateDpiDependencies(); } /// /// Initializes a new instance of the class with specified parameters. /// /// User's JID without resource. /// User's password. /// Send to user's JID. /// Report template. public XmppMessengerForm(string jidFrom, string password, string jidTo, Report report)// : base(report) { Report = report; messenger = new XmppMessenger(jidFrom, password, jidTo); InitializeComponent(); Localize(); Init(); tbJidFrom.Text = jidFrom; tbPassword.Text = password; tbJidTo.Text = jidTo; pageControl1.Height += this.LogicalToDevice(40); UIUtils.CheckRTL(this); UpdateDpiDependencies(); } #endregion // Constructors #region Protected Methods /// protected override void Init() { base.Init(); if (messenger == null) { messenger = new XmppMessenger(); } XmlItem xi = Config.Root.FindItem("XmppMessenger").FindItem("MessengerSettings"); string jidFrom = xi.GetProp("JidFrom"); string password = xi.GetProp("Password"); string jidTo = xi.GetProp("JidTo"); if (!String.IsNullOrEmpty(jidFrom) && !String.IsNullOrEmpty(password) && !String.IsNullOrEmpty(jidTo)) { messenger.JidFrom = jidFrom; messenger.Password = password; messenger.JidTo = jidTo; } tbProxyServer.Text = xi.GetProp("ProxyServer"); tbProxyPort.Text = xi.GetProp("ProxyPort"); tbProxyUsername.Text = xi.GetProp("ProxyUsername"); tbProxyPassword.Text = xi.GetProp("ProxyPassword"); } /// protected override bool Done() { if (base.Done()) { XmlItem xi = Config.Root.FindItem("XmppMessenger").FindItem("MessengerSettings"); xi.SetProp("JidFrom", tbJidFrom.Text); xi.SetProp("Password", tbPassword.Text); xi.SetProp("JidTo", tbJidTo.Text); xi.SetProp("ProxyServer", tbProxyServer.Text); xi.SetProp("ProxyPort", tbProxyPort.Text); xi.SetProp("ProxyUsername", tbProxyUsername.Text); xi.SetProp("ProxyPassword", tbProxyPassword.Text); return true; } return false; } #endregion // Protected Methods #region Public Methods /// public override void Localize() { base.Localize(); if (labelJidFrom == null) return; MyRes res = new MyRes("Messaging,Xmpp"); this.Text = res.Get(""); labelJidFrom.Text = res.Get("JidFrom"); labelPassword.Text = res.Get("Password"); labelJidTo.Text = res.Get("JidTo"); labelCloudWarning.Text = res.Get("CloudWarning"); } #endregion // Public Methods #region Events Handlers /// protected override void btnOk_Click(object sender, EventArgs e) { Cursor = Cursors.WaitCursor; DialogResult = DialogResult.OK; messenger.JidFrom = tbJidFrom.Text; messenger.Password = tbPassword.Text; messenger.JidTo = tbJidTo.Text; messenger.ProxySettings = GetProxySettings(); //messenger.SendReport(Report, Exports[cbFileType.SelectedIndex]); messenger.SendReport(Report, null); Close(); } #endregion // Events Handlers } }