Esempio n. 1
0
            void LateUpdate()
            {
                foreach (CarScreenWidgetBase widget in logic.carScreenWidgets_)
                {
                    if (WidgetsFilter.Contains(widget.name))
                    {
                        widget.gameObject.SetActive(false);
                    }
                }
                foreach (GameObject screensaver in logic.screensavers_)
                {
                    screensaver.SetActive(false);
                }
                logic.screensaverBackground_.SetActive(false);
                logic.minimap_.SetActive(false);
                logic.minimapLogic_.enabled   = false;
                logic.CarScreenSaverDisabled_ = true;

                string cameramode = G.Sys.PlayerManager_.Current_.playerData_.CarCamera_.activeCameraMode_.GetType().Name;

                if (cameramode == "CockpitCamMode")
                {
                    logic.errorText_.textMesh_.text     = Chat.GetMessages(Settings.CockpitCharsPerLine, Settings.CockpitChatMargin);
                    logic.errorText_.textMesh_.fontSize = Settings.CockpitChatFontSize;
                }
                else
                {
                    logic.errorText_.textMesh_.text     = Chat.GetMessages(Settings.CharsPerLine);
                    logic.errorText_.textMesh_.fontSize = Settings.ChatFontSize;
                }

                logic.errorText_.gameObject.SetActive(true);
                logic.errorText_.enabled = true;
                //TODO: make font smaller
            }
Esempio n. 2
0
        public ActionResult Widgets(WidgetsFilter request)
        {
            request.SetDefaultPaging();
            var model = GetCommand <GetSiteSettingsWidgetsCommand>().ExecuteCommand(request);

            // TODO: add servercontrolwidgetvalidation command and check if server controls exists in the server.

            /*if (model.ValidationMessages != null && model.ValidationMessages.Count > 0)
             * {
             *  Messages.AddWarn(model.ValidationMessages.ToArray());
             * }
             */

            return(View(model));
        }
        private List <SiteSettingWidgetItemViewModel> GetWidgets(GetWidgetUsagesCommandRequest request, out int totalCount)
        {
            var filter = new WidgetsFilter();

            filter.CopyFrom(request.Options);
            filter.PageSize       = filter.PageNumber * filter.PageSize;
            filter.PageNumber     = 1;
            filter.Column         = null;
            filter.ChildContentId = request.WidgetId;

            var widgets = widgetService.GetFilteredWidgetsList(filter);

            totalCount = widgets.TotalCount;

            return(widgets.Items.ToList());
        }
Esempio n. 4
0
        public SiteSettingWidgetListViewModel GetFilteredWidgetsList(WidgetsFilter filter)
        {
            filter = filter ?? new WidgetsFilter();
            filter.SetDefaultSortingOptions("WidgetName");

            var query = repository.AsQueryable <Widget>()
                        .Where(f => !f.IsDeleted &&
                               (f.Status == ContentStatus.Published || f.Status == ContentStatus.Draft) &&
                               (f.Original == null || !f.Original.IsDeleted));

            if (filter.ChildContentId.HasValue && !filter.ChildContentId.Value.HasDefaultValue())
            {
                query = query.Where(f => f.ChildContents.Any(cc => cc.Child.Id == filter.ChildContentId.Value));
            }

            var modelQuery = query.Select(f => new SiteSettingWidgetItemViewModel
            {
                Id               = f.Id,
                OriginalId       = f.Status == ContentStatus.Draft && f.Original != null && f.Original.Status == ContentStatus.Published ? f.Original.Id : f.Id,
                Version          = f.Version,
                OriginalVersion  = f.Status == ContentStatus.Draft && f.Original != null && f.Original.Status == ContentStatus.Published ? f.Original.Version : f.Version,
                WidgetName       = f.Name,
                CategoryName     = (!f.Category.IsDeleted) ? f.Category.Name : null,
                WidgetEntityType = f.GetType(),
                IsPublished      = f.Status == ContentStatus.Published || (f.Original != null && f.Original.Status == ContentStatus.Published),
                HasDraft         = f.Status == ContentStatus.Draft
            });

            if (!string.IsNullOrWhiteSpace(filter.SearchQuery))
            {
                var searchQuery = filter.SearchQuery.ToLowerInvariant();
                modelQuery = modelQuery.Where(f => f.CategoryName.ToLower().Contains(searchQuery) || f.WidgetName.ToLower().Contains(searchQuery));
            }

            modelQuery = modelQuery.ToList()
                         .GroupBy(g => g.OriginalId)
                         .Select(grp => grp.OrderByDescending(p => p.HasDraft).First())
                         .AsQueryable();

            var count   = modelQuery.ToRowCountFutureValue();
            var widgets = modelQuery.AddSortingAndPaging(filter).ToList();

            widgets.ForEach(
                item =>
            {
                if (typeof(ServerControlWidget).IsAssignableFrom(item.WidgetEntityType))
                {
                    item.WidgetType = WidgetType.ServerControl;
                }
                else if (typeof(HtmlContentWidget).IsAssignableFrom(item.WidgetEntityType))
                {
                    item.WidgetType = WidgetType.HtmlContent;
                }
                else
                {
                    item.WidgetType = null;
                }
            });

            return(new SiteSettingWidgetListViewModel(widgets, filter, count.Value));
        }