Example #1
0
        public AdPage GetAdvertisementDetail(int id, int userId)
        {
            var adPage = new AdPage
            {
                Images = new List<string>(),
                Attributes = new List<Attributes>()
            };
            var attribute = new Attributes();
            var advertisement = _advertisementRepository.Get(id);
            if (advertisement == null) return adPage;
            var reports = _reportRepository.GetAll().ToList();
            adPage.isReported = reports.Any(report => report.AdvertisementId == id && report.UserId == userId);
            adPage.isDeleted = advertisement.Deleted;
            adPage.UserId = advertisement.UserId;
            adPage.ExpiresIn = advertisement.ExpiryDays;
            adPage.OfferCount = advertisement.OfferCount;
            adPage.ViewCount = advertisement.ViewCount;
            adPage.PostedDateTime = advertisement.PostedOn;
            var category = _categoryRepository.Get(advertisement.CategoryId);
            adPage.Category = category.Name;
            adPage.IconId = category.Icon;
            var images = _imageRepository.GetAll().ToList();
            foreach (var image in images)
                if (image.AdvertisementId == id)
                    adPage.Images.Add(image.Img);
            var attributes = _attributeRepository.GetAll().ToList();
            var length = attributes.Count;
            for (var index = 0; index < length; index++)
                if (attributes.ToList()[index].AdvertisementId == id)
                {
                    attribute.Id = attributes[index].Id;
                    attribute.Name = attributes[index].Name;
                    attribute.Value = attributes[index].Value;
                    adPage.Attributes.Add(attribute);
                    attribute = new Attributes();
                }

            return adPage;
        }
Example #2
0
    public AdPage(Dictionary<string, object> data)
    {
        type = PageTypeFromString(data["type"] as string);
        title = data["title"] as string;
        if (data.ContainsKey("audio"))
            audio = new AdMedia(data["audio"] as Dictionary<string, object>);
        else
            audio = null;
        foreach (Dictionary<string, object> part in data["parts"] as List<object>)
        {
            AdMedia med = new AdMedia(part);
            parts.Add(med);
        }
        foreach (Dictionary<string, object> part in data["text"] as List<object>)
        {
            AdMarkup mar = new AdMarkup(part);
            text.Add(mar);
        }
        narrative = data["narrative"] as string;
        more = null;
        if (data.ContainsKey("more") && ((data["more"] as Dictionary<string, object>)["title"] as string) != "")
            more = new AdPage(data["more"] as Dictionary<string, object>);
        else
            more = null;

        expert = new AdMedia(data["expert"] as Dictionary<string, object>);
        background = new AdBackground(data["background"] as Dictionary<string, object>);
        font = data["font"] as string;
    }
Example #3
0
 public AdData(Dictionary<string, object> ad)
 {
     background = new AdBackground(ad["background"] as Dictionary<string, object>);
     expert = new AdMedia(ad["expert"] as Dictionary<string, object>);
     font = ad["font"] as string;
     version = Convert.ToInt32(ad["version"]);
     pages = new List<AdPage>();
     if (((ad["megadeal"] as Dictionary<string, object>)["title"] as string) != "")
         mega = new AdMegaDeal(ad["megadeal"] as Dictionary<string, object>);
     foreach (Dictionary<string, object> page in ad["pages"] as List<object>)
     {
         if ((page["title"] as string) != "")
         {
             AdPage curPage = new AdPage(page);
             pages.Add(curPage);
         }
     }
 }
Example #4
0
 public void SetUpNarratorForPage(Page page, AdPage adPage)
 {
     //page.narratorTexture = adPage.Expert.Image;
     page.speechBubbleText = adPage.Narrative;
 }
Example #5
0
    private void SetUpPage(AdPage adPage, int pageCount)
    {
        GameObject pageObject = (GameObject)Instantiate(Resources.Load("Prefabs/Ad Player/" + pageDictionary[adPage.Type], typeof(GameObject)));

        pageObject.transform.parent = pageGrid.transform;

        Page page = pageObject.GetComponent<Page>();

        page.InitComponents(adPage, this, pageCount);

        SetUpNarratorForPage(page, adPage);

        Pages.Add(pageObject);
    }
Example #6
0
    public void InitComponents(AdPage adPage, BusinessAd businessAd, int pageCount)
    {
        this.adPage = adPage;
        this.businessAd = businessAd;
        pageBtn = GameObject.Find("pageBtn" + pageCount);
        pageBtn.SetActive(true);
        pageBtn.GetComponent<PageButton>().Page = gameObject;
        pageBtn.gameObject.GetComponentInChildren<UILabel>().text = adPage.Title;

        for (int i = 0; i < adPage.Parts.Count && i < images.Length; ++i)
        {
            if (adPage.Parts[i].Type == MediaType.Image)
                UnivercityTools.ScaleImage(images[i], adPage.Parts[i].Image);
        }   

        foreach (AdMedia media in adPage.Parts)
        {
            if (media.Type == MediaType.Video)
            {
                GetComponent<VideoHandler>().MoviePlayer = businessAd.MoviePlayer;
                GetComponent<VideoHandler>().URL = media.VideoURL;
                GetComponent<VideoHandler>().videoHeight = media.Height;
                GetComponent<VideoHandler>().videoWidth = media.Width;
                GetComponent<VideoHandler>().VideoButton.SetActive(true);

                if (GetComponentInChildren<UITexture>() != null)
                    GetComponentInChildren<UITexture>().gameObject.SetActive(false);
            }
        }
        if (adPage.More != null)
        {
            detailsPage = (GameObject)Instantiate(Resources.Load("Prefabs/Ad Player/" + businessAd.pageDictionary[adPage.More.Type], typeof(GameObject)));
            detailsPage.transform.parent = businessAd.gameObject.transform;
            detailsPage.GetComponent<Page>().businessAd = businessAd;
            detailsPage.GetComponent<Page>().adPage = adPage.More;
            detailsPage.GetComponent<Page>().pageBtn = businessAd.detailsBtn;

            for (int i = 0; i < adPage.More.Parts.Count && i < images.Length; ++i)
            {
                if (adPage.More.Parts[i].Type == MediaType.Image)
                    UnivercityTools.ScaleImage(detailsPage.GetComponent<Page>().images[i], adPage.More.Parts[i].Image);
            }

            detailsPage.SetActive(false);

            businessAd.SetUpNarratorForPage(detailsPage.GetComponent<Page>(), adPage.More);

            businessAd.Pages.Add(detailsPage);
        }
    }
Example #7
0
 private IEnumerable <Ad> GetListOfAds(AdPage marksPage)
 {
     return(_smarsyBrowser.GetSmarsyElementFromPage(marksPage));
 }
Example #8
0
        private IEnumerable <Ad> LoadAddsFromPage()
        {
            AdPage marksPage = CreateSmarsyPage(PageType.Ads) as AdPage;

            return(GetListOfAds(marksPage));
        }
 public static void VerifyAdPage(AdPage page, string title, string src)
 {
     (page.Image.GetSourceLink().Equals(src) && page.Image.GetTitle().Equals(title)).Should().BeTrue();
 }