8             <script src="http://cdn.ravenjs.com/1.1.7/jquery,native/raven.min.js"></script>
 
  10                 Raven.config('{{RAVEN_CONFIG.SENTRY_URL}}', {{RAVEN_CONFIG.SETTINGS|default:'{}'}}).install();
 
  11                 {% if request.user.is_authenticated %}
 
  13                         name: '{{request.user.username}}',
 
  14                         email: '{{request.user.email}}',
 
  15                         id: {{request.user.id}}
 
  20         <script src="{% url 'django.views.i18n.javascript_catalog' %}"></script>
 
  23             <link rel="stylesheet/less" type="text/css" href="{% static 'wiki/editor/src/editor/styles/main.less' %}"/>
 
  24             <script type="text/javascript">less = {relativeUrls: true};</script>
 
  25             <script src="{% static 'wiki/editor/libs/less-1.3.3.min.js' %}"></script>
 
  26             <script src="{% static 'wiki/editor/libs/require.js' %}" data-main="{% static 'wiki/editor/src/editor/entrypoint.js' %}" ></script>
 
  28             <link href="{% static 'wiki/build/rng.css' %}" rel="stylesheet">
 
  29             <script src="{% static 'wiki/build/rng.js' %}"></script>
 
  33         <script type="text/javascript">
 
  36                 rootSelector: '#editor_root',
 
  37                 jsonifySentPayload: false,
 
  39                 {% if request.user.is_authenticated %}
 
  41                     name: '{{request.user.username}}',
 
  42                     email: '{{request.user.email}}',
 
  43                     id: {{request.user.id}}
 
  63                             handlers: ['console', 'sentry']
 
  68                 documentSummaryView: {
 
  69                     title: '{% trans 'Informations about lesson' %}',
 
  71                         {name: 'version', label: '{% trans 'Version' %}'},
 
  72                         {name: 'stage', label: '{% trans 'Stage' %}'},
 
  73                         {name: 'assignment', label: '{% trans 'Assignment' %}'},
 
  79                         templates: {{serialized_templates|safe}},
 
  81                             {key: 'audience', values: [
 
  82                                 '3-6', '6-9', '9-12', '12-18', '18+', 'Adults'
 
  89                             {key: 'relation.coverimage.url', isFile: true}
 
  95                     ['core.undo', 'core.redo'],
 
  98                     {actionName: 'core.switchToHeader'},
 
  99                     {actionName: 'core.switchToParagraph'},
 
 100                     {actionName: 'core.switchToImage'},
 
 101                     'core.toggleBulletList', 'core.toggleEnumList'
 
 105                         {actionName: 'core.emphasis', actionConfig: {label: 'emphasis'}},
 
 106                         {actionName: 'core.cite', actionConfig: {label: 'cite'}},
 
 107                         {actionName: 'core.link'}
 
 112                     ['core.showMetadataEditor'],
 
 114                         'core.insertOrderExercise',
 
 115                         'core.insertChoiceSingleExercise',
 
 116                         'core.insertChoiceMultiExercise',
 
 117                         'core.insertChoiceTrueOrFalseExercise',
 
 118                         'core.insertGapsExercise',
 
 119                         'core.insertReplaceExercise'
 
 123                 documentSaveUrl: function(id) { return '/editor/text/' + id + '/'; },
 
 124                 documentHistoryUrl: function(id) { return '/editor/history/' + id + '/'},
 
 125                 documentDiffUrl: function(id) { return '/editor/diff/' + id + '/'; },
 
 126                 documentRestoreUrl: function(id) { return '/editor/revert/' + id + '/'},
 
 127                 documentPublishUrl: '{% url "catalogue_publish" pk %}',
 
 129                 documentScheduleUrl: '{% url "catalogue_book_schedule" pk %}',
 
 130                 documentForkUrl: '{% url "catalogue_fork" pk %}',
 
 131                 documentGalleryUrl: '{% url "catalogue_book_gallery" pk %}',
 
 133                 documentAttachmentUrl: function(attachmentName) {
 
 134                     return '{{MEDIA_URL}}uploads/{{ pk }}/' + attachmentName;
 
 136                 documentUrl: function(id, version) {
 
 137                     var url = '{% url 'wiki_editor' pk %}'
 
 139                         url = url + '?version=' + version;
 
 143                 documentPreviewUrl: function(id) { return '/documents/{{ pk }}/rev' + id + '/preview/' },
 
 144                 documentPreviewMainUrl: function(id) { return '/documents/{{ pk }}/preview/' },
 
 148                         {label: '{{forms.text_save.comment.label}}', name: '{{forms.text_save.comment.html_name}}', type: 'textarea'},
 
 149                         {label: '{{forms.text_save.stage.label}}', name: '{{forms.text_save.stage.html_name}}', type: 'select', options: [
 
 150                             {% for value, text in forms.text_save.stage.field.choices %}
 
 151                                 {value:'{{value|default:''}}', text:'{{text}}'} {% if not forloop.last %}, {% endif %}
 
 153                         ], description: '{{forms.text_save.stage.help_text}}'},
 
 155                     content_field_name: '{{forms.text_save.text.html_name}}',
 
 156                     version_field_name: '{{forms.text_save.parent_revision.html_name}}'
 
 159                 documentRestoreForm: {
 
 161                         {label: '{{forms.text_revert.comment.label}}', name: '{{forms.text_revert.comment.html_name}}', type: 'textarea'}
 
 163                     version_field_name: '{{forms.text_revert.revision.html_name}}'
 
 166                 documentPublishForm: {
 
 169                     revision_field_name: '{{forms.text_publish.revision.html_name}}'
 
 175                 config.documentSaveForm.fields.push(
 
 176                     {label: '{{forms.text_save.publishable.label}}', name: '{{forms.text_save.publishable.html_name}}', type: 'checkbox', description: '{{forms.text_save.publishable.help_text}}'}
 
 180             {% if not request.user.is_authenticated %}
 
 181                 config.documentSaveForm.fields.push(
 
 182                     {label: '{{forms.text_save.author_name.label}}', name: '{{forms.text_save.author_name.html_name}}', type: 'input', description: '{{forms.text_save.author_name.help_text}}'},
 
 183                     {label: '{{forms.text_save.author_email.label}}', name: '{{forms.text_save.author_email.html_name}}', type: 'input', description: '{{forms.text_save.author_email.help_text}}'}
 
 186                 config.documentRestoreForm.fields.push(
 
 187                     {label: '{{forms.text_revert.author_name.label}}', name: '{{forms.text_revert.author_name.html_name}}', type: 'input', description: '{{forms.text_revert.author_name.help_text}}'},
 
 188                     {label: '{{forms.text_revert.author_email.label}}', name: '{{forms.text_revert.author_email.html_name}}', type: 'input', description: '{{forms.text_revert.author_email.help_text}}'}
 
 193             var data = {{serialized_document_data}};
 
 196             var editor_init = function(Editor) {            
 
 197                 Editor.setBootstrappedData('data', data);
 
 198                 Editor.start(config);
 
 205         <div id="editor_root"></div>