{{ t.index?.title || 'Tilean Dominion Logistics' }}

{{ t.index?.subtitle || 'Access the TSLC freight network, create contracts, and track deliveries.' }}

{{ t.index?.loginBtn || 'Login with EVE Online' }}

{{ session.character.name }}

{{ session.role || 'member' }}
{{ t.dashboard?.outstanding || 'Outstanding' }}
{{ dash.stats?.outstanding || 0 }}
{{ t.dashboard?.inProgress || 'In Progress' }}
{{ dash.stats?.in_progress || 0 }}
{{ t.dashboard?.finished || 'Delivered' }}
{{ dash.stats?.finished || 0 }}
{{ t.dashboard?.cancelled || 'Cancelled' }}
{{ dash.stats?.cancelled || 0 }}
{{ t.dashboard?.myRequests || 'My Recent Contracts' }}
{{ t.dashboard?.colFrom || 'From' }}{{ t.dashboard?.colTo || 'To' }}{{ t.dashboard?.colVolume || 'Volume' }}{{ t.dashboard?.colReward || 'Reward' }}{{ t.dashboard?.colStatus || 'Status' }}
{{ c.start_name || c.start_location_name || c.start_location_id }} {{ c.end_name || c.end_location_name || c.end_location_id }} {{ fmtN(c.volume) }} m3 {{ fmtISK(c.reward) }} {{ t.status?.[c.status] || c.status }}

{{ t.logistics?.title || 'Logistics' }}

{{ t.logistics?.activeContracts || 'Active Contracts' }}{{ applyContractFilters(logi.contracts, 'logi').length }} / {{ (logi.contracts||[]).length }} {{ t.logistics?.contracts || 'contracts' }}
{{ t.logistics?.noContracts || 'No contracts' }}
{{ t.freight?.colRequester || 'Issuer' }}{{ t.freight?.colFrom || 'From' }}{{ t.freight?.colTo || 'To' }}{{ t.freight?.colVolume || 'Volume' }}{{ t.freight?.colCollateral || 'Collateral' }}{{ t.freight?.colReward || 'Reward' }}{{ t.freight?.colHauler || 'Hauler' }}{{ t.freight?.colStatus || 'Status' }}
{{ c.issuer_name || c.issuer_id }} {{ c.start_name || c.start_location_name || c.start_location_id }} {{ c.end_name || c.end_location_name || c.end_location_id }} {{ fmtN(c.volume) }} {{ fmtISK(c.collateral) }} {{ fmtISK(c.reward) }} {{ c.acceptor_name || '—' }} {{ t.status?.[c.status] || c.status }}

{{ t.myContracts?.title || 'My Contracts' }}

{{ t.dashboard?.outstanding || 'Outstanding' }}
{{ myC.stats?.outstanding || 0 }}
{{ t.dashboard?.inProgress || 'In Progress' }}
{{ myC.stats?.in_progress || 0 }}
{{ t.dashboard?.finished || 'Delivered' }}
{{ myC.stats?.finished || 0 }}
{{ t.dashboard?.cancelled || 'Cancelled' }}
{{ myC.stats?.cancelled || 0 }}
{{ t.myContracts?.contracts || 'Contracts' }}{{ applyContractFilters(myC.contracts, 'myC').length }} / {{ (myC.contracts||[]).length }}
{{ t.myContracts?.noContracts || 'No contracts yet' }}
{{ t.myContracts?.colFrom || 'From' }}{{ t.myContracts?.colTo || 'To' }}{{ t.myContracts?.colVolume || 'Volume' }}{{ t.myContracts?.colReward || 'Reward' }}{{ t.freight?.colHauler || 'Hauler' }}{{ t.myContracts?.colStatus || 'Status' }}{{ t.myContracts?.colDate || 'Date' }}
{{ c.start_name || c.start_location_name || c.start_location_id }} {{ c.end_name || c.end_location_name || c.end_location_id }} {{ fmtN(c.volume) }} {{ fmtISK(c.reward) }} {{ c.acceptor_name || '—' }} {{ t.status?.[c.status] || c.status }} {{ c.date_issued?.slice(0,10) }}

{{ t.myDeliveries?.title || 'My Deliveries' }}

{{ t.myDeliveries?.delivered || 'Delivered' }}
{{ myD.stats?.delivered || 0 }}
{{ t.myDeliveries?.inProgress || 'In Progress' }}
{{ myD.stats?.in_progress || 0 }}
{{ t.myDeliveries?.totalVolume || 'Volume Hauled' }}
{{ fmtN(myD.stats?.totalVolume || 0) }} m3
{{ t.myDeliveries?.totalReward || 'ISK Earned' }}
{{ fmtISK(myD.stats?.totalReward || 0) }}
{{ t.myDeliveries?.deliveries || 'Deliveries' }}{{ applyContractFilters(myD.contracts, 'myD').length }} / {{ (myD.contracts||[]).length }}
{{ t.myDeliveries?.noDeliveries || 'No deliveries yet' }}
{{ t.myDeliveries?.colIssuer || 'Issuer' }}{{ t.myDeliveries?.colFrom || 'From' }}{{ t.myDeliveries?.colTo || 'To' }}{{ t.myDeliveries?.colVolume || 'Volume' }}{{ t.myDeliveries?.colReward || 'Reward' }}{{ t.myDeliveries?.colStatus || 'Status' }}
{{ c.issuer_name || c.issuer_id }} {{ c.start_name || c.start_location_name || c.start_location_id }} {{ c.end_name || c.end_location_name || c.end_location_id }} {{ fmtN(c.volume) }} {{ fmtISK(c.reward) }} {{ t.status?.[c.status] || c.status }}

{{ t.leaderboard?.title || 'Leaderboard' }}

{{ t.leaderboard?.totalContracts || 'Total Contracts' }}
{{ lb.globalStats?.totalContracts || 0 }}
{{ t.leaderboard?.delivered || 'Delivered' }}
{{ lb.globalStats?.delivered || 0 }}
{{ t.leaderboard?.totalVolume || 'Total Volume' }}
{{ fmtN(lb.globalStats?.totalVolume || 0) }}
{{ t.leaderboard?.totalCollateral || 'Total Collateral' }}
{{ fmtN(lb.globalStats?.totalCollateral || 0) }}
{{ t.leaderboard?.totalReward || 'Total Reward' }}
{{ fmtN(lb.globalStats?.totalReward || 0) }}
{{ t.leaderboard?.topHaulers || 'Top Haulers' }}
#{{ t.leaderboard?.colHauler || 'Hauler' }}{{ t.leaderboard?.colDelivered || 'Delivered' }}{{ t.leaderboard?.colVolume || 'Volume' }}{{ t.leaderboard?.colCollateral || 'Collateral' }}{{ t.leaderboard?.colISK || 'ISK' }}
{{ i+1 }} {{ h.name }} {{ h.delivered }} {{ fmtN(h.volume) }} {{ fmtN(h.collateral) }} {{ fmtN(h.reward) }}
{{ t.leaderboard?.topIssuers || 'Top Issuers' }}
#{{ t.leaderboard?.colIssuer || 'Issuer' }}{{ t.leaderboard?.colContracts || 'Contracts' }}{{ t.leaderboard?.colVolume || 'Volume' }}
{{ i+1 }} {{ s.name }} {{ s.count }} {{ fmtN(s.volume) }}

{{ t.calc?.title || 'Freight Calculator' }}

{{ t.calc?.subtitle || 'Calculate Shipping Cost' }}
{{ t.calc?.estimatedCost || 'Estimated Cost' }}
{{ fmtISKfull(calcCost) }}
{{ t.calc?.inclSurcharge || 'incl. surcharge' }} {{ fmtISKfull(calcSurcharge) }} ({{ calcRoute.surcharge_label }})
{{ t.calc?.minVolumeNote || 'Min. billed:' }} {{ fmtN(minVolume) }} m³
{{ t.calc?.tiersTitle || 'Pricing Tiers' }}
≤ {{ fmtISKfull(tier.maxCollateral) }}: {{ tier.ratePerM3 }} ISK/m3
{{ t.calc?.conditionsTitle || 'Contract Conditions' }} — {{ calcRoute.point_a }} ↔ {{ calcRoute.point_b }}
{{ t.calc?.maxVolume || 'Max Volume:' }}
{{ fmtN(calcStandards.maxVolume || 0) }} m³
{{ t.calc?.maxCollateral || 'Max Collateral:' }}
{{ fmtISKfull(calcStandards.maxCollateral || 0) }}
{{ t.calc?.expiry || 'Expiry:' }}
{{ calcStandards.expirationWeeks || 4 }} {{ t.calc?.weeks || 'weeks' }}
{{ t.calc?.completion || 'Completion:' }}
{{ calcStandards.daysToComplete || 7 }} {{ t.calc?.days || 'days' }}
{{ t.calc?.assignTo || 'Assign the contract to:' }}
{{ calcAssign }}
{{ calcData.isMember ? (t.calc?.assignExtNote || 'Not in the alliance? Assign to:') : (t.calc?.assignMemNote || 'Alliance member? Assign to:') }} {{ calcAssignOther }}
⚠ {{ t.calc?.exceededTitle || 'Limit Exceeded' }}
{{ t.calc?.errVolume || 'Volume exceeds maximum!' }}
{{ t.calc?.errCollateral || 'Collateral exceeds maximum!' }}

{{ t.director?.title || 'Director Panel' }}

{{ t.director?.total || 'Total' }}
{{ dir.stats?.total || 0 }}
{{ t.director?.outstanding || 'Outstanding' }}
{{ dir.stats?.outstanding || 0 }}
{{ t.director?.inProgress || 'In Progress' }}
{{ dir.stats?.inProgress || 0 }}
{{ t.director?.totalDelivered || 'Delivered' }}
{{ dir.stats?.delivered || 0 }}
{{ t.director?.urgent || 'Urgent' }}
{{ dir.stats?.urgent || 0 }}
{{ t.director?.urgentContracts || 'Urgent Contracts' }}
{{ t.director?.colIssuer || 'Issuer' }}{{ t.director?.colFrom || 'From' }}{{ t.director?.colTo || 'To' }}{{ t.director?.colVolume || 'Volume' }}{{ t.director?.colReward || 'Reward' }}{{ t.director?.colExpires || 'Expires' }}
{{ c.issuer_name }} {{ c.start_location_name }} {{ c.end_location_name }} {{ fmtN(c.volume) }} {{ fmtISK(c.reward) }} {{ c.date_expired?.slice(0,10) }}

{{ t.admin?.title || 'Admin Panel' }}

{{ t.admin?.assign || 'Contract Assignment' }}

{{ t.admin?.assignDesc || 'Where members (TD) vs external customers must assign their courier contract. Shown in the calculator depending on the logged-in player.' }}

{{ t.admin?.calcSettings || 'Calculator' }}

{{ t.admin?.minVolumeDesc || 'Any contract below this volume is priced as if it were this volume.' }}

{{ t.admin?.routes || 'Special Routes' }}

{{ t.admin?.routesDesc || 'Routes with specific rate and surcharge (e.g. Jita +10M).' }}

{{ r.point_a }} ↔ {{ r.point_b }}
{{ t.admin?.pricingTiers || 'Pricing Tiers' }}
{{ t.admin?.inactive || 'inactive' }}
{{ t.admin?.noRoutes || 'No special routes.' }}

{{ t.admin?.addRoute || '+ Add a special route' }}
{{ t.admin?.pricingTiers || 'Pricing Tiers' }}
{{ t.admin?.discord || 'Discord' }}
{{ t.admin?.roles || 'Roles' }}
{{ t.admin?.character || 'Character' }}ID{{ t.admin?.role || 'Role' }}
{{ r.char_name }} {{ r.char_id }} {{ r.role }}
{{ t.admin?.monitoredCorps || 'Monitored Corporations' }}

{{ t.admin?.monitoredCorpsDesc || 'Corporations tracked for contracts via the central API.' }}

{{ a.corp_name }} #{{ a.corporation_id }}
{{ t.admin?.status || 'Status' }}
{{ t.admin?.esiCache || 'ESI Cache' }}: {{ adm.cacheStatus?.active ? (t.admin?.active || 'Active') : (t.admin?.inactive || 'Inactive') }}
{{ t.admin?.contractsCached || 'Contracts cached' }}: {{ adm.cacheStatus?.count || 0 }}
{{ t.admin?.version || 'Version' }}: v{{ session.version }}
{{ t.admin?.maintenance || 'Maintenance Mode' }}
{{ t.admin?.activityLog || 'Activity Logs' }}
{{ t.admin?.logDate || 'Date' }}{{ t.admin?.logAdmin || 'Admin' }}{{ t.admin?.logAction || 'Action' }}{{ t.admin?.logDetails || 'Details' }}
{{ new Date(l.created_at).toLocaleString() }} {{ l.char_name }} {{ l.action }} {{ l.details }}