-rw-r--r-- | noncore/settings/usermanager/userdialog.cpp | 23 |
1 files changed, 20 insertions, 3 deletions
diff --git a/noncore/settings/usermanager/userdialog.cpp b/noncore/settings/usermanager/userdialog.cpp index 90e27d5..c43b391 100644 --- a/noncore/settings/usermanager/userdialog.cpp +++ b/noncore/settings/usermanager/userdialog.cpp @@ -13,4 +13,5 @@ #include <qlabel.h> #include <qmessagebox.h> +#include <qfile.h> #include <stdlib.h> @@ -188,4 +189,7 @@ void UserDialog::setupTab2() { */ bool UserDialog::addUser(int uid, int gid) { + QCheckListItem *temp; + QFile ozTest; + int oz=ozTest.exists("/etc/oz_version"); UserDialog *adduserDialog=new UserDialog(); adduserDialog->setCaption(tr("Add User")); @@ -195,4 +199,18 @@ bool UserDialog::addUser(int uid, int gid) { adduserDialog->groupComboBox->insertItem("<create new group>",0); adduserDialog->uidLineEdit->setText(QString::number(uid)); + // If we're running on OZ, add new users to some default groups. + if(oz) { + QListViewItemIterator iter( adduserDialog->groupsListView ); + for ( ; iter.current(); ++iter ) { + temp=(QCheckListItem*)iter.current(); + if (temp->text()=="video") temp->setOn(true); + if (temp->text()=="audio") temp->setOn(true); + if (temp->text()=="time") temp->setOn(true); + if (temp->text()=="power") temp->setOn(true); + if (temp->text()=="input") temp->setOn(true); + if (temp->text()=="sharp") temp->setOn(true); + if (temp->text()=="tty") temp->setOn(true); + } + } // Show the dialog! if(!(adduserDialog->exec())) return false; @@ -210,9 +228,8 @@ bool UserDialog::addUser(int uid, int gid) { // Add User to additional groups. - QCheckListItem *temp; QListViewItemIterator it( adduserDialog->groupsListView ); for ( ; it.current(); ++it ) { - temp=(QCheckListItem*)it.current(); - if (temp->isOn() ) + temp=(QCheckListItem*)it.current(); + if (temp->isOn() ) accounts->addGroupMember(it.current()->text(0),adduserDialog->loginLineEdit->text()); } |