Example #1
0
        public List <ModuleUserControl> GetMenuModules(int menuId, int parentId = 0)
        {
            var controls = new List <ModuleUserControl>();

            using (var session = new DataSession())
            {
                var modulesRepo = new ModulesRepository(session.UnitOfWork);

                var modules = modulesRepo.GetMenuModules(menuId);

                int index = 0;
                foreach (var module in modules)
                {
                    int moduleParentId = 0;
                    int.TryParse(Convert.ToString(module.ParentId), out moduleParentId);
                    if (moduleParentId != parentId)
                    {
                        continue;
                    }
                    var control = GetControlFromModuleData(module);
                    control.ID = control.GetType().Name + "_index";
                    if (control != null)
                    {
                        controls.Add(control);
                    }
                }
            }
            return(controls);
        }
Example #2
0
        public void performing_updates_uses_packager_on_n_packages_exactly_n_times(int times)
        {
            int n = times;
            IList <ModuleManifest> modulePackages = new List <ModuleManifest>();

            for (int i = 0; i < n; i++)
            {
                modulePackages.Add(new ModuleManifest()
                {
                    ModuleName = "Test" + i
                });
            }

            // provide the proper packages per modules
            ModulesRepository.Setup(x => x.GetModule(It.IsAny <string>()))
            .Returns <string>(name => new ModulePackage()
            {
                ModuleManifest = modulePackages
                                 .Where(x => x.ModuleName.Equals(name))
                                 .Select(x => x).Single()
            });

            NomadUpdater.PrepareUpdate(modulePackages);

            NomadUpdater.PerformUpdates(new CompositeModuleDiscovery());

            NomadUpdater.UpdateFinished.WaitOne();
            ModulePackager.Verify(x => x.PerformUpdates(PluginsDir, It.IsAny <ModulePackage>()),
                                  Times.Exactly(n),
                                  string.Format("One package should be invoked {0} times.", n));
        }
Example #3
0
        protected void Page_PreRender(object sender, EventArgs e)
        {
            var modules    = AttachedModules.GetModules <ISendMails>();
            var modulesAny = false;

            foreach (var moduleType in modules)
            {
                var moduleObject = (ISendMails)Activator.CreateInstance(moduleType, null);
                if (ModulesRepository.IsActiveModule(moduleObject.ModuleStringId))
                {
                    modulesAny = true;
                }
            }

            if (!modulesAny)
            {
                lblMessage.Text      = Resource.Admin_m_News_SendMailOff;
                lblMessage.ForeColor = System.Drawing.Color.Red;
                divMessage.Visible   = true;
                divSend.Visible      = false;
            }
            else if (!IsPostBack)
            {
                divMessage.Visible = false;
                divSend.Visible    = true;
            }
        }
Example #4
0
        public void performing_updates_has_information_about_failure_modules_operations_throws()
        {
            ModulesOperations.Setup(x => x.LoadModules(It.IsAny <IModuleDiscovery>()))
            .Throws(new Exception("Can not discovery moduels"));

            var moduleManifests = new List <ModuleManifest>
            {
                new ModuleManifest(),
            };

            // preapre stub module manifest
            NomadUpdater.PrepareUpdate(moduleManifests);

            ModulesRepository.Setup(x => x.GetModule(It.IsAny <string>()))
            .Returns(new ModulePackage()
            {
                ModuleManifest = moduleManifests[0]
            });

            NomadUpdater.PerformUpdates(new CompositeModuleDiscovery());

            // wait till end to get the information about failure
            NomadUpdater.UpdateFinished.WaitOne();
            Assert.AreEqual(UpdaterStatus.Invalid, NomadUpdater.Status);
        }
Example #5
0
        protected void Page_Load(object sender, EventArgs e)
        {
            var ocModule = AttachedModules.GetModules <IOrderConfirmation>().FirstOrDefault();
            IOrderConfirmation classInstance;

            if (ocModule != null)
            {
                classInstance = (IOrderConfirmation)Activator.CreateInstance(ocModule, null);
                if (!ModulesRepository.IsActiveModule(classInstance.ModuleStringId) || !classInstance.CheckAlive())
                {
                    Response.Redirect("~/orderconfirmation.aspx");
                    return;
                }
            }
            else
            {
                Response.Redirect("~/orderconfirmation.aspx");
                return;
            }

            SetMeta(new MetaInfo(string.Format("{0} - {1}", classInstance.PageName, SettingsMain.ShopName)),
                    string.Empty);
            liPageHead.Text = classInstance.PageName;
            Control c =
                (this).LoadControl(
                    UrlService.GetAbsoluteLink(string.Format("/Modules/{0}/{1}", classInstance.ModuleStringId,
                                                             classInstance.FileUserControlOrderConfirmation)));

            if (c != null)
            {
                pnlContent.Controls.Add(c);
            }
        }
 public LmPlatformRepositoriesContainer()
 {
     UsersRepository                   = new UsersRepository(_dataContext);
     BugsRepository                    = new BugsRepository(_dataContext);
     BugLogsRepository                 = new BugLogsRepository(_dataContext);
     GroupsRepository                  = new GroupsRepository(_dataContext);
     ProjectsRepository                = new ProjectsRepository(_dataContext);
     ProjectUsersRepository            = new ProjectUsersRepository(_dataContext);
     ProjectCommentsRepository         = new ProjectCommentsRepository(_dataContext);
     StudentsRepository                = new StudentsRepository(_dataContext);
     SubjectRepository                 = new SubjectRepository(_dataContext);
     TestsRepository                   = new TestsRepository(_dataContext);
     TestUnlocksRepository             = new TestUnlockRepository(_dataContext);
     QuestionsRepository               = new QuestionsRepository(_dataContext);
     UsersRepository                   = new UsersRepository(_dataContext);
     ModulesRepository                 = new ModulesRepository(_dataContext);
     LecturerRepository                = new LecturerRepository(_dataContext);
     MessageRepository                 = new MessageRepository(_dataContext);
     MaterialsRepository               = new MaterialsRepository(_dataContext);
     FoldersRepository                 = new FoldersRepository(_dataContext);
     SubGroupRepository                = new SubGroupRepository(_dataContext);
     AttachmentRepository              = new AttachmentRepository(_dataContext);
     LecturesRepository                = new LecturesRepository(_dataContext);
     LabsRepository                    = new LabsRepository(_dataContext);
     ProjectUsersRepository            = new ProjectUsersRepository(_dataContext);
     PracticalRepository               = new PracticalRepository(_dataContext);
     ConceptRepository                 = new ConceptRepository(_dataContext);
     WatchingTimeRepository            = new WatchingTimeRepository(_dataContext);
     TestQuestionPassResultsRepository = new TestQuestionPassResultsRepository(_dataContext);
     //todo UNUSED ProjectMatrixRequirementsRepository = new ProjectMatrixRequirementsRepository(_dataContext);
 }
Example #7
0
        private void SaveProductTabs(int productId)
        {
            foreach (var detailsTabsModule in AttachedModules.GetModules <IProductTabs>())
            {
                var classInstance = (IProductTabs)Activator.CreateInstance(detailsTabsModule, null);
                if (ModulesRepository.IsActiveModule(classInstance.ModuleStringId) && classInstance.CheckAlive())
                {
                    foreach (ListViewItem tabBody in lvTabBodies.Items)
                    {
                        var tabTitleId       = 0;
                        var stringTabTitleId = ((HiddenField)tabBody.FindControl("hfTabTitleId")).Value;
                        var stringTabBody    = ((TextBox)tabBody.FindControl("fckTabBody")).Text;

                        if (!int.TryParse(stringTabTitleId, out tabTitleId))
                        {
                            continue;
                        }

                        if (string.IsNullOrEmpty(stringTabBody))
                        {
                            classInstance.DeleteProductDetailsTab(productId, tabTitleId);
                        }
                        else if (!string.IsNullOrEmpty(stringTabTitleId))
                        {
                            classInstance.SaveProductDetailsTab(productId, tabTitleId, stringTabBody);
                        }
                    }
                }
            }
        }
Example #8
0
        public void preparing_updates_calls_proper_subsystems_publishes_msg_at_the_end()
        {
            // return the same - might stop working if some of the code is gonna be put to verify download };
            var modulePacakge = new ModulePackage {
                ModuleManifest = _moduleManifest
            };

            ModulesRepository.Setup(x => x.GetModule(It.Is <string>(y => y == _moduleName)))
            .Returns(modulePacakge)
            .Verifiable("This package should be downloaded");

            EventAggregator.Setup(x => x.Publish(It.IsAny <NomadUpdatesReadyMessage>()))
            .Callback <NomadUpdatesReadyMessage>(msg =>
            {
                Assert.IsFalse(msg.Error);
                Assert.AreEqual(1, msg.ModuleManifests.Count);
                Assert.AreSame(modulePacakge.ModuleManifest,
                               msg.ModuleManifests[0]);
            })
            .Returns(null)
            .Verifiable("This message should be published upon exit");

            NomadUpdater.PrepareUpdate(new List <ModuleManifest>()
            {
                _moduleManifest
            });

            EventAggregator.Verify();
            ModulesRepository.Verify();
            Assert.AreEqual(UpdaterStatus.Prepared, NomadUpdater.Status);
        }
Example #9
0
        public int AddModule(int menuId, ModuleType type, int parentId = 0)
        {
            int newId;

            var module = new Domain.Modules()
            {
                MenuId      = menuId,
                ModuleType  = (int)type,
                Position    = GetNextPosition(menuId, parentId),
                CreatedAt   = DateTime.Now,
                CreatedById = Authentication.Instance.GetUserId()
            };

            if (parentId > 0)
            {
                module.ParentId = parentId;
            }


            using (var session = new DataSession())
            {
                var modulesRepo = new ModulesRepository(session.UnitOfWork);

                newId = modulesRepo.Save(module);
            }
            return(newId);
        }
Example #10
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Request["module"].IsNullOrEmpty())
            {
                Response.Redirect(UrlService.GetAdminAbsoluteLink(""));
            }

            var module = AttachedModules.GetModules().FirstOrDefault(
                item => ((IModule)Activator.CreateInstance(item, null)).ModuleStringId == Request["module"]);

            if (module == null)
            {
                Response.Redirect(UrlService.GetAdminAbsoluteLink(""));
            }

            ckbActiveModule.Attributes.Add("data-modulestringid", Request["module"]);
            ckbActiveModule.Checked = ModulesRepository.IsActiveModule(Request["module"]);
            lblIsActive.Text        = ckbActiveModule.Checked
                                   ? Resources.Resource.Admin_Module_Active
                                   : Resources.Resource.Admin_Module_NotActive;
            lblIsActive.ForeColor = ckbActiveModule.Checked
                                   ? System.Drawing.Color.Green
                                   : System.Drawing.Color.Red;

            var moduleObject = (IModule)Activator.CreateInstance(module, null);

            lblHead.Text = moduleObject.ModuleName;

            if (moduleObject.ModuleControls != null)
            {
                rptTabs.DataSource = moduleObject.ModuleControls;
                rptTabs.DataBind();

                int currentControlIndex = CurrentControlIndex;

                if (currentControlIndex < 0 || currentControlIndex > (moduleObject.ModuleControls.Count - 1))
                {
                    currentControlIndex = 0;
                }

                if (moduleObject.ModuleControls != null && moduleObject.ModuleControls.Any())
                {
                    Control c =
                        (this).LoadControl(
                            UrlService.GetAbsoluteLink(string.Format("/Modules/{0}/{1}", moduleObject.ModuleStringId,
                                                                     moduleObject.ModuleControls[currentControlIndex]
                                                                     .File)));
                    if (c != null)
                    {
                        pnlBody.Controls.Add(c);
                    }
                    SetMeta(string.Format("{0} - {1} - {2}", SettingsMain.ShopName, moduleObject.ModuleName, moduleObject.ModuleControls[currentControlIndex].NameTab));
                }
            }
            else
            {
                lblInfo.Text = Resources.Resource.Admin_Module_NotConfigure;
            }
        }
 //private ConfigOptions _options;
 public InitialiseWorkflowData(IHostingEnvironment env, TriggerRepository context,
                               ModulesRepository module, WFStateRepository wfstate, MessageTemplateRepository message)
 {
     _context = context;;
     _env     = env;
     _module  = module;
     _wfstate = wfstate;
     _message = message;
 }
Example #12
0
 public UnitOfWork(ApiContext context)
 {
     _context       = context;
     Users          = new UsersRepository(_context);
     Assigments     = new AssigmentsRepository(_context);
     Modules        = new ModulesRepository(_context);
     ModuleContents = new ModuleContentsRepository(_context);
     Videos         = new VideosRepository(_context);
 }
Example #13
0
 public RolesService(RolesRepository repo,
                     RolesModulesMappingsRepository mappingRepo,
                     ModulesRepository moduleRepo,
                     SystemViewsRepository viewsRepository)
 {
     rolesRepository      = repo;
     this.mappingRepo     = mappingRepo;
     this.moduleRepo      = moduleRepo;
     this.viewsRepository = viewsRepository;
 }
Example #14
0
        public void publishes_avaliable_modules_message_when_everything_is_ok()
        {
            const string assembly   = "test_assembly.dll";
            var          moduleInfo = new ModuleInfo(assembly);

            var moduleManifest = new ModuleManifest
            {
                ModuleName    = assembly,
                ModuleVersion = new Version("0.0.0.0")
            };

            var updateManifest = new ModuleManifest
            {
                ModuleName    = assembly,
                ModuleVersion = new Version("0.0.0.1")
            };

            ModuleDiscovery.Setup(x => x.GetModules()).Returns(new List <ModuleInfo>
            {
                moduleInfo
            });

            // FIXME: this should use internal manifest factory
            ModuleManifestFactory.Setup(x => x.GetManifest(It.Is <ModuleInfo>(y => y == moduleInfo)))
            .Returns(moduleManifest);


            EventAggregator.Setup(x => x.Publish(It.IsAny <NomadAvailableUpdatesMessage>()))
            .Callback <NomadAvailableUpdatesMessage>(msg =>
            {
                Assert.AreEqual(1,
                                msg.AvailableUpdates.
                                Count);
                Assert.AreEqual(updateManifest,
                                msg.AvailableUpdates.
                                First());
            })
            .Returns(null)
            .Verifiable("Message was not published");

            ModulesRepository
            .Setup(x => x.GetAvailableModules())
            .Returns(new AvailableModules
            {
                Manifests = new List <ModuleManifest> {
                    updateManifest
                }
            })
            .Verifiable("Get Avaliable modules has not been called");

            NomadUpdater.CheckUpdates();

            ModulesRepository.Verify();
            EventAggregator.Verify();
        }
Example #15
0
 public static void SendNews(string txtTitle, string text)
 {
     foreach (var moduleType in AttachedModules.GetModules <ISendMails>())
     {
         var moduleObject = (ISendMails)Activator.CreateInstance(moduleType, null);
         if (ModulesRepository.IsActiveModule(moduleObject.ModuleStringId))
         {
             moduleObject.SendMails(txtTitle, text, MailRecipientType.Subscriber);
         }
     }
 }
        public void Sanity()
        {
            ActiveRecordStarter.Initialize(typeof(Module).Assembly, ActiveRecordSectionHandler.Instance);

            var factory = ActiveRecordMediator.GetSessionFactoryHolder().GetSessionFactory(typeof (ActiveRecordBase));
            var repo = new ModulesRepository {SessionFactory = factory};

            var session = factory.OpenSession();
            NHibernate.Context.CurrentSessionContext.Bind(session);
            repo.AllFor(2009, 1, Guid.NewGuid());
        }
Example #17
0
        private int GetNextPosition(int menuId, int parentId)
        {
            int position = 100;

            using (var session = new DataSession())
            {
                var modulesRepo = new ModulesRepository(session.UnitOfWork);

                position = modulesRepo.GetNextPosition(menuId, parentId);
            }

            return(position);
        }
Example #18
0
        private int GetMenuIdFromModuleId(int parentId)
        {
            int menuId = 0;

            using (var session = new DataSession())
            {
                var modulesRepo = new ModulesRepository(session.UnitOfWork);

                menuId = modulesRepo.GetMenuIdFromModuleId(parentId);
            }

            return(menuId);
        }
Example #19
0
        public void DeleteModule(int menuId, int moduleId)
        {
            using (var session = new DataSession())
            {
                var modulesRepo = new ModulesRepository(session.UnitOfWork);

                var module = modulesRepo.GetSingle(moduleId);

                if (module.MenuId == menuId)
                {
                    modulesRepo.Delete(module);
                }
            }
        }
Example #20
0
        public async Task GetModulesTest()
        {
            // IModulesRepository moduleRepository = GetModulesRepository();
            var mockRepo = new Mock <IModulesRepository>();

            mockRepo.Setup(x => x.GetModules());

            var companyObject = new ModulesRepository(new BusinessRulesDataEngineContext());
            var retrnData     = companyObject.GetModules();

            //var mockedCtxVolunteer = new Mock<IModulesRepository>();
            //mockedCtxVolunteer.Setup(m => m.GetModules());
            //var result = await moduleRepository.GetModules();
            Assert.True(Convert.ToInt32(retrnData) > 0, "The Data Populated Successfully !!");
        }
Example #21
0
 public UnitOfWork(AladonContext context)
 {
     Context         = context;
     Users           = new UsersRepository(context);
     Roles           = new RolesRepository(context);
     UserRoles       = new UserRolesRepository(context);
     Permissions     = new PermissionsRepository(context);
     Modules         = new ModulesRepository(context);
     LocationTypes   = new LocationTypesRepository(context);
     AssetStructures = new AssetStructureRepository(context);
     AssetPartInfors = new AssetPartInforRepository(context);
     AssetTypes      = new AssetTypeRepository(context);
     Documents       = new DocumentRepository(context);
     Parts           = new PartRepository(context);
     AssetTags       = new AssetTagRepository(context);
 }
Example #22
0
        public void module_repository_throws_exception_while_preparing_updates_changed_to_message()
        {
            ModulesRepository.Setup(x => x.GetModule(It.IsAny <string>()))
            .Throws(new Exception("Module Cannot be selected"));

            EventAggregator.Setup(x => x.Publish(It.IsAny <NomadUpdatesReadyMessage>()))
            .Callback <NomadUpdatesReadyMessage>(msg => Assert.IsTrue(msg.Error))
            .Returns(null)
            .Verifiable("The message should be published");

            NomadUpdater.PrepareUpdate(new List <ModuleManifest>()
            {
                _moduleManifest
            });

            EventAggregator.Verify();
            Assert.AreEqual(UpdaterStatus.Invalid, NomadUpdater.Status);
        }
Example #23
0
        protected void btnSend_Click(object sender, EventArgs e)
        {
            if (!IsValidData())
            {
                return;
            }

            var isSend  = false;
            var modules = AttachedModules.GetModules <ISendMails>().ToArray();

            var recipientType = MailRecipientType.None;

            if (ckbSubscribers.Checked)
            {
                recipientType |= MailRecipientType.Subscriber;
            }
            if (ckbOrderedCustomers.Checked)
            {
                recipientType |= MailRecipientType.OrderCustomer;
            }

            foreach (var moduleType in modules)
            {
                var moduleObject = (ISendMails)Activator.CreateInstance(moduleType, null);
                if (ModulesRepository.IsActiveModule(moduleObject.ModuleStringId))
                {
                    isSend |= moduleObject.SendMails(txtTitle.Text, fckMailContent.Text, recipientType);
                }
            }

            if (isSend)
            {
                lblMessage.Text      = Resource.Admin_m_News_MessageIsSend;
                lblMessage.ForeColor = System.Drawing.Color.Blue;
            }
            else
            {
                lblMessage.Text      = Resource.Admin_m_News_MessageIsSend;
                lblMessage.ForeColor = System.Drawing.Color.Red;
            }

            divMessage.Visible = true;
            divSend.Visible    = false;
        }
Example #24
0
        public void publishes_error_message_when_checking_for_updates_failed()
        {
            ModulesRepository.Setup(x => x.GetAvailableModules())
            .Throws(new Exception("Can not have these modules"));

            EventAggregator.Setup(x => x.Publish(It.IsAny <NomadAvailableUpdatesMessage>()))
            .Callback <NomadAvailableUpdatesMessage>(
                (msg) =>
            {
                Assert.IsTrue(msg.Error);
                Assert.AreEqual(0, msg.AvailableUpdates.Count);
            })
            .Returns(null)
            .Verifiable("Message was not published");

            Assert.DoesNotThrow(() => NomadUpdater.CheckUpdates());

            EventAggregator.Verify();
        }
Example #25
0
        protected void Page_PreRender(object sender, EventArgs e)
        {
            var brand = popUpBrand.SelectBrandId != 0 ? BrandService.GetBrandById(popUpBrand.SelectBrandId) : null;

            lBrand.Text           = brand != null ? brand.Name : Resource.Admin_Product_NotSelected;
            ibRemoveBrand.Visible = popUpBrand.SelectBrandId != 0;

            if (!AddingNewProduct)
            {
                aToClient.HRef    = "../" + UrlService.GetLinkDB(ParamType.Product, ProductId);
                aToClient.Visible = true;
            }
            else
            {
                aToClient.Visible = false;
            }

            if (ProductId != 0)
            {
                var listDetailsTabs = new List <ITab>();

                foreach (var detailsTabsModule in AttachedModules.GetModules <IProductTabs>())
                {
                    var classInstance = (IProductTabs)Activator.CreateInstance(detailsTabsModule, null);
                    if (ModulesRepository.IsActiveModule(classInstance.ModuleStringId) && classInstance.CheckAlive())
                    {
                        listDetailsTabs.AddRange(classInstance.GetProductTabsCollection(ProductId));
                    }
                }

                lvTabBodies.DataSource = listDetailsTabs;
                lvTabTitles.DataSource = listDetailsTabs;

                lvTabBodies.DataBind();
                lvTabTitles.DataBind();
            }
        }
Example #26
0
        public void performing_updates_has_information_about_failure_packager_throws()
        {
            ModulePackager.Setup(
                x => x.PerformUpdates(It.IsAny <String>(), It.IsAny <ModulePackage>()))
            .Throws(new Exception("Can not pacakge this"));

            var manifest = new ModuleManifest()
            {
                ModuleName = "AlaMaKota"
            };
            var moduleManifests = new List <ModuleManifest>
            {
                manifest,
            };

            ModulesRepository.Setup(x => x.GetModule(It.IsAny <string>()))
            .Returns(new ModulePackage()
            {
                ModuleManifest = manifest
            });

            // preapre stub module manifest
            NomadUpdater.PrepareUpdate(moduleManifests);

            ModulesRepository.Setup(x => x.GetModule(It.IsAny <string>()))
            .Returns(new ModulePackage()
            {
                ModuleManifest = moduleManifests[0]
            });

            NomadUpdater.PerformUpdates(new CompositeModuleDiscovery());

            // wait till end to get the information about failure
            NomadUpdater.UpdateFinished.WaitOne();
            Assert.AreEqual(UpdaterStatus.Invalid, NomadUpdater.Status);
        }
Example #27
0
        public void packages_gotten_from_repository_have_nulls()
        {
            EventAggregator.Setup(x => x.Publish(It.IsAny <NomadUpdatesReadyMessage>()))
            .Callback <NomadUpdatesReadyMessage>(msg => Assert.IsTrue(msg.Error))
            .Returns(null)
            .Verifiable("The message should be published");

            var modulePackages = new List <ModuleManifest>
            {
                new ModuleManifest()
                {
                    ModuleName = "Test"
                },
            };

            // provide wrong packages in repository
            ModulesRepository.Setup(x => x.GetModule(It.IsAny <string>())).Returns(
                new ModulePackage());

            NomadUpdater.PrepareUpdate(modulePackages);

            EventAggregator.Verify();
            Assert.AreEqual(UpdaterStatus.Invalid, NomadUpdater.Status);
        }
        public void CanRegister()
        {
            ActiveRecordStarter.Initialize(typeof(Module).Assembly, ActiveRecordSectionHandler.Instance);

            var factory = ActiveRecordMediator.GetSessionFactoryHolder().GetSessionFactory(typeof(ActiveRecordBase));
            var repo = new ModulesRepository { SessionFactory = factory };
            var session = factory.OpenSession();
            NHibernate.Context.CurrentSessionContext.Bind(session);
            var person = session.CreateQuery("from Person").SetMaxResults(1).UniqueResult<Person>();
            Console.WriteLine(person.Id);
            var moduleAvailability = session.CreateQuery("from ModuleAvailability ma").SetMaxResults(1).UniqueResult<ModuleAvailability>();
            var reg = new ModuleRegistration(person, moduleAvailability);
            repo.SaveRegistraion(reg);

            session.Flush();
            session.Clear();
            Console.WriteLine(reg.ToString());

            var r = session.CreateQuery("from ModuleRegistration r where r.Student = :student")
                .SetEntity("student", person)
                .UniqueResult<ModuleRegistration>();

            Console.WriteLine(r.ToString());
        }
Example #29
0
        protected void Page_Load(object sender, EventArgs e)
        {
            SetMeta(string.Format("{0} - {1}", SettingsMain.ShopName, Resource.Admin_NewsAdmin_Header));

            if (!IsPostBack)
            {
                _paging = new SqlPaging
                {
                    TableName    = "[Settings].[News]",
                    ItemsPerPage = 20
                };

                _paging.AddFieldsRange(new List <Field>
                {
                    new Field
                    {
                        Name       = "NewsID as ID",
                        IsDistinct = true
                    },
                    new Field {
                        Name = "Title"
                    },
                    new Field {
                        Name = "ShowOnMainPage"
                    },
                    new Field {
                        Name = "NewsCategoryID"
                    },
                    new Field {
                        Name = "AddingDate", Sorting = SortDirection.Descending
                    }
                });

                grid.ChangeHeaderImageUrl("arrowAddingDate", "images/arrowdown.gif");

                pageNumberer.CurrentPageIndex = 1;
                _paging.CurrentPageIndex      = 1;
                ViewState["Paging"]           = _paging;
            }
            else
            {
                _paging = (SqlPaging)(ViewState["Paging"]);
                _paging.ItemsPerPage = SQLDataHelper.GetInt(ddRowsPerPage.SelectedValue);

                if (_paging == null)
                {
                    throw (new Exception("Paging lost"));
                }

                string strIds = Request.Form["SelectedIds"];

                if (!string.IsNullOrEmpty(strIds))
                {
                    strIds = strIds.Trim();
                    string[] arrids = strIds.Split(' ');

                    _selectionFilter = new InSetFieldFilter();
                    if (arrids.Contains("-1"))
                    {
                        _selectionFilter.IncludeValues = false;
                        _inverseSelection = true;
                    }
                    else
                    {
                        _selectionFilter.IncludeValues = true;
                    }
                    _selectionFilter.Values = arrids.Where(id => id != "-1").ToArray();
                }
            }


            var modules = AttachedModules.GetModules <ISendMails>();


            foreach (var moduleType in modules)
            {
                var moduleObject = (ISendMails)Activator.CreateInstance(moduleType, null);
                if (ModulesRepository.IsActiveModule(moduleObject.ModuleStringId))
                {
                    CanSendNews = true;
                }
            }
        }
Example #30
0
 public ModulesService(ModulesRepository repository)
 {
     _repository = repository;
 }
Example #31
0
        public void failing_update_beacause_of_the_missing_dependencies()
        {
            // create the updater module
            string updaterDir = NomadConfigurationSettings.ModuleDirectoryPath;

            ModuleCompiler.SetUpModuleWithManifest(updaterDir,
                                                   @"..\Source\Nomad.Tests\FunctionalTests\Data\Updater\UpdaterModule.cs");

            // version for modules A, B and C
            const string versionString = "1.0.0.0";

            // create modules A with version v0 (this version and dependencies are only in manifest - not in assembly)
            var moduelADir           = Path.Combine(NomadConfigurationSettings.ModuleDirectoryPath, @"ModuleADir");
            var moduleAConfiguration = ManifestBuilderConfiguration.Default;

            moduleAConfiguration.VersionProvider             = GetVersionProviderForVersion(versionString);
            moduleAConfiguration.ModulesDependenciesProvider = GetModuleDependenciesOnSingleModule("SimplestModulePossible2", versionString);

            ModuleCompiler.SetUpModuleWithManifest(moduelADir, ModuleCompiler.DefaultSimpleModuleSource, moduleAConfiguration);

            // create module B with the same setting as A (with version v0)
            var moduelBDir = Path.Combine(NomadConfigurationSettings.ModuleDirectoryPath, @"ModuleBDir");

            moduleAConfiguration = ManifestBuilderConfiguration.Default;

            moduleAConfiguration.VersionProvider             = GetVersionProviderForVersion(versionString);
            moduleAConfiguration.ModulesDependenciesProvider = GetModuleDependenciesOnSingleModule("SimplestModulePossible3", versionString);

            ModuleCompiler.SetUpModuleWithManifest(moduelBDir, ModuleCompiler.DefaultSimpleModuleSourceAlternative, moduleAConfiguration);

            // create module C with no dependency on any other module with version v0
            var moduleCDir = Path.Combine(NomadConfigurationSettings.ModuleDirectoryPath, @"ModuleCDir");

            moduleAConfiguration = ManifestBuilderConfiguration.Default;

            moduleAConfiguration.VersionProvider = GetVersionProviderForVersion(versionString);
            ModuleCompiler.SetUpModuleWithManifest(moduleCDir, ModuleCompiler.DefaultSimpleModuleSourceLastAlternative, moduleAConfiguration);

            // create module B in version v1 which depends on module C in version v1
            var moduleBVersionUpperDir = Path.Combine(NomadConfigurationSettings.ModuleDirectoryPath, @"ModuleBUpperDir");

            moduleAConfiguration = ManifestBuilderConfiguration.Default;

            moduleAConfiguration.VersionProvider             = GetVersionProviderForVersion("2.0.0.0");
            moduleAConfiguration.ModulesDependenciesProvider = GetModuleDependenciesOnSingleModule("SimplestModulePossible3", "2.0.0.0");

            ModuleCompiler.SetUpModuleWithManifest(moduleBVersionUpperDir, ModuleCompiler.DefaultSimpleModuleSourceAlternative, moduleAConfiguration);

            // put module B into repository
            var bRepoModuleInfo = new DirectoryModuleDiscovery(moduleBVersionUpperDir, SearchOption.TopDirectoryOnly)
                                  .GetModules()
                                  .Select(x => x)
                                  .Single();


            ModulesRepository.Setup(x => x.GetAvailableModules())
            .Returns(new AvailableModules(new List <ModuleManifest>()
            {
                bRepoModuleInfo.Manifest
            }));

            ModulesRepository
            .Setup(x => x.GetModule(It.IsAny <string>()))
            .Returns(new ModulePackage()
            {
                ModuleManifest = bRepoModuleInfo.Manifest,
                ModuleZip      = GetZippedData(new List <ModuleInfo>()
                {
                    bRepoModuleInfo
                }, bRepoModuleInfo.Manifest.ModuleName)
            });

            // configure kernel
            NomadConfigurationSettings.UpdaterType = UpdaterType.Automatic;
            SetUpKernel();

            // load modules A,B,C in version v0 into Nomad
            var discovery = new CompositeModuleDiscovery(new DirectoryModuleDiscovery(moduelADir, SearchOption.TopDirectoryOnly),
                                                         new DirectoryModuleDiscovery(moduelBDir, SearchOption.TopDirectoryOnly),
                                                         new DirectoryModuleDiscovery(moduleCDir, SearchOption.TopDirectoryOnly),
                                                         new DirectoryModuleDiscovery(updaterDir, SearchOption.TopDirectoryOnly));

            Kernel.LoadModules(discovery);

            // register for updates available message
            var hasBeenInvoked = false;

            Kernel.EventAggregator.Subscribe <NomadUpdatesReadyMessage>(message =>
            {
                hasBeenInvoked = true;
                Assert.IsTrue(message.Error, "The error should be reported");

                // list of non valid modules is accurate
                Assert.AreEqual("SimplestModulePossible2", message.ModuleManifests[0].ModuleName);
            });

            // initialize check updates (automatic mode)
            Kernel.EventAggregator.Publish(new BeginUpdateMessage());

            // verify that update can not be done
            Assert.IsTrue(hasBeenInvoked, "The updates ready message was not invoked");
            Assert.AreEqual(UpdaterStatus.Invalid, Kernel.ServiceLocator.Resolve <IUpdater>().Status);
        }
Example #32
0
 public ModulesController([FromServices] DataContext dbContext)
 {
     _rep = new ModulesRepository(dbContext);
 }