source: branches/2.1/admin/languages_installed.php @ 6276

Last change on this file since 6276 was 6276, checked in by plg, 14 years ago

merge r6265 from trunk to branch 2.1

Correct text alignement in .infos, .errors
30px => 53px

File size: 4.3 KB
Line 
1<?php
2// +-----------------------------------------------------------------------+
3// | Piwigo - a PHP based picture gallery                                  |
4// +-----------------------------------------------------------------------+
5// | Copyright(C) 2008-2009 Piwigo Team                  http://piwigo.org |
6// | Copyright(C) 2003-2008 PhpWebGallery Team    http://phpwebgallery.net |
7// | Copyright(C) 2002-2003 Pierrick LE GALL   http://le-gall.net/pierrick |
8// +-----------------------------------------------------------------------+
9// | This program is free software; you can redistribute it and/or modify  |
10// | it under the terms of the GNU General Public License as published by  |
11// | the Free Software Foundation                                          |
12// |                                                                       |
13// | This program is distributed in the hope that it will be useful, but   |
14// | WITHOUT ANY WARRANTY; without even the implied warranty of            |
15// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU      |
16// | General Public License for more details.                              |
17// |                                                                       |
18// | You should have received a copy of the GNU General Public License     |
19// | along with this program; if not, write to the Free Software           |
20// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, |
21// | USA.                                                                  |
22// +-----------------------------------------------------------------------+
23
24if( !defined("PHPWG_ROOT_PATH") )
25{
26  die ("Hacking attempt!");
27}
28
29include_once(PHPWG_ROOT_PATH.'admin/include/languages.class.php');
30
31$template->set_filenames(array('languages' => 'languages_installed.tpl'));
32
33$base_url = get_root_url().'admin.php?page='.$page['page'];
34
35$languages = new languages();
36$languages->get_db_languages();
37$languages->set_tabsheet($page['page']);
38
39//--------------------------------------------------perform requested actions
40if (isset($_GET['action']) and isset($_GET['language']) and !is_adviser())
41{
42  $page['errors'] = $languages->perform_action($_GET['action'], $_GET['language']);
43
44  if (empty($page['errors']))
45  {
46    redirect($base_url);
47  }
48}
49
50// +-----------------------------------------------------------------------+
51// |                     start template output                             |
52// +-----------------------------------------------------------------------+
53$default_language = get_default_language();
54
55$tpl_languages = array();
56
57foreach($languages->fs_languages as $language_id => $language_name)
58{
59  $language = array(
60    'id' => $language_id,
61    'name' => $language_name,
62    'u_action' => $base_url.'&amp;language='.$language_id,
63    );
64
65  if (in_array($language_id, array_keys($languages->db_languages)))
66  {
67    $language['state'] = 'active';
68    $language['deactivable'] = true;
69
70    if (count($languages->db_languages) <= 1)
71    {
72      $language['deactivable'] = false;
73      $language['deactivate_tooltip'] = l10n('Impossible to deactivate this language, you need at least one language.');
74    }
75
76    if ($language_id == $default_language)
77    {
78      $language['deactivable'] = false;
79      $language['deactivate_tooltip'] = l10n('Impossible to deactivate this language, first set another language as default.');
80    }
81  }
82  else
83  {
84    $language['state'] = 'inactive';
85  }
86
87  if ($language_id == $default_language)
88  {
89    $language['is_default'] = true;
90    array_unshift($tpl_languages, $language);
91  }
92  else
93  {
94    $language['is_default'] = false;
95    array_push($tpl_languages, $language);
96  }
97}
98
99$template->assign(
100  array(
101    'languages' => $tpl_languages,
102    )
103  );
104$template->append('language_states', 'active');
105$template->append('language_states', 'inactive');
106
107
108$missing_language_ids = array_diff(
109    array_keys($languages->db_languages),
110    array_keys($languages->fs_languages)
111  );
112
113foreach($missing_language_ids as $language_id)
114{
115  $query = '
116UPDATE '.USER_INFOS_TABLE.'
117  SET language = "'.get_default_language().'"
118  WHERE language = "'.$language_id.'"
119;';
120  pwg_query($query);
121
122  $query = "
123DELETE
124  FROM ".LANGUAGES_TABLE."
125  WHERE id= '".$language_id."'
126;";
127  pwg_query($query);
128}
129
130$template->assign_var_from_handle('ADMIN_CONTENT', 'languages');
131?>
Note: See TracBrowser for help on using the repository browser.