Index: includes/flag.views_default.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/flag/includes/Attic/flag.views_default.inc,v
retrieving revision 1.1.2.1
diff -u -F^[^a-z]*function -r1.1.2.1 flag.views_default.inc
--- includes/flag.views_default.inc	16 Sep 2008 09:02:39 -0000	1.1.2.1
+++ includes/flag.views_default.inc	2 Oct 2008 13:55:37 -0000
@@ -13,6 +13,9 @@ function flag_views_default_views() {
   $views = array();
   _flag_views_node_default_views($views);
   _flag_views_user_default_views($views);
+  if (module_exists('comment')) {
+    _flag_views_comment_default_views($views);
+  }
   return $views;
 }
 
@@ -277,3 +280,205 @@ function _flag_views_user_default_views(
     $views[$view->name] = $view;
   }
 }
+
+function _flag_views_comment_default_views(&$views) {
+  $flags = flag_get_flags('comment');
+
+  foreach ($flags as $flag) {
+    $menu_title = drupal_ucfirst($flag->get_title());
+
+    $view = new view;
+    $view->name = 'flag_'. $flag->name;
+    $view->description = '';
+    $view->tag = 'flag';
+    $view->view_php = '';
+    $view->base_table = 'comments';
+    $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(
+      'flag_content_rel' => array(
+        'label' => $flag->name,
+        'required' => 1,
+        'flag' => $flag->name,
+        'user_scope' => 'any',
+        'id' => 'flag_content_rel',
+        'table' => 'comments',
+        'field' => 'flag_content_rel',
+        'relationship' => 'none',
+      ),
+      'uid' => array(
+        'id' => 'uid',
+        'table' => 'flag_content',
+        'field' => 'uid',
+        'relationship' => 'flag_content_rel',
+      ),
+      'nid' => array(
+        'label' => 'Node',
+        'required' => 0,
+        'id' => 'nid',
+        'table' => 'comments',
+        'field' => 'nid',
+        'relationship' => 'none',
+      ),
+    ));
+    $handler->override_option('fields', array(
+      'subject' => array(
+        'id' => 'subject',
+        'table' => 'comments',
+        'field' => 'subject',
+        'label' => '',
+        'link_to_comment' => 1,
+        'relationship' => 'none',
+      ),
+      'name' => array(
+        'label' => 'Flagged by',
+        'link_to_user' => 1,
+        'exclude' => 0,
+        'id' => 'name',
+        'table' => 'users',
+        'field' => 'name',
+        'relationship' => 'uid',
+      ),
+    ));
+    $handler->override_option('sorts', array(
+      'timestamp' => array(
+        'order' => 'DESC',
+        'granularity' => 'second',
+        'id' => 'timestamp',
+        'table' => 'flag_content',
+        'field' => 'timestamp',
+        'relationship' => 'flag_content_rel',
+      ),
+    ));
+    $handler->override_option('access', array(
+      'type' => 'none',
+      'role' => array(),
+      'perm' => '',
+    ));
+    $handler->override_option('title', 'Flagged comments');
+    $handler->override_option('items_per_page', 5);
+    $handler->override_option('use_more', 1);
+    $handler->override_option('style_plugin', 'table');
+    $handler->override_option('style_options', array(
+      'grouping' => '',
+      'override' => 0,
+      'sticky' => 1,
+      'order' => 'asc',
+      'columns' => array(
+        'subject' => 'subject',
+        'name' => 'name',
+        'timestamp' => 'timestamp',
+        'ops' => 'ops',
+        'delete_comment' => 'ops',
+        'edit_comment' => 'ops',
+      ),
+      'info' => array(
+        'subject' => array(
+          'sortable' => 1,
+          'separator' => '',
+        ),
+        'name' => array(
+          'sortable' => 1,
+          'separator' => '',
+        ),
+        'timestamp' => array(
+          'sortable' => 1,
+          'separator' => '',
+        ),
+        'ops' => array(
+          'separator' => '  | ',
+        ),
+        'delete_comment' => array(
+          'separator' => '',
+        ),
+        'edit_comment' => array(
+          'separator' => '',
+        ),
+      ),
+      'default' => '-1',
+    ));
+    $handler = $view->new_display('page', 'Page', 'page');
+    $handler->override_option('fields', array(
+      'subject' => array(
+        'label' => 'Comment',
+        'link_to_comment' => 1,
+        'exclude' => 0,
+        'id' => 'subject',
+        'table' => 'comments',
+        'field' => 'subject',
+        'relationship' => 'none',
+      ),
+      'title' => array(
+        'label' => 'Post',
+        'link_to_node' => 1,
+        'exclude' => 0,
+        'id' => 'title',
+        'table' => 'node',
+        'field' => 'title',
+        'relationship' => 'nid',
+      ),
+      'name' => array(
+        'label' => 'Flagged by',
+        'link_to_user' => 1,
+        'exclude' => 0,
+        'id' => 'name',
+        'table' => 'users',
+        'field' => 'name',
+        'relationship' => 'uid',
+      ),
+      'timestamp' => array(
+        'id' => 'timestamp',
+        'table' => 'flag_content',
+        'field' => 'timestamp',
+      ),
+      'ops' => array(
+        'label' => 'Operations',
+        'exclude' => 0,
+        'id' => 'ops',
+        'table' => 'flag_content',
+        'field' => 'ops',
+        'relationship' => 'flag_content_rel',
+      ),
+      'delete_comment' => array(
+        'label' => 'Delete',
+        'text' => '',
+        'exclude' => 0,
+        'id' => 'delete_comment',
+        'table' => 'comments',
+        'field' => 'delete_comment',
+        'relationship' => 'none',
+      ),
+      'edit_comment' => array(
+        'label' => 'Edit',
+        'text' => '',
+        'exclude' => 0,
+        'id' => 'edit_comment',
+        'table' => 'comments',
+        'field' => 'edit_comment',
+        'relationship' => 'none',
+      ),
+    ));
+    $handler->override_option('items_per_page', 25);
+    $handler->override_option('use_pager', '1');
+    $handler->override_option('path', 'flags/'. $flag->name);
+    $handler->override_option('menu', array(
+      'type' => 'normal',
+      'title' => $menu_title,
+      'weight' => '0',
+      'name' => 'navigation',
+    ));
+    $handler->override_option('tab_options', array(
+      'type' => 'none',
+      'title' => '',
+      'weight' => 0,
+    ));
+    $handler = $view->new_display('block', 'Block', 'block');
+    $handler->override_option('block_description', 'Flagged comments view');
+    $handler->override_option('block_caching', -1);
+
+    $views[$view->name] = $view;
+  }
+}
+
