var RESULT_CAT_COL = 3;
var RESULT_PRODUCT_COL = 8;
var REQUEST_COUNTER = 0;
var last_search;

var first_click = 0;
var MIN_SEARCH_CHAR = 1;
var HOST_NAME = window.location.hostname;
var URL_BASE = 'http://'+HOST_NAME+scriptFrontend;
var ajaxing = null;
document.observe("dom:loaded", function() {
    toggle_search_option();
    var rightMenuLink = $$('a[rel="ajax-menu"]');
    if(rightMenuLink){
       rightMenuLink.each(function(a){
          a.observe('click', function(e){
             var duration = 0.3;
             Event.stop(e);
             var self = this;
             var params = self.readAttribute("href").toQueryParams();
             params.template = 'ajax_menu_get';
             var li = this.up('li');
             if(li.hasClassName('expanded')){
                li.removeClassName('expanded');
                li.addClassName('collapsed');
                if(li.down('ul.sub-menu')){
                    new Effect.BlindUp(li.down('ul.sub-menu'), { duration : duration, afterFinishInternal: function(){ li.down('ul.sub-menu').remove();} });
                }
            }else{
               if(ajaxing != null){
                    ajaxing.transport.abort();
                    $$('a[rel="ajax-menu"]').each(function(obj){ obj.setStyle({backgroundImage:'none'}); });
               }
               ajaxing = new Ajax.Request(scriptFrontend+'func=frontend.show&debug=off&show_levels=1', {
                 method: 'get',
                 parameters: params,
                 onCreate: function(){ 
                          if($$('.sub-menu')){ 
                            $$('.sub-menu').each(function(ul){ 
                               new Effect.BlindUp($(ul), { duration : duration, afterFinishInternal: function(){ $(ul).remove();} });
                            });} },
                 onLoading: function(){  self.setStyle({backgroundImage:'url(/microshop/frontend/ajax-loader.gif)', backgroundPosition: '98% 50%', backgroundRepeat: 'no-repeat'}); },
                 onSuccess: function(res){
                      self.setStyle({backgroundImage:'none'});
                      li.insert({'bottom':res.responseText});
                      var ul = li.down('ul');
                      ul.hide();
                      li.adjacent('li.expanded').each(function(l){
                         l.removeClassName('expanded');
                         l.addClassName('collapsed');
                      });
                      li.removeClassName('collapsed');
                      li.addClassName('expanded');
                      new Effect.BlindDown($(ul), { duration : duration});
                 }  
              });
           }
          });
       });
    }
    if ($('search_txt')) {
        $('search_txt').observe('click', function() {
            if (first_click < 1) {
                first_click = 1;
                $('search_txt').value = '';
            }
        }); 
    }
    if ($('dynamic-search')) {
        $('dynamic-search').observe('submit', function(event) {
            if($('search_option').value != 2)
            {
                Event.stop(event);
                dynamicSearch('','');

            }
            else // refresh page.
            {

                if($('search_option_accessories').value=='')
                {
                    Event.stop(event);
                    alert(freetext.e_please_select_phone);
                }
                var phones = $('search_option_accessories').value.split(',');
                
                if(phones[1] =='')
                {
                    Event.stop(event);
                    alert(freetext.e_phone_no_accessories);
                }

                var redirect_url = URL_BASE+'func=frontend.show&func_id='+phones[1]+'&template=category_vis_alle&table=&open='+phones[1]+'&selection='+phones[1]+'&top_cat=2&curr_cat='+phones[1]+'&product_type=';
                redirect_url+= '&pnr='+phones[0];
                $('dynamic-search').action = redirect_url; 
                
            } 
        });
    }
    if ($('change_vat')) {
        $('change_vat').observe('click', function() {
             $('vat_form').submit(); 
        });
    }
    if ($$('.abo_select')){
        $$('.abo_select').each(
        function (obj) {
          obj.observe( 'click', aboSelect );
        });
    }
    // Call Ajax for check discount in order process
    ajaxCustomerDiscount();
    ajaxVoucherDiscount();
    handle_voucher_discount();
});
function aboSelect(){
     var regBtn = $('regis-btn'),
         params = regBtn.readAttribute('href').toQueryParams();

     params.abo_id = this.value;
     regBtn.writeAttribute({ href: '/wsp/microshop/frontend.cgi?' + $H(params).toQueryString() });
}

function dynamicSearch(filter_group,filter_cat) {
  var text = $('search_txt').value.strip();
  var form = $('dynamic-search');
  for (var i = 0; i < form.search_option.length; i++) {
    if (form.search_option.options[i].selected) {
      break;
    }
  }
  var search_option = form.search_option.options[i].value;

  var container = $('main-content');
  var monitor = $('ajax_monitor');
  var prod_monitor = $('prod_list_ajax');
  var enable_accessory_only = $('enable_accessory_only').value.strip();

  if ( text.length < 1 ) return false; // first call when page loaded

  var product_wait = new Element ( 'b' ).update(freetext.s_please_wait+'...<br>' );
  var wait_image = new Element ( 'img', { src: '/microshop/frontend/ajax-loader.gif' });

  if (filter_group != '' && filter_cat != "") {
    clear( prod_monitor ); // clear the result panel if the search string is too short
    prod_monitor.appendChild( product_wait );
    prod_monitor.appendChild( wait_image );
    ++REQUEST_COUNTER; // kill any ongoing request if any
  }
  else if ( text.length < MIN_SEARCH_CHAR ) {
    ++REQUEST_COUNTER; // kill any ongoing request if any
    $('search_txt').style.backgroundColor='#ffffff'; // reset the background color of the input
    return false;
  }
  else {
    if ( monitor == undefined ) {
      // this is the first call to the search
      monitor = new Element ( 'div', { id: 'ajax_monitor' });
      if (filter_group == '' && filter_cat == '') { clear( container ); }
      container.insertBefore( monitor, container.firstChild );
    }
    else {
      clear( monitor ); // clear the result panel if the search string is too short
    } // end if ( monitor == undefined )

    monitor.appendChild( product_wait );
    monitor.appendChild( wait_image );
  } // end if (filterGroup == '' && filterCat)

  var thisCounter = ++REQUEST_COUNTER;

  var handler = function( hreq ) {
    var search_ext = '';
    if (search_option == '') {
        search_ext = '_product';
    }
    else {
        search_ext = '_crm';
    }
/*
    //track live google search
    var pageTracker = _gat._getTracker("UA-2170652-8");
    pageTracker._trackPageview('/search' + search_ext + '?input=' + text);
*/
    if ( REQUEST_COUNTER != thisCounter ) return false;

    if (search_option == '') {
        var json = hreq.responseText.split( '__boundary__' );// This is a hack to remove the comments added by $wo in the response
        //db(hreq.responseText);
        //alert(hreq.responseText);
        var main_category_id = eval("(" + json[1] + ")");
        var main_category_qty = eval("(" + json[2] + ")");
        var main_category_txt = eval("(" + json[3] + ")");
        var manufact_category_id = eval("(" + json[4] + ")");
        var manufact_category_qty = eval("(" + json[5] + ")");
        var manufact_category_txt = eval("(" + json[6] + ")");
        var data = eval("(" + json[7] + ")");

        if (filter_group != '' && filter_cat != "") {
          clear( prod_monitor );
        } else {
          clear( monitor );
          if ( data == undefined ) {
            // nothing found
            $('search_txt').style.backgroundColor='#ff9999';
            return false;
          } else {
            $('search_txt').style.backgroundColor='#ffffff';
          }

          var category = new Element ( 'div', { id: 'cat_list' } );
          var product_list = new Element ( 'div', { id: 'prod_list_ajax' } );

          monitor.appendChild( new Element ( 'h1' ).update(freetext.searchresult) );
          monitor.appendChild( new Element ( 'p' ).update( freetext.search+' "'+text+'" '+freetext.ga+' '+data.length+' '+freetext.results+':' ) );
          monitor.appendChild( category );
          monitor.appendChild( product_list );
          monitor.appendChild( document.createElement('br') );

          displayCategoryResult( main_category_id, main_category_txt, main_category_qty, manufact_category_id, manufact_category_txt, manufact_category_qty, category, RESULT_CAT_COL, text);

        } // end if (filter_group != '' && filter_cat != "")

        displaySearchResult( text, data, RESULT_PRODUCT_COL, enable_accessory_only);

        mouseHover();
    }
    else
    {
        var data = hreq.responseText;
        clear( monitor );
        if ( data == undefined ) {
          // nothing found
          $('search_txt').style.backgroundColor='#ff9999';
          return false;
        }
        else {
          $('search_txt').style.backgroundColor='#ffffff';
        }
        var search_list_ajax = new Element ( 'div', { id: 'search_list_ajax' } );
        monitor.appendChild( new Element ( 'h1' ).update(freetext.searchresult) );
        monitor.appendChild( search_list_ajax );
        $('search_list_ajax').update( data );
    }

    last_search = text;
  };

  var url = URL_BASE + 'func=search.ajax_search&input='+ text + '&search_option='+ search_option +'&filter_group=' + filter_group + '&filter_cat=' + filter_cat+"&debug=off";
  //alert(url);
  new Ajax.Request( url, {
      onSuccess: handler
  });
  return false;
}

function displaySearchResult ( text, data, columns, enable_accessory_only ) {
  var data_table = '';
  var totalHits = 0;
  data_table += '<div class="product-lists">';

/*
  data_table += '<th id="searchTop" class="searchTop_icon mini-tag">'+setHeaderLink( '&nbsp;', text, 'left' )+'</th>';
  data_table += '<th id="searchTop" class="searchTop_prodNo">'+setHeaderLink( '&sort=PRODUCT.PRODUCTNU DESC', text, 'right' )+setHeaderLink( freetext.product_number, text, 'left' )+'</th>';
  data_table += '<th id="searchTop" class="searchTop_lprodNo">'+setHeaderLink( '&sort=PRODUCT.MFRPN DESC', text, 'right' )+setHeaderLink( freetext.lev_produktnummer, text, 'left' )+'</th>';
  data_table += '<th id="searchTop" class="searchTop_name">'+setHeaderLink( '&sort=PRODUCT.TXT DESC', text, 'right' )+setHeaderLink( freetext.name, text, 'left' )+'</th>';
  data_table += '<th id="searchTop" class="operater-col">'+freetext.abn+'</th>';
  data_table += '<th id="searchTop" class="searchTop_status search-col">'+freetext.status+'</th>';
  data_table += '<th id="searchTop" class="searchTop_price search-col">'+setHeaderLink( '&sort=PLTYPPROD.PRICE DESC', text, 'right' )+setHeaderLink( freetext.price, text, 'left' )+'</th>';
  data_table += '<th id="searchTop" class="searchTop_number search-col last">'+freetext.number+'</th>';
*/

  var inc_mva;
  for ( var i = 0; data[i] != undefined; i++ ) {
    var row = data[i];
    inc_mva = row.INC_MVA;

    data_table += '<div class="prod-list-item"><div class="prod-image">';
    if ( (row.IMAGE1_THUMB != '' && row.IMAGE1_THUMB != null) || (row.IMAGE3_THUMB != '' && row.IMAGE3_THUMB != null) ) {
      var thumb_path = '';
      if ( row.IMAGE1_THUMB != '' && row.IMAGE1_THUMB != null ) {
        if (Left(row.IMAGE1_THUMB, 5) == 'http:'){
          thumb_path = row.IMAGE1_THUMB;
        }else{
          thumb_path = '/microshop/frontend'+row.IMAGE1_THUMB;
        }
      var thumb_alt = row.IMAGE1_THUMB;
      }
      else if ( row.IMAGE3_THUMB != '' && row.IMAGE3_THUMB != null ){
        thumb_path = 'http://webshop.one2com.no/one2com/frontend/picts/thumbnail/'+row.IMAGE3_THUMB;
       var thumb_alt = row.IMAGE3_THUMB; 
      }
      data_table += '<a title="'+row.TXT+'" href="'+scriptFrontend+'func=catalog.show&amp;func_id='+row.PRODUCT_ID+'&amp;table=PRODUCT"><img class="thumb" alt="'+thumb_alt+'" width="130" src="'+thumb_path+'" /></a>';
    }
    data_table += '</div>';

    data_table += '<div class="prod-info"><table><tbody><tr>';
    data_table += '<td class="title-col" colspan="3"><h3><a title="'+row.TXT+'" href="'+scriptFrontend+'func=catalog.show&amp;func_id='+row.PRODUCT_ID+'&amp;table=PRODUCT">'+row.TXT+'</a>';
    
    if (row.DESCRIPTION != '' && row.DESCRIPTION != null){
      data_table += '<span class="sub_description">'+row.DESCRIPTION+'</span>';
    }
    data_table += '</h3></td>';
    data_table += '<td class="icon-col"/><td class="icon-col"/><td class="icon-col"/></tr>';

    data_table += '<tr><td class="detail-col">';

    if (row.ABO_NAME) {
      var abo_text = '';
      if (row.PHONE == 'yes' && row.ABOEXISTS > 0)
      data_table += '<p><i>'+row.ABO_NAME+'</i></p>';
    }
    var more_sub = '';
    if(row.ABOEXISTS > 0){
       more_sub = freetext.price_with_abo;
    }
    
    data_table += '<p><a title="'+freetext.more+'" href="'+scriptFrontend+'func=catalog.show&amp;func_id='+row.PRODUCT_ID+'&amp;table=PRODUCT">&raquo; '+freetext.more+more_sub+'</a></p>';
    /*data_table += '<p><label>'+freetext.pbr+'</label>'+row.PRODUCTNU+'</p>';
    data_table += '<p><label>'+freetext.lev_pnr+'</label>'+row.MFRPN+'</p>';*/

    data_table += '</td>';

    data_table += '<td class="pris-col"><b>';
    data_table += '<p><span class="prod-price"><label>'+freetext.price+'</label> ';

    if (row.ABOEXISTS > 0 && row.ABO_ID == 'nop'){
       data_table += freetext.without_abo;
    }
    else if (row.ABO_ID > 0){
       data_table += freetext.with_abo;
    }

    data_table += ':'+row.PRICE+'</span></p>';
    data_table += '<p class="status-price">';
  
    if (row.STOCK_STATUS == 'on') {
      data_table += '<label>'+freetext.status+':</label>';
      data_table += row.STOCK;
    }else {
      data_table += '&nbsp;';
    }

    data_table += '</p>';
    data_table += '</b></td>';
    data_table += '<td colspan="4" class="order-col">';

/*
    var url_submit = '';
    var url_status = '';
   
    if (row.BUY_TO_PROD == 'on' && row.PHONE == 'yes') {
      url_submit = scriptFrontend+'func=catalog.show&func_id='+row.PRODUCT_ID+'&table=PRODUCT';
      url_status = 'c';
    }
    else if (row.ABO_ID == 'nop') {
      alert(row.PRODUCT_ID);
      url_submit = scriptFrontend+'func=microshop.basket_redirect&func_org=frontend.show&func_id='+row.PRODUCT_ID+'&template=search&search_txt='+text+'&filter_group='+row.FILTER_GROUP+'&filter_cat='+row.FILTER_CAT+'&pnr='+row.PRODUCT_ID+'&option=add';
      url_status = 'b';
    }
    else if (row.ABO_ID > 0) {
      url_submit = scriptFrontend+'func=frontend.show&template=register_subscription&product_id='+row.PRODUCT_ID+'&abo_id='+row.ABO_ID+'&agreement_id=3';
      url_status = 's';
    }
*/
    if (row.SHOW_BUYBUTTON != 'no') {
        var basket_txt, qty, gty_status,
            url_submit = row.URL_SUBMIT,
            url_status = row.URL_STATUS,
            form_hidden = enable_accessory_only == 'on'&& row.PHONE == 'yes' ? ' style="display: none" ' : '';

        data_table += '<form name="basket" action="'+url_submit+'"'+form_hidden+' method="post" id="text_'+row.PRODUCT_ID+'" class="prod-stock" onsubmit="return updatebasket(\''+row.PRODUCT_ID+'\',\''+row.STOCK+'\');">'
                    + '<p><input type="hidden" value="'+row.PRODUCT_ID+'" name="product_id">';

        if (row.CHECK_BASKET == 'true')
          basket_txt = 'value="'+freetext.already_in_basket+'" class="prod-bg" ';
        else
          basket_txt = 'value="'+freetext.order+'" class="book-btn" ';
        data_table += '<input type="submit" id="title_'+row.PRODUCT_ID+'" '+basket_txt+' id="title_'+row.PRODUCT_ID+'">';

        if (row.ABO_ID > 0){
          qty = 1;
          gty_status = "readonly='readonly'";
        }else{
          qty = 0;
          gty_status = "";
        }
        data_table += '<label>'+freetext.number+':</label><input type="text" id="quantity_'+row.PRODUCT_ID+'" '+gty_status+' class="input_bg number" maxlength="3" value="'+qty+'"  name="quantity">'
                    + '<input type="hidden" value="'+url_submit+'" name="url" id="url_'+row.PRODUCT_ID+'">'
                    + '<input type="hidden" value="'+url_status+'" name="url_status" id="status_'+row.PRODUCT_ID+'">'
                    + '</p></form>';
    }

    data_table += '</td></tr></table></div></div>';

    totalHits += 1;
  }

  data_table += '</div>';
  data_table += '<p class="vat">';
  if(inc_mva == 'yes'){
    data_table += freetext.include_vat;
  }else{
    data_table += freetext.without_vat;
  }
  data_table += '</p>';

  $('prod_list_ajax').update( data_table );
}

function setHeaderLink( content, text, side ) {
  var span = '';
  
  if ( side == 'left' ) {
    span = content ;
  } else if ( side == 'right' ) {
    span = '<a href="'+scriptFrontend+'func=catalog.search&table=PRODUCT&template=search&query=search_product&search_txt='+text+content+'&top_menu_sel='+freetext.pub_product_id+'" title="sort '+content+'"><span>&nbsp;</span></a>';
  }

  return span;
}

function displayCategoryResult( main_id, main_txt, main_qty, manu_id, manu_txt, manu_qty, category, columns, text) {
    var url = URL_BASE + 'func=frontend.show&template=search&table=PRODUCT&query=search_product&sort=PRODUCT.TXT ASC&input='+ text;
    var i = 0;

    var table_text = '';
    for (i = 0; main_id[i] != undefined; ++i ) {
      if ( i == 0 )
        table_text = '<td colspan="3">';
      table_text += '<p><span> ('+main_qty[ i ]+')</span> <a href="'+url+'&filter_group=main&filter_cat='+main_id[ i ]+'" title="'+main_txt[ i ]+'" onclick="dynamicSearch(&#39;main&#39;,&#39;'+main_id[ i ]+'&#39;);return false;">'+main_txt[ i ]+'</a></p>';
    }
    if ( i > 0 ) table_text += "</td>";

    for (var i = 0; manu_id[i] != undefined; ++i ) {
      if ( i == 0 )
        table_text += '<td colspan="3" class="last">';
      table_text += '<p><span> ('+manu_qty[ i ]+')</span> <a href="'+url+'&filter_group=manu&filter_cat='+manu_id[ i ]+'" title="'+manu_txt[ i ]+'" onclick="'+'dynamicSearch(&#39;manu&#39;,&#39;'+manu_id[ i ]+'&#39;);return false;">'+manu_txt[ i ]+'</a></p>';
    }
    if ( i > 0 ) table_text += "</td>";

    var cat_header;
    if ( table_text != '' )
      cat_header = '<tr><th colspan="3">'+freetext.main_category_header+'</th><th colspan="3" class="last">'+freetext.manufact_heade+'</th></tr>';
    if ( table_text != '' )
      $(category).update( '<table class="data-lists">' + cat_header + '<tr class="search_prod">' + table_text + '</tr>' + '</table>' );
}

function clear( element ) {
  // Remove all children of an element
  while ( element.firstChild != undefined ) {
    var e = element.removeChild( element.firstChild );
    clear( e );
  }
}

function Left(str, n){
  if (n <= 0)
    return "";
  else if (n > String(str).length)
    return str;
  else
    return String(str).substring(0,n);
}

function toggle_search_option()
{
    
    Event.observe($('search_option'),'change',function()
    {
        if($('search_option').value == '2')
        {
            $('search_option_extra_1').hide();
            $('search_option_extra_2').show();            
        }
        else
        {
            $('search_option_extra_2').hide();            
            $('search_option_extra_1').show();        
        }
    
    }
    );

}

function ajaxCustomerDiscount() {

    if ($('phone_number_info')) {

        $('phone_number_info').observe('submit', function(e){

            var telephone = $('phone_number_checking').value;
            Event.stop(e);
            if (telephone != '') {

                clear_customer_discount();
                callDiscount('customer_discount',telephone,0);
            }
        });

    } // End if ($('phone_number_info'))
}

function ajaxVoucherDiscount() {

    if ($('voucher_info')) {

        $('voucher_info').observe('click', function(e){

            var voucher = $('voucher_checking').value;
            Event.stop(e);
            if (voucher != '') {

                clear_voucher_discount();
                callDiscount('voucher_discount',voucher,0);
            }
        });

    } // End if ($('voucher_info'))
}

function callDiscount(type,param,recalculate) {

    if (type && param) {

        if (type == 'voucher_discount' || type == 'customer_discount') {

            var func = '';
            var send_param = '';
            var label = '';
            var error = '';
            var b2c_param = '';
            if ($('b2c_param')) {
              b2c_param = $('b2c_param').value;
            }

            if (type == 'voucher_discount') {

                func = 'microshop.voucher_discount_check';
                send_param = '&voucher_checking='+param+'&b2c_param='+b2c_param;
                label = freetext.order_voucher_discount;
                error = freetext.voucher_discount_error;
                extra_discount = $('customer_discount_value') ? $('customer_discount_value').readAttribute('rel') : 0;
            }
            else if (type == 'customer_discount') {

                func = 'microshop.customer_discount_check';
                send_param = '&phone_number_checking='+param+'&b2c_param='+b2c_param;
                label = freetext.order_customer_discount;
                error = freetext.customer_discount_error;
                extra_discount = $('voucher_discount_value') ? $('voucher_discount_value').readAttribute('rel') : 0;
            } // End if (type == 'voucher_discount')

            var result = $(type+'_result');
            var sub_total = $('original_sub_total').value;
            var exclude_mva = $('exclude_mva').value;
            var product_deposit = $('ORDERS.PRODUCT_DEPOSIT') ? $('ORDERS.PRODUCT_DEPOSIT').value : 0;
            var delcost = $('ORDERS.DELCOST') ? $('ORDERS.DELCOST').value : 0;
            var paycost = $('ORDERS.PAYCOST') ? $('ORDERS.PAYCOST').value : 0;
            var include_vat = $('include_vat').value;

            // Setup URL and param
            var url = URL_BASE+'func='+func+send_param+'&sub_total='+sub_total+'&exclude_mva='+exclude_mva;
            url = url+'&extra_discount='+extra_discount+'&product_deposit='+product_deposit+'&delcost='+delcost;
            url = url+'&paycost='+paycost+'&include_vat='+include_vat+'&callfrom=web';

            var ajaxing = new Ajax.Request(url+'&ajax=1&debug=off', {
                method: 'get',
                onLoading: function(){ result.update('<img src="/microshop/frontend/ajax-loader.gif" alt="">'); },
                onSuccess: function(res){

                    clear( result );
                    var resp_txt = res.responseText;
                    if (resp_txt) {

                        if ($('order_'+type)) {

                            var price = resp_txt.evalJSON();
                            var over_text = "";
                            if (price.over == '1') {
                                over_text = ' <span class="red-text">(freetext.discount_over_text)</span>';
                            }
                            var discount_action_text = '&nbsp;&nbsp;<input type="image" class="baskt-icon" id="'+type+'_delete" src="/microshop/frontend/design/icons/delete.gif" rel="'+param+'">';
                            $('order_'+type).innerHTML = '<label>'+label+'</label><span id="'+type+'_value" rel="'+price.discount+'">'+price.discount+'</span>'+over_text+discount_action_text;
                            $('order_sub_total_price').innerHTML = price.sub_total;
                            $('order_mva').innerHTML = price.mva;
                            $('order_total_price').innerHTML = price.total;

                            if (type == 'voucher_discount') {

                                $('ORDERS.VOUCHER_ID').value = price.setup.voucher_id;
                                $('ORDERS.VOUCHER_DISCOUNT_TYPE').value = price.setup.type;
                                $('ORDERS.VOUCHER_DISCOUNT_RATE').value = price.setup.rate;
                                $('ORDERS.VOUCHER_DISCOUNT_AMT').value = price.setup.amount;

                                handle_voucher_discount();
                            }
                            else if (type == 'customer_discount') {

                                $('ORDERS.CUSTOMER_DISCOUNT_TELEPHONE').value = param;
                                $('ORDERS.CUSTOMER_DISCOUNT_RATE').value = price.setup.rate;
                                $('ORDERS.CUSTOMER_DISCOUNT_AMT').value = price.setup.amount;

                                handle_customer_discount();
                            }

                        } // End if ($('order_'+type))
                    }
                    else {

                        $('order_'+type).innerHTML = '';
                        if ($('order_voucher_discount').innerHTML.length == 0
                            && $('order_customer_discount').innerHTML.length == 0) {

                            $('order_sub_total_price').innerHTML = $('original_sub_total').value;
                            $('order_mva').innerHTML = $('original_mva').value;
                            $('order_total_price').innerHTML = $('original_total').value;
                        } // End if ($('order_voucher_discount').innerHTML.length == 0 ...

                        if (recalculate != 1) {
                            result.update(error);
                        }
                    }
                }
            });

        } // End if (type == 'voucher_discount' || type == 'customer_discount')
    } // End if (type && param)
    return '';
}

function clear_voucher_discount() {

    $('ORDERS.VOUCHER_ID').value = 0;
    $('ORDERS.VOUCHER_DISCOUNT_TYPE').value = '';
    $('ORDERS.VOUCHER_DISCOUNT_RATE').value = 0;
    $('ORDERS.VOUCHER_DISCOUNT_AMT').value = 0;
}

function handle_voucher_discount() {

    if ($('voucher_discount_delete')) {

        $('voucher_discount_delete').observe('click', function(e) {

            Event.stop(e);
            clear_voucher_discount();
            callDiscount('voucher_discount','clear',1);
            if ($('customer_discount_delete')) {

              clear_customer_discount();
              if ($('voucher_discount_value')) {
                $('voucher_discount_value').writeAttribute('rel','0');
              }
              callDiscount('customer_discount',$('customer_discount_delete').readAttribute('rel'),1);
            }
        });
    }
}

function clear_customer_discount() {

    $('ORDERS.CUSTOMER_DISCOUNT_TELEPHONE').value = '';
    $('ORDERS.CUSTOMER_DISCOUNT_RATE').value = 0;
    $('ORDERS.CUSTOMER_DISCOUNT_AMT').value = 0;
}

function handle_customer_discount() {

    if ($('customer_discount_delete')) {

        $('customer_discount_delete').observe('click', function(e) {

            Event.stop(e);
            clear_customer_discount();
            callDiscount('customer_discount','clear',1);
            if ($('voucher_discount_delete')) {

              clear_voucher_discount();
              if ($('customer_discount_value')) {
                $('customer_discount_value').writeAttribute('rel','0');
              }
              callDiscount('voucher_discount',$('voucher_discount_delete').readAttribute('rel'),1);
            }
        });
    }
}
