The "Enable apps support" screen is a wall of text explaining various options to me. Yet, it has access to my environment variables, so presumably it could just tell me if I'm on Pantheon, or I have FTP/SSH extensions installed, or whatever, and give me little checkboxes/red Xs to help me along.

Support from Acquia helps fund testing for Drupal Acquia logo

Comments

webchick’s picture

Or, better still maybe, add checks like chmod 777 and the like to a panopoly_requirements() function so it doesn't let me continue installing without it.

populist’s picture

I think these are good changes to think about, but do believe they would be better done as part of the Apps module instead of something special for Panopoly. However, I do agree the current experience is less than ideal which is why I added the README to the installation process in the first place.

webchick’s picture

Project: Panopoly » Apps

That makes sense. Moving queues.

febbraro’s picture

Status: Active » Needs review
FileSize
4.87 KB

Here is a quick go at a documentation page that actually tests for these things as well. This is now including the verification page in the install profile tasks that get integrated with profile intall tasks.

e2thex’s picture

I Checked this out with the writeable dir and all went well, very nice addition.

nedjo’s picture

Status: Needs review » Needs work

Yep, this is a big improvement.

In the case that all tests fail, should it still be possible to proceed? Maybe not, but then again particular install profiles form_alter in their own tests. Possibly add a 'value' form element that tracks success:

$form['enabled'] = array(
  '#type' => 'value,
  '#value' => $ftp_installed || $ssh_installed || $install_permissions,
);

Then an install profile could alter this value before, in a #process callback, Apps tests the value and selectively disables the form (and gives a "try again" link).

+++ b/apps.profile.inc
@@ -386,3 +391,61 @@ function apps_profile_check_dependencies($module_list) {
+    '#value' => 'Continue',

Should be wrapped in t().

nedjo’s picture

Status: Needs work » Needs review

Didn't mean to change the status (forgot about dreditor).

nedjo’s picture

Title: Make the "Enable apps support" screen a bit smarter » Add smart "Verify apps support" screen
FileSize
7 KB
34.64 KB
82.87 KB

Made a number of small tweaks:

  • Emphasize that only one enabled method is required.
  • For enabled methods, show only the minimum information. Don't talk about PHP extensions, since, thankfully, the user doesn't need to worry about that.
  • If a method is not enabled, collapse its fieldset and push it to the bottom of the form.
  • Set a value, $form['app_enabled']['#value'], that can be set to TRUE in a form_alter() callback if a new enabled method is added.
  • In a #process callback, if app_enabled is FALSE, expand all fieldsets and set an error message.
  • Add the new form as a MENU_LOCAL_TASK off of the existing Apps settings form.

Screenshots attached for (a) success: only one method is enabled (FTP) and (b) failure: no methods are enabled.

nedjo’s picture

Fix typo in the previous patch.

nedjo’s picture

In some cases - when all selected apps are already installed - this proposed install task screen would be unneeded and therefore confusing. See #1714552: Install tasks for downloading and installing apps run even if all selected apps already installed.

Possibly it should come after apps have been selected, right before the potential prompt for FTP/SSH creds.

febbraro’s picture

Status: Needs review » Fixed

@nedjo RE: #10 you have a great point there. Let's open that up as another issue so it does not hold this one up. I have refined it a bit and committed the code for this. Fixed some wordings and added a "Retry verification" link to the warning message.

Thanks!

http://drupalcode.org/project/apps.git/commit/5c67cc4

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.