{"id":992,"date":"2024-11-24T13:36:52","date_gmt":"2024-11-24T13:36:52","guid":{"rendered":"https:\/\/circle2learning.eu\/es\/?page_id=992"},"modified":"2025-01-12T18:18:17","modified_gmt":"2025-01-12T18:18:17","slug":"freight-calculator","status":"publish","type":"page","link":"https:\/\/circle2learning.eu\/es\/freight-calculator\/","title":{"rendered":"Freight Calculator"},"content":{"rendered":"<p>[et_pb_section fb_built=&#8221;1&#8243; _builder_version=&#8221;4.23&#8243; _module_preset=&#8221;default&#8221; locked=&#8221;off&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_row admin_label=&#8221;Logos&#8221; _builder_version=&#8221;4.25.1&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.25.1&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_image src=&#8221;https:\/\/circle2learning.eu\/wp-content\/uploads\/2023\/02\/Circle-2-and-EU.png&#8221; title_text=&#8221;Circle-2-and-EU&#8221; align=&#8221;center&#8221; _builder_version=&#8221;4.25.1&#8243; _module_preset=&#8221;default&#8221; width=&#8221;40%&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_image][\/et_pb_column][\/et_pb_row][et_pb_row _builder_version=&#8221;4.23&#8243; _module_preset=&#8221;default&#8221; animation_style=&#8221;fade&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.23&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_code _builder_version=&#8221;4.27.4&#8243; _module_preset=&#8221;default&#8221; hover_enabled=&#8221;0&#8243; global_colors_info=&#8221;{}&#8221; sticky_enabled=&#8221;0&#8243;]<\/p>\n<div id=\"inputsContainerHeader\"><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"inputsPerBlocksHeader\"><!-- [et_pb_line_break_holder] -->            <pee><b>CIRCLE2:<\/b> VET and SMEs on the road to CE<\/pee><!-- [et_pb_line_break_holder] -->        <\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"inputsPerBlocksHeader\"><!-- [et_pb_line_break_holder] -->            <pee style=\"text-align: end;\"><b>N\u00famero de proyecto:<\/b> 2022-1-LT01-KA220-VET-000085809<\/pee><!-- [et_pb_line_break_holder] -->        <\/div>\n<p><!-- [et_pb_line_break_holder] -->    <\/div>\n<p><!-- [et_pb_line_break_holder] -->    <\/p>\n<h1>Calculadora de cargas<\/h1>\n<p><!-- [et_pb_line_break_holder] -->    <\/p>\n<div id=\"inputNameProduct\"><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"form-group\"><!-- [et_pb_line_break_holder] -->            <label for=\"product\">Producto:<\/label><!-- [et_pb_line_break_holder] -->            <input type=\"text\" id=\"product\" name=\"product\" placeholder=\"Introducir nombre del producto\"> <!--from origin to product--><!-- [et_pb_line_break_holder] -->        <\/div>\n<p><!-- [et_pb_line_break_holder] -->    <\/div>\n<p><!-- [et_pb_line_break_holder] -->    <!-- cost block --><!-- [et_pb_line_break_holder] -->    <\/p>\n<div id=\"inputsContainer\">   <!-- [et_pb_line_break_holder] -->    <!-- co2 emission block --><!-- [et_pb_line_break_holder] -->        <\/p>\n<div id=\"co2-inputs\" class=\"inputsPerBlocks\"><!-- [et_pb_line_break_holder] -->            <\/p>\n<h3> Factor de emisiones (FE) en CO2e\/tonelada.km<\/h3>\n<p><!-- [et_pb_line_break_holder] -->            <\/p>\n<div class=\"cost-group\"><!-- [et_pb_line_break_holder] -->                <label for=\"co2-truck\">Cami\u00f3n:<\/label><!-- [et_pb_line_break_holder] -->                <input type=\"number\" id=\"co2-truck\" name=\"co2Truck\" min=\"0\" placeholder=\"Introducir el FE (ex.: 0.108)\"><!-- [et_pb_line_break_holder] -->            <\/div>\n<p><!-- [et_pb_line_break_holder] -->            <\/p>\n<div class=\"cost-group\"><!-- [et_pb_line_break_holder] -->                <label for=\"co2-train\">Tren:<\/label><!-- [et_pb_line_break_holder] -->                <input type=\"number\" id=\"co2-train\" name=\"co2Train\" min=\"0\" placeholder=\"Introducir el FE (ex.: 0.065)\"><!-- [et_pb_line_break_holder] -->            <\/div>\n<p><!-- [et_pb_line_break_holder] -->            <\/p>\n<div class=\"cost-group\"><!-- [et_pb_line_break_holder] -->                <label for=\"co2-plane\">Avi\u00f3n:<\/label><!-- [et_pb_line_break_holder] -->                <input type=\"number\" id=\"co2-plane\" name=\"co2Plane\" min=\"0\" placeholder=\"Introducir el FE (ex.: 0.1116)\"><!-- [et_pb_line_break_holder] -->            <\/div>\n<p><!-- [et_pb_line_break_holder] -->            <\/p>\n<div class=\"cost-group\"><!-- [et_pb_line_break_holder] -->                <label for=\"co2-ship\">Barco:<\/label><!-- [et_pb_line_break_holder] -->                <input type=\"number\" id=\"co2-ship\" name=\"co2Ship\" min=\"0\" placeholder=\"Introducir el FE(ex.: 0.03)\"><!-- [et_pb_line_break_holder] -->            <\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/div>\n<p><!-- [et_pb_line_break_holder] -->    <\/div>\n<p><!-- [et_pb_line_break_holder] --><!\u2013- [et_pb_br_holder] -\u2013><!-- [et_pb_line_break_holder] -->    <!-- calculation block --><!-- [et_pb_line_break_holder] -->    <\/p>\n<form id=\"freight-form\"><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"form-group\"><!-- [et_pb_line_break_holder] -->            <label for=\"origin\">Origen:<\/label><!-- [et_pb_line_break_holder] -->            <input type=\"text\" id=\"origin\" name=\"origin\" placeholder=\"Introducir ciudad de origen\"><!-- [et_pb_line_break_holder] -->        <\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"form-group\"><!-- [et_pb_line_break_holder] -->            <label for=\"destination\">Destino:<\/label><!-- [et_pb_line_break_holder] -->            <input type=\"text\" id=\"destination\" name=\"destination\" placeholder=\"Introducir ciudad de destino\"><!-- [et_pb_line_break_holder] -->        <\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"form-group\"><!-- [et_pb_line_break_holder] -->            <label for=\"weight\">Peso (en toneladas):<\/label><!-- [et_pb_line_break_holder] -->            <input type=\"number\" id=\"weight\" name=\"weight\" min=\"1\" placeholder=\"Introducir peso de la carga\"><!-- [et_pb_line_break_holder] -->        <\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"form-group\"><!-- [et_pb_line_break_holder] -->            <label for=\"transport\">Tipo de transporte:<\/label><!-- [et_pb_line_break_holder] -->            <select id=\"transport\" name=\"transport\"><!-- [et_pb_line_break_holder] --><option value=\"cami\u00f3n\">Cami\u00f3n<\/option><!-- [et_pb_line_break_holder] --><option value=\"tren\">Tren<\/option><!-- [et_pb_line_break_holder] --><option value=\"avi\u00f3n\">Avi\u00f3n<\/option><!-- [et_pb_line_break_holder] --><option value=\"barco\">Barco<\/option><!-- [et_pb_line_break_holder] -->            <\/select><!-- [et_pb_line_break_holder] -->        <\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"form-group\"><!-- [et_pb_line_break_holder] -->            <label for=\"distance\">Distancia (km):<\/label><!-- [et_pb_line_break_holder] -->            <input type=\"number\" id=\"distance\" name=\"distance\" min=\"1\" placeholder=\"Introducir la distancia\"><!-- [et_pb_line_break_holder] -->        <\/div>\n<p><!-- [et_pb_line_break_holder] -->        <button type=\"button\" id=\"calculate-button\">C\u00e1lculo del coste<\/button><!-- [et_pb_line_break_holder] -->    <\/form>\n<p><!-- [et_pb_line_break_holder] -->    <!-- results block --><!-- [et_pb_line_break_holder] -->    <\/p>\n<div id=\"result-container\"><!-- [et_pb_line_break_holder] -->        <\/p>\n<h4 id=\"result-title\">Historial de c\u00e1lculo<\/h4>\n<p><!-- [et_pb_line_break_holder] -->        <\/p>\n<ul id=\"calculation-list\"><\/ul>\n<p><!-- [et_pb_line_break_holder] -->        <pee id=\"total-cost\">Coste total: <span id=\"total-cost-value\">0.00<\/span> \u20ac<\/pee><!-- [et_pb_line_break_holder] -->        <pee id=\"total-co2-impact\">Impacto total del CO2: <span id=\"total-co2-impact-value\">0.00<\/span> kg CO2e<\/pee><!-- [et_pb_line_break_holder] -->    <\/div>\n<p><!-- [et_pb_line_break_holder] -->    <\/p>\n<div id=\"export-container\"><!-- [et_pb_line_break_holder] -->        <button id=\"export-button\">Exportar a csv<\/button><!-- [et_pb_line_break_holder] -->      <\/div>\n<p><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --><\/p>\n<style><!-- [et_pb_line_break_holder] -->body {<!-- [et_pb_line_break_holder] -->    font-family: Arial, sans-serif;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->h1 {<!-- [et_pb_line_break_holder] -->    text-align: center;<!-- [et_pb_line_break_holder] -->    margin-bottom: 20px;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->.form-group,<!-- [et_pb_line_break_holder] -->.cost-group {<!-- [et_pb_line_break_holder] -->    margin-bottom: 15px;<!-- [et_pb_line_break_holder] -->    display: flex;<!-- [et_pb_line_break_holder] -->    justify-content: space-between; \/* Align labels and inputs horizontally *\/<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->label {<!-- [et_pb_line_break_holder] -->    width: 30%; \/* Label size *\/<!-- [et_pb_line_break_holder] -->    display: block;<!-- [et_pb_line_break_holder] -->    margin-bottom: 5px;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->input, select {<!-- [et_pb_line_break_holder] -->    width: 65%; \/* Input size *\/<!-- [et_pb_line_break_holder] -->    padding: 10px;<!-- [et_pb_line_break_holder] -->    border: 1px solid #ccc;<!-- [et_pb_line_break_holder] -->    border-radius: 4px;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->#calculate-button {<!-- [et_pb_line_break_holder] -->    background-color: #4CAF50;<!-- [et_pb_line_break_holder] -->    color: white;<!-- [et_pb_line_break_holder] -->    padding: 10px 20px;<!-- [et_pb_line_break_holder] -->    border: none;<!-- [et_pb_line_break_holder] -->    border-radius: 4px;<!-- [et_pb_line_break_holder] -->    cursor: pointer;<!-- [et_pb_line_break_holder] -->    margin-top: 20px;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->#result {<!-- [et_pb_line_break_holder] -->    margin-top: 20px;<!-- [et_pb_line_break_holder] -->    font-weight: bold;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->#inputsContainer {<!-- [et_pb_line_break_holder] -->    display: flex; \/* Enable flexbox layout *\/<!-- [et_pb_line_break_holder] -->    justify-content: space-between;<!-- [et_pb_line_break_holder] -->    margin-bottom: 20px;<!-- [et_pb_line_break_holder] -->    border: 1px solid #ccc;<!-- [et_pb_line_break_holder] -->    border-radius: 4px;<!-- [et_pb_line_break_holder] -->    padding: 15px; <!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->#inputNameProduct {<!-- [et_pb_line_break_holder] -->    margin-bottom: 20px;<!-- [et_pb_line_break_holder] -->    border: 1px solid #ccc;<!-- [et_pb_line_break_holder] -->    border-radius: 4px;<!-- [et_pb_line_break_holder] -->    padding: 15px; <!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/* Added styles for cost input section *\/<!-- [et_pb_line_break_holder] -->.inputsPerBlocks {<!-- [et_pb_line_break_holder] -->    display: flex;<!-- [et_pb_line_break_holder] -->    flex-direction: column;<!-- [et_pb_line_break_holder] -->    width: 100%;<!-- [et_pb_line_break_holder] -->    margin-bottom: 20px;<!-- [et_pb_line_break_holder] -->    border: 1px solid #ccc;<!-- [et_pb_line_break_holder] -->    border-radius: 4px;<!-- [et_pb_line_break_holder] -->    padding: 15px; \/* Add padding for better spacing *\/<!-- [et_pb_line_break_holder] -->    margin: 15px;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->.inputsPerBlocks h3 {<!-- [et_pb_line_break_holder] -->    margin-bottom: 10px; \/* Add margin for heading *\/<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/* Calculation history *\/<!-- [et_pb_line_break_holder] -->#result-container {<!-- [et_pb_line_break_holder] -->    margin-top: 20px;<!-- [et_pb_line_break_holder] -->    border: 1px solid #ccc;<!-- [et_pb_line_break_holder] -->    border-radius: 4px;<!-- [et_pb_line_break_holder] -->    padding: 15px;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->#result-title {<!-- [et_pb_line_break_holder] -->    margin-bottom: 10px;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->#calculation-list {<!-- [et_pb_line_break_holder] -->    list-style: none;<!-- [et_pb_line_break_holder] -->    padding: 0;<!-- [et_pb_line_break_holder] -->    margin: 0;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->#calculation-list li {<!-- [et_pb_line_break_holder] -->    margin-bottom: 5px;<!-- [et_pb_line_break_holder] -->    padding: 10px;<!-- [et_pb_line_break_holder] -->    border-bottom: 1px solid #ddd;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->#total-cost, #total-co2-impact {<!-- [et_pb_line_break_holder] -->    margin-top: 10px;<!-- [et_pb_line_break_holder] -->    font-weight: bold;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->#total-cost-value, #total-co2-impact-value {<!-- [et_pb_line_break_holder] -->    color: #007bff;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/* Export container *\/<!-- [et_pb_line_break_holder] -->#export-container {<!-- [et_pb_line_break_holder] -->    margin-top: 15px;<!-- [et_pb_line_break_holder] -->    text-align: center;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] -->  <!-- [et_pb_line_break_holder] -->  \/* Export button *\/<!-- [et_pb_line_break_holder] -->  #export-button {<!-- [et_pb_line_break_holder] -->    background-color: #4CAF50;<!-- [et_pb_line_break_holder] -->    color: white;<!-- [et_pb_line_break_holder] -->    padding: 10px 20px;<!-- [et_pb_line_break_holder] -->    border: none;<!-- [et_pb_line_break_holder] -->    border-radius: 4px;<!-- [et_pb_line_break_holder] -->    cursor: pointer;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/* Logo Creation *\/<!-- [et_pb_line_break_holder] -->  #inputsContainerHeader {<!-- [et_pb_line_break_holder] -->    display: flex; \/* Enable flexbox layout *\/<!-- [et_pb_line_break_holder] -->    justify-content: space-between;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->.inputsPerBlocksHeader {<!-- [et_pb_line_break_holder] -->    display: flex;<!-- [et_pb_line_break_holder] -->    flex-direction: column;<!-- [et_pb_line_break_holder] -->    width: 100%;<!-- [et_pb_line_break_holder] -->    margin-top: 10px;<!-- [et_pb_line_break_holder] -->    padding: 0px 15px 0px 15px;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->.inputsPerBlocksHeader h3 {<!-- [et_pb_line_break_holder] -->    margin-bottom: 10px;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><\/style>\n<p><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --><script><!-- [et_pb_line_break_holder] -->const form = document.getElementById('freight-form');<!-- [et_pb_line_break_holder] -->const calculateButton = document.getElementById('calculate-button');<!-- [et_pb_line_break_holder] -->const resultDiv = document.getElementById('result-container');<!-- [et_pb_line_break_holder] -->const costInputs = document.getElementById('cost-inputs');<!-- [et_pb_line_break_holder] -->const calculationList = document.getElementById('calculation-list');<!-- [et_pb_line_break_holder] -->const totalCostSpan = document.getElementById('total-cost-value');<!-- [et_pb_line_break_holder] -->const totalEmisSpan = document.getElementById('total-co2-impact-value');<!-- [et_pb_line_break_holder] -->const exportButton = document.getElementById('export-button');<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->let totalCost = 0; \/\/ Track total cost across all calculations<!-- [et_pb_line_break_holder] -->var totalEmis = 0; \/\/ Track total emissions across all calculations<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->calculateButton.addEventListener('click', function() {<!-- [et_pb_line_break_holder] -->  const origin = document.getElementById('origin').value;<!-- [et_pb_line_break_holder] -->  const destination = document.getElementById('destination').value;<!-- [et_pb_line_break_holder] -->  const weight = parseFloat(document.getElementById('weight').value);<!-- [et_pb_line_break_holder] -->  const transport = document.getElementById('transport').value;<!-- [et_pb_line_break_holder] -->  const distance = parseFloat(document.getElementById('distance').value);<!-- [et_pb_line_break_holder] -->  const product = document.getElementById('product').value;<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  let costPerKg;<!-- [et_pb_line_break_holder] -->  let emisPerKg;<!-- [et_pb_line_break_holder] -->  let calculatedCostPerVehicle;<!-- [et_pb_line_break_holder] -->  \/\/ Cost Calculation Logic<!-- [et_pb_line_break_holder] -->  if (transport === 'cami\u00f3n') {<!-- [et_pb_line_break_holder] -->    \/\/costPerKg = parseFloat(document.getElementById('truck-cost').value) || 0;<!-- [et_pb_line_break_holder] -->    emisPerKg = parseFloat(document.getElementById('co2-truck').value) || 0;<!-- [et_pb_line_break_holder] -->    const percentage = 10;                \/\/ Fuel cost of total cost in percentage<!-- [et_pb_line_break_holder] -->    const totalTeu = 1;                   \/\/ Maximum payload expressed in TEU<!-- [et_pb_line_break_holder] -->    const oneTeuTonnes = 21.4;            \/\/ Capability of 1 TEU expressed in tonnes (in case of 1 TEU provide the max payload expressed in tonnes)<!-- [et_pb_line_break_holder] -->    const distanceOneFuelUnit = 2;        \/\/ Kilometers with 1 unit of fuel (truck: 1 liter)<!-- [et_pb_line_break_holder] -->    const oneUnitFuelPrice = 1.29;        \/\/ Price of 1 unit of fuel (truck: 1 liter)<!-- [et_pb_line_break_holder] -->    calculatedCostPerVehicle = (((oneUnitFuelPrice\/distanceOneFuelUnit)\/(totalTeu*oneTeuTonnes)*distance)*weight)\/(percentage\/100)<!-- [et_pb_line_break_holder] -->  } else if (transport === 'tren') {<!-- [et_pb_line_break_holder] -->    \/\/costPerKg = parseFloat(document.getElementById('train-cost').value) || 0;<!-- [et_pb_line_break_holder] -->    emisPerKg = parseFloat(document.getElementById('co2-train').value) || 0;<!-- [et_pb_line_break_holder] -->    const percentage = 5;                 \/\/ Fuel cost of total cost in percentage<!-- [et_pb_line_break_holder] -->    const totalTeu = 63;                  \/\/ Maximum payload expressed in TEU<!-- [et_pb_line_break_holder] -->    const oneTeuTonnes = 21.4;            \/\/ Capability of 1 TEU expressed in tonnes (in case of 1 TEU provide the max payload expressed in tonnes)<!-- [et_pb_line_break_holder] -->    const distanceOneFuelUnit = 0.25;     \/\/ Kilometers with 1 unit of fuel (train: 1 liter)<!-- [et_pb_line_break_holder] -->    const oneUnitFuelPrice = 1.29;        \/\/ Price of 1 unit of fuel (train: 1 liter)<!-- [et_pb_line_break_holder] -->    calculatedCostPerVehicle = (((oneUnitFuelPrice\/distanceOneFuelUnit)\/(totalTeu*oneTeuTonnes)*distance)*weight)\/(percentage\/100)<!-- [et_pb_line_break_holder] -->  } else if (transport === 'avi\u00f3n') {<!-- [et_pb_line_break_holder] -->    \/\/costPerKg = parseFloat(document.getElementById('plane-cost').value) || 0;<!-- [et_pb_line_break_holder] -->    emisPerKg = parseFloat(document.getElementById('co2-plane').value) || 0;<!-- [et_pb_line_break_holder] -->    const percentage = 25;               \/\/ Fuel cost of total cost in percentage<!-- [et_pb_line_break_holder] -->    const totalTeu = 1;                  \/\/ Maximum payload expressed in TEU<!-- [et_pb_line_break_holder] -->    const oneTeuTonnes = 115;            \/\/ Capability of 1 TEU expressed in tonnes (in case of 1 TEU provide the max payload expressed in tonnes)<!-- [et_pb_line_break_holder] -->    const distanceOneFuelUnit = 0.0833;  \/\/ Kilometers with 1 unit of fuel (plane: 1 liter)<!-- [et_pb_line_break_holder] -->    const oneUnitFuelPrice = 1.29;       \/\/ Price of 1 unit of fuel (plane: 1 liter)<!-- [et_pb_line_break_holder] -->    calculatedCostPerVehicle = (((oneUnitFuelPrice\/distanceOneFuelUnit)\/(totalTeu*oneTeuTonnes)*distance)*weight)\/(percentage\/100)<!-- [et_pb_line_break_holder] -->  } else if (transport === 'barco') {<!-- [et_pb_line_break_holder] -->    \/\/costPerKg = parseFloat(document.getElementById('ship-cost').value) || 0;<!-- [et_pb_line_break_holder] -->    emisPerKg = parseFloat(document.getElementById('co2-ship').value) || 0;<!-- [et_pb_line_break_holder] -->    const percentage = 5;                \/\/ Fuel cost of total cost in percentage<!-- [et_pb_line_break_holder] -->    const totalTeu = 4000;               \/\/ Maximum payload expressed in TEU<!-- [et_pb_line_break_holder] -->    const oneTeuTonnes = 21.4;           \/\/ Capability of 1 TEU expressed in tonnes (in case of 1 TEU provide the max payload expressed in tonnes)<!-- [et_pb_line_break_holder] -->    const distanceOneFuelUnit = 5;       \/\/ Kilometers with 1 unit of fuel (ship: 1 tonne)<!-- [et_pb_line_break_holder] -->    const oneUnitFuelPrice = 560;        \/\/ Price of 1 unit of fuel (ship: 1 tonne)<!-- [et_pb_line_break_holder] -->    calculatedCostPerVehicle = (((oneUnitFuelPrice\/distanceOneFuelUnit)\/(totalTeu*oneTeuTonnes)*distance)*weight)\/(percentage\/100)<!-- [et_pb_line_break_holder] -->  } else {<!-- [et_pb_line_break_holder] -->    costPerKg = 0; \/\/ Handle invalid transport type<!-- [et_pb_line_break_holder] -->    emisPerKg = 0;<!-- [et_pb_line_break_holder] -->    calculatedCostPerVehicle = 0;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  console.log(totalCost);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Formatting Output with Error Handling<!-- [et_pb_line_break_holder] -->  if (isNaN(totalCost)) {<!-- [et_pb_line_break_holder] -->    resultDiv.textContent = \"An error occurred while calculating the cost.\";<!-- [et_pb_line_break_holder] -->  } else {<!-- [et_pb_line_break_holder] -->    <!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    \/\/ Create a new list item for the calculation history<!-- [et_pb_line_break_holder] -->    const newListItem = document.createElement('li');<!-- [et_pb_line_break_holder] -->    const calculatedCost = parseFloat(calculatedCostPerVehicle.toFixed(2));<!-- [et_pb_line_break_holder] -->    let calculatedEmis = emisPerKg * weight * distance;<!-- [et_pb_line_break_holder] -->    let calculatedEmisFloat = parseFloat(calculatedEmis.toFixed(2));<!-- [et_pb_line_break_holder] -->    newListItem.textContent = `${product} | Itinerario: ${origin} - ${destination} | Transporte: ${transport} | Coste: ${calculatedCost} \u20ac | Emision: ${calculatedEmisFloat} kg CO2e`;<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    \/\/ Add the new list item to the calculation list<!-- [et_pb_line_break_holder] -->    calculationList.appendChild(newListItem);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    \/\/ Update total cost and display with debugging in the console<!-- [et_pb_line_break_holder] -->    <!-- [et_pb_line_break_holder] -->    console.log(\"Weight:\", weight);<!-- [et_pb_line_break_holder] -->    console.log(\"Distance:\", distance);<!-- [et_pb_line_break_holder] -->    \/\/console.log(\"Cost per Kg:\", costPerKg);<!-- [et_pb_line_break_holder] -->    console.log(\"Calculated Cost:\", calculatedCost);<!-- [et_pb_line_break_holder] -->    console.log(\"Calculated Emis:\", calculatedEmis);<!-- [et_pb_line_break_holder] -->    totalCost += calculatedCost;<!-- [et_pb_line_break_holder] -->    totalEmis += calculatedEmis;<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    totalCostSpan.textContent = totalCost.toFixed(2);<!-- [et_pb_line_break_holder] -->    totalEmisSpan.textContent = totalEmis.toFixed(2);<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] -->  <!-- [et_pb_line_break_holder] -->});<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/\/ Function to generate CSV data<!-- [et_pb_line_break_holder] -->function getCSVData() {<!-- [et_pb_line_break_holder] -->  let csvData = \"\"; \/\/ Initialize empty string for CSV data<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  <!-- [et_pb_line_break_holder] -->  const listItems = calculationList.querySelectorAll('li');<!-- [et_pb_line_break_holder] -->  for (const item of listItems) {<!-- [et_pb_line_break_holder] -->    const textContentArray = item.textContent.split(\" | \"); \/\/ Split by pipe<!-- [et_pb_line_break_holder] -->    const originAndDestination = textContentArray[1].split(\" - \"); \/\/ Split first element by hyphen<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    const origin = originAndDestination[0].split(\": \")[1]; \/\/ Extract origin<!-- [et_pb_line_break_holder] -->    const destination = originAndDestination[1]; \/\/ Extract destination<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    \/\/ Extract transport and cost as before<!-- [et_pb_line_break_holder] -->    const transport = textContentArray[2].split(\": \")[1];<!-- [et_pb_line_break_holder] -->    const cost = textContentArray[3].split(\": \")[1].replace(\" \u20ac\", \"\");<!-- [et_pb_line_break_holder] -->    const emis = textContentArray[4].split(\": \")[1].replace(\" kg CO2e\", \"\");<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    \/\/ Extract product name<!-- [et_pb_line_break_holder] -->    const product = textContentArray[0]<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    csvData += product + \",\" + origin + \",\" + destination + \",\" + transport + \",\" + cost + \",\" + emis + \"\\n\"; \/\/ Add comma-separated values<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Add total cost on a separate line<!-- [et_pb_line_break_holder] -->  csvData += `Total Cost: ${totalCostSpan.textContent}\\n`;<!-- [et_pb_line_break_holder] -->  csvData += `Total CO2 Impact: ${totalEmisSpan.textContent}\\n`;<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  return csvData;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/\/ Export button click handler<!-- [et_pb_line_break_holder] -->exportButton.addEventListener('click', function() {<!-- [et_pb_line_break_holder] -->  const csvData = getCSVData();<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Create a blob object with CSV data and appropriate MIME type<!-- [et_pb_line_break_holder] -->  const blob = new Blob([csvData], { type: 'text\/csv;charset=utf-8' });<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Create a hidden anchor element for download<!-- [et_pb_line_break_holder] -->  const downloadLink = document.createElement('a');<!-- [et_pb_line_break_holder] -->  downloadLink.href = URL.createObjectURL(blob);<!-- [et_pb_line_break_holder] -->  downloadLink.download = 'freight_calculations.csv'; \/\/ Set filename<!-- [et_pb_line_break_holder] -->  downloadLink.style.display = 'none'; \/\/ Hide the anchor element<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Simulate a click on the hidden anchor element to trigger download<!-- [et_pb_line_break_holder] -->  document.body.appendChild(downloadLink);<!-- [et_pb_line_break_holder] -->  downloadLink.click();<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Clean up after download<!-- [et_pb_line_break_holder] -->  document.body.removeChild(downloadLink);<!-- [et_pb_line_break_holder] -->  URL.revokeObjectURL(blob); \/\/ Revoke object URL after download<!-- [et_pb_line_break_holder] -->});<!-- [et_pb_line_break_holder] --><\/script>[\/et_pb_code][\/et_pb_column][\/et_pb_row][et_pb_row _builder_version=&#8221;4.23&#8243; _module_preset=&#8221;default&#8221; animation_style=&#8221;fade&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.23&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_cta title=&#8221;Descargar esta herramienta para poder utilizarla sin conexi\u00f3n&#8221; button_text=&#8221;Click&#8221; _builder_version=&#8221;4.27.4&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<p>Esta herramienta est\u00e1 hecha en lenguaje html, css y javascript. Se puede descargar libremente la carpeta zip, descomprimirla e iniciar la herramienta haciendo clic en el archivo \u00abindex.html\u00bb. Tambi\u00e9n se proporciona una versi\u00f3n Excel de la misma herramienta para descargar por separado (dentro de una carpeta zip tambi\u00e9n).<\/p>\n<p>[\/et_pb_cta][\/et_pb_column][\/et_pb_row][et_pb_row column_structure=&#8221;1_2,1_2&#8243; _builder_version=&#8221;4.23&#8243; _module_preset=&#8221;default&#8221; animation_style=&#8221;fade&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;1_2&#8243; _builder_version=&#8221;4.23&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_button button_url=&#8221;https:\/\/circle2learning.eu\/es\/wp-content\/uploads\/2025\/01\/Freight-Calculator-ES.zip&#8221; url_new_window=&#8221;on&#8221; button_text=&#8221;Descargar la versi\u00f3n en html&#8221; button_alignment=&#8221;center&#8221; _builder_version=&#8221;4.27.4&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_button][\/et_pb_column][et_pb_column type=&#8221;1_2&#8243; _builder_version=&#8221;4.23&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_button button_url=&#8221;https:\/\/circle2learning.eu\/es\/wp-content\/uploads\/2025\/01\/Calculadora-de-cargas-Excel.xlsx&#8221; url_new_window=&#8221;on&#8221; button_text=&#8221;Descargar la versi\u00f3n en Excel&#8221; button_alignment=&#8221;center&#8221; _builder_version=&#8221;4.27.4&#8243; _module_preset=&#8221;default&#8221; locked=&#8221;off&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_button][\/et_pb_column][\/et_pb_row][et_pb_row _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_button button_url=&#8221;https:\/\/circle2learning.eu\/es\/wp-content\/uploads\/2025\/01\/Guia-Como-utilizar-la-Calculadora-de-Costes-de-Transporte.docx.pdf&#8221; url_new_window=&#8221;on&#8221; button_text=&#8221;Gu\u00eda de uso de la %22Calculadora de cargas%22&#8243; button_alignment=&#8221;center&#8221; _builder_version=&#8221;4.27.4&#8243; _module_preset=&#8221;default&#8221; animation_style=&#8221;fade&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_button][\/et_pb_column][\/et_pb_row][\/et_pb_section]<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Esta herramienta est\u00e1 hecha en lenguaje html, css y javascript. Se puede descargar libremente la carpeta zip, descomprimirla e iniciar la herramienta haciendo clic en el archivo \u00abindex.html\u00bb. Tambi\u00e9n se proporciona una versi\u00f3n Excel de la misma herramienta para descargar por separado (dentro de una carpeta zip tambi\u00e9n).<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_et_pb_use_builder":"on","_et_pb_old_content":"","_et_gb_content_width":"","footnotes":""},"class_list":["post-992","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/circle2learning.eu\/es\/wp-json\/wp\/v2\/pages\/992","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/circle2learning.eu\/es\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/circle2learning.eu\/es\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/circle2learning.eu\/es\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/circle2learning.eu\/es\/wp-json\/wp\/v2\/comments?post=992"}],"version-history":[{"count":13,"href":"https:\/\/circle2learning.eu\/es\/wp-json\/wp\/v2\/pages\/992\/revisions"}],"predecessor-version":[{"id":1313,"href":"https:\/\/circle2learning.eu\/es\/wp-json\/wp\/v2\/pages\/992\/revisions\/1313"}],"wp:attachment":[{"href":"https:\/\/circle2learning.eu\/es\/wp-json\/wp\/v2\/media?parent=992"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}