Assuming #538660: Move update manager upgrade process into new authorize.php file (and make it actually work) lands, we're going to want to fix up the final report page that plugin.php itself gives you when you finish updating or installing something. Currently, it's just reusing update.php's report page, since at one point, plugin.php was going to trigger update.php, too. That's no longer the case. It's still functional to display what happened and send you back to your site, but it's ugly and could use some bling. New issue so that #538660 can continue unimpeded by this task, but so we don't forget post 10/15.
Note: we'll be standardizing such followup issues with the new Plugin manager issue tag.
| Comment | File | Size | Author |
|---|---|---|---|
| #36 | 602484-36.authorize-php-update-manager-page-title.patch | 2.72 KB | dww |
| #34 | page-title.patch | 1.14 KB | rschwab |
| #26 | 602484-26.before.png | 29.47 KB | dww |
| #26 | 602484-26.after_.png | 30.98 KB | dww |
| #25 | update-manager-theme-fix.patch | 3.09 KB | rschwab |
Comments
Comment #1
dwwTagging for UX folks...
Comment #2
dwwThe report page for authorize.php now has its own theme functions in includes/theme.maintenance.inc (theme_authorize_report() and theme_authorize_message()). However, we still need to clean up the UI on this landing page.
However, we should probably wait to start cleaning it up until we know the fate of #606190: Fix handling of database schema updates in update manager workflow, so I'm marking this postponed for now.
Comment #3
dwwThis page isn't even valid HTML at this point. It looks completely terrible. It's confusing and weird. Yes, it'd be nice to have a slick answer for #606190: Fix handling of database schema updates in update manager workflow, but we need to do *something* here. At Bojhan's request, here are 3 screenshots, of the possible ways this landing page is used:
A) Installed a new module
B) Installed a new theme
C) Updated existing stuff
Comment #4
reglogge commentedsubscribing
Comment #5
janusman commentedPossibly related: #679190: Overlay breaks the Update manager workflow
Comment #6
dwwThanks for the link, janusman, but unfortunately this issue is independent of any overlay interactions. With or without the overlay, the final landing page at authorize.php when you install or update code is extremely sucky and broken. ;)
Comment #7
Bojhan commentedfollowing
Comment #8
cosmicdreams commentedfollowing, hoping to help out where I can.
Comment #9
catchAny update on this one? I'm not really sure why it's a release blocker that the page is ugly, and there doesn't seem to be any suggestions here to improve it.
Comment #10
yoroy commentedSubscribination
Comment #11
jpmckinney commentedDowngrading. Adding bling is not critical.
Comment #12
Bojhan commentedDesign is not bling.
Comment #13
webchickIt is not bling, that's true, but it is also not going to hold us back from releasing Drupal 7. Let's please not play anymore status ping-pong.
Can we focus on some sort of a way forward here? I can't really even parse a meaningful bug report from this issue, apart from HTML compliance.
Comment #14
rschwab commentedHere is a first step towards getting it looking acceptable. Note that #606190: Fix handling of database schema updates in update manager workflow is still open, so these patches ignore the specific tasks listed on the page, and focuses on just getting the markup acceptable.
Comment #15
rschwab commentedComment #16
joachim commentedCan you post a screenshot of what the patch is meant to do please?
Here are some of the problems I think we should try to address about this page:
Install/enable: what do we actually mean by these terms? Does 'install' mean *just* download and put the folder in the right place? I'm sure I've seen lots of documentation that says 'install Views' to mean 'download, put in place, enable'. We should be careful what we mean here.
Comment #17
rschwab commented- How about changing the title to "Drupal Update Manager"?
- I suppose instead of having a title for each module, we could put them all under a New Modules title?
- I think the repetition part isn't actually repetition. The first is a status message showing you everything worked out, the second instance is an itemized list of what was installed.
- Install/Enable are used correctly here, IMHO.
- Admin/Front page links are under debate at #606190: Fix handling of database schema updates in update manager workflow
Attached is a screenshot of what #14 is intended to do, plus my suggestions for the problems joachim raised as listed above.
Also, anyone know why the test failed on #14?
EDIT: I think the "error log below" is actually what I have listed as "New Modules", so I think changing it to "Update Manager Log" would be a much better choice.
Comment #18
rschwab commentedAttached patch does the following:
- Same as #14
- Plus page title added in update manager so the default in authorize.php isn't used.
After second thought the title for each module is there because that's a generic theme function in includes/theme.maintenance.inc used for all authorize.php reports, and so I didn't change because I didn't want to lock down that theme function here.
Comment #20
rschwab commentedWoah, test fail is gone. Rogue test bot maybe? At any rate, since its now a lovely shade of green, switching back to needs review.
Comment #21
dwwIt seems extremely weird that
theme('authorize_message')is returning a<li>and it's the responsibility of the caller to wrap it in a<ul>. That's probably my fault for not catching it in the first place. But, instead of just adding the ul's manually here, maybe we should fix theme_authorize_message to just return the payload of the message, and leave it up to the caller to use theme_item_list() or whatever they want to format it.Comment #22
rschwab commentedThis patch implements #18 and #21
Comment #23
rschwab commentedStrange, I get an undefined function error for check_markup() in #22.
Comment #24
dwwThat's because check_markup() is only from filter.module, and authorize.php only bootstraps system.module. We definitely don't want to load all of filter.module, too, just for this. Furthermore, to properly call check_markup(), you need an input format argument, too. But, that's all pointless here. None of this markup is user-generated. It's all system-generated messages, so we shouldn't need check_markup() nor check_plain() at all. We don't try to defend against XSS from within other parts of core. ;) Only from user-generated input.
Comment #25
rschwab commentedYeah I thought that was strange too, but just followed the precedent set with
"$output .= '<h3>' . check_plain($heading) . '</h3>';".At any rate, this patch fixes:
- invalid html pointed out in #3
- unfriendly title from #16
- theme function weirdness from #21
- unneeded security functions from #24
Comment #26
dwwWorks for me. Given more time and resources, we could probably do more here, but this is certainly a big step in the right direction.
before
after
Code looks good. Therefore, RTBC. Thanks, rschwab!
Comment #27
webchickAwesome work, rschwab!
Committed to HEAD. Thanks!
Comment #28
Bojhan commentedWait what!? Ugh, why are we rushing in string changes this last minute. Can anyone tell me about the following conciderations:
1) Is this done consistently over all pages?
2) Are users in actually in an "Update" mode or are they in a "Install" mode. Now we just repeat the module name?
3) Do we ever captialize the 2nd, and 3rd word?
Sorry I am just trying to keep up a quality standard, especially this late in the process we should rush semi-improvements in that will still cause confusion.
Comment #29
dwwBojhan: we're rushing because of deadlines. We can always do follow-up fixes if you have better suggestions. I'm too tired to answer your specific questions. I considered not RTBCing without a UX review, but I didn't want to let perfect be the enemy of progress, and #25 was obviously better than what was previously there (as the screenshots at #26 demo), so I said it was ready to go in.
Comment #30
Bojhan commentedAlright, moving to Drupal 8.
I fully understand the reasoning, I hope you understand mine - we are around on IRC a lot so just grab us when needed (asking us shouldn't necessary mean perfection, rather answering the question: are we really solving the user problem?). So lets mark this need work for D8, because now we moved it from scary to confusing - which is mostly just moving the problem, but agreed in the right direction :)
We might want to do a small quick follow up on the capitalization.
Comment #31
dwwI'm not in IRC much the next few months. There are many things left to fix about Update manager or it needs to be removed, including #606190: Fix handling of database schema updates in update manager workflow which will make this page less confusing. I understand your reasoning, I'd just rather spend time fixing whatever we can while there's still time than to continue discussing why you wanted to spend more time on the UX of this patch. If there's anything still to happen in D7 here, please a) propose concrete suggestions and b) do so immediately so that there's at least some chance of fixing it before the hard string freeze. ;) Instead of just saying "we moved the problem from scary to confusing", explain how to make it less confusing. I'm 98% sure the first step is to commit #606190. If there's anything else, please be specific so it can get done.
Thanks!
-Derek
Comment #32
rschwab commenteddww, Bojhan, et al: Do you have any suggestions for improving the titles?
for installs its currently "Drupal Update Manager"
for updates its currently "Authorize file system changes"
Comment #33
yoroy commented'Update manager' (we have a guideline to not use the word 'Drupal', it is mostly redundant and complicates other-named install profiles)
'Allow changes to files' ?
Comment #34
rschwab commented'Update manager' could work for both I suppose. 'Allow changes to files' doesn't really make sense to me, because the file changes have already been made by the time the user reaches this screen.
And just in case everyone likes that - here is a patch to change titles to "Update manager".
Comment #35
yoroy commentedI'd be fine with that. Dww explained in IRC that 'Authorize file changes' was a bug anyway - should ideally not be seen. Yes, I think 'Update manager' works for both.
Comment #36
dwwI assume we want the same "Update manager" page title when you first hit authorize.php, too, not just on the final landing page when things complete. This patch implements that.
Comment #37
EvanDonovan commentedI think this is a good string change. "Drupal Update Manager" would have been weird.
I would RTBC, but want Bojhan to sign off that this is all that is needed.
Comment #38
dwwBojhan is now asleep until after the string freeze. I just pinged yoroy in IRC in the hopes of getting a quick review and RTBC.
Comment #39
yoroy commented1 consistent, simple page title throughout the process instead of scary talk. This is nice and ready again.
Comment #40
webchickCommitted to HEAD. Thanks!