diff --git a/functions.inc.php b/functions.inc.php index eff488dd..c7e311da 100644 --- a/functions.inc.php +++ b/functions.inc.php @@ -869,6 +869,7 @@ function domain_exist ($domain) { // was admin_list_admins // function list_admins () { + # TODO: use AdminHandler global $table_admin; $list = ""; @@ -885,54 +886,6 @@ function list_admins () { -// -// get_admin_properties -// Action: Get all the admin properties. -// Call: get_admin_properties (string admin) -// -function get_admin_properties ($username) { - global $CONF; - global $table_admin, $table_domain_admins; - $list = array (); - - $E_username = escape_string($username); - - $result = db_query ("SELECT * FROM $table_domain_admins WHERE username='$E_username' AND domain='ALL'"); - if ($result['rows'] == 1) { - $list['domain_count'] = 'ALL'; - } else { - $result = db_query ("SELECT COUNT(*) FROM $table_domain_admins WHERE username='$E_username'"); - $row = db_row ($result['result']); - $list['domain_count'] = $row[0]; - } - - $query = "SELECT * FROM $table_admin WHERE username='$E_username'"; - if ('pgsql'==$CONF['database_type']) { - $query=" - SELECT - *, - EXTRACT(epoch FROM created) AS uts_created, - EXTRACT (epoch FROM modified) AS uts_modified - FROM $table_admin - WHERE username='$E_username' - "; - } - - $result = db_query ($query); - $row = db_array ($result['result']); - $list['created'] = $row['created']; - $list['modified'] = $row['modified']; - $list['active'] = $row['active']; - if ('pgsql'==$CONF['database_type']) { - $list['active'] = ('t'==$row['active']) ? 1 : 0; - $list['created']= gmstrftime('%c %Z',$row['uts_created']); - $list['modified']= gmstrftime('%c %Z',$row['uts_modified']); - } - return $list; -} - - - // // encode_header // Action: Encode a string according to RFC 1522 for use in headers if it contains 8-bit characters. diff --git a/list-admin.php b/list-admin.php index 43ea5346..ea9f576d 100644 --- a/list-admin.php +++ b/list-admin.php @@ -25,20 +25,16 @@ require_once("common.php"); authentication_require_role('global-admin'); -$_active = array ($PALANG ['NO'], $PALANG ['YES']); +# TODO: move code to list_admins() in functions.inc.php? +$handler = new AdminHandler(0 /*, $admin_username*/ ); -$list_admins = list_admins(); -if ((is_array ($list_admins) and sizeof ($list_admins) > 0)) -{ - for ($i = 0; $i < sizeof ($list_admins); $i++) - { - $admin_properties[$i] = get_admin_properties ($list_admins[$i]); - $admin_properties[$i] ['name'] = $list_admins[$i]; - if ($admin_properties [$i] ['domain_count'] == 'ALL') - $admin_properties [$i] ['domain_count'] = $PALANG ['pAdminEdit_admin_super_admin']; - $admin_properties [$i] ['active'] = $_active [$admin_properties [$i] ['active']]; - } +if ($handler->getList('1=1')) { + $admin_properties = $handler->result(); +} else { + $admin_properties = array(); + # TODO: check if there was an error or simply no admins (which shouldn't happen because nobody could login then...) } + $smarty->assign ('admin_properties', $admin_properties); $smarty->assign ('smarty_template', 'adminlistadmin'); $smarty->display ('index.tpl'); diff --git a/templates/adminlistadmin.tpl b/templates/adminlistadmin.tpl index 39b7183e..4e570a56 100644 --- a/templates/adminlistadmin.tpl +++ b/templates/adminlistadmin.tpl @@ -9,12 +9,18 @@ {foreach from=$admin_properties item=admin} {#tr_hilightoff#} - {$admin.name} - {$admin.domain_count} + {$admin.username} + + {if $admin.superadmin == 1} + {$PALANG.pAdminEdit_admin_super_admin} + {else} + {$admin.domain_count} + {/if} + {$admin.modified} - {$admin.active} - {$PALANG.edit} - {$PALANG.del} + {$admin._active} + {$PALANG.edit} + {$PALANG.del} {/foreach}