コード例 #1
0
        private Teaser GetTeaser(IPublishedElement element)
        {
            var teaser = new Teaser(element);


            if (teaser.UseArticleData)
            {
                var article = teaser.Link?.Udi != null ?
                              new ArticlePage(Helper.Content(teaser.Link.Udi)) : null;

                if (article == null)
                {
                    throw new Exception($"Please make sure that you have a linked article page when using article data.");
                }
            }
            else
            {
                teaser.Images = element.HasValue(DocumentTypes.Teaser.Fields.Images)
                    ? _imageService.GetImages(
                    element.Value <IEnumerable <IPublishedContent> >(DocumentTypes.Teaser.Fields.Images))
                    : null;
                teaser.TeaserText = element.HasValue(DocumentTypes.Teaser.Fields.TeaserText) ?
                                    element.Value <string>(DocumentTypes.Teaser.Fields.TeaserText) : null;

                teaser.TeaserTitle = element.HasValue(DocumentTypes.Teaser.Fields.TeaserTitle) ?
                                     element.Value <string>(DocumentTypes.Teaser.Fields.TeaserTitle) : null;
            }


            return(teaser);
        }
コード例 #2
0
        public async Task <string> UpdateTeaser(Teaser teaser)
        {
            string mailSent    = "";
            string MailSubject = "Teaser";
            string MailBody    = "";

            if (teaser.Status == "Approved")
            {
                MailBody = "Project Teaser is Approved for <ProjectName>.";
            }

            if (teaser.Status == "Rejected")
            {
                MailBody = "Project Teaser is Rejected for <ProjectName> by following reason <br/><br/>" + teaser.Remarks;
            }

            Teaser existingteaser = TeaserRepository.GetTeasers().SingleOrDefault(t => t.TeaserId == teaser.TeaserId);

            if (existingteaser == default(Teaser))
            {
                return("teaser doesn't exist");
            }
            int updateteaser = await TeaserRepository.UpdateTeaser(teaser);

            if (updateteaser > 0)
            {
                mailSent = Mail.SendMail(teaser.ProjectId, teaser.Status, MailSubject, MailBody);
            }

            return(updateteaser == 0 ? "Successfully updated Teaser" : "Updation failed");
        }
コード例 #3
0
        public void Method(Func <string> func)
        {
            var sb1 = new StringBuilder("hey");
            var sb2 = new StringBuilder("hey");

            if (sb1 == sb2)
            {
            }
            else
            {
                if (sb1.Equals(sb2))
                {
                }
            }

            var s1 = "hi";
            var s2 = "hi";

            if (s1 == s2)
            {
            }
            if (s1.Equals(s2))
            {
            }

            var me = new Teaser();

            me.Foo();
            Bar <StringBuilder>();
            UnCanny();
        }
コード例 #4
0
        public async Task <int> AddTeaser(Teaser Teaser)
        {
            db.Teasers.Add(Teaser);
            int result = await db.SaveChangesAsync();

            return(result);
        }
コード例 #5
0
        public ProjectTeaserModel GetNewTeaser(int projectid)
        {
            Teaser   teaser   = default(Teaser);
            Project  project  = ProjectRepository.Projects.SingleOrDefault(p => p.ProjectId == projectid);
            Company  company  = CompanyRepository.Companys.SingleOrDefault(c => c.CompanyId == project.CompanyId);
            Group    group    = GroupRepository.Groups.SingleOrDefault(g => g.GroupId == project.GroupId);
            Promoter promoter = PromoterRepository.GetPromoters().FirstOrDefault(p => p.CompanyId == company.CompanyId && p.IsMainPromoter == "Yes");

            if (promoter == default(Promoter))
            {
                promoter = PromoterRepository.GetPromoters().FirstOrDefault(p => p.CompanyId == company.CompanyId);
            }


            // Project project = ProjectRepository.Projects.FirstOrDefault(p => p.ProjectId == promoter.ProjectId);


            IList <Director>    directorslist    = DirectorRepository.GetDirectors().Where(d => d.CompanyId == company.CompanyId && d.DirectorType == DirectorType.Company.ToString()).ToList();
            IList <Shareholder> shareholderslist = ShareholderRepository.GetShareholders().Where(s => s.CompanyId == company.CompanyId && (s.ShareholderType == ShareholderType.Company.ToString() || s.ShareholderType == ShareholderType.Others.ToString())).ToList();


            ProjectTeaserModel ptmodel = new ProjectTeaserModel(project, company, group, promoter, teaser, directorslist, shareholderslist);

            return(ptmodel);
        }
コード例 #6
0
ファイル: Banner.cs プロジェクト: AshWilliams/SpecFlowWS
 public Banner(IWebElement parent)
 {
     Component = parent.FindElementFirstOrDefault(By.CssSelector(".gridctrl"));
     Component.ScrollTo();
     Header             = new Header(Component, By.TagName("h2"));
     FamilyTeaser       = new Teaser(Component, By.CssSelector(".g-cell-1 .segmentandthemeteaser"));
     OccupationalTeaser = new Teaser(Component, By.CssSelector(".g-cell-2 .segmentandthemeteaser"));
 }
コード例 #7
0
 protected string GetArticleLink(Teaser teaser)
 {
     if (teaser != null)
     {
         return Page.GetHost() + "/PublicPages/ArticlePage.aspx?articleId=" + teaser.RelatedArticleId;
     }
     return string.Empty;
 }
コード例 #8
0
        public async Task <int> DeleteTeaser(int teaserid)
        {
            Teaser Teaser = await FetchbyTeaserId(teaserid);

            db.Teasers.Remove(Teaser);
            int result = await db.SaveChangesAsync();

            return(result);
        }
コード例 #9
0
 public IHttpActionResult UpdateTeaser(Teaser teaser)
 {
     if (!ModelState.IsValid)
     {
         return(BadRequest("Not a valid model"));
     }
     Task.Run(async() => await _teaser.UpdateTeaser(teaser));
     return(Ok());
 }
        public void TeaserPropertyChangedShouldBeFired()
        {
            //arrange
            var teaser = new Teaser();

            //Assert
            PropertyChangedAsserter.AssertPropertyChanged(teaser, (x) => x.DEFAULT   = "test", "DEFAULT");
            PropertyChangedAsserter.AssertPropertyChanged(teaser, (x) => x.FRONTPAGE = "test", "FRONTPAGE");
        }
コード例 #11
0
        public async Task <int> UpdateTeaser(Teaser Teaser)
        {
            Teaser existingTeaser = await FetchbyTeaserId(Teaser.TeaserId);

            db.Entry(existingTeaser).State = EntityState.Detached;
            db.Entry(Teaser).State         = EntityState.Modified;
            int result = await db.SaveChangesAsync();

            return(result);
        }
コード例 #12
0
        public string GetResult()
        {
            Teaser teaser      = new Teaser();
            string beforeEvent = teaser.FromEvent;

            teaser.Input = "I AM INPUT";
            string afterEvent = teaser.FromEvent;

            return($"Before event: _fromEvent = {beforeEvent}\nAfter Event: _fromEvent = {afterEvent}");
        }
コード例 #13
0
        public void ExtractSyndicationFeedItems_Teasers_Success()
        {
            Localization testLocalization = TestFixture.ParentLocalization;
            Teaser       testTeaser1      = new Teaser
            {
                Headline = "Test Teaser 1",
                Text     = new RichText("This is the text of Test Teaser 1."),
                Link     = new Link()
                {
                    Url = "http://www.sdl.com/"
                }
            };
            Teaser testTeaser2 = new Teaser
            {
                Headline = "Test Teaser 2",
            };
            RegionModel testRegion1 = new RegionModel("test1");

            testRegion1.Entities.Add(testTeaser1);
            RegionModel testRegion2 = new RegionModel("test2");

            testRegion2.Entities.Add(testTeaser2);
            PageModel testPageModel = new PageModel("666");

            testPageModel.Regions.Add(testRegion1);
            testPageModel.Regions.Add(testRegion2);
            OutputJson(testPageModel);

            SyndicationItem[] syndicationItems = testPageModel.ExtractSyndicationFeedItems(testLocalization).ToArray();

            Assert.IsNotNull(syndicationItems);
            Assert.AreEqual(2, syndicationItems.Length, "syndicationItems.Length");

            SyndicationItem firstSyndicationItem = syndicationItems[0];

            Assert.IsNotNull(firstSyndicationItem, "firstSyndicationItem");
            Assert.IsNotNull(firstSyndicationItem.Title, "firstSyndicationItem.Title");
            Assert.IsNotNull(firstSyndicationItem.Summary, "firstSyndicationItem.Summary");
            Assert.IsNotNull(firstSyndicationItem.Links, "firstSyndicationItem.Links");
            Assert.AreEqual(testTeaser1.Headline, firstSyndicationItem.Title.Text, "firstSyndicationItem.Title.Text");
            Assert.AreEqual(testTeaser1.Text.ToString(), firstSyndicationItem.Summary.Text, "firstSyndicationItem.Summary.Text");
            Assert.AreEqual(1, firstSyndicationItem.Links.Count, "firstSyndicationItem.Links.Count");
            Assert.AreEqual(testTeaser1.Link.Url, firstSyndicationItem.Links[0].Uri.ToString(), "firstSyndicationItem.Links[0].Uri");

            SyndicationItem secondSyndicationItem = syndicationItems[1];

            Assert.IsNotNull(secondSyndicationItem, "secondSyndicationItem");
            Assert.IsNotNull(secondSyndicationItem.Title, "secondSyndicationItem.Title");
            Assert.IsNull(secondSyndicationItem.Summary, "secondSyndicationItem.Summary");
            Assert.IsNotNull(secondSyndicationItem.Links, "secondSyndicationItem.Links");
            Assert.AreEqual(testTeaser2.Headline, secondSyndicationItem.Title.Text, "secondSyndicationItem.Title.Text");
            Assert.AreEqual(0, secondSyndicationItem.Links.Count, "secondSyndicationItem.Links.Count");
        }
コード例 #14
0
ファイル: TeaserTests.cs プロジェクト: myroman/FeelOfTravel
        public void TestDeleteTeaser()
        {
            var article = this.MakeSampleArticle();
            var teaser = new Teaser(article)
            {
                Preamble = "New teaser",
                ImageLink = "Text"
            };
            teaser.Create();
            int id = teaser.Id;

            teaser.Delete();
            teaser.Read(id);
        }
コード例 #15
0
        private static Teaser GetTeaserFromMeta(IComponentMeta compMeta)
        {
            Teaser result = new Teaser
            {
                Link = new Link {
                    Url = String.Format("tcm:{0}-{1}", compMeta.PublicationId, compMeta.Id)
                },
                Date     = GetDateFromCustomMeta(compMeta.CustomMeta, "dateCreated") ?? compMeta.LastPublicationDate,
                Headline = GetTextFromCustomMeta(compMeta.CustomMeta, "name") ?? compMeta.Title,
                Text     = GetTextFromCustomMeta(compMeta.CustomMeta, "introText")
            };

            return(result);
        }
コード例 #16
0
ファイル: TeaserTests.cs プロジェクト: myroman/FeelOfTravel
        public void TestUpdateTeaser()
        {
            var article = this.MakeSampleArticle();
            var teaser = new Teaser(article)
            {
                Preamble = "New teaser",
                ImageLink = "Text"
            };
            teaser.Create();

            teaser.Preamble = "header 2";
            teaser.Update();

            teaser.Read();
            Assert.AreEqual("header 2", teaser.Preamble);
        }
コード例 #17
0
ファイル: TeaserTests.cs プロジェクト: myroman/FeelOfTravel
        public void TestGetTeasersList()
        {
            var article = this.MakeSampleArticle();
            var teaser = new Teaser(article)
            {
                Preamble = "New teaser",
                ImageLink = "Text"
            };
            teaser.Create();

            var teaser2 = new Teaser(article)
            {
                Preamble = "New teaser2",
                ImageLink = "Text2"
            };
            teaser2.Create();

            var twoTeasers = Teaser.GetList();
            Assert.AreEqual(2, twoTeasers.Count());
        }
コード例 #18
0
        public Teasermodel(Promoter promoter, Teaser teaser, IList <Director> directors, IList <Shareholder> shareholders)
        {
            Promoter = new PromoterModel(promoter);
            if (teaser != default(Teaser))
            {
                Teaser = teaser;
            }
            Directors    = new List <DirectorModel>();
            Shareholders = new List <ShareholderModel>();
            foreach (Director director in directors)
            {
                DirectorModel Director = new DirectorModel(director);
                Directors.Add(Director);
            }

            foreach (Shareholder shareholder in shareholders)
            {
                ShareholderModel Shareholder = new ShareholderModel(shareholder);
                Shareholders.Add(Shareholder);
            }
        }
コード例 #19
0
ファイル: TeaserTests.cs プロジェクト: myroman/FeelOfTravel
        public void TestCreateAndReadTeaser()
        {
            var article = this.MakeSampleArticle();
            var teaser = new Teaser(article)
            {
                Preamble = "New teaser",
                ImageLink = "Text"
            };

            Assert.AreEqual(0, teaser.Id);
            teaser.Create();

            Assert.IsTrue(teaser.Id > 0);

            var sameTeaser = new Teaser(article);
            sameTeaser.Read(teaser.Id);

            Assert.AreEqual(teaser.ImageLink, sameTeaser.ImageLink);
            Assert.AreEqual(teaser.Preamble, sameTeaser.Preamble);
            Assert.AreEqual(teaser.Id, sameTeaser.Id);
        }
コード例 #20
0
        public async Task <string> AddTeaser(Teaser teaser)
        {
            string mailSent    = "";
            string MailSubject = "Teaser";
            string MailBody    = "";

            teaser.Status = "Created";
            if (teaser.Status == "Created")
            {
                MailBody = "Project Teaser is created for <ProjectName>. Please review and approve /suggest.";
            }

            int inserteaser = await TeaserRepository.AddTeaser(teaser);

            if (inserteaser > 0)
            {
                mailSent = Mail.SendMail(teaser.ProjectId, teaser.Status, MailSubject, MailBody);
            }


            return(inserteaser > 0 ? "Successfully added Teaser" : "Insertion failed");
        }
コード例 #21
0
        public void PopulateDynamicList_TeaserFallbackToDescription_Success() // See TSI-1852
        {
            string testPageUrlPath = TestLocalization.GetAbsoluteUrlPath(TestFixture.Tsi1852PageRelativeUrlPath);

            PageModel pageModel = TestContentProvider.GetPageModel(testPageUrlPath, TestLocalization, addIncludes: false);

            Assert.IsNotNull(pageModel, "pageModel");
            ContentList <Teaser> testContentList = pageModel.Regions["Main"].Entities[0] as ContentList <Teaser>;

            Assert.IsNotNull(testContentList, "testContentList");
            Assert.IsNotNull(testContentList.ItemListElements, "testContentList.ItemListElements");
            Assert.AreEqual(0, testContentList.ItemListElements.Count, "testContentList.ItemListElements is not empty before PopulateDynamicList");

            TestContentProvider.PopulateDynamicList(testContentList, TestLocalization);
            OutputJson(testContentList);

            Teaser testTeaser = testContentList.ItemListElements.FirstOrDefault(t => t.Headline == "TSI-1852 Article");

            Assert.IsNotNull(testTeaser, "testTeaser");
            Assert.IsNotNull(testTeaser.Text, "testTeaser.Text");
            StringAssert.StartsWith(testTeaser.Text.ToString(), "This is the standard metadata description", "testTeaser.Text");
        }
コード例 #22
0
        private SyndicationItem GetSyndicationItemFromTeaser(Teaser item)
        {
            SyndicationItem si = new SyndicationItem();

            if (item.Headline != null)
            {
                si.Title = new TextSyndicationContent(item.Headline);
            }
            if (item.Text != null)
            {
                si.Summary = new TextSyndicationContent(item.Text.ToString());
            }
            if (item.Link != null && item.Link.Url != null && item.Link.Url.StartsWith("http"))
            {
                si.Links.Add(new SyndicationLink(new Uri(item.Link.Url)));
            }
            if (item.Date != null)
            {
                si.PublishDate = (DateTime)item.Date;
            }
            return(si);
        }
コード例 #23
0
        public void ExtractSyndicationFeedItems_Teasers_Success()
        {
            Localization testLocalization = TestFixture.ParentLocalization;
            Teaser testTeaser1 = new Teaser
            {
                Headline = "Test Teaser 1",
                Text = new RichText("This is the text of Test Teaser 1."),
                Link = new Link() { Url = "http://www.sdl.com/" }
            };
            Teaser testTeaser2 = new Teaser
            {
                Headline = "Test Teaser 2",
            };
            RegionModel testRegion1 = new RegionModel("test1");
            testRegion1.Entities.Add(testTeaser1);
            RegionModel testRegion2 = new RegionModel("test2");
            testRegion2.Entities.Add(testTeaser2);
            PageModel testPageModel = new PageModel("666");
            testPageModel.Regions.Add(testRegion1);
            testPageModel.Regions.Add(testRegion2);
            OutputJson(testPageModel);

            SyndicationItem[] syndicationItems = testPageModel.ExtractSyndicationFeedItems(testLocalization).ToArray();

            Assert.IsNotNull(syndicationItems);
            Assert.AreEqual(2, syndicationItems.Length, "syndicationItems.Length");

            SyndicationItem firstSyndicationItem = syndicationItems[0];
            Assert.IsNotNull(firstSyndicationItem, "firstSyndicationItem");
            Assert.IsNotNull(firstSyndicationItem.Title, "firstSyndicationItem.Title");
            Assert.IsNotNull(firstSyndicationItem.Summary, "firstSyndicationItem.Summary");
            Assert.IsNotNull(firstSyndicationItem.Links, "firstSyndicationItem.Links");
            Assert.AreEqual(testTeaser1.Headline, firstSyndicationItem.Title.Text, "firstSyndicationItem.Title.Text");
            Assert.AreEqual(testTeaser1.Text.ToString(), firstSyndicationItem.Summary.Text, "firstSyndicationItem.Summary.Text");
            Assert.AreEqual(1, firstSyndicationItem.Links.Count, "firstSyndicationItem.Links.Count");
            Assert.AreEqual(testTeaser1.Link.Url, firstSyndicationItem.Links[0].Uri.ToString(), "firstSyndicationItem.Links[0].Uri");

            SyndicationItem secondSyndicationItem = syndicationItems[1];
            Assert.IsNotNull(secondSyndicationItem, "secondSyndicationItem");
            Assert.IsNotNull(secondSyndicationItem.Title, "secondSyndicationItem.Title");
            Assert.IsNull(secondSyndicationItem.Summary, "secondSyndicationItem.Summary");
            Assert.IsNotNull(secondSyndicationItem.Links, "secondSyndicationItem.Links");
            Assert.AreEqual(testTeaser2.Headline, secondSyndicationItem.Title.Text, "secondSyndicationItem.Title.Text");
            Assert.AreEqual(0, secondSyndicationItem.Links.Count, "secondSyndicationItem.Links.Count");
        }
コード例 #24
0
 public void Foo()
 {
     this = new Teaser();
 }
コード例 #25
0
        public ProjectTeaserModel(Project project, Company company, Group group, Promoter promoter, Teaser teaser, IList <Director> directors, IList <Shareholder> shareholders)
        {
            ProjectId         = project.ProjectId;
            NameoftheCompany  = company.CompanyName;
            GroupName         = group.GroupName;
            OfficeAddress     = company.RegisteredAddress;
            IncorporationDate = project.IncorporationDate;
            CreditCompRating  = project.CreditCompRating;
            ProjectName       = project.ProjectName;
            Capacity_AC       = project.Capacity_AC; //Capacity_AC

            Capacity_DC     = project.Capacity_DC;
            PlantLocation   = project.PlantLocation;
            Planttype       = project.Planttype;
            Technology      = project.Technology;
            RequiredLand    = project.RequiredLand;
            EPCContractor   = project.EPCContractor;
            TermLoan        = project.TotalDebt;
            DTDTenure       = project.DTDTenure;
            RepaymentPeriod = project.RepaymentPeriod;
            Tariff          = project.Tariff;

            TotalCost           = project.TotalCost;
            OMContractor        = project.OMContractor;
            DebtEquityRatio     = project.DebtEquityRatio;
            PPADate             = project.PPADate;
            SCOD                = project.SCOD;
            CUF                 = project.CUF;
            IRR                 = project.IRR;
            MinDSCR             = project.MinDSCR;
            AvgDSCR             = project.AvgDSCR;
            ProjectTariffUnit   = project.ProjectTariffUnit;
            ProjectCapacityUnit = project.ProjectCapacityUnit;
            TeaserModel         = new Teasermodel(promoter, teaser, directors, shareholders);
        }
コード例 #26
0
        private IEnumerable <Teaser> GetEntityItems(EntityModel entity)
        {
            List <Teaser> res = new List <Teaser>();

            //1. Check if entity is a teaser, if add it
            if (entity is Teaser)
            {
                res.Add((Teaser)entity);
            }
            else
            {
                //2. Second check if entity type is (semantically) a list, and if so, get its list items
                List <Teaser> items = GetTeaserListFromSemantics(entity);
                if (items != null)
                {
                    res = items;
                }
                else
                {
                    //3. Last resort, try to find some suitable properties using reflection
                    Teaser teaser = new Teaser();
                    foreach (PropertyInfo pi in entity.GetType().GetProperties())
                    {
                        switch (pi.Name)
                        {
                        case "Headline":
                        case "Name":
                            teaser.Headline = pi.GetValue(entity) as String;
                            break;

                        case "Date":
                            DateTime?date = pi.GetValue(entity) as DateTime?;
                            if (date != null)
                            {
                                teaser.Date = date;
                            }
                            break;

                        case "Description":
                            teaser.Text = pi.GetValue(entity) as String;
                            break;

                        case "Link":
                            teaser.Link = pi.GetValue(entity) as Link;
                            break;

                        case "Url":
                            string url = pi.GetValue(entity) as String;
                            if (url != null)
                            {
                                teaser.Link = new Link {
                                    Url = url
                                }
                            }
                            ;
                            break;
                        }
                    }
                    if (teaser.Headline != null || teaser.Text != null || teaser.Link != null)
                    {
                        res.Add(teaser);
                    }
                }
            }
            return(res);
        }
コード例 #27
0
 protected bool IsImageVisible(Teaser teaser)
 {
     return !string.IsNullOrEmpty(teaser.ImageLink);
 }
コード例 #28
0
        private void UpdateTeaserUnsafe(int teaserId)
        {
            Teaser teaser;
            if (teaserId != 0)
            {
                teaser = teaserService.Repository.Read(teaserId);
            }
            else
            {
                if (ParentArticleIdInRequest <= 0)
                {
                    return;
                }
                var parentArticle = articleService.Repository.Read(ParentArticleIdInRequest);

                teaser = new Teaser { RelatedArticleId = parentArticle.Id };
            }

            teaser.ImageLink = RelativeImagePath;
            teaser.Preamble = txtTeaserPreamble.Text;

            teaserService.Repository.Update(teaser);
        }
コード例 #29
0
        public async Task <Teaser> FetchbyTeaserId(int teaserid)
        {
            Teaser Teaser = await db.Teasers.FindAsync(teaserid);

            return(Teaser);
        }