var isForm;
var responseStr;
var className;

function getGen(url, cName) {
  
  isForm = false;

  if ( cName != null ) {
    
    className = cName;
  } else {
    
    className = 'search_results';
  }
  
  $nodisplay('error_div');
  getUrl(url, true, showResponseGen);
}

/*  
    first ajax handle 
*/ 

function showResponseGen(req) {

  var theDiv =  $('response_div');
  
  if( req.readyState == 4) {
    
    $nodisplay('wait_div');

    if (req.status == 200) {
      
      var response_str = req.responseText;
      var responses = response_str.split('<SEP>');
      var response_code = responses[0];
      var response_html = responseStr = responses[1];

      if (response_code == 'OK' ) { // request okay
	     
	$nodisplay('error_div');
	 
	if (isForm) {
	  
	  $showMsg(response_html, 5000);
	  iUpdateChapters();
	  
	} else {

	  theDiv.className = className;
	  theDiv.innerHTML = response_html;
	  $display('response_div');
	}

      } else {   // request failed // there is errors 
	
	$showMsg(response_html, 5000);	          
	$enabled('btn_submit');
      }

    } else {
      alert("Response Error:\n" + req.statusText);
      $enabled('btn_submit');
    }
    
  } else {
    
    $display('wait_div');
  }
}

/*
  submit form 
*/

function doSubmitGen(formName) {
  
  $display('wait_div');
  $disabled('btn_submit');
  isForm = true;
  postForm(formName, true, showResponseGen);
  return false;
}

/* 
 Confirm delete Chapter 
*/

function confirmDelete(url, chapterId, nbrQuotes) {
  
  var message = 'Voulez-vous vraiment supprimer ce chapitre';
  
  if (nbrQuotes == 1 ) {
    
    message += '\nainsi que l\'unique citation qu\'il contient';
    
  } else if (nbrQuotes > 1 ) {
    message += '\nainsi que les ' + nbrQuotes + ' citations qu\'il contient';
  }
  
  message += " ?\n\nOK = Supprimer,   Annuler = ne rien faire.\n";
  
  var answer = confirm (message);
  
  if (answer) {
    
    $('chapter_' + chapterId).className = 'deleted';
    url = url + '?do=delete_chapter_ajax&chapter_id=' + chapterId + '&q=' + nbrQuotes;
    
    getGen(url);
    setTimeout(function() { $nodisplay('chapter_' + chapterId); }, 2000);
    iUpdateChapters();
    
  } else {
    
    alert ("ce chapitre *NE SERA PAS* supprimé.");
    
  }
}

/*  update chapters on demand */

function iUpdateChapters() {

  var url = '/citations?do=myselection&ajax=1';
  $display('wait_cdiv');
  getUrl(url, true, showResponseTxt);
}

function showResponseTxt(req) {

  if( req.readyState == 4) {
    
    if (req.status == 200) {
      
      var response_str = req.responseText;
      var responses = response_str.split('<SEP>');
      var response_code = responses[0];
      var response_html = responses[1];
      var nbr_br = responses[2];

      if (response_code == 'OK' ) { // request okay
	
	$('chapters_only').innerHTML = response_html;
	$('in_brouillon').innerHTML = nbr_br;
	$nodisplay('wait_cdiv');
	
      } else {
	$showMsg(response_html, 5000);	          
      }
      
    } else {
      
    }
    
  } else {
    
  }
  
}

/*  update chapters on demand */

function orderChapters(oUrl) {

  
  isForm = true;
  getUrl(oUrl, true, showResponseGen);
  
}

function toggleBook() {

  var randNum= Math.floor(Math.random()*5);
  var url = '/citations?do=public_private&rnd=' + randNum;
  isForm = false;
  getUrl(url, true, handleBook);
}


function handleBook(req) {

  $('img_book').src = '/iquotes/rates/loading.gif';
  
  if( req.readyState == 4) {
    
    if (req.status == 200) {
      
      var response_str = req.responseText;
      var responses = response_str.split('<SEP>');
      var response_code = responses[0];
      var newState = parseInt(responses[1]);
      
      if (response_code == 'OK' ) { // request okay
	
	if (newState == 1) {
	  
	  $('img_book').src = '/iquotes/book1.png';
	  $('book_desc').innerHTML = $('book_desc').title = $('img_book').title = 'Votre livre est public';
	  $('book_desc').className = 'xs_green';
	  
	} else if(newState == 0)  {
	  
	  $('img_book').src = '/iquotes/book0.png';
	  $('book_desc').innerHTML = $('book_desc').title = $('img_book').title = 'Votre livre est privé';
	  $('book_desc').className = 'red';
	}
	
      } else {   // request failed // there is errors 
	
      }

    } else {
      alert("Response Error:\n" + req.statusText);
      $enabled('btn_submit');
    }
    
  } else {
    
    //$display('wait_div');
  }
}
