From 8b5ccd302bd1497de721a25e4ce086bebf95173f Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Sun, 08 Jun 2008 15:32:42 -0400
Subject: [PATCH] Fixed a problem with the logout when the php session has ended.

---
 interface/web/admin/language_add.php |   10 +++++-----
 1 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/interface/web/admin/language_add.php b/interface/web/admin/language_add.php
index 3b66fb6..dc03f86 100644
--- a/interface/web/admin/language_add.php
+++ b/interface/web/admin/language_add.php
@@ -30,11 +30,8 @@
 require_once('../../lib/config.inc.php');
 require_once('../../lib/app.inc.php');
 
-// Checking permissions for the module
-if(!stristr($_SESSION['s']['user']['modules'],'admin')) {
-	header('Location: ../index.php');
-	exit;
-}
+//* Check permissions for module
+$app->auth->check_module_permissions('admin');
 
 //* This is only allowed for administrators
 if(!$app->auth->is_admin()) die('only allowed for administrators.');
@@ -49,6 +46,8 @@
 $error = '';
 $msg = '';
 $selected_language = (isset($_REQUEST['lng_select']))?substr($_REQUEST['lng_select'],0,2):'en';
+if(!preg_match("/^[a-z]{2}$/i", $selected_language)) die('unallowed characters in selected language name.');
+
 $handle = opendir(ISPC_ROOT_PATH.'/lib/lang/'); 
 while ($file = readdir ($handle)) { 
     if ($file != '.' && $file != '..') {
@@ -68,6 +67,7 @@
 	if(!preg_match("/^[a-z]{2}$/i", $lng_new)) die('unallowed characters in language name.');
 	
 	//* Make a copy of every language file
+	copy(ISPC_WEB_PATH."/$module/lib/lang/$selected_language.lng",ISPC_WEB_PATH."/$module/lib/lang/$lng_new.lng");
 	$bgcolor = '#FFFFFF';
 	$language_files_list = array();
 	$handle = @opendir(ISPC_WEB_PATH); 

--
Gitblit v1.9.1