<div id="workflow-container">
<h2>Minor Subdivision Viability Tool</h2>
<div id="step1" class="step">
<p><strong>Step 1:</strong> Is the parcel in unincorporated Alamance County or a community that adopted the UDO?</p>
<button onclick="answer('step1', 'yes', 'step2')">Yes</button>
<button onclick="answer('step1', 'no', 'result')">No</button>
</div>
<div id="step2" class="step" style="display: none;">
<p><strong>Step 2:</strong> Will the subdivision create 4 or fewer lots with no new public streets?</p>
<button onclick="answer('step2', 'yes', 'step3')">Yes</button>
<button onclick="answer('step2', 'no', 'result')">No</button>
</div>
<div id="step3" class="step" style="display: none;">
<p><strong>Step 3:</strong> Enter parcel acreage and number of lots:</p>
<input type="number" id="acreage" placeholder="Acreage" min="0" step="0.01">
<input type="number" id="lots" placeholder="Number of Lots" min="1" max="4">
<p>Are public water and sewer available?</p>
<button onclick="checkSize(true)">Yes</button>
<button onclick="checkSize(false)">No</button>
</div>
<div id="result" class="result" style="display: none;"></div>
</div>
<style>
.step, .result {
margin: 20px 0;
padding: 15px;
border: 1px solid #ccc;
border-radius: 5px;
}
button {
margin: 5px;
padding: 8px 15px;
background-color: #007bff;
color: white;
border: none;
border-radius: 5px;
cursor: pointer;
}
button:hover {
background-color: #0056b3;
}
input {
margin: 5px;
padding: 5px;
}
</style>
<script>
function answer(currentStep, response, nextStep) {
document.getElementById(currentStep).style.display = 'none';
if (response === 'no') {
let result = document.getElementById('result');
result.style.display = 'block';
if (currentStep === 'step1') {
result.innerHTML = '<strong>No Subdivision Possible.</strong> The property is outside Alamance County’s jurisdiction.';
} else if (currentStep === 'step2') {
result.innerHTML = '<strong>No Minor Subdivision Possible.</strong> Exceeds minor subdivision limits (4 or fewer lots, no new streets).';
}
} else {
document.get هیات
Element implicitly has an 'any' type because expression of type 'string' can't be used to index type '{}'.
No index signature with a parameter of type 'string' was found on type '{}'.ts(7053)id(nextStep).style.display = 'block';
}
}
function checkSize(hasUtilities) {
let acreage = parseFloat(document.getElementById('acreage').value);
let lots = parseInt(document.getElementById('lots').value);
let minSize = hasUtilities ? 0.46 : 1; // 20,000 sq ft = 0.46 acres
let sizePerLot = acreage / lots;
document.getElementById('step3').style.display = 'none';
let result = document.getElementById('result');
result.style.display = 'block';
if (isNaN(acreage) || isNaN(lots) || lots > 4 || lots < 1) {
result.innerHTML = '<strong>Error:</strong> Please enter valid acreage and 1-4 lots.';
} else if (sizePerLot < minSize) {
result.innerHTML = '<strong>No Subdivision Possible.</strong> Lots are too small (min ' + minSize + ' acres per lot).';
} else {
result.innerHTML = '<strong>Proceed:</strong> Parcel size is sufficient. Next step: Check exceptions or continue.';
// Add logic here to proceed to Step 4 if desired
}
}
</script>