270 lines
		
	
	
		
			9.4 KiB
		
	
	
	
		
			PHP
		
	
	
	
			
		
		
	
	
			270 lines
		
	
	
		
			9.4 KiB
		
	
	
	
		
			PHP
		
	
	
	
<?php
 | 
						|
/*
 | 
						|
 ----------------------------------------------------------------------
 | 
						|
 AlternC - Web Hosting System
 | 
						|
 Copyright (C) 2006 Le réseau Koumbit Inc.
 | 
						|
 http://koumbit.org/
 | 
						|
 Copyright (C) 2002 by the AlternC Development Team.
 | 
						|
 http://alternc.org/
 | 
						|
 ----------------------------------------------------------------------
 | 
						|
 LICENSE
 | 
						|
 | 
						|
 This program is free software; you can redistribute it and/or
 | 
						|
 modify it under the terms of the GNU General Public License (GPL)
 | 
						|
 as published by the Free Software Foundation; either version 2
 | 
						|
 of the License, or (at your option) any later version.
 | 
						|
 | 
						|
 This program is distributed in the hope that it will be useful,
 | 
						|
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
						|
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
						|
 GNU General Public License for more details.
 | 
						|
 | 
						|
 To read the license please visit http://www.gnu.org/copyleft/gpl.html
 | 
						|
 ----------------------------------------------------------------------
 | 
						|
 Original Author of file: Benjamin Sonntag
 | 
						|
 Purpose of file: Show the member list
 | 
						|
 ----------------------------------------------------------------------
 | 
						|
*/
 | 
						|
require_once("../class/config.php");
 | 
						|
include_once("head.php");
 | 
						|
 | 
						|
if (!$admin->enabled) {
 | 
						|
  __("This page is restricted to authorized staff");
 | 
						|
  include_once('foot.php');
 | 
						|
  exit();
 | 
						|
}
 | 
						|
 | 
						|
$fields = array (
 | 
						|
	"show"    => array ("request", "string", ""),
 | 
						|
	"creator" => array("request", "integer", 0),
 | 
						|
	"short"   => array("request", "integer", -1),
 | 
						|
	"pattern" => array("post", "string", "*"),
 | 
						|
        "pattern_type" => array("post", "string", "login"),
 | 
						|
);
 | 
						|
getFields($fields);
 | 
						|
 | 
						|
if (empty($pattern)) $pattern="*";
 | 
						|
 | 
						|
if ($short!=-1) {
 | 
						|
  $mem->adminpref($short);
 | 
						|
  $mem->user["admlist"]=$short;
 | 
						|
}
 | 
						|
 | 
						|
$subadmin=variable_get("subadmin_restriction", 0);
 | 
						|
 | 
						|
// If we ask for all account but we aren't "admin" and
 | 
						|
// subadmin var is not 1
 | 
						|
if ($show=="all" && !$subadmin==1 && $cuid != 2000) {
 | 
						|
  __("This page is restricted to authorized staff");
 | 
						|
  include('foot.php');
 | 
						|
  exit();
 | 
						|
}
 | 
						|
 | 
						|
if ($pattern && $pattern_type) {
 | 
						|
  $r=$admin->get_list($show == 'all' ? 1 : 0, $creator, $pattern, $pattern_type);
 | 
						|
} else {
 | 
						|
  $r = FALSE;
 | 
						|
}
 | 
						|
?>
 | 
						|
 | 
						|
<h3><?php __("AlternC account list"); ?></h3>
 | 
						|
<hr id="topbar"/>
 | 
						|
 | 
						|
<?php
 | 
						|
// Depending on the admin's choice, let's show a short list or a long list.
 | 
						|
if ($mem->user["admlist"]==0) { // Normal (large) mode
 | 
						|
?>
 | 
						|
  <p><span class="ina" style="float: right;"><a href="adm_list.php?short=1"><?php __("Minimal view"); ?></a></span></p>
 | 
						|
<?php
 | 
						|
} else {
 | 
						|
?>
 | 
						|
  <p><span class="ina" style="float:right;"><a href="adm_list.php?short=0"><?php __("Complete view"); ?></a></span></p>
 | 
						|
<?php
 | 
						|
}
 | 
						|
?>
 | 
						|
 | 
						|
<fieldset style="clear:both;">
 | 
						|
  <legend><?php __("Filters"); ?></legend>
 | 
						|
  <form method="post" action="adm_list.php" >
 | 
						|
  <p>
 | 
						|
    <label for="pattern_type_login"><?php __("Search for a Login"); ?></label><input type="radio" name="pattern_type" value="login" id="pattern_type_login" <?php if (!$pattern_type || $pattern_type === 'login') echo ' checked="checked" '; ?>/> 
 | 
						|
    <label for="pattern_type_domain"><?php __("Search for a Domain"); ?></label><input type="radio" name="pattern_type" value="domaine" id="pattern_type_domain" <?php if ($pattern_type === 'domaine') echo ' checked="checked" '; ?>/>
 | 
						|
    <input type="text" id="pattern" name="pattern" value="<?php echo $pattern ?>"/> <input type="submit" class="inb filter" value="<?php __("submit"); ?>" />
 | 
						|
  </p>
 | 
						|
  </form>
 | 
						|
  <?php
 | 
						|
  $list_creators = $admin->get_creator_list();
 | 
						|
 | 
						|
  if ($subadmin==1 || $cuid==2000) {
 | 
						|
    if($show != 'all') {
 | 
						|
      echo '<p><span class="inb filter"><a href="adm_list.php?show=all">' . _('List all AlternC accounts') . '</a></span>';
 | 
						|
      
 | 
						|
      if ($subadmin==1 || $cuid==2000) {
 | 
						|
        $infos_creators = array();
 | 
						|
 | 
						|
        foreach ($list_creators as $key => $val) {
 | 
						|
          $infos_creators[] = '<a href="adm_list.php?creator=' . $val['uid'] . '">' . $val['login'] . '</a>';
 | 
						|
        }
 | 
						|
 | 
						|
        if (count($infos_creators)) {
 | 
						|
          echo ' ('._("Or only the accounts of:")." ". implode(', ', $infos_creators) . ')';
 | 
						|
        }
 | 
						|
      }
 | 
						|
      echo "</p>";
 | 
						|
    } else { // if show != all
 | 
						|
      echo '<p><span class="ina filter"><a href="adm_list.php">' . _('List only my accounts') . '</a></span></p>';
 | 
						|
    } 
 | 
						|
  }// END ($subadmin==1 || $cuid==2000)
 | 
						|
  ?>
 | 
						|
</fieldset>
 | 
						|
  
 | 
						|
<?php
 | 
						|
if ( !empty($error) ) {
 | 
						|
  echo '<p class="alert alert-danger">' , $error, '</p>';
 | 
						|
}
 | 
						|
 | 
						|
?>
 | 
						|
 | 
						|
<p>
 | 
						|
<?php __("Here is the list of hosted AlternC accounts"); ?> (<?php printf(_("%s accounts"),count($r)); ?>)
 | 
						|
</p>
 | 
						|
 | 
						|
<p><span class="ina add"><a href="adm_add.php"><?php __("Create a new AlternC account"); ?></a></span></p>
 | 
						|
 | 
						|
<?php
 | 
						|
if (!is_array($r) || empty($r) ) {
 | 
						|
  echo '<p class="alert alert-danger">'._("No account defined for now").'</p>';
 | 
						|
  include('foot.php');
 | 
						|
} 
 | 
						|
?>
 | 
						|
 | 
						|
<form method="post" action="adm_dodel.php">
 | 
						|
<?php
 | 
						|
// Depending on the admin's choice, let's show a short list or a long list.
 | 
						|
 | 
						|
if ($mem->user["admlist"]==0) { // Normal (large) mode
 | 
						|
?>
 | 
						|
<p>
 | 
						|
<?php  if (count($r)>5) { ?>
 | 
						|
<input type="submit" class="inb delete" name="submit" value="<?php __("Delete checked accounts"); ?>" />
 | 
						|
<?php } ?>
 | 
						|
</p>
 | 
						|
<table class="tlist" style="clear:both;">
 | 
						|
<tr>
 | 
						|
<th></th>
 | 
						|
<th><?php __("Account"); ?></th>
 | 
						|
<th><?php __("Manager"); ?></th>
 | 
						|
<th><?php __("Created by") ?></th>
 | 
						|
<th><?php __("Created on") ?></th>
 | 
						|
<th><?php __("Quotas") ?></th>
 | 
						|
<th><?php __("Last login"); ?></th>
 | 
						|
<th><?php __("Last ip"); ?></th>
 | 
						|
<th><?php __("Fails"); ?></th>
 | 
						|
<th><?php __('Expiry') ?></th>
 | 
						|
</tr>
 | 
						|
<?php
 | 
						|
reset($r);
 | 
						|
 | 
						|
$col=1;
 | 
						|
while (list($key,$val)=each($r)) {
 | 
						|
	$col=3-$col;
 | 
						|
?>
 | 
						|
	<tr class="lst<?php echo $col; ?>">
 | 
						|
 | 
						|
<?php
 | 
						|
 if ($val["su"]) { ?>
 | 
						|
   <td id="user_<?php echo $val["uid"]; ?>"> </td>
 | 
						|
<?php } else { ?>
 | 
						|
   <td><input type="checkbox" class="inc" name="d[]" id="user_<?php echo $val["uid"]; ?>" value="<?php echo $val["uid"]; ?>" /></td>
 | 
						|
<?php } // val['su'] ?>
 | 
						|
    <td <?php if ($val["su"]) echo 'style="color: red"'; ?>><label for="user_<?php echo $val["uid"]; ?>"><b><?php echo $val["login"] ?></b></label></td>
 | 
						|
    <td><a title="<?php __("Send an email");?>" href="mailto:<?php echo $val["mail"]; ?>"><?php echo $val["nom"]." ".$val["prenom"] ?></a> </td>
 | 
						|
    <td><?php echo $val["parentlogin"] ?></td>
 | 
						|
    <td><?php echo format_date(_('%3$d-%2$d-%1$d'),$val["created"]); ?></td>
 | 
						|
    <td><?php echo $val["type"] ?></td>
 | 
						|
    <td><?php echo $val["lastlogin"] ?></td>
 | 
						|
    <td><?php echo $val["lastip"] ?></td>
 | 
						|
    <td><?php echo $val["lastfail"] ?></td>
 | 
						|
    <td><div class="<?php echo 'exp' . $admin->renew_get_status($val['uid']) ?>"><?php echo $admin->renew_get_expiry($val['uid']) ?></div></td>
 | 
						|
  </tr>
 | 
						|
 | 
						|
<tr class="lst<?php echo $col; ?>" >
 | 
						|
<td/><td ><i><?php echo _("DB:").' '.$val['db_server_name']?></i></td>
 | 
						|
<td colspan="8" >
 | 
						|
<div id="admlistbtn">
 | 
						|
<span class="ina<?php if ($col==2) echo "v"; ?>">
 | 
						|
  <a href="adm_login.php?id=<?php echo $val["uid"];?>"><?php __("Connect as"); ?></a>
 | 
						|
</span> 
 | 
						|
	 
 | 
						|
<span class="ina<?php if ($col==2) echo "v"; ?>" >
 | 
						|
  <a href="adm_edit.php?uid=<?php echo $val["uid"] ?>"><?php __("Edit"); ?></a>
 | 
						|
</span> 
 | 
						|
<span class="ina<?php if ($col==2) echo "v"; ?>" >
 | 
						|
  <a href="adm_quotaedit.php?uid=<?php echo $val["uid"] ?>"><?php __("Quotas"); ?></a>
 | 
						|
</span> 
 | 
						|
	<?php if (!$val["su"]) { ?>
 | 
						|
<span class="ina<?php if ($col==2) echo "v"; ?>" >
 | 
						|
  <a href="adm_deactivate.php?uid=<?php echo $val["uid"] ?>"><?php __("Disable"); ?></a>
 | 
						|
</span> 
 | 
						|
	  <?php } ?>
 | 
						|
</div>
 | 
						|
</td>
 | 
						|
</tr>
 | 
						|
<?php
 | 
						|
} // while (list($key,$val)=each($r)) {      
 | 
						|
echo '</table></form><br/>';
 | 
						|
 | 
						|
} // NORMAL MODE
 | 
						|
if ($mem->user["admlist"]==1) { // SHORT MODE
 | 
						|
?>
 | 
						|
 | 
						|
  [ <?php __("C"); ?> ] <?php __("Connect as"); ?>     
 | 
						|
  [ <?php __("E"); ?> ] <?php __("Edit"); ?>     
 | 
						|
  [ <?php __("Q"); ?> ] <?php __("Quotas"); ?>     
 | 
						|
 | 
						|
<p>
 | 
						|
<?php  if (count($r)>50) { ?>
 | 
						|
  <input type="submit" class="inb" name="submit" value="<?php __("Delete checked accounts"); ?>" />
 | 
						|
<?php } // finc count > 50 ?>
 | 
						|
</p>
 | 
						|
 | 
						|
<table class="tlist" style="clear:both;">
 | 
						|
<tr>
 | 
						|
   <th colspan="2"> </th><th><?php __("Account"); ?></th>
 | 
						|
   <th colspan="2"> </th><th><?php __("Account"); ?></th>
 | 
						|
   <th colspan="2"> </th><th><?php __("Account"); ?></th>
 | 
						|
</tr>
 | 
						|
<?php
 | 
						|
reset($r);
 | 
						|
 | 
						|
$count_r = 0;
 | 
						|
foreach ($r as $val) { 
 | 
						|
  if ( ($count_r % 3) == 0 ) { echo '<tr class="lst">'; } 
 | 
						|
 | 
						|
  if ($val["su"]) { 
 | 
						|
    echo '<td> </td>'; 
 | 
						|
  } else { 
 | 
						|
    echo '<td align="center"><input type="checkbox" class="inc" name="d[]" value="'.$val["uid"].'" id="id_c_'.$val["uid"].'" /></td>';
 | 
						|
  } // if $val["su"] ?>
 | 
						|
  <td align="center">
 | 
						|
    <a href="adm_login.php?id=<?php echo $val["uid"];?>" title="<?php __("Connect as"); ?>">[ <?php __("C"); ?> ]</a>
 | 
						|
    <a href="adm_edit.php?uid=<?php echo $val["uid"] ?>" title="<?php __("Edit"); ?>">[ <?php __("E"); ?> ]</a>
 | 
						|
    <?php if($admin->checkcreator($val['uid'])) { ?>
 | 
						|
      <a href="adm_quotaedit.php?uid=<?php echo $val["uid"] ?>" title="<?php __("Quotas"); ?>">[ <?php __("Q"); ?> ]</a><?php 
 | 
						|
    } // $admin->checkcreator
 | 
						|
    $creator_name = ( ($val['creator'] == '0')?_("himself"):$list_creators[$val['creator']]['login']) ?>
 | 
						|
  </td>
 | 
						|
  <td style="padding-right: 2px; border-right: 1px solid black; <?php if ($val["su"]) echo "color: red"; ?>"><b><label title="<?php printf(_("Creator: %s"), $creator_name);?>" for="id_c_<?php echo $val["uid"]; ?>"><?php echo $val["login"] ?></label></b></td>
 | 
						|
  <?php 
 | 
						|
  if ( ($count_r % 3) == 2 ) { echo '</tr>'; }
 | 
						|
  ++$count_r;
 | 
						|
} // foreach $r 
 | 
						|
?>
 | 
						|
</table>
 | 
						|
<p><input type="submit" class="inb" name="submit" value="<?php __("Delete checked accounts"); ?>" /></p>
 | 
						|
</form>
 | 
						|
<?php
 | 
						|
} // SHORT MODE
 | 
						|
include_once("foot.php"); 
 | 
						|
?>
 |