One thing I never completed in my design was that the export routine is supposed to export based on option definition. One benefit to this is that we could then properly export t() flags, as well as make other decisions if we need to. Another benefit is that we could do a better job of avoiding exporting data that does not need to be exported, which there is quite a lot of in the current Views 2 exports.

This is a partial, incomplete patch to do this.

Remaining TODO:

  1. Document the methods.
  2. Provide export methods for exporting plugins on displays: cache, style_plugin, row_plugin.
  3. Retool plugins so that they *all* use option_definition.

It's funny because I'd actually documented and partially implemented some of this but I clearly had cheesed out partway and just wanted to get it done. This needs to be finished.

Comments

merlinofchaos’s picture

Here is an example of what the new export looks like.

$view = new view;
$view->name = 'crashtest';
$view->description = 'Test of crash. =)';
$view->tag = 'default';
$view->view_php = '';
$view->base_table = 'node';
$view->is_cacheable = FALSE;
$view->api_version = 2;
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */
$handler = $view->new_display('default', 'Defaults', 'default');
$handler->options['fields']['type']['id'] = 'type';
$handler->options['fields']['type']['table'] = 'node';
$handler->options['fields']['type']['field'] = 'type';
$handler->options['fields']['title']['id'] = 'title';
$handler->options['fields']['title']['table'] = 'node';
$handler->options['fields']['title']['field'] = 'title';
$handler->options['fields']['title']['alter']['alter_text'] = 1;
$handler->options['fields']['title']['alter']['text'] = '<b foo="bar">foo</b> <b foo="bar">bar</b>';
$handler->options['fields']['title']['alter']['make_link'] = 0;
$handler->options['fields']['title']['alter']['trim'] = 1;
$handler->options['fields']['title']['alter']['max_length'] = '32';
$handler->options['fields']['title']['alter']['word_boundary'] = 0;
$handler->options['fields']['title']['alter']['ellipsis'] = 1;
$handler->options['fields']['title']['alter']['strip_tags'] = 0;
$handler->options['fields']['title']['alter']['html'] = 0;
$handler->options['fields']['title']['link_to_node'] = 0;
$handler->options['fields']['name']['id'] = 'name';
$handler->options['fields']['name']['table'] = 'users';
$handler->options['fields']['name']['field'] = 'name';
$handler->options['fields']['name']['label'] = 'Author';
$handler->options['fields']['comment_count']['id'] = 'comment_count';
$handler->options['fields']['comment_count']['table'] = 'node_comment_statistics';
$handler->options['fields']['comment_count']['field'] = 'comment_count';
$handler->options['fields']['comment_count']['label'] = 'Replies';
$handler->options['fields']['last_comment_timestamp']['id'] = 'last_comment_timestamp';
$handler->options['fields']['last_comment_timestamp']['table'] = 'node_comment_statistics';
$handler->options['fields']['last_comment_timestamp']['field'] = 'last_comment_timestamp';
$handler->options['fields']['last_comment_timestamp']['label'] = 'Last Post';
$handler->options['fields']['timestamp']['id'] = 'timestamp';
$handler->options['fields']['timestamp']['table'] = 'history_user';
$handler->options['fields']['timestamp']['field'] = 'timestamp';
$handler->options['fields']['timestamp']['label'] = '';
$handler->options['fields']['timestamp']['link_to_node'] = 0;
$handler->options['fields']['timestamp']['comments'] = 1;
$handler->options['fields']['new_comments']['id'] = 'new_comments';
$handler->options['fields']['new_comments']['table'] = 'node';
$handler->options['fields']['new_comments']['field'] = 'new_comments';
$handler->options['fields']['new_comments']['label'] = '';
$handler->options['fields']['new_comments']['suffix'] = ' new';
$handler->options['fields']['new_comments']['link_to_comment'] = 1;
$handler->options['fields']['new_comments']['no_empty'] = 1;
$handler->options['fields']['body']['id'] = 'body';
$handler->options['fields']['body']['table'] = 'node_revisions';
$handler->options['fields']['body']['field'] = 'body';
$handler->options['fields']['body']['alter']['alter_text'] = 0;
$handler->options['fields']['body']['alter']['make_link'] = 0;
$handler->options['fields']['body']['alter']['trim'] = 1;
$handler->options['fields']['body']['alter']['max_length'] = '87';
$handler->options['fields']['body']['alter']['word_boundary'] = 1;
$handler->options['fields']['body']['alter']['ellipsis'] = 1;
$handler->options['fields']['body']['alter']['strip_tags'] = 0;
$handler->options['fields']['body']['alter']['html'] = 1;
$handler->options['sorts']['last_comment_timestamp']['id'] = 'last_comment_timestamp';
$handler->options['sorts']['last_comment_timestamp']['table'] = 'node_comment_statistics';
$handler->options['sorts']['last_comment_timestamp']['field'] = 'last_comment_timestamp';
$handler->options['arguments']['uid_touch']['id'] = 'uid_touch';
$handler->options['arguments']['uid_touch']['table'] = 'node';
$handler->options['arguments']['uid_touch']['field'] = 'uid_touch';
$handler->options['arguments']['uid_touch']['default_action'] = 'default';
$handler->options['arguments']['uid_touch']['style_options'] = array(
  'count' => TRUE,
  'override' => FALSE,
  'items_per_page' => 25,
);
$handler->options['arguments']['uid_touch']['title'] = 'Recent posts for %1';
$handler->options['arguments']['uid_touch']['default_argument_type'] = 'current_user';
$handler->options['arguments']['type']['id'] = 'type';
$handler->options['arguments']['type']['table'] = 'node';
$handler->options['arguments']['type']['field'] = 'type';
$handler->options['arguments']['type']['default_action'] = 'summary asc';
$handler->options['arguments']['type']['style_options'] = array(
  'count' => 1,
  'override' => 1,
  'items_per_page' => '10',
);
$handler->options['filters']['status']['id'] = 'status';
$handler->options['filters']['status']['table'] = 'node';
$handler->options['filters']['status']['field'] = 'status';
$handler->options['filters']['status']['value'] = '1';
$handler->options['filters']['status']['group'] = 0;
$handler->options['cache']['type'] = 'time';
$handler->options['title'] = 'Recent posts';
$handler->options['items_per_page'] = 25;
$handler->options['use_pager'] = TRUE;
$handler->options['style_plugin'] = 'table';
$handler->options['style_options'] = array(
  'override' => 1,
  'order' => 'desc',
  'columns' => array(
    'type' => 'type',
    'title' => 'title',
    'name' => 'name',
    'comment_count' => 'comment_count',
    'last_comment_timestamp' => 'last_comment_timestamp',
    'timestamp' => 'title',
    'new_comments' => 'comment_count',
  ),
  'info' => array(
    'type' => array(
      'sortable' => 1,
      'separator' => '',
    ),
    'title' => array(
      'sortable' => 1,
      'separator' => '&nbsp;',
    ),
    'name' => array(
      'sortable' => 1,
      'separator' => '',
    ),
    'comment_count' => array(
      'sortable' => 1,
      'separator' => '<br />',
    ),
    'last_comment_timestamp' => array(
      'sortable' => 1,
      'separator' => '&nbsp;',
    ),
    'timestamp' => array(
      'separator' => '',
    ),
    'new_comments' => array(
      'separator' => '',
    ),
  ),
  'default' => 'last_comment_timestamp',
);
$handler = $view->new_display('page', 'Page', 'page');
$handler->options['path'] = 'crashtest';
$handler->options['menu']['type'] = 'normal';
$handler->options['menu']['title'] = 'Recent posts';
$handler = $view->new_display('block', 'Block', 'block_1');
$handler->options['defaults']['items_per_page'] = FALSE;
$handler->options['items_per_page'] = 5;
$handler->options['defaults']['use_pager'] = FALSE;
$handler->options['use_pager'] = TRUE;

You can easily see the unfinished parts.

merlinofchaos’s picture

Priority: Normal » Critical

I think this needs to be doen as part of Views 3 ASAP in order to move forward translation, but also to get all the plugins on the same page. I am embarassed at how horribly inconsistent plugins are right now.

dawehner’s picture

StatusFileSize
new5 KB

Here is a updated patch.
DO NOT USE THIS PATCH UNLESS YOU KNOW WHAT YOU DO, ITS BROKEN.

dawehner’s picture

ignore the old patch.

dawehner’s picture

Status: Needs work » Needs review
StatusFileSize
new4.95 KB

So here is the right version

          if (is_array($storage[$option])) {
            foreach ($storage[$option] as $sub_option => $sub_definition) {
              $output .= views_var_export($sub_definition, $indent);
            }
          }
          else {
            $output .= views_var_export($storage[$option], $indent);
          }
merlinofchaos’s picture

StatusFileSize
new9.73 KB

Attached is a patch that adds options to export the style and row style. Hopefully this demonstrates what I meant.

Still TODO:

  1. display: cache, access, exposed form exports
  2. argument: default, validate and style plugins
  3. table: The table style should probably have special handling to export the column information.

I hope to work a little more on this today.

merlinofchaos’s picture

StatusFileSize
new24.39 KB

Ok, this handles #1 and the 'style' part of #2 above.

#3 is easy.

It also fixes some brokenness, makes sure relationship data is exported.

Argument default/validate handlers are going to require some thinking. My thinking right now:

  • default/validate handlers are required to gain option_definition()
  • The form space for argument/validate handlers goes into ['default_options OR validate_options']['plugin key'][$options] -- they will all still be on the form and all still need dependency code, but this wrapper can simplify the dependency code
  • The submit method then copies what's on this space into the options on the argument
  • And when the plugin is init()'d, the $options are passed in and it unpacks normally.

The trouble I have with that is that all argument/validate handlers have to be rewritten. This probably isn't actually a bad thing. This is 3.x and we're mandating it, and it will make them a lot more robust. It should pobably happen as a patch separate to this, though, so it can be more easily documented for module developers upgrading their stuff.

The biggest worry I have, now, is that handlers and plugins could easily have non-declared data that got stored that they rely on. Since there's so many handlers and plugins, we more or less have to check *each* one and see if they are storing data that is not declared. This is mind-numbingly tedious, but probably necessary.

merlinofchaos’s picture

StatusFileSize
new73.29 KB

Ok, here's a new patch. This converts argument validation and default plugins. We could probably do with special handling for table, but that isn't critical and might be a good choice for a followup patch.

At this point I think we need some pretty good testing. Make some crazy views, export and import them and make sure they're the same. =)

yhahn’s picture

Earl: You are a monster. Nice work : )

dagmar’s picture

I have a small question about this patch. What happens if a user install packaged view from a feature with a previous version views export system, Does it work?

merlinofchaos’s picture

Yes, it shouldn't invalidate old exports at all. They will simply be less rich.

merlinofchaos’s picture

Version: 6.x-3.x-dev » 7.x-3.x-dev
Status: Needs review » Patch (to be ported)

I went ahead and committed this to 6.x-3.x -- it now needs to be ported to D7. Hopefully that isn't difficult!

dawehner’s picture

This patch waits for group by support

dawehner’s picture

Status: Patch (to be ported) » Needs review
StatusFileSize
new68.69 KB
dawehner’s picture

Here is a relative complex view and i tested.

$view = new view;
$view->name = 'test_export1';
$view->description = '';
$view->tag = '';
$view->view_php = '';
$view->base_table = 'node';
$view->is_cacheable = FALSE;
$view->api_version = 2;
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */
$handler = $view->new_display('default', 'Defaults', 'default');
$handler->override_option('relationships', array(
  'nid' => array(
    'id' => 'nid',
    'table' => 'comment',
    'field' => 'nid',
    'relationship' => 'none',
    'group_type' => 'group',
    'label' => 'Node',
    'required' => 0,
  ),
  'uid' => array(
    'id' => 'uid',
    'table' => 'comment',
    'field' => 'uid',
    'relationship' => 'none',
    'group_type' => 'group',
    'label' => 'User',
    'required' => 1,
  ),
  'uid_1' => array(
    'id' => 'uid_1',
    'table' => 'node',
    'field' => 'uid',
    'relationship' => 'none',
    'group_type' => 'group',
    'label' => 'user',
    'required' => 0,
  ),
));
$handler->override_option('fields', array(
  'nid' => array(
    'id' => 'nid',
    'table' => 'node',
    'field' => 'nid',
    'alter' => array(
      'alter_text' => 0,
      'make_link' => 0,
      'trim' => 0,
      'word_boundary' => 1,
      'ellipsis' => 1,
      'strip_tags' => 0,
      'html' => 0,
    ),
    'hide_empty' => 0,
    'empty_zero' => 0,
    'link_to_node' => 0,
  ),
  'title' => array(
    'id' => 'title',
    'table' => 'node',
    'field' => 'title',
    'alter' => array(
      'alter_text' => 0,
      'make_link' => 0,
      'trim' => 0,
      'word_boundary' => 1,
      'ellipsis' => 1,
      'strip_tags' => 0,
      'html' => 0,
    ),
    'hide_empty' => 0,
    'empty_zero' => 0,
    'link_to_node' => 0,
  ),
));
$handler->override_option('arguments', array(
  'type' => array(
    'id' => 'type',
    'table' => 'node',
    'field' => 'type',
    'relationship' => 'none',
    'group_type' => 'group',
    'default_action' => 'empty',
    'style_plugin' => 'default_summary',
    'style_options' => array(),
    'wildcard' => 'all',
    'wildcard_substitution' => 'All',
    'title' => '',
    'breadcrumb' => '',
    'default_argument_type' => 'fixed',
    'default_argument_options' => array(),
    'validate_type' => 'none',
    'validate_options' => array(),
    'validate_fail' => 'not found',
    'argument_default' => array(
      'user' => array(),
      'php' => array(),
    ),
    'argument_validate' => array(
      'node' => array(
        'types' => array(),
      ),
      'taxonomy_term' => array(
        'vids' => array(),
      ),
      'user' => array(
        'roles' => array(),
      ),
      'php' => array(),
    ),
  ),
));
$handler->override_option('access', array(
  'type' => 'none',
));
$handler->override_option('cache', array(
  'type' => 'none',
));
$handler->override_option('header', 'sadf');
$handler->override_option('header_empty', 0);
$handler->override_option('footer', '4321^');
$handler->override_option('footer_empty', 0);
$handler->override_option('use_pager', 'mini');
$handler->override_option('pager_element', 6);
$handler->override_option('distinct', 1);
$handler->override_option('exposed_form', array(
  'type' => 'input_required',
  'options' => array(
    'submit_button' => 'Apply',
    'text_input_required' => 'Select any filter and click on Apply to see results',
    'text_input_required_format' => '1',
  ),
));
$handler = $view->new_display('feed', 'Feed', 'feed_1');
$handler->override_option('style_plugin', 'views_xml');
$handler->override_option('style_options', array(
  'mission_description' => FALSE,
  'description' => '',
  'provide_file' => 0,
  'parent_sort' => 0,
));
$handler->override_option('row_plugin', '');
$handler->override_option('path', 'foo/bar');
$handler->override_option('menu', array(
  'type' => 'none',
  'title' => '',
  'description' => '',
  'weight' => 0,
  'name' => 'navigation',
));
$handler->override_option('tab_options', array(
  'type' => 'none',
  'title' => '',
  'description' => '',
  'weight' => 0,
));
$handler->override_option('displays', array());
$handler->override_option('sitename_title', FALSE);
$handler = $view->new_display('attachment', 'Attachment', 'attachment_1');
$handler->override_option('attachment_position', 'before');
$handler->override_option('inherit_arguments', TRUE);
$handler->override_option('inherit_exposed_filters', FALSE);
$handler->override_option('inherit_pager', FALSE);
$handler->override_option('render_pager', TRUE);
$handler->override_option('displays', array(
  'block_1' => 'block_1',
  'default' => 0,
));
$handler = $view->new_display('block', 'Block', 'block_1');
$handler->override_option('block_description', 'adf');
$handler->override_option('block_caching', -1);
dawehner’s picture

Status: Needs review » Needs work

WTH. why is this old style export.

dawehner’s picture

Man i'm silly. i didn't changed the branch.

$view = new view;
$view->name = 'test_export1';
$view->description = '';
$view->tag = '';
$view->view_php = '';
$view->base_table = 'node';
$view->is_cacheable = FALSE;
$view->api_version = 2;
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */

/* Display: Defaults */
$handler = $view->new_display('default', 'Defaults', 'default');
$handler->display->display_options['header'] = 'sadf';
$handler->display->display_options['header_empty'] = 0;
$handler->display->display_options['footer'] = '4321^';
$handler->display->display_options['footer_empty'] = 0;
$handler->display->display_options['use_pager'] = TRUE;
$handler->display->display_options['pager_element'] = 6;
$handler->display->display_options['distinct'] = TRUE;
$handler->display->display_options['access']['type'] = 'none';
$handler->display->display_options['cache']['type'] = 'none';
$handler->display->display_options['exposed_form']['type'] = 'input_required';
$handler->display->display_options['style_plugin'] = 'default';
$handler->display->display_options['row_plugin'] = 'fields';
/* Relationship: Comment: Node */
$handler->display->display_options['relationships']['nid']['id'] = 'nid';
$handler->display->display_options['relationships']['nid']['table'] = 'comment';
$handler->display->display_options['relationships']['nid']['field'] = 'nid';
$handler->display->display_options['relationships']['nid']['required'] = 0;
/* Relationship: Comment: User */
$handler->display->display_options['relationships']['uid']['id'] = 'uid';
$handler->display->display_options['relationships']['uid']['table'] = 'comment';
$handler->display->display_options['relationships']['uid']['field'] = 'uid';
$handler->display->display_options['relationships']['uid']['required'] = 1;
/* Relationship: Node: Author */
$handler->display->display_options['relationships']['uid_1']['id'] = 'uid_1';
$handler->display->display_options['relationships']['uid_1']['table'] = 'node';
$handler->display->display_options['relationships']['uid_1']['field'] = 'uid';
$handler->display->display_options['relationships']['uid_1']['required'] = 0;
/* Field: Node: Nid */
$handler->display->display_options['fields']['nid']['id'] = 'nid';
$handler->display->display_options['fields']['nid']['table'] = 'node';
$handler->display->display_options['fields']['nid']['field'] = 'nid';
$handler->display->display_options['fields']['nid']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['nid']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['nid']['alter']['trim'] = 0;
$handler->display->display_options['fields']['nid']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['nid']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['nid']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['nid']['alter']['html'] = 0;
$handler->display->display_options['fields']['nid']['hide_empty'] = 0;
$handler->display->display_options['fields']['nid']['empty_zero'] = 0;
$handler->display->display_options['fields']['nid']['link_to_node'] = 0;
/* Field: Node: Title */
$handler->display->display_options['fields']['title']['id'] = 'title';
$handler->display->display_options['fields']['title']['table'] = 'node';
$handler->display->display_options['fields']['title']['field'] = 'title';
$handler->display->display_options['fields']['title']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['title']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['title']['alter']['trim'] = 0;
$handler->display->display_options['fields']['title']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['title']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['title']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['title']['alter']['html'] = 0;
$handler->display->display_options['fields']['title']['hide_empty'] = 0;
$handler->display->display_options['fields']['title']['empty_zero'] = 0;
$handler->display->display_options['fields']['title']['link_to_node'] = 0;
/* Argument: Node: Type */
$handler->display->display_options['arguments']['type']['id'] = 'type';
$handler->display->display_options['arguments']['type']['table'] = 'node';
$handler->display->display_options['arguments']['type']['field'] = 'type';
$handler->display->display_options['arguments']['type']['default_action'] = 'empty';
$handler->display->display_options['arguments']['type']['style_plugin'] = 'default_summary';

/* Display: Feed */
$handler = $view->new_display('feed', 'Feed', 'feed_1');
$handler->display->display_options['style_plugin'] = 'views_xml';
$handler->display->display_options['style_options']['provide_file'] = 0;
$handler->display->display_options['style_options']['parent_sort'] = 0;
$handler->display->display_options['path'] = 'foo/bar';

/* Display: Attachment */
$handler = $view->new_display('attachment', 'Attachment', 'attachment_1');
$handler->display->display_options['displays'] = array(
  'block_1' => 'block_1',
  'default' => 0,
);

/* Display: Block */
$handler = $view->new_display('block', 'Block', 'block_1');
$handler->display->display_options['block_description'] = 'adf';
dawehner’s picture

Status: Needs work » Needs review

update stuats

Scott Reynolds’s picture

StatusFileSize
new72.49 KB

Tested with the following View. It uses the table style with a group by, with a relationship different fields are rendered as links and hide if empty stuff. the options carried through when exported and re-imported.

Now this patch is HEAVY, but I read through and get the gist of it. It did fail to apply for me in two spots, one was a new line, and the other was in admin.inc, hence why I rerolled it. And its a CVS diff, which means that it might not put the views_plugin_argument_default_fixed.inc in the right spot

$view = new view;
$view->name = 'testing';
$view->description = '';
$view->tag = '';
$view->view_php = '';
$view->base_table = 'node';
$view->is_cacheable = FALSE;
$view->api_version = 2;
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */

/* Display: Defaults */
$handler = $view->new_display('default', 'Defaults', 'default');
$handler->display->display_options['access']['type'] = 'none';
$handler->display->display_options['cache']['type'] = 'none';
$handler->display->display_options['exposed_form']['type'] = 'basic';
$handler->display->display_options['style_plugin'] = 'table';
$handler->display->display_options['style_options']['grouping'] = 'title';
$handler->display->display_options['style_options']['columns'] = array(
  'title' => 'title',
  'type' => 'type',
  'changed' => 'changed',
);
$handler->display->display_options['style_options']['default'] = 'title';
$handler->display->display_options['style_options']['info'] = array(
  'title' => array(
    'sortable' => 1,
    'align' => 'views-align-right',
    'separator' => '',
  ),
  'type' => array(
    'sortable' => 0,
    'align' => '',
    'separator' => '',
  ),
  'changed' => array(
    'sortable' => 0,
    'align' => 'views-align-center',
    'separator' => '',
  ),
);
$handler->display->display_options['style_options']['override'] = 1;
$handler->display->display_options['style_options']['sticky'] = 1;
$handler->display->display_options['style_options']['order'] = 'desc';
/* Relationship: Node: Author */
$handler->display->display_options['relationships']['uid']['id'] = 'uid';
$handler->display->display_options['relationships']['uid']['table'] = 'node';
$handler->display->display_options['relationships']['uid']['field'] = 'uid';
$handler->display->display_options['relationships']['uid']['required'] = 1;
/* Field: Node: Title */
$handler->display->display_options['fields']['title']['id'] = 'title';
$handler->display->display_options['fields']['title']['table'] = 'node';
$handler->display->display_options['fields']['title']['field'] = 'title';
$handler->display->display_options['fields']['title']['label'] = '';
$handler->display->display_options['fields']['title']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['title']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['title']['alter']['trim'] = 0;
$handler->display->display_options['fields']['title']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['title']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['title']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['title']['alter']['html'] = 0;
$handler->display->display_options['fields']['title']['hide_empty'] = 0;
$handler->display->display_options['fields']['title']['empty_zero'] = 0;
$handler->display->display_options['fields']['title']['link_to_node'] = 1;
/* Field: Node: Type */
$handler->display->display_options['fields']['type']['id'] = 'type';
$handler->display->display_options['fields']['type']['table'] = 'node';
$handler->display->display_options['fields']['type']['field'] = 'type';
$handler->display->display_options['fields']['type']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['type']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['type']['alter']['trim'] = 0;
$handler->display->display_options['fields']['type']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['type']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['type']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['type']['alter']['html'] = 0;
$handler->display->display_options['fields']['type']['hide_empty'] = 0;
$handler->display->display_options['fields']['type']['empty_zero'] = 0;
$handler->display->display_options['fields']['type']['link_to_node'] = 0;
/* Field: Node: Updated date */
$handler->display->display_options['fields']['changed']['id'] = 'changed';
$handler->display->display_options['fields']['changed']['table'] = 'node';
$handler->display->display_options['fields']['changed']['field'] = 'changed';
$handler->display->display_options['fields']['changed']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['changed']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['changed']['alter']['trim'] = 0;
$handler->display->display_options['fields']['changed']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['changed']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['changed']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['changed']['alter']['html'] = 0;
$handler->display->display_options['fields']['changed']['hide_empty'] = 0;
$handler->display->display_options['fields']['changed']['empty_zero'] = 0;
/* Field: User: Created date */
$handler->display->display_options['fields']['created']['id'] = 'created';
$handler->display->display_options['fields']['created']['table'] = 'users';
$handler->display->display_options['fields']['created']['field'] = 'created';
$handler->display->display_options['fields']['created']['relationship'] = 'uid';
$handler->display->display_options['fields']['created']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['created']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['created']['alter']['trim'] = 0;
$handler->display->display_options['fields']['created']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['created']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['created']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['created']['alter']['html'] = 0;
$handler->display->display_options['fields']['created']['hide_empty'] = 1;
$handler->display->display_options['fields']['created']['empty_zero'] = 0;
/* Field: User: E-mail */
$handler->display->display_options['fields']['mail']['id'] = 'mail';
$handler->display->display_options['fields']['mail']['table'] = 'users';
$handler->display->display_options['fields']['mail']['field'] = 'mail';
$handler->display->display_options['fields']['mail']['relationship'] = 'uid';
$handler->display->display_options['fields']['mail']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['mail']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['mail']['alter']['trim'] = 0;
$handler->display->display_options['fields']['mail']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['mail']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['mail']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['mail']['alter']['html'] = 0;
$handler->display->display_options['fields']['mail']['hide_empty'] = 1;
$handler->display->display_options['fields']['mail']['empty_zero'] = 0;
/* Field: User: Name */
$handler->display->display_options['fields']['name']['id'] = 'name';
$handler->display->display_options['fields']['name']['table'] = 'users';
$handler->display->display_options['fields']['name']['field'] = 'name';
$handler->display->display_options['fields']['name']['relationship'] = 'uid';
$handler->display->display_options['fields']['name']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['name']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['name']['alter']['trim'] = 0;
$handler->display->display_options['fields']['name']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['name']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['name']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['name']['alter']['html'] = 0;
$handler->display->display_options['fields']['name']['hide_empty'] = 0;
$handler->display->display_options['fields']['name']['empty_zero'] = 0;
$handler->display->display_options['fields']['name']['link_to_user'] = 1;
$handler->display->display_options['fields']['name']['overwrite_anonymous'] = 0;

/* Display: Page */
$handler = $view->new_display('page', 'Page', 'page_1');
$handler->display->display_options['path'] = 'testing';
dawehner’s picture

Status: Needs review » Fixed

Thx. I commited the patch

Status: Fixed » Closed (fixed)

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