Skip to content

Commit

Permalink
feature 1535: apply the plugin/theme managers look&feel to language m…
Browse files Browse the repository at this point in the history
…anager.

git-svn-id: http://piwigo.org/svn/trunk@5496 68402e56-0260-453c-a942-63ccdbb3a9ee
  • Loading branch information
plegall committed Mar 31, 2010
1 parent 30500c8 commit 8a7a223
Show file tree
Hide file tree
Showing 6 changed files with 100 additions and 35 deletions.
53 changes: 46 additions & 7 deletions admin/languages_installed.php
Expand Up @@ -52,17 +52,56 @@
// +-----------------------------------------------------------------------+
$default_language = get_default_language();

$tpl_languages = array();

foreach($languages->fs_languages as $language_id => $language_name)
{
$template->append('languages', array(
'ID' => $language_id,
'NAME' => $language_name,
'U_ACTION' => $base_url.'&language='.$language_id,
'STATE' => isset($languages->db_languages[$language_id]) ? 'active' : '',
'IS_DEFAULT' => $language_id == $default_language,
$language = array(
'id' => $language_id,
'name' => $language_name,
'u_action' => $base_url.'&language='.$language_id,
);

if (in_array($language_id, array_keys($languages->db_languages)))
{
$language['state'] = 'active';
$language['deactivable'] = true;

if (count($languages->db_languages) <= 1)
{
$language['deactivable'] = false;
$language['deactivate_tooltip'] = l10n('Impossible to deactivate this language, you need at least one language.');
}

if ($language_id == $default_language)
{
$language['deactivable'] = false;
$language['deactivate_tooltip'] = l10n('Impossible to deactivate this language, first set another language as default.');
}
}
else
{
$language['state'] = 'inactive';
}

if ($language_id == $default_language)
{
$language['is_default'] = true;
array_unshift($tpl_languages, $language);
}
else
{
array_push($tpl_languages, $language);
}
}

$template->assign(
array(
'languages' => $tpl_languages,
)
);
}
$template->append('language_states', 'active');
$template->append('language_states', 'inactive');


$missing_language_ids = array_diff(
Expand Down
4 changes: 4 additions & 0 deletions admin/themes/clear/theme.css
Expand Up @@ -236,3 +236,7 @@ html>body #menubar {min-height:477px; height:477px;} /* IE 7 and modern browsers

.pluginBox {background-color:#ddd;color:#333}
.pluginBoxNameCell {font-weight:bold;}

.languageBox {background-color:#ddd;}
.languageName {color:black;}
.languageDefault {background-color:#dbe8f3;}
6 changes: 6 additions & 0 deletions admin/themes/default/default-layout.css
Expand Up @@ -808,3 +808,9 @@ h2:lang(en) { text-transform:capitalize; }
.pluginBox table {width:99%}
.pluginBox td {text-align:left;}
.pluginBoxNameCell {width:150px; vertical-align:top;}

.languageBoxes {min-height:0;text-align:left;}
.languageBox {display:inline-table; text-align:center; width:200px; height:40px; margin:5px; -moz-border-radius:5px; overflow:hidden; }
.languageName {font-size:1.1em; margin:5px 0;}
.languageActions {display: table-row; font-size:12px; }
.languageActions DIV {display: table-cell; vertical-align: middle; line-height:18px; }
2 changes: 1 addition & 1 deletion admin/themes/default/template/footer.tpl
Expand Up @@ -45,7 +45,7 @@
{literal}
<script type='text/javascript'>
$(function() {
$('#pwgHead A, #footer A, .themeActions A, .themeActions SPAN').tipTip({
$('#pwgHead A, #footer A, .themeActions A, .themeActions SPAN, .languageActions A, .languageActions SPAN').tipTip({
'delay' : 0,
'fadeIn' : 200,
'fadeOut' : 200,
Expand Down
64 changes: 38 additions & 26 deletions admin/themes/default/template/languages_installed.tpl
Expand Up @@ -2,33 +2,45 @@
<h2>{'Installed Languages'|@translate}</h2>
</div>

<table class="table2 languages">
<thead>
<tr class="throw">
<td>{'Language'|@translate}</td>
<td>{'Actions'|@translate}</td>
</tr>
</thead>
{foreach from=$language_states item=language_state}
<fieldset>
<legend>
{if $language_state == 'active'}
{'Active Languages'|@translate}

{foreach from=$languages item=language name=languages_loop}
<tr class="{if $smarty.foreach.languages_loop.index is odd}row1{else}row2{/if}">
<td class="{$language.STATE}">
{$language.NAME}
{if $language.IS_DEFAULT}<i>({'Default'|@translate})</i>{/if}
</td>
<td style="text-align: center;">
{if !$language.IS_DEFAULT}
{if $language.STATE == 'active' or $language.STATE == 'missing'}
<a href="{$language.U_ACTION}&amp;action=deactivate">{'Deactivate'|@translate}</a> |
<a href="{$language.U_ACTION}&amp;action=set_default">{'Default'|@translate}</a>
{else}
<a href="{$language.U_ACTION}&amp;action=activate">{'Activate'|@translate}</a> |
<a href="{$language.U_ACTION}&amp;action=delete" onclick="return confirm('{'Are you sure?'|@translate|@escape:'javascript'}');">{'Delete'|@translate}</a>
{elseif $language_state == 'inactive'}
{'Inactive Languages'|@translate}

{/if}
</legend>
<div class="languageBoxes">
{foreach from=$languages item=language}
{if $language.state == $language_state}
<div class="languageBox{if $language.is_default} languageDefault{/if}">
<div class="languageName">{$language.name}{if $language.is_default} <em>({'default'|@translate})</em>{/if}</div>
<div class="languageActions">
<div>
{if $language_state == 'active'}
{if $language.deactivable}
<a href="{$language.u_action}&amp;action=deactivate" title="{'Forbid this language to users'|@translate}">{'Deactivate'|@translate}</a>
{else}
<span title="{$language.deactivate_tooltip}">{'Deactivate'|@translate}</span>
{/if}

{if not $language.is_default}
| <a href="{$language.u_action}&amp;action=set_default" title="{'Set as default language for unregistered and new users'|@translate}">{'Default'|@translate}</a>
{/if}
{/if}

{if $language_state == 'inactive'}
<a href="{$language.u_action}&amp;action=activate" title="{'Make this language available to users'|@translate}">{'Activate'|@translate}</a>
| <a href="{$language.u_action}&amp;action=delete" onclick="return confirm('{'Are you sure?'|@translate|@escape:javascript}');" title="{'Delete this language'|@translate}">{'Delete'|@translate}</a>
{/if}
{else}
---
</div>
</div> <!-- languageActions -->
</div> <!-- languageBox -->
{/if}
</td>
</tr>
{/foreach}
</div> <!-- languageBoxes -->
</fieldset>
{/foreach}
</table>
6 changes: 5 additions & 1 deletion admin/themes/roma/theme.css
Expand Up @@ -230,7 +230,7 @@ html>body #menubar {min-height:522px; height:522px;} /* IE 7 and modern browsers

.themeBox {background-color:#333;}
.themeBox IMG {border:1px solid #666;}
.themeName {color:white;}
.themeName {color:#ccc;}
.themeActions A {border-bottom:none;}
.themeDefault {background-color:#555;}

Expand All @@ -242,3 +242,7 @@ html>body #menubar {min-height:522px; height:522px;} /* IE 7 and modern browsers

.pluginBox {background-color:#333;color:#999}
.pluginBoxNameCell {color:#ccc;}

.languageBox {background-color:#333;}
.languageName {color:#ccc;}
.languageDefault {background-color:#555; color:#aaa;}

0 comments on commit 8a7a223

Please sign in to comment.