author | umopapisdn <umopapisdn> | 2002-10-14 20:42:04 (UTC) |
---|---|---|
committer | umopapisdn <umopapisdn> | 2002-10-14 20:42:04 (UTC) |
commit | 14f450ead20011e5697bb36a4ad087cc648b439d (patch) (unidiff) | |
tree | 7b474bbeeba4ceebb50c2da0bf26d80002062970 | |
parent | 8140420efa133ea59310d3f8de721950fd1d13af (diff) | |
download | opie-14f450ead20011e5697bb36a4ad087cc648b439d.zip opie-14f450ead20011e5697bb36a4ad087cc648b439d.tar.gz opie-14f450ead20011e5697bb36a4ad087cc648b439d.tar.bz2 |
New users added in OpenZaurus now by default belong to some groups. (video, audio, time, power, input, sharp, tty)
-rw-r--r-- | noncore/settings/usermanager/userdialog.cpp | 19 |
1 files changed, 18 insertions, 1 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 | |||
@@ -9,12 +9,13 @@ | |||
9 | 9 | ||
10 | #include "userdialog.h" | 10 | #include "userdialog.h" |
11 | 11 | ||
12 | #include <qlayout.h> | 12 | #include <qlayout.h> |
13 | #include <qlabel.h> | 13 | #include <qlabel.h> |
14 | #include <qmessagebox.h> | 14 | #include <qmessagebox.h> |
15 | #include <qfile.h> | ||
15 | 16 | ||
16 | #include <stdlib.h> | 17 | #include <stdlib.h> |
17 | 18 | ||
18 | #include <stdio.h> | 19 | #include <stdio.h> |
19 | #include <sys/types.h> | 20 | #include <sys/types.h> |
20 | #include <sys/wait.h> | 21 | #include <sys/wait.h> |
@@ -184,19 +185,36 @@ void UserDialog::setupTab2() { | |||
184 | * @param gid This is a suggested available GID. | 185 | * @param gid This is a suggested available GID. |
185 | * | 186 | * |
186 | * @return <code>true</code> if the user was successfully added, otherwise <code>false</code>. | 187 | * @return <code>true</code> if the user was successfully added, otherwise <code>false</code>. |
187 | * | 188 | * |
188 | */ | 189 | */ |
189 | bool UserDialog::addUser(int uid, int gid) { | 190 | bool UserDialog::addUser(int uid, int gid) { |
191 | QCheckListItem *temp; | ||
192 | QFile ozTest; | ||
193 | int oz=ozTest.exists("/etc/oz_version"); | ||
190 | UserDialog *adduserDialog=new UserDialog(); | 194 | UserDialog *adduserDialog=new UserDialog(); |
191 | adduserDialog->setCaption(tr("Add User")); | 195 | adduserDialog->setCaption(tr("Add User")); |
192 | adduserDialog->userID=uid;// Set next available UID as default uid. | 196 | adduserDialog->userID=uid;// Set next available UID as default uid. |
193 | adduserDialog->groupID=gid;// Set next available GID as default gid. | 197 | adduserDialog->groupID=gid;// Set next available GID as default gid. |
194 | // Insert default group into groupComboBox | 198 | // Insert default group into groupComboBox |
195 | adduserDialog->groupComboBox->insertItem("<create new group>",0); | 199 | adduserDialog->groupComboBox->insertItem("<create new group>",0); |
196 | adduserDialog->uidLineEdit->setText(QString::number(uid)); | 200 | adduserDialog->uidLineEdit->setText(QString::number(uid)); |
201 | // If we're running on OZ, add new users to some default groups. | ||
202 | if(oz) { | ||
203 | QListViewItemIterator iter( adduserDialog->groupsListView ); | ||
204 | for ( ; iter.current(); ++iter ) { | ||
205 | temp=(QCheckListItem*)iter.current(); | ||
206 | if (temp->text()=="video") temp->setOn(true); | ||
207 | if (temp->text()=="audio") temp->setOn(true); | ||
208 | if (temp->text()=="time") temp->setOn(true); | ||
209 | if (temp->text()=="power") temp->setOn(true); | ||
210 | if (temp->text()=="input") temp->setOn(true); | ||
211 | if (temp->text()=="sharp") temp->setOn(true); | ||
212 | if (temp->text()=="tty") temp->setOn(true); | ||
213 | } | ||
214 | } | ||
197 | // Show the dialog! | 215 | // Show the dialog! |
198 | if(!(adduserDialog->exec())) return false; | 216 | if(!(adduserDialog->exec())) return false; |
199 | if((adduserDialog->groupComboBox->currentItem()!=0)) { | 217 | if((adduserDialog->groupComboBox->currentItem()!=0)) { |
200 | accounts->findGroup(adduserDialog->groupComboBox->currentText()); | 218 | accounts->findGroup(adduserDialog->groupComboBox->currentText()); |
201 | adduserDialog->groupID=accounts->gr_gid; | 219 | adduserDialog->groupID=accounts->gr_gid; |
202 | qWarning(QString::number(accounts->gr_gid)); | 220 | qWarning(QString::number(accounts->gr_gid)); |
@@ -206,13 +224,12 @@ bool UserDialog::addUser(int uid, int gid) { | |||
206 | QString("/home/")+adduserDialog->loginLineEdit->text() , adduserDialog->shellComboBox->currentText()))) { | 224 | QString("/home/")+adduserDialog->loginLineEdit->text() , adduserDialog->shellComboBox->currentText()))) { |
207 | QMessageBox::information(0,"Ooops!","Something went wrong!\nUnable to add user."); | 225 | QMessageBox::information(0,"Ooops!","Something went wrong!\nUnable to add user."); |
208 | return false; | 226 | return false; |
209 | } | 227 | } |
210 | 228 | ||
211 | // Add User to additional groups. | 229 | // Add User to additional groups. |
212 | QCheckListItem *temp; | ||
213 | QListViewItemIterator it( adduserDialog->groupsListView ); | 230 | QListViewItemIterator it( adduserDialog->groupsListView ); |
214 | for ( ; it.current(); ++it ) { | 231 | for ( ; it.current(); ++it ) { |
215 | temp=(QCheckListItem*)it.current(); | 232 | temp=(QCheckListItem*)it.current(); |
216 | if (temp->isOn() ) | 233 | if (temp->isOn() ) |
217 | accounts->addGroupMember(it.current()->text(0),adduserDialog->loginLineEdit->text()); | 234 | accounts->addGroupMember(it.current()->text(0),adduserDialog->loginLineEdit->text()); |
218 | } | 235 | } |