import { Alert, getLanguage, Navbar } from '../utils/system.js'; import { imageList } from '../utils/docker.js'; export const Images = async function(req,res){ let container_images = []; let containers = await containerList(req); for (let i = 0; i < containers.length; i++) { container_images.push(containers[i].Image); } let images = await imageList(); // Top of the table let image_list = ` ` for (let i = 0; i < images.length; i++) { let name = ''; let tag = ''; try { name = images[i].RepoTags[0].split(':')[0]; } catch {} try { tag = images[i].RepoTags[0].split(':')[1]; } catch {} let date = new Date(images[i].Created * 1000); let created = date.toLocaleDateString('en-US', { month: 'long', day: 'numeric', year: 'numeric' }); let size = images[i].Size / 1000 / 1000; // to match docker desktop size = size.toFixed(2); let status = ''; try { if (container_images.includes(images[i].RepoTags[0])) { status = 'In use'; } } catch {} let details = ` ${name} ${tag} ${images[i].Id} ${status} ${created} ${size} MB ` image_list += details; } image_list += `` res.render("images",{ alert: '', username: req.session.username, role: req.session.role, image_count: '', image_list: image_list, navbar: await Navbar(req), }); } export const submitImages = async function(req,res){ // console.log(req.body); let trigger_name = req.header('hx-trigger-name'); let trigger_id = req.header('hx-trigger'); console.log(`trigger_name: ${trigger_name} - trigger_id: ${trigger_id}`); res.render("images",{ alert: '', username: req.session.username, role: req.session.role, navbar: await Navbar(req), }); }