var rdtdbFilePath = '/' + 'na/forrester/itforum2009/rdtdb2.nsf'; // computed text var idList = ''; var modalWindow; var http = getHttpObject(); function setCookie(name, fieldObj, path) { var expDate = new Date(); expDate.setTime(expDate.getTime() + 604800000); // 1 week switch(fieldObj.type) { case 'select-one' : if (fieldObj.selectedIndex > -1) { i = fieldObj.selectedIndex; if (fieldObj.options[i].value == '') { expDate = new Date(1970, 0, 1, 0, 0, 1); } document.cookie = name + '=' + escape(fieldObj.options[i].value) + '; expires=' + expDate.toUTCString() + (path != '' ? '; path=' + path : ''); document.cookie = name + '_text=' + escape(fieldObj.options[i].text ) + '; expires=' + expDate.toUTCString() + (path != '' ? '; path=' + path : ''); } break; case 'checkbox' : document.cookie = name + '=' + escape(fieldObj.checked) + '; expires=' + expDate.toUTCString() + (path != '' ? '; path=' + path : ''); break; case 'text' : case 'hidden' : document.cookie = name + '=' + escape(fieldObj.value) + '; expires=' + expDate.toUTCString() + (path != '' ? '; path=' + path : ''); break; } } function getCookie(name) { var arg, start, end, value = ''; if (document.cookie.length > 0) { arg = name + '='; start = document.cookie.indexOf(arg); if (start != -1) { end = document.cookie.indexOf(';', start); if (end != -1) { value = unescape(document.cookie.substring((start + arg.length), end)); } else { value = unescape(document.cookie.substring((start + arg.length), document.cookie.length)); } } } return value; } function restoreFieldFromCookie(fieldObj, cookieName, deselect) { var cookieValue = getCookie(cookieName); switch(fieldObj.type) { case 'select-one' : if (deselect) { fieldObj.selectedIndex = -1; } for (var i = 0; i <= fieldObj.length - 1; i++) { if (fieldObj.options[i].value == cookieValue) { fieldObj.options[i].selected = true; break; } } break; case 'text' : case 'hidden' : fieldObj.value = cookieValue; break; } } function getArg(arg, queryString) { var start, end; start = queryString.toUpperCase().indexOf('&' + arg.toUpperCase() + '='); if (start != -1) { start = start + ('&' + arg + '=').length; end = queryString.indexOf('&', start) if (end != -1) { return queryString.slice(start, end); } else { return queryString.slice(start); } } else { return ''; } } function showModalWindow(url, features) { addEvent(window, 'click', handleClick); addEvent(window, 'focus', handleFocus); modalWindow = window.open(url, '', features) } function addEvent(objObject, strEventName, fnHandler) { if (objObject.addEventListener) { // DOM-compliant way to add an event listener objObject.addEventListener(strEventName, fnHandler, false); } else if (objObject.attachEvent) { // IE/windows way to add an event listener objObject.attachEvent("on" + strEventName, fnHandler); } } function removeEvent(objObject, strEventName, fnHandler) { if (objObject.removeEventListener) { // DOM-compliant way to remove an event listener objObject.removeEventListener(strEventName, fnHandler, false); } else if (objObject.detachEvent) { // IE/windows way to remove an event listener objObject.detachEvent("on" + strEventName, fnHandler); } } function handleClick() { return false; } function handleFocus() { try { if (!modalWindow.closed) { modalWindow.focus(); } else { removeEvent(window, 'click', handleClick); removeEvent(window, 'focus', handleFocus); } } catch (e) { removeEvent(window, 'click', handleClick); removeEvent(window, 'focus', handleFocus); } } function updateIdList(flag, id) { if (flag == 1) { if (idList.length < 935) { // 10 characters plus a comma per NoteID in list x 85 NoteIDs idList = idList + id + ',' } else { alert('You\'ve selected too many objects (maximum allowed is 85)'); } } else { idList = idList.replace(new RegExp(id + ','), ''); } } function processIdListNew(op) { var response; if (idList != '') { if (confirm('Are you sure you wish to ' + op + ' the selected object(s)?')) { http.open('GET', location.pathname + '?openagent&m=delete&o=' + op + '&l=' + idList.slice(0, -1), true); http.onreadystatechange = function() { if (http.readyState == 4) { if (http.status == 200) { if (http.responseText.slice(0, 5).toLowerCase() == '