Drupal 4.7.x

Old Version Haxorz

Modules

Here are all the modules that I use, linked to their download page on Drupal.org .

*See below for details on how I have edited / hacked / changed and themed some of the modules to fit in with Skip The Budgie:

CSS Changes

The following modules have had the css section commented out in the .module file itself.

This means that the module's CSS file will no longer be called by <?php print $styles ?> in the page templates.

Audio

Added 'audio' and 'audioattach' css to style.css.

Codefilter

Added css to style.css.

Changed to:

div.codeblock {
  padding: 5px;
  border: 1px solid #CCC;
  background-color: #EEE;
  text-align: left;
  white-space: pre; /* preserve white spaces */
  overflow: auto; /* long lines stay in block with scroll bar */
}

Event

Added css to style.css:

/* Remove all ical links:*/
.ical-link {
  display: none;
}

/* Remove end date: */
.end {
  display: none;
}

Footnotes

Added css to style.css.

Nice_Menus

Added css to style.css.

Playlist

Added css to style.css.

STILL THERE!

Tagadelic

Added css to style.css.

Trip_search

Added css to style.css.

Taxonomy Multi Edit

There was an error in the original code - at least on my site when I tried to access content->add categories I got an error about my SQL syntax.

I fixed it thus (after looking at the same snippet in another module - node.module I think):

-$result =  pager_query('SELECT n.*, u.name, u.uid FROM {node} n' .
-                         'INNER JOIN {users} u ON n.uid = u.uid' .
-                         'ORDER BY n.changed DESC', 20, 0, NULL);

+  $result =  pager_query('SELECT n.*, u.name, u.uid FROM {node} n INNER JOIN {users} u ON n.uid = u.uid ORDER BY n.changed DESC', 20, 0, NULL);

Theme

Theme:

block.tpl.php

Themes all the menus in blocks in the sidebar.

Had to make this so that I could have a different template for the quotes block (see link below).

<?php
if ($block->module == 'quotes' && $block->delta == '1') {
    include
'block-quotes.tpl.php'; /*load a custom template for the quotes block */
   
return;
}
?>


<div class="<?php print "block block-$block->module" ?>" id="<?php print "block-$block->module-$block->delta"; ?>">
  <h2><?php print $block->subject ?></h2>
  <div class="content">
    <?php print $block->content ?>
  </div>
</div>

block-quotes.tpl.php

Custom template for quotes block.

<div id="block-<?php print $block->module .'-'. $block->delta; ?>" class="block block-<?php print $block->module ?>">
  <h2><?php print $block->subject ?></h2>
  <div class="content">
    <?php print $block->content ?>
  </div>
  </div>
</div>

comment.tpl.php

Template for comments.

'Zebra' styles alternate comments different colours. See template.php for the themed template code.

<div class="cnr-comment-<?php print $zebra ?>">
  <div class="comment <?php print ($comment->new) ? 'comment-new' : '' ?>">

    <?php if ($comment->new) : ?>
      <a id="new"></a>
      <span class="new"><?php print $new ?></span>
    <?php endif; ?>

    <div class="content"><?php print $content ?></div>
    <div class="author"><?php print $submitted ?></div>
    <div class="links"><?php print $links ?></div>

  </div>
</div>
</div>

I don't know what the last

is for, but my comments were all fsked up until I added it, so it seemed silly not to have it in!

layout.js

This is part of my NiftyCorners , the bit that defines all the various styles, what the backgrounds are, whether they're big or little corners, whether they have a border or not etc.

At some point I'm going to update this to the latest version - Nifty Corners Cube - which is supposed to be a bit simpler.

window.onload=function(){
if(!NiftyCheck())
    return;
Rounded("div#mainCorners","top","#ead0b5","#fbfffe","border #999");
Rounded("div#mainCorners","bottom","fff","#transparent","border #999");
Rounded("div.cnr-comment-odd","all","transparent","#ddd","border #369");
Rounded("div.cnr-comment-even","all","transparent","#eee","border #369");
Rounded("div.cnr-reviews","all","transparent","#eee","border #eee");
Rounded("div.cnr-faculty","top","transparent","#fbfffe","border #369");
Rounded("div.cnr-faculty","bottom","transparent","#fff","border #369");
Rounded("div.cnr-tekky","all","transparent","#ddd","small border #999");
Rounded("div.cnr-java","all","transparent","#ddd","small border #999");
Rounded("div.cnr-dash","all","transparent","#fff","border #999");
Rounded("div.cnr-playlists","all","transparent","#eee","border #999");
Rounded("div.cnr-indiaBlog","all","transparent","#fff","border #999");
Rounded("div.cnr-gigs","all","transparent","#fff","border #999");
Rounded("div.cnr-site","all","transparent","#fff","border #999");
Rounded("div.cnr-melody","all","transparent","#fff","border #999");
Rounded("div.cnr-feed-item","all","transparent","#eee","small border #999");
}

indialayout.js

Because the India theme is only for a specific section of the site, the niftyCorners layout.js doesn't need to be as big.

window.onload=function(){
if(!NiftyCheck())
    return;
Rounded("div#mainCorners","all","#e2ae57","#fbfffe","border #999");
Rounded("div.cnr-comment-odd","all","transparent","#ddd","border #369");
Rounded("div.cnr-comment-even","all","transparent","#eee","border #369");
Rounded("div.cnr-indiaBlog","all","transparent","#fff","border #999");
}

node.tpl.php

The default node layout. Drupal calls stories or posts 'nodes'.

The 'taxonomy' is how content is categorised, on Skip The Budgie I have one main category called 'on_topic' and I need to restrict the displayed category to just one 'term', even if the node is linked to several different terms. This is Very Important, as $node_terms just picks up everything.

<div class="cnr-<?php print $node_terms; ?>">
<div class="tax-<?php print $node_terms; ?>">
<div class="node<?php print ($sticky) ? " sticky" : ""; ?>">
  <?php if ($page == 0): ?>
    <h2><a href="<?php print $node_url ?>" title="<?php print $title ?>"><?php print $title ?></a></h2>
  <?php endif; ?>
<div class="info">posted <?php print $date ?></div>

<?php if ($terms): ?>
<?php
/* sort taxonomy links by vocabulary 1 */
$terms1 = taxonomy_node_get_terms_by_vocabulary($node->nid, 1);
if (
$terms1) {
  print
'<div class="terms">topic: ';
     foreach (
$terms1 as $key => $term1) {
    
$lterm1 = l($term1->name, 'taxonomy/term/'.$term1->tid);
  print
$lterm1;
     }
  print
'</div>';
}
?>

  <?php endif; ?>

  <div class="content">
  <?php print $content ?>
  </div>
<br class="clear" />

/* show 'add new comment' etc */
<?php if ($links): ?>
  <div class="links"><?php print $links ?></div>
<br class="clear" />

/* show the social bookmarking images */

  <div class="service-links">
    <?php print $service_links ?>
  </div>

<?php endif; ?>
</div>
</div>
</div>
<br class="clear" />




see below for different layouts for particular node types.

node-aggregator-item.tpl.php

Themes Aggregator items, which are created as nodes via the Feedparser module

<div class="cnr-feed-item">
<div class="feed-item">
<div class="node<?php print ($sticky) ? " sticky" : ""; ?>">

  <?php if ($page == 0): ?>
    <?php if ($title && $title != <h2><a href="<?php print $link ?>" title="No Title"><em>Untitled</em></a></h2>'): ?>
<h2><a href="<?php print $link ?>" title="<?php print $title ?>"><?php print $title ?></a></h2>
    <?php else: ?>
<h2><a href="<?php print $link ?>" title="No Title"><em>Untitled</em></a></h2>
    <?php endif; ?>
  <?php endif; ?>

<div class="info">posted <?php print $date ?></div>
  <div class="content">
  <?php print $content ?>
  </div>
<br class="clear" />

<?php if ($links): ?>
  <div class="links"><?php print $links ?></div>
<?php endif; ?>

<?php if ($terms): ?>
  <div class="terms">( tags: <?php print $terms ?> )</div>
<?php endif; ?>

</div>
</div>
</div>
<br class="clear" />

node-audio.tpl.php

Template for Audio nodes.

Removed 'submitted by', restricted node classes to just one 'term' - in this case 'dash', to save having to rewrite the same CSS for each audio category.

<div class="cnr-dash">
<div class="tax-dash">
<div class="node<?php print ($sticky) ? " sticky" : ""; ?>">

  <?php if ($page == 0): ?>
    <h2><a href="<?php print $node_url ?>" title="<?php print $title ?>"><?php print $title ?></a></h2>
  <?php endif; ?>

  <div class="content">
  <?php print $content ?>
  </div>
<br class="clear" />

<?php if ($links): ?>
  <div class="links"><?php print $links ?></div>
<br class="clear" />

  <div class="service-links">
    <?php print $service_links ?>
  </div>
<?php endif; ?>

</div>
</div>
</div>
<br class="clear" />

node-audio_playlist.tpl.php

Just realised I didn't have anything theming the playlists, this is basically a copy of node-audio.tpl.php

<div class="cnr-dash">
<div class="tax-dash">
<div class="node<?php print ($sticky) ? " sticky" : ""; ?>">
  <?php if ($page == 0): ?>
    <h2><a href="<?php print $node_url ?>" title="<?php print $title ?>"><?php print $title ?></a></h2>
  <?php endif; ?>
  <div class="content">
  <?php print $content ?>
  </div>
<br class="clear" />
<?php if ($links): ?>
  <div class="links"><?php print $links ?></div>
<br class="clear" />
  <div class="service-links">
    <?php print $service_links ?>
  </div>
<?php endif; ?>
</div>
</div>
</div>
<br class="clear" />

node-book.tpl.php

Defines 'book' pages. My India Diaries are all book Pages.

<div class="cnr-<?php print $node_terms; ?>">
  <div class="tax-<?php print $node_terms; ?>">
<div class="node<?php print ($sticky) ? " sticky" : ""; ?>">

  <?php if ($page == 0): ?>
    <h2><a href="<?php print $node_url ?>" title="<?php print $title ?>"><?php print $title ?></a></h2>
  <?php endif; ?>

  <div class="content">
    <?php print $content ?>
  </div>
<br class="clear" />

<?php if ($links): ?>
  <div class="links"><?php print $links ?></div>

<br class="clear" />
  <div class="service-links">
    <?php print $service_links ?>
  </div>
<?php endif; ?>

</div>
  </div>
</div>
<br class="clear" />

node-flexinode-2.tpl.php

Themes calendar items, which are nodes created via the flexinode module.

<div class="cnr-<?php print $node_terms; ?>">
<div class="tax-<?php print $node_terms; ?>">
<div class="node<?php print ($sticky) ? " sticky" : ""; ?>">

  <?php if ($page == 0): ?>
    <h2><a href="<?php print $node_url ?>" title="<?php print $title ?>"><?php print $title ?></a></h2>
  <?php endif; ?>

  <div class="content">
  <?php print $content ?>
  </div>
<br class="clear" />

<?php if ($links): ?>
  <div class="links"><?php print $links ?></div>
<br class="clear" />

  <div class="service-links">
    <?php print $service_links ?>
  </div>
<?php endif; ?>

</div>
</div>
</div>
<br class="clear" />

node-flexinode-4.tpl.php

Template for 'Today's Music' nodes, includes 'next-prev' links from template.php.

<div class="cnr-<?php print $node_terms; ?>">
<div class="tax-<?php print $node_terms; ?>">
<div class="node<?php print ($sticky) ? " sticky" : ""; ?>">
  <?php if ($page == 0): ?>
    <h2><a href="<?php print $node_url ?>" title="<?php print $title ?>"><?php print $title ?></a></h2>
  <?php endif; ?>

<div class="info">posted <?php print $date ?></div>

<?php if ($terms): ?>
<?php
/* sort taxonomy links by vocabulary 1 */
$terms1 = taxonomy_node_get_terms_by_vocabulary($node->nid, 1);
if (
$terms1) {
  print
'<div class="terms">topic: ';
     foreach (
$terms1 as $key => $term1) {
    
$lterm1 = l($term1->name, 'taxonomy/term/'.$term1->tid);
  print
$lterm1;
     }
  print
'</div>';
}
?>

  <?php endif; ?>

  <div class="content">
  <?php print $content ?>
  </div>

<br class="clear" />

<?php
if ($terms && arg(0) == 'node' && is_null(arg(2))) {
     
$next = next_prev($node->nid, 'flexinode-4', 'next', 'next >', 'page-next');
     
$previous = next_prev($node->nid, 'flexinode-4', 'prev', '< previous', 'page-previous');
     
$last = next_prev($node->nid, 'flexinode-4', 'last', 'last >>', 'page-last');
     
$first = next_prev($node->nid, 'flexinode-4', 'first', '<< first', 'page-first');
     
$uplink = next_prev($node->nid, 'flexinode-4', 'parent', '', 'page-up');
}
?>


<?php if ($terms && arg(0) == 'node' && is_null(arg(2))): ?>
<div class="book-navigation">
  <div class="page-links">

<?php if ($previous): ?>
  <?php print $first ?>
  <?php print $previous ?>
<?php endif; ?>

<?php print $uplink ?>

<?php if ($next): ?>
  <?php print $last ?>
  <?php print $next ?>
<?php endif; ?>

<br class="clear" />
  </div>
</div>

<br class="clear" />
<?php endif; ?>
<?php if ($links): ?>
  <div class="links"><?php print $links ?></div>
<?php endif; ?>
</div>
</div>
</div>
<br class="clear" />

node-page.tpl.php

Themes 'pages' which are a different sort of node. Bristol Venues is a page.

<div class="cnr-<?php print $node_terms; ?>">
<div class="tax-<?php print $node_terms; ?>">
<div class="node<?php print ($sticky) ? " sticky" : ""; ?>">

  <?php if ($page == 0): ?>
    <h2><a href="<?php print $node_url ?>" title="<?php print $title ?>"><?php print $title ?></a></h2>
  <?php endif; ?>

  <div class="content">
  <?php print $content ?>
  </div>
<br class="clear" />

<?php if ($links): ?>
  <div class="links"><?php print $links ?></div>
<?php endif; ?>

</div>
</div>
</div>
<br class="clear" />

node-quotes.tpl.php

Well, whaddya know? Themes nodes created by the Quotes module.

$content calls quotes.tpl.php (see below).

<div class="cnr-indiaBlog">
  <div class="tax-quotes">
<div class="node<?php print ($sticky) ? " sticky" : ""; ?>">

  <div class="content">
      <?php print $content ?>
  </div>
<br class="clear" />

</div>
  </div>
</div>

<br class="clear" />

quotes.tpl.php

This is used by the function in template.php and defines what the quotes look like. I've made it so that the author name links to the quote itself (so that I can fix typos and stuff easily from the front page)

  <span class="bqstart">“</span>
<div class="quotes-quote">
  <?php print $node->body ?>
</div>

<div class="quotes-author">
    <a href="http://www.skipthebudgie.org/node/<?php print $node->nid ?>" title="<?php print $node->title?>">
  <?php print $node->quotes_author ?>
    </a>
</div>
  <span class="bqend">”</span>

page.tpl.php

This is the first place that Drupal looks when generating the web site. It looks at where you are, then uses the correct theme to display. In the original Drupal theme, this is usually where the code found in frontpage.tpl.php is found.

I split it up because I wanted my admin pages to look different to the rest of the site - albeit only slightly.

<?php
if ($is_front) {
    include
"frontpage.tpl.php";
    return;
}
else {
$uri_request_id = $_SERVER['REQUEST_URI'];
$section = explode("/", $uri_request_id);
switch (
$section[1])
  {
    case
'admin': include 'admin.tpl.php'; break;
    case
'indiablog': include 'page-india.tpl.php'; break;
    case
'event': include 'page-calendar.tpl.php'; break;
    default: include
'inside.tpl.php';
  }
}
?>




See links below for details:

admin.tpl.php

this is the page template for all Administration pages. Only I can see this style, basically all the fancy Flickr stuff in the header is removed and I get my blocks on the left.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="<?php print $language ?>" xml:lang="<?php print $language ?>">
<head>
  <title><?php print $head_title ?></title>
  <meta http-equiv="Content-Style-Type" content="text/css" />
  <meta name="ICBM" content="51.467046,-2.582910" />
  <meta name="DC.title" content="<?php print($site_name) ?>" />
  <meta name="geo.position" content="51.467046,-2.582910" />
  <meta name="geo.placename" content="Bristol, England" />
  <meta name="geo.region" content="GB-BST" />

<!-- NIFTY CORNERS -->
<link rel="stylesheet" type="text/css" href="/<?php print $directory ?>/niftyCorners.css" />
<link rel="stylesheet" type="text/css" href="/<?php print $directory ?>/niftyPrint.css" media="print" />
<script type="text/javascript" src="/<?php print $directory ?>/nifty.js"></script>
<script type="text/javascript" src="/<?php print $directory ?>/layout.js"></script>
<!-- end nifty -->

  <?php print $head ?>
  <?php $styles .= theme('stylesheet_import', base_path() . path_to_theme() . '/admin.css'); ?>
  <?php print $styles ?>
</head>

<body>
<div id="mainCorners">
<div id="mainContainer">

<div id="header">
<div class="headerBG">
  <?php print $search_box ?>
  <?php if ($site_name) : ?>
<h1 id="site-name"><a href="<?php print url() ?>" title="Index Page"><?php print($site_name) ?></a></h1>
  <?php endif;?>
  <?php print $header ?>
</div>
</div>

<div id="top-nav">
<?php print $breadcrumb ?>
    <ul id="primary">
    <li><?php global $user; if (!$user->uid) {
print
'<a href="/user/login">login</a>';
} elseif (
$user->uid) {
print
'<a href="/logout">logout</a></li><li><a href="/admin">administer</a></li>';
}
?>
</li>
    <?php if (count($primary_links)) : ?>
    <?php foreach ($primary_links as $link): ?>
      <li><?php print $link?></li>
    <?php endforeach; ?>
    </ul>
  <?php endif; ?>
</div>

<table id="content">
  <tr>
    <?php if ($sidebar_left != ""): ?>
      <td class="sidebar" id="sidebar-left">
        <?php print $sidebar_left ?>
      </td>
    <?php endif; ?>   
        <td class="main-content" id="content-<?php print $layout ?>">
        <?php if ($title != ""): ?>
          <h2 class="content-title"><?php print $title ?></h2>
        <?php endif; ?>
        <?php if ($tabs != ""): ?>
          <?php print $tabs ?>
        <?php endif; ?>
       
        <?php if ($help != ""): ?>
          <p id="help"><?php print $help ?></p>
        <?php endif; ?>
       
        <?php if ($messages != ""): ?>
          <div id="message"><?php print $messages ?></div>
        <?php endif; ?>
       
        <!-- start main content -->
        <?php print($content) ?>
        <!-- end main content -->
        </td><!-- mainContent -->
  </tr>
</table>
  <?php if (count($secondary_links)) : ?>
    <ul id="secondary">
    <?php foreach ($secondary_links as $link): ?>
      <li><?php print $link?></li>
    <?php endforeach; ?>
    </ul>
  <?php endif; ?>

<?php print $closure;?>
</div>
</div>
  </body>
</html>

frontpage.tpl.php

Theme template for the Main page of the site.

Note the clever 'hidden div' for the Flickr pictures at the top - this means that the content (writing and stuff) loads first, so if Flickr are having a slow day you can still read the site!

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="<?php print $language ?>" xml:lang="<?php print $language ?>">
<head>
  <title><?php print $head_title ?></title>
  <meta http-equiv="Content-Style-Type" content="text/css" />
  <meta name="ICBM" content="51.467046,-2.582910" />
  <meta name="DC.title" content="<?php print($site_name) ?>" />
  <meta name="geo.position" content="51.467046,-2.582910" />
  <meta name="geo.placename" content="Bristol, England" />
  <meta name="geo.region" content="GB-BST" />
  <meta name="verify-v1" content="/7GPorYUniA+C0oekMSemy7T7ilQAIJUcHS08hoLVP0=" />

<!-- NIFTY CORNERS -->
<link rel="stylesheet" type="text/css" href="/<?php print $directory ?>/niftyCorners.css" />
<link rel="stylesheet" type="text/css" href="/<?php print $directory ?>/niftyPrint.css" media="print" />
<script type="text/javascript" src="/<?php print $directory ?>/nifty.js"></script>
<script type="text/javascript" src="/<?php print $directory ?>/layout.js"></script>
<!-- end nifty -->

  <?php print $head ?>
  <?php print $styles ?>
</head>

<body>
<div id="mainCorners">
<div id="mainContainer">
<div id="header">
<div class="headerBG">
  <?php print $search_box ?>
  <?php if ($site_name) : ?>
<h1 id="site-name"><a href="<?php print url() ?>" title="Index Page"><?php print($site_name) ?></a></h1>
  <?php endif;?>
  <?php if ($site_slogan) : ?>
    <span id="site-slogan"><?php print($site_slogan) ?></span>
  <?php endif;?>
  <?php print $header ?>
</div>
</div>

<div id="flickr-bar">
  <?php if ($logo) : ?>
  <a href="<?php print url() ?>" title="Index Page"><img id="logo" src="<?php print($logo) ?>" alt="Logo" /></a>
  <?php endif; ?>
<!-- Start of Flickr Badge -->
<div id="flickrBadge"></div>
<!-- End of Flickr Badge -->
</div>

<div id="top-nav">
  <?php if ($is_front) : ?>
<div class="breadcrumb"><a href="<?php print url() ?>">Home</a></div>
  <?php endif; ?>
    <ul id="primary">
    <li><?php global $user; if (!$user->uid) {
print
'<a href="user/login">login</a></li><li><a href="http://www.flickr.com/photos/skip">photos</a></li><li><a href="audio">music</a></li><li><a href="site/reviews">reviews</a></li><li><a href="indiablog/my_india_diaries">india</a>';
} elseif (
$user->uid) {
print
'<a href="logout">logout</a></li><li><a href="admin">administer</a>';
}
?>
</li>
    <?php if (count($primary_links)) : ?>
    <?php foreach ($primary_links as $link): ?>
      <li><?php print $link?></li>
    <?php endforeach; ?>
    </ul>
  <?php endif; ?>
</div>

<table id="content">
  <tr>
    <?php if ($sidebar_left != ""): ?>
      <td class="sidebar" id="sidebar-left">
        <?php print $sidebar_left ?>
      </td>
    <?php endif; ?>   
        <td class="main-content" id="content-<?php print $layout ?>">
        <?php if ($title != ""): ?>
          <h2 class="content-title"><?php print $title ?></h2>
        <?php endif; ?>
        <?php if ($tabs != ""): ?>
          <?php print $tabs ?>
        <?php endif; ?>
       
        <?php if ($mission != ""): ?>
          <div id="mission"><?php print $mission ?></div>
        <?php endif; ?>
       
        <?php if ($help != ""): ?>
          <p id="help"><?php print $help ?></p>
        <?php endif; ?>
       
        <?php if ($messages != ""): ?>
          <div id="message"><?php print $messages ?></div>
        <?php endif; ?>
       
        <!-- start main content -->
        <?php print($content) ?>
        <!-- end main content -->
        </td><!-- mainContent -->
    <?php if ($sidebar_right != ""): ?>
    <td class="sidebar" id="sidebar-right">
        <?php print $sidebar_right ?>
    </td>
    <?php endif; ?>
  </tr>
</table>
  <?php if (count($secondary_links)) : ?>
    <ul id="secondary">
    <?php foreach ($secondary_links as $link): ?>
      <li><?php print $link?></li>
    <?php endforeach; ?>
    </ul>
  <?php endif; ?>

<div id="footer">
  <?php if ($footer_message) : ?>
    <p><?php print $footer_message;?></p>
  <?php endif; ?>
</div><!-- footer -->
</div>
<?php print $closure;?>
  </div>
  <!-- END #mainCorners div: -->
  </div>

<!-- HIDDEN DIV FOR FLICKR BADGE -->
<div id="hiddenBadge"
   style="visibility: hidden">
<table cellpadding="0" cellspacing="0" border="0" id="flickr_badge_uber_wrapper"><tr>
<td><script type="text/javascript" src="http://www.flickr.com/badge_code_v2.gne?show_name=1&count=5&amp;display=random&amp;size=t&amp;layout=h&amp;source=user&amp;user=52082843%40N00"></script></td>
</tr>
</table>
</div>
<script type="text/javascript">
document.getElementById(
     "flickrBadge").innerHTML =
   document.getElementById(
       "hiddenBadge").innerHTML;
</script>

<!-- END OF HIDDEN DIV -->
  </body>
</html>

inside.tpl.php

Theme template for when you are viewing a post etc - removes flickr pictures from the top and put the title of the story there instead.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="<?php print $language ?>" xml:lang="<?php print $language ?>">
<head>
  <title><?php print $head_title ?></title>
  <meta http-equiv="Content-Style-Type" content="text/css" />
  <meta name="ICBM" content="51.467046,-2.582910" />
  <meta name="DC.title" content="<?php print($site_name) ?>" />
  <meta name="geo.position" content="51.467046,-2.582910" />
  <meta name="geo.placename" content="Bristol, England" />
  <meta name="geo.region" content="GB-BST" />

<!-- NIFTY CORNERS -->
<link rel="stylesheet" type="text/css" href="/<?php print $directory ?>/niftyCorners.css" />
<link rel="stylesheet" type="text/css" href="/<?php print $directory ?>/niftyPrint.css" media="print" />
<script type="text/javascript" src="/<?php print $directory ?>/nifty.js"></script>
<script type="text/javascript" src="/<?php print $directory ?>/layout.js"></script>
<!-- end nifty -->

  <?php print $head ?>
  <?php print $styles ?>
</head>

<body>
<div id="mainCorners">
<div id="mainContainer">
<div id="header">
<div class="headerBG">

  <?php print $search_box ?>

  <?php if ($site_name) : ?>
<h1 id="site-name"><a href="<?php print url() ?>" title="Index Page"><?php print($site_name) ?></a></h1>
  <?php endif;?>

  <?php print $header ?>
</div>

<div id="flickr-bar">
  <?php if ($logo) : ?>
  <a href="<?php print url() ?>" title="Index Page"><img id="logo" src="<?php print($logo) ?>" alt="Logo" /></a>
  <?php endif; ?>
  <?php if ($title != ""): ?>
<h2 class="content-title"><?php print $title ?></h2>
  <?php endif; ?>
  <?php if ($tabs != ""): ?>
    <?php print $tabs ?>
  <?php endif; ?>
</div>
</div>
<div id="top-nav">
  <?php print $breadcrumb ?>
    <ul id="primary">
    <li><?php global $user; if (!$user->uid) {
print
'<a href="/user/login">login</a></li><li><a href="http://www.flickr.com/photos/skip">photos</a></li><li><a href="/audio">music</a></li><li><a href="/site/reviews">reviews</a></li><li><a href="/indiablog/my_india_diaries">india</a>';
} elseif (
$user->uid) {
print
'<a href="/logout">logout</a></li><li><a href="/admin">administer</a>';
}
?>
</li>
  <?php if (count($primary_links)) : ?>
    <?php foreach ($primary_links as $link): ?>
      <li><?php print $link?></li>
    <?php endforeach; ?>
    </ul>
  <?php endif; ?>
</div>

<table id="content">
  <tr>
        <td class="main-content" id="content-<?php print $layout ?>">

        <?php if ($help != ""): ?>
          <p id="help"><?php print $help ?></p>
        <?php endif; ?>
       
        <?php if ($messages != ""): ?>
          <div id="message"><?php print $messages ?></div>
        <?php endif; ?>
       
  <!-- start main content -->
        <?php print($content) ?>
  <!-- end main content -->
        </td>
 
  <!-- sidebar -->
    <?php if ($sidebar_right != ""): ?>
    <td class="sidebar" id="sidebar-right">
        <?php print $sidebar_right ?>
    </td>
    <?php endif; ?>
  </tr>
</table>

  <!-- footer -->
  <?php if (count($secondary_links)) : ?>
    <ul id="secondary">
    <?php foreach ($secondary_links as $link): ?>
      <li><?php print $link?></li>
    <?php endforeach; ?>
    </ul>
  <?php endif; ?>

<div id="footer">
  <?php if ($footer_message) : ?>
    <p><?php print $footer_message;?></p>
  <?php endif; ?>

<?php print $closure;?>
  <!-- END #mainContent: -->
    </div>
  <!-- END #mainCorners: -->
    </div>

  </body>
</html>

page-calendar.tpl.php

The event calendar is themed slightly differently, via css.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="<?php print $language ?>" xml:lang="<?php print $language ?>">
<head>
  <title><?php print $head_title ?></title>
  <meta http-equiv="Content-Style-Type" content="text/css" />
  <meta name="ICBM" content="51.467046,-2.582910" />
  <meta name="DC.title" content="<?php print($site_name) ?>" />
  <meta name="geo.position" content="51.467046,-2.582910" />
  <meta name="geo.placename" content="Bristol, England" />
  <meta name="geo.region" content="GB-BST" />

<!-- NIFTY CORNERS -->
<link rel="stylesheet" type="text/css" href="/<?php print $directory ?>/niftyCorners.css" />
<link rel="stylesheet" type="text/css" href="/<?php print $directory ?>/niftyPrint.css" media="print" />
<script type="text/javascript" src="/<?php print $directory ?>/nifty.js"></script>
<script type="text/javascript" src="/<?php print $directory ?>/indialayout.js"></script>
<!-- end nifty -->

  <?php print $head ?>
<?php $styles .= theme('stylesheet_import', base_path() . path_to_theme() . '/indiablog.css'); ?>
  <?php print $styles ?>
</head>

<body>
<div id="mainCorners">
<div id="mainContainer">
<div id="header">
<div class="headerBG">

  <?php print $search_box ?>

  <?php if ($site_name) : ?>
    <h1 id="site-name"><a href="<?php print url() ?>" title="Index Page"><img src="/themes/img/SkipEnraKilli.gif" alt="Skip enra Killi india" /></a></h1>
  <?php endif;?>

  <?php print $header ?>
</div>

<div id="flickr-bar">
  <?php if ($logo) : ?>
  <a href="<?php print url() ?>" title="Index Page"><img id="logo" src="<?php print($logo) ?>" alt="Logo" /></a>
  <?php endif; ?>
  <?php if ($title != ""): ?>
<h2 class="content-title"><?php print $title ?></h2>
  <?php endif; ?>
  <?php if ($tabs != ""): ?>
    <?php print $tabs ?>
  <?php endif; ?>
</div>
</div>
<div id="top-nav">
  <?php print $breadcrumb ?>
    <ul id="primary">
    <li><?php global $user; if (!$user->uid) {
print
'<a href="/user/login">login</a></li><li><a href="http://www.flickr.com/photos/skip">photos</a></li><li><a href="/audio">music</a></li><li><a href="/site/reviews">reviews</a></li><li><a href="/indiablog/my_india_diaries">india</a>';
} elseif (
$user->uid) {
print
'<a href="/logout">logout</a></li><li><a href="/admin">administer</a>';
}
?>
</li>
  <?php if (count($primary_links)) : ?>
    <?php foreach ($primary_links as $link): ?>
      <li><?php print $link?></li>
    <?php endforeach; ?>
    </ul>
  <?php endif; ?>
</div>

<table id="content">
  <tr>
        <td class="main-content" id="content-<?php print $layout ?>">
       
        <?php if ($help != ""): ?>
          <p id="help"><?php print $help ?></p>
        <?php endif; ?>
       
        <?php if ($messages != ""): ?>
          <div id="message"><?php print $messages ?></div>
        <?php endif; ?>
       
  <!-- start main content -->
        <?php print($content) ?>
  <!-- end main content -->
        </td>
 
  <!-- sidebar -->
    <?php if ($sidebar_right != ""): ?>
    <td class="sidebar" id="sidebar-right">
        <?php print $sidebar_right ?>
    </td>
    <?php endif; ?>
  </tr>
</table>

  <!-- footer -->
  <?php if (count($secondary_links)) : ?>
    <ul id="secondary">
    <?php foreach ($secondary_links as $link): ?>
      <li><?php print $link?></li>
    <?php endforeach; ?>
    </ul>
  <?php endif; ?>

<div id="footer">
  <?php if ($footer_message) : ?>
    <p><?php print $footer_message;?></p>
  <?php endif; ?>

<?php print $closure;?>
  <!-- END #mainContent: -->
    </div>
  <!-- END #mainCorners: -->
    </div>

  </body>
</html>

page-india.tpl.php

Retains the old theme for all 'indiablog' pages.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="<?php print $language ?>" xml:lang="<?php print $language ?>">
<head>
  <title><?php print $head_title ?></title>
  <meta http-equiv="Content-Style-Type" content="text/css" />
  <meta name="ICBM" content="51.467046,-2.582910" />
  <meta name="DC.title" content="<?php print($site_name) ?>" />
  <meta name="geo.position" content="51.467046,-2.582910" />
  <meta name="geo.placename" content="Bristol, England" />
  <meta name="geo.region" content="GB-BST" />

<!-- NIFTY CORNERS -->
<link rel="stylesheet" type="text/css" href="/<?php print $directory ?>/niftyCorners.css" />
<link rel="stylesheet" type="text/css" href="/<?php print $directory ?>/niftyPrint.css" media="print" />
<script type="text/javascript" src="/<?php print $directory ?>/nifty.js"></script>
<script type="text/javascript" src="/<?php print $directory ?>/indialayout.js"></script>
<!-- end nifty -->

  <?php print $head ?>
<?php $styles .= theme('stylesheet_import', base_path() . path_to_theme() . '/indiablog.css'); ?>
  <?php print $styles ?>
</head>

<body>
<div id="mainCorners">
<div id="mainContainer">
<div id="header">
<div class="headerBG">

  <?php print $search_box ?>

  <?php if ($site_name) : ?>
    <h1 id="site-name"><a href="<?php print url() ?>" title="Index Page"><img src="/themes/img/SkipEnraKilli.gif" alt="Skip enra Killi india" /></a></h1>
  <?php endif;?>

  <?php print $header ?>
</div>

<div id="flickr-bar">
  <?php if ($logo) : ?>
  <a href="<?php print url() ?>" title="Index Page"><img id="logo" src="<?php print($logo) ?>" alt="Logo" /></a>
  <?php endif; ?>
  <?php if ($title != ""): ?>
<h2 class="content-title"><?php print $title ?></h2>
  <?php endif; ?>
  <?php if ($tabs != ""): ?>
    <?php print $tabs ?>
  <?php endif; ?>
</div>
</div>
<div id="top-nav">
  <?php print $breadcrumb ?>
    <ul id="primary">
    <li><?php global $user; if (!$user->uid) {
print
'<a href="/user/login">login</a></li><li><a href="http://www.flickr.com/photos/skip">photos</a></li><li><a href="/audio">music</a></li><li><a href="/site/reviews">reviews</a></li><li><a href="/indiablog/my_india_diaries">india</a>';
} elseif (
$user->uid) {
print
'<a href="/logout">logout</a></li><li><a href="/admin">administer</a>';
}
?>
</li>
  <?php if (count($primary_links)) : ?>
    <?php foreach ($primary_links as $link): ?>
      <li><?php print $link?></li>
    <?php endforeach; ?>
    </ul>
  <?php endif; ?>
</div>

<table id="content">
  <tr>
        <td class="main-content" id="content-<?php print $layout ?>">
       
        <?php if ($help != ""): ?>
          <p id="help"><?php print $help ?></p>
        <?php endif; ?>
       
        <?php if ($messages != ""): ?>
          <div id="message"><?php print $messages ?></div>
        <?php endif; ?>
       
  <!-- start main content -->
        <?php print($content) ?>
  <!-- end main content -->
        </td>
 
  <!-- sidebar -->
    <?php if ($sidebar_right != ""): ?>
    <td class="sidebar" id="sidebar-right">
        <?php print $sidebar_right ?>
    </td>
    <?php endif; ?>
  </tr>
</table>

  <!-- footer -->
  <?php if (count($secondary_links)) : ?>
    <ul id="secondary">
    <?php foreach ($secondary_links as $link): ?>
      <li><?php print $link?></li>
    <?php endforeach; ?>
    </ul>
  <?php endif; ?>

<div id="footer">
  <?php if ($footer_message) : ?>
    <p><?php print $footer_message;?></p>
  <?php endif; ?>

<?php print $closure;?>
  <!-- END #mainContent: -->
    </div>
  <!-- END #mainCorners: -->
    </div>

  </body>
</html>

style.css

CSS Stylesheet for Skip The Budgie.

Well this is where the magic happens! Where possible I try to add in the css for contributed modules as well so that I can change things easily and we don't end up with the browser calling millions of stylesheets.

/* CSS Document */
/* www.skipthebudgie.org */

/*********************/
/* STANDARD ELEMENTS */
/*********************/

/* Colors and borders */

body, #search, #mission {
  color: #000;
}

body {
  background: #ead0b5 url('/themes/img/bg_gradient.png') fixed;
  font-size: 70%;
  font-weight: 400;
  font-family: Verdana, sans-serif;
  text-align: center;
  voice-family: "\"}\"";
  voice-family: inherit;
}
a, a:link {
  color: #369;
  voice-family: "\"}\"";
  voice-family: inherit;
}

a:visited {
  color: #2d5986;
  text-decoration: none;
}

a:hover {}
a:focus { color: #000; }
a:active { color: #606; }

a, li a, div.links a, li a:hover, div.links a:hover, #site-name a {
  text-decoration: none !important;
}

ul, dl {
  padding: 0px 0px 0px 5px;
  margin: 0px;
}

li, dd, div.links a {
  margin: 0px 0px 3px 0px;
  padding: 0px;
  font-weight: 400;
  font-size: 11px;
  font-family: Arial, sans-serif;
}

ul li, dd, div.links a {
  list-style-type: none;
}

dd {
  padding: 0px 20px 0px 20px;
}

.main-content .node .content li {
  padding: 0 10px 2px 10px;
}

div.links {
  line-height: 16px;
}

img { border: 0; }

.sidebar .block {
  background: inherit;
}

.more-link a, .main-content .node .content a, .comment .content a, li a:hover, audio_block a:hover, div.links a:hover, .links a.read-more:hover, .main-content .node .terms a:hover { border-bottom: 1px dashed #990000; }

.more-link a:hover, .main-content .node .content a:hover, .comment .content a:hover, audio_block a { border-bottom: 1px solid #2C5E92; }

.main-content .node .content .book-navigation a, .main-content .node .content .book-navigation a:hover, .main-content .node .content .see_footnote a, .main-content .node .content .see_footnote a:hover {
  border: 0;
}

.main-content .node .content .see_footnote a {
  color: #900;
  font-weight: 700;
}

.main-content .node .content .see_footnote a:hover {
  color: #369;
}

.main-content .node .info, .main-content .node .terms, .box h2, .main-content .node .content .book-navigation a:hover { color: #999; }

.box { border: 1px solid #999; }

h1 { font-size: 1.3em; }
h2 { font-size: 1.1em; }
h3 { font-size: 1em; font-weight: bold;}
h4, h5, h6 { font-size: 0.9em; font-weight: bold;}
h1, h2, h3, h4, h5, h6 {
  font-family: Helvetica, Arial, Lucida, Verdana, sans-serif;
}

p, .book .body {
  padding: 0 0 1em 0;
  margin: 0;
  font-size: 1em;
  line-height: 1.6em;
}

blockquote {
  color: #000;
  margin: 10px 20px;
  padding: 10px;
  border-left: 2px solid #369;
  clear: both;
  background: #eee;
  font-family: Georgia, "Times New Roman", Times, serif;
}

code {}

.firstLetter {
  float: left;
  color: #999;
  font-size: 90px;
  line-height: 60px;
  padding: 2px 2px 0px 5px;
  font-family: Georgia, "Times New Roman", Times, serif;
}

/*************/
/*  CORNERS  */
/*************/

#mainCorners {
  margin: auto;
  margin-top: 0px;
  width: 720px;
}

#mainCorners, .cnr-holistic, .cnr-faculty, .cnr-st_pauls, .cnr-reviews, .cnr-melody, .cnr-worldly, .cnr-dash, .cnr-snow_crash, .cnr-indiaBlog, .cnr-melody {      
  padding: 5px 0px;
}

.cnr-tekky, .cnr-java, .cnr-advent, .cnr-listenings {
  padding: 2px 0px;
}

/********************/
/*  MAIN CONTAINER  */
/********************/

#mainContainer {
  font-size: 11px;
  text-align: left;
  background: #fff;
}

#mainContainer #content-right .node img {
  text-decoration: none;
  border: 1px solid #000;
}

#mainContainer #content-right .node a img:hover {
  border: 1px solid #369;
}

#sidebar-right {
  padding: 14px 5px 50px 5px;
  float: right;
  width: 186px;
  background: #eee url('/themes/img/sidebar_gradient.png') fixed;
  /* IE 5+ Box Model Hack*/
  voice-family: "\"}\"";
  voice-family: inherit;
  width: 176px;
}

#sidebar-left {
  float: left;
  padding: 14px 0;
  width: 142px;
  /* IE 5+ Box Model Hack*/
  voice-family: "\"}\"";
  voice-family: inherit;
  width: 132px;
}

#content-right, #aggregator {
  float: left;
  padding: 10px;
  background: inherit;
  width: 530px;
  voice-family: "\"}\"";
  voice-family: inherit;
  width: 509px;
}

/******************/
/*     HEADER     */
/******************/

#logo {
  float: right;
  margin: 14px 14px 14px 0px;
  border: 1px solid #000;
  background: #eee;
}

#header {
  position: relative;
  padding: 5px 0 0 0;
  margin: 0;
  background: #eee;
}

#site-name {
  font-family: Futura, Arial, Helvetica, sans-serif;
  margin: -5px 0px 0px 20px;
  padding-bottom: 3px;
  font-weight: lighter;
  font-size: 44px;
  font-stretch: narrower
}

#site-name a {
  color: #6F89A1;
}

#site-slogan {
  clear: both;
  float: right;
  font-weight: bold;
  font-size : 1.2em;
  padding: 0 0 0 1.2em;
  margin: 0;
}

#flickr-bar {
  border-top: 0.1em solid #999;
  border-bottom: 0.1em solid #999;
  height: 122px;
  background: #ddd;
}

#flickr_badge_uber_wrapper { margin-left: 9px; }
#flickr_badge_uber_wrapper img { margin: 9px 5px; }
.flickr_badge_image {text-align:center !important;}
.flickr_badge_image img { border: 1px solid black !important;}
#flickr_badge_uber_wrapper a:hover,
#flickr_badge_uber_wrapper a:link,
#flickr_badge_uber_wrapper a:active,
#flickr_badge_uber_wrapper a:visited {text-decoration:none !important; background:inherit !important;color:#3993ff;}


/* ### NAVBAR ### */

#top-nav {
  background: #fff;
  border-bottom: 1px dotted #999;
}

#primary, #secondary {
  background: #fff;
}

#secondary, .main-content .node .footnotes {
  border-top: 1px dotted #999;
}

#top-nav, #secondary {
  padding: 0;
  height: 26px;
}

#primary li, #secondary li {
  display: inline;
  text-align: center;
}

#primary li a, #secondary li a {
  color: #999;
  padding: 6px;
  width: 60px;
  float: right;
  text-align: center;
  text-decoration: none;
  border-right: 1px solid #fff;
  border-left: 1px solid #fff;
}

#primary li a:hover, #secondary li a:hover {
  background: #eee url('/themes/img/buttonBackground.gif') repeat-x;
  border-right: 1px dashed #ccc;
  border-left: 1px dashed #ccc;
  text-decoration: none !important;
}

#primary li a:hover {
  border-bottom: 1px dashed #ccc;
}

#secondary li a:hover {
  border-bottom: 0;
}



/***************/
/*   CONTENT   */
/***************/

#mission {
  padding: 5px 10px;
  margin: 0 0 1.6em 0;
  font-size: 1.1em;
  font-weight: bold;
  font-variant: small-caps;
  text-indent: 0;
  text-align: center;
  width: auto;
  background:  #eee url('/themes/img/bannerBackground.gif') repeat-x;
  border: solid 1px #999;
}

.breadcrumb {
  float: left;
  padding: 0.5em 1em;
  font-size: 1em;
  font-weight: bold;
  margin: 0;
  height: 1em;
}

#content {
  width: 100%;
  margin: 0;
  padding: 0;
  font-size: 1em;
  background:  #eee;
}

td.main-content {
  vertical-align: top;
  padding: 0em 0em;
}

.main-content .node {
  padding: 0;
}

.feed-item {
  background: #eee;
  padding: 10px;
}

.main-content .node .content, .comment .content, .book .body {
  line-height: 1.5em;
  text-align: justify;
}

#flickr-bar .content-title {
  text-align: left;
  font-size: 2em;
  padding: 2em;
  margin: 0 0 0.5em 0;
  color: #000;
}

.main-content .content-title {
  font-size: 2em;
  padding: 0.2em 0.5em;
  margin: 0 0 0.5em 0;
}
.main-content .node h2, .main-content h2, .main-content .feed-item .node h2 {
  padding: 0.2em 0.5em;
  margin: 0 0 0.25em 0;
  font-size: 1.8em;
  text-align: right;
  font-family: Georgia, "Times New Roman", Times, serif;
  font-weight: bold;
  font-variant: small-caps;
  color: #2C5E92;
  border-bottom: 1px solid #999;
}

.main-content .feed-item .node h2, .main-content .tax-listenings .node h2, .tax-listenings .liHead {
  font-size: 1em;
  text-align: left;
}

.tax-listenings .liHead {
  padding: 0.2em 0.5em;
  margin: 0 0 0.25em 0;
  font-variant: small-caps;
  font-family: Georgia, "Times New Roman", Times, serif;
}

.headerBG, .main-content .node h2, .main-content h2, .node .content .box h2, .main-content .box h2, .tax-listenings .liHead {
  background: #eee url('/themes/img/bannerBackground.gif') repeat-x;
}

.main-content .node .info {
  font-size: 0.9em;
}

.main-content .node .links, .comment .author, #aggregator .feed-item .feed-item-categories {
  border-top: 1px dotted #ddd;
}

.main-content .node .links, .main-content .node .terms, #aggregator .feed-item .feed-item-categories {
  font-size: 0.9em;
  font-weight: bold;
}

.main-content .node .info, .main-content .node .links, #aggregator .feed-item .feed-item-categories {
  padding-right: 1em;
  text-align: right;

.main-content .node .terms {
  margin-top: -12px;
  text-indent: 2em;
  float: left;
  font-weight: bold;
}

.main-content .sticky {
  padding: 0;
  border: 1px solid #369;
}

.main-content .node .content, #aggregator .feed-item .feed-item-body {
  padding: 1em;
  margin: 0 0 0.5em 0;
}

#aggregator .feed-item .feed-item-body {
  text-align: justify;
}

.main-content .node .links, #mission {
  font-family: Helvetica, Arial, Lucida, Verdana, sans-serif;
}

.main-content .box, .main-content .content .box {
  border: 1px solid #999;
  margin-bottom: 0.5em;
}
 
.main-content .box .content {
  padding: 0.5em;
}

.main-content .box h2 {
  padding: 0.5em 1em;
  margin: 0;
  font-size: 1.2em;
  text-align: left;
}

.main-content .box {
  margin-right: 0.5em;
}

/* trackbacks */

.node .content .box {
  margin-top: 1.5em;
}

.node .content .box h2 {
  padding: 0.2em;
  margin: 0;
  font-size: 1em;
  text-align: left;
  text-indent: 1em;
}

.node .content .box .content {
  padding: 0.2em;
  font-size: 0.9em;
}

/* end trackbacks */

.main-content .box .content .form-item textarea,
.form-item textarea {
  width: 490px;
}

.main-content li {
  padding-bottom: 0.25em;
}

ul.track {
  margin-bottom: 1em;
}

/**********************/
/*  TAXONOMY CLASSES  */
/**********************/

/*
.tax-dash - for all audio
.tax-holistic
.tax-reviews
.tax-st_pauls
.tax-melody
.tax-indiaBlog
.tax-tekky
.tax-worldly
.tax-gigs
.tax-advent
.tax-quotes
.tax-listenings
*/

/*variables
.tax- .node .title
.tax- .node .content
.tax- .node .info
.tax- .node .terms
.tax- .node .links
.tax- .node .menu
*/

.tax-tekky, .tax-java, code {
  font-family: Profont, 'lucida console', 'Courier New', Monaco, monospace;
}

.tax-tekky, .tax-java {
  color: #000;
  padding: 0;
  margin: 0;
  background: #ddd;
}

.tax-tekky .node h2, .tax-tekky .node h2 a, .tax-java .node h2, .tax_java .node h2 a {
  color: #900;
  border-bottom: 0px;
  background: #ddd;
  background-image: none;
}

.tax-reviews .node .content a {
  color: #000;
}

.tax-reviews {
  color: #2C5E92;
  padding: 0;
  margin: 0;
}

.tax-dash .node, .tax-playlists .node {
  background: #fff;
}

.tax-holistic .node, .tax-listenings .node {
  background: #e7e7e7;
  border: 1px solid #ddd;
}

.tax-reviews .node, .tax-reviews .node h2 {
  background: #eee;
}

.tax-indiaBlog .node h2, .tax-reviews .node h2 {
  color: #900;
  text-align: left;
  text-indent: 1em;
  border-bottom: 0px;
  background-image: none;
}

.tax-indiaBlog .node h2 {
  background: #fff;
  text-indent: 0em;
  font-style: italic;
}

.tax-reviews .node h2 a, .tax-tekky .content .box h2 {
  color: #900;
}

.tax-indiaBlog .node h2 a {
  color: #239e46;
}

.tax-reviews .node .content {
  padding: 1em 4em;
}

.tax-reviews .node .info, .tax-reviews .node .terms {
  color: #999;
}

.tax-indiaBlog .node .menu, .tax-site .node .menu, .tax-melody .node .menu {
  border: none;
}

.main-content .tax-indiaBlog .book .links, .main-content .tax-site .book .links, .main-content .tax-melody .book .links {
  border: none;
}

.tax-indiaBlog, .tax-gigs, .tax-site, .tax-melody {
  padding: 10px;
}

.tax-faculty, .tax-indiaBlog, .tax-gigs, .tax-site, .tax-melody {
  background: #fff;
}

.tax-melody .node .content {
  text-align: center;
}

.tax-indiaBlog .node, .tax-quotes .node,
.tax-reviews .node .content .book-navigation .page-links, .tax-melody .node .content .book-navigation .page-links {
  font-size: 1.1em;
  line-height: 1.5em;
}

#mainContainer #content-right .node .content em, .quotes-author  {
  font-family: Georgia, "Times New Roman", Times, serif;
}

/**********/
/* QUOTES */
/**********/

.bqstart {
     float: left;
     height: 35px;
     margin-left: 10px;
     margin-top: -25px;
     padding-top: 45px;
     margin-bottom: -50px;
     font-size: 600%;
     color: #eee;
}

.bqend {
     float: right;
     height: 25px;
     margin: -20px 10px 10px 10px;
     padding: 0 0 0 10px;
     font-size: 600%;
     color: #eee;
}

.block-quotes .bqstart {
  color: #fff;
  padding: 0;
  margin: -15px 0px -40px 0;
}

.block-quotes .bqend {
  color: #fff;
  padding: 0 5px 0 0;
  margin: -50px 0 0 0;
}

.tax-quotes {
  padding: 0;
  background: #fff;
}

.tax-quotes p {
  text-indent: 30px;
  margin: 0;
  padding: 0;
}

.quotes-author {
  font-weight: bold;
  text-align: right;
  font-style: italic;
  padding-right: 30px;
}

.block-quotes .quotes-author {
  padding: 0;
}

.quotes-author a {
  color: #999;
}

.quotes-author a:hover {
  color: #000;
}

.tax-quotes .node .content {
  margin: 0 0 -10px 0;
}

#block-quotes-1 p {
  text-indent: 30px;
  margin-top:2px;
  padding:0;
}

dt {
  font-size: 0.9em;
}

/*****************/
/* FLICKR IMAGES */
/*****************/

.main-content .node .terms a, .node .content .flickrLeft a, .node .content .flickrRight a, .node .content .flickrMid a, .node .content .flickrBig a, .node .content .flickrLeft a:hover, .node .content .flickrRight a:hover, .node .content .flickrMid a:hover, .node .content .flickrBig a:hover, .content .main-content .flickrSet a, .content .main-content .flickrSet a:hover  {
  border: none;
}

.main-content .node .terms a:hover {
  color: #000;
}

.tax-advent .flickrBig img {
  border: 1px solid #369;
}

.flickrSet {
  float: right;
  padding: 0px;
  margin: 2px;
}

.flickrMid {
  text-align: center;
  padding: 10px;
}

.flickrLeft {
  float: left;
  padding: 10px 10px 10px 0;
}

.flickrRight {
  float: right;
  padding: 10px 0px 10px 10px;
}

.flickrBig {
  padding: 10px 0;
  text-align: center;
  clear: both;
}

#aggregator .feed-item .feed-item-body img {
  text-align: center;
  clear: both;
}

/************************/
/*  SIDEBAR AND BLOCKS  */
/************************/

td.sidebar {
  vertical-align: top;
  padding: 0;
  width: 200px;
}

div.calendar, div.menu, div.audio_block, .block-event div.content  {
  margin-bottom: 5px;
  padding-bottom: 5px;
  border-bottom: 1px dashed #999; 
}

.sidebar .block {
  margin: 0 5px 5px 5px;
  padding: 0 5px 5px 5px;
  background: inherit;
}

.sidebar .block h2 {
  margin: 0;
  color: #900;
  font-family: Georgia, "Times New Roman", Times, serif;
  font-weight: 400;
  font-size: 12px;
  font-variant: small-caps;
}

.sidebar .block h3 {
  margin: 0 0 0.3em 0;
}

.sidebar .block-search input.form-text {
  width: 100px;
  padding: 1px;
  margin-right: 5px;
}

.sidebar .block-search button.form-submit {
  width: 60px;
  font-size: 12px;
}

.more-link {
  float: none;
  text-align: right;
  font-style: italic;
}

.item-list {
  margin: 0.25em 0 0 0;
  font-size: 0.9em;
}

.item-list ul {
  list-style: none;
  margin: 0 0 0.5em 0;
  padding: 0;
}

.item-list ul li {
  margin: 0 0 0.25em 0;
  padding: 0 0 0 1em;
  line-height: 1.3em;
  list-style: none;
}

#block-block-2, #block-block-5 {
  text-align: center;
}

#block-block-2 .content p {
  text-indent: 0em;
}

#block-block-5 .content p {
  font-size: 0.9em;
}

#block-menu-502 {
  float: left;
}

#block-menu-512 {
  float: right;
}

#block-menu-512, #block-menu-502 {
  display: inline;
  width: 45%;
  margin: 10px;
  padding: 0 0 5px 0;
  background: #fff;
  border: 1px solid #999;
}


/************/
/*  SEARCH  */
/************/

#search {
  margin: 5px -20px 0 0;
  float: right;
  width: 200px;
}

#search .form-text {
  margin-right: 3px;
  padding: 3px;
}

#search .form-submit {
  padding: 2px;
}

/**************/
/*  COMMENTS  */
/**************/

.cnr-comment-odd, .cnr-comment-even {
  margin: 1em 0; 
}

.cnr-comment-odd .comment {
  background: #ddd;
}

.cnr-comment-even .comment {
  background: #eee;
}

.cnr-comment .comment {
  background: #eee;
}

.comment-new .new {
  float: right;
  color: #900;
  font-size: 1.1em;
  display: block;
  padding: 0 1em 0 0;
  width: 10%;
}

.comment .author, .comment .links {
  color: #333;
}

.comment .title, .comment .title a.active {
  color: #444;
  background: inherit;
}

.comment-new .new, .comment .links, .comment .author {
  text-align: right;
}

.comment-folded {
  padding: 0.5em;
  margin: 1.5em 0;
}

.comment .content, .comment .content p {
  padding: 0.5em 1em;
  line-height: 1.6em;
  text-indent: 0;
}

.comment .author, .comment .links {
  font-family: Helvetica, Arial, Lucida, Verdana, sans-serif;
}

.comment .author {
  font-size: 0.9em;
  padding: 0.1em 0.5em 0.1em 0;
  margin-top: 0.75em;
}

.comment .links {
  padding: 0.1em 0.5em 0 0;
  margin: 0;
}

/************/
/*  FOOTER  */
/************/

#footer {
  padding: 1em 1em 1em 1em;
  font-size: 0.9em;
  text-align: center;
  color: #666;
  background: #fff;
  border-top: solid 1px #999;
}

#footer p {
  text-indent: 0;
  margin-bottom: 1em;
}

#mainContainer #footer img, #mainContainer #footer a img:hover, #mainContainer .headerBG img, #mainContainer .headerBG img:hover, .content .service-links a, .content .service-links a:hover{
  border: 0px;
}

/***********/
/*  FORMS  */
/***********/

form {
  padding: 0;
  /*margin: 0;*/
}

input, textarea {
  background: #fff;
  color: inherit;
  border: 1px solid #777;
}

select {
  background: #fff;
  color: #000;
  margin: 1px 5px;
}

input:focus, textarea:focus {
  background: #fff;
  border: 1px solid #2C5E92;
}

.form-submit {
  margin: 0;
}

.form-item {
  margin: 3px 0;
  padding: 0.3em 0;
}

.form-item .label {
  margin-bottom: 5px;
}

input.form-text {
  margin: 0;
  padding: 3px 5px;
  font-size: 12px;
  border: solid 1px #ddd;
}

button.form-submit {
  margin: 0;
  padding: 0;
  font-size: 12px;
  background: #eee;
  border: solid 1px #ddd;
}

h3.form-title {
  text-align: left;
}

form .form-item .title  {
  margin-bottom: 0.5em;
  padding: 0.3em 0;
  text-align: left;
  border-bottom: #ddd solid 1px;
  color: #777;
  background: transparent;
}

.form-radio, .form-checkbox {
  background: transparent;
  border: 0;
}

/**********/
/*  MISC  */
/**********/

#mainContainer #content-right .feed-icon img,
#mainContainer #content-none .feed-icon img {
  margin: 5px;
  border: 0;
}

.feed-icon-wrapper {
  text-align: center;
}

.menu li {
  list-style-image: none;
  list-style-type: none;
}

.container-inline {
  margin: 0 0 1.6em 0;
}

.container-inline div {
  display: inline;
}

#pager {
  text-align: center;
}

#pager div {
  padding: 0.5em;
}

/* IE hacks */
* html .main-content .pager-next {
\margin-right: 5px;
/* You may have to adjust this manually!!! */
}

* html .main-content td .pager-next {
\margin-right: 0px;
}


.page-num {
margin-left: .5em;
margin-right: .5em;
}

#message {
  background: #fff;
  border: 2px solid #6e2; 
  padding: 2em;
  margin: 1em 2em;
}

div.picture {
  float: left;
  margin: 0 1em 0.3em 0;
  border: 0;
}

br.clear {
  clear: both;
}

.marker, .error { color: #f00; }

.ok { color: #080; }

.path a, .path a:visited { color: #777; }

fieldset { border: 1px solid #999; }

#flickr-bar ul.primary {
  margin: -18px 0 0 0;
}

.tabs li .active, .tabs li .active:hover  {
  color: #ccc;
  background: #fff;
}

pre {
  padding: 0.75em 1.5em;
  font-size: 12px;
  background: #ddd;
  border: 1px solid #aaa;
}

.calendar td, .calendar th { border-color: #eee; }
.calendar .day-normal { background: #fff; }
.calendar .day-future { background: #fff; }
.calendar .day-today { background: #333; color: #fff; }
.calendar .day-today a { color: #fff; }
.calendar .day-selected { background: #555; color: #fff; }
.calendar .day-link { background: #ddd; color: #fff; }

/*******************/
/* Book Navigation */
/*******************/

.clear-block:after {
content: ".";
display: block;
height: 0;
clear: both;
visibility: hidden;
}

.clear-block {
display: inline-block;
}

/* Hides from IE-mac \*/
* html .clear-block {
height: 1%;
}
.clear-block {
display: block;
}
/* End hide from IE-mac */

.book-navigation, .content .book-navigation .page-links {
  margin-top: 2em;
}

.book-navigation .page-previous {
  text-align: right;
  width: 42%;
  display: block;
  float: left;
}
.book-navigation .page-up {
  margin: 0 5%;
  width: 4%;
  display: block;
  float: left;
}
.book-navigation .page-next {
  text-align: left;
  width: 42%;
  display: block;
  float: left;
}

.tax-listenings .book-navigation .page-next,
.tax-listenings .book-navigation .page-last {
  text-align: left;
  float: right;
}

.tax-listenings .book-navigation .page-previous, .tax-listenings .book-navigation .page-first {
  text-align: right;
  float: left;
}

.tax-listenings .book-navigation .page-previous, .tax-listenings .book-navigation .page-first, .tax-listenings .book-navigation .page-next,
.tax-listenings .book-navigation .page-last {
  display: block;
  width: 21%;
}

/*******************/
/* CONTRIB MODULES */
/*******************/

/* CSS from contributed modules */

/*********/
/* AUDIO */
/*********/

div.audio-node {
  overflow: hidden;
}

ul.audio {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

ul.audio li {
  float: left;
  margin: 1em;
}

ul.audio-info {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

ul.audio-info li {
  margin: 2px 0;
  padding-left: 5px;
}

div.audio-image {
  text-align: center;
  float: right;
  padding: 5px;
  margin-left: 10px;
  background-color: #ccc;
}

div.audio-image img {
  border: 1px solid #999;
}

/****************/
/* AUDIO-ATTACH */
/****************/

  these CSS classes wrap around the audio.css classes
*/
.audio-attach-body {
  margin-top: 1em;
  }

.audio-attach-teaser {
  border:solid #dcdcdc 1px;
  width:200px;
  padding:5px;
  margin-top: 1em;
  }

.audio-attach-preview {
  margin-top: 1em;
  }

/************/
/* PLAYLIST */
/************/

#list {
  margin:0px;
  margin-top:0px;
  margin-left:25px;
  padding:3px;
  list-style-type: decimal-leading-zero;
}

#list li {
  margin:0px;
  padding:1px;
  border:0px solid #888;
  cursor:move;
}

/******************/
/* audio_playlist */
/******************/

.xspf-player {
  margin-bottom: 10px;
  margin-right: 10px;
  margin-top:3px;
  margin-left:2px;
  }

.xspf-player-slim {
  margin-bottom: 10px;
  margin-right:10px;
  }
 
a.xspf-pop-up-link {
  cursor: pointer;
  }
.audio-playlist-listing {
  float:left;
  margin:0;
  padding:0;
  margin-left:10px;
  } 

.audio-playlist-body ol {
  text-indent:none;
  margin:0;
  padding:0;
  padding-left:2.3em;
  margin-bottom:10px;
  list-style-type: decimal-leading-zero;
  }

.audio-playlist-body img {
  float:left;
  height:150px;
  width:150px;
  margin:0px 10px 10px 0px;
  padding:3px;
  border:solid black 1px;
  }
.audio-playlist-body h2 {
  margin:0;
  padding:0;
  font-size:.9em;
  color:#777777;
  font-size:georgia;
  }
 
.clear {
  clear: both;
  } 

#audio-playlist-table {
  margin:3px 0px 10px 3px;
  border:solid #D9D9D9 1px;
  width:100%;
  font-family:verdana;
  }

#audio-playlist-table a {
  color:#A6A6A6;
  }

#audio-playlist-table a:hover {
  color:#FFB400;
  } 
 
#audio-playlist-table th {
  padding:0;
  margin:0;
  padding-left:5px;
  padding-right:5px;
  border-bottom:solid #666666 1px;
  height:12px;
  font-weight:normal;
  }

#audio-playlist-table b {
  color: red;
  }
 
#audio-playlist-table th:hover {
  background-color:#BAD1FB;
  } 
 
#audio-playlist-table th a{
  color:black;
  font-weight:normal;
  }

#audio-playlist-table td, #audio-playlist-table th {
  border-left:solid #D9D9D9 1px;
  }
 
#audio-playlist-table tr.even {
  background-color:#EDF3FE;
  }

#audio-playlist-table tr.odd {
  background-color:#FFF;
  }
#audio-playlist-table tr:hover {
  background-color:#BAD1FB;
  }   
#audio-playlist-table thead tr:hover {
  background-color:transparent;
  }  
#audio-playlist-table tr {
  border:none;
  }


/**************/
/* codefilter */
/**************/

div.codeblock {
  padding: 5px;
  border: 1px solid #CCC;
  background-color: #EEE;
  text-align: left;
  white-space: pre;
  overflow: auto;
}

/************************/
/* SERVICE LINKS MODULE */
/************************/

div.service-links {
  text-align: right;
  margin-right:5px;
}

div.service-links a:hover {
  border-bottom: 1px dotted #999;
}

#mainContainer #content-right .service-links a img, #mainContainer #content-right .service-links a img:hover, #mainContainer #content-left img, #mainContainer #content-right img {
  border: 0;
}



/**************/
/* NICE MENUS */
/**************/

/* below should fix menu being a few pixels away in some themes, and menus disappearing behind other stuff */
.block-nice_menus {
  line-height: normal;
  /*font-size: normal;*/
  /*position: relative;*/
  z-index: 10;
}

/* need this to enable hidding inner span */
.block-nice_menus h2.title {
  margin: 0;
}
.block-nice_menus h2.title .nice-menu-hide-title {
  display: none;
}
.block-nice_menus h2.title .nice-menu-show-title {
  display: block;
  margin-bottom: 5px;
}

ul.nice-menu,
ul.nice-menu ul{
  list-style: none;
  padding: 0;
  margin: 0;
  border-top: 1px solid #ccc;
  z-index: 5;
}

ul.nice-menu li {
  border: 1px solid #eee;
  position: relative;
  float: left;
  background-color: #eee;
}

ul.nice-menu a {
  padding: 0.1em 0.15em 0em 16px;
  display: block;
}

ul.nice-menu a:hover {
  border: 0px;
  background: #fff;
}

ul.nice-menu ul{
  position: absolute;
  top: 1.8em;
  left: -1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin-right: 0;
  display: none;
}

ul.nice-menu li.over ul{
  display: block;
}

ul.nice-menu ul li{
  width: 120px;
  display: block;
}

ul.nice-menu:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

/* Show submenus when over their parents */
ul.nice-menu li:hover ul,
ul.nice-menu li.menuparent li:hover ul,
ul.nice-menu li.menuparent li.menuparent li:hover ul,
ul.nice-menu li.over ul,
ul.nice-menu li.menuparent li.over ul,
ul.nice-menu li.menuparent li.menuparent li.over ul {
  display: block;
}

/* Hide sub-menus initially */
ul.nice-menu li:hover ul ul,
ul.nice-menu li:hover ul ul ul,
ul.nice-menu li.over ul ul,
ul.nice-menu li.over ul ul ul {
  display: none;
}

/* Now stuff specific to the menu type (down, left or right menu pop) */

/* All VERTICAL (left/right) menus */

/* This is the default width of vertical menus. You can override these in your own stylesheet. */
ul.nice-menu-right, ul.nice-menu-right li {
  width: 120px;
  margin: 0;
}

ul.nice-menu-left, ul.nice-menu-left li {
  width: 155px;
  margin: 0;
}


/* stuff for VERTICAL menus where submenus pop RIGHT (default) */

ul.nice-menu-right ul {
  width: 120px;
  left: 120px;
  top: -1px;
}

ul.nice-menu-right ul ul {
  width: 120px;
  left: 120px;
  top: -1px;
}

ul.nice-menu-right li.menuparent,
ul.nice-menu-right li li.menuparent{
  background: #eee url(http://www.skipthebudgie.org/modules/nice_menus/arrow-right.png ) right center no-repeat;
}

ul.nice-menu-right li.menuparent:hover,
ul.nice-menu-right li.over,
ul.nice-menu-right li li.menuparent:hover,
ul.nice-menu-right li li.over{
  background: #ccc url(http://www.skipthebudgie.org/modules/nice_menus/arrow-right.png ) right center no-repeat;
}

/* stuff for VERTICAL menus where submenus pop LEFT */

ul.nice-menu-left li ul{
  width: 120px;
  left: -120px;
  top: -1px;
}

ul.nice-menu-left li ul li ul {
  width: 120px;
  left: -120px;
  top: -1px;
}

ul.nice-menu-left li.menuparent,
ul.nice-menu-left li li.menuparent{
  background: #eee url(http://www.skipthebudgie.org/modules/nice_menus/arrow-left.png ) left center no-repeat;
}

ul.nice-menu-left li.menuparent:hover,
ul.nice-menu-left li.over,
ul.nice-menu-left li li.menuparent:hover,
ul.nice-menu-left li li.over{
  background: #ccc url(http://www.skipthebudgie.org/modules/nice_menus/arrow-left.png ) left center no-repeat;
}

ul.nice-menu-left a, ul.nice-menu-left ul a {
  padding-left: 16px;
}

/* stuff for HORIZONTAL menus where submenus pop DOWN */

ul.nice-menu-down {
  float: left;
  border: 0;
}

ul.nice-menu-down li {
border-top: 1px solid #ccc;
}

ul.nice-menu-down li li {
border-top: 0;
}

ul.nice-menu-down ul {
  left: 0;
}

ul.nice-menu-down li ul li ul {
  left: 120px;
  top: -1px;
}

ul.nice-menu-down .menuparent a{
  padding-right: 5px;
}

ul.nice-menu-down li.menuparent{
  background: #eee url(http://www.skipthebudgie.org/modules/nice_menus/arrow-down.png ) right center no-repeat;
}

ul.nice-menu-down li.menuparent:hover,
ul.nice-menu-down li.over {
  background: #ccc url(http://www.skipthebudgie.org/modules/nice_menus/arrow-down.png ) right center no-repeat;
}

ul.nice-menu-down li li.menuparent{
  background: #eee url(http://www.skipthebudgie.org/modules/nice_menus/arrow-right.png ) right center no-repeat;
}

ul.nice-menu-down li li.menuparent:hover,
ul.nice-menu-down li li.over {
  background: #ccc url(http://www.skipthebudgie.org/modules/nice_menus/arrow-right.png ) right center no-repeat;
}

ul.nice-menu-down ul li {
  clear: both;
}

/***************/
/* TRIP SEARCH */
/***************/

    .trip-search-form input.form-submit {
       margin-bottom: 1em;
    }
    .trip-search-more-link {
      font-weight: bold;
      font-style: italic;
    }
    .trip-search-excerpt {
      font-weight: bold;
    }
    table.trip-search-fields-table {
      font-family: tahoma, verdana, arial, sans-serif;
      font-weight: normal;
      font-size: 0.9em;
    }
    tr.odd {
      background-color: #FFF;
    }
    tr.even {
      background-color: #FFF;
    }

/******************/
/* EVENT CALENDAR */
/******************/

/* hide iCal link, timezone display, more link etc */
.ical-link, div.flexinode-2-tz, div.flexinode-2-end, div.end, div.service-label, .block-event .more-link {
  display: none;
}

Book Navigation

In Default Drupal, long links in the book navigation leave it all messed up. This CSS fixes that problem, ensuring that the 'up' link is always in the middle.

The links' colours and styles are defined further up in style.css.

/*******************/
/* Book Navigation */
/*******************/

.clear-block:after {
content: ".";
display: block;
height: 0;
clear: both;
visibility: hidden;
}

.clear-block {
display: inline-block;
}

/* Hides from IE-mac \*/
* html .clear-block {
height: 1%;
}
.clear-block {
display: block;
}
/* End hide from IE-mac */

.book-navigation,
.content .book-navigation .page-links {
margin-top: 2em;
}

.book-navigation .page-previous {
text-align: right;
width: 42%;
display: block;
float: left;
}
.book-navigation .page-up {
margin: 0 5%;
width: 4%;
display: block;
float: left;
}
.book-navigation .page-next {
text-align: left;
width: 42%;
display: block;
float: left;
}

admin.css

CSS for admin.tpl.php.

/***********************/
/* CSS for admin pages */
/***********************/

#content {
  background: #fff url('/themes/img/eee2fff_gradient.png') fixed;
}

calendar.css

CSS for page-calendar.tpl.php.

/**********************/
/* CSS for event page */
/**********************/

#content {
  background: #eee fixed url('/themes/img/sidebar_gradient.png');
}

indiablog.css

CSS for page-india.tpl.php.

/*****************************/
/* CSS for the India Diaries */
/*****************************/

body {
  background: #e2ae57;
}

.main-content .node h2, .main-content h2 {
  color: #2C5E92;
}

#mainContainer {
  background: #eee;
}

#flickr-bar .content-title {
  color: #239e46;
}

template.php

For overriding various theme functions.

<?php
/***
* template.php
*
* This file contains functions for over-riding the default theme functions
* in Drupal core and modules (look at the API documentation for more info).
* The functions don't actually _do_ anything, except pass the variables
* available to phptemplate for use in the *.tpl.php files.
*
* Add similar 'stub' functions to override other default theme functions.
*/

  // variables for fixing topics to 'on_topic' only:
function _phptemplate_variables($hook, $vars) {
 
// if ($hook == 'page') {
  // }
 
if ($hook == 'node') {
  }
  if (
module_exist('taxonomy') && $vars['node']->nid) {
    foreach (
taxonomy_node_get_terms($vars['node']->nid) as $term) {

     
// Change '123' with the vocabulary id.
     
if ($term->vid == '1') {
       
$vars['node_terms'] = $vars['node_terms'] . eregi_replace('[^a-z0-9]', '-', $term->name);
      }
    }
  }
 
// enable me to add service links to templates:
 
if (module_exist('service_links')) {
       
$vars['service_links'] = theme('links', service_links_render($vars['node']));
  }
  return
$vars;
}

 
// move rss icon to centre and give it css class:
function skipMain_feed_icon($url) {
  return
_phptemplate_callback('feedicon', array('url' => $url));
}

function
skipMain_xml_icon($url) {
  return
_phptemplate_callback('feedicon', array('url' => $url));
}

// Quotes module formatting:
function skipMain_quotes_quote($node) {
  return
_phptemplate_callback('quotes', array('node' => $node));
}

// Today's Music title
function flexinode_form_alter($form_id, & $form) {
  if (isset (
$form['type']) && $form['type']['#value'] === 'flexinode-4' && $form['type']['#value'] . '_node_form' == $form_id) {
    global
$user;
           
$form['title']['#default_value'] = t('Today\'s Music') . " " . date('d-m-Y');
  }
}

// upcoming event item
function skipMain_event_upcoming_item($node) {
  return
_phptemplate_callback('event-item', array('node' => $node));
}

//next - prev links (for 'listenings' nodes)
function next_prev($current_nid, $type, $button_type, $label, $class) {
  
$tid = db_result(db_query(db_rewrite_sql("SELECT tid FROM {term_node} WHERE nid = $current_nid;")));
   if (empty(
$tid)){
    return
'';
   }

   switch (
$button_type) {
     case
'next':
      
$sort= 'DESC';
      
$case = '< ';
       break;
     case
'prev':
      
$sort = 'ASC';
      
$case = '> ';
       break;
     case
'parent':
      
$name = db_result(db_query(db_rewrite_sql("SELECT name FROM {term_data} WHERE tid = $tid;")));
       return
l($label.'up', "$name", array('title' => $name, 'class' => $class));
       break;
     case
'last':
      
$sql  = "SELECT n.nid, n.title FROM node n INNER JOIN term_node t ON n.nid = t.nid";
      
$sql .= " INNER JOIN term_data r ON t.tid = r.tid WHERE n.type = '". $type ."'";
      
$sql .= " AND r.tid = $tid AND n.status = 1 ORDER BY nid ASC LIMIT 0 , 1";
      
$result = db_fetch_array(db_query(db_rewrite_sql($sql)));
       return
l($label, 'node/'. $result['nid'], array('title' => $result['title'], 'class' => $class));
       break;
     case
'first':
      
$sql  = "SELECT n.nid, n.title FROM node n INNER JOIN term_node t ON n.nid = t.nid";
      
$sql .= " INNER JOIN term_data r ON t.tid = r.tid WHERE n.type = '" .$type. "'";
      
$sql .= " AND r.tid = $tid AND n.status = 1 ORDER BY nid DESC LIMIT 0 , 1";
      
$result = db_fetch_array(db_query(db_rewrite_sql($sql)));
       return
l($label, 'node/'. $result['nid'], array('title' => $result['title'], 'class' => $class));
       break;
     default:
       return
NULL;
       break;
   }
  
$sql = "SELECT n.nid, n.title FROM {node} n INNER JOIN {term_node} t ON n.nid = t.nid ";
  
$sql .= "INNER JOIN {term_data} r ON t.tid = r.tid WHERE n.type = '". $type ."' AND n.nid ". $case;
  
$sql .= $current_nid ." AND r.tid = ". $tid ." AND n.status = 1 ORDER BY nid ". $sort;
  
$result = db_fetch_array(db_query(db_rewrite_sql($sql)));
   if (!
$result) {
     return
NULL;
     return
l($label.$name, "$type/tid/$tid", array('title' => $name, 'class' => $class));
   } else {
     return
l($label, 'node/'. $result['nid'], array('title' => $result['title'], 'class' => $class));
   }
}
?>

event-title.tpl.php

Themes the titles in the 'upcoming events' block. Is called in template.php by:

<?php
// upcoming event item
function skipMain_event_upcoming_item($node) {
  return
_phptemplate_callback('event-item', array('node' => $node));
}
?>

Basically, I've just added a hyphen between the timeleft and the title.

<a href="<?php print url("node/$node->nid");?>"
title="<?php print $node->title ?>">
<?php print $node->title ?>
</a>
-
<span class="event-timeleft">
  <?php print $node->timeleft ?>
</span>

feedicon.tpl.php

Defines how the rss/xml icon should look.

<?php
 
if ($image = theme('image', 'misc/feed.png', t('Subscribe to this feed'), t('Subscribe to this feed'))) {
    print
'<div class="feed-icon-wrapper"><a href="'. check_url($url) .'" class="feed-icon">'. $image. '</a></div>';
  }
?>