--- a/server/pom.xml Mon Mar 18 00:00:45 2013 +0100
+++ b/server/pom.xml Mon Mar 18 02:23:37 2013 +0100
@@ -4,7 +4,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.iri_research.renkan</groupId>
<artifactId>renkan</artifactId>
- <version>0.2</version>
+ <version>0.3</version>
<packaging>war</packaging>
<properties>
@@ -52,6 +52,12 @@
<artifactId>maven-war-plugin</artifactId>
<version>2.3</version>
<configuration>
+ <archive>
+ <manifest>
+ <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
+ <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
+ </manifest>
+ </archive>
<overlays>
<overlay>
<groupId>org.opencoweb</groupId>
--- a/server/src/main/java/org/iri_research/renkan/Constants.java Mon Mar 18 00:00:45 2013 +0100
+++ b/server/src/main/java/org/iri_research/renkan/Constants.java Mon Mar 18 02:23:37 2013 +0100
@@ -5,19 +5,18 @@
import java.util.List;
public class Constants {
-
- @SuppressWarnings("serial")
+
public final static List<String> VERSION = Collections.unmodifiableList(new ArrayList<String>() {
+ private static final long serialVersionUID = -6935554100028328149L;
{
add("0");
- add("1");
+ add("3");
add("0");
add("final");
add("0");
}
});
-
-
+
public static String getVersion() {
String[] version_array = VERSION.toArray(new String[VERSION.size()]);
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/server/src/main/webapp/WEB-INF/templates/fragment/pageFragment.html Mon Mar 18 02:23:37 2013 +0100
@@ -0,0 +1,13 @@
+<!doctype html>
+<html xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:th="http://www.thymeleaf.org">
+<head>
+<meta charset="utf-8" />
+<title>pagination fragment</title>
+</head>
+<body>
+ <div id="footerFragment" th:fragment="footerFragment" >
+ <div id="version">© <span th:text="${#dates.year(#dates.createNow())}" class="version-date">2013</span> <a href="http://www.iri.centrepompidou.fr" target="_blanck">IRI</a> - Version <span th:text="${T(org.iri_research.renkan.Constants).version}" class="version-version">0.0</span></div>
+ </div>
+</body>
+</html>
\ No newline at end of file
--- a/server/src/main/webapp/WEB-INF/templates/projectIndex.html Mon Mar 18 00:00:45 2013 +0100
+++ b/server/src/main/webapp/WEB-INF/templates/projectIndex.html Mon Mar 18 02:23:37 2013 +0100
@@ -12,11 +12,13 @@
<script src="../../lib/underscore-min.js" th:src="@{/static/lib/underscore-min.js}" ></script>
<script src="../../js/main.js" th:src="@{/static/js/main.js}" ></script>
+ <link href="../../static/css/style.css" rel="stylesheet" th:href="@{/static/css/style.css}"/>
<link href="../../static/css/index.css" rel="stylesheet" th:href="@{/static/css/index.css}"/>
</head>
<body>
+ <div id="container">
<div id="wrapper">
- <h1><span th:text="#{renkanIndex.renkan_space}">Renkan Space</span>: <span th:text="${space.title}">Titre</span></h1>
+ <h1><span th:text="#{renkanIndex.renkan_space}"><a href="renkanIndex.html" th:href="@{'/'}" id="home-link">Renkan Space</a></span>: <span th:text="${space.title}">Titre</span></h1>
<div id="inner">
<div id="label" class="translate" th:text="#{renkanIndex.renkan_exp}">Create a Renkan</div>
<form action="#" onsubmit="go2Title();return false;">
@@ -63,69 +65,73 @@
</tbody>
</table>
</div>
- <script th:inline="javascript" >
- /*<![CDATA[*/
+ <div id="footer" th:include="fragment/pageFragment :: footerFragment">
+ <div id="version">© <span class="version-date">2013</span> <a href="http://www.iri.centrepompidou.fr" target="_blanck">IRI</a> - Version <span class="version-version">0.0</span></div>
+ </div>
+ </div>
+ <script th:inline="javascript" >
+ /*<![CDATA[*/
+
+ function go2Title()
+ {
+ var renkantitle = $("#renkantitle").val();
+ if(renkantitle.length == 0) {
+ var alert_message = /*[[#{renkanIndex.js.empty_name_error}]]*/"Please enter a title";
+ alert(alert_message);
+ return false;
+ }
+
+ new_renkan = {
+ title: renkantitle,
+ description: "(empty description)",
+ uri: null,
+ space_id: /*[[${space.id}]]*/"_",
+ };
+
+ var post_url = /*[[@{/rest/projects/}]]*/"/rest/projects/";
+ $.ajax(post_url, {
+ data:JSON.stringify(new_renkan),
+ type: "POST",
+ dataType: "json",
+ contentType: "application/json; charset=UTF-8"
+ }).done(function(project){
+ window.location.reload();
+ });
+
+ }
- function go2Title()
- {
- var renkantitle = $("#renkantitle").val();
- if(renkantitle.length == 0) {
- var alert_message = /*[[#{renkanIndex.js.empty_name_error}]]*/"Please enter a title";
- alert(alert_message);
- return false;
- }
-
- new_renkan = {
- title: renkantitle,
- description: "(empty description)",
- uri: null,
- space_id: /*[[${space.id}]]*/"_",
- };
-
- var post_url = /*[[@{/rest/projects/}]]*/"/rest/projects/";
- $.ajax(post_url, {
- data:JSON.stringify(new_renkan),
- type: "POST",
- dataType: "json",
- contentType: "application/json; charset=UTF-8"
- }).done(function(project){
- window.location.reload();
- });
-
- }
-
- function copyProject(project_id)
- {
- var post_url = /*[[@{/p/copy}]]*/"#";
- $.post(post_url, {"project_id": project_id})
- .done(function(p){
- window.location.reload();
- });
- }
-
- function deleteProject(project_id, project_title)
- {
- var message = /*[[#{renkanIndex.project_delete_confirm}]]*/"Delete project \"<%= title %>\"";
- if(confirm(_.template(message, {title: project_title}))) {
- var delete_url = /*[[@{/rest/projects}]]*/"#";
- $.ajax(delete_url+"/"+project_id, {
- type: "DELETE"
- }).done(function(){
- window.location.reload();
- });
- }
- }
-
- $(function(){
- $(".copy_project").click(function(event) {
- copyProject($(event.target).data("project_id"));
- });
- $(".delete_project").click(function(event) {
- deleteProject($(event.target).data("project_id"), $(event.target).data("project_title"));
- });
- });
-
- /*]]>*/
- </script>
+ function copyProject(project_id)
+ {
+ var post_url = /*[[@{/p/copy}]]*/"#";
+ $.post(post_url, {"project_id": project_id})
+ .done(function(p){
+ window.location.reload();
+ });
+ }
+
+ function deleteProject(project_id, project_title)
+ {
+ var message = /*[[#{renkanIndex.project_delete_confirm}]]*/"Delete project \"<%= title %>\"";
+ if(confirm(_.template(message, {title: project_title}))) {
+ var delete_url = /*[[@{/rest/projects}]]*/"#";
+ $.ajax(delete_url+"/"+project_id, {
+ type: "DELETE"
+ }).done(function(){
+ window.location.reload();
+ });
+ }
+ }
+
+ $(function(){
+ $(".copy_project").click(function(event) {
+ copyProject($(event.target).data("project_id"));
+ });
+ $(".delete_project").click(function(event) {
+ deleteProject($(event.target).data("project_id"), $(event.target).data("project_title"));
+ });
+ });
+
+ /*]]>*/
+ </script>
</body>
</html>
--- a/server/src/main/webapp/WEB-INF/templates/renkanIndex.html Mon Mar 18 00:00:45 2013 +0100
+++ b/server/src/main/webapp/WEB-INF/templates/renkanIndex.html Mon Mar 18 02:23:37 2013 +0100
@@ -12,9 +12,11 @@
<script src="../../lib/underscore-min.js" th:src="@{/static/lib/underscore-min.js}" ></script>
<script src="../../js/main.js" th:src="@{/static/js/main.js}" ></script>
+ <link href="../../static/css/style.css" rel="stylesheet" th:href="@{/static/css/style.css}"/>
<link href="../../static/css/index.css" rel="stylesheet" th:href="@{/static/css/index.css}"/>
</head>
<body>
+ <div id="container">
<div id="wrapper">
<h1 th:text="#{renkanIndex.renkan_spaces}">Renkan Spaces</h1>
<div id="inner">
@@ -59,39 +61,43 @@
</tbody>
</table>
</div>
- <script th:inline="javascript" >
- /*<![CDATA[*/
-
- function go2Title()
- {
- var renkantitle = $("#renkantitle").val();
- if(renkantitle.length == 0) {
- var alert_message = /*[[#{renkanIndex.js.empty_name_error}]]*/"Please enter a title";
- alert(alert_message);
- return false;
- }
-
- new_space = {
- title: renkantitle,
- description: "(empty description)",
- uri: null
- };
-
- var post_url = /*[[@{/rest/spaces/}]]*/"/rest/spaces/";
- $.ajax(post_url, {
- data:JSON.stringify(new_space),
- type: "POST",
- dataType: "json",
- contentType: "application/json; charset=UTF-8"
- }).done(function(space){
- var template_url = /*[[@{'/s/<%=space_id%>'}]]*/"s/<%=space_id%>";
- window.location = _.template(template_url, {space_id: space.id});
- });
-
- //? window.location = "p/" + renkantitle : alert(/*[[#{renkanIndex.js.empty_name_error}]]*/"Please enter a name");
- }
-
- /*]]>*/
- </script>
+ <div id="footer" th:include="fragment/pageFragment :: footerFragment">
+ <div id="version">© <span class="version-date">2013</span> <a href="http://www.iri.centrepompidou.fr" target="_blanck">IRI</a> - Version <span class="version-version">0.0</span></div>
+ </div>
+ </div>
+ <script th:inline="javascript" >
+ /*<![CDATA[*/
+
+ function go2Title()
+ {
+ var renkantitle = $("#renkantitle").val();
+ if(renkantitle.length == 0) {
+ var alert_message = /*[[#{renkanIndex.js.empty_name_error}]]*/"Please enter a title";
+ alert(alert_message);
+ return false;
+ }
+
+ new_space = {
+ title: renkantitle,
+ description: "(empty description)",
+ uri: null
+ };
+
+ var post_url = /*[[@{/rest/spaces/}]]*/"/rest/spaces/";
+ $.ajax(post_url, {
+ data:JSON.stringify(new_space),
+ type: "POST",
+ dataType: "json",
+ contentType: "application/json; charset=UTF-8"
+ }).done(function(space){
+ var template_url = /*[[@{'/s/<%=space_id%>'}]]*/"s/<%=space_id%>";
+ window.location = _.template(template_url, {space_id: space.id});
+ });
+
+ //? window.location = "p/" + renkantitle : alert(/*[[#{renkanIndex.js.empty_name_error}]]*/"Please enter a name");
+ }
+
+ /*]]>*/
+ </script>
</body>
</html>
--- a/server/src/main/webapp/WEB-INF/templates/renkanProjectEdit.html Mon Mar 18 00:00:45 2013 +0100
+++ b/server/src/main/webapp/WEB-INF/templates/renkanProjectEdit.html Mon Mar 18 02:23:37 2013 +0100
@@ -88,12 +88,13 @@
});
});
</script>
- <link rel="stylesheet" href="css/renkan.css" th:href="@{/static/css/renkan.css}"/>
- <style type="text/css">
- </style>
+ <link href="../../static/css/style.css" rel="stylesheet" th:href="@{/static/css/style.css}"/>
+ <link rel="stylesheet" href="css/renkan.css" th:href="@{/static/css/renkan.css}"/>
</head>
-
<body>
<div id="renkan"></div>
+ <div id="footer" th:include="fragment/pageFragment :: footerFragment">
+ <div id="version">© <span class="version-date">2013</span> <a href="http://www.iri.centrepompidou.fr" target="_blanck">IRI</a> - Version <span class="version-version">0.0</span></div>
+ </div>
</body>
</html>
--- a/server/src/main/webapp/WEB-INF/templates/renkanProjectPublish.html Mon Mar 18 00:00:45 2013 +0100
+++ b/server/src/main/webapp/WEB-INF/templates/renkanProjectPublish.html Mon Mar 18 02:23:37 2013 +0100
@@ -16,7 +16,7 @@
<script src="js/i18n.js" th:src="@{/static/js/i18n.js}"></script>
<script src="js/models.js" th:src="@{/static/js/models.js}"></script>
<script src="js/full-json.js" th:src="@{/static/js/full-json.js}"></script>
- <script src="js/paper-renderer.js" th:src="@{/static/js/paper-renderer.js}"></script>
+ <script src="js/paper-renderer.js" th:src="@{/static/js/paper-renderer.js}"></script>
<script type="text/javascript" th:inline="javascript">
/*<![CDATA[*/
var _renkan;
@@ -35,12 +35,14 @@
});
/*]]>*/
</script>
+ <link href="../../static/css/style.css" rel="stylesheet" th:href="@{/static/css/style.css}"/>
<link rel="stylesheet" href="css/renkan.css" th:href="@{/static/css/renkan.css}"/>
- <style type="text/css">
- </style>
</head>
<body>
<div id="renkan"></div>
+ <div id="footer" th:include="fragment/pageFragment :: footerFragment">
+ <div id="version">© <span class="version-date">2013</span> <a href="http://www.iri.centrepompidou.fr" target="_blanck">IRI</a> - Version <span class="version-version">0.0</span></div>
+ </div>
</body>
</html>
--- a/server/src/main/webapp/static/css/index.css Mon Mar 18 00:00:45 2013 +0100
+++ b/server/src/main/webapp/static/css/index.css Mon Mar 18 02:23:37 2013 +0100
@@ -1,3 +1,11 @@
+
+::-moz-selection { background: initial; color: initial; text-shadow: initial; }
+::selection { background: initial; color: initial; text-shadow: initial; }
+
+body,html {
+ height: 100%;
+}
+
body, h1, h2, table, tbody, thead, tr, td, th {
border: none; margin: 0; padding: 0; text-align: left; font-size: 100%;
}
@@ -55,6 +63,38 @@
margin: 0 1px 0 1px;
}
+div#container {
+ position:relative; /* needed for footer positioning*/
+ margin:0 auto; /* center, not in IE5 */
+
+ height:auto !important; /* real browsers */
+ height:100%; /* IE6: treaded as min-height*/
+
+ min-height:100%; /* real browsers */
+}
+
+div#wrapper {
+ padding-bottom: 1em; /* bottom padding for footer */
+}
+
+div#footer {
+ position:absolute;
+ bottom:0;
+ width:100%;
+ font-size: 12px;
+}
+
+div#footer div {
+ float:right;
+ margin: 15px 10px 0 0;
+}
+
+#home-link,#home-link:link,#home-link:hover,#home-link:active,#home-link:visited {
+ text-decoration: none;
+ color: #ffffff;
+}
+
+
#inner {
width: 300px;
margin: 10px auto;
@@ -121,9 +161,11 @@
outline: none;
position: absolute;
}
+
button[type="submit"] {
position: absolute;
right: -45px;
width: 45px;
height: 38px;
- }
\ No newline at end of file
+ }
+
\ No newline at end of file