Commit 7f5bb682 by Tuomas Riihimäki

simplify user metadata printing.

If user had metadata, the old code for example added a  after _each_ <li> tag
which broke for example the menu in funny ways
1 parent 12af1628
...@@ -159,17 +159,7 @@ ...@@ -159,17 +159,7 @@
</h:form> </h:form>
<p:fieldset legend="#{i18n['user.meta.box.title']}" toggleable="true" collapsed="true" rendered="#{not empty userView.meta}"> <p:fieldset legend="#{i18n['user.meta.box.title']}" toggleable="true" collapsed="true" rendered="#{not empty userView.meta}">
<h:outputScript target="head" library="script" name="jsonview.js" /> <div id="usermetaview"><pre><h:outputText value="#{userView.prettyMeta}" /></pre></div>
<h:outputScript target="head">
window.onload = function() {
jsonView('#usermetaview');
}
</h:outputScript>
<h:form id="usermetaform" enctype="multipart/form-data">
<p:panelGrid columns="1" cellpadding="1">
<div id="usermetaview">#{userView.meta}</div>
</p:panelGrid>
</h:form>
</p:fieldset> </p:fieldset>
......
...@@ -20,7 +20,10 @@ package fi.codecrew.moya.web.cdiview.user; ...@@ -20,7 +20,10 @@ package fi.codecrew.moya.web.cdiview.user;
import java.io.ByteArrayInputStream; import java.io.ByteArrayInputStream;
import java.io.IOException; import java.io.IOException;
import java.io.StringWriter;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map;
import javax.ejb.EJB; import javax.ejb.EJB;
import javax.enterprise.context.Conversation; import javax.enterprise.context.Conversation;
...@@ -31,7 +34,11 @@ import javax.faces.context.FacesContext; ...@@ -31,7 +34,11 @@ import javax.faces.context.FacesContext;
import javax.faces.event.ValueChangeEvent; import javax.faces.event.ValueChangeEvent;
import javax.inject.Inject; import javax.inject.Inject;
import javax.inject.Named; import javax.inject.Named;
import javax.json.Json;
import javax.json.JsonObject; import javax.json.JsonObject;
import javax.json.JsonWriter;
import javax.json.JsonWriterFactory;
import javax.json.stream.JsonGenerator;
import org.primefaces.event.CaptureEvent; import org.primefaces.event.CaptureEvent;
import org.primefaces.event.FileUploadEvent; import org.primefaces.event.FileUploadEvent;
...@@ -649,6 +656,24 @@ public class UserView extends GenericCDIView { ...@@ -649,6 +656,24 @@ public class UserView extends GenericCDIView {
return ""; return "";
} }
public String getPrettyMeta(){
JsonObject meta = getSelectedUser().getUser().getMeta();
if(meta == null){
return "";
}
StringWriter stringWriter = new StringWriter();
Map<String, Boolean> config = new HashMap<String, Boolean>();
config.put(JsonGenerator.PRETTY_PRINTING, true);
JsonWriterFactory writerFactory = Json.createWriterFactory(config);
JsonWriter jsonWriter = writerFactory.createWriter(stringWriter);
jsonWriter.write(meta);
jsonWriter.close();
return stringWriter.toString();
}
public String getEmailCheck() { public String getEmailCheck() {
return emailCheck; return emailCheck;
} }
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!