Esempio n. 1
0
        private void setDisplay()
        {
            if (displayTreeToolStripMenuItem.Checked == true)
            {
                currentSessionControl = sessionTreeControl;
                hiddenSessionControl  = sessionListControl;
            }
            else
            {
                currentSessionControl = sessionListControl;
                hiddenSessionControl  = sessionTreeControl;
            }

            this.SuspendLayout();

            currentSessionControl.Enabled = true;
            currentSessionControl.Visible = true;
            hiddenSessionControl.Enabled  = false;
            hiddenSessionControl.Visible  = false;

            this.ResumeLayout(true);

            currentSessionControl.getSessionMenuItems(loadSessionContextMenu, loadSessionContextMenu.Items);

            Properties.Settings.Default.DisplayTree = displayTreeToolStripMenuItem.Checked;
        }
        }/// <summary>

        /// Loads data from file and creates controls that shows sessions
        /// </summary>
        private static void LoadSessionData()
        {
            if (!System.IO.File.Exists(Constants.SESSION_DATA))
            {
                References.SessionCollection.Sessions = new List <Session>();
                return;
            }

            string Data = System.IO.File.ReadAllText(Constants.SESSION_DATA);

            if (string.IsNullOrEmpty(Data))
            {
                References.SessionCollection.Sessions = new List <Session>();
                return;
            }
            SessionCollection sessions = Newtonsoft.Json.JsonConvert.DeserializeObject <SessionCollection>(Data);

            foreach (Session s in sessions.Sessions)
            {
                SessionControl sc = new SessionControl(s);
                sc.Margin = new System.Windows.Thickness(0, 20, 0, 0);
                MainWindow.Instance.SessionWindow.AddSessionElementToList(sc);
            }
            References.SessionCollection = sessions;
        }
        private void SendDisconnect()
        {
            SessionControl commandKmmBody = new SessionControl();

            commandKmmBody.SessionControlOpcode = SessionControl.ScOpcode.Disconnect;
            commandKmmBody.SourceDeviceType     = SessionControl.ScSourceDeviceType.Kfd;

            KmmFrame commandKmmFrame = new KmmFrame(commandKmmBody);

            byte[] toRadio = commandKmmFrame.ToBytesWithPreamble(0x00);

            byte[] fromRadio = PerformKmmTransfer(toRadio);

            KmmFrame responseKmmFrame = new KmmFrame(true, fromRadio);

            KmmBody responseKmmBody = responseKmmFrame.KmmBody;

            if (responseKmmBody is SessionControl)
            {
                SessionControl kmm = responseKmmBody as SessionControl;

                if (kmm.SessionControlOpcode != SessionControl.ScOpcode.DisconnectAck)
                {
                    throw new Exception(string.Format("received unexpected session control opcode (0x{0:X2}) {1}", (byte)kmm.SessionControlOpcode, kmm.SessionControlOpcode.ToString()));
                }
            }
            else
            {
                throw new Exception("unexpected kmm");
            }
        }
Esempio n. 4
0
        public Payload TrackTransaction(string id, string affiliation, double revenue, double shipping, double tax, string currencyCode,
                                        SessionControl sessionControl = SessionControl.None, bool isNonInteractive = false)
        {
            var additionalData = new Dictionary <string, string>();

            additionalData.Add("ti", id);
            if (affiliation != null)
            {
                additionalData.Add("ta", affiliation);
            }
            if (revenue != 0)
            {
                additionalData.Add("tr", revenue.ToString(CultureInfo.InvariantCulture));
            }
            if (shipping != 0)
            {
                additionalData.Add("ts", shipping.ToString(CultureInfo.InvariantCulture));
            }
            if (tax != 0)
            {
                additionalData.Add("tt", tax.ToString(CultureInfo.InvariantCulture));
            }
            if (currencyCode != null)
            {
                additionalData.Add("cu", currencyCode);
            }
            return(PostData(HitType_Transaction, additionalData, isNonInteractive, sessionControl));
        }
Esempio n. 5
0
        public Payload TrackTransactionItem(string transactionId, string name, double price, long quantity, string code, string category, string currencyCode,
                                            SessionControl sessionControl = SessionControl.None, bool isNonInteractive = false)
        {
            var additionalData = new Dictionary <string, string>();

            additionalData.Add("ti", transactionId);
            if (name != null)
            {
                additionalData.Add("in", name);
            }
            if (price != 0)
            {
                additionalData.Add("ip", price.ToString(CultureInfo.InvariantCulture));
            }
            if (quantity != 0)
            {
                additionalData.Add("iq", quantity.ToString(CultureInfo.InvariantCulture));
            }
            if (code != null)
            {
                additionalData.Add("ic", code);
            }
            if (category != null)
            {
                additionalData.Add("iv", category);
            }
            if (currencyCode != null)
            {
                additionalData.Add("cu", currencyCode);
            }
            return(PostData(HitType_TransactionItem, additionalData, isNonInteractive, sessionControl));
        }
Esempio n. 6
0
        public App()
        {
            InitializeComponent();
            SessionControl Session     = new SessionControl();
            int            AccessLevel = Session.GetSession();

            switch (AccessLevel)
            {
            case 0:
                MainPage = new NavigationPage(new LoginView());
                break;

            case 1:
                MainPage = new NavigationPage(new MainView());
                break;

            case 3:
                MainPage = new NavigationPage(new TabbedPatientView());
                break;

            case 4:
                MainPage = new NavigationPage(new PatientView());
                break;
            }
        }
Esempio n. 7
0
 public MainWindow()
 {
     InitializeComponent();
     sesControl     = new SessionControl();
     SelectedReport = new DocsHierarchy.ReportOSR();
     Refresh();
 }
Esempio n. 8
0
        public FOVX()
        {
            SessionControl openSession = new SessionControl();

            fovdir   = openSession.FOVIDataFolder;
            fovfile  = fovdir + "\\My Equipment.txt";
            fovXfile = fovdir + "\\My Equipment.xml";
            System.IO.TextReader fovDataFile = System.IO.File.OpenText(fovfile);
            //create xml object
            xFovList = new XElement("FieldOfViewIndicators");

            string fovline = fovDataFile.ReadLine();

            //skip past all field definition lines for now, maybe forever
            while (fovline != null)
            {
                if ((fovline.Contains("[F]")) && (fovline[0] != ';'))
                {
                    XElement xfovI = new XElement(FOVIndicatorXName);
                    string[] splitline;
                    int      fElementCount;

                    splitline     = fovline.Split('|');
                    fElementCount = (splitline.Length - headerLength) / elementLength;
                    xfovI.Add(new XElement(ActiveFieldXName, splitline[1]));
                    xfovI.Add(new XElement(ReferenceFrameFieldXName, splitline[2]));
                    xfovI.Add(new XElement(Description1FieldXName, splitline[3]));
                    xfovI.Add(new XElement(PositionAngleFieldXName, splitline[4]));
                    xfovI.Add(new XElement(OffsetXFieldXName, splitline[5]));
                    xfovI.Add(new XElement(OffsetYFieldXName, splitline[6]));
                    xfovI.Add(new XElement(ScaleFieldXName, splitline[7]));
                    xfovI.Add(new XElement(EnabledFieldXName, splitline[8]));
                    xfovI.Add(new XElement(Description2FieldXName, splitline[9]));
                    xfovI.Add(new XElement(UnitsFieldXName, splitline[10]));

                    for (int elm = 0; elm < fElementCount; elm++)
                    {
                        int      splitIndx = elementLength * elm + headerLength;
                        XElement xelm      = new XElement(FOVElementXName);
                        xelm.Add(new XElement(ShapeFieldXName, splitline[splitIndx + 0]));
                        xelm.Add(new XElement(ElementDescriptionFieldXName, splitline[splitIndx + 1]));
                        xelm.Add(new XElement(SizeXFieldXName, splitline[splitIndx + 2]));
                        xelm.Add(new XElement(SizeYFieldXName, splitline[splitIndx + 3]));
                        xelm.Add(new XElement(PixelsXFieldXName, splitline[splitIndx + 4]));
                        xelm.Add(new XElement(PixelsYFieldXName, splitline[splitIndx + 5]));
                        xelm.Add(new XElement(CenterOffsetXFieldXName, splitline[splitIndx + 6]));
                        xelm.Add(new XElement(CenterOffsetYFieldXName, splitline[splitIndx + 7]));
                        //xelm.Add(new XElement(Field_19, splitline(splitIndx + 8)));
                        //xelm.Add(new XElement(Field_20, splitline(splitIndx + 9)));
                        xelm.Add(new XElement(FOVElementNumberXName, elm.ToString()));
                        xfovI.Add(xelm);
                    }
                    xFovList.Add(xfovI);
                }
                fovline = fovDataFile.ReadLine();
            }
            xFovList.Save(fovXfile);
            fovDataFile.Close();
        }
        IEnumerable <Payload> TrackTransaction(Transaction transaction, SessionControl sessionControl = SessionControl.None, bool isNonInteractive = false)
        {
            yield return(engine.TrackTransaction(transaction.TransactionId, transaction.Affiliation, (double)transaction.TotalCostInMicros / 1000000, (double)transaction.ShippingCostInMicros / 1000000, (double)transaction.TotalTaxInMicros / 1000000, transaction.CurrencyCode, sessionControl, isNonInteractive));

            foreach (var item in transaction.Items)
            {
                yield return(engine.TrackTransactionItem(transaction.TransactionId, item.Name, (double)item.PriceInMicros / 1000000, item.Quantity, item.SKU, item.Category, transaction.CurrencyCode, sessionControl, isNonInteractive));
            }
        }
Esempio n. 10
0
        private static String GeneratePayloadData(HitType hitType, String pageName = null, String screenName = null, String category = null, String action = null, String label = null, uint? value = null, SessionControl sessionControl = SessionControl.None)
        {
            if (String.IsNullOrEmpty(TrackConfig.TrackingID))
                throw new ArgumentException("TrackingID can not be empty.");
            if (String.IsNullOrEmpty(TrackConfig.ClientID))
                throw new ArgumentException("ClientID can not be empty.");

            String v = PROTOCOL_VERSION;
            String tid = TrackConfig.TrackingID;
            String cid = TrackConfig.ClientID;
            String t = hitType.ToString().ToLower();
            String sr =
                TrackConfig.ScreenWidth != null
                && TrackConfig.ScreenHeight != null
                ? TrackConfig.ScreenWidth + "x" + TrackConfig.ScreenHeight
                : null;
            String dp = pageName;
            String cd = screenName;
            String ec = category;
            String ea = action;
            String el = label;
            String ev = value != null ? value.ToString() : null;
            String sc = sessionControl != SessionControl.None ? sessionControl.ToString().ToLower() : null;
            String uid = TrackConfig.UserID;
            String an = TrackConfig.ApplicationName;
            String aid = TrackConfig.ApplicationID;
            String av = TrackConfig.ApplicationVersion;

            var payload_data = new StringBuilder();

            // Required Information
            payload_data.Append("v=" + v);
            payload_data.Append("&tid=" + tid);
            payload_data.Append("&cid=" + cid);
            payload_data.Append("&t=" + t);

            // Tracking Information
            if (dp != null) payload_data.Append("&dp=" + dp);
            if (cd != null) payload_data.Append("&cd=" + cd);
            if (ec != null) payload_data.Append("&ec=" + ec);
            if (ea != null) payload_data.Append("&ea=" + ea);
            if (el != null) payload_data.Append("&el=" + el);
            if (ev != null) payload_data.Append("&ev=" + ev);

            // Session Information
            if (sc != null) payload_data.Append("&sc=" + sc);

            // Opitional Information
            if (uid != null) payload_data.Append("&uid=" + uid);
            if (sr != null) payload_data.Append("&sr=" + sr);
            if (an != null) payload_data.Append("&an=" + an);
            if (aid != null) payload_data.Append("&aid=" + aid);
            //if (av != null) payload_data.Append("&av=" + av);

            return payload_data.ToString();
        }
Esempio n. 11
0
 public void Awake()
 {
     if (control == null)
     {
         DontDestroyOnLoad(gameObject);
         control = this;
     }
     else if (control != this)
     {
         Destroy(gameObject);
     }
 }
Esempio n. 12
0
 //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 #region Constructors
 public MainViewModel()
 {
     // DialogService is used to handle dialogs
     sesControl            = new SessionControl();
     ReportList            = new ObservableCollection <ReportOSRViewModel>();
     DelegateList          = new ObservableCollection <Member>();
     NewSessionE           = true;
     OpenSessionE          = true;
     SaveSessionE          = false;
     SaveAsSessionE        = false;
     AddReportToListE      = false;
     DeleteReportFromListE = false;
 }
        public Payload TrackException(string description, bool isFatal, SessionControl sessionControl = SessionControl.None, bool isNonInteractive = false)
        {
            var additionalData = new Dictionary <string, string>();

            if (description != null)
            {
                additionalData.Add("exd", description);
            }
            if (!isFatal)
            {
                additionalData.Add("exf", "0");
            }
            return(PostData(HitType_Exception, additionalData, isNonInteractive, sessionControl));
        }
Esempio n. 14
0
        public ActionResult Settings()
        {
            if (Session["loggedUser"] != null)
            {
                SessionControl      sessionControl = (SessionControl)Session["loggedUser"];
                List <PrivacyRules> userRulesList  = new List <PrivacyRules>();
                UserAccount         userAccount    = null;

                using (var db = new BoardGamesDBEntities())
                {
                    Users user = db.Users.FirstOrDefault(u => u.Id == sessionControl.Id);
                    userAccount = new UserAccount()
                    {
                        Key      = user.Id,
                        Email    = user.Email,
                        Login    = user.Login,  // do not pass password - for safety
                        Name     = user.Name,
                        Surname  = user.Surname,
                        Sex      = user.Sex,
                        Birthday = user.Birthday,
                        Avatar   = user.Avatar
                    };

                    foreach (UsersPrivacyPolicy rule in db.UsersPrivacyPolicy.Where(p => p.UserId == user.Id).ToList())
                    {
                        userRulesList.Add(
                            new PrivacyRules()
                        {
                            RuleDescription = db.UsersPrivacyPolicyList.FirstOrDefault(p => p.Id == rule.RuleId).Description,
                            RuleLevel       = rule.RuleLevel
                        }
                            );
                    }
                }

                // Create final model
                UserProfileSettings userProfileSettings = new UserProfileSettings()
                {
                    UserInformation   = userAccount,
                    UserPrivacyPolicy = userRulesList
                };

                return(View(userProfileSettings));
            }

            // When user is not logged
            return(RedirectToAction("Index", "Home"));
        }
Esempio n. 15
0
        public async Task TrackPageview(string path, string title, string customerId, string userId = null,
                                        string screenResolution = null, string viewportSize = null, string documentEncoding = null,
                                        string screenColors     = null, string userLanguage = null,
                                        SessionControl session  = SessionControl.None)
        {
            List <KeyValuePair <string, string> > parameters = GetCommonParameters("pageview", customerId, userId);

            parameters.Add(new KeyValuePair <string, string>("dp", path));

            AddParameterIfNotEmpty(parameters, "dt", title);
            if (session != SessionControl.None)
            {
                parameters.Add(new KeyValuePair <string, string>("sc", session == SessionControl.Start ? "start" : "end"));
            }

            await SendCollectRequest(parameters);
        }
Esempio n. 16
0
 public ReportOSRView()
 {
     list = SessionControl.LoadListOfMember();
     InitializeComponent();
     delegateOfConsumer.ItemsSource                     = list;
     delegateOfConsumer.SelectedItem                    = report.DelegateOfConsumer;
     delegateOfPrimeContractor.ItemsSource              = list;
     delegateOfPrimeContractor.SelectedItem             = report.DelegateOfConsumer;
     delegateOfBuildControlPrimeContractor.ItemsSource  = list;
     delegateOfBuildControlPrimeContractor.SelectedItem = report.DelegateOfConsumer;
     delegateOfProjectDeveloper.ItemsSource             = list;
     delegateOfProjectDeveloper.SelectedItem            = report.DelegateOfConsumer;
     delegateOfBuilder.ItemsSource        = list;
     delegateOfBuilder.SelectedItem       = report.DelegateOfConsumer;
     delegateOfOtherCompany.ItemsSource   = list;
     delegateOfOtherCompany.SelectedItem  = report.DelegateOfConsumer;
     delegateOfOtherCompany2.ItemsSource  = list;
     delegateOfOtherCompany2.SelectedItem = report.DelegateOfConsumer;
     delegateOfOtherCompany3.ItemsSource  = list;
     delegateOfOtherCompany3.SelectedItem = report.DelegateOfConsumer;
 }
Esempio n. 17
0
        public ActionResult Login(UserAccount user)
        {
            try
            {
                if (user.Login != null && user.Password != null)
                {
                    using (var db = new BoardGamesDBEntities())
                    {
                        Users usr = db.Users.FirstOrDefault(u => (user.Login == u.Login || user.Login == u.Email) &&
                                                            user.Password == u.Password);
                        if (usr != null)
                        {
                            // User logged
                            SessionControl sessionControl = new SessionControl()
                            {
                                Id    = usr.Id,
                                Email = usr.Email,
                                Login = usr.Login
                            };
                            Session["loggedUser"] = sessionControl;
                            return(RedirectToAction("Index", "Home"));
                        }
                        else
                        {
                            // User not recognized
                            ViewBag.AdditionalCommunicat = "Podano niepoprawny identyfikator lub hasło.";
                        }
                    }
                }
            }
            catch (Exception)
            {
                ViewBag.AdditionalCommunicat = "Wystąpiły problemy techniczne. Spróbuj ponownie.";
            }

            return(View());
        }
Esempio n. 18
0
        private IDictionary <string, string> GetRequiredPayloadData(string hitType, bool isNonInteractive, SessionControl sessionControl)
        {
            var result = new Dictionary <string, string>();

            result.Add("v", "1");
            result.Add("tid", PropertyId);
            result.Add("cid", AnonymousClientId);
            result.Add("an", AppName);
            result.Add("av", AppVersion);
            result.Add("t", hitType);

            if (AppId != null)
            {
                result.Add("aid", AppId);
            }
            if (AppInstallerId != null)
            {
                result.Add("aiid", AppInstallerId);
            }
            if (ScreenName != null)
            {
                result.Add("cd", ScreenName);
            }
            if (isNonInteractive)
            {
                result.Add("ni", "1");
            }
            if (AnonymizeIP)
            {
                result.Add("aip", "1");
            }
            if (sessionControl != SessionControl.None)
            {
                result.Add("sc", sessionControl == SessionControl.Start ? "start" : "end");
            }
            if (ScreenResolution != null)
            {
                result.Add("sr", string.Format("{0}x{1}", ScreenResolution.Width, ScreenResolution.Height));
            }
            if (ViewportSize != null)
            {
                result.Add("vp", string.Format("{0}x{1}", ViewportSize.Width, ViewportSize.Height));
            }
            if (UserLanguage != null)
            {
                result.Add("ul", UserLanguage);
            }
            if (ScreenColorDepthBits.HasValue)
            {
                result.Add("sd", string.Format("{0}-bits", ScreenColorDepthBits.Value));
            }

            if (CampaignName != null)
            {
                result.Add("cn", CampaignName);
            }
            if (CampaignSource != null)
            {
                result.Add("cs", CampaignSource);
            }
            if (CampaignMedium != null)
            {
                result.Add("cm", CampaignMedium);
            }
            if (CampaignKeyword != null)
            {
                result.Add("ck", CampaignKeyword);
            }
            if (CampaignContent != null)
            {
                result.Add("cc", CampaignContent);
            }
            if (CampaignId != null)
            {
                result.Add("ci", CampaignId);
            }

            // other params available but not usually used for apps
            if (Referrer != null)
            {
                result.Add("dr", Referrer);
            }
            if (DocumentEncoding != null)
            {
                result.Add("de", DocumentEncoding);
            }
            if (GoogleAdWordsId != null)
            {
                result.Add("gclid", GoogleAdWordsId);
            }
            if (GoogleDisplayAdsId != null)
            {
                result.Add("dclid", GoogleDisplayAdsId);
            }
            if (IpOverride != null)
            {
                result.Add("uip", IpOverride);
            }
            if (UserAgentOverride != null)
            {
                result.Add("ua", UserAgentOverride);
            }
            if (DocumentLocationUrl != null)
            {
                result.Add("dl", DocumentLocationUrl);
            }
            if (DocumentHostName != null)
            {
                result.Add("dh", DocumentHostName);
            }
            if (DocumentPath != null)
            {
                result.Add("dp", DocumentPath);
            }
            if (DocumentTitle != null)
            {
                result.Add("dt", DocumentTitle);
            }
            if (LinkId != null)
            {
                result.Add("linkid", LinkId);
            }
            if (ExperimentId != null)
            {
                result.Add("xid", ExperimentId);
            }
            if (ExperimentVariant != null)
            {
                result.Add("xvar", ExperimentVariant);
            }
            if (DataSource != null)
            {
                result.Add("ds", DataSource);
            }
            if (UserId != null)
            {
                result.Add("uid", UserId);
            }
            if (GeographicalId != null)
            {
                result.Add("geoid", GeographicalId);
            }

            foreach (var dimension in CustomDimensions)
            {
                result.Add(string.Format("cd{0}", dimension.Key), dimension.Value);
            }
            foreach (var metric in CustomMetrics)
            {
                result.Add(string.Format("cm{0}", metric.Key), metric.Value.ToString(CultureInfo.InvariantCulture));
            }
            CustomDimensions.Clear();
            CustomMetrics.Clear();

            return(result);
        }
 public Payload TrackEvent(string category, string action, string label, int value, SessionControl sessionControl = SessionControl.None, bool isNonInteractive = false)
 {
     var additionalData = new Dictionary<string, string>();
     additionalData.Add("ec", category);
     additionalData.Add("ea", action);
     if (label != null) additionalData.Add("el", label);
     if (value != 0) additionalData.Add("ev", value.ToString(CultureInfo.InvariantCulture));
     return PostData(HitType_Event, additionalData, isNonInteractive, sessionControl);
 }
 public Payload TrackException(string description, bool isFatal, SessionControl sessionControl = SessionControl.None, bool isNonInteractive = false)
 {
     var additionalData = new Dictionary<string, string>();
     if (description != null) additionalData.Add("exd", description);
     if (!isFatal) additionalData.Add("exf", "0");
     return PostData(HitType_Exception, additionalData, isNonInteractive, sessionControl);
 }
Esempio n. 21
0
 public Payload TrackEvent(string category, string action, string label, int?value, SessionControl sessionControl = SessionControl.None, bool isNonInteractive = false)
 {
     return(TrackEvent(category, action, label, Convert.ToInt64(value), sessionControl, isNonInteractive));
 }
 public Payload TrackSocialInteraction(string network, string action, string target, SessionControl sessionControl = SessionControl.None, bool isNonInteractive = false)
 {
     var additionalData = new Dictionary<string, string>();
     additionalData.Add("sn", network);
     additionalData.Add("sa", action);
     additionalData.Add("st", target);
     return PostData(HitType_SocialNetworkInteraction, additionalData, isNonInteractive, sessionControl);
 }
        public Payload TrackSocialInteraction(string network, string action, string target, SessionControl sessionControl = SessionControl.None, bool isNonInteractive = false)
        {
            var additionalData = new Dictionary <string, string>();

            additionalData.Add("sn", network);
            additionalData.Add("sa", action);
            additionalData.Add("st", target);
            return(PostData(HitType_SocialNetworkInteraction, additionalData, isNonInteractive, sessionControl));
        }
 public Payload TrackUserTiming(string category, string variable, TimeSpan? time, string label, TimeSpan? loadTime, TimeSpan? dnsTime, TimeSpan? downloadTime, TimeSpan? redirectResponseTime, TimeSpan? tcpConnectTime, TimeSpan? serverResponseTime, SessionControl sessionControl = SessionControl.None, bool isNonInteractive = false)
 {
     var additionalData = new Dictionary<string, string>();
     if (category != null) additionalData.Add("utc", category);
     if (variable != null) additionalData.Add("utv", variable);
     if (time.HasValue) additionalData.Add("utt", Math.Round(time.Value.TotalMilliseconds).ToString(CultureInfo.InvariantCulture));
     if (label != null) additionalData.Add("utl", label);
     if (loadTime.HasValue) additionalData.Add("ptl", Math.Round(loadTime.Value.TotalMilliseconds).ToString(CultureInfo.InvariantCulture));
     if (dnsTime.HasValue) additionalData.Add("dns", Math.Round(dnsTime.Value.TotalMilliseconds).ToString(CultureInfo.InvariantCulture));
     if (downloadTime.HasValue) additionalData.Add("pdt", Math.Round(downloadTime.Value.TotalMilliseconds).ToString(CultureInfo.InvariantCulture));
     if (redirectResponseTime.HasValue) additionalData.Add("rrt", Math.Round(redirectResponseTime.Value.TotalMilliseconds).ToString(CultureInfo.InvariantCulture));
     if (tcpConnectTime.HasValue) additionalData.Add("tcp", Math.Round(tcpConnectTime.Value.TotalMilliseconds).ToString(CultureInfo.InvariantCulture));
     if (serverResponseTime.HasValue) additionalData.Add("srt", Math.Round(serverResponseTime.Value.TotalMilliseconds).ToString(CultureInfo.InvariantCulture));
     return PostData(HitType_UserTiming, additionalData, isNonInteractive, sessionControl);
 }
 public Payload TrackView(string screenName, SessionControl sessionControl = SessionControl.None, bool isNonInteractive = false)
 {
     ScreenName = screenName;
     return(PostData(HitType_Pageview, null, isNonInteractive, sessionControl));
 }
        private Payload PostData(string hitType, IDictionary <string, string> additionalData, bool isNonInteractive, SessionControl sessionControl)
        {
            var payloadData = GetRequiredPayloadData(hitType, isNonInteractive, sessionControl);

            if (additionalData != null)
            {
                foreach (var item in additionalData)
                {
                    payloadData.Add(item);
                }
            }
            return(new Payload(payloadData));
        }
 public Payload TrackView(string screenName, SessionControl sessionControl = SessionControl.None, bool isNonInteractive = false)
 {
     ScreenName = screenName;
     return PostData(HitType_Pageview, null, isNonInteractive, sessionControl);
 }
        IEnumerable<Payload> TrackTransaction(Transaction transaction, SessionControl sessionControl = SessionControl.None, bool isNonInteractive = false)
        {
            yield return engine.TrackTransaction(transaction.TransactionId, transaction.Affiliation, (double)transaction.TotalCostInMicros / 1000000, (double)transaction.ShippingCostInMicros / 1000000, (double)transaction.TotalTaxInMicros / 1000000, transaction.CurrencyCode, sessionControl, isNonInteractive);

            foreach (var item in transaction.Items)
            {
                yield return engine.TrackTransactionItem(transaction.TransactionId, item.Name, (double)item.PriceInMicros / 1000000, item.Quantity, item.SKU, item.Category, transaction.CurrencyCode, sessionControl, isNonInteractive);
            }
        }
        IDictionary<string, string> GetRequiredPayloadData(string hitType, bool isNonInteractive, SessionControl sessionControl)
        {
            var result = new Dictionary<string, string>();
            result.Add("v", "1");
            result.Add("tid", PropertyId);
            result.Add("cid", AnonymousClientId);
            result.Add("an", AppName);
            result.Add("av", AppVersion);
            result.Add("t", hitType);
            if (ScreenName != null) result.Add("cd", ScreenName);
            if (isNonInteractive) result.Add("ni", "1");
            if (AnonymizeIP) result.Add("aip", "1");
            if (sessionControl != SessionControl.None) result.Add("sc", sessionControl == SessionControl.Start ? "start" : "end");
            if (ScreenResolution.HasValue) result.Add("sr", string.Format("{0}x{1}", ScreenResolution.Value.Width, ScreenResolution.Value.Height));
            if (ViewportSize.HasValue) result.Add("vp", string.Format("{0}x{1}", ViewportSize.Value.Width, ViewportSize.Value.Height));
            if (UserLanguage != null) result.Add("ul", UserLanguage.ToLowerInvariant());
            if (ScreenColorDepthBits.HasValue) result.Add("sd", string.Format("{0}-bits", ScreenColorDepthBits.Value));
            if (DocumentEncoding != null) result.Add("de", DocumentEncoding);
            foreach (var dimension in CustomDimensions)
            {
                result.Add(string.Format("cd{0}", dimension.Key), dimension.Value);
            }
            foreach (var metric in CustomMetrics)
            {
                result.Add(string.Format("cm{0}", metric.Key), metric.Value.ToString(CultureInfo.InvariantCulture));
            }
            CustomDimensions.Clear();
            CustomMetrics.Clear();

            return result;
        }
 public Payload TrackTransactionItem(string transactionId, string name, double price, long quantity, string code, string category, string currencyCode, SessionControl sessionControl = SessionControl.None, bool isNonInteractive = false)
 {
     var additionalData = new Dictionary<string, string>();
     additionalData.Add("ti", transactionId);
     if (name != null) additionalData.Add("in", name);
     if (price != 0) additionalData.Add("ip", price.ToString(CultureInfo.InvariantCulture));
     if (quantity != 0) additionalData.Add("iq", quantity.ToString(CultureInfo.InvariantCulture));
     if (code != null) additionalData.Add("ic", code);
     if (category != null) additionalData.Add("iv", category);
     if (currencyCode != null) additionalData.Add("cu", currencyCode);
     return PostData(HitType_TransactionItem, additionalData, isNonInteractive, sessionControl);
 }
 public Payload TrackTransaction(string id, string affiliation, double revenue, double shipping, double tax, string currencyCode, SessionControl sessionControl = SessionControl.None, bool isNonInteractive = false)
 {
     var additionalData = new Dictionary<string, string>();
     additionalData.Add("ti", id);
     if (affiliation != null) additionalData.Add("ta", affiliation);
     if (revenue != 0) additionalData.Add("tr", revenue.ToString(CultureInfo.InvariantCulture));
     if (shipping != 0) additionalData.Add("ts", shipping.ToString(CultureInfo.InvariantCulture));
     if (tax != 0) additionalData.Add("tt", tax.ToString(CultureInfo.InvariantCulture));
     if (currencyCode != null) additionalData.Add("cu", currencyCode);
     return PostData(HitType_Transaction, additionalData, isNonInteractive, sessionControl);
 }
        public Payload TrackUserTiming(string category, string variable, TimeSpan?time, string label, TimeSpan?loadTime, TimeSpan?dnsTime, TimeSpan?downloadTime, TimeSpan?redirectResponseTime, TimeSpan?tcpConnectTime, TimeSpan?serverResponseTime, SessionControl sessionControl = SessionControl.None, bool isNonInteractive = false)
        {
            var additionalData = new Dictionary <string, string>();

            if (category != null)
            {
                additionalData.Add("utc", category);
            }
            if (variable != null)
            {
                additionalData.Add("utv", variable);
            }
            if (time.HasValue)
            {
                additionalData.Add("utt", Math.Round(time.Value.TotalMilliseconds).ToString(CultureInfo.InvariantCulture));
            }
            if (label != null)
            {
                additionalData.Add("utl", label);
            }
            if (loadTime.HasValue)
            {
                additionalData.Add("ptl", Math.Round(loadTime.Value.TotalMilliseconds).ToString(CultureInfo.InvariantCulture));
            }
            if (dnsTime.HasValue)
            {
                additionalData.Add("dns", Math.Round(dnsTime.Value.TotalMilliseconds).ToString(CultureInfo.InvariantCulture));
            }
            if (downloadTime.HasValue)
            {
                additionalData.Add("pdt", Math.Round(downloadTime.Value.TotalMilliseconds).ToString(CultureInfo.InvariantCulture));
            }
            if (redirectResponseTime.HasValue)
            {
                additionalData.Add("rrt", Math.Round(redirectResponseTime.Value.TotalMilliseconds).ToString(CultureInfo.InvariantCulture));
            }
            if (tcpConnectTime.HasValue)
            {
                additionalData.Add("tcp", Math.Round(tcpConnectTime.Value.TotalMilliseconds).ToString(CultureInfo.InvariantCulture));
            }
            if (serverResponseTime.HasValue)
            {
                additionalData.Add("srt", Math.Round(serverResponseTime.Value.TotalMilliseconds).ToString(CultureInfo.InvariantCulture));
            }
            return(PostData(HitType_UserTiming, additionalData, isNonInteractive, sessionControl));
        }
 private Payload PostData(string hitType, IDictionary<string, string> additionalData, bool isNonInteractive, SessionControl sessionControl)
 {
     var payloadData = GetRequiredPayloadData(hitType, isNonInteractive, sessionControl);
     if (additionalData != null)
     {
         foreach (var item in additionalData)
         {
             payloadData.Add(item);
         }
     }
     return new Payload(payloadData);
 }
        IDictionary <string, string> GetRequiredPayloadData(string hitType, bool isNonInteractive, SessionControl sessionControl)
        {
            var result = new Dictionary <string, string>();

            result.Add("v", "1");
            result.Add("tid", PropertyId);
            result.Add("cid", AnonymousClientId);
            result.Add("an", AppName);
            result.Add("av", AppVersion);
            result.Add("t", hitType);
            if (ScreenName != null)
            {
                result.Add("cd", ScreenName);
            }
            if (isNonInteractive)
            {
                result.Add("ni", "1");
            }
            if (AnonymizeIP)
            {
                result.Add("aip", "1");
            }
            if (sessionControl != SessionControl.None)
            {
                result.Add("sc", sessionControl == SessionControl.Start ? "start" : "end");
            }
            if (ScreenResolution.HasValue)
            {
                result.Add("sr", string.Format("{0}x{1}", ScreenResolution.Value.Width, ScreenResolution.Value.Height));
            }
            if (ViewportSize.HasValue)
            {
                result.Add("vp", string.Format("{0}x{1}", ViewportSize.Value.Width, ViewportSize.Value.Height));
            }
            if (UserLanguage != null)
            {
                result.Add("ul", UserLanguage.ToLowerInvariant());
            }
            if (ScreenColorDepthBits.HasValue)
            {
                result.Add("sd", string.Format("{0}-bits", ScreenColorDepthBits.Value));
            }
            if (DocumentEncoding != null)
            {
                result.Add("de", DocumentEncoding);
            }
            foreach (var dimension in CustomDimensions)
            {
                result.Add(string.Format("cd{0}", dimension.Key), dimension.Value);
            }
            foreach (var metric in CustomMetrics)
            {
                result.Add(string.Format("cm{0}", metric.Key), metric.Value.ToString(CultureInfo.InvariantCulture));
            }
            CustomDimensions.Clear();
            CustomMetrics.Clear();

            return(result);
        }
Esempio n. 35
0
        public static void CalibrateGuider()
        {
            //AtGuider2 Application for automated guider camera calibration

            /*
             * This application locates a suitable calibration star for guider calibration,
             *   slews the mount to frame the star in the guider FOV,
             *   adjusts the guide camera exposure for the targer,
             *   runs a calibration.
             *
             */

            const double InitialGuiderExposure = 0.5;   //Initial exposure level for guider camera images.
            const double OptGuiderADU          = 20000; //Target ADU for guide star in guider camera images.

            //Open text output form

            LogEvent       lg          = new LogEvent();
            SessionControl openSession = new SessionControl();

            //Lets get started...
            //plate solve current location to prime target star search and to acquire image camera position angle

            lg.LogIt("Plate Solving for current position and position angle");
            double imagePA = PlateSolve();

            lg.LogIt("Position Angle: " + imagePA.ToString("0.000"));
            //Create an FOV object for the guider from the "My equipment.txt" Field of View Indicators file
            lg.LogIt("Parsing My equipment.txt file for FOVI definitions");
            FOVMiracles guiderFOV = new FOVMiracles();

            lg.LogIt("Active Guider found: " + guiderFOV.FOVName);
            //Set the chart size for something pleasant around the FOVI's
            guiderFOV.SetStarChartSize();
            //Find a calibration star near the current position
            //  that is sufficiently isolated from other similar stars
            lg.LogIt("Looking for proximate star to use for calibration");
            DBQStar foundStar = FindStar(guiderFOV.FOVIsolation);

            if (foundStar == null)
            {
                lg.LogIt("No calibration star found.  Try another location.");
            }
            else
            {
                lg.LogIt("Calibration star found: " + foundStar.StarName);
                //Closed Loop Slew (following standard slew -- see notes) to the target guide star
                lg.LogIt("Centering imaging camera on calibration star");
                bool slewDone1 = SlewToStar(foundStar.StarName, foundStar.StarRA, foundStar.StarDec);
                if (slewDone1)
                {
                    lg.LogIt("Calibration star centered");
                }
                else
                {
                    lg.LogIt("There was a problem centering the calibration star");
                }
                //Calculate a pointing position that would put the target star in the guider FOV
                lg.LogIt("Calculating offset for centering star in guider FOV");
                DBQStar tgtPosition = guiderFOV.OffsetCenter(foundStar, imagePA);
                lg.LogIt("Offset calculated for pointing at " +
                         tgtPosition.StarRA.ToString("0.000") + " , " +
                         tgtPosition.StarDec.ToString("0.000"));

                //Closed Loop Slew (following standard slew -- see notes) to that offset position
                lg.LogIt("Centering calibration star in guider FOV");
                bool slewDone = SlewToPosition(tgtPosition.StarRA, tgtPosition.StarDec);
                if (slewDone1)
                {
                    lg.LogIt("Calibration star centered in guider FOV");
                }
                else
                {
                    lg.LogIt("Could not recenter the calibration star");
                }
                //plate solve current location -- not necessary but it sets up the star chart nicely for viewing
                //  note that we are not in such a hurry that we can't mess around a bit
                lg.LogIt("Checking offset position with a plate solve");
                imagePA = PlateSolve();
                //Reset the chart size for something pleasant around the FOVI's
                guiderFOV.SetStarChartSize();
                //center the star chart on the pointing location ==  once again, for esthetic purposes
                lg.LogIt("Recentering chart");
                sky6StarChart tsxsc = new sky6StarChart
                {
                    RightAscension = tgtPosition.StarRA,
                    Declination    = tgtPosition.StarDec
                };
                //Take a guider image and adjust the exposure to an optimal level
                lg.LogIt("Adjusting guider exposure to achieve ADU of " + OptGuiderADU.ToString());
                double optExposure = OptimizeExposure(InitialGuiderExposure, OptGuiderADU);
                lg.LogIt("Best guider exposure determined to be " + optExposure.ToString("0.00") + " secs");
                //Calibrate the guider
                lg.LogIt("Starting direct guide calibration");
                string calDone = CalibrateGuideCam(optExposure, false); //No AO
                lg.LogIt("Direct guide " + calDone);
                //Calibrate the AO, if enabled
                TargetPlan tPlan = new TargetPlan(openSession.CurrentTargetName);
                lg.LogIt("Starting AO guide calibration");
                calDone = CalibrateGuideCam(optExposure, true); // AO
                lg.LogIt("AO guide " + calDone);
            }
        }
        public Payload TrackEvent(string category, string action, string label, int value, SessionControl sessionControl = SessionControl.None, bool isNonInteractive = false)
        {
            var additionalData = new Dictionary <string, string>();

            additionalData.Add("ec", category);
            additionalData.Add("ea", action);
            if (label != null)
            {
                additionalData.Add("el", label);
            }
            if (value != 0)
            {
                additionalData.Add("ev", value.ToString(CultureInfo.InvariantCulture));
            }
            return(PostData(HitType_Event, additionalData, isNonInteractive, sessionControl));
        }
Esempio n. 37
0
        public ActionResult ChangePassword(ChangePassword changePassword)
        {
            if (Session["loggedUser"] == null)
            {
                return(RedirectToAction("Index", "Home"));
            }

            try
            {
                if (changePassword.CurrentPassword != null && changePassword.NewPassword != null && changePassword.NewPasswordCopy != null)
                {
                    if (changePassword.NewPassword == changePassword.NewPasswordCopy)
                    {
                        using (var db = new BoardGamesDBEntities())
                        {
                            SessionControl sessionControl = (SessionControl)Session["loggedUser"];
                            Users          user           = db.Users.FirstOrDefault(u => u.Id == sessionControl.Id);

                            if (changePassword.CurrentPassword == user.Password)
                            {
                                using (var transaction = db.Database.BeginTransaction())
                                {
                                    try
                                    {
                                        Users currentUser = db.Users.FirstOrDefault(u => u.Login == user.Login && u.Password == user.Password);
                                        if (currentUser != null)
                                        {
                                            currentUser.Password = changePassword.NewPassword;
                                            db.SaveChanges();
                                            transaction.Commit();

                                            // Password has been changed
                                            Session.Clear();
                                            return(View("~/Views/Account/ChangePasswordSuccess.cshtml"));
                                        }
                                        else
                                        {
                                            ViewBag.AdditionalCommunicat = "Wystąpiły problemy techniczne. Spróbuj ponownie.";
                                        }
                                    }
                                    catch (Exception)
                                    {
                                        transaction.Rollback();
                                        ViewBag.AdditionalCommunicat = "Wystąpiły problemy techniczne. Spróbuj ponownie.";
                                    }
                                }
                            }
                            else
                            {
                                ViewBag.AdditionalCommunicat = "Podano nieprawidłowe hasło.";
                            }
                        }
                    }
                    else
                    {
                        ViewBag.AdditionalCommunicat = "Powtórz poprawnie nowe hasło.";
                    }
                }
            }
            catch (Exception)
            {
                ViewBag.AdditionalCommunicat = "Wystąpiły problemy techniczne. Spróbuj ponownie.";
            }

            return(View());
        }