diff --git a/cod_gallery/cod_gallery.features.content.inc b/cod_gallery/cod_gallery.features.content.inc
new file mode 100644
index 0000000..0c2cc06
--- /dev/null
+++ b/cod_gallery/cod_gallery.features.content.inc
@@ -0,0 +1,103 @@
+<?php
+
+/**
+ * Implementation of hook_content_default_fields().
+ */
+function cod_gallery_content_default_fields() {
+  $fields = array();
+
+  // Exported field: field_cod_image
+  $fields['cod_image-field_cod_image'] = array(
+    'field_name' => 'field_cod_image',
+    'type_name' => 'cod_image',
+    'display_settings' => array(
+      'weight' => '-4',
+      'parent' => '',
+      'label' => array(
+        'format' => 'hidden',
+      ),
+      'teaser' => array(
+        'format' => 'Medium_linked',
+        'exclude' => 0,
+      ),
+      'full' => array(
+        'format' => 'Large_default',
+        'exclude' => 0,
+      ),
+      '4' => array(
+        'format' => 'image_plain',
+        'exclude' => 0,
+      ),
+      '2' => array(
+        'format' => 'image_plain',
+        'exclude' => 0,
+      ),
+      '3' => array(
+        'format' => 'image_plain',
+        'exclude' => 0,
+      ),
+      'token' => array(
+        'format' => 'image_plain',
+        'exclude' => 0,
+      ),
+    ),
+    'widget_active' => '1',
+    'type' => 'filefield',
+    'required' => '1',
+    'multiple' => '0',
+    'module' => 'filefield',
+    'active' => '1',
+    'list_field' => '0',
+    'list_default' => 1,
+    'description_field' => '0',
+    'widget' => array(
+      'file_extensions' => 'png gif jpg jpeg',
+      'file_path' => 'cod_image',
+      'progress_indicator' => 'bar',
+      'max_filesize_per_file' => '',
+      'max_filesize_per_node' => '',
+      'max_resolution' => '0',
+      'min_resolution' => '0',
+      'alt' => '',
+      'custom_alt' => 0,
+      'title' => '',
+      'custom_title' => 0,
+      'title_type' => 'textfield',
+      'default_image' => NULL,
+      'use_default_image' => 0,
+      'insert' => 0,
+      'insert_styles' => array(
+        'auto' => 0,
+        'link' => 0,
+        'image' => 0,
+        'imagecache_cart' => 0,
+        'imagecache_Large' => 0,
+        'imagecache_Medium' => 0,
+        'imagecache_product' => 0,
+        'imagecache_product_full' => 0,
+        'imagecache_product_list' => 0,
+        'imagecache_Small' => 0,
+        'imagecache_sponsor_logo_bronze' => 0,
+        'imagecache_sponsor_logo_callout' => 0,
+        'imagecache_sponsor_logo_gold' => 0,
+        'imagecache_sponsor_logo_platinum' => 0,
+        'imagecache_sponsor_logo_silver' => 0,
+        'imagecache_uc_thumbnail' => 0,
+      ),
+      'insert_default' => 'auto',
+      'insert_class' => '',
+      'insert_width' => '',
+      'label' => 'Image',
+      'weight' => '-4',
+      'description' => '',
+      'type' => 'imagefield_widget',
+      'module' => 'imagefield',
+    ),
+  );
+
+  // Translatables
+  // Included for use with string extractors like potx.
+  t('Image');
+
+  return $fields;
+}
diff --git a/cod_gallery/cod_gallery.features.inc b/cod_gallery/cod_gallery.features.inc
new file mode 100644
index 0000000..8a6fc1a
--- /dev/null
+++ b/cod_gallery/cod_gallery.features.inc
@@ -0,0 +1,63 @@
+<?php
+
+/**
+ * Implementation of hook_ctools_plugin_api().
+ */
+function cod_gallery_ctools_plugin_api() {
+  list($module, $api) = func_get_args();
+  if ($module == "strongarm" && $api == "strongarm") {
+    return array("version" => 1);
+  }
+}
+
+/**
+ * Implementation of hook_imagecache_default_presets().
+ */
+function cod_gallery_imagecache_default_presets() {
+  $items = array(
+    'cod_gallery' => array(
+      'presetname' => 'cod_gallery',
+      'actions' => array(
+        '0' => array(
+          'weight' => '0',
+          'module' => 'imagecache',
+          'action' => 'imagecache_scale_and_crop',
+          'data' => array(
+            'width' => '200',
+            'height' => '200',
+          ),
+        ),
+      ),
+    ),
+  );
+  return $items;
+}
+
+/**
+ * Implementation of hook_node_info().
+ */
+function cod_gallery_node_info() {
+  $items = array(
+    'cod_image' => array(
+      'name' => t('Image'),
+      'module' => 'features',
+      'description' => '',
+      'has_title' => '1',
+      'title_label' => t('Title'),
+      'has_body' => '1',
+      'body_label' => t('Body'),
+      'min_word_count' => '0',
+      'help' => '',
+    ),
+  );
+  return $items;
+}
+
+/**
+ * Implementation of hook_views_api().
+ */
+function cod_gallery_views_api() {
+  return array(
+    'api' => '2',
+  );
+}
diff --git a/cod_gallery/cod_gallery.features.menu_links.inc b/cod_gallery/cod_gallery.features.menu_links.inc
new file mode 100644
index 0000000..6e1b62a
--- /dev/null
+++ b/cod_gallery/cod_gallery.features.menu_links.inc
@@ -0,0 +1,29 @@
+<?php
+
+/**
+ * Implementation of hook_menu_default_menu_links().
+ */
+function cod_gallery_menu_default_menu_links() {
+  $menu_links = array();
+
+  // Exported menu link: primary-links:gallery
+  $menu_links['primary-links:gallery'] = array(
+    'menu_name' => 'primary-links',
+    'link_path' => 'gallery',
+    'router_path' => 'gallery',
+    'link_title' => 'Gallery',
+    'options' => array(),
+    'module' => 'system',
+    'hidden' => '0',
+    'external' => '0',
+    'has_children' => '0',
+    'expanded' => '0',
+    'weight' => '-41',
+  );
+  // Translatables
+  // Included for use with string extractors like potx.
+  t('Gallery');
+
+
+  return $menu_links;
+}
diff --git a/cod_gallery/cod_gallery.features.user_permission.inc b/cod_gallery/cod_gallery.features.user_permission.inc
new file mode 100644
index 0000000..330849e
--- /dev/null
+++ b/cod_gallery/cod_gallery.features.user_permission.inc
@@ -0,0 +1,73 @@
+<?php
+
+/**
+ * Implementation of hook_user_default_permissions().
+ */
+function cod_gallery_user_default_permissions() {
+  $permissions = array();
+
+  // Exported permission: create cod_image content
+  $permissions['create cod_image content'] = array(
+    'name' => 'create cod_image content',
+    'roles' => array(
+      '0' => 'site administrator',
+      '1' => 'sponsor organizer',
+    ),
+  );
+
+  // Exported permission: delete any cod_image content
+  $permissions['delete any cod_image content'] = array(
+    'name' => 'delete any cod_image content',
+    'roles' => array(),
+  );
+
+  // Exported permission: delete own cod_image content
+  $permissions['delete own cod_image content'] = array(
+    'name' => 'delete own cod_image content',
+    'roles' => array(
+      '0' => 'attendee manager',
+      '1' => 'session organizer',
+      '2' => 'site administrator',
+      '3' => 'sponsor organizer',
+    ),
+  );
+
+  // Exported permission: edit any cod_image content
+  $permissions['edit any cod_image content'] = array(
+    'name' => 'edit any cod_image content',
+    'roles' => array(
+      '0' => 'session organizer',
+      '1' => 'site administrator',
+      '2' => 'sponsor organizer',
+    ),
+  );
+
+  // Exported permission: edit field_cod_image
+  $permissions['edit field_cod_image'] = array(
+    'name' => 'edit field_cod_image',
+    'roles' => array(
+      '0' => 'session organizer',
+      '1' => 'site administrator',
+      '2' => 'sponsor organizer',
+    ),
+  );
+
+  // Exported permission: edit own cod_image content
+  $permissions['edit own cod_image content'] = array(
+    'name' => 'edit own cod_image content',
+    'roles' => array(
+      '0' => 'attendee manager',
+    ),
+  );
+
+  // Exported permission: view field_cod_image
+  $permissions['view field_cod_image'] = array(
+    'name' => 'view field_cod_image',
+    'roles' => array(
+      '0' => 'anonymous user',
+      '1' => 'authenticated user',
+    ),
+  );
+
+  return $permissions;
+}
diff --git a/cod_gallery/cod_gallery.info b/cod_gallery/cod_gallery.info
new file mode 100644
index 0000000..0e833de
--- /dev/null
+++ b/cod_gallery/cod_gallery.info
@@ -0,0 +1,38 @@
+core = "6.x"
+dependencies[] = "basesite_img_presets"
+dependencies[] = "content_permissions"
+dependencies[] = "features"
+dependencies[] = "imagecache"
+dependencies[] = "imagefield"
+dependencies[] = "menu"
+dependencies[] = "strongarm"
+dependencies[] = "views"
+description = "COD Feature to display and share photos"
+features[content][] = "cod_image-field_cod_image"
+features[ctools][] = "strongarm:strongarm:1"
+features[imagecache][] = "cod_gallery"
+features[menu_links][] = "primary-links:gallery"
+features[node][] = "cod_image"
+features[user_permission][] = "create cod_image content"
+features[user_permission][] = "delete any cod_image content"
+features[user_permission][] = "delete own cod_image content"
+features[user_permission][] = "edit any cod_image content"
+features[user_permission][] = "edit field_cod_image"
+features[user_permission][] = "edit own cod_image content"
+features[user_permission][] = "view field_cod_image"
+features[variable][] = "comment_anonymous_cod_image"
+features[variable][] = "comment_cod_image"
+features[variable][] = "comment_controls_cod_image"
+features[variable][] = "comment_default_mode_cod_image"
+features[variable][] = "comment_default_order_cod_image"
+features[variable][] = "comment_default_per_page_cod_image"
+features[variable][] = "comment_form_location_cod_image"
+features[variable][] = "comment_preview_cod_image"
+features[variable][] = "comment_subject_field_cod_image"
+features[variable][] = "content_extra_weights_cod_image"
+features[variable][] = "node_options_cod_image"
+features[variable][] = "pathauto_node_cod_image_pattern"
+features[views][] = "cod_gallery"
+features[views_api][] = "api:2"
+name = "COD Gallery"
+package = "Features"
diff --git a/cod_gallery/cod_gallery.module b/cod_gallery/cod_gallery.module
new file mode 100644
index 0000000..e161e58
--- /dev/null
+++ b/cod_gallery/cod_gallery.module
@@ -0,0 +1,3 @@
+<?php
+
+include_once('cod_gallery.features.inc');
diff --git a/cod_gallery/cod_gallery.strongarm.inc b/cod_gallery/cod_gallery.strongarm.inc
new file mode 100644
index 0000000..c13a793
--- /dev/null
+++ b/cod_gallery/cod_gallery.strongarm.inc
@@ -0,0 +1,107 @@
+<?php
+
+/**
+ * Implementation of hook_strongarm().
+ */
+function cod_gallery_strongarm() {
+  $export = array();
+
+  $strongarm = new stdClass;
+  $strongarm->disabled = FALSE; /* Edit this to true to make a default strongarm disabled initially */
+  $strongarm->api_version = 1;
+  $strongarm->name = 'comment_anonymous_cod_image';
+  $strongarm->value = 0;
+  $export['comment_anonymous_cod_image'] = $strongarm;
+
+  $strongarm = new stdClass;
+  $strongarm->disabled = FALSE; /* Edit this to true to make a default strongarm disabled initially */
+  $strongarm->api_version = 1;
+  $strongarm->name = 'comment_cod_image';
+  $strongarm->value = '2';
+  $export['comment_cod_image'] = $strongarm;
+
+  $strongarm = new stdClass;
+  $strongarm->disabled = FALSE; /* Edit this to true to make a default strongarm disabled initially */
+  $strongarm->api_version = 1;
+  $strongarm->name = 'comment_controls_cod_image';
+  $strongarm->value = '3';
+  $export['comment_controls_cod_image'] = $strongarm;
+
+  $strongarm = new stdClass;
+  $strongarm->disabled = FALSE; /* Edit this to true to make a default strongarm disabled initially */
+  $strongarm->api_version = 1;
+  $strongarm->name = 'comment_default_mode_cod_image';
+  $strongarm->value = '4';
+  $export['comment_default_mode_cod_image'] = $strongarm;
+
+  $strongarm = new stdClass;
+  $strongarm->disabled = FALSE; /* Edit this to true to make a default strongarm disabled initially */
+  $strongarm->api_version = 1;
+  $strongarm->name = 'comment_default_order_cod_image';
+  $strongarm->value = '1';
+  $export['comment_default_order_cod_image'] = $strongarm;
+
+  $strongarm = new stdClass;
+  $strongarm->disabled = FALSE; /* Edit this to true to make a default strongarm disabled initially */
+  $strongarm->api_version = 1;
+  $strongarm->name = 'comment_default_per_page_cod_image';
+  $strongarm->value = '50';
+  $export['comment_default_per_page_cod_image'] = $strongarm;
+
+  $strongarm = new stdClass;
+  $strongarm->disabled = FALSE; /* Edit this to true to make a default strongarm disabled initially */
+  $strongarm->api_version = 1;
+  $strongarm->name = 'comment_form_location_cod_image';
+  $strongarm->value = '0';
+  $export['comment_form_location_cod_image'] = $strongarm;
+
+  $strongarm = new stdClass;
+  $strongarm->disabled = FALSE; /* Edit this to true to make a default strongarm disabled initially */
+  $strongarm->api_version = 1;
+  $strongarm->name = 'comment_preview_cod_image';
+  $strongarm->value = '1';
+  $export['comment_preview_cod_image'] = $strongarm;
+
+  $strongarm = new stdClass;
+  $strongarm->disabled = FALSE; /* Edit this to true to make a default strongarm disabled initially */
+  $strongarm->api_version = 1;
+  $strongarm->name = 'comment_subject_field_cod_image';
+  $strongarm->value = '1';
+  $export['comment_subject_field_cod_image'] = $strongarm;
+
+  $strongarm = new stdClass;
+  $strongarm->disabled = FALSE; /* Edit this to true to make a default strongarm disabled initially */
+  $strongarm->api_version = 1;
+  $strongarm->name = 'content_extra_weights_cod_image';
+  $strongarm->value = array(
+    'title' => '-5',
+    'body_field' => '-3',
+    'revision_information' => '-1',
+    'author' => '0',
+    'options' => '1',
+    'comment_settings' => '4',
+    'menu' => '-2',
+    'path' => '3',
+    'path_redirect' => '2',
+  );
+  $export['content_extra_weights_cod_image'] = $strongarm;
+
+  $strongarm = new stdClass;
+  $strongarm->disabled = FALSE; /* Edit this to true to make a default strongarm disabled initially */
+  $strongarm->api_version = 1;
+  $strongarm->name = 'node_options_cod_image';
+  $strongarm->value = array(
+    0 => 'status',
+    1 => 'promote',
+  );
+  $export['node_options_cod_image'] = $strongarm;
+
+  $strongarm = new stdClass;
+  $strongarm->disabled = FALSE; /* Edit this to true to make a default strongarm disabled initially */
+  $strongarm->api_version = 1;
+  $strongarm->name = 'pathauto_node_cod_image_pattern';
+  $strongarm->value = 'gallery/[title-raw]';
+  $export['pathauto_node_cod_image_pattern'] = $strongarm;
+
+  return $export;
+}
diff --git a/cod_gallery/cod_gallery.views_default.inc b/cod_gallery/cod_gallery.views_default.inc
new file mode 100644
index 0000000..e433348
--- /dev/null
+++ b/cod_gallery/cod_gallery.views_default.inc
@@ -0,0 +1,185 @@
+<?php
+
+/**
+ * Implementation of hook_views_default_views().
+ */
+function cod_gallery_views_default_views() {
+  $views = array();
+
+  // Exported view: cod_gallery
+  $view = new view;
+  $view->name = 'cod_gallery';
+  $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('fields', array(
+    'field_cod_image_fid' => array(
+      'label' => '',
+      'alter' => array(
+        'alter_text' => 0,
+        'text' => '',
+        'make_link' => 0,
+        'path' => '',
+        'link_class' => '',
+        'alt' => '',
+        'prefix' => '',
+        'suffix' => '',
+        'target' => '',
+        'help' => '',
+        'trim' => 0,
+        'max_length' => '',
+        'word_boundary' => 1,
+        'ellipsis' => 1,
+        'html' => 0,
+        'strip_tags' => 0,
+      ),
+      'empty' => '',
+      'hide_empty' => 0,
+      'empty_zero' => 0,
+      'link_to_node' => 0,
+      'label_type' => 'none',
+      'format' => 'cod_gallery_linked',
+      'multiple' => array(
+        'group' => TRUE,
+        'multiple_number' => '',
+        'multiple_from' => '',
+        'multiple_reversed' => FALSE,
+      ),
+      'exclude' => 0,
+      'id' => 'field_cod_image_fid',
+      'table' => 'node_data_field_cod_image',
+      'field' => 'field_cod_image_fid',
+      'relationship' => 'none',
+    ),
+    'title' => array(
+      'label' => '',
+      'alter' => array(
+        'alter_text' => 0,
+        'text' => '',
+        'make_link' => 0,
+        'path' => '',
+        'link_class' => '',
+        'alt' => '',
+        'prefix' => '',
+        'suffix' => '',
+        'target' => '',
+        'help' => '',
+        'trim' => 0,
+        'max_length' => '30',
+        'word_boundary' => 1,
+        'ellipsis' => 1,
+        'html' => 0,
+        'strip_tags' => 0,
+      ),
+      'empty' => '',
+      'hide_empty' => 0,
+      'empty_zero' => 0,
+      'link_to_node' => 1,
+      'exclude' => 0,
+      'id' => 'title',
+      'table' => 'node',
+      'field' => 'title',
+      'relationship' => 'none',
+    ),
+  ));
+  $handler->override_option('sorts', array(
+    'created' => array(
+      'order' => 'DESC',
+      'granularity' => 'second',
+      'id' => 'created',
+      'table' => 'node',
+      'field' => 'created',
+      'relationship' => 'none',
+      'override' => array(
+        'button' => 'Override',
+      ),
+    ),
+  ));
+  $handler->override_option('filters', array(
+    'status' => array(
+      'operator' => '=',
+      'value' => '1',
+      'group' => '0',
+      'exposed' => FALSE,
+      'expose' => array(
+        'operator' => FALSE,
+        'label' => '',
+      ),
+      'id' => 'status',
+      'table' => 'node',
+      'field' => 'status',
+      'relationship' => 'none',
+    ),
+    'type' => array(
+      'operator' => 'in',
+      'value' => array(
+        'cod_image' => 'cod_image',
+      ),
+      'group' => '0',
+      'exposed' => FALSE,
+      'expose' => array(
+        'operator' => FALSE,
+        'label' => '',
+      ),
+      'id' => 'type',
+      'table' => 'node',
+      'field' => 'type',
+      'relationship' => 'none',
+    ),
+  ));
+  $handler->override_option('access', array(
+    'type' => 'none',
+  ));
+  $handler->override_option('cache', array(
+    'type' => 'none',
+  ));
+  $handler->override_option('title', 'Image Gallery');
+  $handler->override_option('items_per_page', 12);
+  $handler->override_option('use_pager', '1');
+  $handler->override_option('style_plugin', 'grid');
+  $handler->override_option('style_options', array(
+    'grouping' => '',
+    'columns' => '3',
+    'alignment' => 'horizontal',
+    'fill_single_line' => 1,
+  ));
+  $handler = $view->new_display('page', 'Page', 'page_1');
+  $handler->override_option('path', 'gallery');
+  $handler->override_option('menu', array(
+    'type' => 'normal',
+    'title' => 'Gallery',
+    'description' => '',
+    'weight' => '0',
+    'name' => 'primary-links',
+  ));
+  $handler->override_option('tab_options', array(
+    'type' => 'none',
+    'title' => '',
+    'description' => '',
+    'weight' => 0,
+    'name' => 'navigation',
+  ));
+  $handler = $view->new_display('block', 'Block', 'block_1');
+  $handler->override_option('title', 'Recent Photo');
+  $handler->override_option('items_per_page', 3);
+  $handler->override_option('use_pager', '0');
+  $handler->override_option('use_more', 1);
+  $handler->override_option('use_more_always', 0);
+  $handler->override_option('style_options', array(
+    'grouping' => '',
+    'columns' => '1',
+    'alignment' => 'horizontal',
+    'fill_single_line' => 1,
+  ));
+  $handler->override_option('block_description', '');
+  $handler->override_option('block_caching', -1);
+
+  $views[$view->name] = $view;
+
+  return $views;
+}
