
function el(e) { return document.getElementById(e); }

function addDocumentToSubscriberFavouriteList(){
  NodeUpdateMonitor.addDocumentToFavouriteList(addDocumentToSubscriberFavouriteListStatus);
}

function addDocumentToSubscriberFavouriteListStatus(status){
  if(status<0){
    alert('ERROR: Adding document to favorite list failed!');
  }else{
    alert('Document was added to favorite list.');
  }
}

function doSubscriberFavouriteAction(action){
switch(action)
{
case 0:
      // Display Favorite Documents
      el('dinfo').style.display = 'block';
      el('ainfo').style.display = 'none';
      el('pinfo').style.display = 'none';
      
      el('history_tab').className = 'off';
      el('sdi_tab').className = 'off';
      el('personal_info_tab').className = 'off';
      el('favorites_tab').className = 'on';      
      
      getDocumentsFromSubscriberFavouriteList();
    break;
case 1:
  //execute code block 1
  if(confirm('Do you want to remove all records from favorite  list?')){
     removeDocumentsFromSubscriberFavouriteList(null);
  }
  break;
case 2:
  //execute code block 2
  s = '';
  cb = document.getElementsByTagName("INPUT");
  len= cb.length;
  for(i=0;i<len;i++){
    if(cb[i].type == "checkbox" && cb[i].name.indexOf('SFD_')==0 && cb[i].checked){
      if(s.length>0) s+=',';
       s+=cb[i].name.substring(4);
    }
  }
  if(s.length>0){
     removeDocumentsFromSubscriberFavouriteList(s);
  }
  break;
case 3:
  s = '';
  cb = document.getElementsByTagName("INPUT");
  len= cb.length;
  for(i=0;i<len;i++){
    if(cb[i].type == "checkbox" && cb[i].name.indexOf('SFD_')==0 && cb[i].checked){
      if(s.length>0) s+=',';
       s+=cb[i].name.substring(4);
    }
  }
  searchDocumentsFromSubscriberFavouriteList(s);
  break;
case 4:
  // Display Personal Info
  el('dinfo').style.display = 'none';
  el('ainfo').style.display = 'none';
  el('pinfo').style.display = 'block';
  
  el('history_tab').className 	= 'off';
  el('sdi_tab').className 	= 'off';
  el('personal_info_tab').className 	= 'on';
  el('favorites_tab').className 	= 'off';    
  
  break; 
default:
  //code to be executed if n is different from case 1 and 2
}
}


function searchDocumentsFromSubscriberFavouriteList(val){
  NodeUpdateMonitor.searchFavouriteDocuments(val,searchDocumentsFromSubscriberFavouriteListStatus);
}

function searchDocumentsFromSubscriberFavouriteListStatus(){
  // redirect to result page
  document.location ='/awweb/main.jsp?flag=result&smd=1&page=1';
}

function removeDocumentsFromSubscriberFavouriteList(val){
   NodeUpdateMonitor.removeDocumentFromFavouriteList(val,getDocumentsFromSubscriberFavouriteList);
}

function getDocumentsFromSubscriberFavouriteList(){
   NodeUpdateMonitor.getDocumentFavouriteList(dsplaySubscriberFavouriteListSet);
}

function dsplaySubscriberFavouriteListSet(result){
  clearResult();
  line = '';
  if(!result || result.length == 0){
    line='<div class="subscribernote">Your favorite list is empty.</div>';
    el('dmenu').style.display = 'none';
  }else{
   el('dmenu').style.display = 'block';
   line='<table width="100%" border="0" cellSpacing=1 cellPadding=1 id="results">';
   if(result.length>0) {
        // write header
     line+='<tr><th scope="col"  align="left" class="results-header-column">#</th>';
     for (var j=0; j < result[0].length; j++) {
       line+='<th scope="col"  align="left" class="results-header-column">';
       if(j==1){
         line+='<span class="normalitalic">Select All</span>';
       }else{
         if(j==0){
           line+='<input type=checkbox name=toggle onclick="ToggleSFD(this)">';
         }else{
           line+=result[0][j];
         }
       }
       line+='</th>';   
     } 
     line+="</tr>";
   }
   for (var i=1; i < result.length; i++) {
    rstyle = 'oddrow';
    if(i%2==0)
      rstyle = 'evenrow';
    //line='<div class="'+rstyle+'">';  
    line+='<tr valign="top" class="resultbg"><td align="left"><span class="metadatatext">'+i+'.</td>';
    for (var j=0; j < result[i].length; j++) {
    
      if(j==1){
        line+='<td align="left"><span class="subhead">';
      }else{
        line+='<td align="left"><span class="metadatatext">';
      }
      if(j==0){
        line+='<input type="checkbox" name="SFD_'+result[i][j]+'" value="selected">';
      }else{
           if(result[i][j].length==0)
             line+='&nbsp;';
      
        line+= result[i][j];
      }
      line+='</span></td>';    
    }
    line+="</tr>";
    //line+='</div>'
    //writeResult(line);
   }
   line+='</table>'; 
  }
  writeResult(line);
}

function clearResult(){
  outResultText = '';
  var evalOut = el('dbody');
  evalOut.innerHTML = outResultText;
  evalOut.scrollTop = evalOut.scrollHeight;
}


function writeResult(output) {
  var evalOut = el('dbody');
  if (output == null) {
    output = 'null';
  } else if (typeof output == 'object') {
    try {
      output = '[object]  type=' + output.getType();
    } catch (e) {
      output = '[object]';
    }
  } else if (output == undefined) {
    output = 'undefined';
  } else {
    output = '' + output;
  }

  //outResultText += '<div style="border-bottom:1px solid #B2B3B5;">' +
  //    output.replace(/\n/g, '<br>\n') + '</div>';
  
  outResultText += output.replace(/\n/g, '<br>\n');
  evalOut.innerHTML = outResultText + '<br><br>';
  evalOut.scrollTop = evalOut.scrollHeight;
}

function ToggleSFD(val){
  var cb = document.getElementsByTagName("INPUT");
  len= cb.length;
  if(val.checked){
   for(i=0;i<len;i++){
    if(cb[i].type == "checkbox" && cb[i].name.indexOf('SFD_')==0){
       cb[i].checked = true;
    }
   }
  }else{
   for(i=0;i<len;i++){
    if(cb[i].type == "checkbox" && cb[i].name.indexOf('SFD_')==0){
       cb[i].checked = false;
    }
   }
  }
}
