Collection Editor which allows user to create a group of contents. It can be (ECML, Pdf, HTML, H5P, Epub, Youtube, Mp4/Webm)
Download collection editor
Run npm i @project-sunbird/collection-editor
Required configuration
Lesson Plan
[{"type":"TextBook","label":"Textbook","isRoot":true,"editable":true,"childrenTypes":["TextBookUnit"],"addType":"Editor","iconClass":"fa fa-book"},{"type":"TextBookUnit","label":"Textbook Unit","isRoot":false,"editable":true,"childrenTypes":["TextBookUnit","Collection","Content"],"addType":"Editor","iconClass":"fa fa-folder-o"},{"type":"Collection","label":"Collection","isRoot":false,"editable":false,"childrenTypes":[],"addType":"Browser","iconClass":"fa fa-file-o"},{"type":"Content","label":"Content","isRoot":false,"editable":false,"childrenTypes":[],"addType":"Browser","iconClass":"fa fa-file-o"}]
Textbook
[{"type":"TextBook","label":"Textbook","isRoot":true,"editable":true,"childrenTypes":["TextBookUnit"],"addType":"Editor","iconClass":"fa fa-book"},{"type":"TextBookUnit","label":"Textbook Unit","isRoot":false,"editable":true,"childrenTypes":["TextBookUnit","Collection","Content"],"addType":"Editor","iconClass":"fa fa-folder-o"},{"type":"Collection","label":"Collection","isRoot":false,"editable":false,"childrenTypes":[],"addType":"Browser","iconClass":"fa fa-file-o"},{"type":"Content","label":"Content","isRoot":false,"editable":false,"childrenTypes":[],"addType":"Browser","iconClass":"fa fa-file-o"}]
Course
[{"type":"TextBook","label":"Textbook","isRoot":true,"editable":true,"childrenTypes":["TextBookUnit"],"addType":"Editor","iconClass":"fa fa-book"},{"type":"TextBookUnit","label":"Textbook Unit","isRoot":false,"editable":true,"childrenTypes":["TextBookUnit","Collection","Content"],"addType":"Editor","iconClass":"fa fa-folder-o"},{"type":"Collection","label":"Collection","isRoot":false,"editable":false,"childrenTypes":[],"addType":"Browser","iconClass":"fa fa-file-o"},{"type":"Content","label":"Content","isRoot":false,"editable":false,"childrenTypes":[],"addType":"Browser","iconClass":"fa fa-file-o"}]
Collection
[{"type":"Collection","label":"Collection","isRoot":true,"editable":true,"childrenTypes":["Collection","Resource"],"addType":"Editor","iconClass":"fa fa-folder-o"},{"type":"Collection","label":"Collection","isRoot":false,"editable":false,"childrenTypes":[],"addType":"Browser","iconClass":"fa fa-file-o"},{"type":"Resource","label":"Resource","isRoot":false,"editable":false,"childrenTypes":[],"addType":"Browser","iconClass":"fa fa-file-o"}]
window.context = {
user: {
id: "",
name: "",
},
sid: "",
contentId: "do_4325354353975347",
pdata: {
id: "",
ver: "build_number",
pid: 'sunbird-portal'
},
tags: [],
channel: "",
framework: "",
env: ""
};
window.config = {
baseURL: "",
corePluginsPackaged: true,
pluginRepo: "/plugins",
dispatcher: 'console',
apislug: '/action',
nodeDisplayCriterion: {
contentType: ['TextBook', 'TextBookUnit']
},
keywordsLimit: 500,
plugins:[],
editorConfig: {
"mode": "Edit",
"contentStatus": "draft",
"rules": {
"levels": 3,
"objectTypes": course/textbook/collection
},
"defaultTemplate": {}
}
}
Property Name | Description | Default Value |
---|---|---|
user |
It is a object , Which should contain the user details(userId, name) |
NA |
sid |
It is a string , Session identifier |
NA |
contentId |
It is a string , content identifier |
NA |
pdata |
It is a object , producer information.It can have producer version, producer Id |
NA |
tags |
It is a array , Encrypted dimension tags passed by respective channels |
NA |
channel |
It is a string , Channel which has produced the event |
NA |
framework |
It is a string , example:NCF, NCERT |
NA |
baseURL |
It is a string , host url |
NA |
corePluginsPackaged |
It is a boolean , Which enables the collection-editor to load the plugins from packaged script rather than individual |
true |
pluginRepo |
It is a string , From which location plugins should load |
/plugins |
dispatcher |
It is a string ,Where the telemetry should log ex(console, piwik, library) |
console |
keywordsLimit |
It is a number , Max response keyword size |
500 |
plugins |
It is a array , Array of plugins ex:[{id:"org.sunbird.header",ver:"1.0",type:"plugin"}] |
NA |
editorConfig |
It is a object , editor config related to tree |
NA |
mode |
It is a string , View mode of the collection editor, either it can be read/edit |
edit |
contentStatus |
It is a string , content status |
draft |
rules |
It is a object , which defines the rules for the collection-tree |
NA |
levels |
It is a number , Which defines the Max level of nodes can be added to tree |
3 |
objectTypes |
It is a object , It can be textbook, course, collection, lessonplan |
NA |
openCollectionEditor() {
jQuery.fn.iziModal = iziModal;
jQuery('#collectionEditor').iziModal({
title: '',
iframe: true,
iframeURL: 'url', // collection-editor node_moduels index.html path
navigateArrows: false,
fullscreen: false,
openFullscreen: true,
closeOnEscape: false,
overlayClose: false,
overlay: false,
overlayColor: '',
history: false,
onClosing: () => {
this._zone.run(() => {
this.closeModal();
});
}
});
- Clone the sunbird-collection-editor repo from here
- Clone the sunbird-content-plugins repo from here
- Go to the root directory sunbird-collection-editor.
- Run
npm install
to install node moduels. cd app
and runbower install
to install bower components- Create a symlink to 'sunbird-content-plugins' (
ln -s ../sunbird-content-plugins plugins
)(Linx, mac) for windows: usemklink
For changes logs please refer here
For sunbird-collection-editor demo please visit here
This project is licensed under the MIT License - see the LICENSE file for details
We use SemVer for versioning. For the versions available, see the tags on this repository.
We have an open and active issue tracker. Please report any issues.