Esempio n. 1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="dt"></param>
        public bool Update(long siteId, long userId,
                           string alias, string title, string description,
                           bool isEnabled, string link, string imageurl,
                           int maxBlogs, int maxUsers, int maxContents, string cultureCode,
                           string grantedDomains, string bannedDomains, string accessKey,
                           string twitterUsername, string twitterPassword, string fileAmazonS3BucketName,
                           long?userConfirmationEmailTemplateId, long?userResetPasswordEmailTemplateId,
                           DateTime?pubDate)
        {
            if (AliasExistForOtherSite(siteId, alias))
            {
                throw new Exception("Alias already defined for another site.");
            }


            awSite site = _context.awSites.FirstOrDefault(st => st.siteId.Equals(siteId));

            if (site == null)
            {
                return(false);
            }

            if (pubDate == null)
            {
                pubDate = DateTime.Now;
            }

            site.userId          = userId;
            site.alias           = alias.ToLower().Trim();;
            site.title           = title.Trim();;
            site.description     = description.Trim();;
            site.isEnabled       = isEnabled;
            site.link            = link.Trim();;
            site.imageurl        = imageurl.Trim();;
            site.maxBlogs        = maxBlogs;
            site.maxUsers        = maxUsers;
            site.maxContents     = maxContents;
            site.cultureCode     = cultureCode.Trim();;
            site.grantedDomains  = grantedDomains.Trim();;
            site.bannedDomains   = bannedDomains.Trim();;
            site.accessKey       = accessKey.Trim();;
            site.twitterUsername = twitterUsername.Trim();;
            if (twitterPassword.Trim() != "")
            {
                site.twitterPassword = new AWAPI_Common.library.SecurityLibrary().EncodeString(twitterPassword.Trim());
            }
            site.fileAmazonS3BucketName = fileAmazonS3BucketName.Trim();

            site.userConfirmationEmailTemplateId  = userConfirmationEmailTemplateId;
            site.userResetPasswordEmailTemplateId = userResetPasswordEmailTemplateId;

            site.pubDate       = pubDate;
            site.lastBuildDate = DateTime.Now;

            _context.SubmitChanges();

            return(true);
        }
Esempio n. 2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="userId"></param>
        /// <param name="alias"></param>
        /// <param name="title"></param>
        /// <param name="description"></param>
        /// <param name="isEnabled"></param>
        /// <param name="link">http://awapi.com</param>
        /// <param name="imageurl"></param>
        /// <param name="maxBlogs"></param>
        /// <param name="maxUsers"></param>
        /// <param name="maxContents"></param>
        /// <param name="cultureCode"></param>
        /// <param name="grantedDomains"></param>
        /// <param name="bannedDomains"></param>
        /// <param name="accessKey"></param>
        /// <param name="twitterUsername"></param>
        /// <param name="twitterPassword"></param>
        /// <param name="userConfirmationEmailTemplateId"></param>
        /// <param name="userResetPasswordEmailTemplateId"></param>
        /// <param name="pubDate"></param>
        /// <returns></returns>
        public long Add(long userId,
                        string alias, string title, string description,
                        bool isEnabled, string link, string imageurl,
                        int maxBlogs, int maxUsers, int maxContents, string cultureCode,
                        string grantedDomains, string bannedDomains, string accessKey,
                        string twitterUsername, string twitterPassword, string fileAmazonS3BucketName,
                        long?userConfirmationEmailTemplateId, long?userResetPasswordEmailTemplateId,
                        DateTime?pubDate)
        {
            if (AliasExistForOtherSite(null, alias))
            {
                throw new Exception("Alias already defined for another site.");
            }

            long   id   = AWAPI_Common.library.MiscLibrary.CreateUniqueId();
            awSite site = new awSite();

            if (pubDate == null)
            {
                pubDate = DateTime.Now;
            }

            site.siteId                 = id;
            site.alias                  = alias.ToLower().Trim();
            site.title                  = title.Trim();
            site.description            = description.Trim();
            site.isEnabled              = isEnabled;
            site.link                   = link.Trim();
            site.imageurl               = imageurl.Trim();
            site.maxBlogs               = maxBlogs;
            site.maxUsers               = maxUsers;
            site.maxContents            = maxContents;
            site.pubDate                = pubDate;
            site.lastBuildDate          = DateTime.Now;
            site.createDate             = DateTime.Now;
            site.userId                 = userId;
            site.cultureCode            = cultureCode.Trim();
            site.grantedDomains         = grantedDomains.Trim();
            site.bannedDomains          = bannedDomains.Trim();
            site.accessKey              = accessKey.Trim();
            site.twitterUsername        = twitterUsername.Trim();
            site.twitterPassword        = twitterPassword.Trim();
            site.fileAmazonS3BucketName = fileAmazonS3BucketName.Trim();

            site.userConfirmationEmailTemplateId  = userConfirmationEmailTemplateId;
            site.userResetPasswordEmailTemplateId = userResetPasswordEmailTemplateId;

            _context.awSites.InsertOnSubmit(site);
            _context.SubmitChanges();

            return(id);
        }
Esempio n. 3
0
        public void ProcessRequest(HttpContext context)
        {
            _site = null;
            if (SiteId != 0)
            {
                _site = new AWAPI_BusinessLibrary.library.SiteLibrary().Get(SiteId);
            }

            if (_site == null || !_site.isEnabled)
            {
                return;
            }

            string culture = CultureCode;

            if (String.IsNullOrEmpty(CultureCode))
            {
                culture = _site.cultureCode;
            }


            _feed = new SyndicationFeed("AWAPI CMS Feed", "", null);
            _feed.Authors.Add(new SyndicationPerson(""));
            _feed.Categories.Add(new SyndicationCategory("contents"));
            _feed.AttributeExtensions.Add(new XmlQualifiedName("site"), _site.title);
            _feed.AttributeExtensions.Add(new XmlQualifiedName("sitelink"), _site.link);
            _feed.AttributeExtensions.Add(new XmlQualifiedName("defaultculture"), _site.cultureCode);
            _feed.AttributeExtensions.Add(new XmlQualifiedName("culture"), culture);

            _feed.AttributeExtensions.Add(new XmlQualifiedName("currentcontentid"), CurrentContentId.ToString());
            _feed.AttributeExtensions.Add(new XmlQualifiedName("pagesize"), PageSize.ToString());
            _feed.AttributeExtensions.Add(new XmlQualifiedName("pageindex"), PageIndex.ToString());
            _feed.AttributeExtensions.Add(new XmlQualifiedName("servertime"), DateTime.Now.ToString("yyyy-MM-ddTHH:mm:ss"));
            AddParamsToFeed();

            context.Response.ContentType     = "text/xml";
            context.Response.ContentEncoding = System.Text.Encoding.UTF8;

            switch (MethodName)
            {
            case "get":
                if (ContentId <= 0 && !String.IsNullOrEmpty(Alias))
                {
                    GetByAlias(SiteId, Alias, Lineage, Deep, culture);
                }
                else
                {
                    Get(SiteId, ContentId, Lineage, Deep, culture);
                }
                break;

            case "getlist":
                GetList(SiteId, ContentId, Lineage, Deep, Tags, culture);
                break;

            case "gettaglist":
                GetTagList(SiteId);
                break;

            default:
                break;
            }

            string    output = "";
            XmlWriter writer = XmlWriter.Create(context.Response.Output);

            if (_feed != null)
            {
                switch (ReturnType)
                {
                case "atom":
                    context.Response.ContentType = "application/atom+xml";
                    _feed.Description            = new TextSyndicationContent("AWAPI Content in Atom 1.0 Feed Format");
                    Atom10FeedFormatter atom = new Atom10FeedFormatter(_feed);
                    atom.WriteTo(writer);
                    break;

                case "json":
                    context.Response.ContentType = "application/json";
                    Rss20FeedFormatter rssFeed = new Rss20FeedFormatter(_feed);
                    if (rssFeed != null)
                    {
                        output = Newtonsoft.Json.JsonConvert.SerializeObject(rssFeed);
                        //JavaScriptSerializer ser = new JavaScriptSerializer();
                        //output = ser.Serialize(rssFeed);
                    }
                    break;

                default:        //rss
                    _feed.Description            = new TextSyndicationContent("AWAPI Content in RSS 2.0 Feed Format");
                    context.Response.ContentType = "application/rss+xml";
                    Rss20FeedFormatter rss = new Rss20FeedFormatter(_feed);
                    rss.WriteTo(writer);
                    break;
                }
            }

            if (output != "")
            {
                context.Response.Write(output);
            }

            writer.Close();
        }
Esempio n. 4
0
        public void ProcessRequest(HttpContext context)
        {
            _site = null;
            if (SiteId != 0)
            {
                _site = new AWAPI_BusinessLibrary.library.SiteLibrary().Get(SiteId);
            }

            if (_site == null || !_site.isEnabled)
            {
                return;
            }

            string link = String.IsNullOrEmpty(_site.link) ? "http://awapi.com" : _site.link;

            _feed = new SyndicationFeed(_site.title + " - Poll Feed", "", new Uri(link));
            _feed.Authors.Add(new SyndicationPerson("*****@*****.**"));

            _feed.AttributeExtensions.Add(new XmlQualifiedName("site"), _site.title);
            _feed.AttributeExtensions.Add(new XmlQualifiedName("sitelink"), _site.link);
            _feed.AttributeExtensions.Add(new XmlQualifiedName("defaultculture"), _site.cultureCode);
            _feed.AttributeExtensions.Add(new XmlQualifiedName("culture"), CultureCode);
            if (PollId > 0)
            {
                _feed.AttributeExtensions.Add(new XmlQualifiedName("pollid"), PollId.ToString());
            }

            AddParamsToFeed();

            context.Response.ContentType     = "text/xml";
            context.Response.ContentEncoding = System.Text.Encoding.UTF8;

            switch (MethodName)
            {
            case "getpoll":
                _feed.Title = new TextSyndicationContent(_site.title + " - Poll");
                GetPoll(PollId, CultureCode);
                break;

            case "getpolllist":
                _feed.Title = new TextSyndicationContent(_site.title + " - Poll List");
                GetPollList(SiteId, CultureCode, PageIndex, PageSize);
                break;

            default:
                break;
            }

            string    output = "";
            XmlWriter writer = XmlWriter.Create(context.Response.Output);

            if (_feed != null)
            {
                switch (ReturnType)
                {
                case "atom":
                    context.Response.ContentType = "application/atom+xml";
                    Atom10FeedFormatter atom = new Atom10FeedFormatter(_feed);
                    atom.WriteTo(writer);
                    break;

                case "json":
                    context.Response.ContentType = "application/json";
                    Rss20FeedFormatter rssFeed = new Rss20FeedFormatter(_feed);
                    if (rssFeed != null)
                    {
                        output = Newtonsoft.Json.JsonConvert.SerializeObject(rssFeed);
                        //JavaScriptSerializer ser = new JavaScriptSerializer();
                        //output = ser.Serialize(rssFeed);
                    }
                    break;

                default:        //rss
                    context.Response.ContentType = "application/rss+xml";
                    Rss20FeedFormatter rss = new Rss20FeedFormatter(_feed);
                    rss.WriteTo(writer);
                    break;
                }
            }

            if (output != "")
            {
                context.Response.Write(output);
            }

            writer.Close();
        }