I used the upgrade script to upgrade my 7.7.9 installation to 7.8.28. During testing, I noticed that I no longer had an action menu on the User Detail View after I select a user from the Users List View. I upgraded to 7.8.30 thinking that might fix the issue but no such luck.
I see that changes were made to make the items in the Action Menu dependent on whether the connected user is an administrator which I am. And I have stepped through the PHP code for the Users module in view.detail.php and have verified that the value of $this->dv->defs[‘templateMeta’][‘form’][‘buttons’] is being set properly for an administrative user containing buttons for Edit, Duplicate, Delete, Reset Password, Reset User Preferences & Reset Home Page.
But the action menu is not being displayed and it almost looks like when the Detail View displays, it is jumping up to cover the location where the Action Menu should be. In fact the Create button on the far right is actually displaying within the User Profile panel.
Any assistance would be greatly appreciated.
Do you have anything in “custom/modules/Users” that could be interfering?
Does it make a difference if you change Admin / System Settings / Display actions within menus?
If you inspect the rendered HTML fro myour browser’s developer console, are the buttons there, but hidden by CSS, or are they missing from the HTML?
(A different way to see this is to tell your browser to display the page without a stylesheet, and see if the buttons appear somewhere. In Firefox this is in menu View, Page Style, No Style).
Thanks for the response.
I have no “views” custom code for Users. I have a custom metadata/detailviewdefs.php file to allow the display of custom fields.
I changed the System Settings/Display actions setting (was checked so unchecked) but it made no difference on this display. Other Detail Views show buttons instead of Action menu.
I have viewed the page source for the Users Detail View and can find no occurrence of those buttons.
I have determined that the problem was fixed between 7.8.30 and 7.9.17 because I have a 7.9.17 instance running that does not have the problem. But I haven’t found the exact file in which the fix was made.
Another thing that I have noticed is the file DetailViewFooter.tpl is still referenced but does not exist in the tpls directory. But this problem existing in both versions 7.8.30 and 7.9.17 so I don’t think that is the issue.
I wish I could help you further but it’s very difficult without being able to reproduce this in a local instance.
I think you can probably find this out from debugging the code, somewhere when displaying the view you should be able to see that element failing to get included…
Found solution to this problem.
I had a custom metadata file detailviewdefs.php and I noticed that the new [non-custom] detailviewdefs.php had a new array under form where the buttons were defined based on the user type (Regular or Admin). My custom metadata file did not have this array so I made the following modification in the form array.
// 'headerTpl' => 'modules/Users/tpls/DetailViewHeader.tpl',
// 'footerTpl' => 'modules/Users/tpls/DetailViewFooter.tpl',
'buttons' => array (),
I commented out the headerTpl and footerTpl lines because version 7.8.31 does not use those anymore.
The really good news is that my plugin Login/Sudo from SugarOutfitters still works.
I hope that this helps someone else.
I’m glad you got it working!
The next time you upgrade, when you come to that screen that lists the files you have in custom that are being replaced by the upgrade, copy-paste them to text file somewhere. You really need to check each one manually, so you don’t risk this kind of situation.
If you check your upgradeWizard.log now, you will see that message there also, likely telling you about this file that would cause this problem…