private void LoadCommunities(Int32 idCommunity, lm.Comol.Core.BaseModules.CommunityManagement.dtoCommunitiesFilters filters, Int32 pageIndex, Int32 pageSize, ModuleTags.ActionType action, Boolean firstLoad = false)
        {
            List <lm.Comol.Core.BaseModules.Dashboard.Domain.dtoCommunityForTags> items = ServiceCommunities.GetCommunitiesForBulkTagsManage(UserContext.CurrentUserID, filters);
            Int32 itemsCount = (items == null ? 0 : items.Count);

            PagerBase pager = new PagerBase();

            pager.PageSize  = pageSize;
            pager.Count     = (itemsCount > 0) ? itemsCount - 1 : 0;
            pager.PageIndex = pageIndex;
            View.Pager      = pager;
            if (items != null)
            {
                if (firstLoad && itemsCount == 0)
                {
                    View.HideFilters();
                }
                else if (itemsCount == 0 && ServiceTags.GetCommunitiesWithNoTags() == 0)
                {
                    View.HideFilters();
                }
                View.LoadCommunities(GenerateItems(filters, items.Skip(pager.PageIndex * pageSize).Take(pageSize).ToList(), itemsCount > pageSize));
                View.SendUserAction(idCommunity, CurrentIdModule, action);
            }
            else
            {
                View.DisplayErrorFromDB();
            }
        }
Example #2
0
        public void ChangeType(TileType type)
        {
            if (UserContext.isAnonymous)
            {
                View.DisplaySessionTimeout();
            }
            else
            {
                View.CurrentType = type;
                switch (type)
                {
                case TileType.CombinedTags:
                    Language dLanguage = CurrentManager.GetDefaultLanguage();
                    List <lm.Comol.Core.Tag.Domain.liteTagItem>             items = ServiceTags.CacheGetTags(Tag.Domain.TagType.Community, true).Where(t => t.Status == lm.Comol.Core.Dashboard.Domain.AvailableStatus.Available).ToList();
                    List <lm.Comol.Core.DomainModel.TranslatedItem <long> > tags  = items.Select(t => new lm.Comol.Core.DomainModel.TranslatedItem <long>()
                    {
                        Id = t.Id, Translation = t.GetTitle(UserContext.Language.Id, dLanguage.Id)
                    }).ToList();
                    View.ReloadTags(tags);
                    break;

                default:
                    break;
                }
                //View.ReloadType(type);
            }
        }
Example #3
0
 public void BulkInsert(dtoFilters filters, Int32 idCommunity, Int32 pageIndex, Int32 pageSize, List <Dictionary <Int32, String> > toInsert)
 {
     if (UserContext.isAnonymous)
     {
         View.DisplaySessionTimeout();
     }
     else
     {
         ModuleTags.ActionType action = ModuleTags.ActionType.GenericError;
         List <Dictionary <Int32, String> > notInserted = new List <Dictionary <int, string> >();
         List <TagItem> tags = ServiceTags.BulkInsert(TagType.Community, (idCommunity == 0), idCommunity, toInsert, notInserted);
         if (tags.Any())
         {
             if (notInserted.Any())
             {
                 action = (filters.ForOrganization) ? ModuleTags.ActionType.AddedBulkTagsToOrganizationWithDuplicates : ModuleTags.ActionType.AddedBulkTagsToPortalWithDuplicates;
                 View.DisplayMessage(action, notInserted.Select(i => i[0]).ToList());
             }
             else
             {
                 action = (filters.ForOrganization) ? ModuleTags.ActionType.AddedBulkTagsToOrganization : ModuleTags.ActionType.AddedBulkTagsToPortal;
                 View.DisplayMessage(action);
             }
         }
         else
         {
             action = (filters.ForOrganization) ? ModuleTags.ActionType.UnableToAddBulkTagsToOrganization : ModuleTags.ActionType.UnableToAddBulkTagsToPortal;
             View.DisplayMessage(action);
         }
         View.SendUserAction((filters.ForOrganization) ? idCommunity : 0, CurrentIdModule, action);
         LoadTags(filters, idCommunity, 0, pageSize);
     }
 }
Example #4
0
        private void SetTagsInfo(dtoFilters filters, Int32 idCommunity)
        {
            Int32  idOrganization = 0;
            Person p = CurrentManager.GetPerson(UserContext.CurrentUserID);

            lm.Comol.Core.DomainModel.Domain.ModuleCommunityManagement permissions = null;
            if (filters.ForOrganization)
            {
                if (idCommunity == 0)
                {
                    idCommunity    = UserContext.CurrentCommunityID;
                    idOrganization = CurrentManager.GetIdOrganizationFromCommunity(idCommunity);
                }
                if (idOrganization == 0)
                {
                    idOrganization = CurrentManager.GetUserDefaultIdOrganization(UserContext.CurrentUserID);
                    idCommunity    = CurrentManager.GetIdCommunityFromOrganization(idOrganization);
                }
                permissions = new DomainModel.Domain.ModuleCommunityManagement(CurrentManager.GetModulePermission(UserContext.CurrentUserID, idCommunity, lm.Comol.Core.DomainModel.Domain.ModuleCommunityManagement.UniqueID));
            }
            else
            {
                permissions = DomainModel.Domain.ModuleCommunityManagement.CreatePortalmodule((p == null) ? (Int32)UserTypeStandard.Guest : p.TypeID);
            }

            Int32  noTags = ServiceTags.GetCommunitiesWithNoTags();
            String url    = "";

            if (permissions.Administration || permissions.Manage)
            {
                url = RootObject.BulkTagsAssignment(idOrganization, !filters.ForOrganization, true);
            }
            View.LoadTagsInfo(noTags, ServiceTags.GetUntranslatedTagsCount(filters.IdSelectedLanguage, false), 0, url);
        }
        public void LoadCommunities(DashboardViewType view, UserCurrentSettings userSettings, Int32 pageIndex, Int32 pageSize, OrderItemsBy orderBy, Boolean ascending, Int32 idCommunityType = -1, Int32 idRemoveCommunityType = -1, long idTile = -1, long idTag = -1, dtoTileDisplay tile = null)
        {
            if (UserContext.isAnonymous)
            {
                View.DisplaySessionTimeout();
            }
            else
            {
                if (View.DisplayLessCommand)
                {
                    Int32     itemsCount = Service.GetSubscribedCommunitiesCount(UserContext.CurrentUserID, view, idCommunityType, idRemoveCommunityType, idTile, idTag, tile);
                    PagerBase pager      = new PagerBase();
                    pager.PageSize  = pageSize;  //Me.View.CurrentPageSize
                    pager.Count     = (itemsCount > 0) ? itemsCount - 1 : 0;
                    pager.PageIndex = pageIndex; // Me.View.CurrentPageIndex
                    View.Pager      = pager;
                }
                List <dtoSubscriptionItem> items = Service.GetSubscribedCommunities(UserContext.CurrentUserID, view, pageIndex, pageSize, orderBy, ascending, idCommunityType, idRemoveCommunityType, idTile, idTag, tile);
                if (items != null)
                {
                    List <Int32> withNews = View.GetIdcommunitiesWithNews(items.Where(i => i.Status != SubscriptionStatus.communityblocked && i.Status != SubscriptionStatus.blocked && i.Status != SubscriptionStatus.waiting).Select(i => i.Community.Id).ToList(), UserContext.CurrentUserID);
                    if (withNews.Any())
                    {
                        items.Where(i => withNews.Contains(i.Community.Id)).ToList().ForEach(i => i.HasNews = true);
                    }
                    switch (view)
                    {
                    case DashboardViewType.List:
                    case DashboardViewType.Combined:
                        Language l = CurrentManager.GetDefaultLanguage();
                        Dictionary <Int32, List <String> > tags = ServiceTags.GetCommunityAssociationToString(items.Select(i => i.Community.Id).ToList(), UserContext.Language.Id, l.Id, true);
                        if (tags.Any())
                        {
                            foreach (dtoSubscriptionItem item in items.Where(i => tags.ContainsKey(i.Community.Id)))
                            {
                                item.Community.Tags = tags[item.Community.Id];
                            }
                        }
                        break;
                    }

                    View.LoadItems(items, orderBy, ascending);
                    if (userSettings != null)
                    {
                        userSettings.Ascending = ascending;
                        userSettings.OrderBy   = orderBy;
                        userSettings.View      = view;
                        View.UpdateUserSettings(userSettings);
                    }
                    //View.SendUserAction(0, CurrentIdModule, ModuleDashboard.ActionType.ListDashboardLoadSubscribedCommunities);
                }
                else
                {
                    View.DisplayErrorFromDB();
                }
            }
        }
Example #6
0
        public Boolean SaveItem(long idItem, String description, String name, String url, DisplayMode?mode, Boolean isVisible, Boolean allowUpload, List <String> tags)
        {
            Boolean executed = false;

            if (SessionTimeout())
            {
                View.DisplaySessionTimeout();
            }
            else
            {
                ModuleRepository.ObjectType oType   = ModuleRepository.ObjectType.File;
                ModuleRepository.ActionType uAction = ModuleRepository.ActionType.GenericError;
                Int32 idCommunity       = UserContext.CurrentCommunityID;
                liteRepositoryItem item = Service.ItemGet(idItem);
                if (item == null)
                {
                    View.DisplayUnknownItem(ItemAction.edit);
                    uAction = ModuleRepository.ActionType.UnknownItemFound;
                }
                else
                {
                    idCommunity = item.Repository.IdCommunity;
                    Int32 idCurrentUser = UserContext.CurrentUserID;
                    oType = ModuleRepository.GetObjectType(item.Type);

                    ItemSaving saving = Service.ItemSetBaseSettings(idItem, description, name, url, mode, isVisible, allowUpload, tags);
                    if (saving == ItemSaving.None)
                    {
                        View.DisplayUnavailableItem(ItemAction.edit);
                        uAction = ModuleRepository.ActionType.UnavailableItem;
                    }
                    else
                    {
                        executed = (saving == ItemSaving.Saved);
                        View.DisplayUpdateMessage(saving);
                        switch (saving)
                        {
                        case ItemSaving.Saved:
                            uAction = ModuleRepository.ActionType.ItemSavedDetails;
                            View.UpdateDefaultTags(ServiceTags.GetAvailableTags(idCurrentUser, idCommunity, Service.GetIdModule(), ModuleRepository.UniqueCode));
                            break;

                        case ItemSaving.None:
                            uAction = ModuleRepository.ActionType.ItemTryToSaveDetails;
                            break;

                        default:
                            uAction = ModuleRepository.ActionType.ItemSavedSomeDetails;
                            break;
                        }
                    }
                }
                View.SendUserAction(idCommunity, Service.GetIdModule(), uAction, idItem, oType);
            }
            return(executed);
        }
Example #7
0
 public void ReloadTags(Int32 idCommunity, Int32 idOrganization, Int32 idCommunityType, List <long> selectedTags)
 {
     View.IdOrganizations = new List <int>()
     {
         idOrganization
     };
     View.LoadTags(ServiceTags.GetTags(TagType.Community, idCommunity, new List <int>()
     {
         idOrganization
     }, idCommunityType, selectedTags));
 }
Example #8
0
 public void ApplyTags(List <Int32> idCommunities, List <long> selectedTags)
 {
     if (UserContext.isAnonymous)
     {
         View.DisplaySessionTimeout();
     }
     else
     {
         ServiceTags.ApplyTagsToCommunities(idCommunities, selectedTags);
     }
 }
Example #9
0
        public void InitView(Boolean forOrganization, Boolean fromRecycleBin)
        {
            Person p = CurrentManager.GetPerson(UserContext.CurrentUserID);

            if (UserContext.isAnonymous || p == null)
            {
                View.DisplaySessionTimeout();
            }
            else
            {
                ModuleTags permissions = null;
                Int32      idCommunity = 0;
                if (forOrganization)
                {
                    idCommunity = UserContext.CurrentCommunityID;
                    //if (idCommunity > 0)
                    //    idOrganization = CurrentManager.GetIdOrganizationFromCommunity(UserContext.CurrentCommunityID);
                    //else
                    //    idOrganization = CurrentManager.GetUserDefaultIdOrganization(UserContext.CurrentUserID);
                    permissions = ServiceTags.GetPermission(idCommunity);
                }
                else
                {
                    permissions = ModuleTags.CreatePortalmodule(p.TypeID);
                }
                View.IdTagsCommunity = idCommunity;
                if (permissions.Administration || permissions.Edit || permissions.List)
                {
                    View.AllowAdd((permissions.Administration || permissions.Add));
                    View.AllowMultiple((p.TypeID == (Int32)UserTypeStandard.Administrator || p.TypeID == (Int32)UserTypeStandard.Administrative || p.TypeID == (Int32)UserTypeStandard.SysAdmin) && (permissions.Administration || permissions.Add));
                    if (permissions.DeleteMy || permissions.DeleteOther || permissions.Administration)
                    {
                        if (fromRecycleBin)
                        {
                            View.SetBackUrl(RootObject.List(false, forOrganization));
                        }
                        else
                        {
                            View.SetRecycleUrl(RootObject.List(true, forOrganization));
                        }
                    }
                    View.InitializeListControl(permissions, idCommunity, fromRecycleBin, forOrganization);
                }
                else
                {
                    View.DisplayNoPermission(idCommunity, CurrentIdModule);
                }
            }
        }
Example #10
0
        private void InitializeView(Int32 idCommunity, List <Int32> idOrganizations, Int32 idCommunityType = -1)
        {
            Person p = CurrentManager.GetPerson(UserContext.CurrentUserID);

            if (UserContext.isAnonymous || p == null)
            {
                View.DisplaySessionTimeout();
            }
            else
            {
                View.IdCommunityToApply = idCommunity;
                View.IdOrganizations    = idOrganizations;
                View.LoadTags(ServiceTags.GetTags(TagType.Community, idCommunity, idOrganizations, idCommunityType));
            }
        }
Example #11
0
        public void InitView(liteCommunityInfo community)
        {
            View.LoadUserInfo(Service.GetResponsible(community.Id), (community.IdCreatedBy > 0) ? CurrentManager.GetLitePerson(community.IdCreatedBy) : null);
            Int32         idLanguage = UserContext.Language.Id;
            Language      l          = CurrentManager.GetDefaultLanguage();
            List <String> tags       = ServiceTags.GetCommunityAssociationToString(community.Id, idLanguage, l.Id, true);

            if (tags != null && tags.Any())
            {
                View.LoadTags(tags, community.IdTypeOfCommunity);
            }

            List <dtoEnrollmentsDetailInfo> items = Service.GetEnrollmentsInfo(community.Id, community.IdTypeOfCommunity, UserContext.Language.Id);

            View.LoadEnrollmentsInfo(community, items, items.Select(i => i.Count).Sum(), Service.GetWaitingEnrollments(community.Id));
            View.LoadConstraints(Service.GetDtoCommunityConstraints(community.Id, UserContext.CurrentUserID));
            View.LoadDetails(community, Service.GetTranslatedCommunityType(idLanguage, community.IdTypeOfCommunity), Service.GetDescription(community.Id));
        }
Example #12
0
 public void VirtualDelete(long idTag, Boolean delete, dtoFilters filters, Int32 idCommunity, Int32 pageIndex, Int32 pageSize)
 {
     if (UserContext.isAnonymous)
     {
         View.DisplaySessionTimeout();
     }
     else
     {
         ModuleTags.ActionType action = (delete) ? ModuleTags.ActionType.VirtualDelete : ModuleTags.ActionType.VirtualUndelete;
         TagItem item = ServiceTags.VirtualDelete(idTag, delete);
         if (item == null)
         {
             action = (delete) ? ModuleTags.ActionType.UnableToDelete : ModuleTags.ActionType.UnableToUndelete;
         }
         View.DisplayMessage(action);
         View.SendUserAction((filters.ForOrganization) ? idCommunity : 0, CurrentIdModule, idTag, action);
         LoadTags(filters, idCommunity, 0, pageSize);
     }
 }
Example #13
0
 public void SetStatus(long idTag, lm.Comol.Core.Dashboard.Domain.AvailableStatus status, dtoFilters filters, Int32 idCommunity, Int32 pageIndex, Int32 pageSize)
 {
     if (UserContext.isAnonymous)
     {
         View.DisplaySessionTimeout();
     }
     else
     {
         ModuleTags.ActionType action = (status == lm.Comol.Core.Dashboard.Domain.AvailableStatus.Available) ? ModuleTags.ActionType.EnableTag : ModuleTags.ActionType.DisableTag;
         TagItem item = ServiceTags.SetStatus(idTag, status);
         if (item == null || item.Status != status)
         {
             action = (status == lm.Comol.Core.Dashboard.Domain.AvailableStatus.Available) ? ModuleTags.ActionType.UnableToEnableTag : ModuleTags.ActionType.UnableToDisableTag;
         }
         View.DisplayMessage(action);
         View.SendUserAction((filters.ForOrganization) ? idCommunity : 0, CurrentIdModule, idTag, action);
         LoadTags(filters, idCommunity, 0, pageSize);
     }
 }
        private List <lm.Comol.Core.BaseModules.Dashboard.Domain.dtoCommunityForTags> GenerateItems(lm.Comol.Core.BaseModules.CommunityManagement.dtoCommunitiesFilters filters, List <lm.Comol.Core.BaseModules.Dashboard.Domain.dtoCommunityForTags> items, Boolean hasMultiPage)
        {
            List <Int32> idOrganizations = (filters.IdOrganization > 0) ? new List <Int32>()
            {
                filters.IdOrganization
            } : new List <Int32>();
            List <dtoTagSelectItem> defaultTags = ServiceTags.GetTags(TagType.Community, 0, idOrganizations);

            View.LoadDefaultTags(defaultTags, hasMultiPage);
            foreach (lm.Comol.Core.BaseModules.Dashboard.Domain.dtoCommunityForTags item in items.Where(i => i.IdOrganization == filters.IdOrganization))
            {
                item.AvailableTags = defaultTags.Select(d => d.Copy(item.IdTags.Contains(d.Id))).ToList();
            }
            foreach (lm.Comol.Core.BaseModules.Dashboard.Domain.dtoCommunityForTags item in items.Where(i => !i.AvailableTags.Any()))
            {
                item.AvailableTags = ServiceTags.GetTags(TagType.Community, item.Id, new List <Int32>()
                {
                    item.IdOrganization
                }, -1, item.IdTags);
            }
            return(items);
        }
 public void ApplyTags(List <dtoBulkCommunityForTags> items, lm.Comol.Core.BaseModules.CommunityManagement.dtoCommunitiesFilters filters, Int32 idCommunity, Int32 pageIndex, Int32 pageSize)
 {
     if (UserContext.isAnonymous)
     {
         View.DisplaySessionTimeout();
     }
     else
     {
         ModuleTags.ActionType action = ModuleTags.ActionType.BulkTagsUnasigned;
         if (items.Any())
         {
             List <dtoBulkCommunityForTags> cTags = View.CurrentAssignedTags;
             if (ServiceTags.ApplyTagsToCommunities(items))
             {
                 action    = ModuleTags.ActionType.BulkTagsAssigned;
                 pageIndex = (filters.WithoutTags) ? ((pageIndex > 0) ? pageIndex - 1 : pageIndex) : pageIndex;
                 foreach (dtoBulkCommunityForTags item in items)
                 {
                     dtoBulkCommunityForTags current = cTags.Where(c => c.IdCommunity == item.IdCommunity).FirstOrDefault();
                     if (current != null)
                     {
                         current.IdSelectedTags = item.IdSelectedTags;
                     }
                 }
                 View.CurrentAssignedTags = cTags;
                 filters             = RecalcDefaultFilters(filters);
                 View.CurrentFilters = filters;
                 LoadCommunities(idCommunity, filters, pageIndex, pageSize, ModuleTags.ActionType.BulkTagsUpdateListAferTagsAssignment);
             }
         }
         else
         {
             action = ModuleTags.ActionType.BulkTagsNoSelection;
         }
         View.DisplayMessage(action);
         View.SendUserAction(idCommunity, CurrentIdModule, action);
     }
 }
Example #16
0
        public void LoadTags(dtoFilters filters, Int32 idCommunity, Int32 pageIndex, Int32 pageSize)
        {
            if (UserContext.isAnonymous)
            {
                View.DisplaySessionTimeout();
            }
            else
            {
                SetTagsInfo(filters, idCommunity);
                List <dtoTagItem> items = ServiceTags.GetTags(UserContext.CurrentUserID, TagType.Community, filters, idCommunity, View.GetUnknownUserName());
                if (items == null)
                {
                    View.DisplayErrorLoadingFromDB();
                }
                else
                {
                    Int32     itemsCount = items.Count();
                    PagerBase pager      = new PagerBase();
                    pager.PageSize  = pageSize;
                    pager.Count     = (itemsCount > 0) ? itemsCount - 1 : 0;
                    pager.PageIndex = pageIndex;
                    View.Pager      = pager;
                    String dCode     = View.GetDefaultLanguageCode();
                    String dLanguage = View.GetDefaultLanguageName();
                    items = items.Skip(pager.PageIndex * pageSize).Take(pageSize).ToList();

                    View.AllowApplyFilters(!(View.FirstLoad && !items.Any()));
                    items.ForEach(i => i.Translations.Insert(0, new lm.Comol.Core.DomainModel.Languages.dtoLanguageItem()
                    {
                        IdLanguage = -1, IsMultiLanguage = true, LanguageCode = dCode, LanguageName = dLanguage
                    }));
                    View.LoadTags(items, filters.IdSelectedLanguage);
                    View.SendUserAction((filters.ForOrganization) ? idCommunity : 0, CurrentIdModule, (filters.IdOrganization > -3) ?  ModuleTags.ActionType.OrganizationListTags : ModuleTags.ActionType.PortalListTags);
                    View.FirstLoad = false;
                    View.FirstLoadForLanguages[filters.IdSelectedLanguage] = false;
                }
            }
        }
        public void ApplyTags(List <Int32> idCommunities, List <long> tags, Boolean applyToAll, lm.Comol.Core.BaseModules.CommunityManagement.dtoCommunitiesFilters filters, Int32 idCommunity, Int32 pageIndex, Int32 pageSize)
        {
            if (UserContext.isAnonymous)
            {
                View.DisplaySessionTimeout();
            }
            else
            {
                ModuleTags.ActionType action = ModuleTags.ActionType.BulkTagsUnasigned;
                View.CurrentAssignedTags = new List <dtoBulkCommunityForTags>();
                pageIndex = (filters.WithoutTags) ? ((pageIndex > 0) ? pageIndex - 1 : pageIndex) : pageIndex;
                if (applyToAll)
                {
                    List <lm.Comol.Core.BaseModules.Dashboard.Domain.dtoCommunityForTags> communities = ServiceCommunities.GetCommunitiesForBulkTagsManage(UserContext.CurrentUserID, filters);
                    if (communities != null)
                    {
                        idCommunities = communities.Select(c => c.Id).ToList();
                    }
                }

                if (idCommunities.Any())
                {
                    List <dtoBulkCommunityForTags> cTags = View.CurrentAssignedTags;
                    if (ServiceTags.ApplyTagsToCommunities(idCommunities, tags).Count > 0)
                    {
                        action = ModuleTags.ActionType.BulkTagsAssigned;

                        foreach (Int32 id in idCommunities)
                        {
                            dtoBulkCommunityForTags current = cTags.Where(c => c.IdCommunity == id).FirstOrDefault();
                            if (current != null)
                            {
                                current.IdSelectedTags = tags;
                            }
                        }
                        View.CurrentAssignedTags = cTags;
                        if (applyToAll)
                        {
                            filters = ServiceCommunities.GetDefaultFilters(CurrentManager.GetLitePerson(UserContext.CurrentUserID), CommunityManagement.CommunityAvailability.All, true);
                        }
                        else
                        {
                            filters = RecalcDefaultFilters(filters);
                        }
                        View.CurrentFilters = filters;
                        View.DeselectAll();
                        LoadCommunities(idCommunity, filters, pageIndex, pageSize, ModuleTags.ActionType.BulkTagsUpdateListAferTagsAssignment);
                    }
                    else
                    {
                        LoadCommunities(idCommunity, pageIndex, pageSize);
                    }
                }
                else
                {
                    action = ModuleTags.ActionType.BulkTagsNoSelection;
                }
                View.DisplayMessage(action);
                View.SendUserAction(idCommunity, CurrentIdModule, ModuleTags.ActionType.NoPermissionForBulkTagsAssign);
            }
        }
Example #18
0
 public void ReloadTags(Int32 idCommunity, List <Int32> idOrganizations, Int32 idCommunityType, List <long> selectedTags)
 {
     View.LoadTags(ServiceTags.GetTags(TagType.Community, idCommunity, idOrganizations, idCommunityType, selectedTags));
 }
Example #19
0
        public void InitView(long idTile, DashboardType dashboardType, Int32 idContainerCommunity)
        {
            Person p = CurrentManager.GetPerson(UserContext.CurrentUserID);

            if (UserContext.isAnonymous || p == null)
            {
                View.DisplaySessionTimeout();
            }
            else
            {
                Int32           idTileCommunity = (dashboardType == DashboardType.Community) ? idContainerCommunity : 0;
                ModuleDashboard permissions     = ModuleDashboard.CreatePortalmodule(p.TypeID);
                dtoEditTile     tile            = Service.GetEditTile(idTile);
                idTileCommunity = (tile == null) ? ((dashboardType == DashboardType.Community) ? idContainerCommunity : 0) : tile.IdCommunity;
                if (dashboardType == DashboardType.Community)
                {
                    View.IdContainerCommunity = idContainerCommunity;
                    if (idTileCommunity < 0)
                    {
                        idTileCommunity = UserContext.CurrentCommunityID;
                    }
                    if (idTileCommunity > 0 && (!permissions.Administration && !permissions.ManageTiles))
                    {
                        permissions = Service.GetPermission(idTileCommunity);
                    }
                }
                else
                {
                    idContainerCommunity      = 0;
                    View.IdContainerCommunity = 0;
                }
                if ((tile == null && (idTile > 0)) || (tile != null && tile.Deleted != BaseStatusDeleted.None && tile.Deleted != BaseStatusDeleted.Manual))
                {
                    View.DisplayUnknownTile();
                }
                if (permissions.ManageTiles)
                {
                    View.SendUserAction(idContainerCommunity, Service.ServiceModuleID(), ModuleDashboard.ActionType.TileView);
                    View.SetBackUrl(RootObject.TileList(dashboardType, false, idContainerCommunity, idTile, View.PreloadIdDashboard, View.PreloadStep));


                    List <lm.Comol.Core.DomainModel.Languages.dtoLanguageItem> languages = CurrentManager.GetAllLanguages().OrderByDescending(l => l.isDefault).ThenBy(l => l.Name).Select(l =>
                                                                                                                                                                                           new lm.Comol.Core.DomainModel.Languages.dtoLanguageItem()
                    {
                        IdLanguage = l.Id, LanguageCode = l.Code, LanguageName = l.Name
                    }).ToList();

                    languages.Insert(0, new lm.Comol.Core.DomainModel.Languages.dtoLanguageItem()
                    {
                        IdLanguage = 0, LanguageCode = View.GetDefaultLanguageCode(), LanguageName = View.GetDefaultLanguageName(), IsMultiLanguage = true
                    });

                    switch (tile.Type)
                    {
                    case TileType.CommunityTag:
                        View.LoadTile(tile, ServiceTags.GetTagTranslation(tile.IdTags.FirstOrDefault(), UserContext.Language.Id).Title, languages, languages.Select(l => new dtoTileFullTranslation(l, tile)).ToList());
                        break;

                    case TileType.CombinedTags:
                        Language dLanguage = CurrentManager.GetDefaultLanguage();
                        List <lm.Comol.Core.Tag.Domain.liteTagItem>             items = ServiceTags.CacheGetTags(Tag.Domain.TagType.Community, true).Where(t => t.Status == lm.Comol.Core.Dashboard.Domain.AvailableStatus.Available || tile.IdTags.Contains(t.Id)).ToList();
                        List <lm.Comol.Core.DomainModel.TranslatedItem <long> > tags  = items.Select(t => new lm.Comol.Core.DomainModel.TranslatedItem <long>()
                        {
                            Id = t.Id, Translation = t.GetTitle(UserContext.Language.Id, dLanguage.Id)
                        }).ToList();
                        View.LoadTile(tile, tags, languages, languages.Select(l => new dtoTileFullTranslation(l, tile)).ToList());
                        break;

                    case TileType.CommunityType:
                        View.LoadTile(tile, Service.GetCommunityTypeName(tile.IdCommunityTypes.FirstOrDefault(), UserContext.Language.Id), languages, languages.Select(l => new dtoTileFullTranslation(l, tile)).ToList());
                        break;

                    default:
                        View.LoadTile(tile, languages, languages.Select(l => new dtoTileFullTranslation(l, tile)).ToList());
                        break;
                    }
                    View.SendUserAction(idContainerCommunity, Service.ServiceModuleID(), ModuleDashboard.ActionType.TileView);
                }
                else
                {
                    View.DisplayNoPermission(idContainerCommunity, CurrentIdModule);
                }
            }
        }
        private void LoadCommunities(litePageSettings pageSettings, lm.Comol.Core.BaseModules.CommunityManagement.dtoCommunitiesFilters filters, OrderItemsBy orderBy, Boolean ascending, Boolean useCache, Int32 pageIndex = 0, Int32 pageSize = 0, ModuleDashboard.ActionType action = ModuleDashboard.ActionType.SearchDashboardApplyFilters)
        {
            if (UserContext.isAnonymous)
            {
                View.DisplaySessionTimeout();
            }
            else
            {
                List <dtoSubscriptionItem> items = Service.GetCommunities(UserContext.CurrentUserID, filters, useCache);
                if (items == null)
                {
                    View.DisplayErrorFromDB();
                }
                else
                {
                    Int32 itemsCount = items.Count();

                    if (pageSettings != null)
                    {
                        View.DefaultPageSize = pageSettings.MaxItems;
                        InitializeColumns(filters);
                        pageSize             = InitializeSearchPageSize(pageSettings, itemsCount);
                        View.CurrentPageSize = pageSize;
                    }
                    if (pageSize == 0)
                    {
                        pageSize = View.CurrentPageSize;
                    }
                    PagerBase pager = new PagerBase();
                    pager.PageSize  = pageSize;
                    pager.Count     = (itemsCount > 0) ? itemsCount - 1 : 0;
                    pager.PageIndex = pageIndex;
                    View.Pager      = pager;


                    items = Service.GetCommunities(UserContext.Language.Id, items, pageIndex, pageSize, orderBy, ascending);

                    if (items != null)
                    {
                        List <Int32> withNews = View.GetIdcommunitiesWithNews(items.Where(i => i.Status != SubscriptionStatus.communityblocked && i.Status != SubscriptionStatus.blocked && i.Status != SubscriptionStatus.waiting).Select(i => i.Community.Id).ToList(), UserContext.CurrentUserID);
                        if (withNews.Any())
                        {
                            items.Where(i => withNews.Contains(i.Community.Id)).ToList().ForEach(i => i.HasNews = true);
                        }
                        Language l = CurrentManager.GetDefaultLanguage();
                        Dictionary <Int32, List <String> > tags = ServiceTags.GetCommunityAssociationToString(items.Select(i => i.Community.Id).ToList(), UserContext.Language.Id, l.Id, true);
                        if (tags.Any())
                        {
                            foreach (dtoSubscriptionItem item in items.Where(i => tags.ContainsKey(i.Community.Id)))
                            {
                                item.Community.Tags = tags[item.Community.Id];
                            }
                        }

                        View.LoadItems(items, orderBy, ascending);
                        //View.SendUserAction(0, CurrentIdModule, action);
                    }
                    else
                    {
                        View.LoadItems(new List <dtoSubscriptionItem>(), orderBy, ascending);
                    }
                }
            }
        }
        public void InitView(Boolean add, long idTile, DashboardType dashboardType, Int32 idContainerCommunity)
        {
            Person p = CurrentManager.GetPerson(UserContext.CurrentUserID);

            if (UserContext.isAnonymous || p == null)
            {
                View.DisplaySessionTimeout();
            }
            else
            {
                Int32           idTileCommunity = (dashboardType == DashboardType.Community) ? idContainerCommunity : 0;
                ModuleDashboard permissions     = ModuleDashboard.CreatePortalmodule(p.TypeID);
                List <TileType> availableTypes  = null;
                dtoEditTile     tile            = null;
                View.IdTile = idTile;
                if (add)
                {
                    availableTypes = Service.GetTileTypesAvailable(dashboardType);
                    tile           = new dtoEditTile();
                    tile.Status    = AvailableStatus.Draft;
                    tile.Type      = availableTypes.FirstOrDefault();
                }
                else
                {
                    if (View.PreloadFromAdd)
                    {
                        View.DisplayTileAdded();
                    }
                    tile            = Service.GetEditTile(idTile);
                    idTileCommunity = (tile == null) ? ((dashboardType == DashboardType.Community) ? idContainerCommunity : 0) : tile.IdCommunity;
                }
                View.IdTileCommunity = idTileCommunity;
                if (dashboardType == DashboardType.Community)
                {
                    View.IdContainerCommunity = idContainerCommunity;
                    if (idTileCommunity < 0)
                    {
                        idTileCommunity = UserContext.CurrentCommunityID;
                    }
                    if (idTileCommunity > 0 && (!permissions.Administration && !permissions.ManageTiles))
                    {
                        permissions = Service.GetPermission(idTileCommunity);
                    }
                }
                else
                {
                    idContainerCommunity      = 0;
                    View.IdContainerCommunity = 0;
                }
                if ((tile == null && (idTile > 0 || !add)) || (tile != null && tile.Deleted != BaseStatusDeleted.None && tile.Deleted != BaseStatusDeleted.Manual))
                {
                    View.DisplayUnknownTile();
                    if (!permissions.ManageTiles)
                    {
                        View.DisplayNoPermission(idContainerCommunity, CurrentIdModule);
                    }
                    else
                    {
                        View.SetBackUrl(RootObject.TileList(dashboardType, false, idContainerCommunity, idTile, View.PreloadIdDashboard, View.PreloadStep));
                    }
                }
                else
                {
                    if (permissions.ManageTiles)
                    {
                        if (tile != null && tile.Id > 0)
                        {
                            View.AllowVirtualUndelete = (tile.Deleted == BaseStatusDeleted.Manual);
                            View.AllowVirtualDelete   = (tile.Deleted == BaseStatusDeleted.None);
                            View.AllowDisable         = (tile.Deleted == BaseStatusDeleted.None && tile.Status == AvailableStatus.Available);
                            View.AllowEnable          = (tile.Deleted == BaseStatusDeleted.None && tile.Status != AvailableStatus.Available);
                            View.SendUserAction(idContainerCommunity, Service.ServiceModuleID(), tile.Id, ModuleDashboard.ActionType.TileStartEditing);
                        }
                        else
                        {
                            View.SendUserAction(idContainerCommunity, Service.ServiceModuleID(), ModuleDashboard.ActionType.TileStartAdding);
                        }

                        View.AllowSave = (tile.Deleted == BaseStatusDeleted.None);
                        View.SetBackUrl(RootObject.TileList(dashboardType, false, idContainerCommunity, idTile, View.PreloadIdDashboard, View.PreloadStep));
                        switch (tile.Type)
                        {
                        case TileType.CommunityTag:
                            View.InitalizeEditor(tile, idTile, idContainerCommunity, idTileCommunity, ServiceTags.GetTagTranslation(tile.IdTags.FirstOrDefault(), UserContext.Language.Id).Title);
                            break;

                        case TileType.CombinedTags:
                            Language dLanguage = CurrentManager.GetDefaultLanguage();
                            List <lm.Comol.Core.Tag.Domain.liteTagItem>             items = ServiceTags.CacheGetTags(Tag.Domain.TagType.Community, true).Where(t => t.Status == lm.Comol.Core.Dashboard.Domain.AvailableStatus.Available || tile.IdTags.Contains(t.Id)).ToList();
                            List <lm.Comol.Core.DomainModel.TranslatedItem <long> > tags  = items.Select(t => new lm.Comol.Core.DomainModel.TranslatedItem <long>()
                            {
                                Id = t.Id, Translation = t.GetTitle(UserContext.Language.Id, dLanguage.Id)
                            }).ToList();
                            View.InitalizeEditor(tile, idTile, idContainerCommunity, idTileCommunity, tags, availableTypes);
                            break;

                        case TileType.CommunityType:
                            View.InitalizeEditor(tile, idTile, idContainerCommunity, idTileCommunity, Service.GetCommunityTypeName(tile.IdCommunityTypes.FirstOrDefault(), UserContext.Language.Id));
                            break;

                        default:
                            View.InitalizeEditor(tile, idTile, idContainerCommunity, idTileCommunity, availableTypes);
                            break;
                        }
                    }
                    else
                    {
                        View.DisplayNoPermission(idContainerCommunity, CurrentIdModule);
                    }
                }
            }
        }
        private void InternalLoadCommunities(Int32 itemsForPage, RangeSettings range, lm.Comol.Core.BaseModules.CommunityManagement.dtoCommunitiesFilters filters, OrderItemsToSubscribeBy orderBy, Boolean ascending, Boolean useCache, Int32 pageIndex, ModuleDashboard.ActionType action = ModuleDashboard.ActionType.EnrollPageApplyFilters, Boolean applyFilters = false)
        {
            View.CurrentFilters = filters;
            List <dtoItemFilter <OrderItemsToSubscribeBy> > orderItems = GetOrderByItems(filters.IdcommunityType, orderBy);

            View.InitializeOrderBySelector(orderItems);
            List <dtoEnrollingItem> items = Service.GetCommunitiesToEnroll(UserContext.CurrentUserID, filters, useCache);
            Int32 itemsCount = (items == null) ? 0 : items.Count;
            Int32 pageSize   = CalculatePageSize(itemsForPage, range, itemsCount);

            View.CurrentPageSize = pageSize;
            InitializeColumns(filters, items);

            if (items == null)
            {
                View.DisplayErrorFromDB();
                View.CurrentOrderBy   = orderBy;
                View.CurrentAscending = ascending;
            }
            else
            {
                if (pageSize == 0)
                {
                    pageSize = View.DefaultPageSize;
                }
                PagerBase pager = new PagerBase();
                pager.PageSize  = pageSize;
                pager.Count     = (itemsCount > 0) ? itemsCount - 1 : 0;
                pager.PageIndex = pageIndex;
                View.Pager      = pager;
                List <dtoCommunityToEnroll> cItems = null;
                if (applyFilters)
                {
                    cItems = new List <dtoCommunityToEnroll>();
                }
                else
                {
                    cItems = View.CurrentSelectedItems;
                    List <dtoCommunityToEnroll> sItems = View.GetSelectedItems();
                    if (sItems.Where(i => !i.Selected).Any())
                    {
                        cItems = cItems.Where(c => !sItems.Where(s => s.Id == c.Id).Any() || sItems.Where(s => s.Selected && s.Id == c.Id).Any()).ToList();
                    }
                    if (sItems.Where(i => i.Selected).Any())
                    {
                        List <Int32> idCommunities = cItems.Select(c => c.Id).ToList();
                        cItems.AddRange(sItems.Where(s => s.Selected && !idCommunities.Contains(s.Id)).ToList());
                    }
                }
                View.CurrentSelectedItems = cItems;
                View.KeepOpenBulkActions  = (cItems.Count > 0);
                View.InitializeBulkActions(itemsCount > pageSize, cItems);
                items = Service.GetCommunities(UserContext.CurrentUserID, items, pageIndex, pageSize, orderBy, ascending);

                if (items != null)
                {
                    Language l = CurrentManager.GetDefaultLanguage();
                    Dictionary <Int32, List <String> > tags = ServiceTags.GetCommunityAssociationToString(items.Select(i => i.Community.Id).ToList(), UserContext.Language.Id, l.Id, true);
                    if (tags.Any())
                    {
                        foreach (dtoEnrollingItem item in items.Where(i => tags.ContainsKey(i.Community.Id)))
                        {
                            item.Community.Tags = tags[item.Community.Id];
                        }
                    }

                    View.LoadItems(items, orderBy, ascending);
                    //View.SendUserAction(0, CurrentIdModule, action);
                }
                else
                {
                    View.LoadItems(new List <dtoEnrollingItem>(), orderBy, ascending);
                }
            }
        }
Example #23
0
        public void InitView(Boolean isEditPage, long idItem, long idFolder, String path, Boolean setBackUrl, String backUrl)
        {
            RepositoryIdentifier rIdentifier = Service.ItemGetRepositoryIdentifier(idItem);
            Int32 idCommunity = UserContext.CurrentCommunityID;

            View.IdItem                      = idItem;
            View.IdCurrentFolder             = idFolder;
            View.CurrentFolderIdentifierPath = path;
            if (setBackUrl && String.IsNullOrEmpty(backUrl))
            {
                backUrl = View.GetPreviousRelativeUrl();
                if (!IsValidPreviousUrl(backUrl))
                {
                    backUrl    = "";
                    setBackUrl = false;
                }
                if (backUrl.StartsWith(RootObject.BaseRepositoryUrl(), StringComparison.InvariantCultureIgnoreCase) && rIdentifier != null)
                {
                    cookieRepository cookie = View.GetRepositoryCookie(rIdentifier);
                    if (cookie != null)
                    {
                        backUrl = RootObject.RepositoryItems(rIdentifier.Type, rIdentifier.IdCommunity, 0, cookie.IdFolder, cookie.Type, cookie.ItemsOrderBy, cookie.Ascending, cookie.IdentifierPath);
                    }
                }
                SetLogoutUrl(isEditPage, View.GetCurrentUrl(), setBackUrl, backUrl);
            }
            else
            {
                View.DefaultLogoutUrl = View.GetCurrentUrl();
            }
            View.BackUrl = (setBackUrl ? backUrl : "");
            View.SetPageBackUrl(backUrl);
            View.PageIdentifier = Guid.NewGuid();
            if (SessionTimeout())
            {
                return;
            }

            View.IsInitialized = true;
            ModuleRepository.ActionType uAction = ModuleRepository.ActionType.None;

            if (rIdentifier == null)
            {
                View.InitializeHeader();
                uAction = (isEditPage) ? ModuleRepository.ActionType.EditDetailsTryToLoad : ModuleRepository.ActionType.ViewDetailsTryToLoad;
                View.DisplayUnknownItem();
            }
            else
            {
                Int32 idCurrentUser             = UserContext.CurrentUserID;
                liteRepositorySettings settings = Service.SettingsGetByRepositoryIdentifier(rIdentifier);

                ModuleRepository module = Service.GetPermissions(rIdentifier, idCurrentUser);

                View.RepositoryIdentifier  = CacheKeys.RepositoryIdentifierKey(rIdentifier.Type, rIdentifier.IdCommunity);
                View.RepositoryIdCommunity = rIdentifier.IdCommunity;
                idCommunity         = rIdentifier.IdCommunity;
                View.RepositoryType = rIdentifier.Type;

                View.SetTitle(Service.ItemGetType(idItem));
                View.IsInitialized = true;
                if (settings != null)
                {
                    Boolean admin = module.ManageItems || module.Administration;
                    dtoDisplayRepositoryItem dto = Service.GetItemWithPermissionsAndStatistics(idItem, Service.GetAvailableRepositoryItems(settings, UserContext.CurrentUserID, rIdentifier.Type, rIdentifier.IdCommunity, View.GetUnknownUserName(), View.GetFolderTypeTranslation(), View.GetTypesTranslations(), module, admin, admin), UserContext.CurrentUserID);
                    if (dto != null)
                    {
                        if (!isEditPage && dto.Permissions.Edit)
                        {
                            View.SetUrlForEdit(RootObject.EditItem(idItem, idFolder, path, ItemAction.edit, (!String.IsNullOrWhiteSpace(backUrl)), backUrl));
                        }
                        else if (isEditPage)
                        {
                            View.SetUrlForView(RootObject.Details(idItem, idFolder, path, ItemAction.edit, (!String.IsNullOrWhiteSpace(backUrl)), backUrl));
                        }
                        if (!isEditPage || (isEditPage && dto.Permissions.Edit))
                        {
                            View.AllowSave = dto.Permissions.Edit && isEditPage;

                            View.AllowHideItem = dto.Permissions.Hide && isEditPage;
                            View.AllowShowItem = dto.Permissions.Show && isEditPage;
                            View.DisplayItemDetails(isEditPage, dto, settings.AutoThumbnailWidth, settings.AutoThumbnailHeight, settings.AutoThumbnailForExtension);
                            if (dto.Permissions.ViewPermission || dto.Permissions.EditPermission)
                            {
                                View.DisplayItemPermissions(isEditPage, dto);
                            }
                            if (isEditPage)
                            {
                                View.InitializeDefaultTags(ServiceTags.GetAvailableTags(rIdentifier.IdPerson, idCommunity, CurrentIdModule, ModuleRepository.UniqueCode));
                            }
                            else
                            {
                                View.InitializeHeader();
                            }
                            uAction = (isEditPage) ? ModuleRepository.ActionType.EditDetailsLoaded : ModuleRepository.ActionType.ViewDetailsLoaded;
                        }
                        else if (isEditPage)
                        {
                            View.SendUserAction(idCommunity, Service.GetIdModule(), ModuleRepository.ActionType.EditDetailsTryToLoad);
                            View.GoToUrl(RootObject.Details(idItem, idFolder, path, ItemAction.details, setBackUrl, backUrl));
                        }
                    }
                    else
                    {
                        if (isEditPage)
                        {
                            View.SetUrlForView(RootObject.Details(idItem, idFolder, path, ItemAction.edit, (!String.IsNullOrWhiteSpace(backUrl)), backUrl));
                        }

                        View.InitializeHeader();
                        View.DisplayNoPermission(idCommunity, Service.GetIdModule());
                        uAction = (isEditPage) ? ModuleRepository.ActionType.EditDetailsNoPermissions : ModuleRepository.ActionType.ViewDetailsNoPermissions;
                    }
                }
                else
                {
                    View.InitializeHeader();
                    uAction = (isEditPage) ? ModuleRepository.ActionType.EditDetailsTryToLoad : ModuleRepository.ActionType.ViewDetailsTryToLoad;
                    View.DisplayUnknownItem();
                }
            }
            View.SendUserAction(idCommunity, Service.GetIdModule(), uAction);
        }
Example #24
0
        public Boolean CloneInternalItem(long idObjectOwner, Int32 idModule, String moduleCode, long idItem, long idVersion, litePerson person, String baseFilePath, String baseThumbnailPath, RepositoryIdentifier destIdentifier, ref RepositoryItem itemCloned, ref RepositoryItemVersion versionCloned, Boolean onlyLastVersion = true)
        {
            Boolean cloned          = false;
            Boolean isInTransaction = Manager.IsInTransaction();
            String  destFile        = "";
            String  dThumbnail      = "";

            try
            {
                if (!isInTransaction)
                {
                    Manager.BeginTransaction();
                }
                RepositoryItem item = Manager.Get <RepositoryItem>(idItem);
                if (item != null)
                {
                    RepositoryItemVersion version = Manager.Get <RepositoryItemVersion>((idVersion > 0 ? idVersion : item.IdVersion));
                    if (version != null)
                    {
                        String sourcePath      = GetItemDiskPath(baseFilePath, item.Repository);
                        String destinationPath = System.IO.Path.Combine(baseFilePath, item.Repository.IdCommunity.ToString());
                        itemCloned = CloneItem(person.Id, item, version, destIdentifier, !onlyLastVersion, idObjectOwner);

                        if (!String.IsNullOrWhiteSpace(itemCloned.Thumbnail))
                        {
                            String stPath = GetItemDiskPath(baseThumbnailPath, item.Repository);
                            String dtPath = GetItemDiskPath(baseThumbnailPath, itemCloned.Repository);
                            if (!lm.Comol.Core.File.Exists.Directory(dtPath))
                            {
                                lm.Comol.Core.File.Create.Directory(dtPath);
                            }
                            if (!lm.Comol.Core.File.Create.CopyFile(System.IO.Path.Combine(stPath, item.Thumbnail), System.IO.Path.Combine(dtPath, itemCloned.Thumbnail)))
                            {
                                itemCloned.Thumbnail = "";
                            }
                        }
                        String sourceFile = "";
                        switch (itemCloned.Type)
                        {
                        case ItemType.Folder:
                        case ItemType.Link:
                            break;

                        default:
                            sourceFile = System.IO.Path.Combine(sourcePath, item.UniqueId.ToString() + item.Extension);
                            destFile   = System.IO.Path.Combine(destinationPath, itemCloned.UniqueId.ToString() + itemCloned.Extension);
                            if (!lm.Comol.Core.File.Exists.Directory(destinationPath))
                            {
                                lm.Comol.Core.File.Create.Directory(destinationPath);
                            }
                            if (!lm.Comol.Core.File.Create.CopyFile(sourceFile, destFile))
                            {
                                itemCloned = null;
                                destFile   = "";
                            }
                            break;
                        }
                        if (itemCloned != null)
                        {
                            Manager.SaveOrUpdate(itemCloned);

                            List <String> tags = null;
                            if (!String.IsNullOrWhiteSpace(itemCloned.Tags))
                            {
                                tags = itemCloned.Tags.Split(',').ToList();
                            }
                            if (tags != null && tags.Any())
                            {
                                ServiceTags.SaveTags(person, destIdentifier.IdCommunity, idModule, moduleCode, tags);
                            }


                            versionCloned = itemCloned.CreateFirstVersion();
                            Manager.SaveOrUpdate(versionCloned);
                            itemCloned.IdVersion = versionCloned.Id;
                            Manager.SaveOrUpdate(itemCloned);

                            switch (itemCloned.Type)
                            {
                            case ItemType.VideoStreaming:
                            case ItemType.ScormPackage:
                            case ItemType.Multimedia:
                                FileTransferAdd(item, destinationPath, itemCloned.UniqueId.ToString() + itemCloned.Extension, person, itemCloned.CreatedOn);
                                break;
                            }
                        }
                    }
                }
                if (!isInTransaction)
                {
                    Manager.Commit();
                }
                cloned = true;
            }
            catch (Exception ex)
            {
                if (!isInTransaction && Manager.IsInTransaction())
                {
                    Manager.RollBack();
                }
                cloned        = false;
                itemCloned    = null;
                versionCloned = null;
                if (!String.IsNullOrWhiteSpace(destFile))
                {
                    lm.Comol.Core.File.Delete.File(destFile);
                }
                if (!String.IsNullOrWhiteSpace(dThumbnail))
                {
                    lm.Comol.Core.File.Delete.File(dThumbnail);
                }
            }
            return(cloned);
        }
Example #25
0
        /// <summary>
        /// Gets a list of DNS-SD tags being broadcast by this device.
        /// </summary>
        /// <returns>Array of strings, each one an individual tag.</returns>
        public async Task <List <string> > GetServiceTagsAsync()
        {
            ServiceTags tags = await this.GetAsync <ServiceTags>(TagsApi);

            return(tags.Tags);
        }
Example #26
0
        private void InitializeView(dtoFilters filters, Int32 idCommunity)
        {
            View.IdSelectedTagLanguage = -1;
            List <lm.Comol.Core.Dashboard.Domain.dtoItemFilter <lm.Comol.Core.DomainModel.Languages.dtoLanguageItem> > languages = ServiceTags.GetLanguageSelectorItems(View.GetDefaultLanguageName(), View.GetDefaultLanguageCode());

            View.LoadLanguages(languages);
            View.FirstLoad             = true;
            View.FirstLoadForLanguages = languages.ToDictionary(l => l.Value.IdLanguage, l => true);
            View.CurrentFilters        = filters;
            LoadTags(filters, idCommunity, 0, View.CurrentPageSize);
        }