checkPassword($_POST['passwd'])) { $error = _("Master password is wrong!"); } // add new profile elseif ($_POST['action'] == "add") { if (preg_match("/^[a-z0-9_-]+$/i", $_POST['addprofile']) && !in_array($_POST['addprofile'], getConfigProfiles())) { // check profile password if ($_POST['addpassword'] && $_POST['addpassword2'] && ($_POST['addpassword'] == $_POST['addpassword2'])) { // check if lam.conf_sample exists if (!is_file("../../config/lam.conf_sample")) { $error = "The file config/lam.conf_sample was not found. Please restore it."; } else { // create new profile file @copy("../../config/lam.conf_sample", "../../config/" . $_POST['addprofile'] . ".conf"); @chmod ("../../config/" . $_POST['addprofile'] . ".conf", 0600); $file = is_file("../../config/" . $_POST['addprofile'] . ".conf"); if ($file) { // load as config and write new password $conf = new LAMConfig($_POST['addprofile']); $conf->set_Passwd($_POST['addpassword']); $conf->save(); $_SESSION['conf_isAuthenticated'] = $_POST['addprofile']; $_SESSION['conf_config'] = $conf; $_SESSION['conf_messages'][] = array('INFO', _("Created new profile."), $_POST['addprofile']); metaRefresh('confmain.php'); exit; } else { $error = _("Unable to create new profile!"); } } } else $error = _("Profile passwords are different or empty!"); } else $error = _("Profile name is invalid!"); } // rename profile elseif ($_POST['action'] == "rename") { if (preg_match("/^[a-z0-9_-]+$/i", $_POST['oldfilename']) && preg_match("/^[a-z0-9_-]+$/i", $_POST['renfilename']) && !in_array($_POST['renfilename'], getConfigProfiles())) { if (rename("../../config/" . $_POST['oldfilename'] . ".conf", "../../config/" . $_POST['renfilename'] . ".conf")) { $msg = _("Renamed profile."); } else $error = _("Could not rename file!"); // update default profile setting if needed if ($cfg->default == $_POST['oldfilename']) { $cfg->default = $_POST['renfilename']; $cfg->save(); } } else $error = _("Profile name is invalid!"); } // delete profile elseif ($_POST['action'] == "delete") { if (preg_match("/^[a-z0-9_-]+$/i", $_POST['delfilename']) && @unlink("../../config/" . $_POST['delfilename'] . ".conf")) { $msg = _("Profile deleted."); } else $error = _("Unable to delete profile!"); } // set new profile password elseif ($_POST['action'] == "setpass") { if (preg_match("/^[a-z0-9_-]+$/i", $_POST['setprofile'])) { if ($_POST['setpassword'] && $_POST['setpassword2'] && ($_POST['setpassword'] == $_POST['setpassword2'])) { $config = new LAMConfig($_POST['setprofile']); $config->set_Passwd($_POST['setpassword']); $config->save(); $config = null; $msg = _("New password set successfully."); } else $error = _("Profile passwords are different or empty!"); } else $error = _("Profile name is invalid!"); } // set default profile elseif ($_POST['action'] == "setdefault") { if (preg_match("/^[a-z0-9_-]+$/i", $_POST['defaultfilename'])) { $configMain = new LAMCfgMain(); $configMain->default = $_POST['defaultfilename']; $configMain->save(); $configMain = null; $msg = _("New default profile set successfully."); } else $error = _("Profile name is invalid!"); } } echo $_SESSION['header']; ?>
LDAP Account Manager |