[Last Call] Learn how to a build a cloud-first strategyRegister Now

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1011
  • Last Modified:

drupal calendar

in the drupal calendar block view, the mini calendar, is there a way to make the Month not clickable? I want to hide the month view and year view and week view.

and i installed the date-picker and enable anything but it's not working, where's the date picker supposed to show up?
0
charmingduck
Asked:
charmingduck
  • 7
  • 5
2 Solutions
 
Thomas4019Commented:
You can hide the other views using CSS.
0
 
charmingduckAuthor Commented:
I know, but you are not answering my question,


in the drupal calendar block view, the mini calendar, is there a way to make the Month not clickable?
0
 
Thomas4019Commented:
ok, i see what you're asking now.

Using the theme developer module, https://drupal.org/project/devel_themer, I was able to get that the function that creates the title is theme_date_nav_title, http://drupalcontrib.org/api/function/theme_date_nav_title.

Here's how you could remove the link.

1. Navigate to your theme's folder.
2. Open up page.tpl.php
3. Add in the following code snippet, replacing the YOURTHEMENAME in the function title, with your themes machine name. For example if you are using the garland theme use this name for the function, garland_date_nav_title
<?php
function YOURTHEMENAME_date_nav_title($granularity, $view, $link = FALSE, $format = NULL) {
  switch ($granularity) {
    case 'year':
      $title = $view->date_info->year;
      $url = $view->date_info->url .'/'. $view->date_info->year;
      break;
    case 'month':
      $format = !empty($format) ? $format : (empty($view->date_info->mini) ? 'F Y' : 'F');
      $title = date_format_date($view->date_info->min_date, 'custom', $format);
      $url = $view->date_info->url .'/'. $view->date_info->year .'-'. date_pad($view->date_info->month);
      break;
    case 'day':
      $format = !empty($format) ? $format : (empty($view->date_info->mini) ? 'l, F j Y' : 'l, F j');
      $title = date_format_date($view->date_info->min_date, 'custom', $format);
      $url = $view->date_info->url .'/'. $view->date_info->year .'-'. date_pad($view->date_info->month) .'-'. date_pad($view->date_info->day);
      break;
    case 'week':
    	$format = !empty($format) ? $format : (empty($view->date_info->mini) ? 'F j Y' : 'F j');
      $title = t('Week of @date', array('@date' => date_format_date($view->date_info->min_date, 'custom', $format)));
    	$url = $view->date_info->url .'/'. $view->date_info->year .'-W'. date_pad($view->date_info->week);
    	break;
  }
  
  return $title;
}
?>

Open in new window

0
Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
Thomas4019Commented:
Oops, make sure to delete the "<?php" and "?>" from the code snippet above before copying into the page.tpl.php file
0
 
charmingduckAuthor Commented:
thanks, I tried and it didnt work, did i do something wrong?
0
 
Thomas4019Commented:
did you flush your caches after putting in the function if not then please do.

The admin menu module makes it easy to flush your caches, http://drupal.org/project/admin_menu. Just hover over the top-left icon and then click "flush all caches"

what theme are you using?
0
 
charmingduckAuthor Commented:
I'm using fusion core


so it would be    fusion_core__date_nav_title   ?


I tried again, didn't work...
0
 
Thomas4019Commented:
I think it would be fusion_core_date_nav_title. The prefix should be the same as the folder name of your theme.

Also, follow this guide, http://www.kristen.org/content/how-get-drupal-theme-change-show.
0
 
charmingduckAuthor Commented:
yeah, that's what i did. But no luck,,, Did it work for you?
0
 
Thomas4019Commented:
Ahh, it's working on my end.

The function needs to go in your themes template.tpl.php and not your page.tpl.php. Sorry about that mistake.
0
 
charmingduckAuthor Commented:
awesome, great!!!

Hey Thomas4019,

If you have time, I'm going to post another question on applying ajax to the mini calendar, I know there's a lot of discussion about that and I dont really see the solution. If you know how to do that, would you leave me something?

Many thanks.  
0
 
Thomas4019Commented:
Glad to help!

I'll try my best with adding ajax to the mini calendar. I don't know if there's an easy solution but everything's possible.
0

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

  • 7
  • 5
Tackle projects and never again get stuck behind a technical roadblock.
Join Now