version 1.3 beta

Unofficial support for TinyMCE in SPINE

SPINE does not include one of those fancy DHTML textareas by default although tweaks have been added to make it quite easy to include one. TinyMCE is the only editor tested with SPINE.
  1. Get the latest version of TinyMCE (tested version: 2.0.1)
  2. Get the latest version of the codeprotect plugin.
  3. Unzip the TinyMCE archive
  4. Copy the jscripts directory on your webspace (e.g /var/www/jscripts/)
  5. Unzip the CodeProtect archive
  6. Copy the codeprotect subdirectory into the plugins directory of the TinyMCE subdirectory on your webspace (e.g /var/www/jscripts/tiny_mce/plugins)
  7. Log into SPINE as administrator
  8. Make a copy of .content-admin to .content-admin.orig
  9. Make a copy of .content-admin to .content-admin.tinymce
  10. Create a tinymce_init.js file in the jscripts/tiny_mce directory and define the following content:
            tinyMCE.init({
                    mode : "exact",
                    elements : "body",
                    theme : "advanced",
                    plugins : "table,save,advhr,advimage,advlink,,insertdatetime,flash,searchreplace,contextmenu,paste,directionality,codeprotect",
                    theme_advanced_buttons1_add : "fontselect,fontsizeselect",
                    theme_advanced_buttons2_add : "separator,insertdate,inserttime,separator,forecolor,backcolor",
                    theme_advanced_buttons2_add_before: "cut,copy,paste,separator,search,replace,separator",
                    theme_advanced_buttons3_add_before : "tablecontrols,separator",
                    theme_advanced_buttons3_add : "flash,advhr,separator,ltr,rtl",
                    theme_advanced_toolbar_location : "top",
                    theme_advanced_toolbar_align : "left",
                    theme_advanced_statusbar_location : "bottom",
                    content_css : "example_word.css",
                    plugi2n_insertdate_dateFormat : "%Y-%m-%d",
                    plugi2n_insertdate_timeFormat : "%H:%M:%S",
                    extended_valid_elements : "hr[class|width|size|noshade],font[face|size|color|style],span[class|align|style]",
                    external_link_list_url : "example_link_list.js",
                    external_image_list_url : "example_image_list.js",
                    flash_external_list_url : "example_flash_list.js",
                    file_browser_callback : "fileBrowserCallBack",
                    paste_use_dialog : false,
                    theme_advanced_resizing : true,
                    theme_advanced_resize_horizontal : false,
                    theme_advanced_link_targets : "_something=My somthing;_something2=My somthing2;_something3=My somthing3;",
                    paste_auto_cleanup_on_paste : true,
                    paste_convert_headers_to_strong : false,
                    paste_strip_class_attributes : "all"
            });
    
            function fileBrowserCallBack(field_name, url, type, win) {
                    // This is where you insert your custom filebrowser logic
                    alert("Filebrowser callback: field_name: " + field_name + ", url: " + url + ", type: " + type);
    
                    // Insert new URL, this would normaly be done in a popup
                    win.document.forms[0].elements[field_name].value = "someurl.htm";
            }
    
  11. Important: To edit the .admin files, change the editor back to the normal textarea (backing up the editor version of .admin-content and copying the original editor in place).