summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: ebdfd81)
raw | patch | inline | side by side (parent: ebdfd81)
author | hickert <hickert@594d385d-05f5-0310-b6e9-bd551577e9d8> | |
Wed, 5 May 2010 13:06:31 +0000 (13:06 +0000) | ||
committer | hickert <hickert@594d385d-05f5-0310-b6e9-bd551577e9d8> | |
Wed, 5 May 2010 13:06:31 +0000 (13:06 +0000) |
-manpage
-FAQ
-flag usage
git-svn-id: https://oss.gonicus.de/repositories/gosa/trunk@18147 594d385d-05f5-0310-b6e9-bd551577e9d8
-FAQ
-flag usage
git-svn-id: https://oss.gonicus.de/repositories/gosa/trunk@18147 594d385d-05f5-0310-b6e9-bd551577e9d8
13 files changed:
diff --git a/gosa-core/FAQ b/gosa-core/FAQ
index cd9dff8641bfdbabc4bd20ea766d9cf2478a02da..8148c169d4dfa1a00285ed29e05f993ee30f9747 100644 (file)
--- a/gosa-core/FAQ
+++ b/gosa-core/FAQ
section of your gosa.conf.
-Q: Microsoft Internet Explorer <=6 seems paints strange blocks around
- images.
-
-A: Use Firefox, Konqueror, Safari, Opera, IE >= 7, etc. IE is broken and
- I don't want to waste my time with working around this old crap. There's
- a quick hack, if you just put "iePngWorkaround='true'" inside the main
- section of your gosa.conf. This is a JavaScript based workaround and I've
- to place a WARNING here, that it is damn slow if you've large lists to
- display.
-
- If you have much time, you can provide a seamless integration with MS
- filter css extension.
-
-
Q: Is there a way to let users change passwords without logging into GOsa?
A: Yes. Browse to "password.php". You can preset a couple of things i.e.:
index 6c6d576adb2269af2071682e6807f53d0f3d0c40..643b1dfdb6edfcfe777c295f0d4a6928e040c70b 100644 (file)
{if $cv.optional.noprimarygroup}
primaryGroupFilter="true"
{/if}
-{if $cv.optional.mailQueueScriptPath_active}
- mailQueueScriptPath="{$cv.optional.mailQueueScriptPath}"
-{/if}
{if $cv.optional.user_filter_cookie}
storeFilterSettings="true"
{else}
index 5ef5f3186ed55a8dd5b61fedfe8613d21dee5725..afe458cdf64fea1c68bfc7f576118213fd9c8cce 100644 (file)
statement enables copy and paste for LDAP entries managed with GOsa.
.PP
-.B snapshots
+.B enableSnapshots
.I bool
.PP
The
-.I snapshots
+.I enableSnapshots
statement enables a snapshot mechaism in GOsa. This enables you to save
certain states of entries and restore them later on.
.PP
variable defines where to store PPD files for the GOto environment plugins.
.PP
+.B ppdGzip
+.I bool
+.PP
+The
+.I ppdGzip
+variable enables PPD file compression.
+.PP
+
.B resolutions
.I path
.PP
.fi
.PP
+.B gosaSupportTimeout
+.I integer
+.PP
+The
+.I gosaSupportTimeout
+sets a connection timeout for all gosa-si actions. See
+.I gosaSupportURI
+for details.
+.PP
.B Browser and display options
@@ -500,30 +517,6 @@ not work because the sessions will be removed by a cron job instead. Please modi
the value inside of your php.ini instead.
.PP
-.B primaryGroupFilter
-.I bool
-.PP
-The
-.I primaryGroupFilter
-variable enables or disables the group filter to show primary user groups. It is
-time consuming to evaluate which groups are primary and which are not. So you may
-want to set it to
-.I true
-if your group plugin is slow.
-.PP
-
-.B iePngWorkaround
-.I bool
-.PP
-The
-.I iePngWorkaround
-variable enables or disables a workaround for IE < 7 in order to display transparent
-PNG files correctly. This drastically slows down browsing. Please use Firefox or Opera
-instead.
-.PP
-.PP
-
-
.B Password options
.PP
.B passwordMinLength
@@ -978,11 +971,11 @@ externaly. It gets called with the current entry "dn" and the attribute to be ID
should return an integer value.
.PP
-.B hash
+.B passwordDefaultHash
.I string
.PP
The
-.I hash
+.I passwordDefaultHash
statement defines the default password hash to choose for new accounts. Valid values are
.I crypt/standard-des, crypt/md5, crypt/enhanced-des, crypt/blowfish, md5, sha, ssha, smd5, clear
and
.if
.PP
-.B sambaidmapping
+.B sambaIdmapping
.I bool
.PP
The
-.I sambaidmapping
+.I sambaIdMapping
statement tells GOsa to maintain sambaIdmapEntry objects. Depending on your
setup this can drastically improve the windows login performance.
.PP
index 7b9b07cd11d1d5d8f49b56c3ce7d898f3d53b368..d46540cb8f578eff1c8e725894a14a44f5f6f2d9 100644 (file)
if($helpdir == ""){
$smarty->assign("help_contents","<br><h2>"._("There is no helpfile specified for this class"))."</h2>";
- $smarty->assign("iePngWorkaround", $config->get_cfg_value("core","iePngWorkaround","false" ) == "true");
$header= "<!-- headers.tpl-->".$smarty->fetch(get_template_path('headers.tpl'));
$display= ( $header.$smarty->fetch(get_template_path('help.tpl')));
echo $display;
index 9e8f007ad924c6e359ef159189e7a5218e527cc0..d55a13ff9afb37fb536047bcc20b10681e0f1526 100644 (file)
--- a/gosa-core/html/index.php
+++ b/gosa-core/html/index.php
$smarty->assign("php_errors", "");
}
$smarty->assign("msg_dialogs", msg_dialog::get_dialogs());
- $smarty->assign("iePngWorkaround", $config->get_cfg_value("core","iePngWorkaround","false" ) == "true");
$smarty->display (get_template_path('headers.tpl'));
$smarty->assign("version",get_gosa_version());
index dc6a14572c1ea5ee83e9b56d61c338a68865975e..e3b72bef771347850ab346bd0a605cdf1a279a11 100644 (file)
if (isset($config) && $config->get_cfg_value("core","htaccessAuthentication") == "true"){
/* Else notice that the user has to close the browser... */
- $smarty->assign("iePngWorkaround", FALSE);
-
$smarty->display (get_template_path('headers.tpl'));
$smarty->display (get_template_path('logout-close.tpl'));
exit;
index af771cdf42c0e4a0f413081cd6b2ad74f96d3f51..6e939144447e7a245b3a6619f06d9db33027ed24 100644 (file)
--- a/gosa-core/html/main.php
+++ b/gosa-core/html/main.php
$smarty->assign ("menu", $plist->gen_menu());
$smarty->assign ("plug", "$plug");
-$smarty->assign("iePngWorkaround", $config->get_cfg_value("core","iePngWorkaround","false" ) == "true");
-
/* React on clicks */
if ($_SERVER["REQUEST_METHOD"] == "POST"){
diff --git a/gosa-core/ihtml/themes/default/headers.tpl b/gosa-core/ihtml/themes/default/headers.tpl
index e91ad3d20bcd3818d672797c266036407e419625..c267e9596f9e1f56167952ba7d8d5e6f2393f9b4 100644 (file)
}
</style>
<link rel="shortcut icon" href="favicon.ico">
-{if $iePngWorkaround}
- <script language="javascript" src="include/png.js" type="text/javascript"></script>
-{/if}
<script language="javascript" src="include/prototype.js" type="text/javascript"></script>
<script language="javascript" src="include/gosa.js" type="text/javascript"></script>
<script language="javascript" src="include/scriptaculous.js" type="text/javascript"></script>
index db6c3ce3ed5090cbbbd96fd7fb7f696b9b4eac96..efe2203d901300e87546ec0772d6ee1fce5346ed 100644 (file)
array(
"name" => "htaccessAuthentication",
- "type" => "string",
- "default" => "",
- "description" => "",
- "check" => "",
+ "type" => "bool",
+ "default" => FALSE,
+ "description" => _("The 'htaccessAuthentication' variable tells GOsa to use either htaccess authentication or LDAP authentication. This can be used if you want to use i.e. kerberos to authenticate the users."),
+ "check" => "gosaProperty::isBool",
"migrate" => "",
- "group" => "core",
+ "group" => "authentification",
"mandatory" => FALSE),
array(
"name" => "logging",
- "type" => "string",
- "default" => "",
- "description" => "",
- "check" => "",
+ "type" => "bool",
+ "default" => TRUE,
+ "description" => _("The 'logging' statement enables event logging on GOsa side. Setting it to 'true' GOsa will log every action a user performs via syslog. If you use rsyslog and configure it to mysql logging, you can browse all events within GOsa. GOsa will not log anything, if the logging value is empty or set to 'false'."),
+
+ "check" => "gosaProperty::isBool",
"migrate" => "",
"group" => "core",
"mandatory" => FALSE),
array(
- "name" => "listSummary",
- "type" => "string",
- "default" => "",
- "description" => "",
- "check" => "",
- "migrate" => "",
- "group" => "core",
- "mandatory" => FALSE),
+ "name" => "listSummary",
+ "type" => "bool",
+ "default" => TRUE,
+ "description" => _("The 'listSummary' statement determines whether a status bar will be shown on the bottom of GOsa generated lists, displaying a short summary of type and number of elements in the list."),
+ "check" => "gosaProperty::isBool",
+ "migrate" => "",
+ "group" => "visual",
+ "mandatory" => FALSE),
array(
"name" => "passwordMinLength",
- "type" => "string",
+ "type" => "integer",
"default" => "",
- "description" => "",
- "check" => "",
+ "description" => _("The 'passwordMinLength' statement determines whether a newly entered password has to be of a minimum length."),
+ "check" => "gosaProperty::isInteger",
"migrate" => "",
- "group" => "core",
+ "group" => "password",
"mandatory" => FALSE),
array(
"name" => "passwordMinDiffer",
- "type" => "string",
+ "type" => "integer",
"default" => "",
- "description" => "",
- "check" => "",
+ "description" => _("The 'passwordMinDiffer' statement determines whether a newly entered password has to be checked to have at least n different characters."),
+ "check" => "gosaProperty::isInteger",
"migrate" => "",
- "group" => "core",
+ "group" => "password",
"mandatory" => FALSE),
array(
"name" => "passwordHook",
- "type" => "string",
+ "type" => "shellCommand",
"default" => "",
- "description" => "",
- "check" => "",
+ "description" =>
+ _("The 'passwordHook' can specify an external script to handle password settings at some other location besides the LDAP.")." ".sprintf(_("It will be called this way: %s"),"/path/to/your/script \"username\" \"oldpassword\" \"newpassword\""),
+ "check" => "gosaProperty::isShellCommand",
"migrate" => "",
- "group" => "core",
+ "group" => "password",
"mandatory" => FALSE),
array(
"name" => "displayErrors",
- "type" => "string",
- "default" => "",
- "description" => "",
- "check" => "",
+ "type" => "bool",
+ "default" => FALSE,
+ "description" => "The 'displayErrors' statement tells GOsa to show PHP errors in the upper part of the screen. This should be disabled in productive deployments, because there might be some important passwords arround.",
+ "check" => "gosaProperty::isBool",
"migrate" => "",
- "group" => "core",
+ "group" => "debug",
"mandatory" => FALSE),
array(
"name" => "schemaCheck",
- "type" => "string",
- "default" => "",
- "description" => "",
- "check" => "",
+ "type" => "bool",
+ "default" => TRUE,
+ "description" => "The 'schemaCheck' statement enables or disables schema checking during login. It is recommended to switch this on in order to let GOsa handle object creation more efficient.",
+ "check" => "gosaProperty::isInteger",
"migrate" => "",
- "group" => "core",
+ "group" => "debug",
"mandatory" => FALSE),
array(
"name" => "copyPaste",
- "type" => "string",
- "default" => "",
- "description" => "",
- "check" => "",
+ "type" => "bool",
+ "default" => FALSE,
+ "description" => "The 'copyPaste' statement enables copy and paste for LDAP entries managed with GOsa.",
+ "check" => "gosaProperty::isInteger",
"migrate" => "",
- "group" => "core",
+ "group" => "copyPaste",
"mandatory" => FALSE),
array(
"name" => "forceGlobals",
- "type" => "string",
- "default" => "",
- "description" => "",
- "check" => "",
+ "type" => "bool",
+ "default" => FALSE,
+ "description" => "The 'forceGlobals' statement enables PHP security checks to force register_global settings to be switched off.",
+ "check" => "gosaProperty::isBool",
"migrate" => "",
- "group" => "core",
+ "group" => "security",
"mandatory" => FALSE),
array(
"name" => "forceSSL",
"type" => "string",
- "default" => "",
- "description" => "",
- "check" => "",
+ "default" => FALSE,
+ "description" => "The 'forceSSL' statement enables PHP security checks to force encrypted access to the web interface. GOsa will try to redirect to the same URL - just with https://",
+ "check" => "gosaProperty::isBool",
"migrate" => "",
- "group" => "core",
+ "group" => "security",
"mandatory" => FALSE),
array(
"name" => "ldapStats",
- "type" => "string",
- "default" => "",
- "description" => "",
- "check" => "",
+ "type" => "bool",
+ "default" => FALSE,
+ "description" => _("Logs information about triggered ldap operations, duration, filter, aso. into syslog."),
+ "check" => "gosaProperty::isBool",
"migrate" => "",
- "group" => "core",
+ "group" => "debug",
"mandatory" => FALSE),
array(
"name" => "warnSSL",
- "type" => "string",
- "default" => "",
- "description" => "",
- "check" => "",
+ "type" => "bool",
+ "default" => TRUE,
+ "description" => "The 'warnSSL' statement enables PHP security checks to detect non encrypted access to the web interface. GOsa will display a warning in this case.",
+ "check" => "gosaProperty::isBool",
"migrate" => "",
- "group" => "core",
+ "group" => "security",
"mandatory" => FALSE),
array(
"name" => "ppdGzip",
- "type" => "string",
- "default" => "",
- "description" => "",
- "check" => "",
+ "type" => "bool",
+ "default" => TRUE,
+ "description" => "The 'ppdGzip' variable enables PPD file compression.",
+ "check" => "gosaProperty::isBool",
"migrate" => "",
- "group" => "core",
+ "group" => "ppd",
"mandatory" => FALSE),
array(
"name" => "ignoreAcl",
- "type" => "string",
+ "type" => "dn",
"default" => "",
- "description" => "",
- "check" => "",
+ "description" => "The 'ignoreAcl' value tells GOsa to ignore complete ACL sets for the given DN. Add your DN here and you'll be able to restore accidently dropped ACLs.",
+ "check" => "gosaProperty::isDN",
"migrate" => "",
- "group" => "core",
+ "group" => "debug",
"mandatory" => FALSE),
array(
"name" => "ppdPath",
- "type" => "string",
- "default" => "",
- "description" => "",
- "check" => "",
+ "type" => "path",
+ "default" => "/var/spool/ppd",
+ "description" => "The 'ppdPath' variable defines where to store PPD files for the GOto environment plugins.",
+ "check" => "gosaProperty::isPath",
"migrate" => "",
- "group" => "core",
+ "group" => "ppd",
"mandatory" => FALSE),
array(
"name" => "ldapMaxQueryTime",
- "type" => "string",
- "default" => "",
- "description" => "",
- "check" => "",
- "migrate" => "",
- "group" => "core",
- "mandatory" => FALSE),
-
- array(
- "name" => "primaryGroupFilter",
- "type" => "string",
- "default" => "",
- "description" => "",
- "check" => "",
- "migrate" => "",
- "group" => "core",
- "mandatory" => FALSE),
-
- array(
- "name" => "mailQueueScriptPath",
- "type" => "string",
+ "type" => "integer",
"default" => "",
- "description" => "",
- "check" => "",
+ "description" => "The 'ldapMaxQueryTime' statement tells GOsa to stop LDAP actions if there is no answer within the specified number of seconds.",
+ "check" => "gosaProperty::isInteger",
"migrate" => "",
- "group" => "core",
+ "group" => "debug",
"mandatory" => FALSE),
array(
"name" => "storeFilterSettings",
- "type" => "string",
- "default" => "",
- "description" => "",
- "check" => "",
+ "type" => "bool",
+ "default" => TRUE,
+ "description" => "The 'storeFilterSettings' statement determines whether GOsa should store filter and plugin settings inside of a cookie.",
+ "check" => "gosaProperty::isBool",
"migrate" => "",
"group" => "core",
"mandatory" => FALSE),
array(
"name" => "sendCompressedOutput",
- "type" => "string",
- "default" => "",
- "description" => "",
- "check" => "",
+ "type" => "bool",
+ "default" => TRUE,
+ "description" => "The 'sendCompressedOutput' statement determines whether PHP should send compressed HTML pages to browsers or not. This may increase or decrease the performance, depending on your network.",
+ "check" => "gosaProperty::isBool",
"migrate" => "",
"group" => "core",
"mandatory" => FALSE),
array(
"name" => "modificationDetectionAttribute",
- "type" => "string",
- "default" => "",
- "description" => "",
+ "type" => "switch",
+ "default" => "entryCSN",
+ "defaults" => "core::getPropertyValues",
+ "description" => "The 'modificationDetectionAttribute' statement enables GOsa to check if a entry currently being edited has been modified from someone else outside GOsa in the meantime. It will display an informative dialog then. It can be set to 'entryCSN' for OpenLDAP based systems or 'contextCSN' for Sun DS based systems.",
"check" => "",
"migrate" => "",
"group" => "core",
array(
"name" => "language",
- "type" => "string",
+ "type" => "switch",
"default" => "",
- "description" => "",
+ "defaults" => "core::getPropertyValues",
+ "description" => "The 'language' statement defines the default language used by GOsa. Normally GOsa autodetects the language from the browser settings. If this is not working or you want to force the language, just add the language code (i.e. de for german) here.",
"check" => "",
"migrate" => "",
"group" => "core",
array(
"name" => "theme",
"type" => "string",
- "default" => "",
- "description" => "",
+ "default" => "default",
+ "defaults" => "core::getPropertyValues",
+ "description" => "The 'theme' statement defines what theme is used to display GOsa pages. You can install some corporate identity like theme and/or modify certain templates to fit your needs within themes. Take a look at the GOsa FAQ for more information.",
"check" => "",
"migrate" => "",
- "group" => "core",
+ "group" => "visual",
"mandatory" => FALSE),
array(
"name" => "sessionLifetime",
- "type" => "string",
+ "type" => "integer",
"default" => "",
- "description" => "",
- "check" => "",
+ "description" => "The 'sessionLifetime' value defines when a session will expire in seconds. For Debian systems, this will not work because the sessions will be removed by a cron job instead. Please modify the value inside of your php.ini instead.",
+ "check" => "gosaProperty::isInteger",
"migrate" => "",
- "group" => "core",
+ "group" => "security",
"mandatory" => FALSE),
array(
"name" => "templateCompileDirectory",
- "type" => "string",
+ "type" => "path",
"default" => "",
- "description" => "",
- "check" => "",
+ "description" => "The 'templateCompileDirectory' statements defines the path, where the PHP templating engins 'smarty' should store its compiled GOsa templates for improved speed. This path needs to be writeable by the user your webserver is running with.",
+ "check" => "gosaProperty::isExistingPath",
"migrate" => "",
"group" => "core",
"mandatory" => FALSE),
array(
"name" => "debugLevel",
- "type" => "string",
- "default" => "",
- "description" => "",
- "check" => "",
+ "type" => "integer",
+ "default" => 0,
+ "description" => sprintf(_("The 'debugLevel' value tells GOsa to display certain information on each page load. Value is an AND combination of the following byte values: %s"),
+"
+DEBUG_TRACE = 1
+DEBUG_LDAP = 2
+DEBUG_MYSQL = 4
+DEBUG_SHELL = 8
+DEBUG_POST = 16
+DEBUG_SESSION = 32
+DEBUG_CONFIG = 64
+DEBUG_ACL = 128
+DEBUG_SI = 256"),
+ "check" => "gosaProperty::isInteger",
"migrate" => "",
- "group" => "core",
+ "group" => "debug",
"mandatory" => FALSE),
array(
"name" => "sambaHashHook",
- "type" => "string",
+ "type" => "command",
"default" => "",
- "description" => "",
- "check" => "",
+ "description" => sprintf(_("The 'sambaHashHook' statement contains an executable to generate samba hash values. This is required for password synchronization, but not required if you apply gosa-si services. If you don't have mkntpasswd from the samba distribution installed, you can use perl to generate the hash: %s"),"perl -MCrypt::SmbHash -e \"print join(q[:], ntlmgen \\\$ARGV[0]), $/;\""),
+ "check" => "gosaProperty::isCommand",
"migrate" => "",
- "group" => "core",
+ "group" => "samba",
"mandatory" => FALSE),
array(
"name" => "passwordDefaultHash",
- "type" => "string",
- "default" => "",
- "description" => "",
+ "type" => "switch",
+ "default" => "crypt",
+ "defaults" => "core::getPropertyValues",
+ "description" => "The 'passwordDefaultHash' statement defines the default password hash to choose for new accounts.",
"check" => "",
"migrate" => "",
- "group" => "core",
+ "group" => "password",
"mandatory" => FALSE),
array(
"name" => "accountPrimaryAttribute",
- "type" => "string",
- "default" => "",
- "description" => "",
+ "type" => "switch",
+ "default" => "cn",
+ "defaults" => "core::getPropertyValues",
+ "description" => "The 'accountPrimaryAttribute' option tells GOsa how to create new accounts. Possible values are 'uid' and 'cn'. In the first case GOsa creates uid style DN entries: 'uid=superuser,ou=staff,dc=example,dc=net'. In the second case, GOsa creates cn style DN entries: 'cn=Foo Bar,ou=staff,dc=example,dc=net'. If you choose \"cn\" to be your 'accountPrimaryAttribute' you can decide whether to include the personal title in your dn by selecting 'personalTitleInDN'.",
"check" => "",
"migrate" => "",
- "group" => "core",
+ "group" => "security",
"mandatory" => FALSE),
array(
"name" => "userRDN",
- "type" => "string",
- "default" => "",
- "description" => "",
- "check" => "",
+ "type" => "rdn",
+ "default" => "ou=people",
+ "description" => "The 'userRDN' statement defines the location where new accounts will be created inside of defined departments. The default is 'ou=people'.",
+ "check" => "gosaProperty::isRdn",
"migrate" => "",
- "group" => "core",
+ "group" => "user",
"mandatory" => FALSE),
array(
"name" => "groupRDN",
- "type" => "string",
- "default" => "",
- "description" => "",
- "check" => "",
+ "type" => "rdn",
+ "default" => "ou=groups",
+ "description" => "The 'groupsRDN' statement defines the location where new groups will be created inside of defined departments. The default is 'ou=groups'.",
+ "check" => "gosaProperty::isRdn",
"migrate" => "",
- "group" => "core",
+ "group" => "group",
"mandatory" => FALSE),
array(
"name" => "gidNumberBase",
- "type" => "string",
+ "type" => "integer",
"default" => "",
- "description" => "",
- "check" => "",
+ "description" => "The 'gidNumberBase' statement defines where to start looking for a new free group id. This should be synced with your 'adduser.conf' to avoid overlapping gidNumber values between local and LDAP based lookups. The gidNumberBase can even be dynamic. Take a look at the 'nextIdHook' definition.",
+ "check" => "gosaProperty::isInteger",
"migrate" => "",
"group" => "core",
"mandatory" => FALSE),
array(
"name" => "uidNumberBase",
- "type" => "string",
+ "type" => "integer",
"default" => "",
- "description" => "",
- "check" => "",
+ "description" => "The 'uidNumberBase' statement defines where to start looking for a new free user id. This should be synced with your 'adduser.conf' to avoid overlapping uidNumber values between local and LDAP based lookups. The uidNumberBase can even be dynamic. Take a look at the 'baseIdHook' definition.",
+ "check" => "gosaProperty::isInteger",
"migrate" => "",
"group" => "core",
"mandatory" => FALSE),
"name" => "gosaSupportURI",
"type" => "string",
"default" => "",
- "description" => "",
+ "description" => "The 'gosaSupportURI' defines the major gosa-si server host and the password for GOsa to connect to it. It can be used if you want to use i.e. kerberos to authenticate the users. The format is: credentials@host:port",
"check" => "",
"migrate" => "",
- "group" => "core",
+ "group" => "gosa-si",
"mandatory" => FALSE),
array(
"name" => "gosaSupportTimeout",
- "type" => "string",
- "default" => "",
- "description" => "",
- "check" => "",
+ "type" => "integer",
+ "default" => "15",
+ "description" => "The 'gosaSupportTimeout' sets a connection timeout for all gosa-si actions. See 'gosaSupportURI' for details.",
+ "check" => "gosaProperty::isInteger",
"migrate" => "",
- "group" => "core",
+ "group" => "gosa-si",
"mandatory" => FALSE),
array(
"name" => "loginAttribute",
- "type" => "string",
- "default" => "",
- "description" => "",
+ "type" => "switch",
+ "default" => "uid",
+ "defaults" => "core::getPropertyValues",
+ "description" => "The 'loginAttribute' statement tells GOsa which LDAP attribute is used as the login name during login. It can be set to 'uid', 'mail' or 'both'",
"check" => "",
"migrate" => "",
- "group" => "core",
+ "group" => "security",
"mandatory" => FALSE),
array(
"name" => "timezone",
- "type" => "string",
+ "type" => "switch",
"default" => "",
- "description" => "",
+ "defaults" => "core::getPropertyValues",
+ "description" => "The 'timezone' statements defines the timezone used inside of GOsa to handle date related tasks, such as password expiery, vacation messages, etc. The 'timezone' value should be a unix conform timezone value like in /etc/timezone.",
"check" => "",
"migrate" => "",
"group" => "core",
array(
"name" => "honourUnitTags",
- "type" => "string",
- "default" => "",
- "description" => "",
+ "type" => "bool",
+ "default" => FALSE,
+ "description" => "The 'honourUnitTags' statement enables checking of 'unitTag' attributes when using administrative units. If this is set to 'true' GOsa can only see objects inside the administrative unit a user is logged into.",
"check" => "",
- "migrate" => "",
+ "migrate" => "gosaProperty::isBool",
"group" => "core",
"mandatory" => FALSE),
array(
"name" => "useSaslForKerberos",
- "type" => "string",
- "default" => "",
- "description" => "",
- "check" => "",
+ "type" => "bool",
+ "default" => FALSE,
+ "description" => "The 'useSaslForKerberos' statement defines the way the kerberos realm is stored in the #userPassword' attribute. Set it to 'true' in order to get {sasl}user@REALM.NET, or to 'false' to get {kerberos}user@REALM.NET. The latter is outdated, but may be needed from time to time.",
+ "check" => "gosaProperty::isBool",
"migrate" => "",
- "group" => "core",
+ "group" => "password",
"mandatory" => FALSE),
array(
"name" => "rfc2307bis",
- "type" => "string",
- "default" => "",
- "description" => "",
- "check" => "",
+ "type" => "bool",
+ "default" => FALSE,
+ "description" => "The 'rfc2307bis' statement enables rfc2307bis style groups in GOsa. You can use 'member' attributes instead of memberUid in this case. To make it work on unix systems, you've to adjust your NSS configuration to use rfc2307bis style groups, too",
+ "check" => "gosaProperty::isBool",
"migrate" => "",
"group" => "core",
"mandatory" => FALSE),
array(
"name" => "personalTitleInDN",
- "type" => "string",
- "default" => "",
- "description" => "",
- "check" => "",
+ "type" => "bool",
+ "default" => FALSE,
+ "description" => "The 'personalTitleInDN' option tells GOsa to include the personal title in user DNs when #accountPrimaryAttribute' is set to \"cn\".",
+ "check" => "gosaProperty::isBool",
"migrate" => "",
- "group" => "core",
+ "group" => "storage location",
"mandatory" => FALSE),
array(
"name" => "nextIdHook",
- "type" => "string",
+ "type" => "command",
"default" => "",
- "description" => "",
- "check" => "",
+ "description" => "The 'nextIdHook' statement defines a script to be called for finding the next free id for users or groups externaly. It gets called with the current entry \"dn\" and the attribute to be ID'd. It should return an integer value.",
+ "check" => "gosaProperty::isCommand",
"migrate" => "",
"group" => "core",
"mandatory" => FALSE),
array(
"name" => "sambaMachineAccountRDN",
- "type" => "string",
- "default" => "",
- "description" => "",
- "check" => "",
+ "type" => "rdn",
+ "default" => "ou=winstations",
+ "description" => "This statement defines the location where GOsa looks for new samba workstations.",
+ "check" => "gosaProperty::isRDN",
"migrate" => "",
- "group" => "core",
+ "group" => "samba",
"mandatory" => FALSE),
array(
"name" => "idGenerator",
"type" => "string",
"default" => "",
- "description" => "",
+ "description" => "The 'idGenerator' statement describes an automatic way to generate new user ids. There are two basic functions supported - which can be combined:
+
+ a) using attributes
+
+ You can specify LDAP attributes (currently only sn and givenName) in
+ braces {} and add a percent sign befor it. Optionally you can strip it
+ down to a number of characters, specified in []. I.e.
+
+ idGenerator=\"{%sn}-{%givenName[2-4]}\"
+
+ will generate an ID using the full surename, adding a dash, and adding at
+ least the first two characters of givenName. If this ID is used, it'll
+ use up to four characters. If no automatic generation is possible, a
+ input box is shown.
+
+ b) using automatic id's
+
+ I.e. specifying
+
+ idGenerator=\"acct{id:3}\"
+
+ will generate a three digits id with the next free entry appended to \"acct\".
+
+ idGenerator=\"acct{id!1}\"
+
+ will generate a one digit id with the next free entry appended to \"acct\" - if needed.
+
+ idGenerator=\"ext{id#3}\"
+
+ will generate a three digits random number appended to \"ext\".
+",
"check" => "",
"migrate" => "",
"group" => "core",
array(
"name" => "strictNamingRules",
- "type" => "string",
- "default" => "",
+ "type" => "bool",
+ "default" => TRUE,
"description" => "",
- "check" => "",
- "migrate" => "",
+ "check" => "gosaProperty::isBool",
+ "migrate" => "The 'strictNamingRules' statement enables strict checking of uids and group names. If you need characters like . or - inside of your accounts, set this to 'false'",
"group" => "core",
"mandatory" => FALSE),
array(
"name" => "minId",
- "type" => "string",
- "default" => "",
+ "type" => "integer",
+ "default" => "The 'minId' statement defines the minimum assignable user or group id to avoid security leaks with uid 0 accounts. This is used for the 'traditional' method.",
"description" => "",
- "check" => "",
+ "check" => "gosaProperty::isInteger",
"migrate" => "",
"group" => "core",
"mandatory" => FALSE),
array(
"name" => "mailAttribute",
- "type" => "string",
+ "type" => "switch",
"default" => "",
- "description" => "",
+ "defaults" => "core::getPropertyValues",
+ "description" => "The 'mailAttribute' statement determines which attribute GOsa will use to create accounts. Valid values are 'mail' and 'uid'.",
"check" => "",
"migrate" => "",
- "group" => "core",
+ "group" => "mail",
"mandatory" => FALSE),
array(
"name" => "gosaSharedPrefix",
"type" => "string",
"default" => "",
- "description" => "",
+ "description" => "This attribute allows to override the prefix used to create shared folders.",
"check" => "",
"migrate" => "",
- "group" => "core",
+ "group" => "mail",
"mandatory" => FALSE),
array(
"name" => "mailUserCreation",
"type" => "string",
"default" => "",
- "description" => "",
+ "description" => "This attribute allows to override the user account creation syntax, see the 'mailFolderCreation' description for more details.
+
+Examples
+ mailUserCreation=\"%prefix%%uid%\" => \"user.foobar\"
+ mailUserCreation=\"my-prefix.%uid%%domain%\" => \"my-prefix.foobar@example.com\"
+",
"check" => "",
"migrate" => "",
- "group" => "core",
+ "group" => "mail",
"mandatory" => FALSE),
array(
"name" => "mailFolderCreation",
"type" => "string",
"default" => "",
- "description" => "",
+ "description" => "Every mail method has its own way to create mail accounts like 'share/development' or 'shared.development@example.com' which is used to identify the accounts, set quotas or add acls.
+
+To override the methods default account creation syntax, you can set the 'mailFolderCreation' option.
+
+Examples
+
+ mailFolderCreation=\"%prefix%%cn%\" => \"shared.development\"
+ mailFolderCreation=\"my-prefix.%cn%%domain%\" => \"my-prefix.development@example.com\"
+
+ %prefix% The methods default prefix. (Depends on cyrusUseSlashes=FALSE/TRUE)
+ %cn% The groups/users cn.
+ %uid% The users uid.
+ %mail% The objects mail attribute.
+ %domain% The domain part of the objects mail attribute.
+ %mailpart% The user address part of the mail address.
+ %uattrib% Depends on mailAttribute=\"uid/mail\".
+",
"check" => "",
"migrate" => "",
- "group" => "core",
+ "group" => "mail",
"mandatory" => FALSE),
array(
"name" => "imapTimeout",
- "type" => "string",
- "default" => "",
- "description" => "",
- "check" => "",
+ "type" => "integer",
+ "default" => 10,
+ "description" => "The 'imapTimeout' statement sets the connection timeout for imap actions.",
+ "check" => "gosaProperty::isInteger",
"migrate" => "",
- "group" => "core",
+ "group" => "mail",
"mandatory" => FALSE),
array(
"name" => "mailMethod",
- "type" => "string",
+ "type" => "switch",
"default" => "",
- "description" => "",
+ "defaults" => "core::getPropertyValues",
+ "description" => "The 'mailMethod' statement tells GOsa which mail method the setup should use to communicate with a possible mail server. Leave this undefined if your mail method does not match the predefined ones.",
"check" => "",
"migrate" => "",
- "group" => "core",
+ "group" => "mail",
"mandatory" => FALSE),
array(
"name" => "cyrusUseSlashes",
- "type" => "string",
+ "type" => "bool",
"default" => "",
- "description" => "",
- "check" => "",
+ "description" => "The 'cyrusUseSlashes' statement determines if GOsa should use \"foo/bar\" or \"foo.bar\" namespaces in IMAP. Unix style is with slashes.",
+ "check" => "gosaProperty::isBool",
"migrate" => "",
- "group" => "core",
+ "group" => "mail",
"mandatory" => FALSE),
array(
"name" => "vacationTemplateDirectory",
- "type" => "string",
+ "type" => "path",
"default" => "",
- "description" => "",
- "check" => "",
+ "description" => "The 'vacationTemplateDirectory' statement sets the path where GOsa will look for vacation message templates. Default is /etc/gosa/vacation.
+
+Example template /etc/gosa/vacation/business.txt:
+
+ DESC:Away from desk
+ Hi, I'm currently away from my desk. You can contact me on
+ my cell phone via %mobile.
+
+ Greetings,
+ %givenName %sn
+
+",
+ "check" => "gosaProperty::isExistingPath",
"migrate" => "",
- "group" => "core",
+ "group" => "mail",
"mandatory" => FALSE),
array(
"name" => "ldapTLS",
- "type" => "string",
+ "type" => "bool",
"default" => "",
- "description" => "",
- "check" => "",
+ "description" => "The 'ldapTLS' statement enables or disables TLS operating on LDAP connections.",
+ "check" => "gosaProperty::isBool",
"migrate" => "",
- "group" => "core",
+ "group" => "security",
"mandatory" => FALSE),
array(
"name" => "honourIvbbAttributes",
- "type" => "string",
+ "type" => "bool",
"default" => "",
- "description" => "",
- "check" => "",
+ "description" => "The 'honourIvbbAttributes' statement enables the IVBB mode inside of GOsa. You need the ivbb.schema file from used by german authorities.",
+ "check" => "gosaProperty::isBool",
"migrate" => "",
"group" => "core",
"mandatory" => FALSE),
array(
"name" => "sambaIdMapping",
- "type" => "string",
+ "type" => "bool",
"default" => "",
- "description" => "",
- "check" => "",
+ "description" => "The 'sambaIdMapping' statement tells GOsa to maintain sambaIdmapEntry objects. Depending on your setup this can drastically improve the windows login performance.",
+ "check" => "gosaProperty::isBool",
"migrate" => "",
- "group" => "core",
+ "group" => "samba",
"mandatory" => FALSE),
array(
"name" => "handleExpiredAccounts",
- "type" => "string",
+ "type" => "bool",
"default" => "",
- "description" => "",
- "check" => "",
+ "description" => "The 'handleExpiredAccounts' statement enables shadow attribute tests during the login to the GOsa web interface and forces password renewal or account lockout.",
+ "check" => "gosaProperty::isBool",
"migrate" => "",
"group" => "core",
"mandatory" => FALSE),
"name" => "sambaSID",
"type" => "string",
"default" => "",
- "description" => "",
+ "description" => "The 'sambaSID' statement defines a samba SID if not available inside of the LDAP. You can retrieve the current sid by net getlocalsid.",
"check" => "",
"migrate" => "",
- "group" => "core",
+ "group" => "samba",
"mandatory" => FALSE),
array(
"name" => "sambaRidBase",
- "type" => "string",
+ "type" => "integer",
"default" => "",
- "description" => "",
- "check" => "",
+ "description" => "The 'sambaRidBase' statement defines the base id to add to ordinary sid calculations - if not available inside of the LDAP.",
+ "check" => "gosaProperty::isInteger",
"migrate" => "",
- "group" => "core",
+ "group" => "samba",
"mandatory" => FALSE),
array(
"name" => "enableSnapshots",
- "type" => "string",
+ "type" => "bool",
"default" => "",
- "description" => "",
- "check" => "",
+ "description" => "The 'enableSnapshots' statement enables a snapshot mechaism in GOsa. This enables you to save certain states of entries and restore them later on.",
+ "check" => "gosaProperty::isBool",
"migrate" => "",
- "group" => "core",
+ "group" => "snapshot",
"mandatory" => FALSE),
array(
"name" => "snapshotBase",
- "type" => "string",
+ "type" => "dn",
"default" => "",
- "description" => "",
- "check" => "",
+ "description" => "The 'snapshotBase' statement defines the base where snapshots should be stored inside of the LDAP.",
+ "check" => "gosaProperty::isDn",
"migrate" => "",
- "group" => "core",
+ "group" => "snapshot",
"mandatory" => FALSE),
array(
"name" => "snapshotAdminDn",
- "type" => "string",
+ "type" => "dn",
"default" => "",
- "description" => "",
- "check" => "",
+ "description" => "The 'snapshotAdminDn' variable defines the user which is used to authenticate when connecting to 'snapshotURI'.",
+ "check" => "gosaProperty::isDn",
"migrate" => "",
- "group" => "core",
+ "group" => "snapshot",
"mandatory" => FALSE),
array(
"name" => "snapshotAdminPassword",
"type" => "string",
"default" => "",
- "description" => "",
+ "description" => "The 'snapshotAdminPassword' variable defines the credentials which are used in combination with 'snapshotAdminDn' and 'snapshotURI' in order to authenticate.",
"check" => "",
"migrate" => "",
- "group" => "core",
+ "group" => "snapshot",
"mandatory" => FALSE),
- array(
- "name" => "iePngWorkaround",
- "type" => "string",
- "default" => "",
- "description" => "",
- "check" => "",
- "migrate" => "",
- "group" => "core",
- "mandatory" => FALSE),
array(
"name" => "snapshotURI",
- "type" => "string",
+ "type" => "uri",
"default" => "",
- "description" => "",
+ "description" => "The 'snapshotURI' variable defines the LDAP URI for the server which is used to do object snapshots.",
"check" => "",
"migrate" => "",
- "group" => "core",
+ "group" => "snapshot",
"mandatory" => FALSE)
),
diff --git a/gosa-core/plugins/addons/configViewer/class_configViewer.inc b/gosa-core/plugins/addons/configViewer/class_configViewer.inc
index 904cbecebf0297641101af1f3115b3128c301807..7cc728a0877932899363c61d449e07776bb5c48b 100644 (file)
static function propertyGroup($group, $description = array())
{
$title = _("No description");
- if(!empty($description[0])) $title=$description[0];
+ if(!empty($description[0])) $title=htmlentities($description[0], ENT_COMPAT, 'UTF-8');
return("<span title=\"{$title}\">{$group[0]}</span>");
}
static function propertyClass($class, $description = array())
$class = $class[0];
}
$title = _("No description");
- if(!empty($description[0])) $title=$description[0];
+ if(!empty($description[0])) $title=htmlentities($description[0], ENT_COMPAT, 'UTF-8');
return("<span title=\"{$title}\">{$class}</span>");
}
static function propertyName($cn, $description = array())
{
$title = _("No description");
- if(!empty($description[0])) $title=$description[0];
+ if(!empty($description[0])) $title=htmlentities($description[0], ENT_COMPAT, 'UTF-8');
return("<span title=\"{$title}\">{$cn[0]}</span>");
}
static function propertyValue($class,$cn, $value,$type,$default,$description)
$name = "{$class[0]}:{$cn[0]}";
$value = htmlentities($value[0], ENT_COMPAT , 'UTF-8');
$title = _("No description");
- if(!empty($description[0])) $title=$description[0];
+ if(!empty($description[0])) $title=htmlentities($description[0], ENT_COMPAT, 'UTF-8');
switch($type[0]){
case 'string':
case 'integer':
diff --git a/gosa-core/plugins/addons/configViewer/property-filter.xml b/gosa-core/plugins/addons/configViewer/property-filter.xml
index 47c12c2f421f13199fecb7b404457c2b22a283b1..6e0051edcf45cc4092df7c544b19b54b3bfd11b1 100644 (file)
</search>
<search>
- <tag>default2</tag>
+ <tag>ldap</tag>
<label>LDAP</label>
<query>
<backend>CONFIGPROPERTIES</backend>
</search>
<search>
- <tag>default3</tag>
+ <tag>modified</tag>
<label>Modified</label>
<query>
<backend>CONFIGPROPERTIES</backend>
</autocomplete>
</search>
-
<search>
<tag>all</tag>
<label>All properties</label>
</autocomplete>
</search>
+ <search>
+ <tag>group</tag>
+ <label>Filter by group</label>
+ <query>
+ <backend>CONFIGPROPERTIES</backend>
+ <filter>group=$</filter>
+ </query>
+ <autocomplete>
+ <attribute>status</attribute>
+ <frequency>0.5</frequency>
+ <characters>3</characters>
+ </autocomplete>
+ </search>
+
+
</filterdef>
diff --git a/gosa-core/setup/class_setupStep_Config3.inc b/gosa-core/setup/class_setupStep_Config3.inc
index bcfb3fa684e6a56dd5e04d7b329ea3ab22859c09..6d7e485bfbcb9805842cc6d39cf825813736d812 100644 (file)
"max_ldap_query_time" => "5.0",
"max_ldap_query_time_active" => FALSE,
- "mailQueueScriptPath" => "/usr/bin/sudo /usr/local/sbin/mailqueue %action %id %server",
- "mailQueueScriptPath_active" => FALSE,
-
"notifydir" => "",
"notifydir_active" => FALSE,
$this->optional['max_ldap_query_time_active'] = FALSE;
}
- if(isset($_POST['mailQueueScriptPath_active'])){
- $this->optional['mailQueueScriptPath_active'] = TRUE;
- if(isset($_POST['mailQueueScriptPath'])){
- $this->optional['mailQueueScriptPath'] = get_post('mailQueueScriptPath');
- }
- }else{
- $this->optional['mailQueueScriptPath_active'] = FALSE;
- }
-
if(isset($_POST['kioskpath_active'])){
$this->optional['kioskpath_active'] = TRUE;
if(isset($_POST['kioskpath'])){
index 56868fe4287f7595757beba3c6350fa32bf6403c..9933dc5c5bdebbf29108a0bfb4e63c39aa3acbd3 100644 (file)
</div>
</div>
- <div class='step4_container'>
- <div class='step4_name'>
- {t}Mail queue script{/t}
- </div>
- <div class='step4_value'>
- {if $optional.mailQueueScriptPath_active == FALSE}
- <input type='checkbox' value='1' name='mailQueueScriptPath_active'
- onClick='changeState("mailQueueScriptPath");'>
- <input size=40 id='mailQueueScriptPath' name='mailQueueScriptPath'
- type='text' value='{$optional.mailQueueScriptPath}' disabled>
- {else}
- <input type='checkbox' value='1' name='mailQueueScriptPath_active' checked
- onClick='changeState("mailQueueScriptPath");'>
- <input size=40 id='mailQueueScriptPath' name='mailQueueScriptPath' type='text'
- value='{$optional.mailQueueScriptPath}' >
- {/if}
- </div>
- </div>
-
<div class='step4_container'>
<div class='step4_name'>
{t}Notification script{/t}