function saveRegistration(){
  document.getElementById("errorRegistration").innerHTML = "";
  document.getElementById("spinner").style.display = "block";
  var handleSuccess = function(o){
    if(o.responseText){
      if (String.trim(o.responseText) == 'OK'){
        Lightview.hide();
        document.location.reload(true);
      //YAHOO.util.Connect.asyncRequest('POST', 'toSelectCreativity.action');
      }else {
        var error = String.trim(o.responseText);
        document.getElementById("errorRegistration").innerHTML = String.trim(o.responseText);
      }
    }
  }

  var handleFailure = function(o){
  }

  var cb_callAjax = {
    success:handleSuccess,
    failure:handleFailure
  };

  YAHOO.util.Connect.setForm('saveRegistartion');
  YAHOO.util.Connect.asyncRequest('POST', 'saveRegistration.action', cb_callAjax);
}

function sendRequestSupport(){
  document.getElementById("spinner").style.display = "block";
  var handleSuccess = function(o){
    if(o.responseText){
      if (String.trim(o.responseText) == 'OK'){
         document.getElementById("spinner").style.display = "none";
        document.getElementById("messageRequest").innerHTML = "Grazie! La tua richiesta è stata inoltrata";
        setTimeout("parent.Lightview.hide()", 3000);
      }
    }
  }
  var handleFailure = function(o){
  }

  var cb_callAjax = {
    success:handleSuccess,
    failure:handleFailure
  };

  YAHOO.util.Connect.setForm('requestSupport');
  YAHOO.util.Connect.asyncRequest('POST', 'requestSupport.action', cb_callAjax);
}

function deleteImage(){
  if(confirm("Vuoi eliminare l'immagine?")){
    document.getElementById('insertImage').style.display = 'block';
    document.getElementById('imageDem').style.display = 'none';
    document.getElementById('divDelete').style.display = 'none';
    document.getElementById('srcImage').value = '';
    document.getElementById('deletedImage').value = true;
  }
}

function deleteDem(url){
  if(confirm("Vuoi eliminare l'immagine?")){
    document.location = url;
  }
}

function selectFunction(_id,_isSelected)
{
  document.getElementById("ckb_"+_id).checked = _isSelected;
}

function thisMovie(movieName) {
  if (navigator.appName.indexOf("Microsoft") != -1) {
    return window[movieName];
  } else {
    return document[movieName];
  }
}

//deselezione tutte regioni su flash
function deselectAll() {
  try{
    thisMovie("flashRegion").deselectAll();
  }
  catch(e)
  {
    alert(e.message);
  }
}

//selezione tutte regioni su flash
function selectAllFlash() {
  try{
    thisMovie("flashRegion").selectAll();
  }
  catch(e)
  {
    alert(e.message);
  }
}

//gestione della singola regione da pagina
function manageItem(_id) {
  try{
    var test = thisMovie("flashRegion");
    test.selectFlash(_id);
  }
  catch(e)
  {
    alert(e.message);
  }
}

function addOrRemoveLabel(id, val){
  var ckb = document.getElementById("ckb_"+id);
  contentLabel = document.getElementById("containerLabel");
  if (ckb.checked)
  {
    var par = document.createElement("span");
    par.setAttribute("id", "span_"+id);
    par.innerHTML = val+", ";
    contentLabel.appendChild(par);
  }
  else{
    contentLabel.removeChild(document.getElementById("span_"+id));
  }
  changeStyle();

}

function changeStyle(){
  var contentLabel = document.getElementById("containerLabel");
  var spans = contentLabel.getElementsByTagName('span');
  if (spans.length > 0){
    for(var i=0; i< spans.length; i++){
      if(i%2 == 0){
        spans[i].setAttribute('class', 'evenSpanCategory');
        spans[i].setAttribute('className', 'evenSpanCategory');
      }else{
        spans[i].setAttribute('class', 'oddSpanCategory');
        spans[i].setAttribute('className', 'oddSpanCategory');
      }
    }
  }
}

function selectCkb(id, val, isCategory){
  var ckb = document.getElementById("ckb_"+id);
  if (ckb.checked)
    ckb.checked = false;
  else ckb.checked = true;
  if (isCategory)
    addOrRemoveLabel(id, val);
  else
    manageItem(id);
}

function selectAllSons(id){
  var elem = document.getElementById('ckb_'+id);
  if (elem.checked){
    selectDeselect(id, true);
  }else{
    selectDeselect(id, false);
  }

}

function selectDeselect(idDiv,checked){
  var container = document.getElementById(idDiv);
  var sons = container.getElementsByTagName('input');
  for(i=0;i<sons.length; i++){
    sons[i].checked = checked;
    var idElement = sons[i].id;
    if (idDiv == 'divCategory'){
      if (idElement.indexOf("_") > 0){
        var strSplit = idElement.split("_");
        var label = document.getElementById("label_"+strSplit[1]).innerHTML;
        addOrRemoveLabel(strSplit[1], label);
      }
    }else{
      if (checked)
        selectAllFlash();
      else
        deselectAll();
    }
   
    
    
  }
}

function selectFather(id){
  var container = document.getElementById(id);
  var sons = container.getElementsByTagName('input');
  var numCkb = sons.length;
  var countChecked = 0;
  for(i=0; i<numCkb; i++){
    if (sons[i].checked){
      countChecked = countChecked+1;
    }
  }
  if (countChecked == numCkb/2){
    document.getElementById("ckb_"+id).checked = true;
  }
  if (countChecked == 0 || countChecked < (numCkb/2)){
    document.getElementById("ckb_"+id).checked = false;
  }

}

function calculateEstimate(div, form, isPanel, error){
 
  var args = new Array();
  args[0] = div;
  
  if (isPanel==true){
    
    document.getElementById(error).innerHTML = '';
    document.getElementById("divErrorHome").style.display = "none";

    if (document.getElementById("category").value == '' || document.getElementById("category").value == 'Seleziona una o più categorie merceologiche' || document.getElementById("location").value == '' || document.getElementById("location").value == 'Seleziona una o più regioni'){

      document.getElementById("divErrorHome").style.display = "block";
      document.getElementById(error).innerHTML = 'Selezionare le categorie e le regioni!';
      return;
    }
    
    if (document.getElementById("budget").value == ''){
      document.getElementById(error).innerHTML = 'Inserire il budget disponibile';
      return;
    }
    args[1] = document.getElementById("budget").value;
    
  }
  else
  {
    //resetto nel caso ci sia già un testo
    parent.document.getElementById(error).innerHTML = '';
    parent.document.getElementById("divErrorHome").style.display = "none";
    parent.document.getElementById("spinner").style.display = "block";
    parent.document.getElementById("estimatePanel").style.display = "none";
  }
  if (isPanel == false && (parent.document.getElementById("category").value == ''  || parent.document.getElementById("category").value == 'Seleziona una o più categorie merceologiche' || parent.document.getElementById("location").value == '' || parent.document.getElementById("location").value == 'Seleziona una o più regioni') ){
    parent.document.getElementById("divErrorHome").style.display = "block";
    parent.document.getElementById(error).innerHTML = 'Selezionare le categorie e le regioni!';
    return;
  }

  var handleSuccess = function(o){
    if(o.responseText){
      
      document.getElementById(args[0]).innerHTML = String.trim(o.responseText);
      parent.document.getElementById("newSearch").style.display = "block";
      
      if (args[1] != null){
        document.getElementById('budget').value = args[1];
        document.getElementById('estOptBX').style.display = 'block';
        document.getElementById('contentLabelBudget').style.display = 'inline';
        document.getElementById('estOptTL').style.display = 'none';
      }else{
        document.getElementById("spinner").style.display = "none";
        document.getElementById("estimatePanel").style.display = "block";
        if (document.getElementById('numEmailCustom') != undefined)
          document.getElementById('numEmailCustom').innerHTML = '';
        if (document.getElementById('contentLabelBudget') != undefined)
          document.getElementById('contentLabelBudget').style.display = 'none';
      }
    }
  }

  var handleFailure = function(o){
    
  }

  var cb_callAjax = {
    success:handleSuccess,
    failure:handleFailure,
    argument:args
  };

  if (form != ''){
    YAHOO.util.Connect.setForm(form);
  }

  YAHOO.util.Connect.asyncRequest('POST', 'calculateEstimate.action', cb_callAjax);
 
}

function emptyBox(id, defaultText)
{
  if($(id).value == defaultText)
  {
    $(id).value='';
  }
}

function fillBox(id, defaultText)
{
  if($(id).value == "")
  {
    $(id).value = defaultText;
  }
}

function undoSelect(typeSelect){
  var args = new Array();
  args[0] = typeSelect;
  var handleSuccess = function(o){

    if (String.trim(o.responseText)){
      //parent.Lightview.hide();
      parent.document.getElementById("estimatePanel").innerHTML = String.trim(o.responseText);
      if (args[0] == 'location'){
        parent.document.getElementById("location").value = "Seleziona una o più regioni";
      }else{
        document.getElementById("containerLabel").innerHTML = "";
        parent.document.getElementById("category").value = "Seleziona una o più categorie merceologiche";
      }
    }
  }

  var handleFailure = function(o){

  }

  var cb_callAjax = {
    success:handleSuccess,
    failure:handleFailure,
    argument:args
  };

  YAHOO.util.Connect.asyncRequest('POST', 'undoSelect.action?typeListToDeselect='+typeSelect, cb_callAjax);

}

function goToSummary(typeAmount, errorDiv){
  if (document.getElementById("category").value == ''  || document.getElementById("category").value == 'Seleziona una o più categorie merceologiche' || document.getElementById("location").value == '' || document.getElementById("location").value == 'Seleziona una o più regioni'){
    document.getElementById(errorDiv).innerHTML = 'Selezionare le categorie e le regioni!';
    return;
  }
  if (typeAmount == 'custom'){
    if (document.getElementById("numEmailCustom").innerHTML == '' || document.getElementById("numEmailCustom").innerHTML == '0'){
      document.getElementById(errorDiv).innerHTML = "prima di proseguire clicca sul bottone ricalcola qui sopra";
      return;
    }

  }
  document.location = "summary.action?typeAmount="+typeAmount;
}

function PulisciHtml(html) {
  var htmlDIV = document.createElement("DIV");
  htmlDIV.innerHTML = html;
  if (htmlDIV.innerText) {
    return htmlDIV.innerText; // Internet Explorer
  }
  return htmlDIV.textContent; // Mozilla Firefox
}

function previewTextImage(idForm, action){
  var objEditor = CKEDITOR.instances["text"];
  var text = objEditor.getData();
  var textCleaned = PulisciHtml(text);

  var errorText = document.getElementById("errorText");
  errorText.innerHTML = "";
  if (textCleaned.length == 1){
    errorText.innerHTML = "Inserire il testo";
    return;
  }
 
  var form = document.getElementById(idForm);
  var args = new Array();
  var handleUpload = function(o){

    if(o.responseText){
      //alert(o.responseText);
      document.getElementById("testo").innerHTML = String.trim(o.responseText);
      Lightview.show({
        href:'#testo',
        options: {
          width: 600,
          height: 600,
          autosize: true,
          topclose: true
        }
      });
    }
  }
  var handleFailure = function(o){
  }

  var cb_callAjax = {
    upload:handleUpload,
    failure:handleFailure,
    argument:args
  };

  if (form != '')
    YAHOO.util.Connect.setForm(form, true);
  YAHOO.util.Connect.asyncRequest('POST', 'previewCreativityTextImage.action', cb_callAjax);

}

function previewTemplate(width, height){
  var objEditor = CKEDITOR.instances["html"];
  document.getElementById("testo").innerHTML = objEditor.getData();
  Lightview.show({
    href:'#testo',
    options: {
      width: width,
      height: height,
      autosize: true,
      topclose: true
    }
  });

    
}

function openDoc(width, height, url){
  Lightview.show({
    href:url,
    options: {
      width: width,
      height: height,
      autosize: true,
      topclose: true
    }
  });


}

function submitFormSelectCreativity(){
  document.getElementById("selectCreativityForm").submit();
}

String.trim = function()
{
  if(arguments.length == 0) return null;
  var str = arguments[0];
  return str.replace(/\s+$|^\s+/g,"");
}


function fillLogBox(id, defaultText)
{
  if($(id).value == "")
  {
    $(id).value = defaultText;
  }
  else if($(id).value == defaultText)
  {
    $(id).value = "";
  }

}


function switchInput(toHide, toShow, foc){
  $(toHide).style.display='none';
  $(toShow).style.display='';
  if(foc == 'true')$(toShow).focus();
}


function showHideBox(title, body)
{

  titleObj = $(title);
  bodyObj = $(body);
  if(titleObj == null || bodyObj == null )
    return;
  titleObj.toggleClassName("tlOpen");
  titleObj.toggleClassName("tlClose");
  Effect.toggle(bodyObj,'slide',{
    duration:0.6
  });
}

function initGallery(imgPath){

  t_Tooltip.content_vars = {

    template1: '<div class="view"><img src=" ' + imgPath + 'images/templateThumbs/baseball_315X340.jpg" alt="" /></div>',
    template2: '<div class="view"><img src=" ' + imgPath + 'images/templateThumbs/business_315X340.jpg" alt="" /></div>',
    template3: '<div class="view"><img src=" ' + imgPath + 'images/templateThumbs/car_315X340.jpg" alt="" /></div>',
    template4: '<div class="view"><img src=" ' + imgPath + 'images/templateThumbs/carpet_315X340.jpg" alt="" /></div>',
    template5: '<div class="view"><img src=" ' + imgPath + 'images/templateThumbs/cocktail_315X340.jpg" alt="" /></div>',
    template6: '<div class="view"><img src=" ' + imgPath + 'images/templateThumbs/communication_315X340.jpg" alt="" /></div>',
    template7: '<div class="view"><img src=" ' + imgPath + 'images/templateThumbs/editor_315X340.jpg" alt="" /></div>',
    template8: '<div class="view"><img src=" ' + imgPath + 'images/templateThumbs/fashion_315X340.jpg" alt="" /></div>',
    template9: '<div class="view"><img src=" ' + imgPath + 'images/templateThumbs/food_315X340.jpg" alt="" /></div>',
    template10: '<div class="view"><img src=" ' + imgPath + 'images/templateThumbs/football_315X340.jpg" alt="" /></div>',
    template11: '<div class="view"><img src=" ' + imgPath + 'images/templateThumbs/hosting_315X340.jpg" alt="" /></div>',
    template12: '<div class="view"><img src=" ' + imgPath + 'images/templateThumbs/kids_315X340.jpg" alt="" /></div>',
    template13: '<div class="view"><img src=" ' + imgPath + 'images/templateThumbs/loving_315X340.jpg" alt="" /></div>',
    template14: '<div class="view"><img src=" ' + imgPath + 'images/templateThumbs/party_315X340.jpg" alt="" /></div>',
    template15: '<div class="view"><img src=" ' + imgPath + 'images/templateThumbs/photo_315X340.jpg" alt="" /></div>',
    template16: '<div class="view"><img src=" ' + imgPath + 'images/templateThumbs/professional_315X340.jpg" alt="" /></div>',
    template17: '<div class="view"><img src=" ' + imgPath + 'images/templateThumbs/realestate_315X340.jpg" alt="" /></div>',
    template18: '<div class="view"><img src=" ' + imgPath + 'images/templateThumbs/romance_315X340.jpg" alt="" /></div>',
    template19: '<div class="view"><img src=" ' + imgPath + 'images/templateThumbs/soccer_315X340.jpg" alt="" /></div>',
    template20: '<div class="view"><img src=" ' + imgPath + 'images/templateThumbs/tour_315X340.jpg" alt="" /></div>',
    template21: '<div class="view"><img src=" ' + imgPath + 'images/templateThumbs/weekly_315X340.jpg" alt="" /></div>',
    template22: '<div class="view"><img src=" ' + imgPath + 'images/templateThumbs/yoga_315X340.jpg" alt="" /></div>',
    template23: '<div class="view"><img src=" ' + imgPath + 'images/templateThumbs/redBasic_315X340.jpg" alt="" /></div>',
    template24: '<div class="view"><img src=" ' + imgPath + 'images/templateThumbs/bluBasic_315X340.jpg" alt="" /></div>',
    template25: '<div class="view"><img src=" ' + imgPath + 'images/templateThumbs/orangeBasic_315X340.jpg" alt="" /></div>',
    template26: '<div class="view"><img src=" ' + imgPath + 'images/templateThumbs/bordeauxBasic_315X340.jpg" alt="" /></div>',
    template27: '<div class="view"><img src=" ' + imgPath + 'images/templateThumbs/greyBasic_315X340.jpg" alt="" /></div>'
  }
}




function mainSearch(){

  var handleValueChange = function handleValueChange() {
    var cat = document.getElementById('category').value;
    var loc = document.getElementById('location').value;
    if (cat != '' && cat != 'Seleziona una o più categorie merceologiche' && loc != '' && loc != 'Seleziona una o più regioni')
    {
      calculateEstimate('estimatePanel', '', false, 'errorHome');
    }else {
      if(cat != '' && cat != 'Seleziona una o più categorie merceologiche' && (loc == '' || loc == 'Seleziona una o più regioni')){
        window.setTimeout("openByClick('toLocationChoised.action','','',780,510)", 1000);
      }else if((loc != '' && loc != 'Seleziona una o più regioni' && (cat == '' || cat == 'Seleziona una o più categorie merceologiche'))){
        window.setTimeout("openByClick('toCategoryChoised.action','','',1000,580)", 1000);
      }
    }
  }

  new Form.Element.Observer('category',0.2, handleValueChange);
  new Form.Element.Observer('location',0.2, handleValueChange);

}
