index 9a7afae5a0fde5d69efaebb54246486da701dc33..71289795430413cee6843706178893f32040ed15 100644 (file)
*/
*/
-class setup_step_5 extends setup_step
+class Step_Config1 extends setup_step
{
var $peopleou = "ou=people";
var $groupou = "ou=groups";
var $peopledn = "cn";
var $uidbase = 1000;
{
var $peopleou = "ou=people";
var $groupou = "ou=groups";
var $peopledn = "cn";
var $uidbase = 1000;
+ var $krbsasl = FALSE;
+ var $strict = TRUE;
- var $base_hook = "/usr/bin/sudo myscript";
+ var $header_image = "images/ldapserver.png";
+ var $account_expiration =FALSE;
+ var $base_hook = "";
var $base_hook_active = FALSE;
var $encryption = "crypt";
var $base_hook_active = FALSE;
var $encryption = "crypt";
- var $mail = "none";
var $theme = "default";
var $theme = "default";
- var $errorlvl = FALSE;
- var $cyrusunixstyle = FALSE;
+
+ var $include_personal_title = FALSE;
var $pwd_rules = array("pwminlen" => 6,
"pwminlen_active" => FALSE,
"pwdiffer" => 5,
"pwdiffer_active" => FALSE,
var $pwd_rules = array("pwminlen" => 6,
"pwminlen_active" => FALSE,
"pwdiffer" => 5,
"pwdiffer_active" => FALSE,
- "externalpwdhook" => "/path/to/your/script username oldpassword newpassword",
+ "externalpwdhook" => "",
"externalpwdhook_active" => FALSE);
"externalpwdhook_active" => FALSE);
- var $mail_settings = array("vacationdir" => "/etc/gosa/vacation",
- "vacationdir_active" => FALSE);
-
- var $crypt_methods = array();
- var $mail_methods = array();
+ var $id_settings = array( "idgen" => "{%sn}-{%givenName[2-4]}",
+ "idgen_active" => FALSE,
+ "minid" => "100",
+ "minid_active" => FALSE);
+ var $crypt_methods = array();
- var $attributes = array("peopleou","groupou","peopledn","uidbase","encryption","mail","theme","errorlvl","cyrusunixstyle",
- "base_hook","base_hook_active");
+ var $attributes = array("peopleou","groupou","peopledn","uidbase","encryption","theme","krbsasl",
+ "base_hook","base_hook_active","account_expiration","strict","include_personal_title");
- function setup_step_5()
+ function Step_Config1()
{
$this->update_strings();
{
$this->update_strings();
- $tmp = @passwordMethod::get_available_methods_if_not_loaded();
+ $tmp = @passwordMethod::get_available_methods();
foreach($tmp['name'] as $name){
$this->crypt_methods[$name] = $name;
}
foreach($tmp['name'] as $name){
$this->crypt_methods[$name] = $name;
}
- $tmp = $this->get_available_mail_classes();
- foreach($tmp['name'] as $name){
- $this->mail_methods[$name] = $name;
- }
}
function update_strings()
{
$this->s_title = _("GOsa settings 1/3");
}
function update_strings()
{
$this->s_title = _("GOsa settings 1/3");
- $this->s_title_long = _("GOsa generic settings, page 1/3");
- $this->s_info = _("This dialog allows you to setup GOsa behaviour");
+ $this->s_title_long = _("GOsa settings 1/3");
+ $this->s_info = _("GOsa generic settings");
}
}
{
$smarty = get_smarty();
$smarty->assign("peopledns",array("uid","cn"));
{
$smarty = get_smarty();
$smarty->assign("peopledns",array("uid","cn"));
+ $smarty->assign("id_settings",$this->id_settings);
$smarty->assign("crypt_methods",$this->crypt_methods);
$smarty->assign("crypt_methods",$this->crypt_methods);
- $smarty->assign("mail_methods",$this->mail_methods);
$smarty->assign("themes",$this->get_themes());
$smarty->assign("pwd_rules",$this->pwd_rules);
$smarty->assign("themes",$this->get_themes());
$smarty->assign("pwd_rules",$this->pwd_rules);
- $smarty->assign("mail_settings",$this->mail_settings);
$smarty->assign("bool",array(FALSE => _("No"), TRUE => _("Yes")));
$smarty->assign("bool",array(FALSE => _("No"), TRUE => _("Yes")));
- $smarty->assign("warnings" ,$this->check());
- $smarty->assign("warnings_cnt" ,count($this->check()));
foreach($this->attributes as $attr){
$smarty->assign($attr,$this->$attr);
}
foreach($this->attributes as $attr){
$smarty->assign($attr,$this->$attr);
}
- return($smarty -> fetch (get_template_path("../setup/setup_step5.tpl")));
- }
-
-
- /* Returns the classnames auf the mail classes */
- function get_available_mail_classes()
- {
- $dir = opendir( "../include");
- $methods = array();
- $suffix = "class_mail-methods-";
- $lensuf = strlen($suffix);
- $prefix = ".inc";
- $lenpre = strlen($prefix);
- $i = 0;
- while (($file = readdir($dir)) !== false){
- if(stristr($file,$suffix)) {
- $lenfile = strlen($file);
- $methods['name'][$i] = substr($file,$lensuf,($lenfile-$lensuf)-$lenpre);
- $methods['file'][$i] = $file;
- $methods[$i]['file'] = $file;
- $methods[$i]['name'] = substr($file,$lensuf,($lenfile-$lensuf)-$lenpre);
- $i++;
- }
- }
- return($methods);
+ /* !!! Attention strict is inverse. If you change this,
+ * don't forget to change save_object too
+ */
+ $smarty->assign("strict",!$this->strict);
+ return($smarty -> fetch (get_template_path("../setup/setup_config1.tpl")));
}
}
+
function get_themes()
{
$dir = opendir( "../ihtml/themes/");
function get_themes()
{
$dir = opendir( "../ihtml/themes/");
{
$message = array();
{
$message = array();
+ if(isset($this->id_settings['minid_active']) && !is_numeric($this->id_settings['minid'])){
+ $message[] = sprintf(_("The specified value for '%s' must be a numeric value"),_("GID / UID min id"));
+ }
+
if(preg_match("/,$/",$this->peopleou)){
$message[] =sprintf(_("Don't add a trailing comma to '%s'."),_("People storage ou"));
}
if(preg_match("/,$/",$this->peopleou)){
$message[] =sprintf(_("Don't add a trailing comma to '%s'."),_("People storage ou"));
}
$message[] = _("The given password differ value is not numeric.");
}
return($message);
$message[] = _("The given password differ value is not numeric.");
}
return($message);
-
}
function save_object()
}
function save_object()
/* Get attributes */
foreach($this->attributes as $attr){
if(isset($_POST[$attr])){
/* Get attributes */
foreach($this->attributes as $attr){
if(isset($_POST[$attr])){
- $this->$attr = validate($_POST[$attr]);
+ $this->$attr = validate(get_post($attr));
}
}
}
}
+ /* !!! Attention strict is inverse. If you change this,
+ * don't forget to change the smarty assignment too
+ */
+ if(isset($_POST['strict'])){
+ if($_POST['strict']){
+ $this->strict = FALSE;
+ }else{
+ $this->strict = TRUE;
+ }
+ }
+
+ if(isset($_POST['minid_active'])){
+ $this->id_settings['minid_active'] = TRUE;
+ if(isset($_POST['minid'])){
+ $this->id_settings['minid'] = get_post('minid');
+ }
+ }else{
+ $this->id_settings['minid_active'] = FALSE;
+ }
+
+ /* Generic settings */
+ if(isset($_POST['idgen_active'])){
+ $this->id_settings['idgen_active'] = TRUE;
+ if(isset($_POST['idgen'])){
+ $this->id_settings['idgen'] = get_post('idgen');
+ }
+ }else{
+ $this->id_settings['idgen_active'] = FALSE;
+ }
+
/* Get password settings */
if(isset($_POST['pwdiffer_active'])){
$this->pwd_rules['pwdiffer_active'] = TRUE;
if(isset($_POST['pwdiffer'])){
/* Get password settings */
if(isset($_POST['pwdiffer_active'])){
$this->pwd_rules['pwdiffer_active'] = TRUE;
if(isset($_POST['pwdiffer'])){
- $this->pwd_rules['pwdiffer'] = $_POST['pwdiffer'];
+ $this->pwd_rules['pwdiffer'] = get_post('pwdiffer');
}
}else{
$this->pwd_rules['pwdiffer_active'] = FALSE;
}
}else{
$this->pwd_rules['pwdiffer_active'] = FALSE;
if(isset($_POST['pwminlen_active'])){
$this->pwd_rules['pwminlen_active'] = TRUE;
if(isset($_POST['pwminlen'])){
if(isset($_POST['pwminlen_active'])){
$this->pwd_rules['pwminlen_active'] = TRUE;
if(isset($_POST['pwminlen'])){
- $this->pwd_rules['pwminlen'] = $_POST['pwminlen'];
+ $this->pwd_rules['pwminlen'] = get_post('pwminlen');
}
}else{
$this->pwd_rules['pwminlen_active'] = FALSE;
}
}
}else{
$this->pwd_rules['pwminlen_active'] = FALSE;
}
- /* Mail settings */
- if(isset($_POST['vacationdir_active'])){
- $this->mail_settings['vacationdir_active'] = TRUE;
- if(isset($_POST['vacationdir'])){
- $this->mail_settings['vacationdir'] = $_POST['vacationdir'];
- }
- }else{
- $this->mail_settings['vacationdir_active'] = FALSE;
- }
-
- /* Mail settings */
+ /* External pwd settings */
if(isset($_POST['externalpwdhook_active'])){
$this->pwd_rules['externalpwdhook_active'] = TRUE;
if(isset($_POST['externalpwdhook'])){
if(isset($_POST['externalpwdhook_active'])){
$this->pwd_rules['externalpwdhook_active'] = TRUE;
if(isset($_POST['externalpwdhook'])){
- $this->pwd_rules['externalpwdhook'] = $_POST['externalpwdhook'];
+ $this->pwd_rules['externalpwdhook'] = get_post('externalpwdhook');
}
}else{
$this->pwd_rules['externalpwdhook_active'] = FALSE;
}
}
}else{
$this->pwd_rules['externalpwdhook_active'] = FALSE;
}
- /* Mail settings */
+ /* base hook settings */
if(isset($_POST['base_hook_active'])){
$this->pwd_rules['base_hook_active'] = TRUE;
if(isset($_POST['base_hook'])){
if(isset($_POST['base_hook_active'])){
$this->pwd_rules['base_hook_active'] = TRUE;
if(isset($_POST['base_hook'])){
- $this->pwd_rules['base_hook'] = $_POST['base_hook'];
+ $this->pwd_rules['base_hook'] = get_post('base_hook');
}
}else{
$this->pwd_rules['base_hook_active'] = FALSE;
}
}else{
$this->pwd_rules['base_hook_active'] = FALSE;
function get_attributes()
{
$tmp = setup_step::get_attributes();
function get_attributes()
{
$tmp = setup_step::get_attributes();
- foreach(array("pwd_rules","mail_settings") as $attr){
+ foreach(array("pwd_rules","id_settings") as $attr){
$tmp[$attr]= $this->$attr;
}
return($tmp);
$tmp[$attr]= $this->$attr;
}
return($tmp);