var fonts = new Array;
var products = new Array;
var selected_font = 0;
var chkglobal = 0;
var basket_add=0;

function add_font(id, name, identnr, supplier, is_default) {
    if (is_default == undefined) is_default = 0;
    var fd = new Array;
    fd['hl'] = 0;
    fd['name'] = name;
    fd['identnr'] = identnr;
    fd['supplier'] = supplier;
    fd['is_default'] = is_default;
    fonts[id] = fd;
    fonts[id]['products'] = new Array;
}
function set_family_default(id, on) {
    if (on == undefined) on = 1;
    var url='x_font_family_default.php?font_group_id='+font_group_id+'&default='+fonts[id]['identnr'];
    xmlreq(url, set_family_default_response);
}
function set_family_default_response(rid) {
    var aresp = mtn_request[rid].response.split('|');
    if (aresp[0] == 'ok') {
        for (i in fonts) {
            var h_on = find_handle('default_on_'+i);
            var h_off = find_handle('is_default_'+i);
            if (fonts[i]['identnr'] == aresp[1]) {
                fonts[i]['is_default'] = 1;
                h_on.display = 'none';
                h_off.display = 'inline';
            } else {
                fonts[i]['is_default'] = 0;
                h_on.display = 'inline';
                h_off.display = 'none';
            }
        }
    } 
}

function ch_sort(field) {
    dir = 'asc';
    if (document.sortform.sort.value == field) {
        if (document.sortform.sortdir.value == 'asc') dir = 'desc';
    } else {
        document.sortform.sort.value = field;
    }
    document.sortform.sortdir.value = dir;
    sortformsubmit();
}
function sortformsubmit() {
    //alert(document.sortform.checked.value);
    basket_add = 1;
    document.sortform.submit();
}
function row_over(id, hl) {
    fonts[id]['hlch'] = hl;
    setTimeout('hl_row('+id+')', 150);
//    hl_row(id);
}
function hl_row(id) {
    if (fonts[id]['hl'] == fonts[id]['hlch']) return false;
    fonts[id]['hl'] = fonts[id]['hlch'];
    if (fonts.length > 1) {
         if (fonts[id]['hl']) {
            re = /hloff/ig;    
            cl = !id ? 'hlonb' : (id+1 < fonts.length ? 'hlon' : 'hlont');
            w = 'visible';
        } else {
            re = !id ? 'hlonb': (id+1 < fonts.length ? /hlon/ig : /hlont/ig);    
            cl = ' hloff';
            w = 'hidden';
        }
        for (i=0;i<6;i++) {
            if (o = find_object('hl_'+id+'_'+i)) {
                if (re == '') {
                    o.className += cl;
                } else {
                    //o.className = o.className.replace(re, '') + cl;
					//there is no need to view dashed lines anymore.
                }
            }
//            if(i==5) alert('hl_'+id+'_'+i+ ' -- '+o.className);

        }
    } else {
        w = fonts[id]['hl'] ? "visible" : "hidden";
    }
    if (h = find_handle('hint_'+id+'_0')) {
        h.visibility = w;
    }
    if (h = find_handle('hint_'+id+'_1')) {
        h.visibility = w;
    }
    if (h = find_handle('hint_'+id+'_2')) {
        h.visibility = w;
    }
}
function add_prod(prdc, productid, price, id) {
    products[prdc+'_'+productid+'_'+id] = price;
}
function sel_prod(prdc, productid, pubid) {
    sum_prod(pubid);
}
function sum_prod (pubid) {
    var c = 0;
    var s = 0;
    var checked = "";
    for (var i in products) {
        if (document.basket['fontchk_'+i] && document.basket['fontchk_'+i].checked) {
            c++;
            checked += i+'::';
        }
    }

    for (var x=0; x<100; ++x) {
        if (document.getElementById('price'+x) && document.getElementById('users'+x).value > 0) {
            s=s-(-document.getElementById('price'+x).value);
        }
    }

    document.sortform.checked.value = checked;
    //document.ffform.checked.value = checked;
    if (o = find_object('selcount')) {
        o.innerHTML = c;
    }
    if (pubid != 'BIT2') {
        if (o = find_object('seltotal')) {
            o.innerHTML = ownToFixed(s,2);
        }
    }
    if (c) {
        disp = 'inline';
        ndisp = 'none';
    } else {
        disp = 'none';
        ndisp = 'inline';
    } 
    if (h = find_handle('selcountdiv')) {
        h.display= disp;
    }
    if (h = find_handle('selfontstylehint0')) {
        h.display= ndisp;
    }
    if (h = find_handle('selfontstylehint1')) {
        h.display= ndisp;
    }
    var vis = c?'visible':'hidden';
    if (pubid != 'BIT2') {
        if (h = find_handle('seltotaldiv')) {
    //        h.visibility = vis;
            h.display = disp;
        }
    }
}

function addtobasket() {
    var basket = new Array();
    for (var i in products) {
        if (document.basket['fontchk_'+i] && document.basket['fontchk_'+i].checked || document.basket['fontsel_'+i]) {
            var apr = i.split("_");
            var prod = new Array;
            prod['prdc'] = apr[0];
            prod['productid'] = apr[1];
            basket[basket.length] = prod;
        }
    }

    var usersok = 1;
    for (var x=0; x<100; ++x) {
        if (document.getElementById('users'+x)) {
            if (((document.getElementById('MACPSch'+x) && document.getElementById('MACPSch'+x).checked) || (document.getElementById('PCPSch'+x) && document.getElementById('PCPSch'+x).checked) || (document.getElementById('PCTTch'+x) && document.getElementById('PCTTch'+x).checked) || (document.getElementById('OTch'+x) && document.getElementById('OTch'+x).checked) || (document.getElementById('OTcomch'+x) && document.getElementById('OTcomch'+x).checked) || (document.getElementById('OTstdch'+x) && document.getElementById('OTstdch'+x).checked) || (document.getElementById('OTproch'+x) && document.getElementById('OTproch'+x).checked)) && !document.getElementById('users'+x).value) {
                usersok = 0;
            }
        }
    }
    if (usersok && submit) {
        if (basket.length) {
            basket_add=1;
            document.basket.submit();
        } else {
            alert(lrs['selfontstylewarn']);
        }
    }
    else alert('Please enter the number of user licences!');
}

function scrollto_desc() {
    var o = getAnchorPosition('longdesc');
    scroll(o.x, o.y); 
}
function getAnchorPosition(anchorname){var useWindow=false;var coordinates=new Object();var x=0,y=0;var use_gebi=false, use_css=false, use_layers=false;if(document.getElementById){use_gebi=true;}else if(document.all){use_css=true;}else if(document.layers){use_layers=true;}if(use_gebi && document.all){x=AnchorPosition_getPageOffsetLeft(document.all[anchorname]);y=AnchorPosition_getPageOffsetTop(document.all[anchorname]);}else if(use_gebi){var o=document.getElementById(anchorname);x=AnchorPosition_getPageOffsetLeft(o);y=AnchorPosition_getPageOffsetTop(o);}else if(use_css){x=AnchorPosition_getPageOffsetLeft(document.all[anchorname]);y=AnchorPosition_getPageOffsetTop(document.all[anchorname]);}else if(use_layers){var found=0;for(var i=0;i<document.anchors.length;i++){if(document.anchors[i].name==anchorname){found=1;break;}}if(found==0){coordinates.x=0;coordinates.y=0;return coordinates;}x=document.anchors[i].x;y=document.anchors[i].y;}else{coordinates.x=0;coordinates.y=0;return coordinates;}coordinates.x=x;coordinates.y=y;return coordinates;}
function getAnchorWindowPosition(anchorname){var coordinates=getAnchorPosition(anchorname);var x=0;var y=0;if(document.getElementById){if(isNaN(window.screenX)){x=coordinates.x-document.body.scrollLeft+window.screenLeft;y=coordinates.y-document.body.scrollTop+window.screenTop;}else{x=coordinates.x+window.screenX+(window.outerWidth-window.innerWidth)-window.pageXOffset;y=coordinates.y+window.screenY+(window.outerHeight-24-window.innerHeight)-window.pageYOffset;}}else if(document.all){x=coordinates.x-document.body.scrollLeft+window.screenLeft;y=coordinates.y-document.body.scrollTop+window.screenTop;}else if(document.layers){x=coordinates.x+window.screenX+(window.outerWidth-window.innerWidth)-window.pageXOffset;y=coordinates.y+window.screenY+(window.outerHeight-24-window.innerHeight)-window.pageYOffset;}coordinates.x=x;coordinates.y=y;return coordinates;}
function AnchorPosition_getPageOffsetLeft(el){var ol=el.offsetLeft;while((el=el.offsetParent) != null){ol += el.offsetLeft;}return ol;}
function AnchorPosition_getWindowOffsetLeft(el){return AnchorPosition_getPageOffsetLeft(el)-document.body.scrollLeft;}
function AnchorPosition_getPageOffsetTop(el){var ot=el.offsetTop;while((el=el.offsetParent) != null){ot += el.offsetTop;}return ot;}
function AnchorPosition_getWindowOffsetTop(el){return AnchorPosition_getPageOffsetTop(el)-document.body.scrollTop;}

function mtn_roll(o) {
    var r=find_object('sroll');
    if (r) { r.src='g/'+o+'.gif'; }
}
function img_onload(id) {
    if ((o1=find_handle('picture_'+id+'_g')) && (o2=find_handle('picture_'+id+'_w'))) {
        o1.display='none'; 
        o2.display='block';
    }
}
function leave_page(ev) {
    if ((document.sortform.checked.value != '') && (!basket_add)) {
        mtn_bsess('conf_leavefont', 'yes');
        window.onbeforeunload = null;
        return lrs['fe_confleave'];
    }
}
mtn_fontcls = '';
function mtn_fontclset(state) {
    if (mtn_fontcls=='')  mtn_fontcls=state; 
    mtn_fontcls=mtn_fontcls=='off'?'on':'off';
    if (o = find_handle('nocdcl2')) o.display=mtn_fontcls=='off'?'block':'none';
    if (o = find_handle('smalltable')) o.display=mtn_fontcls=='off'?'block':'none';
    if (o = find_handle('cdcl2')) o.display=mtn_fontcls=='off'?'none':'block';
    if (o = find_handle('bigtable')) o.display=mtn_fontcls=='off'?'none':'block';
    if (o = find_handle('descr_short')) o.display=mtn_fontcls=='off'?'none':'block';
    mtn_bsess('fontcls',mtn_fontcls); 
}
function read_more() {
    if ((om = find_handle('descr_more')) && (or = find_handle('readmore')) && (oc = find_handle('closemore'))) {
        if (om.display == 'inline') {
            om.display = 'none';
            oc.display = 'none';
            or.display = 'inline';
        } else {
            om.display = 'inline';
            oc.display = 'inline';
            or.display = 'none';
        }
    }
}
function find_similar_font(id, sok) {
    if (sok == undefined) sok = '';
    if (fonts[id]['identnr'] != '') {
        var url=baseurl+'font_search.php?sok='+sok+'&sim='+fonts[id]['identnr']+'&publisher='+fonts[id]['supplier'];
        document.location = url;
    }
}
function mtn_esok(cnt) {
    var loc='font_search.php?sok='; var kw=0; var cb;
    for (var i=0;i<cnt;i++) { cb=find_object('cb'+i); if (cb) { if (cb.checked) { if (kw++) { loc+='%20'; } loc+=mtn_escape(cb.value); } } }
    if (kw) { location=loc; } else { alert(mtn_lang('ext_alert_nokeyword')); } }

