Esempio n. 1
0
        public BllObject NewObjectProperties(int parentId, bool pageOrTemplate)
        {
            var obj = BllObject.Create(parentId, pageOrTemplate);

            obj.PageTemplate = pageOrTemplate ? PageRepository.GetPagePropertiesById(parentId).PageTemplate : PageTemplateRepository.GetPageTemplatePropertiesById(parentId);
            return(obj);
        }
Esempio n. 2
0
        private int CopyObject(BllObject sourceObj)
        {
            var tempObj = ObjectRepository.GetObjectPropertiesById(sourceObj.Id);

            tempObj.Id       = 0;
            tempObj.PageId   = DestinationId;
            tempObj.LockedBy = 0;
            var newObj = DefaultRepository.Save <BllObject, ObjectDAL>(tempObj);

            if (sourceObj.IsObjectContainerType)
            {
                CopyContainer(newObj.Id, sourceObj.Container);
                CopyContainerStatuses(newObj.Id, sourceObj.Id);
            }
            else if (sourceObj.IsObjectFormType)
            {
                CopyContentForm(newObj.Id, sourceObj.ContentForm);
            }
            var formats        = ObjectFormatRepository.GetFormatsByObjectId(sourceObj.Id);
            var newDefFormatId = CopyObjectFormats(newObj.Id, sourceObj);

            if (newDefFormatId != 0)
            {
                ObjectRepository.UpdateDefaultFormatId(newObj.Id, newDefFormatId);
            }

            CopyObjectValues(newObj.Id, sourceObj);

            return(newObj.Id);
        }
Esempio n. 3
0
        public BllObject UpdateObjectProperties(BllObject bllObject, IEnumerable <int> activeStatuses)
        {
            var result = ObjectRepository.UpdateObjectProperties(bllObject);

            if (activeStatuses != null)
            {
                bllObject.BindWithStatuses(activeStatuses, bllObject.IsObjectContainerType);
            }
            return(result);
        }
Esempio n. 4
0
        internal static BllObject UpdateObjectProperties(BllObject bllObject)
        {
            var oldObject = GetObjectPropertiesById(bllObject.Id);
            var result    = DefaultRepository.Update <BllObject, ObjectDAL>(bllObject);

            ManageObjectType(bllObject, oldObject, result);

            DeleteDefaultValues(result.Id);
            SetDefaultValues(bllObject.DefaultValues, result.Id);
            return(result);
        }
Esempio n. 5
0
        public BllObject SaveObjectProperties(BllObject bllObject, IEnumerable <int> activeStatuses, bool isReplayAction)
        {
            var result = ObjectRepository.SaveObjectProperties(bllObject);

            if (activeStatuses != null)
            {
                result.BindWithStatuses(activeStatuses, result.IsObjectContainerType);
            }
            CreateDefaultFormat(result, isReplayAction);
            return(result);
        }
 private static IEnumerable <ListItem> GoThroughObjFormats(BllObject obj)
 {
     return(obj.ChildObjectFormats.Select(x =>
     {
         var val = obj.DefaultFormatId == x.Id ? obj.Name : $"{obj.Name}.{x.Name}";
         return new ListItem
         {
             Text = val,
             Value = val
         };
     }));
 }
Esempio n. 7
0
        internal static ObjectViewModel Create(BllObject obj, string tabId, int parentId, IObjectService objectService)
        {
            var model = Create <ObjectViewModel>(obj, tabId, parentId);

            model._service  = objectService;
            model._parentId = parentId;

            var activeStatuses = objectService.GetActiveStatusesByObjectId(model.Data.Id).OrderBy(x => x.Weight).ToList();

            if (!activeStatuses.Any())
            {
                activeStatuses.Add(BLL.StatusType.GetPublished(obj.PageTemplate.SiteId));
            }

            model.ActiveStatusTypeIds       = activeStatuses.Select(x => x.Id).ToList();
            model.ActiveStatusTypeListItems = activeStatuses.Select(x => new ListItem {
                Value = x.Id.ToString(), Selected = true, Text = x.Name
            }).ToList();
            model._parentTemplateObjects = new InitPropertyValue <List <BllObject> >(() => objectService.GetFreeTemplateObjectsByPageId(model._parentId).ToList());
            model._sortingItems          = new InitPropertyValue <IEnumerable <SortingItem> >(() => string.IsNullOrEmpty(model.Data.Container?.OrderStatic) ? Enumerable.Empty <SortingItem>() : SortingItemHelper.Deserialize(model.Data.Container.OrderStatic));
            model._netLanguages          = new InitPropertyValue <List <ListItem> >(() => objectService.GetNetLanguagesAsListItems().ToList());
            model.EntityDataListArgs     = new EntityDataListArgs
            {
                EntityTypeCode   = Constants.EntityTypeCode.StatusType,
                ParentEntityId   = model.Data.Container?.Content?.WorkflowBinding?.WorkflowId ?? 0,
                SelectActionCode = Constants.ActionCode.MultipleSelectStatusesForWorkflow,
                ListId           = -1 * DateTime.Now.Millisecond,
                MaxListHeight    = 200,
                MaxListWidth     = 350
            };

            model.PublishedId         = objectService.GetPublishedStatusIdBySiteId(model.Data.PageTemplate.SiteId);
            model.SelectionIsStarting = string.IsNullOrEmpty(model.Data.Container.SelectStart) ? ArticleSelectionMode.FromTheFirstArticle : ArticleSelectionMode.FromTheSpecifiedArticle;
            model.SelectionIncludes   = string.IsNullOrEmpty(model.Data.Container.SelectTotal) ? ArticleSelectionIncludeMode.AllArticles : ArticleSelectionIncludeMode.SpecifiedNumberOfArticles;

            if (string.IsNullOrEmpty(model.Data.Container.SelectStart))
            {
                model.Data.Container.SelectStart = "1";
            }

            if (string.IsNullOrEmpty(model.Data.Container.SelectTotal))
            {
                model.Data.Container.SelectTotal = "10";
            }

            if (!model.Data.Container.Duration.HasValue)
            {
                model.Data.Container.Duration = 10;
            }

            return(model);
        }
Esempio n. 8
0
        private static void ManageObjectType(BllObject newObject, BllObject oldObject, BllObject result)
        {
            if (newObject.TypeId != oldObject.TypeId) //object type was changed
            {
                if (oldObject.IsObjectContainerType)
                {
                    DeleteContainer(oldObject.Id);
                }
                else if (oldObject.IsObjectFormType)
                {
                    DeleteForm(oldObject.Id);
                }

                if (newObject.IsObjectContainerType)
                {
                    newObject.Container.ObjectId = result.Id;
                    result.Container             = SaveContainer(newObject.Container);

                    // ReSharper disable once PossibleInvalidOperationException
                    result.Container.Content = ContentRepository.GetById(result.Container.ContentId.Value);
                }

                else if (newObject.IsObjectFormType)
                {
                    newObject.ContentForm.ObjectId = result.Id;
                    result.ContentForm             = SaveContentForm(newObject.ContentForm);

                    // ReSharper disable once PossibleInvalidOperationException
                    result.ContentForm.Content = ContentRepository.GetById(result.ContentForm.ContentId.Value);
                }
            }

            else // just update form or container
            {
                if (newObject.IsObjectFormType)
                {
                    result.ContentForm = oldObject.ContentForm.ContentId == null?SaveContentForm(newObject.ContentForm) : UpdateForm(newObject.ContentForm);
                }
                if (newObject.IsObjectContainerType)
                {
                    result.Container = oldObject.Container.ContentId == null?SaveContainer(newObject.Container) : UpdateContainer(newObject.Container);
                }
            }
        }
Esempio n. 9
0
        private int?CreateDefaultFormat(BllObject bllObject, bool isReplayAction)
        {
            var template = PageTemplateRepository.GetPageTemplatePropertiesById(bllObject.PageTemplateId);
            var format   = ObjectFormat.Create(bllObject.Id, bllObject.PageOrTemplate, template.SiteIsDotNet);

            format.Name = "default";
            if (template.SiteIsDotNet)
            {
                format.NetFormatName = "default";
            }

            else

            {
                format.NetLanguageId = template.NetLanguageId;
            }

            var netLanguagePrefix = GetLangPrefix(template.NetLanguageId);

            var pathToCopy = SitePathRepository.GetDirectoryPathToCopy() + "\\default\\";

            if (template.NetLanguageId != null && !isReplayAction)
            {
                if (bllObject.IsGenericType)
                {
                    format.CodeBehind = ReadFileAsString(string.Format("{0}generic_code_{1}.txt", pathToCopy, netLanguagePrefix));
                }

                else if (bllObject.IsObjectContainerType)
                {
                    format.CodeBehind = ReadFileAsString(string.Format("{0}container_code_{1}.txt", pathToCopy, netLanguagePrefix));
                    format.FormatBody = ReadFileAsString(string.Format("{0}container_presentation.txt", pathToCopy));
                }
            }
            format = FormatRepository.SaveObjectFormatProperties(format);

            bllObject.DefaultFormatId = format.Id;
            ObjectRepository.UpdateDefaultFormatId(bllObject.Id, format.Id);

            return(format.Id);
        }
Esempio n. 10
0
        internal static BllObject SaveObjectProperties(BllObject bllObject)
        {
            var result = DefaultRepository.Save <BllObject, ObjectDAL>(bllObject);

            if (bllObject.IsObjectContainerType)
            {
                bllObject.Container.ObjectId = result.Id;
                result.Container             = SaveContainer(bllObject.Container);
            }
            else if (bllObject.IsObjectFormType)
            {
                bllObject.ContentForm.ObjectId = result.Id;
                result.ContentForm             = SaveContentForm(bllObject.ContentForm);
            }

            if (bllObject.DefaultValues != null && bllObject.DefaultValues.Any())
            {
                SetDefaultValues(bllObject.DefaultValues, result.Id);
            }

            return(result);
        }
Esempio n. 11
0
        private int CopyObjectFormats(int newObjId, BllObject oldObj)
        {
            var result  = 0;
            var formats = ObjectFormatRepository.GetFormatsByObjectId(oldObj.Id);

            foreach (var frmt in formats)
            {
                frmt.Id       = 0;
                frmt.ObjectId = newObjId;
                frmt.LockedBy = 0;

                if (frmt.Id == oldObj.DefaultFormatId)
                {
                    result = FormatRepository.SaveObjectFormatProperties(frmt).Id;
                }

                else
                {
                    FormatRepository.SaveObjectFormatProperties(frmt);
                }
            }

            return(result);
        }
Esempio n. 12
0
 private void CopyObjectValues(int newObjId, BllObject oldObject)
 {
     oldObject.InitDefaultValues();
     ObjectRepository.SetDefaultValues(oldObject.DefaultValues, newObjId);
 }