1 25 26 package org.snipsnap.render.macro; 27 28 import org.radeox.macro.Macro; 29 import org.radeox.macro.BaseMacro; 30 import org.radeox.macro.parameter.MacroParameter; 31 import org.radeox.util.i18n.ResourceManager; 32 import org.snipsnap.snip.Modified; 33 import org.snipsnap.user.User; 34 import org.snipsnap.user.UserManager; 35 import org.snipsnap.user.UserManagerFactory; 36 37 import java.io.IOException ; 38 import java.io.Writer ; 39 import java.util.ResourceBundle ; 40 41 47 48 public class LastVisitMacro extends BaseMacro { 49 public String getName() { 50 return "last-visit"; 51 } 52 53 public String getDescription() { 54 return ResourceManager.getString("i18n.messages", "macro.lastlogin.description"); 55 } 56 57 public String [] getParamDescription() { 58 return ResourceManager.getString("i18n.messages", "macro.lastlogin.params").split(";"); 59 } 60 61 public void execute(Writer writer, MacroParameter params) 62 throws IllegalArgumentException , IOException { 63 64 if (params.getLength() == 1) { 65 User user = UserManagerFactory.getInstance().load(params.get("0")); 66 writer.write("<b>"); 67 writer.write(ResourceManager.getString("i18n.messages", "macro.lastvisit.lastvisit")); 68 writer.write("</b> "); 69 writer.write(Modified.getNiceTime(user.getLastLogout())); 70 } else { 71 throw new IllegalArgumentException ("Number of arguments does not match"); 72 } 73 } 74 } 75 | Popular Tags |