g-node / gca-web Goto Github PK
View Code? Open in Web Editor NEWWeb application part of the G-Node Conference Application Suite
License: BSD 4-Clause "Original" or "Old" License
Web application part of the G-Node Conference Application Suite
License: BSD 4-Clause "Original" or "Old" License
get
only works for published, which is fine, but getOwn
only works for owners and conference owners.
Tests: move to the base class some common staff like getCookie etc.
This is maybe related to #123.
Solution:
Add a field order
to topic.
Maybe it makes sense to subclass Model
from a mapped superclass like OrderedModel
which can be then subclassed by other models such as Author
, Reference
, Topic
and `Affiliation. This way they can share implementations for 'compare' and similar methods.
See also issue #106
Currently getPermissions() checks if the current Account is an owner of the object, which therefore denies access to admins/conference owner. Admins should also be able to see owners though.
Also the logic currently is a bit convoluted, since we fetch the account and the object twice.
Find a good solution how to handle Identity
and Account
nicely together at the service layer level.
Make a concept first and discuss it.
Add javascript routing as described here:
http://java.dzone.com/articles/javascript-routing-play-2-java
On the service layer when validating whether a many-to-one property "contains" some object it's unclear what is the logic stands behind this operation. As a result it fails sometimes.
like
'conference.owners.contains(account)'
works with account freshly requested from the database by ID, but not for some other instances of the same account (see line 177 ConferenceService)
GET api/abstracts/:id/owners
returns 404 error.
{
"error":true,
"getSingleResult() did not retrieve any entities.": "..."
}
Example
http://abstracts.g-node.org/api/abstracts/313ff1ba-62be-45f6-81ff-407159fa8734/owners
The topic selection should work with radio buttons instead of dropdown list.
No topic should be preselected.
Change some labels in the editor:
Write the controller (& routes) for state changes of given abstract, or list of abstracts.
So each figure has a reference to a physical file on the FS.
Maybe making designing it modularly would be good, so we could also use it in an dialogbox/pop-over in the abstract list of the admin.
Define the API of the service layer (e.g. AbstractStore
).
Currently session is 12h and idle is 30 mins. This is maybe a cause for #116.
It would be nice to have up and down buttons for rearranging the authors in the editor.
Implement the following controller methods with unit test
listByConference()
and get()
list()
get()
Description:
The message "Error: Unable to save abstract" occurs when saving the abstract.
Cause:
Most likely this was caused by a session timeout.
Solution:
Increase session lifetime (several hours).
restrict Admin to create conferences
Investigate authentication mechanisms OAuth, Persona and find out how they could be implemented using Play.
Make a simple toy example that shows how contollers can be secured using the chosen technology.
ConferenceService
.ConferenceService
.Create a wiki page containing a draft for the specification of the REST API
Figure name should always be "Figure 1".
From @twachtler's email:
Order of Fields: put Figure after References and Separator to mark end of abstract content:
[...]
References
Figure
-- Separator (thin line?) -- (Alternatively put a thin box around abstract fields from title to figure)
Topic
Presentation Preference
And forbidden while updating abstract data. The editor needs to be made aware of this.
Investigate possibilities for serializing our models to JSON and vice versa.
Write a class util.Serializer
that is able of serializing nested model structures to JSON as specified in the REST API Spec.
Enhance all models with the following features
uuid
to every apply()
method of companion objectsModel
a classAbstractService
Issue:
Currently the message box is not visible when the document is scrolled down.
Solution:
Make the position of the message box absolute.
Add client side abstract validation that warns e.g. about users without affiliations or other missing stuff.
The validation should distinguish between warnings and errors:
Candidate for an error would be a missing abstract title.
DELETE on /api/abstracts/:id
returns 403 error for admins if they don't own the abstract.
{
"error":true,
"No permissions for abstract with uuid = bc7cd336-43cd-4dad-921b-db41ffbeb016":".."
}
This issue may also apply to conferences and other requests that check owners.
Reduce to fields:
text
The reference textlink
Contains a link or a doiOrder alphabetically or introduce a field order
. See also #124.
We should make sure that creation and updating abstracts should not be possible when Conference.isOpen
is not true
.
After a tiny bit of investigation i spotted autocomplete="off"
in various auth-related forms. Will remove them.
Making it modular would be great so we could also use it in a dialogbox/pop-over from the admin abstract list.
The message "OK: abstract saved." does not appear when there is no figure.
The affiliation should have the following fields:
Institution, Department, Address, Country
Solution:
name
field from modelsection
as "Institution" in the UI (in order to avoid schema changes)Configure CI on travis or a similar service.
DELETE on /api/abstracts/:id
returns 404 when the request does not have a valid json body.
It works if the request body contains:
{}
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.