function scrollNavigation(oEvent, aArgs, oCustomObject) {
    parentNavigationDivName = oCustomObject.parentNavigationDivName;
    YAHOO.util.Dom.getElementsByClassName('focusblur', null, parentNavigationDivName, function (el) {
      el.focus();
      el.blur();
    });
  (new YAHOO.util.Scroll(parentNavigationDivName,
                         {scroll:{to:[YAHOO.util.Dom.getRegion(parentNavigationDivName).right, 0]}}
                         ,0)).animate();
}


function scrollToAnchor(anchorID) {
  var aActive = document.getElementById(anchorID);
  if (aActive != null) {
    aActive.focus();
    aActive.blur();
  }
}

function toggleCommonAttrCbs() {

	var setChecked = document.getElementById("chk_AllCommon").checked;

  var inputCbs = document.getElementsByName("obj_id");

  for (var i=0; i < inputCbs.length; i++) {
    inputCbs[i].checked = setChecked;
  }

	/*$('forEditCommonAttribute').getInputs('checkbox','obj_id').each( function (cb) {
		cb.checked = setChecked;
	})*/
}

function commitCommonForm(form){
  if (form_is_modified(form)){
    form.submit();
  }
  return false;
}

function form_is_modified(oForm)
{
	var el, opt, hasDefault, i = 0, j;
	while (el = oForm.elements[i++]) {
		switch (el.type) {
			case 'text' :
                   	case 'textarea' :
                   	case 'hidden' :
                          //alert('Var:'+el.name + '=' + el.value +' was ' + el.defaultValue);
                          if(el.value == "" && el.defaultValue != "") return true;
                         	if (!/^\s*$/.test(el.value) && el.value != el.defaultValue) return true;
                         	break;
                   	case 'checkbox' :
                   	case 'radio' :
                         	if (el.checked != el.defaultChecked) return true;
                         	break;
                   	case 'select-one' :
                   	case 'select-multiple' :
                         	j = 0, hasDefault = false;
                         	while (opt = el.options[j++])
                                	if (opt.defaultSelected) hasDefault = true;
                         	j = hasDefault ? 0 : 1;
                         	while (opt = el.options[j++])
                                	if (opt.selected != opt.defaultSelected) return true;
                         	break;
		}
	}
	return false;
}

function yuiConfirmDialog(title, message, yesHandler, noHandler) {
    var handleYes = function() {
      confirmDialog.destroy();
      if(yesHandler) yesHandler();
    };

    var handleNo = function() {
      confirmDialog.destroy();
      if(noHandler) noHandler();
    };

    confirmDialog = new YAHOO.widget.SimpleDialog("yuiConfirmDialog",
    { visible: false,
      text: message,
      width:"auto",
      close:false,
      fixedcenter: true,
      constraintoviewport: true,
      draggable:false,
      zindex:999,
      modal:true,
      buttons: [ { text:"Yes", handler:handleYes, isDefault:true },
        { text:"No",  handler:handleNo } ]
    } );

    YAHOO.util.Dom.addClass(confirmDialog.element, "yui-skin-sam");

    confirmDialog.setHeader(title);
    confirmDialog.cfg.setProperty("icon", YAHOO.widget.SimpleDialog.ICON_WARN);

    confirmDialog.render(document.body);
    confirmDialog.show();
  }

  function save_changes(forms,pagelocation,title,message) {
    formvar = forms;
    formlocation = pagelocation;
    if (form_is_modified(forms) || keywordsChanged){
      yuiConfirmDialog(
      title,
      message,
      function() {
        formvar.action = formvar.action + '?redirect=true';
        formvar.submit();
      },   function() {
        window.location = formlocation;
        return false;
      }
    );
    } else {
      window.location = formlocation;
    }
  }

function linkSelect (elemetObjectValueId,selectLabel) {
  linkobject = self.opener.document.getElementById(elemetObjectValueId)
  pobject = self.opener.document.getElementById(elemetObjectValueId+"p");
  var linkparent = linkobject.href;
  var replaceName = "add_to_basket";
  var myNewString = linkparent.replace("remove_from_basket", replaceName);
  linkobject.href = myNewString;
  var nodeValue = YAHOO.lang.trim(linkobject.firstChild.nodeValue);
  if (typeof(nodeValue) !== 'undefined' && nodeValue != null && nodeValue.length > 0) {
    // normale gallery
    linkobject.firstChild.nodeValue = selectLabel;
  }
  else {
    // mini gallery
    linkobject.title = selectLabel;
    imgEl = self.opener.document.getElementById(elemetObjectValueId+"img");
    imgEl.src = "res/images/bullet_warenkorb_mini.gif";
  }

  // Basket Anzahl um eins erniedrigen
  basketPosEl = self.opener.document.getElementById("basketPosNum");
  basketPosEl.innerHTML = parseInt(basketPosEl.innerHTML) - 1;

  YAHOO.util.Dom.removeClass(pobject,"selected");
  linkobject.contentWindow.location.reload();
  pobject.contentWindow.location.reload();
}

function linkDeselect (elemetObjectValueId,deselectLabel) {
  linkobject = self.opener.document.getElementById(elemetObjectValueId)
  pobject = self.opener.document.getElementById(elemetObjectValueId+"p");
  var linkparent = linkobject.href;
  var replaceName = "remove_from_basket";
  var myNewString = linkparent.replace("add_to_basket", replaceName);
  linkobject.href = myNewString;
  var nodeValue = YAHOO.lang.trim(linkobject.firstChild.nodeValue);
  if (typeof(nodeValue) !== 'undefined' && nodeValue != null && nodeValue.length > 0) {
    // normale gallery
    linkobject.firstChild.nodeValue = deselectLabel;
  }
  else {
    // mini gallery
    linkobject.title = deselectLabel;
    imgEl = self.opener.document.getElementById(elemetObjectValueId+"img");
    imgEl.src = "res/images/bullet_warenkorb_mini_selected.gif";
  }

  // Basket Anzahl um eins erhöhen
  basketPosEl = self.opener.document.getElementById("basketPosNum");
  basketPosEl.innerHTML = parseInt(basketPosEl.innerHTML) + 1;

  YAHOO.util.Dom.addClass(pobject,"selected");
  linkobject.contentWindow.location.reload();
  pobject.contentWindow.location.reload();
}

function scrollDownOrUp(value) {
  window.scrollBy(0, value);
  scrolldelay = setTimeout('scrollDownOrUp()',100); // scrolls every 100 milliseconds
}


