parent
79a56c20ba
commit
74f33560d8
@ -1,27 +0,0 @@ |
|||||||
<?php |
|
||||||
/* For licensing terms, see /dokeos_license.txt */ |
|
||||||
|
|
||||||
// including the global dokeos file |
|
||||||
require_once '../inc/global.inc.php'; |
|
||||||
require_once 'sub_language.class.php'; |
|
||||||
/* |
|
||||||
* search a term and return description from a glossary |
|
||||||
*/ |
|
||||||
global $charset; |
|
||||||
$new_language = Security::remove_XSS($_POST['new_language']); |
|
||||||
$language_variable = Security::remove_XSS($_POST['variable_language']); |
|
||||||
$file_language = Security::remove_XSS($_POST['file_language']); |
|
||||||
$id_language = Security::remove_XSS($_POST['id']); |
|
||||||
$sub_language_id = Security::remove_XSS($_POST['sublanguage_id']); |
|
||||||
|
|
||||||
$all_data_of_language=SubLanguageManager::get_all_information_of_sub_language($id_language,$sub_language_id); |
|
||||||
$dokeos_path_folder=api_get_path('SYS_LANG_PATH').$all_data_of_language['dokeos_folder'].'/'.$file_language; |
|
||||||
$all_file_of_directory=SubLanguageManager::get_all_language_variable_in_file($dokeos_path_folder); |
|
||||||
SubLanguageManager::add_file_in_language_directory ($dokeos_path_folder); |
|
||||||
|
|
||||||
//update variable language |
|
||||||
$all_file_of_directory[$language_variable]="\"".mb_convert_encoding($new_language,$charset,'UTF-8')."\";"; |
|
||||||
|
|
||||||
foreach ($all_file_of_directory as $key_value=>$value_info) { |
|
||||||
SubLanguageManager::write_data_in_file ($dokeos_path_folder,$value_info,$key_value); |
|
||||||
} |
|
@ -1,297 +0,0 @@ |
|||||||
<?php |
|
||||||
/* For licensing terms, see /dokeos_license.txt */ |
|
||||||
/** |
|
||||||
================================================================================== |
|
||||||
@author Isaac flores paz <florespaz_isaac@hotmail.com> - Added 9 july of 2009 |
|
||||||
================================================================================== |
|
||||||
*/ |
|
||||||
/* |
|
||||||
============================================================================== |
|
||||||
INIT SECTION |
|
||||||
============================================================================== |
|
||||||
*/ |
|
||||||
|
|
||||||
// name of the language file that needs to be included |
|
||||||
$language_file = 'admin'; |
|
||||||
$cidReset = true; |
|
||||||
require_once '../inc/global.inc.php'; |
|
||||||
require_once 'sub_language.class.php'; |
|
||||||
$this_section=SECTION_PLATFORM_ADMIN; |
|
||||||
|
|
||||||
api_protect_admin_script(); |
|
||||||
$htmlHeadXtra[] = '<script src="../inc/lib/javascript/jquery.js" type="text/javascript" language="javascript"></script>'; //jQuery |
|
||||||
$htmlHeadXtra[] ='<script type="text/javascript"> |
|
||||||
$(document).ready(function() { |
|
||||||
|
|
||||||
$("#sl_original_file").change(function () { |
|
||||||
|
|
||||||
current_action=$("#Loadlanguage").attr("action"); |
|
||||||
current_action=current_action.split("original_file"); |
|
||||||
current_action=current_action[0]; |
|
||||||
current_action=current_action+"original_file="+$(this).attr("value") |
|
||||||
$("#Loadlanguage").attr("action",current_action); |
|
||||||
// |
|
||||||
current_action=$("#Searchlanguage").attr("action"); |
|
||||||
current_action=current_action.split("original_file"); |
|
||||||
current_action=current_action[0]; |
|
||||||
current_action=current_action+"original_file="+$(this).attr("value") |
|
||||||
$("#Searchlanguage").attr("action",current_action); |
|
||||||
}); |
|
||||||
|
|
||||||
$(window).load(function () { |
|
||||||
/*current_action=$("#Loadlanguage").attr("action"); |
|
||||||
current_action=current_action+"&original_file="+$("#sl_original_file").attr("value") |
|
||||||
$("#Loadlanguage").attr("action",current_action);*/ |
|
||||||
}); |
|
||||||
|
|
||||||
$("#sl_original_file option[@value='.Security::remove_XSS($_REQUEST['original_file']).']").attr("selected","selected"); |
|
||||||
|
|
||||||
$(".save").click(function() { |
|
||||||
button_name=$(this).attr("name"); |
|
||||||
button_name=button_name.split("_"); |
|
||||||
button_name=button_name[1]; |
|
||||||
is_id=$("#id_hidden_original_file").attr("value"); |
|
||||||
is_sublanguage_id=$("#id_hidden_sublanguage").attr("value"); |
|
||||||
is_variable_language="$"+button_name; |
|
||||||
is_new_language=$("#txtid_"+button_name).attr("value"); |
|
||||||
if (is_new_language=="undefined") { |
|
||||||
is_new_language="_"; |
|
||||||
} |
|
||||||
is_file_language="'.Security::remove_XSS($_REQUEST['original_file']).'"; |
|
||||||
if (is_new_language.length>0 && is_new_language!="_") { |
|
||||||
$.ajax({ |
|
||||||
contentType: "application/x-www-form-urlencoded", |
|
||||||
beforeSend: function(objeto) { |
|
||||||
$("#div_message_information_id").html("<div class=\"normal-message\"><img src=\'../inc/lib/javascript/indicator.gif\' /></div>"); |
|
||||||
|
|
||||||
}, |
|
||||||
type: "POST", |
|
||||||
url: "../admin/add_by_ajax_sub_language.inc.php", |
|
||||||
data: "new_language="+is_new_language+"&variable_language="+is_variable_language+"&file_language="+is_file_language+"&id="+is_id+"&sublanguage_id="+is_sublanguage_id, |
|
||||||
success: function(datos) { |
|
||||||
$("#div_message_information_id").html("<div class=\"confirmation-message\">'.get_lang('TheNewWordHasBeenAdded').'</div>"); |
|
||||||
|
|
||||||
} }); |
|
||||||
} else { |
|
||||||
$("#div_message_information_id").html("<div class=\"error-message\">'.get_lang('FormHasErrorsPleaseComplete').'</div>"); |
|
||||||
} |
|
||||||
|
|
||||||
|
|
||||||
}); |
|
||||||
|
|
||||||
}); |
|
||||||
</script>'; |
|
||||||
/* |
|
||||||
============================================================================== |
|
||||||
MAIN CODE |
|
||||||
============================================================================== |
|
||||||
*/ |
|
||||||
// setting the name of the tool |
|
||||||
$tool_name = get_lang('CreateSubLanguage'); |
|
||||||
|
|
||||||
// setting breadcrumbs |
|
||||||
$interbreadcrumb[] = array ('url' => 'index.php', 'name' => get_lang('PlatformAdmin')); |
|
||||||
$interbreadcrumb[] = array ('url' => 'languages.php', 'name' => get_lang('PlatformLanguages')); |
|
||||||
|
|
||||||
require_once api_get_path(LIBRARY_PATH).'text.lib.php'; |
|
||||||
require_once api_get_path(LIBRARY_PATH).'formvalidator/FormValidator.class.php'; |
|
||||||
|
|
||||||
if (isset($_GET['id']) && $_GET['id']==strval(intval($_GET['id']))) { |
|
||||||
$language_name=SubLanguageManager::get_name_of_language_by_id ($_GET['id']); |
|
||||||
$all_data_of_language=SubLanguageManager::get_all_information_of_language($_GET['id']); |
|
||||||
$my_language=$language_name; |
|
||||||
if (SubLanguageManager::check_if_exist_language_by_id($_GET['id'])===true) { |
|
||||||
$parent_id=intval($_GET['id']); |
|
||||||
$language_id_exist=true; |
|
||||||
} else { |
|
||||||
$language_id_exist=false; |
|
||||||
} |
|
||||||
} else { |
|
||||||
$language_name=''; |
|
||||||
$language_id_exist=false; |
|
||||||
} |
|
||||||
|
|
||||||
$language_name=get_lang('RegisterTermsOfSubLanguageForLanguage').' ( '.strtolower($language_name).' )'; |
|
||||||
|
|
||||||
// including the header file (which includes the banner itself) |
|
||||||
|
|
||||||
|
|
||||||
$dokeos_path_folder=api_get_path('SYS_LANG_PATH').$all_data_of_language['dokeos_folder']; |
|
||||||
//get file name example : forum.inc.php,gradebook.inc.php |
|
||||||
|
|
||||||
if (!is_dir($dokeos_path_folder) || strlen($all_data_of_language['dokeos_folder'])==0) { |
|
||||||
api_not_allowed(true); |
|
||||||
} |
|
||||||
|
|
||||||
Display :: display_header($language_name); |
|
||||||
|
|
||||||
$all_file_of_directory=SubLanguageManager::get_all_data_of_dokeos_folder ($dokeos_path_folder); |
|
||||||
$load_array_in_select=array(); |
|
||||||
sort($all_file_of_directory); |
|
||||||
foreach ($all_file_of_directory as $value_all_file_of_directory) { |
|
||||||
$load_array_in_select[$value_all_file_of_directory]=$value_all_file_of_directory; |
|
||||||
} |
|
||||||
|
|
||||||
$request_file=''; |
|
||||||
|
|
||||||
if (isset($_POST['original_file']) && $_POST['original_file']!='') { |
|
||||||
$request_file=Security::remove_XSS($_POST['original_file']); |
|
||||||
} |
|
||||||
if (isset($_GET['original_file']) && $_GET['original_file']!='') { |
|
||||||
$request_file=Security::remove_XSS($_GET['original_file']); |
|
||||||
} |
|
||||||
|
|
||||||
/*$form = new FormValidator('Loadlanguage', 'post', 'register_sub_language.php?id='.Security::remove_XSS($_GET['id']).'&original_file='.$request_file); |
|
||||||
$class='plus'; |
|
||||||
$form->addElement('hidden','id_hidden_original_file',Security::remove_XSS($_REQUEST['id']),array('id'=>'id_hidden_original_file')); |
|
||||||
$select_level = array (); |
|
||||||
$radios_results_enabled[] = FormValidator :: createElement ('select', 'original_file', get_lang('File'),$load_array_in_select,array('id'=>'sl_original_file')); |
|
||||||
$radios_results_enabled[] = FormValidator :: createElement ('style_submit_button', 'SubmitLoadLanguage', get_lang('LoadLanguageFile'), 'class="'.$class.'"'); |
|
||||||
$radios_results_enabled[] = FormValidator :: createElement ('text', 'txt_search_word'); |
|
||||||
$radios_results_enabled[] = FormValidator :: createElement ('style_submit_button', 'SubmitSearchLanguage', get_lang('Search'), 'class="search"'); |
|
||||||
$form->addGroup($radios_results_enabled);*/ |
|
||||||
echo '<div class="actions-message" >'; |
|
||||||
echo $language_name; |
|
||||||
echo '</div>'; |
|
||||||
echo '<br/>'; |
|
||||||
/*echo '<div class="actions">'; |
|
||||||
$form->display(); |
|
||||||
echo '</div>';*/ |
|
||||||
|
|
||||||
$html.='<div style="float:left" class="actions" >'; |
|
||||||
$html.='<form style="float:left" id="Loadlanguage" name="Loadlanguage" method="post" action="register_sub_language.php?id='.Security::remove_XSS($_GET['id']).'&sub_language_id='.Security::remove_XSS($_GET['sub_language_id']).'&original_file='.$request_file.'" >'; |
|
||||||
$html.='<input type="hidden" name="id_hidden_original_file" id="id_hidden_original_file" value="'.Security::remove_XSS($_REQUEST['id']).'" />'; |
|
||||||
$html.='<input type="hidden" name="id_hidden_sublanguage" id="id_hidden_sublanguage" value="'.Security::remove_XSS($_REQUEST['sub_language_id']).'" />'; |
|
||||||
$html.='<select id="sl_original_file" name="original_file">'; |
|
||||||
//$html.='<option value="0">'.get_lang('SelectAChoice').'</option>'; |
|
||||||
foreach ($load_array_in_select as $index_radios_results_enabled=>$value_radios_results_enabled) { |
|
||||||
$html.='<option value="'.$value_radios_results_enabled.'">'.$value_radios_results_enabled.'</option>'; |
|
||||||
} |
|
||||||
$html.='</select>'; |
|
||||||
$html.='<button class="plus" name="SubmitLoadLanguage" type="submit">'.get_lang('LoadLanguageFile').'</button>'; |
|
||||||
$html.='</form>'; |
|
||||||
$html.='</div>'; |
|
||||||
|
|
||||||
$html.='<div style="float:left" class="actions">'; |
|
||||||
$html.='<form style="float:left" id="Searchlanguage" name="Searchlanguage" method="post" action="register_sub_language.php?id='.Security::remove_XSS($_GET['id']).'&sub_language_id='.Security::remove_XSS($_GET['sub_language_id']).'&original_file='.$request_file.'" >'; |
|
||||||
$html.=' '.get_lang('OriginalName').' : '; |
|
||||||
$html.='<input name="txt_search_word" type="text" size="30" id="txt_search_word" value="" />'; |
|
||||||
$html.='<button name="SubmitSearchLanguage" class="search" type="submit">'.get_lang('Search').'</button>'; |
|
||||||
$html.='</form>'; |
|
||||||
$html.='</div>'; |
|
||||||
|
|
||||||
echo $html; |
|
||||||
|
|
||||||
echo '<br/>'; |
|
||||||
echo '<br/>'; |
|
||||||
echo '<br/>'; |
|
||||||
//id |
|
||||||
echo '<div id="div_message_information_id"> </div>'; |
|
||||||
echo '<div class="actions-message"><strong>'; |
|
||||||
echo get_lang('AddTermsOfThisSubLanguage'); |
|
||||||
echo '</strong></div>'; |
|
||||||
echo '<br/>'; |
|
||||||
|
|
||||||
//allow see data in sortetable |
|
||||||
if ($_REQUEST['original_file']) { |
|
||||||
|
|
||||||
if (isset($_REQUEST['txt_search_word']) && strlen(trim($_REQUEST['txt_search_word']))==0) { |
|
||||||
unset($list_info); |
|
||||||
$search_data=false; |
|
||||||
} else { |
|
||||||
$search_data=true; |
|
||||||
} |
|
||||||
if($search_data===true) { |
|
||||||
$parent_id=intval($_REQUEST['id']); |
|
||||||
$sub_language_id=intval($_REQUEST['sub_language_id']); |
|
||||||
$get_all_info_of_sub_language=SubLanguageManager::get_all_information_of_sub_language ($parent_id,$sub_language_id); |
|
||||||
$dokeos_path_file=api_get_path('SYS_LANG_PATH').$all_data_of_language['dokeos_folder'].'/'.$request_file; |
|
||||||
|
|
||||||
$dokeos_english_path_file=api_get_path('SYS_LANG_PATH').'english/'.$request_file; |
|
||||||
$dokeos_sub_language_path_file=api_get_path('SYS_LANG_PATH').$get_all_info_of_sub_language['dokeos_folder'].'/'.$request_file; |
|
||||||
if (file_exists($dokeos_sub_language_path_file)) { |
|
||||||
$sub_language_exist=true; |
|
||||||
} else { |
|
||||||
$sub_language_exist=false; |
|
||||||
} |
|
||||||
|
|
||||||
$all_language_variable=SubLanguageManager::get_all_language_variable_in_file ($dokeos_path_file); |
|
||||||
$all_english_language_variable=SubLanguageManager::get_all_language_variable_in_file($dokeos_english_path_file); |
|
||||||
if ($sub_language_exist===true) { |
|
||||||
$get_all_sub_language_variable=SubLanguageManager::get_all_language_variable_in_file($dokeos_sub_language_path_file); |
|
||||||
} |
|
||||||
$i=0; |
|
||||||
foreach ($all_language_variable as $index_language_variable =>$value_language_variable) { |
|
||||||
$use_field_name=substr($index_language_variable,1); |
|
||||||
|
|
||||||
if ($sub_language_exist===true) { |
|
||||||
foreach ($get_all_sub_language_variable as $index_get_all_sub_language_variable =>$value_get_all_sub_language_variable) { |
|
||||||
if ($index_get_all_sub_language_variable==$index_language_variable) { |
|
||||||
$value_sub_language=$value_get_all_sub_language_variable; |
|
||||||
break; |
|
||||||
} else { |
|
||||||
$value_sub_language=''; |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
$value_sub_language=strlen($value_sub_language)>0 ? $value_sub_language : ''; |
|
||||||
|
|
||||||
$obj_text='<textarea tabindex="1" rows="4" cols="40" name="txt_'.$use_field_name.'" id="txtid_'.$use_field_name.'" >'.substr($value_sub_language,1,(strlen($value_sub_language)-3)).'</textarea>'; |
|
||||||
|
|
||||||
$obj_button='<button class="save" type="button" name="btn_'.$use_field_name.'" id="btnid_'.$use_field_name.'" />'.get_lang('Save').'</button>'; |
|
||||||
|
|
||||||
$new_element_html=='<input type="hidden" name="code_language_id" id="code_language_id" value="'.Security::remove_XSS($_GET['id']).'" />'; |
|
||||||
|
|
||||||
if ($i==0) { |
|
||||||
$obj_button=$obj_button.$new_element_html; |
|
||||||
} else { |
|
||||||
$obj_button=$obj_button; |
|
||||||
} |
|
||||||
foreach ($all_english_language_variable as $index_english_language_variable =>$value_english_language_variable) { |
|
||||||
if ($index_english_language_variable==$index_language_variable) { |
|
||||||
$add_english_language_in_array=$value_english_language_variable; |
|
||||||
break; |
|
||||||
} |
|
||||||
} |
|
||||||
//FIRST OPTION substr($index_language_variable,1,strlen($index_language_variable)), |
|
||||||
$list_info[]=array($index_language_variable,substr($add_english_language_in_array,1,(strlen($add_english_language_in_array)-3)),substr($value_language_variable,1,(strlen($value_language_variable)-3)),$obj_text,$obj_button); |
|
||||||
$i++; |
|
||||||
} |
|
||||||
} |
|
||||||
if (isset($_REQUEST['txt_search_word']) && strlen(trim($_REQUEST['txt_search_word']))>0) { |
|
||||||
foreach ($list_info as $index_list_info=>$value_list_info) { |
|
||||||
$search='/'.Security::remove_XSS(trim($_REQUEST['txt_search_word'])).'/i'; |
|
||||||
if (preg_match($search,$value_list_info[2])===0) { |
|
||||||
unset($list_info[$index_list_info]); |
|
||||||
} |
|
||||||
|
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
$parameters=array('id'=>Security::remove_XSS($_GET['id']),'original_file'=>$request_file,'sub_language_id'=>Security::remove_XSS($_GET['sub_language_id'])); |
|
||||||
if (isset($_REQUEST['txt_search_word']) && strlen($_REQUEST['txt_search_word'])>0) { |
|
||||||
$parameters['txt_search_word']=Security::remove_XSS($_REQUEST['txt_search_word']); |
|
||||||
} |
|
||||||
|
|
||||||
$table = new SortableTableFromArrayConfig($list_info, 1,20,'data_info'); |
|
||||||
$table->set_additional_parameters($parameters); |
|
||||||
//$table->set_header(0, ''); |
|
||||||
$table->set_header(0, get_lang('LanguageVariable')); |
|
||||||
$table->set_header(1, get_lang('EnglishName')); |
|
||||||
$table->set_header(2, get_lang('OriginalName')); |
|
||||||
$table->set_header(3, get_lang('SubLanguage'),false); |
|
||||||
$table->set_header(4, get_lang('Edit'),false); |
|
||||||
/*$form_actions = array (); |
|
||||||
$form_actions['addsublanguage'] = get_lang('AddSubLanguage'); |
|
||||||
$table->set_form_actions($form_actions);*/ |
|
||||||
|
|
||||||
$table->display(); |
|
||||||
|
|
||||||
/* |
|
||||||
============================================================================== |
|
||||||
FOOTER |
|
||||||
============================================================================== |
|
||||||
*/ |
|
||||||
|
|
||||||
Display :: display_footer(); |
|
||||||
?> |
|
@ -0,0 +1,285 @@ |
|||||||
|
<?php |
||||||
|
/* For licensing terms, see /dokeos_license.txt */ |
||||||
|
/* |
||||||
|
============================================================================== |
||||||
|
INIT SECTION |
||||||
|
============================================================================== |
||||||
|
*/ |
||||||
|
// name of the language file that needs to be included |
||||||
|
$language_file = 'admin'; |
||||||
|
$cidReset = true; |
||||||
|
require_once '../inc/global.inc.php'; |
||||||
|
require_once 'sub_language.class.php'; |
||||||
|
require_once api_get_path(LIBRARY_PATH).'array.lib.php'; |
||||||
|
$this_section=SECTION_PLATFORM_ADMIN; |
||||||
|
|
||||||
|
api_protect_admin_script(); |
||||||
|
$htmlHeadXtra[] = '<script src="../inc/lib/javascript/jquery.js" type="text/javascript" language="javascript"></script>'; //jQuery |
||||||
|
$htmlHeadXtra[] ='<script type="text/javascript"> |
||||||
|
$(document).ready(function() { |
||||||
|
|
||||||
|
$(".save").click(function() { |
||||||
|
button_name=$(this).attr("name"); |
||||||
|
button_array=button_name.split("|"); |
||||||
|
button_name=button_array[1]; |
||||||
|
file_id=button_array[2]; |
||||||
|
is_variable_language="$"+button_name; |
||||||
|
|
||||||
|
is_new_language=$("#txtid_"+button_name).attr("value"); |
||||||
|
if (is_new_language=="undefined") { |
||||||
|
is_new_language="_"; |
||||||
|
} |
||||||
|
|
||||||
|
if (is_new_language.length>0 && is_new_language!="_" && file_id!="" && button_name!="") { |
||||||
|
$.ajax({ |
||||||
|
contentType: "application/x-www-form-urlencoded", |
||||||
|
beforeSend: function(objeto) { |
||||||
|
$("#div_message_information_id").html("<div class=\"normal-message\"><img src=\'../inc/lib/javascript/indicator.gif\' /></div>"); |
||||||
|
|
||||||
|
}, |
||||||
|
type: "POST", |
||||||
|
url: "../admin/sub_language_ajax.inc.php", |
||||||
|
data: "new_language="+is_new_language+"&variable_language="+is_variable_language+"&file_id="+file_id+"&id="+'.intval($_REQUEST['id']).'+"&sub="+'.intval($_REQUEST['sub_language_id']).', |
||||||
|
success: function(datos) { |
||||||
|
$("#div_message_information_id").html("<div class=\"confirmation-message\">'.get_lang('TheNewWordHasBeenAdded').'</div>"); |
||||||
|
|
||||||
|
} }); |
||||||
|
} else { |
||||||
|
$("#div_message_information_id").html("<div class=\"error-message\">'.get_lang('FormHasErrorsPleaseComplete').'</div>"); |
||||||
|
} |
||||||
|
}); |
||||||
|
}); |
||||||
|
</script>'; |
||||||
|
/* |
||||||
|
============================================================================== |
||||||
|
MAIN CODE |
||||||
|
============================================================================== |
||||||
|
*/ |
||||||
|
// setting the name of the tool |
||||||
|
$tool_name = get_lang('CreateSubLanguage'); |
||||||
|
// setting breadcrumbs |
||||||
|
$interbreadcrumb[] = array ('url' => 'index.php', 'name' => get_lang('PlatformAdmin')); |
||||||
|
$interbreadcrumb[] = array ('url' => 'languages.php', 'name' => get_lang('PlatformLanguages')); |
||||||
|
|
||||||
|
require_once api_get_path(LIBRARY_PATH).'text.lib.php'; |
||||||
|
require_once api_get_path(LIBRARY_PATH).'formvalidator/FormValidator.class.php'; |
||||||
|
|
||||||
|
if (isset($_GET['id']) && $_GET['id']==strval(intval($_GET['id']))) { |
||||||
|
$language_name=SubLanguageManager::get_name_of_language_by_id ($_GET['id']); |
||||||
|
$all_data_of_language=SubLanguageManager::get_all_information_of_language($_GET['id']); |
||||||
|
$my_language=$language_name; |
||||||
|
if (SubLanguageManager::check_if_exist_language_by_id($_GET['id'])===true) { |
||||||
|
$parent_id=intval($_GET['id']); |
||||||
|
$language_id_exist=true; |
||||||
|
} else { |
||||||
|
$language_id_exist=false; |
||||||
|
} |
||||||
|
} else { |
||||||
|
$language_name=''; |
||||||
|
$language_id_exist=false; |
||||||
|
} |
||||||
|
|
||||||
|
$language_name=get_lang('RegisterTermsOfSubLanguageForLanguage').' ( '.strtolower($language_name).' )'; |
||||||
|
$dokeos_path_folder=api_get_path('SYS_LANG_PATH').$all_data_of_language['dokeos_folder']; |
||||||
|
// |
||||||
|
if (!is_dir($dokeos_path_folder) || strlen($all_data_of_language['dokeos_folder'])==0) { |
||||||
|
api_not_allowed(true); |
||||||
|
} |
||||||
|
|
||||||
|
Display :: display_header($language_name); |
||||||
|
|
||||||
|
echo '<div class="actions-message" >'; |
||||||
|
echo $language_name; |
||||||
|
echo '</div>'; |
||||||
|
echo '<br />'; |
||||||
|
|
||||||
|
$html.='<div style="float:left" class="actions">'; |
||||||
|
$html.='<form style="float:left" id="Searchlanguage" name="Searchlanguage" method="post" action="sub_language.php?id='.Security::remove_XSS($_GET['id']).'&sub_language_id='.Security::remove_XSS($_GET['sub_language_id']).'">'; |
||||||
|
$html.=' '.get_lang('OriginalName').' : '; |
||||||
|
$html.='<input name="txt_search_word" type="text" size="50" id="txt_search_word" value="'.Security::remove_XSS($_REQUEST['txt_search_word']).'" />'; |
||||||
|
$html.=" ".'<button name="SubmitSearchLanguage" class="search" type="submit">'.get_lang('Search').'</button>'; |
||||||
|
$html.='</form>'; |
||||||
|
$html.='</div>'; |
||||||
|
echo $html; |
||||||
|
echo '<br /><br /><br /><br />'; |
||||||
|
echo '<div id="div_message_information_id"> </div>'; |
||||||
|
|
||||||
|
/** |
||||||
|
* Search a term in the language |
||||||
|
* @param string the term to search |
||||||
|
* @param bool the search will include the variable definition of the term |
||||||
|
* @param bool the search will include the english language variables |
||||||
|
* @param bool the search will include the parent language variables of the sub language |
||||||
|
* @param bool the search will include the sub language variables |
||||||
|
* @author Julio Montoya |
||||||
|
* |
||||||
|
*/ |
||||||
|
function search_language_term($term, $search_in_variable = true , $search_in_english = true, $search_in_parent = true, $search_in_sub_language= true) { |
||||||
|
//These the $_REQUEST['id'] and the $_REQUEST['sub_language_id'] variables are process in global.inc.php (LOAD LANGUAGE FILES SECTION) |
||||||
|
/* |
||||||
|
These 4 arrays are set in global.inc.php with the condition that will be load from sub_language.php or sub_language_ajax.inc.php |
||||||
|
$english_language_array |
||||||
|
$parent_language_array |
||||||
|
$sub_language_array |
||||||
|
$language_files_to_load |
||||||
|
*/ |
||||||
|
//echo '<pre>'; |
||||||
|
// array with the list of files to load i.e trad4fall, notification, etc set in global.inc.php |
||||||
|
|
||||||
|
global $language_files_to_load, $sub_language_array, $english_language_array, $parent_language_array; |
||||||
|
$language_files_to_load_keys = array_flip($language_files_to_load); |
||||||
|
$array_to_search = $parent_language_array; |
||||||
|
$list_info = array(); |
||||||
|
//echo '<pre>'; |
||||||
|
//print_r($language_files_to_load); |
||||||
|
$term='/'.Security::remove_XSS(trim($_REQUEST['txt_search_word'])).'/i'; |
||||||
|
//@todo optimize this foreach |
||||||
|
foreach ($language_files_to_load as $lang_file) { |
||||||
|
//searching in parent language of the sub language |
||||||
|
if ($search_in_parent) { |
||||||
|
$variables = $parent_language_array[$lang_file]; |
||||||
|
foreach ($variables as $parent_name_variable =>$parent_variable_value) { |
||||||
|
//arrays are avoided |
||||||
|
if (is_array($parent_variable_value)) { |
||||||
|
continue; |
||||||
|
} |
||||||
|
$founded = false; |
||||||
|
// searching the item in the parent tool |
||||||
|
if (preg_match($term,$parent_variable_value)!==0) { |
||||||
|
$founded = true; |
||||||
|
} |
||||||
|
if ($founded) { |
||||||
|
//loading variable from the english array |
||||||
|
$sub_language_name_variable = $sub_language_array[$lang_file][$parent_name_variable]; |
||||||
|
//loading variable from the english array |
||||||
|
$english_name_variable = $english_language_array[$lang_file][$parent_name_variable]; |
||||||
|
|
||||||
|
//config buttons |
||||||
|
if (strlen($english_name_variable)>1500) { |
||||||
|
$size =20; |
||||||
|
} else { |
||||||
|
$size =4; |
||||||
|
} |
||||||
|
$obj_text='<textarea rows="'.$size.'" cols="40" name="txt|'.$parent_name_variable.'|'.$language_files_to_load_keys[$lang_file].'" id="txtid_'.$parent_name_variable.'" >'.$sub_language_name_variable.'</textarea>'; |
||||||
|
$obj_button='<button class="save" type="button" name="btn|'.$parent_name_variable.'|'.$language_files_to_load_keys[$lang_file].'" id="btnid_'.$parent_name_variable.'" />'.get_lang('Save').'</button>'; |
||||||
|
|
||||||
|
$list_info[]=array($lang_file.'.inc.php', |
||||||
|
$parent_name_variable, |
||||||
|
$english_name_variable, |
||||||
|
$parent_variable_value,$obj_text,$obj_button); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
//search in english |
||||||
|
if ($search_in_english || $search_in_variable) { |
||||||
|
$variables = $english_language_array[$lang_file]; |
||||||
|
foreach ($variables as $name_variable =>$variable_value) { |
||||||
|
if (is_array($variable_value)) { |
||||||
|
continue; |
||||||
|
} |
||||||
|
if (is_array($variable_value)) |
||||||
|
echo $lang_file; |
||||||
|
$founded = false; |
||||||
|
if ($search_in_english && $search_in_variable) { |
||||||
|
// searching the item in the parent tool |
||||||
|
if (preg_match($term,$variable_value)!==0 || preg_match($term,$name_variable)!==0 ) { |
||||||
|
$founded = true; |
||||||
|
} |
||||||
|
} else { |
||||||
|
if ($search_in_english) { |
||||||
|
if (preg_match($term,$variable_value)!==0) { |
||||||
|
$founded = true; |
||||||
|
} |
||||||
|
} else { |
||||||
|
if (preg_match($term,$name_variable)!==0) { |
||||||
|
$founded = true; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
if ($founded) { |
||||||
|
//loading variable from the english array |
||||||
|
$sub_language_name_variable = $sub_language_array[$lang_file][$name_variable]; |
||||||
|
$parent_variable_value = $parent_language_array[$lang_file][$name_variable]; |
||||||
|
//config buttons |
||||||
|
$obj_text='<textarea rows="10" cols="40" name="txt|'.$name_variable.'|'.$language_files_to_load_keys[$lang_file].'" id="txtid_'.$name_variable.'" >'.$sub_language_name_variable.'</textarea>'; |
||||||
|
$obj_button='<button class="save" type="button" name="btn|'.$name_variable.'|'.$language_files_to_load_keys[$lang_file].'" id="btnid_'.$name_variable.'" />'.get_lang('Save').'</button>'; |
||||||
|
|
||||||
|
//loading variable from the english array |
||||||
|
$english_name_variable = $english_language_array[$lang_file][$name_variable]; |
||||||
|
|
||||||
|
$list_info[]=array($lang_file.'.inc.php', |
||||||
|
$name_variable, |
||||||
|
$english_name_variable, |
||||||
|
$parent_variable_value,$obj_text,$obj_button); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
//search in sub language |
||||||
|
if ($search_in_sub_language) { |
||||||
|
$variables = $sub_language_array[$lang_file]; |
||||||
|
foreach ($variables as $name_variable =>$variable_value) { |
||||||
|
if (is_array($parent_variable_value)) { |
||||||
|
continue; |
||||||
|
} |
||||||
|
|
||||||
|
$founded = false; |
||||||
|
// searching the item in the parent tool |
||||||
|
if (preg_match($term,$variable_value)!==0) { |
||||||
|
$founded = true; |
||||||
|
} |
||||||
|
if ($founded) { |
||||||
|
//loading variable from the english array |
||||||
|
$sub_language_name_variable = $sub_language_array[$lang_file][$name_variable]; |
||||||
|
$parent_variable_value = $parent_language_array[$lang_file][$name_variable]; |
||||||
|
//config buttons |
||||||
|
$obj_text='<textarea rows="10" cols="40" name="txt|'.$name_variable.'|'.$language_files_to_load_keys[$lang_file].'" id="txtid_'.$name_variable.'" >'.$sub_language_name_variable.'</textarea>'; |
||||||
|
$obj_button='<button class="save" type="button" name="btn|'.$name_variable.'|'.$language_files_to_load_keys[$lang_file].'" id="btnid_'.$name_variable.'" />'.get_lang('Save').'</button>'; |
||||||
|
|
||||||
|
//loading variable from the english array |
||||||
|
$english_name_variable = $english_language_array[$lang_file][$name_variable]; |
||||||
|
$list_info[]=array($lang_file.'.inc.php', |
||||||
|
$name_variable, |
||||||
|
$english_name_variable, |
||||||
|
$parent_variable_value,$obj_text,$obj_button); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
$list_info = array_unique_dimensional($list_info); |
||||||
|
return $list_info; |
||||||
|
} |
||||||
|
|
||||||
|
//allow see data in sortetable |
||||||
|
if (isset($_REQUEST['txt_search_word']) && strlen(trim($_REQUEST['txt_search_word']))!=0) { |
||||||
|
$list_info = search_language_term($_REQUEST['txt_search_word'],true, true, true,true); |
||||||
|
} |
||||||
|
//var_dump($list_info); |
||||||
|
$parameters=array('id'=>intval($_GET['id']),'sub_language_id'=>intval($_GET['sub_language_id'])); |
||||||
|
if (isset($_REQUEST['txt_search_word']) && strlen($_REQUEST['txt_search_word'])>0) { |
||||||
|
$parameters['txt_search_word']=Security::remove_XSS($_REQUEST['txt_search_word']); |
||||||
|
} |
||||||
|
|
||||||
|
$table = new SortableTableFromArrayConfig($list_info, 1,20,'data_info'); |
||||||
|
$table->set_additional_parameters($parameters); |
||||||
|
//$table->set_header(0, ''); |
||||||
|
$table->set_header(0, get_lang('LanguageFile')); |
||||||
|
$table->set_header(1, get_lang('LanguageVariable')); |
||||||
|
$table->set_header(2, get_lang('EnglishName')); |
||||||
|
$table->set_header(3, get_lang('OriginalName')); |
||||||
|
$table->set_header(4, get_lang('SubLanguage'),false); |
||||||
|
$table->set_header(5, get_lang('Edit'),false); |
||||||
|
$table->display(); |
||||||
|
|
||||||
|
/* |
||||||
|
============================================================================== |
||||||
|
FOOTER |
||||||
|
============================================================================== |
||||||
|
*/ |
||||||
|
|
||||||
|
Display :: display_footer(); |
||||||
|
?> |
@ -0,0 +1,30 @@ |
|||||||
|
<?php |
||||||
|
/* For licensing terms, see /dokeos_license.txt */ |
||||||
|
// including the global dokeos file |
||||||
|
require_once '../inc/global.inc.php'; |
||||||
|
require_once 'sub_language.class.php'; |
||||||
|
/* |
||||||
|
* search a term and return description from a glossary |
||||||
|
*/ |
||||||
|
global $charset; |
||||||
|
|
||||||
|
$new_language = Security::remove_XSS($_REQUEST['new_language']); |
||||||
|
$language_variable = Security::remove_XSS($_REQUEST['variable_language']); |
||||||
|
$file_id = Security::remove_XSS($_REQUEST['file_id']); |
||||||
|
|
||||||
|
if (isset($new_language) && isset($language_variable) && isset($file_id)) { |
||||||
|
$file_language = $language_files_to_load[$file_id].'.inc.php'; |
||||||
|
$id_language = intval($_REQUEST['id']); |
||||||
|
$sub_language_id = intval($_REQUEST['sub']); |
||||||
|
$all_data_of_language=SubLanguageManager::get_all_information_of_sub_language($id_language,$sub_language_id); |
||||||
|
$dokeos_path_folder=api_get_path('SYS_LANG_PATH').$all_data_of_language['dokeos_folder'].'/'.$file_language; |
||||||
|
$all_file_of_directory=SubLanguageManager::get_all_language_variable_in_file($dokeos_path_folder); |
||||||
|
SubLanguageManager::add_file_in_language_directory ($dokeos_path_folder); |
||||||
|
|
||||||
|
//update variable language |
||||||
|
$all_file_of_directory[$language_variable]="\"".mb_convert_encoding($new_language,$charset,'UTF-8')."\";"; |
||||||
|
|
||||||
|
foreach ($all_file_of_directory as $key_value=>$value_info) { |
||||||
|
SubLanguageManager::write_data_in_file ($dokeos_path_folder,$value_info,$key_value); |
||||||
|
} |
||||||
|
} |
Loading…
Reference in new issue