Jump to:

4938 Posts in 16827 Topics by 1490 members

Installing SilverStripe

SilverStripe Forums » Installing SilverStripe » Content editor not displayed (ss 3.0)

Getting SilverStripe up and running on your computer and on your web server.

Moderators: martimiz, Sean, biapar, Willr, Ingo, swaiba, simon_w

Page: 1
Go to End
Author Topic: 1089 Views
  • odjau
    Avatar
    Community Member
    1 Post

    Content editor not displayed (ss 3.0) Link to this post

    Hello everybody,
    I've been testing ss 3.0 for a few days. I like the simplicity of the back office but I'm currently having 2 blocking issues :

    1 - content editor doesn't appear when I want to edit a page
    2 - I'm not able to check permissions for new users

    This is a fresh install of ss (no additional module, no code modification).

    Does anybody have faced these issue before ? What can I do in order to find out the origin of these issue ?

    Thank you for your help.

    odjau

  • snel
    Avatar
    Community Member
    10 Posts

    Re: Content editor not displayed (ss 3.0) Link to this post

    I'm not sure, if this is related. I have the following issue using SS 3.0.1:
    When logging in, everything seems normal. Page-editor is displayed. As soon as I select another menu on the left (Security, Settings, Help), the right part of the admin-interface is cleared but not updated with the new content. When looking at the JavaScript Console, Error in jQuery is shown:

    Uncaught Error: NOT_FOUND_ERR: DOM Exception 8 jquery.js:6497
    jQuery.extend.clean jquery.js:6497
    jQuery.buildFragment jquery.js:6232
    jQuery.fn.extend.domManip jquery.js:6034
    $.domManip jquery.entwine-dist.js:1234
    jQuery.fn.extend.before jquery.js:5862
    jQuery.fn.extend.replaceWith jquery.js:5990
    jQuery.extend.each jquery.js:660
    jQuery.fn.jQuery.each jquery.js:271
    jQuery.fn.extend.replaceWith jquery.js:5983
    (anonymous function) LeftAndMain.js:396
    jQuery.extend.each jquery.js:654
    $.entwine.$.entwine.handleAjaxResponse LeftAndMain.js:357
    $.entwine.Namespace.Base.extend.one.one jquery.entwine-dist.js:1023
    $.entwine.Namespace.Base.extend.build_proxy.prxy jquery.entwine-dist.js:1048
    $.entwine.$.entwine.handleStateChange.$.ajax.success LeftAndMain.js:317
    jQuery.Callbacks.fire jquery.js:1075
    jQuery.Callbacks.self.fireWith jquery.js:1193
    $.ajaxSetup.beforeSend.jqXHR.success jquery.ondemand.js:150
    jQuery.Callbacks.fire jquery.js:1075
    jQuery.Callbacks.self.add jquery.js:1110
    $.ajaxSetup.beforeSend.jqXHR.success jquery.ondemand.js:149
    jQuery.Callbacks.fire jquery.js:1075
    jQuery.Callbacks.self.fireWith jquery.js:1193
    done jquery.js:7538
    jQuery.ajaxTransport.send.callback jquery.js:8324

    Workaround is to reload the whole page which is annoying.

    This behaviour was seen in
    - Chrome (Version 21.0.1180.89)
    - Safari 6.0 (8536.25)
    - FireFox 11.0
    all on Mac OSX Mountain Lion 10.8.1

  • snel
    Avatar
    Community Member
    10 Posts

    Re: Content editor not displayed (ss 3.0) Link to this post

    Just upgaded Firefox to Version 15.
    Attached screenshot shows JavaScript Error

    Found, that my issue is already adressed in this post: http://www.silverstripe.org/general-questions/show/20474

  • USvER
    Avatar
    Community Member
    6 Posts

    Re: Content editor not displayed (ss 3.0) Link to this post

    I got the same issue becouse of SS was not installed properly. Try to reinstall. Make sure you have no warnings. Specialy with mod_rewrite(preaty url).

  • snel
    Avatar
    Community Member
    10 Posts

    Re: Content editor not displayed (ss 3.0) Link to this post

    @USvER, thanks you for your advice. I just made a fresh install of ss 3.0.1 (I've attached screenshot of the server requirements-test).

    The issue persists.

    I also added following entry in _config.php
    SS_Log::add_writer(new SS_LogFileWriter($_SERVER['DOCUMENT_ROOT'] . '/error_log.txt'), SS_Log::NOTICE, "<=");
    but nothing gets logged so far.

    Apache access-log gets entries with http-code 200 every time a menu is selected

    Might be important to know:
    The problem only is seen on Mac OSX 10.8.1 environment. The Windows 7 installation made on another development machine is not affected.

  • poblom
    Avatar
    Community Member
    25 Posts

    Re: Content editor not displayed (ss 3.0) Link to this post

    I have the same problem with server running under OS X 10.6.8! Could it be a server or php config issue?? Where to look??

    Browsing ss3.demo.silverstripe.org is no problem so not a browser issue.

  • Alex Albino
    Avatar
    Community Member
    1 Post

    Re: Content editor not displayed (ss 3.0) Link to this post

    Possible Fix:

    I've encountered this before. I managed to follow the stack trace back to a call of jQuery's .replaceWith() method inside of a framework file:

    framework/admin/javascript/LeftAndMain.js

    ... look for the "handleAjaxResponse" closure, around line 433.

    The line that reads as follows:

    // Replace panel completely (we need to override the "layout" attribute, so can't replace the child instead)
    contentEl.replaceWith(newContentEl);

    ...is the culprit (in my case). The jQuery .replaceWith() function expects one of three parameters:

    - An HTML string
    - A jQuery wrapped element.
    - A raw HTML DOM node.

    ...I was getting a jQuery wrapped object, but the object inside WAS NOT AN ELEMENT. It was a JSON object, which had a property named "CurrentForm" that contained an HTML string representation of the form. (Thanks, inventor of console.log()!)

    I changed the code to the following:

    // Replace panel completely (we need to override the "layout" attribute, so can't replace the child instead)
    //contentEl.replaceWith(newContentEl); // ...original line of code

    if (newContentEl[0] && newContentEl[0].CurrentForm) // Check to see if this is some kind of special jQuery wrapped object.
    {
    contentEl.replaceWith( newContentEl[0].CurrentForm ); // Grab that HTML string that's inside the object, use it instead.
    } else {
    // handle things as usual...
    contentEl.replaceWith(newContentEl);
    }

    ... Hope this helps.
    - Alex Albino

    UPDATE: It turns out, this issue is a little higher up the stack. IGNORE THE PREVIOUS EDITS. JUST CHANGE THE FOLLOWING!!!

    In the 'handleAjaxResponse' handler in framework/admin/javascript/LeftAndMain.js, change:

    if(xhr.getResponseHeader('Content-Type') == 'text/json') {

    ...to

    if(xhr.getResponseHeader('Content-Type').match( /^text\/json/, 'text/json' ) ) {

    ...and see if that works. It turns out that if you have the PHP.ini directive 'default_charset' set to something, your server will NOT reply with 'application/json' in the xhr header, but instead respond with 'application/json;charset=XXX' ...where XXX is the character set you have on your server. THEREFORE, the if-statement will fail when using the == operator ...we should instead use a regex match, as per the updated code snippet above.

  • prwodux
    Avatar
    Community Member
    7 Posts

    Re: Content editor not displayed (ss 3.0) Link to this post

    It didn't worked for me. Any other fix for this?

    1089 Views
Page: 1
Go to Top

Want to know more about the company that brought you SilverStripe? Then check out SilverStripe.com

Comments on this website? Please give feedback.