home *** CD-ROM | disk | FTP | other *** search
/ PC World 2000 September / PCWorld_2000-09_cd.bin / Software / Topware / aspedit / _SETUP.1 / cookielib.inc < prev    next >
Text File  |  1998-12-22  |  3KB  |  81 lines

  1. <%
  2. '=======================================================================
  3. ' application("cookiedomain") and application("cookiepath") can be 
  4. ' set if firewall precludes accurate server variable
  5. ' AddCookie(Cname, CKey, CValue, CExpDays)
  6. ' Example: Call AddCookie("MyCookie", "Cost", "$1.00", 100)
  7. '
  8. ' KillCookie(Cname,CKey)
  9. ' Example: Call KillCookie("MyCookie", "Cost")
  10. '
  11. ' GetCookie(Cname,Ckey)
  12. '    Example: Call GetCookie("MyCookie", "Cost")
  13. '
  14. ' Cname = Cookie Name: Required, for cookie name
  15. '    Ckey = Cookie Key: Optional(empty sting), use if cookie should be a dictionary
  16. '    Cvalue = Cookie Value: Required, what the cookie should be set to.
  17. '    CExpDays = Cookie Expiration: number of days cookie is valid, default 365 
  18. '=======================================================================
  19.  
  20. Function AddCookie(Cname, CKey, CValue, CExpDays)
  21.    If Cname = "" Then
  22.       Exit Function
  23.    End If
  24.    
  25.    If IsNumeric(CExpDays) = False Then CExpDays = 0
  26.    If CExpDays < 1 Then CExpDays = 365
  27.    
  28.    If CValue = "" Then CValue = " "
  29.  
  30.    If CKey <> "" Then
  31.       Response.Cookies(Cname)(CKey) = CValue
  32.    Else
  33.       Response.Cookies(Cname) = CValue
  34.    End If
  35.  
  36.    Response.Cookies(CName).Expires = Date + CExpDays
  37.    Response.Cookies(CName).Domain = GetCookieDomain()
  38.    Response.Cookies(CName).Path = GetCookiePath()
  39. End Function
  40.  
  41. Function KillCookie(Cname,CKey)
  42.    If CKey <> "" Then
  43.       Call AddCookie(Cname, Ckey, "", 0)
  44.    Else
  45.       Response.Cookies(Cname).Expires = Date - 365
  46.       Response.Cookies(CName).Domain = GetCookieDomain()
  47.       Response.Cookies(CName).Path = GetCookiePath()
  48.    End If
  49. End Function
  50.  
  51. Function GetCookie(Cname, Ckey)
  52.       If CKey <> "" Then
  53.          GetCookie = Request.Cookies(Cname)(Ckey)
  54.       Else
  55.          GetCookie = Request.Cookies(Cname)
  56.       End If
  57. End Function
  58.  
  59. Function GetCookieDomain()
  60.    If Application("CookieDomain") <> "" Then
  61.       GetCookieDomain = Application("CookieDomain")
  62.    Else
  63.       GetCookieDomain = Request.ServerVariables("SERVER_NAME")
  64.    End If
  65. End Function
  66.  
  67. Function GetCookiePath()
  68.    If Application("CookiePath") <> "" Then
  69.       GetCookiePath = Application("CookiePath")
  70.    Else
  71.       TmpPath = Request.ServerVariables("SCRIPT_NAME")
  72.       TmpPath = Split(TmpPath, "/")
  73.       For PathArryCnt = 0 to Ubound(TmpPath) - 1
  74.          GetCookiePath = GetCookiePath & TmpPath(PathArryCnt) & "/"
  75.       Next
  76.       If GetCookiePath = "/" Then GetCookiePath = ""
  77.    End If
  78. End Function
  79. %>
  80.