I have made a menu tab page with the path set as /user/%user/mylist. When I test it the menu tab doesn't appear but if I change the the path to //user/%user/mylist the menu tab now appears. Notice I had to put double forward slash for it to work. Though adding double forward slash fixes it I get a red error in Panels saying: Notice: Uninitialized string offset: 0 in page_manager_page_admin_summary() (line 588 of /srv/www/lusciousanime.com/public_html/sites/all/modules/ctools/page_manager/plugins/tasks/page.inc).

Comments

frichman’s picture

I have a similar error: Notice: Uninitialized string offset: 0 in page_manager_get_pages() (line 157 of /hermes/web03/b497/moo.clguidecom/drupal-7.12/sites/all/modules/ctools/page_manager/page_manager.admin.inc). It is referencing this block:

<?php
$visible_path = '';
    if (!empty($task['admin path'])) {
      foreach (explode('/', $task['admin path']) as $bit) {
        if ($bit[0] != '!') {
          $path[] = $bit;
        }
      }
?>

My pages are all still working fine, but it seems odd.

Letharion’s picture

Status: Active » Postponed (maintainer needs more info)

Please attach minimal exported configuration that reproduces the problem.

Letharion’s picture

Status: Postponed (maintainer needs more info) » Closed (cannot reproduce)

Closing old issues left in NMI.

iprosp’s picture

Version: 7.x-3.0-alpha3 » 7.x-3.x-dev
Issue summary: View changes

I had the same issue and it happened when i added a path that used 2 arguments (%nid, and !type).
When stating the page url, if i input it like this: /some/path/%nid it works but shows the error, but if it is like this some/path/%nid, it doesn't show the error but i get a 404 page not found when visiting the url.

In order to solve it, i added the following at ctools/page_manager/page_manager.admin.inc

(if the url starts with a slash, remove the initial slash)

if (strpos($page->path,'/') == 0) {
  $page->path = ltrim($page->path,'/');
}

right before this:

  foreach (explode('/', $page->path) as $bit) {
    if ($bit[0] != '!') {
      $path[] = $bit;
    }
  }