home *** CD-ROM | disk | FTP | other *** search
- function com_netobjects_cookieComponent( params ) {
- this.getCookie = ccGetCookie;
- this.setCookie = ccSetCookie;
- this.deleteCookie = ccDeleteCookie;
- this.fixDate = fixDate;
- this.setcookieValue = setcookieValue
-
- this.name = (params.name+"" != "undefined" ? params.name : "cookieComponent1");
- this.cookieName = (params.cookieName+"" != "undefined" ? params.cookieName : "");
- this.value = (params.value+"" != "undefined" ? params.value : "");
- this.year = (params.year+"" != "undefined" ? params.year : "");
- this.month = (params.month+"" != "undefined" ? params.month : "");
- this.day = (params.day+"" != "undefined" ? params.day : "");
- this.path = (params.path+"" != "undefined" ? params.path : "");
- this.domain = (params.domain+"" != "undefined" ? params.domain : "");
- this.secure = (params.secure+"" != "undefined" ? params.secure : "");
-
- // Boolean variable specified if alert should be displayed if cookie exceeds 4KB
- ccCaution = false;
-
- function setcookieValue(newCookie, name) {
- if(newCookie+"" != "null" && newCookie+"" != "undefined")
- eval(name + ".value=newCookie;");
- else
- alert("You need to specify an appropriate name for the cookie");
- }
-
- // date - any instance of the Date object
- // * you should hand all instances of the Date object to this function for "repairs"
- // * this function is taken from Chapter 14, "Time and Date in JavaScript", in "Learn Advanced JavaScript Programming"
- function fixDate(date) {
- var base = new Date(0);
- var skew = base.getTime();
- if (skew > 0)
- date.setTime(date.getTime() - skew);
- }
-
- // name - name of the cookie// value - value of the cookie
- // [expires] - expiration date of the cookie (defaults to end of current session)
- // [path] - path for which the cookie is valid (defaults to path of calling document)
- // [domain] - domain for which the cookie is valid (defaults to domain of calling document)
- // [secure] - Boolean value indicating if the cookie transmission requires a secure transmission
- // * an argument defaults when it is assigned null as a placeholder
- // * a null placeholder is not required for trailing omitted arguments
- function ccSetCookie(name) {
- if(eval(name + ".cookieName") != "" &&
- eval(name + ".cookieName")+"" != "undefined" &&
- eval(name + ".cookieName")+"" != "null")
- {
- var newExpiry = new Date(eval(name + ".year"), eval(name + ".month"), eval(name + ".day"));
- eval("\"" + name + ".fixDate(" + newExpiry + ")\"");
- var curCookie = eval(name + ".cookieName") + "=" +
- escape(eval(name + ".value")) +
- (newExpiry ? "; expires=" + newExpiry.toGMTString() : "") +
- (eval(name + ".path") ? "; path=" + eval(name + ".path") : "") +
- (eval(name + ".domain") ? "; domain=" + eval(name + ".domain") : "") +
- (eval(name + ".secure") ? "; secure" : "");
- alert("curCookie: " + curCookie);
- if (!ccCaution || (eval(name + ".cookieName") + "=" + eval(name + ".value")).length <= 4000)
- document.cookie = curCookie;
- else if (confirm("Cookie exceeds 4KB and will be cut!"))
- document.cookie = curCookie;
- }
- }
-
- // name - name of the desired cookie
- // * return string containing value of specified cookie or null if cookie does not exist
- function ccGetCookie(name) {
- if(eval(name + ".cookieName") != "" ||
- eval(name + ".cookieName")+"" != "undefined" &&
- eval(name + ".cookieName")+"" != "null")
- {
- var cname = eval(name + ".cookieName") + "=";
- var dc = document.cookie;
- if(dc.length > 0) {
- begin = dc.indexOf(cname);
- if(begin != -1) {
- begin += cname.length;
- end = dc.indexOf(";", begin);
- if(end == -1) end = dc.length;
- return unescape(dc.substring(begin, end));
- }
- return null;
- }
- }
- }
-
- // name - name of the cookie
- // [path] - path of the cookie (must be same as path used to create cookie)
- // [domain] - domain of the cookie (must be same as domain used to create cookie)
- // * path and domain default if assigned null or omitted if no explicit argument proceeds
- function ccDeleteCookie(name) {
- if(eval(name + ".cookieName") != "" ||
- eval(name + ".cookieName")+"" != "undefined" &&
- eval(name + ".cookieName")+"" != "null")
- {
- if (ccGetCookie(eval(name + ".cookieName"))) {
- curCookie = eval(name + ".cookieName") + "=" +
- ((eval(name + ".path")) ? "; path=" + eval(name + ".path") : "") +
- ((eval(name + ".domain")) ? "; domain=" + eval(name + ".domain") : "") +
- "; expires=Thu, 01-Jan-70 00:00:01 GMT"
- alert("curCookie: " + curCookie);
- document.cookie = curCookie;
- return true;
- }
- return false;
- }
- return false;
- }
- }
-