@ -36,15 +36,27 @@
# include "ldap.h"
// FIXME
// Connect this to CMake/Automake
# define KDE_CONFDIR " / etc / trinity"
typedef KGenericFactory < ldap , TQWidget > ldapFactory ;
K_EXPORT_COMPONENT_FACTORY ( kcm_ldap , ldapFactory ( " kcmldap " ) )
KSimpleConfig * systemconfig ;
ldap : : ldap ( TQWidget * parent , const char * name , const TQStringList & )
: KCModule ( parent , name ) , myAboutData ( 0 )
{
// FIXME
// Add UI base widget to 'this'
TQVBoxLayout * layout = new TQVBoxLayout ( this , KDialog : : marginHint ( ) , KDialog : : spacingHint ( ) ) ;
systemconfig = new KSimpleConfig ( TQString : : fromLatin1 ( KDE_CONFDIR " /ldap/ldapconfigrc " ) ) ;
base = new LDAPConfigBase ( this ) ;
layout - > add ( base ) ;
setRootOnlyMsg ( i18n ( " <b>Bonded LDAP realms take effect system wide, and require administrator access to modify</b><br>To alter the system's bonded LDAP realms, click on the \" Administrator Mode \" button below. " ) ) ;
setUseRootOnlyMsg ( true ) ;
load ( ) ;
@ -55,9 +67,15 @@ ldap::ldap(TQWidget *parent, const char *name, const TQStringList&)
about - > addAuthor ( " Timothy Pearson " , 0 , " kb9vqf@pearsoncomputing.net " ) ;
setAboutData ( about ) ;
if ( getuid ( ) ! = 0 | | ! systemconfig - > checkConfigFilesWritable ( true ) ) {
base - > systemEnableSupport - > setEnabled ( false ) ;
}
} ;
ldap : : ~ ldap ( ) {
delete systemconfig ;
}
void ldap : : load ( ) {