﻿/// <reference path="../Module/Product/Default.aspx" />
function addressParams(form, fldAddress, fldCity)
{
    this.form = form;
    this.fldAddress = fldAddress;
    this.fldCity = fldCity;
    
    return this;
}

function GetAddress(fldPostcode, fldPostcodeLt, fldNumber, fldAddress, fldCity, form)
{
    var postcode = getElementByTag(form, fldPostcode).getAttribute('value') + ' ' + getElementByTag(form, fldPostcodeLt).getAttribute('value');
    var number = getElementByTag(form, fldNumber).getAttribute('value');
    ap = addressParams(form, fldAddress, fldCity);
    dazzleware.leveranciersgids.ajax.GetAddress(postcode, number, SetAddress, SetAddress, ap);
    ap = undefined;
}

function SetAddress(result, ap) 
{
    var address = '';
    var city = '';
    try
    {
        var aResult = result.split('#');
        address = aResult[0];
        city = aResult[1];
    }
    catch(e)
    {
//        alert('Fout bij het vaststellen van het adres (postcode onbekend)!');
    }
    
    var elmt = getElementByTag(ap.form, ap.fldAddress);
    
    if (elmt != undefined)
    {
       elmt.setAttribute('value', address);
    }
    var elmt = getElementByTag(ap.form, ap.fldCity);
    if (elmt != undefined)
    {
       elmt.setAttribute('value', city);
    }
    elmt = undefined;
}
      
function CheckLoginName(siteId, fld, id)
{
    dazzleware.leveranciersgids.ajax.CheckLoginName(siteId, fld.value, id, HandleCheckLoginName, HandleCheckLoginName, fld);    
}

function HandleCheckLoginName(result, fld)
{
    if (!result)
    {
        alert('Deze loginnaam is al in gebruik door een andere gebruiker. Kies een andere loginnaam...');
        fld.focus();
        fld.select();   
        return false;     
    }
    return true;
}

function CheckCompanyName(siteId, fld, id)
{
    dazzleware.leveranciersgids.ajax.CheckCompanyName(siteId, fld.value, id, HandleCheckCompanyName, HandleCheckCompanyName, fld);    
}

function HandleCheckCompanyName(result, fld)
{
    if (!result)
    {
        alert('Deze bedrijfsnaam is al in gebruik!');
        fld.focus();
        fld.select();   
        return false;     
    }
    return true;
}

function CheckEmailAddress(siteId, fld, id, usertype)
{
    dazzleware.leveranciersgids.ajax.CheckEmailAddress(siteId, fld.value, id, usertype, HandleCheckEmailAddress, HandleCheckEmailAddress, fld);    
}

function HandleCheckEmailAddress(result, fld)
{
    if (!result)
    {
        alert('Dit emailadres is al in gebruik!');
        fld.focus();
        fld.select();   
        return false;     
    }
    return true;
}

function AddKeyWord( moduleId, keyWord)
{
    dazzleware.leveranciersgids.ajax.AddKeyWord(moduleId, keyWord, HandleAddKeyWord, HandleAddKeyWord, null);
}

function HandleAddKeyWord(result)
{
    return true;
}

function GetProductByCompanyIdRanked( companyId, productTypeId, productId, targetDiv)
{
    var siteId = document.siteStaticData.siteId.value;
    var uc = new(Object);
    uc.targetDiv = targetDiv;

    dazzleware.leveranciersgids.ajax.GetProductByCompanyIdAndProductTypeIdRanked(companyId, productTypeId, "ProductName", "ASC", "../Module/Product/XSLT/products.xsl", siteId, productId, HandleGetProductByCompanyIdRanked, HandleGetProductByCompanyIdRanked, uc)
}

function HandleGetProductByCompanyIdRanked(result, uc)
{
    var elmt = document.getElementById(uc.targetDiv);
    if (elmt != undefined)
    {
        elmt.innerHTML = result;
    }
}

function GetProductCategoryByProductTypeIdRanked(productTypeId, parentProductCategoryId, filter, targetDiv)
{
    var siteId = document.siteStaticData.siteId.value;
    var uc = new(Object);
    uc.targetDiv = targetDiv;

    dazzleware.leveranciersgids.ajax.GetProductCategoryByProductTypeIdRanked(siteId, productTypeId, parentProductCategoryId, filter, "", "", "../Module/Product/XSLT/subcategories.xsl", HandleGetProductCategoryByProductTypeIdRanked, HandleGetProductCategoryByProductTypeIdRanked, uc)
}

function HandleGetProductCategoryByProductTypeIdRanked(result, uc)
{
    var elmt = document.getElementById(uc.targetDiv);
    if (elmt != undefined)
    {
        elmt.innerHTML = result;
    }
    toggleDisplay(uc.targetDiv);
}

function GetProductCategoryBySiteIdRanked( parentProductCategoryId, targetDiv)
{
    var siteId = document.siteStaticData.siteId.value;
    var uc = new(Object);
    uc.targetDiv = targetDiv;

    dazzleware.leveranciersgids.ajax.GetProductCategoryBySiteIdRanked(siteId, "Name", "ASC", "../Module/Product/XSLT/subcategories.xsl", parentProductCategoryId, HandleGetProductCategoryBySiteIdRanked, HandleGetProductCategoryBySiteIdRanked, uc)

    return oXmlDoc;
}


function HandleGetProductCategoryBySiteIdRanked(result, uc)
{
    var elmt = document.getElementById(uc.targetDiv);
    if (elmt != undefined)
    {
        elmt.innerHTML = result;
    }
    toggleDisplay(uc.targetDiv);
}

