<?php /**************************************************************************\ * eGroupWare - Setup * * http://www.egroupware.org * * -------------------------------------------- * * This program is free software; you can redistribute it and/or modify it * * under the terms of the GNU General Public License as published by the * * Free Software Foundation; either version 2 of the License, or (at your * * option) any later version. * \**************************************************************************/ /* $Id$ */ $GLOBALS['egw_info'] = array( 'flags' => array( 'noheader' => True, 'nonavbar' => True, 'currentapp' => 'home', 'noapi' => True )); include('./inc/functions.inc.php'); // Authorize the user to use setup app and load the database // Does not return unless user is authorized if (!$GLOBALS['egw_setup']->auth('Config') || @$_POST['cancel']) { Header('Location: index.php'); exit; } $GLOBALS['egw_setup']->loaddb(); if (@$_POST['submit']) { $GLOBALS['egw_setup']->translation->setup_translation_sql(); $GLOBALS['egw_setup']->translation->sql->install_langs(@$_POST['lang_selected'],@$_POST['upgrademethod']); if( !$GLOBALS['egw_setup']->translation->sql->line_rejected ) { Header('Location: index.php'); exit; } } $tpl_root = $GLOBALS['egw_setup']->html->setup_tpl_dir('setup'); $setup_tpl = CreateObject('phpgwapi.Template',$tpl_root); $setup_tpl->set_file(array( 'T_head' => 'head.tpl', 'T_footer' => 'footer.tpl', 'T_alert_msg' => 'msg_alert_msg.tpl', 'T_lang_main' => 'lang_main.tpl' )); $setup_tpl->set_block('T_lang_main','B_choose_method','V_choose_method'); $stage_title = lang('Multi-Language support setup'); $stage_desc = lang('This program will help you upgrade or install different languages for eGroupWare'); $tbl_width = @$newinstall ? '60%' : '80%'; $td_colspan = @$newinstall ? '1' : '2'; $td_align = @$newinstall ? ' align="center"' : ''; $hidden_var1 = @$newinstall ? '<input type="hidden" name="newinstall" value="True" />' : ''; if (!@$newinstall && !isset($GLOBALS['egw_info']['setup']['installed_langs'])) { $GLOBALS['egw_setup']->detection->check_lang(false); // get installed langs } $select_box_desc = lang('Select which languages you would like to use'); $select_box = ''; $languages = get_langs(); uasort($languages,create_function('$a,$b','return strcmp(@$a[\'descr\'],@$b[\'descr\']);')); foreach($languages as $id => $data) { $select_box_langs = @$select_box_langs .'<option value="' . $id . '"' .(@$GLOBALS['egw_info']['setup']['installed_langs'][$id]?' selected="selected"':'').'>' . $data['descr'] . '</option>' ."\n"; } if (!@$newinstall) { $meth_desc = lang('Select which method of upgrade you would like to do'); $blurb_addonlynew = lang('Only add languages that are not in the database already'); $blurb_addmissing = lang('Only add new phrases'); $blurb_dumpold = lang('Delete all old languages and install new ones'); $setup_tpl->set_var('meth_desc',$meth_desc); $setup_tpl->set_var('blurb_addonlynew',$blurb_addonlynew); $setup_tpl->set_var('blurb_addmissing',$blurb_addmissing); $setup_tpl->set_var('blurb_dumpold',$blurb_dumpold); $setup_tpl->set_var('lang_debug',lang('enable for extra debug-messages')); $setup_tpl->parse('V_choose_method','B_choose_method'); } else { $setup_tpl->set_var('V_choose_method',''); } // Rejected Lines if($_POST['debug'] && count($GLOBALS['egw_setup']->translation->sql->line_rejected)) { $str = ''; foreach($GLOBALS['egw_setup']->translation->sql->line_rejected as $badline) { $_f_buffer = split("[/\\]", $badline['appfile']); $str .= lang('Application: %1, File: %2, Line: "%3"','<b>'.$_f_buffer[count($_f_buffer)-3].'</b>', '<b>'.$_f_buffer[count($_f_buffer)-1].'</b>',$badline['line'])."<br />\n"; } $setup_tpl->set_var('V_alert_word', lang('Rejected lines')); $setup_tpl->set_var('V_alert_msg', $str); $alert = TRUE; } $setup_tpl->set_var('stage_title',$stage_title); $setup_tpl->set_var('stage_desc',$stage_desc); $setup_tpl->set_var('tbl_width',$tbl_width); $setup_tpl->set_var('td_colspan',$td_colspan); $setup_tpl->set_var('td_align',$td_align); $setup_tpl->set_var('hidden_var1',$hidden_var1); $setup_tpl->set_var('select_box_desc',$select_box_desc); $setup_tpl->set_var('select_box_langs',$select_box_langs); $setup_tpl->set_var('lang_install',lang('install')); $setup_tpl->set_var('lang_cancel',lang('cancel')); $GLOBALS['egw_setup']->html->show_header("$stage_title",False,'config',$GLOBALS['egw_setup']->ConfigDomain . '(' . $GLOBALS['egw_domain'][$GLOBALS['egw_setup']->ConfigDomain]['db_type'] . ')'); $setup_tpl->pparse('out','T_lang_main'); if($alert) $setup_tpl->pparse('out','T_alert_msg'); $GLOBALS['egw_setup']->html->show_footer(); ?>