Index: tipping.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/tipping/tipping.module,v
retrieving revision 1.5
diff -u -r1.5 tipping.module
--- tipping.module	15 Feb 2007 10:50:31 -0000	1.5
+++ tipping.module	2 Jun 2008 11:21:07 -0000
@@ -12,7 +12,6 @@
  */
 function tipping_help($section) {
   switch ($section) {
-    case 'admin/modules#description':
     case 'tipping/admin':
       return '<p>'. t('Enter the scores of the matches listed below. Remember that as from the round of 16 the score that counts is after 90 minutes (without extra time and penalty kicks).') .'</p>';
     case 'tipping/admin/config':
@@ -31,14 +30,12 @@
  * Implementation of hook_menu().
  */
 function tipping_menu($may_cache) {
-  global $user;
-  $items = array();
-
-  $go_admin = user_access('administer tipping');
-  $go_tipper = user_access('take part in tipping');
-  $go_watch = user_access('access tipping pages');
-
   if ($may_cache) {
+    $items = array();
+  
+    $go_admin = user_access('administer tipping');
+    $go_tipper = user_access('take part in tipping');
+    $go_watch = user_access('access tipping pages');
     $items[] = array(
       'path' => 'tipping',
       'title' => t('Sports tipping'),
@@ -48,7 +45,7 @@
     $items[] = array(
       'path' => 'tipping/tips',
       'title' => t('Tips'),
-      'access' => $go_tipper,
+      'access' => user_access('take part in tipping'),
       'callback' => 'tipping_tips',
     );
     $items[] = array(
@@ -61,13 +58,13 @@
     $items[] = array(
       'path' => 'tipping/ranking',
       'title' => t('Ranking'),
-//      'weight' => 2,
+      'access' => user_access('take part in tipping'),
       'callback' => 'tipping_ranking',
     );
     $items[] = array(
       'path' => 'tipping/standings',
       'title' => t('Group standings'),
-//      'weight' => 3,
+      'access' => user_access('take part in tipping'),
       'callback' => 'tipping_standings',
     );
     $items[] = array(
@@ -75,56 +72,53 @@
       'title' => t('Enrol'),
       'type' => MENU_CALLBACK,
       'callback' => 'tipping_enrol',
-      );
-
-    $items[] = array(
-      'path' => 'tipping/scores/'. arg(2),
-      'access' => user_access('access tipping pages'),
-      'type' => MENU_CALLBACK,
-      'callback' => 'tipping_scores',
+      'access' => user_access('take part in tipping'),
     );
 
-
-
-
+    
     // Admin pages.
     $items[] = array(
       'path' => 'admin/tipping',
       'title' => t('Sports tipping'),
       'description' => t('Sports tipping administration pages.'),
-      'access' => $go_admin,
+      'access' => user_access('administer tipping'),
       'callback' => 'system_admin_menu_block_page',
       );
     $items[] = array(
       'path' => 'admin/tipping/results',
       'title' => t('Administration'),
+      'access' => user_access('administer tipping'),
       'weight' => -10,
       'callback' => 'tipping_admin_results',
     );
     $items[] = array(
+      'path' => 'admin/tipping/results/edit',
+      'title' => t('Edit result'),
+      'type' => MENU_CALLBACK,
+      'callback' => 'tipping_admin_results_edit',
+      'access' => user_access('administer tipping'),
+    );
+    $items[] = array(
       'path' => 'admin/tipping/settings',
       'title' => t('General settings'),
       'weight' => 10,
       'callback' => 'drupal_get_form',
       'callback arguments' => 'tipping_admin_settings_form',
-    );
-    $items[] = array(
-      'path' => 'admin/tipping/results/edit/',
-      'title' => t('Edit result'),
-      'type' => MENU_CALLBACK,
-      'callback' => 'tipping_admin_results_edit',
+      'access' => user_access('administer tipping'),
     );
     $items[] = array(
       'path' => 'admin/tipping/teams',
       'title' => t('Teams'),
       'callback' => 'drupal_get_form',
       'callback arguments' => 'tipping_admin_teams_form',
+      'access' => user_access('administer tipping'),
     );
     $items[] = array(
       'path' => 'admin/tipping/matches',
       'title' => t('Matches'),
       'weight' => 1,
       'callback' => 'tipping_admin_matches',
+      'access' => user_access('administer tipping'),
     );
 
     $items[] = array(
@@ -132,10 +126,11 @@
       'title' => t('Edit match'),
       'type' => MENU_CALLBACK,
       'callback' => 'tipping_admin_matches_edit',
+      'access' => user_access('administer tipping'),
     );
+    return $items;
   }
   drupal_add_css(drupal_get_path('module', 'tipping') . '/tipping.css');
-  return $items;
 }
 
 
@@ -144,13 +139,13 @@
  */
 function tipping_block($op = 'list', $delta = 0, $edit = array()) {
   if ($op == 'list') {
-    $blocks[0]['info'] = t('Football World Cup');
+    $blocks[0]['info'] = t('Football European championship');
     return $blocks;
   }
   else if ($op == 'view') {
     switch($delta) {
       case 0:
-        $block['subject'] = t('Football World Cup');
+        $block['subject'] = t('Football European championship');
         $block['content'] = theme('tipping_block');
         break;
     }
@@ -173,6 +168,11 @@
     INNER JOIN {tipping_teams} t2 ON m.tid2 = t2.tid
     LEFT JOIN {tipping_tips} tips ON m.mid = tips.mid AND tips.uid = %d
     WHERE m.timestamp > %d AND m.tid1 IS NOT NULL ORDER BY m.timestamp LIMIT 5", $user->uid, tipping_get_time());
+  if ($enroled) {
+    $output .= t('Your rank') .': <strong>'. tipping_get_player_rank() .'.</strong><br />';
+    $output .= t('Your score') .': <strong>'. tipping_get_player_score() .'</strong>';
+    $output .= '<p>&nbsp;</p>';
+  }
   if (db_num_rows($result)) {
     $output .= '<h3>'. t('Next matches') .'</h3>';
     $items = array();
@@ -186,14 +186,9 @@
     }
     $output .= theme('item_list', $items);
     if ($enroled && $required_count) {
-      $output .= $required_mark .' '. t('No tips yet.') .' '. l(t('Enter tips'), 'tipping/tips');
+      $output .= $required_mark .' '. t('No tips yet.') .'<br /<br />'. l(t('Enter tips'), 'tipping/tips');
     }
   }
-  if ($enroled) {
-    $output .= '<h3>'. t('Tip game') .'</h3>';
-    $output .= t('Your score') .': <strong>'. tipping_get_player_score() .'</strong><br />';
-    $output .= t('Your rank') .': <strong>'. tipping_get_player_rank() .'.</strong>';
-  }
   return $output;
 }
 
@@ -244,7 +239,7 @@
 
 function theme_tipping_date($element) {
   $output = '<div class="container-inline">' . $element['#children'] . '</div>';
-  return theme('form_element', $element['#title'], $output, $element['#description'], $element['#id'], $element['#required'], form_get_error($element));
+  return theme('form_element', $element, $output);
 }
 
 
@@ -257,7 +252,7 @@
 
 /**
  *
- * Football World Cup - Admin
+ * Football European championship - Admin
  *
  */
 
@@ -274,7 +269,7 @@
   $output .= '<h2>'. t('Enter results') .'</h2>';
   $results_new = array_filter($results, create_function('$result', 'return !$result->set;'));
   if (count($results_new)) {
-    $output .= drupal_get_form('tipping_admin_results_form');
+    $output .= drupal_get_form('tipping_admin_results_form', $results_new);
   }
   else {
     $output .= t('There are no matches to enter results for.');
@@ -296,7 +291,7 @@
           array('data' => $result->team1, 'class' => 'team-left'),
           $result->goals1 .' : '. $result->goals2,
           array('data' => $result->team2, 'class' => 'team-right'),
-          l(t('edit'), 'tipping/admin/results/edit/'. $rid)
+          l(t('edit'), 'admin/tipping/results/edit/'. $rid)
         );
       }
       else if ($result->type == 'match winner') {
@@ -304,7 +299,7 @@
           format_date($result->timestamp - 1, 'small'),
           array('data' => $result->round_name, 'class' => 'group'),
           array('data' => '<em>'. t('Winner') .':</em> '. $teams[$result->winner]->name, 'colspan' => 3),
-          l(t('edit'), 'tipping/admin/results/edit/'. $rid)
+          l(t('edit'), 'admin/tipping/results/edit/'. $rid)
         );
       }
       else if ($result->type == 'group winners') {
@@ -312,11 +307,11 @@
           '',
           array('data' => $result->round_name, 'class' => 'group'),
           array('data' => '<em>'. t('Winner') .':</em> '. $teams[$result->winner]->name .'<br /><em>'. t('Runner-up') .':</em> '. $teams[$result->runner_up]->name, 'colspan' => 3),
-          l(t('edit'), 'tipping/admin/results/edit/'. $rid)
+          l(t('edit'), 'admin/tipping/results/edit/'. $rid)
         );
       }
     }
-    return system_settings_form($form);
+    $output .= theme('table', $header, $rows);
   }
 
   return theme('tipping_page', $output);
@@ -326,16 +321,20 @@
   $results = tipping_fetch_results();
 
   if ($results[$rid]) {
-    return theme('tipping_page', tipping_admin_results_form(array($rid => $results[$rid])));
+
+    $output = drupal_get_form('tipping_admin_results_form', array($rid => $results[$rid]));
+    return theme('tipping_page', $output);
   }
   else {
     drupal_not_found();
   }
 }
 
-function tipping_admin_results_form() {
+function tipping_admin_results_form($results = NULL) {
 
-  $results = tipping_fetch_results();
+  if (!isset($results)) {
+    $results = tipping_fetch_results();
+  }
 
   $form = array();
   $form['#theme'] = 'tipping_admin_results_form';
@@ -435,7 +434,7 @@
   return $output;
 }
 
-function tipping_admin_results_validate($form_id, $form_values, $form) {
+function tipping_admin_results_form_validate($form_id, $form_values, $form) {
   foreach ($form['results']['#value'] as $rid => $result) {
     if ($result->type == 'match') {
       $mid = $rid;
@@ -447,7 +446,7 @@
   }
 }
 
-function tipping_admin_results_submit($form_id, $form_values) {
+function tipping_admin_results_form_submit($form_id, $form_values) {
   $count = 0;
   $matches = array();
   $rounds = array();
@@ -498,13 +497,6 @@
 /**
  * Admin teams
  */
-
-function zzz_tipping_admin_teams() {
-  $output = '';
-  $output .= tipping_admin_teams_form();
-  return theme('tipping_page', $output);
-}
-
 function tipping_admin_teams_form() {
   $form = array();
   $form['#theme'] = 'tipping_admin_teams_form';
@@ -549,7 +541,7 @@
   return $output;
 }
 
-function tipping_admin_teams_submit($form_id, $form_values) {
+function tipping_admin_teams_form_submit($form_id, $form_values) {
   foreach ($form_values['name'] as $tid => $name) {
     db_query("UPDATE {tipping_teams} SET name = '%s', abbr = '%s' WHERE tid = %d", $form_values['name'][$tid], $form_values['abbr'][$tid], $tid);
   }
@@ -622,7 +614,7 @@
   }
 
   $rounds = tipping_get_rounds();
-
+  $form['mid_new'] = array('#type' => 'textfield', '#title' => t('Match-ID'), '#default_value' => $mid);
   $form['display_round'] = array('#type' => 'item', '#title' => t('Round'), '#value' => $rounds[$match->round]);
   $form['timestamp'] = array('#type' => 'tipping_date', '#title' => t('Date - Kick-off'), '#default_value' => $match->timestamp);
   $form['teams'] = array('#type' => 'item', '#title' => t('Teams'));
@@ -717,14 +709,20 @@
   return $form;
 }
 
-function tipping_admin_matches_submit($form_id, $form_values) {
+function tipping_admin_matches_form_validate($form_id, $form_values) {
+  if (db_result(db_query("SELECT mid FROM {tipping_matches} WHERE mid = %d", $form_values['mid_new'])) !== FALSE && $form_values['mid_new'] != $form_values['mid']) {
+    form_set_error('mid_new', t('This match id is already taken. Choose another one.'));
+  }
+}
+
+function tipping_admin_matches_form_submit($form_id, $form_values) {
   if ($form_values['round'] >= ROUND_ROUND_OF_16) {
     $form_values['rule1'] = 100 * $form_values['winner1'] + $form_values['match1'];
     $form_values['rule2'] = 100 * $form_values['winner2'] + $form_values['match2'];
-    db_query('UPDATE {tipping_matches} SET timestamp = %d, rule1 = %d, rule2 = %d WHERE mid = %d', $form_values['timestamp'], $form_values['rule1'], $form_values['rule2'], $form_values['mid']);
+    db_query('UPDATE {tipping_matches} SET timestamp = %d, rule1 = %d, rule2 = %d, mid = %d WHERE mid = %d', $form_values['timestamp'], $form_values['rule1'], $form_values['rule2'], $form_values['mid_new'], $form_values['mid']);
   }
   else {
-    db_query('UPDATE {tipping_matches} SET timestamp = %d, tid1 = %d, tid2 = %d WHERE mid = %d', $form_values['timestamp'], $form_values['team1'], $form_values['team2'], $form_values['mid']);
+    db_query('UPDATE {tipping_matches} SET timestamp = %d, tid1 = %d, tid2 = %d, mid = %d WHERE mid = %d', $form_values['timestamp'], $form_values['team1'], $form_values['team2'], $form_values['mid_new'], $form_values['mid']);
   }
   return 'admin/tipping/matches';
 }
@@ -752,9 +750,9 @@
   return system_settings_form($form);
 }
 
-function tipping_admin_settings_validate($form_id, $form_values, $form) {
+function tipping_admin_settings_form_validate($form_id, $form_values, $form) {
   // test if entered term path is valid and terms exist
-  if (module_exist('taxonomy') && $form_values['news']) {
+  if (module_exists('taxonomy') && $form_values['news']) {
     if (!_tipping_term_path_valid($form_values['news'])) {
       form_set_error('news', t('Taxonomy term path is invalid.'));
     }
@@ -764,7 +762,7 @@
   }
 }
 
-function tipping_admin_settings_submit($form_id, $form_values) {
+function tipping_admin_settings_form_submit($form_id, $form_values) {
   variable_set('tipping_time_limit', $form_values['time_limit']);
   variable_set('tipping_news', $form_values['news']);
   drupal_set_message(t('Settings saved.'));
@@ -772,7 +770,7 @@
 
 /**
  *
- * Football World Cup - Player
+ * Football European championship - Player
  *
  */
 
@@ -794,18 +792,18 @@
     $output .= tipping_enrol();
   }
   else {
-    $output .= '<p>You\'ll never walk alone.</p>';
+    $output .= '<p>'.t('This is your personal tipping control center.').'</p>';
     $items[] = l(t('Enter tips'), 'tipping/tips');
-    $items[] = l(t('View scores'), 'tipping/scores') .' &mdash; Your current score: <strong>'. tipping_get_player_score() .'</strong>';
-    $items[] = l(t('View ranking'), 'tipping/ranking') .' &mdash; Your current rank: <strong>'. tipping_get_player_rank() .'.</strong>';
+    $items[] = l(t('View scores'), 'tipping/scores') .' &mdash;'. t('Your current score:').'<strong> '. tipping_get_player_score() .'</strong>';
+    $items[] = l(t('View ranking'), 'tipping/ranking') .' &mdash;'. t('Your current rank:').'<strong> '. tipping_get_player_rank() .'.</strong>';
   }
   if (user_access('administer tip game')) {
-    $items[] = l(t('Administer tip game'), 'tipping/admin');
+    $items[] = l(t('Administer tip game'), 'admin/tipping');
   }
   $output .= theme('item_list', $items);
   $output .= '</div>';
 
-  if (module_exist('taxonomy') && variable_get('tipping_news', '')) {
+  if (module_exists('taxonomy') && variable_get('tipping_news', '')) {
     $term_path = variable_get('tipping_news', '');
     if (_tipping_term_path_valid($term_path) && _tipping_term_path_terms_exist($term_path)) {
       $breadcrumb = drupal_get_breadcrumb();
@@ -843,9 +841,9 @@
     if (variable_get('tipping_time_limit', 3600)) {
       $timelimit = ' '. t('Time limit for tip submission is <em>%timelimit before kick-off</em>.', array('%timelimit' => format_interval(variable_get('tipping_time_limit', 3600))));
     }
-    $output .= '<p>'. t("Enter or change your tips (predictions) for the matches listed below. You don't need to enter all your tips at once.") . $timelimit .'</p>';
-    $output .= '<p>'. t("Note that as from the round of 16 the score that counts is after 90 minutes (without extra time and penalty kicks).") .'</p>';
-    $output .= tipping_tips_form($matches);
+	$output .= '<p>'. t("Enter or change your tips (predictions) for the matches listed below. You don't need to enter all your tips at once.") . $timelimit .' ';
+    $output .= t("Note that as from the round of 16 the score that counts is after 90 minutes (without extra time and penalty kicks).") .'</p>';
+    $output .= drupal_get_form('tipping_tips_form', $matches);
   }
   else {
     $output .= t('There are no matches to enter tips for.');
@@ -857,8 +855,6 @@
 
 function tipping_tips_form($matches) {
   $form = array();
-  $form['#theme'] = 'tipping_tips_form';
-
   $matches_day = array();
 
   $form['goals1']['#tree'] = TRUE;
@@ -885,7 +881,7 @@
   $form['matches_day'] = array('#type' => 'value', '#value' => $matches_day);
   $form['submit'] = array('#type' => 'submit', '#value' => t('Submit'));
 
-  return drupal_get_form('tipping_tips', $form);
+  return $form;
 }
 
 function theme_tipping_tips_form($form) {
@@ -898,7 +894,7 @@
         format_date($match->timestamp, 'custom', 'H:i'),
         array('data' => $match->round_name, 'class' => 'group'),
         array('data' => $match->team1, 'class' => 'team-left'),
-        '<div class="container-inline">'. drupal_render($form['goals1'][$mid]) .':'. drupal_render($form['goals2'][$mid]) .'</div>',
+        array('data' => drupal_render($form['goals1'][$mid]) .':'. drupal_render($form['goals2'][$mid]), 'class' => 'container-inline'),
         array('data' => $match->team2, 'class' => 'team-right'),
       );
     }
@@ -908,13 +904,13 @@
   return $output;
 }
 
-function tipping_tips_validate($form_id, $form_values, $form) {
+function tipping_tips_form_validate($form_id, $form_values, $form) {
   foreach ($form_values['tid'] as $mid => $tid) {
     _tipping_validate_goals($mid, $form_values['goals1'][$mid], $form_values['goals2'][$mid]);
   }
 }
 
-function tipping_tips_submit($form_id, $form_values) {
+function tipping_tips_form_submit($form_id, $form_values) {
   global $user;
   $count = 0;
 
@@ -956,7 +952,7 @@
   }
 
   $output = '';
-  $output .= '<p>'. t('This page shows how many points a player gained with his/her predictions. An exact match gives three points (&bull;&bull;&bull;), predicting only the outcome right (winner or draw) gives one point (&bull;).') .'</p>';
+  $output .= '<p>'. t('This page shows how many points a player gained with his/her predictions. An exact match gives three points, predicting only the outcome right (winner or draw) gives one point.') .'</p>';
 
   $result = db_query('
     SELECT m.mid, m.timestamp, m.round,  m.tid1, m.tid2, m.goals1 AS result1, m.goals2 AS result2, t.goals1 AS tip1, t.goals2 AS tip2, t.score
@@ -983,7 +979,7 @@
     $output .= theme('table', $header, $rows);
   }
   else {
-    $output .= '<p>There are no scores yet.</p>';
+    $output .= '<p>'.t('There are no scores yet.').'</p>';
   }
 
   drupal_set_title(t('%name scores', array('%name' => $results_user->uid == $user->uid ? t('Your') : check_plain($results_user->name) .'\'s ')));
@@ -1041,7 +1037,7 @@
 
 function tipping_standings() {
   $output = '';
-  $output .= "<p>The standings of each group during the World Cup group stage.</p>";
+  $output .= '<p>'. t('The standings of each group.').'</p>';
 
   $groups = tipping_get_groups();
   $teams = tipping_get_teams();
@@ -1093,15 +1089,19 @@
 }
 
 function tipping_enrol() {
+  return drupal_get_form('tipping_enrol_form');
+}
+
+function tipping_enrol_form() {
   global $user;
   $form = array();
-  $form['text'] = array('#value' => '<p>You are currently not enroled in the Football World Cup tip game. To join the game just click on the \'Enrol\' button.</p>');
+  $form['text'] = array('#value' => '<p>'.t('You are currently not enroled in the Football European championship tip game. To join the game just click on the \'Enrol\' button.').'</p>');
   $form['uid'] = array('#type' => 'value', '#value' => $user->uid);
   $form['submit'] = array('#type' => 'submit', '#value' => t('Enrol'));
-  return drupal_get_form('tipping_enrol', $form);
+  return $form;
 }
 
-function tipping_enrol_submit($form_id, $form_values) {
+function tipping_enrol_form_submit($form_id, $form_values) {
   if (user_access('take part in tipping')) {
     db_query('INSERT INTO {tipping_players} (uid) VALUES (%d)', $form_values['uid']);
   }
@@ -1321,7 +1321,8 @@
 
 function tipping_get_groups() {
   $groups = array();
-  for ($i = 0; $i <= 7; $i++) {
+  //TODO: make number of groups configureable
+  for ($i = 0; $i <= 3; $i++) {
     $groups[$i] = t('Group') .' '. chr(65 + $i);
   }
   return $groups;
@@ -1329,7 +1330,8 @@
 
 function tipping_get_rounds() {
   $rounds = tipping_get_groups();
-  $rounds[] = t('Round of 16');
+  //$rounds[] = t('Round of 16');
+  //TODO: automatically select rounds by number of groups?
   $rounds[] = t('Quarter-finals');
   $rounds[] = t('Semi-finals');
   $rounds[] = t('3rd place');
Index: tipping.css
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/tipping/tipping.css,v
retrieving revision 1.2
diff -u -r1.2 tipping.css
--- tipping.css	15 Feb 2007 02:49:48 -0000	1.2
+++ tipping.css	2 Jun 2008 11:21:06 -0000
@@ -1,65 +1,70 @@
-
-.tipping .node h2 {
-  font-size: 1.15em;
-}
-
-.tipping .welcome {
-  background: #eeffdd; 
-  border: 1px solid #9d6;
-  padding: 0.01em 0.5em 0.5em; 
-  margin: 0.5em 0 0.5em 0;
-}
-
-.tipping .welcome h2 {
-  color: #70aa40;
-}
-
-.tipping table {
-  margin-bottom: 1em;
-}
-
-.tipping tr.even {
-  background-color: #f3fce4;
-  border-bottom: 1px solid #bf9;
-}
-
-.tipping tr.odd {
-  background-color: #e6fad5;
-  border-bottom: 1px solid #bf9;
-}
-
-.tipping th {
-  color: #8c3;
-  font-size: 0.95em;
-  border-bottom: 2px solid #9d3;
-}
-
-.tipping .group {
-  color: #6a1;
-  vertical-align: top;
-  font-weight: normal;
-  font-size: 0.85em;
-  width: 6.6em;
-}
-
-.tipping .team-left, .tipping .team-right {
-  width: 9.5em;
-}
-
-.tipping .team-left {
-  text-align: right;
-}
-
-.tipping .td-number {
-  text-align: right;
-  padding-right: 0.7em;
-}
-
-.block-tipping .next-match {
-  white-space: nowrap;
-}
-
-.block-tipping strong {
-  letter-spacing: 0.1em;
-  font-weight: normal;
-}
+
+.tipping .node h2 {
+  font-size: 1.15em;
+}
+
+.tipping .welcome {
+  background: #eeffdd; 
+  border: 1px solid #9d6;
+  padding: 0.01em 0.5em 0.5em; 
+  margin: 0.5em 0 0.5em 0;
+}
+
+.tipping .welcome h2 {
+  color: #70aa40;
+}
+
+.tipping table {
+  margin-bottom: 1em;
+}
+
+.tipping tr.even {
+  background-color: #f3fce4;
+  border-bottom: 1px solid #bf9;
+}
+
+.tipping tr.odd {
+  background-color: #e6fad5;
+  border-bottom: 1px solid #bf9;
+}
+
+.tipping th {
+  color: #8c3;
+  font-size: 0.95em;
+  border-bottom: 2px solid #9d3;
+}
+
+.tipping td.container-inline {
+  width: 8em;
+  text-align: center;
+}
+
+.tipping .group {
+  color: #6a1;
+  vertical-align: top;
+  font-weight: normal;
+  font-size: 0.85em;
+  width: 6.6em;
+}
+
+.tipping .team-left, .tipping .team-right {
+  width: 9.5em;
+}
+
+.tipping .team-left {
+  text-align: right;
+}
+
+.tipping .td-number {
+  text-align: right;
+  padding-right: 0.7em;
+}
+
+.block-tipping .next-match {
+  white-space: nowrap;
+}
+
+.block-tipping strong {
+  letter-spacing: 0.1em;
+  font-weight: normal;
+}
Index: README.txt
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/tipping/README.txt,v
retrieving revision 1.4
diff -u -r1.4 README.txt
--- README.txt	25 Aug 2007 00:54:47 -0000	1.4
+++ README.txt	2 Jun 2008 11:21:06 -0000
@@ -4,23 +4,21 @@
 Description
 -----------
 With this module you can arrange a little game for your site users during 
-the world cup. The aim is to predict the outcome of each match as close 
+the European championship. The aim is to predict the outcome of each match as close 
 as possible and collect points for correct predictions.
 
 
 Installation
 ------------
-Drupal 4.7
+Drupal 5.x
 
-   1. Copy the footballworldcup folder to your modules directory.
+   1. Copy the tipping folder to your modules directory.
    2. Enable the module under administer -> modules. The database tables 
       are created automatically.
    3. Change access permissions under administer -> permissions.
    4. Enable the 'Football World Cup' block under administer -> blocks.
 
-Drupal 5.1
-------------
-   
+
 Credits
 -------
 tenrapid (http://drupal.org/user/37587)
Index: tipping.install
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/tipping/tipping.install,v
retrieving revision 1.2
diff -u -r1.2 tipping.install
--- tipping.install	14 Feb 2007 11:13:23 -0000	1.2
+++ tipping.install	2 Jun 2008 11:21:06 -0000
@@ -92,104 +92,63 @@
       db_query("CREATE SEQUENCE {tipping_tips}_tid_seq INCREMENT 1 START 1");
       break;
   }
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (1,12,5,NULL,NULL,0,1149868800)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (2,22,9,NULL,NULL,0,1149879600)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (3,10,21,NULL,NULL,1,1149944400)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (4,29,26,NULL,NULL,1,1149955200)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (5,2,6,NULL,NULL,2,1149966000)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (6,24,20,NULL,NULL,2,1150030800)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (7,19,14,NULL,NULL,3,1150041600)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (8,1,23,NULL,NULL,3,1150052400)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (9,32,8,NULL,NULL,4,1150128000)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (10,15,13,NULL,NULL,4,1150138800)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (11,3,16,NULL,NULL,5,1150117200)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (12,4,7,NULL,NULL,5,1150225200)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (13,17,28,NULL,NULL,6,1150203600)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (14,11,27,NULL,NULL,6,1150214400)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (15,25,31,NULL,NULL,7,1150290000)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (16,30,18,NULL,NULL,7,1150300800)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (17,12,22,NULL,NULL,0,1150311600)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (18,9,5,NULL,NULL,0,1150376400)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (19,10,29,NULL,NULL,1,1150387200)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (20,26,21,NULL,NULL,1,1150398000)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (21,2,24,NULL,NULL,2,1150462800)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (22,20,6,NULL,NULL,2,1150473600)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (23,19,1,NULL,NULL,3,1150484400)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (24,23,14,NULL,NULL,3,1150549200)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (25,8,13,NULL,NULL,4,1150560000)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (26,15,32,NULL,NULL,4,1150570800)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (27,16,7,NULL,NULL,5,1150635600)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (28,4,3,NULL,NULL,5,1150646400)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (29,11,17,NULL,NULL,6,1150657200)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (30,28,27,NULL,NULL,6,1150722000)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (31,18,31,NULL,NULL,7,1150732800)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (32,25,30,NULL,NULL,7,1150743600)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (33,9,12,NULL,NULL,0,1150812000)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (34,5,22,NULL,NULL,0,1150812000)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (35,26,10,NULL,NULL,1,1150830000)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (36,21,29,NULL,NULL,1,1150830000)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (37,20,2,NULL,NULL,2,1150916400)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (38,6,24,NULL,NULL,2,1150916400)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (39,23,19,NULL,NULL,3,1150898400)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (40,14,1,NULL,NULL,3,1150898400)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (41,8,15,NULL,NULL,4,1150984800)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (42,13,32,NULL,NULL,4,1150984800)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (43,16,4,NULL,NULL,5,1151002800)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (44,7,3,NULL,NULL,5,1151002800)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (45,28,11,NULL,NULL,6,1151089200)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (46,27,17,NULL,NULL,6,1151089200)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (47,18,25,NULL,NULL,7,1151071200)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (48,31,30,NULL,NULL,7,1151071200)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (49,NULL,NULL,100,1,8,1151161200)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (50,NULL,NULL,102,3,8,1151175600)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (51,NULL,NULL,101,0,8,1151247600)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (52,NULL,NULL,103,2,8,1151262000)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (53,NULL,NULL,104,5,8,1151334000)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (54,NULL,NULL,106,7,8,1151348400)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (55,NULL,NULL,105,4,8,1151420400)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (56,NULL,NULL,107,6,8,1151434800)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (57,NULL,NULL,149,150,9,1151679600)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (58,NULL,NULL,153,154,9,1151694000)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (59,NULL,NULL,151,152,9,1151766000)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (60,NULL,NULL,155,156,9,1151780400)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (61,NULL,NULL,157,158,10,1152039600)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (62,NULL,NULL,159,160,10,1152126000)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (63,NULL,NULL,61,62,11,1152385200)");
-  db_query("INSERT INTO {tipping_matches} (mid, tid1, tid2, rule1, rule2, round, timestamp) VALUES (64,NULL,NULL,161,162,12,1152468000)");
+  db_query("INSERT INTO {tipping_matches} (`mid`, `tid1`, `tid2`, `rule1`, `rule2`, `goals1`, `goals2`, `round`, `timestamp`, `statistics`) VALUES 
+    (1, 1, 3, NULL, NULL, NULL, NULL, 0, 1212854400, ''),
+    (10, 1, 4, NULL, NULL, NULL, NULL, 0, 1213209900, ''),
+    (20, 5, 7, NULL, NULL, NULL, NULL, 1, 1213641900, ''),
+    (11, 6, 7, NULL, NULL, NULL, NULL, 1, 1213286400, ''),
+    (22, 12, 10, NULL, NULL, NULL, NULL, 2, 1213728300, ''),
+    (21, 9, 11, NULL, NULL, NULL, NULL, 2, 1213728300, ''),
+    (7, 15, 16, NULL, NULL, NULL, NULL, 3, 1213113600, ''),
+    (16, 13, 16, NULL, NULL, NULL, NULL, 3, 1213469100, ''),
+    (18, 4, 3, NULL, NULL, NULL, NULL, 0, 1213555500, ''),
+    (17, 1, 2, NULL, NULL, NULL, NULL, 0, 1213555500, ''),
+    (19, 8, 6, NULL, NULL, NULL, NULL, 1, 1213641900, ''),
+    (12, 5, 8, NULL, NULL, NULL, NULL, 1, 1213296300, ''),
+    (14, 9, 12, NULL, NULL, NULL, NULL, 2, 1213382700, ''),
+    (13, 10, 11, NULL, NULL, NULL, NULL, 2, 1213372800, ''),
+    (8, 13, 14, NULL, NULL, NULL, NULL, 3, 1213123500, ''),
+    (24, 16, 14, NULL, NULL, NULL, NULL, 3, 1213814700, ''),
+    (9, 3, 2, NULL, NULL, NULL, NULL, 0, 1213200000, ''),
+    (2, 2, 4, NULL, NULL, NULL, NULL, 0, 1212864300, ''),
+    (3, 5, 6, NULL, NULL, NULL, NULL, 1, 1212940800, ''),
+    (4, 7, 8, NULL, NULL, NULL, NULL, 1, 1212950700, ''),
+    (5, 11, 12, NULL, NULL, NULL, NULL, 2, 1213027200, ''),
+    (6, 9, 10, NULL, NULL, NULL, NULL, 2, 1213037100, ''),
+    (23, 13, 15, NULL, NULL, NULL, NULL, 3, 1213814700, ''),
+    (15, 14, 15, NULL, NULL, NULL, NULL, 3, 1213459200, ''),
+    (28, 0, 0, 149, 150, NULL, NULL, 4, 1214160300, ''),
+    (27, 0, 0, 153, 154, NULL, NULL, 4, 1214073900, ''),
+    (26, 0, 0, 151, 152, NULL, NULL, 4, 1213987500, ''),
+    (25, 0, 0, 155, 156, NULL, NULL, 4, 1213901100, ''),
+    (30, 0, 0, 157, 158, NULL, NULL, 5, 1214505900, ''),
+    (29, 0, 0, 159, 160, NULL, NULL, 5, 1214419500, ''),
+    (31, 0, 0, 161, 162, NULL, NULL, 7, 1214765100, '')");
 
   $group = $GLOBALS['db_type'] == 'pgsql' ? '"group"' : '`group`';
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (1,'Angola',3,'ANG')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (2,'Argentina',2,'ARG')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (3,'Australia',5,'AUS')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (4,'Brazil',5,'BRA')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (5,'Costa Rica',0,'CRC')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (6,'Côte d\'Ivoire',2,'CIV')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (7,'Croatia',5,'CRO')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (8,'Czech Republic',4,'CZE')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (9,'Ecuador',0,'ECU')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (10,'England',1,'ENG')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (11,'France',6,'FRA')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (12,'Germany',0,'GER')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (13,'Ghana',4,'GHA')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (14,'Iran',3,'IRN')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (15,'Italy',4,'ITA')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (16,'Japan',5,'JAP')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (17,'Korea Republic',6,'KOR')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (18,'Saudi Arabia',7,'KSA')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (19,'Mexico',3,'MEX')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (20,'Netherlands',2,'NED')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (21,'Paraguay',1,'PAR')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (22,'Poland',0,'POL')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (23,'Portugal',3,'POR')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (24,'Serbia & Montenegro',2,'SCG')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (25,'Spain',7,'ESP')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (26,'Sweden',1,'SWE')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (27,'Switzerland',6,'SUI')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (28,'Togo',6,'TOG')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (29,'Trinidad &Tobago',1,'TRI')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (30,'Tunisia',7,'TUN')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (31,'Ukraine',7,'UKR')", $group);
-  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (32,'USA',4,'USA')", $group);
+  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (1,'Switzerland',0,'SUI')", $group);
+  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (2,'Portugal',0,'POR')", $group);
+  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (3,'Czech Republic',0,'CZE')", $group);
+  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (4,'Turkey',0,'TUR')", $group);
+  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (5,'Austria',1,'AUT')", $group);
+  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (6,'Croatia',1,'CRO')", $group);
+  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (7,'Germany',1,'GER')", $group);
+  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (8,'Poland',1,'POL')", $group);
+  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (9,'Netherlands',2,'NED')", $group);
+  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (10,'Italy',2,'ITA')", $group);
+  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (11,'Romania',2,'ROU')", $group);
+  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (12,'France',2,'FRA')", $group);
+  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (13,'Greece',3,'GRE')", $group);
+  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (14,'Sweden',3,'SWE')", $group);
+  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (15,'Spain',3,'ESP')", $group);
+  db_query("INSERT INTO {tipping_teams} (tid, name, %s, abbr) VALUES (16,'Russia',3,'RUS')", $group);
 }
 
+
+function tipping_uninstall() {
+  db_query("DROP TABLE {tipping_teams}");
+  db_query("DROP TABLE {tipping_matches}");
+  db_query("DROP TABLE {tipping_tips}");
+  db_query("DROP TABLE {tipping_players}");
+}
 ?>
\ No newline at end of file
Index: po/de.po
===================================================================
RCS file: po/de.po
diff -N po/de.po
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ po/de.po	1 Jan 1970 00:00:00 -0000
@@ -0,0 +1,388 @@
+# $Id$
+#
+# Deutsch translation of Drupal (general)
+# Copyright YEAR NAME <EMAIL@ADDRESS>
+# Generated from files:
+#  tipping.module,v 1.5 2007/02/15 10:50:31 sime
+#  tipping.info: n/a
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PROJECT VERSION\n"
+"POT-Creation-Date: 2008-06-01 17:46+0200\n"
+"PO-Revision-Date: 2008-06-01 17:46+0200\n"
+"Last-Translator: NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Deutsch <EMAIL@ADDRESS>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: tipping.module:16
+msgid "Enter the scores of the matches listed below. Remember that as from the round of 16 the score that counts is after 90 minutes (without extra time and penalty kicks)."
+msgstr "Bitte geben Sie die Ergebnisse der aufgelisteten Spiele ein. Beachten Sie, dass bei K.O.-Spielen der Stand nach 90 Minuten eingetragen werden soll (ohne Verlängerung oder Elfmeterschießen)."
+
+#: tipping.module:18
+msgid "You can change the team names and abbreviations here."
+msgstr "Hier können die Namen und Abkürzungen der Teams geändert werden."
+
+#: tipping.module:41;82
+msgid "Sports tipping"
+msgstr "Tippspiel"
+
+#: tipping.module:47
+msgid "Tips"
+msgstr "Tipps"
+
+#: tipping.module:53
+msgid "Scores"
+msgstr "Ergebnisse"
+
+#: tipping.module:60
+msgid "Ranking"
+msgstr "Reihenfolge"
+
+#: tipping.module:66
+msgid "Group standings"
+msgstr "Tabelle(n)"
+
+#: tipping.module:72;1101
+msgid "Enrol"
+msgstr "Eintragen"
+
+#: tipping.module:83
+msgid "Sports tipping administration pages."
+msgstr "Tippspiel Administration"
+
+#: tipping.module:89
+msgid "Administration"
+msgstr "Verwaltung"
+
+#: tipping.module:96
+msgid "Edit result"
+msgstr "Resultat bearbeiten"
+
+#: tipping.module:103
+msgid "General settings"
+msgstr "Allgemeine Einstellungen"
+
+#: tipping.module:111;621
+msgid "Teams"
+msgstr "Mannschaften"
+
+#: tipping.module:118;602
+msgid "Matches"
+msgstr "Paarungen"
+
+#: tipping.module:126
+msgid "Edit match"
+msgstr "Paarung bearbeiten"
+
+#: tipping.module:142;148
+msgid "Football European championship"
+msgstr "EM 2008"
+
+#: tipping.module:161;190
+msgid "No tips yet."
+msgstr "Keine Tipps vorhanden"
+
+#: tipping.module:172
+msgid "Tip game"
+msgstr "Tippspiel"
+
+#: tipping.module:173
+msgid "Your rank"
+msgstr "Aktueller Rang"
+
+#: tipping.module:174
+msgid "Your score"
+msgstr "Aktuelle Punktzahl"
+
+#: tipping.module:178
+msgid "Next matches"
+msgstr "Die nächsten Paarungen"
+
+#: tipping.module:190;797
+msgid "Enter tips"
+msgstr "Tipps eintragen"
+
+#: tipping.module:270
+msgid "Enter results"
+msgstr "Ergebnisse eintragen"
+
+#: tipping.module:276
+msgid "There are no matches to enter results for."
+msgstr "Es liegen keine Paarungen vor, um Resultate einzutragen"
+
+#: tipping.module:284
+msgid "Past results"
+msgstr "Frühere Resultate"
+
+#: tipping.module:285;406;620;966
+msgid "Date - Kick-off"
+msgstr "Anstosszeit"
+
+#: tipping.module:285;406;619;966
+msgid "Round"
+msgstr "Runde"
+
+#: tipping.module:295;303;311;589
+msgid "edit"
+msgstr "Bearbeiten"
+
+#: tipping.module:302;310;373;384;567;645;657;677;677;695;696
+msgid "Winner"
+msgstr "Gewinner"
+
+#: tipping.module:310;391;567;645;657;669;669
+msgid "Runner-up"
+msgstr "Verlierer"
+
+#: tipping.module:399;524;708;750;883
+msgid "Submit"
+msgstr "Speichern"
+
+#: tipping.module:489
+msgid "Results saved."
+msgstr "Resultate gespeichert"
+
+#: tipping.module:618
+msgid "Match-ID"
+msgstr "Paarungs-ID"
+
+#: tipping.module:715
+msgid "This match id is already taken. Choose another one."
+msgstr "Diese Paarungs-ID ist schon vergeben. Bitte eine andere wählen."
+
+#: tipping.module:736
+msgid "Tip submission time limit"
+msgstr "Zeitlimit für Tippabgabe"
+
+#: tipping.module:737
+msgid "The time before kick-off where player tip submissions are not allowed anymore."
+msgstr "Zeitspanne vor dem Anstoss, in der ein Tipp nicht mehr möglich ist."
+
+#: tipping.module:743
+msgid "Game news categories"
+msgstr "Nachrichten-Kategorien"
+
+#: tipping.module:744
+msgid "Enter a taxonomy term path like '1,2,4' or '1+2+4'. Nodes associated with these terms will be displayed on the tip game overview page. <em>(Requires taxonomy.module to be enabled.)</em>"
+msgstr "Trages Sie einen Taxonomie-Pfad ein (z.B. '1,2,4' oder '1+2+4'). Nodes, die zu diesem Term gehören, werden auf der Tippspiel Übersicht angezeigt. <em>(Benötigt ein aktiviertes taxonomy.module.)</em> "
+
+#: tipping.module:758
+msgid "Taxonomy term path is invalid."
+msgstr "Der Taxonomie-Pfad ist ungültig."
+
+#: tipping.module:761
+msgid "None of the entered taxonomy terms exists."
+msgstr "Keiner der eingegebenen Taxonomie Terme existiert."
+
+#: tipping.module:769
+msgid "Settings saved."
+msgstr "Einstellungen gespeichert."
+
+#: tipping.module:787
+msgid "Welcome %name"
+msgstr "Herzlich Willkommen %name"
+
+#: tipping.module:790
+msgid "Please <a href=\"%login\">login</a> or <a href=\"%register\">register</a> to join the tip game."
+msgstr "Bitte <a href=\"%login\">anmelden</a> oder <a href=\"%register\">registrieren</a>, um am Tippspiel teilzunehmen."
+
+#: tipping.module:796
+msgid "This is your personal tipping control center."
+msgstr "An dieser Stelle die aktuellen Tabellen eingesehen und Tipps abgegeben werden."
+
+#: tipping.module:798
+msgid "View scores"
+msgstr "Resultate ansehen"
+
+#: tipping.module:798
+msgid "Your current score:"
+msgstr "Aktuelle Punktzahl:"
+
+#: tipping.module:799
+msgid "View ranking"
+msgstr "Rangfolge ansehen"
+
+#: tipping.module:799
+msgid "Your current rank:"
+msgstr "Aktueller Rang:"
+
+#: tipping.module:802
+msgid "Administer tip game"
+msgstr "Tippspiel administrieren"
+
+#: tipping.module:812
+msgid "News"
+msgstr "News"
+
+#: tipping.module:843
+msgid "Time limit for tip submission is <em>%timelimit before kick-off</em>."
+msgstr "Zeitlimit für die Tippabgabe ist <em>%timelimit vor dem Anstoss</em>."
+
+#: tipping.module:845
+msgid "Enter or change your tips (predictions) for the matches listed below. You don't need to enter all your tips at once."
+msgstr "Hier können Tipps eintragen oder verändert werden."
+
+#: tipping.module:846
+msgid "Note that as from the round of 16 the score that counts is after 90 minutes (without extra time and penalty kicks)."
+msgstr "In K.O.-Spielen wird der Spielstand nach 90 Minuten gewertet."
+
+#: tipping.module:850
+msgid "There are no matches to enter tips for."
+msgstr "Es liegen keine Paarungen vor, für die Tipps eingetragen werden können."
+
+#: tipping.module:931
+msgid "Tips saved."
+msgstr "Tipps gespeichert."
+
+#: tipping.module:956
+msgid "This page shows how many points a player gained with his/her predictions. An exact match gives three points, predicting only the outcome right (winner or draw) gives one point."
+msgstr "Diese Seite zeigt die Punktzahlen der Nutzer an."
+
+#: tipping.module:966;1017
+msgid "Score"
+msgstr "Ergebnis"
+
+#: tipping.module:966
+msgid "Tip"
+msgstr "Tipp"
+
+#: tipping.module:966;1055
+msgid "Points"
+msgstr "Punkte"
+
+#: tipping.module:983
+msgid "There are no scores yet."
+msgstr "Es liegen bislang keine Punkte vor."
+
+#: tipping.module:986
+msgid "%name scores"
+msgstr "%name Punktzahl"
+
+#: tipping.module:986
+msgid "Your"
+msgstr "Deine"
+
+#: tipping.module:996
+msgid "Click on a player's name to view the score details."
+msgstr "Wählen Sie einen Mitspieler aus, um dessen Punkt-Details anzuzeigen."
+
+#: tipping.module:1017
+msgid "Rank"
+msgstr "Rang"
+
+#: tipping.module:1017
+msgid "Player"
+msgstr "Spieler"
+
+#: tipping.module:1029
+msgid "There are no players enroled."
+msgstr "Es sind keine Spieler eingetragen."
+
+#: tipping.module:1041
+msgid "The standings of each group."
+msgstr "Die Tabellen der einzelnen Gruppen."
+
+#: tipping.module:1047
+msgid "Team"
+msgstr "Mannschaft"
+
+#: tipping.module:1048
+msgid "Matches played"
+msgstr "Gespielte Paarungen"
+
+#: tipping.module:1049
+msgid "Wins"
+msgstr "Siege"
+
+#: tipping.module:1050
+msgid "Draws"
+msgstr "Unentschieden"
+
+#: tipping.module:1051
+msgid "Losses"
+msgstr "Niederlagen"
+
+#: tipping.module:1052
+msgid "Goals for"
+msgstr "Erzielte Tore"
+
+#: tipping.module:1053
+msgid "Goals against"
+msgstr "Kassierte Tore"
+
+#: tipping.module:1054
+msgid "Goal difference"
+msgstr "Tordifferenz"
+
+#: tipping.module:1099
+msgid "You are currently not enroled in the Football European championship tip game. To join the game just click on the 'Enrol' button."
+msgstr "Sie haben sich noch nicht für das Tippspiel angemeldet. Dazu reicht ein einfacher Klick auf den unten stehenden Button."
+
+#: tipping.module:1327
+msgid "Group"
+msgstr "Gruppe"
+
+#: tipping.module:1336
+msgid "Quarter-finals"
+msgstr "Viertelfinale"
+
+#: tipping.module:1337
+msgid "Semi-finals"
+msgstr "Halbfinale"
+
+#: tipping.module:1338
+msgid "3rd place"
+msgstr "3. Platz"
+
+#: tipping.module:1339
+msgid "Final"
+msgstr "Finale"
+
+#: tipping.module:1361
+msgid "Incomplete tip."
+msgstr "Unvollständiger TIpp"
+
+#: tipping.module:1365;1368
+msgid "Invalid tip."
+msgstr "Ungültiger Tipp"
+
+#: tipping.module:1377
+msgid "Group runner-up not set."
+msgstr "Gruppenzweiter nicht eingetragen."
+
+#: tipping.module:1380
+msgid "Group winner not set."
+msgstr "Gruppensieger nicht eingetragen."
+
+#: tipping.module:1383
+msgid "Group winner and runner-up are the same."
+msgstr "Gruppensieger und -zweiter sind identisch."
+
+#: tipping.module:26
+msgid "access tipping pages"
+msgstr "Tippspiel-Seiten abrufen"
+
+#: tipping.module:26
+msgid "take part in tipping"
+msgstr "Am Tippspiel teilnehmen"
+
+#: tipping.module:26
+msgid "administer tipping"
+msgstr "Tippspiel administrieren"
+
+#: tipping.module:0
+msgid "tipping"
+msgstr "tippen"
+
+#: tipping.info:0
+msgid "Sports Tipping"
+msgstr "Tippspiel"
+
+#: tipping.info:0
+msgid "Run sports tipping competitions with your Drupal site."
+msgstr "Führe Tippspiele durch."
+
