public ConfirmCameraSyncWindow(UserContainer admin, CameraDetails camera)
        {
            InitializeComponent();

            var driver = Simulator.Instance.Drivers.FirstOrDefault(d => d.Driver.CarNumberRaw == camera.CarNumber);

            var sync = new CameraSync(admin, driver, camera);
            this.DataContext = sync;
        }
        protected override void InsertItem(int index, UserContainer item)
        {
            base.InsertItem(index, item);
            item.WatchedDriver = _driver.Driver;

            if (item.User.CustId == SyncManager.Instance.UserId)
            {
                _driver.Watching = true;
            }
        }
Example #3
0
        protected override void InsertItem(int index, UserContainer item)
        {
            base.InsertItem(index, item);
            item.WatchedDriver = _driver.Driver;

            if (item.User.CustId == SyncManager.Instance.UserId)
            {
                _driver.Watching = true;
            }
        }
            public CameraSync(UserContainer admin, DriverContainer driver, CameraDetails camera)
            {
                this.Admin = admin;
                this.Driver = driver;
                this.Camera = camera;

                if (camera.ReplayChangeType == CameraDetails.ReplayChangeTypes.SetReplayFrame)
                {
                    var seconds = Simulator.Instance.Telemetry.SessionTime.Value - (camera.Frame/60f);
                    var time = TimeSpan.FromSeconds(seconds);
                    this.SessionTime = string.Format("{0:0}:{1:00}:{2:00}", time.Hours, time.Minutes, time.Seconds);
                }
                else if (camera.ReplayChangeType == CameraDetails.ReplayChangeTypes.SetSessionTime)
                {
                    var time = TimeSpan.FromSeconds(camera.SessionTime);
                    this.SessionTime = string.Format("{0:0}:{1:00}:{2:00}", time.Hours, time.Minutes, time.Seconds);
                }
            }
Example #5
0
        private void UpdateUsers(IEnumerable<User> users)
        {
            var newUsers = new List<UserContainer>();
            foreach (var user in users)
            {
                var container = _users.FromId(user.CustId);
                if (container == null)
                {
                    container = new UserContainer(user);
                }
                else
                {
                    container.User = user;
                }

                newUsers.Add(container);
            }

            _users.Clear();

            if (this.Status == ConnectionStatus.Connected)
            { 
                foreach (var user in newUsers)
                {
                    _users.Add(user);
                }
            }
            else
            {
                _users.Add(new UserContainer(_offlineUser));
            }

            this.OnUsersUpdated();
        }