Ejemplo n.º 1
0
        public DomainCategory(Guid id, bool isSinglePage, bool showInFrontEnd, string title
                              , string seoKeywords, string seoDescription, string seoUrlFriendly
                              , string categoryViewName, string iconUrl, string description
                              , Guid languageId, Guid parentId, Enums.CategoryType type)
        {
            //if (IsExistedTitle(title, null)) throw new Exception("Title was duplicated");

            ApplyChange(new ContentLanguageUpdated(id, languageId, "Title", title, "Category"));
            ApplyChange(new ContentLanguageUpdated(id, languageId, "IconUrl", iconUrl, "Category"));
            ApplyChange(new ContentLanguageUpdated(id, languageId, "Description", description, "Category"));
            var seoUrl = title.ToUrlSegment();

            if (!string.IsNullOrEmpty(seoUrlFriendly))
            {
                seoUrl = seoUrlFriendly;
            }
            int seoCount = 0;

            while (IsExistFriendlyUrl(seoUrl))
            {
                seoUrl = seoUrl + "-" + seoCount;
                seoCount++;
            }
            ApplyChange(new ContentLanguageUpdated(id, languageId, "SeoUrlFriendly", seoUrl, "Category"));
            ApplyChange(new ContentLanguageUpdated(id, languageId, "SeoKeywords", seoKeywords, "Category"));
            ApplyChange(new ContentLanguageUpdated(id, languageId, "SeoDescription", seoDescription, "Category"));
            ApplyChange(new UrlFriendlyCreated(seoUrl, "Category", id, "Category", "Index"));
            ApplyChange(new CategoryCreated(id, isSinglePage, showInFrontEnd, parentId, categoryViewName, type));
        }
Ejemplo n.º 2
0
 public CategoryUpdated(Guid id, bool isSinglePage, bool showInFrontEnd, string categoryViewName, Enums.CategoryType type)
 {
     Id               = id;
     IsSinglePage     = isSinglePage;
     ShowInFrontEnd   = showInFrontEnd;
     CategoryViewName = categoryViewName;
     Type             = type;
 }
Ejemplo n.º 3
0
        public bool Delete(int id, Enums.CategoryType categoryType)
        {
            if (categoryType == Enums.CategoryType.Account)
            {
                throw new NotSupportedException("Account Category Delete is not supported by the API.");
            }

            var url      = string.Format("{0}Category/Delete/{1}?apikey={2}&companyid={3}", categoryType, id, _apiKey, _companyId);
            var response = _client.Execute <Category>(new RestRequest(url, Method.DELETE));

            return(response.ResponseStatus == ResponseStatus.Completed);
        }
 public CreateCategory(Guid id, bool isSinglePage, bool showInFrontEnd, string title
                       , string seoKeywords, string seoDescription, string seoUrlFriendly
                       , string categoryViewName, string iconUrl, string description, Guid languageId, Guid parentId, Enums.CategoryType type
                       , Guid userId, DateTime createdDate) : base(userId, createdDate)
 {
     Id               = id;
     IsSinglePage     = isSinglePage;
     ShowInFrontEnd   = showInFrontEnd;
     Title            = title;
     SeoKeywords      = seoKeywords;
     SeoDescription   = seoDescription;
     SeoUrlFriendly   = seoUrlFriendly;
     CategoryViewName = categoryViewName;
     IconUrl          = iconUrl;
     Description      = description;
     LanguageId       = languageId;
     ParentId         = parentId;
     Type             = type;
 }
Ejemplo n.º 5
0
        public Category Save(Category category, Enums.CategoryType categoryType)
        {
            if (categoryType == Enums.CategoryType.Account)
            {
                throw new NotSupportedException("Account Category Save is not supported by the API.");
            }

            var url     = string.Format("{0}Category/Save?apikey={1}&companyid={2}", categoryType, _apiKey, _companyId);
            var request = new RestRequest(url, Method.POST)
            {
                JsonSerializer = new JsonSerializer()
            };

            request.RequestFormat = DataFormat.Json;
            request.AddBody(category);
            var response = _client.Execute <Category>(request);

            return(response.Data);
        }
Ejemplo n.º 6
0
        public PagingResponse <Category> Get(Enums.CategoryType categoryType, string filter = "", int skip = 0)
        {
            var url = string.Format("{0}Category/Get?apikey={1}&companyid={2}", categoryType, _apiKey, _companyId);

            if (!string.IsNullOrEmpty(filter))
            {
                url = string.Format("{0}Category/Get?apikey={1}&companyid={2}&$filter={3}", categoryType, _apiKey, _companyId, filter);
            }

            if (skip > 0)
            {
                url += "&$skip=" + skip;
            }

            var request = new RestRequest(url, Method.GET);

            request.RequestFormat = DataFormat.Json;

            var response = _client.Execute(request);
            JsonDeserializer deserializer = new JsonDeserializer();

            return(deserializer.Deserialize <PagingResponse <Category> >(response));
        }
Ejemplo n.º 7
0
        public void Update(bool isSinglePage, bool showInFrontEnd, string title
                           , string seoKeywords, string seoDescription, string seoUrlFriendly
                           , string categoryViewName, string iconUrl, string description
                           , Guid languageId, Enums.CategoryType type)
        {
            var id = Guid.Parse(Id);

            ApplyChange(new ContentLanguageUpdated(id, languageId, "Title", title, "Category"));
            ApplyChange(new ContentLanguageUpdated(id, languageId, "IconUrl", iconUrl, "Category"));
            ApplyChange(new ContentLanguageUpdated(id, languageId, "Description", description, "Category"));
            var seoUrl = title.ToUrlSegment();

            if (!string.IsNullOrEmpty(seoUrlFriendly))
            {
                seoUrl = seoUrlFriendly;
            }
            else
            {
                if (IsExistedTitle(title, id))
                {
                    int seoCount = 0;
                    while (IsExistFriendlyUrl(seoUrl))
                    {
                        seoUrl = seoUrl + "-" + seoCount;
                        seoCount++;
                    }
                }
            }

            ApplyChange(new ContentLanguageUpdated(id, languageId, "SeoUrlFriendly", seoUrl, "Category"));
            ApplyChange(new ContentLanguageUpdated(id, languageId, "SeoKeywords", seoKeywords, "Category"));
            ApplyChange(new ContentLanguageUpdated(id, languageId, "SeoDescription", seoDescription, "Category"));
            ApplyChange(new UrlFriendlyCreated(seoUrl, "Category", id, "Category", "Index"));

            ApplyChange(new CategoryUpdated(id, isSinglePage, showInFrontEnd, categoryViewName, type));
        }
Ejemplo n.º 8
0
        public Category Get(int id, Enums.CategoryType categoryType)
        {
            var response = _client.Execute <Category>(new RestRequest(string.Format("{0}Category/Get/{1}?apikey={2}&companyid={3}", categoryType, id, _apiKey, _companyId), Method.GET));

            return(response.Data);
        }