Commit ad3f6eb2 authored by Ryan Weal's avatar Ryan Weal
Browse files

Remove duplicate functions, add comments, translation_table no longer required

parent e107091b
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -6,4 +6,3 @@ dependencies[] = i18n
dependencies[] = i18nviews
dependencies[] = locale
dependencies[] = translation
dependencies[] = translation_table
+6 −180
Original line number Diff line number Diff line
@@ -21,15 +21,13 @@ function translation_interface_menu() {
    'access arguments' => array('manage translations'),
    'weight' => -10,
  );

  $items['translate/menuz'] = array(
  $items['translate/menus'] = array(
    'title' => 'Menus',
    'type' => MENU_LOCAL_TASK,
    'page callback' => 'translation_interface_menuz',
    'page callback' => 'translation_interface_menus',
    'access arguments' => array('manage translations'),
    'weight' => 14,
  );

  $items['translate/blocks'] = array(
    'title' => 'Blocks',
    'type' => MENU_LOCAL_TASK,
@@ -73,23 +71,6 @@ function translation_interface_menu_alter(&$items) {

  // nixed content tab -- it's just in the main page. May want to pull it onto a tab for larger sites

  // menu tab
  /*
  $items['translate/menus'] = $items['admin/build/translate/table'] ;
  $items['translate/menus']['title'] = 'Menu';
  $items['translate/menus']['weight'] = 11;
  $items['translate/menus']['type'] = MENU_LOCAL_TASK;
  $items['admin/build/translate/table']['type'] = MENU_CALLBACK;
*/

  // taxonomy tab
/*
  $items['translate/taxonomy'] = $items['admin/build/translate/table/taxonomy'] ;
  $items['translate/taxonomy']['title'] = 'Taxonomy';
  $items['translate/taxonomy']['weight'] = 12;
  $items['translate/taxonomy']['type'] = MENU_LOCAL_TASK;
  $items['admin/build/translate/table/taxonomy']['type'] = MENU_CALLBACK;
*/
  // search tab
  $items['translate/search'] = $items['admin/build/translate/search'] ;
  $items['translate/search']['title'] = 'Search';
@@ -181,146 +162,7 @@ function translation_interface_basic($languages = NULL, $default = NULL, $header
/**
 * Menus
 */
function translation_interface_menus($languages, $default, $header) {
  // Menu tab
  $output .= "<h2>" . t('Menus') . "</h2>";
  $menus = menu_get_menus();
  foreach ($menus as $menu => $name) {
    $rows[$menu]['data'][0] = $name;
    foreach($languages as $code => $value) {
      $sql = "select mlid,options from menu_links where menu_name = '%s'";
      $result = db_query($sql, $menu);
      $total_items = 0;
      $total_neutral = 0; // count the ones using multilingual system
      $total_local = 0; // count the ones using multilingual system
      
      while ($dbrow = db_fetch_array($result)) {
        $options = unserialize($dbrow['options']);
        $translation = $options['langcode'];

        if ($translation) {
          if ($translation == $code) {
            $total_items = $total_items + 1;
            $total_local = $total_local + 1;
          }
        } else {
          $total_items = $total_items + 1;
          $total_neutral = $total_neutral + 1;
        }
      }
      $rows[$menu]['data'][$code] = $total_items;
      unset($row); 
    }

    /* count down, not up! */
    $max = max($rows[$menu]['data']);
    $perms = i18n_access_load_permissions();
    foreach ($rows[$menu]['data'] as $code => $value) {
      if ($code != '0') {
       $attributes = array('html' => true, 'query' => array('lang' => $code, 'menu' => $menu));
       if ( (!user_access('administer all languages')) && (! isset($perms[$code])) ) {unset($rows[$menu]['data'][$code]); continue;}
         if ($max >= 0) {
           $remaining = $max - $value;
           if ($remaining > 0){
             if ($remaining == 1){$remaining .= " item to translate";}
             else { $remaining .= " items to translate";} 
             $rows[$menu]['data'][$code] = l($remaining, 'translate/menus', $attributes);
           }else{
              
              $rows[$menu]['data'][$code] = 'complete ' . l('[edit]', 'translate/menus', $attributes);
            }  
          }     
       }
    }

  }
  $output .= theme_table($header, $rows, $attributes = array(), $caption = NULL);
  unset($rows);
  return $output;
}


/**
 * Menu X
 */
function translation_interface_menux() {
$languages = translation_interface_lang();
    $default = language_default();
  $header = translation_interface_header($languages);
  // Menu tab
  $output .= "<h2>" . t('Menus') . "</h2>";
  $menus = array('primary-links' => 'Primary Links', secondary-links => 'Secondary Links');

  foreach ($menus as $menu => $name) {
    $rows[$menu]['data'][0] = $name;
    $rows[$menu]['class'] = "group";
    foreach($languages as $code => $value) {
      $sql = "select mlid,options from menu_links where menu_name = '%s'";
      $result = db_query($sql, $menu);
      $total_items = 0;
      $total_neutral = 0; // count the ones using multilingual system
      $total_local = 0; // count the ones using multilingual system
      
      while ($dbrow = db_fetch_array($result)) {
        $options = unserialize($dbrow['options']);
        $translation = $options['langcode'];
        if ($translation) {
          if ($translation == $code) {
            $total_items = $total_items + 1;
            $total_local = $total_local + 1;
            //$rows[$menu]['data'][$mlid] = $mlid;
          //$mlid = $dbrow['mlid'];
          //$rows[$mlid]['data'][$mlid] = db_result(db_query("select link_title from menu_links where mlid = '%d'", $mlid)) . " " . $mlid;
          //$rows[$mlid]['data'][$code] = t('completed');
          }
        } else {
          $total_items = $total_items + 1;
          $total_neutral = $total_neutral + 1;
          $mlid = $dbrow['mlid'];
          $title = db_result(db_query("select link_title from menu_links where mlid = '%d'", $mlid));
          if($title) {
            $rows[$mlid]['data'][$mlid] = $title;
            $lid = db_result(db_query( "select lid from locales_source where source = '%s' and location like '%%%s%%' limit 0, 1"), $title, $mlid);
// TODO TODO TODO
// make this link to the right place ( or replace with form?)
            $rows[$mlid]['data'][$code] = l('update translation', 'admin/build/translate/edit/' . $lid);
          }
          unset($title);
        }
      }
      $rows[$menu]['data'][$code] = $total_items;
      unset($row); 
    }
//print_r($rows);
    /* count down, not up! */
    $max = max($rows[$menu]['data']);
    $perms = i18n_access_load_permissions();
    foreach ($rows[$menu]['data'] as $code => $value) {
      if ($code != '0') {
       $attributes = array('html' => true, 'query' => array('lang' => $code, 'menu' => $menu));
       if ( (!user_access('administer all languages')) && (! isset($perms[$code])) ) {unset($rows[$menu]['data'][$code]); continue;}
         if ($max >= 0) {
           $remaining = $max - $value;
           if ($remaining > 0){
             if ($remaining == 1){$remaining .= " item to translate";}
             else { $remaining .= " items to translate";} 
             $rows[$menu]['data'][$code] = $remaining;
           }else{
              
              $rows[$menu]['data'][$code] = 'complete';
            }  
          }     
       }
    }

  }
//print_r($rows);
  $output .= theme_table($header, $rows, $attributes = array(), $caption = NULL);
  unset($rows);
  return $output;
}

function translation_interface_menuz() {   
function translation_interface_menus() {   
  $languages = translation_interface_lang();
  $default = language_default();
  $header = array("Item","Actions");
@@ -337,13 +179,13 @@ function translation_interface_menuz() {
    $rows[$dbrow[lid]]['data'][link] = l('edit', 'admin/build/translate/edit/' . $dbrow[lid]);
  }

     

  $output .= theme_table($header, $rows, $attributes = array(), $caption = NULL);
  return $output;
}


/*
 * Blocks
 */
function translation_interface_blocks() {
  $languages = translation_interface_lang();
  $default = language_default();
@@ -364,17 +206,11 @@ function translation_interface_blocks() {
  return $output;
}



/**
 * Content
 */
function translation_interface_content($languages, $default, $header) {
  global $user;
  //only use ones they have access to:
//  if (!user_access('administer all languages')){
//    $languages = i18n_access_load_permissions($user);
//  }
  $languages = translation_interface_lang();
  unset($languages['en']); //skip base language

@@ -542,14 +378,12 @@ function translation_interface_form_alter(&$form, &$form_state, $form_id) {
      //show only the one they clicked on (TODO or ALL)
      $form['filter']['languages_selected']['#default_value']= $_GET[lang];
      

     /*
       TODO : 
          1. dedup
          2. nix Operations unless admin 
          3. limit by menu    
     */

    break;
  }
}
@@ -590,14 +424,6 @@ function translation_interface_lang() {
  return $access_langs;
}  

/* old
function translation_interface_lang() {
  $languages = language_list('enabled');
  $languages = $languages[1];
  return $languages;
}
*/

function translation_interface_result($result) {
  if($result) {
    $output = "&#x2713;";