DNT2.0交友信息插件制作全攻略(二)
2008-08-11 21:06
155 查看
七、在Discuz.Web项目中新建userpersoninfo.aspx页面,编写对应逻辑,完成会员修改自己个人信息的功能,以满足需求[2]的前2点。
1、在\aspx\1中建立userpersoninfo.aspx页,会产生对应的.cs文件。
2、在userpersoninfo.aspx.cs文件中添加呈现逻辑,具体代码看附件。注意这时候没必要在userpersoninfo.aspx页中写什么,因为那是会被模板生成后替换掉的东西。
CODE:
Code
if (DNTRequest.IsPost())
{
if (ForumUtils.IsCrossSitePost())
{
AddErrLine("您的请求来路不正确,无法提交。如果您安装了某种默认屏蔽来路信息的个人防火墙软件(如 Norton Internet Security),请设置其不要禁止来路信息后再试。");
return;
}
if (page_err == 0)
{
person.Lookfor = DNTRequest.GetInt("lookfor", 0);
person.Title = DNTRequest.GetString("title");
person.Intro = DNTRequest.GetString("intro");
person.Height = DNTRequest.GetString("height");
person.Stature = DNTRequest.GetString("stature");
person.Marriagestate = DNTRequest.GetString("marriagestate");
person.Industry = DNTRequest.GetString("industry");
person.Job = DNTRequest.GetString("job");
person.Constellation = DNTRequest.GetString("constellation");
person.Blood = DNTRequest.GetString("blood");
person.EduLevel = DNTRequest.GetString("eduLevel");
person.School = DNTRequest.GetString("school");
person.Earning = DNTRequest.GetString("earning");
person.Personality = DNTRequest.GetString("personality");
person.Describing = DNTRequest.GetString("describing");
person.Predominance = DNTRequest.GetString("predominance");
person.Fond = DNTRequest.GetString("fond");
PersonInfo.UpdateModel(person);
SetUrl("userpersoninfo.aspx");
SetMetaRefresh();
SetShowBackLink(true);
AddMsgLine("修改个人信息完毕");
}
}
5、编译Discuz.Web项目,在后台生成userpersoninfo.htm模板,此时“编辑个人信息”页面基本完成,可以实现功能满足要求了。
八、以上功能基本都完成了,但在“编辑个人信息”页面并不能进去,因为没有对应的菜单。下面修改菜单模板,增加菜单和对应的一些逻辑。
1、修改_permenu.htm,增加“编辑个人信息”链接。
2、修改_menu.htm,增加“编辑个人信息”链接。
3、菜单想怎么摆就怎么摆吧,这块就比较简单了。生成模板,这时整个交友插件就修改制作完成了。
九、总结
1、这种修改方式有个弊端,就是必须要源代码,而且要修改模板,难度较大。
2、好处是和源文件结合的很紧密,前台表现非常好,与论坛天衣无缝的整合在一起,没什么破绽,是符合官方的开发思路的。
3、部分模板被修改了,如果要换皮肤,需要每次将修改的5张模板进行覆盖。
4、有新的2个DLL要替换:Discuz.Web.dll、Discuz.Plugin.Friend.dll。
5、用这种方式可以对DNT2.0的会员信息进行大幅度的扩展,对于网站整合来说,可以以DNT2.0的会员为核心,在其上添加更多的业务功能,或者与网站的业务流程进行交叉,灵活性非常大。我想能使用这种方式对DNT2.0进行修改的人,用DNT2.0进行网站整合和重组都不是什么问题。
(全文完)
1、在\aspx\1中建立userpersoninfo.aspx页,会产生对应的.cs文件。
2、在userpersoninfo.aspx.cs文件中添加呈现逻辑,具体代码看附件。注意这时候没必要在userpersoninfo.aspx页中写什么,因为那是会被模板生成后替换掉的东西。
CODE:
Code
if (DNTRequest.IsPost())
{
if (ForumUtils.IsCrossSitePost())
{
AddErrLine("您的请求来路不正确,无法提交。如果您安装了某种默认屏蔽来路信息的个人防火墙软件(如 Norton Internet Security),请设置其不要禁止来路信息后再试。");
return;
}
if (page_err == 0)
{
person.Lookfor = DNTRequest.GetInt("lookfor", 0);
person.Title = DNTRequest.GetString("title");
person.Intro = DNTRequest.GetString("intro");
person.Height = DNTRequest.GetString("height");
person.Stature = DNTRequest.GetString("stature");
person.Marriagestate = DNTRequest.GetString("marriagestate");
person.Industry = DNTRequest.GetString("industry");
person.Job = DNTRequest.GetString("job");
person.Constellation = DNTRequest.GetString("constellation");
person.Blood = DNTRequest.GetString("blood");
person.EduLevel = DNTRequest.GetString("eduLevel");
person.School = DNTRequest.GetString("school");
person.Earning = DNTRequest.GetString("earning");
person.Personality = DNTRequest.GetString("personality");
person.Describing = DNTRequest.GetString("describing");
person.Predominance = DNTRequest.GetString("predominance");
person.Fond = DNTRequest.GetString("fond");
PersonInfo.UpdateModel(person);
SetUrl("userpersoninfo.aspx");
SetMetaRefresh();
SetShowBackLink(true);
AddMsgLine("修改个人信息完毕");
}
}
5、编译Discuz.Web项目,在后台生成userpersoninfo.htm模板,此时“编辑个人信息”页面基本完成,可以实现功能满足要求了。
八、以上功能基本都完成了,但在“编辑个人信息”页面并不能进去,因为没有对应的菜单。下面修改菜单模板,增加菜单和对应的一些逻辑。
1、修改_permenu.htm,增加“编辑个人信息”链接。
2、修改_menu.htm,增加“编辑个人信息”链接。
3、菜单想怎么摆就怎么摆吧,这块就比较简单了。生成模板,这时整个交友插件就修改制作完成了。
九、总结
1、这种修改方式有个弊端,就是必须要源代码,而且要修改模板,难度较大。
2、好处是和源文件结合的很紧密,前台表现非常好,与论坛天衣无缝的整合在一起,没什么破绽,是符合官方的开发思路的。
3、部分模板被修改了,如果要换皮肤,需要每次将修改的5张模板进行覆盖。
4、有新的2个DLL要替换:Discuz.Web.dll、Discuz.Plugin.Friend.dll。
5、用这种方式可以对DNT2.0的会员信息进行大幅度的扩展,对于网站整合来说,可以以DNT2.0的会员为核心,在其上添加更多的业务功能,或者与网站的业务流程进行交叉,灵活性非常大。我想能使用这种方式对DNT2.0进行修改的人,用DNT2.0进行网站整合和重组都不是什么问题。
(全文完)
相关文章推荐
- DNT2.0交友信息插件制作全攻略(一)
- nagios全攻略(三)----使用插件监控更多信息
- nagios全攻略(三)----使用插件监控更多信息 推荐
- [插件制作] Discuz!插件的通过数据库读取和缓存读取获取插件信息和参数
- nagios全攻略(三)----使用插件监控更多信息
- nagios全攻略(三)----使用插件监控更多信息
- poEdit制作WordPress主题汉化,插件汉化攻略
- 用C#制作PDF文件全攻略(转)
- photoshop CC 2017 安装全攻略(包括安装笔刷,插件:coolorus)
- Discuz!X 插件制作教程 ------ 发布插件
- (转)openfire插件开发(三)通过http方式向openfire客户端发信息
- WordPress插件制作教程(二): 编写一个简单的插件
- WordPress插件制作教程(三): 添加菜单的方法
- js插件-右下角弹出信息提示框
- WordPress插件制作教程(八): 最后总结
- 依赖Android AAR的Cordova插件制作
- 第1款插件:Semantic Tabs可以简单地制作Tabs菜单
- 第9款插件:jQuery Form Tips表单提示信息插件