Collection Editor
Collection Editor which allows user to create a group of contents.
It can be (ECML, Pdf, HTML, H5P, Epub, Youtube, Mp4/Webm)
How to configure
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',
navigateArrows: false,
fullscreen: false,
openFullscreen: true,
closeOnEscape: false,
overlayClose: false,
overlay: false,
overlayColor: '',
history: false,
onClosing: () => {
this._zone.run(() => {
this.closeModal();
});
}
});
How to setup sunbird-collection-editor in local
- 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 run bower install
to install bower components- Create a symlink to 'sunbird-content-plugins' (
ln -s ../sunbird-content-plugins plugins
)(Linx, mac)
for windows: use mklink
ChangeLogs
For changes logs please refer here
For sunbird-collection-editor demo please visit here