Unobtrusive reminder about unsaved changes in document.
[redakcja.git] / redakcja / static / js / wiki / view_editor_source.js
index a0a2e69..8fb9358 100644 (file)
@@ -9,8 +9,8 @@
 
                        this.codemirror = CodeMirror.fromTextArea('codemirror_placeholder', {
                                parserfile: 'parsexml.js',
 
                        this.codemirror = CodeMirror.fromTextArea('codemirror_placeholder', {
                                parserfile: 'parsexml.js',
-                               path: STATIC_URL + "js/lib/codemirror/",
-                               stylesheet: STATIC_URL + "css/xmlcolors_15032010.css",
+                               path: STATIC_URL + "js/lib/codemirror-0.8/",
+                               stylesheet: STATIC_URL + "css/xmlcolors_20100906.css",
                                parserConfig: {
                                        useHTMLKludges: false
                                },
                                parserConfig: {
                                        useHTMLKludges: false
                                },
@@ -18,6 +18,7 @@
                                textWrapping: true,
                                lineNumbers: true,
                                width: "100%",
                                textWrapping: true,
                                lineNumbers: true,
                                width: "100%",
+                               height: "100%",
                                tabMode: 'spaces',
                                indentUnit: 0,
                                readOnly: CurrentDocument.readonly || false,
                                tabMode: 'spaces',
                                indentUnit: 0,
                                readOnly: CurrentDocument.readonly || false,
                                                        $(event.button).trigger('click');
                                                        event.button = null;
                                                }
                                                        $(event.button).trigger('click');
                                                        event.button = null;
                                                }
-                                       }, function(event) {
-                                               /* CM reports characters 2 times - as event and as code */
-                                               if((typeof event) != "object")
-                                                       return false;
-
+                                       }, function(keycode, event) {
                                                if(!event.altKey)
                                                        return false;
 
                                                if(!event.altKey)
                                                        return false;
 
-                                               var c = String.fromCharCode(event.keyCode).toLowerCase();
+                                               var c = String.fromCharCode(keycode).toLowerCase();
                                                var button = $("#source-editor button[data-ui-accesskey='"+c+"']");
                                                if(button.length == 0)
                                                        return false;
                                                var button = $("#source-editor button[data-ui-accesskey='"+c+"']");
                                                if(button.length == 0)
                                                        return false;
                                                return true;
                                        });
 
                                                return true;
                                        });
 
-                                       $('#source-editor .toolbar button').click(function(event){
-                                               event.preventDefault();
-                                               var params = eval("(" + $(this).attr('data-ui-action-params') + ")");
-                                               scriptletCenter.callInteractive({
-                                                       action: $(this).attr('data-ui-action'),
-                                                       context: self.codemirror,
-                                                       extra: params
-                                               });
+                                       $('#source-editor .toolbar').toolbarize({
+                                           actionContext: self.codemirror
                                        });
 
                                        });
 
-                                       $('.toolbar select').change(function(event){
-                                               var slug = $(this).val();
-
-                                               $('.toolbar-buttons-container').hide().filter('[data-group=' + slug + ']').show();
-                                               $(window).resize();
-                                       });
-
-                                       $('.toolbar-buttons-container').hide();
-                                       $('.toolbar select').change();
-
                                        console.log("Initialized CodeMirror");
 
                                        // textarea is no longer needed
                                        console.log("Initialized CodeMirror");
 
                                        // textarea is no longer needed
                console.log('Exiting', this.doc);
                this.doc.setText(this.codemirror.getCode());
 
                console.log('Exiting', this.doc);
                this.doc.setText(this.codemirror.getCode());
 
+        if ($('.vsplitbar').hasClass('active') && $('#SearchPerspective').hasClass('active')) {
+            $.wiki.switchToTab('#ScanGalleryPerspective');
+        }
+
                if(success) success();
        }
 
                if(success) success();
        }