| Server IP : 208.122.213.31 / Your IP : 216.73.216.45 Web Server : Apache System : Linux msd6191.mjhst.com 4.18.0-553.137.1.el8_10.x86_64 #1 SMP Wed Jun 24 11:40:24 UTC 2026 x86_64 User : WHMCS_MIA_382 ( 1001) PHP Version : 7.4.33 Disable Function : NONE MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/httpd/html/baberankings.com.bak/members/modules/languages/admin/ |
Upload File : |
<?
//show page header
admin_header('Edit Language Definitions');
//save changes
if ($en['act'] == 'save') {
$line = sql_fetch_assoc(sql_query("SELECT * FROM $langtable WHERE l_id='$en[id]'"));
$d = unserialize($line['l_defs']);
foreach ((array)$_POST['save'] as $sect) {
foreach ($sect as $key => $value)
if (!($value == '' && $sect == 'missing')) {
$d[$key] = $value;
}
}
sql_query("UPDATE $langtable SET l_defs='".addslashes(serialize($d))."' WHERE l_id=$en[id]");
}
//form to choose language and sections
echo "<b><u>Select Language Definitions</u></b><Br><Br><form action=index.php method=post>
<input type=hidden name=req value='language_edit_defs'>";
//select language
echo "<table>
<tr><td class=key>Language:</td><td><select name=id>";
$res = sql_query("SELECT * FROM $langtable ORDER BY l_active DESC");
while ($line = sql_fetch_assoc($res)) {
echo "<option value=$line[l_id]".($en['id'] == $line['l_id'] ? ' selected' : '').">$line[l_name]</option>";
if ($en['id'] == $line['l_id']) $src = $line;
}
echo " </select></td></tr>";
//select section
$cd = getcwd(); chdir('..'); $sects = get_language_files(); chdir($cd);
$sect = array('' => 'All Definitions','missing' => 'Missing Definitions Only','custom' => 'Custom Definitions Only');
foreach ((array)$sects['english.lng'] as $value) {
$loc = explode('/',$value);
if ($loc[0] == 'modules')
$sect['mod_'.$loc[1]] = $modules[$loc[1]]['name'];
}
echo "<tr><td class=key>Section:</td><td><select name=sect>";
foreach ($sect as $key => $value)
echo "<option value='$key'".($key == $en['sect'] ? ' selected' : '').">$value</option>";
echo "</select></td></tr></table>
<input type=submit name=sm value='Show Definitions'></form>";
//get language definition section names
$cd = getcwd(); chdir('..');
$defs = array();
foreach ($sects['english.lng'] as $value) {
$d = read_language_file($value);
$loc = explode('/',$value);
$s = ($value == 'languages/english.lng' ? 'base' : 'mod_'.$loc[1]);
foreach ($d as $key => $value)
$defs[$key] = array($s,$value);
}
unset($defs['']);
chdir($cd);
//prepare sections
$d = unserialize($src['l_defs']);
foreach ($d as $key => $value)
$out[$defs[$key][0]][$key] = array($value,$defs[$key][1]);
//get undefined definitions
foreach ($defs as $key => $value)
if (empty($d[$key])) {
$out['missing'][$key] = array('',$value[1]);
unset($out[$defs[$key][0]][$key]);
}
//show language definitions
echo "<b><u>Modify Language Definitions</u></b><Br><Br><form action=index.php method=post>
<input type=hidden name=req value='language_edit_defs'>
<input type=hidden name=act value='save'>
<input type=hidden name=id value='$en[id]'>
<input type=hidden name=sect value='$en[sect]'>
<table width=100%>";
function show_language_defs($sect, $title) {
global $src,$out;
$defs = $out[$sect];
//clear empty values
foreach ((array)$defs as $key => $value)
if ($key == '')
unset($defs[$key]);
//verify if array
if (!is_array($defs) || count($defs) == 0) return false;
//print section title
echo '<tr><td colspan=2><b>'.$title.'</b></td></tr>';
//print variables
if ($sect == '') $sect = 'custom';
foreach ($defs as $key => $value) {
echo '<tr><td class=key width=100px>'.$key.'</td><td><input type=text name="save['.$sect.']['.$key.']" value="'.html_output($value[0]).'" size=50 style="width:100%;">'.($src['l_file'] != 'english.lng' ? '<br><small><b>English: </b>'.$value[1].'</small>' : '').'</td></tr>';
}
echo '<tr><td colspan=2><input type=submit name=sm value="Save Definitions"></tr>';
}
//show missing definitions
if ($en['sect'] == '' || $en['sect'] == 'missing') {
unset($out['missing']['']);
show_language_defs('missing','<font color=red>Missing Definitions</font>');
unset($out['missing']);
}
//show custom definitions
if ($en['sect'] == '' || $en['sect'] == 'custom') {
show_language_defs('','Custom Definitions');
unset($out['']);
}
//show base definitions
if ($en['sect'] == '') {
show_language_defs('base','Base Definitions');
unset($out['base']);
}
//module definitions
foreach ($out as $key => $value)
if ($en['sect'] == '' || $en['sect'] == $key) {
show_language_defs($key,$modules[substr($key,4)]['name'].' Module Definitions');
}
echo "</table>";
?>