Hello all,
I am new to javascript and cross-browsing. I have a XSLT generated HTML document which works fine ini IE and opera but have problems with firefox. I tried to debug with firebug but i have no idea what should i do next to fix the problem. I would greatly appreciate if anybody help me figuring this out. Here is my html document:
<html xmlns:SleepXML="http://www.SleepXML.org">
<HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>SleepXML.com</title>
<STYLE type="text/css">
.infotable
{
font: Icon;
border: 1px Solid ThreeDShadow;
background: Window;
color: WindowText;
MARGIN-LEFT: 10px;
}
.issuetable
{
font: Icon;
border: none;
MARGIN-LEFT: 10px;
}
.records
{
color:gray;
}
b.entities
{
margin-left:10px;
text-align:right;
color:blue;
font-weight:normal;
}
.issuetitle
{
background: ButtonFace
border: 1px Solid ThreeDShadow;
cursor: default;
}
.header
{
background: ButtonFace
cursor: default;
}
.content
{
padding: 2px 5px;
}
.expandable
{
CURSOR: hand;
}
.collapsed
{
DISPLAY: none;
}
H2 {
color: black;
font-size: 12pt;
font-weight:bold;
cursor: default;
}
small
{
color:red;
}
.divstyle {
padding: 10px 10px 10px 10px;
border: 1px Solid ThreeDShadow
border-color: ButtonHighlight ButtonShadow
ButtonShadow ButtonHighlight;
margin: 2px auto 1px auto;
}
CAPTION.MYTABLE {
}
TABLE.MYTABLE {
Font: Icon;
border: 1px Solid ThreeDShadow;
background: Window;
color: WindowText;
width: 90%
}
TH.MYTABLE {
background: ButtonFace
cursor: default;
}
TR.MYTABLE {
}
TD.MYTABLE {
padding: 2px 5px;
}
.tabset_tabs {
margin:0px;
padding:0px;
list-style-type:none;
position:relative;
z-index:2;
white-space:wrap;
}
.tabset_tabs li {
margin:0px;
padding:0px;
display:inline;
}
.tabset_tabs a {
color:black;
background-color:ButtonFace ! important;
border-color: ButtonShadow ButtonHighlight
ButtonHighlight ButtonShadow;
text-decoration:none;
padding:0em 0.6em;
}
.tabset_tabs a:hover {
color:black! important;
background-color:white ! important;
}
.tabset_tabs a.active {
color:black ! important;
background-color:white ! important;
border-color: ButtonShadow ButtonHighlight
ButtonHighlight ButtonShadow;
border-left-width:1px;
cursor:default;
padding-top:1px;
padding-bottom:1px;
}
.tabset_tabs li.firstchild a {
border-left-width:1px ;
}
.tabset_content {
background: #f4f4f4;
z-index:2;
padding:0.5em 1em;
display:none;
}
.tabset_label { display:none; }
.tabset_content_active { display:block; }
@media aural{
.tabset_content,
.tabset_label { display:block; }
}
</STYLE>
<script language="javascript" type="text/javascript">
//***collapsible rows
function outliner() {
oMe = window.event.srcElement;
//get child element
var child = document.all[event.srcElement.getAttribute("child",false)];
//if child element exists, expand or collapse it.
if (null != child)
child.className = child.className == "collapsed" ? "expanded" : "collapsed";
}
function changepic() {
uMe = window.event.srcElement;
var check = uMe.src.toLowerCase();
if (check.lastIndexOf("expand.gif") != -1)
{
uMe.src = "collapse.gif";
}
else
{
uMe.src = "expand.gif";
}
}
//*** addclasskillclass.js
//*** This code is copyright 2002-2004 by Gavin Kistner and Refinery; www.refinery.com
//*** It is covered under the license viewable at http://phrogz.net/JS/_ReuseLicense.txt
//*** Reuse or modification is free provided you abide by the terms of that license.
//*** (Including the first two lines above in your source code satisfies the conditions.)
//***Adds a new class to an object, preserving existing classes
function AddClass(obj,cName){ KillClass(obj,cName); return obj && (obj.className+=(obj.className.length>0?' ':'')+cName); }
//***Removes a particular class from an object, preserving other existing classes.
function KillClass(obj,cName){ return obj && (obj.className=obj.className.replace(new RegExp("^"+cName+"\\b\\s*|\\s*\\b"+cName+"\\b",'g'),'')); }
//***Returns true if the object has the class assigned, false otherwise.
function HasClass(obj,cName){ return (!obj || !obj.className)?false:(new RegExp("\\b"+cName+"\\b")).test(obj.className) }
//*** attachment.js
//***Cross browser attach event function. For 'evt' pass a string value with the leading "on" omitted
//***e.g. AttachEvent(window,'load',MyFunctionNameWithoutParenthesis,false);
function AttachEvent(obj,evt,fnc,useCapture){
if (!useCapture) useCapture=false;
if (obj.addEventListener){
obj.addEventListener(evt,fnc,useCapture);
return true;
} else if (obj.attachEvent) return obj.attachEvent("on"+evt,fnc);
else{
MyAttachEvent(obj,evt,fnc);
obj=function(){ MyFireEvent(obj,evt) };
}
}
//The following are for browsers like NS4 or IE5Mac which don't support either
//attachEvent or addEventListener
function MyAttachEvent(obj,evt,fnc){
if (!obj.myEvents) obj.myEvents={};
if (!obj.myEvents[evt]) obj.myEvents[evt]=[];
var evts = obj.myEvents[evt];
evts[evts.length]=fnc;
}
function MyFireEvent(obj,evt){
if (!obj || !obj.myEvents || !obj.myEvents[evt]) return;
var evts = obj.myEvents[evt];
for (var i=0,len=evts.length;i<len;i++) evts();
}
//*** addcss.js
// Add a new stylesheet to the document;
// url [optional] A url to an external stylesheet to use
// idx [optional] The index in document.styleSheets to insert the new sheet before
function AddStyleSheet(url,idx){
var css,before=null,head=document.getElementsByTagName("head")[0];
if (document.createElement){
if (url){
css = document.createElement('link');
css.rel = 'stylesheet';
css.href = url;
} else css = document.createElement('style');
css.media = 'all';
css.type = 'text/css';
if (idx>=0){
for (var i=0,ct=0,len=head.childNodes.length;i<len;i++){
var el = head.childNodes;
if (!el.tagName) continue;
var tagName = el.tagName.toLowerCase();
if (ct==idx){
before = el;
break;
}
if (tagName=='style' || tagName=='link' && (el.rel && el.rel.toLowerCase()=='stylesheet' || el.type && el.type.toLowerCase()=='text/css') ) ct++;
}
}
head.insertBefore(css,before);
return document.styleSheets[before?idx:document.styleSheets.length-1];
} else return alert("I can't create a new stylesheet for you. Sorry.");
}
// e.g. var newBlankSheetAfterAllOthers = AddStyleSheet();
// e.g. var newBlankSheetBeforeAllOthers = AddStyleSheet(null,0);
// e.g. var externalSheetAfterOthers = AddStyleSheet('http://phrogz.net/JS/Classes/docs.css');
// e.g. var externalSheetBeforeOthers = AddStyleSheet('http://phrogz.net/JS/Classes/docs.css',0);
// Cross-browser method for inserting a new rule into an existing stylesheet.
// ss - The stylesheet to stick the new rule in
// selector - The string value to use for the rule selector
// styles - The string styles to use with the rule
function AddRule(ss,selector,styles){
if (!ss) return false;
if (ss.insertRule) return ss.insertRule(selector+' {'+styles+'}',ss.cssRules.length);
if (ss.addRule){
ss.addRule(selector,styles);
return true;
}
return false;
}
// e.g. AddRule( document.styleSheets[0] , 'a:link' , 'color:blue; text-decoration:underline' );
// e.g. AddRule( AddStyleSheet() , 'hr' , 'display:none' );
//*** tabtastic.js
//*** Tabtastic -- see http://phrogz.net/JS/Tabstatic/index.html
//*** Version 1.0 20040430 Initial release.
//*** 1.0.2 20040501 IE5Mac, IE6Win compat.
//*** 1.0.3 20040501 Removed IE5Mac/Opera7 compat. (see http://phrogz.net/JS/Tabstatic/index.html#notes)
//*** 1.0.4 20040521 Added scroll-back hack to prevent scrolling down to page anchor. Then commented out :)
AttachEvent(window,'load',function(){
var tocTag='ul',tocClass='tabset_tabs',tabTag='a',contentClass='tabset_content';
function FindEl(tagName,evt){
if (!evt && window.event) evt=event;
if (!evt) return DebugOut("Can't find an event to handle in DLTabSet::SetTab",0);
var el=evt.currentTarget || evt.srcElement;
while (el && (!el.tagName || el.tagName.toLowerCase()!=tagName)) el=el.parentNode;
return el;
}
function SetTabActive(tab){
if (tab.tabTOC.activeTab){
if (tab.tabTOC.activeTab==tab) return;
KillClass(tab.tabTOC.activeTab,'active');
if (tab.tabTOC.activeTab.tabContent) KillClass(tab.tabTOC.activeTab.tabContent,'tabset_content_active');
//if (tab.tabTOC.activeTab.tabContent) tab.tabTOC.activeTab.tabContent.style.display='';
if (tab.tabTOC.activeTab.prevTab) KillClass(tab.tabTOC.activeTab.previousTab,'preActive');
if (tab.tabTOC.activeTab.nextTab) KillClass(tab.tabTOC.activeTab.nextTab,'postActive');
}
AddClass(tab.tabTOC.activeTab=tab,'active');
if (tab.tabContent) AddClass(tab.tabContent,'tabset_content_active');
//if (tab.tabContent) tab.tabContent.style.display='block';
if (tab.prevTab) AddClass(tab.prevTab,'preActive');
if (tab.nextTab) AddClass(tab.nextTab,'postActive');
}
function SetTabFromAnchor(evt){
setTimeout('document.body.scrollTop='+document.body.scrollTop,1);
SetTabActive(FindEl('a',evt).semanticTab);
}
function Init(){
window.everyTabThereIsById = {};
var anchorMatch = /#([a-z][\w.:-]*)$/i,match;
var activeTabs = [];
var tocs = document.getElementsByTagName(tocTag);
for (var i=0,len=tocs.length;i<len;i++){
var toc = tocs;
if (!HasClass(toc,tocClass)) continue;
var lastTab;
var tabs = toc.getElementsByTagName(tabTag);
for (var j=0,len2=tabs.length;j<len2;j++){
var tab = tabs[j];
if (!tab.href || !(match=anchorMatch.exec(tab.href))) continue;
if (lastTab){
tab.prevTab=lastTab;
lastTab.nextTab=tab;
}
tab.tabTOC=toc;
everyTabThereIsById[tab.tabID=match[1]]=tab;
tab.tabContent = document.getElementById(tab.tabID);
if (HasClass(tab,'active')) activeTabs[activeTabs.length]=tab;
lastTab=tab;
}
AddClass(toc.getElementsByTagName('li')[0],'firstchild');
}
for (var i=0,len=activeTabs.length;i<len;i++){
SetTabActive(activeTabs);
}
for (var i=0,len=document.links.length;i<len;i++){
var a = document.links;
if (!(match=anchorMatch.exec(a.href))) continue;
if (a.semanticTab = everyTabThereIsById[match[1]]) AttachEvent(a,'click',SetTabFromAnchor,false);
}
if ((match=anchorMatch.exec(location.href)) && (a=everyTabThereIsById[match[1]])) SetTabActive(a);
//Comment out the next line and include the file directly if you need IE5Mac or Opera7 support.
//AddStyleSheet('tabtastic.css',0);
}
Init();
},false);
//***collapsible rows
function outliner() {
oMe = window.event.srcElement;
//get child element
var child = document.all[event.srcElement.getAttribute("child",false)];
//if child element exists, expand or collapse it.
if (null != child)
child.className = child.className == "collapsed" ? "expanded" : "collapsed";
}
function changepic() {
uMe = window.event.srcElement;
var check = uMe.src.toLowerCase();
if (check.lastIndexOf("expand.gif") != -1)
{
uMe.src = "collapse.gif";
}
else
{
uMe.src = "expand.gif";
}
}
//*** SORTABLE ROWS
var ts_version = "1.26";
var ts_browser_agt = navigator.userAgent.toLowerCase();
var ts_browser_is_ie = ((ts_browser_agt.indexOf("msie") != -1) && (ts_browser_agt.indexOf("opera") == -1));
var ml_tsort = {
///////////////////////////////////////////////////
// configurable constants, modify as needed!
sort_col_title : "Click to Sort!", // the popup text for the sorting link in the header columns
sort_col_asc_title : "Sorted ascending", // the popup text for the sorting link in the header column after the column's sorted in ascending order
sort_col_desc_title : "Sorted Descending ", // the popup text for the sorting link in the header column after the column's sorted in ascending order
sort_col_class : "abc", // whichever class you want the heading to be
sort_col_style : "text-decoration:none; font-weight:bold; color:black", // whichever style you want the link to look like
sort_col_class_post_sort : "def", // whichever class you want the heading for the column that's just sorted
sort_col_style_post_sort : "text-decoration:none; font-weight:bold; color:black", // whichever style you want the link to look like when the column for the link was sorted
sort_col_mouseover : "this.style.color='blue'", // what style the link should use onmouseover?
use_ctrl_alt_click : false, // allow ctrl-alt-click anywhere in table to activate sorting?
sort_only_sortable : true, // make all tables sortable by default or just make the tables with "sortable" class sortable?
//////////////////////////////////////////////////
// speed related constants, modify as needed!
table_content_might_change : false, // table content could be changed by other JS on-the-fly? if so, some speed improvements cannot be used.
preserve_style : " ", // (row, cell) preserves style for row or cell e.g., row is useful when the table highlights rows alternatively. cell is much slower while no preservation's the fastest by far!
tell_me_time_consumption : false, // give stats about time consumed during sorting and table update/redrawing.
//////////////////////////////////////////////////////////
// anything below this line, modify at your own risk! ;)
smallest_int : -2147483648000, // date parse is in milliseconds, hence the 000
set_vars : function(event)
{
var e = (event)? event : window.event;
var element = (event)? ((event.target)? event.target : event.srcElement) : window.event.srcElement;
var clicked_td = ml_tsort.getParent(element,'TD') || ml_tsort.getParent(element,'TH');
var table = ml_tsort.getParent(element,'TABLE');
if(!table || table.rows.length < 1 || !clicked_td) return;
var column = clicked_td.cellIndex;
if (e.altKey && e.ctrlKey && ml_tsort.use_ctrl_alt_click) ml_tsort.resortTable(table.rows[0].cells[column]);
},
makeSortable: function(table)
{
if (table.rows && table.rows.length > 0) {
var rowidx = table.getAttribute("ts_linkrow") || 0;
var firstRow = table.rows[rowidx];
}
if (!firstRow) return;
var sortCell;
// We have a first row: assume it's the header (it works for <thead> too),
// and make its contents clickable links
for (var i=0;i<firstRow.cells.length;i++) {
var cell = firstRow.cells;
if(cell.getAttribute("ts_nosort")) continue;
var txt = cell.innerHTML;
if(cell.getAttribute("sortdir")) sortCell = cell;
cell.innerHTML = '<a style="'+this.sort_col_style+'" onMouseOver="this.oldstyle=this.style.cssText;'+this.sort_col_mouseover+'" onMouseOut="this.style.cssText=this.oldstyle;" class="'+this.sort_col_class+'" href="#" title="'+this.sort_col_title+'" onclick="javascript:ml_tsort.resortTable(this.parentNode);return false">'+txt+'</a>';
}
if(sortCell) this.resortTable(sortCell);
},
sortables_init : function()
{
// Find all tables with class sortable and make them sortable
if (!document.getElementsByTagName) return;
var tbls = document.getElementsByTagName("table");
for (var ti=0;ti<tbls.length;ti++) {
thisTbl = tbls[ti];
if(!ml_tsort.sort_only_sortable || thisTbl.className.match(/sortable/i))
ml_tsort.makeSortable(thisTbl);
}
},
getParent : function(el, pTagName)
{
if (el == null) return null;
else if (el.nodeType == 1 && el.tagName.toLowerCase() == pTagName.toLowerCase()) // Gecko bug, supposed to be uppercase
return el;
else
return this.getParent(el.parentNode, pTagName);
},
getInnerText : function(el)
{
if (typeof el == "string") return el;
if (typeof el == "undefined") { return el };
if (el.innerText) return el.innerText; //Not needed but it is faster
var str = "";
var cs = el.childNodes;
var l = cs.length;
for (var i = 0; i < l; i++) {
switch (cs.nodeType) {
case 1: //ELEMENT_NODE
str += this.getInnerText(cs);
break;
case 3: //TEXT_NODE
str += cs.nodeValue;
break;
}
}
return str;
},
match_date_format : function(value, format)
{
var v = this.getInnerText(value.cells[this.sort_column_index]);
this.set_date_array(format);
if(format == 'M/D/Y' && !isNaN(Date.parse(v)))
return true;
else if(!isNaN(this.convert_date(v))) return true;
this.set_date_array(format.replace(/\//g, '-'));
if(!isNaN(this.convert_date(v))) return true;
this.set_date_array(format.replace(/\//g, '.'));
if(!isNaN(this.convert_date(v))) return true;
this.set_date_array(format.replace(/\//g, ' '));
if(!isNaN(this.convert_date(v))) return true;
return false;
},
resortTable : function(td)
{
if(td == null) return;
var column = td.cellIndex;
var table = this.getParent(td,'TABLE');
this.sort_column_index = column;
if(table == null || table.rows.length <= 2) return;
// now let's do a lot just to save a little time, if possible at all. ;)
var lastSortCell = table.getAttribute("ts_sortcell") || 0;
lastSortCell--; // the processing is used for IE, which treats no attribute as 0, while FF treats 0 as still true.
var lastSortDir;
if(td.getAttribute("ts_forcesort"))
lastSortDir = (td.getAttribute("ts_forcesort") == 'desc')? 'asc' : 'desc';
else
lastSortDir = (table == this.last_sorted_table && column == lastSortCell)? table.getAttribute("ts_sortdir") : ((td.getAttribute("sortdir") == 'desc')? 'asc' : 'desc');
var newRows = new Array();
var headcount = 1;
for (var i=0,j=1;j<table.rows.length;j++)
{
var t = table.rows[j].parentNode.tagName.toLowerCase();
if(t == 'tbody' && table.rows[j].cells.length >= column + 1) newRows[i++] = table.rows[j];
else if(t == 'thead') headcount++;
}
if(newRows.length == 0) return;
var time2 = new Date();
// check if we really need to sort
if(!td.getAttribute("ts_forcesort") && !this.table_content_might_change && table == this.last_sorted_table && column == lastSortCell)
newRows.reverse();
else
{
// Work out a type for the column
var sortfn, type = td.getAttribute("ts_type");
this.replace_pattern = '';
var itm, i;
for(i = 0; i < newRows.length; i++)
{
itm = this.getInnerText(newRows.cells[column]);
if(itm.match(/\S/)) break;
}
if(i == newRows.length) return;
itm = ml_trim(itm);
if(!type)
{
sortfn = this.sort_caseinsensitive;
if (this.match_date_format(newRows, 'M/D/Y')) sortfn = this.sort_date;
else if (itm.match(/^[¥£€$]/)) sortfn = this.sort_currency;
else if (itm.match(/^\d{1,3}(\.\d{1,3}){3}$/)) sortfn = this.sort_ip;
else if (itm.match(/^[+-]?\s*[0-9]+(?:\.[0-9]+)?(?:\s*[eE]\s*[+-]?\s*\d+)?$/))
sortfn = this.sort_numeric;
}
else if(type == 'date' && this.match_date_format(newRows, 'M/D/Y')) sortfn = this.sort_date;
else if(type == 'euro_date' && this.match_date_format(newRows, 'D/M/Y')) sortfn = this.sort_date;
else if(type == 'other_date' && this.match_date_format(newRows, td.getAttribute("ts_date_format"))) sortfn = this.sort_date;
else if(type == 'number') sortfn = this.sort_numeric;
else if(type == 'ip') sortfn = this.sort_ip;
else if(type == 'money') sortfn = this.sort_currency;
// else if(type == 'custom') sortfn = function(aa,bb) { a = this.getInnerText(aa.cells[this.sort_column_index]); b = this.getInnerText(bb.cells[this.sort_column_index]); eval(td.getAttribute("ts_sortfn")) }; // the coding here is shorter but interestingly it's also slower
else if(type == 'custom') { this.custom_code = td.getAttribute("ts_sortfn"); sortfn = this.custom_sortfn }
else { alert("unsupported sorting type or data not matching indicated type!"); return; }
table.setAttribute("ts_sortcell", column+1);
newRows.sort(sortfn);
if (lastSortDir == 'asc') newRows.reverse();
}
// set style of heading
var rowidx = table.getAttribute("ts_linkrow") || 0;
if(lastSortCell > -1 && table.rows[rowidx].cells[lastSortCell].firstChild.style)
{
table.rows[rowidx].cells[lastSortCell].firstChild.oldstyle = this.sort_col_style;
table.rows[rowidx].cells[lastSortCell].firstChild.style.cssText = this.sort_col_style;
table.rows[rowidx].cells[lastSortCell].firstChild.className = this.sort_col_class;
}
if(table.rows[rowidx].cells[column].firstChild.style)
{
table.rows[rowidx].cells[column].firstChild.oldstyle = this.sort_col_style_post_sort;
table.rows[rowidx].cells[column].firstChild.style.cssText = this.sort_col_style_post_sort;
table.rows[rowidx].cells[column].firstChild.className = this.sort_col_class_post_sort;
}
if (lastSortDir == 'desc') table.setAttribute('ts_sortdir','asc');
else table.setAttribute('ts_sortdir','desc');
// has to use tagName otherwise IE complains
if(lastSortCell > -1 && table.rows[rowidx].cells[lastSortCell].firstChild.tagName) table.rows[rowidx].cells[lastSortCell].firstChild.title = this.sort_col_title;
if(table.rows[rowidx].cells[column].firstChild.tagName) table.rows[rowidx].cells[column].firstChild.title = ((lastSortDir == 'desc')? this.sort_col_asc_title : this.sort_col_desc_title);
this.last_sorted_table = table;
var time3 = new Date();
var ps = table.getAttribute("preserve_style") || this.preserve_style;
if(ps == 'row' && !ts_browser_is_ie)
{
var tmp = new Array(newRows.length);
for (var i = 0; i < newRows.length; i++) tmp = newRows.innerHTML;
for (var i = 0; i < newRows.length; i++) table.rows[i+headcount].innerHTML = tmp;
}
else if(ps == 'cell' || (ps == 'row' && ts_browser_is_ie))
{
var tmp = new Array(newRows.length);
for (var i = 0; i < newRows.length; i++)
for (var j = 0; j < newRows.cells.length; j++)
{
if(!tmp) tmp = new Array(newRows.cells.length);
tmp[j] = newRows.cells[j].innerHTML;
}
for (var i = 0; i < newRows.length; i++)
for (var j = 0; j < newRows.cells.length; j++)
table.rows[i+headcount].cells[j].innerHTML = tmp[j];
}
else
{
for (var i=0;i<newRows.length;i++) // We appendChild rows that already exist to the tbody, so it moves them rather than creating new ones
table.tBodies[0].appendChild(newRows);
}
var time4 = new Date();
if(this.tell_me_time_consumption)
{
alert('it took ' + this.diff_time(time3, time2) + ' seconds to do sorting!');
alert('it took ' + this.diff_time(time4, time3) + ' seconds to do redrawing!');
}
return false;
},
diff_time : function(time2, time1)
{
return (time2.getTime() - time1.getTime())/1000;
},
// Mingyi Note: it seems ridiculous to do so much processing for
// customizable date conversion, should try to find a zbetter way
// of doing it.
set_date_array : function(f)
{
var tmp = [['D', f.indexOf('D')], ['M', f.indexOf('M')], ['Y', f.indexOf('Y')]];
tmp.sort(function(a,b){ return a[1] - b[1]});
this.date_order_array = new Array(3);
for(var i = 0; i < 3; i++) this.date_order_array[tmp[0]] = '$' + (i + 2);
this.replace_pattern = f.replace(/[DMY]([^DMY]+)[DMY]([^DMY]+)[DMY]/, '^(.*?)(\\d+)\\$1(\\d+)\\$2(\\d+)(.*)$');
},
process_year : function(y)
{
var tmp = parseInt(y);
if(tmp < 32) return '20' + y;
else if(tmp < 100) return '19' + y;
else return y;
},
// convert to MM/DD/YYYY (or M/D/YYYY) format
convert_date : function(a)
{
var re = 'RegExp.$1+RegExp.'+this.date_order_array+'+\'/\'+RegExp.'+this.date_order_array+'+\'/\'+this.process_year(RegExp.'+this.date_order_array+')+RegExp.$5';
var code = 'if(a.match(/'+this.replace_pattern+'/)) (' + re + ')';
return Date.parse(eval(code));
},
sort_date : function(a,b)
{
var atext = ml_tsort.getInnerText(a.cells[ml_tsort.sort_column_index]);
var btext = ml_tsort.getInnerText(b.cells[ml_tsort.sort_column_index]);
var aa, bb;
// basically I have to do the conversion due to the potential usage of double digit years
if(atext && atext.match(/\S/))
{
aa = ml_tsort.convert_date(atext);
if(isNaN(aa)) aa = Date.parse(atext);
if(isNaN(aa)) aa = 0;
}
else aa = ml_tsort.smallest_int;
if(btext && btext.match(/\S/))
{
bb = ml_tsort.convert_date(btext);
if(isNaN(bb)) bb = Date.parse(btext);
if(isNaN(bb)) bb = 0;
}
else bb = ml_tsort.smallest_int;
return aa - bb;
},
// assume no scientific number in currency (if assumption incorrect, just use
// same code for this.sort_numeric will do)
sort_currency : function(a,b)
{
return ml_tsort.sort_num(ml_tsort.getInnerText(a.cells[ml_tsort.sort_column_index]).replace(/[^-0-9.+]/g,''),
ml_tsort.getInnerText(b.cells[ml_tsort.sort_column_index]).replace(/[^-0-9.+]/g,''));
},
// let's allow scientific notation but also be strict on number format
sort_num : function(a, b)
{
var aa, bb;
if(a && a.match(/\S/))
{
if(!isNaN(a)) aa = a;
else if(a && a.match(/^[^0-9.+-]*([+-]?\s*[0-9]+(?:\.[0-9]+)?(?:\s*[eE]\s*[+-]?\s*\d+)?)/))
aa = parseFloat(RegExp.$1.replace(/\s+/g, ''));
else aa = 0;
}
else aa = ml_tsort.smallest_int;
if(b && b.match(/\S/))
{
if(!isNaN(b)) bb = b;
else if(b && b.match(/^[^0-9.+-]*([+-]?\s*[0-9]+(?:\.[0-9]+)?(?:\s*[eE]\s*[+-]?\s*\d+)?)/))
bb = parseFloat(RegExp.$1.replace(/\s+/g, ''));
else bb = 0;
}
else bb = ml_tsort.smallest_int;
return aa - bb;
},
sort_numeric : function(a,b)
{
return ml_tsort.sort_num(ml_tsort.getInnerText(a.cells[ml_tsort.sort_column_index]),
ml_tsort.getInnerText(b.cells[ml_tsort.sort_column_index]));
},
sort_ip : function(a,b)
{
var aa = ml_tsort.getInnerText(a.cells[ml_tsort.sort_column_index]).split('.');
var bb = ml_tsort.getInnerText(b.cells[ml_tsort.sort_column_index]).split('.');
return ml_tsort.sort_num(aa[0], bb[0]) || ml_tsort.sort_num(aa[1], bb[1]) ||
ml_tsort.sort_num(aa[2], bb[2]) || ml_tsort.sort_num(aa[3], bb[3]);
},
sort_caseinsensitive : function(a,b)
{
var aa = ml_tsort.getInnerText(a.cells[ml_tsort.sort_column_index]).toLowerCase();
var bb = ml_tsort.getInnerText(b.cells[ml_tsort.sort_column_index]).toLowerCase();
if (aa==bb) return 0;
if (aa<bb) return -1;
return 1;
},
custom_sortfn : function(aa,bb)
{
var a = ml_tsort.getInnerText(aa.cells[ml_tsort.sort_column_index]);
var b = ml_tsort.getInnerText(bb.cells[ml_tsort.sort_column_index]);
return eval(ml_tsort.custom_code);
}
};
function ml_trim(text)
{
if(!text) return text;
var tmp = text.replace(/^\s+/, '');
return tmp.replace(/\s+$/, '');
}
function ts_addEvent(elm, evType, fn, useCapture)
// addEvent and removeEvent
// cross-browser event handling for IE5+, NS6 and Mozilla
// By Scott Andrew
{
if (elm.addEventListener){
elm.addEventListener(evType, fn, useCapture);
return true;
} else if (elm.attachEvent){
var r = elm.attachEvent("on"+evType, fn);
return r;
} else {
alert("Handler could not be removed");
}
}
ts_addEvent(document, "click", ml_tsort.set_vars);
ts_addEvent(window, "load", ml_tsort.sortables_init);
</script>
</HEAD>
<body style="font-family: Verdana, Helvetica, Arial, Sans-Serif; font: Message-Box" onclick="outliner()">
<center>
<h2>List of Sleep Studies</h2>
</center><b class="entities">Entities : 1,
Instances : 1</b><table id="idDBData118696280" cellpadding="2" cellspacing="0" width="98%" class="infotable" bgcolor="#f4f4f4">
<caption class="issuetitle" style="font-weight: bold">NARMC Sleep Disorders Clinic Intake Form</caption>
<thead style="font-weight:bold;">
<tr>
<th class="header" width="1%" />
<td class="header" style="border: 1px Solid ThreeDShadow; border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight;"> Last Name:</td>
<td class="header" style="border: 1px Solid ThreeDShadow; border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight;"> First Name:</td>
<td class="header" style="border: 1px Solid ThreeDShadow; border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight;"> Age:</td>
<td class="header" style="border: 1px Solid ThreeDShadow; border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight;"> Gender:</td>
</tr>
</thead>
<tbody>
<tr>
<td class="content"><A HREF="javascript:" onClick="javascript:document.images.click()"><IMG border="0" alt="expand/collapse" class="expandable" height="11" onclick="changepic()" src="expand.gif" width="9" name="idDBData118696280" child="srcidDBData118696280"></A></td>
<td class="content">Clinton</td>
<td class="content">Harry</td>
<td class="content">32 Years</td>
<td class="content">M</td>
</tr>
<tbody>
<tr class="collapsed" bgcolor="#ffffff" id="srcidDBData118696280">
<td colspan="5">
<table width="95%" rules="cols" class="issuetable">
<tr>
<td class="issuetitle"><font color="#09155F" face="verdana" size="2"></font><ul class="tabset_tabs">
<li><a href="#GeneralidDBData118696280" class="active">General</a></li>
<li><a href="#PhysicianidDBData118696280">Physician</a></li>
<li><a href="#Sleep_HistoryidDBData118696280">Sleep History</a></li>
<li><a href="#Sleep_BehavioridDBData118696280">Sleep Behavior</a></li>
<li><a href="#Med_HistidDBData118696280">Med Hist</a></li>
<li><a href="#Ref_PhysicianidDBData118696280">Ref Physician</a></li>
<li><a href="#BreathidDBData118696280">Breath</a></li>
<li><a href="#NarcolepsyidDBData118696280">Narcolepsy</a></li>
<li><a href="#DisordersidDBData118696280">Disorders</a></li>
</ul>
<div ID="GeneralidDBData118696280" class="tabset_content">
<h2 class="tabset_label">General</h2><i><center><b>General Information Patient Data</b></center>
</i><div class="divstyle">Patient Name:<br> Last Name:<input type="text" value="Clinton"><small><i>Req</i></small><br> First Name:<input type="text" value="Harry"><br> MI:<input type="text" value=""><br></div>
<div class="divstyle"> Personal Information:<br> Age:<input type="text" value="32 Years"><br> Gender:<input type="radio" name="idField118698552" value="true" checked>M<input type="radio" name="idField118698552" value="true">F<br> Birthday:<input type="text" value=""><br></div>
<div class="divstyle">Why is there <b>air</b>?<br><select name="select-Why is there <b>air</b>?"><option value="To Breathe." name="option-To Breathe.">To Breathe.</option>
<option value="To Fill Basketballs." name="option-To Fill Basketballs.">To Fill Basketballs.</option>
<option value="Other" name="option-Other">Other</option>
</select></div>
<div class="divstyle"> Contact Information:<br> Home Phone:<input type="text" value=""><br> Work Phone:<input type="text" value=""><br> E-Mail:<input type="text" value=""><br></div>
<div class="divstyle"> Address:<br> Street:<input type="text" value=""><br> City:<input type="text" value=""><br> State:<input type="text" value=""><br> Zip<input type="text" value=""><br></div>
<div class="divstyle">Marital Status:<br><select name="select-Marital Status:"><option value="Single" name="option-Single">Single</option>
<option value="Married" name="option-Married">Married</option>
<option value="Divorced" name="option-Divorced">Divorced</option>
<option value="Widow(er)" name="option-Widow(er)">Widow(er)</option>
</select></div>
<div class="divstyle"> Physical Description:<br> Height:<input type="text" value=""><br> Body Frame:<input type="radio" name="idField122062440" value="true">Small<input type="radio" name="idField122062440" value="true" checked>Medium<input type="radio" name="idField122062440" value="true">Large<br> Weight (Lbs):<input type="text" value=""><br></div>
<div class="divstyle">Race:<br><select name="select-Race:"><option value="African-American" name="option-African-American">African-American</option>
<option value="Asian" name="option-Asian">Asian</option>
<option value="Caucasian" name="option-Caucasian">Caucasian</option>
<option value="Hispanic" name="option-Hispanic">Hispanic</option>
<option value="Native American" name="option-Native American">Native American</option>
</select></div>
<div class="divstyle">Please give a brief description of your clinical complaint and its duration, especially as it relates to sleep:<br><textarea name="Please give a brief description of your clinical complaint and its duration, especially as it relates to sleep:" cols="85" rows="5"></textarea></div>
<div class="divstyle">Please describe any events which occur while falling asleep, during sleep or while waking up that you consider unusual:<br><textarea name="Please describe any events which occur while falling asleep, during sleep or while waking up that you consider unusual:" cols="85" rows="5"></textarea></div>
<div class="divstyle">Which of the following games do u play?. Select all that apply:<br><input type="checkbox" name="input-Which of the following games do u play?. Select all that apply:" value="true">Football<br><input type="checkbox" name="input-Which of the following games do u play?. Select all that apply:" value="true" checked>Soccer<br><input type="checkbox" name="input-Which of the following games do u play?. Select all that apply:" value="true" checked>Basketball<br><input type="checkbox" name="input-Which of the following games do u play?. Select all that apply:" value="true">Tennis<br><input type="checkbox" name="input-Which of the following games do u play?. Select all that apply:" value="true" checked>Cricket<br></div>
</div>
<div ID="PhysicianidDBData118696280" class="tabset_content">
<h2 class="tabset_label">Physician</h2><i><center><b>Patients Physician</b></center>
</i><div class="divstyle">
<table class="MYTABLE">
<caption class="issuetiele">Doctor</caption>
<tr class="header">
<td style="border: 1px Solid ThreeDShadow; border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight;">Name:</td>
</tr>
<tr class="MYTABLE">
<td style="text-align:center;">Newname</td>
</tr>
</table>
</div>
</div>
<div ID="Sleep_HistoryidDBData118696280" class="tabset_content">
<h2 class="tabset_label">Sleep History</h2><i><center><b>Sleep History</b></center>
</i><div class="divstyle">Do you feel you suffer from insomnia?<br>
Yes<input type="radio" name="idField122067168Do you feel you suffer from insomnia?" value="true">
No<input type="radio" name="idField122067168Do you feel you suffer from insomnia?" value="false" checked></div>
<div class="divstyle">Do you feel that you get too little sleep at night?<br>
Yes<input type="radio" name="idField122067440Do you feel that you get too little sleep at night?" value="true">
No<input type="radio" name="idField122067440Do you feel that you get too little sleep at night?" value="false" checked></div>
<div class="divstyle">Do you feel you get much sleep at night?<br>
Yes<input type="radio" name="idField122067712Do you feel you get much sleep at night?" value="true" checked>
No<input type="radio" name="idField122067712Do you feel you get much sleep at night?" value="false"></div>
<div class="divstyle">Weekday Bedtime<br> (hh:mm)<input type="text" value=""><br> Please select:<input type="radio" name="idField122068536" value="true" checked>am<input type="radio" name="idField122068536" value="true">pm<br></div>
<div class="divstyle">Weekend Bedtime<br> (hh:mm)<input type="text" value=""><br> Please select:<input type="radio" name="idField118031848" value="true" checked>am<input type="radio" name="idField118031848" value="true">pm<br></div>
<div class="divstyle">Weekday Wakeup<br> (hh:mm)<input type="text" value=""><br> Please select:<input type="radio" name="idField118032976" value="true" checked>am<input type="radio" name="idField118032976" value="true">pm<br></div>
<div class="divstyle">Weekend Wakeup<br> (hh:mm)<input type="text" value=""><br> Please select:<input type="radio" name="idField118034104" value="true" checked>am<input type="radio" name="idField118034104" value="true">pm<br></div>
<div class="divstyle">How long does it usually take to fall asleep (mins) ?<input type="text" value=""></div>
<div class="divstyle">How long are you awake in the morning before you actually get out of bed (mins) ?<input type="text" value=""></div>
</div>
<div ID="Sleep_BehavioridDBData118696280" class="tabset_content">
<h2 class="tabset_label">Sleep Behavior</h2><i><center><b>Sleep Behavior</b></center>
</i><div class="divstyle">Do your legs or arms bother you when resting or falling asleep?<br>
Yes<input type="radio" name="idField118035472" value="true">
No<input type="radio" name="idField118035472" value="false" checked><br> Please Describe:<br><textarea name=" Please Describe:" cols="85" rows="5"></textarea><br></div>
<div class="divstyle">Do you have unusual movements (Leg Jerks, Head Movements, etc.) during sleep?<br>
Yes<input type="radio" name="idField118036064" value="true">
No<input type="radio" name="idField118036064" value="false"><br> Please Describe:<br><textarea name=" Please Describe:" cols="85" rows="5"></textarea><br></div>
<div class="divstyle">Do you have any unusual sleep behavior (sleep walking, sleep talking, etc.) ?<br>
Yes<input type="radio" name="idField118036656" value="true">
No<input type="radio" name="idField118036656" value="false"><br> Please Describe:<br><textarea name=" Please Describe:" cols="85" rows="5"></textarea><br></div>
<div class="divstyle">Do you experience dreams?<br><input type="radio" name="idField118037192" value="true">Yes<br><input type="radio" name="idField118037192" value="true">No<br><input type="radio" name="idField118037192" value="true">Sometimes<br></div>
<div class="divstyle">Have you noticed a change in your dreams (i.e. increased, decreased, more action packed, etc.) ?<br>
Yes<input type="radio" name="idField118037936" value="true">
No<input type="radio" name="idField118037936" value="false"><br> Please Describe:<br><textarea name=" Please Describe:" cols="85" rows="5"></textarea><br></div>
<div class="divstyle">Do you experience nightmares?<br>
Yes<input type="radio" name="idField117303960" value="true">
No<input type="radio" name="idField117303960" value="false"><br> Please Describe:<br><textarea name=" Please Describe:" cols="85" rows="5"></textarea><br></div>
</div>
<div ID="Med_HistidDBData118696280" class="tabset_content">
<h2 class="tabset_label">Med Hist</h2><i><center><b>Medical History</b></center>
</i><div class="divstyle">Have you had high blood pressure?<br>
Yes<input type="radio" name="idField117304784" value="true">
No<input type="radio" name="idField117304784" value="false"><br> How long?<input type="text" value=""><br> How is it being treated? (medication, diet, etc.)?<br><textarea name=" How is it being treated? (medication, diet, etc.)?" cols="85" rows="5"></textarea><br></div>
<div class="divstyle">Have you ever had a seizure?<br>
Yes<input type="radio" name="idField117305592" value="true">
No<input type="radio" name="idField117305592" value="false"><br> Please Describe:<br><textarea name=" Please Describe:" cols="85" rows="5"></textarea><br></div>
<div class="divstyle">Do you suffer from recurrent dizzy spells?<br>
Yes<input type="radio" name="idField117306128Do you suffer from recurrent dizzy spells?" value="true">
No<input type="radio" name="idField117306128Do you suffer from recurrent dizzy spells?" value="false"></div>
<div class="divstyle">Have you ever experienced a rapid or pounding heart beat?<br>
Yes<input type="radio" name="idField117306384Have you ever experienced a rapid or pounding heart beat?" value="true">
No<input type="radio" name="idField117306384Have you ever experienced a rapid or pounding heart beat?" value="false"></div>
<div class="divstyle">Have you had a Heart attack or stroke?<br>
Yes<input type="radio" name="idField117306632" value="true">
No<input type="radio" name="idField117306632" value="false"><br> Please Describe:<br><textarea name=" Please Describe:" cols="85" rows="5"></textarea><br></div>
<div class="divstyle">Do you have a history of Diabetes?<br>
Yes<input type="radio" name="idField117307224" value="true">
No<input type="radio" name="idField117307224" value="false"><br> How long?<input type="text" value=""><br> How is it being treated? (medication, diet, etc.)?<br><textarea name=" How is it being treated? (medication, diet, etc.)?" cols="85" rows="5"></textarea><br></div>
<div class="divstyle">Have you tested positive for HIV?<br>
Yes<input type="radio" name="idField117307976Have you tested positive for HIV?" value="true">
No<input type="radio" name="idField117307976Have you tested positive for HIV?" value="false"></div>
<div class="divstyle">Have you been told that you have TB or had a positive PPD test?<br>
Yes<input type="radio" name="idField117308264Have you been told that you have TB or had a positive PPD test?" value="true">
No<input type="radio" name="idField117308264Have you been told that you have TB or had a positive PPD test?" value="false"></div>
<div class="divstyle">
<table class="MYTABLE">
<caption class="issuetiele">Please list any medications you take on a regular basis:</caption>
<tr class="header">
<td style="border: 1px Solid ThreeDShadow; border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight;"> Name of Drug</td>
<td style="border: 1px Solid ThreeDShadow; border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight;"> Reason</td>
<td style="border: 1px Solid ThreeDShadow; border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight;"> Dosage
(e.g.-20 mg/day or
.05 mg every other day)</td>
<td style="border: 1px Solid ThreeDShadow; border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight;"> Last Dose (Date)
(mm/dd/yyyy)</td>
</tr>
<tr class="MYTABLE">
<td style="text-align:center;"> Aspiron</td>
<td style="text-align:center;">Headache</td>
<td style="text-align:center;">10 mg</td>
<td style="text-align:center;">08/23/2003</td>
</tr>
<tr class="MYTABLE" bgcolor="#f4f4f4">
<td style="text-align:center;"> Citamol</td>
<td style="text-align:center;">Fever</td>
<td style="text-align:center;">20 mg</td>
<td style="text-align:center;">05/25/2004</td>
</tr>
<tr class="MYTABLE">
<td style="text-align:center;"> Paracitamol</td>
<td style="text-align:center;">Fever</td>
<td style="text-align:center;">100 mg</td>
<td style="text-align:center;">04/28/2004</td>
</tr>
</table>
</div>
<div class="divstyle">Have you experienced a change in body weight?<br>
Yes<input type="radio" name="idField125948248" value="true">
No<input type="radio" name="idField125948248" value="false"><br> Gained (lbs):<input type="text" value=""><br> Lost (lbs):<input type="text" value=""><br> Over what time Period?<input type="radio" name="idField125949000" value="true">days<input type="radio" name="idField125949000" value="true">weeks<input type="radio" name="idField125949000" value="true">months<br></div>
<div class="divstyle">Do you currently use tobacco?<br>
Yes<input type="radio" name="idField125949768" value="true">
No<input type="radio" name="idField125949768" value="false"><br> Cigarettes/day<input type="text" value=""><br> how many years?<input type="text" value=""><br></div>
<div class="divstyle">test <input type="text" value=""><br> Name of Referring Physician:<input type="text" value=""><br> Office Phone:<input type="text" value=""><br> Office Fax:<input type="text" value=""><br></div>
</div>
<div ID="Ref_PhysicianidDBData118696280" class="tabset_content">
<h2 class="tabset_label">Ref Physician</h2><i><center><b>Referring Physician Data</b></center>
</i><div class="divstyle">
<table class="MYTABLE">
<caption class="issuetiele">List all your current medications</caption>
<tr class="header">
<td style="border: 1px Solid ThreeDShadow; border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight;"> Name of Drug</td>
<td style="border: 1px Solid ThreeDShadow; border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight;"> Reason</td>
<td style="border: 1px Solid ThreeDShadow; border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight;"> Dosage
(e.g.-20 mg/day or
.05 mg every other day)</td>
<td style="border: 1px Solid ThreeDShadow; border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight;"> Last Dose (Date)
(mm/dd/yyyy)</td>
</tr>
<tr class="MYTABLE">
<td style="text-align:center;"> A</td>
<td style="text-align:center;"> R1</td>
<td style="text-align:center;"> Ds1</td>
<td style="text-align:center;"> D1</td>
</tr>
<tr class="MYTABLE" bgcolor="#f4f4f4">
<td style="text-align:center;"> B</td>
<td style="text-align:center;"> R2</td>
<td style="text-align:center;"> Ds2</td>
<td style="text-align:center;"> D2</td>
</tr>
<tr class="MYTABLE">
<td style="text-align:center;"> C</td>
<td style="text-align:center;"> R3</td>
<td style="text-align:center;"> Ds3</td>
<td style="text-align:center;"> D3</td>
</tr>
<tr class="MYTABLE" bgcolor="#f4f4f4">
<td style="text-align:center;"> D</td>
<td style="text-align:center;"> R4</td>
<td style="text-align:center;"> Ds4</td>
<td style="text-align:center;"> D4</td>
</tr>
<tr class="MYTABLE">
<td style="text-align:center;"> E</td>
<td style="text-align:center;"> R5</td>
<td style="text-align:center;"> Ds5</td>
<td style="text-align:center;"> D5</td>
</tr>
<tr class="MYTABLE" bgcolor="#f4f4f4">
<td style="text-align:center;"> F</td>
<td style="text-align:center;"> R6</td>
<td style="text-align:center;"> Ds6</td>
<td style="text-align:center;"> D6</td>
</tr>
</table>
</div>
<div class="divstyle">Do you like Pizza?<br>
Yes<input type="radio" name="idField118494368Do you like Pizza?" value="true" checked>
No<input type="radio" name="idField118494368Do you like Pizza?" value="false"></div>
<div class="divstyle">Best Friend<br> Last Name:<input type="text" value=""><small><i>Req</i></small><br> First Name:<input type="text" value=""><br> MI:<input type="text" value=""><br></div>
<div class="divstyle">
<table class="MYTABLE">
<caption class="issuetiele">Doctor:</caption>
<tr class="header">
<td style="border: 1px Solid ThreeDShadow; border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight;">Name:</td>
</tr>
<tr class="MYTABLE">
<td style="text-align:center;">Dorian</td>
</tr>
</table>
</div>
</div>
<div ID="BreathidDBData118696280" class="tabset_content">
<h2 class="tabset_label">Breath</h2><i><center><b>Breathing Disorders</b></center>
</i><div class="divstyle">Do you experience any breathing problems during sleep?<br> Please Describe:<br><textarea name=" Please Describe:" cols="85" rows="5"></textarea><br></div>
<div class="divstyle">Have you been told that you snore?<br>
Yes<input type="radio" name="idField118497120Have you been told that you snore?" value="true">
No<input type="radio" name="idField118497120Have you been told that you snore?" value="false"></div>
<div class="divstyle">Have you been told that you have breathing pauses during sleep?<br>
Yes<input type="radio" name="idField118497336Have you been told that you have breathing pauses during sleep?" value="true">
No<input type="radio" name="idField118497336Have you been told that you have breathing pauses during sleep?" value="false"></div>
<div class="divstyle">Do you have difficulty breathing in a flat position?<br>
Yes<input type="radio" name="idField118497592Do you have difficulty breathing in a flat position?" value="true">
No<input type="radio" name="idField118497592Do you have difficulty breathing in a flat position?" value="false"></div>
<div class="divstyle">Do you ever wake up short of breath?<br>
Yes<input type="radio" name="idField118497784Do you ever wake up short of breath?" value="true">
No<input type="radio" name="idField118497784Do you ever wake up short of breath?" value="false"></div>
<div class="divstyle">Do you ever wake up choking or gasping for air?<br>
Yes<input type="radio" name="idField118498000Do you ever wake up choking or gasping for air?" value="true">
No<input type="radio" name="idField118498000Do you ever wake up choking or gasping for air?" value="false"></div>
<div class="divstyle">Do you use breathing devices such as CPAP/BiPAP?<br> Type of CPAP/BiPAP unit:<input type="text" value=""><br> CPAP Pressure:<input type="text" value=""><br> Date of starting CPAP usage:<input type="text" value=""><br> Type of Humidifier:<input type="text" value=""><br></div>
</div>
<div ID="NarcolepsyidDBData118696280" class="tabset_content">
<h2 class="tabset_label">Narcolepsy</h2><i><center><b>Narcolepsy</b></center>
</i><div class="divstyle">Have you ever been diagnosed as having Narcolepsy?<br>
Yes<input type="radio" name="idField118499704Have you ever been diagnosed as having Narcolepsy?" value="true">
No<input type="radio" name="idField118499704Have you ever been diagnosed as having Narcolepsy?" value="false"></div>
<div class="divstyle">Has anyone in your family been diagnosed with narcolepsy?<br>
Yes<input type="radio" name="idField118499920Has anyone in your family been diagnosed with narcolepsy?" value="true">
No<input type="radio" name="idField118499920Has anyone in your family been diagnosed with narcolepsy?" value="false"></div>
<div class="divstyle">feeling sleepy or fatigued after an emotional experience?<br>
1<input type="radio" name="input-feeling sleepy or fatigued after an emotional experience?" value="true" checked>
2<input type="radio" name="input-feeling sleepy or fatigued after an emotional experience?" value="true">
3<input type="radio" name="input-feeling sleepy or fatigued after an emotional experience?" value="true">
4<input type="radio" name="input-feeling sleepy or fatigued after an emotional experience?" value="true">
5<input type="radio" name="input-feeling sleepy or fatigued after an emotional experience?" value="true"></div>
<div class="divstyle">not being able to move when first waking up?<br>
1<input type="radio" name="input-not being able to move when first waking up?" value="true">
2<input type="radio" name="input-not being able to move when first waking up?" value="true" checked>
3<input type="radio" name="input-not being able to move when first waking up?" value="true">
4<input type="radio" name="input-not being able to move when first waking up?" value="true">
5<input type="radio" name="input-not being able to move when first waking up?" value="true"></div>
<div class="divstyle">daytime hallucinations or dreaming?<br>
1<input type="radio" name="input-daytime hallucinations or dreaming?" value="true">
2<input type="radio" name="input-daytime hallucinations or dreaming?" value="true">
3<input type="radio" name="input-daytime hallucinations or dreaming?" value="true" checked>
4<input type="radio" name="input-daytime hallucinations or dreaming?" value="true">
5<input type="radio" name="input-daytime hallucinations or dreaming?" value="true"></div>
<div class="divstyle">sleep attacks (falling asleep despite not wanting to) ?<br>
1<input type="radio" name="input-sleep attacks (falling asleep despite not wanting to) ?" value="true">
2<input type="radio" name="input-sleep attacks (falling asleep despite not wanting to) ?" value="true">
3<input type="radio" name="input-sleep attacks (falling asleep despite not wanting to) ?" value="true">
4<input type="radio" name="input-sleep attacks (falling asleep despite not wanting to) ?" value="true" checked>
5<input type="radio" name="input-sleep attacks (falling asleep despite not wanting to) ?" value="true"></div>
</div>
<div ID="DisordersidDBData118696280" class="tabset_content">
<h2 class="tabset_label">Disorders</h2><i><center><b>Medical Disorders</b></center>
</i><div class="divstyle">"gas", indigestion or heartburn?<br>
1<input type="radio" name="input-"gas", indigestion or heartburn?" value="true">
2<input type="radio" name="input-"gas", indigestion or heartburn?" value="true">
3<input type="radio" name="input-"gas", indigestion or heartburn?" value="true">
4<input type="radio" name="input-"gas", indigestion or heartburn?" value="true" checked>
5<input type="radio" name="input-"gas", indigestion or heartburn?" value="true"></div>
<div class="divstyle">awakening due to regurgitation or throat burning?<br>
1<input type="radio" name="input-awakening due to regurgitation or throat burning?" value="true" checked>
2<input type="radio" name="input-awakening due to regurgitation or throat burning?" value="true">
3<input type="radio" name="input-awakening due to regurgitation or throat burning?" value="true">
4<input type="radio" name="input-awakening due to regurgitation or throat burning?" value="true">
5<input type="radio" name="input-awakening due to regurgitation or throat burning?" value="true"></div>
<div class="divstyle">waking up coughing?<br>
1<input type="radio" name="input-waking up coughing?" value="true">
2<input type="radio" name="input-waking up coughing?" value="true" checked>
3<input type="radio" name="input-waking up coughing?" value="true">
4<input type="radio" name="input-waking up coughing?" value="true">
5<input type="radio" name="input-waking up coughing?" value="true"></div>
<div class="divstyle">waking up with the need to urinate?<br>
1<input type="radio" name="input-waking up with the need to urinate?" value="true">
2<input type="radio" name="input-waking up with the need to urinate?" value="true">
3<input type="radio" name="input-waking up with the need to urinate?" value="true" checked>
4<input type="radio" name="input-waking up with the need to urinate?" value="true">
5<input type="radio" name="input-waking up with the need to urinate?" value="true"></div>
<div class="divstyle">nasal congestion?<br>
1<input type="radio" name="input-nasal congestion?" value="true">
2<input type="radio" name="input-nasal congestion?" value="true">
3<input type="radio" name="input-nasal congestion?" value="true">
4<input type="radio" name="input-nasal congestion?" value="true" checked>
5<input type="radio" name="input-nasal congestion?" value="true"></div>
</div>
</td>
</tr>
</table>
</td>
</tr>
</tbody>
</tbody>
<tfoot>
<tr>
<th colspan="2" align="left" class="records">1 records.</th>
</tr>
</tfoot>
</table><br><br><br></body>
</html>