Giter Club home page Giter Club logo

sunbird-content-editor's Introduction

Codacy Badge Build Status npm version

Content Editor

Sunbird's in-built content editor tool allows you to create Ekstep Content Markup Language(ECML) type of content.

How to Configure the Sunbird Content Editor

Download the content editor using the following command:

Run npm i @project-sunbird/content-editor

Required configuration

	
window.context = {
{
  "user": {
    "id": " ",
    "name": "Admin",
    "orgIds": [  ],
    "organisations": {}
  },
  "sid": "xxx",
  "contentId": "do_xxx",
  "pdata": {
    "id": "",
    "ver": "1.11.0",
    "pid": ""
  },
  "tags": [],
  "channel": "xxx",
  "framework": "NCFCOPY",
  "ownershipType": [
    "createdBy",
    "createdFor"
  ],
  "uid": "xxx",
  "etags": {
    "app": [],
    "partner": [],
    "dims": []
  }
};
window.config = {
  "baseURL": "",
  "apislug": "/action",
  "build_number": "1.11.0.1bb2ae8",
  "pluginRepo": "/content-plugins",
  "aws_s3_urls": [],
  "plugins": [
    {
      "id": "org.ekstep.sunbirdcommonheader",
      "ver": "1.6",
      "type": "plugin"
    }
  ],
  "corePluginsPackaged": true,
  "dispatcher": "local",
  "localDispatcherEndpoint": "",
  "previewURL": "/content/preview/preview.html",
  "modalId": "contentEditor",
  "alertOnUnload": true,
  "headerLogo": "https://dev.open-sunbird.org/assets/images/sunbird_logo.png",
  "showHelp": false,
  "previewConfig": {},
  "pluginsRepoUrl": " ",
  "enableTelemetryValidation": false
}
Property Name Description Property Type Default Value Example
user The user field contains four objects - user name, user ID, organization IDs and organization names. object NA {"id":"95e4052d-abe8-477d-aebd-ad8e6de4bfc8","name":"Reviewer User","orgIds":["012363943890170242","ORG_001"],"organisations":{"ORG_001":"Sunbird","012363943890170242":"QA ORG"}}
sid The string value that identifies the session string NA IYNPDoYY5aoWbv1Yre4Nfl_J8tResl_S
contentId The string value that identifies the content being created or modified string NA do_112699569941724161115
pdata The producer information. It contains three objects - producer ID, build version and the component ID object NA {"id":"dev.sunbird.portal","ver":"1.14.0","pid":"sunbird-portal.contenteditor"}
tags Encrypted dimension tags passed by respective channels array NA ["012363943890170242", "ORG_001"]
channel Channel that produces the event string NA b00bc992eg65f1a8s8fg3291e20efc8d
framework The content framework used to create the content NA NCF, NCERT
baseURL The name of the host URL string NA
corePluginsPackaged The configuration that enables the content editor to load plugins from a packaged script rather than individually boolean true true
pluginRepo The location from which plugins are loaded string /plugins /plugins/v1/search
dispatcher The location where telemetry is logged string console console, piwik, library
keywordsLimit The maximum size for the response keywords number 500 100
plugins An array for the plugins array NA ex:[{id:"org.sunbird.header",ver:"1.0",type:"plugin"}]
previewURL The path of the content player previewer string NA
showHelp Used to show the help icon in the editor boolean false
previewConfig The configurations related to the content player preview. For details, refer here string false
enableTelemetryValidation Used to validate the telemetry events that are generated in the editors boolean false
aws_s3_urls If any content asset refers to any aws s3 url, configure the URLs here. The editor replaces those paths with baseURL + assetReverseProxyUrl array NA "https://s3.ap-south-1.amazonaws.com/ekstep-public-dev/"
  openContentEditor() {
    jQuery.fn.iziModal = iziModal;
    jQuery('#content-editor').iziModal({
      title: '',
      iframe: true,
      iframeURL: 'url', // content-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();
        });
      }
    });

How to Setup Sunbird Content Editor in your Local Machine

  1. Clone the sunbird-content-editor repo from here
  2. Clone the sunbird-content-plugins repo from here
  3. Go to the root directory sunbird-content-editor.
  4. Run npm install to install node modules.
  5. cd app and run bower install to install bower components
  6. Create a symlink to 'sunbird-content-plugins' (ln -s ../sunbird-content-plugins plugins)(Linux, mac) for windows: use mklink
  7. Run node app
  8. Open Chrome and visit this link: http://localhost:3000/app?contentId={{content_id}}
    content_id: Live/Draft content id created on Sunbird portal

sample link: http://localhost:3000/app?contentId=do_1124674880571

Reference links

How to setup Sunbird backend: http://docs.sunbird.org/latest/developer-docs/installation/install_sbbackend/

How to setup Editors in Sunbird portal: http://docs.sunbird.org/latest/developer-docs/installation/install_sbportal/

Sunbird API Reference: http://docs.sunbird.org/latest/apis/

ChangeLogs

For changes logs,refer here

License

This project is licensed under the MIT License - see the LICENSE file for details

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

Any Issues?

We have an open and active issue tracker. Please report any issues.

For sunbird-content-editor demo, refer here

sunbird-content-editor's People

Contributors

pallakartheekreddy avatar manjudr avatar cksachdev avatar santhoshvasabhaktula avatar anshugwl avatar gouravmore avatar venkateshwarans avatar vinukumar-vs avatar sunilpes avatar anshunarayan avatar itsvick avatar bhabaranjan19966 avatar archanabas avatar sivashanmugam-funtoot avatar prajwal88 avatar rajeshcompass avatar revathip avatar shashipppp avatar loganathan1989 avatar akshayarathinavel avatar abha01singh avatar manojchandrashekar avatar sunitashelar avatar swati2093 avatar beepdot avatar sferoz avatar ruchikanagarkar avatar ahghatol avatar madhucr avatar mamthak avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.