2020-11-24 Fred Gleason <fredg@paravelsystems.com>

* Added 'E-Mail Address', 'Phone Number' and 'Local Auth' columns
	to the 'Users' list in the 'Rivendell User List' dialog in rdadmin(1).

Signed-off-by: Fred Gleason <fredg@paravelsystems.com>
This commit is contained in:
Fred Gleason
2020-11-24 14:46:42 -05:00
parent 62ef7fd79f
commit 82a368fdca
12 changed files with 298 additions and 53 deletions

View File

@@ -2,7 +2,7 @@
//
// List Rivendell Users
//
// (C) Copyright 2002-2019 Fred Gleason <fredg@paravelsystems.com>
// (C) Copyright 2002-2020 Fred Gleason <fredg@paravelsystems.com>
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License version 2 as
@@ -34,6 +34,7 @@
// Icons
//
#include "../icons/admin.xpm"
#include "../icons/localuser.xpm"
#include "../icons/user.xpm"
ListUsers::ListUsers(const QString &admin_name,QWidget *parent)
@@ -54,6 +55,7 @@ ListUsers::ListUsers(const QString &admin_name,QWidget *parent)
// Create Icons
//
list_admin_map=new QPixmap(admin_xpm);
list_localuser_map=new QPixmap(localuser_xpm);
list_user_map=new QPixmap(user_xpm);
//
@@ -96,9 +98,13 @@ ListUsers::ListUsers(const QString &admin_name,QWidget *parent)
list_users_view->setAllColumnsShowFocus(true);
list_users_view->setItemMargin(5);
list_users_view->addColumn("");
list_users_view->addColumn(tr("USER NAME"));
list_users_view->addColumn(tr("FULL NAME"));
list_users_view->addColumn(tr("DESCRIPTION"));
list_users_view->addColumn(tr("Login Name"));
list_users_view->addColumn(tr("Full Name"));
list_users_view->addColumn(tr("Description"));
list_users_view->addColumn(tr("E-Mail Address"));
list_users_view->addColumn(tr("Phone Number"));
list_users_view->addColumn(tr("Local Auth"));
list_users_view->setColumnAlignment(6,Qt::AlignCenter);
QLabel *list_box_label=new QLabel(list_users_view,tr("&Users:"),this);
list_box_label->setFont(labelFont());
list_box_label->setGeometry(14,11,85,19);
@@ -280,7 +286,15 @@ void ListUsers::RefreshList()
RDListViewItem *item;
list_users_view->clear();
sql="select ADMIN_CONFIG_PRIV,LOGIN_NAME,FULL_NAME,DESCRIPTION from USERS";
sql=QString("select ")+
"ADMIN_CONFIG_PRIV,"+ // 00
"LOGIN_NAME,"+ // 01
"FULL_NAME,"+ // 02
"DESCRIPTION,"+ // 03
"EMAIL_ADDRESS,"+ // 04
"PHONE_NUMBER,"+ // 05
"LOCAL_AUTH "+ // 06
"from USERS";
q=new RDSqlQuery(sql);
while (q->next()) {
item=new RDListViewItem(list_users_view);
@@ -288,11 +302,19 @@ void ListUsers::RefreshList()
item->setPixmap(0,*list_admin_map);
}
else {
item->setPixmap(0,*list_user_map);
if(q->value(6).toString()=="Y") {
item->setPixmap(0,*list_localuser_map);
}
else {
item->setPixmap(0,*list_user_map);
}
}
item->setText(1,q->value(1).toString());
item->setText(2,q->value(2).toString());
item->setText(3,q->value(3).toString());
item->setText(4,q->value(4).toString());
item->setText(5,q->value(5).toString());
item->setText(6,q->value(6).toString());
}
delete q;
}
@@ -306,7 +328,10 @@ void ListUsers::RefreshItem(RDListViewItem *item)
sql=QString("select ")+
"ADMIN_CONFIG_PRIV,"+ // 00
"FULL_NAME,"+ // 01
"DESCRIPTION "+ // 02
"DESCRIPTION,"+ // 02
"EMAIL_ADDRESS,"+ // 03
"PHONE_NUMBER,"+ // 04
"LOCAL_AUTH "+ // 05
"from USERS where "+
"LOGIN_NAME=\""+RDEscapeString(item->text(1))+"\"";
q=new RDSqlQuery(sql);
@@ -315,10 +340,18 @@ void ListUsers::RefreshItem(RDListViewItem *item)
item->setPixmap(0,*list_admin_map);
}
else {
item->setPixmap(0,*list_user_map);
if(q->value(3).toString()=="Y") {
item->setPixmap(0,*list_localuser_map);
}
else {
item->setPixmap(0,*list_user_map);
}
}
item->setText(2,q->value(1).toString());
item->setText(3,q->value(2).toString());
item->setText(4,q->value(3).toString());
item->setText(5,q->value(4).toString());
item->setText(6,q->value(5).toString());
}
delete q;
}