Changeset 2491


Ignore:
Timestamp:
Aug 29, 2008, 2:35:16 PM (16 years ago)
Author:
rvelices
Message:

synchro improvements:

  • able to sync metadata at the same time as the files/dirs
  • by default empty metadata does not overwrite database infos (checkbox can switch to previous behaviour) (bug 132)
  • the form is shown again even after a successfull non simulated run
Location:
trunk
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • trunk/admin/include/functions.php

    r2488 r2491  
    378378    $first = true;
    379379
    380     $query = 'SHOW VARIABLES LIKE \'max_allowed_packet\';';
     380    $query = 'SHOW VARIABLES LIKE \'max_allowed_packet\'';
    381381    list(, $packet_size) = mysql_fetch_row(pwg_query($query));
    382382    $packet_size = $packet_size - 2000; // The last list of values MUST not exceed 2000 character*/
     
    387387      if (strlen($query) >= $packet_size)
    388388      {
    389         $query .= '
    390 ;';
    391389        pwg_query($query);
    392390        $first = true;
     
    426424      $query .= ')';
    427425    }
    428 
    429     $query .= '
    430 ;';
    431426    pwg_query($query);
    432427  }
    433428}
    434429
     430define('MASS_UPDATES_SKIP_EMPTY', 1);
    435431/**
    436432 * updates multiple lines in a table
     
    439435 * @param array dbfields
    440436 * @param array datas
     437 * @param int flags - if MASS_UPDATES_SKIP_EMPTY - empty values do not overwrite existing ones
    441438 * @return void
    442439 */
    443 function mass_updates($tablename, $dbfields, $datas)
    444 {
    445   if (count($datas) != 0)
    446   {
    447     // depending on the MySQL version, we use the multi table update or N
    448     // update queries
    449     if (count($datas) < 10 or version_compare(mysql_get_server_info(), '4.0.4') < 0)
    450     {
    451       // MySQL is prior to version 4.0.4, multi table update feature is not
    452       // available
    453       foreach ($datas as $data)
    454       {
    455         $query = '
     440function mass_updates($tablename, $dbfields, $datas, $flags=0)
     441{
     442  if (count($datas) == 0)
     443    return;
     444  // depending on the MySQL version, we use the multi table update or N update queries
     445  if (count($datas) < 10 or version_compare(mysql_get_server_info(), '4.0.4') < 0)
     446  { // MySQL is prior to version 4.0.4, multi table update feature is not available
     447    foreach ($datas as $data)
     448    {
     449      $query = '
    456450UPDATE '.$tablename.'
    457451  SET ';
    458         $is_first = true;
    459         foreach ($dbfields['update'] as $key)
     452      $is_first = true;
     453      foreach ($dbfields['update'] as $key)
     454      {
     455        $separator = $is_first ? '' : ",\n    ";
     456
     457        if (isset($data[$key]) and $data[$key] != '')
    460458        {
    461           if (!$is_first)
    462           {
    463             $query.= ",\n      ";
    464           }
    465           $query.= $key.' = ';
    466           if (isset($data[$key]) and $data[$key] != '')
    467           {
    468             $query.= '\''.$data[$key].'\'';
    469           }
    470           else
    471           {
    472             $query.= 'NULL';
    473           }
    474           $is_first = false;
     459          $query.= $separator.$key.' = \''.$data[$key].'\'';
    475460        }
     461        else
     462        {
     463          if ($flags & MASS_UPDATES_SKIP_EMPTY )
     464            continue; // next field
     465          $query.= "$separator$key = NULL";
     466        }
     467        $is_first = false;
     468      }
     469      if (!$is_first)
     470      {// only if one field at least updated
    476471        $query.= '
    477472  WHERE ';
    478 
    479473        $is_first = true;
    480474        foreach ($dbfields['primary'] as $key)
     
    494488          $is_first = false;
    495489        }
    496         $query.= '
    497 ;';
    498490        pwg_query($query);
    499491      }
    500     }
     492    } // foreach update
     493  } // if mysql_ver or count<X
     494  else
     495  {
     496    // creation of the temporary table
     497    $query = '
     498SHOW FULL COLUMNS FROM '.$tablename;
     499    $result = pwg_query($query);
     500    $columns = array();
     501    $all_fields = array_merge($dbfields['primary'], $dbfields['update']);
     502    while ($row = mysql_fetch_array($result))
     503    {
     504      if (in_array($row['Field'], $all_fields))
     505      {
     506        $column = $row['Field'];
     507        $column.= ' '.$row['Type'];
     508
     509        $nullable = true;
     510        if (!isset($row['Null']) or $row['Null'] == '' or $row['Null']=='NO')
     511        {
     512          $column.= ' NOT NULL';
     513          $nullable = false;
     514        }
     515        if (isset($row['Default']))
     516        {
     517          $column.= " default '".$row['Default']."'";
     518        }
     519        elseif ($nullable)
     520        {
     521          $column.= " default NULL";
     522        }
     523        if (isset($row['Collation']) and $row['Collation'] != 'NULL')
     524        {
     525          $column.= " collate '".$row['Collation']."'";
     526        }
     527        array_push($columns, $column);
     528      }
     529    }
     530
     531    $temporary_tablename = $tablename.'_'.micro_seconds();
     532
     533    $query = '
     534CREATE TABLE '.$temporary_tablename.'
     535(
     536  '.implode(",\n  ", $columns).',
     537  UNIQUE KEY the_key ('.implode(',', $dbfields['primary']).')
     538)';
     539
     540    pwg_query($query);
     541    mass_inserts($temporary_tablename, $all_fields, $datas);
     542    if ( $flags & MASS_UPDATES_SKIP_EMPTY )
     543      $func_set = create_function('$s', 'return "t1.$s = IFNULL(t2.$s, t1.$s)";');
    501544    else
    502     {
    503       // creation of the temporary table
    504       $query = '
    505 SHOW FULL COLUMNS FROM '.$tablename.'
    506 ;';
    507       $result = pwg_query($query);
    508       $columns = array();
    509       $all_fields = array_merge($dbfields['primary'], $dbfields['update']);
    510       while ($row = mysql_fetch_array($result))
    511       {
    512         if (in_array($row['Field'], $all_fields))
    513         {
    514           $column = $row['Field'];
    515           $column.= ' '.$row['Type'];
    516 
    517           $nullable = true;
    518           if (!isset($row['Null']) or $row['Null'] == '' or $row['Null']=='NO')
    519           {
    520             $column.= ' NOT NULL';
    521             $nullable = false;
    522           }
    523           if (isset($row['Default']))
    524           {
    525             $column.= " default '".$row['Default']."'";
    526           }
    527           elseif ($nullable)
    528           {
    529             $column.= " default NULL";
    530           }
    531           if (isset($row['Collation']) and $row['Collation'] != 'NULL')
    532           {
    533             $column.= " collate '".$row['Collation']."'";
    534           }
    535           array_push($columns, $column);
    536         }
    537       }
    538 
    539       $temporary_tablename = $tablename.'_'.micro_seconds();
    540 
    541       $query = '
    542   CREATE TABLE '.$temporary_tablename.'
    543   (
    544   '.implode(",\n", $columns).',
    545   UNIQUE KEY the_key ('.implode(',', $dbfields['primary']).')
    546   )
    547 ;';
    548 
    549       pwg_query($query);
    550       mass_inserts($temporary_tablename, $all_fields, $datas);
    551       // update of images table by joining with temporary table
    552       $query = '
     545      $func_set = create_function('$s', 'return "t1.$s = t2.$s";');
     546
     547    // update of images table by joining with temporary table
     548    $query = '
    553549UPDATE '.$tablename.' AS t1, '.$temporary_tablename.' AS t2
    554550  SET '.
    555         implode(
    556           "\n    , ",
    557           array_map(
    558             create_function('$s', 'return "t1.$s = t2.$s";'),
    559             $dbfields['update']
    560             )
    561           ).'
     551      implode(
     552        "\n    , ",
     553        array_map($func_set,$dbfields['update'])
     554        ).'
    562555  WHERE '.
    563         implode(
    564           "\n    AND ",
    565           array_map(
    566             create_function('$s', 'return "t1.$s = t2.$s";'),
    567             $dbfields['primary']
    568             )
    569           ).'
    570   ;';
    571       pwg_query($query);
    572       $query = '
    573 DROP TABLE '.$temporary_tablename.'
    574 ;';
    575       pwg_query($query);
    576     }
     556      implode(
     557        "\n    AND ",
     558        array_map(
     559          create_function('$s', 'return "t1.$s = t2.$s";'),
     560          $dbfields['primary']
     561          )
     562        );
     563    pwg_query($query);
     564    $query = '
     565DROP TABLE '.$temporary_tablename;
     566    pwg_query($query);
    577567  }
    578568}
     
    588578SELECT id, if(id_uppercat is null,\'\',id_uppercat) AS id_uppercat, uppercats, rank, global_rank
    589579  FROM '.CATEGORIES_TABLE.'
    590   ORDER BY id_uppercat,rank,name
    591 ;';
     580  ORDER BY id_uppercat,rank,name';
    592581
    593582  $cat_map = array();
     
    658647  if (!in_array($value, array('true', 'false')))
    659648  {
     649    trigger_error("set_cat_visible invalid param $value", E_USER_WARNING);
    660650    return false;
    661651  }
     
    668658UPDATE '.CATEGORIES_TABLE.'
    669659  SET visible = \'true\'
    670   WHERE id IN ('.implode(',', $uppercats).')
    671 ;';
     660  WHERE id IN ('.implode(',', $uppercats).')';
    672661    pwg_query($query);
    673662  }
     
    679668UPDATE '.CATEGORIES_TABLE.'
    680669  SET visible = \'false\'
    681   WHERE id IN ('.implode(',', $subcats).')
    682 ;';
     670  WHERE id IN ('.implode(',', $subcats).')';
    683671    pwg_query($query);
    684672  }
     
    696684  if (!in_array($value, array('public', 'private')))
    697685  {
     686    trigger_error("set_cat_status invalid param $value", E_USER_WARNING);
    698687    return false;
    699688  }
     
    717706UPDATE '.CATEGORIES_TABLE.'
    718707  SET status = \'private\'
    719   WHERE id IN ('.implode(',', $subcats).')
    720 ;';
     708  WHERE id IN ('.implode(',', $subcats).')';
    721709    pwg_query($query);
    722710  }
     
    15831571
    15841572  // List all tables
    1585   $query = 'SHOW TABLES LIKE \''.$prefixeTable.'%\';';
     1573  $query = 'SHOW TABLES LIKE \''.$prefixeTable.'%\'';
    15861574  $result = pwg_query($query);
    15871575  while ($row = mysql_fetch_array($result))
     
    15911579
    15921580  // Repair all tables
    1593   $query = 'REPAIR TABLE '.implode(', ', $all_tables).';';
     1581  $query = 'REPAIR TABLE '.implode(', ', $all_tables);
    15941582  $mysql_rc = pwg_query($query);
    15951583
     
    16171605
    16181606  // Optimize all tables
    1619   $query = 'OPTIMIZE TABLE '.implode(', ', $all_tables).';';
     1607  $query = 'OPTIMIZE TABLE '.implode(', ', $all_tables);
    16201608  $mysql_rc = $mysql_rc && pwg_query($query);
    16211609  if ($mysql_rc)
     
    18331821  $query = '
    18341822UPDATE '.USER_CACHE_TABLE.'
    1835   SET need_update = \'true\'
    1836 ;';
     1823  SET need_update = \'true\'';
    18371824  pwg_query($query);
    18381825  trigger_action('invalidate_user_cache');
  • trunk/admin/site_update.php

    r2344 r2491  
    4343SELECT galleries_url
    4444  FROM '.SITES_TABLE.'
    45   WHERE id = '.$site_id.'
    46 ;';
     45  WHERE id = '.$site_id;
    4746list($site_url) = mysql_fetch_row(pwg_query($query));
    4847if (!isset($site_url))
     
    140139  $start = get_moment();
    141140  // which categories to update ?
    142   $cat_ids = array();
    143 
    144141  $query = '
    145142SELECT id, uppercats, global_rank, status, visible
     
    162159    }
    163160  }
    164   $query.= '
    165 ;';
    166   $result = pwg_query($query);
    167 
    168   $db_categories = array();
    169   while ($row = mysql_fetch_array($result))
    170   {
    171     $db_categories[$row['id']] = $row;
    172   }
     161  $db_categories = hash_from_query($query, 'id');
    173162
    174163  // get categort full directories in an array for comparison with file
     
    195184  $query = '
    196185SELECT id
    197   FROM '.CATEGORIES_TABLE.'
    198 ;';
     186  FROM '.CATEGORIES_TABLE;
    199187  $result = pwg_query($query);
    200188  while ($row = mysql_fetch_array($result))
     
    207195SELECT id_uppercat, MAX(rank)+1 AS next_rank
    208196  FROM '.CATEGORIES_TABLE.'
    209   GROUP BY id_uppercat
    210 ;';
     197  GROUP BY id_uppercat';
    211198  $result = pwg_query($query);
    212199  while ($row = mysql_fetch_array($result))
     
    223210  $query = '
    224211SELECT IF(MAX(id)+1 IS NULL, 1, MAX(id)+1) AS next_id
    225   FROM '.CATEGORIES_TABLE.'
    226 ;';
     212  FROM '.CATEGORIES_TABLE;
    227213  list($next_id) = mysql_fetch_array(pwg_query($query));
    228214
     
    389375        80,
    390376        "\n"
    391         ).')
    392 ;';
    393     $result = pwg_query($query);
    394     while ($row = mysql_fetch_array($result))
    395     {
    396       $db_elements[$row['id']] = $row['path'];
    397     }
     377        ).')';
     378    $db_elements = simple_hash_from_query($query, 'id', 'path');
    398379
    399380    // searching the unvalidated waiting elements (they must not be taken into
     
    404385  WHERE storage_category_id IN (
    405386'.wordwrap(implode(', ', $cat_ids), 80, "\n").')
    406     AND validated = \'false\'
    407 ;';
     387    AND validated = \'false\'';
    408388    $result = pwg_query($query);
    409389    while ($row = mysql_fetch_array($result))
     
    422402  $query = '
    423403SELECT IF(MAX(id)+1 IS NULL, 1, MAX(id)+1) AS next_element_id
    424   FROM '.IMAGES_TABLE.'
    425 ;';
     404  FROM '.IMAGES_TABLE;
    426405  list($next_element_id) = mysql_fetch_array(pwg_query($query));
    427406
     
    565544  WHERE storage_category_id IN (
    566545'.wordwrap(implode(', ', $cat_ids), 80, "\n").')
    567     AND validated = \'true\'
    568 ;';
     546    AND validated = \'true\'';
    569547    $result = pwg_query($query);
    570548
     
    586564  FROM '.IMAGES_TABLE.'
    587565  WHERE storage_category_id = '.$row['storage_category_id'].'
    588     AND file = \''.$row['file'].'\'
    589 ;';
     566    AND file = \''.$row['file'].'\'';
    590567      list($data['id']) = mysql_fetch_array(pwg_query($query));
    591568
     
    724701// |                          synchronize metadata                         |
    725702// +-----------------------------------------------------------------------+
    726 if (isset($_POST['submit']) and preg_match('/^metadata/', $_POST['sync'])
     703if (isset($_POST['submit']) and isset($_POST['sync_meta'])
    727704         and !$general_failure)
    728705{
    729706  // sync only never synchronized files ?
    730   if ($_POST['sync'] == 'metadata_new')
    731   {
    732     $opts['only_new'] = true;
    733   }
    734   else
    735   {
    736     $opts['only_new'] = false;
    737   }
     707  $opts['only_new'] = isset($_POST['meta_all']) ? false : true;
    738708  $opts['category_id'] = '';
    739709  $opts['recursive'] = true;
     
    777747    AND id IN (
    778748'.wordwrap(implode(', ', $image_ids), 80, "\n").'
    779 )
    780 ;';
    781 
    782     $result = pwg_query($query);
    783     while ($row = mysql_fetch_array($result))
    784     {
    785       array_push($has_high_images, $row['id']);
    786     }
     749)';
     750    $has_high_images = array_from_query($query, 'id' );
    787751  }
    788752
     
    844808            )
    845809          ),
    846         $datas
     810        $datas,
     811        isset($_POST['meta_empty_overrides']) ? 0 : MASS_UPDATES_SKIP_EMPTY
    847812        );
    848813    }
     
    894859// |                        introduction : choices                         |
    895860// +-----------------------------------------------------------------------+
    896 if (!isset($_POST['submit']) or (isset($simulate) and $simulate))
    897 {
    898   if (isset($simulate) and $simulate)
    899   {
    900     $tpl_introduction = array(
    901         'sync'  => $_POST['sync'],
    902         'display_info' => isset($_POST['display_info']) and $_POST['display_info']==1,
    903         'add_to_caddie' => isset($_POST['add_to_caddie']) and $_POST['add_to_caddie']==1,
    904         'subcats_included' => isset($_POST['subcats-included']) and $_POST['subcats-included']==1,
    905         'privacy_level_selected' => (int)@$_POST['privacy_level'],
    906       );
    907 
    908     if (isset($_POST['cat']) and is_numeric($_POST['cat']))
    909     {
    910       $cat_selected = array($_POST['cat']);
    911     }
    912     else
    913     {
    914       $cat_selected = array();
    915     }
     861if (isset($_POST['submit']))
     862{
     863  $tpl_introduction = array(
     864      'sync'  => $_POST['sync'],
     865      'sync_meta'  => isset($_POST['sync_meta']) ? true : false,
     866      'display_info' => isset($_POST['display_info']) and $_POST['display_info']==1,
     867      'add_to_caddie' => isset($_POST['add_to_caddie']) and $_POST['add_to_caddie']==1,
     868      'subcats_included' => isset($_POST['subcats-included']) and $_POST['subcats-included']==1,
     869      'privacy_level_selected' => (int)@$_POST['privacy_level'],
     870      'meta_all'  => isset($_POST['meta_all']) ? true : false,
     871      'meta_empty_overrides'  => isset($_POST['meta_empty_overrides']) ? true : false,
     872    );
     873
     874  if (isset($_POST['cat']) and is_numeric($_POST['cat']))
     875  {
     876    $cat_selected = array($_POST['cat']);
    916877  }
    917878  else
    918879  {
    919     $tpl_introduction = array(
    920         'sync'  => 'dirs',
    921         'display_info' => false,
    922         'add_to_caddie' => false,
    923         'subcats_included' => true,
    924         'privacy_level_selected' => 0,
    925       );
    926 
    927880    $cat_selected = array();
    928881  }
    929 
    930   $tpl_introduction['privacy_level_options']=array();
    931   foreach ($conf['available_permission_levels'] as $level)
    932   {
    933     $tpl_introduction['privacy_level_options'][$level] = l10n( sprintf('Level %d', $level) );
    934   }
    935 
    936   $template->assign('introduction', $tpl_introduction);
    937 
    938   $query = '
     882}
     883else
     884{
     885  $tpl_introduction = array(
     886      'sync'  => 'dirs',
     887      'sync_meta'  => true,
     888      'display_info' => false,
     889      'add_to_caddie' => false,
     890      'subcats_included' => true,
     891      'privacy_level_selected' => 0,
     892      'meta_all'  => false,
     893      'meta_empty_overrides'  => false,
     894    );
     895
     896  $cat_selected = array();
     897}
     898
     899$tpl_introduction['privacy_level_options']=array();
     900foreach ($conf['available_permission_levels'] as $level)
     901{
     902  $tpl_introduction['privacy_level_options'][$level] = l10n( sprintf('Level %d', $level) );
     903}
     904
     905$template->assign('introduction', $tpl_introduction);
     906
     907$query = '
    939908SELECT id,name,uppercats,global_rank
    940909  FROM '.CATEGORIES_TABLE.'
    941   WHERE site_id = '.$site_id.'
    942 ;';
    943   display_select_cat_wrapper($query,
    944                              $cat_selected,
    945                              'category_options',
    946                              false);
    947 }
     910  WHERE site_id = '.$site_id;
     911display_select_cat_wrapper($query,
     912                           $cat_selected,
     913                           'category_options',
     914                           false);
     915
    948916
    949917if (count($errors) > 0)
  • trunk/admin/template/yoga/admin/site_update.tpl

    r2426 r2491  
    5959<form action="" method="post" id="update">
    6060
    61   <fieldset id="syncFiles">
    62     <legend>{'update_sync_files'|@translate}</legend>
    63     <ul>
    64       <li><label><input type="radio" name="sync" value="dirs" {if 'dirs'==$introduction.sync}checked="checked"{/if}/> {'update_sync_dirs'|@translate}</label></li>
    65       <li><label><input type="radio" name="sync" value="files" {if 'files'==$introduction.sync}checked="checked"{/if}/> {'update_sync_all'|@translate}</label></li>
    66       <li><label><input type="checkbox" name="display_info" value="1" {if $introduction.display_info}checked="checked"{/if}/> {'update_display_info'|@translate}</label></li>
    67       <li><label><input type="checkbox" name="add_to_caddie" value="1" {if $introduction.add_to_caddie}checked="checked"{/if}/> {'add new elements to caddie'|@translate}</label></li>
    68       <li><label>{'Minimum privacy level'|@translate} <select name="privacy_level">{html_options options=$introduction.privacy_level_options selected=$introduction.privacy_level_selected}</select></label></li>
    69     </ul>
    70   </fieldset>
     61        <fieldset id="syncFiles">
     62                <legend>{'update_sync_files'|@translate}</legend>
     63                <ul>
     64                        <li><label><input type="radio" name="sync" value="" {if empty($introduction.sync)}checked="checked"{/if}/> {'nothing'|@translate}</label></li>
     65                        <li><label><input type="radio" name="sync" value="dirs" {if 'dirs'==$introduction.sync}checked="checked"{/if}/> {'update_sync_dirs'|@translate}</label></li>
    7166
    72   <fieldset id="syncMetadata">
    73     <legend>{'update_sync_metadata'|@translate}</legend>
    74     {'update_used_metadata'|@translate} : {$METADATA_LIST}.<br/>
    75     <ul>
    76       <li><label><input type="radio" name="sync" value="metadata_new" {if 'metadata_new'==$introduction.sync}checked="checked"{/if}/> {'update_sync_metadata_new'|@translate}</label></li>
    77       <li><label><input type="radio" name="sync" value="metadata_all" {if 'metadata_all'==$introduction.sync}checked="checked"{/if}/> {'update_sync_metadata_all'|@translate}</label></li>
    78     </ul>
    79   </fieldset>
     67                        <li><label><input type="radio" name="sync" value="files" {if 'files'==$introduction.sync}checked="checked"{/if}/> {'update_sync_all'|@translate}</label>
     68                                <ul style="padding-left:3em">
     69                                        <li><label><input type="checkbox" name="display_info" value="1" {if $introduction.display_info}checked="checked"{/if}/> {'update_display_info'|@translate}</label></li>
     70                                        <li><label><input type="checkbox" name="add_to_caddie" value="1" {if $introduction.add_to_caddie}checked="checked"{/if}/> {'add new elements to caddie'|@translate}</label></li>
     71                                        <li><label>{'Minimum privacy level'|@translate} <select name="privacy_level">{html_options options=$introduction.privacy_level_options selected=$introduction.privacy_level_selected}</select></label></li>
     72                                </ul>
     73                        </li>
     74                </ul>
     75        </fieldset>
     76
     77        <fieldset id="syncMetadata">
     78                <legend>{'update_sync_metadata'|@translate}</legend>
     79                <label><input type="checkbox" name="sync_meta" {if $introduction.sync_meta}checked="checked"{/if}/> {'synchronize metadata'|@translate} ({$METADATA_LIST})</label></li>
     80                <ul style="padding-left:3em">
     81                        <li>
     82                                <label><input type="checkbox" name="meta_all" {if $introduction.meta_all}checked="checked"{/if}/> {'update_sync_metadata_all'|@translate}</label>
     83                        </li>
     84                        <li>
     85                                <label><input type="checkbox" name="meta_empty_overrides" {if $introduction.meta_empty_overrides}checked="checked"{/if}/> {'overrides existing values with empty ones'|@translate}</label>
     86                        </li>
     87                </ul>
     88        </fieldset>
    8089
    8190  <fieldset id="syncSimulate">
  • trunk/language/en_UK/admin.lang.php

    r2482 r2491  
    447447$lang['update_sync_metadata'] = 'synchronize files metadata with database elements informations';
    448448$lang['update_sync_metadata_all'] = 'even already synchronized elements';
    449 $lang['update_sync_metadata_new'] = 'only never synchronized elements';
    450449$lang['update_used_metadata'] = 'Used metadata';
    451450$lang['update_wrong_dirname_info'] = 'The name of directories and files must be composed of letters, figures, "-", "_" or "."';
     
    661660$lang['link_info_image'] = 'Modify information';
    662661$lang['edit category informations'] = 'edit category informations';
     662$lang['nothing'] = 'nothing';
     663$lang['overrides existing values with empty ones'] = 'overrides existing values with empty ones';
    663664?>
  • trunk/language/es_ES/admin.lang.php

    r2482 r2491  
    448448$lang['update_sync_metadata'] = 'sincronizar las informaciones de los elementos en la base de datos a partir de los méta-datos de los ficheros';
    449449$lang['update_sync_metadata_all'] = 'hasta los elementos ya sincronizados';
    450 $lang['update_sync_metadata_new'] = 'unicamente los elementos jamás sincronizados';
    451450$lang['update_used_metadata'] = 'Méta-datos empleadas';
    452451$lang['update_wrong_dirname_info'] = 'El nombre de los repertorios y de los ficheros debe estar constituido sólo por letras, por cifras, de "-", "_" y "."';
     
    667666$lang['link_info_image'] = 'Modificar las informaciones';
    668667$lang['edit category informations'] = 'editar las informaciones de esta categoría';
     668$lang['nothing'] = 'nada';
     669/* TODO */ $lang['overrides existing values with empty ones'] = 'overrides existing values with empty ones';
    669670?>
  • trunk/language/fr_FR/admin.lang.php

    r2482 r2491  
    447447$lang['update_sync_metadata'] = 'synchroniser les informations des éléments dans la base de données à partir des méta-données des fichiers';
    448448$lang['update_sync_metadata_all'] = 'même les éléments déjà synchronisés';
    449 $lang['update_sync_metadata_new'] = 'uniquement les éléments jamais synchronisés';
    450449$lang['update_used_metadata'] = 'Méta-données employées';
    451450$lang['update_wrong_dirname_info'] = 'Le nom des répertoires et des fichiers ne doit être constitué que de lettres, de chiffres, de "-", "_" et "."';
     
    650649$lang['conf_extents'] = 'Templates (modèles)';
    651650$lang['extend_for_templates'] = 'Etendre les templates';
    652 $lang['Replacement of original templates'] =
    653  'Remplacement des templates d\'origine par vos templates adaptés du dossier template-extension';
     651$lang['Replacement of original templates'] = 'Remplacement des templates d\'origine par vos templates adaptés du dossier template-extension';
    654652$lang['Replacers'] = 'Remplaçants (templates modifiés)';
    655653$lang['Original templates'] = 'Templates d\'origine';
     
    661659$lang['link_info_image'] = 'Modifier les informations';
    662660$lang['edit category informations'] = 'éditer les informations de cette catégorie';
     661$lang['nothing'] = 'rien';
     662/* TODO */ $lang['overrides existing values with empty ones'] = 'overrides existing values with empty ones';
    663663?>
  • trunk/language/it_IT/admin.lang.php

    r2482 r2491  
    447447$lang['update_sync_metadata'] = 'sincronizzare gli elementi della base dati con le informazioni presenti nei metadati dei files';
    448448$lang['update_sync_metadata_all'] = 'anche gli elementi già sincronizzati';
    449 $lang['update_sync_metadata_new'] = 'solo gli elementi mai sincronizzati';
    450449$lang['update_used_metadata'] = 'Metadati usati';
    451450$lang['update_wrong_dirname_info'] = 'Il nome delle directory e dei files deve essere composto da lettere, numeri, "-", "_" o "."';
     
    650649$lang['conf_extents'] = 'Templates (modelli)';
    651650$lang['extend_for_templates'] = 'Estendere i templates';
    652 $lang['Replacement of original templates'] =
    653  'Sostitizione dei templates d\'origine con i vostri templates personalizzati dalla sotto directory template-extension';
     651$lang['Replacement of original templates'] = 'Sostitizione dei templates d\'origine con i vostri templates personalizzati dalla sotto directory template-extension';
    654652$lang['Replacers'] = 'Sostituzione (templates personalizzati)';
    655653$lang['Original templates'] = 'Templates d\'origine';
     
    661659$lang['link_info_image'] = 'Modifica le informazioni';
    662660$lang['edit category informations'] = 'Modificare le informazioni della categoria';
     661/* TODO */ $lang['nothing'] = 'nothing';
     662/* TODO */ $lang['overrides existing values with empty ones'] = 'overrides existing values with empty ones';
    663663?>
  • trunk/language/nl_NL/admin.lang.php

    r2482 r2491  
    448448$lang['update_sync_metadata'] = 'synchronizeer bestands metadata met de database element informatie';
    449449$lang['update_sync_metadata_all'] = 'ook reeds synchronizeerde elementen';
    450 $lang['update_sync_metadata_new'] = 'alleen nooit gesynchronizeerde elementen';
    451450$lang['update_used_metadata'] = 'Gebruikte metadata';
    452451$lang['update_wrong_dirname_info'] = 'De naam van de mappen en bestanden moeten bestaan uit letters, "-", "_" of "."';
     
    667666$lang['link_info_image'] = 'Aanpassen informatie';
    668667$lang['edit category informations'] = 'bewerk categorie informatie';
     668/* TODO */ $lang['nothing'] = 'nothing';
     669/* TODO */ $lang['overrides existing values with empty ones'] = 'overrides existing values with empty ones';
    669670?>
Note: See TracChangeset for help on using the changeset viewer.