function popup() { $ldap = new clladp(); $users = new usersMenus(); if (!$users->AsSambaAdministrator) { die; } $SID = $ldap->LOCAL_SID(); if (preg_match("#S-1-5-21-(.+)#", $SID, $re)) { $SID_PREFIX = $re[1]; } else { $SID_PREFIX = $SID; } $form = "<table style='width:100%' class=table_form>\n\t<tr>\n\t\t<td valign='top' nowrap width=1%>" . Field_text('SID_PREFIX', 'S-1-5-21', 'font-size:16px;width:100px;text-align:right', null, null, null, false, null, true) . "</td>\n\t\t<td valign='top'><span style='font-size:16px'>-</span> " . Field_text('SID_SUFFIX', $SID_PREFIX, 'font-size:16px') . "</td>\n\t</tr>\n\t<tr><td colspan=2><hr></td></tr>\n\t<tr><td colspan=2 align='right'><input type='button' OnClick=\"javascript:SaveSambaSID();\" value=' {edit} » '></td></tr>\n\t</table>\n\t"; $html = "\n\t<div class=explain>{SID_EXPLAIN}</div>\n\t<br>\n\t<div id='formsambasid'>\n\t{$form}\n\t</div>\n\t\n\t"; $tpl = new templates(); echo $tpl->_ENGINE_parse_body($html, 'samba.index.php'); }
<?php if (posix_getuid() != 0) { die("Cannot be used in web server mode\n\n"); } include_once dirname(__FILE__) . '/ressources/class.templates.inc'; include_once dirname(__FILE__) . '/ressources/class.ini.inc'; include_once dirname(__FILE__) . '/ressources/class.samba.inc'; include_once dirname(__FILE__) . '/samba.sid.php'; system('/usr/share/artica-postfix/bin/artica-install --samba-reconfigure'); $ldap = new clladp(); $samba = new samba(); $sid = $ldap->LOCAL_SID(); $samba->ChangeSID($sid); SMBCHANGECOMPUTERS(); SMBGROUPS(); SMBCHANGEUSERS(); SMBRESTART(); die;
function main_smb_config() { $style = "style='padding:3px;border-bottom:1px dotted #CCCCCC'"; $sock = new sockets(); $tpl = new templates(); $page = CurrentPageName(); $SambaEnabled = $sock->GET_INFO("SambaEnabled"); $EnableSambaActiveDirectory = $sock->GET_INFO("EnableSambaActiveDirectory"); if ($SambaEnabled == null) { $SambaEnabled = 1; } $disable_samba = Paragraphe("server-disable-64.png", '{enable_disable_samba}', '{enable_disable_samba_text}', "javascript:Loadjs('samba.disable.php');", '{enable_disable_samba_text}', 260, null, 1); if ($SambaEnabled == 0) { $html = main_tabs() . "<br>\n\t\t\t<h5>{main_settings}</H5>\n\t\t\t<center style='margin:50px'>{$disable_samba}</center>"; $tpl = new templates(); echo $tpl->_ENGINE_parse_body($html); exit; } $users = new usersMenus(); if ($_GET["hostname"] == null) { $hostname = $users->hostname; $_GET["hostname"] = $hostname; } else { $hostname = $_GET["hostname"]; } $smb = new samba(); $page = CurrentPageName(); $ldap = new clladp(); for ($i = 0; $i < 11; $i++) { $logh[$i] = $i; } $icon_samba_type = Paragraphe("64-server-ask.png", '{windows_network_neighborhood}', '{windows_network_neighborhood_text}', "javascript:neighborhood();", '{windows_network_neighborhood}', 260, null, 1); $admin_domain = Paragraphe("members-priv-64.png", '{domain_admin}', '{domain_admin_text}', "javascript:DomainAdmin();", '{domain_admin_text}', 260, null, 1); $acl_support = Paragraphe("acl-support-64.png", '{ACLS_SUPPORT}', '{ACLS_SUPPORT_TEXT}', "javascript:Loadjs('samba.acls.settings.php');", '{ACLS_SUPPORT_TEXT}', 260, null, 1); $enable_Editposix = $tpl->_ENGINE_parse_body("{enable_Editposix}") . ':'; $enable_Editposix = html_entity_decode($enable_Editposix); if (strlen($enable_Editposix) > 37) { $enable_Editposix = texttooltip(htmlentities(substr($enable_Editposix, 0, 35)) . '...:', htmlentities($enable_Editposix)); } $domain_master = "\n<tr>\n\t<td align='right' nowrap valign='top' class=legend>{local master}:</td>\n\t<td valign='top'>" . Field_checkbox('local master', 'yes', $smb->main_array["global"]["local master"]) . "</td>\n\t<td valign='top'>" . help_icon("{local master_text}") . "</td>\n</tr>\t\t\n<tr>\t\n\t<td align='right' nowrap valign='top' class=legend>{domain logons}:</td>\n\t<td valign='top'>" . Field_checkbox('domain logons', 'yes', $smb->main_array["global"]["domain logons"]) . "</td>\n\t<td valign='top'>" . help_icon("{domain logons_text}") . "</td>\n</tr>\n<tr>\n\t<td align='right' nowrap valign='top' class=legend>{domain master}:</td>\n\t<td valign='top' >" . Field_array_Hash(array("no" => "{no}", "yes" => "{yes}", "auto" => "{auto}"), "domain master", $smb->main_array["global"]["domain master"], null, null, 0, 'width:100px') . "</td>\n\t<td valign='top'>" . help_icon("{domain master_text}") . "</td>\n</tr>"; if ($EnableSambaActiveDirectory == 1) { $workgroup_disabled = true; $domain_master = "\n<tr>\n\t<td align='right' nowrap valign='top' class=legend>{local master}:</td>\n\t<td valign='top' >--" . Field_hidden("local master", "{$smb->main_array["global"]["local master"]}") . "</td>\n\t<td valign='top'>" . help_icon("{local master_text}") . "</td>\n</tr>\t\t\n<tr>\t\n\t<td align='right' nowrap valign='top' class=legend>{domain logons}:</td>\n\t<td valign='top' >--" . Field_hidden("domain logons", "{$smb->main_array["global"]["domain logons"]}") . "</td>\n\t<td valign='top'>" . help_icon("{domain logons_text}") . "</td>\n</tr>\t\t\n<tr>\n\t<td align='right' nowrap valign='top' class=legend>{domain master}:</td>\n\t<td valign='top' >--" . Field_hidden("domain master", "{$smb->main_array["global"]["domain master"]}") . "</td>\n\t<td valign='top'>" . help_icon("{domain master_text}") . "</td>\n</tr>"; } $log_level = Field_array_Hash($logh, 'log level', $smb->main_array["global"]["log level"], null, null, 0, 'width:90px'); $form1 = "\n\t<input type='hidden' name='SaveGeneralSettings' id='SaveGeneralSettings' value='yes'>\n\t\n\t<table style='width:99%'>\n<tr>\n\t<td align='right' nowrap valign='top' class=legend class=legend>SID:</td>\n\t<td valign='top'><strong>" . $ldap->LOCAL_SID() . "</strong></td>\n\t<td valign='top'><div style='padding-right:3px;'>" . imgtootltip("icon_edit.gif", "{CHANGE_SID_TEXT}", "Loadjs('samba.sid.php')", 'right') . "</div></td>\n\t</tr>\n<tr>\n<tr><td colspan=3><hr></td></tr>\t\n\t\n<tr>\n\t<td align='right' nowrap valign='top' class=legend class=legend>{workgroup}:</td>\n\t<td valign='top'>" . Field_text("workgroup", $smb->main_array["global"]["workgroup"], 'width:190px', null, null, null, false, null, $workgroup_disabled) . "</td>\n\t<td valign='top'>" . help_icon("{workgroup_text}") . "</td>\n\t</tr>\n<tr>\n\t<td align='right' nowrap valign='top' class=legend>{netbiosname}:</td>\n\t<td valign='top'>" . Field_text("netbiosname", $smb->main_array["global"]["netbios name"], 'width:190px') . "</td>\n\t<td valign='top'>" . help_icon("{netbiosname_text}") . "</td>\n</tr>\t\n<tr>\n\t<td align='right' nowrap valign='top' class=legend>{server string}:</td>\n\t<td valign='top'>" . Field_text("server string", $smb->main_array["global"]["server string"], 'width:190px') . "</td>\n\t<td valign='top'>" . help_icon("{server string_text}") . "</td>\n</tr>\t\n\t\n\t\n<tr>\t\n\t<td align='right' nowrap valign='top' class=legend>{disable netbios}:</td>\n\t<td valign='top'>" . Field_checkbox('disable netbios', 'yes', $smb->main_array["global"]["disable netbios"]) . "</td>\n\t<td valign='top'>" . help_icon("{disable netbios_text}") . "</td>\n</tr>\n<tr>\t\n\t<td align='right' nowrap valign='top' class=legend>{$enable_Editposix}</td>\n\t<td valign='top'>" . Field_checkbox('enable_Editposix', 'yes', $smb->SambaEnableEditPosixExtension) . "</td>\n\t<td valign='top'>" . help_icon("{enable_Editposix_text}") . "</td>\n</tr>\n\n<tr>\t\n\t<td align='right' nowrap valign='top' class=legend>{log level}:</td>\n\t<td valign='top'>{$log_level}</td>\n\t<td valign='top'>" . help_icon("{log level_text}") . "</td>\n</tr>\n\n\n\t<tr>\n\t<td {$style} colspan=3 align='right' valign='top'>\n\t<hr>\n\t" . button("{apply}", "SaveSambaMainConfiguration()") . "</td>\n\t</tr>\n</table>\n"; $users = new usersMenus(); if ($users->WINBINDD_INSTALLED) { $winbindd = "status_ok.gif"; } else { $winbindd = "status_critical.gif"; } $form2 = "\n\t<table style='width:99%'>\n\t<tr><td colspan=3 ><H3>{title1}</H3></td></tr>\n<tr>\t\n\t<td align='right' nowrap valign='top' class=legend>{winbindd_installed}:</td>\n\t<td valign='top'><img src='img/{$winbindd}'></td>\n\t<td valign='top'> </td>\n</tr>\t\n\n\n{$domain_master}\n\t\n\n\n\t\n<tr>\n\t<td align='right' nowrap valign='top' class=legend>{os level}:</td>\n\t<td valign='top'>" . Field_text("os level", $smb->main_array["global"]["os level"], 'width:60px') . "</td>\n\t<td valign='top'>" . help_icon("{os level_text}") . "</td>\n</tr>\n<tr>\n\t<td align='right' nowrap valign='top' class=legend>{SambaDnsProxy}:</td>\n\t<td valign='top'>" . Field_checkbox('dns proxy', 'yes', $smb->main_array["global"]["dns proxy"]) . "</td>\n\t<td valign='top'>" . help_icon("{SambaDnsProxy_explain}") . "</td>\n</tr>\t\t\n<tr><td colspan=3> </td></tr>\n<tr>\n\t<td nowrap valign='top' align='right'><h3>{name_resolve_order}:</H3>\n\t<td colspan=2 valign='top'><div id='name_resolve_order_id'></div></td>\n</td>\t\n</tr>\n\t\t\n\t<tr>\n\t<td colspan=3 align='right' valign='top'>\n\t<hr>\n\t" . button("{apply}", "SaveSambaMainConfiguration()") . "</td>\n\t</tr>\n\n\t</table>\n\t"; $html = "\n\t<h5>{main_settings}</H5>\n\t<div id='MainSambaConfigDiv'>\n\t<table style='width:100%'>\n\t<tr>\n\t<td valign='top'>{$icon_samba_type}{$admin_domain}{$disable_samba}{$acl_support}\n\t</td>\n\t<td valign='top' width=99%>\n\t\t{$form1}\n\t\t<br>\n\t\t{$form2}\n\t\t</td>\n\t</tr>\n\t</table>\n\t</div>\n\t<script>\n\t\n\tvar x_SaveSambaMainConfiguration=function (obj) {\n\t\t\ttempvalue=obj.responseText;\n\t\t\tif(tempvalue.length>0){alert(tempvalue);}\n\t\t\tRefreshTab('main_config_samba');\n\t }\n\t\n\t\n\t\tfunction SaveSambaMainConfiguration(){\n\t\tvar XHR = new XHRConnection();\n\t\tXHR.appendData('SaveGeneralSettings','yes');\n\t\tXHR.appendData('workgroup',document.getElementById('workgroup').value);\n\t\tXHR.appendData('netbiosname',document.getElementById('netbiosname').value);\n\t\tXHR.appendData('server string',document.getElementById('server string').value);\n\t\tXHR.appendData('log level',document.getElementById('log level').value);\n\t\tXHR.appendData('domain master',document.getElementById('domain master').value);\n\t\tXHR.appendData('os level',document.getElementById('os level').value);\n\t\tif(document.getElementById('disable netbios').checked){\n\t\t\tXHR.appendData('disable netbios','yes');}else{\n\t\t\tXHR.appendData('disable netbios','no');}\n\t\t\t\n\t\tif(document.getElementById('disable netbios').checked){\n\t\t\tXHR.appendData('disable netbios','yes');}else{\n\t\t\tXHR.appendData('disable netbios','no');}\n\n\t\tif(document.getElementById('enable_Editposix').checked){\n\t\t\tXHR.appendData('enable_Editposix','yes');}else{\n\t\t\tXHR.appendData('enable_Editposix','no');}\t\t\t\n\t\t\n\t\tif(document.getElementById('domain logons').checked){\n\t\t\tXHR.appendData('domain logons','yes');}else{\n\t\t\tXHR.appendData('domain logons','no');}\t\n\n\t\tif(document.getElementById('local master').checked){\n\t\t\tXHR.appendData('local master','yes');}else{\n\t\t\tXHR.appendData('local master','no');}\t\t\t\n\t\tdocument.getElementById('MainSambaConfigDiv').innerHTML='<center><img src=\"img/wait_verybig.gif\"></center>';\t\t\t\n\t\tXHR.sendAndLoad('{$page}', 'GET',x_SaveSambaMainConfiguration);\t\t\n\n\t\t\n\t\t}\n\t\t\n\t\t\n\t\tfunction name_resolve_order_refresh(){\n\t\t\tLoadAjax('name_resolve_order_id','{$page}?name-resolve-order-list=yes');\n\t\t}\n\t\t\n\t\tfunction NameResolveOrderSet(index,position){\n\t\t\tLoadAjax('name_resolve_order_id','{$page}?name-resolve-order-list=yes&index='+index+'&pos='+position);\n\t\t}\n\t\t\n\t\n\tname_resolve_order_refresh();"; echo $tpl->_ENGINE_parse_body($html); }
function main_smb_config() { $style = "style='padding:3px;border-bottom:1px dotted #CCCCCC'"; $sock = new sockets(); $tpl = new templates(); $page = CurrentPageName(); $smb = new samba(); $ldap = new clladp(); $SambaEnabled = $sock->GET_INFO("SambaEnabled"); $EnableSambaActiveDirectory = $sock->GET_INFO("EnableSambaActiveDirectory"); if ($SambaEnabled == null) { $SambaEnabled = 1; } $users = new usersMenus(); $upTo36 = 0; $upTo357 = 0; $version = $smb->SAMBA_VERSION; if (preg_match("#^([0-9]+)\\.([0-9]+)\\.([0-9]+)#", $version, $re)) { $major = intval($re[1]); $minor = intval($re[2]); $build = intval($re[3]); } if ($major > 2) { if ($minor > 4) { if ($build > 6) { $upTo357 = 1; } } } if (preg_match("#^([0-9]+)\\.([0-9]+)#", $version, $re)) { $major = intval($re[1]); $minor = intval($re[2]); if ($major >= 3) { if ($minor >= 6) { $upTo36 = 1; $upTo357 = 1; } } } if ($SambaEnabled == 0) { $html = main_tabs() . "<br>\n\t\t\t\t<center style='margin:50px'>{$disable_samba}</center>"; $tpl = new templates(); echo $tpl->_ENGINE_parse_body($html); exit; } $users = new usersMenus(); if ($_GET["hostname"] == null) { $hostname = $users->hostname; $_GET["hostname"] = $hostname; } else { $hostname = $_GET["hostname"]; } for ($i = 0; $i < 11; $i++) { $logh[$i] = $i; } if (!isset($_GET["remove-icons"])) { $disable_samba = Paragraphe("server-disable-64.png", '{enable_disable_samba}', '{enable_disable_samba_text}', "javascript:Loadjs('samba.disable.php');", '{enable_disable_samba_text}', 260, null, 1); $icon_samba_type = Paragraphe("64-server-ask.png", '{windows_network_neighborhood}', '{windows_network_neighborhood_text}', "javascript:Loadjs('samba.neighborhood.php');", '{windows_network_neighborhood}', 260, null, 1); $admin_domain = Paragraphe("members-priv-64.png", '{domain_admin}', '{domain_admin_text}', "javascript:DomainAdmin();", '{domain_admin_text}', 260, null, 1); $acl_support = Paragraphe("acl-support-64.png", '{ACLS_SUPPORT}', '{ACLS_SUPPORT_TEXT}', "javascript:Loadjs('samba.acls.settings.php');", '{ACLS_SUPPORT_TEXT}', 260, null, 1); $restart = Paragraphe("64-refresh.png", '{APP_SAMBA_RESTART}', '{APP_SAMBA_RESTART_TEXT}', "javascript:RestartSmbServices();", '{APP_SAMBA_RESTART_TEXT}', 260, null, 1); } $enable_Editposix = $tpl->_ENGINE_parse_body("{enable_Editposix}") . ':'; $enable_Editposix = html_entity_decode($enable_Editposix); if (strlen($enable_Editposix) > 37) { $enable_Editposix = texttooltip(htmlentities(substr($enable_Editposix, 0, 35)) . '...:', htmlentities($enable_Editposix)); } $t = time(); $after_post_func = "x_SaveSambaMainConfiguration{$t}"; $after_post = "x_SaveSambaMainConfiguration"; $styleTD = "font-size:13px;"; $styleFieldWith = 190; if (isset($_GET["expanded"])) { $styleTD = "font-size:16px"; $styleFieldWith = 290; $explain = "\n\t\t\t<div style='font-size:22px'>{SAMBA_MAIN_PARAMS}</div>\n\t\t\t<div style='font-size:16px' class=explain>{SAMBA_MAIN_PARAMS_TEXT}</div>"; $global_parameters_icon = Paragraphe('parameters2-64.png', "{SAMBA_MAIN_PARAMS}", '{SAMBA_MAIN_PARAMS_TEXT}', "javascript:Loadjs('samba.index.php?main-params-js=yes')"); $after_post = "x_SaveSambaMainConfiguration{$t}"; } $domain_master = "\n<tr>\n\t<td align='right' nowrap valign='top' class=legend style='{$styleTD}'>{local master}:</td>\n\t<td valign='top' style='{$styleTD}'>" . Field_checkbox('local master', 'yes', $smb->main_array["global"]["local master"]) . "</td>\n\t<td valign='top' style='{$styleTD}'>" . help_icon("{local master_text}") . "</td>\n</tr>\t\t\n<tr>\t\n\t<td align='right' nowrap valign='top' class=legend style='{$styleTD}'>{domain logons}:</td>\n\t<td valign='top' style='{$styleTD}'>" . Field_checkbox('domain logons', 'yes', $smb->main_array["global"]["domain logons"]) . "</td>\n\t<td valign='top' style='{$styleTD}'>" . help_icon("{domain logons_text}") . "</td>\n</tr>\n<tr>\n\t<td align='right' nowrap valign='top' class=legend style='{$styleTD}'>{domain master}:</td>\n\t<td valign='top' style='{$styleTD}'>" . Field_array_Hash(array("no" => "{no}", "yes" => "{yes}", "auto" => "{auto}"), "domain master", $smb->main_array["global"]["domain master"], null, null, 0, "width:100px;{$styleTD};padding:3px") . "</td>\n\t<td valign='top' style='{$styleTD}'>" . help_icon("{domain master_text}") . "</td>\n</tr>"; if ($smb->SambaEnableEditPosixExtension == 1) { $smb->SambaEnableEditPosixExtension = "yes"; } if ($EnableSambaActiveDirectory == 1) { $workgroup_disabled = true; $domain_master = "\n<tr>\n\t<td align='right' nowrap valign='top' class=legend style='{$styleTD}'>{local master}:</td>\n\t<td valign='top' style='{$styleTD}'>--" . Field_hidden("local master", "{$smb->main_array["global"]["local master"]}") . "</td>\n\t<td valign='top' style='{$styleTD}'>" . help_icon("{local master_text}") . "</td>\n</tr>\t\t\n<tr>\t\n\t<td align='right' nowrap valign='top' class=legend style='{$styleTD}'>{domain logons}:</td>\n\t<td valign='top' style='{$styleTD}'>--" . Field_hidden("domain logons", "{$smb->main_array["global"]["domain logons"]}") . "</td>\n\t<td valign='top' style='{$styleTD}'>" . help_icon("{domain logons_text}") . "</td>\n</tr>\t\t\n<tr>\n\t<td align='right' nowrap valign='top' class=legend style='{$styleTD}'>{domain master}:</td>\n\t<td valign='top' style='{$styleTD}'>--" . Field_hidden("domain master", "{$smb->main_array["global"]["domain master"]}") . "</td>\n\t<td valign='top' style='{$styleTD}'>" . help_icon("{domain master_text}") . "</td>\n</tr>"; } $log_level = Field_array_Hash($logh, 'log level', $smb->main_array["global"]["log level"], null, null, 0, "width:90px;{$styleTD}"); $form1 = "\n\t<input type='hidden' name='SaveGeneralSettings' id='SaveGeneralSettings' value='yes'>\n\t<div style='width:98%' class=form>\n\t<table style='width:100%'>\n<tr>\n\t<td align='right' nowrap valign='top' class=legend class=legend style='{$styleTD}'>SID:</td>\n\t<td valign='top'><strong style='{$styleTD}'>" . $ldap->LOCAL_SID() . "</strong></td>\n\t<td valign='top' style='{$styleTD}'><div style='padding-right:3px;'>" . imgtootltip("icon_edit.gif", "{CHANGE_SID_TEXT}", "Loadjs('samba.sid.php')", 'right') . "</div></td>\n\t</tr>\n<tr>\n\n\t\n<tr>\n\t<td align='right' nowrap valign='top' class=legend class=legend style='{$styleTD}'>{workgroup}:</td>\n\t<td valign='top' style='{$styleTD}'>" . Field_text("workgroup", $smb->main_array["global"]["workgroup"], "width:{$styleFieldWith}px;{$styleTD};padding:3px", null, null, null, false, null, $workgroup_disabled) . "</td>\n\t<td valign='top' style='{$styleTD}'>" . help_icon("{workgroup_text}") . "</td>\n\t</tr>\n<tr>\n\t<td align='right' nowrap valign='top' class=legend style='{$styleTD}'>{netbiosname}:</td>\n\t<td valign='top' style='{$styleTD}'>" . Field_text("netbiosname", $smb->main_array["global"]["netbios name"], "width:{$styleFieldWith}px;{$styleTD};padding:3px") . "</td>\n\t<td valign='top' style='{$styleTD}'>" . help_icon("{netbiosname_text}") . "</td>\n</tr>\t\n<tr>\n\t<td align='right' nowrap valign='top' class=legend style='{$styleTD}'>{server string}:</td>\n\t<td valign='top' style='{$styleTD}'>" . Field_text("server string", $smb->main_array["global"]["server string"], "width:{$styleFieldWith};{$styleTD};padding:3px") . "</td>\n\t<td valign='top' style='{$styleTD}'>" . help_icon("{server string_text}") . "</td>\n</tr>\t\n\t\n\t\n<tr>\t\n\t<td align='right' nowrap valign='top' class=legend style='{$styleTD}'>{disable netbios}:</td>\n\t<td valign='top' style='{$styleTD}'>" . Field_checkbox('disable netbios', 'yes', $smb->main_array["global"]["disable netbios"]) . "</td>\n\t<td valign='top' style='{$styleTD}'>" . help_icon("{disable netbios_text}") . "</td>\n</tr>\n<tr>\t\n\t<td align='right' nowrap valign='top' class=legend style='{$styleTD}'>{$enable_Editposix}</td>\n\t<td valign='top' style='{$styleTD}'>" . Field_checkbox('enable_Editposix', 'yes', $smb->SambaEnableEditPosixExtension) . "</td>\n\t<td valign='top' style='{$styleTD}'>" . help_icon("{enable_Editposix_text}") . "</td>\n</tr>\n\n\n<tr>\t\n\t<td align='right' nowrap valign='top' class=legend style='{$styleTD}'>{log level}:</td>\n\t<td valign='top' style='{$styleTD}'>{$log_level}</td>\n\t<td valign='top' style='{$styleTD}'>" . help_icon("{log level_text}") . "</td>\n</tr>\n<tr>\n\t<td align='right' nowrap valign='top' class=legend style='{$styleTD}'> </td>\n\t<td colspan=2 style='{$styleTD}'><a href=\"javascript:blur();\" OnClick=\"javascript:Loadjs('samba.options.php?hostname=master');\"\n\tstyle='{$styleTD};text-decoration:underline;font-style:italic'>{file_sharing_behavior}</a></td>\n</tr>\n\n\n\t<tr>\n\t<td colspan=3 align='right' valign='top'>\n\t<hr>\n\t" . button("{apply}", "SaveSambaMainConfiguration()", "16px") . "</td>\n\t</tr>\n</table>\n</div>\n"; $users = new usersMenus(); $sock = new sockets(); $AsWinbindd = 0; $cups_installed = 0; if ($users->WINBINDD_INSTALLED) { $winbindd = "status_ok.png"; $AsWinbindd = 1; } else { $winbindd = "status_critical.png"; } if ($users->CUPS_INSTALLED) { $cups_installed = 1; } $TypeOfSamba = $sock->GET_INFO("TypeOfSamba"); if (!is_numeric($TypeOfSamba)) { $TypeOfSamba = 1; } $form2 = "\n\t<div style='width:98%' class=form>\n\t<table style='width:100%'>\n<tr>\t\n\t<td align='right' nowrap valign='top' class=legend style='{$styleTD}'>{winbindd_installed}:</td>\n\t<td valign='top' style='{$styleTD}'><img src='img/{$winbindd}'></td>\n\t<td valign='top' style='{$styleTD}'> </td>\n</tr>\t\n<tr>\t\n\t<td align='right' nowrap valign='top' class=legend style='{$styleTD}'>{disable_winbindd}:</td>\n\t<td valign='top' style='{$styleTD}'>" . Field_checkbox('DisableWinbindd', '1', $sock->GET_INFO('DisableWinbindd')) . "</td>\n\t<td valign='top' style='{$styleTD}'> </td>\n</tr>\n<tr>\t\n\t<td align='right' nowrap valign='top' class=legend style='{$styleTD}'>{client_ntlmv2_auth}:</td>\n\t<td valign='top' style='{$styleTD}'>" . Field_checkbox('client_ntlmv2_auth', '1', $smb->client_ntlmv2_auth) . "</td>\n\t<td valign='top' style='{$styleTD}'>" . help_icon("{client_ntlmv2_auth_text}") . "</td>\n</tr>\n\n\n<tr>\t\n\t<td align='right' nowrap valign='top' class=legend style='{$styleTD}'>{EnablePrintersSharing}:</td>\n\t<td valign='top' style='{$styleTD}'>" . Field_checkbox('EnablePrintersSharing', '1', $sock->GET_INFO('EnablePrintersSharing')) . "</td>\n\t<td valign='top' style='{$styleTD}'> </td>\n</tr>\n\n\n\n{$domain_master}\n\t\n\n\n\t\n<tr>\n\t<td align='right' nowrap valign='top' class=legend style='{$styleTD}'>{os level}:</td>\n\t<td valign='top' style='{$styleTD}'>" . Field_text("os level", $smb->main_array["global"]["os level"], "width:60px;{$styleTD};padding:3px") . "</td>\n\t<td valign='top' style='{$styleTD}'>" . help_icon("{os level_text}") . "</td>\n</tr>\n\t\t\n\n\t\t\n\t<tr>\n\t<td colspan=3 align='right' valign='top' >\n\t<hr>\n\t" . button("{apply}", "SaveSambaMainConfiguration()", "16px") . "</td>\n\t</tr>\n\n\t</table></div>\n\t"; $sock = new sockets(); $ArticaSambaAutomAskCreation = $sock->GET_INFO("ArticaSambaAutomAskCreation"); $HomeDirectoriesMask = $sock->GET_INFO("HomeDirectoriesMask"); $SharedFoldersDefaultMask = $sock->GET_INFO("SharedFoldersDefaultMask"); if (!is_numeric($ArticaSambaAutomAskCreation)) { $ArticaSambaAutomAskCreation = 1; } if (!is_numeric($HomeDirectoriesMask)) { $HomeDirectoriesMask = "0775"; } if (!is_numeric($SharedFoldersDefaultMask)) { $SharedFoldersDefaultMask = "0755"; } $formArtica = "\n\t<div style='width:98%' class=form>\n\t<table style='width:100%'>\n<tr>\t\n\t<td align='right' nowrap valign='top' class=legend style='{$styleTD}'>{enable_automask_creation}:</td>\n\t<td valign='top' style='{$styleTD}'>" . Field_checkbox('ArticaSambaAutomAskCreation', '1', $ArticaSambaAutomAskCreation) . "</td>\n\t<td valign='top' style='{$styleTD}'>" . help_icon("{enable_automask_creation_explain}") . "</td>\n</tr>\t\n<tr>\t\n\t<td align='right' nowrap style='font-size:22px;vertical-align:middle' class=legend>{HomeDirectoriesMask}:</td>\n\t<td valign='top' style='{$styleTD}'>" . Field_text("HomeDirectoriesMask", $HomeDirectoriesMask, "width:60px;{$styleTD};padding:3px") . "</td>\n\t<td valign='top' style='{$styleTD}'> </td>\n</tr>\n<tr>\t\n\t<td align='right' nowrap style='font-size:22px;vertical-align:middle' class=legend>{SharedFoldersDefaultMask}:</td>\n\t<td valign='top' style='{$styleTD}'>" . Field_text("SharedFoldersDefaultMask", $SharedFoldersDefaultMask, "width:60px;{$styleTD};padding:3px") . "</td>\n\t<td valign='top'> </td>\n</tr>\n\t<tr>\n\t<td colspan=3 align='right' valign='top'>\n\t<hr>\n\t" . button("{apply}", "SaveArticaSambaMainConfiguration()", "16px") . "</td>\n\t</tr>\n</table></div>"; $html = "{$explain}\n\t<div id='MainSambaConfigDiv'>\n\t<table style='width:100%'>\n\t<tr>\n\t<td valign='top'>{$icon_samba_type}{$admin_domain}{$disable_samba}{$acl_support}{$restart}\n\t</td>\n\t<td valign='top' width=99%>\n\t\t{$form1}\n\t\t<br>\n\t\t{$form2}\n\t\t<br>\n\t\t{$formArtica}\n\t\t</td>\n\t</tr>\n\t</table>\n\t</div>\n\t<script>\n\t\n\tfunction CheckFieldsSamba(){\n\t\tvar AsWinbindd={$AsWinbindd};\n\t\tvar cups_installed={$cups_installed};\n\t\tvar TypeOfSamba={$TypeOfSamba};\n\t\tvar upTo357={$upTo357};\n\t\tvar upTo36={$upTo36};\n\t\tdocument.getElementById('DisableWinbindd').disabled=true;\n\t\tdocument.getElementById('EnablePrintersSharing').disabled=true;\n\n\t\tdocument.getElementById('client_ntlmv2_auth').disabled=true;\n\t\t\n\t\t\n\n\t\tif(upTo36==1){\n\t\t\tdocument.getElementById('client_ntlmv2_auth').disabled=false;\n\t\t}\t\t\n\t\t\n\t\t\n\t\tif(AsWinbindd==1){document.getElementById('DisableWinbindd').disabled=false;}\n\t\tif(cups_installed==1){document.getElementById('EnablePrintersSharing').disabled=false;}\n\n\t\tif(TypeOfSamba==3){\n\t\t\tdocument.getElementById('DisableWinbindd').disabled=true;\n\t\t\tdocument.getElementById('DisableWinbindd').checked=false;\n\t\t\tdocument.getElementById('local master').disabled=true;\n\t\t\tdocument.getElementById('domain logons').disabled=true;\n\t\t\tdocument.getElementById('local master').checked=true;\n\t\t\tdocument.getElementById('domain logons').checked=true;\n\t\t\tdocument.getElementById('domain master').disabled=true;\n\t\t\tdocument.getElementById('domain master').value='yes';\n\t\t}\n\t\t\n\t\t\n\t}\n\t\n\tvar {$after_post_func}=function (obj) {\n\t\ttempvalue=obj.responseText;\n\t\tif(tempvalue.length>3){alert(tempvalue);}\n\t\tif(document.getElementById('main_samba_quicklinks_config_services')){RefreshTab('main_samba_quicklinks_config_services');}\n\t }\t\n\t\n\t\n\tfunction SaveArticaSambaMainConfiguration(){\n\t\tvar XHR = new XHRConnection();\n\t\tif(document.getElementById('ArticaSambaAutomAskCreation').checked){\n\t\tXHR.appendData('ArticaSambaAutomAskCreation','1');}else{\n\t\tXHR.appendData('ArticaSambaAutomAskCreation','0');}\n\t\tXHR.appendData('HomeDirectoriesMask',document.getElementById('HomeDirectoriesMask').value);\n\t\tXHR.appendData('SharedFoldersDefaultMask',document.getElementById('SharedFoldersDefaultMask').value);\n\t\tAnimateDiv('MainSambaConfigDiv');\t\n\t\tXHR.sendAndLoad('{$page}', 'POST',{$after_post});\n\t}\n\t\n\n\t\n\t\n\t\tfunction SaveSambaMainConfiguration(){\n\t\tvar XHR = new XHRConnection();\n\t\tXHR.appendData('SaveGeneralSettings','yes');\n\t\tXHR.appendData('workgroup',document.getElementById('workgroup').value);\n\t\tXHR.appendData('netbiosname',document.getElementById('netbiosname').value);\n\t\tXHR.appendData('server string',document.getElementById('server string').value);\n\t\tXHR.appendData('log level',document.getElementById('log level').value);\n\t\tXHR.appendData('domain master',document.getElementById('domain master').value);\n\t\tXHR.appendData('os level',document.getElementById('os level').value);\n\t\tif(document.getElementById('disable netbios').checked){\n\t\t\tXHR.appendData('disable netbios','yes');}else{\n\t\t\tXHR.appendData('disable netbios','no');}\n\t\t\t\n\t\tif(document.getElementById('disable netbios').checked){\n\t\t\tXHR.appendData('disable netbios','yes');}else{\n\t\t\tXHR.appendData('disable netbios','no');}\n\n\t\tif(document.getElementById('enable_Editposix').checked){\n\t\t\tXHR.appendData('enable_Editposix','yes');}else{\n\t\t\tXHR.appendData('enable_Editposix','no');}\t\t\t\n\t\t\n\t\tif(document.getElementById('domain logons').checked){\n\t\t\tXHR.appendData('domain logons','yes');}else{\n\t\t\tXHR.appendData('domain logons','no');}\t\n\n\t\t\t\t\t\n\t\tif(document.getElementById('client_ntlmv2_auth').checked){XHR.appendData('client_ntlmv2_auth','1');}else{XHR.appendData('client_ntlmv2_auth','0');}\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\tif(document.getElementById('DisableWinbindd').checked){XHR.appendData('DisableWinbindd','1');}else{XHR.appendData('DisableWinbindd','0');}\t\t\t\n\t\tif(document.getElementById('EnablePrintersSharing').checked){XHR.appendData('EnablePrintersSharing','1');}else{XHR.appendData('EnablePrintersSharing','0');}\n\n\t\t\n\t\t\n\t\tif(document.getElementById('local master').checked){\n\t\t\tXHR.appendData('local master','yes');}else{\n\t\t\tXHR.appendData('local master','no');}\t\t\t\n\t\t\tAnimateDiv('MainSambaConfigDiv');\t\t\t\n\t\t\tXHR.sendAndLoad('{$page}', 'GET',x_SaveSambaMainConfiguration);\t\t\n\t\t}\n\n\t" . jsaddons() . "\n\t\t\n\t\n\t\n\tCheckFieldsSamba();\n\t</script>\n\t"; echo $tpl->_ENGINE_parse_body($html); }
function main_smb_config(){ $upTo357=0; $style="style='padding:3px;border-bottom:1px dotted #CCCCCC'"; $sock=new sockets(); $tpl=new templates(); $page=CurrentPageName(); $smb=new samba(); $ldap=new clladp(); $SambaEnabled=$sock->GET_INFO("SambaEnabled"); $EnableSambaActiveDirectory=$sock->GET_INFO("EnableSambaActiveDirectory"); if($SambaEnabled==null){$SambaEnabled=1;} $disable_samba=Paragraphe("server-disable-64.png",'{enable_disable_samba}','{enable_disable_samba_text}', "javascript:Loadjs('samba.disable.php');",'{enable_disable_samba_text}',260,null,1); $version=$smb->SAMBA_VERSION; if(preg_match("#^([0-9]+)\.([0-9]+)\.([0-9]+)#",$version,$re)){$major=$re[1];$minor=$re[2];$build=$re[3];} if($major>2){if($minor>4){if($build>6){$upTo357=1;}}} if($SambaEnabled==0){ $html=main_tabs()."<br> <center style='margin:50px'>$disable_samba</center>"; $tpl=new templates(); echo $tpl->_ENGINE_parse_body($html); exit; } $users=new usersMenus(); if($_GET["hostname"]==null){$hostname=$users->hostname;$_GET["hostname"]=$hostname;}else{$hostname=$_GET["hostname"];} for($i=0;$i<11;$i++){ $logh[$i]=$i; } $icon_samba_type=Paragraphe("64-server-ask.png",'{windows_network_neighborhood}','{windows_network_neighborhood_text}', "javascript:neighborhood();",'{windows_network_neighborhood}',260,null,1); $admin_domain=Paragraphe("members-priv-64.png",'{domain_admin}','{domain_admin_text}', "javascript:DomainAdmin();",'{domain_admin_text}',260,null,1); $acl_support=Paragraphe("acl-support-64.png",'{ACLS_SUPPORT}','{ACLS_SUPPORT_TEXT}', "javascript:Loadjs('samba.acls.settings.php');",'{ACLS_SUPPORT_TEXT}',260,null,1); $restart=Paragraphe("64-refresh.png",'{APP_SAMBA_RESTART}','{APP_SAMBA_RESTART_TEXT}', "javascript:RestartSmbServices();",'{APP_SAMBA_RESTART_TEXT}',260,null,1); $enable_Editposix=$tpl->_ENGINE_parse_body("{enable_Editposix}").':'; $enable_Editposix=html_entity_decode($enable_Editposix); if(strlen($enable_Editposix)>37){ $enable_Editposix=texttooltip(htmlentities(substr($enable_Editposix,0,35)).'...:',htmlentities($enable_Editposix)); } $domain_master=" <tr> <td align='right' nowrap valign='top' class=legend>{local master}:</td> <td valign='top'>" . Field_checkbox('local master','yes',$smb->main_array["global"]["local master"])."</td> <td valign='top'>" . help_icon("{local master_text}")."</td> </tr> <tr> <td align='right' nowrap valign='top' class=legend>{domain logons}:</td> <td valign='top'>" . Field_checkbox('domain logons','yes',$smb->main_array["global"]["domain logons"])."</td> <td valign='top'>" . help_icon("{domain logons_text}")."</td> </tr> <tr> <td align='right' nowrap valign='top' class=legend>{domain master}:</td> <td valign='top' >" . Field_array_Hash(array("no"=>"{no}","yes"=>"{yes}", "auto"=>"{auto}"),"domain master",$smb->main_array["global"]["domain master"],null,null,0,'width:100px;font-size:13px;padding:3px')."</td> <td valign='top'>" . help_icon("{domain master_text}")."</td> </tr>"; if($smb->SambaEnableEditPosixExtension==1){$smb->SambaEnableEditPosixExtension="yes";} if($EnableSambaActiveDirectory==1){ $workgroup_disabled=true; $domain_master=" <tr> <td align='right' nowrap valign='top' class=legend>{local master}:</td> <td valign='top' >--". Field_hidden("local master","{$smb->main_array["global"]["local master"]}")."</td> <td valign='top'>" . help_icon("{local master_text}")."</td> </tr> <tr> <td align='right' nowrap valign='top' class=legend>{domain logons}:</td> <td valign='top' >--". Field_hidden("domain logons","{$smb->main_array["global"]["domain logons"]}")."</td> <td valign='top'>" . help_icon("{domain logons_text}")."</td> </tr> <tr> <td align='right' nowrap valign='top' class=legend>{domain master}:</td> <td valign='top' >--". Field_hidden("domain master","{$smb->main_array["global"]["domain master"]}")."</td> <td valign='top'>" . help_icon("{domain master_text}")."</td> </tr>"; } $log_level=Field_array_Hash($logh,'log level',$smb->main_array["global"]["log level"],null,null,0,'width:90px'); $form1=" <input type='hidden' name='SaveGeneralSettings' id='SaveGeneralSettings' value='yes'> <table style='width:98%' class=form> <tr> <td align='right' nowrap valign='top' class=legend class=legend>SID:</td> <td valign='top'><strong>".$ldap->LOCAL_SID()."</strong></td> <td valign='top'><div style='padding-right:3px;'>" . imgtootltip("icon_edit.gif","{CHANGE_SID_TEXT}","Loadjs('samba.sid.php')",'right')."</div></td> </tr> <tr> <tr> <td align='right' nowrap valign='top' class=legend class=legend>{workgroup}:</td> <td valign='top'>" . Field_text("workgroup",$smb->main_array["global"]["workgroup"],'width:190px;font-size:13px;padding:3px',null,null,null,false,null,$workgroup_disabled)."</td> <td valign='top'>" . help_icon("{workgroup_text}")."</td> </tr> <tr> <td align='right' nowrap valign='top' class=legend>{netbiosname}:</td> <td valign='top'>" . Field_text("netbiosname",$smb->main_array["global"]["netbios name"],'width:190px;font-size:13px;padding:3px')."</td> <td valign='top'>" . help_icon("{netbiosname_text}")."</td> </tr> <tr> <td align='right' nowrap valign='top' class=legend>{server string}:</td> <td valign='top'>" . Field_text("server string",$smb->main_array["global"]["server string"],'width:190px;font-size:13px;padding:3px')."</td> <td valign='top'>" . help_icon("{server string_text}")."</td> </tr> <tr> <td align='right' nowrap valign='top' class=legend>{disable netbios}:</td> <td valign='top'>" . Field_checkbox('disable netbios','yes',$smb->main_array["global"]["disable netbios"])."</td> <td valign='top'>" . help_icon("{disable netbios_text}")."</td> </tr> <tr> <td align='right' nowrap valign='top' class=legend>$enable_Editposix</td> <td valign='top'>" . Field_checkbox('enable_Editposix','yes',$smb->SambaEnableEditPosixExtension)."</td> <td valign='top'>" . help_icon("{enable_Editposix_text}")."</td> </tr> <tr> <td align='right' nowrap valign='top' class=legend>{samba_strict_allocate}:</td> <td valign='top'>" . Field_checkbox('strict allocate','yes',$smb->main_array["global"]["strict allocate"])."</td> <td valign='top'>" . help_icon("{samba_strict_allocate_text}")."</td> </tr> <tr> <td align='right' nowrap valign='top' class=legend>{log level}:</td> <td valign='top'>$log_level</td> <td valign='top'>" . help_icon("{log level_text}")."</td> </tr> <tr> <td colspan=3 align='right' valign='top'> <hr> ". button("{apply}","SaveSambaMainConfiguration()") ."</td> </tr> </table> "; $users=new usersMenus(); $sock=new sockets(); $AsWinbindd=0; $cups_installed=0; if($users->WINBINDD_INSTALLED){$winbindd="status_ok.gif";$AsWinbindd=1;}else{$winbindd="status_critical.gif";} if($users->CUPS_INSTALLED){$cups_installed=1;} $TypeOfSamba=$sock->GET_INFO("TypeOfSamba"); if(!is_numeric($TypeOfSamba)){$TypeOfSamba=1;} $form2=" <table style='width:98%' class=form> <tr> <td align='right' nowrap valign='top' class=legend>{winbindd_installed}:</td> <td valign='top'><img src='img/$winbindd'></td> <td valign='top'> </td> </tr> <tr> <td align='right' nowrap valign='top' class=legend>{disable_winbindd}:</td> <td valign='top'>" . Field_checkbox('DisableWinbindd','1',$sock->GET_INFO('DisableWinbindd'))."</td> <td valign='top'> </td> </tr> <tr> <td align='right' nowrap valign='top' class=legend>{EnablePrintersSharing}:</td> <td valign='top'>" . Field_checkbox('EnablePrintersSharing','1',$sock->GET_INFO('EnablePrintersSharing'))."</td> <td valign='top'> </td> </tr> $domain_master <tr> <td align='right' nowrap valign='top' class=legend>{os level}:</td> <td valign='top'>" . Field_text("os level",$smb->main_array["global"]["os level"],'width:60px;font-size:13px;padding:3px')."</td> <td valign='top'>" . help_icon("{os level_text}")."</td> </tr> <tr> <td colspan=3 align='right' valign='top'> <hr> ". button("{apply}","SaveSambaMainConfiguration()") ."</td> </tr> </table> "; $html=" <div id='MainSambaConfigDiv'> <table style='width:100%'> <tr> <td valign='top'>$icon_samba_type$admin_domain$disable_samba$acl_support$restart </td> <td valign='top' width=99%> $form1 <br> $form2 </td> </tr> </table> </div> <script> function CheckFieldsSamba(){ var AsWinbindd=$AsWinbindd; var cups_installed=$cups_installed; var TypeOfSamba=$TypeOfSamba; var upTo357=$upTo357; document.getElementById('DisableWinbindd').disabled=true; document.getElementById('EnablePrintersSharing').disabled=true; document.getElementById('strict allocate').disabled=true; if(upTo357==1){document.getElementById('strict allocate').disabled=false;} if(AsWinbindd==1){document.getElementById('DisableWinbindd').disabled=false;} if(cups_installed==1){document.getElementById('EnablePrintersSharing').disabled=false;} if(TypeOfSamba==3){ document.getElementById('DisableWinbindd').disabled=true; document.getElementById('DisableWinbindd').checked=false; document.getElementById('local master').disabled=true; document.getElementById('domain logons').disabled=true; document.getElementById('local master').checked=true; document.getElementById('domain logons').checked=true; document.getElementById('domain master').disabled=true; document.getElementById('domain master').value='yes'; } } var x_SaveSambaMainConfiguration=function (obj) { tempvalue=obj.responseText; if(tempvalue.length>0){alert(tempvalue);} RefreshTab('main_config_samba'); } function SaveSambaMainConfiguration(){ var XHR = new XHRConnection(); XHR.appendData('SaveGeneralSettings','yes'); XHR.appendData('workgroup',document.getElementById('workgroup').value); XHR.appendData('netbiosname',document.getElementById('netbiosname').value); XHR.appendData('server string',document.getElementById('server string').value); XHR.appendData('log level',document.getElementById('log level').value); XHR.appendData('domain master',document.getElementById('domain master').value); XHR.appendData('os level',document.getElementById('os level').value); if(document.getElementById('disable netbios').checked){ XHR.appendData('disable netbios','yes');}else{ XHR.appendData('disable netbios','no');} if(document.getElementById('disable netbios').checked){ XHR.appendData('disable netbios','yes');}else{ XHR.appendData('disable netbios','no');} if(document.getElementById('enable_Editposix').checked){ XHR.appendData('enable_Editposix','yes');}else{ XHR.appendData('enable_Editposix','no');} if(document.getElementById('domain logons').checked){ XHR.appendData('domain logons','yes');}else{ XHR.appendData('domain logons','no');} if(document.getElementById('strict allocate').checked){ XHR.appendData('strict allocate','yes');}else{ XHR.appendData('strict allocate','no');} if(document.getElementById('DisableWinbindd').checked){XHR.appendData('DisableWinbindd','1');}else{XHR.appendData('DisableWinbindd','0');} if(document.getElementById('EnablePrintersSharing').checked){XHR.appendData('EnablePrintersSharing','1');}else{XHR.appendData('EnablePrintersSharing','0');} if(document.getElementById('local master').checked){ XHR.appendData('local master','yes');}else{ XHR.appendData('local master','no');} document.getElementById('MainSambaConfigDiv').innerHTML='<center><img src=\"img/wait_verybig.gif\"></center>'; XHR.sendAndLoad('$page', 'GET',x_SaveSambaMainConfiguration); } function RestartSmbServices(){ var XHR = new XHRConnection(); XHR.appendData('RestartServices','yes'); XHR.sendAndLoad('$page', 'GET',x_SaveSambaMainConfiguration); } CheckFieldsSamba(); "; echo $tpl->_ENGINE_parse_body($html); }