function js_redirect(url) {
	url = url.replace(/(&amp;)/g, "&");
	document.location.href=url;
}

function print() {
  window.open(location.href + "?action=print", "Window1", "menubar=yes, width=600, height=500, toolbar=no, resizable=yes, scrollbars=yes");
}

function toggle_descr(div_id, a_id) {
	var a, div = document.getElementById(div_id);
	if (a_id) {
		a = document.getElementById(a_id);
	}
	var divs = div.style;
	if (divs.display != 'none') {
		if (a) {
			a = a.childNodes[0];
			if (a.firstChild) {
			      a = a.firstChild;
			      a.replaceData(0, 20, 'читать далее');
			}
		}
		divs.display = 'none';
	} else {
		if (a) {
			a = a.childNodes[0];
			if (a.firstChild) {
			      a = a.firstChild;
			      a.replaceData(0, 20, 'свернуть');
			}
		}
		divs.display = '';
	}
}

try {document.execCommand("BackgroundImageCache", false, true);}
catch(e) {}

function fixPNG(element) {
	if (/MSIE (5\.5|6).+Win/.test(navigator.userAgent)) {
		var src;

		if (element.tagName == 'IMG') {
			if (/\.png$/.test(element.src)) {
				src = element.src;
				element.src = "../../im/frontend/blank.gif";
			}
		} else {
			src = element.currentStyle.backgroundImage.match(/url\("(.+\.png)"\)/i);
			if (src) {
				src = src[1];
				element.runtimeStyle.backgroundImage = "none";
			}
		}

		var re_scale_mode = /pngfix\-(\w+)/;
		var m = re_scale_mode.exec(element.className);
		var scale_mode = (m) ? m[1] : 'crop';
		//alert(scale_mode);
		if (src) {
			element.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "',sizingMethod='" + scale_mode + "')";
    }
	}
}

var Popup = new Class({
  hide: function(el) {
    el.reset();
    el.style.display = 'none';
  },

  show: function(el, pos, x, y, rel) {
    var rpos = rel.getPosition(),
    els = el.style;
    els.position = "absolute";
    els.display = "block";
    els.visibility = "visible";
    els.left = x + rpos.x + 'px';
    els.top  = y + rpos.y + 'px';
    /*
    if (pos == "element-right" || pos == "element-bottom") {
      for (var p = rel; p; p = p.offsetParent) {
        if (p.style.position != 'absolute') {
          x += p.offsetLeft;
          y += p.offsetTop;
        }
      }

      if (pos == "element-right") {x += rel.clientWidth;}
      if (pos == "element-bottom") {y += rel.clientHeight;}
      alert(x+':'+y);
      els.left = x + 'px';
      els.top  = y + 'px';
    }*/
  }
});

function ajax_req(el, script_url, log, is_alert) {
    el.addEvent('submit', function(e) {
      e.stop();
      log.empty();
      log.set('text', 'Выполняется запрос...');
      var req = new Request.JSON({
        url: script_url,
        onComplete: function(r1) {
          if (r1.res == 1) {
            if (is_alert && r1.msg) {alert(r1.msg);}
            location.href = el.get('action');
          } else {
            log.set('html', '<div class="error">' + r1.msg + '</div>');
          }
        }
      }).post(this);
    });
}
	
window.addEvent('domready', function() {

  var log2 = $('log2'), cbs_tabs;
  
  if (document.getElementById('cbs_tabs')) {}
  
  if (document.getElementById('viewcart_form')) {
    var list = $$('.vslide li .collapse'),
    hs = $$('.vslide .round3'),
    cs = [];
    if (list.length < 1) {return false;}
	
    hs.each(function(h, i) {
    
      var hh = h.getElement('h3');
      if (!hh) {return false;}
    
      var c = new Fx.Slide(list[i], { 
        duration: 300,
        transition: Fx.Transitions.linear
      });
					
      cs[i] = c;
    
      hh.addEvent('click', function(e) {
        e.stop();
      
        if (c.open) {
          var ins = h.getElements('input'),
          skip = false;
          for (var j=0, l = ins.length; j<l; j++) {
            if (parseInt(ins[j].value, 10) > 0) {skip = true;}
          }
          if (!skip) {
            h.removeClass('active');
          }
        } else {
          h.addClass('active');
        }
      
        var t = h.getElement('span');
        if (t) {
          var tt = t.innerHTML == '+' ? '-' : '+';
          t.set('html', tt);
        }
        list[i].removeClass('closed');
        c.toggle();
        return false;
      });
      
      c.hide();
    });
    ajax_req($('viewcart_form'), '/inc/ajax.viewcart.php', log2);
	}
	
	if (document.getElementById('checkout_form')) {
	  cbs_tabs = new CBS.TABS({
      'tab_id': 'cbs_tabs',
      'tab_class': 'viewcart',
      'tab_active_class': 'active',
      'trigger_event': 'click',
      'active_item': 'first'
    });
    ajax_req($('checkout_form'), '/inc/ajax.login.php', log2);
	}
	
	if (document.getElementById('order_form1')) {
	  cbs_tabs = new CBS.TABS({
      'tab_id': 'cbs_tabs',
      'tab_class': 'viewcart',
      'tab_active_class': 'active',
      'trigger_event': 'click',
      'active_item': 'third'
    });
    ajax_req($('order_form1'), '/inc/ajax.order_solution.php', log2, 1);
    ajax_req($('order_form2'), '/inc/ajax.order_solution.php', log2, 1);
	}
	
	if (document.getElementById('seminar_form')) {
    ajax_req($('seminar_form'), '/inc/ajax.seminar.php', log2, 1);
	}
	
	if (document.getElementById('final_form')) {
    ajax_req($('final_form'), '/inc/ajax.final.php', log2);
	}
	
	if (document.getElementById('login_popup_form')) {
    var el6 = $('login_popup_form'),
    rel = $('login_popup_rel'),
    rel2 = $('login_popup_rel2'),
    elc = $('login_popup_hide'),
    log = $('log'), x, y;
    
    var pop = new Popup();
    if (rel2) {
      x = -170; y = 0;
    } else {
      x = 0; y = 20; rel2 = rel;
    }
    if (rel) {
      rel.addEvent('click', function(e) {e.stop(); pop.show(el6, 'element-bottom', x, y, rel2);});
    }
    if (elc) {
      elc.addEvent('click', function(e) {e.stop(); pop.hide(el6);});
    }
    ajax_req(el6, '/inc/ajax.login.php', log);
	}
	
	if (document.getElementById('profile_form')) {
    ajax_req($('profile_form'), '/inc/ajax.profile.php', log2);
	}
});