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