Initial features release

Packaged and configured the highest priority features (and a few others...) for deployment testing
This commit is contained in:
Tristan Olive 2013-01-09 23:17:37 -05:00 committed by Oliver Bock
parent b22416d789
commit 8b33b231e0
63 changed files with 6777 additions and 0 deletions

View File

@ -0,0 +1,11 @@
<?php
/**
* Implementation of hook_ctools_plugin_api().
*/
function boinc_server_migration_ctools_plugin_api() {
list($module, $api) = func_get_args();
if ($module == "strongarm" && $api == "strongarm") {
return array("version" => 1);
}
}

View File

@ -0,0 +1,16 @@
name = "BOINC server migration"
description = "Import data from an existing BOINC server"
core = "6.x"
package = "Features"
dependencies[] = "boinc_standard"
dependencies[] = "boincimport"
dependencies[] = "boincteam"
dependencies[] = "boincuser"
dependencies[] = "friends"
dependencies[] = "private_messages"
dependencies[] = "strongarm"
dependencies[] = "taxonomy"
dependencies[] = "user_preferences"
dependencies[] = "user_profiles"
features[ctools][] = "strongarm:strongarm:1"
features[variable][] = "boincimport_input_format"

View File

@ -0,0 +1,3 @@
<?php
include_once('boinc_server_migration.features.inc');

View File

@ -0,0 +1,17 @@
<?php
/**
* Implementation of hook_strongarm().
*/
function boinc_server_migration_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 = 'boincimport_input_format';
$strongarm->value = '4';
$export['boincimport_input_format'] = $strongarm;
return $export;
}

View File

@ -0,0 +1,43 @@
<?php
/**
* Implementation of hook_ctools_plugin_api().
*/
function boinc_standard_ctools_plugin_api() {
list($module, $api) = func_get_args();
if ($module == "input_formats" && $api == "input_formats") {
return array("version" => 1);
}
elseif ($module == "page_manager" && $api == "pages_default") {
return array("version" => 1);
}
elseif ($module == "panels_mini" && $api == "panels_default") {
return array("version" => 1);
}
elseif ($module == "strongarm" && $api == "strongarm") {
return array("version" => 1);
}
elseif ($module == "wysiwyg" && $api == "wysiwyg") {
return array("version" => 2);
}
}
/**
* Implementation of hook_node_info().
*/
function boinc_standard_node_info() {
$items = array(
'page' => array(
'name' => t('Page'),
'module' => 'features',
'description' => t('A <em>page</em>, similar in form to a <em>story</em>, is a simple method for creating and displaying information that rarely changes, such as an "About us" section of a website. By default, a <em>page</em> entry does not allow visitor comments and is not featured on the site\'s initial home page.'),
'has_title' => '1',
'title_label' => t('Title'),
'has_body' => '1',
'body_label' => t('Body'),
'min_word_count' => '0',
'help' => '',
),
);
return $items;
}

View File

@ -0,0 +1,22 @@
<?php
/**
* Implementation of hook_menu_default_menu_custom().
*/
function boinc_standard_menu_default_menu_custom() {
$menus = array();
// Exported menu: menu-footer-links
$menus['menu-footer-links'] = array(
'menu_name' => 'menu-footer-links',
'title' => 'Footer links',
'description' => 'Auxiliary menu, typically at the bottom of the page in the footer, that includes links to content such as "about us" or "privacy policy" etc.',
);
// Translatables
// Included for use with string extractors like potx.
t('Auxiliary menu, typically at the bottom of the page in the footer, that includes links to content such as "about us" or "privacy policy" etc.');
t('Footer links');
return $menus;
}

View File

@ -0,0 +1,167 @@
<?php
/**
* Implementation of hook_menu_default_menu_links().
*/
function boinc_standard_menu_default_menu_links() {
$menu_links = array();
// Exported menu link: menu-footer-links:http://boinc.berkeley.edu/
$menu_links['menu-footer-links:http://boinc.berkeley.edu/'] = array(
'menu_name' => 'menu-footer-links',
'link_path' => 'http://boinc.berkeley.edu/',
'router_path' => '',
'link_title' => 'BOINC',
'options' => array(
'attributes' => array(
'title' => '',
),
),
'module' => 'menu',
'hidden' => '0',
'external' => '1',
'has_children' => '0',
'expanded' => '0',
'weight' => '10',
);
// Exported menu link: menu-footer-links:node/10
$menu_links['menu-footer-links:node/10'] = array(
'menu_name' => 'menu-footer-links',
'link_path' => 'node/10',
'router_path' => 'node/%',
'link_title' => 'Privacy Policy',
'options' => array(
'attributes' => array(
'title' => 'Privacy policy',
),
),
'module' => 'menu',
'hidden' => '0',
'external' => '0',
'has_children' => '0',
'expanded' => '0',
'weight' => '20',
);
// Exported menu link: menu-footer-links:node/7
$menu_links['menu-footer-links:node/7'] = array(
'menu_name' => 'menu-footer-links',
'link_path' => 'node/7',
'router_path' => 'node/%',
'link_title' => 'About Us',
'options' => array(
'attributes' => array(
'title' => '',
),
),
'module' => 'menu',
'hidden' => '0',
'external' => '0',
'has_children' => '0',
'expanded' => '0',
'weight' => '0',
);
// Exported menu link: menu-footer-links:node/8
$menu_links['menu-footer-links:node/8'] = array(
'menu_name' => 'menu-footer-links',
'link_path' => 'node/8',
'router_path' => 'node/%',
'link_title' => 'Development',
'options' => array(
'attributes' => array(
'title' => 'Project application source code and license',
),
),
'module' => 'menu',
'hidden' => '0',
'external' => '0',
'has_children' => '0',
'expanded' => '0',
'weight' => '5',
);
// Exported menu link: menu-footer-links:node/9
$menu_links['menu-footer-links:node/9'] = array(
'menu_name' => 'menu-footer-links',
'link_path' => 'node/9',
'router_path' => 'node/%',
'link_title' => 'Terms of Use',
'options' => array(
'attributes' => array(
'title' => 'Terms of use',
),
),
'module' => 'menu',
'hidden' => '0',
'external' => '0',
'has_children' => '0',
'expanded' => '0',
'weight' => '15',
);
// Exported menu link: primary-links:<front>
$menu_links['primary-links:<front>'] = array(
'menu_name' => 'primary-links',
'link_path' => '<front>',
'router_path' => '',
'link_title' => 'Home',
'options' => array(
'attributes' => array(
'title' => '',
),
),
'module' => 'menu',
'hidden' => '0',
'external' => '1',
'has_children' => '0',
'expanded' => '0',
'weight' => '0',
);
// Exported menu link: primary-links:dashboard
$menu_links['primary-links:dashboard'] = array(
'menu_name' => 'primary-links',
'link_path' => 'dashboard',
'router_path' => 'dashboard',
'link_title' => 'Account',
'options' => array(
'attributes' => array(
'title' => '',
),
),
'module' => 'menu',
'hidden' => '0',
'external' => '0',
'has_children' => '1',
'expanded' => '1',
'weight' => '5',
);
// Exported menu link: primary-links:user/me/edit
$menu_links['primary-links:user/me/edit'] = array(
'menu_name' => 'primary-links',
'link_path' => 'user/me/edit',
'router_path' => 'user/%/edit',
'link_title' => 'Account Info',
'options' => array(
'attributes' => array(
'title' => '',
),
),
'module' => 'menu',
'hidden' => '0',
'external' => '0',
'has_children' => '0',
'expanded' => '0',
'weight' => '10',
'parent_path' => 'dashboard',
);
// Translatables
// Included for use with string extractors like potx.
t('About Us');
t('Account');
t('Account Info');
t('BOINC');
t('Development');
t('Home');
t('Privacy Policy');
t('Terms of Use');
return $menu_links;
}

View File

@ -0,0 +1,511 @@
<?php
/**
* Implementation of hook_user_default_permissions().
*/
function boinc_standard_user_default_permissions() {
$permissions = array();
// Exported permission: Use PHP input for field settings (dangerous - grant with care)
$permissions['Use PHP input for field settings (dangerous - grant with care)'] = array(
'name' => 'Use PHP input for field settings (dangerous - grant with care)',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: access administration pages
$permissions['access administration pages'] = array(
'name' => 'access administration pages',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: access all views
$permissions['access all views'] = array(
'name' => 'access all views',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: access content
$permissions['access content'] = array(
'name' => 'access content',
'roles' => array(
'0' => 'administrator',
'1' => 'anonymous user',
'2' => 'authenticated user',
),
);
// Exported permission: access site reports
$permissions['access site reports'] = array(
'name' => 'access site reports',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: administer actions
$permissions['administer actions'] = array(
'name' => 'administer actions',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: administer advanced pane settings
$permissions['administer advanced pane settings'] = array(
'name' => 'administer advanced pane settings',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: administer blocks
$permissions['administer blocks'] = array(
'name' => 'administer blocks',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: administer content types
$permissions['administer content types'] = array(
'name' => 'administer content types',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: administer features
$permissions['administer features'] = array(
'name' => 'administer features',
'roles' => array(),
);
// Exported permission: administer files
$permissions['administer files'] = array(
'name' => 'administer files',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: administer filters
$permissions['administer filters'] = array(
'name' => 'administer filters',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: administer imce(execute PHP)
$permissions['administer imce(execute PHP)'] = array(
'name' => 'administer imce(execute PHP)',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: administer menu
$permissions['administer menu'] = array(
'name' => 'administer menu',
'roles' => array(
'0' => 'administrator',
'1' => 'content editor',
),
);
// Exported permission: administer mini panels
$permissions['administer mini panels'] = array(
'name' => 'administer mini panels',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: administer nodes
$permissions['administer nodes'] = array(
'name' => 'administer nodes',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: administer page manager
$permissions['administer page manager'] = array(
'name' => 'administer page manager',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: administer pane access
$permissions['administer pane access'] = array(
'name' => 'administer pane access',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: administer pane visibility
$permissions['administer pane visibility'] = array(
'name' => 'administer pane visibility',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: administer panel-nodes
$permissions['administer panel-nodes'] = array(
'name' => 'administer panel-nodes',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: administer panels layouts
$permissions['administer panels layouts'] = array(
'name' => 'administer panels layouts',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: administer pathauto
$permissions['administer pathauto'] = array(
'name' => 'administer pathauto',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: administer permissions
$permissions['administer permissions'] = array(
'name' => 'administer permissions',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: administer site configuration
$permissions['administer site configuration'] = array(
'name' => 'administer site configuration',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: administer tabtamer
$permissions['administer tabtamer'] = array(
'name' => 'administer tabtamer',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: administer taxonomy
$permissions['administer taxonomy'] = array(
'name' => 'administer taxonomy',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: administer url aliases
$permissions['administer url aliases'] = array(
'name' => 'administer url aliases',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: administer users
$permissions['administer users'] = array(
'name' => 'administer users',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: administer views
$permissions['administer views'] = array(
'name' => 'administer views',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: change own username
$permissions['change own username'] = array(
'name' => 'change own username',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: create mini panels
$permissions['create mini panels'] = array(
'name' => 'create mini panels',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: create page content
$permissions['create page content'] = array(
'name' => 'create page content',
'roles' => array(
'0' => 'administrator',
'1' => 'content editor',
),
);
// Exported permission: create panel-nodes
$permissions['create panel-nodes'] = array(
'name' => 'create panel-nodes',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: create story content
$permissions['create story content'] = array(
'name' => 'create story content',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: create url aliases
$permissions['create url aliases'] = array(
'name' => 'create url aliases',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: delete any page content
$permissions['delete any page content'] = array(
'name' => 'delete any page content',
'roles' => array(
'0' => 'administrator',
'1' => 'content editor',
),
);
// Exported permission: delete any panel-nodes
$permissions['delete any panel-nodes'] = array(
'name' => 'delete any panel-nodes',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: delete any story content
$permissions['delete any story content'] = array(
'name' => 'delete any story content',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: delete own page content
$permissions['delete own page content'] = array(
'name' => 'delete own page content',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: delete own panel-nodes
$permissions['delete own panel-nodes'] = array(
'name' => 'delete own panel-nodes',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: delete own story content
$permissions['delete own story content'] = array(
'name' => 'delete own story content',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: delete revisions
$permissions['delete revisions'] = array(
'name' => 'delete revisions',
'roles' => array(
'0' => 'administrator',
'1' => 'content editor',
),
);
// Exported permission: edit any page content
$permissions['edit any page content'] = array(
'name' => 'edit any page content',
'roles' => array(
'0' => 'administrator',
'1' => 'content editor',
),
);
// Exported permission: edit any panel-nodes
$permissions['edit any panel-nodes'] = array(
'name' => 'edit any panel-nodes',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: edit any story content
$permissions['edit any story content'] = array(
'name' => 'edit any story content',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: edit own page content
$permissions['edit own page content'] = array(
'name' => 'edit own page content',
'roles' => array(
'0' => 'administrator',
'1' => 'authenticated user',
),
);
// Exported permission: edit own panel-nodes
$permissions['edit own panel-nodes'] = array(
'name' => 'edit own panel-nodes',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: edit own story content
$permissions['edit own story content'] = array(
'name' => 'edit own story content',
'roles' => array(
'0' => 'administrator',
'1' => 'authenticated user',
),
);
// Exported permission: import input formats
$permissions['import input formats'] = array(
'name' => 'import input formats',
'roles' => array(),
);
// Exported permission: manage features
$permissions['manage features'] = array(
'name' => 'manage features',
'roles' => array(),
);
// Exported permission: notify of path changes
$permissions['notify of path changes'] = array(
'name' => 'notify of path changes',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: revert revisions
$permissions['revert revisions'] = array(
'name' => 'revert revisions',
'roles' => array(
'0' => 'administrator',
'1' => 'content editor',
),
);
// Exported permission: select different theme
$permissions['select different theme'] = array(
'name' => 'select different theme',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: use PHP for block visibility
$permissions['use PHP for block visibility'] = array(
'name' => 'use PHP for block visibility',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: use PHP for me alias paths
$permissions['use PHP for me alias paths'] = array(
'name' => 'use PHP for me alias paths',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: use page manager
$permissions['use page manager'] = array(
'name' => 'use page manager',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: use panels caching features
$permissions['use panels caching features'] = array(
'name' => 'use panels caching features',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: use panels dashboard
$permissions['use panels dashboard'] = array(
'name' => 'use panels dashboard',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: use panels in place editing
$permissions['use panels in place editing'] = array(
'name' => 'use panels in place editing',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: view all panes
$permissions['view all panes'] = array(
'name' => 'view all panes',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: view pane admin links
$permissions['view pane admin links'] = array(
'name' => 'view pane admin links',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: view revisions
$permissions['view revisions'] = array(
'name' => 'view revisions',
'roles' => array(
'0' => 'administrator',
'1' => 'content editor',
),
);
return $permissions;
}

View File

@ -0,0 +1,20 @@
<?php
/**
* Implementation of hook_user_default_roles().
*/
function boinc_standard_user_default_roles() {
$roles = array();
// Exported role: administrator
$roles['administrator'] = array(
'name' => 'administrator',
);
// Exported role: content editor
$roles['content editor'] = array(
'name' => 'content editor',
);
return $roles;
}

View File

@ -0,0 +1,202 @@
name = "BOINC standard"
description = "Provide common features, such as user roles and rich text editing"
core = "6.x"
package = "Features"
dependencies[] = "bbcode"
dependencies[] = "boincuser"
dependencies[] = "boincwork"
dependencies[] = "content"
dependencies[] = "ctools"
dependencies[] = "exportables"
dependencies[] = "features"
dependencies[] = "imce"
dependencies[] = "imce_wysiwyg"
dependencies[] = "input_formats"
dependencies[] = "me"
dependencies[] = "menu"
dependencies[] = "page_manager"
dependencies[] = "panels"
dependencies[] = "panels_mini"
dependencies[] = "panels_node"
dependencies[] = "path"
dependencies[] = "pathauto"
dependencies[] = "pathologic"
dependencies[] = "php"
dependencies[] = "strongarm"
dependencies[] = "tableofcontents"
dependencies[] = "tabtamer"
dependencies[] = "taxonomy"
dependencies[] = "token"
dependencies[] = "user_preferences"
dependencies[] = "user_profiles"
dependencies[] = "uuid"
dependencies[] = "views"
dependencies[] = "views_content"
dependencies[] = "views_customfield"
dependencies[] = "views_or"
dependencies[] = "views_ui"
dependencies[] = "wysiwyg"
features[ctools][] = "input_formats:input_formats:1"
features[ctools][] = "page_manager:pages_default:1"
features[ctools][] = "panels_mini:panels_default:1"
features[ctools][] = "strongarm:strongarm:1"
features[ctools][] = "wysiwyg:wysiwyg:2"
features[filter_formats][] = "php_code"
features[filter_formats][] = "rich_text"
features[menu_custom][] = "menu-footer-links"
features[menu_links][] = "menu-footer-links:http://boinc.berkeley.edu/"
features[menu_links][] = "menu-footer-links:node/10"
features[menu_links][] = "menu-footer-links:node/7"
features[menu_links][] = "menu-footer-links:node/8"
features[menu_links][] = "menu-footer-links:node/9"
features[menu_links][] = "primary-links:<front>"
features[menu_links][] = "primary-links:dashboard"
features[menu_links][] = "primary-links:user/me/edit"
features[node][] = "page"
features[page_manager_pages][] = "about_us"
features[page_manager_pages][] = "account_dashboard"
features[page_manager_pages][] = "home"
features[panels_mini][] = "dashboard_tables"
features[user_permission][] = "Use PHP input for field settings (dangerous - grant with care)"
features[user_permission][] = "access administration pages"
features[user_permission][] = "access all views"
features[user_permission][] = "access content"
features[user_permission][] = "access site reports"
features[user_permission][] = "administer actions"
features[user_permission][] = "administer advanced pane settings"
features[user_permission][] = "administer blocks"
features[user_permission][] = "administer content types"
features[user_permission][] = "administer features"
features[user_permission][] = "administer files"
features[user_permission][] = "administer filters"
features[user_permission][] = "administer imce(execute PHP)"
features[user_permission][] = "administer menu"
features[user_permission][] = "administer mini panels"
features[user_permission][] = "administer nodes"
features[user_permission][] = "administer page manager"
features[user_permission][] = "administer pane access"
features[user_permission][] = "administer pane visibility"
features[user_permission][] = "administer panel-nodes"
features[user_permission][] = "administer panels layouts"
features[user_permission][] = "administer pathauto"
features[user_permission][] = "administer permissions"
features[user_permission][] = "administer site configuration"
features[user_permission][] = "administer tabtamer"
features[user_permission][] = "administer taxonomy"
features[user_permission][] = "administer url aliases"
features[user_permission][] = "administer users"
features[user_permission][] = "administer views"
features[user_permission][] = "change own username"
features[user_permission][] = "create mini panels"
features[user_permission][] = "create page content"
features[user_permission][] = "create panel-nodes"
features[user_permission][] = "create story content"
features[user_permission][] = "create url aliases"
features[user_permission][] = "delete any page content"
features[user_permission][] = "delete any panel-nodes"
features[user_permission][] = "delete any story content"
features[user_permission][] = "delete own page content"
features[user_permission][] = "delete own panel-nodes"
features[user_permission][] = "delete own story content"
features[user_permission][] = "delete revisions"
features[user_permission][] = "edit any page content"
features[user_permission][] = "edit any panel-nodes"
features[user_permission][] = "edit any story content"
features[user_permission][] = "edit own page content"
features[user_permission][] = "edit own panel-nodes"
features[user_permission][] = "edit own story content"
features[user_permission][] = "import input formats"
features[user_permission][] = "manage features"
features[user_permission][] = "notify of path changes"
features[user_permission][] = "revert revisions"
features[user_permission][] = "select different theme"
features[user_permission][] = "use PHP for block visibility"
features[user_permission][] = "use PHP for me alias paths"
features[user_permission][] = "use page manager"
features[user_permission][] = "use panels caching features"
features[user_permission][] = "use panels dashboard"
features[user_permission][] = "use panels in place editing"
features[user_permission][] = "view all panes"
features[user_permission][] = "view pane admin links"
features[user_permission][] = "view revisions"
features[user_role][] = "administrator"
features[user_role][] = "content editor"
features[variable][] = "comment_page"
features[variable][] = "filter_default_format"
features[variable][] = "format"
features[variable][] = "imce_profiles"
features[variable][] = "imce_roles_profiles"
features[variable][] = "menu_default_node_menu"
features[variable][] = "menu_expanded"
features[variable][] = "menu_primary_links_source"
features[variable][] = "menu_secondary_links_source"
features[variable][] = "node_admin_theme"
features[variable][] = "node_options_page"
features[variable][] = "page_manager_user_view_disabled"
features[variable][] = "panels_legacy_rendering_mode"
features[variable][] = "pathauto_ignore_words"
features[variable][] = "pathauto_indexaliases"
features[variable][] = "pathauto_indexaliases_bulkupdate"
features[variable][] = "pathauto_max_component_length"
features[variable][] = "pathauto_max_length"
features[variable][] = "pathauto_modulelist"
features[variable][] = "pathauto_node_applytofeeds"
features[variable][] = "pathauto_node_bulkupdate"
features[variable][] = "pathauto_node_image_pattern"
features[variable][] = "pathauto_node_page_pattern"
features[variable][] = "pathauto_node_pattern"
features[variable][] = "pathauto_node_story_pattern"
features[variable][] = "pathauto_punctuation_hyphen"
features[variable][] = "pathauto_punctuation_quotes"
features[variable][] = "pathauto_separator"
features[variable][] = "pathauto_taxonomy_2_pattern"
features[variable][] = "pathauto_taxonomy_applytofeeds"
features[variable][] = "pathauto_taxonomy_bulkupdate"
features[variable][] = "pathauto_taxonomy_pattern"
features[variable][] = "pathauto_taxonomy_supportsfeeds"
features[variable][] = "pathauto_update_action"
features[variable][] = "pathauto_user_bulkupdate"
features[variable][] = "pathauto_user_pattern"
features[variable][] = "pathauto_user_supportsfeeds"
features[variable][] = "pathauto_verbose"
features[variable][] = "site_footer"
features[variable][] = "site_frontpage"
features[variable][] = "site_mail"
features[variable][] = "site_mission"
features[variable][] = "site_name"
features[variable][] = "site_offline"
features[variable][] = "site_slogan"
features[variable][] = "tabtamer_tab_settings"
features[variable][] = "theme_boinc_settings"
features[variable][] = "theme_default"
features[variable][] = "theme_einstein_settings"
features[variable][] = "theme_settings"
features[variable][] = "theme_zen_settings"
features[variable][] = "user_email_verification"
features[variable][] = "user_mail_password_reset_body"
features[variable][] = "user_mail_password_reset_subject"
features[variable][] = "user_mail_register_admin_created_body"
features[variable][] = "user_mail_register_admin_created_subject"
features[variable][] = "user_mail_register_no_approval_required_body"
features[variable][] = "user_mail_register_no_approval_required_subject"
features[variable][] = "user_mail_register_pending_approval_body"
features[variable][] = "user_mail_register_pending_approval_subject"
features[variable][] = "user_mail_status_activated_body"
features[variable][] = "user_mail_status_activated_notify"
features[variable][] = "user_mail_status_activated_subject"
features[variable][] = "user_mail_status_blocked_body"
features[variable][] = "user_mail_status_blocked_notify"
features[variable][] = "user_mail_status_blocked_subject"
features[variable][] = "user_mail_status_deleted_body"
features[variable][] = "user_mail_status_deleted_notify"
features[variable][] = "user_mail_status_deleted_subject"
features[variable][] = "user_picture_default"
features[variable][] = "user_picture_dimensions"
features[variable][] = "user_picture_file_size"
features[variable][] = "user_picture_guidelines"
features[variable][] = "user_picture_path"
features[variable][] = "user_pictures"
features[variable][] = "user_register"
features[variable][] = "user_registration_help"
features[variable][] = "user_signatures"
features[wysiwyg][] = "rich_text"

View File

@ -0,0 +1,146 @@
<?php
/**
* Implementation of hook_input_formats().
*/
function boinc_standard_input_formats() {
$input_formats = array();
$input_format = new stdClass;
$input_format->api_version = 1;
$input_format->name = 'PHP code';
$input_format->roles = array();
$input_format->cache = FALSE;
$input_format->settings = array(
);
$input_format->filters = array(
'php' => array(
// Delta => Weight for: PHP evaluator
'0' => '0',
),
);
$input_format->machine = 'php_code';
$input_formats['php_code'] = $input_format;
$input_format = new stdClass;
$input_format->api_version = 1;
$input_format->name = 'Rich text';
$input_format->roles = array(
1 => 'anonymous user',
2 => 'authenticated user',
3 => 'administrator',
4 => 'content editor',
5 => 'moderator',
);
$input_format->cache = TRUE;
$input_format->settings = array(
// Settings for: tableofcontents module
'tableofcontents' => array(
// Hide the table of contents tags
'tableofcontents_hide_table' => 0,
// Whether an automatic table of content should be added
'tableofcontents_automatic' => '0',
// Number of headers before an automatic table of content is added
'tableofcontents_min_limit' => '5',
// Remove Table of Contents tags from teasers
'tableofcontents_remove_teaser' => 1,
// Allow users to override the settings within the table of contents tag itself
'tableofcontents_allow_override' => 1,
// Ensure title is safe (i.e. use check_plain() to avoid XSS attacks.)
'tableofcontents_safe_title' => 1,
// Table of Contents Title
'tableofcontents_title' => 'Table of Contents',
// Minimum heading level
'tableofcontents_minlevel' => '2',
// Maximum heading level
'tableofcontents_maxlevel' => '2',
// Include link to hide/show table of contents
'tableofcontents_hide_show' => 0,
// Start with the table of content collapsed
'tableofcontents_collapsed' => 0,
// Select what is stripped from the header titles
'tableofcontents_id_stripping' => array(
'digits' => 0,
'dashes' => 0,
'periods' => 0,
'underscores' => 0,
'colons' => 0,
),
// Identifier introducer
'tableofcontents_identifier_introducer' => 'header',
// Identifier and number separator
'tableofcontents_id_separator' => '-',
// How to generate missing header identifiers
'tableofcontents_id_generator' => 'title',
// List of tags allowed in table headers
'tableofcontents_allowed_tags' => '<em> <i> <strong> <b> <u> <del> <ins> <sub> <sup> <cite> <strike> <s> <tt> <span> <font> <abbr> <acronym> <dfn> <q> <bdo> <big> <small>',
// Add the comments to the table of contents
'tableofcontents_comments' => 0,
// Select header level at which comments start
'tableofcontents_comments_level' => '3',
// Back to top label
'tableofcontents_back_to_top' => 'Back to top',
// Back to top location
'tableofcontents_back_to_top_location' => 'bottom',
// Minimum level where Back to Top appears
'tableofcontents_back_to_top_minlevel' => '2',
// Maximum level where Back to Top appears
'tableofcontents_back_to_top_maxlevel' => '2',
// Back to top anchor
'tableofcontents_back_to_top_anchor' => 'toc',
// Scroll back to the table of contents
'tableofcontents_scroll_back_to_top' => 0,
// Numbering method
'tableofcontents_numbering' => '4',
// Add the number to the headers
'tableofcontents_number_headers' => 0,
// Numbering mode
'tableofcontents_number_mode' => '0',
// Numbering prefix
'tableofcontents_number_start_letter' => '',
// Numbering separator
'tableofcontents_number_separator' => '.',
// Numbering suffix
'tableofcontents_number_end_letter' => '.',
),
// Settings for: bbcode module
'bbcode' => array(
// Convert addresses to links
'bbcode_make_links' => '1',
// Spam link deterrent
'bbcode_filter_nofollow' => '0',
// Email address encoding
'bbcode_encode_mailto' => '1',
// Smart paragraph and line breaks
'bbcode_paragraph_breaks' => '2',
// Print debugging info
'bbcode_debug' => '0',
),
// Settings for: pathologic module
'pathologic' => array(
// Also considered local
'filter_pathologic_local_paths' => '/',
// Output full absolute URLs
'filter_pathologic_absolute' => 1,
),
);
$input_format->filters = array(
'tableofcontents' => array(
// Delta => Weight for: Table of contents
'0' => '-10',
),
'bbcode' => array(
// Delta => Weight for: BBCode
'0' => '-9',
),
'pathologic' => array(
// Delta => Weight for: Pathologic
'0' => '-8',
),
);
$input_format->machine = 'rich_text';
$input_formats['rich_text'] = $input_format;
return $input_formats;
}

View File

@ -0,0 +1,3 @@
<?php
include_once('boinc_standard.features.inc');

View File

@ -0,0 +1,467 @@
<?php
/**
* Implementation of hook_default_page_manager_pages().
*/
function boinc_standard_default_page_manager_pages() {
$page = new stdClass;
$page->disabled = FALSE; /* Edit this to true to make a default page disabled initially */
$page->api_version = 1;
$page->name = 'about_us';
$page->task = 'page';
$page->admin_title = 'About Us';
$page->admin_description = '';
$page->path = 'about.fail';
$page->access = array();
$page->menu = array();
$page->arguments = array();
$page->conf = array();
$page->default_handlers = array();
$pages['about_us'] = $page;
$page = new stdClass;
$page->disabled = FALSE; /* Edit this to true to make a default page disabled initially */
$page->api_version = 1;
$page->name = 'account_dashboard';
$page->task = 'page';
$page->admin_title = 'Dashboard';
$page->admin_description = '';
$page->path = 'dashboard';
$page->access = array(
'plugins' => array(
1 => array(
'name' => 'role',
'settings' => array(
'rids' => array(
0 => 2,
),
),
'context' => 'logged-in-user',
'not' => FALSE,
),
),
'logic' => 'and',
);
$page->menu = array(
'type' => 'none',
'title' => 'Dashboard',
'name' => 'navigation',
'weight' => '0',
'parent' => array(
'type' => 'normal',
'title' => 'Account',
'name' => 'navigation',
'weight' => '0',
),
);
$page->arguments = array();
$page->conf = array();
$page->default_handlers = array();
$handler = new stdClass;
$handler->disabled = FALSE; /* Edit this to true to make a default handler disabled initially */
$handler->api_version = 1;
$handler->name = 'page_account_dashboard_panel_context';
$handler->task = 'page';
$handler->subtask = 'account_dashboard';
$handler->handler = 'panel_context';
$handler->weight = 0;
$handler->conf = array(
'title' => 'Landing page',
'no_blocks' => FALSE,
'pipeline' => 'ipe',
'css_id' => '',
'css' => '',
'contexts' => array(
0 => array(
'name' => 'user',
'id' => 1,
'identifier' => 'User',
'keyword' => 'user',
'context_settings' => array(
'type' => 'current',
'user' => '',
'uid' => '',
),
),
),
'relationships' => array(),
'access' => array(
'plugins' => array(),
'logic' => 'and',
),
);
$display = new panels_display;
$display->layout = 'one_sidebar_second';
$display->layout_settings = array();
$display->panel_settings = array(
'style_settings' => array(
'default' => NULL,
'content' => NULL,
'sidebar_first' => NULL,
),
);
$display->cache = array();
$display->title = '';
$display->content = array();
$display->panels = array();
$pane = new stdClass;
$pane->pid = 'new-1';
$pane->panel = 'content';
$pane->type = 'panels_mini';
$pane->subtype = 'dashboard_tables';
$pane->shown = TRUE;
$pane->access = array();
$pane->configuration = array(
'override_title' => 1,
'override_title_text' => 'My stats',
);
$pane->cache = array();
$pane->style = array(
'settings' => NULL,
);
$pane->css = array(
'css_id' => '',
'css_class' => 'panel-primary container shadow',
);
$pane->extras = array();
$pane->position = 0;
$display->content['new-1'] = $pane;
$display->panels['content'][0] = 'new-1';
$pane = new stdClass;
$pane->pid = 'new-2';
$pane->panel = 'sidebar_first';
$pane->type = 'panels_mini';
$pane->subtype = 'user_mail_summary';
$pane->shown = TRUE;
$pane->access = array();
$pane->configuration = array(
'override_title' => 0,
'override_title_text' => '',
);
$pane->cache = array();
$pane->style = array(
'settings' => NULL,
);
$pane->css = array(
'css_id' => '',
'css_class' => 'panel-secondary container shadow',
);
$pane->extras = array();
$pane->position = 0;
$display->content['new-2'] = $pane;
$display->panels['sidebar_first'][0] = 'new-2';
$pane = new stdClass;
$pane->pid = 'new-3';
$pane->panel = 'sidebar_first';
$pane->type = 'views';
$pane->subtype = 'og_my';
$pane->shown = TRUE;
$pane->access = array();
$pane->configuration = array(
'override_pager_settings' => 0,
'use_pager' => 1,
'nodes_per_page' => '50',
'pager_id' => '',
'offset' => '0',
'more_link' => 0,
'feed_icons' => 0,
'panel_args' => 0,
'link_to_view' => 0,
'args' => '',
'url' => '',
'display' => 'default',
'override_title' => 1,
'override_title_text' => 'Team',
);
$pane->cache = array();
$pane->style = array(
'settings' => NULL,
);
$pane->css = array(
'css_id' => '',
'css_class' => 'panel-secondary container shadow',
);
$pane->extras = array();
$pane->position = 1;
$display->content['new-3'] = $pane;
$display->panels['sidebar_first'][1] = 'new-3';
$pane = new stdClass;
$pane->pid = 'new-4';
$pane->panel = 'sidebar_first';
$pane->type = 'views';
$pane->subtype = 'friends';
$pane->shown = TRUE;
$pane->access = array();
$pane->configuration = array(
'override_pager_settings' => 0,
'use_pager' => 0,
'nodes_per_page' => '6',
'pager_id' => '',
'offset' => '0',
'more_link' => 0,
'feed_icons' => 0,
'panel_args' => 0,
'link_to_view' => 0,
'args' => '',
'url' => '',
'display' => 'block_1',
'override_title' => 0,
'override_title_text' => '',
'context' => array(
0 => 'context_user_1.uid',
),
);
$pane->cache = array();
$pane->style = array(
'settings' => NULL,
);
$pane->css = array(
'css_id' => '',
'css_class' => 'panel-secondary container shadow',
);
$pane->extras = array();
$pane->position = 2;
$display->content['new-4'] = $pane;
$display->panels['sidebar_first'][2] = 'new-4';
$display->hide_title = PANELS_TITLE_NONE;
$display->title_pane = '0';
$handler->conf['display'] = $display;
$page->default_handlers[$handler->name] = $handler;
$pages['account_dashboard'] = $page;
$page = new stdClass;
$page->disabled = FALSE; /* Edit this to true to make a default page disabled initially */
$page->api_version = 1;
$page->name = 'home';
$page->task = 'page';
$page->admin_title = 'Home page';
$page->admin_description = '';
$page->path = 'home';
$page->access = array();
$page->menu = array(
'type' => 'normal',
'title' => 'Home',
'name' => 'navigation',
'weight' => '0',
'parent' => array(
'type' => 'none',
'title' => '',
'name' => 'navigation',
'weight' => '0',
),
);
$page->arguments = array();
$page->conf = array();
$page->default_handlers = array();
$handler = new stdClass;
$handler->disabled = FALSE; /* Edit this to true to make a default handler disabled initially */
$handler->api_version = 1;
$handler->name = 'page_home_panel_context';
$handler->task = 'page';
$handler->subtask = 'home';
$handler->handler = 'panel_context';
$handler->weight = 0;
$handler->conf = array(
'title' => 'Landing page',
'no_blocks' => FALSE,
'pipeline' => 'ipe',
'css_id' => '',
'css' => '',
'contexts' => array(),
'relationships' => array(),
);
$display = new panels_display;
$display->layout = 'one_sidebar_second';
$display->layout_settings = array();
$display->panel_settings = array(
'style_settings' => array(
'default' => NULL,
'content' => NULL,
'sidebar_first' => NULL,
),
);
$display->cache = array();
$display->title = '';
$display->content = array();
$display->panels = array();
$pane = new stdClass;
$pane->pid = 'new-1';
$pane->panel = 'content';
$pane->type = 'custom';
$pane->subtype = 'custom';
$pane->shown = TRUE;
$pane->access = array(
'plugins' => array(
0 => array(
'name' => 'role',
'settings' => array(
'rids' => array(
0 => 1,
),
),
'context' => 'logged-in-user',
'not' => FALSE,
),
),
);
$pane->configuration = array(
'admin_title' => 'BOINC overview',
'title' => 'What is Einstein@Home?',
'body' => '<div class="boinc-overview">
<div>Einstein@Home is a program that uses your computer\'s idle time to run a screensaver to search for gravitational waves from spinning neutron stars (also called pulsars) using data from the LIGO gravitational wave detector. <a href="about">Learn more.</a></div>
<div><a class="join button" href="join">Join now</a></div>
</div>
<div class="boinc-overview-details">
<div class="detail-container">
<div class="detail-section">
<div class="about text">About Our Screensaver</div>
</div>
<div class="detail-section">
<div class="text">Over 500,000 volunteers and counting.</div>
<div class="platforms">
<div class="platform windows">Windows</div>
<div class="platform mac">Mac</div>
<div class="platform linux">Linux</div>
</div>
</div>
</div>
</div>',
'format' => '2',
'substitute' => TRUE,
);
$pane->cache = array();
$pane->style = array(
'settings' => NULL,
);
$pane->css = array(
'css_id' => '',
'css_class' => 'panel-primary container shadow',
);
$pane->extras = array();
$pane->position = 0;
$display->content['new-1'] = $pane;
$display->panels['content'][0] = 'new-1';
$pane = new stdClass;
$pane->pid = 'new-2';
$pane->panel = 'content';
$pane->type = 'custom';
$pane->subtype = 'custom';
$pane->shown = TRUE;
$pane->access = array(
'plugins' => array(
0 => array(
'name' => 'role',
'settings' => array(
'rids' => array(
0 => 2,
),
),
'context' => 'logged-in-user',
'not' => FALSE,
),
),
);
$pane->configuration = array(
'admin_title' => 'BOINC user home',
'title' => 'Welcome back!',
'body' => '<div class="boinc-overview">
<div>Einstein@Home is a program that uses your computer\'s idle time to run a screensaver to search for gravitational waves from spinning neutron stars (also called pulsars) using data from the LIGO gravitational wave detector. <a href="about">Learn more.</a></div>
<div><a class="join button" href="account">View account</a></div>
</div>
<div class="boinc-overview-details">
<div class="detail-container">
<div class="detail-section">
<div class="about text">About Our Screensaver</div>
</div>
<div class="detail-section">
<div class="text">Over 500,000 volunteers and counting.</div>
<div class="platforms">
<div class="platform windows">Windows</div>
<div class="platform mac">Mac</div>
<div class="platform linux">Linux</div>
</div>
</div>
</div>
</div>',
'format' => '2',
'substitute' => TRUE,
);
$pane->cache = array();
$pane->style = array(
'settings' => NULL,
);
$pane->css = array(
'css_id' => '',
'css_class' => 'panel-primary container shadow',
);
$pane->extras = array();
$pane->position = 1;
$display->content['new-2'] = $pane;
$display->panels['content'][1] = 'new-2';
$pane = new stdClass;
$pane->pid = 'new-3';
$pane->panel = 'sidebar_first';
$pane->type = 'panels_mini';
$pane->subtype = 'project_stats_overview';
$pane->shown = TRUE;
$pane->access = array();
$pane->configuration = array(
'override_title' => 0,
'override_title_text' => '',
);
$pane->cache = array();
$pane->style = array(
'settings' => NULL,
);
$pane->css = array(
'css_id' => '',
'css_class' => 'panel-secondary container shadow',
);
$pane->extras = array();
$pane->position = 0;
$display->content['new-3'] = $pane;
$display->panels['sidebar_first'][0] = 'new-3';
$pane = new stdClass;
$pane->pid = 'new-4';
$pane->panel = 'sidebar_first';
$pane->type = 'views';
$pane->subtype = 'news';
$pane->shown = TRUE;
$pane->access = array();
$pane->configuration = array(
'override_pager_settings' => 1,
'use_pager' => 0,
'nodes_per_page' => '2',
'pager_id' => '',
'offset' => '0',
'more_link' => 1,
'feed_icons' => 1,
'panel_args' => 0,
'link_to_view' => 0,
'args' => '',
'url' => '',
'display' => 'page_1',
'override_title' => 1,
'override_title_text' => '',
);
$pane->cache = array();
$pane->style = array(
'settings' => NULL,
);
$pane->css = array(
'css_id' => '',
'css_class' => 'panel-secondary container shadow',
);
$pane->extras = array();
$pane->position = 1;
$display->content['new-4'] = $pane;
$display->panels['sidebar_first'][1] = 'new-4';
$display->hide_title = PANELS_TITLE_NONE;
$display->title_pane = '0';
$handler->conf['display'] = $display;
$page->default_handlers[$handler->name] = $handler;
$pages['home'] = $page;
return $pages;
}

View File

@ -0,0 +1,95 @@
<?php
/**
* Implementation of hook_default_panels_mini().
*/
function boinc_standard_default_panels_mini() {
$export = array();
$mini = new stdClass;
$mini->disabled = FALSE; /* Edit this to true to make a default mini disabled initially */
$mini->api_version = 1;
$mini->name = 'dashboard_tables';
$mini->category = 'BOINC';
$mini->admin_title = 'Dashboard tables';
$mini->admin_description = 'Tables of computers and projects for a user';
$mini->requiredcontexts = array();
$mini->contexts = array();
$mini->relationships = array();
$display = new panels_display;
$display->layout = 'twocol_stacked';
$display->layout_settings = array();
$display->panel_settings = array(
'style_settings' => array(
'default' => NULL,
'left' => NULL,
'right' => NULL,
'top' => NULL,
'bottom' => NULL,
),
);
$display->cache = array();
$display->title = '';
$display->content = array();
$display->panels = array();
$pane = new stdClass;
$pane->pid = 'new-1';
$pane->panel = 'left';
$pane->type = 'views_panes';
$pane->subtype = 'boinc_account_computers-panel_pane_1';
$pane->shown = TRUE;
$pane->access = array();
$pane->configuration = array();
$pane->cache = array();
$pane->style = array(
'settings' => NULL,
);
$pane->css = array();
$pane->extras = array();
$pane->position = 0;
$display->content['new-1'] = $pane;
$display->panels['left'][0] = 'new-1';
$pane = new stdClass;
$pane->pid = 'new-2';
$pane->panel = 'right';
$pane->type = 'panels_mini';
$pane->subtype = 'user_project_list';
$pane->shown = TRUE;
$pane->access = array();
$pane->configuration = array(
'override_title' => 0,
'override_title_text' => '',
);
$pane->cache = array();
$pane->style = array(
'settings' => NULL,
);
$pane->css = array();
$pane->extras = array();
$pane->position = 0;
$display->content['new-2'] = $pane;
$display->panels['right'][0] = 'new-2';
$pane = new stdClass;
$pane->pid = 'new-3';
$pane->panel = 'top';
$pane->type = 'views_panes';
$pane->subtype = 'boinc_account_stats-panel_pane_1';
$pane->shown = TRUE;
$pane->access = array();
$pane->configuration = array();
$pane->cache = array();
$pane->style = array(
'settings' => NULL,
);
$pane->css = array();
$pane->extras = array();
$pane->position = 0;
$display->content['new-3'] = $pane;
$display->panels['top'][0] = 'new-3';
$display->hide_title = PANELS_TITLE_NONE;
$display->title_pane = '0';
$mini->display = $display;
$export['dashboard_tables'] = $mini;
return $export;
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,76 @@
<?php
/**
* Implementation of hook_default_wysiwyg().
*/
function boinc_standard_default_wysiwyg() {
$export = array();
$wysiwyg = new stdClass;
$wysiwyg->disabled = FALSE; /* Edit this to true to make a default wysiwyg disabled initially */
$wysiwyg->api_version = 2;
$wysiwyg->editor = 'tinymce';
$wysiwyg->settings = array(
'default' => 1,
'user_choose' => 0,
'show_toggle' => 0,
'theme' => 'advanced',
'language' => 'en',
'buttons' => array(
'default' => array(
'bold' => 1,
'italic' => 1,
'underline' => 1,
'strikethrough' => 1,
'justifyleft' => 1,
'justifycenter' => 1,
'justifyright' => 1,
'justifyfull' => 1,
'bullist' => 1,
'numlist' => 1,
'outdent' => 1,
'indent' => 1,
'undo' => 1,
'redo' => 1,
'link' => 1,
'image' => 1,
'sup' => 1,
'sub' => 1,
'blockquote' => 1,
'code' => 1,
'removeformat' => 1,
'charmap' => 1,
),
'style' => array(
'styleprops' => 1,
),
'table' => array(
'tablecontrols' => 1,
),
'media' => array(
'media' => 1,
),
'imce' => array(
'imce' => 1,
),
),
'toolbar_loc' => 'top',
'toolbar_align' => 'left',
'path_loc' => 'bottom',
'resizing' => 1,
'verify_html' => 1,
'preformatted' => 0,
'convert_fonts_to_spans' => 1,
'remove_linebreaks' => 1,
'apply_source_formatting' => 0,
'paste_auto_cleanup_on_paste' => 0,
'block_formats' => 'p,address,pre,h2,h3,h4,h5,h6,div',
'css_setting' => 'theme',
'css_path' => '',
'css_classes' => '',
);
$wysiwyg->machine = 'rich_text';
$export['rich_text'] = $wysiwyg;
return $export;
}

View File

@ -0,0 +1,33 @@
<?php
/**
* Implementation of hook_menu_default_menu_links().
*/
function discussion_forums_menu_default_menu_links() {
$menu_links = array();
// Exported menu link: primary-links:forum
$menu_links['primary-links:forum'] = array(
'menu_name' => 'primary-links',
'link_path' => 'forum',
'router_path' => 'forum',
'link_title' => 'Community',
'options' => array(
'attributes' => array(
'title' => '',
),
),
'module' => 'menu',
'hidden' => '0',
'external' => '0',
'has_children' => '0',
'expanded' => '0',
'weight' => '20',
);
// Translatables
// Included for use with string extractors like potx.
t('Community');
return $menu_links;
}

View File

@ -0,0 +1,99 @@
<?php
/**
* Implementation of hook_user_default_permissions().
*/
function discussion_forums_user_default_permissions() {
$permissions = array();
// Exported permission: access comments
$permissions['access comments'] = array(
'name' => 'access comments',
'roles' => array(
'0' => 'administrator',
'1' => 'anonymous user',
'2' => 'authenticated user',
),
);
// Exported permission: administer comments
$permissions['administer comments'] = array(
'name' => 'administer comments',
'roles' => array(
'0' => 'administrator',
'1' => 'moderator',
),
);
// Exported permission: administer forums
$permissions['administer forums'] = array(
'name' => 'administer forums',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: create forum topics
$permissions['create forum topics'] = array(
'name' => 'create forum topics',
'roles' => array(
'0' => 'administrator',
'1' => 'authenticated user',
),
);
// Exported permission: delete any forum topic
$permissions['delete any forum topic'] = array(
'name' => 'delete any forum topic',
'roles' => array(
'0' => 'administrator',
'1' => 'moderator',
),
);
// Exported permission: delete own forum topics
$permissions['delete own forum topics'] = array(
'name' => 'delete own forum topics',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: edit any forum topic
$permissions['edit any forum topic'] = array(
'name' => 'edit any forum topic',
'roles' => array(
'0' => 'administrator',
'1' => 'moderator',
),
);
// Exported permission: edit own forum topics
$permissions['edit own forum topics'] = array(
'name' => 'edit own forum topics',
'roles' => array(
'0' => 'administrator',
'1' => 'authenticated user',
),
);
// Exported permission: post comments
$permissions['post comments'] = array(
'name' => 'post comments',
'roles' => array(
'0' => 'administrator',
'1' => 'authenticated user',
),
);
// Exported permission: post comments without approval
$permissions['post comments without approval'] = array(
'name' => 'post comments without approval',
'roles' => array(
'0' => 'administrator',
'1' => 'authenticated user',
),
);
return $permissions;
}

View File

@ -0,0 +1,21 @@
name = "Discussion forums"
description = "Forum support for the user community"
core = "6.x"
package = "Features"
dependencies[] = "boinc_standard"
dependencies[] = "features"
dependencies[] = "forum"
dependencies[] = "menu"
dependencies[] = "taxonomy"
dependencies[] = "wysiwyg"
features[menu_links][] = "primary-links:forum"
features[user_permission][] = "access comments"
features[user_permission][] = "administer comments"
features[user_permission][] = "administer forums"
features[user_permission][] = "create forum topics"
features[user_permission][] = "delete any forum topic"
features[user_permission][] = "delete own forum topics"
features[user_permission][] = "edit any forum topic"
features[user_permission][] = "edit own forum topics"
features[user_permission][] = "post comments"
features[user_permission][] = "post comments without approval"

View File

@ -0,0 +1,3 @@
<?php
// Drupal needs this blank file.

View File

@ -0,0 +1,19 @@
<?php
/**
* Implementation of hook_user_default_permissions().
*/
function friends_user_default_permissions() {
$permissions = array();
// Exported permission: receive friend email notification
$permissions['receive friend email notification'] = array(
'name' => 'receive friend email notification',
'roles' => array(
'0' => 'administrator',
'1' => 'authenticated user',
),
);
return $permissions;
}

View File

@ -0,0 +1,8 @@
name = "Friends"
description = "Friend relationships between users"
core = "6.x"
package = "Features"
dependencies[] = "features"
dependencies[] = "flag_friend"
dependencies[] = "menu"
features[user_permission][] = "receive friend email notification"

View File

@ -0,0 +1,3 @@
<?php
// Drupal needs this blank file.

View File

@ -0,0 +1,33 @@
<?php
/**
* Implementation of hook_menu_default_menu_links().
*/
function help_and_support_menu_default_menu_links() {
$menu_links = array();
// Exported menu link: primary-links:http://boinc.berkeley.edu/help.php
$menu_links['primary-links:http://boinc.berkeley.edu/help.php'] = array(
'menu_name' => 'primary-links',
'link_path' => 'http://boinc.berkeley.edu/help.php',
'router_path' => '',
'link_title' => 'Help',
'options' => array(
'attributes' => array(
'title' => '',
),
),
'module' => 'menu',
'hidden' => '0',
'external' => '1',
'has_children' => '0',
'expanded' => '0',
'weight' => '25',
);
// Translatables
// Included for use with string extractors like potx.
t('Help');
return $menu_links;
}

View File

@ -0,0 +1,7 @@
name = "Help and support"
description = "Menu link to BOINC help"
core = "6.x"
package = "Features"
dependencies[] = "features"
dependencies[] = "menu"
features[menu_links][] = "primary-links:http://boinc.berkeley.edu/help.php"

View File

@ -0,0 +1,3 @@
<?php
// Drupal needs this blank file.

View File

@ -0,0 +1,33 @@
<?php
/**
* Implementation of hook_context_default_contexts().
*/
function news_context_default_contexts() {
$export = array();
$context = new stdClass;
$context->disabled = FALSE; /* Edit this to true to make a default context disabled initially */
$context->api_version = 3;
$context->name = 'news_articles';
$context->description = '';
$context->tag = 'news';
$context->conditions = array(
'path' => array(
'values' => array(
'news/*' => 'news/*',
),
),
);
$context->reactions = array(
'menu' => 'news',
);
$context->condition_mode = 0;
// Translatables
// Included for use with string extractors like potx.
t('news');
$export['news_articles'] = $context;
return $export;
}

View File

@ -0,0 +1,43 @@
<?php
/**
* Implementation of hook_ctools_plugin_api().
*/
function news_ctools_plugin_api() {
list($module, $api) = func_get_args();
if ($module == "context" && $api == "context") {
return array("version" => 3);
}
elseif ($module == "strongarm" && $api == "strongarm") {
return array("version" => 1);
}
}
/**
* Implementation of hook_node_info().
*/
function news_node_info() {
$items = array(
'news' => array(
'name' => t('News item'),
'module' => 'features',
'description' => t('News items are bits of information and current events relevant to a BOINC project that are to be published to the website and RSS feeds.'),
'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 news_views_api() {
return array(
'api' => '2',
);
}

View File

@ -0,0 +1,33 @@
<?php
/**
* Implementation of hook_menu_default_menu_links().
*/
function news_menu_default_menu_links() {
$menu_links = array();
// Exported menu link: primary-links:news
$menu_links['primary-links:news'] = array(
'menu_name' => 'primary-links',
'link_path' => 'news',
'router_path' => 'news',
'link_title' => 'News & Blogs',
'options' => array(
'attributes' => array(
'title' => '',
),
),
'module' => 'menu',
'hidden' => '0',
'external' => '0',
'has_children' => '0',
'expanded' => '1',
'weight' => '15',
);
// Translatables
// Included for use with string extractors like potx.
t('News & Blogs');
return $menu_links;
}

View File

@ -0,0 +1,30 @@
name = "News"
description = "Site news section"
core = "6.x"
package = "Features"
dependencies[] = "boinc_standard"
dependencies[] = "comment"
dependencies[] = "context"
dependencies[] = "ctools"
dependencies[] = "features"
dependencies[] = "menu"
dependencies[] = "strongarm"
dependencies[] = "views"
features[context][] = "news_articles"
features[ctools][] = "context:context:3"
features[ctools][] = "strongarm:strongarm:1"
features[menu_links][] = "primary-links:news"
features[node][] = "news"
features[variable][] = "comment_anonymous_news"
features[variable][] = "comment_controls_news"
features[variable][] = "comment_default_mode_news"
features[variable][] = "comment_default_order_news"
features[variable][] = "comment_default_per_page_news"
features[variable][] = "comment_form_location_news"
features[variable][] = "comment_news"
features[variable][] = "comment_preview_news"
features[variable][] = "comment_subject_field_news"
features[variable][] = "language_content_type_news"
features[variable][] = "node_options_news"
features[views][] = "news"
features[views_api][] = "api:2"

View File

@ -0,0 +1,3 @@
<?php
include_once('news.features.inc');

View File

@ -0,0 +1,90 @@
<?php
/**
* Implementation of hook_strongarm().
*/
function news_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_news';
$strongarm->value = 0;
$export['comment_anonymous_news'] = $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_news';
$strongarm->value = '3';
$export['comment_controls_news'] = $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_news';
$strongarm->value = '4';
$export['comment_default_mode_news'] = $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_news';
$strongarm->value = '1';
$export['comment_default_order_news'] = $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_news';
$strongarm->value = '50';
$export['comment_default_per_page_news'] = $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_news';
$strongarm->value = '0';
$export['comment_form_location_news'] = $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_news';
$strongarm->value = '2';
$export['comment_news'] = $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_news';
$strongarm->value = '1';
$export['comment_preview_news'] = $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_news';
$strongarm->value = '1';
$export['comment_subject_field_news'] = $strongarm;
$strongarm = new stdClass;
$strongarm->disabled = FALSE; /* Edit this to true to make a default strongarm disabled initially */
$strongarm->api_version = 1;
$strongarm->name = 'language_content_type_news';
$strongarm->value = '0';
$export['language_content_type_news'] = $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_news';
$strongarm->value = array(
0 => 'status',
1 => 'promote',
);
$export['node_options_news'] = $strongarm;
return $export;
}

View File

@ -0,0 +1,366 @@
<?php
/**
* Implementation of hook_views_default_views().
*/
function news_views_default_views() {
$views = array();
// Exported view: news
$view = new view;
$view->name = 'news';
$view->description = '';
$view->tag = '';
$view->base_table = 'node';
$view->core = 0;
$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(
'content_profile_rel' => array(
'id' => 'content_profile_rel',
'table' => 'users',
'field' => 'content_profile_rel',
),
));
$handler->override_option('fields', array(
'comment_count' => array(
'id' => 'comment_count',
'table' => 'node_comment_statistics',
'field' => 'comment_count',
),
'view_node' => array(
'id' => 'view_node',
'table' => 'node',
'field' => 'view_node',
),
'created' => array(
'id' => 'created',
'table' => 'node',
'field' => 'created',
),
'teaser' => array(
'id' => 'teaser',
'table' => 'node_revisions',
'field' => 'teaser',
),
'title' => array(
'id' => 'title',
'table' => 'node',
'field' => 'title',
),
));
$handler->override_option('sorts', array(
'created_1' => array(
'order' => 'DESC',
'granularity' => 'second',
'id' => 'created_1',
'table' => 'node',
'field' => 'created',
'override' => array(
'button' => 'Override',
),
'relationship' => 'none',
),
));
$handler->override_option('filters', array(
'type' => array(
'operator' => 'in',
'value' => array(
'news' => 'news',
),
'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('empty', '<?php
echo t(\'No news is good news...\');
?>');
$handler->override_option('empty_format', '3');
$handler->override_option('items_per_page', 3);
$handler->override_option('use_pager', '1');
$handler->override_option('row_plugin', 'node');
$handler = $view->new_display('page', 'Page', 'page_1');
$handler->override_option('relationships', array());
$handler->override_option('fields', array(
'title' => array(
'label' => '',
'alter' => array(
'alter_text' => 1,
'text' => '<h2>[title]</h2>',
'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,
'exclude' => 0,
'id' => 'title',
'table' => 'node',
'field' => 'title',
'override' => array(
'button' => 'Use default',
),
'relationship' => 'none',
),
'created' => 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,
'date_format' => 'custom',
'custom_date_format' => 'F d, Y',
'exclude' => 0,
'id' => 'created',
'table' => 'node',
'field' => 'created',
'override' => array(
'button' => 'Use default',
),
'relationship' => 'none',
),
'name' => array(
'label' => '',
'alter' => array(
'alter_text' => 1,
'text' => ' / Posted by [name]',
'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_user' => 0,
'overwrite_anonymous' => 0,
'anonymous_text' => '',
'exclude' => 0,
'id' => 'name',
'table' => 'users',
'field' => 'name',
'override' => array(
'button' => 'Use default',
),
'relationship' => 'none',
),
'teaser' => 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,
'exclude' => 0,
'id' => 'teaser',
'table' => 'node_revisions',
'field' => 'teaser',
'override' => array(
'button' => 'Use default',
),
'relationship' => 'none',
),
'view_node' => 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,
'text' => 'discuss',
'exclude' => 0,
'id' => 'view_node',
'table' => 'node',
'field' => 'view_node',
'override' => array(
'button' => 'Use default',
),
'relationship' => 'none',
),
'comment_count' => array(
'label' => '',
'alter' => array(
'alter_text' => 0,
'text' => '',
'make_link' => 0,
'path' => '',
'absolute' => 0,
'link_class' => '',
'alt' => '',
'rel' => '',
'prefix' => '',
'suffix' => '',
'target' => '',
'help' => '',
'trim' => 0,
'max_length' => '',
'word_boundary' => 1,
'ellipsis' => 1,
'html' => 0,
'strip_tags' => 0,
),
'empty' => '0',
'hide_empty' => 0,
'empty_zero' => 0,
'hide_alter_empty' => 0,
'set_precision' => FALSE,
'precision' => 0,
'decimal' => '.',
'separator' => '',
'format_plural' => 0,
'format_plural_singular' => '1',
'format_plural_plural' => '@count',
'prefix' => '',
'suffix' => '',
'exclude' => 0,
'id' => 'comment_count',
'table' => 'node_comment_statistics',
'field' => 'comment_count',
'override' => array(
'button' => 'Use default',
),
'relationship' => 'none',
),
'nothing' => array(
'label' => '',
'alter' => array(
'text' => '<div class="clearfix"></div>',
'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,
'exclude' => 0,
'id' => 'nothing',
'table' => 'views',
'field' => 'nothing',
'override' => array(
'button' => 'Use default',
),
'relationship' => 'none',
),
));
$handler->override_option('title', 'News');
$handler->override_option('row_plugin', 'fields');
$handler->override_option('path', 'news');
$handler->override_option('menu', array(
'type' => 'default tab',
'title' => 'News',
'description' => '',
'weight' => '0',
'name' => 'navigation',
));
$handler->override_option('tab_options', array(
'type' => 'none',
'title' => '',
'description' => '',
'weight' => 0,
'name' => 'navigation',
));
$views[$view->name] = $view;
return $views;
}

View File

@ -0,0 +1,11 @@
<?php
/**
* Implementation of hook_ctools_plugin_api().
*/
function private_messages_ctools_plugin_api() {
list($module, $api) = func_get_args();
if ($module == "panels_mini" && $api == "panels_default") {
return array("version" => 1);
}
}

View File

@ -0,0 +1,54 @@
<?php
/**
* Implementation of hook_user_default_permissions().
*/
function private_messages_user_default_permissions() {
$permissions = array();
// Exported permission: administer privatemsg settings
$permissions['administer privatemsg settings'] = array(
'name' => 'administer privatemsg settings',
'roles' => array(
'0' => 'administrator',
'1' => 'authenticated user',
),
);
// Exported permission: delete privatemsg
$permissions['delete privatemsg'] = array(
'name' => 'delete privatemsg',
'roles' => array(
'0' => 'administrator',
'1' => 'authenticated user',
),
);
// Exported permission: read all private messages
$permissions['read all private messages'] = array(
'name' => 'read all private messages',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: read privatemsg
$permissions['read privatemsg'] = array(
'name' => 'read privatemsg',
'roles' => array(
'0' => 'administrator',
'1' => 'authenticated user',
),
);
// Exported permission: write privatemsg
$permissions['write privatemsg'] = array(
'name' => 'write privatemsg',
'roles' => array(
'0' => 'administrator',
'1' => 'authenticated user',
),
);
return $permissions;
}

View File

@ -0,0 +1,20 @@
name = "Private messages"
description = "Private messages between users"
core = "6.x"
package = "Features"
dependencies[] = "boinc_standard"
dependencies[] = "ctools"
dependencies[] = "features"
dependencies[] = "ignore_user"
dependencies[] = "menu"
dependencies[] = "panels_mini"
dependencies[] = "pm_block_user"
dependencies[] = "pm_email_notify"
dependencies[] = "privatemsg"
features[ctools][] = "panels_mini:panels_default:1"
features[panels_mini][] = "user_mail_summary"
features[user_permission][] = "administer privatemsg settings"
features[user_permission][] = "delete privatemsg"
features[user_permission][] = "read all private messages"
features[user_permission][] = "read privatemsg"
features[user_permission][] = "write privatemsg"

View File

@ -0,0 +1,3 @@
<?php
include_once('private_messages.features.inc');

View File

@ -0,0 +1,67 @@
<?php
/**
* Implementation of hook_default_panels_mini().
*/
function private_messages_default_panels_mini() {
$export = array();
$mini = new stdClass;
$mini->disabled = FALSE; /* Edit this to true to make a default mini disabled initially */
$mini->api_version = 1;
$mini->name = 'user_mail_summary';
$mini->category = 'BOINC';
$mini->admin_title = 'User mail summary';
$mini->admin_description = 'Mail widget for user dashboard';
$mini->requiredcontexts = array();
$mini->contexts = array();
$mini->relationships = array();
$display = new panels_display;
$display->layout = 'onecol';
$display->layout_settings = array();
$display->panel_settings = array(
'style_settings' => array(
'default' => NULL,
'middle' => NULL,
),
);
$display->cache = array();
$display->title = 'Messages';
$display->content = array();
$display->panels = array();
$pane = new stdClass;
$pane->pid = 'new-1';
$pane->panel = 'middle';
$pane->type = 'custom';
$pane->subtype = 'custom';
$pane->shown = TRUE;
$pane->access = array();
$pane->configuration = array(
'admin_title' => 'Mail summary',
'title' => 'Messages',
'body' => '<?php global $base_path; ?>
<ul class="tab-list">
<li class="first tab"><div>
<a href="<?php echo $base_path; ?>messages">Inbox</a><div class="item-count-wrapper"><span class="item-count"><?php echo privatemsg_unread_count(); ?></span></div></div>
</li>
<li class="last tab"><a href="<?php echo $base_path; ?>messages/new">Compose new</a></li>
</ul>',
'format' => '3',
'substitute' => TRUE,
);
$pane->cache = array();
$pane->style = array(
'settings' => NULL,
);
$pane->css = array();
$pane->extras = array();
$pane->position = 0;
$display->content['new-1'] = $pane;
$display->panels['middle'][0] = 'new-1';
$display->hide_title = PANELS_TITLE_NONE;
$display->title_pane = 'new-1';
$mini->display = $display;
$export['user_mail_summary'] = $mini;
return $export;
}

View File

@ -0,0 +1,41 @@
<?php
/**
* Implementation of hook_context_default_contexts().
*/
function spam_controls_context_default_contexts() {
$export = array();
$context = new stdClass;
$context->disabled = FALSE; /* Edit this to true to make a default context disabled initially */
$context->api_version = 3;
$context->name = 'account_info';
$context->description = '';
$context->tag = 'account';
$context->conditions = array(
'path' => array(
'values' => array(
'account/info/edit/profile' => 'account/info/edit/profile',
),
),
'user_page' => array(
'values' => array(
'form' => 'form',
),
'options' => array(
'mode' => 'current',
),
),
);
$context->reactions = array(
'menu' => 'user/me/edit',
);
$context->condition_mode = 0;
// Translatables
// Included for use with string extractors like potx.
t('account');
$export['account_info'] = $context;
return $export;
}

View File

@ -0,0 +1,14 @@
<?php
/**
* Implementation of hook_captcha_default_points().
*/
function spam_controls_captcha_default_points() {
return array(
'edit_profile_node_form' => array(
'form_id' => 'edit_profile_node_form',
'module' => NULL,
'captcha_type' => 'default',
),
);
}

View File

@ -0,0 +1,14 @@
<?php
/**
* Implementation of hook_ctools_plugin_api().
*/
function spam_controls_ctools_plugin_api() {
list($module, $api) = func_get_args();
if ($module == "context" && $api == "context") {
return array("version" => 3);
}
elseif ($module == "strongarm" && $api == "strongarm") {
return array("version" => 1);
}
}

View File

@ -0,0 +1,20 @@
name = "Spam controls"
description = "Add captchas to profile forms"
core = "6.x"
package = "Features"
version = "6.x-0.1"
project = "spam_controls"
dependencies[] = "boincuser"
dependencies[] = "captcha"
dependencies[] = "context"
dependencies[] = "recaptcha"
dependencies[] = "strongarm"
features[captcha][] = "edit_profile_node_form"
features[context][] = "account_info"
features[ctools][] = "context:context:3"
features[ctools][] = "strongarm:strongarm:1"
features[variable][] = "captcha_default_challenge"
features[variable][] = "recaptcha_ajax_api"
features[variable][] = "recaptcha_private_key"
features[variable][] = "recaptcha_public_key"
features[variable][] = "recaptcha_secure_connection"

View File

@ -0,0 +1,3 @@
<?php
include_once('spam_controls.features.inc');

View File

@ -0,0 +1,45 @@
<?php
/**
* Implementation of hook_strongarm().
*/
function spam_controls_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 = 'captcha_default_challenge';
$strongarm->value = 'recaptcha/reCAPTCHA';
$export['captcha_default_challenge'] = $strongarm;
$strongarm = new stdClass;
$strongarm->disabled = FALSE; /* Edit this to true to make a default strongarm disabled initially */
$strongarm->api_version = 1;
$strongarm->name = 'recaptcha_ajax_api';
$strongarm->value = 1;
$export['recaptcha_ajax_api'] = $strongarm;
$strongarm = new stdClass;
$strongarm->disabled = FALSE; /* Edit this to true to make a default strongarm disabled initially */
$strongarm->api_version = 1;
$strongarm->name = 'recaptcha_private_key';
$strongarm->value = '6LcAp9gSAAAAACqDNjbUiryK2BICYWXQP3HvwlIX';
$export['recaptcha_private_key'] = $strongarm;
$strongarm = new stdClass;
$strongarm->disabled = FALSE; /* Edit this to true to make a default strongarm disabled initially */
$strongarm->api_version = 1;
$strongarm->name = 'recaptcha_public_key';
$strongarm->value = '6LcAp9gSAAAAAK3VyU-clMl_lDf2l-OrSwxMqoZi';
$export['recaptcha_public_key'] = $strongarm;
$strongarm = new stdClass;
$strongarm->disabled = FALSE; /* Edit this to true to make a default strongarm disabled initially */
$strongarm->api_version = 1;
$strongarm->name = 'recaptcha_secure_connection';
$strongarm->value = 1;
$export['recaptcha_secure_connection'] = $strongarm;
return $export;
}

View File

@ -0,0 +1,10 @@
<?php
/**
* Implementation of hook_views_api().
*/
function user_account_host_list_views_api() {
return array(
'api' => '2',
);
}

View File

@ -0,0 +1,11 @@
name = "User account host list"
description = "Host list on the user dashboard"
core = "6.x"
package = "Features"
dependencies[] = "boinc_standard"
dependencies[] = "boincwork"
dependencies[] = "views"
dependencies[] = "views_content"
dependencies[] = "views_customfield"
features[views][] = "boinc_account_computers"
features[views_api][] = "api:2"

View File

@ -0,0 +1,3 @@
<?php
include_once('user_account_host_list.features.inc');

View File

@ -0,0 +1,11 @@
<?php
/**
* Implementation of hook_ctools_plugin_api().
*/
function user_account_project_list_ctools_plugin_api() {
list($module, $api) = func_get_args();
if ($module == "panels_mini" && $api == "panels_default") {
return array("version" => 1);
}
}

View File

@ -0,0 +1,10 @@
name = "User account project list"
description = "List user's BOINC projects on the user dashboard"
core = "6.x"
package = "Features"
dependencies[] = "boinc_standard"
dependencies[] = "boincuser"
dependencies[] = "ctools"
dependencies[] = "panels_mini"
features[ctools][] = "panels_mini:panels_default:1"
features[panels_mini][] = "user_project_list"

View File

@ -0,0 +1,3 @@
<?php
include_once('user_account_project_list.features.inc');

View File

@ -0,0 +1,61 @@
<?php
/**
* Implementation of hook_default_panels_mini().
*/
function user_account_project_list_default_panels_mini() {
$export = array();
$mini = new stdClass;
$mini->disabled = FALSE; /* Edit this to true to make a default mini disabled initially */
$mini->api_version = 1;
$mini->name = 'user_project_list';
$mini->category = 'BOINC';
$mini->admin_title = 'User project list';
$mini->admin_description = 'A list of all BOINC projects in which a user is participating';
$mini->requiredcontexts = array();
$mini->contexts = array();
$mini->relationships = array();
$display = new panels_display;
$display->layout = 'onecol';
$display->layout_settings = array();
$display->panel_settings = array(
'style_settings' => array(
'default' => NULL,
'middle' => NULL,
),
);
$display->cache = array();
$display->title = '';
$display->content = array();
$display->panels = array();
$pane = new stdClass;
$pane->pid = 'new-1';
$pane->panel = 'middle';
$pane->type = 'custom';
$pane->subtype = 'custom';
$pane->shown = TRUE;
$pane->access = array();
$pane->configuration = array(
'admin_title' => 'Dashboard project table',
'title' => 'Projects',
'body' => '<?php echo boincuser_get_projects_table(); ?>',
'format' => '3',
'substitute' => TRUE,
);
$pane->cache = array();
$pane->style = array(
'settings' => NULL,
);
$pane->css = array();
$pane->extras = array();
$pane->position = 0;
$display->content['new-1'] = $pane;
$display->panels['middle'][0] = 'new-1';
$display->hide_title = PANELS_TITLE_FIXED;
$display->title_pane = 'new-1';
$mini->display = $display;
$export['user_project_list'] = $mini;
return $export;
}

View File

@ -0,0 +1,34 @@
<?php
/**
* Implementation of hook_menu_default_menu_links().
*/
function user_preferences_menu_default_menu_links() {
$menu_links = array();
// Exported menu link: primary-links:account/prefs
$menu_links['primary-links:account/prefs'] = array(
'menu_name' => 'primary-links',
'link_path' => 'account/prefs',
'router_path' => 'account/prefs',
'link_title' => 'Preferences',
'options' => array(
'attributes' => array(
'title' => '',
),
),
'module' => 'menu',
'hidden' => '0',
'external' => '0',
'has_children' => '0',
'expanded' => '0',
'weight' => '15',
'parent_path' => 'dashboard',
);
// Translatables
// Included for use with string extractors like potx.
t('Preferences');
return $menu_links;
}

View File

@ -0,0 +1,9 @@
name = "User preferences"
description = "Allow users to set preferences for computing, privacy, and community features"
core = "6.x"
package = "Features"
dependencies[] = "boincuser"
dependencies[] = "boincwork"
dependencies[] = "features"
dependencies[] = "menu"
features[menu_links][] = "primary-links:account/prefs"

View File

@ -0,0 +1,3 @@
<?php
// Drupal needs this blank file.

View File

@ -0,0 +1,706 @@
<?php
/**
* Implementation of hook_content_default_fields().
*/
function user_profiles_content_default_fields() {
$fields = array();
// Exported field: field_background
$fields['profile-field_background'] = array(
'field_name' => 'field_background',
'type_name' => 'profile',
'display_settings' => array(
'label' => array(
'format' => 'above',
'exclude' => 0,
),
'teaser' => array(
'format' => 'default',
'exclude' => 0,
),
'full' => array(
'format' => 'default',
'exclude' => 0,
),
'4' => array(
'format' => 'default',
'exclude' => 0,
),
'2' => array(
'format' => 'default',
'exclude' => 0,
),
'3' => array(
'format' => 'default',
'exclude' => 0,
),
'token' => array(
'format' => 'default',
'exclude' => 0,
),
),
'widget_active' => '1',
'type' => 'text',
'required' => '0',
'multiple' => '0',
'module' => 'text',
'active' => '1',
'text_processing' => '1',
'max_length' => '',
'allowed_values' => '',
'allowed_values_php' => '',
'widget' => array(
'rows' => '10',
'size' => 60,
'default_value' => array(
'0' => array(
'value' => '',
'_error_element' => 'default_value_widget][field_background][0][value',
),
),
'default_value_php' => NULL,
'label' => 'Your personal background',
'weight' => '3',
'description' => 'Tell us about yourself. You could tell us where you\'re from, your age, occupation, hobbies, or anything else about yourself. ',
'type' => 'text_textarea',
'module' => 'text',
),
);
// Exported field: field_country
$fields['profile-field_country'] = array(
'field_name' => 'field_country',
'type_name' => 'profile',
'display_settings' => array(
'label' => array(
'format' => 'above',
'exclude' => 0,
),
'teaser' => array(
'format' => 'default',
'exclude' => 0,
),
'full' => array(
'format' => 'default',
'exclude' => 0,
),
'4' => array(
'format' => 'default',
'exclude' => 0,
),
'2' => array(
'format' => 'default',
'exclude' => 0,
),
'3' => array(
'format' => 'default',
'exclude' => 0,
),
'token' => array(
'format' => 'default',
'exclude' => 0,
),
),
'widget_active' => '1',
'type' => 'text',
'required' => '0',
'multiple' => '0',
'module' => 'text',
'active' => '1',
'text_processing' => '0',
'max_length' => '',
'allowed_values' => 'None|None
International|International
Afghanistan|Afghanistan
Albania|Albania
Algeria|Algeria
American Samoa|American Samoa
Andorra|Andorra
Angola|Angola
Anguilla|Anguilla
Antarctica|Antarctica
Antigua and Barbuda|Antigua and Barbuda
Argentina|Argentina
Armenia|Armenia
Aruba|Aruba
Australia|Australia
Austria|Austria
Azerbaijan|Azerbaijan
Bahamas, The|Bahamas, The
Bahrain|Bahrain
Bangladesh|Bangladesh
Barbados|Barbados
Belarus|Belarus
Belgium|Belgium
Belize|Belize
Benin|Benin
Bermuda|Bermuda
Bhutan|Bhutan
Bolivia|Bolivia
Bosnia and Herzegovina|Bosnia and Herzegovina
Botswana|Botswana
Brazil|Brazil
British Virgin Islands|British Virgin Islands
Brunei|Brunei
Bulgaria|Bulgaria
Burkina Faso|Burkina Faso
Burma|Burma
Burundi|Burundi
Cambodia|Cambodia
Cameroon|Cameroon
Canada|Canada
Cape Verde|Cape Verde
Cayman Islands|Cayman Islands
Central African Republic|Central African Republic
Chad|Chad
Channel Islands|Channel Islands
Chile|Chile
China|China
Colombia|Colombia
Comoros|Comoros
Congo, Democratic Republic of the|Congo, Democratic Republic of the
Congo, Republic of the|Congo, Republic of the
Cook Islands|Cook Islands
Costa Rica|Costa Rica
Cote d\'Ivoire|Cote d\'Ivoire
Croatia|Croatia
Cuba|Cuba
Cyprus|Cyprus
Czech Republic|Czech Republic
Denmark|Denmark
Djibouti|Djibouti
Dominica|Dominica
Dominican Republic|Dominican Republic
East Timor|East Timor
Ecuador|Ecuador
Egypt|Egypt
El Salvador|El Salvador
Equatorial Guinea|Equatorial Guinea
Eritrea|Eritrea
Estonia|Estonia
Ethiopia|Ethiopia
Falkland Islands|Falkland Islands
Faroe Islands|Faroe Islands
Fiji|Fiji
Finland|Finland
France|France
French Guiana|French Guiana
French Polynesia|French Polynesia
Gabon|Gabon
Gambia, The|Gambia, The
Gaza Strip|Gaza Strip
Georgia|Georgia
Germany|Germany
Ghana|Ghana
Gibraltar|Gibraltar
Greece|Greece
Greenland|Greenland
Grenada|Grenada
Guadeloupe|Guadeloupe
Guam|Guam
Guatemala|Guatemala
Guinea|Guinea
Guinea-Bissau|Guinea-Bissau
Guyana|Guyana
Haiti|Haiti
Holy See (Vatican City)|Holy See (Vatican City)
Honduras|Honduras
Hong Kong|Hong Kong
Hungary|Hungary
Iceland|Iceland
India|India
Indonesia|Indonesia
Iran|Iran
Iraq|Iraq
Ireland|Ireland
Isle of Man|Isle of Man
Israel|Israel
Italy|Italy
Jamaica|Jamaica
Japan|Japan
Jordan|Jordan
Kazakhstan|Kazakhstan
Korea, North|Korea, North
Korea, South|Korea, South
Kenya|Kenya
Kiribati|Kiribati
Kuwait|Kuwait
Kyrgyzstan|Kyrgyzstan
Laos|Laos
Latvia|Latvia
Lebanon|Lebanon
Lesotho|Lesotho
Liberia|Liberia
Libya|Libya
Liechtenstein|Liechtenstein
Lithuania|Lithuania
Luxembourg|Luxembourg
Macau|Macau
Macedonia|Macedonia
Madagascar|Madagascar
Malawi|Malawi
Malaysia|Malaysia
Maldives|Maldives
Mali|Mali
Malta|Malta
Marshall Islands|Marshall Islands
Martinique|Martinique
Mauritania|Mauritania
Mauritius|Mauritius
Mexico|Mexico
Micronesia|Micronesia
Moldova|Moldova
Monaco|Monaco
Mongolia|Mongolia
Montenegro|Montenegro
Montserrat|Montserrat
Morocco|Morocco
Mozambique|Mozambique
Namibia|Namibia
Nauru|Nauru
Nepal|Nepal
Netherlands|Netherlands
Netherlands Antilles|Netherlands Antilles
New Caledonia|New Caledonia
New Zealand|New Zealand
Nicaragua|Nicaragua
Niger|Niger
Nigeria|Nigeria
Niue|Niue
Northern Mariana Islands|Northern Mariana Islands
Norway|Norway
Oman|Oman
Pakistan|Pakistan
Palau|Palau
Panama|Panama
Papua New Guinea|Papua New Guinea
Paraguay|Paraguay
Peru|Peru
Philippines|Philippines
Pitcairn Islands|Pitcairn Islands
Poland|Poland
Portugal|Portugal
Puerto Rico|Puerto Rico
Qatar|Qatar
Reunion|Reunion
Romania|Romania
Russia|Russia
Rwanda|Rwanda
Saint Kitts and Nevis|Saint Kitts and Nevis
Saint Lucia|Saint Lucia
Saint Pierre and Miquelon|Saint Pierre and Miquelon
Saint Vincent and the Grenadines|Saint Vincent and the Grenadines
Samoa|Samoa
San Marino|San Marino
Sao Tome and Principe|Sao Tome and Principe
Saudi Arabia|Saudi Arabia
Senegal|Senegal
Serbia|Serbia
Seychelles|Seychelles
Sierra Leone|Sierra Leone
Singapore|Singapore
Slovakia|Slovakia
Slovenia|Slovenia
Solomon Islands|Solomon Islands
Somalia|Somalia
South Africa|South Africa
Spain|Spain
Sri Lanka|Sri Lanka
Sudan|Sudan
Suriname|Suriname
Swaziland|Swaziland
Sweden|Sweden
Switzerland|Switzerland
Syria|Syria
Taiwan|Taiwan
Tajikistan|Tajikistan
Tanzania|Tanzania
Thailand|Thailand
Togo|Togo
Tokelau|Tokelau
Tonga|Tonga
Trinidad and Tobago|Trinidad and Tobago
Tunisia|Tunisia
Turkey|Turkey
Turkmenistan|Turkmenistan
Turks and Caicos Islands|Turks and Caicos Islands
Tuvalu|Tuvalu
Uganda|Uganda
Ukraine|Ukraine
United Arab Emirates|United Arab Emirates
United Kingdom|United Kingdom
United States|United States
Uruguay|Uruguay
Uzbekistan|Uzbekistan
Vanuatu|Vanuatu
Venezuela|Venezuela
Vietnam|Vietnam
Virgin Islands|Virgin Islands
Wallis and Futuna|Wallis and Futuna
West Bank|West Bank
Western Sahara|Western Sahara
Yemen|Yemen
Zambia|Zambia
Zimbabwe|Zimbabwe',
'allowed_values_php' => '',
'widget' => array(
'default_value' => array(
'0' => array(
'value' => '',
),
),
'default_value_php' => NULL,
'label' => 'Country',
'weight' => '5',
'description' => '',
'type' => 'optionwidgets_select',
'module' => 'optionwidgets',
),
);
// Exported field: field_image
$fields['profile-field_image'] = array(
'field_name' => 'field_image',
'type_name' => 'profile',
'display_settings' => array(
'label' => array(
'format' => 'above',
'exclude' => 0,
),
'teaser' => array(
'format' => 'image_plain',
'exclude' => 0,
),
'full' => array(
'format' => 'image_plain',
'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' => '0',
'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' => 'profiles',
'progress_indicator' => 'bar',
'max_filesize_per_file' => '512K',
'max_filesize_per_node' => '',
'max_resolution' => '300x300',
'min_resolution' => '50x50',
'alt' => '',
'custom_alt' => 0,
'title' => '',
'custom_title' => 0,
'title_type' => 'textfield',
'default_image' => array(
'filename' => 'Guest.png',
'filepath' => 'sites/default/files/imagefield_default_images/Guest_1.png',
'filemime' => 'image/png',
'source' => 'default_image_upload',
'destination' => 'sites/default/files/imagefield_default_images/Guest_1.png',
'filesize' => 9733,
'uid' => '1',
'status' => 1,
'timestamp' => 1347855344,
'fid' => '1',
),
'use_default_image' => 1,
'label' => 'Avatar',
'weight' => '7',
'description' => '',
'type' => 'imagefield_widget',
'module' => 'imagefield',
),
);
// Exported field: field_opinions
$fields['profile-field_opinions'] = array(
'field_name' => 'field_opinions',
'type_name' => 'profile',
'display_settings' => array(
'label' => array(
'format' => 'above',
'exclude' => 0,
),
'teaser' => array(
'format' => 'default',
'exclude' => 0,
),
'full' => array(
'format' => 'default',
'exclude' => 0,
),
'4' => array(
'format' => 'default',
'exclude' => 0,
),
'2' => array(
'format' => 'default',
'exclude' => 0,
),
'3' => array(
'format' => 'default',
'exclude' => 0,
),
'token' => array(
'format' => 'default',
'exclude' => 0,
),
),
'widget_active' => '1',
'type' => 'text',
'required' => '0',
'multiple' => '0',
'module' => 'text',
'active' => '1',
'text_processing' => '1',
'max_length' => '',
'allowed_values' => '',
'allowed_values_php' => '',
'widget' => array(
'rows' => '10',
'size' => 60,
'default_value' => array(
'0' => array(
'value' => '',
'_error_element' => 'default_value_widget][field_opinions][0][value',
),
),
'default_value_php' => NULL,
'label' => 'Your opinions about this project',
'weight' => '4',
'description' => 'Tell us your thoughts about Einstein@Home
1. Why do you run Einstein@Home?
2. What are your views about the project?
3. Any suggestions? ',
'type' => 'text_textarea',
'module' => 'text',
),
);
// Exported field: field_profile_image
$fields['profile-field_profile_image'] = array(
'field_name' => 'field_profile_image',
'type_name' => 'profile',
'display_settings' => array(
'label' => array(
'format' => 'above',
'exclude' => 0,
),
'teaser' => array(
'format' => 'image_plain',
'exclude' => 0,
),
'full' => array(
'format' => 'image_plain',
'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' => '0',
'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' => 'profiles',
'progress_indicator' => 'bar',
'max_filesize_per_file' => '512K',
'max_filesize_per_node' => '',
'max_resolution' => '640x480',
'min_resolution' => '100x100',
'alt' => '',
'custom_alt' => 0,
'title' => '',
'custom_title' => 0,
'title_type' => 'textfield',
'default_image' => NULL,
'use_default_image' => 0,
'label' => 'Profile image',
'weight' => '8',
'description' => '',
'type' => 'imagefield_widget',
'module' => 'imagefield',
),
);
// Exported field: field_url
$fields['profile-field_url'] = array(
'field_name' => 'field_url',
'type_name' => 'profile',
'display_settings' => array(
'label' => array(
'format' => 'above',
'exclude' => 0,
),
'teaser' => array(
'format' => 'default',
'exclude' => 0,
),
'full' => array(
'format' => 'default',
'exclude' => 0,
),
'4' => array(
'format' => 'default',
'exclude' => 0,
),
'2' => array(
'format' => 'default',
'exclude' => 0,
),
'3' => array(
'format' => 'default',
'exclude' => 0,
),
'token' => array(
'format' => 'default',
'exclude' => 0,
),
),
'widget_active' => '1',
'type' => 'text',
'required' => '0',
'multiple' => '0',
'module' => 'text',
'active' => '1',
'text_processing' => '0',
'max_length' => '',
'allowed_values' => '',
'allowed_values_php' => '',
'widget' => array(
'rows' => 5,
'size' => '60',
'default_value' => array(
'0' => array(
'value' => '',
'_error_element' => 'default_value_widget][field_url][0][value',
),
),
'default_value_php' => NULL,
'label' => 'Website URL',
'weight' => '9',
'description' => '',
'type' => 'text_textfield',
'module' => 'text',
),
);
// Exported field: field_zip
$fields['profile-field_zip'] = array(
'field_name' => 'field_zip',
'type_name' => 'profile',
'display_settings' => array(
'label' => array(
'format' => 'above',
'exclude' => 0,
),
'teaser' => array(
'format' => 'default',
'exclude' => 0,
),
'full' => array(
'format' => 'default',
'exclude' => 0,
),
'4' => array(
'format' => 'default',
'exclude' => 0,
),
'2' => array(
'format' => 'default',
'exclude' => 0,
),
'3' => array(
'format' => 'default',
'exclude' => 0,
),
'token' => array(
'format' => 'default',
'exclude' => 0,
),
),
'widget_active' => '1',
'type' => 'text',
'required' => '0',
'multiple' => '0',
'module' => 'text',
'active' => '1',
'text_processing' => '0',
'max_length' => '10',
'allowed_values' => '',
'allowed_values_php' => '',
'widget' => array(
'rows' => 5,
'size' => '10',
'default_value' => array(
'0' => array(
'value' => '',
'_error_element' => 'default_value_widget][field_zip][0][value',
),
),
'default_value_php' => NULL,
'label' => 'Zip code',
'weight' => '6',
'description' => '',
'type' => 'text_textfield',
'module' => 'text',
),
);
// Translatables
// Included for use with string extractors like potx.
t('Avatar');
t('Country');
t('Profile image');
t('Website URL');
t('Your opinions about this project');
t('Your personal background');
t('Zip code');
return $fields;
}

View File

@ -0,0 +1,34 @@
<?php
/**
* Implementation of hook_ctools_plugin_api().
*/
function user_profiles_ctools_plugin_api() {
list($module, $api) = func_get_args();
if ($module == "panels_mini" && $api == "panels_default") {
return array("version" => 1);
}
elseif ($module == "strongarm" && $api == "strongarm") {
return array("version" => 1);
}
}
/**
* Implementation of hook_node_info().
*/
function user_profiles_node_info() {
$items = array(
'profile' => array(
'name' => t('Profile'),
'module' => 'features',
'description' => t('A user profile built as content.'),
'has_title' => '1',
'title_label' => t('Title'),
'has_body' => '1',
'body_label' => t('Body'),
'min_word_count' => '0',
'help' => '',
),
);
return $items;
}

View File

@ -0,0 +1,34 @@
<?php
/**
* Implementation of hook_menu_default_menu_links().
*/
function user_profiles_menu_default_menu_links() {
$menu_links = array();
// Exported menu link: primary-links:account/profile
$menu_links['primary-links:account/profile'] = array(
'menu_name' => 'primary-links',
'link_path' => 'account/profile',
'router_path' => 'account/profile',
'link_title' => 'Profile',
'options' => array(
'attributes' => array(
'title' => '',
),
),
'module' => 'menu',
'hidden' => '0',
'external' => '0',
'has_children' => '0',
'expanded' => '0',
'weight' => '5',
'parent_path' => 'dashboard',
);
// Translatables
// Included for use with string extractors like potx.
t('Profile');
return $menu_links;
}

View File

@ -0,0 +1,61 @@
<?php
/**
* Implementation of hook_user_default_permissions().
*/
function user_profiles_user_default_permissions() {
$permissions = array();
// Exported permission: access user profiles
$permissions['access user profiles'] = array(
'name' => 'access user profiles',
'roles' => array(
'0' => 'administrator',
'1' => 'authenticated user',
),
);
// Exported permission: create profile content
$permissions['create profile content'] = array(
'name' => 'create profile content',
'roles' => array(
'0' => 'administrator',
'1' => 'authenticated user',
),
);
// Exported permission: delete any profile content
$permissions['delete any profile content'] = array(
'name' => 'delete any profile content',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: delete own profile content
$permissions['delete own profile content'] = array(
'name' => 'delete own profile content',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: edit any profile content
$permissions['edit any profile content'] = array(
'name' => 'edit any profile content',
'roles' => array(
'0' => 'administrator',
),
);
// Exported permission: edit own profile content
$permissions['edit own profile content'] = array(
'name' => 'edit own profile content',
'roles' => array(
'0' => 'administrator',
'1' => 'authenticated user',
),
);
return $permissions;
}

View File

@ -0,0 +1,46 @@
name = "User profiles"
description = "Profiles information for user accounts"
core = "6.x"
package = "Features"
dependencies[] = "content_profile"
dependencies[] = "ctools"
dependencies[] = "features"
dependencies[] = "filefield"
dependencies[] = "imagefield"
dependencies[] = "me"
dependencies[] = "menu"
dependencies[] = "optionwidgets"
dependencies[] = "panels_mini"
dependencies[] = "strongarm"
dependencies[] = "text"
features[content][] = "profile-field_background"
features[content][] = "profile-field_country"
features[content][] = "profile-field_image"
features[content][] = "profile-field_opinions"
features[content][] = "profile-field_profile_image"
features[content][] = "profile-field_url"
features[content][] = "profile-field_zip"
features[ctools][] = "panels_mini:panels_default:1"
features[ctools][] = "strongarm:strongarm:1"
features[menu_links][] = "primary-links:account/profile"
features[node][] = "profile"
features[panels_mini][] = "user_profile"
features[user_permission][] = "access user profiles"
features[user_permission][] = "create profile content"
features[user_permission][] = "delete any profile content"
features[user_permission][] = "delete own profile content"
features[user_permission][] = "edit any profile content"
features[user_permission][] = "edit own profile content"
features[variable][] = "comment_anonymous_profile"
features[variable][] = "comment_controls_profile"
features[variable][] = "comment_default_mode_profile"
features[variable][] = "comment_default_order_profile"
features[variable][] = "comment_default_per_page_profile"
features[variable][] = "comment_form_location_profile"
features[variable][] = "comment_preview_profile"
features[variable][] = "comment_profile"
features[variable][] = "comment_subject_field_profile"
features[variable][] = "content_extra_weights_profile"
features[variable][] = "content_profile_use_profile"
features[variable][] = "language_content_type_profile"
features[variable][] = "node_options_profile"

View File

@ -0,0 +1,3 @@
<?php
include_once('user_profiles.features.inc');

View File

@ -0,0 +1,91 @@
<?php
/**
* Implementation of hook_default_panels_mini().
*/
function user_profiles_default_panels_mini() {
$export = array();
$mini = new stdClass;
$mini->disabled = FALSE; /* Edit this to true to make a default mini disabled initially */
$mini->api_version = 1;
$mini->name = 'user_profile';
$mini->category = 'BOINC';
$mini->admin_title = 'User profile';
$mini->admin_description = 'A user\'s profile information, including background and opinions';
$mini->requiredcontexts = array(
0 => array(
'name' => 'user',
'id' => 1,
'identifier' => 'User',
'keyword' => 'user',
),
);
$mini->contexts = array();
$mini->relationships = array();
$display = new panels_display;
$display->layout = 'onecol';
$display->layout_settings = array();
$display->panel_settings = array(
'style_settings' => array(
'default' => NULL,
'middle' => NULL,
),
);
$display->cache = array();
$display->title = '';
$display->content = array();
$display->panels = array();
$pane = new stdClass;
$pane->pid = 'new-1';
$pane->panel = 'middle';
$pane->type = 'user_profile';
$pane->subtype = 'user_profile';
$pane->shown = TRUE;
$pane->access = array();
$pane->configuration = array(
'context' => 'requiredcontext_user_1',
'override_title' => 1,
'override_title_text' => '',
);
$pane->cache = array();
$pane->style = array(
'settings' => NULL,
);
$pane->css = array();
$pane->extras = array();
$pane->position = 0;
$display->content['new-1'] = $pane;
$display->panels['middle'][0] = 'new-1';
$pane = new stdClass;
$pane->pid = 'new-2';
$pane->panel = 'middle';
$pane->type = 'custom';
$pane->subtype = 'custom';
$pane->shown = TRUE;
$pane->access = array();
$pane->configuration = array(
'admin_title' => 'Flag user',
'title' => '',
'body' => '<?php
print flag_create_link(\'abuse_user\', %user:uid);
?>',
'format' => '3',
'substitute' => 1,
);
$pane->cache = array();
$pane->style = array(
'settings' => NULL,
);
$pane->css = array();
$pane->extras = array();
$pane->position = 1;
$display->content['new-2'] = $pane;
$display->panels['middle'][1] = 'new-2';
$display->hide_title = PANELS_TITLE_NONE;
$display->title_pane = 'new-1';
$mini->display = $display;
$export['user_profile'] = $mini;
return $export;
}

View File

@ -0,0 +1,113 @@
<?php
/**
* Implementation of hook_strongarm().
*/
function user_profiles_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_profile';
$strongarm->value = 0;
$export['comment_anonymous_profile'] = $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_profile';
$strongarm->value = '3';
$export['comment_controls_profile'] = $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_profile';
$strongarm->value = '4';
$export['comment_default_mode_profile'] = $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_profile';
$strongarm->value = '1';
$export['comment_default_order_profile'] = $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_profile';
$strongarm->value = '50';
$export['comment_default_per_page_profile'] = $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_profile';
$strongarm->value = '0';
$export['comment_form_location_profile'] = $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_profile';
$strongarm->value = '1';
$export['comment_preview_profile'] = $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_profile';
$strongarm->value = '2';
$export['comment_profile'] = $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_profile';
$strongarm->value = '1';
$export['comment_subject_field_profile'] = $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_profile';
$strongarm->value = array(
'title' => '-5',
'body_field' => '-3',
'revision_information' => '-1',
'author' => '-2',
'options' => '0',
'comment_settings' => '1',
'menu' => '-4',
'path' => '2',
);
$export['content_extra_weights_profile'] = $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_profile_use_profile';
$strongarm->value = 1;
$export['content_profile_use_profile'] = $strongarm;
$strongarm = new stdClass;
$strongarm->disabled = FALSE; /* Edit this to true to make a default strongarm disabled initially */
$strongarm->api_version = 1;
$strongarm->name = 'language_content_type_profile';
$strongarm->value = '0';
$export['language_content_type_profile'] = $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_profile';
$strongarm->value = array(
0 => 'status',
1 => 'promote',
);
$export['node_options_profile'] = $strongarm;
return $export;
}