Exemple #1
0
 public ActionResult Center()
 {
     SiteConfig sc = new SiteConfigManager().loadConfig(Utils.GetXmlMapPath("Configpath"));
     ViewData["webname"] = sc.webname;
     ViewData["webcompany"] = sc.webcompany;
     return View();
 }
        public ActionResult SysConfig()
        {
            if (Session[Keys.SESSION_ADMIN_INFO] == null)
            {
                return RedirectToAction("Login", "Admin");
            }
            else
            {
                Master master = Session[Keys.SESSION_ADMIN_INFO] as Master;
                if (rcm.GetRoleCompetence(master.RoleId, 141))
                {
                    SiteConfig sc = new SiteConfigManager().loadConfig(Utils.GetXmlMapPath("Configpath"));
                    ViewData["webname"] = sc.webname;
                    ViewData["webcompany"] = sc.webcompany;
                    ViewData["weburl"] = sc.weburl;
                    ViewData["webtel"] = sc.webtel;
                    ViewData["webfax"] = sc.webfax;
                    ViewData["webmail"] = sc.webmail;
                    ViewData["webcrod"] = sc.webcrod;
                    ViewData["webtitle"] = sc.webtitle;
                    ViewData["webkeyword"] = sc.webkeyword;
                    ViewData["webdescription"] = sc.webdescription;
                    ViewData["webcopyright"] = sc.webcopyright;

                    ViewData["attachpath"] = sc.attachpath;
                    ViewData["attachextension"] = sc.attachextension;
                    ViewData["attachsave"] = sc.attachsave;
                    ViewData["attachfilesize"] = sc.attachfilesize;
                    ViewData["attachimgsize"] = sc.attachimgsize;
                    ViewData["attachimgmaxheight"] = sc.attachimgmaxheight;
                    ViewData["attachimgmaxwidth"] = sc.attachimgmaxwidth;
                    ViewData["thumbnailheight"] = sc.thumbnailheight;
                    ViewData["thumbnailwidth"] = sc.thumbnailwidth;
                    ViewData["watermarktype"] = sc.watermarktype;
                    ViewData["watermarkposition"] = sc.watermarkposition;
                    ViewData["watermarkimgquality"] = sc.watermarkimgquality;
                    ViewData["watermarkpic"] = sc.watermarkpic;
                    ViewData["watermarktransparency"] = sc.watermarktransparency;
                    ViewData["watermarktext"] = sc.watermarktext;
                    ViewData["watermarkfont"] = sc.watermarkfont;
                    ViewData["watermarkfontsize"] = sc.watermarkfontsize;
                    return View();
                }
                else
                {
                    return RedirectToAction("Login", "Admin");
                }
            }
        }
Exemple #3
0
        private void ManagerFile(HttpContext context)
        {
            SiteConfig siteConfig = new SiteConfigManager().loadConfig(Utils.GetXmlMapPath("Configpath"));
            //String aspxUrl = context.Request.Path.Substring(0, context.Request.Path.LastIndexOf("/") + 1);

            //根目录路径,相对路径
            String rootPath = siteConfig.webpath + siteConfig.attachpath + "/"; //站点目录+上传目录
            //根目录URL,可以指定绝对路径,比如 http://www.yoursite.com/attached/
            String rootUrl = siteConfig.webpath + siteConfig.attachpath + "/";
            //图片扩展名
            String fileTypes = "gif,jpg,jpeg,png,bmp";

            String currentPath = "";
            String currentUrl = "";
            String currentDirPath = "";
            String moveupDirPath = "";

            String dirPath = Utils.GetMapPath(rootPath);
            String dirName = context.Request.QueryString["dir"];
            //if (!String.IsNullOrEmpty(dirName))
            //{
            //    if (Array.IndexOf("image,flash,media,file".Split(','), dirName) == -1)
            //    {
            //        context.Response.Write("Invalid Directory name.");
            //        context.Response.End();
            //    }
            //    dirPath += dirName + "/";
            //    rootUrl += dirName + "/";
            //    if (!Directory.Exists(dirPath))
            //    {
            //        Directory.CreateDirectory(dirPath);
            //    }
            //}

            //根据path参数,设置各路径和URL
            String path = context.Request.QueryString["path"];
            path = String.IsNullOrEmpty(path) ? "" : path;
            if (path == "")
            {
                currentPath = dirPath;
                currentUrl = rootUrl;
                currentDirPath = "";
                moveupDirPath = "";
            }
            else
            {
                currentPath = dirPath + path;
                currentUrl = rootUrl + path;
                currentDirPath = path;
                moveupDirPath = Regex.Replace(currentDirPath, @"(.*?)[^\/]+\/$", "$1");
            }

            //排序形式,name or size or type
            String order = context.Request.QueryString["order"];
            order = String.IsNullOrEmpty(order) ? "" : order.ToLower();

            //不允许使用..移动到上一级目录
            if (Regex.IsMatch(path, @"\.\."))
            {
                context.Response.Write("Access is not allowed.");
                context.Response.End();
            }
            //最后一个字符不是/
            if (path != "" && !path.EndsWith("/"))
            {
                context.Response.Write("Parameter is not valid.");
                context.Response.End();
            }
            //目录不存在或不是目录
            if (!Directory.Exists(currentPath))
            {
                context.Response.Write("Directory does not exist.");
                context.Response.End();
            }

            //遍历目录取得文件信息
            string[] dirList = Directory.GetDirectories(currentPath);
            string[] fileList = Directory.GetFiles(currentPath);

            switch (order)
            {
                case "size":
                    Array.Sort(dirList, new NameSorter());
                    Array.Sort(fileList, new SizeSorter());
                    break;
                case "type":
                    Array.Sort(dirList, new NameSorter());
                    Array.Sort(fileList, new TypeSorter());
                    break;
                case "name":
                default:
                    Array.Sort(dirList, new NameSorter());
                    Array.Sort(fileList, new NameSorter());
                    break;
            }

            Hashtable result = new Hashtable();
            result["moveup_dir_path"] = moveupDirPath;
            result["current_dir_path"] = currentDirPath;
            result["current_url"] = currentUrl;
            result["total_count"] = dirList.Length + fileList.Length;
            List<Hashtable> dirFileList = new List<Hashtable>();
            result["file_list"] = dirFileList;
            for (int i = 0; i < dirList.Length; i++)
            {
                DirectoryInfo dir = new DirectoryInfo(dirList[i]);
                Hashtable hash = new Hashtable();
                hash["is_dir"] = true;
                hash["has_file"] = (dir.GetFileSystemInfos().Length > 0);
                hash["filesize"] = 0;
                hash["is_photo"] = false;
                hash["filetype"] = "";
                hash["filename"] = dir.Name;
                hash["datetime"] = dir.LastWriteTime.ToString("yyyy-MM-dd HH:mm:ss");
                dirFileList.Add(hash);
            }
            for (int i = 0; i < fileList.Length; i++)
            {
                FileInfo file = new FileInfo(fileList[i]);
                Hashtable hash = new Hashtable();
                hash["is_dir"] = false;
                hash["has_file"] = false;
                hash["filesize"] = file.Length;
                hash["is_photo"] = (Array.IndexOf(fileTypes.Split(','), file.Extension.Substring(1).ToLower()) >= 0);
                hash["filetype"] = file.Extension.Substring(1);
                hash["filename"] = file.Name;
                hash["datetime"] = file.LastWriteTime.ToString("yyyy-MM-dd HH:mm:ss");
                dirFileList.Add(hash);
            }
            context.Response.AddHeader("Content-Type", "application/json; charset=UTF-8");
            context.Response.Write(JsonMapper.ToJson(result));
            context.Response.End();
        }