add bin config from spaces.
Add size to nodes.
--- a/server/src/main/java/org/iri_research/renkan/controller/RenkanController.java Wed Mar 13 15:47:08 2013 +0100
+++ b/server/src/main/java/org/iri_research/renkan/controller/RenkanController.java Thu Mar 14 00:29:09 2013 +0100
@@ -6,6 +6,7 @@
import org.iri_research.renkan.RenkanException;
import org.iri_research.renkan.models.Project;
import org.iri_research.renkan.repositories.ProjectsRepository;
+import org.iri_research.renkan.repositories.SpacesRepository;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -29,7 +30,10 @@
private final Logger logger = LoggerFactory.getLogger(RenkanController.class);
@Autowired
- private ProjectsRepository projectRepository;
+ private ProjectsRepository projectsRepository;
+
+ @Autowired
+ private SpacesRepository spacesRepository;
private void checkCowebkey(String cowebkey, Project project) {
if(cowebkey == null || cowebkey.isEmpty()) {
@@ -62,7 +66,7 @@
throw new IllegalArgumentException("RenkanContoller.renkanProject: Project id is null or empty.");
}
- Project project = this.projectRepository.findOne(project_id);
+ Project project = this.projectsRepository.findOne(project_id);
if(project == null) {
throw new HttpClientErrorException(HttpStatus.NOT_FOUND, "Project " + project_id + " not found.");
@@ -72,6 +76,7 @@
Map<String, Object> model = new HashMap<String, Object>();
model.put("project", project);
+ model.put("space", spacesRepository.findOne(project.getSpaceId()));
return new ModelAndView("renkanProjectEdit", model);
}
--- a/server/src/main/java/org/iri_research/renkan/coweb/event/NodeSyncEventManager.java Wed Mar 13 15:47:08 2013 +0100
+++ b/server/src/main/java/org/iri_research/renkan/coweb/event/NodeSyncEventManager.java Thu Mar 14 00:29:09 2013 +0100
@@ -69,7 +69,9 @@
String node_id = (String)values.get("id");
- Node node = new Node(node_id, (String)values.get("title"), (String)values.get("description"), (String)values.get("uri"), (String)values.get("color"), creator_id, nodePosition, image, project_id);
+ Integer size = (Integer)values.get("size");
+
+ Node node = new Node(node_id, (String)values.get("title"), (String)values.get("description"), (String)values.get("uri"), (String)values.get("color"), creator_id, nodePosition, image, size, project_id);
Integer position = (Integer)data.get("position");
--- a/server/src/main/java/org/iri_research/renkan/models/Node.java Wed Mar 13 15:47:08 2013 +0100
+++ b/server/src/main/java/org/iri_research/renkan/models/Node.java Thu Mar 14 00:29:09 2013 +0100
@@ -10,13 +10,14 @@
public class Node extends AbstractRenkanModel<String> {
- public Node(String id, String title, String description, String uri, String color, String createdBy, Point position, String image, String projectId) {
+ public Node(String id, String title, String description, String uri, String color, String createdBy, Point position, String image, Integer size, String projectId) {
super(id, title, description, uri, color);
this.projectId = projectId;
this.createdBy = createdBy;
this.position = position;
this.image = image;
+ this.size = (size == null) ? 0 : size.intValue();
}
@Field("project_id")
@@ -29,12 +30,14 @@
private Point position = null;
+ private String image;
+
+ private int size;
+
public Point getPosition() {
return position;
}
- private String image;
-
public String getImage() {
return image;
}
@@ -49,4 +52,9 @@
return createdBy;
}
+ public int getSize() {
+ return size;
+ }
+
+
}
--- a/server/src/main/java/org/iri_research/renkan/models/Project.java Wed Mar 13 15:47:08 2013 +0100
+++ b/server/src/main/java/org/iri_research/renkan/models/Project.java Thu Mar 14 00:29:09 2013 +0100
@@ -91,7 +91,12 @@
this.created = date;
}
-
+
+ @JsonProperty("space_id")
+ public String getSpaceId() {
+ return spaceId;
+ }
+
private String getRawKey(String prefix) {
StringBuffer key = new StringBuffer(prefix!=null?prefix+"|":"");
key.append(Constants.KEYHEX);
--- a/server/src/main/webapp/WEB-INF/templates/renkanProjectEdit.html Wed Mar 13 15:47:08 2013 +0100
+++ b/server/src/main/webapp/WEB-INF/templates/renkanProjectEdit.html Thu Mar 14 00:29:09 2013 +0100
@@ -20,12 +20,13 @@
<script src="js/twitter-bin.js" th:src="@{/static/js/twitter-bin.js}"></script>
<script src="js/wikipedia-bin.js" th:src="@{/static/js/wikipedia-bin.js}"></script>
<script src="js/ldtjson-bin.js" th:src="@{/static/js/ldtjson-bin.js}"></script>
+ <script src="js/list-bin.js" th:src="@{/static/js/list-bin.js}"></script>
<script src="js/paper-renderer.js" th:src="@{/static/js/paper-renderer.js}"></script>
<script type="text/javascript" src="js/config.js" th:src="@{/static/js/config.js}"></script>
<script type="text/javascript" src="lib/dojo/dojo.js" data-dojo-config="isDebug: true, parseOnLoad: true" th:src="@{/static/lib/dojo/dojo.js}"></script>
<script type="text/javascript" th:inline="javascript">
$(function() {
- var _renkan = new Rkns.Renkan({
+ var renkan_config = {
url: /*[[@{/rest/projects/}+${project.id}]]*/ "data/simple-persist.php",
static_url : /*[[@{/static/}]]*/ "",
bins: [
@@ -67,7 +68,18 @@
type: Rkns.Twitter.Search
}
],
- });
+ };
+ var space_config = /*[[${space.binConfig}?${space.binConfig}:'{}']]*/"{}";
+ space_config = JSON.parse(space_config);
+ for ( var i in (('bins' in space_config)?space_config.bins:[])) {
+ var bin_def = space_config.bins[i];
+ bin_def.bin = eval(bin_def.bin);
+ }
+ for ( var i in (('search' in space_config)?space_config.search:[])) {
+ var search_def = space_config.search[i];
+ search_def.type = eval(bin_def.type);
+ }
+ var _renkan = new Rkns.Renkan($.extend({}, renkan_config, space_config));
var corenkanConfig = {
projectId: /*[[${project.id}]]*/"new_project",
renkan : _renkan
@@ -76,7 +88,7 @@
require({corenkanConfig: corenkanConfig}, ["corenkan"], function(corenkan) {
corenkan.app.onStatusChange = function(status) {
if(status == "ready") {
- _renkan.renderer.autoScale();
+ _renkan.renderer.autoScale();
}
};
});