Esempio n. 1
0
        /// <summary>
        /// 获取博客列表
        /// </summary>
        /// <param name="appKey"></param>
        /// <param name="username"></param>
        /// <param name="password"></param>
        /// <returns></returns>
        public CookComputing.Blogger.BlogInfo[] getUsersBlogs(string appKey, string username, string password)
        {
            UserDto user;

            if ((user = ValidUser(username, password)) != null)
            {
                //获得当前域名
                string       domain;
                const string portDomainStr = "http://{0}:{1}";
                const string domainStr     = "http://{0}";

                HttpRequest request = HttpContext.Current.Request;
                domain = String.Format(request.Url.IsDefaultPort ? domainStr : portDomainStr, request.Url.Host, request.Url.Port);



                // SiteDto site2 = SiteCacheManager.GetSite(user.Roles.GetSiteIds().FirstOrDefault() > 0 ? user.SiteId : this.siteId);

                //返回博客列表
//                return new CookComputing.Blogger.BlogInfo[]
//                    {
//                        new CookComputing.Blogger.BlogInfo{blogid=site2.SiteId.ToString(),blogName=site2.Name,url=domain }
//                    };

                //========================================================//

                //返回单个站点
                if (!user.IsMaster)
                {
                    SiteDto site = SiteCacheManager.GetSite(user.Roles.GetSiteIds().FirstOrDefault());
                    //返回博客列表
                    return(new CookComputing.Blogger.BlogInfo[]
                    {
                        new CookComputing.Blogger.BlogInfo {
                            blogid = site.SiteId.ToString(), blogName = site.Name, url = domain
                        }
                    });
                }
                else
                {
                    IList <SiteDto> sites = SiteCacheManager.GetAllSites();
                    CookComputing.Blogger.BlogInfo[] blogs = new CookComputing.Blogger.BlogInfo[sites.Count];
                    for (int i = 0; i < sites.Count; i++)
                    {
                        blogs[i] = new CookComputing.Blogger.BlogInfo
                        {
                            blogid   = sites[i].SiteId.ToString(),
                            blogName = sites[i].Name,
                            url      = !String.IsNullOrEmpty(sites[i].Domain) ?
                                       "http://" + sites[i].Domain + "/" :
                                       (!String.IsNullOrEmpty(sites[i].DirName) ?
                                        domain + "/" + sites[i].DirName + "/" : domain
                                       )
                        };
                    }
                    return(blogs);
                }
            }
            return(null);
        }
Esempio n. 2
0
        /// <summary>
        /// 获取博客列表
        /// </summary>
        /// <param name="appKey"></param>
        /// <param name="username"></param>
        /// <param name="password"></param>
        /// <returns></returns>
        public CookComputing.Blogger.BlogInfo[] getUsersBlogs(string appKey, string username, string password)
        {
            User user;
            if ((user = ValidUser(username, password)) != null)
            {
                //获得当前域名
                string domain;
                const string portDomainStr = "http://{0}:{1}";
                const string domainStr = "http://{0}";

                HttpRequest request = HttpContext.Current.Request;
                domain = String.Format(request.Url.IsDefaultPort ? domainStr : portDomainStr, request.Url.Host, request.Url.Port);

                SiteDto site2 = SiteCacheManager.GetSite(user.SiteId > 0 ? user.SiteId : this.siteId);

                //返回博客列表
                return new CookComputing.Blogger.BlogInfo[]
                    {
                        new CookComputing.Blogger.BlogInfo{blogid=site2.SiteId.ToString(),blogName=site2.Name,url=domain }
                    };

                //========================================================//

                //返回单个站点
                if (user.SiteId > 0)
                {
                    SiteDto site = SiteCacheManager.GetSite(user.SiteId);
                    //返回博客列表
                    return new CookComputing.Blogger.BlogInfo[]
                    {
                        new CookComputing.Blogger.BlogInfo{blogid=site.SiteId.ToString(),blogName=site.Name,url=domain }
                    };
                }
                else
                {
                    IList<SiteDto> sites = SiteCacheManager.GetAllSites();
                    CookComputing.Blogger.BlogInfo[] blogs = new CookComputing.Blogger.BlogInfo[sites.Count];
                    for (int i = 0; i < sites.Count; i++)
                    {
                        blogs[i] = new CookComputing.Blogger.BlogInfo
                        {
                            blogid = sites[i].SiteId.ToString(),
                            blogName = sites[i].Name,
                            url = !String.IsNullOrEmpty(sites[i].Domain) ?
                            "http://" + sites[i].Domain + "/" :
                            (!String.IsNullOrEmpty(sites[i].DirName) ?
                            domain + "/" + sites[i].DirName + "/" : domain
                            )
                        };
                    }
                    return blogs;
                }
            }
            return null;
        }