diff --git a/modules/og_views/og_views.module b/modules/og_views/og_views.module index e58dd1ad571150b3a0e34f9df02845215eeea756..05c4f7b60aced5136e6eea8e8f053140f4d60e6b 100644 --- a/modules/og_views/og_views.module +++ b/modules/og_views/og_views.module @@ -144,32 +144,37 @@ function og_views_nodeapi(&$node, $op, $teaser = NULL, $page = NULL) { } /** - * Implementation of hook_form_alter(). + * Implementation of hook_form_TAG_alter(). */ -function og_views_form_alter(&$form, $form_state, $form_id) { - if ($form_id == 'og_admin_settings') { - $views = views_get_all_views(); +function og_views_form_og_admin_settings_alter(&$form, $form_state) { + $views = views_get_all_views(); - $options = array(); - foreach ($views as $key => $view) { - if (substr($key, 0, strlen('og_ghp_')) == 'og_ghp_') { - $options[$key] = $view->name; - } + $options = array(); + foreach ($views as $key => $view) { + if (substr($key, 0, strlen('og_ghp_')) == 'og_ghp_') { + $options[$key] = $view->name; } - - $form['og_settings']['group_details']['og_home_page_view'] = array( - '#type' => 'select', - '#title' => t('Group home page view'), - '#description' => t('Pick a View for your group home page. Only Views whose names start with og_ghp_ are eligible. The View determines the layout of your group home page. You may alter the presentation using typical Views themeing techniques. See the Theme information link when editing your View and also see the Theme section of the !README. Also note that group admins can override this presentation using the included Organic Groups Panels module.', array('!README' => og_readme())), - '#options' => $options, - '#default_value' => variable_get('og_home_page_view', 'og_ghp_ron'), - ); } - elseif ($form_id == 'views_exposed_form' && $form_state['view']->name == 'og_search') { + + $form['og_settings']['group_details']['og_home_page_view'] = array( + '#type' => 'select', + '#title' => t('Group home page view'), + '#description' => t('Pick a View for your group home page. Only Views whose names start with og_ghp_ are eligible. The View determines the layout of your group home page. You may alter the presentation using typical Views themeing techniques. See the Theme information link when editing your View and also see the Theme section of the !README. Also note that group admins can override this presentation using the included Organic Groups Panels module.', array('!README' => og_readme())), + '#options' => $options, + '#default_value' => variable_get('og_home_page_view', 'og_ghp_ron'), + ); +} + +/** + * Implementation of hook_form_alter(). + */ +function og_views_form_alter(&$form, $form_state, $form_id) { + if ($form_id == 'views_exposed_form' && $form_state['view']->name == 'og_search') { $form['submit']['#value'] = t('Search group'); } } +// Embed the group homepage. function og_views_view_group($node, $teaser, $page) { $name = variable_get('og_home_page_view', 'og_ghp_ron'); $view = views_get_view($name); @@ -192,4 +197,20 @@ function og_views_view_group($node, $teaser, $page) { } drupal_set_title(filter_xss_admin($view->build_info['title'])); drupal_add_feed(url("node/$node->nid/feed"), drupal_get_title()); +} + +/** + * An implementation of hook_views_pre_view(). + */ +function og_views_views_pre_view(&$view, &$display_id, &$args) { + if ($view->name == 'og_my') { + if (!$view->display_handler->get_option('header')) { + $txt = t('You might be interested in an OPML feed containing feeds from all your subscribed groups.', array('!url' => url('og/opml'))); + + $view->attachment_before = $txt; + } + if (!$view->display_handler->get_option('footer')) { + $view->attachment_after = theme('opml_icon', url('og/opml')); + } + } } \ No newline at end of file diff --git a/modules/og_views/views/og.og_my.view b/modules/og_views/views/og.og_my.view index 8b7ed7daac770ea65238d9b10c65c4c02aabd7cb..811670a586d8dbb9aa1c92c8a1d39cfa1eab2bb7 100644 --- a/modules/og_views/views/og.og_my.view +++ b/modules/og_views/views/og.og_my.view @@ -99,21 +99,6 @@ $handler->override_option('access', array( 'perm' => 'view advanced help topic', )); $handler->override_option('title', 'My groups'); -$handler->override_option('header', 'OPML feed containing feeds from all your subscribed groups.\', array(\'!url\' => url(\'og/opml\'))); - -?>'); -$handler->override_option('header_format', '3'); -$handler->override_option('header_empty', 1); -$handler->override_option('footer', ''); -$handler->override_option('footer_format', '3'); -$handler->override_option('footer_empty', 1); $handler->override_option('empty', 'Not a member of any groups.'); $handler->override_option('empty_format', '1'); $handler->override_option('items_per_page', 50);