Beispiel #1
0
        private ActionResult ScrobbleStatusOnFile(SVR_VideoLocal file, bool?watched, long?resumePosition)
        {
            if (!(watched ?? false) && resumePosition != null)
            {
                var safeRP = resumePosition ?? 0;
                if (safeRP < 0)
                {
                    safeRP = 0;
                }

                if (safeRP >= file.Duration)
                {
                    watched = true;
                }
                else
                {
                    file.SetResumePosition(safeRP, User.JMMUserID);
                }
            }

            if (watched != null)
            {
                var safeWatched = watched ?? false;
                file.ToggleWatchedStatus(safeWatched, User.JMMUserID);
                if (safeWatched)
                {
                    file.SetResumePosition(0, User.JMMUserID);
                }
            }

            return(Ok());
        }