风讯官方论坛

首页 » FoosunCMS交流区 » Foosun3.x安装使用 » 前台动态显示“NEW”标志已完成,签收功能哪位能提供个?
keexin - 2006-9-24 06:07:00

[upload=gif]UploadFile/2006-9/20069245232279897.gif[/upload]

适用版本:3.1SP2,3.2的应该也差不多。

前台动态显示,自动判断是否显示,首页是否重新生成都不影响显示。用了别人的一些东西,修改了一部分。

所需修改文件:

1./Inc/Function.asp

需要修改 DateFormat 函数,象2006-8-25这类单双混合的日期的字符串前台不好判断。

找到约38行

Function  DateFormat(DateStr,Types)

………………

………………

End Function

替换为:

'-----------------------------------------------------------

'实现月,日,时,分小于10的时候系统自动补入0
Function  DateFormat(DateStr,Types)
    Dim DateString,FData,MonthFormat,DayFormat,HourFormat,MinuteFormat
if IsDate(DateStr) = False then
  DateString = ""
end if
MonthFormat = Month(DateStr)
DayFormat = Day(DateStr)
HourFormat = Hour(DateStr)
MinuteFormat = Minute(DateStr)
if Month(DateStr) < 10 then
    MonthFormat = "0"&Month(DateStr)
end if
if Day(DateStr) < 10 then
    DayFormat = "0"&Day(DateStr)
end if
if Hour(DateStr) < 10 then
    HourFormat = "0"&Hour(DateStr)
end if
if Minute(DateStr) < 10 then
    MinuteFormat = "0"&Minute(DateStr)
end if
Select Case Types
   Case "1"
'下面方括号部分,为实现如:[2005-07-08]的样式.要实现其他样式请自己修改
'   DateString ="["& Year(DateStr)&"-"&MonthFormat&"-"&DayFormat&"]"

    DateString = Year(DateStr)&"-"&MonthFormat&"-"&DayFormat
   Case "2"
    DateString = Year(DateStr)&"."&MonthFormat&"."&DayFormat
   Case "3"
    DateString = Year(DateStr)&"/"&MonthFormat&"/"&DayFormat
   Case "4"
    DateString = MonthFormat&"/"&DayFormat&"/"&Year(DateStr)
   Case "5"
    DateString = DayFormat&"/"&MonthFormat&"/"&Year(DateStr)
   Case "6"
    DateString = MonthFormat&"-"&DayFormat&"-"&Year(DateStr)
   Case "7"
    DateString = MonthFormat&"."&DayFormat&"."&Year(DateStr)
   Case "8"
    DateString = MonthFormat&"-"&DayFormat
   Case "9"
    DateString = MonthFormat&"/"&DayFormat
   Case "10"
    DateString = MonthFormat&"."&DayFormat
   Case "11"
    DateString =MonthFormat&"月"&DayFormat&"日"
   Case "12"
    DateString = DayFormat&"日"&HourFormat&"时"
   case "13"
    DateString = DayFormat&"日"&HourFormat&"点"
   Case "14"
    DateString = HourFormat&"时"&MinuteFormat&"分"
   Case "15"
    DateString = HourFormat&":"&MinuteFormat
   Case "16"
    DateString = Year(DateStr)&"年"&MonthFormat&"月"&DayFormat&"日"
   Case Else
      DateString = DateStr
  End Select
  DateFormat = DateString
End Function

'-----------------------------------------------------------

请整段替换。

2.修改/..../admin/Refresh/RefreshFunction.asp 文件

修改 SelfClass 函数,约从137行左右开始。

找到

    if DateRightStr = "Center" Or DateRightStr = "Right" then
     SelfClass = SelfClass & "<td " & RowHeightStr & ">" & NaviPicStr & ClassCNName & "<a " & OpenTypeStr & GetCSSStyleStr(CSSStyleStr) & " href=""" & GetOneNewsLinkURL(RsNewsObj("NewsID")) & """  title="""& RsNewsObj("Title")&""">" & GetHTMLTitle(RsNewsObj("TitleStyle"),GotTopic(RsNewsObj("Title"),TitleNumberStr)) & "</a>" & ReViewStr & "</td>" & TempDateShowStr & Chr(13) & Chr(10)
    else

约179行,红色部分为加入部分,蓝色部分为“new.gif”图片地址,绿色部分为对应前台的日期格式。只修改了日期格式居左或居中时的代码,如果修改居右时的,请自行找到下面居左时的代码修改。

修改为:

-----------------------------------------------------

    if DateRightStr = "Center" Or DateRightStr = "Right" then
     SelfClass = SelfClass & "<td " & RowHeightStr & ">" & "<script language=javascript>isitToday('" & DateFormat(RsNewsObj("AddDate"),DateRuleStr) & "',5)</script>" & NaviPicStr & ClassCNName & "<a " & OpenTypeStr & GetCSSStyleStr(CSSStyleStr) & " href=""" & GetOneNewsLinkURL(RsNewsObj("NewsID")) & """  title="""& RsNewsObj("Title")&""">" & GetHTMLTitle(RsNewsObj("TitleStyle"),GotTopic(RsNewsObj("Title"),TitleNumberStr)) & "</a>" & ReViewStr & "<script language=javascript>if (isitToday('" & DateFormat(RsNewsObj("AddDate"),DateRuleStr) & "',5)) document.write ('<img src=/images/new.gif>');</script>" & "</td>" & TempDateShowStr & Chr(13) & Chr(10)
    else
-----------------------------------------------------

3.修改模板文件“index.htm”,此处后台定义的日期格式为 2003-3-1,如果后台定义日期格式为其它格式,请自行修改,别忘了一并修改上面代码中对应的绿色部分。

加入下面脚本:

----------------------------------------------------

<script language="JavaScript">
/*其中的日期字符串可有以下格式:
   格式 1 : 19970529
   格式 2 : 970529
   格式 3 : 29/05/1997
   格式 4 : 29/05/97
   格式 5 : 1997-07-15
   输入参数dateType是1到5的数字,表示使用哪种格式.
*/
function isitToday(dateString,dateType) {
    var now = new Date();
    var today = new Date(now.getYear(),now.getMonth(),now.getDate())

    if (dateType == 1)
        var date = new Date(dateString.substring(0,4),
                            dateString.substring(4,6)-1,
                            dateString.substring(6,8));
    else if (dateType == 2)
        var date = new Date(dateString.substring(0,2),
                            dateString.substring(2,4)-1,
                            dateString.substring(4,6));
    else if (dateType == 3)
        var date = new Date(dateString.substring(6,10),
                            dateString.substring(3,5)-1,
                            dateString.substring(0,2));
    else if (dateType == 4)
        var date = new Date(dateString.substring(6,8),
                            dateString.substring(3,5)-1,
                            dateString.substring(0,2));
    else if (dateType == 5)
        var date = new Date(dateString.substring(0,4),
                            dateString.substring(5,7)-1,
                            dateString.substring(8,10));
    else
        return false;

    if (date.toString() == today.toString())
        return true;
    else
        return false;
}
</script>

----------------------------------------------------

原理:

前台脚本分析日期字符串,判断是否为日期,如果是日期,那么和当天日期作比较,如果是今天,则显示“new.gif”图片,否则不显示。当然也可以定义从今天至前三天的都显示图片。

另外,最近急需文件签收功能,哪位老大能给提供个。

sky3918 - 2006-9-24 06:58:00

楼主辛苦了,,,,,,收藏拉

坐个沙发先.........

doudou888 - 2006-9-24 07:53:00

不错!

keexin - 2006-10-11 07:16:00
签收是不是还没人弄啊。
四季逗 - 2006-10-11 13:40:00

看签名是不是这样的图标

我要NEW啊 - 2006-10-23 03:09:00
暗暗暗暗
傅沥 - 2008-3-17 14:59:00
:default6:
感谢楼主, 添加最新new.gif果然成功!
傅沥 - 2008-3-19 16:28:00


引用:
原帖由 keexin 于 2006-9-24 06:07:00 发表
----------------------------------------------------
原理:
前台脚本分析日期字符串,判断是否为日期,如果是日期,那么和当天日期作比较,如果是今天,则显示“new.gif”图片,否则不显示。当然也可以定义从今天至前三天的都显示图片。


具体该怎么设置 三天前的new 啊?
傅沥 - 2008-3-28 09:18:00
哪位帮帮吗
1
查看完整版本: 前台动态显示“NEW”标志已完成,签收功能哪位能提供个?