package com.buglabs.app.bugdash2.controller.software; import java.util.Iterator; import java.util.List; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.buglabs.app.bugdash2.App; import com.buglabs.app.bugdash2.controller.ApplicationController; import com.buglabs.osgi.sewing.pub.util.RequestParameters; import freemarker.template.SimpleHash; import freemarker.template.TemplateModelRoot; public class AppViewerController extends ApplicationController { public String getTemplateName() { return "software_app_viewer.fml"; } public TemplateModelRoot get(RequestParameters params, HttpServletRequest req, HttpServletResponse resp) { String title = ""; if (params.get("title") != null) title = params.get("title"); SimpleHash root = new SimpleHash(); if (!title.equals("")) { App app = new App(title); app.lookupByTitle(); root.put("title", title); root.put("version", app.getVersion()); root.put("author", app.getAuthor()); root.put("download", app.getDownloads()); root.put("description", app.getDescription()); root.put("rating", app.getRating()); root.put("url", app.getUrl()); root.put("screenshot", app.getMedium()); root.put("icon", app.getIcon()); root.put("apiVersion", app.getApiVersion()); root.put("category", app.getCategory()); root.put("maturity", app.getMaturity()); root.put("packages", app.displayPackages()); root.put("modules", getModuleIconList(app.getModules())); root.put("createdAtFormatted", app.getCreatedAtFormatted() ); root.put("admins", getUserProfileList(app.getAdmins())); root.put("collaborators", getUserProfileList(app.getCollaborators())); } return root; } private String getUserProfileList(List users) { String out = ""; String login; Iterator itr = users.iterator(); while (itr.hasNext()) { login = itr.next().toString(); out += "<a href=\"" + App.getAuthorURL(login) + "\" title=\"" + login + "\" target=\"_bugnet\">" + login + "</a> "; } return out; } private String getModuleIconList(List modules) { String module; String module_icons = ""; Iterator itr_modules = modules.iterator(); while (itr_modules.hasNext()) { module = itr_modules.next().toString(); module_icons += "<img src='" + App.getModuleIcon(module, "medium") + "' title='" + module + "' /> "; } return module_icons; } }