Skip to content

Commit

Permalink
Merge pull request #511 from mpsonntag/fixes
Browse files Browse the repository at this point in the history
Fixes and updates

LGTM
  • Loading branch information
achilleas-k authored Oct 21, 2020
2 parents 1b9acab + 83b0050 commit c68083e
Show file tree
Hide file tree
Showing 10 changed files with 362 additions and 8 deletions.
11 changes: 10 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,17 +5,23 @@ until the next release.

# Release v1.3

## Database changes
This release contains required database changes. After redeployment the database needs to be updated manually using script `patch/patch_v1_2_to_v1_3.sql` and the database service restarted for the changes to take effect.

## Build issues
The current project setup is still using an outdated build tool (`activator`) and is several versions behind the current state of the play framework. The default sbt CDNs for the underlying build dependencies have been updated and no longer provide the required dependencies. Therefore additional CDNs have been added to the project build to keep it in a buildable state. The docker build has been changed to a layered build to decrease build times. See issue #497 and PRs #498 and #509 for details.

## Features
- Stars will be shown in the conference abstract list, indicating favourite abstracts of a user. For details see issue #419.
- The favour/disfavour abstract methods in abstract-list.js now only use javascript.
- Conference banners can now be uploaded via the conference admin pages instead of providing an external link to a banner. The corresponding banners are used when displaying a conference. For details see issue #385.
- Mobile versions of Figures and conference banners are now automatically created when a figure or banner is uploaded.
- Both site and conference admins are now able to upload banners via the conference administration.
- The selenium framework is introduced to integrate frontend tests.
- The way DOI is represented in the abstract submission for has been updated. For details see issue #478.
- The way a DOI is represented in the abstract submission form has been updated. For details see issue #478.
- A conference dependent notice can now be added via the conference administration page. The text will be displayed for the respective conference only. This change requires a database change. After deployment of this version, the database needs to be updated manually using script `patch/patch_v1_2_to_v1_3.sql`. For details see issue #470.
- A search field has been added to the abstract list of a conference. For details see PR #505.
- Print view specific stylesheets were added for useful print rendering of abstract pages. See issue #508 for details.

## Fixes
- The string length of notes when changing abstract states will be limited to 255 to avoid database problems. For details see issue #448.
Expand All @@ -25,6 +31,9 @@ This release contains required database changes. After redeployment the database
- Added feedback on a failed email change attempt. For details see issue #467.
- Added sign-up notification after new user registration. For details see issue #473.
- The login status is now always properly displayed. For details see issue #468.
- Added error messages on abstract reference validation, if the input is numeric. For details see issue #499.
- The outdated mapbox.js plugin was updated to the latest version. See issue #510 for details.
- An issue was resolved where the sortid of an abstract was removed when an abstract was re-submitted. See issue #507 for details.


# Release v1.2
Expand Down
1 change: 1 addition & 0 deletions app/assets/javascripts/lib/models.js
Original file line number Diff line number Diff line change
Expand Up @@ -1093,6 +1093,7 @@ define(["lib/tools", "lib/accessors", "moment", "knockout"], function(tools, ac

var self = tools.inherit(this, Model, uuid);

self.sortId = sortId || 0;
self.title = ko.observable(title || null);
self.topic = ko.observable(topic || null);
self.text = ko.observable(text || null);
Expand Down
10 changes: 7 additions & 3 deletions app/assets/javascripts/locations.js
Original file line number Diff line number Diff line change
Expand Up @@ -43,12 +43,16 @@ require(["lib/models", "lib/tools", "lib/leaflet/leaflet", "lib/msg", "lib/astat
if (self.mapType === "locations") {
$("#map-div").height(0.75 * $("#map-div").width());
var confmap = L.map("map-div");
L.tileLayer("https://api.tiles.mapbox.com/v4/{id}/{z}/{x}/{y}.png?access_token={accessToken}", {
attribution: 'Map data &copy; <a href="https://www.openstreetmap.org/">OpenStreetMap</a> contributors, <a href="https://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>, Imagery © <a href="https://www.mapbox.com/">Mapbox</a>',

L.tileLayer('https://api.mapbox.com/styles/v1/{id}/tiles/{z}/{x}/{y}?access_token={accessToken}', {
attribution: '© <a href="https://www.mapbox.com/about/maps/">Mapbox</a> © <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a> <strong><a href="https://www.mapbox.com/map-feedback/" target="_blank">Improve this map</a></strong>',
tileSize: 512,
maxZoom: 20,
id: "mapbox.streets",
zoomOffset: -1,
id: 'mapbox/streets-v11',
accessToken: "pk.eyJ1IjoiZ25vZGUiLCJhIjoiY2prOGFnbzY2MWlmNzN3bzRhY205N2oxZCJ9.-j7b1aziK9nUNjgHQh0ojw"
}).addTo(confmap);

var texts = "";

for (var i = 0; i < geojson.length; i++) {
Expand Down
63 changes: 63 additions & 0 deletions app/assets/stylesheets/custom/bootstrap/_custom-print.less
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
// Do not display elements with the class noprint in the print view
.noprint {
display: none;
}

// Do not display specific elements in the print view
.navbar, .footer, .hidden-data, .nav, .jumbo-small, .callout, .pager, .alert {
display: none;
}

// Display the conference name but do not display the local link in the print view
.page-header {
h1 {
a[href]:after {
display: none;
}
}
}

.affiliations, .abstract-text, .acknowledgements, .references {
margin: 0.5em;
padding: 0.5em;
}

// Required to properly display abstract authors in the print view
.authors {
padding: 0;
margin: 0;
margin-top: 0.2em;
list-style: none;
display: inline-block;
font-size: 14px;

ul {
padding: 0;
margin: 0;
list-style: none;
display: inline-block;
font-size: large;
}

li {
display: inline-block;

span:after {
content: " ";
}
}

li:after {
content: ", ";
}

li:last-child:after {
content: "" !important;
}
}

// Required to properly display abstract copyright text in the print view
.foot-info ul {
list-style-type: none;
padding-left: 0px;
}
68 changes: 68 additions & 0 deletions app/assets/stylesheets/g-node-bootstrap-print.play.less
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
// file used for compilation within a play framework

// adjust this to the path where the original bootstrap less files are located
@bootPath: "/lib/bootstrap/less/";
// adjust this to the path where the custom less files are located
@customPath: "custom/bootstrap/";

// Core variables and mixins
@import "@{bootPath}variables";
@import "@{bootPath}mixins";

// Custom variables, overwrite existing bootstrap variables
@import "@{customPath}_custom-colors";
@import "@{customPath}_custom-vars";

// Reset
@import "@{bootPath}normalize";
@import "@{bootPath}print";

// Core CSS
@import "@{bootPath}scaffolding";
@import "@{bootPath}type";
@import "@{bootPath}code";
@import "@{bootPath}grid";
@import "@{bootPath}tables";
@import "@{bootPath}forms";
@import "@{bootPath}buttons";

// Components
@import "@{bootPath}component-animations";
@import "@{bootPath}glyphicons";
@import "@{bootPath}dropdowns";
@import "@{bootPath}button-groups";
@import "@{bootPath}input-groups";
@import "@{bootPath}navs";
@import "@{bootPath}navbar";
@import "@{bootPath}breadcrumbs";
@import "@{bootPath}pagination";
@import "@{bootPath}pager";
@import "@{bootPath}labels";
@import "@{bootPath}badges";
@import "@{bootPath}jumbotron";
@import "@{bootPath}thumbnails";
@import "@{bootPath}alerts";
@import "@{bootPath}progress-bars";
@import "@{bootPath}media";
@import "@{bootPath}list-group";
@import "@{bootPath}panels";
@import "@{bootPath}wells";
@import "@{bootPath}close";

// Components w/ JavaScript
@import "@{bootPath}modals";
@import "@{bootPath}tooltip";
@import "@{bootPath}popovers";
@import "@{bootPath}carousel";

// Utility classes
@import "@{bootPath}utilities";
@import "@{bootPath}responsive-utilities";

// Custom elements
@import "@{customPath}_custom-elements";

// Custom print view elements; needs to be the last import
// to make sure existing styles are overwritten by the print
// style.
@import "@{customPath}_custom-print";
11 changes: 7 additions & 4 deletions app/views/conferencelist.scala.html
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ <h3>
<a href="@routes.Application.conference(conference.short)"
data-bind="ifnot: $root.thumbnails()[@i]">
@if(conference.getConfText("thumbnail") != null && conference.getConfText("thumbnail") != "") {
<img class="conference-logo img-responsive img-rounded"
<img class="media-object conference-thumbnail"
src='@conference.getConfText("thumbnail")'>
}
</a>
Expand Down Expand Up @@ -99,10 +99,13 @@ <h4 class="media-heading">@conference.name</h4>
}

@if(account.isDefined) {
<hr>
<h3>Unpublished conferences</h3>
<br/>
@for((conference,i) <- list_other.zipWithIndex) {
@if(i == 0 && (conference.isOwner(account.get) || account.get.isAdmin)) {
<hr>
<h3>Unpublished conferences</h3>
<br/>
}

@if(!conference.isPublished && (conference.isOwner(account.get) || account.get.isAdmin)) {
<div class="media unpublished">
<div class="pull-left media-left">
Expand Down
4 changes: 4 additions & 0 deletions app/views/template.scala.html
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,10 @@
<link rel="stylesheet" href='@routes.Assets.at("lib/jquery-ui/jquery-ui.min.css")' />
<script type="text/javascript" src='@routes.Assets.at("lib/bootstrap/js/bootstrap.min.js")'></script>

<!-- Print view specific stylesheet -->
<link rel="stylesheet" type="text/css" media="print"
href='@routes.Assets.at("stylesheets/g-node-bootstrap-print.play.css")' />

<!-- project fonts -->
<link href='//fonts.googleapis.com/css?family=EB+Garamond|Open+Sans' rel='stylesheet' type='text/css'>

Expand Down
38 changes: 38 additions & 0 deletions doc/json_examples/locations.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
[
{
"ExtendedData":"",
"name":"Event A",
"description":"Theologicum, Liebermeisterstrasse 12, 72076 Tuebingen",
"point":
{
"lat":48.525742885891795,
"long":9.055126905441284
},
"type":0,
"zoomto":true
},
{
"ExtendedData":"",
"name":"Event B",
"description":"Neckarmueller, Gartenstrasse , 72076 Tuebingen",
"point":
{
"lat":48.51933329151785,
"long":9.058645963668823
},
"type":5,
"zoomto":true
},
{
"ExtendedData":"",
"name":"Event C",
"description":"Rittersaal, Burgsteige 11, 72076 Tuebingen",
"point":
{
"lat":48.51937237686814,
"long":9.050610065460205
},
"type":0,
"zoomto":true
}
]
Loading

0 comments on commit c68083e

Please sign in to comment.