// ########## PAGES DELETE ##########

function pagesDelete(mess,id) {
  if(confirm(mess))
  {
    document.location.href = path+'page_delete,'+id+'.html';
  }
}

// ########## CRYPT ##########

function crypt(user) {
  window.location.href = 'mailto:'+user+'@e-wok.org';
}

// ########## GET ELEMENTS BY CLASS NAME ##########

document.getElementsByClassName = function(n) {
  var list = document.getElementsByTagName("*");
  var r = new Array();
  var i = 0;
  var j = 0;
  var theClass = " "+n+" ";
  for( i=0 ; i < list.length ; i++ ) {
    if( (" "+list[i].className+" ").indexOf(theClass) != -1 )
      r[j++] = list[i];
  }
  return r;
}


// ##########################
// ########## TABS ##########
// ##########################

// FUNCTIONS :
//    listenTab(id)
//    getLinks()
//    manageTabs()
//    hideContent()


// ########## LISTEN TAB ##########

function listenTab(id) {
  var links = document.getElementById('toolbar').getElementsByTagName('a');
  if(window.addEventListener) {
    for(i = 0; i < links.length; i++) {
       links[i].addEventListener('click',getLinks, true);
    }
  }
  else if(window.attachEvent) {
    for(i = 0; i < links.length; i++) {
      links[i].attachEvent('onclick',getLinks);
    }
  }
  var fields = document.getElementsByClassName('tab');
  for(i = 0; i < fields.length; i++) {
    if(fields[i].id != id){
      fields[i].style.display = 'none';
    }
    else {
      links[i].style.backgroundColor = '#fff';
      links[i].style.color = '#9F9F9F';
    }
  }
}

// ########## GET LINKS ##########

function getLinks() {
  if(window.event) {
    manageTabs(event.srcElement.id);
  }
  else {
    manageTabs(this.id);
  }
}

// ########## MANAGE TABS ##########

function manageTabs(id) {
  var links = document.getElementById('toolbar').getElementsByTagName('a');
  var fields = document.getElementsByClassName('tab');
  for(i = 0; i < fields.length; i++) {
    if(links[i].id != id) {
      //fields[i].style.display = 'none';
      links[i].style.backgroundColor = 'transparent';
      links[i].style.color = '#fff';
    }
    else{
      if(links[i].id == 'link_parameters'){
        links[i].style.backgroundColor = '#9F9F9F';
        links[i].style.color = '#fff';
        if(links[i].style.display != "none"){
          if(window.addEventListener) {
            links[i].addEventListener('click',Effect.BlindDown('div_parameters'), true);
          }else{
            links[i].attachEvent('onclick',Effect.BlindDown('div_parameters'));
          }
        }
      }
      else{
        fields[i].style.display = 'block';
        links[i].style.backgroundColor = '#fff';
        links[i].style.color = '#9F9F9F';
        if(document.getElementById('div_parameters').style.display != "none"){
          if(window.addEventListener) {
            links[i].addEventListener('click',Effect.BlindUp('div_parameters'), true);
          }else{
            links[i].attachEvent('onclick',Effect.BlindUp('div_parameters'));
          }
        }
      }
    }
  }
}

// ########## HIDE CONTENT ##########

function hideContent() {
  var link = document.getElementById('link_content');
  if(link.style.display != 'none') {
    link.style.display = 'none';
  }
  else {
    link.style.display = 'inline';
  }
}


// ###################################
// ########## DRAG AND DROP ##########
// ###################################

// FUNCTIONS :
//    dndPage(e)
//    listenLink()
//    initTime()
//    disableLink()
//    resetTime()
//    reset()


// ########## DND PAGE ##########

function dndPage(e) {
  Sortable.create(e,
    {
      tag:'li',
      overlap:'horizontal',
      only:'dnd',
      constraint:false,
      onUpdate:function() {
        poststring = Sortable.serialize(e);
        new Ajax.Request(
          path_post+'page_ajax,'+e+'.html',
          {
            method:'post',
            postBody:poststring,
            onSuccess:function(ajax) {
              
            }
          }
        );
      }
    }
  )
}

// ########## LISTEN LINK ##########

function listenLink() {
  var elements = document.getElementsByClassName('dnd');
  for(i=0;i<elements.length;i++) {
    var link = elements[i].firstChild;
    if(link.nodeType == 3)
      link = link.nextSibling;
    if(window.addEventListener) {
      link.addEventListener('mousedown', initTime, true);
    }
    else if(window.attachEvent) {
      link.attachEvent('onmousedown', initTime);
    }
  }
}

// ########## INIT TIME ##########

function initTime(){
  if(window.event) {
    setTimeout('disableLink()',500);
  }
  else {
    setTimeout('disableLink()',500);
  }
}

// ########## DISABLE LINK ##########

function disableLink() {
  var elements = document.getElementsByClassName('dnd');
  for(i=0;i<elements.length;i++) {
    var link = elements[i].firstChild;
    if(link.nodeType == 3)
      link = link.nextSibling;
    link.onclick = function() {
      return false;
    }
    if(window.addEventListener) {
      link.addEventListener('mouseup',resetTime,true);
    }
    else if(window.attachEvent) {
      link.attachEvent('onmouseup',resetTime);
    }
  }
}

// ########## RESET TIME ##########

function resetTime(){
  if(window.event) {
    setTimeout('reset()',500);
  }
  else {
    setTimeout('reset()',500);
  }
}

// ########## RESET ##########

function reset(){
  var elements = document.getElementsByClassName('dnd');
  for(i=0;i<elements.length;i++) {
    var link = elements[i].firstChild;
    if(link.nodeType == 3)
      link = link.nextSibling;
    link.onclick = function() {
      return true;
    }
  }
}

// ########## DND MODULE ##########

function dndModule(e,id) {
  Sortable.create(e,
    {
      tag:'fieldset',
      overlap:'horizontal',
      only:'dnd',
      constraint:false,
      onUpdate:function() {
        poststring = Sortable.serialize(e);
        new Ajax.Request(
          path_post+'module_ajax,'+e+'.html',
          {
            method:'post',
            postBody:poststring+'&pages_id='+id,
            onSuccess:function(ajax) {
            }
          }
        );
      }
    }
  )
}

function manageModules(mod,position){
  document.getElementById('manage_'+mod).style.left = position+'px';
  Effect.BlindDown(document.getElementById('manage_'+mod));
}

