FCKEditor 自定义用户目录的修改步骤 (附源码)

所属分类: 网络编程 / 网页编辑器 阅读数: 1234
收藏 0 赞 0 分享

由于我这边的网络原因,没用从FCK的官网下载到源码...
这套源码是FCK2.2版反编译出来的
源码:点此下载 源码中主要修改的地方做了注释
大致的修改如下 :
获取用户目录的源码: FileWorkerBase.cs
这里主要是做了一些注释
在程序中可以直接在用户登录的时候指定
这个方案只是方便多用户使用的时候为用户指定不同的文件目录
Session["FCKeditor:UserFilesPath"]="用户文件相对目录";

复制代码 代码如下:

/// <summary>
/// 用户文件目录
/// </summary>
protected string UserFilesPath
{
get
{
if (this.sUserFilesPath == null)
{
//从APPlictaion 读取
this.sUserFilesPath = (string)base.Application["FCKeditor:UserFilesPath"];
if ((this.sUserFilesPath == null) || (this.sUserFilesPath.Length == 0))
{
//从Session读取
this.sUserFilesPath = (string)this.Session["FCKeditor:UserFilesPath"];
if ((this.sUserFilesPath == null) || (this.sUserFilesPath.Length == 0))
{
//从站点配置文件读取
this.sUserFilesPath = ConfigurationSettings.AppSettings["FCKeditor:UserFilesPath"];
if ((this.sUserFilesPath == null) || (this.sUserFilesPath.Length == 0))
{
this.sUserFilesPath = "/UpLoadFiles/";
}
if ((this.sUserFilesPath == null) || (this.sUserFilesPath.Length == 0))
{
//从URL读取
this.sUserFilesPath = base.Request.QueryString["ServerPath"];
}
}
}
if (!this.sUserFilesPath.EndsWith("/"))
{
this.sUserFilesPath = this.sUserFilesPath + "/";
}
}
return this.sUserFilesPath;
}
}

这样指定了之后会发现 FCK需要有Image,Files等文件夹
修改这个文件:Uploader .cs (下载地址)
修改过的上传文件操作类在这里:(如果你要修改原版的不必去把这个类文件搞到你的Web程序目录中来,我这里只是为了方便使用我项目中的APP_Code中的方法,下同不再赘述!)
Fckeditor\editor\filemanager\upload\aspx\upload.aspx.cs
修改的时候忘了做记录..这里貌似没改什么内容 只是做了点注释
呃找到了在这里 FileBrowserConnector
Fckeditor\editor\filemanager\browser\default\connectors\aspx\connector.aspx.cs(修改后的地址)
复制代码 代码如下:

/// <summary>
/// 根据文件类型选择文件夹
/// </summary>
/// <param name="resourceType"></param>
/// <param name="folderPath"></param>
/// <returns></returns>
private string ServerMapFolder(string resourceType, string folderPath)
{
//2010-3-29 14:00:56
//string path = Path.Combine(base.UserFilesDirectory, resourceType);
string path = base.UserFilesDirectory;
Util.CreateDirectory(path);
return Path.Combine(path, folderPath.TrimStart(new char[] { '/' }));
}

这里直接把那个resourceType给排除掉了(去掉判断文件类型)
这个方法将影响选定图片后的图片路径
复制代码 代码如下:

private string GetUrlFromPath(string resourceType, string folderPath)
{
if ((resourceType == null) || (resourceType.Length == 0))
{
return (base.UserFilesPath.TrimEnd(new char[] { '/' }) + folderPath);
}
//2010-3-29 14:00:20 HYZ
//return (base.UserFilesPath + resourceType + folderPath);
string p=base.UserFilesPath + folderPath;//新增
p=p.Replace("//","/");//新增
return (p);//新增
}

然后在其他的HTML文件中也修改有部分代码
1.翻译了提示信息
这东西就不说了..很简单你也可以根据提示信息全文搜索...
2.修改选定图片后的示例文本为中文
文件位于: 第52行
Fckeditor\editor\dialog\fck_image\fck_image_preview.html
3.修改文件浏览器增加了文件预览 (效果很粗糙)
高手们修改好看了还望能给小弟发一份儿..
文件位于:
Fckeditor\editor\filemanager\browser\default\frmresourceslist.html
我这里修改了第63行的js 显示预览效果
当然还有自定义表情之类的玩意儿..
但因为目前项目需要的就这么点儿东西.所以也懒得去搞了...
源码:点此下载
转载请注明出处:http://Qbit.cnblogs.com

更多精彩内容其他人还在看

整合ckeditor+ckfinder,解决上传文件路径问题

现在fckeditor已经改名为ckeditor,上传控件也分离为ckfinder,按照说明文档的默认配置会出现上传路径不正确的情况,因为我们的网站可以通过定义默认网站、虚拟目录、以及放在网站的子目录下进行访问
收藏 0 赞 0 分享

在kindEditor中获取当前光标的位置索引的实现代码

一直在用KindEditor,今天要用到光标的位置,然后就gg一下办法,后来发现这东西的编辑区域居然是iframe里面的一个body,不是textarea/input,后来就翻开了他的代码看,发现有个insertHtml
收藏 0 赞 0 分享

KindEditor 4.x 在线编辑器常用方法小结

要修改默认后台程序处理文件,修改plugins(插件文件夹)下的JavaScript内容fileManagerJson改为自己使用程序语言
收藏 0 赞 0 分享

javascript开发随笔3 开发iframe富文本编辑器的一点体会

前段时间有个需求是开发富文本编辑器,这个之前随做过,但看了需求,发现有些地方还需google
收藏 0 赞 0 分享

TinyMCE syntaxhl插入代码后换行的修改方法

上次搞了个整合insert code的TinyMCE编辑器,非常好用。但有一个缺点:每次插入代码后,光标都会停留在pre标记里面,打回车出不来,必须编辑HTML
收藏 0 赞 0 分享

Fckeditor编辑器内容长度限制统计实现方法

Fckeditor是一种大家常用的编辑器,但是他不能像网页表单那样利用document.getelementbyid能获取得到值了,它必须通过 FCKeditorAPI来操作,下面看看Fckeditor内容长度测试
收藏 0 赞 0 分享

PHP中CKEditor和CKFinder配置问题小结

PHP中CKEditor和CKFinder配置问题小结,使用CKEditor和CKFinder编辑器的朋友可以参考下
收藏 0 赞 0 分享

ckeditor的使用和配置方法分享

CKEditor是新一代的FCKeditor,是一个重新开发的版本。CKEditor是全球最优秀的网页在线文字编辑器之一,因其惊人的性能与可扩展性而广泛的被运用于各大网站
收藏 0 赞 0 分享

FCKeditor 2.6.6在ASP中的安装及配置方法分享

FCKeditor目前的最新版本是2.6.6,在网上搜索此版本的配置方法,发现很少有asp的配置方法,以下就把自己的一些配置经验分享给有需要的你。
收藏 0 赞 0 分享

FCKeditor 2.6.5 ASP环境安装配置使用说明

今天用到在线编辑器在asp环境下上传竟然无效。找了好久才找到这介绍,现备份于此,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多