예제 #1
0
        public bool UpdateVibe(int vibe, string phonenumber)
        {
            bool retval = true;
            GPSTrackerEntities1 context = new GPSTrackerEntities1();

            // Create or overwrite LimerInfo for user
            LR_LimerInfo _info = context.LR_LimerInfo.Where(p => p.TrackerId == phonenumber).FirstOrDefault();

            if (_info == null)
            {
                retval = false;
            }
            else
            {
                _info.Vibe = vibe;

                try
                {
                    context.SaveChanges();
                }
                catch (System.Exception e)
                {
                    ExceptionHandler.HandleGeneralException(e);
                    retval = false;
                }
            }

            return(retval);
        }
예제 #2
0
        public bool CompleteRegistration(string fname, string lname, string phonenumber, string passcode)
        {
            bool retval = true;
            GPSTrackerEntities1 context = new GPSTrackerEntities1();

            LR_Passcode pass = context.LR_Passcode.Where(p => p.phonenumber == phonenumber).FirstOrDefault();

            retval = pass != null && pass.Passcode.Trim() == passcode.Trim();

            if (retval)
            {
                Trackers newTracker = context.Trackers.Where(t => t.Id == phonenumber).FirstOrDefault();
                // test that this works if tracker does not exist and if it does exist
                if (newTracker == null)
                {
                    newTracker = new Trackers();
                    context.Trackers.AddObject(newTracker);
                    newTracker.Id = phonenumber;
                }

                newTracker.Name   = fname + " " + lname;
                newTracker.Type   = "TYPMB";
                newTracker.Status = "LR002";

                // Create or overwrite LimerInfo for user
                LR_LimerInfo _info = context.LR_LimerInfo.Where(p => p.TrackerId == phonenumber).FirstOrDefault();

                if (_info == null)
                {
                    _info = new LR_LimerInfo();
                    context.LR_LimerInfo.AddObject(_info);
                    _info.TrackerId = phonenumber;
                }

                _info.Vibe    = 1;
                _info.Status  = 3;
                _info.Message = "Hey, I'm on LimeR!!!";

                try
                {
                    context.SaveChanges();
                }
                catch (System.Exception e)
                {
                    ExceptionHandler.HandleGeneralException(e);
                    retval = false;
                }
            }
            return(retval);
        }
예제 #3
0
        public static CellTracker GetLRCellTracker(string trackerId)
        {
            LimeRCellTracker tracker = null;

            GPSTrackerEntities1 context = new GPSTrackerEntities1();


            // Need to not allow disabled statuses here
            Trackers _trackersDB =
                context.Trackers.Where(t => t.Id == trackerId).FirstOrDefault();

            LR_LimerInfo _trackersInfo =
                context.LR_LimerInfo.Where(t => t.TrackerId == trackerId).FirstOrDefault();

            if (_trackersDB != null && _trackersDB.Status == "LR002")
            {
                tracker = new LimeRCellTracker(_trackersDB.Id, _trackersDB.Name, _trackersDB.Description, _trackersDB.Status, _trackersDB.Id,
                                               _trackersDB.Password, _trackersDB.AuthorizedNumbers, _trackersDB.LastUpdate, _trackersDB.LastLat, _trackersDB.LastLon, _trackersInfo.Vibe, _trackersInfo.Status, _trackersInfo.Message);
            }

            return(tracker);
        }