﻿function getGeometryArea(geometry, unit,mapUnit) {
    var area = geometry.getArea();
    var inPerDisplayUnit = OpenLayers.INCHES_PER_UNIT[unit];
    if (inPerDisplayUnit) {
    
        if (!mapUnit)
            mapUnit = mapManager.getMap().getUnits();    
        
        var inPerMapUnit = OpenLayers.INCHES_PER_UNIT[mapUnit];
        area *= Math.pow((inPerMapUnit / inPerDisplayUnit), 2);
    }

    return area;
}

function validateGeometry(geometry, silent,mapUnit,areaSizeLimit) {
    
    
    if (geometry == null)
        return true;
    
    if (areaSizeLimit == 0)
        return true;

    if (!mapUnit)
        mapUnit = mapManager.getMap().getUnits();    
        
    var area = getGeometryArea(geometry, 'km',mapUnit);
    if (area > areaSizeLimit) {
        if (!silent) alert("Belirlemiş olduğunuz ilgi alanı " + areaSizeLimit + " km² den daha büyük.\nDaha hızlı hizmet alabilmek için lütfen seçiminizi 2500 km² den küçük alanlarla sınırlandırınız.");
        return false;
    }
    return true;
}

function validate(evt, mapUnit, areaSizeLimit) {
    var features;

    if (areaSizeLimit == 0)
        return true;
    
    if (!mapUnit)
        mapUnit = mapManager.getMap().getUnits();
        
    if (evt.features)
        features = evt.features;
    else
        features = [evt.feature];



    for (var index in features) {
        var area = getGeometryArea(features[index].geometry, 'km', mapUnit);
        if (area > 2500) {
            alert("Belirlemiş olduğunuz ilgi alanı "+ areaSizeLimit +" km² den daha büyük.\nDaha hızlı hizmet alabilmek için lütfen seçiminizi 2500 km² den küçük alanlarla sınırlandırınız.");
            return false;
        }
    }
    return true;
}


