Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

responsible: Marios Meimarisdeck Kostis Pristouris

object_id = {       

type: 'string', //should be 'integer'
maxLength: 24, //does not need to be so long
minLength: 1

}


Contributor = 

propertytyperequiredformat checkingstate of implementationRemarks

user

integeryesisInteger

implemented

user id
countintegeryesisIntegerimplementedcount stores a number of occurrences of this user_id being an author of a deck revision


DataSource = 

propertytyperequiredformat checkingstate of implementationRemarks

type

stringyes

implemented


title

stringyes
implemented
urlstringno
implemented
commentstringno
implemented
authorsstringno
implemented
yearstringno
implemented


User=

propertytyperequiredformat checkingstate of implementationremarks
idintegeryes
ready to merge
joinedstringyesISO dateready to mergethe timestamp the user/group joined the deck editors
usernamestringnosee user service (question)ready to merge

picturestringnosee user service model (question)ready to merge

Group =

propertytyperequiredformat checkingstate of implementationremarks
idintegeryes
ready to merge
joinedstringyesISO dateready to mergethe timestamp the user/group joined the deck editors
namestringnosee user service (question)ready to merge


EditorsRights=

propertytyperequiredstate of implementationremarks
usersarray of Usersyesready to mergelists the users that explicitly are editors of the deck
groupsarray of Groupsyesready to mergelists the groups whose users explicitly can edit the deck


DeckOrigin = SlideOrigin

propertytyperequiredstate of implemenation
idintegeryesimplemented
revisionintegeryesimplemented
titlestringnoimplemented
userintegerno

implemented

kindstringnoimplemented in branch 1319



Deck

...

propertytyperequiredformat checkingstate of implementationRemarks

_id

integer, autoincrementyesisInteger

implemented

for now is 'string' in the code
timestamp
string
dateyesauto generatedimplementedadd 'format: datetime'
userinteger
, autoincrement
yesisIntegerimplemented (passed to service)
kindstring enumeration ('deck', 'slide')yesauto generatedimplemented

editorsEditorsRightsno
implemented
originDeckOriginno
implementedreferences the deck revision this deck was forked from
descriptionstringno
 

implemented
implemented


translationsarray of {language
stringyes implementedtranslation[ object ]no
: 'string', deck_id: object_id}no
implemented in branch 1287language is in format 'de_DE' as we need this to save the new deck
translated_from


{ status: enum('original', 'google', 'revised', null)



has field 'status' with possible values 'original', 'google', 'revised'
not implemented
auto generated
implementedNot in use now, but implemented. Could be used later in front-end
lastUpdatestring, datetimeno

auto
generatednot implemented
-generated on creating new slide revision inside the deck
revisions[ array of DeckRevision ]yesauto generatedimplemented
tags
active
[ array ]
integer
no not implemented     

 

yesif the revision exists, when a new deck is added is set to 1implemented
datasource string no

 if the whole deck is the adaptation of a resource
licensestring enumerationyesis one of enumerables ['CC0', 'CC BY', 'CC BY-SA']implemented should move it from revision, it is the same for the whole deck
contributorsarray of contributorsno
in process


ContentItem

...

propertytyperequiredformat checkingstate of implementation

order

integeryesisInteger

implemented

kindstringyesenum ('deck', 'slide')implemented
refobject:
{id, revision} 
yes
 

implemented
ref.idintegeryesisIntegerimplemented
ref.revisionintegeryesisIntegerimplemented

 


Tag =

propertytyperequiredformat checkingstate of implementation
tagNamestringyesto be decidedimplemented


DeckRevision

...

propertytyperequiredformat checkingstate of implementationremarks

id

integer
objectId, autoincrement (scope limited to parent item)yesisInteger

implemented


titlestringyes
 

implemented
timestamp
string
dateyesauto generatedimplemented
user
integer, autoincrement
objectidyesisIntegerimplemented
parent
integer
object {id: objectId, revision: objectId}noisIntegernot implementedreference to a previous revision/branch etc.
languagestringyes
implemented
popularityintegernoisIntegernot implemented
themeobjectno
 

not implemented
transitionobjectno
 implemented

not implemented
commentstringno
 

implementedthis is a comment of the revision - like in github
abstractstringno
 

implemented
footer
object
stringno
 
not

implemented
licensestring enumerationyesis one of enumerables ['CC0', 'CC BY', 'CC BY-SA']implementedisFeaturedintegernoisInteger

for now it is an object, should be just a string

changed to string

allowMarkdownbooleannoisBooleannot implementedif checked, authors have an additional editor for markdown
isFeaturedbooleannoisBooleannot implemented
priorityintegernoisIntegernot implemented
visibilitybooleannoisBooleannot implemented
languagestringyes implementedtranslationobjectno not implementedtagsarrayno not

translated_from

object {

status: string, enum['original', 'google', 'revised', null],

source: { id: object_id, revision: object_id},

translator: {id: object_id, name: string}

}

no
not implementedMost likely this is redundant - as we store everything in the "origin" field of the deck and we do not allow to have more than one translation in a certain language (we might create a revision instead, but for now it is just impossible - UI does not allow this)
tagsarray of Tagsno
implemented
contentItemsarray of ContentItemsyes
 

implemented
dataSources

array of DataSources

no
 not implemented

 


implementedcollects all data sources from slides
usage

array of objects

{ id: object_id, revision: object_id}


no
implemented


Slide

propertytyperequiredformat checkingstate of implementationremarks

_id

integer
objectId, autoincrementyesisInteger

implemented


timestamp
string
dateyesauto generated
implemented
should be format datetime
user
integer, autoincrement
objectIdyesisIntegerimplemented (passed to service)
kindstring enumeration ('deck', 'slide')yesauto generatedimplementeddescriptionstringno implementedlanguagestringyes implementeddeckintegeryesisInteger

originSlideOriginno


implementedreferences the slide revision this slide was translated from (for keeping track of the translation links)
translated_from

object {

status: string, enum['original', 'google', 'revised', null],

source: { id: object_id, revision: object_id},

translator: {id: object_id, name: string}

}

no
not implementedmost likely a redundant field (except of status, which we might need)
translationsarray of {language: 'string', slide_id: object_id}no
implementedlanguage is in a 5-signs format
descriptionstringno
implemented
contributors[array of contributor ]no
 

not implemented
revisions[ array of SlideRevisions ]yesauto generatedimplemented
tags[ array ]no 

activeobjectId (integer)noif the revision exists, when a new deck is added is set to 1not implemented

is this really needed?

active shows on content items of resp.parent

datasourcestringno
not implemented
licensestring enumerationyesis one of enumerables ['CC0', 'CC BY', 'CC BY-SA']implementedshould move it from slide_revision moved
lastUpdatestring, datetimenoautogenerated on creation of new revisionnot implemented


slideRevision SlideRevision

...

propertytyperequiredformat checkingstate of implementationremarks

id

integer, autoincrementyesisInteger

implemented


titlestringyes
 

implemented
timestamp
string
dateyesauto generatedimplemented
contentstringyes?? only allowed tagsimplemented
markdownstringno?? only allowed tagsnot implemented yet
userinteger, autoincrementyesisIntegerimplemented
parent
integer

object { id: objectId, revision: objectId }

no
isInteger

not implementedkeeps link to a previsous revision
speakerNotesstringno
 

implemented
popularityintegernoisIntegernot implemented
commentstringno
 

implementedcomment of revision
tagsarray of Tagsno
implemented
note

media
string
arrayno
 not implementedlicensestring enumerationyesis one of enumerables ['CC0', 'CC BY', 'CC BY-SA']implementedtranslationobjectno not implementedtagsarrayno not implementedmediaarrayno not implementeddataSourcesarrayno not implemented

 


not implemented
dataSourcesarray of DataSourcesno
implemented
languagestringyes
implemented
usage

array of objects

{ id: object_id, revision: object_id}
no
not implemented
ltiURLstringno
being implemented
ltiKeystringno
being implemented
ltiWidthstringno
being implemented
ltiHeightstringno
being implemented
ltiZIndexstringno
being implemented