// This file is generated by tdeconfig_compiler from kuser.kcfg.
// All changes you do to this file will be lost.

#include "kuserprefs.h"

#include <tdelocale.h>

KUserPrefsBase::KUserPrefsBase(  TDESharedConfig::Ptr config,  const TQString & connection )
  : TDEConfigSkeleton( config )
  , mParamconnection(connection)
{
  setCurrentGroup( TQString::fromLatin1( "general" ) );

  TDEConfigSkeleton::ItemString  *itemConnection;
  itemConnection = new TDEConfigSkeleton::ItemString( currentGroup(), TQString::fromLatin1( "connection" ), mConnection, TQString::fromLatin1( "default" ) );
  itemConnection->setLabel( i18n("Default connection") );
  addItem( itemConnection, TQString::fromLatin1( "connection" ) );
  TDEConfigSkeleton::ItemBool  *itemShowsys;
  itemShowsys = new TDEConfigSkeleton::ItemBool( currentGroup(), TQString::fromLatin1( "showsys" ), mShowsys, true );
  itemShowsys->setLabel( i18n("Show system users") );
  addItem( itemShowsys, TQString::fromLatin1( "showsys" ) );

  setCurrentGroup( TQString::fromLatin1( "connection-%1" ).arg( mParamconnection ) );

  TQValueList<TDEConfigSkeleton::ItemEnum::Choice> valuessource;
  {
    TDEConfigSkeleton::ItemEnum::Choice choice;
    choice.name = TQString::fromLatin1( "Files" );
    valuessource.append( choice );
  }
  {
    TDEConfigSkeleton::ItemEnum::Choice choice;
    choice.name = TQString::fromLatin1( "LDAP" );
    valuessource.append( choice );
  }
  {
    TDEConfigSkeleton::ItemEnum::Choice choice;
    choice.name = TQString::fromLatin1( "System" );
    valuessource.append( choice );
  }
  TDEConfigSkeleton::ItemEnum  *itemSource;
  itemSource = new TDEConfigSkeleton::ItemEnum( currentGroup(), TQString::fromLatin1( "source" ), mSource, valuessource, EnumSource::Files );
  itemSource->setLabel( i18n("The source of the user and group database") );
  itemSource->setWhatsThis( i18n("This option allows you to select where the user/group data stored. Currently three storage backends are supported. <BR><B>Files</B> stores user/group data in traditional /etc/passwd and /etc/group flat files. <BR><B>LDAP</B> stores data in a directory server using the posixAccount and posixGroup object classes; this backend allows the management of Samba users/groups via the sambaSamAccount object class.<BR><B>System</B> provides a read-only access to all users and groups which your installation knows about.") );
  addItem( itemSource, TQString::fromLatin1( "source" ) );
  TDEConfigSkeleton::ItemString  *itemShell;
  itemShell = new TDEConfigSkeleton::ItemString( currentGroup(), TQString::fromLatin1( "shell" ), mShell );
  itemShell->setLabel( i18n("Shell") );
  itemShell->setWhatsThis( i18n("This option allows you to select the shell which will be the default for new users.") );
  addItem( itemShell, TQString::fromLatin1( "shell" ) );
  TDEConfigSkeleton::ItemString  *itemHomepath;
  itemHomepath = new TDEConfigSkeleton::ItemString( currentGroup(), TQString::fromLatin1( "homepath" ), mHomepath, TQFile::decodeName(KU_HOMETEMPLATE) );
  itemHomepath->setLabel( i18n("Home path template") );
  itemHomepath->setWhatsThis( i18n("This option specifies the UNIX home path template for new users. The '%U' macro will replaced with the actual user name.") );
  addItem( itemHomepath, TQString::fromLatin1( "homepath" ) );
  TDEConfigSkeleton::ItemInt  *itemFirstUID;
  itemFirstUID = new TDEConfigSkeleton::ItemInt( currentGroup(), TQString::fromLatin1( "firstUID" ), mFirstUID, KU_FIRSTUID );
  itemFirstUID->setLabel( i18n("First UID") );
  itemFirstUID->setWhatsThis( i18n("This options specifies the first user ID where searching for an available UID starts.") );
  addItem( itemFirstUID, TQString::fromLatin1( "firstUID" ) );
  TDEConfigSkeleton::ItemInt  *itemFirstGID;
  itemFirstGID = new TDEConfigSkeleton::ItemInt( currentGroup(), TQString::fromLatin1( "firstGID" ), mFirstGID, KU_FIRSTGID );
  itemFirstGID->setLabel( i18n("First GID") );
  itemFirstGID->setWhatsThis( i18n("This options specifies the first group ID where searching for an available GID starts.") );
  addItem( itemFirstGID, TQString::fromLatin1( "firstGID" ) );
  TDEConfigSkeleton::ItemBool  *itemCreateHomeDir;
  itemCreateHomeDir = new TDEConfigSkeleton::ItemBool( currentGroup(), TQString::fromLatin1( "createHomeDir" ), mCreateHomeDir, true );
  itemCreateHomeDir->setLabel( i18n("Create home folder") );
  itemCreateHomeDir->setWhatsThis( i18n("If this option is checked then a home directory will created for the new user.") );
  addItem( itemCreateHomeDir, TQString::fromLatin1( "createHomeDir" ) );
  TDEConfigSkeleton::ItemBool  *itemCopySkel;
  itemCopySkel = new TDEConfigSkeleton::ItemBool( currentGroup(), TQString::fromLatin1( "copySkel" ), mCopySkel, true );
  itemCopySkel->setLabel( i18n("Copy skeleton to home folder") );
  itemCopySkel->setWhatsThis( i18n("If this option is checked then the contents of the skeleton folder will copied to the new user's home directory") );
  addItem( itemCopySkel, TQString::fromLatin1( "copySkel" ) );
  TDEConfigSkeleton::ItemBool  *itemUserPrivateGroup;
  itemUserPrivateGroup = new TDEConfigSkeleton::ItemBool( currentGroup(), TQString::fromLatin1( "userPrivateGroup" ), mUserPrivateGroup, KU_USERPRIVATEGROUP );
  itemUserPrivateGroup->setLabel( i18n("User private groups") );
  itemUserPrivateGroup->setWhatsThis( i18n("If this option is enabled, new user creation will create a private group named as the user, and the primary group of the user will assigned to this private group.") );
  addItem( itemUserPrivateGroup, TQString::fromLatin1( "userPrivateGroup" ) );
  TDEConfigSkeleton::ItemInt  *itemDefaultgroup;
  itemDefaultgroup = new TDEConfigSkeleton::ItemInt( currentGroup(), TQString::fromLatin1( "defaultgroup" ), mDefaultgroup, 100 );
  itemDefaultgroup->setLabel( i18n("Default primary group") );
  itemDefaultgroup->setWhatsThis( i18n("This is the default primary group which will be assigned to a newly created user.") );
  addItem( itemDefaultgroup, TQString::fromLatin1( "defaultgroup" ) );
  TDEConfigSkeleton::ItemInt  *itemSmin;
  itemSmin = new TDEConfigSkeleton::ItemInt( currentGroup(), TQString::fromLatin1( "smin" ), mSmin, 0 );
  itemSmin->setLabel( i18n("smin") );
  addItem( itemSmin, TQString::fromLatin1( "smin" ) );
  TDEConfigSkeleton::ItemInt  *itemSmax;
  itemSmax = new TDEConfigSkeleton::ItemInt( currentGroup(), TQString::fromLatin1( "smax" ), mSmax, -1 );
  itemSmax->setLabel( i18n("smax") );
  addItem( itemSmax, TQString::fromLatin1( "smax" ) );
  TDEConfigSkeleton::ItemInt  *itemSwarn;
  itemSwarn = new TDEConfigSkeleton::ItemInt( currentGroup(), TQString::fromLatin1( "swarn" ), mSwarn, -1 );
  itemSwarn->setLabel( i18n("swarn") );
  addItem( itemSwarn, TQString::fromLatin1( "swarn" ) );
  TDEConfigSkeleton::ItemInt  *itemSinact;
  itemSinact = new TDEConfigSkeleton::ItemInt( currentGroup(), TQString::fromLatin1( "sinact" ), mSinact, -1 );
  itemSinact->setLabel( i18n("sinact") );
  addItem( itemSinact, TQString::fromLatin1( "sinact" ) );
  TDEConfigSkeleton::ItemDateTime  *itemSexpire;
  itemSexpire = new TDEConfigSkeleton::ItemDateTime( currentGroup(), TQString::fromLatin1( "sexpire" ), mSexpire, TQDateTime(TQDate(1970,1,1)) );
  itemSexpire->setLabel( i18n("sexpire") );
  itemSexpire->setWhatsThis( i18n("This setting is for specifying a date when user accounts will expire.") );
  addItem( itemSexpire, TQString::fromLatin1( "sexpire" ) );
  TDEConfigSkeleton::ItemBool  *itemSneverexpire;
  itemSneverexpire = new TDEConfigSkeleton::ItemBool( currentGroup(), TQString::fromLatin1( "sneverexpire" ), mSneverexpire, true );
  itemSneverexpire->setLabel( i18n("sneverexpire") );
  itemSneverexpire->setWhatsThis( i18n("Check this if you want to user accounts never expire.") );
  addItem( itemSneverexpire, TQString::fromLatin1( "sneverexpire" ) );
  TDEConfigSkeleton::ItemString  *itemPasswdsrc;
  itemPasswdsrc = new TDEConfigSkeleton::ItemString( currentGroup(), TQString::fromLatin1( "passwdsrc" ), mPasswdsrc, TQString::fromLatin1( "/etc/passwd" ) );
  itemPasswdsrc->setLabel( i18n("Password file") );
  itemPasswdsrc->setWhatsThis( i18n("This specifies the users database file (usually /etc/passwd).") );
  addItem( itemPasswdsrc, TQString::fromLatin1( "passwdsrc" ) );
  TDEConfigSkeleton::ItemString  *itemGroupsrc;
  itemGroupsrc = new TDEConfigSkeleton::ItemString( currentGroup(), TQString::fromLatin1( "groupsrc" ), mGroupsrc, TQString::fromLatin1( "/etc/group" ) );
  itemGroupsrc->setLabel( i18n("Group file") );
  itemGroupsrc->setWhatsThis( i18n("This specifies the groups database file (usually /etc/group).") );
  addItem( itemGroupsrc, TQString::fromLatin1( "groupsrc" ) );
  TDEConfigSkeleton::ItemBool  *itemMd5shadow;
  itemMd5shadow = new TDEConfigSkeleton::ItemBool( currentGroup(), TQString::fromLatin1( "md5shadow" ), mMd5shadow );
  itemMd5shadow->setLabel( i18n("MD5 Shadow passwords") );
  itemMd5shadow->setWhatsThis( i18n("Check this if you want the passwords in the shadow file MD5 hashed. Leave this unchecked if DES encryption should be used.") );
  addItem( itemMd5shadow, TQString::fromLatin1( "md5shadow" ) );
  TDEConfigSkeleton::ItemString  *itemShadowsrc;
  itemShadowsrc = new TDEConfigSkeleton::ItemString( currentGroup(), TQString::fromLatin1( "shadowsrc" ), mShadowsrc, TQString::fromLatin1( "/etc/shadow" ) );
  itemShadowsrc->setLabel( i18n("Shadow password file") );
  itemShadowsrc->setWhatsThis( i18n("Specifies the shadow password file (usually /etc/shadow). Leave this empty if your system does not use a shadow password file.") );
  addItem( itemShadowsrc, TQString::fromLatin1( "shadowsrc" ) );
  TDEConfigSkeleton::ItemString  *itemGshadowsrc;
  itemGshadowsrc = new TDEConfigSkeleton::ItemString( currentGroup(), TQString::fromLatin1( "gshadowsrc" ), mGshadowsrc, TQString::fromLatin1( "/etc/gshadow" ) );
  itemGshadowsrc->setLabel( i18n("Group shadow file") );
  itemGshadowsrc->setWhatsThis( i18n("Specifies the shadow group file (usually /etc/gshadow). Leave this empty if your system does not use a shadow group file.") );
  addItem( itemGshadowsrc, TQString::fromLatin1( "gshadowsrc" ) );
  TDEConfigSkeleton::ItemString  *itemNispasswdsrc;
  itemNispasswdsrc = new TDEConfigSkeleton::ItemString( currentGroup(), TQString::fromLatin1( "nispasswdsrc" ), mNispasswdsrc );
  itemNispasswdsrc->setLabel( i18n("NIS password source") );
  addItem( itemNispasswdsrc, TQString::fromLatin1( "nispasswdsrc" ) );
  TDEConfigSkeleton::ItemInt  *itemNisminuid;
  itemNisminuid = new TDEConfigSkeleton::ItemInt( currentGroup(), TQString::fromLatin1( "nisminuid" ), mNisminuid );
  itemNisminuid->setLabel( i18n("NIS minimum UID") );
  addItem( itemNisminuid, TQString::fromLatin1( "nisminuid" ) );
  TDEConfigSkeleton::ItemString  *itemNisgroupsrc;
  itemNisgroupsrc = new TDEConfigSkeleton::ItemString( currentGroup(), TQString::fromLatin1( "nisgroupsrc" ), mNisgroupsrc );
  itemNisgroupsrc->setLabel( i18n("NIS group source") );
  addItem( itemNisgroupsrc, TQString::fromLatin1( "nisgroupsrc" ) );
  TDEConfigSkeleton::ItemInt  *itemNismingid;
  itemNismingid = new TDEConfigSkeleton::ItemInt( currentGroup(), TQString::fromLatin1( "nismingid" ), mNismingid );
  itemNismingid->setLabel( i18n("NIS minimum GID") );
  addItem( itemNismingid, TQString::fromLatin1( "nismingid" ) );
  TDEConfigSkeleton::ItemString  *itemLdapuser;
  itemLdapuser = new TDEConfigSkeleton::ItemString( currentGroup(), TQString::fromLatin1( "ldapuser" ), mLdapuser );
  itemLdapuser->setLabel( i18n("LDAP User") );
  addItem( itemLdapuser, TQString::fromLatin1( "ldapuser" ) );
  TDEConfigSkeleton::ItemPassword  *itemLdappassword;
  itemLdappassword = new TDEConfigSkeleton::ItemPassword( currentGroup(), TQString::fromLatin1( "ldappassword" ), mLdappassword );
  itemLdappassword->setLabel( i18n("LDAP Password") );
  addItem( itemLdappassword, TQString::fromLatin1( "ldappassword" ) );
  TDEConfigSkeleton::ItemString  *itemLdaprealm;
  itemLdaprealm = new TDEConfigSkeleton::ItemString( currentGroup(), TQString::fromLatin1( "ldaprealm" ), mLdaprealm );
  itemLdaprealm->setLabel( i18n("LDAP SASL Realm") );
  addItem( itemLdaprealm, TQString::fromLatin1( "ldaprealm" ) );
  TDEConfigSkeleton::ItemString  *itemLdapbinddn;
  itemLdapbinddn = new TDEConfigSkeleton::ItemString( currentGroup(), TQString::fromLatin1( "ldapbinddn" ), mLdapbinddn );
  itemLdapbinddn->setLabel( i18n("LDAP Bind DN") );
  addItem( itemLdapbinddn, TQString::fromLatin1( "ldapbinddn" ) );
  TDEConfigSkeleton::ItemString  *itemLdaphost;
  itemLdaphost = new TDEConfigSkeleton::ItemString( currentGroup(), TQString::fromLatin1( "ldaphost" ), mLdaphost );
  itemLdaphost->setLabel( i18n("LDAP Host") );
  addItem( itemLdaphost, TQString::fromLatin1( "ldaphost" ) );
  TDEConfigSkeleton::ItemInt  *itemLdapport;
  itemLdapport = new TDEConfigSkeleton::ItemInt( currentGroup(), TQString::fromLatin1( "ldapport" ), mLdapport, 389 );
  itemLdapport->setLabel( i18n("LDAP Port") );
  addItem( itemLdapport, TQString::fromLatin1( "ldapport" ) );
  TDEConfigSkeleton::ItemInt  *itemLdapver;
  itemLdapver = new TDEConfigSkeleton::ItemInt( currentGroup(), TQString::fromLatin1( "ldapver" ), mLdapver, 3 );
  itemLdapver->setLabel( i18n("LDAP version") );
  addItem( itemLdapver, TQString::fromLatin1( "ldapver" ) );
  TDEConfigSkeleton::ItemInt  *itemLdapsizelimit;
  itemLdapsizelimit = new TDEConfigSkeleton::ItemInt( currentGroup(), TQString::fromLatin1( "ldapsizelimit" ), mLdapsizelimit, 0 );
  itemLdapsizelimit->setLabel( i18n("LDAP Size limit") );
  addItem( itemLdapsizelimit, TQString::fromLatin1( "ldapsizelimit" ) );
  TDEConfigSkeleton::ItemInt  *itemLdaptimelimit;
  itemLdaptimelimit = new TDEConfigSkeleton::ItemInt( currentGroup(), TQString::fromLatin1( "ldaptimelimit" ), mLdaptimelimit, 0 );
  itemLdaptimelimit->setLabel( i18n("LDAP Time limit") );
  addItem( itemLdaptimelimit, TQString::fromLatin1( "ldaptimelimit" ) );
  TDEConfigSkeleton::ItemString  *itemLdapdn;
  itemLdapdn = new TDEConfigSkeleton::ItemString( currentGroup(), TQString::fromLatin1( "ldapdn" ), mLdapdn );
  itemLdapdn->setLabel( i18n("LDAP Base DN") );
  addItem( itemLdapdn, TQString::fromLatin1( "ldapdn" ) );
  TDEConfigSkeleton::ItemString  *itemLdapfilter;
  itemLdapfilter = new TDEConfigSkeleton::ItemString( currentGroup(), TQString::fromLatin1( "ldapfilter" ), mLdapfilter );
  itemLdapfilter->setLabel( i18n("LDAP Filter") );
  addItem( itemLdapfilter, TQString::fromLatin1( "ldapfilter" ) );
  TDEConfigSkeleton::ItemBool  *itemLdapnosec;
  itemLdapnosec = new TDEConfigSkeleton::ItemBool( currentGroup(), TQString::fromLatin1( "ldapnosec" ), mLdapnosec, false );
  itemLdapnosec->setLabel( i18n("LDAP no encryption") );
  addItem( itemLdapnosec, TQString::fromLatin1( "ldapnosec" ) );
  TDEConfigSkeleton::ItemBool  *itemLdaptls;
  itemLdaptls = new TDEConfigSkeleton::ItemBool( currentGroup(), TQString::fromLatin1( "ldaptls" ), mLdaptls, true );
  itemLdaptls->setLabel( i18n("LDAP TLS") );
  addItem( itemLdaptls, TQString::fromLatin1( "ldaptls" ) );
  TDEConfigSkeleton::ItemBool  *itemLdapssl;
  itemLdapssl = new TDEConfigSkeleton::ItemBool( currentGroup(), TQString::fromLatin1( "ldapssl" ), mLdapssl, false );
  itemLdapssl->setLabel( i18n("LDAP SSL") );
  addItem( itemLdapssl, TQString::fromLatin1( "ldapssl" ) );
  TDEConfigSkeleton::ItemBool  *itemLdapanon;
  itemLdapanon = new TDEConfigSkeleton::ItemBool( currentGroup(), TQString::fromLatin1( "ldapanon" ), mLdapanon, false );
  itemLdapanon->setLabel( i18n("LDAP Anonymous") );
  addItem( itemLdapanon, TQString::fromLatin1( "ldapanon" ) );
  TDEConfigSkeleton::ItemBool  *itemLdapsimple;
  itemLdapsimple = new TDEConfigSkeleton::ItemBool( currentGroup(), TQString::fromLatin1( "ldapsimple" ), mLdapsimple, true );
  itemLdapsimple->setLabel( i18n("LDAP Simple auth") );
  addItem( itemLdapsimple, TQString::fromLatin1( "ldapsimple" ) );
  TDEConfigSkeleton::ItemBool  *itemLdapsasl;
  itemLdapsasl = new TDEConfigSkeleton::ItemBool( currentGroup(), TQString::fromLatin1( "ldapsasl" ), mLdapsasl, false );
  itemLdapsasl->setLabel( i18n("LDAP SASL auth") );
  addItem( itemLdapsasl, TQString::fromLatin1( "ldapsasl" ) );
  TDEConfigSkeleton::ItemString  *itemLdapsaslmech;
  itemLdapsaslmech = new TDEConfigSkeleton::ItemString( currentGroup(), TQString::fromLatin1( "ldapsaslmech" ), mLdapsaslmech, TQString::fromLatin1( "LOGIN" ) );
  itemLdapsaslmech->setLabel( i18n("LDAP SASL mechanism") );
  addItem( itemLdapsaslmech, TQString::fromLatin1( "ldapsaslmech" ) );
  TDEConfigSkeleton::ItemString  *itemLdapuserbase;
  itemLdapuserbase = new TDEConfigSkeleton::ItemString( currentGroup(), TQString::fromLatin1( "ldapuserbase" ), mLdapuserbase, TQString::fromLatin1( "ou=People" ) );
  itemLdapuserbase->setLabel( i18n("LDAP User container") );
  itemLdapuserbase->setWhatsThis( i18n("This specifies where to store users' entries relative to the LDAP base DN.") );
  addItem( itemLdapuserbase, TQString::fromLatin1( "ldapuserbase" ) );
  TDEConfigSkeleton::ItemString  *itemLdapuserfilter;
  itemLdapuserfilter = new TDEConfigSkeleton::ItemString( currentGroup(), TQString::fromLatin1( "ldapuserfilter" ), mLdapuserfilter );
  itemLdapuserfilter->setLabel( i18n("LDAP User filter") );
  itemLdapuserfilter->setWhatsThis( i18n("This specifies the filter used for user entries.") );
  addItem( itemLdapuserfilter, TQString::fromLatin1( "ldapuserfilter" ) );
  TDEConfigSkeleton::ItemString  *itemLdapgroupbase;
  itemLdapgroupbase = new TDEConfigSkeleton::ItemString( currentGroup(), TQString::fromLatin1( "ldapgroupbase" ), mLdapgroupbase, TQString::fromLatin1( "ou=Group" ) );
  itemLdapgroupbase->setLabel( i18n("LDAP Group container") );
  itemLdapgroupbase->setWhatsThis( i18n("This specifies where to store groups' entries relative to the LDAP base DN.") );
  addItem( itemLdapgroupbase, TQString::fromLatin1( "ldapgroupbase" ) );
  TDEConfigSkeleton::ItemString  *itemLdapgroupfilter;
  itemLdapgroupfilter = new TDEConfigSkeleton::ItemString( currentGroup(), TQString::fromLatin1( "ldapgroupfilter" ), mLdapgroupfilter );
  itemLdapgroupfilter->setLabel( i18n("LDAP Group filter") );
  itemLdapgroupfilter->setWhatsThis( i18n("This specifies the filter used for group entries.") );
  addItem( itemLdapgroupfilter, TQString::fromLatin1( "ldapgroupfilter" ) );
  TQValueList<TDEConfigSkeleton::ItemEnum::Choice> valuesldapuserrdn;
  {
    TDEConfigSkeleton::ItemEnum::Choice choice;
    choice.name = TQString::fromLatin1( "uid" );
    valuesldapuserrdn.append( choice );
  }
  {
    TDEConfigSkeleton::ItemEnum::Choice choice;
    choice.name = TQString::fromLatin1( "uidNumber" );
    valuesldapuserrdn.append( choice );
  }
  {
    TDEConfigSkeleton::ItemEnum::Choice choice;
    choice.name = TQString::fromLatin1( "cn" );
    valuesldapuserrdn.append( choice );
  }
  TDEConfigSkeleton::ItemEnum  *itemLdapuserrdn;
  itemLdapuserrdn = new TDEConfigSkeleton::ItemEnum( currentGroup(), TQString::fromLatin1( "ldapuserrdn" ), mLdapuserrdn, valuesldapuserrdn, EnumLdapuserrdn::uid );
  itemLdapuserrdn->setLabel( i18n("LDAP User RDN prefix") );
  itemLdapuserrdn->setWhatsThis( i18n("This specifies what prefix will used for user entries.") );
  addItem( itemLdapuserrdn, TQString::fromLatin1( "ldapuserrdn" ) );
  TDEConfigSkeleton::ItemBool  *itemLdapcnfullname;
  itemLdapcnfullname = new TDEConfigSkeleton::ItemBool( currentGroup(), TQString::fromLatin1( "ldapcnfullname" ), mLdapcnfullname, true );
  itemLdapcnfullname->setLabel( i18n("Store the user's full name in the cn attribute") );
  itemLdapcnfullname->setWhatsThis( i18n("Check this if the user's full name should be stored in the cn (Canonical Name) attribute.") );
  addItem( itemLdapcnfullname, TQString::fromLatin1( "ldapcnfullname" ) );
  TDEConfigSkeleton::ItemBool  *itemLdapgecos;
  itemLdapgecos = new TDEConfigSkeleton::ItemBool( currentGroup(), TQString::fromLatin1( "ldapgecos" ), mLdapgecos, false );
  itemLdapgecos->setLabel( i18n("Update the gecos field") );
  itemLdapgecos->setWhatsThis( i18n("Check this if the gecos attribute should be updated.") );
  addItem( itemLdapgecos, TQString::fromLatin1( "ldapgecos" ) );
  TDEConfigSkeleton::ItemBool  *itemLdapshadow;
  itemLdapshadow = new TDEConfigSkeleton::ItemBool( currentGroup(), TQString::fromLatin1( "ldapshadow" ), mLdapshadow, true );
  itemLdapshadow->setLabel( i18n("Manage LDAP shadowAccount objectclass") );
  itemLdapshadow->setWhatsThis( i18n("Check this if the shadowAccount object should be used in the users' entries. It allows to enforce password change/expiration policies.") );
  addItem( itemLdapshadow, TQString::fromLatin1( "ldapshadow" ) );
  TQValueList<TDEConfigSkeleton::ItemEnum::Choice> valuesldapstructural;
  {
    TDEConfigSkeleton::ItemEnum::Choice choice;
    choice.name = TQString::fromLatin1( "account" );
    valuesldapstructural.append( choice );
  }
  {
    TDEConfigSkeleton::ItemEnum::Choice choice;
    choice.name = TQString::fromLatin1( "inetOrgPerson" );
    valuesldapstructural.append( choice );
  }
  TDEConfigSkeleton::ItemEnum  *itemLdapstructural;
  itemLdapstructural = new TDEConfigSkeleton::ItemEnum( currentGroup(), TQString::fromLatin1( "ldapstructural" ), mLdapstructural, valuesldapstructural, EnumLdapstructural::account );
  itemLdapstructural->setLabel( i18n("LDAP Structural objectclass") );
  itemLdapstructural->setWhatsThis( i18n("This option allows to specify the structural objectclass used with users' entries. If you want to use these entries not just for authentication, but for an addressbook, too, then choose inetOrgPerson.") );
  addItem( itemLdapstructural, TQString::fromLatin1( "ldapstructural" ) );
  TQValueList<TDEConfigSkeleton::ItemEnum::Choice> valuesldapgrouprdn;
  {
    TDEConfigSkeleton::ItemEnum::Choice choice;
    choice.name = TQString::fromLatin1( "cn" );
    valuesldapgrouprdn.append( choice );
  }
  {
    TDEConfigSkeleton::ItemEnum::Choice choice;
    choice.name = TQString::fromLatin1( "gidNumber" );
    valuesldapgrouprdn.append( choice );
  }
  TDEConfigSkeleton::ItemEnum  *itemLdapgrouprdn;
  itemLdapgrouprdn = new TDEConfigSkeleton::ItemEnum( currentGroup(), TQString::fromLatin1( "ldapgrouprdn" ), mLdapgrouprdn, valuesldapgrouprdn, EnumLdapgrouprdn::cn );
  itemLdapgrouprdn->setLabel( i18n("LDAP Group RDN prefix") );
  itemLdapgrouprdn->setWhatsThis( i18n("This specifies what prefix will used for group entries.") );
  addItem( itemLdapgrouprdn, TQString::fromLatin1( "ldapgrouprdn" ) );
  TQValueList<TDEConfigSkeleton::ItemEnum::Choice> valuesldappasswordhash;
  {
    TDEConfigSkeleton::ItemEnum::Choice choice;
    choice.name = TQString::fromLatin1( "Clear" );
    valuesldappasswordhash.append( choice );
  }
  {
    TDEConfigSkeleton::ItemEnum::Choice choice;
    choice.name = TQString::fromLatin1( "CRYPT" );
    valuesldappasswordhash.append( choice );
  }
  {
    TDEConfigSkeleton::ItemEnum::Choice choice;
    choice.name = TQString::fromLatin1( "MD5" );
    valuesldappasswordhash.append( choice );
  }
  {
    TDEConfigSkeleton::ItemEnum::Choice choice;
    choice.name = TQString::fromLatin1( "SMD5" );
    valuesldappasswordhash.append( choice );
  }
  {
    TDEConfigSkeleton::ItemEnum::Choice choice;
    choice.name = TQString::fromLatin1( "SHA" );
    valuesldappasswordhash.append( choice );
  }
  {
    TDEConfigSkeleton::ItemEnum::Choice choice;
    choice.name = TQString::fromLatin1( "SSHA" );
    valuesldappasswordhash.append( choice );
  }
  TDEConfigSkeleton::ItemEnum  *itemLdappasswordhash;
  itemLdappasswordhash = new TDEConfigSkeleton::ItemEnum( currentGroup(), TQString::fromLatin1( "ldappasswordhash" ), mLdappasswordhash, valuesldappasswordhash, EnumLdappasswordhash::SSHA );
  itemLdappasswordhash->setLabel( i18n("LDAP Password hash method") );
  itemLdappasswordhash->setWhatsThis( i18n("This specifies the password hashing method. The most secure is SSHA.") );
  addItem( itemLdappasswordhash, TQString::fromLatin1( "ldappasswordhash" ) );
  TDEConfigSkeleton::ItemBool  *itemLdapsam;
  itemLdapsam = new TDEConfigSkeleton::ItemBool( currentGroup(), TQString::fromLatin1( "ldapsam" ), mLdapsam );
  itemLdapsam->setLabel( i18n("Enable samba account management") );
  itemLdapsam->setWhatsThis( i18n("Check this if you want to use the user/group entries in a Samba domain. KUser will create sambaSamAccount objectclass for each entry which is usable with the ldapsam passdb backend with Samba version greater than 3.0.") );
  addItem( itemLdapsam, TQString::fromLatin1( "ldapsam" ) );
  TDEConfigSkeleton::ItemString  *itemSamdomain;
  itemSamdomain = new TDEConfigSkeleton::ItemString( currentGroup(), TQString::fromLatin1( "samdomain" ), mSamdomain );
  itemSamdomain->setLabel( i18n("Samba domain name") );
  itemSamdomain->setWhatsThis( i18n("This specifies the samba domain name.") );
  addItem( itemSamdomain, TQString::fromLatin1( "samdomain" ) );
  TDEConfigSkeleton::ItemString  *itemSamdomsid;
  itemSamdomsid = new TDEConfigSkeleton::ItemString( currentGroup(), TQString::fromLatin1( "samdomsid" ), mSamdomsid );
  itemSamdomsid->setLabel( i18n("Samba domain SID") );
  itemSamdomsid->setWhatsThis( i18n("This specifies the domain Security IDentifier. It is unique in a single domain. You can query the value of the domain SID with 'net getlocalsid domain_name'.") );
  addItem( itemSamdomsid, TQString::fromLatin1( "samdomsid" ) );
  TDEConfigSkeleton::ItemInt  *itemSamridbase;
  itemSamridbase = new TDEConfigSkeleton::ItemInt( currentGroup(), TQString::fromLatin1( "samridbase" ), mSamridbase, 1000 );
  itemSamridbase->setLabel( i18n("Algorithmic RID base") );
  itemSamridbase->setWhatsThis( i18n("This value is an offset for the algorithmic mapping from uids and gids to rids. The default (and minimum) value is 1000, it must be even, and the LDAP database and smb.conf must store the same values.") );
  addItem( itemSamridbase, TQString::fromLatin1( "samridbase" ) );
  TDEConfigSkeleton::ItemString  *itemSamloginscript;
  itemSamloginscript = new TDEConfigSkeleton::ItemString( currentGroup(), TQString::fromLatin1( "samloginscript" ), mSamloginscript );
  itemSamloginscript->setLabel( i18n("Samba login script") );
  itemSamloginscript->setWhatsThis( i18n("This specifies a name of a login script (in the `Netlogon` share) which will be executed as the user logs in to a Windows machine.") );
  addItem( itemSamloginscript, TQString::fromLatin1( "samloginscript" ) );
  TDEConfigSkeleton::ItemString  *itemSamhomedrive;
  itemSamhomedrive = new TDEConfigSkeleton::ItemString( currentGroup(), TQString::fromLatin1( "samhomedrive" ), mSamhomedrive );
  itemSamhomedrive->setLabel( i18n("Samba home drive") );
  itemSamhomedrive->setWhatsThis( i18n("Specifies a drive letter where the user's home directory will automatically mapped when he/she logs into a Windows machine.") );
  addItem( itemSamhomedrive, TQString::fromLatin1( "samhomedrive" ) );
  TDEConfigSkeleton::ItemString  *itemSamprofilepath;
  itemSamprofilepath = new TDEConfigSkeleton::ItemString( currentGroup(), TQString::fromLatin1( "samprofilepath" ), mSamprofilepath );
  itemSamprofilepath->setLabel( i18n("Samba profile path template") );
  itemSamprofilepath->setWhatsThis( i18n("This specifies the location of the roaming profile of the user. The '%U' macro will be replaced with the actual user name.") );
  addItem( itemSamprofilepath, TQString::fromLatin1( "samprofilepath" ) );
  TDEConfigSkeleton::ItemString  *itemSamhomepath;
  itemSamhomepath = new TDEConfigSkeleton::ItemString( currentGroup(), TQString::fromLatin1( "samhomepath" ), mSamhomepath );
  itemSamhomepath->setLabel( i18n("Samba home path template") );
  itemSamhomepath->setWhatsThis( i18n("This specifies the location of the home directory of the user. This field is meaningful only for Windows machines. The '%U' macro will be replaced with the actual user name.") );
  addItem( itemSamhomepath, TQString::fromLatin1( "samhomepath" ) );
  TDEConfigSkeleton::ItemBool  *itemLanmanhash;
  itemLanmanhash = new TDEConfigSkeleton::ItemBool( currentGroup(), TQString::fromLatin1( "lanmanhash" ), mLanmanhash, false );
  itemLanmanhash->setLabel( i18n("Store LanManager hashed password") );
  itemLanmanhash->setWhatsThis( i18n("Store the LanManager hashed password in the sambaLMPassword attribute. Check this if you have older clients (Win9x series and before) on your network.") );
  addItem( itemLanmanhash, TQString::fromLatin1( "lanmanhash" ) );
}

KUserPrefsBase::~KUserPrefsBase()
{
}

