private void DDAAction_Click(object sender, RoutedEventArgs e) { Button b = e.Source as Button; string s = b.Content as string; XmlDocument doc = new XmlDocument(); doc.LoadXml(jw.SuggestedXml); XmlNode nodeControl = doc.DocumentElement.FirstChild; XmlAttribute x = doc.CreateAttribute("action"); x.Value = s; nodeControl.Attributes.Append(x); ActionDefinition ad = new ActionDefinition() { Application = _applicationName, Action = "Execute", ActionData = doc.OuterXml, Condition = "" }; ICRMWindowRouter CRMWindowRouter = AifServiceContainer.Instance.GetService <ICRMWindowRouter>(); CRMWindowRouter.ExecuteActions(new List <ActionDefinition>() { { ad } }, String.Empty, new Dictionary <string, string>()); }
public void SessionChanged(Session session) { try { ICRMWindowRouter globalMgr = AifServiceContainer.Instance.GetService <ICRMWindowRouter>(); AgentDesktopSessions sessions = globalMgr.GetSessionManager(); string activeApp = ((DynamicsCustomerRecord)((AgentDesktopSession)sessions.ActiveSession).Customer.DesktopCustomer).GetActiveAppOnPanel(this._panelName); Debug.WriteLine("Restoring App " + activeApp + " for panel " + this._panelName); if (activeApp != null) { IHostedApplication tabApp; foreach (C1USDDockTabItem item in Items) { tabApp = item.Tag as IHostedApplication; if ((tabApp != null) && (tabApp.ApplicationName == activeApp)) { SelectedItem = item; return; } } } } catch { } }
public WpfBrowser(string applicationName) { try { ICRMWindowRouter CRMWindowRouter = AifServiceContainer.Instance.GetService <ICRMWindowRouter>(); thisApplication = CRMWindowRouter.LoadApplicationEntity(applicationName); this.ApplicationName = applicationName; System.Windows.Controls.WebBrowser newbrowser = new System.Windows.Controls.WebBrowser(); lock (activeBrowsers) { if (!activeBrowsers.Contains(newbrowser)) { activeBrowsers.Add(newbrowser); } Trace.WriteLine("ActiveBrowsers (Browser Added) = " + activeBrowsers.Count.ToString()); } _webBrowser = newbrowser; this.Content = newbrowser; this._WebBrowserEventSink = new WebBrowserEventSink(this); } catch (Exception ex) { Trace.WriteLine("WpfBrowser: " + ex.Message + "\r\n" + ex.StackTrace); } }
bool VerifyGlobalManagerConnection() { if (CRMWindowRouter == null) { CRMWindowRouter = AifServiceContainer.Instance.GetService <ICRMWindowRouter>(); } if (CRMWindowRouter == null) { return(false); } return(true); }
private void scheduler_UserEditingAppointment(object sender, C1.WPF.Schedule.AppointmentActionEventArgs e) { e.Handled = true; ICRMWindowRouter CRMWindowRouter = AifServiceContainer.Instance.GetService <ICRMWindowRouter>(); Guid id = (Guid)e.Appointment.Key[0]; SchedulerAppointment appt = appointmentList.FirstOrDefault(a => a.Id == id); if (appt != null) { CRMWindowRouter.DoRoutePopup(localSession, this.ApplicationName, appt.ActivityType, appt.Id.ToString(), String.Empty); } }
public void Reset(string applicationName) { try { dataCaptured = false; ICRMWindowRouter CRMWindowRouter = AifServiceContainer.Instance.GetService <ICRMWindowRouter>(); thisApplication = CRMWindowRouter.LoadApplicationEntity(applicationName); this.ApplicationName = applicationName; //HideScriptErrors(true); initialUrl = String.Empty; } catch (Exception ex) { Trace.WriteLine("WpfBrowser: " + ex.Message + "\r\n" + ex.StackTrace); } }
bool VerifyGlobalManagerConnection() { if (CRMWindowRouter == null) { CRMWindowRouter = AifServiceContainer.Instance.GetService <ICRMWindowRouter>(); } if (SessionManager == null) { SessionManager = AifServiceContainer.Instance.GetService <AgentDesktopSessions>(); SessionManager.SessionCloseEvent += SessionManager_SessionCloseEvent; } if (CRMWindowRouter == null) { return(false); } return(true); }
private void MovePanel(object tabTag) { //Move Panel var userSettingPanel = string.Empty; if (desktopFeatureAccess == null) { desktopFeatureAccess = AifServiceContainer.Instance.GetService <IDesktopFeatureAccess>(); } if (router == null) { router = AifServiceContainer.Instance.GetService <ICRMWindowRouter>(); } var control = ((DynamicsBaseHostedControl)tabTag); var defaultPanel = Utility.GetConfigurationValue(control.ApplicationName + "Panel"); userSettingPanel = GetUserDisplayGroup(control.ApplicationName + "PanelLocation"); var panelNameToMoveTo = string.Empty; if (string.IsNullOrEmpty(userSettingPanel)) { if (string.IsNullOrEmpty(defaultPanel)) { panelNameToMoveTo = "MainPanel"; //Defaults to main panel } else { panelNameToMoveTo = defaultPanel; } } else if (userSettingPanel.Equals("MainPanel") || userSettingPanel.Equals("SessionExplorerPanel") || userSettingPanel.Equals("LeftPanel2")) { panelNameToMoveTo = userSettingPanel; } else { panelNameToMoveTo = userSettingPanel; //Determine if the panel exists. Will be floating panel. If doesn't exist create it. //var panel = this.FindName(userSettingPanel); var panelExists = false; foreach (var item in mainLayout.Items) { if (item is C1USDTabBasePanel) { if (((C1USDTabBasePanel)item).Name.Contains(userSettingPanel)) { panelExists = true; break; } } } if (!panelExists) { //Create new panel and set panel id to userDisplayGroup var newFloatingPanel = new C1USDTabBasePanel(); var style = this.FindResource("MainPanelC1USDTabBasePanelStyle") as Style; newFloatingPanel.Name = "Main Layout/" + panelNameToMoveTo; newFloatingPanel.Style = style; newFloatingPanel.DockWidth = 600; newFloatingPanel.DockHeight = 600; newFloatingPanel.DockMode = DockMode.Floating; newFloatingPanel.Visibility = Visibility.Visible; newFloatingPanel.ItemsChanged += newFloatingPanel_ItemsChanged; var addPanelResult = desktopFeatureAccess.AddPanel(newFloatingPanel); DoPanelRegistration(); var pan = desktopFeatureAccess.GetPanel("Main Layout/" + panelNameToMoveTo); var eventInnerParams = new Dictionary <string, string>(); eventInnerParams.Add("Panel", "Main Layout/" + panelNameToMoveTo); router.FireEvent(control.localSession, control.ApplicationName, "MoveToPanel", eventInnerParams); mainLayout.UpdateLayout(); if (_panelLocations == null) { _panelLocations = new Dictionary <string, string>(); } if (_panelLocations.ContainsKey(control.ApplicationName)) { _panelLocations[control.ApplicationName] = panelNameToMoveTo; } else { _panelLocations.Add(control.ApplicationName, panelNameToMoveTo); } mainLayout.Items.Add(newFloatingPanel); return; } } //desktopFeatureAccess = AifServiceContainer.Instance.GetService<IDesktopFeatureAccess>(); //desktopFeatureAccess.MoveApplicationToPanel(GetApp(control.ApplicationName), "Main Layout/" + panelNameToMoveTo); var eventParams = new Dictionary <string, string>(); eventParams.Add("Panel", "Main Layout/" + panelNameToMoveTo); var eventResult = router.FireEvent(control.localSession, control.ApplicationName, "MoveToPanel", eventParams); mainLayout.UpdateLayout(); if (_panelLocations == null) { _panelLocations = new Dictionary <string, string>(); } if (_panelLocations.ContainsKey(control.ApplicationName)) { _panelLocations[control.ApplicationName] = panelNameToMoveTo; } else { _panelLocations.Add(control.ApplicationName, panelNameToMoveTo); } }