ccm-toolbar showing even when signed out

Permalink 1 user found helpful
I am seeing only the white background of the ccm-toolbar even when I'm not logged into C5. This seems like a conflict with C5 and an add-on or something.

The error I see in the console is as follows:

missing ; before statement
http://balletroyalemn.com/index.php/tools/required/page_controls_menu_js?cID=160&cvID=&btask=&ts=1334863492
Line 19

sniggitysnax
 
sniggitysnax replied on at Permalink Reply
sniggitysnax
Any ideas here? I am working with an altered host file, so you can't see the site, but it's simply the toolbar without any actual buttons or anything on it that is constantly showing up at the top of the site. I can sign in and the toolbar works as it should, but upon being signed out, the toolbar is still there but doesn't function as anything more than a white bar taking up space and affecting my content.

Any ideas would be greatly appreciated.
JohntheFish replied on at Permalink Reply
JohntheFish
That is typically the look of you being signed in, but either a php error or a script error blocks the toolbar from rendering fully.

Have a look at the php error log. Have a look at the Developer Console for script errors.

(EDIT - just re-read your original post)
That file is unlikely to be faulty, but maybe the script file loaded immediately before it is.

The fact that C5 is attempting to load the file suggests it thinks you are still logged in.
sniggitysnax replied on at Permalink Reply
sniggitysnax
I'm perusing through the concrete directory and am unsure which file is loaded before this one. In page_controls_menu_js.php, I am finding where the error is generated but unsure as to how or why the PHP is being parsed and it indeed thinks that it's logged in... Strange

Here's what I'm seeing
if ($dh->canRead() || $cp->canWrite() || $cp->canAddSubContent() || $cp->canAdminPage() || $cp->canApproveCollection()) { 
      $cID = $c->getCollectionID(); ?>
menuHTML += '<div id="ccm-page-controls-wrapper" class="ccm-ui">';
menuHTML += '<div id="ccm-toolbar">';
menuHTML += '<ul id="ccm-main-nav">';
menuHTML += '<li id="ccm-logo-wrapper"><?php echo Loader::helper('concrete/interface')->getToolbarLogoSRC()?></li>';
<?php  if ($c->isMasterCollection()) { ?>
   menuHTML += '<li><a class="ccm-icon-back ccm-menu-icon" href="<?php echo View::url('/dashboard/pages/types')?>"><?php echo t('Page Types')?></a></li>';
<?php  } ?>
<?php  if ($cp->canWrite() || $cp->canAddSubContent() || $cp->canAdminPage() || $cp->canApproveCollection()) { ?>
   menuHTML += '<li <?php  if ($c->isEditMode()) { ?>class="ccm-nav-edit-mode-active"<?php  } ?>><a class="ccm-icon-edit ccm-menu-icon" id="ccm-nav-edit" href="<?php  if (!$c->isEditMode()) { ?><?php echo DIR_REL?>/<?php echo DISPATCHER_FILENAME?>?cID=<?php echo $c->getCollectionID()?>&ctask=check-out<?php echo $token?><?php  } else { ?>javascript:void(0);<?php  } ?>"><?php  if ($c->isEditMode()) { ?><?php echo t('Editing')?><?php  } else { ?><?php echo t('Edit')?></a><?php  } ?></li>';
   <?php 
   $items = $ihm->getPageHeaderMenuItems('left');
   foreach($items as $ih) {
      $cnt = $ih->getController();


To me, the fact that it's rendering a true boolean value to that if statement is a little crazy. Any ideas what file uses this or loads this?
sniggitysnax replied on at Permalink Reply
sniggitysnax
Here's the PHP error showing up in my error_log file.

[11-Apr-2012 15:52:20] PHP Fatal error:  Call to a member function getPageHeaderMenuItems() on a non-object in /home/ballet/public_html/concrete/tools/page_controls_menu_js.php on line 109
Mnkras replied on at Permalink Reply
Mnkras
can you paste your environment from the dashboard?

Mike
sniggitysnax replied on at Permalink Reply
sniggitysnax
# concrete5 Version
5.5.1

# concrete5 Packages
Blog (2.1).

# concrete5 Overrides
blocks/content, blocks/autonav, blocks/core_scrapbook_display, single_pages/dashboard, themes/BalletRoyale

# Server Software
Apache

# Server API
cgi-fcgi

# PHP Version
5.2.17

# PHP Extensions
bcmath, bz2, calendar, cgi-fcgi, ctype, curl, date, dbase, dom, exif, filter, ftp, gd, gettext, hash, iconv, imagick, imap, ionCube Loader, json, libxml, magickwand, mbstring, mcrypt, mhash, mime_magic, mssql, mysql, mysqli, odbc, openssl, pcre, PDO, pdo_mysql, pdo_sqlite, posix, pspell, Reflection, session, SimpleXML, soap, sockets, SourceGuardian, SPL, SQLite, standard, tidy, tokenizer, wddx, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend Optimizer, zip, zlib.

# PHP Settings
log_errors_max_len - 1024
max_execution_time - 5
max_file_uploads - 20
max_input_nesting_level - 64
max_input_time - 60
memory_limit - 256M
post_max_size - 64M
safe_mode - Off
safe_mode_exec_dir - <i>no value</i>
safe_mode_gid - Off
safe_mode_include_dir - <i>no value</i>
sql.safe_mode - Off
upload_max_filesize - 64M
mssql.max_links - Unlimited
mssql.max_persistent - Unlimited
mssql.max_procs - Unlimited
mssql.textlimit - Server default
mysql.max_links - Unlimited
mysql.max_persistent - Unlimited
mysqli.max_links - Unlimited
odbc.max_links - Unlimited
odbc.max_persistent - Unlimited
pcre.backtrack_limit - 100000
pcre.recursion_limit - 100000
session.cache_limiter - nocache
session.gc_maxlifetime - 7200
soap.wsdl_cache_limit - 5
safe_mode_allowed_env_vars - PHP_
safe_mode_protected_env_vars - LD_LIBRARY_PATH
ewc07 replied on at Permalink Reply
I'm getting the same thing. The blank ccm toolbar showing up on the top of my pages when I'm logged out.

Did you ever find out what's going on and how to fix it.

ewc
sniggitysnax replied on at Permalink Reply
sniggitysnax
Yes, I was able to work around it. This may seem kind of a noob fix, but I was on a time crunch and was unable to get adequate support, so here's what I did:

<?php $u = new User();
if(!$u->isLoggedIn()){?>
<style>
div#ccm-toolbar
{
   background:none!important;
   border-bottom: none!important;
   box-shadow: none!important;
   height: 0px!important;
   width: 0px!important;
}
#wrapper
{
   margin-top: -30px!important;
}


I stuck that in the head of the site and presto chango, got rid of the toolbar and as you can see i had to move the wrapper up to compensate for the size of the toolbar. I believe a display:none; on the #ccm-toolbar selector would also work. Hope that helps!
andrew replied on at Permalink Best Answer Reply
andrew
You shouldn't have to do this. I would double-check that you don't have view permissions for guest set on the dashboard home page, or have somehow set up guests as being able to edit pages (which won't work but which will show a blank toolbar.)
ewc07 replied on at Permalink Reply
Thanks Andrew,

I checked my permissions, which I had just recently (several weeks ago) set to advanced permissions.

When I was trying to fix a problem with not seeing a new nav element in the header I just added, I set the permissions to manual so guests can also view in the page type. That fixed my nav problem and allowed everyone to see my new navigation and when I logged out the blank ccm toolbar was finally gone.

Don't know why it fixed it, but it fixed it.

Thanks,

ewc
sniggitysnax replied on at Permalink Reply
sniggitysnax
Yes sir!

I jumped into the sitemap and checked the permissions for the homepage and guest was showing as being able to edit. Is this something that concrete 5.5.1 defaults to? Seems odd as I would never allow a guest to edit a page.

At any rate, thanks for the help
andrew replied on at Permalink Reply
andrew
You're welcome. Glad to hear that it got sorted out!
mjames757 replied on at Permalink Reply
So glad I found this thread. I was going nuts! I never manually set the permissions for guest to edit; nonetheless, it was enabled on all of my pages. Weird.

Thanks!

Mark
orisinal replied on at Permalink Reply
orisinal
Voilà! View permissions for the guests on the Dashboard home page was the problem in my case.

I migrated Concrete5 from server to another and upgraded it from 5.4.0.5 to 5.6.0.2, but with mandatory steps on versions of course, not just jumping straight to the latest version. Everything went smoothly and seemed to work ok, but the empty toolbar was shown to guests. As a guest in incognito window (Chrome's feature) I tried to go to /dashboard/ and was surprised I got there without asking password. Therefore I checked the permissions of the Dashboard home page and there it was, the Guest group on the line of View.

The interesting part is that on the original server, on the site using 5.4.0.5, there is no permissions set for Guest group on the Dashboard. And I absolutely didn't touch on permissions during migration and upgrading. Something strange happened there, it seems.

Anyways, the problem is easy to fix. What causes the problem, I have no idea. :]
FMC replied on at Permalink Reply
I just discovered that someone had use this to access the Multilang add-on settings, and delete the languages.

This was rather confusing because the checkbox for "Guest" view access was unticked! I opened all the possible pages as a guest and I was surprised to realise that 50% of those were accessible, and some even with write access!

It's probably worth double checking the Guest read access on System pages. (I am using 5.5.1).