//polls javascript
var contentDivId = 'content';

var newPollOpId;

function redisplay( uri, request, query ){
  window.location = uri + '&request=' + request + '&q=' + query + '&order=' + document.orderForm.order.value;
}


function sendSavePollQuestion (){
  inpText = document.getElementById( 'questionText' );
  
  if ( inpText.getAttribute( "value" ) == null ||  inpText.getAttribute( "value" ) == undefined ) {
    alert( "Question can't be empty" );
    return;
  }
  oElement = FCKeditorAPI.GetInstance('threadBody'); oElement.UpdateLinkedField() ;
  sendJasonIsAwesome( 'savePollQuestion', '', undefined, 'polls', 'lounge/daily' );
}

function getNewPollOpId( obj )
{
  var frm = $( obj ).parents( 'form' ).get(0);

  for( var i = 0; i < frm.elements.length; ++i )
  {
    var el = frm.elements[i];
    if( el.id == "newOptionId" )
    { 
      return parseInt( $( el ).attr( "value" ) ); 
    }
  }
  
  return 0;
}

function addToNewPollOpId( obj, val )
{
  var td = $( obj ).parent().get(0);
  var tr1 = $( td ).parent().get(0);
  var tr2 = $( tr1 ).prev().get(0);
  var tr = $( tr2 ).prev().get(0);
  
  var rand = tr.getElementsByTagName( 'input' )[0];
  var frm = rand.form;

  for( var i = 0; i < frm.elements.length; ++i )
  {
    var el = frm.elements[i];
    if( el.id == "newOptionId" )
    {
      var newVal = parseInt( $( el ).attr( "value" ) ) + val;
      $( el ).attr( "value", newVal ); 
    }
  }
  
}

function addToNewPollOpIdFromRemove( obj, val )
{
  var td = $( obj ).parent().get(0);
  var tr = $( td ).parent().get(0);
  
  var rand = tr.getElementsByTagName( 'input' )[0];
  var frm = rand.form;

  for( var i = 0; i < frm.elements.length; ++i )
  {
    var el = frm.elements[i];
    if( el.id == "newOptionId" )
    {
      var newVal = parseInt( $( el ).attr( "value" ) ) + val;
      $( el ).attr( "value", newVal ); 
    }
  }
}

function doAddChoice ( linkObj, includeRemove, funcName ) {

  var newPollOpId = getNewPollOpId( linkObj );
  if( funcName == undefined )
    funcName = 'doRemoveChoice';
  
  var html = '<tr><td class="cf-label"></td><td class="cf-erroricon"></td><td class="cf-element">' +
             '<input id="pollOptionTextClone' + newPollOpId + '" type="text" value="" name="pollOptionTextClone' + newPollOpId + '">';
  
  if( includeRemove == true )
  {
    html += '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class="remove-link" onclick="javascript: ' + funcName + '( this )">&nbsp;&nbsp;&nbsp;&nbsp;</a>';
  }
  
  html += '</td></tr>';
             
  if ( window.attachEvent ){
    TR = linkObj.parentNode.parentNode.previousSibling;
    
  } else {
    TR = linkObj.parentNode.parentNode.previousSibling.previousSibling;
   
  }
  
  jQuery( TR ).before( html );
  addToNewPollOpId( linkObj, 1 );
  
}

function getNewPollOpIdFromRemove( obj )
{
  var td = $( obj ).parent().get(0);
  var tr = $( td ).parent().get(0);
  
  var rand = tr.getElementsByTagName( 'input' )[0];
  var frm = rand.form;

  for( var i = 0; i < frm.elements.length; ++i )
  {
    var el = frm.elements[i];
    if( el.id == "newOptionId" )
    { 
      return parseInt( $( el ).attr( "value" ) ); 
    }
  }
  
  return 0;
}

function doRemoveChoice( linkObj )
{
  var newPollOpId = getNewPollOpIdFromRemove( linkObj );
  
  if ( window.attachEvent ){
    TR = linkObj.parentNode.parentNode;
    
  } else {
    TR = linkObj.parentNode.parentNode;
    
  }
  
  if( newPollOpId > 1 )
    addToNewPollOpIdFromRemove( linkObj, -1 );
  
  $( TR ).remove();
}


function doDeletePollQuestion( reqId ){
  if ( !confirm( "Deleting a poll will also erase any data of user votes related to the poll.\nAre you sure you want to delete this poll?" ) ){
    return;
  }
  
  var str = '<form id="deletePollQuestionForm"><input type="hidden" value="' + reqId + '" name="id"></form>';
  $( str ).appendTo( 'div#' + contentDivId );
  sendJasonIsAwesome( 'deletePollQuestion', '', undefined, 'polls', 'lounge/daily' );
}


function doDeletePollOptionAndAnswer ( reqId ){
  if ( !confirm( "Are you sure you want to delete this poll choice along with user votes tied to it?" ) ){
    return;
  }
  
  var str = '<form id="deletePollOptionAndAnswerForm"><input type="hidden" value="' + reqId + '" name="id"></form>';
  $( str ).appendTo( 'div#' + contentDivId );
  sendJasonIsAwesome( 'deletePollOptionAndAnswer', '', undefined, 'polls', 'lounge/daily' );
}

//not sure used
function doShowPollResults( reqId ){
  //alert( document.getElementById( 'showPollResultsForm' ) );
  if ( document.getElementById( 'showPollResultsForm' ) == null ) {
    //alert( 'in adding' );
    var str = '<form id="showPollResultsForm"><input type="hidden" value="' + reqId + '" name="id" id="reqId"></form>';
    $( str ).appendTo( 'div#' + contentDivId );
  }else {
    //alert( 'in updating' );
    inpObj = document.getElementById( 'showPollResultsForm' ).firstChild;
    inpObj.setAttribute( "value", reqId );
    //$( '#showPollResultsForm input' ).attr( "value", reqId );
  }
  sendJasonIsAwesome( 'showPollResults', '', undefined, 'polls', 'lounge/daily' );
}

//not sure used
function doShowPollView( reqId ){
  if ( document.getElementById( 'showPollViewForm' ) == null ) {
    var str = '<form id="showPollViewForm"><input type="hidden" value="' + reqId + '" name="id" id="reqId"></form>';
    $( str ).appendTo( 'div#' + contentDivId );
  } else {
    inpObj = document.getElementById( 'showPollViewForm' ).firstChild;
    inpObj.setAttribute( "value", reqId );
    //$( '#showPollViewForm input' ).attr( "value", reqId );
  }
  
  sendJasonIsAwesome( 'showPollView', '', undefined, 'polls', 'lounge/daily' );
}


function redisplayOnAll( uri, request ){
  //alert('heck');
  window.location.href = uri + '&request=' + request + '&month=' + document.filters.month.value + '&year=' + document.filters.year.value;
  //window.location.href = uri;
  //alert('why u');
}
